From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (qmail 16536 invoked from network); 3 Jul 2020 15:04:38 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 3 Jul 2020 15:04:38 -0000 Content-Type: multipart/mixed; boundary="===============6200599835901589266==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_gnome_3=2E36_updates?= To: ml@inbox.vuxu.org From: mnabid Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Fri, 03 Jul 2020 17:04:37 +0200 List-Id: Message-ID: <20200703150437.WmLg8BcQoB1tTk3GsH7WDvSVFWvBXriDvFSsaqFrnpc@z> GitHub notification mails are now in MIME to allow UTF8. --===============6200599835901589266== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgbW5hYmlkIGFnYWluc3QgbWFzdGVy IG9uIHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS9tbmFi aWQvdm9pZC1wYWNrYWdlcyBnZWRpdApodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvMjEzODIKCmdub21lIDMuMzYgdXBkYXRlcwo8ZGV0YWlscz4NCjxzdW1t YXJ5PjxpPkxpc3Qgb2YgdXBkYXRlcyA6IDwvaT48L3N1bW1hcnk+DQoNCiAqIGF0ayAtPiAyLjM2 LjANCiAqIGF0LXNwaTItYXRrIC0+IDIuMzQuMg0KICogYnVkZ2llLWRlc2t0b3AgLT4gKHJldmJ1 bXApDQogKiBjaGVlc2UgLT4gKHJldmJ1bXApDQogKiBkY29uZi1lZGl0b3IgLT4gMy4zNi4yDQog KiBkZXZoZWxwIC0+IDMuMzYuMg0KICogZW9nIC0+IDMuMzYuMg0KICogZXZpbmNlIC0+IDMuMzYu Mw0KICogZXZvbHV0aW9uIC0+IDMuMzYuMw0KICogZXZvbHV0aW9uLWRhdGEtc2VydmVyIC0+IDMu MzYuMw0KICogZXZvbHV0aW9uLWV3cyAtPiAzLjM2LjMNCiAqIGZpbGUtcm9sbGVyIC0+IDMuMzYu Mg0KICogZm9sa3MgLT4gMC4xNC4wDQogKiBnZG0gLT4gMy4zNi4yDQogKiBnZWRpdCAtPiAzLjM2 LjINCiAqIGdub21lLWJvb2tzIC0+IChyZXZidW1wKQ0KICogZ25vbWUtY2hhcmFjdGVycyAtPiAo cmV2YnVtcCkNCiAqIGdub21lLWNsb2NrcyAtPiAzLjM2LjINCiAqIGdub21lLWNvbnRhY3RzIC0+ IDMuMzYuMQ0KICogZ25vbWUtY29udHJvbC1jZW50ZXIgLT4gMy4zNi4zDQogKiBnbm9tZS1kZXNr dG9wIC0+IDMuMzYuMg0KICogZ25vbWUtZG9jdW1lbnRzIC0+IChyZXZidW1wKQ0KICogZ25vbWUt ZXB1Yi10aHVtYm5haWxlciAtPiAxLjYNCiAqIGdub21lLWZsYXNoYmFjayAtPiAzLjM2LjMNCiAq IGdub21lLWZvbnQtdmlld2VyIC0+IChyZXZidW1wKQ0KICogZ25vbWUtZ2V0dGluZy1zdGFydGVk LWRvY3MgLT4gMy4zNi4yDQogKiBnbm9tZS1pbml0aWFsLXNldHVwIC0+IDMuMzYuMw0KICogZ25v bWUtbWFwcyAtPiAzLjM2LjINCiAqIGdub21lLW1lbnVzIC0+IDMuMzYuMA0KICogZ25vbWUtbXVz aWMgLT4gMy4zNi4zDQogKiBnbm9tZS1wYW5lbCAtPiAzLjM2LjENCiAqIGdub21lLXBvZGNhc3Rz IC0+IDAuNC43DQogKiBnbm9tZS1zY3JlZW5zYXZlciAtPiAocmV2YnVtcCkNCiAqIGdub21lLXNl c3Npb24gLT4gMy4zNi4wDQogKiBnbm9tZS1zZXR0aW5ncy1kYWVtb24gLT4gMy4zNi4xDQogKiBn bm9tZS1zaGVsbCAtPiAzLjM2LjMNCiAqIGdub21lLXNoZWxsLWV4dGVuc2lvbnMgLT4gMy4zNi4y DQogKiBnbm9tZS10ZXJtaW5hbCAtPiAzLjM2LjINCiAqIGdub21lLXVzZXItZG9jcyAtPiAzLjM2 LjINCiAqIGdub21lLXdlYXRoZXIgLT4gKHJldmJ1bXApDQogKiBncmFwaGVuZSAtPiAxLjEwLjAN CiAqIGx1dHJpcyAtPiAocmV2YnVtcCkNCiAqIG1ldGFjaXR5IC0+IDMuMzYuMQ0KICogbXV0dGVy IC0+IDMuMzYuMw0KICogbmF1dGlsdXMgLT4gMy4zNi4zDQogKiBvcmNhIC0+IDMuMzYuMg0KICog cHl0aG9uLWF0c3BpIC0+IDIuMzYuMA0KICogcHl0aG9uMy1hdHNwaSAtPiAyLjM2LjANCiAqIHRv dGVtIC0+IChyZXZidW1wKQ0KICogdHJhY2tlciAtPiAyLjMuNA0KICogeGRnLWRlc2t0b3AtcG9y dGFsLWd0ayAtPiAocmV2YnVtcCkNCjwvZGV0YWlscz4NCg0KQnVpbHQgbmF0aXZlbHkgaW4gYHg4 Nl82NGAgYW5kIGNyb3NzYnVpbHQgZm9yIGBhcm12N2xgLgoKQSBwYXRjaCBmaWxlIGZyb20gaHR0 cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzIxMzgyLnBhdGNo IGlzIGF0dGFjaGVk --===============6200599835901589266== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-gedit-21382.patch" RnJvbSA5ODM0YTNiMjBkNzEzYTQ3YWJiNDg3YTE3MGYzY2ExOWE1MzU4NWRjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBU dWUsIDE2IEp1biAyMDIwIDE5OjQyOjUzICswNjAwClN1YmplY3Q6IFtQQVRDSCAwMS82M10gZ25v bWUtZGVza3RvcDogdXBkYXRlIHRvIDMuMzYuMi4KCkNsb3NlczogIzIxMzgyCi0tLQogY29tbW9u L3NobGlicyAgICAgICAgICAgICAgICAgIHwgMiArLQogc3JjcGtncy9nbm9tZS1kZXNrdG9wL3Rl bXBsYXRlIHwgOCArKysrLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMK aW5kZXggODc4Y2E1YTVhYzYuLjQyNzdhOTgzY2VmIDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJz 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 YnVpbGRfb3B0aW9ucz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCgpGcm9tIDAy YWVkMDlhZTdhZmE2MTYyMzZmNDhiY2FmODFlZjYyMmQxMzhkODAgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYg SnVuIDIwMjAgMTk6NDM6MTggKzA2MDAKU3ViamVjdDogW1BBVENIIDAyLzYzXSBnbm9tZS1zZXNz aW9uOiB1cGRhdGUgdG8gMy4zNi4wLgoKLS0tCiBzcmNwa2dzL2dub21lLXNlc3Npb24vdGVtcGxh dGUgfCAxMCArKysrKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAzIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZSBi L3NyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZQppbmRleCA0NDQ0ZjE2MmJmMS4uODhkZWUy MGViNmUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtc2Vzc2lvbi90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2dub21lLXNlc3Npb24vdGVtcGxhdGUKQEAgLTEsOSArMSw5IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdnbm9tZS1zZXNzaW9uJwogcGtnbmFtZT1nbm9tZS1zZXNzaW9uCi12ZXJzaW9u PTMuMzQuMQordmVyc2lvbj0zLjM2LjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCi1j b25maWd1cmVfYXJncz0iLURzeXN0ZW1kX2pvdXJuYWw9ZmFsc2UiCitjb25maWd1cmVfYXJncz0i LURzeXN0ZW1kX3Nlc3Npb249ZGlzYWJsZSAtRHN5c3RlbWRfam91cm5hbD1mYWxzZSIKIGhvc3Rt YWtlZGVwZW5kcz0iZ2xpYi1kZXZlbCBpbnRsdG9vbCBwa2ctY29uZmlnIHhtbHRvIgogbWFrZWRl cGVuZHM9ImVsb2dpbmQtZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBndGsrMy1kZXZlbCBqc29u LWdsaWItZGV2ZWwKICBsaWJnbGliLWRldmVsIGxpYklDRS1kZXZlbCBsaWJTTS1kZXZlbCBsaWJY dHN0LWRldmVsIHN0YXJ0dXAtbm90aWZpY2F0aW9uLWRldmVsCkBAIC0xNSw0ICsxNSw4IEBAIG1h aW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJH UEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dp dGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2Vzc2lvbiIKIGRpc3RmaWxlcz0iJHtHTk9NRV9T SVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54 eiIKLWNoZWNrc3VtPWQ3ODAxZmUyZDVhNzUxYjE5Y2I1ODA4MTc3MTMxNmE3NmFhYmQ1YzU1MGNk NThkNGU0YzZhNWE0ZWQzNTY2NjAKK2NoZWNrc3VtPWQ1NGIzOGI4MThjODEyZjY0YjgyY2M2YTEy NzllM2NhNWE2ZTM5MWVlNjYyNzkzMzIyYTM4Y2FiNTY3MGJiN2EKKworcG9zdF9pbnN0YWxsKCkg eworCXJtIC1yZiAke0RFU1RESVJ9L3Vzci9saWIvc3lzdGVtZAorfQoKRnJvbSA1ODg4NDQzYzFk NDFiNjEzNjI3Y2IxODVlNjA1NjA5NzVlZTQwNDliIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIw IDE5OjQzOjI1ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwMy82M10gbmF1dGlsdXM6IHVwZGF0ZSB0 byAzLjM2LjMuCgotLS0KIHNyY3BrZ3MvbmF1dGlsdXMvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBm aWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlIGIvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZQpp bmRleCA1MzdhODUxOTczZi4uOTRjYjEwNDkyY2EgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbmF1dGls dXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ25hdXRpbHVzJwogcGtnbmFtZT1uYXV0aWx1cwotdmVy c2lvbj0zLjM2LjEuMQordmVyc2lvbj0zLjM2LjMKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1l c29uCiBidWlsZF9oZWxwZXI9ImdpciIKQEAgLTE2LDggKzE2LDggQEAgc2hvcnRfZGVzYz0iR05P TUUgZmlsZSBtYW5hZ2VyIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGlu dXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIExHUEwtMi4xLW9yLWxhdGVyIgog aG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvTmF1dGlsdXMiCi1kaXN0ZmlsZXM9IiR7 R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb246OjR9LyR7cGtnbmFtZX0tJHt2ZXJzaW9u fS50YXIueHoiCi1jaGVja3N1bT1mOTI1MmY1MDgyMTFkOWYzNjhhNDlkYjY5Nzg5MGY4OTVkMDgw ZjA5NTkwYWVjYWYzMzgwM2E1MTlkZWY3YmRlCitkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtw a2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCitjaGVj a3N1bT1iNmNhZmM3YWIxZTcwYTY0MzgzZGUzOTFiNjA5N2ZjY2NiZjM2YjIwOGY4NTAyZDhjNDY0 MjMyMjRmZDMwZWY4CiAKIGJ1aWxkX29wdGlvbnM9ImdpciIKIGJ1aWxkX29wdGlvbnNfZGVmYXVs dD0iZ2lyIgoKRnJvbSA4NWI2MTc1MWJkY2ZiNGUwMDAxOWRlMGMwZTU4Y2FkY2E2ZjcyMTllIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQzOjMyICswNjAwClN1YmplY3Q6IFtQQVRDSCAw NC82M10gZ25vbWUtbXVzaWM6IHVwZGF0ZSB0byAzLjM2LjMuCgotLS0KIHNyY3BrZ3MvZ25vbWUt bXVzaWMvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1tdXNpYy90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZ25vbWUtbXVzaWMvdGVtcGxhdGUKaW5kZXggMTI1MTE3MzY0MDcuLjIyNzNh YzFjYTE2IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLW11c2ljL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvZ25vbWUtbXVzaWMvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdnbm9tZS1tdXNpYycKIHBrZ25hbWU9Z25vbWUtbXVzaWMKLXZlcnNpb249My4zNi4x Cit2ZXJzaW9uPTMuMzYuMwogcmV2aXNpb249MQogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9z dHlsZT1tZXNvbgpAQCAtMTUsNSArMTUsNSBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290 dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdl PSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvTXVzaWMiCiBkaXN0ZmlsZXM9IiR7R05PTUVf U0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIu eHoiCi1jaGVja3N1bT03YjgwZjYzMGQxNTgzMzQ5MzVhODc2MDI5NjU1MGNjOTFiNTBkNjA0ZmE2 OGI0MDJmZTUxNjViMTUzMWVjMzMyCitjaGVja3N1bT01NGY4ZDI0MGY4OTk1ZjRjZmY0ZGNlNWUx Y2JkYzYwYmVmYzgxZDc5YmY3MmMxZTRmZDgwN2VkMDVjMTE0MjM3CiBsaWIzMmRpc2FibGVkPXll cwoKRnJvbSAyZDUwZWViMTBlOThjNTJhNjgwMjFhMDVlZWYwYTQ1NTJmMjdiOTk1IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRl OiBUdWUsIDE2IEp1biAyMDIwIDE5OjQzOjM4ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwNS82M10g ZGV2aGVscDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9kZXZoZWxwL3RlbXBsYXRl IHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZGV2aGVscC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZGV2aGVs cC90ZW1wbGF0ZQppbmRleCBhMWMyZGNiYjc2Mi4uYmE3NWRmZmRjZTcgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvZGV2aGVscC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2RldmhlbHAvdGVtcGxhdGUKQEAg LTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdkZXZoZWxwJwogcGtnbmFtZT1kZXZo ZWxwCi12ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hl bHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24KQEAgLTExLDcgKzExLDcgQEAgbWFpbnRhaW5l cj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAt b3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0RldmhlbHAi CiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtn bmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT00Y2Y4ZWM5MzAyYmM0YTc5ZTAxYWM1 M2JkOWM4Yjk1YTU5NmY3MWYzNTM1MWY0OGI2MzI2MzIyN2YwOWE4YTNkCitjaGVja3N1bT04YjVh ODQzMTllZmJiMmVmMWJjNDAyMmVlM2VkMmQ2Njc4Nzk0ZWJhMmRmYTk5M2U1MGUwM2Q2ZTdiOTMw YzVlCiAKIGRldmhlbHAtZGV2ZWxfcGFja2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxv cG1lbnQgZmlsZXMiCgpGcm9tIDA5MjBkZTRjMzE2OWZhOTdlNWY1Mzk4NzQ1NTU5MDQ5OTZhMDkz NTIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9v ay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDM6NTEgKzA2MDAKU3ViamVjdDogW1BB VENIIDA2LzYzXSBlb2c6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZW9nL3RlbXBs YXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZW9nL3RlbXBsYXRlIGIvc3JjcGtncy9lb2cvdGVt cGxhdGUKaW5kZXggZTRjYWNiNzA3OWUuLmNmYTFjZjU3NTk0IDEwMDY0NAotLS0gYS9zcmNwa2dz L2VvZy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2VvZy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2VvZycKIHBrZ25hbWU9ZW9nCi12ZXJzaW9uPTMuMzYuMQor dmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5 bGU9bWVzb24KQEAgLTE0LDcgKzE0LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRv eEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0V5ZU9mR25vbWUiCiBkaXN0ZmlsZXM9IiR7R05P TUVfU0lURX0vZW9nLyR7dmVyc2lvbiUuKn0vZW9nLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tz dW09ZTQ1NGExYTdhYTVlM2EzMzIxZWFiMDExNjc3ODExMGU1YTdhN2I2M2JjZjIxNjc2ZWRhMWE3 YmUxODdjOWM5NQorY2hlY2tzdW09NWMwNTZiMDI5NWE4ZTA2ZDA5M2I4ZmM2MGIxMGUyYThjMTlh YmRiN2JlYWUxYzdlN2UwNTk1ZWNlMmUxYjc4Ywogc2hsaWJfcHJvdmlkZXM9ImxpYmVvZy5zbyIK IGxpYjMyZGlzYWJsZWQ9eWVzCiAKCkZyb20gZjMzYzczYjZlNTFiM2E4YTdmMDAxNjkyZDJlZjNj Njg4ZjgxY2JhYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4y NUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0Mzo1OSArMDYwMApTdWJq ZWN0OiBbUEFUQ0ggMDcvNjNdIGV2aW5jZTogdXBkYXRlIHRvIDMuMzYuMy4KCi0tLQogc3JjcGtn cy9ldmluY2UvdGVtcGxhdGUgfCAyMCArKysrKysrKysrKy0tLS0tLS0tLQogMSBmaWxlIGNoYW5n ZWQsIDExIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9ldmluY2UvdGVtcGxhdGUgYi9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0ZQppbmRleCBjMzM3YTI2 NmNlMC4uZmU0MDUwNDhmNDQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZpbmNlL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvZXZpbmNlL3RlbXBsYXRlCkBAIC0xLDE0ICsxLDE0IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdldmluY2UnCiBwa2duYW1lPWV2aW5jZQotdmVyc2lvbj0zLjM2LjAKK3ZlcnNp b249My4zNi4zCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9ImdpciIKLWJ1aWxkX3N0eWxlPWdu dS1jb25maWd1cmUKLWNvbmZpZ3VyZV9hcmdzPSIkKHZvcHRfZW5hYmxlIGdpciBpbnRyb3NwZWN0 aW9uKSAtLWRpc2FibGUtc2NoZW1hcy1jb21waWxlCi0gLS1lbmFibGUtY29taWNzIC0tZGlzYWJs ZS1zdGF0aWMgLS1lbmFibGUteHBzIC0tZGlzYWJsZS10MWxpYgotIC0tZGlzYWJsZS1icm93c2Vy LXBsdWdpbiAtLWVuYWJsZS1wcyIKK2J1aWxkX3N0eWxlPW1lc29uCitjb25maWd1cmVfYXJncz0i LURjb21pY3M9ZW5hYmxlZCAtRHhwcz1lbmFibGVkIC1EdDFsaWI9ZW5hYmxlZCAtRGJyb3dzZXJf cGx1Z2luPXRydWUKKyAtRHBzPWVuYWJsZWQgLURkdmk9ZGlzYWJsZWQgLURpbnRyb3NwZWN0aW9u PSQodm9wdF9pZiBnaXIgdHJ1ZSBmYWxzZSkKKyAtRGd0a19kb2M9JCh2b3B0X2lmIGd0a19kb2Mg dHJ1ZSBmYWxzZSkiCiBob3N0bWFrZWRlcGVuZHM9ImFkd2FpdGEtaWNvbi10aGVtZSBnZXR0ZXh0 IGdsaWItZGV2ZWwgZ25vbWUtZG9jLXV0aWxzCi0gaXRzdG9vbCBwa2ctY29uZmlnIHBlcmwtWE1M LVBhcnNlciBhcHBzdHJlYW0tZ2xpYiIKKyBpdHN0b29sIHBrZy1jb25maWcgcGVybC1YTUwtUGFy c2VyIGFwcHN0cmVhbS1nbGliICQodm9wdF9pZiBndGtfZG9jIGd0ay1kb2MpIgogIyBYWFggbWlz c2luZyBwYWNrYWdlcyBmb3IgRFZJIGJhY2tlbmQuCiBtYWtlZGVwZW5kcz0iYWR3YWl0YS1pY29u LXRoZW1lIGRqdnVsaWJyZS1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGxpYlNNLWRldmVsCiAg bGliZ3hwcy1kZXZlbCBsaWJzZWNyZXQtZGV2ZWwgbGlic3BlY3RyZS1kZXZlbCBuYXV0aWx1cy1k ZXZlbApAQCAtMTksOSArMTksOSBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZv aWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRw czovL3dpa2kuZ25vbWUub3JnL0FwcHMvRXZpbmNlIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9 LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6Igot Y2hlY2tzdW09ODUxZDliNTIzNGQ0NzlhYjRjOGY3YzVjYmFjZWIwZTkxYWQ3OWNjYmExYTdiNzMz Y2RlNzJkYWNjOTI4ZmJhOAorY2hlY2tzdW09YWYyZWJkZjdmNzRlNjU4MGM0ZjFhMTJiZGZlMjZi OWZmOTAzNzRkN2FjYWUwNjFkZTA2NjZkNjQwMTJhOWRiMgogCi1idWlsZF9vcHRpb25zPSJnaXIi CitidWlsZF9vcHRpb25zPSJnaXIgZ3RrX2RvYyIKIGJ1aWxkX29wdGlvbnNfZGVmYXVsdD0iZ2ly IgogCiBsaWJldmluY2VfcGFja2FnZSgpIHsKQEAgLTQxLDcgKzQxLDkgQEAgZXZpbmNlLWRldmVs X3BhY2thZ2UoKSB7CiAJCXZtb3ZlIHVzci9pbmNsdWRlCiAJCXZtb3ZlIHVzci9saWIvcGtnY29u ZmlnCiAJCXZtb3ZlICJ1c3IvbGliLyouc28iCi0JCXZtb3ZlIHVzci9zaGFyZS9ndGstZG9jCisJ CWlmIFsgIiRidWlsZF9vcHRpb25fZ3RrX2RvYyIgXTsgdGhlbgorCQkJdm1vdmUgdXNyL3NoYXJl L2d0ay1kb2MKKwkJZmkKIAkJaWYgWyAiJGJ1aWxkX29wdGlvbl9naXIiIF07IHRoZW4KIAkJCXZt b3ZlIHVzci9zaGFyZS9naXItMS4wCiAJCWZpCgpGcm9tIGQ5ZjRjODI2OWM5MGJlNzdlMmVjYjc0 NDI2NDVjY2E5ZDc0OTdlNTYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxt bmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDQ6MDcgKzA2 MDAKU3ViamVjdDogW1BBVENIIDA4LzYzXSBnbm9tZS1tYXBzOiB1cGRhdGUgdG8gMy4zNi4yLgoK Li4uIGFuZCB1bm1hcmsgbm9jcm9zcy4KLS0tCiBjb21tb24vc2hsaWJzICAgICAgICAgICAgICAg fCAxICsKIHNyY3BrZ3MvZ25vbWUtbWFwcy90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDIgZmlsZXMg Y2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2Nv bW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IDQyNzdhOTgzY2VmLi43YzcxZmM0YWI5 ZiAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9jb21tb24vc2hsaWJzCkBAIC02MjIs NiArNjIyLDcgQEAgbGliY2FuYmVycmEtZ3RrMy5zby4wIGxpYmNhbmJlcnJhLWd0azMtMC4zMF82 CiBsaWJndG9wLTIuMC5zby4xMSBsaWJndG9wLTIuMzguMF8xCiBsaWJyYXJpYW4uc28uMCByYXJp YW4tMC44LjFfMQogbGlibXVzaWtjb3JlLnNvIG11c2lrY3ViZS0wLjYwLjFfMQorbGliZ25vbWUt bWFwcy5zby4wIGdub21lLW1hcHMtMy4zNi4yXzEKIGxpYmdub21lLW1lbnUtMy5zby4wIGdub21l LW1lbnVzLTIuOTEuNl8xCiBsaWJhcnRfbGdwbF8yLnNvLjIgbGliYXJ0LTIuMy4yMF8xCiBsaWJn bm9tZWNhbnZhcy0yLnNvLjAgbGliZ25vbWVjYW52YXMtMi4zMC4xXzEKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvZ25vbWUtbWFwcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtbWFwcy90ZW1wbGF0ZQpp bmRleCAwMzAwYmU2MDU5OS4uYTY3ZDg0ZjQzOTYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUt bWFwcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUKQEAgLTEsOSAr MSwxMCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtbWFwcycKIHBrZ25hbWU9Z25vbWUt bWFwcwotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9z dHlsZT1tZXNvbgotaG9zdG1ha2VkZXBlbmRzPSJnbGliLWRldmVsIGdvYmplY3QtaW50cm9zcGVj dGlvbiBpbnRsdG9vbCBwa2ctY29uZmlnIEFwcFN0cmVhbSIKK2J1aWxkX2hlbHBlcj0iZ2lyIgor aG9zdG1ha2VkZXBlbmRzPSJnbGliLWRldmVsIGdqcy1kZXZlbCBpbnRsdG9vbCBwa2ctY29uZmln IEFwcFN0cmVhbSIKIG1ha2VkZXBlbmRzPSJmb2xrcy1kZXZlbCBnZW9jbHVlMi1kZXZlbCBnZW9j b2RlLWdsaWItZGV2ZWwgZ2pzLWRldmVsCiAgZ25vbWUtZGVza3RvcC1kZXZlbCBsaWJjaGFtcGxh aW4tZGV2ZWwgcmVzdC1kZXZlbCIKIGRlcGVuZHM9Imdlb2NsdWUyIGdmYmdyYXBoIGdqcyIKQEAg LTEyLDUgKzEzLDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgu b3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtp Lmdub21lLm9yZy9BcHBzL01hcHMiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1l fS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0x YTMyZWZkOTZhZDg5OGY3N2E2MzZkMmQwNDYzZDc1NzAwOWI0YjgxMjI1OWM4OWZmZGNiOTFkNmFm YzA1MmY5Ci1ub2Nyb3NzPSJldm9sdXRpb24tZGF0YXNlcnZlciBjcm9zcyBnaXIgZG9lc24ndCB3 b3JrIgorY2hlY2tzdW09NWJhMjE5YjlkZTk4Njc4Y2VmYTU4NDhmNjUzOGRiOGRiZDA3ZjZjNzQ3 ZmQ0M2E5OTE2N2EyNjY4NzhhOTc4NAoKRnJvbSAwODdhMTU1NjY0MWU1ZmM5MTM4ZjhmODRlMGMx YTZkMzk0NWQ1NzIwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlk LjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ0OjE0ICswNjAwClN1 YmplY3Q6IFtQQVRDSCAwOS82M10gZ2VkaXQ6IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3Br Z3MvZ2VkaXQvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMo KyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nZWRpdC90ZW1wbGF0ZSBi L3NyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUKaW5kZXggNGUyNzNhYWYxODIuLmUzZWJlYTA1ZWE3IDEw MDY0NAotLS0gYS9zcmNwa2dzL2dlZGl0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ2VkaXQvdGVt cGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnZWRpdCcKIHBrZ25h bWU9Z2VkaXQKLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVp bGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgpAQCAtMTcsNyArMTcsNyBAQCBtYWlu dGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BM LTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvR2Vk aXQiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7 cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT02ZGMzOGVkYTIyN2QxYzM2OGUw MzllOWJmZjQ4NWQwYmVlOWE0OWQ1Zjk1NjBjMzg3ZWUwOGY1ODE4YTRlMzg3CitjaGVja3N1bT02 ODg3NTU0NjQzYzViMWIzODYyYWMzNjRkOTdiN2I1MDIyNGJmZjk1ZTY3NThhZWFhMDhmNGE0ODJi NTU0MTk3CiBzaGxpYl9wcm92aWRlcz0ibGliZ2VkaXQtMy4zNi5zbyIKIHB5dGhvbl92ZXJzaW9u PTMKIAoKRnJvbSBiNmI5ODcyY2E2NTVkOGMzOWY0ZGI5OTBlNTJmNjQ3M2UzNWFiN2UzIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpE YXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ0OjIxICswNjAwClN1YmplY3Q6IFtQQVRDSCAxMC82 M10gZ25vbWUtY29udGFjdHM6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIHNyY3BrZ3MvZ25vbWUt Y29udGFjdHMvdGVtcGxhdGUgfCA4ICsrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRp b25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtY29udGFj dHMvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBsYXRlCmluZGV4IDJhODIx M2E3MjQwLi4wMWZiODJiNzgyNiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1jb250YWN0cy90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWNvbnRhY3RzL3RlbXBsYXRlCkBAIC0xLDEwICsx LDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1jb250YWN0cycKIHBrZ25hbWU9Z25v bWUtY29udGFjdHMKLXZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTMuMzYuMQor cmV2aXNpb249MQogd3Jrc3JjPSJnbm9tZS1jb250YWN0cy0ke3ZlcnNpb24lLip9IgogYnVpbGRf c3R5bGU9bWVzb24KLWhvc3RtYWtlZGVwZW5kcz0iZG9jYm9vay14c2wgZ2V0dGV4dCBnbGliLWRl dmVsIGxpYnhzbHQgcGtnLWNvbmZpZyB2YWxhIgoraG9zdG1ha2VkZXBlbmRzPSJkb2Nib29rLXhz bCBmb2xrcy1kZXZlbCBnZXR0ZXh0IGdsaWItZGV2ZWwgbGlieHNsdCBwa2ctY29uZmlnIHZhbGEi CiBtYWtlZGVwZW5kcz0iY2hlZXNlLWRldmVsIGZvbGtzLWRldmVsIGdlb2NvZGUtZ2xpYi1kZXZl bCBnbm9tZS1kZXNrdG9wLWRldmVsCiAgbGliY2hhbXBsYWluLWRldmVsIGxpYm5vdGlmeS1kZXZl bCB2YWxhLWRldmVsIGxpYmhhbmR5LWRldmVsIgogZGVwZW5kcz0iZGVza3RvcC1maWxlLXV0aWxz IgpAQCAtMTMsNCArMTMsNCBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRs aW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczov L3dpa2kuZ25vbWUub3JnL0FwcHMvQ29udGFjdHMiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0v JHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9uJS4qfS50YXIueHoi Ci1jaGVja3N1bT05OTYwMmVjOGQ2NjBjMWYzYzkyY2FlNjM1NmY2NGY3MmZiNmRiNThlNTViY2Uy N2E1OTkzMzBiZjdiNjIyZjEyCitjaGVja3N1bT1lZWNiZDIyMDlkOTNjOGQzMWRmOTJmNmNjZjc5 MTgzYjQ1NmM2ZTA3YTI4YWUwMTU1Y2JkYTE4YWFiZDM2ZjdiCgpGcm9tIGU5MGMwYzYwZWE0Njgy ZGVkOTcxMTA0NTc4MzA5N2EwNDhkYjZmMWUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6 NDQ6MjkgKzA2MDAKU3ViamVjdDogW1BBVENIIDExLzYzXSBnbm9tZS1jbG9ja3M6IHVwZGF0ZSB0 byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBsYXRlIHwgNCArKy0tCiAx IGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1jbG9ja3Mv dGVtcGxhdGUKaW5kZXggM2UwNDliNDJmYjEuLjM0YjE1OWFlNmE2IDEwMDY0NAotLS0gYS9zcmNw a2dzL2dub21lLWNsb2Nrcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWNsb2Nrcy90ZW1w bGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWNsb2NrcycK IHBrZ25hbWU9Z25vbWUtY2xvY2tzCi12ZXJzaW9uPTMuMzYuMAordmVyc2lvbj0zLjM2LjIKIHJl dmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24KQEAgLTE1LDQg KzE1LDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIK IGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21l Lm9yZy9BcHBzL0Nsb2NrcyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7 dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTRjOTc4 YjBjN2Y3YjlkYWViZDI3MmQwMTc1ZjhhNTQ0MTVlMjA3OGYxMzRmNDhhZGQ1Y2YyNDM2MmVlZjQ5 YzYKK2NoZWNrc3VtPWYxMWIxYjIyZWMxZjI4NWU1MDk4ODM2ODRjMGIxZjRhNTE0OTZhZWExMDU1 OTEyMzllNWIyNmY4OTg2NzUxZTYKCkZyb20gODZhY2M2MGUxY2IxMWIyMjkzZjRjODIyZWM1YTNj NWYyOTM0MmUxYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4y NUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NDozNiArMDYwMApTdWJq ZWN0OiBbUEFUQ0ggMTIvNjNdIGdub21lLWVwdWItdGh1bWJuYWlsZXI6IHVwZGF0ZSB0byAxLjYu CgotLS0KIHNyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0ZSB8IDYgKysrLS0t CiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0ZSBiL3NyY3BrZ3Mv Z25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0ZQppbmRleCBiMTZlNzA1NDc1Zi4uZDY3Yjc3 ZjFlNDMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtZXB1Yi10aHVtYm5haWxlci90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL2dub21lLWVwdWItdGh1bWJuYWlsZXIvdGVtcGxhdGUKQEAgLTEsMTMg KzEsMTMgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWVwdWItdGh1bWJuYWlsZXInCiBw a2duYW1lPWdub21lLWVwdWItdGh1bWJuYWlsZXIKLXZlcnNpb249MS41Cit2ZXJzaW9uPTEuNgog cmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1ha2VkZXBlbmRzPSJw a2ctY29uZmlnIgogbWFrZWRlcGVuZHM9Imdkay1waXhidWYtZGV2ZWwgbGliYXJjaGl2ZS1kZXZl bCBsaWJ4bWwyLWRldmVsIgogc2hvcnRfZGVzYz0iVGh1bWJuYWlsZXIgZm9yIEVQdWIgYW5kIE1P QkkgYm9va3MiCiBtYWludGFpbmVyPSJBbGlmIFJhY2htYXdhZGkgPGFyY2hAc3Vib3NpdG8uY29t PiIKLWxpY2Vuc2U9IkdQTC0zIgorbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdl PSJodHRwczovL2dpdC5nbm9tZS5vcmcvYnJvd3NlL2dub21lLWVwdWItdGh1bWJuYWlsZXIiCiBk aXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb259LyR7cGtnbmFtZX0t JHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0zMDgyMTBmNTgwMDIxOWY2NGNhZTQ4MjhlNTli YjhlNmU0YzUzYjg4ODA0OGNmNDg3MjIxYWViNDMzN2Q3OTFhCitjaGVja3N1bT1iNTAyNDIwZDli MDJlYTBiMGZjNzk4NmVmNWEwOTFhMTJiMjI4NmJlMTRmZWQ5ZTQ3NTk0ZmU5ZmEwYzU4OThlCgpG cm9tIDc0MjM5MjAwMzAxMDA0ZmRiMzA4N2E4ZTQ0ZGMyZDBkNmFmZDA2NTQgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1 ZSwgMTYgSnVuIDIwMjAgMTk6NDQ6NDQgKzA2MDAKU3ViamVjdDogW1BBVENIIDEzLzYzXSBnbm9t ZS10ZXJtaW5hbDogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS10ZXJtaW5h bC90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAz IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtdGVybWluYWwvdGVtcGxh dGUgYi9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBsYXRlCmluZGV4IGJmM2Q1YmNkZDQyLi4y MmRiYzExYmFkYSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS10ZXJtaW5hbC90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtdGVybWluYWwnCiBwa2duYW1lPWdub21lLXRlcm1pbmFs Ci12ZXJzaW9uPTMuMzYuMS4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5 bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1zdGF0aWMgLS13aXRo LW5hdXRpbHVzLWV4dGVuc2lvbiIKQEAgLTEzLDggKzEzLDggQEAgc2hvcnRfZGVzYz0iR05PTUUg dGVybWluYWwgZW11bGF0b3IgYXBwbGljYXRpb24iCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8 Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwgR0ZETC0x LjMtb25seSIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvVGVybWluYWwi Ci1kaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb246MDo0fS8ke3Br Z25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZjNkNzA4YTFlNzZkNzdjMWM4NWIx MjZmNmUwMDMyMjBhMTVkNGE0NmE1MGZkODA3MGUxYTNhYWJlNjc4YTM3NgorZGlzdGZpbGVzPSIk e0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lv bn0udGFyLnh6IgorY2hlY2tzdW09NDFkMWI2YTNkYzk3YzA2NmUyOTRhY2RiN2YzNjkzMWU4MTY2 ODYzOGRjYzkyZmZhMjViY2EzZGRlYmFjZGY0NgogbGliMzJkaXNhYmxlZD15ZXMKIAogaWYgWyAi JENST1NTX0JVSUxEIiBdOyB0aGVuCgpGcm9tIDE0MTRjZmIyY2Y4ZDFiMjMzYjg4MTg0YmU4NTIz N2ZiNjkwZDE2NDAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQu MjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDQ6NTIgKzA2MDAKU3Vi amVjdDogW1BBVENIIDE0LzYzXSBnbm9tZS1wb2RjYXN0czogdXBkYXRlIHRvIDAuNC43LgoKLS0t CiAuLi4vZ25vbWUtcG9kY2FzdHMvcGF0Y2hlcy9maXgtYnVpbGQucGF0Y2ggICAgfCAyMSAtLS0t LS0tLS0tLS0tLS0tCiBzcmNwa2dzL2dub21lLXBvZGNhc3RzL3RlbXBsYXRlICAgICAgICAgICAg ICAgfCAyNCArKysrKysrKysrLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlv bnMoKyksIDMyIGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZ25vbWUt cG9kY2FzdHMvcGF0Y2hlcy9maXgtYnVpbGQucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2du b21lLXBvZGNhc3RzL3BhdGNoZXMvZml4LWJ1aWxkLnBhdGNoIGIvc3JjcGtncy9nbm9tZS1wb2Rj YXN0cy9wYXRjaGVzL2ZpeC1idWlsZC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggYWViOTU4MWJkNzkuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvZ25vbWUtcG9kY2FzdHMv cGF0Y2hlcy9maXgtYnVpbGQucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyMSArMCwwIEBACi0t LS0gcG9kY2FzdHMtZ3RrL3NyYy93aWRnZXRzL2VwaXNvZGUucnMub3JpZwkyMDE5LTA2LTA5IDE1 OjU0OjU5Ljc5MzQ1MTA0NyArMDIwMAotKysrIHBvZGNhc3RzLWd0ay9zcmMvd2lkZ2V0cy9lcGlz b2RlLnJzCTIwMTktMDYtMDkgMTU6NTU6MTkuMTkxMzExNTEyICswMjAwCi1AQCAtNTU5LDcgKzU1 OSw3IEBACi0gICAgICAgICAgICAgLnRvdGFsX3NpemUKLSAgICAgICAgICAgICAuZ2V0X3RleHQo KQotICAgICAgICAgICAgIC5hc19yZWYoKQotLSAgICAgICAgICAgIC5tYXAofHN8IHMudHJpbV9y aWdodF9tYXRjaGVzKCIgTUIiKSkKLSsgICAgICAgICAgICAubWFwKHxzfCBzLnRyaW1fZW5kX21h dGNoZXMoIiBNQiIpKQotICAgICAgICAgICAgIC5hbmRfdGhlbih8c3wgcy5wYXJzZTo6PGkzMj4o KS5vaygpKQotICAgICAgICAgICAgIC5pc19ub25lKCkKLSAgICAgICAgIHsKLS0tLSBwb2RjYXN0 cy1ndGsvc3JjL3dpZGdldHMvc2hvd3Nfdmlldy5ycy5vcmlnCTIwMTktMDYtMDkgMTU6NTQ6MDAu MzIwODc4ODY3ICswMjAwCi0rKysgcG9kY2FzdHMtZ3RrL3NyYy93aWRnZXRzL3Nob3dzX3ZpZXcu cnMJMjAxOS0wNi0wOSAxNTo1NDoxMy4xNTE3ODY1NjMgKzAyMDAKLUBAIC04MCw3ICs4MCw2IEBA Ci0gfQotIAotIGZuIG9uX2NoaWxkX2FjdGl2YXRlKGNoaWxkOiAmZ3RrOjpGbG93Qm94Q2hpbGQs IHNlbmRlcjogJlNlbmRlcjxBY3Rpb24+KSAtPiBSZXN1bHQ8KCksIEVycm9yPiB7Ci0tICAgIHVz ZSBndGs6OldpZGdldEV4dDsKLSAKLSAgICAgLy8gVGhpcyBpcyBzdWNoIGFuIHVnbHkgaGFjay4u LgotICAgICBsZXQgaWQgPSBXaWRnZXRFeHQ6OmdldF9uYW1lKGNoaWxkKQpkaWZmIC0tZ2l0IGEv c3JjcGtncy9nbm9tZS1wb2RjYXN0cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtcG9kY2FzdHMv dGVtcGxhdGUKaW5kZXggNzJlMmRiNmIxMDkuLjNjMjM5ZGY4NDI0IDEwMDY0NAotLS0gYS9zcmNw a2dzL2dub21lLXBvZGNhc3RzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtcG9kY2FzdHMv dGVtcGxhdGUKQEAgLTEsMjYgKzEsMjggQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXBv ZGNhc3RzJwogcGtnbmFtZT1nbm9tZS1wb2RjYXN0cwotdmVyc2lvbj0wLjQuNgotcmV2aXNpb249 MwordmVyc2lvbj0wLjQuNworcmV2aXNpb249MQogd3Jrc3JjPSJwb2RjYXN0cy0ke3ZlcnNpb259 IgogYnVpbGRfc3R5bGU9bWVzb24KLWhvc3RtYWtlZGVwZW5kcz0iY2FyZ28gZ2V0dGV4dC1kZXZl bCBnbGliLWRldmVsIHBrZy1jb25maWciCitidWlsZF9oZWxwZXI9InJ1c3QiCitob3N0bWFrZWRl cGVuZHM9ImNhcmdvIGdldHRleHQgZ2xpYi1kZXZlbCBwa2ctY29uZmlnIHNxbGl0ZS1kZXZlbCIK IG1ha2VkZXBlbmRzPSJnc3RyZWFtZXIxLWRldmVsIGdzdC1wbHVnaW5zLWJhZDEtZGV2ZWwgZ3N0 LXBsdWdpbnMtYmFzZTEtZGV2ZWwKLSBndGsrMy1kZXZlbCBsaWJoYW5keS1kZXZlbCBsaWJyZXNz bC1kZXZlbCBzcWxpdGUtZGV2ZWwgdGV4aW5mbyIKKyBndGsrMy1kZXZlbCBsaWJoYW5keS1kZXZl bCBsaWJyZXNzbC1kZXZlbCBzcWxpdGUtZGV2ZWwgcnVzdC1zdGQiCiBzaG9ydF9kZXNjPSJMaXN0 ZW4gdG8geW91ciBmYXZvcml0ZSBwb2RjYXN0cyIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxn b3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBh Z2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9Qb2RjYXN0cyIKIGRpc3RmaWxlcz0iaHR0 cHM6Ly9naXRsYWIuZ25vbWUub3JnL1dvcmxkL3BvZGNhc3RzLy0vYXJjaGl2ZS8ke3ZlcnNpb259 L3BvZGNhc3RzLSR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09OTUzYzYzZTgxODRjYTFmNzQ4 NDE4ZDhhODI2MmQ0MGVhYTQxMDQ3ZjgxZTJkMmM4NzRhMzAzNWQ5ZDlkMGU0YQotbm9jcm9zcz0i cnVzdGMgY2FudCBiZSBjcm9zc2NvbXBpbGVkIGFzIG9mIG5vdyIKLWJyb2tlbj0iZ2V0dGV4dC1y cyBoYXNoIGRvZXMgbm90IGV4aXN0cywgaWYgZml4ZWQgYnVpbGQgZmFpbHMgaW4gZ2lvIDAuNS4w IgorY2hlY2tzdW09YTlhMWI2MmRkMzU2N2UzY2NhMzhlZTI5ZGYyZmFkZDgyZTJmYjVlODM3YjBh MmEyNmVjYWM3NGU5MzA1MTYxYwogCiBleHBvcnQgR0VUVEVYVF9CSU5fRElSPS91c3IvYmluCiBl eHBvcnQgR0VUVEVYVF9MSUJfRElSPSIke1hCUFNfQ1JPU1NfQkFTRX0vdXNyL2xpYi9nZXR0ZXh0 IgogZXhwb3J0IEdFVFRFWFRfSU5DTFVERV9ESVI9IiR7WEJQU19DUk9TU19CQVNFfS91c3IvaW5j bHVkZSIKIAotcHJlX2J1aWxkKCkgewotCWNhcmdvIHVwZGF0ZSAtLXBhY2thZ2Ugb3BlbnNzbC1z eXMgLS1wcmVjaXNlIDAuOS40NgotCWNhcmdvIHVwZGF0ZSAtLXBhY2thZ2Ugb3BlbnNzbCAtLXBy ZWNpc2UgMC4xMC4yMgotfQoraWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCisJcG9zdF9wYXRj aCgpIHsKKwkJdnNlZCAtaSBzY3JpcHRzL2NhcmdvLnNoIFwKKwkJCS1lICdzJSIkQ0FSR09fVEFS R0VUX0RJUiIvJSYke1JVU1RfVEFSR0VUfS8lJyBcCisJCQktZSAnL0NBUkdPX0hPTUUvZCcKKwl9 CitmaQoKRnJvbSBiMDM4ZjZmNGI0MDA1MzM2ZTQxNTdhNjA3MTI2NzBjOWRlYzBmNGUwIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpE YXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ1OjAxICswNjAwClN1YmplY3Q6IFtQQVRDSCAxNS82 M10gZ25vbWUtY29udHJvbC1jZW50ZXI6IHVwZGF0ZSB0byAzLjM2LjMuCgotLS0KIHNyY3BrZ3Mv Z25vbWUtY29udHJvbC1jZW50ZXIvdGVtcGxhdGUgfCAyMCArKysrKysrKysrKysrKysrLS0tLQog MSBmaWxlIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9nbm9tZS1jb250cm9sLWNlbnRlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25v bWUtY29udHJvbC1jZW50ZXIvdGVtcGxhdGUKaW5kZXggMGUyNzg3ODk4YWUuLjUzYTU1NTUyNWI0 IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWNvbnRyb2wtY2VudGVyL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvZ25vbWUtY29udHJvbC1jZW50ZXIvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1jb250cm9sLWNlbnRlcicKIHBrZ25hbWU9Z25vbWUt Y29udHJvbC1jZW50ZXIKLXZlcnNpb249My4zNC4xCit2ZXJzaW9uPTMuMzYuMwogcmV2aXNpb249 MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgpAQCAtMTAsMjQgKzEwLDM2 IEBAIGhvc3RtYWtlZGVwZW5kcz0iZ2xpYi1kZXZlbCBnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFz LWRldmVsIGludGx0b29sIHBrZy1jb25maWcKIG1ha2VkZXBlbmRzPSJNb2RlbU1hbmFnZXItZGV2 ZWwgYWNjb3VudHNzZXJ2aWNlLWRldmVsIGFsc2EtcGx1Z2lucwogIGNvbG9yZC1ndGstZGV2ZWwg Z25vbWUtYmx1ZXRvb3RoLWRldmVsIGdub21lLWRlc2t0b3AtZGV2ZWwgZ25vbWUtbWVudXMtZGV2 ZWwKICBnbm9tZS1vbmxpbmUtYWNjb3VudHMtZGV2ZWwgZ25vbWUtc2V0dGluZ3MtZGFlbW9uLWRl dmVsIGdyaWxvLWRldmVsIGlidXMtZGV2ZWwKLSBsaWJTTS1kZXZlbCBsaWJYeGY4Nm1pc2MtZGV2 ZWwgbGliZ25vbWVrYmQtZGV2ZWwgbGliZ3RvcC1kZXZlbAorIGxpYlNNLWRldmVsIGxpYlh4Zjg2 bWlzYy1kZXZlbCBsaWJnbm9tZWtiZC1kZXZlbCBsaWJndG9wLWRldmVsIGxpYmhhbmR5LWRldmVs CiAgbGlicHdxdWFsaXR5LWRldmVsIG1pdC1rcmI1LWRldmVsIG5ldHdvcmstbWFuYWdlci1hcHBs ZXQtZGV2ZWwgcG9sa2l0LWRldmVsCiAgcHVsc2VhdWRpby1kZXZlbCBzYW1iYS1kZXZlbCB0emRh dGEgdXBvd2VyLWRldmVsIHZhbGEtZGV2ZWwgY2x1dHRlci1ndGstZGV2ZWwKICBsaWJ4bWwyLWRl dmVsIGxpYlgxMS1kZXZlbCBndGsrMy1kZXZlbCBjdXBzLWRldmVsIGxpYmd1ZGV2LWRldmVsIGxp YndhY29tLWRldmVsCiAgY2x1dHRlci1kZXZlbCBsaWJzZWNyZXQtZGV2ZWwgbGliY2FuYmVycmEt ZGV2ZWwgdWRpc2tzMi1kZXZlbCBnc291bmQtZGV2ZWwKICAkKHZvcHRfaWYgY2hlZXNlIGNoZWVz ZS1kZXZlbCkiCi1kZXBlbmRzPSJhbHNhLXBsdWdpbnMtcHVsc2VhdWRpbyBkZXNrdG9wLWZpbGUt dXRpbHMKK2RlcGVuZHM9ImFsc2EtcGx1Z2lucy1wdWxzZWF1ZGlvIGRlc2t0b3AtZmlsZS11dGls cyB1cG93ZXIgY29sb3JkIGN1cHMtcGstaGVscGVyCiAgZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1h cyBoaWNvbG9yLWljb24tdGhlbWUgaXNvLWNvZGVzIHNvdW5kLXRoZW1lLWZyZWVkZXNrdG9wCiAg Y3JhY2tsaWIiCitjaGVja2RlcGVuZHM9InB5dGhvbjMtZGJ1c21vY2sgeG9yZy1zZXJ2ZXIteHZm YiIKIHNob3J0X2Rlc2M9IkdOT01FIGNvbnRyb2wgY2VudGVyIgogbWFpbnRhaW5lcj0iRW5ubyBC b2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIi CiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLWNvbnRyb2wt Y2VudGVyIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4q fS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09NWY4MmVjZDU1NTQxMzZj NDYyMjQ4ZWM1MzYzYjgyZDk1MzU4YjM5ZGZkNjc4NzAwNmQ4MzA3YjQ1MDRlNTE1ZQorY2hlY2tz dW09YmMxNzRkOTcwZGJlY2EzZWUxOWMyNjAxOWRlMzFlOWVkZjc4ZGM5YzRhYmRlMTZlNzYzNTY2 ZWUzOGMzNjkxYwogCiBidWlsZF9vcHRpb25zPSJjaGVlc2UiCiBkZXNjX29wdGlvbl9jaGVlc2U9 IkFkZCBzdXBwb3J0IGZvciBhZGRpbmcgdXNlciBhY2NvdW50IGltYWdlcyB3aXRoIHlvdXIgd2Vi Y2FtIgorCitwcmVfY2hlY2soKSB7CisJIyB0ZXN0LW5ldHdvcmstcGFuZWwgbmVlZHMgaWQgZ2Vu ZXJhdGVkIGJ5IGRidXMtdXVpZGdlbgorCW1rZGlyIC1wIC92YXIvbGliL2RidXMKKwlkYnVzLXV1 aWRnZW4gLS1lbnN1cmUKK30KKworcG9zdF9jaGVjaygpIHsKKwlybSAtcmYgL3Zhci9saWIvZGJ1 cworfQorCiBpZiBbIC16ICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlidWlsZF9vcHRpb25zX2Rl ZmF1bHQrPSIgY2hlZXNlIgogZmkKCkZyb20gMjllMTM4ZjNjNGE4NzBlYTZmODA4MGRhM2VhNmEw ZTk3MWZkNzY2OCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4y NUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NTowOCArMDYwMApTdWJq ZWN0OiBbUEFUQ0ggMTYvNjNdIGdub21lLXNldHRpbmdzLWRhZW1vbjogdXBkYXRlIHRvIDMuMzYu MS4KCkFkZGVkIGEgcGF0Y2ggdG8gZml4IGJyaWdodG5lc3MgY29udHJvbHMgd2l0aCBlbG9naW5k LgotLS0KIC4uLnQtdXNlLWxvZ2luZC1mb3ItYnJpZ2h0bmVzcy1jaGFuZ2luZy5wYXRjaCB8IDEy MSArKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBs YXRlICAgICAgICB8ICAxMCArLQogMiBmaWxlcyBjaGFuZ2VkLCAxMjYgaW5zZXJ0aW9ucygrKSwg NSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2dub21lLXNldHRpbmdz LWRhZW1vbi9wYXRjaGVzL2RvbnQtdXNlLWxvZ2luZC1mb3ItYnJpZ2h0bmVzcy1jaGFuZ2luZy5w YXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3BhdGNoZXMv ZG9udC11c2UtbG9naW5kLWZvci1icmlnaHRuZXNzLWNoYW5naW5nLnBhdGNoIGIvc3JjcGtncy9n bm9tZS1zZXR0aW5ncy1kYWVtb24vcGF0Y2hlcy9kb250LXVzZS1sb2dpbmQtZm9yLWJyaWdodG5l c3MtY2hhbmdpbmcucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAu LmEzYTgzNGUzYjc0Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9nbm9tZS1zZXR0aW5ncy1k YWVtb24vcGF0Y2hlcy9kb250LXVzZS1sb2dpbmQtZm9yLWJyaWdodG5lc3MtY2hhbmdpbmcucGF0 Y2gKQEAgLTAsMCArMSwxMjEgQEAKK1Vwc3RyZWFtIGludHJvZHVjZWQgYnJpZ2h0bmVzcyBsZXZl bCBjaGFuZ2luZyB3aXRoCitodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtc2V0 dGluZ3MtZGFlbW9uLy0vY29tbWl0L2NkMDUxZTZjN2NjZmI3ZTdiMGVjNDQwNDA5YzU1OWIyZTUx Mjg0ZTgKK2J1dCBhcHBhcmVudGx5IHRoaXMgZG9lc24ndCB3b3JrIHdpdGggZWxvZ2luZCAoc2Vl IGh0dHBzOi8vZ2l0aHViLmNvbS9lbG9naW5kL2Vsb2dpbmQvaXNzdWVzLzE1OCksCitzbyBsZXQn cyByZXZlcnQgdGhpcyBmb3Igbm93IGFuZCBrZWVwIHVzaW5nIHRoZSBvbGQgbWVjaGFuaXNtLgor ZGlmZiAtLWdpdCBwbHVnaW5zL3Bvd2VyL2dzZC1iYWNrbGlnaHQuYyBwbHVnaW5zL3Bvd2VyL2dz ZC1iYWNrbGlnaHQuYworaW5kZXggOWY0MDZjOS4uOWM4NzJmOCAxMDA2NDQKKy0tLSBwbHVnaW5z L3Bvd2VyL2dzZC1iYWNrbGlnaHQuYworKysrIHBsdWdpbnMvcG93ZXIvZ3NkLWJhY2tsaWdodC5j CitAQCAtNDAsOCArNDAsNiBAQCBzdHJ1Y3QgX0dzZEJhY2tsaWdodAorICAgICAgICAgZ2ludCBi cmlnaHRuZXNzX3N0ZXA7CisgCisgI2lmZGVmIF9fbGludXhfXworLSAgICAgICAgR0RCdXNQcm94 eSAqbG9naW5kX3Byb3h5OworLQorICAgICAgICAgR1VkZXZDbGllbnQgKnVkZXY7CisgICAgICAg ICBHVWRldkRldmljZSAqdWRldl9kZXZpY2U7CisgCitAQCAtNjEsMTAgKzU5LDYgQEAgZW51bSB7 CisgICAgICAgICBQUk9QX0xBU1QsCisgfTsKKyAKKy0jZGVmaW5lIFNZU1RFTURfREJVU19OQU1F ICAgICAgICAgICAgICAgICAgICAgICAib3JnLmZyZWVkZXNrdG9wLmxvZ2luMSIKKy0jZGVmaW5l IFNZU1RFTURfREJVU19QQVRIICAgICAgICAgICAgICAgICAgICAgICAiL29yZy9mcmVlZGVza3Rv cC9sb2dpbjEvc2Vzc2lvbi9hdXRvIgorLSNkZWZpbmUgU1lTVEVNRF9EQlVTX0lOVEVSRkFDRSAg ICAgICAgICAgICAgICAgICJvcmcuZnJlZWRlc2t0b3AubG9naW4xLlNlc3Npb24iCistCisgc3Rh dGljIEdQYXJhbVNwZWMgKnByb3BzW1BST1BfTEFTVF07CisgCisgc3RhdGljIHZvaWQgICAgIGdz ZF9iYWNrbGlnaHRfaW5pdGFibGVfaWZhY2VfaW5pdCAoR0luaXRhYmxlSWZhY2UgICppZmFjZSk7 CitAQCAtNDgxLDMxICs0NzUsMTMgQEAgZ3NkX2JhY2tsaWdodF9zZXRfYnJpZ2h0bmVzc192YWxf YXN5bmMgKEdzZEJhY2tsaWdodCAqYmFja2xpZ2h0LAorICNpZmRlZiBfX2xpbnV4X18KKyAgICAg ICAgIGlmIChiYWNrbGlnaHQtPnVkZXZfZGV2aWNlICE9IE5VTEwpIHsKKyAgICAgICAgICAgICAg ICAgQmFja2xpZ2h0SGVscGVyRGF0YSAqdGFza19kYXRhOworKyAgICAgICAgICAgICAgICAgIHRh c2tfZGF0YSA9IGdfbmV3MCAoQmFja2xpZ2h0SGVscGVyRGF0YSwgMSk7CisrICAgICAgICAgICAg ICAgICAgdGFza19kYXRhLT52YWx1ZSA9IGJhY2tsaWdodC0+YnJpZ2h0bmVzc190YXJnZXQ7Cisr ICAgICAgICAgICAgICAgICAgZ190YXNrX3NldF90YXNrX2RhdGEgKHRhc2ssIHRhc2tfZGF0YSwg YmFja2xpZ2h0X3Rhc2tfZGF0YV9kZXN0cm95KTsKKyAKKy0gICAgICAgICAgICAgICAgaWYgKGJh Y2tsaWdodC0+bG9naW5kX3Byb3h5KSB7CistICAgICAgICAgICAgICAgICAgICAgICAgZ19kYnVz X3Byb3h5X2NhbGwgKGJhY2tsaWdodC0+bG9naW5kX3Byb3h5LAorLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAiU2V0QnJpZ2h0bmVzcyIsCistICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdfdmFyaWFudF9uZXcgKCIoc3N1KSIsCist ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICJiYWNrbGlnaHQiLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBnX3VkZXZfZGV2aWNlX2dldF9uYW1lIChiYWNrbGlnaHQtPnVkZXZf ZGV2aWNlKSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgYmFja2xpZ2h0LT5icmlnaHRuZXNzX3RhcmdldCksCistICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdfREJVU19DQUxMX0ZMQUdTX05PTkUsCist ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0xLCBOVUxMLAorLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCBOVUxMKTsKKy0K Ky0gICAgICAgICAgICAgICAgICAgICAgICBwZXJjZW50ID0gQUJTX1RPX1BFUkNFTlRBR0UgKGJh Y2tsaWdodC0+YnJpZ2h0bmVzc19taW4sCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBiYWNrbGlnaHQtPmJyaWdodG5lc3NfbWF4LAorLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2xpZ2h0 LT5icmlnaHRuZXNzX3RhcmdldCk7CistICAgICAgICAgICAgICAgICAgICAgICAgZ190YXNrX3Jl dHVybl9pbnQgKHRhc2ssIHBlcmNlbnQpOworLSAgICAgICAgICAgICAgICB9IGVsc2UgeworLSAg ICAgICAgICAgICAgICAgICAgICAgIHRhc2tfZGF0YSA9IGdfbmV3MCAoQmFja2xpZ2h0SGVscGVy RGF0YSwgMSk7CistICAgICAgICAgICAgICAgICAgICAgICAgdGFza19kYXRhLT52YWx1ZSA9IGJh Y2tsaWdodC0+YnJpZ2h0bmVzc190YXJnZXQ7CistICAgICAgICAgICAgICAgICAgICAgICAgZ190 YXNrX3NldF90YXNrX2RhdGEgKHRhc2ssIHRhc2tfZGF0YSwgYmFja2xpZ2h0X3Rhc2tfZGF0YV9k ZXN0cm95KTsKKy0KKy0gICAgICAgICAgICAgICAgICAgICAgICAvKiBUYXNrIGlzIHNldCB1cCBu b3cuIFF1ZXVlIGl0IGFuZCBlbnN1cmUgd2UgYXJlIHdvcmtpbmcgc29tZXRoaW5nLiAqLworLSAg ICAgICAgICAgICAgICAgICAgICAgIGdfcXVldWVfcHVzaF90YWlsICgmYmFja2xpZ2h0LT50YXNr cywgdGFzayk7CistICAgICAgICAgICAgICAgICAgICAgICAgZ3NkX2JhY2tsaWdodF9wcm9jZXNz X3Rhc2txdWV1ZSAoYmFja2xpZ2h0KTsKKy0gICAgICAgICAgICAgICAgfQorKyAgICAgICAgICAg ICAgICAgIC8qIFRhc2sgaXMgc2V0IHVwIG5vdy4gUXVldWUgaXQgYW5kIGVuc3VyZSB3ZSBhcmUg d29ya2luZyBzb21ldGhpbmcuICovCisrICAgICAgICAgICAgICAgICAgZ19xdWV1ZV9wdXNoX3Rh aWwgKCZiYWNrbGlnaHQtPnRhc2tzLCB0YXNrKTsKKysgICAgICAgICAgICAgICAgICBnc2RfYmFj a2xpZ2h0X3Byb2Nlc3NfdGFza3F1ZXVlIChiYWNrbGlnaHQpOworIAorICAgICAgICAgICAgICAg ICByZXR1cm47CisgICAgICAgICB9CitAQCAtODIzLDcgKzc5OSw2IEBAIGdzZF9iYWNrbGlnaHRf aW5pdGFibGVfaW5pdCAoR0luaXRhYmxlICAgICAgICppbml0YWJsZSwKKyB7CisgICAgICAgICBH c2RCYWNrbGlnaHQgKmJhY2tsaWdodCA9IEdTRF9CQUNLTElHSFQgKGluaXRhYmxlKTsKKyAgICAg ICAgIEdub21lUlJPdXRwdXQqIG91dHB1dCA9IE5VTEw7CistICAgICAgICBHRXJyb3IgKmxvZ2lu ZF9lcnJvciA9IE5VTEw7CisgCisgICAgICAgICBpZiAoY2FuY2VsbGFibGUgIT0gTlVMTCkgewor ICAgICAgICAgICAgICAgICBnX3NldF9lcnJvcl9saXRlcmFsIChlcnJvciwgR19JT19FUlJPUiwg R19JT19FUlJPUl9OT1RfU1VQUE9SVEVELAorQEAgLTgzMiwzOCArODA3LDYgQEAgZ3NkX2JhY2ts aWdodF9pbml0YWJsZV9pbml0IChHSW5pdGFibGUgICAgICAgKmluaXRhYmxlLAorICAgICAgICAg fQorIAorICNpZmRlZiBfX2xpbnV4X18KKy0gICAgICAgIGJhY2tsaWdodC0+bG9naW5kX3Byb3h5 ID0KKy0gICAgICAgICAgICAgICAgZ19kYnVzX3Byb3h5X25ld19mb3JfYnVzX3N5bmMgKEdfQlVT X1RZUEVfU1lTVEVNLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgMCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IE5VTEwsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBT WVNURU1EX0RCVVNfTkFNRSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFNZU1RFTURfREJVU19QQVRILAorLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgU1lTVEVNRF9EQlVTX0lOVEVSRkFDRSwKKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsICZsb2dpbmRfZXJyb3Ip OworLSAgICAgICAgaWYgKGJhY2tsaWdodC0+bG9naW5kX3Byb3h5KSB7CistICAgICAgICAgICAg ICAgIC8qIENoZWNrIHRoYXQgdGhlIFNldEJyaWdodG5lc3MgbWV0aG9kIGRvZXMgZXhpc3QgKi8K Ky0gICAgICAgICAgICAgICAgZ19kYnVzX3Byb3h5X2NhbGxfc3luYyAoYmFja2xpZ2h0LT5sb2dp bmRfcHJveHksCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJTZXRC cmlnaHRuZXNzIiwgTlVMTCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgR19EQlVTX0NBTExfRkxBR1NfTk9ORSwgLTEsCistICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE5VTEwsICZsb2dpbmRfZXJyb3IpOworLQorLSAgICAgICAgICAgICAg ICBpZiAoZ19lcnJvcl9tYXRjaGVzIChsb2dpbmRfZXJyb3IsIEdfREJVU19FUlJPUiwKKy0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR19EQlVTX0VSUk9SX0lOVkFMSURfQVJH UykpIHsKKy0gICAgICAgICAgICAgICAgICAgICAgICAvKiBXZSBhcmUgY2FsbGluZyB0aGUgbWV0 aG9kIHdpdGggbm8gYXJndW1lbnRzLCBzbworLSAgICAgICAgICAgICAgICAgICAgICAgICAqIHRo aXMgaXMgZXhwZWN0ZWQuCistICAgICAgICAgICAgICAgICAgICAgICAgICovCistICAgICAgICAg ICAgICAgICAgICAgICAgZ19jbGVhcl9lcnJvciAoJmxvZ2luZF9lcnJvcik7CistICAgICAgICAg ICAgICAgIH0gZWxzZSB7CistICAgICAgICAgICAgICAgICAgICAgICAgLyogRmFpbCBvbiBhbnl0 aGluZyBlbHNlICovCistICAgICAgICAgICAgICAgICAgICAgICAgZ19jbGVhcl9vYmplY3QgKCZi YWNrbGlnaHQtPmxvZ2luZF9wcm94eSk7CistICAgICAgICAgICAgICAgIH0KKy0gICAgICAgIH0K Ky0KKy0gICAgICAgIGlmIChsb2dpbmRfZXJyb3IpIHsKKy0gICAgICAgICAgICAgICAgZ193YXJu aW5nICgiTm8gbG9naW5kIGZvdW5kOiAlcyIsIGxvZ2luZF9lcnJvci0+bWVzc2FnZSk7CistICAg ICAgICAgICAgICAgIGdfZXJyb3JfZnJlZSAobG9naW5kX2Vycm9yKTsKKy0gICAgICAgIH0KKy0K KyAgICAgICAgIC8qIFRyeSBmaW5kaW5nIGEgdWRldiBkZXZpY2UuICovCisgICAgICAgICBpZiAo Z3NkX2JhY2tsaWdodF91ZGV2X2luaXQgKGJhY2tsaWdodCkpCisgICAgICAgICAgICAgICAgIGdv dG8gZm91bmQ7CitAQCAtOTA1LDcgKzg0OCw2IEBAIGdzZF9iYWNrbGlnaHRfZmluYWxpemUgKEdP YmplY3QgKm9iamVjdCkKKyAjaWZkZWYgX19saW51eF9fCisgICAgICAgICBnX2Fzc2VydCAoYmFj a2xpZ2h0LT5hY3RpdmVfdGFzayA9PSBOVUxMKTsKKyAgICAgICAgIGdfYXNzZXJ0IChnX3F1ZXVl X2lzX2VtcHR5ICgmYmFja2xpZ2h0LT50YXNrcykpOworLSAgICAgICAgZ19jbGVhcl9vYmplY3Qg KCZiYWNrbGlnaHQtPmxvZ2luZF9wcm94eSk7CisgICAgICAgICBnX2NsZWFyX29iamVjdCAoJmJh Y2tsaWdodC0+dWRldik7CisgICAgICAgICBnX2NsZWFyX29iamVjdCAoJmJhY2tsaWdodC0+dWRl dl9kZXZpY2UpOworICAgICAgICAgaWYgKGJhY2tsaWdodC0+aWRsZV91cGRhdGUpIHsKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBsYXRlIGIvc3JjcGtncy9n bm9tZS1zZXR0aW5ncy1kYWVtb24vdGVtcGxhdGUKaW5kZXggYTcwZTI4YmU1ZmEuLjljZWIxZDEz ZGU5IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXNldHRpbmdzLWRhZW1vbi90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2dub21lLXNldHRpbmdzLWRhZW1vbi90ZW1wbGF0ZQpAQCAtMSwxMCArMSwx MCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtc2V0dGluZ3MtZGFlbW9uJwogcGtnbmFt ZT1nbm9tZS1zZXR0aW5ncy1kYWVtb24KLXZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0yCit2ZXJz aW9uPTMuMzYuMQorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KLWNvbmZpZ3VyZV9hcmdz Kz0iLURzeXN0ZW1kPWZhbHNlIgotaG9zdG1ha2VkZXBlbmRzPSJjbWFrZSBkb2Nib29rLXhzbCBn bGliLWRldmVsIGxpYmdsaWItZGV2ZWwgbGlieHNsdCBwZXJsIHBrZy1jb25maWciCitjb25maWd1 cmVfYXJncz0iLURzeXN0ZW1kPWZhbHNlIgoraG9zdG1ha2VkZXBlbmRzPSJjbWFrZSBkb2Nib29r LXhzbCBnZXR0ZXh0IGdsaWItZGV2ZWwgbGliZ2xpYi1kZXZlbCBsaWJ4c2x0IHBlcmwgcGtnLWNv bmZpZyIKIG1ha2VkZXBlbmRzPSJOZXR3b3JrTWFuYWdlci1kZXZlbCBhbHNhLWxpYi1kZXZlbCBj b2xvcmQtZGV2ZWwgY3Vwcy1kZXZlbCBnY3ItZGV2ZWwKICBnZW9jbHVlMi1kZXZlbCBnbm9tZS1k ZXNrdG9wLWRldmVsIGlidXMtZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGliZ25vbWVrYmQtZGV2 ZWwKICBsaWJnd2VhdGhlci1kZXZlbCBsaWJub3RpZnktZGV2ZWwgbGlicnN2Zy1kZXZlbCBsaWJ3 YWNvbS1kZXZlbCBuc3MtZGV2ZWwKQEAgLTE4LDcgKzE4LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBC b2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIi CiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXNldHRpbmdz LWRhZW1vbiIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUu Kn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTk5ODFhMjBiYWJmOGRh Nzc0NGI3ZmJlMTc1YjllMzYwNzhiZjA4ZjNiZjY1ZmU1YWVkZWI4MmNmZTI3YWMxMWYKK2NoZWNr c3VtPTNlMzNkYmQzMTliNTYyYTVhYjYwMmRjYWI2ZGUzY2E4MWI4NWY4MzQ2NjcyZTkwZWM2MzJi MzZiYmYxNWVlNGIKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBl bmRzKz0iIHBvbGtpdCIKCkZyb20gNWUxYjI5ZjRlMDM4Yjc0ODQ3YTZiZTU3MDJlNzkwYWIyYTMy ZTkyOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRs b29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NToyNyArMDYwMApTdWJqZWN0OiBb UEFUQ0ggMTcvNjNdIGdub21lLXVzZXItZG9jczogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3Jj cGtncy9nbm9tZS11c2VyLWRvY3MvdGVtcGxhdGUgfCA4ICsrKystLS0tCiAxIGZpbGUgY2hhbmdl ZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv Z25vbWUtdXNlci1kb2NzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS11c2VyLWRvY3MvdGVtcGxh dGUKaW5kZXggNGNiNTUzOTZlMzcuLmNhOTkzMzQ2ZTNhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2du b21lLXVzZXItZG9jcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXVzZXItZG9jcy90ZW1w bGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXVzZXItZG9j cycKIHBrZ25hbWU9Z25vbWUtdXNlci1kb2NzCi12ZXJzaW9uPTMuMzQuMAordmVyc2lvbj0zLjM2 LjIKIHJldmlzaW9uPTEKIGFyY2hzPW5vYXJjaAogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQpA QCAtMTAsNyArMTAsNyBAQCBkZXBlbmRzPSJ5ZWxwIgogc2hvcnRfZGVzYz0iVXNlciBkb2N1bWVu dGF0aW9uIGZvciBHTk9NRSIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxp bnV4Lm9yZz4iCiBsaWNlbnNlPSJDQy1CWS0zLjAiCi1ob21lcGFnZT0iaHR0cHM6Ly9naXRodWIu Y29tL0dOT01FL2dub21lLXVzZXItZG9jcyIKLSNjaGFuZ2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1 YnVzZXJjb250ZW50LmNvbS9HTk9NRS9nbm9tZS11c2VyLWRvY3MvbWFzdGVyL05FV1MiCitob21l cGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXVzZXItZG9jcyIKK2No YW5nZWxvZz0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLXVzZXItZG9jcy8t L3Jhdy8zLjM2LjIvTkVXUyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7 dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPThmOTkw N2ZmMTVmZmY5N2RhNzVlY2U2NDVjYzg2NzY2NzAzYWM1NGQ3MTZkMjU1NjNiYTY3ZmZlZDFhZjI0 ZWQKK2NoZWNrc3VtPTE5OGZlNGM4MzY3NzVhNWRjMjU0M2E2YTUyMGRmYjBhYzViZjI5MmNkY2Iz NThhNTdjODZmMzVmNzA1ZTk5NTgKCkZyb20gMDc3NzU5ZjAzMTNmZmZmOTc5NzQ2NzdjM2ViYjJj YWQzM2E2YjIyMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4y NUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NTozNiArMDYwMApTdWJq ZWN0OiBbUEFUQ0ggMTgvNjNdIGdub21lLWluaXRpYWwtc2V0dXA6IHVwZGF0ZSB0byAzLjM2LjMu CgotLS0KIHNyY3BrZ3MvZ25vbWUtaW5pdGlhbC1zZXR1cC90ZW1wbGF0ZSB8IDEwICsrKysrLS0t LS0KIDEgZmlsZSBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1pbml0aWFsLXNldHVwL3RlbXBsYXRlIGIvc3JjcGtncy9n bm9tZS1pbml0aWFsLXNldHVwL3RlbXBsYXRlCmluZGV4IGFiYTVhMDk0YzI4Li5jYWEzM2MyNjk1 ZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1pbml0aWFsLXNldHVwL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvZ25vbWUtaW5pdGlhbC1zZXR1cC90ZW1wbGF0ZQpAQCAtMSwxMCArMSwxMCBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtaW5pdGlhbC1zZXR1cCcKIHBrZ25hbWU9Z25vbWUt aW5pdGlhbC1zZXR1cAotdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTIKK3ZlcnNpb249My4zNi4z CityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgotY29uZmlndXJlX2FyZ3M9Ii1Ec29mdHdh cmUtc291cmNlcz1kaXNhYmxlZCAtRHN5c3RlbWQ9ZmFsc2UiCi1ob3N0bWFrZWRlcGVuZHM9InBr Zy1jb25maWcgZ2xpYi1kZXZlbCIKK2NvbmZpZ3VyZV9hcmdzPSItRHBhcmVudGFsX2NvbnRyb2xz PWRpc2FibGVkIC1Ec3lzdGVtZD1mYWxzZSIKK2hvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ct Y29uZmlnIGdsaWItZGV2ZWwiCiBtYWtlZGVwZW5kcz0iTmV0d29ya01hbmFnZXItZGV2ZWwgYWNj b3VudHNzZXJ2aWNlLWRldmVsIGxpYmdsaWItZGV2ZWwKICBnbm9tZS1kZXNrdG9wLWRldmVsIGNo ZWVzZS1kZXZlbCBsaWJnd2VhdGhlci1kZXZlbCB3ZWJraXQyZ3RrLWRldmVsCiAgZ25vbWUtb25s aW5lLWFjY291bnRzLWRldmVsIGdkbS1kZXZlbCBsaWJwd3F1YWxpdHktZGV2ZWwKQEAgLTE3LDQg KzE3LDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIK IGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21l Lm9yZy9EZXNpZ24vT1MvSW5pdGlhbFNldHVwIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7 cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hl Y2tzdW09ZTcxZjEwZWY2YjYzMWNkOTJmZmRlNzc0ZTQxMzBiMzJiMjQ5NGI0ZGY1ZWYyODgzNzVk OGIxOTU3ZWVhYmZhMQorY2hlY2tzdW09ZDhhOTMzZjhjODIyY2MyOTNjYzEwYjUzMjc3OWY4NTYy MzQyYWUyMjcxYjkyOTg3OWU4ZjEwODQ5MWY0YzI4NQoKRnJvbSAwZWQ0N2ZmNzFjMmY2NGUxNWIz ODllZmNhZDVkZTlmZmUwZWFhZDY2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZp cyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ1OjQz ICswNjAwClN1YmplY3Q6IFtQQVRDSCAxOS82M10gZXZvbHV0aW9uLWRhdGEtc2VydmVyOiB1cGRh dGUgdG8gMy4zNi4zLgoKLS0tCiBzcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0 ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRl IGIvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUKaW5kZXggNGFlODIwYmUw NjguLmViZjgxNDVmODhjIDEwMDY0NAotLS0gYS9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZl ci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQpA QCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2b2x1dGlvbi1kYXRhLXNlcnZl cicKIHBrZ25hbWU9ZXZvbHV0aW9uLWRhdGEtc2VydmVyCi12ZXJzaW9uPTMuMzYuMQotcmV2aXNp b249MgordmVyc2lvbj0zLjM2LjMKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBidWls ZF9oZWxwZXI9Z2lyCiBjb25maWd1cmVfYXJncz0iLURFTkFCTEVfVU9BPU9GRgpAQCAtMTcsNyAr MTcsNyBAQCBsaWNlbnNlPSJMR1BMLTIuMS1vbmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5n bm9tZS5vcmcvQXBwcy9Fdm9sdXRpb24iCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1YnVz ZXJjb250ZW50LmNvbS9HTk9NRS9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvZ25vbWUtMy0zNi9ORVdT IgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3Br Z25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09MTMxMjJiMmVkZGRiOTgzMDYyMDdk MmEzNWQ1Y2NhZTI1YTkwNzAyNzY5Y2EwYTBiNTE2NTNiNTk4NDk4Njc5NgorY2hlY2tzdW09MWY1 ZjQ4MTczZDBmMjg4MjE5ZDczZDRmMTkzY2I5MjFhZTYzMTkzMmJhODQwMzBmMDU3NTFjNDJiYjAw M2RiMgogCiBidWlsZF9vcHRpb25zPSJnaXIiCiBpZiBbIC16ICIkQ1JPU1NfQlVJTEQiIF07IHRo ZW4KCkZyb20gM2Y4ZjExMGUwMjViNDExMTc2MjVkZjczYzc1YWZhZjc2MjAyMjIyMiBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0 ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NTo1NiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjAvNjNd IGV2b2x1dGlvbjogdXBkYXRlIHRvIDMuMzYuMy4KCi0tLQogc3JjcGtncy9ldm9sdXRpb24vdGVt cGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24vdGVtcGxhdGUgYi9zcmNwa2dz L2V2b2x1dGlvbi90ZW1wbGF0ZQppbmRleCA1NjBlZDkzZGEwMi4uZDk1YzA3ZWI3MmMgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZXZvbHV0aW9u L3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZXZvbHV0aW9u JwogcGtnbmFtZT1ldm9sdXRpb24KLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMwogcmV2 aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREVOQUJMRV9BVVRP QVI9T0ZGIC1ERU5BQkxFX0xJQkNSWVBUVUk9T0ZGIC1ERU5BQkxFX0dUS1NQRUxMPU9GRgpAQCAt MTksNyArMTksNyBAQCBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciwgTEdQTC0zLjAtb3ItbGF0 ZXIsIEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9B cHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQu Y29tL0dOT01FL2V2b2x1dGlvbi9nbm9tZS0zLTM2L05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVf U0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIu eHoiCi1jaGVja3N1bT04NzNhY2YxZGJlYzM4ZTY3ZTE2OTA2NDY0NWFjM2E5YjlhOTQ0YmQyYjYz MzE2MWRmNmU1ZjA1NzAwZTM2Y2I4CitjaGVja3N1bT01NGUxNmNhYTI4NmMwMmQ0ZmU5NGI0M2Uz M2FiZjVjZDZmM2ExNTAyMTgxYmI4Y2Y1NTdhYWRjODg2YjVjYTAzCiBzaGxpYl9wcm92aWRlcz0i bGliZXZvbHV0aW9uLWNhbGVuZGFyLnNvIGxpYmV2b2x1dGlvbi11dGlsLnNvIGxpYmVtYWlsLWVu Z2luZS5zbwogIGxpYmV2b2x1dGlvbi1tYWlsLnNvIGxpYmV2b2x1dGlvbi1zaGVsbC5zbyIKIAoK RnJvbSAyODg4MDMzZTc4ZTNiMDRhZmZjYzI2NDIzNzc1ZjM3ZWFlYzlkOGQyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBU dWUsIDE2IEp1biAyMDIwIDE5OjQ2OjA0ICswNjAwClN1YmplY3Q6IFtQQVRDSCAyMS82M10gZXZv bHV0aW9uLWV3czogdXBkYXRlIHRvIDMuMzYuMy4KCi0tLQogc3JjcGtncy9ldm9sdXRpb24tZXdz L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1wbGF0ZSBi L3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1wbGF0ZQppbmRleCA0ZmY4MTE2NDY2Yy4uMzhmZDYy ZDM5ZTEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2V2b2x1dGlvbi1ld3MvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdldm9sdXRpb24tZXdzJwogcGtnbmFtZT1ldm9sdXRpb24tZXdzCi12ZXJzaW9u PTMuMzYuMQordmVyc2lvbj0zLjM2LjMKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBj b25maWd1cmVfYXJncz0iLURMSUJFWEVDX0lOU1RBTExfRElSPS91c3IvbGliL2V2b2x1dGlvbiIK QEAgLTEyLDQgKzEyLDQgQEAgbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxvZz0iaHR0cHM6 Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL0dOT01FL2V2b2x1dGlvbi1ld3MvZ25vbWUtMy0z Ni9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4q fS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDA4ODNjN2QyMjc4Mjdj YzVjNDQ2OGI3ZTMxYTNlZTM3MGJjZDdkNDFhNGRiYjk1MGFiNWRiMzZjOTU1MWFjMQorY2hlY2tz dW09N2E5N2E1OWIxMGY3YTQ4YTNiY2Y2ZDQ3NmM2YTJjMDY4ZWM1YzQ4YzU0NmE0MzM4MTI2OTFi ODMwMTc1MmQwNAoKRnJvbSAwYmExNDEyYWE0ODE1OWQyN2RiNmIxYjNiYTdmNjEzYzIwODJhYmQ4 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2su Y29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ2OjExICswNjAwClN1YmplY3Q6IFtQQVRD SCAyMi82M10gYXRrOiB1cGRhdGUgdG8gMi4zNi4wLgoKLS0tCiBzcmNwa2dzL2F0ay90ZW1wbGF0 ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXRrL3RlbXBsYXRlIGIvc3JjcGtncy9hdGsvdGVt cGxhdGUKaW5kZXggN2MxNGIxMTY1OTguLmNhMjJkMzY2MTk4IDEwMDY0NAotLS0gYS9zcmNwa2dz L2F0ay90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2F0ay90ZW1wbGF0ZQpAQCAtMSwxOCArMSwxOCBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYXRrJwogcGtnbmFtZT1hdGsKLXZlcnNpb249Mi4zNC4x Cit2ZXJzaW9uPTIuMzYuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hl bHBlcj0iZ2lyIgogY29uZmlndXJlX2FyZ3M9Ii1EaW50cm9zcGVjdGlvbj0kKHZvcHRfaWYgZ2ly IHRydWUgZmFsc2UpIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGdsaWItZGV2ZWwiCito b3N0bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyBnbGliLWRldmVsIgogbWFrZWRlcGVu ZHM9ImxpYmdsaWItZGV2ZWwiCiBzaG9ydF9kZXNjPSJTZXQgb2YgaW50ZXJmYWNlcyBmb3IgYWNj ZXNzaWJpbGl0eSIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9y Zz4iCiBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2RldmVs b3Blci5nbm9tZS5vcmcvYXRrLyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9hdGsvJHt2ZXJz aW9uJS4qfS9hdGstJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1kNGYwZTNiM2QyMTI2NWZj ZjJiYzM3MWUxMTdkYTUxYzQyZWRlMWE3MWY2ZGIxYzgzNGU2OTc2YmIyMDk5N2NiCitjaGVja3N1 bT1mYjc2MjQ3ZTM2OTQwMmJlMjNmMWY1YzY1ZDM4YTk2MzljMTE2NGQ5MzRlNDBmNmE5Y2YzYzll OTZiNjUyNzg4CiAKICMgUGFja2FnZSBidWlsZCBvcHRpb25zCiBidWlsZF9vcHRpb25zPSJnaXIi CgpGcm9tIDU4OTBhZjM4ODliZTQ0YTE4MzkxNjFlOTBlNjc1NjA0MjVkM2QwNTQgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6 IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDY6MTkgKzA2MDAKU3ViamVjdDogW1BBVENIIDIzLzYzXSBh dC1zcGkyLWNvcmU6IHVwZGF0ZSB0byAyLjM2LjAuCgotLS0KIHNyY3BrZ3MvYXQtc3BpMi1jb3Jl L3RlbXBsYXRlIHwgOSArKysrLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyks IDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdC1zcGkyLWNvcmUvdGVtcGxh dGUgYi9zcmNwa2dzL2F0LXNwaTItY29yZS90ZW1wbGF0ZQppbmRleCBiMzgzZmU5OWJlZC4uZmI3 OTlhZjdlNTIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXQtc3BpMi1jb3JlL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvYXQtc3BpMi1jb3JlL3RlbXBsYXRlCkBAIC0xLDE4ICsxLDE3IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdhdC1zcGkyLWNvcmUnCiBwa2duYW1lPWF0LXNwaTItY29yZQotdmVyc2lv bj0yLjM0LjAKK3ZlcnNpb249Mi4zNi4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgog YnVpbGRfaGVscGVyPSJnaXIiCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgZGJ1cyBnbGli LWRldmVsIgotbWFrZWRlcGVuZHM9ImxpYmdsaWItZGV2ZWwgbGliWGV4dC1kZXZlbCBsaWJTTS1k ZXZlbCBsaWJYdHN0LWRldmVsCi0gbGliWGV2aWUtZGV2ZWwgZGJ1cy1kZXZlbCIKK2hvc3RtYWtl ZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGRidXMgZ2xpYi1kZXZlbCIKK21ha2VkZXBlbmRz PSJsaWJnbGliLWRldmVsIGxpYlNNLWRldmVsIGxpYlh0c3QtZGV2ZWwgZGJ1cy1kZXZlbCIKIHNo b3J0X2Rlc2M9IkFzc2lzdGl2ZSBUZWNobm9sb2d5IFNlcnZpY2UgUHJvdmlkZXIgSW50ZXJmYWNl IgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vu c2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3Jn L0dOT01FL2F0LXNwaTItY29yZSIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9 LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWQ2 MjljZGJkNjc0ZTUzOWY4OTEyMDI4NTEyYWY1ODM5OTA5MzhjN2I0OWUyNTE4NGMxMjZiMDAxMjFl ZjExYzYKK2NoZWNrc3VtPTg4ZGE1N2RlMGE3ZTNjNjBiYzM0MWE5NzRhODBmZGJhMDkxNjEyZGIz NTQ3YzQxMGQ2ZGVhYjAzOWNhNWMwNWEKIAogIyBQYWNrYWdlIGJ1aWxkIG9wdGlvbnMKIGJ1aWxk X29wdGlvbnM9ImdpciIKCkZyb20gYjcwODAwYjBmYmNlOTQ3MGJiYWEwOWJiMGI2YzE0MGVlN2U4 MDU1NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRs b29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0NjoyNiArMDYwMApTdWJqZWN0OiBb UEFUQ0ggMjQvNjNdIGF0LXNwaTItYXRrOiB1cGRhdGUgdG8gMi4zNC4yLgoKLS0tCiBzcmNwa2dz L2F0LXNwaTItYXRrL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRp b25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXQtc3BpMi1hdGsv dGVtcGxhdGUgYi9zcmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlCmluZGV4IDQzNTFiNzk5NmYz Li5hYTdiODgzOWM5ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9hdC1zcGkyLWF0ay90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2F0LXNwaTItYXRrL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnYXQtc3BpMi1hdGsnCiBwa2duYW1lPWF0LXNwaTItYXRrCi12ZXJzaW9u PTIuMzQuMQordmVyc2lvbj0yLjM0LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBo b3N0bWFrZWRlcGVuZHM9ImxpYnRvb2wgcGtnLWNvbmZpZyBpbnRsdG9vbCBnbGliLWRldmVsIgpA QCAtMTAsNyArMTAsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51 eC5vcmc+IgogbGljZW5zZT0iTEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cDovL3d3 dy5nbm9tZS5vcmciCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNp b24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT03NzZkZjkzMDc0 OGZkZTcxYzEyOGJlNmMzNjZhOTg3Yjk4YjZlZTY2ZDUwOGVkOWM4ZGIyMzU1YmY0YjljYzE2Citj aGVja3N1bT05MDEzMjNjZWUwZWVmMDVjMDFlYzRkZWUwNmM3MDFhZWVjYTgxYTMxNGE3ZDYwMjE2 ZmEzNjMwMDVlMjdmNGYwCiAKIGF0LXNwaTItYXRrLWRldmVsX3BhY2thZ2UoKSB7CiAJZGVwZW5k cz0iJHttYWtlZGVwZW5kc30gJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgoK RnJvbSBlYTI2ODgwMDAxYWIzOGE5MjMzZDU1YTg2YmJiMTdjNmM3MjNlZWMyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBU dWUsIDE2IEp1biAyMDIwIDE5OjQ2OjQxICswNjAwClN1YmplY3Q6IFtQQVRDSCAyNS82M10gcHl0 aG9uLWF0c3BpOiB1cGRhdGUgdG8gMi4zNi4wLgoKLS0tCiBzcmNwa2dzL3B5dGhvbi1hdHNwaS90 ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uLWF0c3BpL3RlbXBsYXRlIGIv c3JjcGtncy9weXRob24tYXRzcGkvdGVtcGxhdGUKaW5kZXggMDE0MWQ5N2Y4NWQuLjQ4ODEwNTZh ZDc2IDEwMDY0NAotLS0gYS9zcmNwa2dzL3B5dGhvbi1hdHNwaS90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL3B5dGhvbi1hdHNwaS90ZW1wbGF0ZQpAQCAtMSw4ICsxLDggQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ3B5dGhvbi1hdHNwaScKICMgS2VlcCBweXRob24zLWF0c3BpIGluIHN5bmMKIHBrZ25h bWU9cHl0aG9uLWF0c3BpCi12ZXJzaW9uPTIuMzIuMQotcmV2aXNpb249NAordmVyc2lvbj0yLjM2 LjAKK3JldmlzaW9uPTEKIGFyY2hzPW5vYXJjaAogd3Jrc3JjPSJweWF0c3BpLSR7dmVyc2lvbn0i CiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCkBAIC0xNCw0ICsxNCw0IEBAIG1haW50YWluZXI9 IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9y LWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9weWF0c3Bp MiIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9weWF0c3BpLyR7dmVyc2lvbiUuKn0vcHlhdHNw aS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTg0OTU0YTViYmVhY2M4MzY0M2YwNTc3OGQ4 YmVhZmNhYjgyMDhlMTFiMzliMjQ2MzdiNGM0ZGQxZjg2MjAzODkKK2NoZWNrc3VtPTUxMzZjMWJm OTE5ZTEwMWQ0ZWM5MDFhMjc2ZTg2ZWE2MGU1ODgxYThmZjc3NjNlMzU2ZjE5ODQwZTVmZmUxZGQK CkZyb20gN2M5NGY0Y2M4YTdkOTkzOWQyMjViYjllNjIwNDhjMWNmYmRhMDUxZCBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTog VHVlLCAxNiBKdW4gMjAyMCAxOTo0Njo0OCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjYvNjNdIHB5 dGhvbjMtYXRzcGk6IHVwZGF0ZSB0byAyLjM2LjAuCgotLS0KIHNyY3BrZ3MvcHl0aG9uMy1hdHNw aS90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAz IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHl0aG9uMy1hdHNwaS90ZW1wbGF0 ZSBiL3NyY3BrZ3MvcHl0aG9uMy1hdHNwaS90ZW1wbGF0ZQppbmRleCBhMzNhMzc0ZmUxOC4uYjIz NjA4MjJhY2YgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcHl0aG9uMy1hdHNwaS90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL3B5dGhvbjMtYXRzcGkvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdweXRob24zLWF0c3BpJwogcGtnbmFtZT1weXRob24zLWF0c3BpCi12ZXJz aW9uPTIuMzIuMQotcmV2aXNpb249NAordmVyc2lvbj0yLjM2LjAKK3JldmlzaW9uPTEKIGFyY2hz PW5vYXJjaAogd3Jrc3JjPSJweWF0c3BpLSR7dmVyc2lvbn0iCiBidWlsZF9zdHlsZT1nbnUtY29u ZmlndXJlCkBAIC0xMyw0ICsxMyw0IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hA dm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0 dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9weWF0c3BpMiIKIGRpc3RmaWxlcz0iJHtHTk9N RV9TSVRFfS9weWF0c3BpLyR7dmVyc2lvbiUuKn0vcHlhdHNwaS0ke3ZlcnNpb259LnRhci54eiIK LWNoZWNrc3VtPTg0OTU0YTViYmVhY2M4MzY0M2YwNTc3OGQ4YmVhZmNhYjgyMDhlMTFiMzliMjQ2 MzdiNGM0ZGQxZjg2MjAzODkKK2NoZWNrc3VtPTUxMzZjMWJmOTE5ZTEwMWQ0ZWM5MDFhMjc2ZTg2 ZWE2MGU1ODgxYThmZjc3NjNlMzU2ZjE5ODQwZTVmZmUxZGQKCkZyb20gN2U1YmQzMmFkNDliMjYz NzAzOTMxNGE1ZjY0M2M2MzI2ZTQ3Y2IxMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog TmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0 Njo1NiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjcvNjNdIGZvbGtzOiB1cGRhdGUgdG8gMC4xNC4w LgoKLS0tCiBjb21tb24vc2hsaWJzICAgICAgICAgIHwgIDcgKysrKy0tLQogc3JjcGtncy9mb2xr cy90ZW1wbGF0ZSB8IDEyICsrKysrKy0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRp b25zKCspLCA5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21t b24vc2hsaWJzCmluZGV4IDdjNzFmYzRhYjlmLi41ZmMzNGUyYzAzMCAxMDA2NDQKLS0tIGEvY29t bW9uL3NobGlicworKysgYi9jb21tb24vc2hsaWJzCkBAIC04MzksOSArODM5LDEwIEBAIGxpYmRt ci5zby4wLjEgZGVlcGluLW1vdmllLXJlYm9ybi0zLjIuNV8xCiBsaWJnanMuc28uMCBnanMtMS42 NS4yXzEKIGxpYnRlbGVwYXRoeS1nbGliLnNvLjAgdGVsZXBhdGh5LWdsaWItMC4xNS41XzEKIGxp YmFjY291bnRzc2VydmljZS5zby4wIGFjY291bnRzc2VydmljZS0wLjYuNF8xCi1saWJmb2xrcy5z by4yNSBmb2xrcy0wLjkuNV8xCi1saWJmb2xrcy10ZWxlcGF0aHkuc28uMjUgZm9sa3MtMC45LjVf MQotbGliZm9sa3MtZWRzLnNvLjI1IGZvbGtzLTAuOS41XzEKK2xpYmZvbGtzLnNvLjI1IGZvbGtz LTAuMTQuMF8xCitsaWJmb2xrcy1kdW1teS5zby4yNSBmb2xrcy0wLjE0LjBfMQorbGliZm9sa3Mt dGVsZXBhdGh5LnNvLjI1IGZvbGtzLTAuMTQuMF8xCitsaWJmb2xrcy1lZHMuc28uMjUgZm9sa3Mt MC4xNC4wXzEKIGxpYm5pY2Uuc28uMTAgbGlibmljZS0wLjEuMF8xCiBsaWJndXBucC1pZ2QtMS4w LnNvLjQgZ3VwbnAtaWdkLTAuMi4wXzEKIGxpYnRlbGVwYXRoeS1sb2dnZXIuc28uMyB0ZWxlcGF0 aHktbG9nZ2VyLTAuNi4wXzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZm9sa3MvdGVtcGxhdGUgYi9z cmNwa2dzL2ZvbGtzL3RlbXBsYXRlCmluZGV4IDMzMTBjNTRmYWRkLi5lMjFjYTljMTA3NyAxMDA2 NDQKLS0tIGEvc3JjcGtncy9mb2xrcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2ZvbGtzL3RlbXBs YXRlCkBAIC0xLDEyICsxLDEyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdmb2xrcycKIHBrZ25h bWU9Zm9sa3MKLXZlcnNpb249MC4xMy4xCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTAuMTQuMAorcmV2 aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj1naXIKLWNvbmZpZ3VyZV9h cmdzPSItRGJfbHRvPWZhbHNlIC1EbGlic29jaWFsd2ViLWJhY2tlbmQ9ZmFsc2UiCi1ob3N0bWFr ZWRlcGVuZHM9InBrZy1jb25maWcgaW50bHRvb2wgZ2xpYi1kZXZlbCB2YWxhIHB5dGhvbiBnb2Jq ZWN0LWludHJvc3BlY3Rpb24KLSBldm9sdXRpb24tZGF0YS1zZXJ2ZXItZGV2ZWwiCitjb25maWd1 cmVfYXJncz0iLURiX2x0bz1mYWxzZSIKK2hvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBpbnRs dG9vbCBnbGliLWRldmVsIHZhbGEgcHl0aG9uMyBweXRob24zLWRidXNtb2NrCisgZ29iamVjdC1p bnRyb3NwZWN0aW9uIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCIKIG1ha2VkZXBlbmRzPSJy ZWFkbGluZS1kZXZlbCB0ZWxlcGF0aHktZ2xpYi1kZXZlbCB6ZWl0Z2Vpc3QtZGV2ZWwKICBsaWJn ZWUwOC1kZXZlbCBldm9sdXRpb24tZGF0YS1zZXJ2ZXItZGV2ZWwgdHJhY2tlci1kZXZlbCIKIGRl cGVuZHM9InplaXRnZWlzdCIKQEAgLTE1LDcgKzE1LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xh bmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyIgog aG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMvRm9sa3MiCiBkaXN0Zmls ZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2 ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0zZGYxYzY2M2I4MmZlMjExYWVhZDJiMzFjYWUxZmM0 MWQxMjRlODU0MzYzNzU3NjJmNjc0NWM0NWJhNDZhYTVkCitjaGVja3N1bT1kNmU3NzhkYTYzN2Qz YjMzZmQ5YTZiNDUxMTVlODE1N2Q4ODY4MjExZGMwOGI5NDNkMTA3NWI1ZWI3MjgyYmI5CiAKIGZv bGtzLWRldmVsX3BhY2thZ2UoKSB7CiAJZGVwZW5kcz0iJHttYWtlZGVwZW5kc30gJHtzb3VyY2Vw a2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgoKRnJvbSBiZjY2ZTJmNDg3MzI0NmMwYjgzNmEz YTM2ZjcyMjRkYTNjYTZhZjYxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8 bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ3OjAzICsw NjAwClN1YmplY3Q6IFtQQVRDSCAyOC82M10gZmlsZS1yb2xsZXI6IHVwZGF0ZSB0byAzLjM2LjIu CgotLS0KIHNyY3BrZ3MvZmlsZS1yb2xsZXIvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFu Z2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9maWxlLXJvbGxlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZmlsZS1yb2xsZXIvdGVtcGxhdGUKaW5k ZXggNWZiNzZkOTczMDcuLjZhMGMyODBmMGQ1IDEwMDY0NAotLS0gYS9zcmNwa2dzL2ZpbGUtcm9s bGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZmlsZS1yb2xsZXIvdGVtcGxhdGUKQEAgLTEsNiAr MSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdmaWxlLXJvbGxlcicKIHBrZ25hbWU9ZmlsZS1y b2xsZXIKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRf c3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBnbGliLWRldmVsIGl0c3Rvb2wg cGtnLWNvbmZpZyIKQEAgLTEyLDQgKzEyLDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdv dHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFn ZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0ZpbGVSb2xsZXIiCiBkaXN0ZmlsZXM9IiR7 R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9u fS50YXIueHoiCi1jaGVja3N1bT1iOTE0NGRlOGY1MzZmNTgzZWMyOWQ3MDNjMmMxNzBiZjJkMDBj NmMxNjZjZDVlM2Y3ZWZhYmRhNTUxZjEwNDc4CitjaGVja3N1bT0yNjhmN2ZkYWQ4ZDJhNzhkZmVk NWU4MmViODcxMGJhZDM4OWMzMTFiNzIwNjY2ZDZmMDdhMDRlZDUxMDU2YmQyCgpGcm9tIDhmYWIx YjkyZTcxMzY1Mzk2OTVlOTFlOGM1N2NiMTIxMzBmODY5OTcgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVu IDIwMjAgMTk6NDc6MTAgKzA2MDAKU3ViamVjdDogW1BBVENIIDI5LzYzXSBkY29uZi1lZGl0b3I6 IHVwZGF0ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZGNvbmYtZWRpdG9yL3RlbXBsYXRlIHwg NiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9kY29uZi1lZGl0b3IvdGVtcGxhdGUgYi9zcmNwa2dzL2Rj b25mLWVkaXRvci90ZW1wbGF0ZQppbmRleCBkZTI1MGJiYzhhOS4uMTBhYjhkNzkyNjQgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvZGNvbmYtZWRpdG9yL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZGNvbmYt ZWRpdG9yL3RlbXBsYXRlCkBAIC0xLDEzICsxLDEzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdk Y29uZi1lZGl0b3InCiBwa2duYW1lPWRjb25mLWVkaXRvcgotdmVyc2lvbj0zLjM2LjAKK3ZlcnNp b249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgotaG9zdG1ha2VkZXBlbmRz PSJkb2Nib29rLXhzbCBnbGliLWRldmVsIGxpYnhzbHQgcGtnLWNvbmZpZyB2YWxhIgoraG9zdG1h a2VkZXBlbmRzPSJnZXR0ZXh0IGRvY2Jvb2steHNsIGdsaWItZGV2ZWwgbGlieHNsdCBwa2ctY29u ZmlnIHZhbGEiCiBtYWtlZGVwZW5kcz0iZGNvbmYtZGV2ZWwgZ3RrKzMtZGV2ZWwiCiBzaG9ydF9k ZXNjPSJMb3ctbGV2ZWwgY29uZmlndXJhdGlvbiBzeXN0ZW0gLSBHVEsrIGVkaXRvciIKIG1haW50 YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwt My4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMv ZGNvbmYiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT03MmVlZDA1NjcwOTE3Zjhl NDMyMDBlNDBjY2M2YmU2MDIxMWYwYTg3YjAxNzUzNGVhYzFmZDZjNzE3M2EwNjkzCitjaGVja3N1 bT1lZGNlYzg4NjdmMDE4NTg5MTI1ZjE3NzQwNzc2MGM2NDJiYmJiNTJmZTUxMjJkYWFjNTkwNTIy M2Q2YjNlMWM3CgpGcm9tIGU5MTY4YTkwYmE3N2M2MTQ4MzViM2IyMmFmY2JjNDE5ZWY4M2ZmZDYg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5j b20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDc6MTYgKzA2MDAKU3ViamVjdDogW1BBVENI IDMwLzYzXSB0cmFja2VyOiB1cGRhdGUgdG8gMi4zLjQuCgotLS0KIHNyY3BrZ3MvdHJhY2tlci90 ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy90cmFja2VyL3RlbXBsYXRlIGIvc3Jj cGtncy90cmFja2VyL3RlbXBsYXRlCmluZGV4IDM3MDc0Y2IzNDhkLi5lODE0Zjc3YzcxMSAxMDA2 NDQKLS0tIGEvc3JjcGtncy90cmFja2VyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvdHJhY2tlci90 ZW1wbGF0ZQpAQCAtMSwxMyArMSwxMyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAndHJhY2tlcicK IHBrZ25hbWU9dHJhY2tlcgotdmVyc2lvbj0yLjMuMQotcmV2aXNpb249MgordmVyc2lvbj0yLjMu NAorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgogY29u ZmlndXJlX2FyZ3M9Ii1EZG9jcz1mYWxzZSAtRGZ0cz10cnVlIC1EZnVuY3Rpb25hbF90ZXN0cz1m YWxzZQogIC1Eam91cm5hbD10cnVlIC1EbWFuPXRydWUgLURuZXR3b3JrX21hbmFnZXI9ZW5hYmxl ZCAtRHN0ZW1tZXI9ZGlzYWJsZWQKICAtRHN5c3RlbWRfdXNlcl9zZXJ2aWNlcz1ubyIKLWhvc3Rt YWtlZGVwZW5kcz0icGtnLWNvbmZpZyBnbGliLWRldmVsIHZhbGEiCitob3N0bWFrZWRlcGVuZHM9 ImdldHRleHQgcGtnLWNvbmZpZyBnbGliLWRldmVsIHZhbGEiCiBtYWtlZGVwZW5kcz0iZGJ1cy1k ZXZlbCBsaWJnbGliLWRldmVsIGljdS1kZXZlbCBqc29uLWdsaWItZGV2ZWwKICBsaWJzb3VwLWRl dmVsIGxpYnhtbDItZGV2ZWwgc3FsaXRlLWRldmVsIE5ldHdvcmtNYW5hZ2VyLWRldmVsCiAgYmFz aC1jb21wbGV0aW9uIgpAQCAtMTYsNyArMTYsNyBAQCBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3Jw aGFuQHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdl PSJodHRwczovL2xpdmUuZ25vbWUub3JnL1RyYWNrZXIiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lU RX0vdHJhY2tlci8ke3ZlcnNpb24lLip9L3RyYWNrZXItJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVj a3N1bT1iNjc0ODcyNmU0NjVhZDJmNGQ5OTE1NjA2MzRiMWZkMGRmODg0MWYzZDk4MWIzYjgzN2M0 MTYyYWJlZGYwOGExCitjaGVja3N1bT01Nzc5NTIyNDRhYjk3N2M3OGIwYjg4ZTJmNjNjNDE5N2Vh YmExNmU0ZDY2YmZmNjkyYjdmNTg5OTNlMDY1MTZkCiAKIGlmIFsgIiRDUk9TU19CVUlMRCIgXTsg dGhlbgogCWhvc3RtYWtlZGVwZW5kcys9IiBkYnVzIgoKRnJvbSA0MGZkMWMxZjIzODQxZmU5ZDg3 OTQzYWY5YzU1MTVhZTc4YzNmMDQwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZp cyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ3OjIz ICswNjAwClN1YmplY3Q6IFtQQVRDSCAzMS82M10gb3JjYTogdXBkYXRlIHRvIDMuMzYuMi4KCi0t LQogc3JjcGtncy9vcmNhL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNl cnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb3JjYS90ZW1w bGF0ZSBiL3NyY3BrZ3Mvb3JjYS90ZW1wbGF0ZQppbmRleCBmNzAyMDJlNmQ3Ni4uOGE3MGM4NDlm NmQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb3JjYS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL29yY2Ev dGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdvcmNhJwogcGtn bmFtZT1vcmNhCi12ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGFy Y2hzPW5vYXJjaAogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQpAQCAtMTMsNyArMTMsNyBAQCBt YWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0i R1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2pl Y3RzL09yY2EiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24l Lip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1jMWFjNjQ4YjZiZTMx NDg4YzI2ZmY5NTkxMTQyODc4NjlkZjljZTNjYTIxOTk5ZTQwZGVkODc3NDFjOTg4MzFmCitjaGVj a3N1bT1jZjAwNTViNzZmMjE1OWMzM2M5ZDlmN2RlYmI3Njk0MzVjMjAxYmJmYTZkY2YwZjAxZmRj NThlOTI5NDdiZjQzCiAKIGlmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgogCWhvc3RtYWtlZGVw ZW5kcys9IiBweXRob24zLWdvYmplY3QtZGV2ZWwiCgpGcm9tIGNjNzRmYzI0NGVjZTUzZjI0MWUz NjRkYTNjYTg5MmJiYmFhNmVjYTkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlz IDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDc6Mzkg KzA2MDAKU3ViamVjdDogW1BBVENIIDMyLzYzXSBnbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jczog dXBkYXRlIHRvIDMuMzYuMi4KCi0tLQogc3JjcGtncy9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9j cy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWdldHRpbmctc3RhcnRlZC1k b2NzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcy90ZW1wbGF0 ZQppbmRleCA1YmVjOTM0OTBiYS4uYmVkOWI2OTYxNjIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25v bWUtZ2V0dGluZy1zdGFydGVkLWRvY3MvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1nZXR0 aW5nLXN0YXJ0ZWQtZG9jcy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ2dub21lLWdldHRpbmctc3RhcnRlZC1kb2NzJwogcGtnbmFtZT1nbm9tZS1nZXR0aW5n LXN0YXJ0ZWQtZG9jcwotdmVyc2lvbj0zLjM0LjAKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0x CiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTExLDQgKzExLDQg QEAgbGljZW5zZT0iQ0MtQlktU0EtMy4wIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21l Lm9yZy9HTk9NRS9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcyIKICNjaGFuZ2Vsb2c9Imh0dHBz Oi8vZ2l0bGFiLmdub21lLm9yZy9HTk9NRS9nbm9tZS1nZXR0aW5nLXN0YXJ0ZWQtZG9jcy9yYXcv bWFzdGVyL05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNp b24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1mNzBjZTJjYTIz YWQ3ODYyMTVmM2M5MmVjODU3ODNlM2FhYmVkMDdlNGY3ODcwMGZhMjdmOWIyY2Y3NmUwM2RiCitj aGVja3N1bT0wNDk0Yjg5MTNhOTQ2YjY0NTA1MzZlMTIwYzE1NGFiZDI5MjM4ZWJiYTJmNTI3MzQ1 OTJiMWY2NDVlNTIxZGM2CgpGcm9tIDY2NjM3OTgyMThjMzllMjkwY2Q0OGIzZmM0ODRmZGJlMGYz MDc4OTMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0 bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDc6NDcgKzA2MDAKU3ViamVjdDog W1BBVENIIDMzLzYzXSBnbm9tZS1wYW5lbDogdXBkYXRlIHRvIDMuMzYuMS4KCi0tLQogY29tbW9u L3NobGlicyAgICAgICAgICAgICAgICB8IDMgKystCiBzcmNwa2dzL2dub21lLXBhbmVsL3RlbXBs YXRlIHwgNiArKystLS0KIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA0IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4 IDVmYzM0ZTJjMDMwLi5jYmYzZWExNzUzMSAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysg Yi9jb21tb24vc2hsaWJzCkBAIC01NzAsNyArNTcwLDggQEAgbGlicGFja2FnZWtpdC1nbGliMi5z by4xOCBQYWNrYWdlS2l0LTEuMS4xMl8xCiBsaWJwc2wuc28uNSBsaWJwc2wtMC4yMC4yXzEKIGxp YnNvdXAtMi40LnNvLjEgbGlic291cC0yLjM0LjBfMQogbGlic291cC1nbm9tZS0yLjQuc28uMSBs aWJzb3VwLWdub21lLTIuMzQuMF8xCi1saWJwYW5lbC1hcHBsZXQuc28uMyBnbm9tZS1wYW5lbC0z LjMwLjBfMQorbGliZ25vbWUtcGFuZWwuc28uMCBnbm9tZS1wYW5lbC0zLjM2LjFfMQorbGlicGFu ZWwtYXBwbGV0LnNvLjMgZ25vbWUtcGFuZWwtMy4zNi4xXzEKIGxpYnVuaW51bS5zby41IGxpYnVu aW51bS0yLjdfMQogbGlidW5pcXVlLTMuMC5zby4wIGxpYnVuaXF1ZS0yLjkxLjRfMQogbGlid2Vi a2l0Mmd0ay00LjAuc28uMzcgd2Via2l0Mmd0ay0yLjYuMl8xCmRpZmYgLS1naXQgYS9zcmNwa2dz L2dub21lLXBhbmVsL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1wYW5lbC90ZW1wbGF0ZQppbmRl eCA3MGYyM2I4YjU1MS4uOWIwMGJmYWI2NTggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtcGFu ZWwvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1wYW5lbC90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXBhbmVsJwogcGtnbmFtZT1nbm9tZS1w YW5lbAotdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTMKK3ZlcnNpb249My4zNi4xCityZXZpc2lv bj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iYXhfY3Zfem9u ZWluZm9fdHpkaXI9L3Vzci9zaGFyZS96b25laW5mbyIKIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4 dC1kZXZlbCBnbGliLWRldmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyB0emRhdGEgZ2V0dGV4dCIKQEAg LTE0LDcgKzE0LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgu b3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIEdGREwtMS4xLW9yLWxhdGVyLCBMR1BM LTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3Rz L0dub21lUGFuZWwiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNp b24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1hNmJjMDI1NTI1 MmVlYjRiOTY0YmNiZTU1ZmQ3OTA4YjY5ZjkxNGMwNjJjNWVjOGRmZjVhYzAyNjJkMjliOTBkCitj aGVja3N1bT0xZTIxYjcyNmRkMzk3NTIzYWU3OWQyOWViNTM4YmNhZTA5ZTM0MjdlMjNjY2Q2M2Yy OGViMjVlZjM1NTJhYmQzCiBwYXRjaF9hcmdzPSItTnAxIgogCiBnbm9tZS1wYW5lbC1kZXZlbF9w YWNrYWdlKCkgewoKRnJvbSBlYTkwZTFjMTI4YjFjOWZmOWQ3NzE2MzNkMWJhNjdjMjM0YmZlNTk1 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2su Y29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ3OjU0ICswNjAwClN1YmplY3Q6IFtQQVRD SCAzNC82M10gbWV0YWNpdHk6IHVwZGF0ZSB0byAzLjM2LjEuCgotLS0KIGNvbW1vbi9zaGxpYnMg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxICsKIC4uLi9wYXRjaGVzL2NvbXBv c2l0b3ItdnVsa2FuLWZpeC1idWlsZC5wYXRjaCB8IDI5ICsrKysrKysrKysrKysrKysrKysKIHNy Y3BrZ3MvbWV0YWNpdHkvdGVtcGxhdGUgICAgICAgICAgICAgICAgICAgICB8ICA0ICstLQogMyBm aWxlcyBjaGFuZ2VkLCAzMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQogY3JlYXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3MvbWV0YWNpdHkvcGF0Y2hlcy9jb21wb3NpdG9yLXZ1bGthbi1maXgt YnVpbGQucGF0Y2gKCmRpZmYgLS1naXQgYS9jb21tb24vc2hsaWJzIGIvY29tbW9uL3NobGlicwpp bmRleCBjYmYzZWExNzUzMS4uNzQwODZiMmI5OGIgMTAwNjQ0Ci0tLSBhL2NvbW1vbi9zaGxpYnMK KysrIGIvY29tbW9uL3NobGlicwpAQCAtNTcyLDYgKzU3Miw3IEBAIGxpYnNvdXAtMi40LnNvLjEg bGlic291cC0yLjM0LjBfMQogbGlic291cC1nbm9tZS0yLjQuc28uMSBsaWJzb3VwLWdub21lLTIu MzQuMF8xCiBsaWJnbm9tZS1wYW5lbC5zby4wIGdub21lLXBhbmVsLTMuMzYuMV8xCiBsaWJwYW5l bC1hcHBsZXQuc28uMyBnbm9tZS1wYW5lbC0zLjM2LjFfMQorbGlibWV0YWNpdHkuc28uMSBtZXRh Y2l0eS0zLjM2LjFfMQogbGlidW5pbnVtLnNvLjUgbGlidW5pbnVtLTIuN18xCiBsaWJ1bmlxdWUt My4wLnNvLjAgbGlidW5pcXVlLTIuOTEuNF8xCiBsaWJ3ZWJraXQyZ3RrLTQuMC5zby4zNyB3ZWJr aXQyZ3RrLTIuNi4yXzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbWV0YWNpdHkvcGF0Y2hlcy9jb21w b3NpdG9yLXZ1bGthbi1maXgtYnVpbGQucGF0Y2ggYi9zcmNwa2dzL21ldGFjaXR5L3BhdGNoZXMv Y29tcG9zaXRvci12dWxrYW4tZml4LWJ1aWxkLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwLi45NjA1ODJkZWQ3ZAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mv bWV0YWNpdHkvcGF0Y2hlcy9jb21wb3NpdG9yLXZ1bGthbi1maXgtYnVpbGQucGF0Y2gKQEAgLTAs MCArMSwyOSBAQAorRnJvbSA5OTM2MWYyOGM4NzYzZWE0NTY5YjVhZTk4NzYwMjhkNTNhYzlhMjM0 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogQWxiZXJ0cyBNdWt0dXDEgXZlbHMgPGFs YmVydHMubXVrdHVwYXZlbHNAZ21haWwuY29tPgorRGF0ZTogU3VuLCAyNCBNYXkgMjAyMCAxMzo1 ODo1MSArMDMwMAorU3ViamVjdDogW1BBVENIXSBjb21wb3NpdG9yLXZ1bGthbjogZml4IGJ1aWxk CisKK1ZLX1BIWVNJQ0FMX0RFVklDRV9UWVBFX1JBTkdFX1NJWkUgZW51bSB3YXMgcmVtb3ZlZCBp biAxLjIuMTQwLgorCitodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvbWV0YWNpdHkvLS9p c3N1ZXMvMTAKKy0tLQorIHNyYy9jb21wb3NpdG9yL21ldGEtY29tcG9zaXRvci12dWxrYW4uYyB8 IDIgKysKKyAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspCisKK2RpZmYgLS1naXQgc3Jj L2NvbXBvc2l0b3IvbWV0YS1jb21wb3NpdG9yLXZ1bGthbi5jIHNyYy9jb21wb3NpdG9yL21ldGEt Y29tcG9zaXRvci12dWxrYW4uYworaW5kZXggYjg3YjUxOTQuLjUzYjdiM2ZmIDEwMDY0NAorLS0t IHNyYy9jb21wb3NpdG9yL21ldGEtY29tcG9zaXRvci12dWxrYW4uYworKysrIHNyYy9jb21wb3Np dG9yL21ldGEtY29tcG9zaXRvci12dWxrYW4uYworQEAgLTgxMCw3ICs4MTAsOSBAQCBkZXZpY2Vf dHlwZV90b19zdHJpbmcgKFZrUGh5c2ljYWxEZXZpY2VUeXBlIHR5cGUpCisgICAgICAgICByZXR1 cm4gImNwdSI7CisgICAgICAgICBicmVhazsKKyAKKysjaWYgVktfSEVBREVSX1ZFUlNJT04gPCAx NDAKKyAgICAgICBjYXNlIFZLX1BIWVNJQ0FMX0RFVklDRV9UWVBFX1JBTkdFX1NJWkU6CisrI2Vu ZGlmCisgICAgICAgY2FzZSBWS19QSFlTSUNBTF9ERVZJQ0VfVFlQRV9NQVhfRU5VTToKKyAgICAg ICBkZWZhdWx0OgorICAgICAgICAgYnJlYWs7CistLSAKK0dpdExhYgorCmRpZmYgLS1naXQgYS9z cmNwa2dzL21ldGFjaXR5L3RlbXBsYXRlIGIvc3JjcGtncy9tZXRhY2l0eS90ZW1wbGF0ZQppbmRl eCA3ZmI4NmZkOTY0Yy4uN2UyMmFlYWI1YzcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbWV0YWNpdHkv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9tZXRhY2l0eS90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ21ldGFjaXR5JwogcGtnbmFtZT1tZXRhY2l0eQotdmVyc2lv bj0zLjMwLjEKK3ZlcnNpb249My4zNi4xCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29u ZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgZ2V0dGV4dC1kZXZlbCBnbGliLWRldmVs IGl0c3Rvb2wgcGtnLWNvbmZpZyB5ZWxwLXRvb2xzIHplbml0eSIKQEAgLTE0LDQgKzE0LDQgQEAg bWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9 IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dO T01FL21ldGFjaXR5IgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJz aW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09MGYxMzExYjdh YTM4ZGU3MWM2NjA4MGJkMmI3NDRkZTJjZDk1ODBhZmNhZWU5YzYwOTdhN2QzZjVjNDIxNzk4YQor Y2hlY2tzdW09MTFmMDc2OTNlMmIyNjY4NDA3NTkwNjNhNGJjODA3MzQ2MDcwZThlN2ZlYzhmNTNj ZDA3NTdmNjY2MmMxYjMyMwoKRnJvbSBiZTNiMDczYjU5MmU2MDFlZDZjYTc3NTA1OTc2YjBjODAy YWVmYmJlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ4OjAxICswNjAwClN1YmplY3Q6 IFtQQVRDSCAzNS82M10gZ25vbWUtbWVudXM6IHVwZGF0ZSB0byAzLjM2LjAuCgotLS0KIHNyY3Br Z3MvZ25vbWUtbWVudXMvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5z ZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLW1l bnVzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1tZW51cy90ZW1wbGF0ZQppbmRleCAyOTEwMjEy OWMzOC4uZTc4N2ZiOGRlNmIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtbWVudXMvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9nbm9tZS1tZW51cy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLW1lbnVzJwogcGtnbmFtZT1nbm9tZS1tZW51cwotdmVy c2lvbj0zLjMyLjAKLXJldmlzaW9uPTIKK3ZlcnNpb249My4zNi4wCityZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1nbnUtY29uZmlndXJlCiBidWlsZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9hcmdz PSItLWRpc2FibGUtc3RhdGljIgpAQCAtMTIsNyArMTIsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJv bGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwg TEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dO T01FL2dub21lLW1lbnVzIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2 ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09Yzg1MGM2 NGIyMDc0MjY1ZmU1OWUwOTlhMzQwYjg2ODljZjNkZDQ2NThkYzlmZWRkZDJhYjVlOTVmMWE3NGI3 NAorY2hlY2tzdW09ZDkzNDhmMzhiZGU5NTZmYzMyNzUzYjI4YzFjZGUxOWMxNzViZmRiZjFmNGQ1 YjA2MDAzYjNhYTA5MTUzYmIxZgogCiBidWlsZF9vcHRpb25zPSJnaXIiCiBidWlsZF9vcHRpb25z X2RlZmF1bHQ9ImdpciIKCkZyb20gZjY4MTMzNTZmYWYwYjc0MzNmODYyMzUxZDZjNjQwMDVhZTM1 NmQ4OSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRs b29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0ODowOSArMDYwMApTdWJqZWN0OiBb UEFUQ0ggMzYvNjNdIGdub21lLWZsYXNoYmFjazogdXBkYXRlIHRvIDMuMzYuMy4KCkFkZGVkIFBB TSBjb25maWcgdG8gZW5hYmxlIHNjcmVlbiBsb2NraW5nLgotLS0KIC4uLi9nbm9tZS1mbGFzaGJh Y2svZmlsZXMvZ25vbWUtZmxhc2hiYWNrLnBhbSB8ICA2ICsrKysKIC4uLi9nbm9tZS1mbGFzaGJh Y2svcGF0Y2hlcy9jb21waXotMC44LnBhdGNoICB8IDI4ICsrKysrKysrKysrKysrKysrKysKIHNy Y3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3RlbXBsYXRlICAgICAgICAgICAgICB8IDI3ICsrKysrKysr KysrKy0tLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCA1MiBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9u cygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL2ZpbGVzL2du b21lLWZsYXNoYmFjay5wYW0KIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2dub21lLWZsYXNo YmFjay9wYXRjaGVzL2NvbXBpei0wLjgucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21l LWZsYXNoYmFjay9maWxlcy9nbm9tZS1mbGFzaGJhY2sucGFtIGIvc3JjcGtncy9nbm9tZS1mbGFz aGJhY2svZmlsZXMvZ25vbWUtZmxhc2hiYWNrLnBhbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwMDAwMC4uZWJiYjUxZGQwZTgKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2du b21lLWZsYXNoYmFjay9maWxlcy9nbm9tZS1mbGFzaGJhY2sucGFtCkBAIC0wLDAgKzEsNiBAQAor IyVQQU0tMS4wCithdXRoICAgICAgIGluY2x1ZGUJc3lzdGVtLWF1dGgKK2F1dGggICAgICAgb3B0 aW9uYWwgICAgIHBhbV9nbm9tZV9rZXlyaW5nLnNvCithY2NvdW50ICAgIGluY2x1ZGUJc3lzdGVt LWF1dGgKK3Bhc3N3b3JkICAgaW5jbHVkZQlzeXN0ZW0tYXV0aAorc2Vzc2lvbiAgICBpbmNsdWRl CXN5c3RlbS1hdXRoCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWZsYXNoYmFjay9wYXRjaGVz L2NvbXBpei0wLjgucGF0Y2ggYi9zcmNwa2dzL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBp ei0wLjgucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmU4YTJh NWM4N2ZkCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svcGF0Y2hl cy9jb21waXotMC44LnBhdGNoCkBAIC0wLDAgKzEsMjggQEAKK2RpZmYgLS1naXQgY29uZmlndXJl IGNvbmZpZ3VyZQoraW5kZXggMjZjZWE1MS4uZDI0NjNjYyAxMDA3NTUKKy0tLSBjb25maWd1cmUK KysrKyBjb25maWd1cmUKK0BAIC0yMDg0Miw4ICsyMDg0Miw4IEBAIGZpCisgaWYgdGVzdCAieCR3 aXRoX2NvbXBpel9zZXNzaW9uIiAhPSAieG5vIjsgdGhlbiA6CisgCisgICBpZiB0ZXN0IC1uICIk UEtHX0NPTkZJRyIgJiYgXAorLSAgICB7IHsgJGFzX2VjaG8gIiRhc19tZToke2FzX2xpbmVuby0k TElORU5PfTogXCRQS0dfQ09ORklHIC0tZXhpc3RzIC0tcHJpbnQtZXJyb3JzIFwibGliY29tcGl6 Y29uZmlnID49IDAuOS4xNC4wXCIiOyB9ID4mNQorLSAgKCRQS0dfQ09ORklHIC0tZXhpc3RzIC0t cHJpbnQtZXJyb3JzICJsaWJjb21waXpjb25maWcgPj0gMC45LjE0LjAiKSAyPiY1CisrICAgIHsg eyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBcJFBLR19DT05GSUcgLS1l eGlzdHMgLS1wcmludC1lcnJvcnMgXCJsaWJjb21waXpjb25maWcgPj0gMC44LjE2LjBcIiI7IH0g PiY1CisrICAoJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImxpYmNvbXBpemNv bmZpZyA+PSAwLjguMTYuMCIpIDI+JjUKKyAgIGFjX3N0YXR1cz0kPworICAgJGFzX2VjaG8gIiRh c19tZToke2FzX2xpbmVuby0kTElORU5PfTogXCQ/ID0gJGFjX3N0YXR1cyIgPiY1CisgICB0ZXN0 ICRhY19zdGF0dXMgPSAwOyB9OyB0aGVuCitkaWZmIC0tZ2l0IGNvbmZpZ3VyZS5hYyBjb25maWd1 cmUuYWMKK2luZGV4IGI2ZTE0NzAuLmQyOGE3MGIgMTAwNjQ0CistLS0gY29uZmlndXJlLmFjCisr KysgY29uZmlndXJlLmFjCitAQCAtMzQwLDcgKzM0MCw3IEBAIEFDX0FSR19XSVRIKFtjb21waXot c2Vzc2lvbl0sCisgICAgICAgICAgICAgW3dpdGhfY29tcGl6X3Nlc3Npb249IiR3aXRodmFsIl0s IFt3aXRoX2NvbXBpel9zZXNzaW9uPSJhdXRvIl0pCisgCisgQVNfSUYoW3Rlc3QgIngkd2l0aF9j b21waXpfc2Vzc2lvbiIgIT0gInhubyJdLCBbCistICBQS0dfQ0hFQ0tfRVhJU1RTKFtsaWJjb21w aXpjb25maWcgPj0gMC45LjE0LjBdLAorKyAgUEtHX0NIRUNLX0VYSVNUUyhbbGliY29tcGl6Y29u ZmlnID49IDAuOC4xNi4wXSwKKyAgICAgICAgICAgICAgICAgICAgW2ZvdW5kX2NvbXBpej0ieWVz Il0sIFtmb3VuZF9jb21waXo9Im5vIl0pCisgCisgICBBU19JRihbdGVzdCAieCRmb3VuZF9jb21w aXoiID0gInh5ZXMiXSwgWwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svdGVt cGxhdGUgYi9zcmNwa2dzL2dub21lLWZsYXNoYmFjay90ZW1wbGF0ZQppbmRleCBkMzIxMjBjYWI2 Zi4uMDg1NjZkZjVmZDQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3RlbXBsYXRlCkBAIC0xLDIwICsxLDI5 IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1mbGFzaGJhY2snCiBwa2duYW1lPWdub21l LWZsYXNoYmFjawotdmVyc2lvbj0zLjM0LjIKK3ZlcnNpb249My4zNi4zCiByZXZpc2lvbj0xCiBi dWlsZF9oZWxwZXI9Z2lyCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCi1jb25maWd1cmVfYXJn cz0iLS1lbmFibGUtY29tcGlsZS13YXJuaW5ncz1taW5pbXVtIgotaG9zdG1ha2VkZXBlbmRzPSJw a2ctY29uZmlnIGF1dG9tYWtlIGdsaWItZGV2ZWwgZ2V0dGV4dCIKLW1ha2VkZXBlbmRzPSJndGsr My1kZXZlbCBnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzLWRldmVsCi0gbGliZ2xpYi1kZXZlbCBn ZGstcGl4YnVmLWRldmVsIHVwb3dlci1kZXZlbCBpYnVzLWRldmVsIHBvbGtpdC1kZXZlbAotIHB1 bHNlYXVkaW8tZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGlieGNiLWRldmVsIGxpYlgxMS1kZXZl bCBwYW5nby1kZXZlbAotIGxpYnhrYmZpbGUtZGV2ZWwgZ25vbWUtYmx1ZXRvb3RoLWRldmVsIGdu b21lLWRlc2t0b3AtZGV2ZWwiCitjb25maWd1cmVfYXJncz0iLS13aXRoLWNvbXBpei1zZXNzaW9u IC0tZW5hYmxlLWNvbXBpbGUtd2FybmluZ3M9bWluaW11bSIKK2hvc3RtYWtlZGVwZW5kcz0iZ2V0 dGV4dC1kZXZlbCBwa2ctY29uZmlnIGF1dG9tYWtlIGdsaWItZGV2ZWwgZ2V0dGV4dCBsaWJ0b29s IgorbWFrZWRlcGVuZHM9Imd0ayszLWRldmVsIHBhbS1kZXZlbCBnc2V0dGluZ3MtZGVza3RvcC1z Y2hlbWFzLWRldmVsIGVsb2dpbmQtZGV2ZWwKKyBnZG0tZGV2ZWwgbGliY29tcGl6Y29uZmlnLWRl dmVsIGxpYmdsaWItZGV2ZWwgZ2RrLXBpeGJ1Zi1kZXZlbCB1cG93ZXItZGV2ZWwgaWJ1cy1kZXZl bAorIHBvbGtpdC1kZXZlbCBwdWxzZWF1ZGlvLWRldmVsIGxpYmNhbmJlcnJhLWRldmVsIGxpYnhj Yi1kZXZlbCBsaWJYMTEtZGV2ZWwgcGFuZ28tZGV2ZWwKKyBsaWJ4a2JmaWxlLWRldmVsIGdub21l LWJsdWV0b290aC1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGdub21lLXBhbmVsLWRldmVsIgog ZGVwZW5kcz0iZ25vbWUtYmx1ZXRvb3RoIGdub21lLXNlc3Npb24gZ25vbWUtc2V0dGluZ3MtZGFl bW9uCi0gZ25vbWUtcGFuZWwgZ25vbWUtdGhlbWVzLXN0YW5kYXJkIG1ldGFjaXR5IgorIGdub21l LXBhbmVsIGdub21lLXRoZW1lcy1leHRyYSBtZXRhY2l0eSIKIHNob3J0X2Rlc2M9IkdOT01FIDMg c2Vzc2lvbiB3aXRoIHNpbWlsYXIgdXNlciBleHBlcmllbmNlIHRvIHRoZSBHTk9NRSAyLnggc2Vy aWVzIgogbWFpbnRhaW5lcj0ic2hpem9uaWMgPHJlYWx0aWF6QGdtYWlsLmNvbT4iCiBsaWNlbnNl PSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJv amVjdHMvR25vbWVGbGFzaGJhY2siCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1l fS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0z YmU2NTM4OGNkMmM4ZjM5NzQxYmNjMDVkYTg3ZWY0MDAzNTE4M2E5YTM5NTAyZDY3Njk2MjQyYzJh ZWI0NjljCitjaGVja3N1bT0yZGJhOWVhNDBmMmRhODFjMjI5NTRhOGNjYzI5ZjhmMWZhNGNhODM5 NWE2YmI1NTI1MDY2MzU4MzI3NTFjMWE3CisKK3ByZV9jb25maWd1cmUoKSB7CisJYXV0b3JlY29u ZiAtdmZpCit9CisKK3Bvc3RfaW5zdGFsbCgpIHsKKwl2aW5zdGFsbCAke0ZJTEVTRElSfS9nbm9t ZS1mbGFzaGJhY2sucGFtIDY0NCAvZXRjL3BhbS5kIGdub21lLWZsYXNoYmFjaworCXZzZWQgLWkg LWUgInMvIC0tc3lzdGVtZC8vZyIgJHtERVNURElSfS91c3IvbGliZXhlYy9nbm9tZS1mbGFzaGJh Y2ste2NvbXBpeixtZXRhY2l0eX0KK30KCkZyb20gOWU1YTA2MWM1YzY3NzEzZWJhMWJmZTVmMmYw ZTA0NjdlMDFhZTFkMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJp ZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0ODoyNCArMDYwMApT dWJqZWN0OiBbUEFUQ0ggMzcvNjNdIGdyYXBoZW5lOiB1cGRhdGUgdG8gMS4xMC4wLgoKLS0tCiBz cmNwa2dzL2dyYXBoZW5lL3RlbXBsYXRlIHwgMTAgKysrKystLS0tLQogMSBmaWxlIGNoYW5nZWQs IDUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dy YXBoZW5lL3RlbXBsYXRlIGIvc3JjcGtncy9ncmFwaGVuZS90ZW1wbGF0ZQppbmRleCBmMmZlODFh M2Y0Ny4uY2I3Mzg1ZmVkYjcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9ncmFwaGVuZS90ZW1wbGF0ZQpAQCAtMSwxMCArMSwxMCBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnZ3JhcGhlbmUnCiBwa2duYW1lPWdyYXBoZW5lCi12ZXJzaW9uPTEuOC4y Ci1yZXZpc2lvbj0yCit2ZXJzaW9uPTEuMTAuMAorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVz b24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgotY29uZmlndXJlX2FyZ3M9Ii1EdGVzdHM9ZmFsc2UgLURi ZW5jaG1hcmtzPWZhbHNlCitjb25maWd1cmVfYXJncz0iLUR0ZXN0cz1mYWxzZSAtRGFybV9uZW9u PWZhbHNlCiAgLURpbnRyb3NwZWN0aW9uPSQodm9wdF9pZiBnaXIgdHJ1ZSBmYWxzZSkiCiBob3N0 bWFrZWRlcGVuZHM9InBrZy1jb25maWciCiBtYWtlZGVwZW5kcz0ibGliZ2xpYi1kZXZlbCIKQEAg LTEzLDEzICsxMywxMyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51 eC5vcmc+IgogbGljZW5zZT0iTUlUIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9lYmFz c2kvZ3JhcGhlbmUiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vZ3JhcGhlbmUvJHt2ZXJzaW9u JS4qfS9ncmFwaGVuZS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWIzZmNmMjA5OTZlNTdi MWY0ZGYzOTQxY2FhYzEwZjE0M2JiMjk4OTBhNDJmN2E2NTQwN2NkMTkyNzFmYzg5ZjcKK2NoZWNr c3VtPTQwNmQ5N2Y1MWRkNGNhNjFlOTFmODQ2NjZhMDBjM2U5NzZkM2U2NjdjZDI0OGI3NmQ5MmZk YjM1Y2U4NzY0OTkKIAogYnVpbGRfb3B0aW9ucz0iZ2lyIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0 PSJnaXIiCiAKIHBvc3RfaW5zdGFsbCgpIHsKLQl2bGljZW5zZSBMSUNFTlNFCisJdmxpY2Vuc2Ug TElDRU5TRS50eHQgTElDRU5TRQogfQogCiBncmFwaGVuZS1kZXZlbF9wYWNrYWdlKCkgewoKRnJv bSA2OWNhYzU5MzMyZjVkMzg5ZWI1OGFhNGE3NmY4MzVmZDRmZmYyZDcwIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUs IDE2IEp1biAyMDIwIDE5OjQ4OjMwICswNjAwClN1YmplY3Q6IFtQQVRDSCAzOC82M10gbXV0dGVy OiB1cGRhdGUgdG8gMy4zNi4zLgoKLS0tCiBjb21tb24vc2hsaWJzICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgMTggKy0KIC4uLi9wYXRjaGVzL2ZpeC1jb2dsLWVnbC1pbmNsdWRl cy5wYXRjaCAgICAgICB8ICAxMSAtCiBzcmNwa2dzL211dHRlci9wYXRjaGVzL3BpcGV3aXJlLTAu My5wYXRjaCAgICAgfCA1MjEgLS0tLS0tLS0tLS0tLS0tLS0tCiBzcmNwa2dzL211dHRlci90ZW1w bGF0ZSAgICAgICAgICAgICAgICAgICAgICAgfCAgMjcgKy0KIDQgZmlsZXMgY2hhbmdlZCwgMjMg aW5zZXJ0aW9ucygrKSwgNTU0IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3Br Z3MvbXV0dGVyL3BhdGNoZXMvZml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoCiBkZWxldGUgbW9k ZSAxMDA2NDQgc3JjcGtncy9tdXR0ZXIvcGF0Y2hlcy9waXBld2lyZS0wLjMucGF0Y2gKCmRpZmYg LS1naXQgYS9jb21tb24vc2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRleCA3NDA4NmIyYjk4Yi4u MjNlMGM4ZjY4NWEgMTAwNjQ0Ci0tLSBhL2NvbW1vbi9zaGxpYnMKKysrIGIvY29tbW9uL3NobGli cwpAQCAtMzAyMiwxNSArMzAyMiwxNSBAQCBsaWJkZWNvcmF0aW9uLnNvLjAgY29tcGl6LWNvcmUt MC44LjE0XzEKIGxpYmNvbXBpemNvbmZpZy5zby4wIGxpYmNvbXBpemNvbmZpZy0wLjguMTRfMQog bGliZW1lcmFsZGVuZ2luZS5zby4wIGVtZXJhbGQtMC44LjE0XzEKIGxpYmhhbmd1bC5zby4xIGxp Ymhhbmd1bC0wLjEuMF8xCi1saWJtdXR0ZXItNS5zby4wIG11dHRlci0zLjM0LjFfMQotbGlibXV0 dGVyLWNsdXR0ZXItNS5zbyBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jbHV0dGVyLTUuc28u MCBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jb2dsLXBhdGgtNS5zbyBtdXR0ZXItMy4zNC4x XzEKLWxpYm11dHRlci1jb2dsLXBhdGgtNS5zby4wIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVy LWNvZ2wtNS5zbyBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jb2dsLTUuc28uMCBtdXR0ZXIt My4zNC4xXzEKLWxpYm11dHRlci1jb2dsLXBhbmdvLTUuc28gbXV0dGVyLTMuMzQuMV8xCi1saWJt dXR0ZXItY29nbC1wYW5nby01LnNvLjAgbXV0dGVyLTMuMzQuMV8xCitsaWJtdXR0ZXItNi5zby4w IG11dHRlci0zLjM2LjNfMQorbGlibXV0dGVyLWNsdXR0ZXItNi5zbyBtdXR0ZXItMy4zNi4zXzEK K2xpYm11dHRlci1jbHV0dGVyLTYuc28uMCBtdXR0ZXItMy4zNi4zXzEKK2xpYm11dHRlci1jb2ds LXBhdGgtNi5zbyBtdXR0ZXItMy4zNi4zXzEKK2xpYm11dHRlci1jb2dsLXBhdGgtNi5zby4wIG11 dHRlci0zLjM2LjNfMQorbGlibXV0dGVyLWNvZ2wtNi5zbyBtdXR0ZXItMy4zNi4zXzEKK2xpYm11 dHRlci1jb2dsLTYuc28uMCBtdXR0ZXItMy4zNi4zXzEKK2xpYm11dHRlci1jb2dsLXBhbmdvLTYu c28gbXV0dGVyLTMuMzYuM18xCitsaWJtdXR0ZXItY29nbC1wYW5nby02LnNvLjAgbXV0dGVyLTMu MzYuM18xCiBsaWJnZW9jbHVlLTIuc28uMCBnZW9jbHVlMi0yLjQuNF8xCiBsaWJnZXB1Yi5zby4w IGxpYmdlcHViLTAuNF8xCiBsaWJzbG9weS5zby43LjUgc2xvcC03LjVfMQpkaWZmIC0tZ2l0IGEv c3JjcGtncy9tdXR0ZXIvcGF0Y2hlcy9maXgtY29nbC1lZ2wtaW5jbHVkZXMucGF0Y2ggYi9zcmNw a2dzL211dHRlci9wYXRjaGVzL2ZpeC1jb2dsLWVnbC1pbmNsdWRlcy5wYXRjaApkZWxldGVkIGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggZDkwOTg4ODg3YzMuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3Br Z3MvbXV0dGVyL3BhdGNoZXMvZml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoCisrKyAvZGV2L251 bGwKQEAgLTEsMTEgKzAsMCBAQAotLS0tIGNvZ2wvY29nbC9tZXNvbi5idWlsZAkyMDE5LTEwLTA4 IDE5OjE1OjEwLjAwMDAwMDAwMCArMDIwMAotKysrIGNvZ2wvY29nbC9tZXNvbi5idWlsZAkyMDE5 LTEyLTE2IDE1OjQ1OjQ0LjAzNzY0MDU0OCArMDEwMAotQEAgLTQ4LDcgKzQ4LDcgQEAKLSBidWls dF9oZWFkZXJzICs9IFtjb2dsX2dsX2hlYWRlcl9oXQotIAotIGlmIGhhdmVfZWdsCi0tICBjb2ds X2VnbF9pbmNsdWRlc19zdHJpbmcgPSAnI2luY2x1ZGUgPEVHTC9lZ2wuaD5cbiNpbmNsdWRlIDxF R0wvZWdsZXh0Lmg+JwotKyAgY29nbF9lZ2xfaW5jbHVkZXNfc3RyaW5nID0gJyNpbmNsdWRlIDxF R0wvZWdsLmg+XG4jaW5jbHVkZSA8RUdML2VnbGV4dC5oPlxuI2luY2x1ZGUgPEVHTC9lZ2xtZXNh ZXh0Lmg+JwotIGVsc2UKLSAgIGNvZ2xfZWdsX2luY2x1ZGVzX3N0cmluZyA9ICcnCi0gZW5kaWYK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXV0dGVyL3BhdGNoZXMvcGlwZXdpcmUtMC4zLnBhdGNoIGIv c3JjcGtncy9tdXR0ZXIvcGF0Y2hlcy9waXBld2lyZS0wLjMucGF0Y2gKZGVsZXRlZCBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IGViZmY2NWZiYTg1Li4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL211 dHRlci9wYXRjaGVzL3BpcGV3aXJlLTAuMy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDUyMSAr MCwwIEBACi1CdWlsZCBtdXR0ZXIgYWdhaW5zdCBwaXBld2lyZS0wLjMsIGJhc2VkIG9uIGEgcGF0 Y2ggYXQ6Ci1odHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvbXV0dGVyLy0vbWVyZ2VfcmVx dWVzdHMvMTA2MgotLS0tIG1lc29uLmJ1aWxkCi0rKysgbWVzb24uYnVpbGQKLUBAIC01MCw3ICs1 MCw3IEBAIGxpYmlucHV0X3JlcSA9ICc+PSAxLjcnCi0gZ2JtX3JlcSA9ICc+PSAxMC4zJwotCi0g IyBzY3JlZW4gY2FzdCB2ZXJzaW9uIHJlcXVpcmVtZW50cwotLWxpYnBpcGV3aXJlX3JlcSA9ICc+ PSAwLjIuNScKLStsaWJwaXBld2lyZV9yZXEgPSAnPj0gMC4zLjAnCi0KLSBnbm9tZSA9IGltcG9y dCgnZ25vbWUnKQotIHBrZyA9IGltcG9ydCgncGtnY29uZmlnJykKLUBAIC0yNDEsNyArMjQxLDcg QEAgZW5kaWYKLQotIGhhdmVfcmVtb3RlX2Rlc2t0b3AgPSBnZXRfb3B0aW9uKCdyZW1vdGVfZGVz a3RvcCcpCi0gaWYgaGF2ZV9yZW1vdGVfZGVza3RvcAotLSAgbGlicGlwZXdpcmVfZGVwID0gZGVw ZW5kZW5jeSgnbGlicGlwZXdpcmUtMC4yJywgdmVyc2lvbjogbGlicGlwZXdpcmVfcmVxKQotKyAg bGlicGlwZXdpcmVfZGVwID0gZGVwZW5kZW5jeSgnbGlicGlwZXdpcmUtMC4zJywgdmVyc2lvbjog bGlicGlwZXdpcmVfcmVxKQotIGVuZGlmCi0KLSBoYXZlX2ludHJvc3BlY3Rpb24gPSBnZXRfb3B0 aW9uKCdpbnRyb3NwZWN0aW9uJykKLWRpZmYgLS1naXQgYS9zcmMvYmFja2VuZHMvbWV0YS1zY3Jl ZW4tY2FzdC1zdHJlYW0tc3JjLmMgYi9zcmMvYmFja2VuZHMvbWV0YS1zY3JlZW4tY2FzdC1zdHJl YW0tc3JjLmMKLWluZGV4IDgyYzVjYmE0MzYuLmJhMWNlOTRhN2UgMTAwNjQ0Ci0tLS0gc3JjL2Jh Y2tlbmRzL21ldGEtc2NyZWVuLWNhc3Qtc3RyZWFtLXNyYy5jCi0rKysgc3JjL2JhY2tlbmRzL21l dGEtc2NyZWVuLWNhc3Qtc3RyZWFtLXNyYy5jCi1AQCAtMjksNiArMjksNyBAQAotICNpbmNsdWRl IDxzcGEvcGFyYW0vcHJvcHMuaD4KLSAjaW5jbHVkZSA8c3BhL3BhcmFtL2Zvcm1hdC11dGlscy5o PgotICNpbmNsdWRlIDxzcGEvcGFyYW0vdmlkZW8vZm9ybWF0LXV0aWxzLmg+Ci0rI2luY2x1ZGUg PHNwYS91dGlscy9yZXN1bHQuaD4KLSAjaW5jbHVkZSA8c3RkaW50Lmg+Ci0gI2luY2x1ZGUgPHN5 cy9tbWFuLmg+Ci0KLUBAIC02MiwxNSArNjMsNiBAQCBlbnVtCi0KLSBzdGF0aWMgZ3VpbnQgc2ln bmFsc1tOX1NJR05BTFNdOwotCi0tdHlwZWRlZiBzdHJ1Y3QgX01ldGFTcGFUeXBlCi0tewotLSAg c3RydWN0IHNwYV90eXBlX21lZGlhX3R5cGUgbWVkaWFfdHlwZTsKLS0gIHN0cnVjdCBzcGFfdHlw ZV9tZWRpYV9zdWJ0eXBlIG1lZGlhX3N1YnR5cGU7Ci0tICBzdHJ1Y3Qgc3BhX3R5cGVfZm9ybWF0 X3ZpZGVvIGZvcm1hdF92aWRlbzsKLS0gIHN0cnVjdCBzcGFfdHlwZV92aWRlb19mb3JtYXQgdmlk ZW9fZm9ybWF0OwotLSAgdWludDMyX3QgbWV0YV9jdXJzb3I7Ci0tfSBNZXRhU3BhVHlwZTsKLS0K LSB0eXBlZGVmIHN0cnVjdCBfTWV0YVBpcGVXaXJlU291cmNlCi0gewotICAgR1NvdXJjZSBiYXNl OwotQEAgLTgyLDE5ICs3NCwxOSBAQCB0eXBlZGVmIHN0cnVjdCBfTWV0YVNjcmVlbkNhc3RTdHJl YW1TcmNQcml2YXRlCi0gewotICAgTWV0YVNjcmVlbkNhc3RTdHJlYW0gKnN0cmVhbTsKLQotKyAg c3RydWN0IHB3X2NvbnRleHQgKnBpcGV3aXJlX2NvbnRleHQ7Ci0gICBzdHJ1Y3QgcHdfY29yZSAq cGlwZXdpcmVfY29yZTsKLS0gIHN0cnVjdCBwd19yZW1vdGUgKnBpcGV3aXJlX3JlbW90ZTsKLS0g IHN0cnVjdCBwd190eXBlICpwaXBld2lyZV90eXBlOwotICAgTWV0YVBpcGVXaXJlU291cmNlICpw aXBld2lyZV9zb3VyY2U7Ci0tICBzdHJ1Y3Qgc3BhX2hvb2sgcGlwZXdpcmVfcmVtb3RlX2xpc3Rl bmVyOwotKyAgc3RydWN0IHNwYV9ob29rIHBpcGV3aXJlX2NvcmVfbGlzdGVuZXI7Ci0KLSAgIGdi b29sZWFuIGlzX2VuYWJsZWQ7Ci0KLSAgIHN0cnVjdCBwd19zdHJlYW0gKnBpcGV3aXJlX3N0cmVh bTsKLSAgIHN0cnVjdCBzcGFfaG9vayBwaXBld2lyZV9zdHJlYW1fbGlzdGVuZXI7Ci0rICB1aW50 MzJfdCBub2RlX2lkOwotCi0tICBNZXRhU3BhVHlwZSBzcGFfdHlwZTsKLSAgIHN0cnVjdCBzcGFf dmlkZW9faW5mb19yYXcgdmlkZW9fZm9ybWF0OwotKyAgaW50IHZpZGVvX3N0cmlkZTsKLQotICAg dWludDY0X3QgbGFzdF9mcmFtZV90aW1lc3RhbXBfdXM7Ci0KLUBAIC0xMTIsOCArMTA0LDYgQEAg R19ERUZJTkVfVFlQRV9XSVRIX0NPREUgKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjLAotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1ldGFfc2NyZWVuX2Nh c3Rfc3RyZWFtX3NyY19pbml0X2luaXRhYmxlX2lmYWNlKQotICAgICAgICAgICAgICAgICAgICAg ICAgICBHX0FERF9QUklWQVRFIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYykpCi0KLS0jZGVmaW5l IFBST1BfUkFOR0UobWluLCBtYXgpIDIsIChtaW4pLCAobWF4KQotLQotIHN0YXRpYyB2b2lkCi0g bWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2dldF9zcGVjcyAoTWV0YVNjcmVlbkNhc3RTdHJl YW1TcmMgKnNyYywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg ICAgICAgICAgICAgICAgICAgICAqd2lkdGgsCi1AQCAtMjg2LDkgKzI3Niw2IEBAIG1ldGFfc2Ny ZWVuX2Nhc3Rfc3RyZWFtX3NyY19zZXRfZW1wdHlfY3Vyc29yX3Nwcml0ZV9tZXRhZGF0YSAoTWV0 YVNjcmVlbkNhc3RTdHJlCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgeCwKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGludCAgICAgICAgICAgICAgICAgICAgICB5KQotIHsKLS0gIE1ldGFTY3JlZW5DYXN0U3RyZWFt U3JjUHJpdmF0ZSAqcHJpdiA9Ci0tICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRf aW5zdGFuY2VfcHJpdmF0ZSAoc3JjKTsKLS0gIE1ldGFTcGFUeXBlICpzcGFfdHlwZSA9ICZwcml2 LT5zcGFfdHlwZTsKLSAgIHN0cnVjdCBzcGFfbWV0YV9iaXRtYXAgKnNwYV9tZXRhX2JpdG1hcDsK LQotICAgc3BhX21ldGFfY3Vyc29yLT5pZCA9IDE7Ci1AQCAtMzAwLDcgKzI4Nyw3IEBAIG1ldGFf c2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19zZXRfZW1wdHlfY3Vyc29yX3Nwcml0ZV9tZXRhZGF0YSAo TWV0YVNjcmVlbkNhc3RTdHJlCi0gICBzcGFfbWV0YV9iaXRtYXAgPSBTUEFfTUVNQkVSIChzcGFf bWV0YV9jdXJzb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGFfbWV0YV9j dXJzb3ItPmJpdG1hcF9vZmZzZXQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz dHJ1Y3Qgc3BhX21ldGFfYml0bWFwKTsKLS0gIHNwYV9tZXRhX2JpdG1hcC0+Zm9ybWF0ID0gc3Bh X3R5cGUtPnZpZGVvX2Zvcm1hdC5SR0JBOwotKyAgc3BhX21ldGFfYml0bWFwLT5mb3JtYXQgPSBT UEFfVklERU9fRk9STUFUX1JHQkE7Ci0gICBzcGFfbWV0YV9iaXRtYXAtPm9mZnNldCA9IHNpemVv ZiAoc3RydWN0IHNwYV9tZXRhX2JpdG1hcCk7Ci0KLSAgIHNwYV9tZXRhX2N1cnNvci0+aG90c3Bv dC54ID0gMDsKLUBAIC0zMTcsOSArMzA0LDYgQEAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3Jj X3NldF9jdXJzb3Jfc3ByaXRlX21ldGFkYXRhIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYwotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50 ICAgICAgICAgICAgICAgICAgICAgIHksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdCAgICAgICAgICAgICAgICAgICAgc2NhbGUp Ci0gewotLSAgTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmNQcml2YXRlICpwcml2ID0KLS0gICAgbWV0 YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2dldF9pbnN0YW5jZV9wcml2YXRlIChzcmMpOwotLSAg TWV0YVNwYVR5cGUgKnNwYV90eXBlID0gJnByaXYtPnNwYV90eXBlOwotICAgQ29nbFRleHR1cmUg KmN1cnNvcl90ZXh0dXJlOwotICAgc3RydWN0IHNwYV9tZXRhX2JpdG1hcCAqc3BhX21ldGFfYml0 bWFwOwotICAgaW50IGhvdHNwb3RfeCwgaG90c3BvdF95OwotQEAgLTM0Niw3ICszMzAsNyBAQCBt ZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfc2V0X2N1cnNvcl9zcHJpdGVfbWV0YWRhdGEgKE1l dGFTY3JlZW5DYXN0U3RyZWFtU3JjCi0gICBzcGFfbWV0YV9iaXRtYXAgPSBTUEFfTUVNQkVSIChz cGFfbWV0YV9jdXJzb3IsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGFfbWV0 YV9jdXJzb3ItPmJpdG1hcF9vZmZzZXQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBzdHJ1Y3Qgc3BhX21ldGFfYml0bWFwKTsKLS0gIHNwYV9tZXRhX2JpdG1hcC0+Zm9ybWF0ID0g c3BhX3R5cGUtPnZpZGVvX2Zvcm1hdC5SR0JBOwotKyAgc3BhX21ldGFfYml0bWFwLT5mb3JtYXQg PSBTUEFfVklERU9fRk9STUFUX1JHQkE7Ci0gICBzcGFfbWV0YV9iaXRtYXAtPm9mZnNldCA9IHNp emVvZiAoc3RydWN0IHNwYV9tZXRhX2JpdG1hcCk7Ci0KLSAgIG1ldGFfY3Vyc29yX3Nwcml0ZV9n ZXRfaG90c3BvdCAoY3Vyc29yX3Nwcml0ZSwgJmhvdHNwb3RfeCwgJmhvdHNwb3RfeSk7Ci1AQCAt MzgyLDEyICszNjYsMTAgQEAgc3RhdGljIHZvaWQKLSBhZGRfY3Vyc29yX21ldGFkYXRhIChNZXRh U2NyZWVuQ2FzdFN0cmVhbVNyYyAqc3JjLAotICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBz cGFfYnVmZmVyICAgICAgICpzcGFfYnVmZmVyKQotIHsKLS0gIE1ldGFTY3JlZW5DYXN0U3RyZWFt U3JjUHJpdmF0ZSAqcHJpdiA9Ci0tICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19nZXRf aW5zdGFuY2VfcHJpdmF0ZSAoc3JjKTsKLS0gIE1ldGFTcGFUeXBlICpzcGFfdHlwZSA9ICZwcml2 LT5zcGFfdHlwZTsKLSAgIHN0cnVjdCBzcGFfbWV0YV9jdXJzb3IgKnNwYV9tZXRhX2N1cnNvcjsK LQotLSAgc3BhX21ldGFfY3Vyc29yID0gc3BhX2J1ZmZlcl9maW5kX21ldGEgKHNwYV9idWZmZXIs IHNwYV90eXBlLT5tZXRhX2N1cnNvcik7Ci0rICBzcGFfbWV0YV9jdXJzb3IgPSBzcGFfYnVmZmVy X2ZpbmRfbWV0YV9kYXRhIChzcGFfYnVmZmVyLCBTUEFfTUVUQV9DdXJzb3IsCi0rICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YgKCpzcGFfbWV0YV9j dXJzb3IpKTsKLSAgIGlmIChzcGFfbWV0YV9jdXJzb3IpCi0gICAgIG1ldGFfc2NyZWVuX2Nhc3Rf c3RyZWFtX3NyY19zZXRfY3Vyc29yX21ldGFkYXRhIChzcmMsIHNwYV9tZXRhX2N1cnNvcik7Ci0g fQotQEAgLTQ0NywxNCArNDI5LDE0IEBAIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19tYXli ZV9yZWNvcmRfZnJhbWUgKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICpzcmMpCi0gICAgIHsKLSAg ICAgICBkYXRhID0gc3BhX2J1ZmZlci0+ZGF0YXNbMF0uZGF0YTsKLSAgICAgfQotLSAgZWxzZSBp ZiAoc3BhX2J1ZmZlci0+ZGF0YXNbMF0udHlwZSA9PSBwcml2LT5waXBld2lyZV90eXBlLT5kYXRh Lk1lbUZkKQotKyAgZWxzZSBpZiAoc3BhX2J1ZmZlci0+ZGF0YXNbMF0udHlwZSA9PSBTUEFfREFU QV9NZW1GZCkKLSAgICAgewotICAgICAgIG1hcCA9IG1tYXAgKE5VTEwsIHNwYV9idWZmZXItPmRh dGFzWzBdLm1heHNpemUgKyBzcGFfYnVmZmVyLT5kYXRhc1swXS5tYXBvZmZzZXQsCi0gICAgICAg ICAgICAgICAgICAgUFJPVF9SRUFEIHwgUFJPVF9XUklURSwgTUFQX1NIQVJFRCwKLSAgICAgICAg ICAgICAgICAgICBzcGFfYnVmZmVyLT5kYXRhc1swXS5mZCwgMCk7Ci0gICAgICAgaWYgKG1hcCA9 PSBNQVBfRkFJTEVEKQotICAgICAgICAgewotLSAgICAgICAgICBnX3dhcm5pbmcgKCJGYWlsZWQg dG8gbW1hcCBwaXBld2lyZSBzdHJlYW0gYnVmZmVyOiAlc1xuIiwKLSsgICAgICAgICAgZ193YXJu aW5nICgiRmFpbGVkIHRvIG1tYXAgcGlwZXdpcmUgc3RyZWFtIGJ1ZmZlcjogJXMiLAotICAgICAg ICAgICAgICAgICAgICAgIHN0cmVycm9yIChlcnJubykpOwotICAgICAgICAgICByZXR1cm47Ci0g ICAgICAgICB9Ci1AQCAtNDY5LDI4ICs0NTEsMzAgQEAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1f c3JjX21heWJlX3JlY29yZF9mcmFtZSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgKnNyYykKLQot ICAgaWYgKG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19yZWNvcmRfZnJhbWUgKHNyYywgZGF0 YSkpCi0gICAgIHsKLS0gICAgICBzdHJ1Y3Qgc3BhX21ldGFfdmlkZW9fY3JvcCAqc3BhX21ldGFf dmlkZW9fY3JvcDsKLSsgICAgICBzdHJ1Y3Qgc3BhX21ldGFfcmVnaW9uICpzcGFfbWV0YV92aWRl b19jcm9wOwotCi0gICAgICAgc3BhX2J1ZmZlci0+ZGF0YXNbMF0uY2h1bmstPnNpemUgPSBzcGFf YnVmZmVyLT5kYXRhc1swXS5tYXhzaXplOwotKyAgICAgIHNwYV9idWZmZXItPmRhdGFzWzBdLmNo dW5rLT5zdHJpZGUgPSBwcml2LT52aWRlb19zdHJpZGU7Ci0KLSAgICAgICAvKiBVcGRhdGUgVmlk ZW9Dcm9wIGlmIG5lZWRlZCAqLwotICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AgPQotLSAgICAg ICAgc3BhX2J1ZmZlcl9maW5kX21ldGEgKHNwYV9idWZmZXIsIHByaXYtPnBpcGV3aXJlX3R5cGUt Pm1ldGEuVmlkZW9Dcm9wKTsKLSsgICAgICAgIHNwYV9idWZmZXJfZmluZF9tZXRhX2RhdGEgKHNw YV9idWZmZXIsIFNQQV9NRVRBX1ZpZGVvQ3JvcCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHNpemVvZiAoKnNwYV9tZXRhX3ZpZGVvX2Nyb3ApKTsKLSAgICAgICBpZiAoc3Bh X21ldGFfdmlkZW9fY3JvcCkKLSAgICAgICAgIHsKLSAgICAgICAgICAgaWYgKG1ldGFfc2NyZWVu X2Nhc3Rfc3RyZWFtX3NyY19nZXRfdmlkZW9jcm9wIChzcmMsICZjcm9wX3JlY3QpKQotICAgICAg ICAgICAgIHsKLS0gICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnggPSBjcm9wX3Jl Y3QueDsKLS0gICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnkgPSBjcm9wX3JlY3Qu eTsKLS0gICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPndpZHRoID0gY3JvcF9yZWN0 LndpZHRoOwotLSAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+aGVpZ2h0ID0gY3Jv cF9yZWN0LmhlaWdodDsKLSsgICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnJlZ2lv bi5wb3NpdGlvbi54ID0gY3JvcF9yZWN0Lng7Ci0rICAgICAgICAgICAgICBzcGFfbWV0YV92aWRl b19jcm9wLT5yZWdpb24ucG9zaXRpb24ueSA9IGNyb3BfcmVjdC55OwotKyAgICAgICAgICAgICAg c3BhX21ldGFfdmlkZW9fY3JvcC0+cmVnaW9uLnNpemUud2lkdGggPSBjcm9wX3JlY3Qud2lkdGg7 Ci0rICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5yZWdpb24uc2l6ZS5oZWlnaHQg PSBjcm9wX3JlY3QuaGVpZ2h0OwotICAgICAgICAgICAgIH0KLSAgICAgICAgICAgZWxzZQotICAg ICAgICAgICAgIHsKLS0gICAgICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPnggPSAwOwot LSAgICAgICAgICAgICAgc3BhX21ldGFfdmlkZW9fY3JvcC0+eSA9IDA7Ci0tICAgICAgICAgICAg ICBzcGFfbWV0YV92aWRlb19jcm9wLT53aWR0aCA9IHByaXYtPnN0cmVhbV93aWR0aDsKLS0gICAg ICAgICAgICAgIHNwYV9tZXRhX3ZpZGVvX2Nyb3AtPmhlaWdodCA9IHByaXYtPnN0cmVhbV9oZWln aHQ7Ci0rICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5yZWdpb24ucG9zaXRpb24u eCA9IDA7Ci0rICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5yZWdpb24ucG9zaXRp b24ueSA9IDA7Ci0rICAgICAgICAgICAgICBzcGFfbWV0YV92aWRlb19jcm9wLT5yZWdpb24uc2l6 ZS53aWR0aCA9IHByaXYtPnN0cmVhbV93aWR0aDsKLSsgICAgICAgICAgICAgIHNwYV9tZXRhX3Zp ZGVvX2Nyb3AtPnJlZ2lvbi5zaXplLmhlaWdodCA9IHByaXYtPnN0cmVhbV9oZWlnaHQ7Ci0gICAg ICAgICAgICAgfQotICAgICAgICAgfQotICAgICB9Ci1AQCAtNTU1LDcgKzUzOSw2IEBAIG9uX3N0 cmVhbV9zdGF0ZV9jaGFuZ2VkICh2b2lkICAgICAgICAgICAgICAgICAqZGF0YSwKLSAgIE1ldGFT Y3JlZW5DYXN0U3RyZWFtU3JjICpzcmMgPSBkYXRhOwotICAgTWV0YVNjcmVlbkNhc3RTdHJlYW1T cmNQcml2YXRlICpwcml2ID0KLSAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2dldF9p bnN0YW5jZV9wcml2YXRlIChzcmMpOwotLSAgdWludDMyX3Qgbm9kZV9pZDsKLQotICAgc3dpdGNo IChzdGF0ZSkKLSAgICAgewotQEAgLTU2MywxNCArNTQ2LDEyIEBAIG9uX3N0cmVhbV9zdGF0ZV9j aGFuZ2VkICh2b2lkICAgICAgICAgICAgICAgICAqZGF0YSwKLSAgICAgICBnX3dhcm5pbmcgKCJw aXBld2lyZSBzdHJlYW0gZXJyb3I6ICVzIiwgZXJyb3JfbWVzc2FnZSk7Ci0gICAgICAgbWV0YV9z Y3JlZW5fY2FzdF9zdHJlYW1fc3JjX25vdGlmeV9jbG9zZWQgKHNyYyk7Ci0gICAgICAgYnJlYWs7 Ci0tICAgIGNhc2UgUFdfU1RSRUFNX1NUQVRFX0NPTkZJR1VSRToKLS0gICAgICBub2RlX2lkID0g cHdfc3RyZWFtX2dldF9ub2RlX2lkIChwcml2LT5waXBld2lyZV9zdHJlYW0pOwotLSAgICAgIGdf c2lnbmFsX2VtaXQgKHNyYywgc2lnbmFsc1tSRUFEWV0sIDAsICh1bnNpZ25lZCBpbnQpIG5vZGVf aWQpOwotLSAgICAgIGJyZWFrOwotLSAgICBjYXNlIFBXX1NUUkVBTV9TVEFURV9VTkNPTk5FQ1RF RDoKLS0gICAgY2FzZSBQV19TVFJFQU1fU1RBVEVfQ09OTkVDVElORzoKLS0gICAgY2FzZSBQV19T VFJFQU1fU1RBVEVfUkVBRFk6Ci0gICAgIGNhc2UgUFdfU1RSRUFNX1NUQVRFX1BBVVNFRDoKLSsg ICAgICBpZiAocHJpdi0+bm9kZV9pZCA9PSBTUEFfSURfSU5WQUxJRCAmJiBwcml2LT5waXBld2ly ZV9zdHJlYW0pCi0rICAgICAgICB7Ci0rICAgICAgICAgIHByaXYtPm5vZGVfaWQgPSBwd19zdHJl YW1fZ2V0X25vZGVfaWQgKHByaXYtPnBpcGV3aXJlX3N0cmVhbSk7Ci0rICAgICAgICAgIGdfc2ln bmFsX2VtaXQgKHNyYywgc2lnbmFsc1tSRUFEWV0sIDAsICh1bnNpZ25lZCBpbnQpIHByaXYtPm5v ZGVfaWQpOwotKyAgICAgICAgfQotICAgICAgIGlmIChtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9z cmNfaXNfZW5hYmxlZCAoc3JjKSkKLSAgICAgICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3Ny Y19kaXNhYmxlIChzcmMpOwotICAgICAgIGJyZWFrOwotQEAgLTU3OCw2OCArNTU5LDY5IEBAIG9u X3N0cmVhbV9zdGF0ZV9jaGFuZ2VkICh2b2lkICAgICAgICAgICAgICAgICAqZGF0YSwKLSAgICAg ICBpZiAoIW1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19pc19lbmFibGVkIChzcmMpKQotICAg ICAgICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2VuYWJsZSAoc3JjKTsKLSAgICAgICBi cmVhazsKLSsgICAgY2FzZSBQV19TVFJFQU1fU1RBVEVfVU5DT05ORUNURUQ6Ci0rICAgIGNhc2Ug UFdfU1RSRUFNX1NUQVRFX0NPTk5FQ1RJTkc6Ci0rICAgICAgYnJlYWs7Ci0gICAgIH0KLSB9Ci0K LSBzdGF0aWMgdm9pZAotLW9uX3N0cmVhbV9mb3JtYXRfY2hhbmdlZCAodm9pZCAgICAgICAgICAg ICAgICAgKmRhdGEsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3Qgc3Bh X3BvZCAqZm9ybWF0KQotK29uX3N0cmVhbV9wYXJhbV9jaGFuZ2VkICh2b2lkICAgICAgICAgICAg ICAgICAqZGF0YSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgICAgICAgICAg ICAgIGlkLAotKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3Qgc3BhX3BvZCAq Zm9ybWF0KQotIHsKLSAgIE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICpzcmMgPSBkYXRhOwotICAg TWV0YVNjcmVlbkNhc3RTdHJlYW1TcmNQcml2YXRlICpwcml2ID0KLSAgICAgbWV0YV9zY3JlZW5f Y2FzdF9zdHJlYW1fc3JjX2dldF9pbnN0YW5jZV9wcml2YXRlIChzcmMpOwotLSAgc3RydWN0IHB3 X3R5cGUgKnBpcGV3aXJlX3R5cGUgPSBwcml2LT5waXBld2lyZV90eXBlOwotICAgdWludDhfdCBw YXJhbXNfYnVmZmVyWzEwMjRdOwotICAgaW50MzJfdCB3aWR0aCwgaGVpZ2h0LCBzdHJpZGUsIHNp emU7Ci0gICBzdHJ1Y3Qgc3BhX3BvZF9idWlsZGVyIHBvZF9idWlsZGVyOwotICAgY29uc3Qgc3Ry dWN0IHNwYV9wb2QgKnBhcmFtc1szXTsKLSAgIGNvbnN0IGludCBicHAgPSA0OwotCi0tICBpZiAo IWZvcm1hdCkKLS0gICAgewotLSAgICAgIHB3X3N0cmVhbV9maW5pc2hfZm9ybWF0IChwcml2LT5w aXBld2lyZV9zdHJlYW0sIDAsIE5VTEwsIDApOwotLSAgICAgIHJldHVybjsKLS0gICAgfQotKyAg aWYgKCFmb3JtYXQgfHwgaWQgIT0gU1BBX1BBUkFNX0Zvcm1hdCkKLSsgICAgcmV0dXJuOwotCi0g ICBzcGFfZm9ybWF0X3ZpZGVvX3Jhd19wYXJzZSAoZm9ybWF0LAotLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICZwcml2LT52aWRlb19mb3JtYXQsCi0tICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgJnByaXYtPnNwYV90eXBlLmZvcm1hdF92aWRlbyk7Ci0rICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgJnByaXYtPnZpZGVvX2Zvcm1hdCk7Ci0KLSAgIHdpZHRoID0gcHJpdi0+ dmlkZW9fZm9ybWF0LnNpemUud2lkdGg7Ci0gICBoZWlnaHQgPSBwcml2LT52aWRlb19mb3JtYXQu c2l6ZS5oZWlnaHQ7Ci0gICBzdHJpZGUgPSBTUEFfUk9VTkRfVVBfTiAod2lkdGggKiBicHAsIDQp OwotICAgc2l6ZSA9IGhlaWdodCAqIHN0cmlkZTsKLQotKyAgcHJpdi0+dmlkZW9fc3RyaWRlID0g c3RyaWRlOwotKwotICAgcG9kX2J1aWxkZXIgPSBTUEFfUE9EX0JVSUxERVJfSU5JVCAocGFyYW1z X2J1ZmZlciwgc2l6ZW9mIChwYXJhbXNfYnVmZmVyKSk7Ci0KLS0gIHBhcmFtc1swXSA9IHNwYV9w b2RfYnVpbGRlcl9vYmplY3QgKAotKyAgcGFyYW1zWzBdID0gc3BhX3BvZF9idWlsZGVyX2FkZF9v YmplY3QgKAotICAgICAmcG9kX2J1aWxkZXIsCi0tICAgIHBpcGV3aXJlX3R5cGUtPnBhcmFtLmlk QnVmZmVycywgcGlwZXdpcmVfdHlwZS0+cGFyYW1fYnVmZmVycy5CdWZmZXJzLAotLSAgICAiOiIs IHBpcGV3aXJlX3R5cGUtPnBhcmFtX2J1ZmZlcnMuc2l6ZSwgImkiLCBzaXplLAotLSAgICAiOiIs IHBpcGV3aXJlX3R5cGUtPnBhcmFtX2J1ZmZlcnMuc3RyaWRlLCAiaSIsIHN0cmlkZSwKLS0gICAg IjoiLCBwaXBld2lyZV90eXBlLT5wYXJhbV9idWZmZXJzLmJ1ZmZlcnMsICJpcnUiLCAxNiwgUFJP UF9SQU5HRSAoMiwgMTYpLAotLSAgICAiOiIsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX2J1ZmZlcnMu YWxpZ24sICJpIiwgMTYpOwotLQotLSAgcGFyYW1zWzFdID0gc3BhX3BvZF9idWlsZGVyX29iamVj dCAoCi0rICAgIFNQQV9UWVBFX09CSkVDVF9QYXJhbUJ1ZmZlcnMsIFNQQV9QQVJBTV9CdWZmZXJz LAotKyAgICBTUEFfUEFSQU1fQlVGRkVSU19idWZmZXJzLCBTUEFfUE9EX0NIT0lDRV9SQU5HRV9J bnQgKDE2LCAyLCAxNiksCi0rICAgIFNQQV9QQVJBTV9CVUZGRVJTX2Jsb2NrcywgU1BBX1BPRF9J bnQgKDEpLAotKyAgICBTUEFfUEFSQU1fQlVGRkVSU19zaXplLCBTUEFfUE9EX0ludCAoc2l6ZSks Ci0rICAgIFNQQV9QQVJBTV9CVUZGRVJTX3N0cmlkZSwgU1BBX1BPRF9JbnQgKHN0cmlkZSksCi0r ICAgIFNQQV9QQVJBTV9CVUZGRVJTX2FsaWduLCBTUEFfUE9EX0ludCAoMTYpKTsKLSsKLSsgIHBh cmFtc1sxXSA9IHNwYV9wb2RfYnVpbGRlcl9hZGRfb2JqZWN0ICgKLSAgICAgJnBvZF9idWlsZGVy LAotLSAgICBwaXBld2lyZV90eXBlLT5wYXJhbS5pZE1ldGEsIHBpcGV3aXJlX3R5cGUtPnBhcmFt X21ldGEuTWV0YSwKLS0gICAgIjoiLCBwaXBld2lyZV90eXBlLT5wYXJhbV9tZXRhLnR5cGUsICJJ IiwgcGlwZXdpcmVfdHlwZS0+bWV0YS5WaWRlb0Nyb3AsCi0tICAgICI6IiwgcGlwZXdpcmVfdHlw ZS0+cGFyYW1fbWV0YS5zaXplLCAiaSIsIHNpemVvZiAoc3RydWN0IHNwYV9tZXRhX3ZpZGVvX2Ny b3ApKTsKLSsgICAgU1BBX1RZUEVfT0JKRUNUX1BhcmFtTWV0YSwgU1BBX1BBUkFNX01ldGEsCi0r ICAgIFNQQV9QQVJBTV9NRVRBX3R5cGUsIFNQQV9QT0RfSWQgKFNQQV9NRVRBX1ZpZGVvQ3JvcCks Ci0rICAgIFNQQV9QQVJBTV9NRVRBX3NpemUsIFNQQV9QT0RfSW50IChzaXplb2YgKHN0cnVjdCBz cGFfbWV0YV9yZWdpb24pKSk7Ci0KLS0gIHBhcmFtc1syXSA9IHNwYV9wb2RfYnVpbGRlcl9vYmpl Y3QgKAotKyAgcGFyYW1zWzJdID0gc3BhX3BvZF9idWlsZGVyX2FkZF9vYmplY3QgKAotICAgICAm cG9kX2J1aWxkZXIsCi0tICAgIHBpcGV3aXJlX3R5cGUtPnBhcmFtLmlkTWV0YSwgcGlwZXdpcmVf dHlwZS0+cGFyYW1fbWV0YS5NZXRhLAotLSAgICAiOiIsIHBpcGV3aXJlX3R5cGUtPnBhcmFtX21l dGEudHlwZSwgIkkiLCBwcml2LT5zcGFfdHlwZS5tZXRhX2N1cnNvciwKLS0gICAgIjoiLCBwaXBl d2lyZV90eXBlLT5wYXJhbV9tZXRhLnNpemUsICJpIiwgQ1VSU09SX01FVEFfU0laRSAoNjQsIDY0 KSk7Ci0rICAgIFNQQV9UWVBFX09CSkVDVF9QYXJhbU1ldGEsIFNQQV9QQVJBTV9NZXRhLAotKyAg ICBTUEFfUEFSQU1fTUVUQV90eXBlLCBTUEFfUE9EX0lkIChTUEFfTUVUQV9DdXJzb3IpLAotKyAg ICBTUEFfUEFSQU1fTUVUQV9zaXplLCBTUEFfUE9EX0ludCAoQ1VSU09SX01FVEFfU0laRSAoNjQs IDY0KSkpOwotCi0tICBwd19zdHJlYW1fZmluaXNoX2Zvcm1hdCAocHJpdi0+cGlwZXdpcmVfc3Ry ZWFtLCAwLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtcywgR19OX0VMRU1FTlRT IChwYXJhbXMpKTsKLSsgIHB3X3N0cmVhbV91cGRhdGVfcGFyYW1zIChwcml2LT5waXBld2lyZV9z dHJlYW0sIHBhcmFtcywgR19OX0VMRU1FTlRTIChwYXJhbXMpKTsKLSB9Ci0KLSBzdGF0aWMgY29u c3Qgc3RydWN0IHB3X3N0cmVhbV9ldmVudHMgc3RyZWFtX2V2ZW50cyA9IHsKLSAgIFBXX1ZFUlNJ T05fU1RSRUFNX0VWRU5UUywKLSAgIC5zdGF0ZV9jaGFuZ2VkID0gb25fc3RyZWFtX3N0YXRlX2No YW5nZWQsCi0tICAuZm9ybWF0X2NoYW5nZWQgPSBvbl9zdHJlYW1fZm9ybWF0X2NoYW5nZWQsCi0r ICAucGFyYW1fY2hhbmdlZCA9IG9uX3N0cmVhbV9wYXJhbV9jaGFuZ2VkLAotIH07Ci0KLSBzdGF0 aWMgc3RydWN0IHB3X3N0cmVhbSAqCi1AQCAtNjUyLDggKzYzNCw2IEBAIGNyZWF0ZV9waXBld2ly ZV9zdHJlYW0gKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICAqc3JjLAotICAgdWludDhfdCBidWZm ZXJbMTAyNF07Ci0gICBzdHJ1Y3Qgc3BhX3BvZF9idWlsZGVyIHBvZF9idWlsZGVyID0KLSAgICAg U1BBX1BPRF9CVUlMREVSX0lOSVQgKGJ1ZmZlciwgc2l6ZW9mIChidWZmZXIpKTsKLS0gIE1ldGFT cGFUeXBlICpzcGFfdHlwZSA9ICZwcml2LT5zcGFfdHlwZTsKLS0gIHN0cnVjdCBwd190eXBlICpw aXBld2lyZV90eXBlID0gcHJpdi0+cGlwZXdpcmVfdHlwZTsKLSAgIGZsb2F0IGZyYW1lX3JhdGU7 Ci0gICBNZXRhRnJhY3Rpb24gZnJhbWVfcmF0ZV9mcmFjdGlvbjsKLSAgIHN0cnVjdCBzcGFfZnJh Y3Rpb24gbWF4X2ZyYW1lcmF0ZTsKLUBAIC02NjEsNyArNjQxLDkgQEAgY3JlYXRlX3BpcGV3aXJl X3N0cmVhbSAoTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmMgICpzcmMsCi0gICBjb25zdCBzdHJ1Y3Qg c3BhX3BvZCAqcGFyYW1zWzFdOwotICAgaW50IHJlc3VsdDsKLQotLSAgcGlwZXdpcmVfc3RyZWFt ID0gcHdfc3RyZWFtX25ldyAocHJpdi0+cGlwZXdpcmVfcmVtb3RlLAotKyAgcHJpdi0+bm9kZV9p ZCA9IFNQQV9JRF9JTlZBTElEOwotKwotKyAgcGlwZXdpcmVfc3RyZWFtID0gcHdfc3RyZWFtX25l dyAocHJpdi0+cGlwZXdpcmVfY29yZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICJtZXRhLXNjcmVlbi1jYXN0LXNyYyIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBOVUxMKTsKLSAgIGlmICghcGlwZXdpcmVfc3RyZWFtKQotQEAgLTY4MiwxNyArNjY0 LDE3IEBAIGNyZWF0ZV9waXBld2lyZV9zdHJlYW0gKE1ldGFTY3JlZW5DYXN0U3RyZWFtU3JjICAq c3JjLAotICAgbWF4X2ZyYW1lcmF0ZSA9IFNQQV9GUkFDVElPTiAoZnJhbWVfcmF0ZV9mcmFjdGlv bi5udW0sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcmFtZV9yYXRlX2ZyYWN0 aW9uLmRlbm9tKTsKLQotLSAgcGFyYW1zWzBdID0gc3BhX3BvZF9idWlsZGVyX29iamVjdCAoCi0r ICBwYXJhbXNbMF0gPSBzcGFfcG9kX2J1aWxkZXJfYWRkX29iamVjdCAoCi0gICAgICZwb2RfYnVp bGRlciwKLS0gICAgcGlwZXdpcmVfdHlwZS0+cGFyYW0uaWRFbnVtRm9ybWF0LCBwaXBld2lyZV90 eXBlLT5zcGFfZm9ybWF0LAotLSAgICAiSSIsIHNwYV90eXBlLT5tZWRpYV90eXBlLnZpZGVvLAot LSAgICAiSSIsIHNwYV90eXBlLT5tZWRpYV9zdWJ0eXBlLnJhdywKLS0gICAgIjoiLCBzcGFfdHlw ZS0+Zm9ybWF0X3ZpZGVvLmZvcm1hdCwgIkkiLCBzcGFfdHlwZS0+dmlkZW9fZm9ybWF0LkJHUngs Ci0tICAgICI6Iiwgc3BhX3R5cGUtPmZvcm1hdF92aWRlby5zaXplLCAiUiIsICZTUEFfUkVDVEFO R0xFIChwcml2LT5zdHJlYW1fd2lkdGgsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcml2LT5zdHJlYW1faGVpZ2h0KSwKLS0gICAg IjoiLCBzcGFfdHlwZS0+Zm9ybWF0X3ZpZGVvLmZyYW1lcmF0ZSwgIkYiLCAmU1BBX0ZSQUNUSU9O ICgwLCAxKSwKLS0gICAgIjoiLCBzcGFfdHlwZS0+Zm9ybWF0X3ZpZGVvLm1heF9mcmFtZXJhdGUs ICJGcnUiLCAmbWF4X2ZyYW1lcmF0ZSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBQUk9QX1JBTkdFICgmbWluX2ZyYW1lcmF0ZSwKLSsgICAg U1BBX1RZUEVfT0JKRUNUX0Zvcm1hdCwgU1BBX1BBUkFNX0VudW1Gb3JtYXQsCi0rICAgIFNQQV9G T1JNQVRfbWVkaWFUeXBlLCBTUEFfUE9EX0lkIChTUEFfTUVESUFfVFlQRV92aWRlbyksCi0rICAg IFNQQV9GT1JNQVRfbWVkaWFTdWJ0eXBlLCBTUEFfUE9EX0lkIChTUEFfTUVESUFfU1VCVFlQRV9y YXcpLAotKyAgICBTUEFfRk9STUFUX1ZJREVPX2Zvcm1hdCwgU1BBX1BPRF9JZCAoU1BBX1ZJREVP X0ZPUk1BVF9CR1J4KSwKLSsgICAgU1BBX0ZPUk1BVF9WSURFT19zaXplLCBTUEFfUE9EX1JlY3Rh bmdsZSAoJlNQQV9SRUNUQU5HTEUgKHByaXYtPnN0cmVhbV93aWR0aCwKLSsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaXYtPnN0 cmVhbV9oZWlnaHQpKSwKLSsgICAgU1BBX0ZPUk1BVF9WSURFT19mcmFtZXJhdGUsIFNQQV9QT0Rf RnJhY3Rpb24gKCZTUEFfRlJBQ1RJT04gKDAsIDEpKSwKLSsgICAgU1BBX0ZPUk1BVF9WSURFT19t YXhGcmFtZXJhdGUsIFNQQV9QT0RfQ0hPSUNFX1JBTkdFX0ZyYWN0aW9uICgmbWF4X2ZyYW1lcmF0 ZSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAmbWluX2ZyYW1lcmF0ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWF4X2ZyYW1lcmF0ZSkp OwotCi0gICBwd19zdHJlYW1fYWRkX2xpc3RlbmVyIChwaXBld2lyZV9zdHJlYW0sCi1AQCAtNzAy LDcgKzY4NCw3IEBAIGNyZWF0ZV9waXBld2lyZV9zdHJlYW0gKE1ldGFTY3JlZW5DYXN0U3RyZWFt U3JjICAqc3JjLAotCi0gICByZXN1bHQgPSBwd19zdHJlYW1fY29ubmVjdCAocGlwZXdpcmVfc3Ry ZWFtLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBXX0RJUkVDVElPTl9PVVRQVVQs Ci0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwKLSsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBTUEFfSURfSU5WQUxJRCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAoUFdfU1RSRUFNX0ZMQUdfRFJJVkVSIHwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgUFdfU1RSRUFNX0ZMQUdfTUFQX0JVRkZFUlMpLAotICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHBhcmFtcywgR19OX0VMRU1FTlRTIChwYXJhbXMpKTsKLUBAIC03MTcsNDAgKzY5 OSwxOCBAQCBjcmVhdGVfcGlwZXdpcmVfc3RyZWFtIChNZXRhU2NyZWVuQ2FzdFN0cmVhbVNyYyAg KnNyYywKLSB9Ci0KLSBzdGF0aWMgdm9pZAotLW9uX3N0YXRlX2NoYW5nZWQgKHZvaWQgICAgICAg ICAgICAgICAgICpkYXRhLAotLSAgICAgICAgICAgICAgICAgIGVudW0gcHdfcmVtb3RlX3N0YXRl ICBvbGQsCi0tICAgICAgICAgICAgICAgICAgZW51bSBwd19yZW1vdGVfc3RhdGUgIHN0YXRlLAot LSAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgICAgICAgICAgICplcnJvcl9tZXNzYWdlKQot K29uX2NvcmVfZXJyb3IgKHZvaWQgICAgICAgKmRhdGEsCi0rICAgICAgICAgICAgICAgdWludDMy X3QgICAgaWQsCi0rCSAgICAgICBpbnQgICAgICAgICBzZXEsCi0rCSAgICAgICBpbnQgICAgICAg ICByZXMsCi0rCSAgICAgICBjb25zdCBjaGFyICptZXNzYWdlKQotIHsKLSAgIE1ldGFTY3JlZW5D YXN0U3RyZWFtU3JjICpzcmMgPSBkYXRhOwotLSAgTWV0YVNjcmVlbkNhc3RTdHJlYW1TcmNQcml2 YXRlICpwcml2ID0KLS0gICAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3JjX2dldF9pbnN0YW5j ZV9wcml2YXRlIChzcmMpOwotLSAgc3RydWN0IHB3X3N0cmVhbSAqcGlwZXdpcmVfc3RyZWFtOwot LSAgR0Vycm9yICplcnJvciA9IE5VTEw7Ci0KLS0gIHN3aXRjaCAoc3RhdGUpCi0tICAgIHsKLS0g ICAgY2FzZSBQV19SRU1PVEVfU1RBVEVfRVJST1I6Ci0tICAgICAgZ193YXJuaW5nICgicGlwZXdp cmUgcmVtb3RlIGVycm9yOiAlc1xuIiwgZXJyb3JfbWVzc2FnZSk7Ci0tICAgICAgbWV0YV9zY3Jl ZW5fY2FzdF9zdHJlYW1fc3JjX25vdGlmeV9jbG9zZWQgKHNyYyk7Ci0tICAgICAgYnJlYWs7Ci0t ICAgIGNhc2UgUFdfUkVNT1RFX1NUQVRFX0NPTk5FQ1RFRDoKLS0gICAgICBwaXBld2lyZV9zdHJl YW0gPSBjcmVhdGVfcGlwZXdpcmVfc3RyZWFtIChzcmMsICZlcnJvcik7Ci0tICAgICAgaWYgKCFw aXBld2lyZV9zdHJlYW0pCi0tICAgICAgICB7Ci0tICAgICAgICAgIGdfd2FybmluZyAoIkNvdWxk IG5vdCBjcmVhdGUgcGlwZXdpcmUgc3RyZWFtOiAlcyIsIGVycm9yLT5tZXNzYWdlKTsKLS0gICAg ICAgICAgZ19lcnJvcl9mcmVlIChlcnJvcik7Ci0tICAgICAgICAgIG1ldGFfc2NyZWVuX2Nhc3Rf c3RyZWFtX3NyY19ub3RpZnlfY2xvc2VkIChzcmMpOwotLSAgICAgICAgfQotLSAgICAgIGVsc2UK LS0gICAgICAgIHsKLS0gICAgICAgICAgcHJpdi0+cGlwZXdpcmVfc3RyZWFtID0gcGlwZXdpcmVf c3RyZWFtOwotLSAgICAgICAgfQotLSAgICAgIGJyZWFrOwotLSAgICBjYXNlIFBXX1JFTU9URV9T VEFURV9VTkNPTk5FQ1RFRDoKLS0gICAgY2FzZSBQV19SRU1PVEVfU1RBVEVfQ09OTkVDVElORzoK LS0gICAgICBicmVhazsKLS0gICAgfQotKyAgZ193YXJuaW5nICgicGlwZXdpcmUgcmVtb3RlIGVy cm9yOiBpZDoldSAlcyIsIGlkLCBtZXNzYWdlKTsKLSsKLSsgIGlmIChpZCA9PSBQV19JRF9DT1JF ICYmIHJlcyA9PSAtRVBJUEUpCi0rICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19ub3Rp ZnlfY2xvc2VkIChzcmMpOwotIH0KLQotIHN0YXRpYyBnYm9vbGVhbgotQEAgLTc5MywxNyArNzUz LDYgQEAgc3RhdGljIEdTb3VyY2VGdW5jcyBwaXBld2lyZV9zb3VyY2VfZnVuY3MgPQotICAgcGlw ZXdpcmVfbG9vcF9zb3VyY2VfZmluYWxpemUKLSB9OwotCi0tc3RhdGljIHZvaWQKLS1pbml0X3Nw YV90eXBlIChNZXRhU3BhVHlwZSAgICAgICAgICp0eXBlLAotLSAgICAgICAgICAgICAgIHN0cnVj dCBzcGFfdHlwZV9tYXAgKm1hcCkKLS17Ci0tICBzcGFfdHlwZV9tZWRpYV90eXBlX21hcCAobWFw LCAmdHlwZS0+bWVkaWFfdHlwZSk7Ci0tICBzcGFfdHlwZV9tZWRpYV9zdWJ0eXBlX21hcCAobWFw LCAmdHlwZS0+bWVkaWFfc3VidHlwZSk7Ci0tICBzcGFfdHlwZV9mb3JtYXRfdmlkZW9fbWFwICht YXAsICZ0eXBlLT5mb3JtYXRfdmlkZW8pOwotLSAgc3BhX3R5cGVfdmlkZW9fZm9ybWF0X21hcCAo bWFwLCAmdHlwZS0+dmlkZW9fZm9ybWF0KTsKLS0gIHR5cGUtPm1ldGFfY3Vyc29yID0gc3BhX3R5 cGVfbWFwX2dldF9pZChtYXAsIFNQQV9UWVBFX01FVEFfX0N1cnNvcik7Ci0tfQotLQotIHN0YXRp YyBNZXRhUGlwZVdpcmVTb3VyY2UgKgotIGNyZWF0ZV9waXBld2lyZV9zb3VyY2UgKHZvaWQpCi0g ewotQEAgLTgyOSw5ICs3NzgsOSBAQCBjcmVhdGVfcGlwZXdpcmVfc291cmNlICh2b2lkKQotICAg cmV0dXJuIHBpcGV3aXJlX3NvdXJjZTsKLSB9Ci0KLS1zdGF0aWMgY29uc3Qgc3RydWN0IHB3X3Jl bW90ZV9ldmVudHMgcmVtb3RlX2V2ZW50cyA9IHsKLS0gIFBXX1ZFUlNJT05fUkVNT1RFX0VWRU5U UywKLS0gIC5zdGF0ZV9jaGFuZ2VkID0gb25fc3RhdGVfY2hhbmdlZCwKLStzdGF0aWMgY29uc3Qg c3RydWN0IHB3X2NvcmVfZXZlbnRzIGNvcmVfZXZlbnRzID0gewotKyAgUFdfVkVSU0lPTl9DT1JF X0VWRU5UUywKLSsgIC5lcnJvciA9IG9uX2NvcmVfZXJyb3IsCi0gfTsKLQotIHN0YXRpYyBnYm9v bGVhbgotQEAgLTg1MSwzNyArODAwLDMxIEBAIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFtX3NyY19p bml0YWJsZV9pbml0IChHSW5pdGFibGUgICAgICppbml0YWJsZSwKLSAgICAgICByZXR1cm4gRkFM U0U7Ci0gICAgIH0KLQotLSAgcHJpdi0+cGlwZXdpcmVfY29yZSA9IHB3X2NvcmVfbmV3IChwcml2 LT5waXBld2lyZV9zb3VyY2UtPnBpcGV3aXJlX2xvb3AsCi0tICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE5VTEwpOwotLSAgaWYgKCFwcml2LT5waXBld2lyZV9jb3JlKQotKyAg cHJpdi0+cGlwZXdpcmVfY29udGV4dCA9IHB3X2NvbnRleHRfbmV3IChwcml2LT5waXBld2lyZV9z b3VyY2UtPnBpcGV3aXJlX2xvb3AsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE5VTEwsIDApOwotKyAgaWYgKCFwcml2LT5waXBld2lyZV9jb250ZXh0KQotICAg ICB7Ci0gICAgICAgZ19zZXRfZXJyb3IgKGVycm9yLCBHX0lPX0VSUk9SLCBHX0lPX0VSUk9SX0ZB SUxFRCwKLS0gICAgICAgICAgICAgICAgICAgIkZhaWxlZCB0byBjcmVhdGUgcGlwZXdpcmUgY29y ZSIpOwotKyAgICAgICAgICAgICAgICAgICAiRmFpbGVkIHRvIGNyZWF0ZSBwaXBld2lyZSBjb250 ZXh0Iik7Ci0gICAgICAgcmV0dXJuIEZBTFNFOwotICAgICB9Ci0KLS0gIHByaXYtPnBpcGV3aXJl X3JlbW90ZSA9IHB3X3JlbW90ZV9uZXcgKHByaXYtPnBpcGV3aXJlX2NvcmUsIE5VTEwsIDApOwot LSAgaWYgKCFwcml2LT5waXBld2lyZV9yZW1vdGUpCi0rICBwcml2LT5waXBld2lyZV9jb3JlID0g cHdfY29udGV4dF9jb25uZWN0IChwcml2LT5waXBld2lyZV9jb250ZXh0LCBOVUxMLCAwKTsKLSsg IGlmICghcHJpdi0+cGlwZXdpcmVfY29yZSkKLSAgICAgewotICAgICAgIGdfc2V0X2Vycm9yIChl cnJvciwgR19JT19FUlJPUiwgR19JT19FUlJPUl9GQUlMRUQsCi0tICAgICAgICAgICAgICAgICAg ICJDb3VsZG4ndCBjcmVhdCBwaXBld2lyZSByZW1vdGUiKTsKLSsgICAgICAgICAgICAgICAgICAg IkNvdWxkbid0IGNvbm5lY3QgcGlwZXdpcmUgY29udGV4dCIpOwotICAgICAgIHJldHVybiBGQUxT RTsKLSAgICAgfQotCi0tICBwd19yZW1vdGVfYWRkX2xpc3RlbmVyIChwcml2LT5waXBld2lyZV9y ZW1vdGUsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAmcHJpdi0+cGlwZXdpcmVfcmVtb3Rl X2xpc3RlbmVyLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgJnJlbW90ZV9ldmVudHMsCi0t ICAgICAgICAgICAgICAgICAgICAgICAgICBzcmMpOwotKyAgcHdfY29yZV9hZGRfbGlzdGVuZXIg KHByaXYtPnBpcGV3aXJlX2NvcmUsCi0rICAgICAgICAgICAgICAgICAgICAgICAgJnByaXYtPnBp cGV3aXJlX2NvcmVfbGlzdGVuZXIsCi0rICAgICAgICAgICAgICAgICAgICAgICAgJmNvcmVfZXZl bnRzLAotKyAgICAgICAgICAgICAgICAgICAgICAgIHNyYyk7Ci0KLS0gIHByaXYtPnBpcGV3aXJl X3R5cGUgPSBwd19jb3JlX2dldF90eXBlIChwcml2LT5waXBld2lyZV9jb3JlKTsKLS0gIGluaXRf c3BhX3R5cGUgKCZwcml2LT5zcGFfdHlwZSwgcHJpdi0+cGlwZXdpcmVfdHlwZS0+bWFwKTsKLS0K LS0gIGlmIChwd19yZW1vdGVfY29ubmVjdCAocHJpdi0+cGlwZXdpcmVfcmVtb3RlKSAhPSAwKQot LSAgICB7Ci0tICAgICAgZ19zZXRfZXJyb3IgKGVycm9yLCBHX0lPX0VSUk9SLCBHX0lPX0VSUk9S X0ZBSUxFRCwKLS0gICAgICAgICAgICAgICAgICAgIkNvdWxkbid0IGNvbm5lY3QgcGlwZXdpcmUg cmVtb3RlIik7Ci0tICAgICAgcmV0dXJuIEZBTFNFOwotLSAgICB9Ci0rICBwcml2LT5waXBld2ly ZV9zdHJlYW0gPSBjcmVhdGVfcGlwZXdpcmVfc3RyZWFtIChzcmMsIGVycm9yKTsKLSsgIGlmICgh cHJpdi0+cGlwZXdpcmVfc3RyZWFtKQotKyAgICByZXR1cm4gRkFMU0U7Ci0KLSAgIHJldHVybiBU UlVFOwotIH0KLUBAIC05MTIsOCArODU1LDggQEAgbWV0YV9zY3JlZW5fY2FzdF9zdHJlYW1fc3Jj X2ZpbmFsaXplIChHT2JqZWN0ICpvYmplY3QpCi0gICAgIG1ldGFfc2NyZWVuX2Nhc3Rfc3RyZWFt X3NyY19kaXNhYmxlIChzcmMpOwotCi0gICBnX2NsZWFyX3BvaW50ZXIgKCZwcml2LT5waXBld2ly ZV9zdHJlYW0sIHB3X3N0cmVhbV9kZXN0cm95KTsKLS0gIGdfY2xlYXJfcG9pbnRlciAoJnByaXYt PnBpcGV3aXJlX3JlbW90ZSwgcHdfcmVtb3RlX2Rlc3Ryb3kpOwotLSAgZ19jbGVhcl9wb2ludGVy ICgmcHJpdi0+cGlwZXdpcmVfY29yZSwgcHdfY29yZV9kZXN0cm95KTsKLSsgIGdfY2xlYXJfcG9p bnRlciAoJnByaXYtPnBpcGV3aXJlX2NvcmUsIHB3X2NvcmVfZGlzY29ubmVjdCk7Ci0rICBnX2Ns ZWFyX3BvaW50ZXIgKCZwcml2LT5waXBld2lyZV9jb250ZXh0LCBwd19jb250ZXh0X2Rlc3Ryb3kp OwotICAgZ19zb3VyY2VfZGVzdHJveSAoJnByaXYtPnBpcGV3aXJlX3NvdXJjZS0+YmFzZSk7Ci0K LSAgIEdfT0JKRUNUX0NMQVNTIChtZXRhX3NjcmVlbl9jYXN0X3N0cmVhbV9zcmNfcGFyZW50X2Ns YXNzKS0+ZmluYWxpemUgKG9iamVjdCk7CmRpZmYgLS1naXQgYS9zcmNwa2dzL211dHRlci90ZW1w bGF0ZSBiL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlCmluZGV4IDgwNmEzYmVmOWYwLi4xMzJjZDlk ZDY0NSAxMDA2NDQKLS0tIGEvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9t dXR0ZXIvdGVtcGxhdGUKQEAgLTEsMzQgKzEsMzUgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ211 dHRlcicKIHBrZ25hbWU9bXV0dGVyCi12ZXJzaW9uPTMuMzQuMQotcmV2aXNpb249MwordmVyc2lv bj0zLjM2LjMKK3JldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVz b24KIGNvbmZpZ3VyZV9hcmdzPSItRGVnbF9kZXZpY2U9dHJ1ZSAtRHVkZXY9dHJ1ZSAtRG5hdGl2 ZV9iYWNrZW5kPXRydWUKLSAtRHByb2ZpbGVyPWZhbHNlIC1EaW50cm9zcGVjdGlvbj10cnVlIC1E eHdheWxhbmRfcGF0aD0vdXNyL2Jpbi9Yd2F5bGFuZCIKKyAtRHByb2ZpbGVyPWZhbHNlIC1EaW50 cm9zcGVjdGlvbj10cnVlIC1EeHdheWxhbmRfcGF0aD0vdXNyL2Jpbi9Yd2F5bGFuZAorIC1EeHdh eWxhbmRfaW5pdGZkPWRpc2FibGVkIgogaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IGdsaWItZGV2 ZWwgcGtnLWNvbmZpZyB6ZW5pdHkgd2F5bGFuZC1kZXZlbCB4b3JnLXNlcnZlciIKLW1ha2VkZXBl bmRzPSJlbG9naW5kLWRldmVsIGdsaWItZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBqc29uLWds aWItZGV2ZWwKLSBsaWJnbGliLWRldmVsIGxpYlNNLWRldmVsIGxpYlh0c3QtZGV2ZWwgbGliY2Fu YmVycmEtZGV2ZWwgbGliaW5wdXQtZGV2ZWwKLSBNZXNhTGliLWRldmVsIHBpcGV3aXJlLWRldmVs IHN0YXJ0dXAtbm90aWZpY2F0aW9uLWRldmVsIHdheWxhbmQtcHJvdG9jb2xzCi0gZ25vbWUtc2V0 dGluZ3MtZGFlbW9uLWRldmVsIgorbWFrZWRlcGVuZHM9ImVsb2dpbmQtZGV2ZWwgZ2xpYi1kZXZl bCBnbm9tZS1kZXNrdG9wLWRldmVsIGdyYXBoZW5lLWRldmVsCisganNvbi1nbGliLWRldmVsIGxp YmdsaWItZGV2ZWwgbGliU00tZGV2ZWwgbGliWHRzdC1kZXZlbCBsaWJjYW5iZXJyYS1kZXZlbAor IGxpYmlucHV0LWRldmVsIE1lc2FMaWItZGV2ZWwgcGlwZXdpcmUtZGV2ZWwgc3RhcnR1cC1ub3Rp ZmljYXRpb24tZGV2ZWwKKyB3YXlsYW5kLXByb3RvY29scyBnbm9tZS1zZXR0aW5ncy1kYWVtb24t ZGV2ZWwiCiBkZXBlbmRzPSJkZXNrdG9wLWZpbGUtdXRpbHMgemVuaXR5Igogc2hvcnRfZGVzYz0i TGlnaHR3ZWlnaHQgR1RLKzMgd2luZG93IG1hbmFnZXIiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFu ZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhv bWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL011dHRlci8iCiBkaXN0Zmls ZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2 ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1iYTE4MjZjZjg4YmRiODFlNjM5NDNjYWMwMTRhOGU4 YmNmMzVlYzE3OGM1MzI2NDQwMWY5YzcyZmRlYWI3NThlCi1zaGxpYl9wcm92aWRlcz0ibGlibXV0 dGVyLWNsdXR0ZXItNS5zbyBsaWJtdXR0ZXItY29nbC01LnNvCi0gbGlibXV0dGVyLWNvZ2wtcGFu Z28tNS5zbyBsaWJtdXR0ZXItY29nbC1wYXRoLTUuc28iCitjaGVja3N1bT02YWNlNzQyZThkODg5 MDgzZDNjMzJkNzk1NDNkOTAyMjQ4M2YwYjAwYjYzMGVjZWFiNWUzODA0YWFkM2FlZWQyCitzaGxp Yl9wcm92aWRlcz0ibGlibXV0dGVyLWNsdXR0ZXItNi5zbyBsaWJtdXR0ZXItY29nbC02LnNvCisg bGlibXV0dGVyLWNvZ2wtcGFuZ28tNi5zbyBsaWJtdXR0ZXItY29nbC1wYXRoLTYuc28iCiAKIG11 dHRlci1kZXZlbF9wYWNrYWdlKCkgewotCWRlcGVuZHM9ImdzZXR0aW5ncy1kZXNrdG9wLXNjaGVt YXMgZ3RrKzMtZGV2ZWwgY2x1dHRlci1kZXZlbCBsaWJYMTEtZGV2ZWwKLQkgbGliWHRzdC1kZXZl bCBtdXR0ZXItJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlkZXBlbmRzPSJnc2V0dGluZ3MtZGVz a3RvcC1zY2hlbWFzIGdyYXBoZW5lLWRldmVsIGd0ayszLWRldmVsIGNsdXR0ZXItZGV2ZWwKKwkg bGliWDExLWRldmVsIGxpYlh0c3QtZGV2ZWwgbXV0dGVyLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0i CiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZpbGVzIgogCXBrZ19pbnN0YWxsKCkgewog CQl2bW92ZSB1c3IvaW5jbHVkZQogCQl2bW92ZSB1c3IvbGliL3BrZ2NvbmZpZwotCQl2bW92ZSAi dXNyL2xpYi9tdXR0ZXItNS8qLmdpciIKKwkJdm1vdmUgInVzci9saWIvbXV0dGVyLTYvKi5naXIi CiAJCXZtb3ZlICJ1c3IvbGliLyouc28iCiAJfQogfQoKRnJvbSBhNDg4OGFjNzE3OTQzZTQ3NTQ5 Njg2NmM4YWE3MmU5Nzc1M2FhY2Q5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZp cyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ4OjM4 ICswNjAwClN1YmplY3Q6IFtQQVRDSCAzOS82M10gZ25vbWUtc2hlbGw6IHVwZGF0ZSB0byAzLjM2 LjMuCgotLS0KIHNyY3BrZ3MvZ25vbWUtc2hlbGwvdGVtcGxhdGUgfCA4ICsrKystLS0tCiAxIGZp bGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ25vbWUtc2hlbGwvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXNoZWxsL3RlbXBs YXRlCmluZGV4IDk2YzViODBhMTk0Li5lZTRjNjI4OGY1ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9n bm9tZS1zaGVsbC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXNoZWxsL3RlbXBsYXRlCkBA IC0xLDEyICsxLDEyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1zaGVsbCcKIHBrZ25h bWU9Z25vbWUtc2hlbGwKLXZlcnNpb249My4zNC4xCit2ZXJzaW9uPTMuMzYuMwogcmV2aXNpb249 MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj1naXIKIGNvbmZpZ3VyZV9hcmdzPSIt RHN5c3RlbWQ9ZmFsc2UiCi1ob3N0bWFrZWRlcGVuZHM9ImdvYmplY3QtaW50cm9zcGVjdGlvbiBn dGstZG9jIGxpYnhzbHQgcGtnLWNvbmZpZyBweXRob24zIHNhc3NjCi0gYXNjaWlkb2MgcGVybCBn bGliLWRldmVsIG11dHRlci1kZXZlbCIKK2hvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBnb2JqZWN0 LWludHJvc3BlY3Rpb24gZ3RrLWRvYyBsaWJ4c2x0IHBrZy1jb25maWcgcHl0aG9uMyBzYXNzYwor IGFzY2lpZG9jIHBlcmwgZ2pzLWRldmVsIGdsaWItZGV2ZWwgbXV0dGVyLWRldmVsIgogbWFrZWRl cGVuZHM9ImF0LXNwaTItYXRrIGNhcmlib3UtZGV2ZWwgZXZvbHV0aW9uLWRhdGEtc2VydmVyLWRl dmVsIGZvbGtzLWRldmVsCiAgZ2NyLWRldmVsIGdqcy1kZXZlbCBnbm9tZS1ibHVldG9vdGgtZGV2 ZWwgZ25vbWUtY29udHJvbC1jZW50ZXItZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbAogIGdub21l LW1lbnVzLWRldmVsIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMtZGV2ZWwgZ3N0cmVhbWVyMS1k ZXZlbCBndGsrMy1kZXZlbApAQCAtMjEsNCArMjEsNCBAQCBsaWNlbnNlPSJHUEwtMi4wLW9yLWxh dGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvUHJvamVjdHMvR25vbWVTaGVs bCIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL0dOT01FL2du b21lLXNoZWxsL2dub21lLTMtMzAvTkVXUyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3Br Z25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNr c3VtPWNjZDg2NTU5YjljODk3YzIxOWQyZDJlYmZkYjg0MTNlZmE0YzFiZWU4NDY0MjdjNzUwY2I4 YTMwMWIzZjZkMWUKK2NoZWNrc3VtPTg2ZDhhYmY3MGZhYjg5ZDVkOTM5ZGQ3ZTM4YzU5ODcyNDky ZjQ0NDI3MmE4NTI0ZGI3OTQ1MGE1MTgwZDQ1YmIKCkZyb20gNWZhNjQzYjBiMzRlNmM1MGZkZGEz MmY0MWFlZGMwNDNjMWVlNGU3ZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMg PG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0ODo0NiAr MDYwMApTdWJqZWN0OiBbUEFUQ0ggNDAvNjNdIGdub21lLXNoZWxsLWV4dGVuc2lvbnM6IHVwZGF0 ZSB0byAzLjM2LjIuCgotLS0KIHNyY3BrZ3MvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy90ZW1wbGF0 ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZ25vbWUtc2hlbGwtZXh0ZW5zaW9ucy90ZW1wbGF0ZQppbmRleCA5NzE2OGI0 MGY2Ni4uZTFkZDQzYmIxNTIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtc2hlbGwtZXh0ZW5z aW9ucy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXNoZWxsLWV4dGVuc2lvbnMvdGVtcGxh dGUKQEAgLTEsMTUgKzEsMTUgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXNoZWxsLWV4 dGVuc2lvbnMnCiBwa2duYW1lPWdub21lLXNoZWxsLWV4dGVuc2lvbnMKLXZlcnNpb249My4zNC4x Cit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYXJjaHM9bm9hcmNoCiBidWlsZF9zdHlsZT1t ZXNvbgogY29uZmlndXJlX2FyZ3M9Ii1EZXh0ZW5zaW9uX3NldD1hbGwiCi1ob3N0bWFrZWRlcGVu ZHM9InBrZy1jb25maWciCitob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyIKIGRl cGVuZHM9Imdub21lLXNoZWxsPj0ke3ZlcnNpb259IG5hdXRpbHVzIHVuemlwIgogc2hvcnRfZGVz Yz0iRXh0ZW5zaW9ucyBmb3IgR05PTUUgc2hlbGwsIGluY2x1ZGluZyBjbGFzc2ljIG1vZGUiCiBt YWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0i R1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2pl Y3RzL0dub21lU2hlbGwvRXh0ZW5zaW9ucyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3Br Z25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNr c3VtPWIwYWQ1MTE0M2IxYmY0MGRlZjRhMTBmOGZkMGFiMGZmYjQ3MjE4MzA0ODAwNzk0ZTYyY2Fk ZDI5ZDBhY2M3NWIKK2NoZWNrc3VtPTk3ODIwMmRlNTE1Y2RiMDNhNTg4NTg1OWM1MzgzNjZiY2E4 ZmQ3ODc2MmNlOThiMTcyYWMyYzAxMjZmODAwM2YKCkZyb20gNzYxNjcxYzgzOGU4ODMyYzE1MTA4 NzhhZGUyNTg0NjE1YjFmYjVkNSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMg PG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0ODo1MyAr MDYwMApTdWJqZWN0OiBbUEFUQ0ggNDEvNjNdIGdkbTogdXBkYXRlIHRvIDMuMzYuMi4KCi0tLQog c3JjcGtncy9nZG0vdGVtcGxhdGUgfCAxMCArKysrKy0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNSBp bnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ2RtL3Rl bXBsYXRlIGIvc3JjcGtncy9nZG0vdGVtcGxhdGUKaW5kZXggYmI1YjQ4NjkyZDQuLjE2YmM0M2Zk MGU3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dkbS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dkbS90 ZW1wbGF0ZQpAQCAtMSwxMSArMSwxMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ2RtJwogcGtn bmFtZT1nZG0KLXZlcnNpb249My4zNC4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVp bGRfaGVscGVyPSJnaXIiCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJn cz0iJCh2b3B0X2VuYWJsZSBnaXIgaW50cm9zcGVjdGlvbikKLSAtLWRpc2FibGUtc2NoZW1hcy1j b21waWxlIC0tZGlzYWJsZS1zdGF0aWMgLS13aXRoLWRlZmF1bHQtcGFtLWNvbmZpZz1hcmNoCisg LS1kaXNhYmxlLXN0YXRpYyAtLXdpdGgtZGVmYXVsdC1wYW0tY29uZmlnPWFyY2gKICAtLXdpdGgt YXQtc3BpLXJlZ2lzdHJ5ZC1kaXJlY3Rvcnk9L3Vzci9saWJleGVjIC0td2l0aG91dC10Y3Atd3Jh cHBlcnMKICAtLXdpdGgtc2NyZWVuc2hvdC1kaXI9L3Zhci9saWIvZ2RtL2dyZWV0ZXIgLS1zYmlu ZGlyPS91c3IvYmluIC0td2l0aG91dC1wbHltb3V0aAogIC0td2l0aC14YXV0aC1kaXI9L3J1bi9n ZG0gLS13aXRoLXBpZC1maWxlPS9ydW4vZ2RtL2dkbS5waWQKQEAgLTEzLDE1ICsxMywxNSBAQCBj b25maWd1cmVfYXJncz0iJCh2b3B0X2VuYWJsZSBnaXIgaW50cm9zcGVjdGlvbikKIGhvc3RtYWtl ZGVwZW5kcz0iZGNvbmYgZ2V0dGV4dCBpdHN0b29sIHBrZy1jb25maWciCiBtYWtlZGVwZW5kcz0i YWNjb3VudHNzZXJ2aWNlLWRldmVsIGVsb2dpbmQtZGV2ZWwgZ2V0dGV4dC1kZXZlbCBnbGliLWRl dmVsCiAgaXNvLWNvZGVzIGxpYlNNLWRldmVsIGxpYmNhbmJlcnJhLWRldmVsIG5zcy1kZXZlbCBw YW0tZGV2ZWwgdXBvd2VyLWRldmVsIgotZGVwZW5kcz0iZ25vbWUtc2V0dGluZ3MtZGFlbW9uIGdu b21lLXNoZWxsIHhvcmctc2VydmVyIHhvcmctc2VydmVyLXh3YXlsYW5kCi0geHJkYiIKK2RlcGVu ZHM9Imdub21lLXNldHRpbmdzLWRhZW1vbiBnbm9tZS1zaGVsbCBnbm9tZS1zZXNzaW9uIGdub21l LXRoZW1lcy1leHRyYQorIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMgeG9yZy1zZXJ2ZXIgeG9y Zy1zZXJ2ZXIteHdheWxhbmQgeHJkYiIKIGNoZWNrZGVwZW5kcz0iY2hlY2stZGV2ZWwiCiBzaG9y dF9kZXNjPSJHTk9NRSBEaXNwbGF5IE1hbmFnZXIiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8 Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVw YWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL1Byb2plY3RzL0dETSIKIGRpc3RmaWxlcz0iJHtH Tk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259 LnRhci54eiIKLWNoZWNrc3VtPWU4NWRmNjU3YWE4ZDkzNjFhZjRmYjEyMjAxNGQ4ZjEyM2E5M2Jm ZTQ1YTc2NjJmYmEyYjM3M2Q4MzlkYmQ4ZDMKK2NoZWNrc3VtPTNmNTYxYzEwYWUyZTU5NDJiMDMw MjZmMDJjMGFhN2Q4NzEyZTM4MjcwOGIxN2EwOTcwODc0ZGY4MTc1YjgzYTgKIAogY29uZl9maWxl cz0iCiAJL2V0Yy9nZG0vY3VzdG9tLmNvbmYKCkZyb20gNzE2Nzk1YTFmZDJhZTkyYTExODFkZGRh OGU0YTc1M2E3MWE2ZDM3ZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1u YWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0OTowMCArMDYw MApTdWJqZWN0OiBbUEFUQ0ggNDIvNjNdIGJ1ZGdpZS1kZXNrdG9wOiByZWJ1aWxkIGFnYWluc3QK IGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiAuLi4vcGF0Y2hlcy9NdXR0ZXItMy4zNS45 MC1zdXBwb3J0LTE5MTgucGF0Y2ggfCAxMjcxMyArKysrKysrKysrKysrKysrCiBzcmNwa2dzL2J1 ZGdpZS1kZXNrdG9wL3RlbXBsYXRlICAgICAgICAgICAgICAgfCAgICAgOSArLQogMiBmaWxlcyBj aGFuZ2VkLCAxMjcxOCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUg MTAwNjQ0IHNyY3BrZ3MvYnVkZ2llLWRlc2t0b3AvcGF0Y2hlcy9NdXR0ZXItMy4zNS45MC1zdXBw b3J0LTE5MTgucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3BhdGNo ZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNoIGIvc3JjcGtncy9idWRnaWUtZGVz a3RvcC9wYXRjaGVzL011dHRlci0zLjM1LjkwLXN1cHBvcnQtMTkxOC5wYXRjaApuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uYmZmMWJhZDAzOWYKLS0tIC9kZXYvbnVsbAor KysgYi9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3BhdGNoZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9y dC0xOTE4LnBhdGNoCkBAIC0wLDAgKzEsMTI3MTMgQEAKK0Zyb20gOWQwOWExYjE1YmJmNjY3ODBj Yzg5ZWZmM2M0Yjg0ZTY2NmIwYmZkYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IERh dmlkIE1vaGFtbWVkIDxmb3NzZnJlZWRvbUB1c2Vycy5ub3JlcGx5LmdpdGh1Yi5jb20+CitEYXRl OiBUdWUsIDE4IEZlYiAyMDIwIDA2OjQwOjEyICswMDAwCitTdWJqZWN0OiBbUEFUQ0hdIE11dHRl ciAzLjM2IHN1cHBvcnQgKCMxOTE4KQorCisqIEFkZCBtdXR0ZXIgMy4zNS4yIHN1cHBvcnQKKwor KiBNdXR0ZXIgY29tcGlsZXIgZmxhZ3MgbmVlZHMgdG8gYmUgc3BlY2lmaWVkIGJlZm9yZSBkZXBl bmRlbmN5IGNoZWNrcworCisqIFJlZ2VuZXJhdGUgdmFwaSBmb3IgMy4zNS45MAorCitPcmlnaW46 IGh0dHBzOi8vZ2l0aHViLmNvbS9zb2x1cy1wcm9qZWN0L2J1ZGdpZS1kZXNrdG9wL2NvbW1pdHMv OWQwOWExYjE1YgorLS0tCisgc3JjL3dtL21lc29uLmJ1aWxkICAgICAgICAgICAgICAgIHwgICAx MiArLQorIHNyYy93bS93bS52YWxhICAgICAgICAgICAgICAgICAgICB8ICAgMTYgKy0KKyB2YXBp L0NsdXR0ZXItNi5tZXRhZGF0YSAgICAgICAgICAgfCAgMjA0ICsKKyB2YXBpL0NvZ2wtNi5tZXRh ZGF0YSAgICAgICAgICAgICAgfCAgIDI3ICsKKyB2YXBpL01ldGEtNi5tZXRhZGF0YSAgICAgICAg ICAgICAgfCAgIDgwICsKKyB2YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkgICAgfCAgNjkx ICsrKworIHZhcGkvbGlibXV0dGVyLTYuZGVwcyAgICAgICAgICAgICB8ICAgIDYgKworIHZhcGkv bGlibXV0dGVyLTYudmFwaSAgICAgICAgICAgICB8IDE0NzUgKysrKysKKyB2YXBpL211dHRlci1j bHV0dGVyLTYtY3VzdG9tLnZhbGEgfCAgMTQ3ICsKKyB2YXBpL211dHRlci1jbHV0dGVyLTYuZGVw cyAgICAgICAgfCAgICA0ICsKKyB2YXBpL211dHRlci1jbHV0dGVyLTYudmFwaSAgICAgICAgfCA4 Njg3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgdmFwaS9tdXR0ZXItY29nbC02LWN1 c3RvbS52YWxhICAgIHwgIDEyNSArCisgdmFwaS9tdXR0ZXItY29nbC02LmRlcHMgICAgICAgICAg IHwgICAgMSArCisgdmFwaS9tdXR0ZXItY29nbC02LnZhcGkgICAgICAgICAgIHwgMTA3NyArKysr CisgMTQgZmlsZXMgY2hhbmdlZCwgMTI1NDkgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkK KyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEKKyBjcmVhdGUgbW9k ZSAxMDA2NDQgdmFwaS9Db2dsLTYubWV0YWRhdGEKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9N ZXRhLTYubWV0YWRhdGEKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9ncmFwaGVuZS1nb2JqZWN0 LTEuMC52YXBpCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbGlibXV0dGVyLTYuZGVwcworIGNy ZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL2xpYm11dHRlci02LnZhcGkKKyBjcmVhdGUgbW9kZSAxMDA2 NDQgdmFwaS9tdXR0ZXItY2x1dHRlci02LWN1c3RvbS52YWxhCisgY3JlYXRlIG1vZGUgMTAwNjQ0 IHZhcGkvbXV0dGVyLWNsdXR0ZXItNi5kZXBzCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbXV0 dGVyLWNsdXR0ZXItNi52YXBpCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbXV0dGVyLWNvZ2wt Ni1jdXN0b20udmFsYQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jb2dsLTYuZGVw cworIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jb2dsLTYudmFwaQorCitkaWZmIC0t Z2l0IGEvc3JjL3dtL21lc29uLmJ1aWxkIGIvc3JjL3dtL21lc29uLmJ1aWxkCitpbmRleCBlMzli ODY3OC4uNGJjYzBmOWUgMTAwNjQ0CistLS0gYS9zcmMvd20vbWVzb24uYnVpbGQKKysrKyBiL3Ny Yy93bS9tZXNvbi5idWlsZAorQEAgLTI1LDExICsyNSwxOSBAQCBpZiBub3QgZGVwX211dHRlci5m b3VuZCgpCisgICAgICAgICBtZXNzYWdlKCdVc2luZyBuZXcgbGlibXV0dGVyLTQgQUJJIGZyb20g R05PTUUgMy4zMicpCisgICAgICAgICB2YXBpX211dHRlciA9ICdsaWJtdXR0ZXItNCcKKyAgICAg ZWxzZQorLSAgICAgICAgZGVwX211dHRlciA9IGRlcGVuZGVuY3koJ2xpYm11dHRlci01JywgdmVy c2lvbjogZ25vbWVfbWluaW11bV92ZXJzaW9uKQorKyAgICAgICAgZGVwX211dHRlciA9IGRlcGVu ZGVuY3koJ2xpYm11dHRlci01JywgdmVyc2lvbjogZ25vbWVfbWluaW11bV92ZXJzaW9uLCByZXF1 aXJlZDogZmFsc2UpCisrICAgICAgICBidWRnaWVfd21fc3RhdHVzX3ZhbGFfYXJncyArPSBbJy1E JywgJ0hBVkVfTVVUVEVSXzUnXQorICAgICAgICAgaWYgZGVwX211dHRlci5mb3VuZCgpCisgICAg ICAgICAgICAgbWVzc2FnZSgnVXNpbmcgbmV3IGxpYm11dHRlci01IEFCSSBmcm9tIEdOT01FIDMu MzQnKQorICAgICAgICAgICAgIHZhcGlfbXV0dGVyID0gJ2xpYm11dHRlci01JworLSAgICAgICAg ICAgIGJ1ZGdpZV93bV9zdGF0dXNfdmFsYV9hcmdzICs9IFsnLUQnLCAnSEFWRV9NVVRURVJfNSdd CisrICAgICAgICBlbHNlCisrICAgICAgICAgICAgZGVwX211dHRlciA9IGRlcGVuZGVuY3koJ2xp Ym11dHRlci02JywgdmVyc2lvbjogZ25vbWVfbWluaW11bV92ZXJzaW9uKQorKyAgICAgICAgICAg IGJ1ZGdpZV93bV9zdGF0dXNfdmFsYV9hcmdzICs9IFsnLUQnLCAnSEFWRV9NVVRURVJfNiddCisr ICAgICAgICAgICAgaWYgZGVwX211dHRlci5mb3VuZCgpCisrICAgICAgICAgICAgICAgIGRlcF9n cmFwaGVuZSA9IGRlcGVuZGVuY3koJ2dyYXBoZW5lLWdvYmplY3QtMS4wJywgdmVyc2lvbjogJz49 IDEuMTAnKQorKyAgICAgICAgICAgICAgICBtZXNzYWdlKCdVc2luZyBuZXcgbGlibXV0dGVyLTYg QUJJIGZyb20gR05PTUUgMy4zNicpCisrICAgICAgICAgICAgICAgIHZhcGlfbXV0dGVyID0gJ2xp Ym11dHRlci02JworKyAgICAgICAgICAgIGVuZGlmCisgICAgICAgICBlbmRpZgorICAgICBlbmRp ZgorIGVuZGlmCitkaWZmIC0tZ2l0IGEvc3JjL3dtL3dtLnZhbGEgYi9zcmMvd20vd20udmFsYQor aW5kZXggZmVlODk0NDMuLmJiNDZjZDA2IDEwMDY0NAorLS0tIGEvc3JjL3dtL3dtLnZhbGEKKysr KyBiL3NyYy93bS93bS52YWxhCitAQCAtMTM3LDggKzEzNywxMyBAQCBwdWJsaWMgY2xhc3MgQnVk Z2llV00gOiBNZXRhLlBsdWdpbgorICAgICBwdWJsaWMgc3RhdGljIHN0cmluZ1tdPyBvbGRfYXJn czsKKyAgICAgcHVibGljIHN0YXRpYyBib29sIHdheWxhbmQgPSBmYWxzZTsKKyAKKysjaWYgSEFW RV9NVVRURVJfNgorKyAgICBzdGF0aWMgR3JhcGhlbmUuUG9pbnQgUFZfQ0VOVEVSOworKyAgICBz dGF0aWMgR3JhcGhlbmUuUG9pbnQgUFZfTk9STTsKKysjZWxzZQorICAgICBzdGF0aWMgQ2x1dHRl ci5Qb2ludCBQVl9DRU5URVI7CisgICAgIHN0YXRpYyBDbHV0dGVyLlBvaW50IFBWX05PUk07Cisr I2VuZGlmCisgCisgICAgIHByaXZhdGUgTWV0YS5CYWNrZ3JvdW5kR3JvdXA/IGJhY2tncm91bmRf Z3JvdXA7CisgCitAQCAtMTcxLDEwICsxNzYsMTUgQEAgcHVibGljIGNsYXNzIEJ1ZGdpZVdNIDog TWV0YS5QbHVnaW4KKyAgICAgICAgICAgICBsaWNlbnNlID0gIkdQTC0yLjAiLAorICAgICAgICAg ICAgIGRlc2NyaXB0aW9uID0gIkJ1ZGdpZSBXaW5kb3cgTWFuYWdlciIKKyAgICAgICAgIH07Cisr I2lmIEhBVkVfTVVUVEVSXzYKKysgICAgICAgIFBWX0NFTlRFUiA9IEdyYXBoZW5lLlBvaW50KCk7 CisrICAgICAgICBQVl9OT1JNID0gR3JhcGhlbmUuUG9pbnQoKTsKKysjZWxzZQorICAgICAgICAg UFZfQ0VOVEVSID0gQ2x1dHRlci5Qb2ludC5hbGxvYygpOworKyAgICAgICAgUFZfTk9STSA9IENs dXR0ZXIuUG9pbnQuYWxsb2MoKTsKKysjZW5kaWYKKyAgICAgICAgIFBWX0NFTlRFUi54ID0gMC41 ZjsKKyAgICAgICAgIFBWX0NFTlRFUi55ID0gMC41ZjsKKy0gICAgICAgIFBWX05PUk0gPSBDbHV0 dGVyLlBvaW50LmFsbG9jKCk7CisgICAgICAgICBQVl9OT1JNLnggPSAwLjBmOworICAgICAgICAg UFZfTk9STS55ID0gMC4wZjsKKyAgICAgfQorQEAgLTEwMDEsNyArMTAxMSwxMSBAQCBwdWJsaWMg Y2xhc3MgQnVkZ2llV00gOiBNZXRhLlBsdWdpbgorICAgICAgICAgdGlsZV9wcmV2aWV3LnNldCgi c2NhbGUteCIsIE5PVElGSUNBVElPTl9NQVBfU0NBTEVfWCwgInNjYWxlLXkiLCBOT1RJRklDQVRJ T05fTUFQX1NDQUxFX1ksCisgICAgICAgICAgICAgInBpdm90LXBvaW50IiwgUFZfQ0VOVEVSKTsK KyAKKysjaWYgSEFWRV9NVVRURVJfNgorKyAgICAgICAgLy90aWxlX3ByZXZpZXcubG93ZXIod2lu X2FjdG9yKTsKKysjZWxzZQorICAgICAgICAgdGlsZV9wcmV2aWV3Lmxvd2VyKHdpbl9hY3Rvcik7 CisrI2VuZGlmCisgICAgICAgICB0aWxlX3ByZXZpZXcudGlsZV9yZWN0ID0gdGlsZV9yZWN0Owor IAorICAgICAgICAgdGlsZV9wcmV2aWV3LnNob3coKTsKK2RpZmYgLS1naXQgYS92YXBpL0NsdXR0 ZXItNi5tZXRhZGF0YSBiL3ZhcGkvQ2x1dHRlci02Lm1ldGFkYXRhCituZXcgZmlsZSBtb2RlIDEw MDY0NAoraW5kZXggMDAwMDAwMDAuLjhjMjZhMTIyCistLS0gL2Rldi9udWxsCisrKysgYi92YXBp L0NsdXR0ZXItNi5tZXRhZGF0YQorQEAgLTAsMCArMSwyMDQgQEAKKysvLyBOb24gbWluaS1vYmpl Y3QKKytBY3RvckJveCBzdHJ1Y3QKKytDb2xvciBzdHJ1Y3QKKytGb2cgc3RydWN0CisrR2VvbWV0 cnkgc3RydWN0CisrS25vdCBzdHJ1Y3QKKytQYXRoTm9kZSBzdHJ1Y3QKKytQZXJzcGVjdGl2ZSBz dHJ1Y3QKKytVbml0cyBzdHJ1Y3QKKytWZXJ0ZXggc3RydWN0CisrCisrKi5yZWYgdW5vd25lZAor KworK2luaXQuYXJndiB1bm93bmVkCisraW5pdF93aXRoX2FyZ3MKKysJLmFyZ3YgdW5vd25lZAor K0FjdG9yCisrCS5hcHBseV90cmFuc2Zvcm0ubWF0cml4IHJlZgorKwkuZ2V0X2Fic19hbGxvY2F0 aW9uX3ZlcnRpY2VzLnZlcnRzIG91dD1mYWxzZQorKwkuZ2V0X2FsbG9jYXRpb25fdmVydGljZXMu dmVydHMgb3V0PWZhbHNlCisrQ2FudmFzCisrCS5uZXcgc3ltYm9sX3R5cGU9ImNvbnN0cnVjdG9y IgorK0V2ZW50LnR5cGUjbWV0aG9kIG5hbWU9ImdldF90eXBlIgorK0ltYWdlCisrCS5uZXcgc3lt Ym9sX3R5cGU9ImNvbnN0cnVjdG9yIgorKworKy8vID8/PworK0FjdG9yLmhhc19wb2ludGVyI21l dGhvZCBuYW1lPSJnZXRfaGFzX3BvaW50ZXIiCisrSW5pdEVycm9yIGVycm9yZG9tYWluPWZhbHNl CisrCisrLy8gTm90IGFsbCBiYWNraW5nIHN5bWJvbHMgYXJlIGRlcHJlY2F0ZWQKKytBY3Rvci5w aWNrIGRlcHJlY2F0ZWQ9ZmFsc2UKKysKKysvLyBOdWxsYWJsZSByZXR1cm4gdmFsdWVzCisrQWN0 b3IKKysJLmdldF9wYXJlbnQgbnVsbGFibGUKKyt2YWx1ZV9nZXRfY29sb3IgbnVsbGFibGUKKysK KysvLyBtZXRob2QvdmlydHVhbC1tZXRob2Qvc2lnbmFsIGRvbid0IG1hdGNoCisrQWN0b3IKKysJ LmV2ZW50I21ldGhvZCBuYW1lPSJlbWl0X2V2ZW50IgorKwkuZ2V0X3BhaW50X3ZvbHVtZSNtZXRo b2Qgc2tpcAorKwkucXVldWVfcmVkcmF3I3NpZ25hbCBza2lwCisrCS5xdWV1ZV9yZWRyYXcjdmly dHVhbF9tZXRob2Qgc2tpcAorK0NvbnRhaW5lcgorKwkuYWRkX2FjdG9yIHNraXA9ZmFsc2UKKytU ZXh0CisrCS5hY3RpdmF0ZSNtZXRob2QgbmFtZT0idHJ5X2FjdGl2YXRlIgorKwkuaW5zZXJ0X3Rl eHQjc2lnbmFsIHNraXAKKytUZXh0QnVmZmVyLmdldF90ZXh0I3ZpcnR1YWxfbWV0aG9kIG5hbWU9 ImdldF90ZXh0X3dpdGhfbGVuZ3RoIgorKworKy8vIHZpcnR1YWwvYWJzdHJhY3QgZGlzdGluY3Rp b24KKytDb250YWluZXIKKysJLmxvd2VyIHZpcnR1YWwKKysJLnJhaXNlIHZpcnR1YWwKKysJLipf Y2hpbGRfbWV0YSN2aXJ0dWFsX21ldGhvZCB2aXJ0dWFsCisrCS5mb3JlYWNoX3dpdGhfaW50ZXJu YWxzI3ZpcnR1YWxfbWV0aG9kIHZpcnR1YWwKKysKKysvLyBEZWZhdWx0IHZhbHVlcworK0NvbnRh aW5lcgorKwkubG93ZXIuc2libGluZyBudWxsYWJsZSBkZWZhdWx0PW51bGwKKysJLnJhaXNlLnNp YmxpbmcgbnVsbGFibGUgZGVmYXVsdD1udWxsCisrU3RhZ2UucmVhZF9waXhlbHMKKysJLndpZHRo IGRlZmF1bHQ9LTEKKysJLmhlaWdodCBkZWZhdWx0PS0xCisrVGV4dAorKwkucG9zaXRpb25fdG9f Y29vcmRzLmxpbmVfaGVpZ2h0IGRlZmF1bHQ9bnVsbAorKworKy8vIFJlcGFyZW50ZWQgZnVuY3Mg bWV0aG9kcyBjYW4ndCBiZSBpbnN0YW5jZSBtZXRob2RzCisrZmVhdHVyZV9hdmFpbGFibGUgc2tp cAorK2ZlYXR1cmVfZ2V0X2FsbCBza2lwCisrCisrLy8gU2tpcHBlZCBieSBnLWkgZm9yIHVua25v d24gcmVhc29ucworK0xheW91dE1hbmFnZXIKKysJLmNyZWF0ZV9jaGlsZF9tZXRhIHNraXA9ZmFs c2UKKysKKysvLyBWYXJpYWRpYyBhcmd1bWVudHMKKytBY3RvcgorKwkuYW5pbWF0ZSBza2lwPWZh bHNlCisrCS5hbmltYXRlX3dpdGhfYWxwaGEgc2tpcD1mYWxzZQorKwkuYW5pbWF0ZV93aXRoX3Rp bWVsaW5lIHNraXA9ZmFsc2UKKytCb3gKKysJLnBhY2sgc2tpcD1mYWxzZQorKwkucGFja19hZnRl ciBza2lwPWZhbHNlCisrCS5wYWNrX2F0IHNraXA9ZmFsc2UKKysJLnBhY2tfYmVmb3JlIHNraXA9 ZmFsc2UKKytDb250YWluZXIKKysJLmFkZF92YWxpc3Qgc2tpcD1mYWxzZQorKwkuY2hpbGRfZ2V0 IHNraXA9ZmFsc2UKKysJLmNoaWxkX3NldCBza2lwPWZhbHNlCisrCS5yZW1vdmUgc2tpcD1mYWxz ZQorKwkucmVtb3ZlX3ZhbGlzdCBza2lwPWZhbHNlCisrSW50ZXJ2YWwKKysJLm5ldyBza2lwPWZh bHNlCisrCS5nZXRfaW50ZXJ2YWwgc2tpcD1mYWxzZQorKwkuc2V0X2ZpbmFsIHNraXA9ZmFsc2UK KysJLnNldF9pbml0aWFsIHNraXA9ZmFsc2UKKysJLnNldF9pbnRlcnZhbCBza2lwPWZhbHNlCisr TGF5b3V0TWFuYWdlcgorKwkuY2hpbGRfZ2V0IHNraXA9ZmFsc2UKKysJLmNoaWxkX3NldCBza2lw PWZhbHNlCisrU2NyaXB0CisrCS5nZXRfb2JqZWN0cyBza2lwPWZhbHNlCisrCisrLy8gQ2hhbmdp bmcgZXJyb3IgZG9tYWlucworK1RleHR1cmUKKysJLm5ld19mcm9tX2ZpbGUgdGhyb3dzPSJDbHV0 dGVyLlRleHR1cmVFcnJvciIKKysKKysvLyBTa2lwcGVkIHVwc3RyZWFtIGZvciB1bmtub3duIHJl YXNvbnMKKytBbHBoYS5yZWdpc3Rlcl9mdW5jIHNraXA9ZmFsc2UKKytJbnRlcnZhbC5yZWdpc3Rl cl9wcm9ncmVzc19mdW5jIHNraXA9ZmFsc2UKKytnZXRfb3B0aW9uX2dyb3VwIHNraXA9ZmFsc2UK KytnZXRfb3B0aW9uX2dyb3VwX3dpdGhvdXRfaW5pdCBza2lwPWZhbHNlCisrdGhyZWFkc19hZGRf aWRsZSBza2lwPWZhbHNlCisrdGhyZWFkc19hZGRfaWRsZV9mdWxsIHNraXA9ZmFsc2UKKyt0aHJl YWRzX2FkZF90aW1lb3V0IHNraXA9ZmFsc2UKKyt0aHJlYWRzX2FkZF90aW1lb3V0X2Z1bGwgc2tp cD1mYWxzZQorKworKy8vIHN0cnVjdC9jbGFzcyBjb25mdXNpb24KKytBY3RvckJveAorKwkubmV3 IHNraXAKKysJLmZyb21fdmVydGljZXMgc2tpcAorK1VuaXRzLmZyb21fKiBza2lwCisrQ29sb3IK KysJLm5ldyBza2lwCisrVmVydGV4Lm5ldyBza2lwCisrCisrLy8gQ2xhc3MgbWV0aG9kcworK2Nv bnRhaW5lcl9jbGFzc19maW5kX2NoaWxkX3Byb3BlcnR5IHNraXAKKytjb250YWluZXJfY2xhc3Nf bGlzdF9jaGlsZF9wcm9wZXJ0aWVzIHNraXAKKysKKysvLyBNb3ZlIHN5bWJvbHMKKytnZXRfYWN0 b3JfYnlfZ2lkIHBhcmVudD0iQ2x1dHRlci5BY3RvciIgbmFtZT0iZ2V0X2J5X2dpZCIKKyt1bml0 c19mcm9tXyogc2tpcAorKworKy8vIENsYXNzZXMgbWFya2VkIGFzIG91dCBidXQgbm90IGRvdWJs ZSBwdHIKKytBY3RvcgorKwkuZ2V0X21hcmdpbi5tYXJnaW4gb3V0PWZhbHNlCisrRHJhZ0FjdGlv bgorKwkuZ2V0X2RyYWdfYXJlYS5kcmFnX2FyZWEgb3V0PWZhbHNlCisrSW5wdXREZXZpY2UKKysJ LmdldF9jb29yZHMucG9pbnQgb3V0PWZhbHNlCisrUmVjdAorKwkuZ2V0X2NlbnRlci5jZW50ZXIg b3V0PWZhbHNlCisrCS5pbnRlcnNlY3Rpb24ucmVzIG91dD1mYWxzZQorKwkudW5pb24ucmVzIG91 dD1mYWxzZQorK1RpbWVsaW5lCisrCS5nZXRfY3ViaWNfYmV6aWVyX3Byb2dyZXNzLmNfKiBvdXQ9 ZmFsc2UKKytab29tQWN0aW9uCisrCS5nZXRfZm9jYWxfcG9pbnQucG9pbnQgb3V0PWZhbHNlCisr CS5nZXRfdHJhbnNmb3JtZWRfZm9jYWxfcG9pbnQucG9pbnQgb3V0PWZhbHNlCisrCisrLy8gU3Ry dWN0IHJldHVybiB2YWx1ZXMKKytjb2xvcl9nZXRfc3RhdGljIG51bGxhYmxlCisrCisrLy8gUmVt b3ZlIGZvciBjbHV0dGVyLTIuMAorKy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KKysKKytTdGFn ZQorKyAJLmV2ZW50IG5hbWU9ImVtaXRfZXZlbnQiCisrCisrLy8gKkV2ZW50IHNob3VsZCBiZSBj b21wYWN0IGNsYXNzZXMgZGVyaXZlZCBmcm9tIENsdXR0ZXIuRXZlbnQKKytFdmVudC50eXBlIHNr aXA9ZmFsc2UKKytBbnlFdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50 IgorK0J1dHRvbkV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisr Q3Jvc3NpbmdFdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK0tl eUV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQiCisrTW90aW9uRXZl bnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytTY3JvbGxFdmVudCBz dHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK1N0YWdlU3RhdGVFdmVudCBz dHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK1RvdWNoRXZlbnQgc3RydWN0 PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytUb3VjaHBhZFBpbmNoRXZlbnQgc3Ry dWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytUb3VjaHBhZFN3aXBlRXZlbnQg c3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKysKKysvLyBLZXlzeW1zIHVz ZWQgdG8gYmUgQ0xVVFRFUl9YIGluc3RlYWQgb2YgQ0xVVFRFUl9LRVlfWAorKyojY29uc3RhbnQg c2tpcAorK0NPR0wgc2tpcD1mYWxzZQorK0NVUlJFTlRfVElNRSBza2lwPWZhbHNlCisrRkxBVk9V UiBza2lwPWZhbHNlCisrUEFUSF9SRUxBVElWRSBza2lwPWZhbHNlCisrUFJJT1JJVFlfUkVEUkFX IHNraXA9ZmFsc2UKKysKKysvLyBDbHV0dGVyIGRldnMgZG9uJ3QgbGlrZSB1cyBjcmVhdGluZyBu ZXN0ZWQgbmFtZXNwYWNlcworK3ZhbHVlXyogbmFtZT0idmFsdWVfKC4rKSIgcGFyZW50PSJDbHV0 dGVyLlZhbHVlIgorK3RocmVhZHNfKiBuYW1lPSJ0aHJlYWRzXyguKykiIHBhcmVudD0iQ2x1dHRl ci5UaHJlYWRzIgorK3RocmVhZHNfYWRkX2lkbGUgbmFtZT0iYWRkIiBwYXJlbnQ9IkNsdXR0ZXIu VGhyZWFkcy5JZGxlIgorK3RocmVhZHNfYWRkX2lkbGVfZnVsbCBuYW1lPSJhZGRfZnVsbCIgcGFy ZW50PSJDbHV0dGVyLlRocmVhZHMuSWRsZSIKKyt0aHJlYWRzX2FkZF90aW1lb3V0IG5hbWU9ImFk ZCIgcGFyZW50PSJDbHV0dGVyLlRocmVhZHMuVGltZW91dCIKKyt0aHJlYWRzX2FkZF90aW1lb3V0 X2Z1bGwgbmFtZT0iYWRkX2Z1bGwiIHBhcmVudD0iQ2x1dHRlci5UaHJlYWRzLlRpbWVvdXQiCisr CisrLy8gQmFja3dhcmRzIGNvbXBhdGliaWxpdHkKKytDb2xvci5hbGxvYyBzeW1ib2xfdHlwZT0i ZnVuY3Rpb24iCisrUG9pbnQuYWxsb2Mgc3ltYm9sX3R5cGU9ImZ1bmN0aW9uIgorK1JlY3QuYWxs b2Mgc3ltYm9sX3R5cGU9ImZ1bmN0aW9uIgorK1NpemUuYWxsb2Mgc3ltYm9sX3R5cGU9ImZ1bmN0 aW9uIgorK1ZlcnRleC5hbGxvYyBzeW1ib2xfdHlwZT0iZnVuY3Rpb24iCisrCisrQmluQWxpZ25t ZW50IGRlcHJlY2F0ZWQ9ZmFsc2UgZGVwcmVjYXRlZF9zaW5jZT1udWxsCisrQmluQWxpZ25tZW50 LiogZGVwcmVjYXRlZAorK0JpbkFsaWdubWVudC5zdGFydCBkZXByZWNhdGVkPWZhbHNlCisrQmlu TGF5b3V0Lm5ldy4qX2FsaWduIGRlZmF1bHQ9Q2x1dHRlci5CaW5BbGlnbm1lbnQuU1RBUlQKKysK KysvLyBQb3NzaWJseSBrZWVwCisrS0VZXyogc2tpcD1mYWxzZSBuYW1lPSJLRVlfKC4rKSIgdHlw ZT0idWludCIgcGFyZW50PSJDbHV0dGVyLktleSIKK2RpZmYgLS1naXQgYS92YXBpL0NvZ2wtNi5t ZXRhZGF0YSBiL3ZhcGkvQ29nbC02Lm1ldGFkYXRhCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5k ZXggMDAwMDAwMDAuLjA5MmI1ZTI5CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL0NvZ2wtNi5t ZXRhZGF0YQorQEAgLTAsMCArMSwyNyBAQAorK0NvZ2wgY2hlYWRlcl9maWxlbmFtZT0iY29nbC9j b2dsLmgiCisrCisrQ29sb3Igc3RydWN0CisrICAubmV3IHNraXAKKysgIC5mcmVlIHNraXAKKysK KytjcmVhdGVfcHJvZ3JhbSBza2lwCisrY3JlYXRlX3NoYWRlciBza2lwCisrCisrCisraXNfYml0 bWFwIHNraXAKKytpc19tYXRlcmlhbCBza2lwCisraXNfb2Zmc2NyZWVuIHNraXAKKytpc19wcm9n cmFtIHNraXAKKytpc19zaGFkZXIgc2tpcAorK2lzX3RleHR1cmUgc2tpcAorK2lzX3ZlcnRleF9i dWZmZXIgc2tpcAorKworK01hdHJpeCBzdHJ1Y3QKKysgIC5nZXRfYXJyYXkgYXJyYXk9dHJ1ZSBh cnJheV9sZW5ndGhfaWR4PS0xCisrICAuZ2V0X2ludmVyc2UuaW52ZXJzZSBvdXQ9dHJ1ZQorKyAg Lm11bHRpcGx5IHNraXAKKysgIC5pbml0X2Zyb21fYXJyYXkgc2tpcAorKyAgLmluaXRfaWRlbnRp dHkgc2tpcAorKyAgLnRyYW5zZm9ybV9wb2ludC4qIHJlZj10cnVlCisrCisrcHJvZ3JhbV8qIHNr aXAKK2RpZmYgLS1naXQgYS92YXBpL01ldGEtNi5tZXRhZGF0YSBiL3ZhcGkvTWV0YS02Lm1ldGFk YXRhCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjFkOTg0Nzc4CistLS0g L2Rldi9udWxsCisrKysgYi92YXBpL01ldGEtNi5tZXRhZGF0YQorQEAgLTAsMCArMSw4MCBAQAor K0JhY2tlbmQgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tlbmQuaCIKKytCYWNrZ3Jv dW5kIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZ3JvdW5kLmgiCisrQmFja2dyb3Vu ZEFjdG9yIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZ3JvdW5kLWFjdG9yLmgiCisr QmFja2dyb3VuZEdyb3VwIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZ3JvdW5kLWdy b3VwLmgiCisrQmFja2dyb3VuZEltYWdlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNr Z3JvdW5kLWltYWdlLmgiCisrQmFja2dyb3VuZEltYWdlQ2FjaGUgY2hlYWRlcl9maWxlbmFtZT0i bWV0YS9tZXRhLWJhY2tncm91bmQtaW1hZ2UuaCIKKytCYXJyaWVyIGNoZWFkZXJfZmlsZW5hbWU9 Im1ldGEvYmFycmllci5oIgorK0JhcnJpZXJFdmVudCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2Jh cnJpZXIuaCIKKytDbG9zZURpYWxvZyBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtY2xvc2Ut ZGlhbG9nLmgiCisrQ3Vyc29yVHJhY2tlciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtY3Vy c29yLXRyYWNrZXIuaCIKKytEaXNwbGF5IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvZGlzcGxheS5o IgorK0RuZCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtZG5kLmgiCisrSWRsZU1vbml0b3Ig Y2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWlkbGUtbW9uaXRvci5oIgorK0luaGliaXRTaG9y dGN1dHNEaWFsb2cgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWluaGliaXQtc2hvcnRjdXRz LWRpYWxvZy5oIgorK0xhdW5jaENvbnRleHQgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWxh dW5jaC1jb250ZXh0LmgiCisrTWV0YSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21haW4uaCIKKytN b25pdG9yTWFuYWdlciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtbW9uaXRvci1tYW5hZ2Vy LmgiCisrUHJlZmVyZW5jZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3ByZWZzLmgiCisrUmVtb3Rl QWNjZXNzQ29udHJvbGxlciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtcmVtb3RlLWFjY2Vz cy1jb250cm9sbGVyLmgiCisrUmVtb3RlQWNjZXNzSGFuZGxlIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvbWV0YS1yZW1vdGUtYWNjZXNzLWNvbnRyb2xsZXIuaCIKKytTZXR0aW5ncyBjaGVhZGVyX2Zp bGVuYW1lPSJtZXRhL21ldGEtc2V0dGluZ3MuaCIKKytTaGFkb3dGYWN0b3J5IGNoZWFkZXJfZmls ZW5hbWU9Im1ldGEvbWV0YS1zaGFkb3ctZmFjdG9yeS5oIgorK1NoYXBlZFRleHR1cmUgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS9tZXRhLXNoYXBlZC10ZXh0dXJlLmgiCisrU291bmRQbGF5ZXIgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXNvdW5kLXBsYXllci5oIgorK1N0YWdlIGNoZWFkZXJf ZmlsZW5hbWU9Im1ldGEvbWV0YS1zdGFnZS5oIgorK1N0YXJ0dXBOb3RpZmljYXRpb24gY2hlYWRl cl9maWxlbmFtZT0ibWV0YS9tZXRhLXN0YXJ0dXAtbm90aWZpY2F0aW9uLmgiCisrVGhlbWUgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS90aGVtZS5oIgorK1dpbmRvdyBjaGVhZGVyX2ZpbGVuYW1lPSJt ZXRhL3dpbmRvdy5oIgorK1dpbmRvd0FjdG9yIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS13 aW5kb3ctYWN0b3IuaCIKKytXaW5kb3dHcm91cCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEt d2luZG93LWdyb3VwLmgiCisrV2luZG93U2hhcGUgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRh LXdpbmRvdy1zaGFwZS5oIgorK1dvcmtzcGFjZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3dvcmtz cGFjZS5oIgorK1dvcmtzcGFjZU1hbmFnZXIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXdv cmtzcGFjZS1tYW5hZ2VyLmgiCisrWDExRGlzcGxheSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21l dGEteDExLWRpc3BsYXkuaCIKKytSZWN0YW5nbGUgc3RydWN0CisrUGx1Z2luIGNoZWFkZXJfZmls ZW5hbWU9Im1ldGEvbWV0YS1wbHVnaW4uaCIKKytQbHVnaW5JbmZvIGNoZWFkZXJfZmlsZW5hbWU9 Im1ldGEvbWV0YS1wbHVnaW4uaCIKKytwcmVmc18qIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvcHJl ZnMuaCIgcGFyZW50PSJNZXRhLlByZWZzIgorK2FkZF92ZXJib3NlX3RvcGljIHBhcmVudD0iTWV0 YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt4MTFfZXJyb3JfdHJhcF9w b3AgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3gx MV9lcnJvcl90cmFwX3B1c2ggcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvdXRpbC5oIgorK3gxMV9lcnJvcl90cmFwX3BvcF93aXRoX3JldHVybiBwYXJlbnQ9Ik1ldGEu VXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrZXh0ZXJuYWxfYmluZGluZ19u YW1lX2Zvcl9hY3Rpb24gcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv dXRpbC5oIgorK2dldF9sb2NhbGVfZGlyZWN0aW9uIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVy X2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytncmF2aXR5X3RvX3N0cmluZyBwYXJlbnQ9Ik1ldGEu VXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisraXNfZGVidWdnaW5nIHBhcmVu dD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytpc19zeW5jaW5n IHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytpc192 ZXJib3NlIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIK Kytpc193YXlsYW5kX2NvbXBvc2l0b3IgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5h bWU9Im1ldGEvdXRpbC5oIgorK2xhdGVyX2FkZCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9m aWxlbmFtZT0ibWV0YS91dGlsLmgiCisrbGF0ZXJfcmVtb3ZlIHBhcmVudD0iTWV0YS5VdGlsIiBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytwb3Bfbm9fbXNnX3ByZWZpeCBwYXJlbnQ9 Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrcHVzaF9ub19tc2df cHJlZml4IHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIK KytyZWN0IHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIK KytyZW1vdmVfdmVyYm9zZV90b3BpYyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS91dGlsLmgiCisrdW5zaWduZWRfbG9uZ19lcXVhbCBwYXJlbnQ9Ik1ldGEuVXRpbCIg Y2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrdW5zaWduZWRfbG9uZ19oYXNoIHBhcmVu dD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytzaG93X2RpYWxv ZyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrZ2V0 X3N0YWdlX2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVu YW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZ2V0X3dpbmRvd19hY3RvcnMgcGFyZW50 PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0 ZXIuaCIKKytnZXRfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0YS5Db21wb3Np dG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZ2V0X3Rv cF93aW5kb3dfZ3JvdXBfZm9yX2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFk ZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytnZXRfZmVlZGJhY2tfZ3Jv dXBfZm9yX2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9 Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytkaXNhYmxlX3VucmVkaXJlY3RfZm9yX2Rpc3Bs YXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9z aXRvci1tdXR0ZXIuaCIKKytlbmFibGVfdW5yZWRpcmVjdF9mb3JfZGlzcGxheSBwYXJlbnQ9Ik1l dGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3NpdG9yLW11dHRlci5o IgorK3NldF9zdGFnZV9pbnB1dF9yZWdpb24gcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFk ZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytlbXB0eV9zdGFnZV9pbnB1 dF9yZWdpb24gcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv Y29tcG9zaXRvci1tdXR0ZXIuaCIKKytmb2N1c19zdGFnZV93aW5kb3cgcGFyZW50PSJNZXRhLkNv bXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytr ZXliaW5kaW5nc19zZXRfY3VzdG9tX2hhbmRsZXIgcGFyZW50PSJNZXRhLktleUJpbmRpbmciIG5h bWU9InNldF9jdXN0b21faGFuZGxlciIKKytLZXlIYW5kbGVyRnVuYy5ldmVudCB0eXBlPSJDbHV0 dGVyLktleUV2ZW50PyIKKytnZXRfYmFja2VuZCBwYXJlbnQ9Ik1ldGEuQmFja2VuZCIKKytXaW5k b3cuZm9jdXMjc2lnbmFsIHNraXA9dHJ1ZQorK1dpbmRvdy5nZXRfeHdpbmRvdyBza2lwPWZhbHNl CisrZ2V0X29wdGlvbl9jb250ZXh0IHNraXA9ZmFsc2UKKytzZXRfZ25vbWVfd21fa2V5YmluZGlu Z3Mgc2tpcD1mYWxzZQorK3NldF93bV9uYW1lIHNraXA9ZmFsc2UKKytpbml0IHNraXA9ZmFsc2UK KytydW4gc2tpcD1mYWxzZQorK3Nob3dfZGlhbG9nIHNraXA9ZmFsc2UKKytnZXRfYmFja2VuZCBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtYmFja2VuZC5oIgorZGlmZiAtLWdpdCBhL3ZhcGkv Z3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaSBiL3ZhcGkvZ3JhcGhlbmUtZ29iamVjdC0xLjAudmFw aQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi42OTgwMTUzNQorLS0tIC9k ZXYvbnVsbAorKysrIGIvdmFwaS9ncmFwaGVuZS1nb2JqZWN0LTEuMC52YXBpCitAQCAtMCwwICsx LDY5MSBAQAorKy8qIGdyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkgZ2VuZXJhdGVkIGJ5IHZhcGln ZW4sIGRvIG5vdCBtb2RpZnkuICovCisrCisrW0NDb2RlIChjcHJlZml4ID0gIkdyYXBoZW5lIiwg Z2lyX25hbWVzcGFjZSA9ICJHcmFwaGVuZSIsIGdpcl92ZXJzaW9uID0gIjEuMCIsIGxvd2VyX2Nh c2VfY3ByZWZpeCA9ICJncmFwaGVuZV8iKV0KKytuYW1lc3BhY2UgR3JhcGhlbmUgeworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3Jh cGhlbmVfYm94X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX2JveF9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdHJ1Y3QgQm94IHsKKysJCXB1Ymxp YyBib29sIGNvbnRhaW5zX2JveCAoR3JhcGhlbmUuQm94IGIpOworKwkJcHVibGljIGJvb2wgY29u dGFpbnNfcG9pbnQgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJcHVibGljIHN0YXRpYyB1 bm93bmVkIEdyYXBoZW5lLkJveD8gZW1wdHkgKCk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3Jh cGhlbmUuQm94IGIpOworKwkJcHVibGljIEdyYXBoZW5lLkJveCBleHBhbmQgKEdyYXBoZW5lLlBv aW50M0QgcG9pbnQpOworKwkJcHVibGljIEdyYXBoZW5lLkJveCBleHBhbmRfc2NhbGFyIChmbG9h dCBzY2FsYXIpOworKwkJcHVibGljIEdyYXBoZW5lLkJveCBleHBhbmRfdmVjMyAoR3JhcGhlbmUu VmVjMyB2ZWMpOworKwkJcHVibGljIEdyYXBoZW5lLlNwaGVyZSBnZXRfYm91bmRpbmdfc3BoZXJl ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X2NlbnRlciAoKTsKKysJCXB1Ymxp YyBmbG9hdCBnZXRfZGVwdGggKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2hlaWdodCAoKTsKKysJ CXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9tYXggKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUu UG9pbnQzRCBnZXRfbWluICgpOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X3NpemUgKCk7 CisrCQlwdWJsaWMgdm9pZCBnZXRfdmVydGljZXMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFs c2UpXSByZWYgR3JhcGhlbmUuVmVjMyB2ZXJ0aWNlc1s4XSk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0 X3dpZHRoICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gaW5maW5p dGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGluaXQgKEdyYXBoZW5lLlBv aW50M0Q/IG1pbiwgR3JhcGhlbmUuUG9pbnQzRD8gbWF4KTsKKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLkJveD8gaW5pdF9mcm9tX2JveCAoR3JhcGhlbmUuQm94IHNyYyk7CisrCQlwdWJsaWMg dW5vd25lZCBHcmFwaGVuZS5Cb3g/IGluaXRfZnJvbV9wb2ludHMgKFtDQ29kZSAoYXJyYXlfbGVu Z3RoX2NuYW1lID0gIm5fcG9pbnRzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVu Z3RoX3R5cGUgPSAiZ3VpbnQiKV0gR3JhcGhlbmUuUG9pbnQzRFtdIHBvaW50cyk7CisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGluaXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMzPyBt aW4sIEdyYXBoZW5lLlZlYzM/IG1heCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/ IGluaXRfZnJvbV92ZWN0b3JzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3ZlY3Rv cnMiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIp XSBHcmFwaGVuZS5WZWMzW10gdmVjdG9ycyk7CisrCQlwdWJsaWMgYm9vbCBpbnRlcnNlY3Rpb24g KEdyYXBoZW5lLkJveCBiLCBvdXQgR3JhcGhlbmUuQm94IHJlcyk7CisrCQlwdWJsaWMgc3RhdGlj IHVub3duZWQgR3JhcGhlbmUuQm94PyBtaW51c19vbmUgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVu b3duZWQgR3JhcGhlbmUuQm94PyBvbmUgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3Jh cGhlbmUuQm94PyBvbmVfbWludXNfb25lICgpOworKwkJcHVibGljIEdyYXBoZW5lLkJveCB1bmlv biAoR3JhcGhlbmUuQm94IGIpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJv eD8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUt Z29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfZXVsZXJfdCIsIHR5cGVfaWQgPSAiZ3JhcGhl bmVfZXVsZXJfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlw dWJsaWMgc3RydWN0IEV1bGVyIHsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5FdWxl ciBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0 X2FscGhhICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9h dCBnZXRfYmV0YSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg ZmxvYXQgZ2V0X2dhbW1hICgpOworKwkJcHVibGljIEdyYXBoZW5lLkV1bGVyT3JkZXIgZ2V0X29y ZGVyICgpOworKwkJcHVibGljIGZsb2F0IGdldF94ICgpOworKwkJcHVibGljIGZsb2F0IGdldF95 ICgpOworKwkJcHVibGljIGZsb2F0IGdldF96ICgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuRXVsZXI/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuRXVsZXI/IGluaXRfZnJvbV9ldWxlciAoR3JhcGhlbmUuRXVsZXI/IHNy Yyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF9mcm9tX21hdHJpeCAo R3JhcGhlbmUuTWF0cml4PyBtLCBHcmFwaGVuZS5FdWxlck9yZGVyIG9yZGVyKTsKKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X2Zyb21fcXVhdGVybmlvbiAoR3JhcGhlbmUu UXVhdGVybmlvbj8gcSwgR3JhcGhlbmUuRXVsZXJPcmRlciBvcmRlcik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRXVsZXI/IGluaXRf ZnJvbV9yYWRpYW5zIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6LCBHcmFwaGVuZS5FdWxlck9y ZGVyIG9yZGVyKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X2Zyb21f dmVjMyAoR3JhcGhlbmUuVmVjMz8gdiwgR3JhcGhlbmUuRXVsZXJPcmRlciBvcmRlcik7CisrCQlw dWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF93aXRoX29yZGVyIChmbG9hdCB4LCBm bG9hdCB5LCBmbG9hdCB6LCBHcmFwaGVuZS5FdWxlck9yZGVyIG9yZGVyKTsKKysJCXB1YmxpYyBH cmFwaGVuZS5FdWxlciByZW9yZGVyIChHcmFwaGVuZS5FdWxlck9yZGVyIG9yZGVyKTsKKysJCXB1 YmxpYyBHcmFwaGVuZS5NYXRyaXggdG9fbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIHRvX3F1YXRlcm5pb24gKCk7 CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyB0b192ZWMzICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9m cnVzdHVtX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX2ZydXN0dW1fZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgc3RydWN0IEZydXN0dW0geworKwkJ cHVibGljIGJvb2wgY29udGFpbnNfcG9pbnQgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5l LkZydXN0dW0gYik7CisrCQlwdWJsaWMgdm9pZCBnZXRfcGxhbmVzIChbQ0NvZGUgKGFycmF5X2xl bmd0aCA9IGZhbHNlKV0gcmVmIEdyYXBoZW5lLlBsYW5lIHBsYW5lc1s2XSk7CisrCQlwdWJsaWMg dW5vd25lZCBHcmFwaGVuZS5GcnVzdHVtPyBpbml0IChHcmFwaGVuZS5QbGFuZSBwMCwgR3JhcGhl bmUuUGxhbmUgcDEsIEdyYXBoZW5lLlBsYW5lIHAyLCBHcmFwaGVuZS5QbGFuZSBwMywgR3JhcGhl bmUuUGxhbmUgcDQsIEdyYXBoZW5lLlBsYW5lIHA1KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLkZydXN0dW0/IGluaXRfZnJvbV9mcnVzdHVtIChHcmFwaGVuZS5GcnVzdHVtIHNyYyk7Cisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5GcnVzdHVtPyBpbml0X2Zyb21fbWF0cml4IChHcmFw aGVuZS5NYXRyaXggbWF0cml4KTsKKysJCXB1YmxpYyBib29sIGludGVyc2VjdHNfYm94IChHcmFw aGVuZS5Cb3ggYm94KTsKKysJCXB1YmxpYyBib29sIGludGVyc2VjdHNfc3BoZXJlIChHcmFwaGVu ZS5TcGhlcmUgc3BoZXJlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3Jh cGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfbWF0cml4X3QiLCB0eXBlX2lkID0g ImdyYXBoZW5lX21hdHJpeF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgc3RydWN0IE1hdHJpeCB7 CisrCQlwdWJsaWMgYm9vbCBkZWNvbXBvc2UgKG91dCBHcmFwaGVuZS5WZWMzIHRyYW5zbGF0ZSwg b3V0IEdyYXBoZW5lLlZlYzMgc2NhbGUsIG91dCBHcmFwaGVuZS5RdWF0ZXJuaW9uIHJvdGF0ZSwg b3V0IEdyYXBoZW5lLlZlYzMgc2hlYXIsIG91dCBHcmFwaGVuZS5WZWM0IHBlcnNwZWN0aXZlKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBkZXRlcm1pbmFu dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBlcXVh bCAoR3JhcGhlbmUuTWF0cml4IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBib29sIGVxdWFsX2Zhc3QgKEdyYXBoZW5lLk1hdHJpeCBiKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IGdldF9yb3cgKHVpbnQg aW5kZXhfKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBn ZXRfdmFsdWUgKHVpbnQgcm93LCB1aW50IGNvbCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3hfc2NhbGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF94X3RyYW5zbGF0aW9uICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF95X3NjYWxlICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfeV90cmFu c2xhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9h dCBnZXRfel9zY2FsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgZmxvYXQgZ2V0X3pfdHJhbnNsYXRpb24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfZnJvbV8yZCAoZG91 YmxlIHh4LCBkb3VibGUgeXgsIGRvdWJsZSB4eSwgZG91YmxlIHl5LCBkb3VibGUgeF8wLCBkb3Vi bGUgeV8wKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9mcm9tX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9 IGZhbHNlKV0gZmxvYXQgdlsxNl0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X2Zyb21fbWF0cml4IChHcmFwaGVu ZS5NYXRyaXggc3JjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9mcm9tX3ZlYzQgKEdyYXBoZW5lLlZlYzQgdjAs IEdyYXBoZW5lLlZlYzQgdjEsIEdyYXBoZW5lLlZlYzQgdjIsIEdyYXBoZW5lLlZlYzQgdjMpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu TWF0cml4PyBpbml0X2ZydXN0dW0gKGZsb2F0IGxlZnQsIGZsb2F0IHJpZ2h0LCBmbG9hdCBib3R0 b20sIGZsb2F0IHRvcCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRf aWRlbnRpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfbG9va19hdCAoR3JhcGhlbmUuVmVjMyBleWUsIEdy YXBoZW5lLlZlYzMgY2VudGVyLCBHcmFwaGVuZS5WZWMzIHVwKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9vcnRo byAoZmxvYXQgbGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0IHRvcCwgZmxvYXQgYm90dG9tLCBmbG9h dCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9wZXJzcGVjdGl2ZSAoZmxvYXQg Zm92eSwgZmxvYXQgYXNwZWN0LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8g aW5pdF9yb3RhdGUgKGZsb2F0IGFuZ2xlLCBHcmFwaGVuZS5WZWMzIGF4aXMpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBp bml0X3NjYWxlIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9za2V3 IChmbG9hdCB4X3NrZXcsIGZsb2F0IHlfc2tldyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfdHJhbnNsYXRlIChH cmFwaGVuZS5Qb2ludDNEIHApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIEdyYXBoZW5lLk1hdHJpeCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuTWF0cml4IGIsIGRvdWJs ZSBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wg aW52ZXJzZSAob3V0IEdyYXBoZW5lLk1hdHJpeCByZXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIGJvb2wgaXNfMmQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgYm9vbCBpc19iYWNrZmFjZV92aXNpYmxlICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgaXNfaWRlbnRpdHkgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBpc19zaW5ndWxhciAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5NYXRyaXgg bXVsdGlwbHkgKEdyYXBoZW5lLk1hdHJpeCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5NYXRyaXggYiwgZmxvYXQgZXBzaWxv bik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0 cml4IG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5NYXRyaXggcGVyc3BlY3RpdmUgKGZsb2F0IGRlcHRoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHByaW50ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IHByb2plY3RfcG9pbnQg KEdyYXBoZW5lLlBvaW50IHApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlF1YWQgcHJvamVjdF9yZWN0IChHcmFwaGVuZS5SZWN0IHIpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgcHJvamVjdF9y ZWN0X2JvdW5kcyAoR3JhcGhlbmUuUmVjdCByKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZSAoZmxvYXQgYW5nbGUsIEdyYXBoZW5lLlZlYzMgYXhp cyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVf ZXVsZXIgKEdyYXBoZW5lLkV1bGVyIGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQor KwkJcHVibGljIHZvaWQgcm90YXRlX3F1YXRlcm5pb24gKEdyYXBoZW5lLlF1YXRlcm5pb24gcSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVfeCAo ZmxvYXQgYW5nbGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZv aWQgcm90YXRlX3kgKGZsb2F0IGFuZ2xlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyB2b2lkIHJvdGF0ZV96IChmbG9hdCBhbmdsZSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzY2FsZSAoZmxvYXQgZmFjdG9yX3gsIGZsb2F0 IGZhY3Rvcl95LCBmbG9hdCBmYWN0b3Jfeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdm9pZCBza2V3X3h5IChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2tld194eiAoZmxvYXQgZmFjdG9yKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNrZXdfeXogKGZsb2F0 IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCB0 b18yZCAob3V0IGRvdWJsZSB4eCwgb3V0IGRvdWJsZSB5eCwgb3V0IGRvdWJsZSB4eSwgb3V0IGRv dWJsZSB5eSwgb3V0IGRvdWJsZSB4XzAsIG91dCBkb3VibGUgeV8wKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHRvX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xl bmd0aCA9IGZhbHNlKV0gcmVmIGZsb2F0IHZbMTZdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHRyYW5zZm9ybV9ib3VuZHMgKEdyYXBoZW5l LlJlY3Qgcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgR3JhcGhl bmUuQm94IHRyYW5zZm9ybV9ib3ggKEdyYXBoZW5lLkJveCBiKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCB0cmFuc2Zvcm1fcG9pbnQgKEdy YXBoZW5lLlBvaW50IHApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlBvaW50M0QgdHJhbnNmb3JtX3BvaW50M2QgKEdyYXBoZW5lLlBvaW50M0QgcCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmF5IHRy YW5zZm9ybV9yYXkgKEdyYXBoZW5lLlJheSByKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWFkIHRyYW5zZm9ybV9yZWN0IChHcmFwaGVuZS5SZWN0 IHIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlNw aGVyZSB0cmFuc2Zvcm1fc3BoZXJlIChHcmFwaGVuZS5TcGhlcmUgcyk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyB0cmFuc2Zvcm1fdmVjMyAo R3JhcGhlbmUuVmVjMyB2KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBHcmFwaGVuZS5WZWM0IHRyYW5zZm9ybV92ZWM0IChHcmFwaGVuZS5WZWM0IHYpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgdHJhbnNsYXRlIChHcmFwaGVu ZS5Qb2ludDNEIHBvcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg R3JhcGhlbmUuTWF0cml4IHRyYW5zcG9zZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHVucHJvamVjdF9wb2ludDNkIChHcmFwaGVu ZS5NYXRyaXggbW9kZWx2aWV3LCBHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHVudHJhbnNmb3JtX2Jv dW5kcyAoR3JhcGhlbmUuUmVjdCByLCBHcmFwaGVuZS5SZWN0IGJvdW5kcyk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCB1bnRyYW5zZm9ybV9wb2ludCAoR3Jh cGhlbmUuUG9pbnQgcCwgR3JhcGhlbmUuUmVjdCBib3VuZHMsIG91dCBHcmFwaGVuZS5Qb2ludCBy ZXMpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0 LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9wbGFuZV90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9wbGFu ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBz dHJ1Y3QgUGxhbmUgeworKwkJcHVibGljIGZsb2F0IGRpc3RhbmNlIChHcmFwaGVuZS5Qb2ludDNE IHBvaW50KTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5QbGFuZSBiKTsKKysJCXB1 YmxpYyBmbG9hdCBnZXRfY29uc3RhbnQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBnZXRf bm9ybWFsICgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUGxhbmU/IGluaXQgKEdyYXBo ZW5lLlZlYzM/IG5vcm1hbCwgZmxvYXQgY29uc3RhbnQpOworKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuUGxhbmU/IGluaXRfZnJvbV9wbGFuZSAoR3JhcGhlbmUuUGxhbmUgc3JjKTsKKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBsYW5lPyBpbml0X2Zyb21fcG9pbnQgKEdyYXBoZW5lLlZl YzMgbm9ybWFsLCBHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLlBsYW5lPyBpbml0X2Zyb21fcG9pbnRzIChHcmFwaGVuZS5Qb2ludDNEIGEsIEdyYXBo ZW5lLlBvaW50M0QgYiwgR3JhcGhlbmUuUG9pbnQzRCBjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLlBsYW5lPyBpbml0X2Zyb21fdmVjNCAoR3JhcGhlbmUuVmVjNCBzcmMpOworKwkJcHVi bGljIEdyYXBoZW5lLlBsYW5lIG5lZ2F0ZSAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5QbGFuZSBu b3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdy YXBoZW5lLlBsYW5lIHRyYW5zZm9ybSAoR3JhcGhlbmUuTWF0cml4IG1hdHJpeCwgR3JhcGhlbmUu TWF0cml4PyBub3JtYWxfbWF0cml4KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcG9pbnRfdCIsIHR5cGVf aWQgPSAiZ3JhcGhlbmVfcG9pbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFBvaW50IHsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJ cHVibGljIGZsb2F0IHk7CisrCQlwdWJsaWMgZmxvYXQgZGlzdGFuY2UgKEdyYXBoZW5lLlBvaW50 IGIsIG91dCBmbG9hdCBkX3gsIG91dCBmbG9hdCBkX3kpOworKwkJcHVibGljIGJvb2wgZXF1YWwg KEdyYXBoZW5lLlBvaW50IGIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQ/IGlu aXQgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQ/ IGluaXRfZnJvbV9wb2ludCAoR3JhcGhlbmUuUG9pbnQgc3JjKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50PyBpbml0X2Zyb21f dmVjMiAoR3JhcGhlbmUuVmVjMiBzcmMpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IGludGVy cG9sYXRlIChHcmFwaGVuZS5Qb2ludCBiLCBkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyBib29s IG5lYXIgKEdyYXBoZW5lLlBvaW50IGIsIGZsb2F0IGVwc2lsb24pOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgdG9fdmVjMiAoKTsKKysJCXB1 YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludD8gemVybyAoKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3Jh cGhlbmVfcG9pbnQzZF90IiwgbG93ZXJfY2FzZV9jc3VmZml4ID0gInBvaW50M2QiLCB0eXBlX2lk ID0gImdyYXBoZW5lX3BvaW50M2RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFBvaW50M0QgeworKwkJcHVibGljIGZsb2F0IHg7Cisr CQlwdWJsaWMgZmxvYXQgeTsKKysJCXB1YmxpYyBmbG9hdCB6OworKwkJcHVibGljIEdyYXBoZW5l LlBvaW50M0QgY3Jvc3MgKEdyYXBoZW5lLlBvaW50M0QgYik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCQlwdWJsaWMgZmxvYXQgZGlzdGFuY2UgKEdyYXBoZW5lLlBvaW50M0QgYiwg b3V0IEdyYXBoZW5lLlZlYzMgZGVsdGEpOworKwkJcHVibGljIGZsb2F0IGRvdCAoR3JhcGhlbmUu UG9pbnQzRCBiKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5Qb2ludDNEIGIpOwor KwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQzRD8gaW5pdCAoZmxvYXQgeCwgZmxvYXQg eSwgZmxvYXQgeik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludDNEPyBpbml0X2Zy b21fcG9pbnQgKEdyYXBoZW5lLlBvaW50M0Qgc3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLlBvaW50M0Q/IGluaXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMzIHYpOworKwkJcHVibGlj IEdyYXBoZW5lLlBvaW50M0QgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlBvaW50M0QgYiwgZG91Ymxl IGZhY3Rvcik7CisrCQlwdWJsaWMgZmxvYXQgbGVuZ3RoICgpOworKwkJcHVibGljIGJvb2wgbmVh ciAoR3JhcGhlbmUuUG9pbnQzRCBiLCBmbG9hdCBlcHNpbG9uKTsKKysJCXB1YmxpYyBHcmFwaGVu ZS5Qb2ludDNEIG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIG5vcm1hbGl6ZV92aWV3cG9ydCAoR3JhcGhlbmUuUmVj dCB2aWV3cG9ydCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlwdWJsaWMgR3JhcGhl bmUuUG9pbnQzRCBzY2FsZSAoZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMz IHRvX3ZlYzMgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQzRD8g emVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29i amVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcXVhZF90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9x dWFkX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGlj IHN0cnVjdCBRdWFkIHsKKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IGJvdW5kcyAoKTsKKysJCXB1 YmxpYyBib29sIGNvbnRhaW5zIChHcmFwaGVuZS5Qb2ludCBwKTsKKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLlBvaW50PyBnZXRfcG9pbnQgKHVpbnQgaW5kZXhfKTsKKysJCXB1YmxpYyB1bm93 bmVkIEdyYXBoZW5lLlF1YWQ/IGluaXQgKEdyYXBoZW5lLlBvaW50IHAxLCBHcmFwaGVuZS5Qb2lu dCBwMiwgR3JhcGhlbmUuUG9pbnQgcDMsIEdyYXBoZW5lLlBvaW50IHA0KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YWQ/IGluaXRf ZnJvbV9wb2ludHMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBHcmFwaGVuZS5Qb2lu dCBwb2ludHNbNF0pOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhZD8gaW5pdF9mcm9t X3JlY3QgKEdyYXBoZW5lLlJlY3Qgcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3F1YXRlcm5pb25fdCIs IHR5cGVfaWQgPSAiZ3JhcGhlbmVfcXVhdGVybmlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUXVhdGVybmlvbiB7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gYWRk IChHcmFwaGVuZS5RdWF0ZXJuaW9uIGIpOworKwkJcHVibGljIGZsb2F0IGRvdCAoR3JhcGhlbmUu UXVhdGVybmlvbiBiKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5RdWF0ZXJuaW9u IGIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdCAoZmxvYXQg eCwgZmxvYXQgeSwgZmxvYXQgeiwgZmxvYXQgdyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVu ZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21fYW5nbGVfdmVjMyAoZmxvYXQgYW5nbGUsIEdyYXBoZW5l LlZlYzMgYXhpcyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0 X2Zyb21fYW5nbGVzIChmbG9hdCBkZWdfeCwgZmxvYXQgZGVnX3ksIGZsb2F0IGRlZ196KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1 YXRlcm5pb24/IGluaXRfZnJvbV9ldWxlciAoR3JhcGhlbmUuRXVsZXIgZSk7CisrCQlwdWJsaWMg dW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21fbWF0cml4IChHcmFwaGVuZS5N YXRyaXggbSk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0X2Zy b21fcXVhdGVybmlvbiAoR3JhcGhlbmUuUXVhdGVybmlvbiBzcmMpOworKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX3JhZGlhbnMgKGZsb2F0IHJhZF94LCBm bG9hdCByYWRfeSwgZmxvYXQgcmFkX3opOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVh dGVybmlvbj8gaW5pdF9mcm9tX3ZlYzQgKEdyYXBoZW5lLlZlYzQgc3JjKTsKKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfaWRlbnRpdHkgKCk7CisrCQlwdWJsaWMg R3JhcGhlbmUuUXVhdGVybmlvbiBpbnZlcnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gbXVsdGlwbHkgKEdyYXBoZW5lLlF1 YXRlcm5pb24gYik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVybmlvbiBub3JtYWxpemUgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlF1YXRl cm5pb24gc2NhbGUgKGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVybmlv biBzbGVycCAoR3JhcGhlbmUuUXVhdGVybmlvbiBiLCBmbG9hdCBmYWN0b3IpOworKwkJcHVibGlj IHZvaWQgdG9fYW5nbGVfdmVjMyAob3V0IGZsb2F0IGFuZ2xlLCBvdXQgR3JhcGhlbmUuVmVjMyBh eGlzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHRvX2Fu Z2xlcyAob3V0IGZsb2F0IGRlZ194LCBvdXQgZmxvYXQgZGVnX3ksIG91dCBmbG9hdCBkZWdfeik7 CisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IHRvX21hdHJpeCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHRvX3JhZGlhbnMgKG91dCBmbG9hdCByYWRf eCwgb3V0IGZsb2F0IHJhZF95LCBvdXQgZmxvYXQgcmFkX3opOworKwkJcHVibGljIEdyYXBoZW5l LlZlYzQgdG9fdmVjNCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3Jh cGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcmF5X3QiLCB0eXBlX2lkID0gImdy YXBoZW5lX3JheV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CXB1YmxpYyBzdHJ1Y3QgUmF5IHsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5SYXkg Yik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfY2xvc2VzdF9wb2ludF90b19wb2lu dCAoR3JhcGhlbmUuUG9pbnQzRCBwKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGdldF9kaXJl Y3Rpb24gKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2Rpc3RhbmNlX3RvX3BsYW5lIChHcmFwaGVu ZS5QbGFuZSBwKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfZGlzdGFuY2VfdG9fcG9pbnQgKEdyYXBo ZW5lLlBvaW50M0QgcCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfb3JpZ2luICgp OworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X3Bvc2l0aW9uX2F0IChmbG9hdCB0KTsK KysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJheT8gaW5pdCAoR3JhcGhlbmUuUG9pbnQzRD8g b3JpZ2luLCBHcmFwaGVuZS5WZWMzPyBkaXJlY3Rpb24pOworKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuUmF5PyBpbml0X2Zyb21fcmF5IChHcmFwaGVuZS5SYXkgc3JjKTsKKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLlJheT8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzM/IG9yaWdp biwgR3JhcGhlbmUuVmVjMz8gZGlyZWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmF5SW50ZXJzZWN0aW9uS2luZCBpbnRlcnNlY3RfYm94 IChHcmFwaGVuZS5Cb3ggYiwgb3V0IGZsb2F0IHRfb3V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmF5SW50ZXJzZWN0aW9uS2luZCBpbnRlcnNl Y3Rfc3BoZXJlIChHcmFwaGVuZS5TcGhlcmUgcywgb3V0IGZsb2F0IHRfb3V0KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmF5SW50ZXJzZWN0aW9u S2luZCBpbnRlcnNlY3RfdHJpYW5nbGUgKEdyYXBoZW5lLlRyaWFuZ2xlIHQsIG91dCBmbG9hdCB0 X291dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgaW50 ZXJzZWN0c19ib3ggKEdyYXBoZW5lLkJveCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgYm9vbCBpbnRlcnNlY3RzX3NwaGVyZSAoR3JhcGhlbmUuU3BoZXJlIHMp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGludGVyc2Vj dHNfdHJpYW5nbGUgKEdyYXBoZW5lLlRyaWFuZ2xlIHQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9yZWN0 X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3JlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFJlY3QgeworKwkJcHVibGljIEdyYXBo ZW5lLlBvaW50IG9yaWdpbjsKKysJCXB1YmxpYyBHcmFwaGVuZS5TaXplIHNpemU7CisrCQlwdWJs aWMgc3RhdGljIEdyYXBoZW5lLlJlY3Q/IGFsbG9jICgpOworKwkJcHVibGljIGJvb2wgY29udGFp bnNfcG9pbnQgKEdyYXBoZW5lLlBvaW50IHApOworKwkJcHVibGljIGJvb2wgY29udGFpbnNfcmVj dCAoR3JhcGhlbmUuUmVjdCBiKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5SZWN0 IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJl Y3QgZXhwYW5kIChHcmFwaGVuZS5Qb2ludCBwKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2FyZWEgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9p bnQgZ2V0X2JvdHRvbV9sZWZ0ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IGdldF9ib3R0 b21fcmlnaHQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgZ2V0X2NlbnRlciAoKTsKKysJ CXB1YmxpYyBmbG9hdCBnZXRfaGVpZ2h0ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IGdl dF90b3BfbGVmdCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRfdG9wX3JpZ2h0ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3ZlcnRp Y2VzIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIEdyYXBoZW5lLlZlYzIgdmVy dGljZXNbNF0pOworKwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJCXB1YmxpYyBmbG9h dCBnZXRfeCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLlJlY3Q/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHdpZHRoLCBmbG9h dCBoZWlnaHQpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8gaW5pdF9mcm9tX3Jl Y3QgKEdyYXBoZW5lLlJlY3Qgc3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJlY3Q/ IGluc2V0IChmbG9hdCBkX3gsIGZsb2F0IGRfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBpbnNldF9yIChmbG9hdCBkX3gsIGZsb2F0IGRf eSk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuUmVjdCBi LCBkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyBib29sIGludGVyc2VjdGlvbiAoR3JhcGhlbmUu UmVjdCBiLCBvdXQgR3JhcGhlbmUuUmVjdCByZXMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuUmVjdD8gbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlJlY3Qgbm9ybWFsaXplX3IgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBH cmFwaGVuZS5SZWN0PyBvZmZzZXQgKGZsb2F0IGRfeCwgZmxvYXQgZF95KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IG9mZnNldF9yIChmbG9h dCBkX3gsIGZsb2F0IGRfeSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5l LlJlY3Qgcm91bmQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlJlY3Qgcm91bmRfZXh0ZW50cyAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjQiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJlY3Q/IHJvdW5kX3RvX3BpeGVsICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHNjYWxlIChmbG9h dCBzX2gsIGZsb2F0IHNfdik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCB1bmlvbiAoR3JhcGhl bmUuUmVjdCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyB6ZXJvICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9zaW1k NGZfdCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFNpbWQ0RiB7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNu YW1lID0gImdyYXBoZW5lX3NpbWQ0eDRmX3QiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVi bGljIHN0cnVjdCBTaW1kNFg0RiB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3NpemVfdCIsIHR5cGVfaWQg PSAiZ3JhcGhlbmVfc2l6ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCXB1YmxpYyBzdHJ1Y3QgU2l6ZSB7CisrCQlwdWJsaWMgZmxvYXQgd2lkdGg7CisrCQlw dWJsaWMgZmxvYXQgaGVpZ2h0OworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlNpemUg Yik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5TaXplPyBpbml0IChmbG9hdCB3aWR0aCwg ZmxvYXQgaGVpZ2h0KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlNpemU/IGluaXRfZnJv bV9zaXplIChHcmFwaGVuZS5TaXplIHNyYyk7CisrCQlwdWJsaWMgR3JhcGhlbmUuU2l6ZSBpbnRl cnBvbGF0ZSAoR3JhcGhlbmUuU2l6ZSBiLCBkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyBHcmFw aGVuZS5TaXplIHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IEdyYXBoZW5lLlNpemU/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3NwaGVyZV90IiwgdHlw ZV9pZCA9ICJncmFwaGVuZV9zcGhlcmVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMiIpXQorKwlwdWJsaWMgc3RydWN0IFNwaGVyZSB7CisrCQlwdWJsaWMgYm9vbCBjb250 YWluc19wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJsaWMgZmxvYXQgZGlz dGFuY2UgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdy YXBoZW5lLlNwaGVyZSBiKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Cb3ggZ2V0X2JvdW5kaW5nX2Jv eCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9jZW50ZXIgKCk7CisrCQlwdWJs aWMgZmxvYXQgZ2V0X3JhZGl1cyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlNwaGVy ZT8gaW5pdCAoR3JhcGhlbmUuUG9pbnQzRD8gY2VudGVyLCBmbG9hdCByYWRpdXMpOworKwkJcHVi bGljIHVub3duZWQgR3JhcGhlbmUuU3BoZXJlPyBpbml0X2Zyb21fcG9pbnRzIChbQ0NvZGUgKGFy cmF5X2xlbmd0aF9jbmFtZSA9ICJuX3BvaW50cyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUsIGFy cmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIEdyYXBoZW5lLlBvaW50M0RbXSBwb2ludHMsIEdy YXBoZW5lLlBvaW50M0Q/IGNlbnRlcik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5TcGhl cmU/IGluaXRfZnJvbV92ZWN0b3JzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3Zl Y3RvcnMiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWlu dCIpXSBHcmFwaGVuZS5WZWMzW10gdmVjdG9ycywgR3JhcGhlbmUuUG9pbnQzRD8gY2VudGVyKTsK KysJCXB1YmxpYyBib29sIGlzX2VtcHR5ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlNwaGVyZSB0 cmFuc2xhdGUgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV90cmlh bmdsZV90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV90cmlhbmdsZV9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdHJ1Y3QgVHJpYW5nbGUgeworKwkJ cHVibGljIGJvb2wgY29udGFpbnNfcG9pbnQgKEdyYXBoZW5lLlBvaW50M0QgcCk7CisrCQlwdWJs aWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuVHJpYW5nbGUgYik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0 X2FyZWEgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfYmFyeWNvb3JkcyAoR3JhcGhlbmUuUG9pbnQz RD8gcCwgb3V0IEdyYXBoZW5lLlZlYzIgcmVzKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Cb3ggZ2V0 X2JvdW5kaW5nX2JveCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9taWRwb2lu dCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGdldF9ub3JtYWwgKCk7CisrCQlwdWJsaWMg R3JhcGhlbmUuUGxhbmUgZ2V0X3BsYW5lICgpOworKwkJcHVibGljIHZvaWQgZ2V0X3BvaW50cyAo b3V0IEdyYXBoZW5lLlBvaW50M0QgYSwgb3V0IEdyYXBoZW5lLlBvaW50M0QgYiwgb3V0IEdyYXBo ZW5lLlBvaW50M0QgYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IGJvb2wgZ2V0X3V2IChHcmFwaGVuZS5Qb2ludDNEPyBwLCBHcmFwaGVuZS5WZWMyIHV2X2EsIEdy YXBoZW5lLlZlYzIgdXZfYiwgR3JhcGhlbmUuVmVjMiB1dl9jLCBvdXQgR3JhcGhlbmUuVmVjMiBy ZXMpOworKwkJcHVibGljIHZvaWQgZ2V0X3ZlcnRpY2VzIChvdXQgR3JhcGhlbmUuVmVjMyBhLCBv dXQgR3JhcGhlbmUuVmVjMyBiLCBvdXQgR3JhcGhlbmUuVmVjMyBjKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5UcmlhbmdsZT8gaW5p dF9mcm9tX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgYVszXSwg W0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IGJbM10sIFtDQ29kZSAoYXJyYXlf bGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBjWzNdKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5l LlRyaWFuZ2xlPyBpbml0X2Zyb21fcG9pbnQzZCAoR3JhcGhlbmUuUG9pbnQzRD8gYSwgR3JhcGhl bmUuUG9pbnQzRD8gYiwgR3JhcGhlbmUuUG9pbnQzRD8gYyk7CisrCQlwdWJsaWMgdW5vd25lZCBH cmFwaGVuZS5UcmlhbmdsZT8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZlYzM/IGEsIEdyYXBo ZW5lLlZlYzM/IGIsIEdyYXBoZW5lLlZlYzM/IGMpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV92ZWMyX3Qi LCB0eXBlX2lkID0gImdyYXBoZW5lX3ZlYzJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIHN0cnVj dCBWZWMyIHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVu ZS5WZWMyIGFkZCAoR3JhcGhlbmUuVmVjMiBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIGRpdmlkZSAoR3JhcGhlbmUuVmVjMiBiKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBkb3QgKEdyYXBoZW5l LlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBl cXVhbCAoR3JhcGhlbmUuVmVjMiB2Mik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyBpbml0IChmbG9hdCB4LCBmbG9hdCB5KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5l LlZlYzI/IGluaXRfZnJvbV9mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZs b2F0IHNyY1syXSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5WZWMyPyBpbml0X2Zyb21fdmVjMiAoR3JhcGhlbmUuVmVjMiBzcmMpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIGlu dGVycG9sYXRlIChHcmFwaGVuZS5WZWMyIHYyLCBkb3VibGUgZmFjdG9yKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBsZW5ndGggKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBtYXggKEdyYXBoZW5l LlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhl bmUuVmVjMiBtaW4gKEdyYXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBtdWx0aXBseSAoR3JhcGhlbmUuVmVjMiBiKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIG5lYXIgKEdyYXBo ZW5lLlZlYzIgdjIsIGZsb2F0IGVwc2lsb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgbmVnYXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgbm9ybWFsaXplICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5l LlZlYzI/IG9uZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5WZWMyIHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgc3VidHJhY3QgKEdyYXBoZW5lLlZlYzIg Yik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCB0b19mbG9h dCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBmbG9hdCBkZXN0WzJdKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFw aGVuZS5WZWMyPyB4X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8geV9heGlzICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZl YzI/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5l LWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3ZlYzNfdCIsIHR5cGVfaWQgPSAiZ3JhcGhl bmVfdmVjM19nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgc3RydWN0IFZlYzMgeworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgYWRkIChHcmFwaGVu ZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBo ZW5lLlZlYzMgY3Jvc3MgKEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBkaXZpZGUgKEdyYXBoZW5lLlZlYzMgYik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZG90IChHcmFw aGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJv b2wgZXF1YWwgKEdyYXBoZW5lLlZlYzMgdjIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIGZsb2F0IGdldF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgZ2V0X3h5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X3h5MCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IGdldF94eXowICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQg Z2V0X3h5ejEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3Jh cGhlbmUuVmVjNCBnZXRfeHl6dyAoZmxvYXQgdyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ogKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyBpbml0IChmbG9hdCB4LCBmbG9h dCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLlZlYzM/IGluaXRfZnJvbV9mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5n dGggPSBmYWxzZSldIGZsb2F0IHNyY1szXSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyBpbml0X2Zyb21fdmVjMyAoR3JhcGhl bmUuVmVjMyBzcmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5WZWMzIGludGVycG9sYXRlIChHcmFwaGVuZS5WZWMzIHYyLCBkb3VibGUgZmFjdG9y KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBsZW5ndGgg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVj MyBtYXggKEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBtaW4gKEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBtdWx0aXBseSAoR3Jh cGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBi b29sIG5lYXIgKEdyYXBoZW5lLlZlYzMgdjIsIGZsb2F0IGVwc2lsb24pOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgbmVnYXRlICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgbm9ybWFs aXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1 bm93bmVkIEdyYXBoZW5lLlZlYzM/IG9uZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgc3VidHJhY3Qg KEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgdm9pZCB0b19mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBmbG9h dCBkZXN0WzNdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyB4X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMz8geV9heGlz ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIEdyYXBoZW5lLlZlYzM/IHpfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyB6ZXJvICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFt ZSA9ICJncmFwaGVuZV92ZWM0X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3ZlYzRfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIHN0cnVjdCBWZWM0IHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IGFkZCAoR3JhcGhlbmUuVmVjNCBiKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IGRpdmlkZSAo R3JhcGhlbmUuVmVjNCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBmbG9hdCBkb3QgKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuVmVjNCB2Mik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3cgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBnZXRfeHkgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBnZXRf eHl6ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdl dF95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdl dF96ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQg R3JhcGhlbmUuVmVjND8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeiwgZmxvYXQgdyk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVu ZS5WZWM0PyBpbml0X2Zyb21fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBm bG9hdCBzcmNbNF0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuVmVjND8gaW5pdF9mcm9tX3ZlYzIgKEdyYXBoZW5lLlZlYzIgc3JjLCBm bG9hdCB6LCBmbG9hdCB3KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IGluaXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMzIHNy YywgZmxvYXQgdyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5WZWM0PyBpbml0X2Zyb21fdmVjNCAoR3JhcGhlbmUuVmVjNCBzcmMpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IGlu dGVycG9sYXRlIChHcmFwaGVuZS5WZWM0IHYyLCBkb3VibGUgZmFjdG9yKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBsZW5ndGggKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBtYXggKEdyYXBoZW5l LlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhl bmUuVmVjNCBtaW4gKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBtdWx0aXBseSAoR3JhcGhlbmUuVmVjNCBiKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIG5lYXIgKEdyYXBo ZW5lLlZlYzQgdjIsIGZsb2F0IGVwc2lsb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgbmVnYXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgbm9ybWFsaXplICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5l LlZlYzQ/IG9uZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBH cmFwaGVuZS5WZWM0IHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgc3VidHJhY3QgKEdyYXBoZW5lLlZlYzQg Yik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCB0b19mbG9h dCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBmbG9hdCBkZXN0WzRdKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFw aGVuZS5WZWM0PyB3X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8geF9heGlzICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZl YzQ/IHlfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBz dGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyB6X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gemVy byAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVj dC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfZXVsZXJfb3JkZXJfdCIsIGNwcmVmaXggPSAiR1JBUEhF TkVfRVVMRVJfT1JERVJfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjIiKV0KKysJcHVibGljIGVudW0gRXVsZXJPcmRlciB7CisrCQlERUZBVUxULAorKwkJ WFlaLAorKwkJWVpYLAorKwkJWlhZLAorKwkJWFpZLAorKwkJWVhaLAorKwkJWllYLAorKwkJU1hZ WiwKKysJCVNYWVgsCisrCQlTWFpZLAorKwkJU1haWCwKKysJCVNZWlgsCisrCQlTWVpZLAorKwkJ U1lYWiwKKysJCVNZWFksCisrCQlTWlhZLAorKwkJU1pYWiwKKysJCVNaWVgsCisrCQlTWllaLAor KwkJUlpZWCwKKysJCVJYWVgsCisrCQlSWVpYLAorKwkJUlhaWCwKKysJCVJYWlksCisrCQlSWVpZ LAorKwkJUlpYWSwKKysJCVJZWFksCisrCQlSWVhaLAorKwkJUlpYWiwKKysJCVJYWVosCisrCQlS WllaCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3Qu aCIsIGNuYW1lID0gImdyYXBoZW5lX3JheV9pbnRlcnNlY3Rpb25fa2luZF90IiwgY3ByZWZpeCA9 ICJHUkFQSEVORV9SQVlfSU5URVJTRUNUSU9OX0tJTkRfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSld CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBlbnVtIFJheUludGVyc2Vj dGlvbktpbmQgeworKwkJTk9ORSwKKysJCUVOVEVSLAorKwkJTEVBVkUKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhF TkVfSEFTX0dDQyIpXQorKwlwdWJsaWMgY29uc3QgaW50IEhBU19HQ0M7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJHUkFQSEVORV9I QVNfU0NBTEFSIildCisrCXB1YmxpYyBjb25zdCBpbnQgSEFTX1NDQUxBUjsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5F X0hBU19TU0UiKV0KKysJcHVibGljIGNvbnN0IGludCBIQVNfU1NFOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfUEki KV0KKysJcHVibGljIGNvbnN0IGRvdWJsZSBQSTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX1BJXzIiKV0KKysJcHVi bGljIGNvbnN0IGRvdWJsZSBQSV8yOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3Jh cGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfU0lNRF9TIildCisrCXB1YmxpYyBj b25zdCBzdHJpbmcgU0lNRF9TOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhl bmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfVkVDMl9MRU4iKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFZFQzJfTEVOOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhF TkVfVkVDM19MRU4iKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY29u c3QgaW50IFZFQzNfTEVOOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUt Z29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfVkVDNF9MRU4iKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFZFQzRfTEVOOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZmFsc2UiKV0K KysJcHVibGljIGNvbnN0IGludCBAZmFsc2U7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJ0cnVlIildCisrCXB1YmxpYyBjb25zdCBp bnQgQHRydWU7CisrfQorZGlmZiAtLWdpdCBhL3ZhcGkvbGlibXV0dGVyLTYuZGVwcyBiL3ZhcGkv bGlibXV0dGVyLTYuZGVwcworbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi4y MjM1MjVlNAorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9saWJtdXR0ZXItNi5kZXBzCitAQCAt MCwwICsxLDYgQEAKKytndGsrLTMuMAorK2pzb24tZ2xpYi0xLjAKKyttdXR0ZXItY2x1dHRlci02 CisreDExCisreGZpeGVzLTQuMAorK2dyYXBoZW5lLWdvYmplY3QtMS4wCitkaWZmIC0tZ2l0IGEv dmFwaS9saWJtdXR0ZXItNi52YXBpIGIvdmFwaS9saWJtdXR0ZXItNi52YXBpCituZXcgZmlsZSBt b2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjMxZjQ4MDFjCistLS0gL2Rldi9udWxsCisrKysg Yi92YXBpL2xpYm11dHRlci02LnZhcGkKK0BAIC0wLDAgKzEsMTQ3NSBAQAorKy8qIGxpYm11dHRl ci02LnZhcGkgZ2VuZXJhdGVkIGJ5IHZhcGlnZW4sIGRvIG5vdCBtb2RpZnkuICovCisrCisrW0ND b2RlIChjcHJlZml4ID0gIk1ldGEiLCBnaXJfbmFtZXNwYWNlID0gIk1ldGEiLCBnaXJfdmVyc2lv biA9ICI2IiwgbG93ZXJfY2FzZV9jcHJlZml4ID0gIm1ldGFfIildCisrbmFtZXNwYWNlIE1ldGEg eworKwluYW1lc3BhY2UgQ29tcG9zaXRvciB7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9kaXNhYmxlX3VucmVk aXJlY3RfZm9yX2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBkaXNhYmxlX3VucmVk aXJlY3RfZm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRh X2VuYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQg ZW5hYmxlX3VucmVkaXJlY3RfZm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBj bmFtZSA9ICJtZXRhX2ZvY3VzX3N0YWdlX3dpbmRvdyIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lk IGZvY3VzX3N0YWdlX3dpbmRvdyAoTWV0YS5EaXNwbGF5IGRpc3BsYXksIHVpbnQzMiB0aW1lc3Rh bXApOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29tcG9zaXRvci1tdXR0 ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X2ZlZWRiYWNrX2dyb3VwX2Zvcl9kaXNwbGF5IildCisr CQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfZmVlZGJhY2tfZ3JvdXBf Zm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2dldF9z dGFnZV9mb3JfZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQWN0 b3IgZ2V0X3N0YWdlX2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUg PSAibWV0YV9nZXRfdG9wX3dpbmRvd19ncm91cF9mb3JfZGlzcGxheSIpXQorKwkJcHVibGljIHN0 YXRpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3RvcF93aW5kb3dfZ3JvdXBfZm9yX2Rpc3Bs YXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2dldF93aW5kb3dfYWN0 b3JzIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR0xpYi5MaXN0PENsdXR0ZXIuQWN0b3I+ IGdldF93aW5kb3dfYWN0b3JzIChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0 YV9nZXRfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IildCisrCQlwdWJsaWMgc3RhdGljIHVub3du ZWQgQ2x1dHRlci5BY3RvciBnZXRfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IChNZXRhLkRpc3Bs YXkgZGlzcGxheSk7CisrCX0KKysJbmFtZXNwYWNlIFByZWZzIHsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2JlbGxfaXNf YXVkaWJsZSIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2JlbGxfaXNfYXVkaWJsZSAo KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9 ICJtZXRhX3ByZWZzX2NoYW5nZV93b3Jrc3BhY2VfbmFtZSIpXQorKwkJcHVibGljIHN0YXRpYyB2 b2lkIHByZWZzX2NoYW5nZV93b3Jrc3BhY2VfbmFtZSAoaW50IGksIHN0cmluZyBuYW1lKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRh X3ByZWZzX2dldF9hY3Rpb25fZG91YmxlX2NsaWNrX3RpdGxlYmFyIildCisrCQlwdWJsaWMgc3Rh dGljIEdEZXNrdG9wLlRpdGxlYmFyQWN0aW9uIHByZWZzX2dldF9hY3Rpb25fZG91YmxlX2NsaWNr X3RpdGxlYmFyICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMu aCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2FjdGlvbl9taWRkbGVfY2xpY2tfdGl0bGViYXIi KV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rlc2t0b3AuVGl0bGViYXJBY3Rpb24gcHJlZnNfZ2V0X2Fj dGlvbl9taWRkbGVfY2xpY2tfdGl0bGViYXIgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYWN0aW9uX3JpZ2h0 X2NsaWNrX3RpdGxlYmFyIildCisrCQlwdWJsaWMgc3RhdGljIEdEZXNrdG9wLlRpdGxlYmFyQWN0 aW9uIHByZWZzX2dldF9hY3Rpb25fcmlnaHRfY2xpY2tfdGl0bGViYXIgKCk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19n ZXRfYXR0YWNoX21vZGFsX2RpYWxvZ3MiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19n ZXRfYXR0YWNoX21vZGFsX2RpYWxvZ3MgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYXV0b19tYXhpbWl6ZSIp XQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9hdXRvX21heGltaXplICgpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFf cHJlZnNfZ2V0X2F1dG9fcmFpc2UiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRf YXV0b19yYWlzZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZz LmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hdXRvX3JhaXNlX2RlbGF5IildCisrCQlwdWJs aWMgc3RhdGljIGludCBwcmVmc19nZXRfYXV0b19yYWlzZV9kZWxheSAoKTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dl dF9idXR0b25fbGF5b3V0IildCisrCQlwdWJsaWMgc3RhdGljIE1ldGEuQnV0dG9uTGF5b3V0IHBy ZWZzX2dldF9idXR0b25fbGF5b3V0ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2NlbnRlcl9uZXdfd2luZG93 cyIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9jZW50ZXJfbmV3X3dpbmRvd3Mg KCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUg PSAibWV0YV9wcmVmc19nZXRfY29tcG9zaXRpbmdfbWFuYWdlciIpXQorKwkJcHVibGljIHN0YXRp YyBib29sIHByZWZzX2dldF9jb21wb3NpdGluZ19tYW5hZ2VyICgpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2N1 cnNvcl9zaXplIildCisrCQlwdWJsaWMgc3RhdGljIGludCBwcmVmc19nZXRfY3Vyc29yX3NpemUg KCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUg PSAibWV0YV9wcmVmc19nZXRfY3Vyc29yX3RoZW1lIildCisrCQlwdWJsaWMgc3RhdGljIHVub3du ZWQgc3RyaW5nIHByZWZzX2dldF9jdXJzb3JfdGhlbWUgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZGlzYWJs ZV93b3JrYXJvdW5kcyIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9kaXNhYmxl X3dvcmthcm91bmRzICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJl ZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2RyYWdfdGhyZXNob2xkIildCisrCQlwdWJs aWMgc3RhdGljIGludCBwcmVmc19nZXRfZHJhZ190aHJlc2hvbGQgKCk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRf ZHJhZ2dhYmxlX2JvcmRlcl93aWR0aCIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0 X2RyYWdnYWJsZV9ib3JkZXJfd2lkdGggKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZHluYW1pY193b3Jrc3Bh Y2VzIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2R5bmFtaWNfd29ya3NwYWNl cyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFt ZSA9ICJtZXRhX3ByZWZzX2dldF9lZGdlX3RpbGluZyIpXQorKwkJcHVibGljIHN0YXRpYyBib29s IHByZWZzX2dldF9lZGdlX3RpbGluZyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9mb2N1c19jaGFuZ2Vfb25f cG9pbnRlcl9yZXN0IildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2ZvY3VzX2No YW5nZV9vbl9wb2ludGVyX3Jlc3QgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZm9jdXNfbW9kZSIpXQorKwkJ cHVibGljIHN0YXRpYyBHRGVza3RvcC5Gb2N1c01vZGUgcHJlZnNfZ2V0X2ZvY3VzX21vZGUgKCk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAi bWV0YV9wcmVmc19nZXRfZm9jdXNfbmV3X3dpbmRvd3MiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rl c2t0b3AuRm9jdXNOZXdXaW5kb3dzIHByZWZzX2dldF9mb2N1c19uZXdfd2luZG93cyAoKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRh X3ByZWZzX2dldF9mb3JjZV9mdWxsc2NyZWVuIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJl ZnNfZ2V0X2ZvcmNlX2Z1bGxzY3JlZW4gKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZ25vbWVfYWNjZXNzaWJp bGl0eSIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9nbm9tZV9hY2Nlc3NpYmls aXR5ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNu YW1lID0gIm1ldGFfcHJlZnNfZ2V0X2dub21lX2FuaW1hdGlvbnMiKV0KKysJCXB1YmxpYyBzdGF0 aWMgYm9vbCBwcmVmc19nZXRfZ25vbWVfYW5pbWF0aW9ucyAoKTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9rZXli aW5kaW5nX2FjdGlvbiIpXQorKwkJcHVibGljIHN0YXRpYyBNZXRhLktleUJpbmRpbmdBY3Rpb24g cHJlZnNfZ2V0X2tleWJpbmRpbmdfYWN0aW9uIChzdHJpbmcgbmFtZSk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRf bW91c2VfYnV0dG9uX21lbnUiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9tb3Vz ZV9idXR0b25fbWVudSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3By ZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9tb3VzZV9idXR0b25fbW9kcyIpXQorKwkJ cHVibGljIHN0YXRpYyBNZXRhLlZpcnR1YWxNb2RpZmllciBwcmVmc19nZXRfbW91c2VfYnV0dG9u X21vZHMgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwg Y25hbWUgPSAibWV0YV9wcmVmc19nZXRfbW91c2VfYnV0dG9uX3Jlc2l6ZSIpXQorKwkJcHVibGlj IHN0YXRpYyBpbnQgcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9yZXNpemUgKCk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19n ZXRfbnVtX3dvcmtzcGFjZXMiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHByZWZzX2dldF9udW1f d29ya3NwYWNlcyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZz LmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9yYWlzZV9vbl9jbGljayIpXQorKwkJcHVibGlj IHN0YXRpYyBib29sIHByZWZzX2dldF9yYWlzZV9vbl9jbGljayAoKTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9z aG93X2ZhbGxiYWNrX2FwcF9tZW51IildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0 X3Nob3dfZmFsbGJhY2tfYXBwX21lbnUgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfdGl0bGViYXJfZm9udCIp XQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIFBhbmdvLkZvbnREZXNjcmlwdGlvbiBwcmVmc19n ZXRfdGl0bGViYXJfZm9udCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF92aXN1YWxfYmVsbCIpXQorKwkJcHVi bGljIHN0YXRpYyBib29sIHByZWZzX2dldF92aXN1YWxfYmVsbCAoKTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF92 aXN1YWxfYmVsbF90eXBlIildCisrCQlwdWJsaWMgc3RhdGljIEdEZXNrdG9wLlZpc3VhbEJlbGxU eXBlIHByZWZzX2dldF92aXN1YWxfYmVsbF90eXBlICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3dvcmtzcGFj ZV9uYW1lIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgc3RyaW5nIHByZWZzX2dldF93b3Jr c3BhY2VfbmFtZSAoaW50IGkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv cHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3dvcmtzcGFjZXNfb25seV9vbl9wcmlt YXJ5IildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X3dvcmtzcGFjZXNfb25seV9v bl9wcmltYXJ5ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMu aCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfaW5pdCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHBy ZWZzX2luaXQgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5o IiwgY25hbWUgPSAibWV0YV9wcmVmc19zZXRfZm9yY2VfZnVsbHNjcmVlbiIpXQorKwkJcHVibGlj IHN0YXRpYyB2b2lkIHByZWZzX3NldF9mb3JjZV9mdWxsc2NyZWVuIChib29sIHdoZXRoZXIpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1l dGFfcHJlZnNfc2V0X251bV93b3Jrc3BhY2VzIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcHJl ZnNfc2V0X251bV93b3Jrc3BhY2VzIChpbnQgbl93b3Jrc3BhY2VzKTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX3NldF9z aG93X2ZhbGxiYWNrX2FwcF9tZW51IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcHJlZnNfc2V0 X3Nob3dfZmFsbGJhY2tfYXBwX21lbnUgKGJvb2wgd2hldGhlcik7CisrCX0KKysJbmFtZXNwYWNl IFV0aWwgeworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25h bWUgPSAibWV0YV9hZGRfdmVyYm9zZV90b3BpYyIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIGFk ZF92ZXJib3NlX3RvcGljIChNZXRhLkRlYnVnVG9waWMgdG9waWMpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9leHRlcm5hbF9iaW5k aW5nX25hbWVfZm9yX2FjdGlvbiIpXQorKwkJcHVibGljIHN0YXRpYyBzdHJpbmcgZXh0ZXJuYWxf YmluZGluZ19uYW1lX2Zvcl9hY3Rpb24gKHVpbnQga2V5YmluZGluZ19hY3Rpb24pOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9nZXRf bG9jYWxlX2RpcmVjdGlvbiIpXQorKwkJcHVibGljIHN0YXRpYyBNZXRhLkxvY2FsZURpcmVjdGlv biBnZXRfbG9jYWxlX2RpcmVjdGlvbiAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfZ3Jhdml0eV90b19zdHJpbmciKV0KKysJCXB1 YmxpYyBzdGF0aWMgdW5vd25lZCBzdHJpbmcgZ3Jhdml0eV90b19zdHJpbmcgKGludCBncmF2aXR5 KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0g Im1ldGFfaXNfZGVidWdnaW5nIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgaXNfZGVidWdnaW5n ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUg PSAibWV0YV9pc19zeW5jaW5nIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgaXNfc3luY2luZyAo KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0g Im1ldGFfaXNfdmVyYm9zZSIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIGlzX3ZlcmJvc2UgKCk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJt ZXRhX2lzX3dheWxhbmRfY29tcG9zaXRvciIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIGlzX3dh eWxhbmRfY29tcG9zaXRvciAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfbGF0ZXJfYWRkIildCisrCQlwdWJsaWMgc3RhdGljIHVp bnQgbGF0ZXJfYWRkIChNZXRhLkxhdGVyVHlwZSB3aGVuLCBvd25lZCBHTGliLlNvdXJjZUZ1bmMg ZnVuYyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFt ZSA9ICJtZXRhX2xhdGVyX3JlbW92ZSIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIGxhdGVyX3Jl bW92ZSAodWludCBsYXRlcl9pZCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3BvcF9ub19tc2dfcHJlZml4IildCisrCQlwdWJsaWMg c3RhdGljIHZvaWQgcG9wX25vX21zZ19wcmVmaXggKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3B1c2hfbm9fbXNnX3ByZWZpeCIp XQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHB1c2hfbm9fbXNnX3ByZWZpeCAoKTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfcmVjdCIp XQorKwkJcHVibGljIHN0YXRpYyBNZXRhLlJlY3RhbmdsZT8gcmVjdCAoaW50IHgsIGludCB5LCBp bnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9yZW1vdmVfdmVyYm9zZV90b3BpYyIpXQorKwkJcHVi bGljIHN0YXRpYyB2b2lkIHJlbW92ZV92ZXJib3NlX3RvcGljIChNZXRhLkRlYnVnVG9waWMgdG9w aWMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUg PSAibWV0YV9zaG93X2RpYWxvZyIpXQorKwkJcHVibGljIHN0YXRpYyBHTGliLlBpZCBzaG93X2Rp YWxvZyAoc3RyaW5nIHR5cGUsIHN0cmluZyBtZXNzYWdlLCBzdHJpbmcgdGltZW91dCwgc3RyaW5n IGRpc3BsYXksIHN0cmluZyBva190ZXh0LCBzdHJpbmcgY2FuY2VsX3RleHQsIHN0cmluZyBpY29u X25hbWUsIGludCB0cmFuc2llbnRfZm9yLCBHTGliLlNMaXN0PHZvaWQqPiBjb2x1bW5zLCBHTGli LlNMaXN0PHZvaWQqPiBlbnRyaWVzKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfdW5zaWduZWRfbG9uZ19lcXVhbCIpXQorKwkJcHVi bGljIHN0YXRpYyBpbnQgdW5zaWduZWRfbG9uZ19lcXVhbCAodm9pZCogdjEsIHZvaWQqIHYyKTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1l dGFfdW5zaWduZWRfbG9uZ19oYXNoIildCisrCQlwdWJsaWMgc3RhdGljIHVpbnQgdW5zaWduZWRf bG9uZ19oYXNoICh2b2lkKiB2KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfeDExX2Vycm9yX3RyYXBfcG9wIildCisrCQlwdWJsaWMg c3RhdGljIHZvaWQgeDExX2Vycm9yX3RyYXBfcG9wIChNZXRhLlgxMURpc3BsYXkgeDExX2Rpc3Bs YXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUg PSAibWV0YV94MTFfZXJyb3JfdHJhcF9wb3Bfd2l0aF9yZXR1cm4iKV0KKysJCXB1YmxpYyBzdGF0 aWMgaW50IHgxMV9lcnJvcl90cmFwX3BvcF93aXRoX3JldHVybiAoTWV0YS5YMTFEaXNwbGF5IHgx MV9kaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIs IGNuYW1lID0gIm1ldGFfeDExX2Vycm9yX3RyYXBfcHVzaCIpXQorKwkJcHVibGljIHN0YXRpYyB2 b2lkIHgxMV9lcnJvcl90cmFwX3B1c2ggKE1ldGEuWDExRGlzcGxheSB4MTFfZGlzcGxheSk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1iYWNrZW5kLmgiLCB0 eXBlX2lkID0gIm1ldGFfYmFja2VuZF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3Qg Y2xhc3MgQmFja2VuZCA6IEdMaWIuT2JqZWN0LCBHTGliLkluaXRhYmxlIHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBCYWNrZW5kICgp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1iYWNrZW5kLmgiLCBj bmFtZSA9ICJtZXRhX2dldF9iYWNrZW5kIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgTWV0 YS5CYWNrZW5kIGdldF9iYWNrZW5kICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5EbmQgZ2V0 X2RuZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuUmVtb3RlQWNjZXNzQ29udHJvbGxlciBn ZXRfcmVtb3RlX2FjY2Vzc19jb250cm9sbGVyICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRl ci5BY3RvciBnZXRfc3RhZ2UgKCk7CisrCQlwdWJsaWMgdm9pZCBsb2NrX2xheW91dF9ncm91cCAo dWludCBpZHgpOworKwkJcHVibGljIHZvaWQgc2V0X2tleW1hcCAoc3RyaW5nIGxheW91dHMsIHN0 cmluZyB2YXJpYW50cywgc3RyaW5nIG9wdGlvbnMpOworKwkJcHVibGljIHZvaWQgc2V0X251bWxv Y2sgKGJvb2wgbnVtbG9ja19zdGF0ZSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQga2V5bWFwX2No YW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQga2V5bWFwX2xheW91dF9ncm91cF9jaGFu Z2VkICh1aW50IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbGFzdF9kZXZpY2VfY2hh bmdlZCAoQ2x1dHRlci5JbnB1dERldmljZSBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lk IGxpZF9pc19jbG9zZWRfY2hhbmdlZCAoYm9vbCBvYmplY3QpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2dyb3VuZC5oIiwgdHlwZV9pZCA9ICJtZXRh X2JhY2tncm91bmRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEJhY2tncm91bmQgOiBH TGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlwdWJsaWMgQmFja2dyb3VuZCAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJcHVibGlj IHN0YXRpYyB2b2lkIHJlZnJlc2hfYWxsICgpOworKwkJcHVibGljIHZvaWQgc2V0X2JsZW5kIChH TGliLkZpbGUgZmlsZTEsIEdMaWIuRmlsZSBmaWxlMiwgZG91YmxlIGJsZW5kX2ZhY3RvciwgR0Rl c2t0b3AuQmFja2dyb3VuZFN0eWxlIHN0eWxlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAo Q2x1dHRlci5Db2xvciBjb2xvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfZmlsZSAoR0xpYi5GaWxl PyBmaWxlLCBHRGVza3RvcC5CYWNrZ3JvdW5kU3R5bGUgc3R5bGUpOworKwkJcHVibGljIHZvaWQg c2V0X2dyYWRpZW50IChHRGVza3RvcC5CYWNrZ3JvdW5kU2hhZGluZyBzaGFkaW5nX2RpcmVjdGlv biwgQ2x1dHRlci5Db2xvciBjb2xvciwgQ2x1dHRlci5Db2xvciBzZWNvbmRfY29sb3IpOworKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5EaXNwbGF5IG1ldGFfZGlzcGxheSB7 IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY2hhbmdlZCAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tncm91 bmQtYWN0b3IuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2FjdG9yX2dldF90eXBlICgp IildCisrCXB1YmxpYyBjbGFzcyBCYWNrZ3JvdW5kQWN0b3IgOiBDbHV0dGVyLkFjdG9yLCBBdGsu SW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0 ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMgQmFja2dyb3VuZEFjdG9yIChN ZXRhLkRpc3BsYXkgZGlzcGxheSwgaW50IG1vbml0b3IpOworKwkJcHVibGljIHZvaWQgc2V0X2Jh Y2tncm91bmQgKE1ldGEuQmFja2dyb3VuZCBiYWNrZ3JvdW5kKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9ncmFkaWVudCAoYm9vbCBlbmFibGVkLCBpbnQgaGVpZ2h0LCBkb3VibGUgdG9uZV9zdGFydCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfbW9uaXRvciAoaW50IG1vbml0b3IpOworKwkJcHVibGljIHZv aWQgc2V0X3ZpZ25ldHRlIChib29sIGVuYWJsZWQsIGRvdWJsZSBicmlnaHRuZXNzLCBkb3VibGUg c2hhcnBuZXNzKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuQmFja2dy b3VuZCBiYWNrZ3JvdW5kIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIGRvdWJsZSBicmlnaHRuZXNzIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgZ3JhZGllbnQgeyBnZXQ7IHNldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGdyYWRpZW50X2hlaWdodCB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBkb3VibGUgZ3JhZGllbnRfbWF4 X2RhcmtuZXNzIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IE1ldGEuRGlzcGxheSBtZXRhX2Rpc3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IG1vbml0b3IgeyBnZXQ7IGNvbnN0cnVj dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCB2aWduZXR0ZSB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBkb3VibGUgdmlnbmV0 dGVfc2hhcnBuZXNzIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tZXRhLWJhY2tncm91bmQtZ3JvdXAuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNr Z3JvdW5kX2dyb3VwX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBCYWNrZ3JvdW5kR3Jv dXAgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwg Q2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlw dWJsaWMgQmFja2dyb3VuZEdyb3VwICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21ldGEtYmFja2dyb3VuZC1pbWFnZS5oIiwgdHlwZV9pZCA9ICJtZXRhX2JhY2tn cm91bmRfaW1hZ2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEJhY2tncm91bmRJbWFn ZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXByb3RlY3RlZCBCYWNrZ3JvdW5kSW1hZ2UgKCk7CisrCQlwdWJsaWMgYm9vbCBn ZXRfc3VjY2VzcyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuVGV4dHVyZSBnZXRfdGV4dHVy ZSAoKTsKKysJCXB1YmxpYyBib29sIGlzX2xvYWRlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9p ZCBsb2FkZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0 YS1iYWNrZ3JvdW5kLWltYWdlLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFja2dyb3VuZF9pbWFnZV9j YWNoZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2dyb3VuZEltYWdlQ2FjaGUg OiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwcm90ZWN0ZWQgQmFja2dyb3VuZEltYWdlQ2FjaGUgKCk7CisrCQlwdWJsaWMgc3Rh dGljIHVub3duZWQgTWV0YS5CYWNrZ3JvdW5kSW1hZ2VDYWNoZSBnZXRfZGVmYXVsdCAoKTsKKysJ CXB1YmxpYyBNZXRhLkJhY2tncm91bmRJbWFnZSBsb2FkIChHTGliLkZpbGUgZmlsZSk7CisrCQlw dWJsaWMgdm9pZCBwdXJnZSAoR0xpYi5GaWxlIGZpbGUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL2JhcnJpZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9iYXJyaWVyX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBCYXJyaWVyIDogR0xpYi5PYmplY3QgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEJh cnJpZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBkZXN0cm95ICgpOworKwkJcHVibGljIGJvb2wgaXNf YWN0aXZlICgpOworKwkJcHVibGljIHZvaWQgcmVsZWFzZSAoTWV0YS5CYXJyaWVyRXZlbnQgZXZl bnQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5CYXJyaWVyRGlyZWN0 aW9uIGRpcmVjdGlvbnMgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgTWV0YS5EaXNwbGF5IGRpc3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHgxIHsgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB4MiB7IGdldDsgY29u c3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgeTEgeyBnZXQ7 IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHkyIHsg Z2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBoaXQgKE1ldGEuQmFycmll ckV2ZW50IGV2ZW50KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBsZWZ0IChNZXRhLkJhcnJpZXJF dmVudCBldmVudCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvYmFy cmllci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0g ImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAibWV0YV9iYXJyaWVyX2V2ZW50X2dldF90eXBlICgp IildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgQmFycmllckV2ZW50IHsKKysJCXB1Ymxp YyBpbnQgZHQ7CisrCQlwdWJsaWMgZG91YmxlIGR4OworKwkJcHVibGljIGRvdWJsZSBkeTsKKysJ CXB1YmxpYyBpbnQgZXZlbnRfaWQ7CisrCQlwdWJsaWMgYm9vbCBncmFiYmVkOworKwkJcHVibGlj IGJvb2wgcmVsZWFzZWQ7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgZG91Ymxl IHg7CisrCQlwdWJsaWMgZG91YmxlIHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWV0YS1jdXJzb3ItdHJhY2tlci5oIiwgdHlwZV9pZCA9ICJtZXRhX2N1cnNvcl90 cmFja2VyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBDdXJzb3JUcmFja2VyIDogR0xp Yi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIEN1cnNvclRyYWNrZXIgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQg TWV0YS5DdXJzb3JUcmFja2VyIGdldF9mb3JfZGlzcGxheSAoTWV0YS5EaXNwbGF5IGRpc3BsYXkp OworKwkJcHVibGljIHZvaWQgZ2V0X2hvdCAob3V0IGludCB4LCBvdXQgaW50IHkpOworKwkJcHVi bGljIHZvaWQgZ2V0X3BvaW50ZXIgKGludCB4LCBpbnQgeSwgQ2x1dHRlci5Nb2RpZmllclR5cGUg bW9kcyk7CisrCQlwdWJsaWMgYm9vbCBnZXRfcG9pbnRlcl92aXNpYmxlICgpOworKwkJcHVibGlj IHVub3duZWQgQ29nbC5UZXh0dXJlIGdldF9zcHJpdGUgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRf cG9pbnRlcl92aXNpYmxlIChib29sIHZpc2libGUpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGN1 cnNvcl9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGN1cnNvcl9tb3ZlZCAoZmxv YXQgeCwgZmxvYXQgeSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgdmlzaWJpbGl0eV9jaGFuZ2Vk ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2Rpc3BsYXkuaCIs IHR5cGVfaWQgPSAibWV0YV9kaXNwbGF5X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBE aXNwbGF5IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIERpc3BsYXkgKCk7CisrCQlwdWJsaWMgdm9pZCBhZGRf aWdub3JlZF9jcm9zc2luZ19zZXJpYWwgKHVsb25nIHNlcmlhbCk7CisrCQlwdWJsaWMgdWludCBh ZGRfa2V5YmluZGluZyAoc3RyaW5nIG5hbWUsIEdMaWIuU2V0dGluZ3Mgc2V0dGluZ3MsIE1ldGEu S2V5QmluZGluZ0ZsYWdzIGZsYWdzLCBvd25lZCBNZXRhLktleUhhbmRsZXJGdW5jIGhhbmRsZXIp OworKwkJcHVibGljIGJvb2wgYmVnaW5fZ3JhYl9vcCAoTWV0YS5XaW5kb3cgd2luZG93LCBNZXRh LkdyYWJPcCBvcCwgYm9vbCBwb2ludGVyX2FscmVhZHlfZ3JhYmJlZCwgYm9vbCBmcmFtZV9hY3Rp b24sIGludCBidXR0b24sIHVsb25nIG1vZG1hc2ssIHVpbnQzMiB0aW1lc3RhbXAsIGludCByb290 X3gsIGludCByb290X3kpOworKwkJcHVibGljIHZvaWQgY2xlYXJfbW91c2VfbW9kZSAoKTsKKysJ CXB1YmxpYyB2b2lkIGNsb3NlICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIGVu ZF9ncmFiX29wICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIGZvY3VzX2RlZmF1 bHRfd2luZG93ICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIGZyZWV6ZV9rZXli b2FyZCAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgaW50IGdldF9jdXJyZW50X21vbml0 b3IgKCk7CisrCQlwdWJsaWMgdWludDMyIGdldF9jdXJyZW50X3RpbWUgKCk7CisrCQlwdWJsaWMg dWludDMyIGdldF9jdXJyZW50X3RpbWVfcm91bmR0cmlwICgpOworKwkJcHVibGljIHVub3duZWQg TWV0YS5XaW5kb3cgZ2V0X2ZvY3VzX3dpbmRvdyAoKTsKKysJCXB1YmxpYyBNZXRhLkdyYWJPcCBn ZXRfZ3JhYl9vcCAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9rZXliaW5kaW5nX2FjdGlvbiAodWlu dCBrZXljb2RlLCB1bG9uZyBtYXNrKTsKKysJCXB1YmxpYyB1aW50MzIgZ2V0X2xhc3RfdXNlcl90 aW1lICgpOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF9tb25pdG9yX2dlb21ldHJ5IChp bnQgbW9uaXRvcik7CisrCQlwdWJsaWMgYm9vbCBnZXRfbW9uaXRvcl9pbl9mdWxsc2NyZWVuIChp bnQgbW9uaXRvcik7CisrCQlwdWJsaWMgaW50IGdldF9tb25pdG9yX2luZGV4X2Zvcl9yZWN0IChN ZXRhLlJlY3RhbmdsZSByZWN0KTsKKysJCXB1YmxpYyBpbnQgZ2V0X21vbml0b3JfbmVpZ2hib3Jf aW5kZXggKGludCB3aGljaF9tb25pdG9yLCBNZXRhLkRpc3BsYXlEaXJlY3Rpb24gZGlyKTsKKysJ CXB1YmxpYyBmbG9hdCBnZXRfbW9uaXRvcl9zY2FsZSAoaW50IG1vbml0b3IpOworKwkJcHVibGlj IGludCBnZXRfbl9tb25pdG9ycyAoKTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0X3BhZF9hY3Rpb25f bGFiZWwgKENsdXR0ZXIuSW5wdXREZXZpY2UgcGFkLCBNZXRhLlBhZEFjdGlvblR5cGUgYWN0aW9u X3R5cGUsIHVpbnQgYWN0aW9uX251bWJlcik7CisrCQlwdWJsaWMgaW50IGdldF9wcmltYXJ5X21v bml0b3IgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLlNlbGVjdGlvbiBnZXRfc2VsZWN0aW9u ICgpOworKwkJcHVibGljIHZvaWQgZ2V0X3NpemUgKG91dCBpbnQgd2lkdGgsIG91dCBpbnQgaGVp Z2h0KTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuU291bmRQbGF5ZXIgZ2V0X3NvdW5kX3BsYXll ciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGdldF90YWJfY3VycmVudCAoTWV0 YS5UYWJMaXN0IHR5cGUsIE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSk7CisrCQlwdWJsaWMgR0xp Yi5MaXN0PHdlYWsgTWV0YS5XaW5kb3c+IGdldF90YWJfbGlzdCAoTWV0YS5UYWJMaXN0IHR5cGUs IE1ldGEuV29ya3NwYWNlPyB3b3Jrc3BhY2UpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5k b3cgZ2V0X3RhYl9uZXh0IChNZXRhLlRhYkxpc3QgdHlwZSwgTWV0YS5Xb3Jrc3BhY2Ugd29ya3Nw YWNlLCBNZXRhLldpbmRvdz8gd2luZG93LCBib29sIGJhY2t3YXJkKTsKKysJCXB1YmxpYyB1bm93 bmVkIE1ldGEuV29ya3NwYWNlTWFuYWdlciBnZXRfd29ya3NwYWNlX21hbmFnZXIgKCk7CisrCQlw dWJsaWMgdWludCBncmFiX2FjY2VsZXJhdG9yIChzdHJpbmcgYWNjZWxlcmF0b3IsIE1ldGEuS2V5 QmluZGluZ0ZsYWdzIGZsYWdzKTsKKysJCXB1YmxpYyBib29sIGlzX3BvaW50ZXJfZW11bGF0aW5n X3NlcXVlbmNlIChDbHV0dGVyLkV2ZW50U2VxdWVuY2U/IHNlcXVlbmNlKTsKKysJCXB1YmxpYyBi b29sIHJlbW92ZV9rZXliaW5kaW5nIChzdHJpbmcgbmFtZSk7CisrCQlwdWJsaWMgdm9pZCByZXF1 ZXN0X3BhZF9vc2QgKENsdXR0ZXIuSW5wdXREZXZpY2UgcGFkLCBib29sIGVkaXRpb25fbW9kZSk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfY3Vyc29yIChNZXRhLkN1cnNvciBjdXJzb3IpOworKwkJcHVi bGljIHZvaWQgc2V0X2lucHV0X2ZvY3VzIChNZXRhLldpbmRvdyB3aW5kb3csIGJvb2wgZm9jdXNf ZnJhbWUsIHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIEdMaWIuU0xpc3Q8d2VhayBNZXRh LldpbmRvdz4gc29ydF93aW5kb3dzX2J5X3N0YWNraW5nIChHTGliLlNMaXN0PE1ldGEuV2luZG93 PiB3aW5kb3dzKTsKKysJCXB1YmxpYyBib29sIHN1cHBvcnRzX2V4dGVuZGVkX2JhcnJpZXJzICgp OworKwkJcHVibGljIHZvaWQgdW5mcmVlemVfa2V5Ym9hcmQgKHVpbnQzMiB0aW1lc3RhbXApOwor KwkJcHVibGljIGJvb2wgdW5ncmFiX2FjY2VsZXJhdG9yICh1aW50IGFjdGlvbl9pZCk7CisrCQlw dWJsaWMgdm9pZCB1bmdyYWJfa2V5Ym9hcmQgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGlj IHZvaWQgdW5zZXRfaW5wdXRfZm9jdXMgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIGJv b2wgeHNlcnZlcl90aW1lX2lzX2JlZm9yZSAodWludDMyIHRpbWUxLCB1aW50MzIgdGltZTIpOwor KwkJcHVibGljIE1ldGEuV2luZG93IGZvY3VzX3dpbmRvdyB7IGdldDsgfQorKwkJcHVibGljIHNp Z25hbCB2b2lkIGFjY2VsZXJhdG9yX2FjdGl2YXRlZCAodWludCBvYmplY3QsIENsdXR0ZXIuSW5w dXREZXZpY2UgcDAsIHVpbnQgcDEpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGNsb3NpbmcgKCk7 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY3Vyc29yX3VwZGF0ZWQgKCk7CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgZ2xfdmlkZW9fbWVtb3J5X3B1cmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9p ZCBncmFiX29wX2JlZ2luIChNZXRhLkRpc3BsYXkgb2JqZWN0LCBNZXRhLldpbmRvdyBwMCwgTWV0 YS5HcmFiT3AgcDEpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGdyYWJfb3BfZW5kIChNZXRhLkRp c3BsYXkgb2JqZWN0LCBNZXRhLldpbmRvdyBwMCwgTWV0YS5HcmFiT3AgcDEpOworKwkJcHVibGlj IHNpZ25hbCB2b2lkIGluX2Z1bGxzY3JlZW5fY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwg Ym9vbCBtb2RpZmllcnNfYWNjZWxlcmF0b3JfYWN0aXZhdGVkICgpOworKwkJcHVibGljIHNpZ25h bCB2b2lkIG92ZXJsYXlfa2V5ICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHBhZF9tb2RlX3N3 aXRjaCAoQ2x1dHRlci5JbnB1dERldmljZSBvYmplY3QsIHVpbnQgcDAsIHVpbnQgcDEpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIHJlc3RhY2tlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgYm9vbCBy ZXN0YXJ0ICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNob3dfb3NkIChpbnQgb2JqZWN0LCBz dHJpbmcgcDAsIHN0cmluZyBwMSk7CisrCQlwdWJsaWMgc2lnbmFsIHVub3duZWQgQ2x1dHRlci5B Y3Rvcj8gc2hvd19wYWRfb3NkIChDbHV0dGVyLklucHV0RGV2aWNlIHBhZCwgR0xpYi5TZXR0aW5n cyBzZXR0aW5ncywgc3RyaW5nIGxheW91dF9wYXRoLCBib29sIGVkaXRpb25fbW9kZSwgaW50IG1v bml0b3JfaWR4KTsKKysJCXB1YmxpYyBzaWduYWwgYm9vbCBzaG93X3Jlc2l6ZV9wb3B1cCAoYm9v bCBvYmplY3QsIE1ldGEuUmVjdGFuZ2xlIHAwLCBpbnQgcDEsIGludCBwMik7CisrCQlwdWJsaWMg c2lnbmFsIGJvb2wgc2hvd19yZXN0YXJ0X21lc3NhZ2UgKHN0cmluZz8gbWVzc2FnZSk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgc2hvd2luZ19kZXNrdG9wX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMg c2lnbmFsIHZvaWQgd2luZG93X2NyZWF0ZWQgKE1ldGEuV2luZG93IG9iamVjdCk7CisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgd2luZG93X2RlbWFuZHNfYXR0ZW50aW9uIChNZXRhLldpbmRvdyBvYmpl Y3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19lbnRlcmVkX21vbml0b3IgKGludCBv YmplY3QsIE1ldGEuV2luZG93IHAwKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3aW5kb3dfbGVm dF9tb25pdG9yIChpbnQgb2JqZWN0LCBNZXRhLldpbmRvdyBwMCk7CisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgd2luZG93X21hcmtlZF91cmdlbnQgKE1ldGEuV2luZG93IG9iamVjdCk7CisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgd29ya2FyZWFzX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgeDExX2Rpc3BsYXlfY2xvc2luZyAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB4MTFfZGlz cGxheV9vcGVuZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgeDExX2Rpc3BsYXlfc2V0dXAg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1kbmQuaCIs IHR5cGVfaWQgPSAibWV0YV9kbmRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIERuZCA6 IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl KV0KKysJCXByb3RlY3RlZCBEbmQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZG5kX2VudGVy ICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGRuZF9sZWF2ZSAoKTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBkbmRfcG9zaXRpb25fY2hhbmdlIChpbnQgb2JqZWN0LCBpbnQgcDApOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIEZyYW1lIHsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWlkbGUtbW9uaXRvci5oIiwgdHlwZV9p ZCA9ICJtZXRhX2lkbGVfbW9uaXRvcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgSWRs ZU1vbml0b3IgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgSWRsZU1vbml0b3IgKCk7CisrCQlwdWJsaWMgdWlu dCBhZGRfaWRsZV93YXRjaCAodWludDY0IGludGVydmFsX21zZWMsIG93bmVkIE1ldGEuSWRsZU1v bml0b3JXYXRjaEZ1bmM/IGNhbGxiYWNrKTsKKysJCXB1YmxpYyB1aW50IGFkZF91c2VyX2FjdGl2 ZV93YXRjaCAob3duZWQgTWV0YS5JZGxlTW9uaXRvcldhdGNoRnVuYz8gY2FsbGJhY2spOworKwkJ cHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuSWRsZU1vbml0b3IgZ2V0X2NvcmUgKCk7CisrCQlw dWJsaWMgc3RhdGljIHVub3duZWQgTWV0YS5JZGxlTW9uaXRvciBnZXRfZm9yX2RldmljZSAoQ2x1 dHRlci5JbnB1dERldmljZSBkZXZpY2UpOworKwkJcHVibGljIGludDY0IGdldF9pZGxldGltZSAo KTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV93YXRjaCAodWludCBpZCk7CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZSB7IG93bmVkIGdl dDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0g ImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAibWV0YV9rZXlfYmluZGluZ19nZXRfdHlwZSAoKSIp XQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIEtleUJpbmRpbmcgeworKwkJcHVibGljIHVp bnQgZ2V0X21hc2sgKCk7CisrCQlwdWJsaWMgTWV0YS5WaXJ0dWFsTW9kaWZpZXIgZ2V0X21vZGlm aWVycyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfbmFtZSAoKTsKKysJCXB1Ymxp YyBib29sIGlzX2J1aWx0aW4gKCk7CisrCQlwdWJsaWMgYm9vbCBpc19yZXZlcnNlZCAoKTsKKysJ CVtDQ29kZSAoY25hbWUgPSAibWV0YV9rZXliaW5kaW5nc19zZXRfY3VzdG9tX2hhbmRsZXIiKV0K KysJCXB1YmxpYyBzdGF0aWMgYm9vbCBzZXRfY3VzdG9tX2hhbmRsZXIgKHN0cmluZyBuYW1lLCBv d25lZCBNZXRhLktleUhhbmRsZXJGdW5jPyBoYW5kbGVyKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWxhdW5jaC1jb250ZXh0LmgiLCB0eXBlX2lkID0gIm1l dGFfbGF1bmNoX2NvbnRleHRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIExhdW5jaENv bnRleHQgOiBHTGliLkFwcExhdW5jaENvbnRleHQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIExhdW5jaENvbnRleHQgKCk7CisrCQlw dWJsaWMgdm9pZCBzZXRfdGltZXN0YW1wICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2 b2lkIHNldF93b3Jrc3BhY2UgKE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSk7CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkRpc3BsYXkgZGlzcGxheSB7IG93bmVkIGdldDsg Y29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IHRpbWVz dGFtcCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRh LldvcmtzcGFjZSB3b3Jrc3BhY2UgeyBvd25lZCBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtbW9uaXRvci1tYW5hZ2VyLmgiLCB0eXBlX2lk ID0gIm1ldGFfbW9uaXRvcl9tYW5hZ2VyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBN b25pdG9yTWFuYWdlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBNb25pdG9yTWFuYWdlciAoKTsKKysJCXB1 YmxpYyBib29sIGNhbl9zd2l0Y2hfY29uZmlnICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IE1ldGEuTW9uaXRvck1hbmFnZXIgQGdldCAoKTsKKysJCXB1YmxpYyBzdGF0aWMgaW50IGdldF9k aXNwbGF5X2NvbmZpZ3VyYXRpb25fdGltZW91dCAoKTsKKysJCXB1YmxpYyBib29sIGdldF9pc19i dWlsdGluX2Rpc3BsYXlfb24gKCk7CisrCQlwdWJsaWMgaW50IGdldF9tb25pdG9yX2Zvcl9jb25u ZWN0b3IgKHN0cmluZyBjb25uZWN0b3IpOworKwkJcHVibGljIE1ldGEuTW9uaXRvclN3aXRjaENv bmZpZ1R5cGUgZ2V0X3N3aXRjaF9jb25maWcgKCk7CisrCQlwdWJsaWMgdm9pZCBzd2l0Y2hfY29u ZmlnIChNZXRhLk1vbml0b3JTd2l0Y2hDb25maWdUeXBlIGNvbmZpZ190eXBlKTsKKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuQmFja2VuZCBiYWNrZW5kIHsgb3duZWQgZ2V0 OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjb25maXJtX2Rpc3BsYXlfY2hh bmdlICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIG1vbml0b3JzX2NoYW5nZWQgKCk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgbW9uaXRvcnNfY2hhbmdlZF9pbnRlcm5hbCAoKTsKKysJCXB1Ymxp YyBzaWduYWwgdm9pZCBwb3dlcl9zYXZlX21vZGVfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXBsdWdpbi5oIiwgdHlwZV9pZCA9ICJtZXRh X3BsdWdpbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgUGx1Z2luIDog R0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIFBsdWdpbiAoKTsKKysJCXB1YmxpYyBib29sIGJlZ2luX21vZGFsIChN ZXRhLk1vZGFsT3B0aW9ucyBvcHRpb25zLCB1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2 b2lkIGNvbXBsZXRlX2Rpc3BsYXlfY2hhbmdlIChib29sIG9rKTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIGNvbmZpcm1fZGlzcGxheV9jaGFuZ2UgKCk7CisrCQlbTm9X cmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBkZXN0cm95IChNZXRhLldpbmRvd0FjdG9y IGFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIGRlc3Ryb3lfY29tcGxldGVkIChNZXRhLldpbmRvd0Fj dG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIGVuZF9tb2RhbCAodWludDMyIHRpbWVzdGFtcCk7 CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLkRpc3BsYXkgZ2V0X2Rpc3BsYXkgKCk7CisrCQlwdWJs aWMgdW5vd25lZCBNZXRhLlBsdWdpbkluZm8/IGdldF9pbmZvICgpOworKwkJW05vV3JhcHBlcl0K KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgaGlkZV90aWxlX3ByZXZpZXcgKCk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBrZXliaW5kaW5nX2ZpbHRlciAoTWV0YS5LZXlC aW5kaW5nIGJpbmRpbmcpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg a2lsbF9zd2l0Y2hfd29ya3NwYWNlICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQga2lsbF93aW5kb3dfZWZmZWN0cyAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBsb2NhdGVfcG9pbnRlciAoKTsK KysJCXB1YmxpYyBzdGF0aWMgdm9pZCBtYW5hZ2VyX3NldF9wbHVnaW5fdHlwZSAoR0xpYi5UeXBl IGd0eXBlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG1hcCAoTWV0 YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBtYXBfY29tcGxldGVkIChNZXRh LldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIG1pbmltaXplIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIG1p bmltaXplX2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBNZXRhLlBsdWdpbkluZm8/IHBsdWdpbl9pbmZv ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgc2hvd190aWxlX3By ZXZpZXcgKE1ldGEuV2luZG93IHdpbmRvdywgTWV0YS5SZWN0YW5nbGUgdGlsZV9yZWN0LCBpbnQg dGlsZV9tb25pdG9yX251bWJlcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwg dm9pZCBzaG93X3dpbmRvd19tZW51IChNZXRhLldpbmRvdyB3aW5kb3csIE1ldGEuV2luZG93TWVu dVR5cGUgbWVudSwgaW50IHgsIGludCB5KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIHNob3dfd2luZG93X21lbnVfZm9yX3JlY3QgKE1ldGEuV2luZG93IHdpbmRvdywg TWV0YS5XaW5kb3dNZW51VHlwZSBtZW51LCBNZXRhLlJlY3RhbmdsZSByZWN0KTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNpemVfY2hhbmdlIChNZXRhLldpbmRvd0Fj dG9yIGFjdG9yLCBNZXRhLlNpemVDaGFuZ2Ugd2hpY2hfY2hhbmdlLCBNZXRhLlJlY3RhbmdsZSBv bGRfZnJhbWVfcmVjdCwgTWV0YS5SZWN0YW5nbGUgb2xkX2J1ZmZlcl9yZWN0KTsKKysJCXB1Ymxp YyB2b2lkIHNpemVfY2hhbmdlX2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaXplX2NoYW5nZWQgKE1ldGEu V2luZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgc3RhcnQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzd2l0 Y2hfd29ya3NwYWNlIChpbnQgZnJvbSwgaW50IHRvLCBNZXRhLk1vdGlvbkRpcmVjdGlvbiBkaXJl Y3Rpb24pOworKwkJcHVibGljIHZvaWQgc3dpdGNoX3dvcmtzcGFjZV9jb21wbGV0ZWQgKCk7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCB1bm1pbmltaXplIChNZXRhLldp bmRvd0FjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHVubWluaW1pemVfY29tcGxldGVkIChN ZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVh bCBib29sIHhldmVudF9maWx0ZXIgKFguRXZlbnQgZXZlbnQpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtcmVtb3RlLWFjY2Vzcy1jb250cm9sbGVyLmgiLCB0 eXBlX2lkID0gIm1ldGFfcmVtb3RlX2FjY2Vzc19jb250cm9sbGVyX2dldF90eXBlICgpIildCisr CXB1YmxpYyBjbGFzcyBSZW1vdGVBY2Nlc3NDb250cm9sbGVyIDogR0xpYi5PYmplY3QgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFJl bW90ZUFjY2Vzc0NvbnRyb2xsZXIgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbmV3X2hhbmRs ZSAoTWV0YS5SZW1vdGVBY2Nlc3NIYW5kbGUgb2JqZWN0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXJlbW90ZS1hY2Nlc3MtY29udHJvbGxlci5oIiwgdHlw ZV9pZCA9ICJtZXRhX3JlbW90ZV9hY2Nlc3NfaGFuZGxlX2dldF90eXBlICgpIildCisrCXB1Ymxp YyBjbGFzcyBSZW1vdGVBY2Nlc3NIYW5kbGUgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUmVtb3RlQWNjZXNz SGFuZGxlICgpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzdG9wICgpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIHN0b3BwZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgdHlwZV9pZCA9ICJtZXRhX3NlbGVjdGlvbl9nZXRfdHlwZSAoKSIpXQor KwlwdWJsaWMgY2xhc3MgU2VsZWN0aW9uIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFNlbGVjdGlvbiAoTWV0YS5E aXNwbGF5IGRpc3BsYXkpOworKwkJcHVibGljIEdMaWIuTGlzdDxzdHJpbmc+IGdldF9taW1ldHlw ZXMgKE1ldGEuU2VsZWN0aW9uVHlwZSBzZWxlY3Rpb25fdHlwZSk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfb3duZXIgKE1ldGEuU2VsZWN0aW9uVHlwZSBzZWxlY3Rpb25fdHlwZSwgTWV0YS5TZWxlY3Rp b25Tb3VyY2Ugb3duZXIpOworKwkJcHVibGljIGFzeW5jIGJvb2wgdHJhbnNmZXJfYXN5bmMgKE1l dGEuU2VsZWN0aW9uVHlwZSBzZWxlY3Rpb25fdHlwZSwgc3RyaW5nIG1pbWV0eXBlLCBzc2l6ZV90 IHNpemUsIEdMaWIuT3V0cHV0U3RyZWFtIG91dHB1dCwgR0xpYi5DYW5jZWxsYWJsZT8gY2FuY2Vs bGFibGUpIHRocm93cyBHTGliLkVycm9yOworKwkJcHVibGljIHZvaWQgdW5zZXRfb3duZXIgKE1l dGEuU2VsZWN0aW9uVHlwZSBzZWxlY3Rpb25fdHlwZSwgTWV0YS5TZWxlY3Rpb25Tb3VyY2Ugb3du ZXIpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIG93bmVyX2NoYW5nZWQgKHVpbnQgb2JqZWN0LCBN ZXRhLlNlbGVjdGlvblNvdXJjZSBwMCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgdHlwZV9pZCA9ICJtZXRhX3NlbGVjdGlvbl9zb3VyY2VfZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNlbGVjdGlvblNvdXJjZSA6IEdMaWIuT2JqZWN0IHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3Rl ZCBTZWxlY3Rpb25Tb3VyY2UgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBHTGliLkxpc3Q8c3RyaW5n PiBnZXRfbWltZXR5cGVzICgpOworKwkJcHVibGljIGJvb2wgaXNfYWN0aXZlICgpOworKwkJcHVi bGljIHZpcnR1YWwgYXN5bmMgR0xpYi5JbnB1dFN0cmVhbSByZWFkX2FzeW5jIChzdHJpbmcgbWlt ZXR5cGUsIEdMaWIuQ2FuY2VsbGFibGU/IGNhbmNlbGxhYmxlKSB0aHJvd3MgR0xpYi5FcnJvcjsK KysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGFjdGl2YXRlZCAoKTsKKysJCXB1YmxpYyB2 aXJ0dWFsIHNpZ25hbCB2b2lkIGRlYWN0aXZhdGVkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIHR5cGVfaWQgPSAibWV0YV9zZWxlY3Rpb25fc291 cmNlX21lbW9yeV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU2VsZWN0aW9uU291cmNl TWVtb3J5IDogTWV0YS5TZWxlY3Rpb25Tb3VyY2UgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiTWV0YVNlbGVjdGlvblNvdXJjZSoiKV0KKysJCXB1 YmxpYyBTZWxlY3Rpb25Tb3VyY2VNZW1vcnkgKHN0cmluZyBtaW1ldHlwZSwgR0xpYi5CeXRlcyBj b250ZW50KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXNl dHRpbmdzLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBj bGFzcyBTZXR0aW5ncyB7CisrCQlwdWJsaWMgaW50IGdldF9mb250X2RwaSAoKTsKKysJCXB1Ymxp YyBpbnQgZ2V0X3VpX3NjYWxpbmdfZmFjdG9yICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIHJlZl9mdW5jdGlvbiA9ICJtZXRhX3NoYWRvd19yZWYi LCB0eXBlX2lkID0gIm1ldGFfc2hhZG93X2dldF90eXBlICgpIiwgdW5yZWZfZnVuY3Rpb24gPSAi bWV0YV9zaGFkb3dfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBTaGFkb3cg eworKwkJcHVibGljIHZvaWQgZ2V0X2JvdW5kcyAoaW50IHdpbmRvd194LCBpbnQgd2luZG93X3ks IGludCB3aW5kb3dfd2lkdGgsIGludCB3aW5kb3dfaGVpZ2h0LCBDYWlyby5SZWN0YW5nbGVJbnQg Ym91bmRzKTsKKysJCXB1YmxpYyB2b2lkIHBhaW50IChDb2dsLkZyYW1lYnVmZmVyIGZyYW1lYnVm ZmVyLCBpbnQgd2luZG93X3gsIGludCB3aW5kb3dfeSwgaW50IHdpbmRvd193aWR0aCwgaW50IHdp bmRvd19oZWlnaHQsIHVpbnQ4IG9wYWNpdHksIENhaXJvLlJlZ2lvbj8gY2xpcCwgYm9vbCBjbGlw X3N0cmljdGx5KTsKKysJCXB1YmxpYyBNZXRhLlNoYWRvdyBAcmVmICgpOworKwkJcHVibGljIHZv aWQgdW5yZWYgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0 YS1zaGFkb3ctZmFjdG9yeS5oIiwgdHlwZV9pZCA9ICJtZXRhX3NoYWRvd19mYWN0b3J5X2dldF90 eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTaGFkb3dGYWN0b3J5IDogR0xpYi5PYmplY3Qgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFNo YWRvd0ZhY3RvcnkgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgTWV0YS5TaGFkb3dGYWN0 b3J5IGdldF9kZWZhdWx0ICgpOworKwkJcHVibGljIE1ldGEuU2hhZG93UGFyYW1zIGdldF9wYXJh bXMgKHN0cmluZyBjbGFzc19uYW1lLCBib29sIGZvY3VzZWQpOworKwkJcHVibGljIE1ldGEuU2hh ZG93IGdldF9zaGFkb3cgKE1ldGEuV2luZG93U2hhcGUgc2hhcGUsIGludCB3aWR0aCwgaW50IGhl aWdodCwgc3RyaW5nIGNsYXNzX25hbWUsIGJvb2wgZm9jdXNlZCk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfcGFyYW1zIChzdHJpbmcgY2xhc3NfbmFtZSwgYm9vbCBmb2N1c2VkLCBNZXRhLlNoYWRvd1Bh cmFtcyBAcGFyYW1zKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjaGFuZ2VkICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc2hhcGVkLXRleHR1cmUuaCIs IHR5cGVfaWQgPSAibWV0YV9zaGFwZWRfdGV4dHVyZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMg Y2xhc3MgU2hhcGVkVGV4dHVyZSA6IEdMaWIuT2JqZWN0LCBDbHV0dGVyLkNvbnRlbnQgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNo YXBlZFRleHR1cmUgKCk7CisrCQlwdWJsaWMgQ2Fpcm8uU3VyZmFjZT8gZ2V0X2ltYWdlIChDYWly by5SZWN0YW5nbGVJbnQ/IGNsaXApOworKwkJcHVibGljIHVub3duZWQgQ29nbC5UZXh0dXJlIGdl dF90ZXh0dXJlICgpOworKwkJcHVibGljIHZvaWQgc2V0X2NyZWF0ZV9taXBtYXBzIChib29sIGNy ZWF0ZV9taXBtYXBzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tYXNrX3RleHR1cmUgKENvZ2wuVGV4 dHVyZSBtYXNrX3RleHR1cmUpOworKwkJcHVibGljIHZvaWQgc2V0X29wYXF1ZV9yZWdpb24gKG93 bmVkIENhaXJvLlJlZ2lvbiBvcGFxdWVfcmVnaW9uKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBz aXplX2NoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWV0YS1zb3VuZC1wbGF5ZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9zb3VuZF9wbGF5ZXJfZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNvdW5kUGxheWVyIDogR0xpYi5PYmplY3QgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFNv dW5kUGxheWVyICgpOworKwkJcHVibGljIHZvaWQgcGxheV9mcm9tX2ZpbGUgKEdMaWIuRmlsZSBm aWxlLCBzdHJpbmcgZGVzY3JpcHRpb24sIEdMaWIuQ2FuY2VsbGFibGU/IGNhbmNlbGxhYmxlID0g bnVsbCk7CisrCQlwdWJsaWMgdm9pZCBwbGF5X2Zyb21fdGhlbWUgKHN0cmluZyBuYW1lLCBzdHJp bmcgZGVzY3JpcHRpb24sIEdMaWIuQ2FuY2VsbGFibGU/IGNhbmNlbGxhYmxlID0gbnVsbCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1zdGFnZS5oIiwgdHlw ZV9pZCA9ICJtZXRhX3N0YWdlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTdGFnZSA6 IENsdXR0ZXIuU3RhZ2UsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0 dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTdGFnZSAoKTsKKysJCXB1Ymxp YyBzdGF0aWMgYm9vbCBpc19mb2N1c2VkIChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgYWN0b3JzX3BhaW50ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1zdGFydHVwLW5vdGlmaWNhdGlvbi5oIiwgdHlwZV9pZCA9 ICJtZXRhX3N0YXJ0dXBfbm90aWZpY2F0aW9uX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFz cyBTdGFydHVwTm90aWZpY2F0aW9uIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFN0YXJ0dXBOb3RpZmljYXRp b24gKCk7CisrCQlwdWJsaWMgTWV0YS5MYXVuY2hDb250ZXh0IGNyZWF0ZV9sYXVuY2hlciAoKTsK KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuRGlzcGxheSBkaXNwbGF5IHsg b3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjaGFuZ2VkICh2 b2lkKiBvYmplY3QpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21h aW4uaCIsIHR5cGVfaWQgPSAibWV0YV9zdGFydHVwX3NlcXVlbmNlX2dldF90eXBlICgpIildCisr CXB1YmxpYyBjbGFzcyBTdGFydHVwU2VxdWVuY2UgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU3RhcnR1cFNl cXVlbmNlICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9hcHBsaWNhdGlvbl9pZCAo KTsKKysJCXB1YmxpYyBib29sIGdldF9jb21wbGV0ZWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBz dHJpbmcgZ2V0X2ljb25fbmFtZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfaWQg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X25hbWUgKCk7CisrCQlwdWJsaWMgdWlu dDY0IGdldF90aW1lc3RhbXAgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3dtY2xh c3MgKCk7CisrCQlwdWJsaWMgaW50IGdldF93b3Jrc3BhY2UgKCk7CisrCQlwdWJsaWMgc3RyaW5n IGFwcGxpY2F0aW9uX2lkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzdHJpbmcgaWNv bl9uYW1lIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzdHJpbmcgaWQgeyBnZXQ7IGNv bnN0cnVjdDsgfQorKwkJcHVibGljIHN0cmluZyBuYW1lIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJ CXB1YmxpYyB1aW50NjQgdGltZXN0YW1wIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBz dHJpbmcgd21jbGFzcyB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgaW50IHdvcmtzcGFj ZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwg dm9pZCBjb21wbGV0ZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS90aGVtZS5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlwdWJsaWMg Y2xhc3MgVGhlbWUgeworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS93aW5kb3cuaCIsIHR5cGVfaWQgPSAibWV0YV93aW5kb3df Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIFdpbmRvdyA6IEdMaWIuT2Jq ZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXBy b3RlY3RlZCBXaW5kb3cgKCk7CisrCQlwdWJsaWMgdm9pZCBhY3RpdmF0ZSAodWludDMyIGN1cnJl bnRfdGltZSk7CisrCQlwdWJsaWMgdm9pZCBhY3RpdmF0ZV93aXRoX3dvcmtzcGFjZSAodWludDMy IGN1cnJlbnRfdGltZSwgTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlKTsKKysJCXB1YmxpYyBib29s IGFsbG93c19tb3ZlICgpOworKwkJcHVibGljIGJvb2wgYWxsb3dzX3Jlc2l6ZSAoKTsKKysJCXB1 YmxpYyB2b2lkIGJlZ2luX2dyYWJfb3AgKE1ldGEuR3JhYk9wIG9wLCBib29sIGZyYW1lX2FjdGlv biwgdWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgYm9vbCBjYW5fY2xvc2UgKCk7CisrCQlw dWJsaWMgYm9vbCBjYW5fbWF4aW1pemUgKCk7CisrCQlwdWJsaWMgYm9vbCBjYW5fbWluaW1pemUg KCk7CisrCQlwdWJsaWMgYm9vbCBjYW5fc2hhZGUgKCk7CisrCQlwdWJsaWMgdm9pZCBjaGFuZ2Vf d29ya3NwYWNlIChNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UpOworKwkJcHVibGljIHZvaWQgY2hh bmdlX3dvcmtzcGFjZV9ieV9pbmRleCAoaW50IHNwYWNlX2luZGV4LCBib29sIGFwcGVuZCk7Cisr CQlwdWJsaWMgdm9pZCBjaGVja19hbGl2ZSAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMg TWV0YS5SZWN0YW5nbGUgY2xpZW50X3JlY3RfdG9fZnJhbWVfcmVjdCAoTWV0YS5SZWN0YW5nbGUg Y2xpZW50X3JlY3QpOworKwkJcHVibGljIHZvaWQgY29tcHV0ZV9ncm91cCAoKTsKKysJCXB1Ymxp YyB2b2lkIEBkZWxldGUgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHVub3duZWQgTWV0 YS5XaW5kb3cgZmluZF9yb290X2FuY2VzdG9yICgpOworKwkJcHVibGljIHZvaWQgZm9jdXMgKHVp bnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgZm9yZWFjaF9hbmNlc3RvciAoTWV0YS5X aW5kb3dGb3JlYWNoRnVuYyBmdW5jKTsKKysJCXB1YmxpYyB2b2lkIGZvcmVhY2hfdHJhbnNpZW50 IChNZXRhLldpbmRvd0ZvcmVhY2hGdW5jIGZ1bmMpOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xl IGZyYW1lX3JlY3RfdG9fY2xpZW50X3JlY3QgKE1ldGEuUmVjdGFuZ2xlIGZyYW1lX3JlY3QpOwor KwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF9idWZmZXJfcmVjdCAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIHN0cmluZyBnZXRfY2xpZW50X21hY2hpbmUgKCk7CisrCQlwdWJsaWMgTWV0YS5XaW5k b3dDbGllbnRUeXBlIGdldF9jbGllbnRfdHlwZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdMaWIu T2JqZWN0IGdldF9jb21wb3NpdG9yX3ByaXZhdGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJp bmcgZ2V0X2Rlc2NyaXB0aW9uICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5EaXNwbGF5IGdl dF9kaXNwbGF5ICgpOworKwkJcHVibGljIHVub3duZWQgQ2Fpcm8uUmVnaW9uPyBnZXRfZnJhbWVf Ym91bmRzICgpOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF9mcmFtZV9yZWN0ICgpOwor KwkJcHVibGljIE1ldGEuRnJhbWVUeXBlIGdldF9mcmFtZV90eXBlICgpOworKwkJcHVibGljIHVu b3duZWQgc3RyaW5nIGdldF9ndGtfYXBwX21lbnVfb2JqZWN0X3BhdGggKCk7CisrCQlwdWJsaWMg dW5vd25lZCBzdHJpbmcgZ2V0X2d0a19hcHBsaWNhdGlvbl9pZCAoKTsKKysJCXB1YmxpYyB1bm93 bmVkIHN0cmluZyBnZXRfZ3RrX2FwcGxpY2F0aW9uX29iamVjdF9wYXRoICgpOworKwkJcHVibGlj IHVub3duZWQgc3RyaW5nIGdldF9ndGtfbWVudWJhcl9vYmplY3RfcGF0aCAoKTsKKysJCXB1Ymxp YyB1bm93bmVkIHN0cmluZyBnZXRfZ3RrX3RoZW1lX3ZhcmlhbnQgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBzdHJpbmcgZ2V0X2d0a191bmlxdWVfYnVzX25hbWUgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBzdHJpbmcgZ2V0X2d0a193aW5kb3dfb2JqZWN0X3BhdGggKCk7CisrCQlwdWJsaWMgYm9vbCBn ZXRfaWNvbl9nZW9tZXRyeSAob3V0IE1ldGEuUmVjdGFuZ2xlIHJlY3QpOworKwkJcHVibGljIHVp bnQ2NCBnZXRfaWQgKCk7CisrCQlwdWJsaWMgTWV0YS5TdGFja0xheWVyIGdldF9sYXllciAoKTsK KysJCXB1YmxpYyBNZXRhLk1heGltaXplRmxhZ3MgZ2V0X21heGltaXplZCAoKTsKKysJCXB1Ymxp YyBpbnQgZ2V0X21vbml0b3IgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X211dHRl cl9oaW50cyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3BpZCAoKTsKKysJCXB1YmxpYyB1bm93bmVk IHN0cmluZyBnZXRfcm9sZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfc2FuZGJv eGVkX2FwcF9pZCAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9zdGFibGVfc2VxdWVuY2UgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3N0YXJ0dXBfaWQgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBNZXRhLldpbmRvdz8gZ2V0X3RpbGVfbWF0Y2ggKCk7CisrCQlwdWJsaWMgdW5vd25lZCBz dHJpbmcgZ2V0X3RpdGxlICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5XaW5kb3cgZ2V0X3Ry YW5zaWVudF9mb3IgKCk7CisrCQlwdWJsaWMgdWludDMyIGdldF91c2VyX3RpbWUgKCk7CisrCQlw dWJsaWMgTWV0YS5XaW5kb3dUeXBlIGdldF93aW5kb3dfdHlwZSAoKTsKKysJCXB1YmxpYyB1bm93 bmVkIHN0cmluZyBnZXRfd21fY2xhc3MgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0 X3dtX2NsYXNzX2luc3RhbmNlICgpOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF93b3Jr X2FyZWFfYWxsX21vbml0b3JzICgpOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF93b3Jr X2FyZWFfY3VycmVudF9tb25pdG9yICgpOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF93 b3JrX2FyZWFfZm9yX21vbml0b3IgKGludCB3aGljaF9tb25pdG9yKTsKKysJCXB1YmxpYyB1bm93 bmVkIE1ldGEuV29ya3NwYWNlIGdldF93b3Jrc3BhY2UgKCk7CisrCQlwdWJsaWMgWC5XaW5kb3cg Z2V0X3h3aW5kb3cgKCk7CisrCQlwdWJsaWMgdm9pZCBncm91cF9sZWFkZXJfY2hhbmdlZCAoKTsK KysJCXB1YmxpYyBib29sIGhhc19mb2N1cyAoKTsKKysJCXB1YmxpYyBib29sIGlzX2Fib3ZlICgp OworKwkJcHVibGljIGJvb2wgaXNfYWx3YXlzX29uX2FsbF93b3Jrc3BhY2VzICgpOworKwkJcHVi bGljIGJvb2wgaXNfYW5jZXN0b3Jfb2ZfdHJhbnNpZW50IChNZXRhLldpbmRvdyB0cmFuc2llbnQp OworKwkJcHVibGljIGJvb2wgaXNfYXR0YWNoZWRfZGlhbG9nICgpOworKwkJcHVibGljIGJvb2wg aXNfY2xpZW50X2RlY29yYXRlZCAoKTsKKysJCXB1YmxpYyBib29sIGlzX2Z1bGxzY3JlZW4gKCk7 CisrCQlwdWJsaWMgYm9vbCBpc19oaWRkZW4gKCk7CisrCQlwdWJsaWMgYm9vbCBpc19tb25pdG9y X3NpemVkICgpOworKwkJcHVibGljIGJvb2wgaXNfb25fYWxsX3dvcmtzcGFjZXMgKCk7CisrCQlw dWJsaWMgYm9vbCBpc19vbl9wcmltYXJ5X21vbml0b3IgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19v dmVycmlkZV9yZWRpcmVjdCAoKTsKKysJCXB1YmxpYyBib29sIGlzX3JlbW90ZSAoKTsKKysJCXB1 YmxpYyBib29sIGlzX3NjcmVlbl9zaXplZCAoKTsKKysJCXB1YmxpYyBib29sIGlzX3NoYWRlZCAo KTsKKysJCXB1YmxpYyBib29sIGlzX3NraXBfdGFza2JhciAoKTsKKysJCXB1YmxpYyB2b2lkIGtp bGwgKCk7CisrCQlwdWJsaWMgYm9vbCBsb2NhdGVkX29uX3dvcmtzcGFjZSAoTWV0YS5Xb3Jrc3Bh Y2Ugd29ya3NwYWNlKTsKKysJCXB1YmxpYyB2b2lkIGxvd2VyICgpOworKwkJcHVibGljIHZvaWQg bWFrZV9hYm92ZSAoKTsKKysJCXB1YmxpYyB2b2lkIG1ha2VfZnVsbHNjcmVlbiAoKTsKKysJCXB1 YmxpYyB2b2lkIG1heGltaXplIChNZXRhLk1heGltaXplRmxhZ3MgZGlyZWN0aW9ucyk7CisrCQlw dWJsaWMgdm9pZCBtaW5pbWl6ZSAoKTsKKysJCXB1YmxpYyB2b2lkIG1vdmVfZnJhbWUgKGJvb2wg dXNlcl9vcCwgaW50IHJvb3RfeF9udywgaW50IHJvb3RfeV9udyk7CisrCQlwdWJsaWMgdm9pZCBt b3ZlX3Jlc2l6ZV9mcmFtZSAoYm9vbCB1c2VyX29wLCBpbnQgcm9vdF94X253LCBpbnQgcm9vdF95 X253LCBpbnQgdywgaW50IGgpOworKwkJcHVibGljIHZvaWQgbW92ZV90b19tb25pdG9yIChpbnQg bW9uaXRvcik7CisrCQlwdWJsaWMgdm9pZCByYWlzZSAoKTsKKysJCXB1YmxpYyBib29sIHJlcXVl c3RlZF9ieXBhc3NfY29tcG9zaXRvciAoKTsKKysJCXB1YmxpYyBib29sIHJlcXVlc3RlZF9kb250 X2J5cGFzc19jb21wb3NpdG9yICgpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbXBvc2l0b3JfcHJp dmF0ZSAoR0xpYi5PYmplY3QgcHJpdik7CisrCQlwdWJsaWMgdm9pZCBzZXRfZGVtYW5kc19hdHRl bnRpb24gKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaWNvbl9nZW9tZXRyeSAoTWV0YS5SZWN0YW5n bGU/IHJlY3QpOworKwkJcHVibGljIHZvaWQgc2hhZGUgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJ cHVibGljIHZvaWQgc2hvdmVfdGl0bGViYXJfb25zY3JlZW4gKCk7CisrCQlwdWJsaWMgYm9vbCBz aG93aW5nX29uX2l0c193b3Jrc3BhY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBzaHV0ZG93bl9ncm91 cCAoKTsKKysJCXB1YmxpYyB2b2lkIHN0aWNrICgpOworKwkJcHVibGljIGJvb2wgdGl0bGViYXJf aXNfb25zY3JlZW4gKCk7CisrCQlwdWJsaWMgdm9pZCB1bm1ha2VfYWJvdmUgKCk7CisrCQlwdWJs aWMgdm9pZCB1bm1ha2VfZnVsbHNjcmVlbiAoKTsKKysJCXB1YmxpYyB2b2lkIHVubWF4aW1pemUg KE1ldGEuTWF4aW1pemVGbGFncyBkaXJlY3Rpb25zKTsKKysJCXB1YmxpYyB2b2lkIHVubWluaW1p emUgKCk7CisrCQlwdWJsaWMgdm9pZCB1bnNldF9kZW1hbmRzX2F0dGVudGlvbiAoKTsKKysJCXB1 YmxpYyB2b2lkIHVuc2hhZGUgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgdW5z dGljayAoKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgYWJvdmUgeyBn ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgYXBwZWFyc19mb2N1 c2VkIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGRlY29y YXRlZCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBkZW1h bmRzX2F0dGVudGlvbiB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg Ym9vbCBmdWxsc2NyZWVuIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0a19hcHBfbWVudV9v YmplY3RfcGF0aCB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBndGtfYXBwbGljYXRpb25faWQg eyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgZ3RrX2FwcGxpY2F0aW9uX29iamVjdF9wYXRoIHsg Z2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0a19tZW51YmFyX29iamVjdF9wYXRoIHsgZ2V0OyB9 CisrCQlwdWJsaWMgc3RyaW5nIGd0a191bmlxdWVfYnVzX25hbWUgeyBnZXQ7IH0KKysJCXB1Ymxp YyBzdHJpbmcgZ3RrX3dpbmRvd19vYmplY3RfcGF0aCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgdm9pZCogaWNvbiB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgYm9vbCBtYXhpbWl6ZWRfaG9yaXpvbnRhbGx5IHsgZ2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIG1heGltaXplZF92ZXJ0aWNhbGx5IHsg Z2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB2b2lkKiBtaW5pX2ljb24g eyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgbWluaW1pemVk IHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIG11dHRlcl9oaW50cyB7IGdldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBvbl9hbGxfd29ya3NwYWNlcyB7IGdldDsg fQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCByZXNpemVhYmxlIHsgZ2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHNraXBfdGFza2JhciB7 IGdldDsgfQorKwkJcHVibGljIHN0cmluZyB0aXRsZSB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgYm9vbCB1cmdlbnQgeyBnZXQ7IH0KKysJCXB1YmxpYyB1aW50IHVz ZXJfdGltZSB7IGdldDsgfQorKwkJcHVibGljIE1ldGEuV2luZG93VHlwZSB3aW5kb3dfdHlwZSB7 IGdldDsgfQorKwkJcHVibGljIHN0cmluZyB3bV9jbGFzcyB7IGdldDsgfQorKwkJcHVibGljIHNp Z25hbCB2b2lkIHBvc2l0aW9uX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcmFp c2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNob3duICgpOworKwkJcHVibGljIHNpZ25h bCB2b2lkIHNpemVfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB1bm1hbmFnZWQg KCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd29ya3NwYWNlX2NoYW5nZWQgKCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS13aW5kb3ctYWN0b3IuaCIsIHR5 cGVfaWQgPSAibWV0YV93aW5kb3dfYWN0b3JfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3Ry YWN0IGNsYXNzIFdpbmRvd0FjdG9yIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBD bHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVj dGVkIFdpbmRvd0FjdG9yICgpOworKwkJcHVibGljIENhaXJvLlN1cmZhY2U/IGdldF9pbWFnZSAo Q2Fpcm8uUmVjdGFuZ2xlSW50PyBjbGlwKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93 IGdldF9tZXRhX3dpbmRvdyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuU2hhcGVkVGV4dHVy ZSBnZXRfdGV4dHVyZSAoKTsKKysJCXB1YmxpYyBib29sIGlzX2Rlc3Ryb3llZCAoKTsKKysJCXB1 YmxpYyB2b2lkIHN5bmNfdmlzaWJpbGl0eSAoKTsKKysJCXB1YmxpYyBNZXRhLldpbmRvdyBtZXRh X3dpbmRvdyB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgZGFtYWdl ZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBlZmZlY3RzX2NvbXBsZXRlZCAoKTsKKysJCXB1 YmxpYyBzaWduYWwgdm9pZCBmaXJzdF9mcmFtZSAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB0 aGF3ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS13 aW5kb3ctZ3JvdXAuaCIsIHR5cGVfaWQgPSAibWV0YV93aW5kb3dfZ3JvdXBfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGNsYXNzIFdpbmRvd0dyb3VwIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxl bWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNj cmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHJvdGVjdGVkIFdpbmRvd0dyb3VwICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21ldGEtd2luZG93LXNoYXBlLmgiLCByZWZfZnVuY3Rpb24gPSAibWV0YV93 aW5kb3dfc2hhcGVfcmVmIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd19zaGFwZV9nZXRfdHlwZSAo KSIsIHVucmVmX2Z1bmN0aW9uID0gIm1ldGFfd2luZG93X3NoYXBlX3VucmVmIildCisrCVtDb21w YWN0XQorKwlwdWJsaWMgY2xhc3MgV2luZG93U2hhcGUgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFdpbmRvd1NoYXBlIChDYWlyby5SZWdp b24gcmVnaW9uKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChNZXRhLldpbmRvd1NoYXBlIHNoYXBl X2IpOworKwkJcHVibGljIHZvaWQgZ2V0X2JvcmRlcnMgKGludCBib3JkZXJfdG9wLCBpbnQgYm9y ZGVyX3JpZ2h0LCBpbnQgYm9yZGVyX2JvdHRvbSwgaW50IGJvcmRlcl9sZWZ0KTsKKysJCXB1Ymxp YyB1aW50IGhhc2ggKCk7CisrCQlwdWJsaWMgTWV0YS5XaW5kb3dTaGFwZSBAcmVmICgpOworKwkJ cHVibGljIENhaXJvLlJlZ2lvbiB0b19yZWdpb24gKGludCBjZW50ZXJfd2lkdGgsIGludCBjZW50 ZXJfaGVpZ2h0KTsKKysJCXB1YmxpYyB2b2lkIHVucmVmICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL3dvcmtzcGFjZS5oIiwgdHlwZV9pZCA9ICJtZXRhX3dvcmtz cGFjZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgV29ya3NwYWNlIDogR0xpYi5PYmpl Y3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJv dGVjdGVkIFdvcmtzcGFjZSAoKTsKKysJCXB1YmxpYyB2b2lkIGFjdGl2YXRlICh1aW50MzIgdGlt ZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIGFjdGl2YXRlX3dpdGhfZm9jdXMgKE1ldGEuV2luZG93 IGZvY3VzX3RoaXMsIHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHVub3duZWQgTWV0YS5E aXNwbGF5IGdldF9kaXNwbGF5ICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5Xb3Jrc3BhY2Ug Z2V0X25laWdoYm9yIChNZXRhLk1vdGlvbkRpcmVjdGlvbiBkaXJlY3Rpb24pOworKwkJcHVibGlj IE1ldGEuUmVjdGFuZ2xlIGdldF93b3JrX2FyZWFfYWxsX21vbml0b3JzICgpOworKwkJcHVibGlj IE1ldGEuUmVjdGFuZ2xlIGdldF93b3JrX2FyZWFfZm9yX21vbml0b3IgKGludCB3aGljaF9tb25p dG9yKTsKKysJCXB1YmxpYyBpbnQgaW5kZXggKCk7CisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsg TWV0YS5XaW5kb3c+IGxpc3Rfd2luZG93cyAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9idWlsdGlu X3N0cnV0cyAoR0xpYi5TTGlzdDxNZXRhLlN0cnV0Pz4gc3RydXRzKTsKKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIHVpbnQgbl93aW5kb3dzIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IHdvcmtzcGFjZV9pbmRleCB7IGdldDsgfQorKwkJcHVi bGljIHNpZ25hbCB2b2lkIHdpbmRvd19hZGRlZCAoTWV0YS5XaW5kb3cgb2JqZWN0KTsKKysJCXB1 YmxpYyBzaWduYWwgdm9pZCB3aW5kb3dfcmVtb3ZlZCAoTWV0YS5XaW5kb3cgb2JqZWN0KTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXdvcmtzcGFjZS1tYW5h Z2VyLmgiLCB0eXBlX2lkID0gIm1ldGFfd29ya3NwYWNlX21hbmFnZXJfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGNsYXNzIFdvcmtzcGFjZU1hbmFnZXIgOiBHTGliLk9iamVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgV29ya3Nw YWNlTWFuYWdlciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV29ya3NwYWNlIGFwcGVuZF9u ZXdfd29ya3NwYWNlIChib29sIGFjdGl2YXRlLCB1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1Ymxp YyB1bm93bmVkIE1ldGEuV29ya3NwYWNlIGdldF9hY3RpdmVfd29ya3NwYWNlICgpOworKwkJcHVi bGljIGludCBnZXRfYWN0aXZlX3dvcmtzcGFjZV9pbmRleCAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0 X25fd29ya3NwYWNlcyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV29ya3NwYWNlPyBnZXRf d29ya3NwYWNlX2J5X2luZGV4IChpbnQgaW5kZXgpOworKwkJcHVibGljIHZvaWQgb3ZlcnJpZGVf d29ya3NwYWNlX2xheW91dCAoTWV0YS5EaXNwbGF5Q29ybmVyIHN0YXJ0aW5nX2Nvcm5lciwgYm9v bCB2ZXJ0aWNhbF9sYXlvdXQsIGludCBuX3Jvd3MsIGludCBuX2NvbHVtbnMpOworKwkJcHVibGlj IHZvaWQgcmVtb3ZlX3dvcmtzcGFjZSAoTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlLCB1aW50MzIg dGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHJlb3JkZXJfd29ya3NwYWNlIChNZXRhLldvcmtz cGFjZSB3b3Jrc3BhY2UsIGludCBuZXdfaW5kZXgpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgaW50IGxheW91dF9jb2x1bW5zIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBpbnQgbGF5b3V0X3Jvd3MgeyBnZXQ7IH0KKysJCXB1YmxpYyBpbnQgbl93 b3Jrc3BhY2VzIHsgZ2V0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgYWN0aXZlX3dvcmtzcGFj ZV9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNob3dpbmdfZGVza3RvcF9jaGFu Z2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmtzcGFjZV9hZGRlZCAoaW50IG9iamVj dCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd29ya3NwYWNlX3JlbW92ZWQgKGludCBvYmplY3Qp OworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmtzcGFjZV9zd2l0Y2hlZCAoaW50IG9iamVjdCwg aW50IHAwLCBNZXRhLk1vdGlvbkRpcmVjdGlvbiBwMSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQg d29ya3NwYWNlc19yZW9yZGVyZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWV0YS14MTEtZGlzcGxheS5oIiwgdHlwZV9pZCA9ICJtZXRhX3gxMV9kaXNwbGF5 X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBYMTFEaXNwbGF5IDogR0xpYi5PYmplY3Qg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVj dGVkIFgxMURpc3BsYXkgKCk7CisrCQlwdWJsaWMgdm9pZCBjbGVhcl9zdGFnZV9pbnB1dF9yZWdp b24gKCk7CisrCQlwdWJsaWMgaW50IGdldF9kYW1hZ2VfZXZlbnRfYmFzZSAoKTsKKysJCXB1Ymxp YyBpbnQgZ2V0X3NjcmVlbl9udW1iZXIgKCk7CisrCQlwdWJsaWMgaW50IGdldF9zaGFwZV9ldmVu dF9iYXNlICgpOworKwkJcHVibGljIGJvb2wgaGFzX3NoYXBlICgpOworKwkJcHVibGljIHZvaWQg c2V0X2NtX3NlbGVjdGlvbiAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zdGFnZV9pbnB1dF9yZWdp b24gKFguWHNlcnZlclJlZ2lvbiByZWdpb24pOworKwkJcHVibGljIGJvb2wgeHdpbmRvd19pc19h X25vX2ZvY3VzX3dpbmRvdyAoWC5XaW5kb3cgeHdpbmRvdyk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1jbG9zZS1kaWFsb2cuaCIsIHR5cGVfY25hbWUgPSAi TWV0YUNsb3NlRGlhbG9nSW50ZXJmYWNlIiwgdHlwZV9pZCA9ICJtZXRhX2Nsb3NlX2RpYWxvZ19n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIENsb3NlRGlhbG9nIDogR0xpYi5PYmpl Y3QgeworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgZm9jdXMgKCk7CisrCQlwdWJsaWMgYWJzdHJh Y3Qgdm9pZCBoaWRlICgpOworKwkJcHVibGljIGJvb2wgaXNfdmlzaWJsZSAoKTsKKysJCXB1Ymxp YyBhYnN0cmFjdCB2b2lkIHNob3cgKCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBhYnN0cmFjdCBNZXRhLldpbmRvdyB3aW5kb3cgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQor KwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcmVzcG9uc2UgKE1ldGEuQ2xv c2VEaWFsb2dSZXNwb25zZSByZXNwb25zZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWV0YS1pbmhpYml0LXNob3J0Y3V0cy1kaWFsb2cuaCIsIHR5cGVfY25hbWUg PSAiTWV0YUluaGliaXRTaG9ydGN1dHNEaWFsb2dJbnRlcmZhY2UiLCB0eXBlX2lkID0gIm1ldGFf aW5oaWJpdF9zaG9ydGN1dHNfZGlhbG9nX2dldF90eXBlICgpIildCisrCXB1YmxpYyBpbnRlcmZh Y2UgSW5oaWJpdFNob3J0Y3V0c0RpYWxvZyA6IEdMaWIuT2JqZWN0IHsKKysJCXB1YmxpYyBhYnN0 cmFjdCB2b2lkIGhpZGUgKCk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzaG93ICgpOworKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYWJzdHJhY3QgTWV0YS5XaW5kb3cgd2luZG93 IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtIYXNFbWl0dGVyXQorKwkJcHVibGljIHNp Z25hbCB2b2lkIHJlc3BvbnNlIChNZXRhLkluaGliaXRTaG9ydGN1dHNEaWFsb2dSZXNwb25zZSBy ZXNwb25zZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5o IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgQnV0dG9uTGF5b3V0IHsK KysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdlYWsgTWV0YS5C dXR0b25GdW5jdGlvbiBsZWZ0X2J1dHRvbnNbNF07CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9 IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIGJvb2wgbGVmdF9idXR0b25zX2hhc19zcGFjZXJbNF07 CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIE1ldGEu QnV0dG9uRnVuY3Rpb24gcmlnaHRfYnV0dG9uc1s0XTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3Ro ID0gZmFsc2UpXQorKwkJcHVibGljIHdlYWsgYm9vbCByaWdodF9idXR0b25zX2hhc19zcGFjZXJb NF07CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaGFz X3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgRWRnZSB7CisrCQlwdWJsaWMgTWV0 YS5SZWN0YW5nbGUgcmVjdDsKKysJCXB1YmxpYyBNZXRhLlNpZGUgc2lkZV90eXBlOworKwkJcHVi bGljIE1ldGEuRWRnZVR5cGUgZWRnZV90eXBlOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3Ry dWN0IEZyYW1lQm9yZGVycyB7CisrCQlwdWJsaWMgR3RrLkJvcmRlciB2aXNpYmxlOworKwkJcHVi bGljIEd0ay5Cb3JkZXIgaW52aXNpYmxlOworKwkJcHVibGljIEd0ay5Cb3JkZXIgdG90YWw7Cisr CQlwdWJsaWMgdm9pZCBjbGVhciAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tZXRhLXBsdWdpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBz dHJ1Y3QgUGx1Z2luSW5mbyB7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgbmFtZTsKKysJCXB1Ymxp YyB3ZWFrIHN0cmluZyB2ZXJzaW9uOworKwkJcHVibGljIHdlYWsgc3RyaW5nIGF1dGhvcjsKKysJ CXB1YmxpYyB3ZWFrIHN0cmluZyBsaWNlbnNlOworKwkJcHVibGljIHdlYWsgc3RyaW5nIGRlc2Ny aXB0aW9uOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBsdWdpblZlcnNpb24gewor KwkJcHVibGljIHVpbnQgdmVyc2lvbl9tYWpvcjsKKysJCXB1YmxpYyB1aW50IHZlcnNpb25fbWlu b3I7CisrCQlwdWJsaWMgdWludCB2ZXJzaW9uX21pY3JvOworKwkJcHVibGljIHVpbnQgdmVyc2lv bl9hcGk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwg Y29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRf ZnJlZSIsIHR5cGVfaWQgPSAibWV0YV9yZWN0YW5nbGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IHN0cnVjdCBSZWN0YW5nbGUgeworKwkJcHVibGljIGludCB4OworKwkJcHVibGljIGludCB5Owor KwkJcHVibGljIGludCB3aWR0aDsKKysJCXB1YmxpYyBpbnQgaGVpZ2h0OworKwkJcHVibGljIGlu dCBhcmVhICgpOworKwkJcHVibGljIGJvb2wgY29udGFpbnNfcmVjdCAoTWV0YS5SZWN0YW5nbGUg aW5uZXJfcmVjdCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGU/IGNvcHkgKCk7CisrCQlwdWJs aWMgYm9vbCBjb3VsZF9maXRfcmVjdCAoTWV0YS5SZWN0YW5nbGUgaW5uZXJfcmVjdCk7CisrCQlw dWJsaWMgYm9vbCBlcXVhbCAoTWV0YS5SZWN0YW5nbGUgc3JjMik7CisrCQlwdWJsaWMgdm9pZCBm cmVlICgpOworKwkJcHVibGljIGJvb2wgaG9yaXpfb3ZlcmxhcCAoTWV0YS5SZWN0YW5nbGUgcmVj dDIpOworKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0IChNZXRhLlJlY3RhbmdsZSBzcmMyLCBvdXQg TWV0YS5SZWN0YW5nbGUgZGVzdCk7CisrCQlwdWJsaWMgYm9vbCBvdmVybGFwIChNZXRhLlJlY3Rh bmdsZSByZWN0Mik7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgdW5pb24gKE1ldGEuUmVjdGFu Z2xlIHJlY3QyKTsKKysJCXB1YmxpYyBib29sIHZlcnRfb3ZlcmxhcCAoTWV0YS5SZWN0YW5nbGUg cmVjdDIpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFNoYWRvd1BhcmFtcyB7Cisr CQlwdWJsaWMgaW50IHJhZGl1czsKKysJCXB1YmxpYyBpbnQgdG9wX2ZhZGU7CisrCQlwdWJsaWMg aW50IHhfb2Zmc2V0OworKwkJcHVibGljIGludCB5X29mZnNldDsKKysJCXB1YmxpYyB1aW50OCBv cGFjaXR5OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFN0cnV0IHsKKysJCXB1Ymxp YyBNZXRhLlJlY3RhbmdsZSByZWN0OworKwkJcHVibGljIE1ldGEuU2lkZSBzaWRlOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVU QV9CQVJSSUVSX0RJUkVDVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfYmFycmllcl9kaXJlY3Rpb25f Z2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBCYXJyaWVyRGlyZWN0aW9u IHsKKysJCVBPU0lUSVZFX1gsCisrCQlQT1NJVElWRV9ZLAorKwkJTkVHQVRJVkVfWCwKKysJCU5F R0FUSVZFX1kKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi LCBjcHJlZml4ID0gIk1FVEFfQlVUVE9OX0ZVTkNUSU9OXyIsIHR5cGVfaWQgPSAibWV0YV9idXR0 b25fZnVuY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gQnV0dG9uRnVuY3Rpb24g eworKwkJTUVOVSwKKysJCU1JTklNSVpFLAorKwkJTUFYSU1JWkUsCisrCQlDTE9TRSwKKysJCUxB U1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJl Zml4ID0gIk1FVEFfQ0xPU0VfRElBTE9HX1JFU1BPTlNFXyIsIHR5cGVfaWQgPSAibWV0YV9jbG9z ZV9kaWFsb2dfcmVzcG9uc2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gQ2xvc2VEaWFs b2dSZXNwb25zZSB7CisrCQlXQUlULAorKwkJRk9SQ0VfQ0xPU0UKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfQ09NUF9FRkZF Q1RfIiwgdHlwZV9pZCA9ICJtZXRhX2NvbXBfZWZmZWN0X2dldF90eXBlICgpIildCisrCXB1Ymxp YyBlbnVtIENvbXBFZmZlY3QgeworKwkJQ1JFQVRFLAorKwkJVU5NSU5JTUlaRSwKKysJCURFU1RS T1ksCisrCQlNSU5JTUlaRSwKKysJCU5PTkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfQ1VSU09SXyIsIHR5cGVfaWQgPSAi bWV0YV9jdXJzb3JfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gQ3Vyc29yIHsKKysJCU5P TkUsCisrCQlERUZBVUxULAorKwkJTk9SVEhfUkVTSVpFLAorKwkJU09VVEhfUkVTSVpFLAorKwkJ V0VTVF9SRVNJWkUsCisrCQlFQVNUX1JFU0laRSwKKysJCVNFX1JFU0laRSwKKysJCVNXX1JFU0la RSwKKysJCU5FX1JFU0laRSwKKysJCU5XX1JFU0laRSwKKysJCU1PVkVfT1JfUkVTSVpFX1dJTkRP VywKKysJCUJVU1ksCisrCQlETkRfSU5fRFJBRywKKysJCURORF9NT1ZFLAorKwkJRE5EX0NPUFks CisrCQlETkRfVU5TVVBQT1JURURfVEFSR0VULAorKwkJUE9JTlRJTkdfSEFORCwKKysJCUNST1NT SEFJUiwKKysJCUlCRUFNLAorKwkJTEFTVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9ERUJVR18iLCB0eXBlX2lkID0gIm1l dGFfZGVidWdfdG9waWNfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBE ZWJ1Z1RvcGljIHsKKysJCVZFUkJPU0UsCisrCQlGT0NVUywKKysJCVdPUktBUkVBLAorKwkJU1RB Q0ssCisrCQlUSEVNRVMsCisrCQlTTSwKKysJCUVWRU5UUywKKysJCVdJTkRPV19TVEFURSwKKysJ CVdJTkRPV19PUFMsCisrCQlHRU9NRVRSWSwKKysJCVBMQUNFTUVOVCwKKysJCVBJTkcsCisrCQlY SU5FUkFNQSwKKysJCUtFWUJJTkRJTkdTLAorKwkJU1lOQywKKysJCUVSUk9SUywKKysJCVNUQVJU VVAsCisrCQlQUkVGUywKKysJCUdST1VQUywKKysJCVJFU0laSU5HLAorKwkJU0hBUEVTLAorKwkJ Q09NUE9TSVRPUiwKKysJCUVER0VfUkVTSVNUQU5DRSwKKysJCURCVVMKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRElSRUNU SU9OXyIsIHR5cGVfaWQgPSAibWV0YV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdz XQorKwlwdWJsaWMgZW51bSBEaXJlY3Rpb24geworKwkJTEVGVCwKKysJCVJJR0hULAorKwkJVE9Q LAorKwkJQk9UVE9NLAorKwkJVVAsCisrCQlET1dOLAorKwkJSE9SSVpPTlRBTCwKKysJCVZFUlRJ Q0FMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3By ZWZpeCA9ICJNRVRBX0RJU1BMQVlfIiwgdHlwZV9pZCA9ICJtZXRhX2Rpc3BsYXlfY29ybmVyX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIERpc3BsYXlDb3JuZXIgeworKwkJVE9QTEVGVCwK KysJCVRPUFJJR0hULAorKwkJQk9UVE9NTEVGVCwKKysJCUJPVFRPTVJJR0hUCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0RJ U1BMQVlfIiwgdHlwZV9pZCA9ICJtZXRhX2Rpc3BsYXlfZGlyZWN0aW9uX2dldF90eXBlICgpIild CisrCXB1YmxpYyBlbnVtIERpc3BsYXlEaXJlY3Rpb24geworKwkJVVAsCisrCQlET1dOLAorKwkJ TEVGVCwKKysJCVJJR0hUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0VER0VfIiwgdHlwZV9pZCA9ICJtZXRhX2VkZ2VfdHlw ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBFZGdlVHlwZSB7CisrCQlXSU5ET1csCisr CQlNT05JVE9SLAorKwkJU0NSRUVOCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0VYSVRfIiwgdHlwZV9pZCA9ICJtZXRhX2V4 aXRfY29kZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBFeGl0Q29kZSB7CisrCQlTVUND RVNTLAorKwkJRVJST1IKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRlJBTUVfIiwgdHlwZV9pZCA9ICJtZXRhX2ZyYW1lX2Zs YWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gRnJhbWVGbGFncyB7 CisrCQlBTExPV1NfREVMRVRFLAorKwkJQUxMT1dTX01FTlUsCisrCQlBTExPV1NfTUlOSU1JWkUs CisrCQlBTExPV1NfTUFYSU1JWkUsCisrCQlBTExPV1NfVkVSVElDQUxfUkVTSVpFLAorKwkJQUxM T1dTX0hPUklaT05UQUxfUkVTSVpFLAorKwkJSEFTX0ZPQ1VTLAorKwkJU0hBREVELAorKwkJU1RV Q0ssCisrCQlNQVhJTUlaRUQsCisrCQlBTExPV1NfU0hBREUsCisrCQlBTExPV1NfTU9WRSwKKysJ CUZVTExTQ1JFRU4sCisrCQlBQk9WRSwKKysJCVRJTEVEX0xFRlQsCisrCQlUSUxFRF9SSUdIVAor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXgg PSAiTUVUQV9GUkFNRV9UWVBFXyIsIHR5cGVfaWQgPSAibWV0YV9mcmFtZV90eXBlX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBlbnVtIEZyYW1lVHlwZSB7CisrCQlOT1JNQUwsCisrCQlESUFMT0cs CisrCQlNT0RBTF9ESUFMT0csCisrCQlVVElMSVRZLAorKwkJTUVOVSwKKysJCUJPUkRFUiwKKysJ CUFUVEFDSEVELAorKwkJTEFTVDsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyB0b19zdHJpbmcg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3By ZWZpeCA9ICJNRVRBX0dSQUJfT1BfIiwgdHlwZV9pZCA9ICJtZXRhX2dyYWJfb3BfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGVudW0gR3JhYk9wIHsKKysJCU5PTkUsCisrCQlXSU5ET1dfQkFTRSwK KysJCUNPTVBPU0lUT1IsCisrCQlXQVlMQU5EX1BPUFVQLAorKwkJRlJBTUVfQlVUVE9OLAorKwkJ TU9WSU5HLAorKwkJUkVTSVpJTkdfTlcsCisrCQlSRVNJWklOR19OLAorKwkJUkVTSVpJTkdfTkUs CisrCQlSRVNJWklOR19FLAorKwkJUkVTSVpJTkdfU1csCisrCQlSRVNJWklOR19TLAorKwkJUkVT SVpJTkdfU0UsCisrCQlSRVNJWklOR19XLAorKwkJS0VZQk9BUkRfTU9WSU5HLAorKwkJS0VZQk9B UkRfUkVTSVpJTkdfVU5LTk9XTiwKKysJCUtFWUJPQVJEX1JFU0laSU5HX05XLAorKwkJS0VZQk9B UkRfUkVTSVpJTkdfTiwKKysJCUtFWUJPQVJEX1JFU0laSU5HX05FLAorKwkJS0VZQk9BUkRfUkVT SVpJTkdfRSwKKysJCUtFWUJPQVJEX1JFU0laSU5HX1NXLAorKwkJS0VZQk9BUkRfUkVTSVpJTkdf UywKKysJCUtFWUJPQVJEX1JFU0laSU5HX1NFLAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfVworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAi TUVUQV9JTkhJQklUX1NIT1JUQ1VUU19ESUFMT0dfUkVTUE9OU0VfIiwgdHlwZV9pZCA9ICJtZXRh X2luaGliaXRfc2hvcnRjdXRzX2RpYWxvZ19yZXNwb25zZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgZW51bSBJbmhpYml0U2hvcnRjdXRzRGlhbG9nUmVzcG9uc2UgeworKwkJQUxMT1csCisrCQlE RU5ZCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3By ZWZpeCA9ICJNRVRBX0tFWUJJTkRJTkdfQUNUSU9OXyIsIHR5cGVfaWQgPSAibWV0YV9rZXlfYmlu ZGluZ19hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gS2V5QmluZGluZ0FjdGlv biB7CisrCQlOT05FLAorKwkJV09SS1NQQUNFXzEsCisrCQlXT1JLU1BBQ0VfMiwKKysJCVdPUktT UEFDRV8zLAorKwkJV09SS1NQQUNFXzQsCisrCQlXT1JLU1BBQ0VfNSwKKysJCVdPUktTUEFDRV82 LAorKwkJV09SS1NQQUNFXzcsCisrCQlXT1JLU1BBQ0VfOCwKKysJCVdPUktTUEFDRV85LAorKwkJ V09SS1NQQUNFXzEwLAorKwkJV09SS1NQQUNFXzExLAorKwkJV09SS1NQQUNFXzEyLAorKwkJV09S S1NQQUNFX0xFRlQsCisrCQlXT1JLU1BBQ0VfUklHSFQsCisrCQlXT1JLU1BBQ0VfVVAsCisrCQlX T1JLU1BBQ0VfRE9XTiwKKysJCVdPUktTUEFDRV9MQVNULAorKwkJU1dJVENIX0FQUExJQ0FUSU9O UywKKysJCVNXSVRDSF9BUFBMSUNBVElPTlNfQkFDS1dBUkQsCisrCQlTV0lUQ0hfR1JPVVAsCisr CQlTV0lUQ0hfR1JPVVBfQkFDS1dBUkQsCisrCQlTV0lUQ0hfV0lORE9XUywKKysJCVNXSVRDSF9X SU5ET1dTX0JBQ0tXQVJELAorKwkJU1dJVENIX1BBTkVMUywKKysJCVNXSVRDSF9QQU5FTFNfQkFD S1dBUkQsCisrCQlDWUNMRV9HUk9VUCwKKysJCUNZQ0xFX0dST1VQX0JBQ0tXQVJELAorKwkJQ1lD TEVfV0lORE9XUywKKysJCUNZQ0xFX1dJTkRPV1NfQkFDS1dBUkQsCisrCQlDWUNMRV9QQU5FTFMs CisrCQlDWUNMRV9QQU5FTFNfQkFDS1dBUkQsCisrCQlTSE9XX0RFU0tUT1AsCisrCQlQQU5FTF9N QUlOX01FTlUsCisrCQlQQU5FTF9SVU5fRElBTE9HLAorKwkJVE9HR0xFX1JFQ09SRElORywKKysJ CVNFVF9TUEVXX01BUkssCisrCQlBQ1RJVkFURV9XSU5ET1dfTUVOVSwKKysJCVRPR0dMRV9GVUxM U0NSRUVOLAorKwkJVE9HR0xFX01BWElNSVpFRCwKKysJCVRPR0dMRV9USUxFRF9MRUZULAorKwkJ VE9HR0xFX1RJTEVEX1JJR0hULAorKwkJVE9HR0xFX0FCT1ZFLAorKwkJTUFYSU1JWkUsCisrCQlV Tk1BWElNSVpFLAorKwkJVE9HR0xFX1NIQURFRCwKKysJCU1JTklNSVpFLAorKwkJQ0xPU0UsCisr CQlCRUdJTl9NT1ZFLAorKwkJQkVHSU5fUkVTSVpFLAorKwkJVE9HR0xFX09OX0FMTF9XT1JLU1BB Q0VTLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfMSwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzIsCisr CQlNT1ZFX1RPX1dPUktTUEFDRV8zLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfNCwKKysJCU1PVkVf VE9fV09SS1NQQUNFXzUsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV82LAorKwkJTU9WRV9UT19XT1JL U1BBQ0VfNywKKysJCU1PVkVfVE9fV09SS1NQQUNFXzgsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV85 LAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfMTAsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV8xMSwKKysJ CU1PVkVfVE9fV09SS1NQQUNFXzEyLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfTEVGVCwKKysJCU1P VkVfVE9fV09SS1NQQUNFX1JJR0hULAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfVVAsCisrCQlNT1ZF X1RPX1dPUktTUEFDRV9ET1dOLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfTEFTVCwKKysJCU1PVkVf VE9fTU9OSVRPUl9MRUZULAorKwkJTU9WRV9UT19NT05JVE9SX1JJR0hULAorKwkJTU9WRV9UT19N T05JVE9SX1VQLAorKwkJTU9WRV9UT19NT05JVE9SX0RPV04sCisrCQlSQUlTRV9PUl9MT1dFUiwK KysJCVJBSVNFLAorKwkJTE9XRVIsCisrCQlNQVhJTUlaRV9WRVJUSUNBTExZLAorKwkJTUFYSU1J WkVfSE9SSVpPTlRBTExZLAorKwkJTU9WRV9UT19DT1JORVJfTlcsCisrCQlNT1ZFX1RPX0NPUk5F Ul9ORSwKKysJCU1PVkVfVE9fQ09STkVSX1NXLAorKwkJTU9WRV9UT19DT1JORVJfU0UsCisrCQlN T1ZFX1RPX1NJREVfTiwKKysJCU1PVkVfVE9fU0lERV9TLAorKwkJTU9WRV9UT19TSURFX0UsCisr CQlNT1ZFX1RPX1NJREVfVywKKysJCU1PVkVfVE9fQ0VOVEVSLAorKwkJT1ZFUkxBWV9LRVksCisr CQlMT0NBVEVfUE9JTlRFUl9LRVksCisrCQlJU09fTkVYVF9HUk9VUCwKKysJCUFMV0FZU19PTl9U T1AsCisrCQlTV0lUQ0hfTU9OSVRPUiwKKysJCVJPVEFURV9NT05JVE9SLAorKwkJTEFTVAorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAi TUVUQV9LRVlfQklORElOR18iLCB0eXBlX2lkID0gIm1ldGFfa2V5X2JpbmRpbmdfZmxhZ3NfZ2V0 X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBLZXlCaW5kaW5nRmxhZ3Mgewor KwkJTk9ORSwKKysJCVBFUl9XSU5ET1csCisrCQlCVUlMVElOLAorKwkJSVNfUkVWRVJTRUQsCisr CQlOT05fTUFTS0FCTEUsCisrCQlJR05PUkVfQVVUT1JFUEVBVCwKKysJCU5PX0FVVE9fR1JBQgor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXgg PSAiTUVUQV9MQVRFUl8iLCB0eXBlX2lkID0gIm1ldGFfbGF0ZXJfdHlwZV9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgZW51bSBMYXRlclR5cGUgeworKwkJUkVTSVpFLAorKwkJQ0FMQ19TSE9XSU5H LAorKwkJQ0hFQ0tfRlVMTFNDUkVFTiwKKysJCVNZTkNfU1RBQ0ssCisrCQlCRUZPUkVfUkVEUkFX LAorKwkJSURMRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGNwcmVmaXggPSAiTUVUQV9MT0NBTEVfRElSRUNUSU9OXyIsIHR5cGVfaWQgPSAibWV0YV9s b2NhbGVfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIExvY2FsZURpcmVj dGlvbiB7CisrCQlMVFIsCisrCQlSVEwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTUFYSU1JWkVfIiwgdHlwZV9pZCA9ICJt ZXRhX21heGltaXplX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVu dW0gTWF4aW1pemVGbGFncyB7CisrCQlIT1JJWk9OVEFMLAorKwkJVkVSVElDQUwsCisrCQlCT1RI CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZp eCA9ICJNRVRBX01PREFMXyIsIHR5cGVfaWQgPSAibWV0YV9tb2RhbF9vcHRpb25zX2dldF90eXBl ICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gTW9kYWxPcHRpb25zIHsKKysJCVBPSU5U RVJfQUxSRUFEWV9HUkFCQkVELAorKwkJS0VZQk9BUkRfQUxSRUFEWV9HUkFCQkVECisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRB X01PTklUT1JfU1dJVENIX0NPTkZJR18iLCB0eXBlX2lkID0gIm1ldGFfbW9uaXRvcl9zd2l0Y2hf Y29uZmlnX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gTW9uaXRvclN3aXRjaENv bmZpZ1R5cGUgeworKwkJQUxMX01JUlJPUiwKKysJCUFMTF9MSU5FQVIsCisrCQlFWFRFUk5BTCwK KysJCUJVSUxUSU4sCisrCQlVTktOT1dOCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX01PVElPTl8iLCB0eXBlX2lkID0gIm1l dGFfbW90aW9uX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBNb3Rpb25E aXJlY3Rpb24geworKwkJVVAsCisrCQlET1dOLAorKwkJTEVGVCwKKysJCVJJR0hULAorKwkJVVBf TEVGVCwKKysJCVVQX1JJR0hULAorKwkJRE9XTl9MRUZULAorKwkJRE9XTl9SSUdIVAorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVU QV9QQURfQUNUSU9OXyIsIHR5cGVfaWQgPSAibWV0YV9wYWRfYWN0aW9uX3R5cGVfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGVudW0gUGFkQWN0aW9uVHlwZSB7CisrCQlCVVRUT04sCisrCQlSSU5H LAorKwkJU1RSSVAKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVm cy5oIiwgY3ByZWZpeCA9ICJNRVRBX1BSRUZfIiwgdHlwZV9pZCA9ICJtZXRhX3ByZWZlcmVuY2Vf Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gUHJlZmVyZW5jZSB7CisrCQlNT1VTRV9CVVRU T05fTU9EUywKKysJCUZPQ1VTX01PREUsCisrCQlGT0NVU19ORVdfV0lORE9XUywKKysJCUFUVEFD SF9NT0RBTF9ESUFMT0dTLAorKwkJUkFJU0VfT05fQ0xJQ0ssCisrCQlBQ1RJT05fRE9VQkxFX0NM SUNLX1RJVExFQkFSLAorKwkJQUNUSU9OX01JRERMRV9DTElDS19USVRMRUJBUiwKKysJCUFDVElP Tl9SSUdIVF9DTElDS19USVRMRUJBUiwKKysJCUFVVE9fUkFJU0UsCisrCQlBVVRPX1JBSVNFX0RF TEFZLAorKwkJRk9DVVNfQ0hBTkdFX09OX1BPSU5URVJfUkVTVCwKKysJCVRJVExFQkFSX0ZPTlQs CisrCQlOVU1fV09SS1NQQUNFUywKKysJCURZTkFNSUNfV09SS1NQQUNFUywKKysJCUtFWUJJTkRJ TkdTLAorKwkJRElTQUJMRV9XT1JLQVJPVU5EUywKKysJCUJVVFRPTl9MQVlPVVQsCisrCQlXT1JL U1BBQ0VfTkFNRVMsCisrCQlWSVNVQUxfQkVMTCwKKysJCUFVRElCTEVfQkVMTCwKKysJCVZJU1VB TF9CRUxMX1RZUEUsCisrCQlHTk9NRV9BQ0NFU1NJQklMSVRZLAorKwkJR05PTUVfQU5JTUFUSU9O UywKKysJCUNVUlNPUl9USEVNRSwKKysJCUNVUlNPUl9TSVpFLAorKwkJUkVTSVpFX1dJVEhfUklH SFRfQlVUVE9OLAorKwkJRURHRV9USUxJTkcsCisrCQlGT1JDRV9GVUxMU0NSRUVOLAorKwkJV09S S1NQQUNFU19PTkxZX09OX1BSSU1BUlksCisrCQlEUkFHR0FCTEVfQk9SREVSX1dJRFRILAorKwkJ QVVUT19NQVhJTUlaRSwKKysJCUNFTlRFUl9ORVdfV0lORE9XUywKKysJCURSQUdfVEhSRVNIT0xE LAorKwkJTE9DQVRFX1BPSU5URVI7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgdG9fc3RyaW5n ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNw cmVmaXggPSAiTUVUQV8iLCB0eXBlX2lkID0gIm1ldGFfc2VsZWN0aW9uX3R5cGVfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGVudW0gU2VsZWN0aW9uVHlwZSB7CisrCQlTRUxFQ1RJT05fUFJJTUFS WSwKKysJCVNFTEVDVElPTl9DTElQQk9BUkQsCisrCQlTRUxFQ1RJT05fRE5ELAorKwkJTl9TRUxF Q1RJT05fVFlQRVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBjcHJlZml4ID0gIk1FVEFfU0hBRE9XX01PREVfIiwgdHlwZV9pZCA9ICJtZXRhX3NoYWRv d19tb2RlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFNoYWRvd01vZGUgeworKwkJQVVU TywKKysJCUZPUkNFRF9PRkYsCisrCQlGT1JDRURfT04KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfU0lERV8iLCB0eXBlX2lk ID0gIm1ldGFfc2lkZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBTaWRlIHsKKysJCUxF RlQsCisrCQlSSUdIVCwKKysJCVRPUCwKKysJCUJPVFRPTQorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9TSVpFX0NIQU5HRV8i LCB0eXBlX2lkID0gIm1ldGFfc2l6ZV9jaGFuZ2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVu dW0gU2l6ZUNoYW5nZSB7CisrCQlNQVhJTUlaRSwKKysJCVVOTUFYSU1JWkUsCisrCQlGVUxMU0NS RUVOLAorKwkJVU5GVUxMU0NSRUVOCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0xBWUVSXyIsIHR5cGVfaWQgPSAibWV0YV9z dGFja19sYXllcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBTdGFja0xheWVyIHsKKysJ CURFU0tUT1AsCisrCQlCT1RUT00sCisrCQlOT1JNQUwsCisrCQlUT1AsCisrCQlET0NLLAorKwkJ T1ZFUlJJREVfUkVESVJFQ1QsCisrCQlMQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1RBQl9MSVNUXyIsIHR5cGVfaWQg PSAibWV0YV90YWJfbGlzdF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBUYWJMaXN0IHsK KysJCU5PUk1BTCwKKysJCURPQ0tTLAorKwkJR1JPVVAsCisrCQlOT1JNQUxfQUxMCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRB X1RBQl9TSE9XXyIsIHR5cGVfaWQgPSAibWV0YV90YWJfc2hvd190eXBlX2dldF90eXBlICgpIild CisrCXB1YmxpYyBlbnVtIFRhYlNob3dUeXBlIHsKKysJCUlDT04sCisrCQlJTlNUQU5UTFkKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0g Ik1FVEFfVklSVFVBTF8iLCB0eXBlX2lkID0gIm1ldGFfdmlydHVhbF9tb2RpZmllcl9nZXRfdHlw ZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIFZpcnR1YWxNb2RpZmllciB7CisrCQlT SElGVF9NQVNLLAorKwkJQ09OVFJPTF9NQVNLLAorKwkJQUxUX01BU0ssCisrCQlNRVRBX01BU0ss CisrCQlTVVBFUl9NQVNLLAorKwkJSFlQRVJfTUFTSywKKysJCU1PRDJfTUFTSywKKysJCU1PRDNf TUFTSywKKysJCU1PRDRfTUFTSywKKysJCU1PRDVfTUFTSworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9XSU5ET1dfQ0xJRU5U X1RZUEVfIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd19jbGllbnRfdHlwZV9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgZW51bSBXaW5kb3dDbGllbnRUeXBlIHsKKysJCVdBWUxBTkQsCisrCQlYMTEK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4 ID0gIk1FVEFfV0lORE9XX01FTlVfIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd19tZW51X3R5cGVf Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gV2luZG93TWVudVR5cGUgeworKwkJV00sCisr CQlBUFAKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBj cHJlZml4ID0gIk1FVEFfV0lORE9XXyIsIHR5cGVfaWQgPSAibWV0YV93aW5kb3dfdHlwZV9nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBXaW5kb3dUeXBlIHsKKysJCU5PUk1BTCwKKysJCURF U0tUT1AsCisrCQlET0NLLAorKwkJRElBTE9HLAorKwkJTU9EQUxfRElBTE9HLAorKwkJVE9PTEJB UiwKKysJCU1FTlUsCisrCQlVVElMSVRZLAorKwkJU1BMQVNIU0NSRUVOLAorKwkJRFJPUERPV05f TUVOVSwKKysJCVBPUFVQX01FTlUsCisrCQlUT09MVElQLAorKwkJTk9USUZJQ0FUSU9OLAorKwkJ Q09NQk8sCisrCQlETkQsCisrCQlPVkVSUklERV9PVEhFUgorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGluc3RhbmNlX3BvcyA9IDIuOSldCisrCXB1Ymxp YyBkZWxlZ2F0ZSB2b2lkIElkbGVNb25pdG9yV2F0Y2hGdW5jIChNZXRhLklkbGVNb25pdG9yIG1v bml0b3IsIHVpbnQgd2F0Y2hfaWQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCBpbnN0YW5jZV9wb3MgPSA0LjkpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBL ZXlIYW5kbGVyRnVuYyAoTWV0YS5EaXNwbGF5IGRpc3BsYXksIE1ldGEuV2luZG93IHdpbmRvdywg W0NDb2RlICh0eXBlID0gIkNsdXR0ZXJLZXlFdmVudCoiKV0gQ2x1dHRlci5LZXlFdmVudD8gZXZl bnQsIE1ldGEuS2V5QmluZGluZyBiaW5kaW5nKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWFpbi5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJcHVibGljIGRlbGVnYXRl IHZvaWQgUHJlZnNDaGFuZ2VkRnVuYyAoTWV0YS5QcmVmZXJlbmNlIHByZWYpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQor KwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBXaW5kb3dGb3JlYWNoRnVuYyAoTWV0YS5XaW5kb3cgd2lu ZG93KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUg PSAiTUVUQV9DVVJSRU5UX1RJTUUiKV0KKysJcHVibGljIGNvbnN0IGludCBDVVJSRU5UX1RJTUU7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1F VEFfREVGQVVMVF9JQ09OX05BTUUiKV0KKysJcHVibGljIGNvbnN0IHN0cmluZyBERUZBVUxUX0lD T05fTkFNRTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25h bWUgPSAiTUVUQV9JQ09OX0hFSUdIVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IElDT05fSEVJR0hU OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJN RVRBX0lDT05fV0lEVEgiKV0KKysJcHVibGljIGNvbnN0IGludCBJQ09OX1dJRFRIOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX01BSk9S X1ZFUlNJT04iKV0KKysJcHVibGljIGNvbnN0IGludCBNQUpPUl9WRVJTSU9OOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX01JQ1JPX1ZF UlNJT04iKV0KKysJcHVibGljIGNvbnN0IGludCBNSUNST19WRVJTSU9OOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX01JTklfSUNPTl9I RUlHSFQiKV0KKysJcHVibGljIGNvbnN0IGludCBNSU5JX0lDT05fSEVJR0hUOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX01JTklfSUNP Tl9XSURUSCIpXQorKwlwdWJsaWMgY29uc3QgaW50IE1JTklfSUNPTl9XSURUSDsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9NSU5PUl9W RVJTSU9OIildCisrCXB1YmxpYyBjb25zdCBpbnQgTUlOT1JfVkVSU0lPTjsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9QTFVHSU5fQVBJ X1ZFUlNJT04iKV0KKysJcHVibGljIGNvbnN0IGludCBQTFVHSU5fQVBJX1ZFUlNJT047CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfUFJJ T1JJVFlfQkVGT1JFX1JFRFJBVyIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBSSU9SSVRZX0JFRk9S RV9SRURSQVc7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNu YW1lID0gIk1FVEFfUFJJT1JJVFlfUFJFRlNfTk9USUZZIildCisrCXB1YmxpYyBjb25zdCBpbnQg UFJJT1JJVFlfUFJFRlNfTk9USUZZOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1BSSU9SSVRZX1JFRFJBVyIpXQorKwlwdWJsaWMgY29u c3QgaW50IFBSSU9SSVRZX1JFRFJBVzsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9QUklPUklUWV9SRVNJWkUiKV0KKysJcHVibGljIGNv bnN0IGludCBQUklPUklUWV9SRVNJWkU7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfVklSVFVBTF9DT1JFX0tFWUJPQVJEX0lEIildCisr CXB1YmxpYyBjb25zdCBpbnQgVklSVFVBTF9DT1JFX0tFWUJPQVJEX0lEOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1ZJUlRVQUxfQ09S RV9QT0lOVEVSX0lEIildCisrCXB1YmxpYyBjb25zdCBpbnQgVklSVFVBTF9DT1JFX1BPSU5URVJf SUQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJs aWMgc3RhdGljIGJvb2wgYWN0aXZhdGVfc2Vzc2lvbiAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBhZGRfY2x1dHRl cl9kZWJ1Z19mbGFncyAoQ2x1dHRlci5EZWJ1Z0ZsYWcgZGVidWdfZmxhZ3MsIENsdXR0ZXIuRHJh d0RlYnVnRmxhZyBkcmF3X2ZsYWdzLCBDbHV0dGVyLlBpY2tEZWJ1Z0ZsYWcgcGlja19mbGFncyk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMg c3RhdGljIHZvaWQgZXhpdCAoTWV0YS5FeGl0Q29kZSBjb2RlKTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgc3RyaW5nIGdfdXRm OF9zdHJuZHVwIChzdHJpbmcgc3JjLCBzaXplX3Qgbik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgR0xpYi5PcHRp b25Db250ZXh0IGdldF9vcHRpb25fY29udGV4dCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBnZXRfcmVwbGFjZV9j dXJyZW50X3dtICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi KV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGluaXQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfcmVzdGFydCAo KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1Ymxp YyBzdGF0aWMgdm9pZCBxdWl0IChNZXRhLkV4aXRDb2RlIGNvZGUpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHJlZ2lz dGVyX3dpdGhfc2Vzc2lvbiAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCByZW1vdmVfY2x1dHRlcl9kZWJ1Z19mbGFn cyAoQ2x1dHRlci5EZWJ1Z0ZsYWcgZGVidWdfZmxhZ3MsIENsdXR0ZXIuRHJhd0RlYnVnRmxhZyBk cmF3X2ZsYWdzLCBDbHV0dGVyLlBpY2tEZWJ1Z0ZsYWcgcGlja19mbGFncyk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQg cmVzdGFydCAoc3RyaW5nPyBtZXNzYWdlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgaW50IHJ1biAoKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBz ZXRfZ25vbWVfd21fa2V5YmluZGluZ3MgKHN0cmluZyB3bV9rZXliaW5kaW5ncyk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHZv aWQgc2V0X3dtX25hbWUgKHN0cmluZyB3bV9uYW1lKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCB0ZXN0X2luaXQgKCk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMg c3RhdGljIGJvb2wgeDExX2luaXRfZ2RrX2Rpc3BsYXkgKCkgdGhyb3dzIEdMaWIuRXJyb3I7Cisr fQorZGlmZiAtLWdpdCBhL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi1jdXN0b20udmFsYSBiL3ZhcGkv bXV0dGVyLWNsdXR0ZXItNi1jdXN0b20udmFsYQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4 IDAwMDAwMDAwLi44OTIyNGJlNgorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9tdXR0ZXItY2x1 dHRlci02LWN1c3RvbS52YWxhCitAQCAtMCwwICsxLDE0NyBAQAorK25hbWVzcGFjZSBDbHV0dGVy IHsKKysKKysgIHB1YmxpYyBzdHJ1Y3QgTWF0cml4IDogQ29nbC5NYXRyaXggeworKyAgfQorKwor KyAgcHVibGljIGNsYXNzIEJhY2tlbmQgOiBHTGliLk9iamVjdCB7CisrICAgIFtOb1dyYXBwZXJd CisrICAgIHB1YmxpYyB2aXJ0dWFsIHZvaWQgYWRkX29wdGlvbnMgKEdMaWIuT3B0aW9uR3JvdXAg Z3JvdXApOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCBib29sIGNyZWF0 ZV9jb250ZXh0ICgpIHRocm93cyBHTGliLkVycm9yOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBw dWJsaWMgdmlydHVhbCB1bm93bmVkIENsdXR0ZXIuU3RhZ2VXaW5kb3cgY3JlYXRlX3N0YWdlIChD bHV0dGVyLlN0YWdlIHdyYXBwZXIpIHRocm93cyBHTGliLkVycm9yOworKyAgICBbTm9XcmFwcGVy XQorKyAgICBwdWJsaWMgdmlydHVhbCB2b2lkIGVuc3VyZV9jb250ZXh0IChDbHV0dGVyLlN0YWdl IHN0YWdlKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgQ2x1dHRlci5G ZWF0dXJlRmxhZ3MgZ2V0X2ZlYXR1cmVzICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJs aWMgdmlydHVhbCB2b2lkIGluaXRfZXZlbnRzICgpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBw dWJsaWMgdmlydHVhbCB2b2lkIGluaXRfZmVhdHVyZXMgKCk7CisrICAgIFtOb1dyYXBwZXJdCisr ICAgIHB1YmxpYyB2aXJ0dWFsIGJvb2wgcG9zdF9wYXJzZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsK KysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgYm9vbCBwcmVfcGFyc2UgKCkg dGhyb3dzIEdMaWIuRXJyb3I7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFs IHZvaWQgcmVkcmF3IChDbHV0dGVyLlN0YWdlIHN0YWdlKTsKKysgIH0KKysKKysgIFtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRl cl9ib3hfZ2V0X3R5cGUgKCkiKV0KKysgIHB1YmxpYyBjbGFzcyBCb3ggOiBDbHV0dGVyLkFjdG9y IHsKKysgICAgcHVibGljIENsdXR0ZXIuTGF5b3V0TWFuYWdlciBsYXlvdXRfbWFuYWdlciB7IGdl dDsgc2V0OyB9CisrICB9CisrCisrICBbQ0NvZGUgKHR5cGVfaWQgPSAiQ0xVVFRFUl9UWVBFX0NP TE9SIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKyAgcHVibGlj IHN0cnVjdCBDb2xvciB7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9t X2hscyIpXQorKyAgICBwdWJsaWMgQ29sb3IuZnJvbV9obHMgKGZsb2F0IGh1ZSwgZmxvYXQgbHVt aW5hbmNlLCBmbG9hdCBzYXR1cmF0aW9uKTsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVy X2NvbG9yX2Zyb21fcGl4ZWwiKV0KKysgICAgcHVibGljIENvbG9yLmZyb21fcGl4ZWwgKHVpbnQz MiBwaXhlbCk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3N0cmlu ZyIpXQorKyAgICBwdWJsaWMgQ29sb3IuZnJvbV9zdHJpbmcgKHN0cmluZyBzdHIpOworKyAgICBb Q0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9zdHJpbmciKV0KKysgICAgcHVibGlj IGJvb2wgcGFyc2Vfc3RyaW5nIChzdHJpbmcgc3RyKTsKKysgICAgcHVibGljIHN0YXRpYyB1bm93 bmVkIENsdXR0ZXIuQ29sb3I/IGdldF9zdGF0aWMgKENsdXR0ZXIuU3RhdGljQ29sb3IgY29sb3Ip OworKyAgfQorKworKyAgW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnRhaW5lcl9nZXRfdHlwZSAoKSIpXQorKyAgcHVi bGljIGludGVyZmFjZSBDb250YWluZXIgOiBHTGliLk9iamVjdCB7CisrICAgIHB1YmxpYyB2b2lk IGFkZCAocGFyYW1zIENsdXR0ZXIuQWN0b3JbXSBhY3RvcnMpOworKyAgICBbQ0NvZGUgKGNuYW1l ID0gImNsdXR0ZXJfY29udGFpbmVyX2NsYXNzX2ZpbmRfY2hpbGRfcHJvcGVydHkiKV0KKysgICAg cHVibGljIGNsYXNzIHVub3duZWQgR0xpYi5QYXJhbVNwZWMgZmluZF9jaGlsZF9wcm9wZXJ0eSAo c3RyaW5nIHByb3BlcnR5X25hbWUpOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29u dGFpbmVyX2NsYXNzX2xpc3RfY2hpbGRfcHJvcGVydGllcyIpXQorKyAgICBwdWJsaWMgY2xhc3Mg dW5vd25lZCBHTGliLlBhcmFtU3BlY1tdIGxpc3RfY2hpbGRfcHJvcGVydGllcyAoKTsKKysgIH0K KysKKysgIFtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNv cHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2Zy ZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfZXZlbnRfZ2V0X3R5cGUgKCkiKV0KKysgIFtDb21wYWN0 XQorKyAgcHVibGljIGNsYXNzIEV2ZW50IHsKKysgICAgcHVibGljIENsdXR0ZXIuQW55RXZlbnQg YW55IHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlckFueUV2ZW50ICopIildIGdldDsgfQorKyAg ICBwdWJsaWMgQ2x1dHRlci5CdXR0b25FdmVudCBidXR0b24geyBbQ0NvZGUgKGNuYW1lID0gIihD bHV0dGVyQnV0dG9uRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLkNyb3Nz aW5nRXZlbnQgY3Jvc3NpbmcgeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyQ3Jvc3NpbmdFdmVu dCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuS2V5RXZlbnQga2V5IHsgW0NDb2Rl IChjbmFtZSA9ICIoQ2x1dHRlcktleUV2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1 dHRlci5Nb3Rpb25FdmVudCBtb3Rpb24geyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyTW90aW9u RXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlNjcm9sbEV2ZW50IHNjcm9s bCB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJTY3JvbGxFdmVudCAqKSIpXSBnZXQ7IH0KKysg ICAgcHVibGljIENsdXR0ZXIuU3RhZ2VTdGF0ZUV2ZW50IHN0YWdlX3N0YXRlIHsgW0NDb2RlIChj bmFtZSA9ICIoQ2x1dHRlclN0YWdlU3RhdGVFdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGlj IENsdXR0ZXIuVG91Y2hFdmVudCB0b3VjaCB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJUb3Vj aEV2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5Ub3VjaHBhZFBpbmNoRXZl bnQgdG91Y2hwYWRfcGluY2ggeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91Y2hwYWRQaW5j aEV2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5Ub3VjaHBhZFN3aXBlRXZl bnQgdG91Y2hwYWRfc3dpcGUgeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91Y2hwYWRTd2lw ZUV2ZW50ICopIildIGdldDsgfQorKyAgfQorKworKyAgW0NDb2RlICh0eXBlX2lkID0gImNsdXR0 ZXJfc3RhZ2VfZ2V0X3R5cGUgKCkiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIildCisrICBwdWJsaWMgY2xhc3MgU3RhZ2UgOiBDbHV0dGVyLkdyb3VwIHsKKysgICAgW0ND b2RlIChjbmFtZSA9ICJjbHV0dGVyX3JlZHJhdyIpXQorKyAgICBwdWJsaWMgdm9pZCByZWRyYXcg KCk7CisrICB9CisrCisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiKV0KKysgIHB1YmxpYyBpbnRlcmZhY2UgU3RhZ2VXaW5kb3cgOiBHTGliLk9iamVjdCB7 CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCBpbnQgZ2V0X3BlbmRpbmdf c3dhcHMgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB1bm93bmVk IENsdXR0ZXIuQWN0b3IgZ2V0X3dyYXBwZXIgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1 YmxpYyBhYnN0cmFjdCBib29sIGhhc19yZWRyYXdfY2xpcHMgKCk7CisrICAgIFtOb1dyYXBwZXJd CisrICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lkIGhpZGUgKCk7CisrICAgIFtOb1dyYXBwZXJdCisr ICAgIHB1YmxpYyBhYnN0cmFjdCBib29sIGlnbm9yaW5nX3JlZHJhd19jbGlwcyAoKTsKKysgICAg W05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IGJvb2wgcmVhbGl6ZSAoKTsKKysgICAg W05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgcmVzaXplIChpbnQgd2lkdGgs IGludCBoZWlnaHQpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9p ZCBzZXRfY3Vyc29yX3Zpc2libGUgKGJvb2wgY3Vyc29yX3Zpc2libGUpOworKyAgICBbTm9XcmFw cGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfZnVsbHNjcmVlbiAoYm9vbCBpc19m dWxsc2NyZWVuKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQg c2V0X3RpdGxlIChzdHJpbmcgdGl0bGUpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMg YWJzdHJhY3Qgdm9pZCBzZXRfdXNlcl9yZXNpemFibGUgKGJvb2wgaXNfcmVzaXphYmxlKTsKKysg ICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgc2hvdyAoYm9vbCBkb19y YWlzZSk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lkIHVucmVh bGl6ZSAoKTsKKysgIH0KKysKKysgIFtDQ29kZSAodHlwZV9pZCA9ICJjbHV0dGVyX3RleHR1cmVf Z2V0X3R5cGUgKCkiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr ICBwdWJsaWMgY2xhc3MgVGV4dHVyZSA6IENsdXR0ZXIuQWN0b3IgeworKyAgICBwdWJsaWMgQ29n bC5NYXRlcmlhbCBjb2dsX21hdGVyaWFsIHsgZ2V0OyBzZXQ7IH0KKysgICAgcHVibGljIENvZ2wu VGV4dHVyZSBjb2dsX3RleHR1cmUgeyBnZXQ7IHNldDsgfQorKyAgfQorKworKyAgW0NvbXBhY3Rd CisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysg IHB1YmxpYyBjbGFzcyBUaW1lb3V0UG9vbCB7CisrICAgIFtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysgICAgcHVibGljIFRpbWVvdXRQb29sIChpbnQgcHJpb3JpdHkp OworKyAgfQorKworKyAgW0NDb2RlIChjcHJlZml4ID0gIkNMVVRURVJfRkVBVFVSRV8iLCBjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrICBbRmxhZ3NdCisrICBwdWJs aWMgZW51bSBGZWF0dXJlRmxhZ3MgeworKyAgICBURVhUVVJFX05QT1Q7CisrICAgIFtDQ29kZSAo Y25hbWUgPSAiY2x1dHRlcl9mZWF0dXJlX2F2YWlsYWJsZSIpXQorKyAgICBwdWJsaWMgYm9vbCBp c19hdmFpbGFibGUgKCk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9mZWF0dXJlX2dl dF9hbGwiKV0KKysgICAgcHVibGljIHN0YXRpYyBDbHV0dGVyLkZlYXR1cmVGbGFncyBAZ2V0ICgp OworKyAgfQorKworKyAgW0NDb2RlICh0eXBlX2lkID0gIkNMVVRURVJfVFlQRV9VTklUUyIsIGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysgIHB1YmxpYyBzdHJ1Y3Qg VW5pdHMgeworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9jbSIpXQor KyAgICBwdWJsaWMgVW5pdHMuZnJvbV9jbSAoZmxvYXQgY20pOworKyAgICBbQ0NvZGUgKGNuYW1l ID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9lbSIpXQorKyAgICBwdWJsaWMgVW5pdHMuZnJvbV9lbSAo ZmxvYXQgZW0pOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9lbV9m b3JfZm9udCIpXQorKyAgICBwdWJsaWMgVW5pdHMuZnJvbV9lbV9mb3JfZm9udCAoc3RyaW5nIGZv bnRfbmFtZSwgZmxvYXQgZW0pOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNf ZnJvbV9tbSIpXQorKyAgICBwdWJsaWMgVW5pdHMuZnJvbV9tbSAoZmxvYXQgbW0pOworKyAgICBb Q0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9waXhlbHMiKV0KKysgICAgcHVibGlj IFVuaXRzLmZyb21fcGl4ZWxzIChpbnQgcHgpOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0 ZXJfdW5pdHNfZnJvbV9wdCIpXQorKyAgICBwdWJsaWMgVW5pdHMuZnJvbV9wdCAoZmxvYXQgcHQp OworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9zdHJpbmciKV0KKysg ICAgcHVibGljIFVuaXRzLmZyb21fc3RyaW5nIChzdHJpbmcgc3RyKTsKKysgIH0KKyt9CitkaWZm IC0tZ2l0IGEvdmFwaS9tdXR0ZXItY2x1dHRlci02LmRlcHMgYi92YXBpL211dHRlci1jbHV0dGVy LTYuZGVwcworbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi43YTcwZDZkZgor LS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9tdXR0ZXItY2x1dHRlci02LmRlcHMKK0BAIC0wLDAg KzEsNCBAQAorK2F0aworK2NhaXJvCisranNvbi1nbGliLTEuMAorK211dHRlci1jb2dsLTYKK2Rp ZmYgLS1naXQgYS92YXBpL211dHRlci1jbHV0dGVyLTYudmFwaSBiL3ZhcGkvbXV0dGVyLWNsdXR0 ZXItNi52YXBpCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLmQ2NmY5YWM4 CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL211dHRlci1jbHV0dGVyLTYudmFwaQorQEAgLTAs MCArMSw4Njg3IEBACisrLyogbXV0dGVyLWNsdXR0ZXItNi52YXBpIGdlbmVyYXRlZCBieSB2YXBp Z2VuLCBkbyBub3QgbW9kaWZ5LiAqLworKworK1tDQ29kZSAoY3ByZWZpeCA9ICJDbHV0dGVyIiwg Z2lyX25hbWVzcGFjZSA9ICJDbHV0dGVyIiwgZ2lyX3ZlcnNpb24gPSAiNiIsIGxvd2VyX2Nhc2Vf Y3ByZWZpeCA9ICJjbHV0dGVyXyIpXQorK25hbWVzcGFjZSBDbHV0dGVyIHsKKysJbmFtZXNwYWNl IEtleSB7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAxOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zIildCisr CQlwdWJsaWMgY29uc3QgdWludCBAMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfQWx0Q3Vyc29yIild CisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9BbHRDdXJzb3I7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8z MjcwX0F0dG4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0F0dG47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV8zMjcwX0JhY2tUYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0JhY2tUYWI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0NoYW5nZVNjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQDMyNzBfQ2hhbmdlU2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9Db3B5IildCisrCQlw dWJsaWMgY29uc3QgdWludCBAMzI3MF9Db3B5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9DdXJzb3JC bGluayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfQ3Vyc29yQmxpbms7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV8zMjcwX0N1cnNvclNlbGVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBf Q3Vyc29yU2VsZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9EZWxldGVXb3JkIildCisrCQlwdWJs aWMgY29uc3QgdWludCBAMzI3MF9EZWxldGVXb3JkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9EdXBs aWNhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0R1cGxpY2F0ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZXzMyNzBfRW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0VudGVyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfMzI3MF9FcmFzZUVPRiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMy NzBfRXJhc2VFT0Y7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0VyYXNlSW5wdXQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEAzMjcwX0VyYXNlSW5wdXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0V4U2Vs ZWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9FeFNlbGVjdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZXzMyNzBfRmllbGRNYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9GaWVsZE1h cms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0lkZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBA MzI3MF9JZGVudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfSnVtcCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQDMyNzBfSnVtcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfS2V5Q2xpY2siKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEAzMjcwX0tleUNsaWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9MZWZ0 MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfTGVmdDI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8z MjcwX1BBMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUEExOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfMzI3MF9QQTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1BBMjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZXzMyNzBfUEEzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9QQTM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV8zMjcwX1BsYXkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1BsYXk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1ByaW50U2NyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBAMzI3MF9QcmludFNjcmVlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUXVpdCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQDMyNzBfUXVpdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUmVjb3JkIild CisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9SZWNvcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcw X1Jlc2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9SZXNldDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZXzMyNzBfUmlnaHQyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9SaWdodDI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV8zMjcwX1J1bGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1J1 bGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1NldHVwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBA MzI3MF9TZXR1cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfVGVzdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQDMyNzBfVGVzdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEA0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV82IildCisrCQlwdWJsaWMgY29uc3QgdWludCBANjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZXzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEA3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfOCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV85IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBAOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQUU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFhY3V0ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWJlbG93ZG90Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBYnJldmU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BYnJldmVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWJyZXZl YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYnJldmViZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQWJyZXZlYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYnJldmVncmF2ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQWJyZXZlZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYnJldmVob29r IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBYnJldmVob29rOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWJy ZXZldGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZXRpbGRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQWNjZXNzWF9FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjY2Vzc1hfRW5h YmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQWNjZXNzWF9GZWVkYmFja19FbmFibGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFjY2Vzc1hfRmVlZGJhY2tfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWNp cmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjaXJjdW1mbGV4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQWNpcmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWNpcmN1bWZs ZXhhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4YmVsb3dkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFjaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2lyY3Vt ZmxleGdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2lyY3VtZmxleGdyYXZlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQWNpcmN1bWZsZXhob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2ly Y3VtZmxleGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2lyY3VtZmxleHRpbGRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBY2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWRkRmF2b3Jp dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFkZEZhdm9yaXRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWRpYWVyZXNpczsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWdyYXZlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFob29rOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQWx0X0wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFsdF9MOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QWx0X1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFsdF9SOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQW1h Y3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fv Z29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cHBsaWNhdGlvbkxlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFwcGxpY2F0aW9uTGVmdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FwcGxpY2F0aW9uUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFwcGxpY2F0aW9uUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfMCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljXzA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfMSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJhYmljXzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfMiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfMyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfNCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFi aWNfNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cmFiaWNfNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzc7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfYWluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfYWluOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljX2FsZWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19hbGVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2FsZWZtYWtzdXJhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcmFiaWNfYWxlZm1ha3N1cmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfYmVo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfYmVoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJh YmljX2NvbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfY29tbWE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfZGFkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZGFkOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJhYmljX2RhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmlj X2RhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19kYW1tYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX2RhbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2RhbW1hdGFuIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfZGFtbWF0YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf ZGRhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2RkYWw7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfZmFyc2lfeWVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZmFyc2lf eWVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2ZhdGhhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmFiaWNfZmF0aGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZmF0aGF0YW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19mYXRoYXRhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19m ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19mZWg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cmFiaWNfZnVsbHN0b3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19mdWxsc3RvcDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FyYWJpY19nYWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19nYWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZ2hhaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY19naGFpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhaCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16 YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXphOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJhYmljX2hhbXphX2Fib3ZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemFf YWJvdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemFfYmVsb3ciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19oYW16YV9iZWxvdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYW16 YW9uYWxlZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXphb25hbGVmOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX2hhbXphb253YXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY19oYW16YW9ud2F3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhbXphb255ZWgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYW16YW9ueWVoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJh YmljX2hhbXphdW5kZXJhbGVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGFtemF1 bmRlcmFsZWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGVoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfaGVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hlaF9kb2FjaGFzaG1lZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hlaF9kb2FjaGFzaG1lZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FyYWJpY19oZWhfZ29hbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hl aF9nb2FsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2plZW0iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFyYWJpY19qZWVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2plaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX2plaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19rYWYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19rYWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfa2Fz cmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19rYXNyYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FyYWJpY19rYXNyYXRhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2thc3JhdGFu OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2tlaGVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfa2VoZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfa2hhaCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljX2toYWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfbGFtIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfbGFtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX21hZGRh X2Fib3ZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfbWFkZGFfYWJvdmU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfbWFkZGFvbmFsZWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY19tYWRkYW9uYWxlZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19tZWVtIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfbWVlbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19ub29uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfbm9vbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19ub29uX2dodW5uYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX25vb25fZ2h1bm5h OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3BlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJh YmljX3BlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19wZXJjZW50IildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcmFiaWNfcGVyY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19xYWYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19xYWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfcXVl c3Rpb25fbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3F1ZXN0aW9uX21hcms7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfcmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19yYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19ycmVoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmFiaWNfcnJlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zYWQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19zYWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc2VlbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3NlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc2Vt aWNvbG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc2VtaWNvbG9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX3NoYWRkYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3No YWRkYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zaGVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX3NoZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3N1a3VuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfc3VrdW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc3VwZXJz Y3JpcHRfYWxlZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3N1cGVyc2NyaXB0X2Fs ZWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmFiaWNfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RhaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX3RhaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY190YXR3ZWVsIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdGF0d2VlbDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY190Y2hlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RjaGVoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX3RlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RlaDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FyYWJpY190ZWhtYXJidXRhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcmFiaWNfdGVobWFyYnV0YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY190aGFsIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfdGhhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY190aGVo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdGhlaDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY190dGVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdHRlaDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FyYWJpY192ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY192ZWg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmFiaWNfd2F3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNf d2F3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3llaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJhYmljX3llaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY195ZWhfYmFyZWUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFyYWJpY195ZWhfYmFyZWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfemFo IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfemFoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJh YmljX3phaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY196YWluOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyaW5nOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fQVQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0FUOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fQVlCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl9BWUI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9CRU4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX0JFTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0NIQSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fQ0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fREEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0RBOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5fRFpBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9EWkE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9FOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fRkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX0ZFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fR0hBVCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fR0hBVDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0dJTSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fR0lNOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f SEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0hJOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fSE8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0hPOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fSU5JIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9J Tkk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9KRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9LRSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fS0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9LRU4iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0tFTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFu X0tIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fS0hFOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fTFlVTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fTFlVTjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX01FTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fTUVOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fTlUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX05VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fTyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1BFIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9QRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX1BZVVIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1BZVVI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9SQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fUkE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9SRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fUkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9TRSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJtZW5pYW5fU0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9TSEEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1NIQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1RD SEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1RDSEU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9UTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVE87CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9UU0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X1RTQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1RTTyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5fVFNPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVFlVTiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVFlVTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1ZF ViIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVkVWOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fVk8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1ZPOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fVllVTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f VllVTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1lFQ0giKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX1lFQ0g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9aQSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fWkE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9aSEUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1pIRTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy bWVuaWFuX2FjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYWNjZW50Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fYW1hbmFrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9hbWFuYWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9hcG9zdHJvcGhlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9hcG9zdHJvcGhlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2F0OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fYXliIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9h eWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9iZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX2JlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2J1dCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fYnV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fY2hhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9jaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl9kYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl9kemEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2R6YTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9leGNsYW0iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX2V4Y2xhbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2ZlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9mZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFu X2Z1bGxfc3RvcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZnVsbF9zdG9wOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZ2hhdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fZ2hhdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2dpbSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fZ2ltOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5faGkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2hpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f aG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2hvOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5faHlwaGVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9oeXBoZW47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9pbmkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX2luaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2plIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl9qZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2tlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2tl biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fa2VuOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fa2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9raGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Bcm1lbmlhbl9saWdhdHVyZV9ldyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fbGlnYXR1cmVfZXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9seXVuIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9seXVuOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fbWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9tZW47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bcm1lbmlhbl9udSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fbnU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl9vOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fcGFydXlrIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9wYXJ1eWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9wZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fcGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9w eXVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9weXVyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fcXVlc3Rpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3F1 ZXN0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fcmEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX3JhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fcmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX3JlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fc2UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3NlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5fc2VwYXJhdGlvbl9tYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9zZXBh cmF0aW9uX21hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9zaGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX3NoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3NoZXNodCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fc2hlc2h0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fdGNoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdGNoZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FybWVuaWFuX3RvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl90bzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3RzYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5fdHNhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fdHNvIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl90c287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl90eXVu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl90eXVuOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fdmVyamFrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3Zlcmph a2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fdmV2IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcm1lbmlhbl92ZXY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl92byIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fdm87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl92eXVuIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl92eXVuOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5feWVjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5feWVjaDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX3llbnRhbW5hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1l bmlhbl95ZW50YW1uYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3phIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl96YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3poZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5femhlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXRpbGRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpYmxl QmVsbF9FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlibGVCZWxsX0VuYWJsZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0F1ZGlvQ3ljbGVUcmFjayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXVkaW9DeWNsZVRyYWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9Gb3J3YXJkIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBdWRpb0ZvcndhcmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb0xvd2VyVm9s dW1lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb0xvd2VyVm9sdW1lOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXVkaW9NZWRpYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9NZWRpYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0F1ZGlvTWljTXV0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9N aWNNdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9NdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBdWRpb011dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb05leHQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEF1ZGlvTmV4dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUGF1c2UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEF1ZGlvUGF1c2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb1BsYXkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUGxheTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUHJldiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9QcmV2OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9S YWlzZVZvbHVtZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9SYWlzZVZvbHVtZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0F1ZGlvUmFuZG9tUGxheSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVk aW9SYW5kb21QbGF5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9SZWNvcmQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEF1ZGlvUmVjb3JkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9SZXBlYXQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUmVwZWF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9SZXdp bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUmV3aW5kOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXVkaW9TdG9wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1N0b3A7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Bd2F5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBd2F5OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JhYm92ZWRvdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQmFjayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmFjazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0JhY2tGb3J3YXJk IildCisrCQlwdWJsaWMgY29uc3QgdWludCBCYWNrRm9yd2FyZDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Jh Y2tTcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmFja1NwYWNlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQmF0dGVyeSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmF0dGVyeTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0JlZ2luIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCZWdpbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0JsdWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJsdWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CbHVl dG9vdGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJsdWV0b290aDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0Jvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Cb3Vu Y2VLZXlzX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQm91bmNlS2V5c19FbmFibGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9CcmVhayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQnJlYWs7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9CcmlnaHRuZXNzQWRqdXN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBC cmlnaHRuZXNzQWRqdXN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQnllbG9ydXNzaWFuX1NIT1JUVSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQnllbG9ydXNzaWFuX1NIT1JUVTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0J5ZWxvcnVzc2lhbl9zaG9ydHUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJ5ZWxvcnVzc2lh bl9zaG9ydHU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ0QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENEOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ0giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENIOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ19I IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDX0g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DX2giKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IENfaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhYm92ZWRvdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ2Fib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2FjdXRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DYWxjdWxhdG9yIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDYWxjdWxhdG9yOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2FsZW5k YXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENhbGVuZGFyOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2Fu Y2VsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDYW5jZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DYXBz X0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENhcHNfTG9jazsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0NjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2Nhcm9uOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENjZWRpbGxhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENjaXJjdW1mbGV4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENoOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ2xlYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENsZWFyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q2xlYXJHcmFiIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDbGVhckdyYWI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DbG9zZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2xvc2U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Db2RlaW5wdXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvZGVpbnB1dDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0NvbG9uU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ29sb25TaWduOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ29tbXVuaXR5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDb21tdW5pdHk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Db250cmFzdEFkanVzdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q29udHJhc3RBZGp1c3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Db250cm9sX0wiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IENvbnRyb2xfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NvbnRyb2xfUiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ29udHJvbF9SOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29weSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ29weTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NydXplaXJvU2lnbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ3J1emVpcm9TaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3V0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBDdXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeWNsZUFuZ2xlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeWNsZUFuZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf QSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfQTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX0JFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19CRTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX0NIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfQ0hF OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfQ0hFX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfQ0hFX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGlj X0NIRV92ZXJ0c3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19DSEVfdmVy dHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0RFIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19ERTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0RaSEUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0RaSEU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19F IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ly aWxsaWNfRUYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0VGOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfRUwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0VMOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRU0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX0VNOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRU4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX0VOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRU5fZGVzY2VuZGVyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FTl9kZXNjZW5kZXI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19FUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfRVI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FUyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfRVM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19HSEUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX0dIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0dIRV9iYXIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0dIRV9iYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19IQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSEE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19IQVJEU0lHTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf SEFSRFNJR047CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19IQV9kZXNjZW5kZXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0hBX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0k7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19JRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSUU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19JTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfSU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19JX21hY3JvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfSV9tYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19KRSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19LQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfS0E7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19LQV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX0tBX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0tBX3ZlcnRzdHJva2Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0tBX3ZlcnRzdHJva2U7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19MSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0xK RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX05KRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3lyaWxsaWNfTkpFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfTyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQ3lyaWxsaWNfTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX09fYmFyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19PX2JhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX1BFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19QRTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX1NDSFdBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19TQ0hX QTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1NIQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3lyaWxsaWNfU0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfU0hDSEEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX1NIQ0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfU0hI QSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfU0hIQTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0N5cmlsbGljX1NIT1JUSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfU0hPUlRJ OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfU09GVFNJR04iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX1NPRlRTSUdOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVEUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1RFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf VFNFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19UU0U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19VOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfVV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX1VfbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVV9zdHJhaWdodCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfVV9zdHJhaWdodDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX1Vfc3RyYWlnaHRfYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19V X3N0cmFpZ2h0X2JhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1ZFIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY19WRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1lBIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19ZQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGlj X1lFUlUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1lFUlU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19ZVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfWVU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19aRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfWkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19aSEUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX1pIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1pIRV9kZXNjZW5kZXIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1pIRV9kZXNjZW5kZXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19hOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfYmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX2JlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfY2hlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19jaGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19jaGVfZGVzY2VuZGVy IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19jaGVfZGVzY2VuZGVyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfY2hlX3ZlcnRzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX2NoZV92ZXJ0c3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfZGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2RlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfZHpoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZHpoZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfZWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lbCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lbSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfZW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxp Y19lbl9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2VuX2Rlc2Nl bmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19lcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VzIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY19lczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2doZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZ2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfZ2hlX2JhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZ2hlX2JhcjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19oYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2hhX2Rlc2NlbmRlciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfaGFfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfaGFyZHNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2hhcmRzaWduOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxs aWNfaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2lfbWFjcm9uIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDeXJpbGxpY19pX21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2llIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19pZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX2lvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19pbzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX2plIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19qZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX2thIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19rYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2thX2Rlc2NlbmRlciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfa2FfZGVzY2VuZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfa2FfdmVydHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfa2FfdmVy dHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2xqZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfbGplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfbmplIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19uamU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19v IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19vOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ly aWxsaWNfb19iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX29fYmFyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfcGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X3BlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfc2Nod2EiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX3NjaHdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfc2hhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19zaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19z aGNoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2hjaGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19zaGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19zaGhh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfc2hvcnRpIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19zaG9ydGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19zb2Z0c2lnbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc29mdHNpZ247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY190ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfdGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY190c2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3Rz ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY191X21hY3JvbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfdV9tYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY191 X3N0cmFpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY191X3N0cmFpZ2h0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdV9zdHJhaWdodF9iYXIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX3Vfc3RyYWlnaHRfYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf dmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3ZlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q3lyaWxsaWNfeWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3lhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfeWVydSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf eWVydTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3l1IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY195dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3plIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBDeXJpbGxpY196ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3poZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfemhlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfemhlX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfemhlX2Rl c2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9ET1MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERPUzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0RhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRGFib3ZlZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRGNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBEY2Fyb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9EZWxldGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERlbGV0ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0Rpc3BsYXkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERpc3BsYXk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Eb2N1bWVudHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERvY3VtZW50czsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0RvbmdTaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBEb25nU2ln bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERvd247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Ec3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBEc3Ryb2tlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0VORyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRU5HOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRVRI IildCisrCQlwdWJsaWMgY29uc3QgdWludCBFVEg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FWkgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEVaSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VhYm92ZWRvdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgRWFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWFjdXRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBFYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FYmVsb3dkb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEViZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjYXJvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWNpcmN1bWZs ZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RWNpcmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNpcmN1bWZsZXhhY3V0 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEVjaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2lyY3VtZmxleGdy YXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3VtZmxleGdyYXZlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRWNpcmN1bWZsZXhob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3VtZmxl eGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2lyY3VtZmxleHRpbGRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBFY2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWN1U2lnbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgRWN1U2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VkaWFlcmVzaXMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEVkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FZ3JhdmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Vob29rIild CisrCQlwdWJsaWMgY29uc3QgdWludCBFaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Vpc3VfU2hpZnQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVpc3VfU2hpZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FaXN1 X3RvZ2dsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWlzdV90b2dnbGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9FamVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWplY3Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9FbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFbWFjcm9uOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfRW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Fb2dv bmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXNj YXBlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFc2NhcGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FdGgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEV0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0V0aWxkZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXVyb1NpZ24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEV1cm9TaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXhjZWwiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEV4Y2VsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRXhlY3V0ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRXhlY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0V4cGxvcmVyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBFeHBsb3JlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEYxMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0YxMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjExOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRjEyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GMTMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxMzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0YxNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjE0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE1Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBGMTU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEYxNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxNyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRjE3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBGMTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxOTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0YyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0YyMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjIwOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RjIxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEYyMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyMyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRjIzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBGMjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEYyNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0YyNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI2Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRjI3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9GMjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0YyOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI5OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEYzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjMwIildCisrCQlwdWJs aWMgY29uc3QgdWludCBGMzA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEYzMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YzMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RjMyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRjMzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9GMzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYzNDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0YzNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjM1OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RjQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEY0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEY1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEY2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEY4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRjkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEY5OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfRkZyYW5jU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRkZyYW5jU2lnbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0ZhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFib3ZlZG90Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRmFyc2lfMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lfMDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0ZhcnNpXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNpXzE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV8yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJzaV8y OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFyc2lf MzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZhcnNp XzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV81IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGYXJz aV81OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRmFy c2lfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZh cnNpXzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV84IildCisrCQlwdWJsaWMgY29uc3QgdWludCBG YXJzaV84OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RmFyc2lfOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpX3llaCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgRmFyc2lfeWVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmF2b3JpdGVzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBGYXZvcml0ZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GaW5hbmNlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBGaW5hbmNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmluZCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRmluZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZpcnN0X1ZpcnR1YWxfU2NyZWVuIildCisr CQlwdWJsaWMgY29uc3QgdWludCBGaXJzdF9WaXJ0dWFsX1NjcmVlbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0ZvcndhcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZvcndhcmQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9GcmFtZUJhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZyYW1lQmFjazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0ZyYW1lRm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRnJhbWVGb3J3YXJk OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Fib3ZlZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR2FtZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2FtZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dicmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2JyZXZlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHY2Fyb247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2NlZGlsbGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2NpcmN1bWZsZXg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9hbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Vv cmdpYW5fYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9iYW4iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEdlb3JnaWFuX2JhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2NhbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fY2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5f Y2hhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fY2hhcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dlb3JnaWFuX2NoaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2NoaW47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9jaWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdl b3JnaWFuX2NpbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2RvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR2VvcmdpYW5fZG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fZW4iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2VuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5f ZmkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2ZpOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R2VvcmdpYW5fZ2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9nYW47CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HZW9yZ2lhbl9naGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lh bl9naGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5faGFlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHZW9yZ2lhbl9oYWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9oYXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2hhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2hl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9oZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dl b3JnaWFuX2hpZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5faGllOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR2VvcmdpYW5faG9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9o b2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9pbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R2VvcmdpYW5faW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9qaGFuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHZW9yZ2lhbl9qaGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5famlsIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9qaWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9y Z2lhbl9rYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2thbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dlb3JnaWFuX2toYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2to YXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9sYXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdlb3JnaWFuX2xhczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX21hbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR2VvcmdpYW5fbWFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fbmFyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9uYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9y Z2lhbl9vbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fb247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HZW9yZ2lhbl9wYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3BhcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3BoYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdl b3JnaWFuX3BoYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9xYXIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdlb3JnaWFuX3FhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3JhZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fcmFlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vvcmdp YW5fc2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9zYW47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HZW9yZ2lhbl9zaGluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9zaGlu OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fdGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH ZW9yZ2lhbl90YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl90YXIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdlb3JnaWFuX3RhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3VuIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl91bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFu X3ZpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fdmluOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR2VvcmdpYW5fd2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3dlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR2VvcmdpYW5feGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lh bl94YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl96ZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdlb3JnaWFuX3plbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3poYXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3poYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HbyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19BTFBIQSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR3JlZWtfQUxQSEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19BTFBI QWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfQUxQSEFhY2NlbnQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19CRVRBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19CRVRB OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfQ0hJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19DSEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19ERUxUQSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR3JlZWtfREVMVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19FUFNJTE9OIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVla19FUFNJTE9OOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfRVBTSUxP TmFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfRVBTSUxPTmFjY2VudDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX0VUQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfRVRB OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfRVRBYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHcmVla19FVEFhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19HQU1NQSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR3JlZWtfR0FNTUE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19JT1RBIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19JT1RBOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtf SU9UQWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfSU9UQWFjY2VudDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX0lPVEFkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX0lPVEFkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19JT1RBZGllcmVzaXMi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0lPVEFkaWVyZXNpczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX0tBUFBBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19LQVBQQTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX0xBTUJEQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtf TEFNQkRBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfTEFNREEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX0xBTURBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfTVUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX01VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfTlUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX05VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfT01FR0EiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX09NRUdBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfT01F R0FhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX09NRUdBYWNjZW50OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR3JlZWtfT01JQ1JPTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtf T01JQ1JPTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX09NSUNST05hY2NlbnQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX09NSUNST05hY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19Q SEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1BISTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dy ZWVrX1BJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19QSTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dyZWVrX1BTSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfUFNJOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfUkhPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19SSE87CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19TSUdNQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfU0lH TUE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19UQVUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdy ZWVrX1RBVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1RIRVRBIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19USEVUQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1VQU0lMT04iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX1VQU0lMT047CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19VUFNJ TE9OYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19VUFNJTE9OYWNjZW50Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfVVBTSUxPTmRpZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19VUFNJTE9OZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19YSSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfWEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19aRVRB IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19aRVRBOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfYWNjZW50ZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2FjY2VudGRp ZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfYWxwaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX2FscGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfYWxwaGFhY2NlbnQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2FscGhhYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3Jl ZWtfYmV0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfYmV0YTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX2NoaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfY2hpOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfZGVsdGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2RlbHRh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZXBzaWxvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R3JlZWtfZXBzaWxvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2Vwc2lsb25hY2NlbnQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2Vwc2lsb25hY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla19ldGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2V0YTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dyZWVrX2V0YWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZXRhYWNj ZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZmluYWxzbWFsbHNpZ21hIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHcmVla19maW5hbHNtYWxsc2lnbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19n YW1tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZ2FtbWE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla19ob3JpemJhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfaG9yaXpiYXI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HcmVla19pb3RhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19pb3RhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfaW90YWFjY2VudCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR3JlZWtfaW90YWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2lvdGFhY2Nl bnRkaWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfaW90YWFjY2VudGRpZXJl c2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfaW90YWRpZXJlc2lzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19pb3RhZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19rYXBwYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfa2FwcGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a19sYW1iZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2xhbWJkYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dyZWVrX2xhbWRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19sYW1kYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX211IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19t dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX251IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19udTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX29tZWdhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHcmVla19vbWVnYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX29tZWdhYWNjZW50IildCisrCQlw dWJsaWMgY29uc3QgdWludCBHcmVla19vbWVnYWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVr X29taWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX29taWNyb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HcmVla19vbWljcm9uYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19vbWljcm9uYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfcGhpIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHcmVla19waGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19waSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR3JlZWtfcGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19wc2kiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3BzaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3JobyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfcmhvOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtf c2lnbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3NpZ21hOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19zd2l0Y2g7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HcmVla190YXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3Rh dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3RoZXRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla190aGV0YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3Vwc2lsb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX3Vwc2lsb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla191cHNpbG9uYWNj ZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla191cHNpbG9uYWNjZW50OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfdXBzaWxvbmFjY2VudGRpZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla191cHNpbG9uYWNjZW50ZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla191 cHNpbG9uZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3Vwc2lsb25kaWVy ZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3hpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla194aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3pldGEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX3pldGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVlbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWw7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3Vs X0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfQUUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9BRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9BcmFlQSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0FyYWVBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0FyYWVBRSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0FyYWVBRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9C YW5qYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0JhbmphOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX0NpZXVjIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfQ2lldWM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfQ29kZWlucHV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfQ29kZWlucHV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0Rpa2V1ZCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX0Rpa2V1ZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9FIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9F TyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0VPOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX0VVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfRVU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfRW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfRW5kOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX0hhbmphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSGFu amE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhhbmd1bF9IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9JIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9JZXVuZyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX0lldW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfQ2ll dWMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0NpZXVjOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX0pfRGlrZXVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9EaWtl dWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9IaWV1aCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX0pfSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9JZXVuZyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfSWV1bmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf Sl9KaWV1aiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfSmlldWo7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfSl9LaGlldXEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9K X0toaWV1cTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0tpeWVvZyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX0pfS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfS2l5ZW9n U2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfS2l5ZW9nU2lvczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9KX0trb2dqaURhbHJpbklldW5nIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfSl9La29namlEYWxyaW5JZXVuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9K X01pZXVtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9NaWV1bTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9KX05pZXVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9O aWV1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX05pZXVuSGlldWgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9KX05pZXVuSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9O aWV1bkppZXVqIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9OaWV1bkppZXVqOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUGFuU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX0pfUGFuU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1BoaWV1ZiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUGhpZXVmOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X0pfUGlldWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1BpZXViOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX0pfUGlldWJTaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfSl9QaWV1YlNpb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1bCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9S aWV1bEhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9SaWV1bEhpZXVoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxLaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9KX1JpZXVsS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxN aWV1bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxNaWV1bTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsUGhpZXVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfSl9SaWV1bFBoaWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsUGlldWIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1JpZXVsUGlldWI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfSl9SaWV1bFNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9K X1JpZXVsU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsVGlldXQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1JpZXVsVGlldXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfSl9TaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9TaW9zOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX0pfU3NhbmdLaXllb2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhh bmd1bF9KX1NzYW5nS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfU3NhbmdTaW9zIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9Tc2FuZ1Npb3M7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfSl9UaWV1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfVGlldXQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9ZZW9yaW5IaWV1aCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0pfWWVvcmluSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSmFtbyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0phbW87CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfSmVvbmphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSmVvbmphOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX0ppZXVqIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSmll dWo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfS2hpZXVxIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfS2hpZXVxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0tpeWVvZyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX0tpeWVvZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9LaXll b2dTaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfS2l5ZW9nU2lvczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0hhbmd1bF9La29namlEYWxyaW5JZXVuZyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX0trb2dqaURhbHJpbklldW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX01pZXVt IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfTWlldW07CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfTXVsdGlwbGVDYW5kaWRhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9N dWx0aXBsZUNhbmRpZGF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9OaWV1biIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX05pZXVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX05pZXVu SGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9OaWV1bkhpZXVoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX05pZXVuSmlldWoiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1 bF9OaWV1bkppZXVqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX08iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX09FIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfT0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUGFuU2lvcyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1BhblNpb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfUGhpZXVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUGhpZXVmOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX1BpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUGll dWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUGlldWJTaW9zIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfUGlldWJTaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1Bvc3RIYW5qYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1Bvc3RIYW5qYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9QcmVIYW5qYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1ByZUhhbmph OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1ByZXZpb3VzQ2FuZGlkYXRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfUHJldmlvdXNDYW5kaWRhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfUmlldWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9SaWV1bEhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf UmlldWxIaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bEtpeWVvZyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X1JpZXVsTWlldW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bE1pZXVtOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsUGhpZXVmIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfUmlldWxQaGlldWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxQaWV1YiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsUGlldWI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfUmlldWxTaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxT aW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsVGlldXQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9SaWV1bFRpZXV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsWWVv cmluSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bFllb3JpbkhpZXVo OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JvbWFqYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX1JvbWFqYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9TaW5nbGVDYW5kaWRhdGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TaW5nbGVDYW5kaWRhdGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1Npb3M7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3BlY2lhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX1NwZWNpYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdEaWtldWQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2FuZ0Rpa2V1ZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9Tc2FuZ0ppZXVqIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3NhbmdKaWV1ajsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Tc2FuZ0tpeWVvZyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX1NzYW5nS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1NzYW5nUGlldWIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2FuZ1BpZXViOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX1NzYW5nU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1NzYW5n U2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9TdGFydCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSGFuZ3VsX1N0YXJ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1N1bmt5ZW9uZ2V1bU1pZXVt IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3Vua3llb25nZXVtTWlldW07CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfU3Vua3llb25nZXVtUGhpZXVmIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfU3Vua3llb25nZXVtUGhpZXVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1N1 bmt5ZW9uZ2V1bVBpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3Vua3llb25n ZXVtUGlldWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfVGlldXQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9UaWV1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9VIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9XQSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1dBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1dBRSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1dBRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9XRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1dFOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX1dFTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1dFTzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9XSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1dJOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSGFuZ3VsX1lBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfWUE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWUFFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfWUFFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lFIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfWUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWUVPIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfWUVPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lJIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfWUk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWU8iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9ZVSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lVOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X1llb3JpbkhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfWWVvcmluSGlldWg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFua2FrdSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFua2FrdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hjaXJjdW1mbGV4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hlYnJld19zd2l0Y2giKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhlYnJld19zd2l0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IZWxw IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIZWxwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGVua2FuIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIZW5rYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IZW5rYW5fTW9k ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGVua2FuX01vZGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I aWJlcm5hdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhpYmVybmF0ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hpcmFnYW5hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIaXJhZ2FuYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hpcmFnYW5hX0thdGFrYW5hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIaXJhZ2Fu YV9LYXRha2FuYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hpc3RvcnkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhpc3Rvcnk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ib21lIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIb21lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSG9tZVBhZ2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEhvbWVQYWdlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSG90TGlua3MiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhvdExpbmtzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0h5cGVyX0wiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEh5cGVyX0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IeXBlcl9SIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIeXBlcl9SOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19DZW50ZXJfT2JqZWN0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBJU09fQ2VudGVyX09iamVjdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Db250aW51b3Vz X1VuZGVybGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0NvbnRpbnVvdXNfVW5kZXJs aW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Rpc2NvbnRpbnVvdXNfVW5kZXJsaW5lIildCisrCQlw dWJsaWMgY29uc3QgdWludCBJU09fRGlzY29udGludW91c19VbmRlcmxpbmU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9JU09fRW1waGFzaXplIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRW1waGFzaXpl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0VudGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09f RW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRmFzdF9DdXJzb3JfRG93biIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSVNPX0Zhc3RfQ3Vyc29yX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRmFz dF9DdXJzb3JfTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0Zhc3RfQ3Vyc29yX0xl ZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRmFzdF9DdXJzb3JfUmlnaHQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IElTT19GYXN0X0N1cnNvcl9SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19GYXN0 X0N1cnNvcl9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0Zhc3RfQ3Vyc29yX1VwOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSVNPX0ZpcnN0X0dyb3VwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJ U09fRmlyc3RfR3JvdXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRmlyc3RfR3JvdXBfTG9jayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0ZpcnN0X0dyb3VwX0xvY2s7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9JU09fR3JvdXBfTGF0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Hcm91cF9MYXRj aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0lTT19Hcm91cF9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBJU09fR3JvdXBfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Hcm91cF9TaGlmdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSVNPX0dyb3VwX1NoaWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xh c3RfR3JvdXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MYXN0X0dyb3VwOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSVNPX0xhc3RfR3JvdXBfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNP X0xhc3RfR3JvdXBfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MZWZ0X1RhYiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSVNPX0xlZnRfVGFiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsMl9M YXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsMl9MYXRjaDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0lTT19MZXZlbDNfTGF0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MZXZl bDNfTGF0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWwzX0xvY2siKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IElTT19MZXZlbDNfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MZXZlbDNfU2hp ZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MZXZlbDNfU2hpZnQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9JU09fTGV2ZWw1X0xhdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWw1 X0xhdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsNV9Mb2NrIildCisrCQlwdWJsaWMgY29u c3QgdWludCBJU09fTGV2ZWw1X0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWw1X1NoaWZ0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWw1X1NoaWZ0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSVNPX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Mb2NrOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSVNPX01vdmVfTGluZV9Eb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTW92 ZV9MaW5lX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTW92ZV9MaW5lX1VwIildCisrCQlwdWJs aWMgY29uc3QgdWludCBJU09fTW92ZV9MaW5lX1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX05leHRf R3JvdXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19OZXh0X0dyb3VwOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSVNPX05leHRfR3JvdXBfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX05l eHRfR3JvdXBfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QYXJ0aWFsX0xpbmVfRG93biIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1BhcnRpYWxfTGluZV9Eb3duOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSVNPX1BhcnRpYWxfTGluZV9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1BhcnRp YWxfTGluZV9VcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QYXJ0aWFsX1NwYWNlX0xlZnQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IElTT19QYXJ0aWFsX1NwYWNlX0xlZnQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9JU09fUGFydGlhbF9TcGFjZV9SaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1Bh cnRpYWxfU3BhY2VfUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUHJldl9Hcm91cCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSVNPX1ByZXZfR3JvdXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUHJl dl9Hcm91cF9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUHJldl9Hcm91cF9Mb2Nr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1JlbGVhc2VfQm90aF9NYXJnaW5zIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBJU09fUmVsZWFzZV9Cb3RoX01hcmdpbnM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09f UmVsZWFzZV9NYXJnaW5fTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1JlbGVhc2Vf TWFyZ2luX0xlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUmVsZWFzZV9NYXJnaW5fUmlnaHQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IElTT19SZWxlYXNlX01hcmdpbl9SaWdodDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0lTT19TZXRfTWFyZ2luX0xlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19T ZXRfTWFyZ2luX0xlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fU2V0X01hcmdpbl9SaWdodCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1NldF9NYXJnaW5fUmlnaHQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9JYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElhYm92ZWRvdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0lhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWFjdXRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJYmVsb3dkb3Q7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9JYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElicmV2ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0ljaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJY2lyY3VtZmxl eDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0lkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElk aWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IElncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJ aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0ltYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElt YWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JbnNlcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElu c2VydDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0lvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElv Z29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEl0 aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0oiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEo7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9KY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSmNpcmN1bWZs ZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9LIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfS1BfMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfMDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0tQXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9L UF8yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF8yOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfMyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEtQXzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF81IildCisrCQlwdWJs aWMgY29uc3QgdWludCBLUF81OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfNiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgS1BfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEtQXzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF84IildCisrCQlwdWJsaWMgY29uc3QgdWludCBL UF84OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfOTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0tQX0FkZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfQWRkOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfS1BfQmVnaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX0JlZ2lu OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfS1BfRGVjaW1hbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1Bf RGVjaW1hbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0RlbGV0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgS1BfRGVsZXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRGl2aWRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBLUF9EaXZpZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9Eb3duIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBLUF9Eb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRW5kIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBLUF9FbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9FbnRlciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgS1BfRW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9FcXVhbCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgS1BfRXF1YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9GMSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgS1BfRjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9GMiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgS1BfRjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9GMyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgS1BfRjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9GNCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgS1BfRjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9Ib21lIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBLUF9Ib21lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfSW5zZXJ0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBLUF9JbnNlcnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9MZWZ0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBLUF9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfTXVsdGlwbHkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEtQX011bHRpcGx5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfTmV4dCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgS1BfTmV4dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1BhZ2VfRG93 biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfUGFnZV9Eb3duOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf S1BfUGFnZV9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfUGFnZV9VcDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tQX1ByaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9QcmlvcjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0tQX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9SaWdodDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0tQX1NlcGFyYXRvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfU2Vw YXJhdG9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfU3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEtQX1NwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfU3VidHJhY3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEtQX1N1YnRyYWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfVGFiIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBLUF9UYWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9VcCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgS1BfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYW5hX0xvY2siKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEthbmFfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0thbmFfU2hpZnQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEthbmFfU2hpZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYW5qaSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgS2Fuamk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYW5qaV9CYW5nb3UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEthbmppX0JhbmdvdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0thdGFr YW5hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYXRha2FuYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ti ZEJyaWdodG5lc3NEb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYmRCcmlnaHRuZXNzRG93 bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0tiZEJyaWdodG5lc3NVcCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgS2JkQnJpZ2h0bmVzc1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2JkTGlnaHRPbk9mZiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgS2JkTGlnaHRPbk9mZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tjZWRpbGxh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tvcmVh bl9Xb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtvcmVhbl9Xb247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEwxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDEwIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBMMTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MMiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTDI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9MNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9MNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MNiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MNyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MOCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9MYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhY3V0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0xhc3RfVmlydHVhbF9TY3JlZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IExhc3RfVmlydHVhbF9TY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2gwIildCisrCQlw dWJsaWMgY29uc3QgdWludCBMYXVuY2gwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoMSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTGF1bmNoMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2gzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2gzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoNCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g2Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2g2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNoNyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5jaDgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVuY2g5 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2g5OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1bmNo QSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhdW5j aEIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaEI7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVu Y2hDIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2hDOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1 bmNoRCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoRDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xh dW5jaEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaEU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9M YXVuY2hGIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2hGOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYmVsb3dkb3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9MY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExjYXJvbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0xjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMY2VkaWxsYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0xlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExlZnQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9MaWdodEJ1bGIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExpZ2h0QnVsYjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0xpbmVmZWVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMaW5lZmVlZDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0xpcmFTaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMaXJhU2lnbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0xvZ0dyYWJJbmZvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMb2dHcmFi SW5mbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0xvZ09mZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTG9n T2ZmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTG9nV2luZG93VHJlZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTG9nV2luZG93VHJlZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xzdHJva2UiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IExzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBNOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBNYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfRFNFIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBNYWNlZG9uaWFfRFNFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlhX0dKRSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFjZWRvbmlhX0dKRTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01h Y2Vkb25pYV9LSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25pYV9LSkU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9NYWNlZG9uaWFfZHNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYWNlZG9u aWFfZHNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlhX2dqZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTWFjZWRvbmlhX2dqZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hY2Vkb25pYV9ramUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25pYV9ramU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWVfS29o byIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFlX0tvaG87CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWls IildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYWlsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFpbEZvcndh cmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1haWxGb3J3YXJkOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TWFya2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYXJrZXQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9N YXNzeW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hc3N5bzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01l ZXRpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1lZXRpbmc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9N ZW1vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNZW1vOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVudSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWVudTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01lbnVLQiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgTWVudUtCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWVudVBCIildCisr CQlwdWJsaWMgY29uc3QgdWludCBNZW51UEI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NZXNzZW5nZXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IE1lc3NlbmdlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01ldGFfTCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWV0YV9MOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWV0YV9SIild CisrCQlwdWJsaWMgY29uc3QgdWludCBNZXRhX1I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NaWxsU2lnbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWlsbFNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Nb2RlTG9j ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTW9kZUxvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Nb2Rl X3N3aXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTW9kZV9zd2l0Y2g7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Nb25CcmlnaHRuZXNzRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTW9uQnJpZ2h0 bmVzc0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Nb25CcmlnaHRuZXNzVXAiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE1vbkJyaWdodG5lc3NVcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01vdXNlS2V5c19BY2Nl bF9FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1vdXNlS2V5c19BY2NlbF9FbmFibGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Nb3VzZUtleXNfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBNb3VzZUtleXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXVoZW5rYW4iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE11aGVua2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXVsdGlfa2V5IildCisrCQlw dWJsaWMgY29uc3QgdWludCBNdWx0aV9rZXk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NdWx0aXBsZUNhbmRp ZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTXVsdGlwbGVDYW5kaWRhdGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9NdXNpYyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTXVzaWM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9NeUNvbXB1dGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNeUNvbXB1dGVyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTXlTaXRlcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTXlTaXRlczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX04iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9OYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5hY3V0ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X05haXJhU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmFpcmFTaWduOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTmNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBOY2Fyb247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9OY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmNlZGlsbGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9OZXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5ldzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X05ld1NoZXFlbFNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5ld1NoZXFlbFNpZ247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9OZXdzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBOZXdzOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfTmV4dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV4dDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX05leHRfVk1vZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5leHRfVk1vZGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9OZXh0X1ZpcnR1YWxfU2NyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBO ZXh0X1ZpcnR1YWxfU2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTnRpbGRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBOdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OdW1fTG9jayIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgTnVtX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PIildCisrCQlwdWJsaWMgY29u c3QgdWludCBPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9F OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfT2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPYWN1dGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9PYmFycmVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPYmFycmVk OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfT2JlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBPYmVs b3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9j YXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBPY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4YWN1dGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IE9jaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PY2lyY3Vt ZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2lyY3VtZmxleGJlbG93ZG90 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfT2NpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgT2NpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4aG9vayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgT2NpcmN1bWZsZXhob29rOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2Np cmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2NpcmN1bWZsZXh0aWxkZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX09kaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9kaWFl cmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PZG91YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE9kb3VibGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09mZmljZUhvbWUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE9mZmljZUhvbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PZ3JhdmUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IE9ncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob29rIildCisrCQlwdWJs aWMgY29uc3QgdWludCBPaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBPaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JuYWN1dGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IE9ob3JuYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9ybmJlbG93ZG90Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9ybmJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hv cm5ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm5ncmF2ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX09ob3JuaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm5ob29rOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfT2hvcm50aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm50aWxkZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX09tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9tYWNyb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Pb2JsaXF1ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT29ibGlx dWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9PcGVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPcGVuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfT3BlblVSTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3BlblVSTDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX09wdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3B0aW9uOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfT3NsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBPc2xhc2g7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9PdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE90aWxkZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX092ZXJsYXkxX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT3Zl cmxheTFfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT3ZlcmxheTJfRW5hYmxlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBPdmVybGF5Ml9FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QIildCisrCQlw dWJsaWMgY29uc3QgdWludCBQOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGFib3ZlZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCBQYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QYWdlX0Rvd24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFBhZ2VfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BhZ2VfVXAiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFBhZ2VfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QYXN0ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgUGFzdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QYXVzZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgUGF1c2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QZXNldGFTaWduIildCisr CQlwdWJsaWMgY29uc3QgdWludCBQZXNldGFTaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGhvbmUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFBob25lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGljdHVyZXMiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFBpY3R1cmVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9B Y2NlbGVyYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0FjY2VsZXJhdGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0J1dHRvbjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBv aW50ZXJfQnV0dG9uMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uMiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUG9pbnRlcl9CdXR0b24yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9C dXR0b24zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRvbjM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Qb2ludGVyX0J1dHRvbjQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJf QnV0dG9uNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uNSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgUG9pbnRlcl9CdXR0b241OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9CdXR0b25f RGZsdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9CdXR0b25fRGZsdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1BvaW50ZXJfRGJsQ2xpY2sxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2lu dGVyX0RibENsaWNrMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRGJsQ2xpY2syIildCisrCQlw dWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RibENsaWNrMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50 ZXJfRGJsQ2xpY2szIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RibENsaWNrMzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRGJsQ2xpY2s0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBQb2ludGVyX0RibENsaWNrNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRGJsQ2xpY2s1Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RibENsaWNrNTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1BvaW50ZXJfRGJsQ2xpY2tfRGZsdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9E YmxDbGlja19EZmx0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EZmx0QnRuTmV4dCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EZmx0QnRuTmV4dDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bv aW50ZXJfRGZsdEJ0blByZXYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRGZsdEJ0 blByZXY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFBvaW50ZXJfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRG93bkxlZnQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRG93bkxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2lu dGVyX0Rvd25SaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9Eb3duUmlnaHQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RyYWcxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQ b2ludGVyX0RyYWcxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnMiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRHJhZzMi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZzM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Q b2ludGVyX0RyYWc0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RyYWc0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRl cl9EcmFnNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRHJhZ19EZmx0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBQb2ludGVyX0RyYWdfRGZsdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRW5h YmxlS2V5cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9FbmFibGVLZXlzOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUG9pbnRlcl9MZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVy X0xlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBQb2ludGVyX1JpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9VcCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUG9pbnRlcl9VcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfVXBMZWZ0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX1VwTGVmdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1BvaW50ZXJfVXBSaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9VcFJpZ2h0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfUG93ZXJEb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb3dl ckRvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb3dlck9mZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UG93ZXJPZmY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QcmV2X1ZNb2RlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBQcmV2X1ZNb2RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUHJldl9WaXJ0dWFsX1NjcmVlbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgUHJldl9WaXJ0dWFsX1NjcmVlbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1ByZXZpb3VzQ2FuZGlkYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQcmV2aW91c0NhbmRp ZGF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1ByaW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQcmlu dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1ByaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQcmlvcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9SIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFIxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjEwIildCisrCQlwdWJs aWMgY29uc3QgdWludCBSMTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFIxMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IxMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg UjEyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUjEzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9SMTQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFIxNDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1IxNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjE1OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf UjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFIyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFIzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFI0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFI1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfUjYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFI2OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFI3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFI4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFI5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmFjdXRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBSYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SY2Fyb24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFJjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JjZWRpbGxhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBSY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JlZCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgUmVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVkbyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgUmVkbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JlZnJlc2giKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFJlZnJlc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZWxvYWQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFJlbG9hZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JlcGVhdEtleXNfRW5hYmxlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBSZXBlYXRLZXlzX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JlcGx5 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZXBseTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JldHVybiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmV0dXJuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmlnaHQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUm9ja2VyRG93biIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm9ja2VyRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JvY2tl ckVudGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb2NrZXJFbnRlcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1JvY2tlclVwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb2NrZXJVcDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1JvbWFqaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm9tYWppOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfUm90YXRlV2luZG93cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm90YXRlV2luZG93 czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1JvdGF0aW9uS0IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJv dGF0aW9uS0I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb3RhdGlvblBCIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBSb3RhdGlvblBCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUnVwZWVTaWduIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBSdXBlZVNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU0NIV0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNDSFdBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Fib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNj YXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1NjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT Y2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NjcmVlblNhdmVyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTY3JlZW5TYXZlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Njcm9sbENsaWNrIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTY3JvbGxDbGljazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Njcm9s bERvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNjcm9sbERvd247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TY3JvbGxVcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Nyb2xsVXA7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TY3JvbGxfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Nyb2xsX0xvY2s7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TZWFyY2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlYXJjaDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NlbGVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VsZWN0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2VsZWN0QnV0dG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZWxlY3RC dXR0b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZW5k OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9ESkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNl cmJpYW5fREpFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9EWkUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNlcmJpYW5fRFpFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9KRSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2VyYmlhbl9KRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fTEpFIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX0xKRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJp YW5fTkpFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX05KRTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NlcmJpYW5fVFNIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9UU0hFOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9kamUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNlcmJp YW5fZGplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9kemUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNlcmJpYW5fZHplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9qZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2VyYmlhbl9qZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fbGplIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX2xqZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJpYW5f bmplIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX25qZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NlcmJpYW5fdHNoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl90c2hlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2hpZnRfTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2hpZnRfTDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NoaWZ0X0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNoaWZ0X0xv Y2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaGlmdF9SIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaGlm dF9SOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfU2hvcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2hvcDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NpbmdsZUNhbmRpZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luZ2xlQ2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX2FhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hYTIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfYWEyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luaF9hZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWUyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX2FlMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWVlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX2FlZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWVlMiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hZWUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9haSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9haTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWky IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2FpMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5o X2F1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2F1OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2lu aF9hdTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYXUyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf U2luaF9iYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9iYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NpbmhfYmhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2JoYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfY2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfY2E7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX2NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9jaGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX2RkYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9kZGE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaW5oX2RkaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZGRoYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NpbmhfZGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2Ro YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZGhoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9kaGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2UyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX2UyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9lZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF9lZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZWUyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTaW5oX2VlMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZmEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfZmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2dhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTaW5oX2dhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9naGEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNpbmhfZ2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9oMiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF9oMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfaGEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2kiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfaTIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNpbmhfaTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2lpIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX2lpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9paTIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNpbmhfaWkyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9qYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU2luaF9qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfamhhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX2poYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfam55YSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9qbnlhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9rYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9rYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhfa2hh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2toYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf a3VuZGRhbGl5YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9rdW5kZGFsaXlhOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2luaF9sYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9sYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NpbmhfbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2xsYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NpbmhfbHUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbHU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2x1MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9s dTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2x1dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9sdXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2x1dTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfbHV1MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX21iYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2luaF9tYmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25hIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX25hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uZGRhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX25kZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25kaGEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfbmRoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbmciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25nMiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uZzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25nYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uZ2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25q YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5o X25uYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9ubmE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX255YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9ueWE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5oX28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1NpbmhfbzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbzI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5oX29vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX29vOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9vbzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfb28yOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2luaF9wYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9wYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NpbmhfcGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3BoYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1NpbmhfcmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcmE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaW5oX3JpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3JpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2luaF9yaWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcmlpOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9ydTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfcnUy OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9ydXUyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X3J1dTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3NhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX3NhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9zaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfc2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9zc2hhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTaW5oX3NzaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3RoYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF90aGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3RoaGEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNpbmhfdGhoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdHRhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX3R0YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdHRoYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF90dGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF91Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3UyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3UyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF91dSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF91dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfdXUy IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3V1MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf dmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5o X3lhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3lhOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2xl ZXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNsZWVwOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2xvd0tl eXNfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTbG93S2V5c19FbmFibGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TcGVsbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3BlbGw7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TcGxpdFNjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3BsaXRTY3JlZW47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TdGFuZGJ5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTdGFuZGJ5 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU3RhcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN0YXJ0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU3RpY2t5S2V5c19FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFN0aWNreUtleXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3RvcCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU3RvcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N1YnRpdGxlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTdWJ0aXRsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N1cGVyX0wiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFN1cGVyX0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdXBlcl9SIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTdXBlcl9SOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3VwcG9ydCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU3VwcG9ydDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N1c3BlbmQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFN1c3BlbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRf MTAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8xMDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1N3aXRjaF9WVF8xMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzExOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzEyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTd2l0Y2hf VlRfMTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU3dpdGNoX1ZUXzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfNCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hf VlRfNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Td2l0Y2hfVlRfNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Td2l0Y2hfVlRfNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZU Xzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U3dpdGNoX1ZUXzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfOSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU3dpdGNoX1ZUXzk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TeXNfUmVxIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTeXNfUmVxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RIT1JOIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUSE9STjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RhYiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGFi OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUYWJv dmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UYXNrUGFuZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGFza1BhbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rlcm1pbmFsIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUZXJtaW5hbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rlcm1pbmF0ZV9TZXJ2ZXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRlcm1pbmF0ZV9TZXJ2ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2Jh aHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfYmFodDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfYm9iYWltYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfYm9iYWltYWk7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX2Nob2NoYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfY2hv Y2hhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfY2hvY2hhbmciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfY2hvY2hhbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2Nob2NoaW5nIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX2Nob2NoaW5nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9jaG9j aG9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2Nob2Nob2U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX2RvY2hhZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfZG9jaGFkYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfZG9kZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfZG9k ZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2ZvZmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfZm9mYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfZm9mYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfZm9mYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2hvaGlwIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX2hvaGlwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9ob25va2h1ayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9ob25va2h1azsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf a2hva2hhaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9raG9raGFpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9raG9raG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2tob2tob247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2tob2todWF0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX2tob2todWF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9raG9raHdhaSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9raG9raHdhaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfa2hvcmFraGFu ZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9raG9yYWtoYW5nOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9rb2thaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9rb2thaTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfbGFra2hhbmd5YW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf bGFra2hhbmd5YW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla2NoZXQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRoYWlfbGVrY2hldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVraGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVraGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla2hv ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtob2s7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U aGFpX2xla2thbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtrYW87CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UaGFpX2xla251bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVrbnVu ZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrcGFldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9sZWtwYWV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtzYW0iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRoYWlfbGVrc2FtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtzaSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtzaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrc29u ZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtzb25nOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV9sZWtzdW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVrc3VuOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVGhhaV9sb2NodWxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2xvY2h1 bGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xvbGluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9sb2xpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2x1IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX2x1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWljaGF0dGF3YSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVGhhaV9tYWljaGF0dGF3YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbWFp ZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpZWs7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9U aGFpX21haWhhbmFrYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpaGFuYWthdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfbWFpaGFuYWthdF9tYWl0aG8iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfbWFpaGFuYWthdF9tYWl0aG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haXRh aWtodSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWl0YWlraHU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX21haXRobyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWl0aG87Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UaGFpX21haXRyaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9t YWl0cmk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haXlhbW9rIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX21haXlhbW9rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tb21hIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX21vbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX25nb25ndSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9uZ29uZ3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX25p a2hhaGl0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX25pa2hhaGl0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV9ub25lbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9ub25lbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfbm9udSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9ub251 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9vYW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFp X29hbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3BhaXlhbm5vaSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVGhhaV9wYWl5YW5ub2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3BoaW50aHUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcGhpbnRodTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcGhv cGhhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9waG9waGFuOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9waG9waHVuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9waG9waHVuZzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfcGhvc2FtcGhhbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VGhhaV9waG9zYW1waGFvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9wb3BsYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9wb3BsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcm9ydWEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcm9ydWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3J1Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3J1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJh YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfc2FyYWFhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFhYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfc2FyYWFlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFhZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYWFpbWFpbWFsYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfc2FyYWFpbWFpbWFsYWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFhaW1haW11 YW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWFpbWFpbXVhbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfc2FyYWFtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFhbTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf c2FyYWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFpIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaGFpX3NhcmFpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhaWkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRoYWlfc2FyYWlpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhbyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYXUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X3NhcmF1ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhdWU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX3NhcmF1ZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYXVlZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYXV1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFp X3NhcmF1dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc29ydXNpIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX3NvcnVzaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc29zYWxhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX3Nvc2FsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc29zbyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zb3NvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zb3N1 YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zb3N1YTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfdGhhbnRoYWtoYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdGhhbnRoYWtoYXQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Rob25hbmdtb250aG8iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfdGhvbmFuZ21vbnRobzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfdGhvcGh1dGhhbyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG9waHV0aGFvOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VGhhaV90aG90aGFoYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfdGhvdGhhaGFuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV90aG90aGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFp X3Rob3RoYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Rob3Rob25nIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX3Rob3Rob25nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90aG90aHVuZyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG90aHVuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf dG9wYXRhayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90b3BhdGFrOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVGhhaV90b3RhbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90b3RhbzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1RoYWlfd293YWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3dv d2FlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfeW95YWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfeW95YWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3lveWluZyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGhhaV95b3lpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaG9ybiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhvcm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaW1lIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaW1lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG9Eb0xpc3QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRvRG9MaXN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG9vbHMiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRvb2xzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG9wTWVudSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVG9wTWVudTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RvdWNocGFkT2ZmIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUb3VjaHBhZE9mZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RvdWNocGFkT24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRvdWNocGFkT247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ub3VjaHBhZFRv Z2dsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVG91Y2hwYWRUb2dnbGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Ub3Vyb2t1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb3Vyb2t1OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVHJhdmVsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUcmF2ZWw7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Uc2xhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRzbGFzaDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VV0IiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFVXQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VhY3V0ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWJlbG93ZG90IildCisr CQlwdWJsaWMgY29uc3QgdWludCBVYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VYnJldmUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFVicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VjaXJjdW1mbGV4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBVY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vk aWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVkaWFlcmVzaXM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9VZG91YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVkb3VibGVhY3V0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1VncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWdyYXZlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVob29rOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVWhvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVob3JuOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVWhvcm5hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWhvcm5hY3V0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1Vob3JuYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVo b3JuYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9ybmdyYXZlIildCisrCQlwdWJsaWMgY29u c3QgdWludCBVaG9ybmdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWhvcm5ob29rIildCisrCQlwdWJs aWMgY29uc3QgdWludCBVaG9ybmhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9ybnRpbGRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBVaG9ybnRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFu X0dIRV9XSVRIX1VQVFVSTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX0dIRV9X SVRIX1VQVFVSTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9JIildCisrCQlwdWJsaWMgY29u c3QgdWludCBVa3JhaW5pYW5fSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9JRSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX0lFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFu X1lJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5fWUk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Va3JhaW5pYW5fZ2hlX3dpdGhfdXB0dXJuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3Jh aW5pYW5fZ2hlX3dpdGhfdXB0dXJuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFuX2kiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWluaWFu X2llIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5faWU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Va3JhaW5pYW5feWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl95aTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1VrcmFuaWFuX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFu X0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl9KRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VWtyYW5pYW5fSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl9ZSSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVWtyYW5pYW5fWUk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl9pIildCisrCQlw dWJsaWMgY29uc3QgdWludCBVa3Jhbmlhbl9pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYW5pYW5famUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX2plOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWty YW5pYW5feWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX3lpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfVW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVW1hY3JvbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1VuZG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVuZG87CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9VbmdyYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVuZ3JhYjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1VvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVvZ29uZWs7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VcmluZyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVXJpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Vc2VyMUtCIild CisrCQlwdWJsaWMgY29uc3QgdWludCBVc2VyMUtCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVXNlcjJLQiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVXNlcjJLQjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VzZXJQQiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVXNlclBCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVXRpbGRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBVdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9WIildCisrCQlw dWJsaWMgY29uc3QgdWludCBWOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVmVuZG9ySG9tZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgVmVuZG9ySG9tZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ZpZGVvIildCisrCQlw dWJsaWMgY29uc3QgdWludCBWaWRlbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ZpZXciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFZpZXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Wb2lkU3ltYm9sIildCisrCQlwdWJs aWMgY29uc3QgdWludCBWb2lkU3ltYm9sOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dMQU4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFdMQU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XV1ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdX VzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1dhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2FjdXRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfV2FrZVVwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXYWtlVXA7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9XY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgV2Np cmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBXZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2ViQ2FtIildCisrCQlwdWJsaWMgY29u c3QgdWludCBXZWJDYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFdncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1doZWVsQnV0dG9uIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBXaGVlbEJ1dHRvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dpbmRvd0NsZWFyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBXaW5kb3dDbGVhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dvblNpZ24i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdvblNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Xb3JkIild CisrCQlwdWJsaWMgY29uc3QgdWludCBXb3JkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgWDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1hhYm92ZWRvdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgWGFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWGZlciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgWGZlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1kiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFlh Y3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1liZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg WWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFljaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWRpYWVyZXNpcyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgWWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1llbGxvdyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgWWVsbG93OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWdyYXZlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBZZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZaG9vayIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgWWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZdGlsZGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFl0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1oiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9aYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFphYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1phY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgWmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWmNhcm9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBaY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9aZW5fS29obyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgWmVuX0tvaG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9aZW5rYWt1IildCisrCQlwdWJsaWMgY29u c3QgdWludCBaZW5rYWt1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWmVua2FrdV9IYW5rYWt1IildCisrCQlw dWJsaWMgY29uc3QgdWludCBaZW5rYWt1X0hhbmtha3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ab29tSW4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFpvb21JbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1pvb21PdXQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFpvb21PdXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ac3Ryb2tl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBac3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FhY3V0ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJlbG93ZG90IildCisrCQlw dWJsaWMgY29uc3QgdWludCBhYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYm92ZWRvdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGFicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FicmV2ZWFjdXRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYnJldmVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Fi cmV2ZWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYnJldmViZWxvd2RvdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2FicmV2ZWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYnJldmVn cmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2FicmV2ZWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGFicmV2ZWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmV0aWxkZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYWJyZXZldGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY2lyY3VtZmxleCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY2lyY3VtZmxl eGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxleGFjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYWNpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWNp cmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4Z3JhdmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY2ly Y3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4aG9vazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFj aXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBhZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGFlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBhZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9haG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBh bWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYW1wZXJzYW5kIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBhbXBlcnNhbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hb2dvbmVrIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBhb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXBvc3Ryb3BoZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYXBvc3Ryb3BoZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FwcHJveGVxIildCisrCQlwdWJs aWMgY29uc3QgdWludCBhcHByb3hlcTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FwcHJveGltYXRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBhcHByb3hpbWF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FyaW5nIild CisrCQlwdWJsaWMgY29uc3QgdWludCBhcmluZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FzY2lpY2lyY3Vt IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhc2NpaWNpcmN1bTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Fz Y2lpdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFzY2lpdGlsZGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9hc3RlcmlzayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXN0ZXJpc2s7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9hdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9h dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGF0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Ii KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9iYWJvdmVkb3QiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JhY2tzbGFz aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYmFja3NsYXNoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYmFs bG90Y3Jvc3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJhbGxvdGNyb3NzOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBiYXI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i ZWNhdXNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBiZWNhdXNlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YmxhbmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJsYW5rOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYm90 aW50ZWdyYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdGludGVncmFsOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYm90bGVmdHBhcmVucyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90bGVmdHBhcmVu czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JvdGxlZnRzcWJyYWNrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJvdGxlZnRzcWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RsZWZ0c3VtbWF0aW9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBib3RsZWZ0c3VtbWF0aW9uOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Ym90cmlnaHRwYXJlbnMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdHJpZ2h0cGFyZW5zOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYm90cmlnaHRzcWJyYWNrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJvdHJpZ2h0c3FicmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYm90cmlnaHRzdW1tYXRpb24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJvdHJpZ2h0c3VtbWF0aW9uOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Ym90dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdHZl cnRzdW1tYXRpb25jb25uZWN0b3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdHZlcnRzdW1t YXRpb25jb25uZWN0b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFjZWxlZnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWNlbGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWNlcmlnaHQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWNlcmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFja2V0bGVmdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhY2tldGxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFj a2V0cmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWNrZXRyaWdodDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfYmxhbmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfYmxh bms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF8xIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdF8xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfMTAiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90XzEwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RfMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfMjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90XzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90XzM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF80IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdF80OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfNSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90XzY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdF83IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdF83OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RfODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzkiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90Xzk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTIzNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0 NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTYiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMjM0NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTIzNDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1Njc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMjM0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjM0NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU2ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMjM0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDU3 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1Nzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTIzNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ2IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTIzNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTIzNDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ2NzgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzEyMzQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ2 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEy MzQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ3ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEyMzQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEyMzU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIz NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTY3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTIzNTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEyMzU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1Njc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzEyMzU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1 NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU3OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEyMzU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEyMzU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM1OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEyMzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM2 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzY3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTIzNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIz Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNjc4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTIzNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTIzNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM3 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTIzODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTI0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzEyNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMjQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1Njc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzEyNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0 NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTY4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTI0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyNDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTI0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTI0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ2NzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xMjQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NjgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ2ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xMjQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTI0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ3OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEyNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEyNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjU2IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18xMjU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNTY3Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzEyNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjU2 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNTY4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEyNTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMjU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTc4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTI1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNTg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTI2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNjciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjY3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEyNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI2 Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI2OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI3OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEyNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyOCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEzNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzEzNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MzQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU2OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEzNDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1Njc4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTY3ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMzQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMzQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMzQ1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1 Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMzQ1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MzQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xMzQ2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEzNDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDY3OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMzQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEz NDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18xMzQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEz NDc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0Nzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEzNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzEzNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU2OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTM1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1Njc4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM1Njc4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEzNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTM1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1NyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTM1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzU3ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTM1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTM2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNjc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMzY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzY4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM2ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM3OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTM4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzE0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMTQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0 NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU2OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzE0NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTQ1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1Njc4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzE0NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ1 Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1NyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1 NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU3ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xNDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMTQ1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDYiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTQ2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0Njc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18xNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDY4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ2ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzE0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzE1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTU2IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1NjciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTY3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzE1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTU2OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU3OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzE1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xNTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE2OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzE2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzE2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNjc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNjg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNzgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzIzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18yMzQ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0 NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1NiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIz NDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU2NzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMjM0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1Njgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1Njg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjM0NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18yMzQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1NzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjM0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ2IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMjM0NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ2 NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDY3OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzIzNDY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzIzNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ2OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDY4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzIzNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDc4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMjM0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0 OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjM1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMjM1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzIzNTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1Njc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMjM1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTY4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1Njg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMjM1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzIzNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1NzgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18yMzU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yMzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM2NyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMjM2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzY3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzY4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMjM2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMjM3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIz Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMjM4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMjQ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18yNDU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTY3 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1Njc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMjQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTY4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0NTc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18yNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDU4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1ODsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18yNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18yNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ2NyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MjQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDY3ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMjQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0Nzg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMjQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMjU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU2OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18yNTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1Njc4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMjU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI1 Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjU3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMjU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1Nzgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTc4OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzI1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzI1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzI2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI2NyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI2NzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MjY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNjgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18y Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18yODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zIildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18zNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzM0NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNDU2IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18zNDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NTY3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTY3OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzM0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18z NDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NTY4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18zNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTc4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMzQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NTg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ2IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMzQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NjciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDY3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzM0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MzQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ2OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MzQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ3OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzM0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18zNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18zNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzM1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzM1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNTY3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18zNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1Njc4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18zNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1NyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18zNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18zNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18zNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNjc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzM2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzY4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzY4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzM3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMzc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c180NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NTYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c180NTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf NDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1Njc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfNDU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c180NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NTY4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c180NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NTc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDU4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDY7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfNDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ2NzgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180Njc4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ2ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ3OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c180OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c181OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU2IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTY3OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c181Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU2OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c181NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU3OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c182OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNjc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfNjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzY4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c183ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c184IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyZXZlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jyb2tlbmJhciIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJva2VuYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NfaCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgY19oOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2Fib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBjYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jYWN1dGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGNhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NhcmVvZiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgY2FyZW9mOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2FyZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGNhcmV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBj Y2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Y2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgY2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jZWRpbGxhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2VudCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2NoZWNrZXJib2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgY2hlY2tlcmJvYXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2hlY2ttYXJrIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBjaGVja21hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jaXJjbGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGNpcmNsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NsdWIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGNsdWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jb2xvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgY29sb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jb21tYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgY29tbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jb250YWluc2FzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBjb250YWluc2FzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY29weXJpZ2h0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBjb3B5cmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jciIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgY3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jcm9zc2luZ2xpbmVzIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBjcm9zc2luZ2xpbmVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY3ViZXJvb3QiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGN1YmVyb290OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY3VycmVuY3kiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGN1cnJlbmN5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY3Vyc29yIild CisrCQlwdWJsaWMgY29uc3QgdWludCBjdXJzb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kIildCisrCQlw dWJsaWMgY29uc3QgdWludCBkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGFib3ZlZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCBkYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kYWdnZXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGRhZ2dlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RjYXJvbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9BIildCisrCQlwdWJs aWMgY29uc3QgdWludCBkZWFkX0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX0UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGRlYWRfRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfSSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZGVhZF9JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9PIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBkZWFkX087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX1UiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRlYWRfVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZGVhZF9hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hYm92ZWNvbW1hIildCisrCQlw dWJsaWMgY29uc3QgdWludCBkZWFkX2Fib3ZlY29tbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Fi b3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Fib3ZlZG90OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZGVhZF9hYm92ZXJldmVyc2VkY29tbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRl YWRfYWJvdmVyZXZlcnNlZGNvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hYm92ZXJpbmciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYWJvdmVyaW5nOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVh ZF9hYm92ZXZlcnRpY2FsbGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9hYm92ZXZl cnRpY2FsbGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWN1dGUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93YnJldmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3dicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRf YmVsb3djaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93Y2lyY3Vt ZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3djb21tYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGVhZF9iZWxvd2NvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd2RpYWVyZXNp cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd2RpYWVyZXNpczsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlYWRfYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3dk b3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93bWFjcm9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkZWFkX2JlbG93bWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9iZWxvd3JpbmciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3dyaW5nOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVh ZF9iZWxvd3RpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93dGlsZGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93dmVydGljYWxsaW5lIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkZWFkX2JlbG93dmVydGljYWxsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9icmV2ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9icmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRf Y2FwaXRhbF9zY2h3YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9jYXBpdGFsX3NjaHdh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9jYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9jYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGVhZF9jZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9jaXJjdW1mbGV4IildCisr CQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFk X2N1cnJlbmN5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2N1cnJlbmN5OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZGVhZF9kYXNpYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9kYXNpYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2RlYWRfZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBk ZWFkX2RpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZG91YmxlYWN1dGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGRlYWRfZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2Rv dWJsZWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2RvdWJsZWdyYXZlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZGVhZF9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kZWFkX2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2dyYXZl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9ncmVlayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9ncmVlazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZGVhZF9ob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9ob3JuIildCisrCQlwdWJsaWMgY29u c3QgdWludCBkZWFkX2hvcm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2kiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRlYWRfaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfaW52ZXJ0ZWRicmV2ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9pbnZlcnRlZGJyZXZlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9pb3RhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2lvdGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kZWFkX2xvbmdzb2xpZHVzb3ZlcmxheSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVh ZF9sb25nc29saWR1c292ZXJsYXk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2xvd2xpbmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRlYWRfbG93bGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfbWFj cm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX21hY3JvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2RlYWRfbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9vOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9vZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfb2dvbmVrOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZGVhZF9wZXJpc3BvbWVuaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9w ZXJpc3BvbWVuaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfcHNpbGkiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGRlYWRfcHNpbGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3NlbWl2b2ljZWRfc291bmQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfc2VtaXZvaWNlZF9zb3VuZDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlYWRfc21hbGxfc2Nod2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfc21h bGxfc2Nod2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3N0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGVhZF9zdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3RpbGRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBkZWFkX3RpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF91IildCisrCQlw dWJsaWMgY29uc3QgdWludCBkZWFkX3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3ZvaWNlZF9zb3Vu ZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF92b2ljZWRfc291bmQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kZWNpbWFscG9pbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlY2ltYWxwb2ludDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2RlZ3JlZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVncmVlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkaWFlcmVz aXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9kaWFtb25kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkaWFt b25kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGlnaXRzcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGlnaXRzcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RpbnRlZ3JhbCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGludGVncmFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGl2aXNpb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRpdmlzaW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG9sbGFyIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBkb2xsYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3ViYmFzZWxpbmVkb3QiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRvdWJiYXNlbGluZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RvdWJs ZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3VibGVhY3V0ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2RvdWJsZWRhZ2dlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG91YmxlZGFnZ2VyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZG91YmxlbG93cXVvdGVtYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBkb3VibGVsb3dxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3duYXJyb3ciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGRvd25hcnJvdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rvd25jYXJldCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZG93bmNhcmV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG93bnNob2Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvd25zaG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG93bnN0 aWxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3duc3RpbGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9k b3dudGFjayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG93bnRhY2s7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9kc3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkc3Ryb2tlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VhYm92ZWRv dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWFj dXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lYmVs b3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGViZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2VjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNhcm9uOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVjaXJjdW1mbGV4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZWNpcmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNpcmN1 bWZsZXhhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4YmVsb3dkb3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGVjaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2ly Y3VtZmxleGdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlY2lyY3VtZmxleGdyYXZlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZWNpcmN1bWZsZXhob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBl Y2lyY3VtZmxleGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2lyY3VtZmxleHRpbGRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBlY2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWRpYWVy ZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2VncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWdyYXZlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVob29rOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWln aHRzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVpZ2h0c3Vic2NyaXB0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZWlnaHRzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWlnaHRz dXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VsZW1lbnRvZiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZWxlbWVudG9mOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWxsaXBzaXMiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGVsbGlwc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW0zc3BhY2UiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGVtM3NwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW00c3BhY2UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGVtNHNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1hY3JvbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VtZGFzaCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZW1kYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1maWxsZWRjaXJjbGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGVtZmlsbGVkY2lyY2xlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1m aWxsZWRyZWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbWZpbGxlZHJlY3Q7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9lbW9wZW5jaXJjbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtb3BlbmNpcmNs ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2Vtb3BlbnJlY3RhbmdsZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZW1vcGVucmVjdGFuZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1wdHlzZXQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGVtcHR5c2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1zcGFjZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZW1zcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VuZGFzaCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZW5kYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5maWxsZWRjaXJjYnVsbGV0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbmZpbGxlZGNpcmNidWxsZXQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9lbmZpbGxlZHNxYnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbmZpbGxlZHNx YnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbmc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9lbm9wZW5jaXJjYnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBlbm9wZW5jaXJjYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5vcGVuc3F1YXJlYnVsbGV0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBlbm9wZW5zcXVhcmVidWxsZXQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9lbnNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbnNwYWNlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW9nb25lazsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2VxdWFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlcXVhbDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2V0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZXRoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZXRpbGRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBldGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9leGNsYW0i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGV4Y2xhbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2V4Y2xhbWRv d24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGV4Y2xhbWRvd247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9l emgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGV6aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2YiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mYWJvdmVkb3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGZhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZlbWFsZXN5bWJvbCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmVtYWxlc3ltYm9sOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmlnZGFzaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZmlnZGFzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpbGxlZGxlZnR0 cmlidWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpbGxlZGxlZnR0cmlidWxsZXQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9maWxsZWRyZWN0YnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBm aWxsZWRyZWN0YnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmlsbGVkcmlnaHR0cmlidWxsZXQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGZpbGxlZHJpZ2h0dHJpYnVsbGV0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZmlsbGVkdHJpYnVsbGV0ZG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmlsbGVkdHJp YnVsbGV0ZG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpbGxlZHRyaWJ1bGxldHVwIildCisrCQlwdWJs aWMgY29uc3QgdWludCBmaWxsZWR0cmlidWxsZXR1cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpdmVlaWdo dGhzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmaXZlZWlnaHRoczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2ZpdmVzaXh0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpdmVzaXh0aHM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9maXZlc3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmaXZlc3Vic2Ny aXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZml2ZXN1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBmaXZlc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mb3VyZmlmdGhzIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBmb3VyZmlmdGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZm91cnN1YnNjcmlwdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZm91cnN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZvdXJz dXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZm91cnN1cGVyaW9yOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZm91cnRocm9vdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZm91cnRocm9vdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2Z1bmN0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmdW5jdGlvbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9nYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdhYm92ZWRvdDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2dicmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ2JyZXZlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZ2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBnY2Fyb247CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9nY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ2NlZGlsbGE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9nY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ2NpcmN1bWZs ZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ3JhdmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9ncmVhdGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBncmVhdGVy OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZ3JlYXRlcnRoYW5lcXVhbCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZ3JlYXRlcnRoYW5lcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2d1aWxsZW1vdGxlZnQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGd1aWxsZW1vdGxlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ndWlsbGVt b3RyaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ3VpbGxlbW90cmlnaHQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9oIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGFp cnNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoYWlyc3BhY2U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9oY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGNpcmN1bWZsZXg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9oZWFydCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVhcnQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9oZWJyZXdfYWxlcGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19hbGVw aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19heWluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBo ZWJyZXdfYXlpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19iZXQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGhlYnJld19iZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfYmV0aCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaGVicmV3X2JldGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfY2hldCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2NoZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJy ZXdfZGFsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19kYWxldDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2hlYnJld19kYWxldGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19kYWxl dGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZG91YmxlbG93bGluZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgaGVicmV3X2RvdWJsZWxvd2xpbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmlu YWxrYXBoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZmluYWxrYXBoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfaGVicmV3X2ZpbmFsbWVtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdf ZmluYWxtZW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWxudW4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGhlYnJld19maW5hbG51bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19maW5hbHBl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZmluYWxwZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2hlYnJld19maW5hbHphZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19maW5hbHph ZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWx6YWRpIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBoZWJyZXdfZmluYWx6YWRpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2dpbWVsIildCisr CQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZ2ltZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdf Z2ltbWVsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZ2ltbWVsOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaGVicmV3X2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfaGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9oZWJyZXdfaGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfaGV0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2thcGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhl YnJld19rYXBoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2t1ZiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgaGVicmV3X2t1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19sYW1lZCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgaGVicmV3X2xhbWVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X21lbSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X21lbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJl d19udW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19udW47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9oZWJyZXdfcGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19wZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2hlYnJld19xb3BoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfcW9waDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2hlYnJld19yZXNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJy ZXdfcmVzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19zYW1lY2giKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGhlYnJld19zYW1lY2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfc2FtZWtoIildCisr CQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfc2FtZWtoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3 X3NoaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19zaGluOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfaGVicmV3X3RhZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3RhZjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2hlYnJld190YXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld190YXc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfdGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJy ZXdfdGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3RldGgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGhlYnJld190ZXRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3dhdyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgaGVicmV3X3dhdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld195b2QiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGhlYnJld195b2Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfemFk ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3phZGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o ZWJyZXdfemFkaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3phZGk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9oZWJyZXdfemFpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3phaW47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfemF5aW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhl YnJld196YXlpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hleGFncmFtIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBoZXhhZ3JhbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hvcml6Y29ubmVjdG9yIildCisrCQlwdWJs aWMgY29uc3QgdWludCBob3JpemNvbm5lY3RvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hvcml6bGluZXNj YW4xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBob3JpemxpbmVzY2FuMTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2hvcml6bGluZXNjYW4zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBob3JpemxpbmVzY2Fu MzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2hvcml6bGluZXNjYW41IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBob3JpemxpbmVzY2FuNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hvcml6bGluZXNjYW43IildCisrCQlw dWJsaWMgY29uc3QgdWludCBob3JpemxpbmVzY2FuNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hvcml6bGlu ZXNjYW45IildCisrCQlwdWJsaWMgY29uc3QgdWludCBob3JpemxpbmVzY2FuOTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2hzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhzdHJva2U7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9odCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaHQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o eXBoZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGh5cGhlbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ki KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pVG91Y2giKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGlUb3VjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lhY3V0ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWJlbG93ZG90IildCisr CQlwdWJsaWMgY29uc3QgdWludCBpYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pYnJldmUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGlicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ljaXJjdW1mbGV4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBpY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lk ZW50aWNhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWRlbnRpY2FsOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfaWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWRpYWVyZXNpczsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2lkb3RsZXNzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpZG90bGVzczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2lmb25seWlmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpZm9ubHlpZjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2lncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWdyYXZlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlob29rOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfaW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaW1hY3JvbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2ltcGxpZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGltcGxpZXM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9pbmNsdWRlZGluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpbmNsdWRl ZGluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaW5jbHVkZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlu Y2x1ZGVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaW5maW5pdHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGluZmluaXR5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaW50ZWdyYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGludGVncmFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaW50ZXJzZWN0aW9uIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBpbnRlcnNlY3Rpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pb2dvbmVrIildCisrCQlw dWJsaWMgY29uc3QgdWludCBpb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaXRpbGRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBpdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9qIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfamNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGpjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfam90IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBqb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9BIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5h X0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0NISSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2Fu YV9DSEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGth bmFfRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfRlUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGth bmFfRlU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0hBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBr YW5hX0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9IRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg a2FuYV9IRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfSEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfSEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0hPIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBrYW5hX0hPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9IVSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9IVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfSSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9LQSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQga2FuYV9LQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfS0UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGthbmFfS0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0tJIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBrYW5hX0tJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9LTyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9LTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfS1UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGthbmFfS1U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX01BIildCisrCQlwdWJsaWMgY29u c3QgdWludCBrYW5hX01BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9NRSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV9NRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTUkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfTUk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX01PIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBrYW5hX01POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9NVSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQga2FuYV9NVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQga2FuYV9OOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9OQSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQga2FuYV9OQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTkUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGthbmFfTkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX05JIildCisrCQlwdWJs aWMgY29uc3QgdWludCBrYW5hX05JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9OTyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQga2FuYV9OTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTlUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGthbmFfTlU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX08iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGthbmFfTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfUkEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGthbmFfUkE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1JFIildCisrCQlw dWJsaWMgY29uc3QgdWludCBrYW5hX1JFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9SSSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQga2FuYV9SSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfUk8iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGthbmFfUk87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1JVIildCisr CQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1JVOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9TQSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9TQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfU0UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfU0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1NISSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9TSEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1NP IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1NPOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9T VSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9TVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf VEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X1RFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1RFOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV9USSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9USTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfVE8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfVE87CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r YW5hX1RTVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9UU1U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9rYW5hX1RVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1RVOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfa2FuYV9VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9rYW5hX1dBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1dBOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfa2FuYV9XTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9XTzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2thbmFfWUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfWUE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9rYW5hX1lPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1lPOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfa2FuYV9ZVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9ZVTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2thbmFfYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9hOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfa2FuYV9jbG9zaW5nYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9j bG9zaW5nYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfY29tbWEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfY29tbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2Nvbmp1bmN0aXZlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2Nvbmp1bmN0aXZlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf a2FuYV9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2U7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r YW5hX2Z1bGxzdG9wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2Z1bGxzdG9wOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfa2FuYV9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2k7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9rYW5hX21pZGRsZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9t aWRkbGVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGthbmFfbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfb3BlbmluZ2JyYWNrZXQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGthbmFfb3BlbmluZ2JyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX3N3 aXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9zd2l0Y2g7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9rYW5hX3RzdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV90c3U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9rYW5hX3R1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3R1OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfa2FuYV91IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9rYW5hX3lhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3lhOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfa2FuYV95byIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV95bzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2thbmFfeXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfeXU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9rYXBwYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FwcGE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9rY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2NlZGlsbGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9rcmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGtyYTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sYWN1dGUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGxhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xhdGluY3Jvc3Mi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxhdGluY3Jvc3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sYmVs b3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2xjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGNhcm9uOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf bGNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxjZWRpbGxhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfbGVmdGFuZ2xlYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdGFuZ2xlYnJh Y2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRhcnJvdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg bGVmdGFycm93OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdGNhcmV0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBsZWZ0Y2FyZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0ZG91YmxlcXVvdGVtYXJrIildCisr CQlwdWJsaWMgY29uc3QgdWludCBsZWZ0ZG91YmxlcXVvdGVtYXJrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf bGVmdG1pZGRsZWN1cmx5YnJhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxlZnRtaWRkbGVj dXJseWJyYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdG9wZW50cmlhbmdsZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgbGVmdG9wZW50cmlhbmdsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRwb2ludGVy IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0cG9pbnRlcjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xl ZnRyYWRpY2FsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0cmFkaWNhbDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2xlZnRzaG9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0c2hvZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2xlZnRzaW5nbGVxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxl ZnRzaW5nbGVxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0dCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgbGVmdHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0dGFjayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgbGVmdHRhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZXNzIildCisrCQlwdWJsaWMgY29u c3QgdWludCBsZXNzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVzc3RoYW5lcXVhbCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgbGVzc3RoYW5lcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xmIildCisrCQlwdWJs aWMgY29uc3QgdWludCBsZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xvZ2ljYWxhbmQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGxvZ2ljYWxhbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sb2dpY2Fsb3IiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGxvZ2ljYWxvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xvd2xlZnRjb3Ju ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxvd2xlZnRjb3JuZXI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9sb3dyaWdodGNvcm5lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbG93cmlnaHRjb3JuZXI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9sc3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsc3Ryb2tl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX21hYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWFib3ZlZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtYWNyb247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9tYWxlc3ltYm9sIildCisrCQlwdWJsaWMgY29uc3QgdWludCBtYWxlc3ltYm9s OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfbWFsdGVzZWNyb3NzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBt YWx0ZXNlY3Jvc3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tYXJrZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG1hcmtlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21hc2N1bGluZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbWFzY3VsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWludXMiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG1pbnVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWludXRlcyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbWludXRlczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX211IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBtdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX211bHRpcGx5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBt dWx0aXBseTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX211c2ljYWxmbGF0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBtdXNpY2FsZmxhdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX211c2ljYWxzaGFycCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgbXVzaWNhbHNoYXJwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25hYmxhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBuYWJsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmNhcm9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBuY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgbmNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uaW5lc3Vic2NyaXB0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBuaW5lc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmluZXN1cGVyaW9y IildCisrCQlwdWJsaWMgY29uc3QgdWludCBuaW5lc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9u bCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub2JyZWFrc3Bh Y2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5vYnJlYWtzcGFjZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X25vdGFwcHJveGVxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBub3RhcHByb3hlcTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX25vdGVsZW1lbnRvZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbm90ZWxlbWVu dG9mOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfbm90ZXF1YWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5v dGVxdWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbm90aWRlbnRpY2FsIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBub3RpZGVudGljYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3RzaWduIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBub3RzaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbnRpbGRlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9udW1iZXJzaWduIildCisrCQlwdWJs aWMgY29uc3QgdWludCBudW1iZXJzaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbnVtZXJvc2lnbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgbnVtZXJvc2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX28iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vYWN1dGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG9hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29iYXJyZWQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG9iYXJyZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vYmVsb3dkb3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG9iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29jYXJvbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgb2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2NpcmN1bWZsZXgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IG9jaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2NpcmN1 bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1bWZsZXhhY3V0ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX29jaXJjdW1mbGV4YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IG9jaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3VtZmxleGdyYXZlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3VtZmxleGdyYXZlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf b2NpcmN1bWZsZXhob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3VtZmxleGhvb2s7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3VtZmxleHRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBvY2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2RpYWVyZXNpcyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgb2RpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29kb3VibGVhY3V0ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2RvdWJsZWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2dvbmVrIildCisr CQlwdWJsaWMgY29uc3QgdWludCBvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vZ3JhdmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG9ncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob29rIildCisrCQlw dWJsaWMgY29uc3QgdWludCBvaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3JuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBvaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3JuYWN1dGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG9ob3JuYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vaG9ybmJlbG93ZG90 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9ybmJlbG93ZG90OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf b2hvcm5ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvcm5ncmF2ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX29ob3JuaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvcm5ob29rOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfb2hvcm50aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvcm50aWxk ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX29tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9tYWNy b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVlaWdodGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9u ZWVpZ2h0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29uZWZpZnRoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBvbmVmaWZ0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29uZWhhbGYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG9uZWhhbGY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVxdWFydGVyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBvbmVxdWFydGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25lc2l4dGgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG9uZXNpeHRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25lc3Vic2NyaXB0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBvbmVzdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVzdXBl cmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9vbmV0aGlyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25ldGhpcmQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9vb2JsaXF1ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb29ibGlxdWU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9vcGVucmVjdGJ1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3BlbnJlY3Ri dWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vcGVuc3RhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg b3BlbnN0YXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vcGVudHJpYnVsbGV0ZG93biIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgb3BlbnRyaWJ1bGxldGRvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vcGVudHJpYnVs bGV0dXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9wZW50cmlidWxsZXR1cDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX29yZGZlbWluaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvcmRmZW1pbmluZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX29zbGFzaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3NsYXNoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfb3RpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvdGlsZGU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9vdmVyYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvdmVyYmFyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfb3ZlcmxpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG92ZXJsaW5l OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3BhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFib3ZlZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfcGFyYWdyYXBoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBwYXJhZ3JhcGg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9wYXJlbmxlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBhcmVu bGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3BhcmVucmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHBhcmVucmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wYXJ0ZGlmZmVyZW50aWFsIildCisrCQlwdWJs aWMgY29uc3QgdWludCBwYXJ0ZGlmZmVyZW50aWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGFydGlhbGRl cml2YXRpdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBhcnRpYWxkZXJpdmF0aXZlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfcGVyY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGVyY2VudDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3BlcmlvZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGVyaW9kOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfcGVyaW9kY2VudGVyZWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBlcmlv ZGNlbnRlcmVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGVybWlsbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHBlcm1pbGxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGhvbm9ncmFwaGNvcHlyaWdodCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgcGhvbm9ncmFwaGNvcHlyaWdodDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Bs dXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBsdXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wbHVzbWlu dXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBsdXNtaW51czsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3By ZXNjcmlwdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcHJlc2NyaXB0aW9uOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfcHJvbG9uZ2Vkc291bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHByb2xvbmdl ZHNvdW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcHVuY3RzcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgcHVuY3RzcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9xdWFkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBxdWFkOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfcXVlc3Rpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHF1ZXN0aW9u OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfcXVlc3Rpb25kb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBx dWVzdGlvbmRvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9xdW90ZWRibCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgcXVvdGVkYmw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9xdW90ZWxlZnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHF1b3RlbGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1b3RlcmlnaHQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHF1b3RlcmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yIildCisrCQlwdWJs aWMgY29uc3QgdWludCByOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmFjdXRlIildCisrCQlwdWJsaWMgY29u c3QgdWludCByYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yYWRpY2FsIildCisrCQlwdWJsaWMgY29u c3QgdWludCByYWRpY2FsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmNhcm9uIildCisrCQlwdWJsaWMgY29u c3QgdWludCByY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yY2VkaWxsYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgcmNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yZWdpc3RlcmVkIildCisrCQlwdWJs aWMgY29uc3QgdWludCByZWdpc3RlcmVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRhbmdsZWJyYWNr ZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0YW5nbGVicmFja2V0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfcmlnaHRhcnJvdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRhcnJvdzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3JpZ2h0Y2FyZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0Y2Fy ZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodGRvdWJsZXF1b3RlbWFyayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgcmlnaHRkb3VibGVxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodG1pZGRs ZWN1cmx5YnJhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0bWlkZGxlY3VybHlicmFj ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0bWlkZGxlc3VtbWF0aW9uIildCisrCQlwdWJsaWMgY29u c3QgdWludCByaWdodG1pZGRsZXN1bW1hdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0b3BlbnRy aWFuZ2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodG9wZW50cmlhbmdsZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3JpZ2h0cG9pbnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRwb2lu dGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRzaG9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBy aWdodHNob2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodHNpbmdsZXF1b3RlbWFyayIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgcmlnaHRzaW5nbGVxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdo dHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0 dGFjayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHR0YWNrOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NhYm92ZWRvdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2Fib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2FjdXRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zY2Fyb24i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NjZWRpbGxh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NjaHdh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzY2h3YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NjaXJjdW1m bGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3NjcmlwdF9zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNjcmlwdF9zd2l0Y2g7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9zZWNvbmRzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzZWNvbmRzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfc2VjdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2VjdGlvbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3NlbWljb2xvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2VtaWNv bG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfc2VtaXZvaWNlZHNvdW5kIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBzZW1pdm9pY2Vkc291bmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZXZlbmVpZ2h0aHMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHNldmVuZWlnaHRoczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NldmVuc3Vi c2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzZXZlbnN1YnNjcmlwdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3NldmVuc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNldmVuc3VwZXJp b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9zaWduYXR1cmVtYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBzaWduYXR1cmVtYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2lnbmlmYmxhbmsiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHNpZ25pZmJsYW5rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2ltaWxhcmVxdWFsIild CisrCQlwdWJsaWMgY29uc3QgdWludCBzaW1pbGFyZXF1YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zaW5n bGVsb3dxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNpbmdsZWxvd3F1b3RlbWFy azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3NpeHN1YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg c2l4c3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2l4c3VwZXJpb3IiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHNpeHN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2xhc2giKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHNsYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc29saWRkaWFtb25kIildCisrCQlw dWJsaWMgY29uc3QgdWludCBzb2xpZGRpYW1vbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zcGFjZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zcXVhcmVyb290Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBzcXVhcmVyb290OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc3NoYXJw IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzc2hhcnA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zdGVybGlu ZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc3Rlcmxpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zdHJp Y3RlcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc3RyaWN0ZXE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90 IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGFib3ZlZG90Iild CisrCQlwdWJsaWMgY29uc3QgdWludCB0YWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90Y2Fyb24i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RjZWRpbGxh IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0Y2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RlbGVw aG9uZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGVsZXBob25lOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf dGVsZXBob25lcmVjb3JkZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRlbGVwaG9uZXJlY29y ZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhlcmVmb3JlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0 aGVyZWZvcmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aGluc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHRoaW5zcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Rob3JuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCB0aG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RocmVlZWlnaHRocyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgdGhyZWVlaWdodGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhyZWVmaWZ0aHMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHRocmVlZmlmdGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhyZWVxdWFy dGVycyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhyZWVxdWFydGVyczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3RocmVlc3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0aHJlZXN1YnNjcmlw dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3RocmVlc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHRocmVlc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aW50ZWdyYWwiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHRpbnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcGludGVncmFsIildCisrCQlw dWJsaWMgY29uc3QgdWludCB0b3BpbnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcGxlZnRwYXJl bnMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcGxlZnRwYXJlbnM7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV90b3BsZWZ0cmFkaWNhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wbGVmdHJhZGljYWw7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV90b3BsZWZ0c3FicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCB0b3BsZWZ0c3FicmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wbGVmdHN1bW1hdGlvbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdG9wbGVmdHN1bW1hdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Rv cHJpZ2h0cGFyZW5zIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3ByaWdodHBhcmVuczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3RvcHJpZ2h0c3FicmFja2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0 b3ByaWdodHNxYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcHJpZ2h0c3VtbWF0aW9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCB0b3ByaWdodHN1bW1hdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Rv cHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3B2ZXJ0 c3VtbWF0aW9uY29ubmVjdG9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3B2ZXJ0c3VtbWF0 aW9uY29ubmVjdG9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHJhZGVtYXJrIildCisrCQlwdWJsaWMgY29u c3QgdWludCB0cmFkZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90cmFkZW1hcmtpbmNpcmNsZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdHJhZGVtYXJraW5jaXJjbGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90 c2xhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRzbGFzaDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3R3 b2ZpZnRocyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHdvZmlmdGhzOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdHdvc3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0d29zdWJzY3JpcHQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV90d29zdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHdvc3Vw ZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90d290aGlyZHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHR3b3RoaXJkczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV91YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVhY3V0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3ViZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWJlbG93 ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfdWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1YnJl dmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV91Y2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91ZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29u c3QgdWludCB1ZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWRvdWJsZWFjdXRlIildCisrCQlw dWJsaWMgY29uc3QgdWludCB1ZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91Z3JhdmUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob29rIildCisr CQlwdWJsaWMgY29uc3QgdWludCB1aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3JuIildCisrCQlw dWJsaWMgY29uc3QgdWludCB1aG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3JuYWN1dGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHVob3JuYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91aG9ybmJlbG93 ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9ybmJlbG93ZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdWhvcm5ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvcm5ncmF2ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3Vob3JuaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvcm5ob29rOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfdWhvcm50aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvcm50 aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3VtYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVt YWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91bmRlcmJhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dW5kZXJiYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91bmRlcnNjb3JlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCB1bmRlcnNjb3JlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdW5pb24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHVuaW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdW9nb25layIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgdW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VwYXJyb3ciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHVwYXJyb3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cGNhcmV0IildCisrCQlwdWJsaWMgY29u c3QgdWludCB1cGNhcmV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXBsZWZ0Y29ybmVyIildCisrCQlwdWJs aWMgY29uc3QgdWludCB1cGxlZnRjb3JuZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cHJpZ2h0Y29ybmVy IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1cHJpZ2h0Y29ybmVyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf dXBzaG9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1cHNob2U7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91 cHN0aWxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1cHN0aWxlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf dXB0YWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1cHRhY2s7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91 cmluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXJpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91dGls ZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHV0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3YiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV92YXJpYXRpb24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHZhcmlhdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ZlcnRiYXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHZlcnRiYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV92ZXJ0Y29ubmVj dG9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCB2ZXJ0Y29ubmVjdG9yOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdm9pY2Vkc291bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHZvaWNlZHNvdW5kOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHZ0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3dhY3V0ZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgd2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfd2NpcmN1bWZs ZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHdjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf d2RpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgd2RpYWVyZXNpczsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3dncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgd2dyYXZlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfeCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3hhYm92 ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeGFib3ZlZG90OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf eSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3lhY3V0ZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgeWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeWJlbG93ZG90Iild CisrCQlwdWJsaWMgY29uc3QgdWludCB5YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV95Y2lyY3Vt ZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV95ZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB5ZGlhZXJlc2lzOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfeWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCB5ZW47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV95Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHlncmF2ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3lob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCB5aG9vazsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3l0 aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeXRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfeiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgejsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3phYm92ZWRvdCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgemFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfemFjdXRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCB6YWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV96Y2Fyb24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHpjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3plcm9zdWJzY3Jp cHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHplcm9zdWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV96ZXJvc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHplcm9zdXBlcmlvcjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3pzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHpzdHJva2U7Cisr CX0KKysJbmFtZXNwYWNlIFRocmVhZHMgeworKwkJbmFtZXNwYWNlIElkbGUgeworKwkJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gImNsdXR0 ZXJfdGhyZWFkc19hZGRfaWRsZSIpXQorKwkJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJ CQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkIChHTGliLlNvdXJjZUZ1bmMgZnVuYyk7CisrCQkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiY2x1 dHRlcl90aHJlYWRzX2FkZF9pZGxlX2Z1bGwiKV0KKysJCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40 IildCisrCQkJcHVibGljIHN0YXRpYyB1aW50IGFkZF9mdWxsIChpbnQgcHJpb3JpdHksIG93bmVk IEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCX0KKysJCW5hbWVzcGFjZSBUaW1lb3V0IHsKKysJ CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJjbHV0dGVyX3RocmVhZHNfYWRkX3RpbWVvdXQiKV0KKysJCQlbVmVyc2lvbiAoc2luY2UgPSAi MC40IildCisrCQkJcHVibGljIHN0YXRpYyB1aW50IGFkZCAodWludCBpbnRlcnZhbCwgR0xpYi5T b3VyY2VGdW5jIGZ1bmMpOworKwkJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gImNsdXR0ZXJfdGhyZWFkc19hZGRfdGltZW91dF9mdWxsIild CisrCQkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1YmxpYyBzdGF0aWMgdWludCBh ZGRfZnVsbCAoaW50IHByaW9yaXR5LCB1aW50IGludGVydmFsLCBvd25lZCBHTGliLlNvdXJjZUZ1 bmMgZnVuYyk7CisrCQl9CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdWludCBhZGRfcmVwYWludF9mdW5jIChvd25lZCBHTGliLlNvdXJjZUZ1bmMgZnVuYyk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkX3JlcGFp bnRfZnVuY19mdWxsIChDbHV0dGVyLlJlcGFpbnRGbGFncyBmbGFncywgb3duZWQgR0xpYi5Tb3Vy Y2VGdW5jIGZ1bmMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGlj IHZvaWQgcmVtb3ZlX3JlcGFpbnRfZnVuYyAodWludCBoYW5kbGVfaWQpOworKwl9CisrCW5hbWVz cGFjZSBWYWx1ZSB7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RhdGlj IENsdXR0ZXIuUGFpbnROb2RlIGR1cF9wYWludF9ub2RlIChHTGliLlZhbHVlIHZhbHVlKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIu Q29sb3I/IGdldF9jb2xvciAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5QYWludE5vZGUgZ2V0X3Bh aW50X25vZGUgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGhfcG9z ID0gMS4xLCBhcnJheV9sZW5ndGhfdHlwZSA9ICJnc2l6ZSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyBzdGF0aWMgdW5vd25lZCBmbG9hdFtdIGdldF9zaGFkZXJfZmxvYXQgKEdMaWIuVmFsdWUg dmFsdWUpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMS4xLCBhcnJheV9sZW5ndGhf dHlwZSA9ICJnc2l6ZSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBp bnRbXSBnZXRfc2hhZGVyX2ludCAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0NvZGUgKGFycmF5 X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0gImdzaXplIiwgY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIGZsb2F0W10gZ2V0X3NoYWRlcl9tYXRyaXgg KEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMg c3RhdGljIHVub3duZWQgQ2x1dHRlci5Vbml0cz8gZ2V0X3VuaXRzIChHTGliLlZhbHVlIHZhbHVl KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHNldF9j b2xvciAoR0xpYi5WYWx1ZSB2YWx1ZSwgQ2x1dHRlci5Db2xvciBjb2xvcik7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3BhaW50X25vZGUgKEdM aWIuVmFsdWUgdmFsdWUsIENsdXR0ZXIuUGFpbnROb2RlPyBub2RlKTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHNldF9zaGFkZXJfZmxvYXQgKEdMaWIu VmFsdWUgdmFsdWUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gInNpemUiLCBhcnJheV9s ZW5ndGhfcG9zID0gMS41KV0gZmxvYXRbXSBmbG9hdHMpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44 IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3NoYWRlcl9pbnQgKEdMaWIuVmFsdWUgdmFs dWUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gInNpemUiLCBhcnJheV9sZW5ndGhfcG9z ID0gMS41KV0gaW50W10gaW50cyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyBzdGF0aWMgdm9pZCBzZXRfc2hhZGVyX21hdHJpeCAoR0xpYi5WYWx1ZSB2YWx1ZSwgW0NDb2Rl IChhcnJheV9sZW5ndGhfY25hbWUgPSAic2l6ZSIsIGFycmF5X2xlbmd0aF9wb3MgPSAxLjUpXSBm bG9hdFtdIG1hdHJpeCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdm9pZCBzZXRfdW5pdHMgKEdMaWIuVmFsdWUgdmFsdWUsIENsdXR0ZXIuVW5pdHMgdW5pdHMp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHRha2Vf cGFpbnRfbm9kZSAoR0xpYi5WYWx1ZSB2YWx1ZSwgQ2x1dHRlci5QYWludE5vZGU/IG5vZGUpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgQWN0aW9uIDogQ2x1dHRlci5BY3Rv ck1ldGEgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIEFjdGlvbiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0b3JfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGNsYXNzIEFjdG9yIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkLCBBdGsuSW1w bGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIu U2NyaXB0YWJsZSB7CisrCQlwdWJsaWMgdWludDMyIGZsYWdzOworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBBY3RvciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyB2b2lkIGFkZF9hY3Rpb24gKENsdXR0ZXIuQWN0aW9uIGFjdGlvbik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfYWN0aW9uX3dpdGhfbmFtZSAo c3RyaW5nIG5hbWUsIENsdXR0ZXIuQWN0aW9uIGFjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgYWRkX2NoaWxkIChDbHV0dGVyLkFjdG9yIGNoaWxk KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9jb25z dHJhaW50IChDbHV0dGVyLkNvbnN0cmFpbnQgY29uc3RyYWludCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfY29uc3RyYWludF93aXRoX25hbWUgKHN0 cmluZyBuYW1lLCBDbHV0dGVyLkNvbnN0cmFpbnQgY29uc3RyYWludCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfZWZmZWN0IChDbHV0dGVyLkVmZmVj dCBlZmZlY3QpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQg YWRkX2VmZmVjdF93aXRoX25hbWUgKHN0cmluZyBuYW1lLCBDbHV0dGVyLkVmZmVjdCBlZmZlY3Qp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF90cmFu c2l0aW9uIChzdHJpbmcgbmFtZSwgQ2x1dHRlci5UcmFuc2l0aW9uIHRyYW5zaXRpb24pOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBhbGxvY2F0 ZSAoQ2x1dHRlci5BY3RvckJveCBib3gsIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGFsbG9jYXRlX2Fs aWduX2ZpbGwgKENsdXR0ZXIuQWN0b3JCb3ggYm94LCBkb3VibGUgeF9hbGlnbiwgZG91YmxlIHlf YWxpZ24sIGJvb2wgeF9maWxsLCBib29sIHlfZmlsbCwgQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3Mg ZmxhZ3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgYWxs b2NhdGVfYXZhaWxhYmxlX3NpemUgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IGF2YWlsYWJsZV93 aWR0aCwgZmxvYXQgYXZhaWxhYmxlX2hlaWdodCwgQ2x1dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxh Z3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgYWxsb2Nh dGVfcHJlZmVycmVkX3NpemUgKENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFuaW1hdGlvbiBhbmltYXRl ICh1bG9uZyBtb2RlLCB1aW50IGR1cmF0aW9uLCAuLi4pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQW5pbWF0aW9uIGFuaW1hdGVfd2l0aF90aW1lbGluZSAo dWxvbmcgbW9kZSwgQ2x1dHRlci5UaW1lbGluZSB0aW1lbGluZSwgLi4uKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIGFwcGx5X3JlbGF0aXZlX3RyYW5zZm9y bV90b19wb2ludCAoQ2x1dHRlci5BY3Rvcj8gYW5jZXN0b3IsIEdyYXBoZW5lLlBvaW50M0QgcG9p bnQsIG91dCB1bm93bmVkIEdyYXBoZW5lLlBvaW50M0QgdmVydGV4KTsKKysJCVtOb1dyYXBwZXJd CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGFwcGx5X3RyYW5zZm9ybSAocmVmIENsdXR0ZXIuTWF0 cml4IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdm9p ZCBhcHBseV90cmFuc2Zvcm1fdG9fcG9pbnQgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQsIG91dCB1 bm93bmVkIEdyYXBoZW5lLlBvaW50M0QgdmVydGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjI0IildCisrCQlwdWJsaWMgdm9pZCBiaW5kX21vZGVsIChHTGliLkxpc3RNb2RlbD8gbW9kZWws IG93bmVkIENsdXR0ZXIuQWN0b3JDcmVhdGVDaGlsZEZ1bmMgY3JlYXRlX2NoaWxkX2Z1bmMpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgY2xlYXJfYWN0aW9u cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGNsZWFy X2NvbnN0cmFpbnRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IHZvaWQgY2xlYXJfZWZmZWN0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyBib29sIGNvbnRhaW5zIChDbHV0dGVyLkFjdG9yIGRlc2NlbmRhbnQpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgY29udGludWVfcGFpbnQgKENs dXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwkJcHVibGljIHZvaWQgY29udGlu dWVfcGljayAoQ2x1dHRlci5QaWNrQ29udGV4dCBwaWNrX2NvbnRleHQpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIFBhbmdvLkNvbnRleHQgY3JlYXRlX3BhbmdvX2Nv bnRleHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgUGFuZ28u TGF5b3V0IGNyZWF0ZV9wYW5nb19sYXlvdXQgKHN0cmluZz8gdGV4dCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZGVzdHJveV9hbGxfY2hpbGRyZW4gKCk7 CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfYWN0b3JfZXZlbnQiKV0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIGVtaXRfZXZlbnQgKENsdXR0ZXIuRXZl bnQgZXZlbnQsIGJvb2wgY2FwdHVyZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisr CQlwdWJsaWMgdm9pZCBnZXRfYWJzX2FsbG9jYXRpb25fdmVydGljZXMgKFtDQ29kZSAoYXJyYXlf bGVuZ3RoID0gZmFsc2UpXSBHcmFwaGVuZS5Qb2ludDNEIHZlcnRzWzRdKTsKKysJCXB1YmxpYyB2 aXJ0dWFsIHVub3duZWQgQXRrLk9iamVjdCBnZXRfYWNjZXNzaWJsZSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0aW9uIGdldF9h Y3Rpb24gKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1 YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLkFjdGlvbj4gZ2V0X2FjdGlvbnMgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCBnZXRf YWxsb2NhdGlvbl9ib3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJs aWMgdm9pZCBnZXRfYWxsb2NhdGlvbl92ZXJ0aWNlcyAoQ2x1dHRlci5BY3Rvcj8gYW5jZXN0b3Is IFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBHcmFwaGVuZS5Qb2ludDNEIHZlcnRzWzRd KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5IGdldF9hbmNo b3JfcG9pbnRfZ3Jhdml0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfYmFja2dyb3VuZF9jb2xvciAoKTsKKysJCVtDQ29kZSAo Y25hbWUgPSAiY2x1dHRlcl9nZXRfYWN0b3JfYnlfZ2lkIildCisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS44Iiwgc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfYnlfZ2lkICh1aW50MzIg aWRfKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBD bHV0dGVyLkFjdG9yIGdldF9jaGlsZF9hdF9pbmRleCAoaW50IGluZGV4Xyk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIENsdXR0ZXIuTWF0cml4IGdldF9jaGlsZF90 cmFuc2Zvcm0gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdM aWIuTGlzdDx3ZWFrIENsdXR0ZXIuQWN0b3I+IGdldF9jaGlsZHJlbiAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9jbGlwIChvdXQgZmxvYXQgeG9m Ziwgb3V0IGZsb2F0IHlvZmYsIG91dCBmbG9hdCB3aWR0aCwgb3V0IGZsb2F0IGhlaWdodCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBnZXRfY2xpcF90b19h bGxvY2F0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVu b3duZWQgQ2x1dHRlci5Db25zdHJhaW50IGdldF9jb25zdHJhaW50IChzdHJpbmcgbmFtZSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgQ2x1 dHRlci5Db25zdHJhaW50PiBnZXRfY29uc3RyYWludHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5Db250ZW50IGdldF9jb250ZW50 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFj dG9yQm94IGdldF9jb250ZW50X2JveCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgQ2x1dHRlci5Db250ZW50R3Jhdml0eSBnZXRfY29udGVudF9ncmF2aXR5ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnRl bnRSZXBlYXQgZ2V0X2NvbnRlbnRfcmVwZWF0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9jb250ZW50X3NjYWxpbmdfZmlsdGVycyAob3V0IENs dXR0ZXIuU2NhbGluZ0ZpbHRlciBtaW5fZmlsdGVyLCBvdXQgQ2x1dHRlci5TY2FsaW5nRmlsdGVy IG1hZ19maWx0ZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuUGFpbnRWb2x1bWUgZ2V0X2RlZmF1bHRfcGFpbnRfdm9sdW1lICgpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIi KV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfZGVwdGggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2Vhc2luZ19kZWxheSAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdWludCBnZXRfZWFzaW5nX2R1cmF0aW9uICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFuaW1h dGlvbk1vZGUgZ2V0X2Vhc2luZ19tb2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5FZmZlY3QgZ2V0X2VmZmVjdCAoc3RyaW5nIG5h bWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdMaWIuTGlzdDx3 ZWFrIENsdXR0ZXIuRWZmZWN0PiBnZXRfZWZmZWN0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9maXJzdF9jaGls ZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIGdldF9m aXhlZF9wb3NpdGlvbl9zZXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgQ2x1dHRlci5BY3RvckZsYWdzIGdldF9mbGFncyAoKTsKKysJCVtDQ29kZSAoY25hbWUg PSAiY2x1dHRlcl9hY3Rvcl9oYXNfcG9pbnRlciIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2hhc19wb2ludGVyICgpOworKwkJcHVibGljIGZsb2F0 IGdldF9oZWlnaHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfbGFzdF9jaGlsZCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkxheW91dE1hbmFnZXIg Z2V0X2xheW91dF9tYW5hZ2VyICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIGdldF9tYXJnaW4gKENsdXR0ZXIuTWFyZ2luIG1hcmdpbik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9tYXJnaW5fYm90dG9t ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRf bWFyZ2luX2xlZnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IGZsb2F0IGdldF9tYXJnaW5fcmlnaHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIGZsb2F0IGdldF9tYXJnaW5fdG9wICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X25fY2hpbGRyZW4gKCk7CisrCQlwdWJsaWMg dW5vd25lZCBzdHJpbmcgZ2V0X25hbWUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfbmV4dF9zaWJsaW5nICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuT2Zmc2NyZWVu UmVkaXJlY3QgZ2V0X29mZnNjcmVlbl9yZWRpcmVjdCAoKTsKKysJCXB1YmxpYyB1aW50OCBnZXRf b3BhY2l0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIyIildCisrCQlwdWJsaWMgaW50 IGdldF9vcGFjaXR5X292ZXJyaWRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQor KwkJcHVibGljIGJvb2wgZ2V0X3BhaW50X2JveCAob3V0IENsdXR0ZXIuQWN0b3JCb3ggYm94KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB1aW50OCBnZXRfcGFpbnRf b3BhY2l0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29s IGdldF9wYWludF92aXNpYmlsaXR5ICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIGJvb2wgZ2V0X3BhaW50X3ZvbHVtZSAoQ2x1dHRlci5QYWludFZvbHVtZSB2b2x1bWUpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgUGFuZ28uQ29u dGV4dCBnZXRfcGFuZ29fY29udGV4dCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0 b3I/IGdldF9wYXJlbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIHZvaWQgZ2V0X3Bpdm90X3BvaW50IChvdXQgZmxvYXQgcGl2b3RfeCwgb3V0IGZsb2F0IHBp dm90X3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBn ZXRfcGl2b3RfcG9pbnRfeiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1 YmxpYyB2b2lkIGdldF9wb3NpdGlvbiAob3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZ2V0X3ByZWZl cnJlZF9oZWlnaHQgKGZsb2F0IGZvcl93aWR0aCwgb3V0IGZsb2F0IG1pbl9oZWlnaHRfcCwgb3V0 IGZsb2F0IG5hdHVyYWxfaGVpZ2h0X3ApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQor KwkJcHVibGljIHZvaWQgZ2V0X3ByZWZlcnJlZF9zaXplIChvdXQgZmxvYXQgbWluX3dpZHRoX3As IG91dCBmbG9hdCBtaW5faGVpZ2h0X3AsIG91dCBmbG9hdCBuYXR1cmFsX3dpZHRoX3AsIG91dCBm bG9hdCBuYXR1cmFsX2hlaWdodF9wKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgZ2V0X3ByZWZlcnJlZF93aWR0aCAoZmxvYXQgZm9yX2hlaWdo dCwgb3V0IGZsb2F0IG1pbl93aWR0aF9wLCBvdXQgZmxvYXQgbmF0dXJhbF93aWR0aF9wKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFj dG9yIGdldF9wcmV2aW91c19zaWJsaW5nICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIp XQorKwkJcHVibGljIGJvb2wgZ2V0X3JlYWN0aXZlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuUmVxdWVzdE1vZGUgZ2V0X3JlcXVlc3RfbW9kZSAo KTsKKysJCXB1YmxpYyBib29sIGdldF9yZXNvdXJjZV9zY2FsZSAob3V0IGZsb2F0IHJlc291cmNl X3NjYWxlKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEyIiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZG91YmxlIGdldF9yb3RhdGlv biAoQ2x1dHRlci5Sb3RhdGVBeGlzIGF4aXMsIG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSwgb3V0 IGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBkb3Vi bGUgZ2V0X3JvdGF0aW9uX2FuZ2xlIChDbHV0dGVyLlJvdGF0ZUF4aXMgYXhpcyk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCBnZXRfc2NhbGUgKG91dCBkb3Vi bGUgc2NhbGVfeCwgb3V0IGRvdWJsZSBzY2FsZV95KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgdm9pZCBnZXRfc2NhbGVfY2VudGVyIChvdXQgZmxvYXQgY2VudGVyX3gsIG91dCBmbG9h dCBjZW50ZXJfeSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIuR3Jhdml0 eSBnZXRfc2NhbGVfZ3Jhdml0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CQlwdWJsaWMgZG91YmxlIGdldF9zY2FsZV96ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu MiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3NpemUgKG91dCBmbG9hdCB3aWR0aCwgb3V0IGZsb2F0 IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLlN0YWdlIGdldF9zdGFnZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyBDbHV0dGVyLlRleHREaXJlY3Rpb24gZ2V0X3RleHRfZGlyZWN0aW9uICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk1hdHJp eCBnZXRfdHJhbnNmb3JtICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVi bGljIHVub3duZWQgQ2x1dHRlci5QYWludFZvbHVtZSBnZXRfdHJhbnNmb3JtZWRfcGFpbnRfdm9s dW1lIChDbHV0dGVyLkFjdG9yIHJlbGF0aXZlX3RvX2FuY2VzdG9yKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF90cmFuc2Zvcm1lZF9wb3NpdGlvbiAo b3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyB2b2lkIGdldF90cmFuc2Zvcm1lZF9zaXplIChvdXQgZmxvYXQgd2lkdGgsIG91 dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB1bm93bmVkIENsdXR0ZXIuVHJhbnNpdGlvbiBnZXRfdHJhbnNpdGlvbiAoc3RyaW5nIG5hbWUp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF90cmFu c2xhdGlvbiAob3V0IGZsb2F0IHRyYW5zbGF0ZV94LCBvdXQgZmxvYXQgdHJhbnNsYXRlX3ksIG91 dCBmbG9hdCB0cmFuc2xhdGVfeik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3dpZHRoICgpOworKwkJ cHVibGljIGZsb2F0IGdldF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBDbHV0dGVyLkFjdG9yQWxpZ24gZ2V0X3hfYWxpZ24gKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3hfZXhwYW5kICgpOworKwkJcHVi bGljIGZsb2F0IGdldF95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkFjdG9yQWxpZ24gZ2V0X3lfYWxpZ24gKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3lfZXhwYW5kICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfel9wb3NpdGlvbiAoKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5IGdldF96X3JvdGF0 aW9uX2dyYXZpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dm9pZCBncmFiX2tleV9mb2N1cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgYm9vbCBoYXNfYWN0aW9ucyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyBib29sIGhhc19hbGxvY2F0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGhhc19jb25zdHJhaW50cyAoKTsKKysJCXB1Ymxp YyBib29sIGhhc19kYW1hZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIGJvb2wgaGFzX2VmZmVjdHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgYm9vbCBoYXNfa2V5X2ZvY3VzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTYiKV0KKysJCXB1YmxpYyBib29sIGhhc19tYXBwZWRfY2xvbmVzICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBoYXNfb3ZlcmxhcHMg KCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBoaWRlX2FsbCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfY2hp bGRfYWJvdmUgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGluc2VydF9jaGls ZF9hdF9pbmRleCAoQ2x1dHRlci5BY3RvciBjaGlsZCwgaW50IGluZGV4Xyk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgaW5zZXJ0X2NoaWxkX2JlbG93IChD bHV0dGVyLkFjdG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGlzX2luX2Nsb25lX3BhaW50ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBib29sIGlzX21hcHBlZCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMgYm9vbCBpc19yZWFs aXplZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIGlz X3JvdGF0ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgYm9v bCBpc19zY2FsZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGlj IGJvb2wgaXNfdmlzaWJsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgbWFwICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2 b2lkIG1vdmVfYW5jaG9yX3BvaW50IChmbG9hdCBhbmNob3JfeCwgZmxvYXQgYW5jaG9yX3kpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIi LCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIG1vdmVfYW5jaG9yX3BvaW50X2Zyb21f Z3Jhdml0eSAoQ2x1dHRlci5HcmF2aXR5IGdyYXZpdHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuMiIpXQorKwkJcHVibGljIHZvaWQgbW92ZV9ieSAoZmxvYXQgZHgsIGZsb2F0IGR5KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBuZWVkc19leHBhbmQg KENsdXR0ZXIuT3JpZW50YXRpb24gb3JpZW50YXRpb24pOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgcGFpbnRfbm9kZSAoQ2x1dHRlci5QYWludE5vZGUgcm9vdCk7Cisr CQlwdWJsaWMgdm9pZCBwaWNrX2JveCAoQ2x1dHRlci5QaWNrQ29udGV4dCBwaWNrX2NvbnRleHQs IENsdXR0ZXIuQWN0b3JCb3ggYm94KTsKKysJCXB1YmxpYyB2b2lkIHBvcF9pbnRlcm5hbCAoKTsK KysJCXB1YmxpYyB2b2lkIHB1c2hfaW50ZXJuYWwgKCk7CisrCQlwdWJsaWMgdm9pZCBxdWV1ZV9y ZWRyYXcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQg cXVldWVfcmVkcmF3X3dpdGhfY2xpcCAoQ2Fpcm8uUmVjdGFuZ2xlSW50PyBjbGlwKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9hY3Rpb24gKENs dXR0ZXIuQWN0aW9uIGFjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgdm9pZCByZW1vdmVfYWN0aW9uX2J5X25hbWUgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWxsX2NoaWxkcmVu ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92 ZV9hbGxfdHJhbnNpdGlvbnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgcmVtb3ZlX2NoaWxkIChDbHV0dGVyLkFjdG9yIGNoaWxkKTsKKysJCXB1Ymxp YyB2b2lkIHJlbW92ZV9jbGlwICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJ cHVibGljIHZvaWQgcmVtb3ZlX2NvbnN0cmFpbnQgKENsdXR0ZXIuQ29uc3RyYWludCBjb25zdHJh aW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92 ZV9jb25zdHJhaW50X2J5X25hbWUgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9lZmZlY3QgKENsdXR0ZXIuRWZmZWN0IGVm ZmVjdCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCByZW1v dmVfZWZmZWN0X2J5X25hbWUgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfdHJhbnNpdGlvbiAoc3RyaW5nIG5hbWUpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHJlcGxhY2VfY2hp bGQgKENsdXR0ZXIuQWN0b3Igb2xkX2NoaWxkLCBDbHV0dGVyLkFjdG9yIG5ld19jaGlsZCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcmVzdG9yZV9lYXNp bmdfc3RhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgc2F2ZV9lYXNpbmdfc3RhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X2FsbG9jYXRpb24gKENsdXR0ZXIuQWN0b3JCb3ggYm94LCBDbHV0 dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2FuY2hvcl9wb2ludCAoZmxvYXQgYW5jaG9yX3gsIGZsb2F0IGFuY2hvcl95KTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYW5jaG9yX3BvaW50X2Zyb21f Z3Jhdml0eSAoQ2x1dHRlci5HcmF2aXR5IGdyYXZpdHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9iYWNrZ3JvdW5kX2NvbG9yIChDbHV0dGVyLkNv bG9yPyBjb2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2NoaWxkX2Fib3ZlX3NpYmxpbmcgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIENsdXR0ZXIu QWN0b3I/IHNpYmxpbmcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9jaGlsZF9hdF9pbmRleCAoQ2x1dHRlci5BY3RvciBjaGlsZCwgaW50IGluZGV4 Xyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2No aWxkX2JlbG93X3NpYmxpbmcgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIENsdXR0ZXIuQWN0b3I/IHNp YmxpbmcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9jaGlsZF90cmFuc2Zvcm0gKENsdXR0ZXIuTWF0cml4PyB0cmFuc2Zvcm0pOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NsaXAgKGZsb2F0IHhvZmYs IGZsb2F0IHlvZmYsIGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NsaXBfdG9fYWxsb2NhdGlvbiAoYm9v bCBjbGlwX3NldCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2NvbnRlbnQgKENsdXR0ZXIuQ29udGVudD8gY29udGVudCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbnRlbnRfZ3Jhdml0eSAoQ2x1 dHRlci5Db250ZW50R3Jhdml0eSBncmF2aXR5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29udGVudF9yZXBlYXQgKENsdXR0ZXIuQ29udGVudFJl cGVhdCByZXBlYXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9jb250ZW50X3NjYWxpbmdfZmlsdGVycyAoQ2x1dHRlci5TY2FsaW5nRmlsdGVyIG1p bl9maWx0ZXIsIENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtYWdfZmlsdGVyKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgdm9pZCBzZXRfZGVwdGggKGZsb2F0IGRlcHRoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZWFzaW5nX2RlbGF5ICh1aW50IG1zZWNzKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZWFzaW5nX2R1 cmF0aW9uICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgdm9pZCBzZXRfZWFzaW5nX21vZGUgKENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBtb2RlKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9maXhlZF9w b3NpdGlvbl9zZXQgKGJvb2wgaXNfc2V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9mbGFncyAoQ2x1dHRlci5BY3RvckZsYWdzIGZsYWdzKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9oZWlnaHQgKGZs b2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2xheW91dF9tYW5hZ2VyIChDbHV0dGVyLkxheW91dE1hbmFnZXI/IG1hbmFnZXIpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9tYXJnaW4g KENsdXR0ZXIuTWFyZ2luIG1hcmdpbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X21hcmdpbl9ib3R0b20gKGZsb2F0IG1hcmdpbik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21hcmdpbl9sZWZ0IChm bG9hdCBtYXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9tYXJnaW5fcmlnaHQgKGZsb2F0IG1hcmdpbik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21hcmdpbl90b3AgKGZsb2F0IG1hcmdpbik7 CisrCQlwdWJsaWMgdm9pZCBzZXRfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X29mZnNjcmVlbl9yZWRpcmVjdCAoQ2x1 dHRlci5PZmZzY3JlZW5SZWRpcmVjdCByZWRpcmVjdCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb3Bh Y2l0eSAodWludDggb3BhY2l0eSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb3BhY2l0eV9vdmVycmlk ZSAoaW50IG9wYWNpdHkpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wYXJlbnQgKENsdXR0ZXIu QWN0b3IgcGFyZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg dm9pZCBzZXRfcGl2b3RfcG9pbnQgKGZsb2F0IHBpdm90X3gsIGZsb2F0IHBpdm90X3kpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9waXZvdF9wb2lu dF96IChmbG9hdCBwaXZvdF96KTsKKysJCXB1YmxpYyB2b2lkIHNldF9wb3NpdGlvbiAoZmxvYXQg eCwgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9p ZCBzZXRfcmVhY3RpdmUgKGJvb2wgcmVhY3RpdmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlcXVlc3RfbW9kZSAoQ2x1dHRlci5SZXF1ZXN0TW9k ZSBtb2RlKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEyIiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfcm90YXRpb24g KENsdXR0ZXIuUm90YXRlQXhpcyBheGlzLCBkb3VibGUgYW5nbGUsIGZsb2F0IHgsIGZsb2F0IHks IGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9yb3RhdGlvbl9hbmdsZSAoQ2x1dHRlci5Sb3RhdGVBeGlzIGF4aXMsIGRvdWJsZSBhbmds ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2Nh bGUgKGRvdWJsZSBzY2FsZV94LCBkb3VibGUgc2NhbGVfeSk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X3NjYWxlX2Z1bGwgKGRvdWJsZSBzY2FsZV94LCBkb3VibGUgc2Nh bGVfeSwgZmxvYXQgY2VudGVyX3gsIGZsb2F0IGNlbnRlcl95KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2NhbGVfeiAoZG91YmxlIHNjYWxlX3op OworKwkJcHVibGljIHZvaWQgc2V0X3NpemUgKGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RleHRfZGly ZWN0aW9uIChDbHV0dGVyLlRleHREaXJlY3Rpb24gdGV4dF9kaXIpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90cmFuc2Zvcm0gKENsdXR0ZXIuTWF0 cml4PyB0cmFuc2Zvcm0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF90cmFuc2xhdGlvbiAoZmxvYXQgdHJhbnNsYXRlX3gsIGZsb2F0IHRyYW5zbGF0 ZV95LCBmbG9hdCB0cmFuc2xhdGVfeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisr CQlwdWJsaWMgdm9pZCBzZXRfd2lkdGggKGZsb2F0IHdpZHRoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF94IChmbG9hdCB4KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfeF9hbGlnbiAoQ2x1dHRlci5B Y3RvckFsaWduIHhfYWxpZ24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF94X2V4cGFuZCAoYm9vbCBleHBhbmQpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3kgKGZsb2F0IHkpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF95X2FsaWduIChDbHV0dGVyLkFj dG9yQWxpZ24geV9hbGlnbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVi bGljIHZvaWQgc2V0X3lfZXhwYW5kIChib29sIGV4cGFuZCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3pfcG9zaXRpb24gKGZsb2F0IHpfcG9zaXRp b24pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF96X3JvdGF0aW9uX2Zy b21fZ3Jhdml0eSAoZG91YmxlIGFuZ2xlLCBDbHV0dGVyLkdyYXZpdHkgZ3Jhdml0eSk7CisrCQlw dWJsaWMgYm9vbCBzaG91bGRfcGlja19wYWludCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4yIildCisrCQlw dWJsaWMgdmlydHVhbCB2b2lkIHNob3dfYWxsICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIGJvb2wgdHJhbnNmb3JtX3N0YWdlX3BvaW50IChmbG9hdCB4LCBmbG9h dCB5LCBvdXQgZmxvYXQgeF9vdXQsIG91dCBmbG9hdCB5X291dCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHVubWFwICgpOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9 ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIHVucGFyZW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgdW5zZXRfZmxhZ3MgKENsdXR0ZXIuQWN0b3JGbGFn cyBmbGFncyk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdGlvbiBhY3Rpb25zIHsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBD bHV0dGVyLkFjdG9yQm94IGFsbG9jYXRpb24geyBvd25lZCBnZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkgYW5j aG9yX2dyYXZpdHkgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIGZsb2F0IGFuY2hvcl94IHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBhbmNo b3JfeSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIENsdXR0ZXIuQ29sb3IgYmFja2dyb3VuZF9jb2xvciB7IGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg Ym9vbCBiYWNrZ3JvdW5kX2NvbG9yX3NldCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgY2hpbGRfdHJh bnNmb3JtX3NldCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgY2xpcF9yZWN0IHsgb3du ZWQgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBi b29sIGNsaXBfdG9fYWxsb2NhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbnN0 cmFpbnQgY29uc3RyYWludHMgeyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgQ2x1dHRlci5Db250ZW50IGNvbnRlbnQgeyBnZXQ7IHNldDsgfQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQm94IGNvbnRl bnRfYm94IHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IENsdXR0ZXIuQ29udGVudEdyYXZpdHkgY29udGVudF9ncmF2aXR5IHsgZ2V0OyBzZXQ7IH0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db250ZW50UmVw ZWF0IGNvbnRlbnRfcmVwZWF0IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlw dWJsaWMgZmxvYXQgZGVwdGggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgQ2x1dHRlci5FZmZlY3QgZWZm ZWN0IHsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENs dXR0ZXIuQWN0b3IgZmlyc3RfY2hpbGQgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJCXB1YmxpYyBib29sIGZpeGVkX3Bvc2l0aW9uX3NldCB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyBmbG9hdCBmaXhlZF94IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZsb2F0IGZpeGVkX3kgeyBn ZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBoYXNfY2xp cCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgYm9vbCBoYXNfcG9pbnRlciB7IGdldDsgfQorKwkJcHVibGljIGZs b2F0IGhlaWdodCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIENsdXR0ZXIuQWN0b3IgbGFzdF9jaGlsZCB7IGdldDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkxheW91dE1hbmFnZXIgbGF5b3V0 X21hbmFnZXIgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg Q2x1dHRlci5TY2FsaW5nRmlsdGVyIG1hZ25pZmljYXRpb25fZmlsdGVyIHsgZ2V0OyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIGJvb2wgbWFwcGVkIHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIGZsb2F0IG1hcmdpbl9ib3R0b20geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBtYXJnaW5fbGVmdCB7IGdldDsg c2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IG1h cmdpbl9yaWdodCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIGZsb2F0IG1hcmdpbl90b3AgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZmxvYXQgbWlu X2hlaWdodCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIG1pbl9oZWlnaHRfc2V0IHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwkJcHVibGljIGZsb2F0IG1pbl93aWR0aCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIG1p bl93aWR0aF9zZXQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgQ2x1dHRlci5TY2FsaW5nRmlsdGVyIG1pbmlmaWNhdGlvbl9maWx0ZXIgeyBnZXQ7IHNldDsg fQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHN0cmluZyBuYW1lIHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIGZsb2F0IG5hdHVyYWxfaGVpZ2h0IHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIGJvb2wgbmF0dXJhbF9oZWlnaHRfc2V0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZsb2F0IG5h dHVyYWxfd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBuYXR1cmFsX3dpZHRoX3NldCB7 IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgQ2x1 dHRlci5PZmZzY3JlZW5SZWRpcmVjdCBvZmZzY3JlZW5fcmVkaXJlY3QgeyBnZXQ7IHNldDsgfQor KwkJcHVibGljIHVpbnQgb3BhY2l0eSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUG9p bnQgcGl2b3RfcG9pbnQgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBwaXZvdF9wb2ludF96IHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5Qb2ludCBwb3NpdGlvbiB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgYm9vbCByZWFjdGl2ZSB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBib29sIHJlYWxpemVkIHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgQ2x1dHRlci5SZXF1ZXN0TW9kZSByZXF1ZXN0X21vZGUgeyBnZXQ7 IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZmxvYXQgcmVzb3VyY2Vf c2NhbGUgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIGRvdWJsZSByb3RhdGlvbl9hbmdsZV94IHsgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQor KwkJcHVibGljIGRvdWJsZSByb3RhdGlvbl9hbmdsZV95IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGRv dWJsZSByb3RhdGlvbl9hbmdsZV96IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTIiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHJvdGF0aW9u X2NlbnRlcl94IHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHJvdGF0aW9uX2NlbnRl cl95IHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIwLjYiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHJvdGF0aW9uX2NlbnRlcl96IHsg b3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkgcm90YXRpb25fY2VudGVyX3pfZ3Jhdml0eSB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgZmxvYXQgc2NhbGVfY2VudGVyX3ggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IHNjYWxlX2NlbnRl cl95IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkgc2NhbGVfZ3Jhdml0eSB7IGdldDsgc2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJ CXB1YmxpYyBkb3VibGUgc2NhbGVfeCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgc2NhbGVf eSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGlj IGRvdWJsZSBzY2FsZV96IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgc2hvd19vbl9zZXRfcGFy ZW50IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5TaXplIHNpemUgeyBvd25lZCBnZXQ7 IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENsdXR0ZXIu VGV4dERpcmVjdGlvbiB0ZXh0X2RpcmVjdGlvbiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCB0 cmFuc2Zvcm1fc2V0IHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgdHJhbnNsYXRpb25feCB7IGdldDsg c2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgZmxvYXQgdHJhbnNsYXRpb25feSB7IGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg ZmxvYXQgdHJhbnNsYXRpb25feiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBib29sIHZpc2libGUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGZsb2F0IHdp ZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCB4IHsgZ2V0OyBzZXQ7IH0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckFsaWduIHhf YWxpZ24geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBib29sIHhfZXhwYW5kIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCB5IHsgZ2V0 OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRl ci5BY3RvckFsaWduIHlfYWxpZ24geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTIiKV0KKysJCXB1YmxpYyBib29sIHlfZXhwYW5kIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgel9wb3NpdGlvbiB7IGdldDsg c2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgYWxsb2NhdGlvbl9jaGFuZ2VkIChDbHV0dGVyLkFjdG9yQm94IGJveCwgQ2x1dHRlci5BbGxv Y2F0aW9uRmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgYnV0dG9uX3ByZXNzX2V2ZW50IChDbHV0dGVyLkJ1dHRv bkV2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2 aXJ0dWFsIHNpZ25hbCBib29sIGJ1dHRvbl9yZWxlYXNlX2V2ZW50IChDbHV0dGVyLkJ1dHRvbkV2 ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCBib29sIGNhcHR1cmVkX2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJ CVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIHZvaWQgZGVzdHJveSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYi KV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGVudGVyX2V2ZW50IChDbHV0dGVyLkNy b3NzaW5nRXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVi bGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQpOworKwkJ W0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdmly dHVhbCBzaWduYWwgdm9pZCBoaWRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQor KwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQga2V5X2ZvY3VzX2luICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQga2V5X2Zv Y3VzX291dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCBib29sIGtleV9wcmVzc19ldmVudCAoQ2x1dHRlci5LZXlFdmVudCBldmVudCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg Ym9vbCBrZXlfcmVsZWFzZV9ldmVudCAoQ2x1dHRlci5LZXlFdmVudCBldmVudCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBsZWF2 ZV9ldmVudCAoQ2x1dHRlci5Dcm9zc2luZ0V2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIG1vdGlvbl9ldmVudCAo Q2x1dHRlci5Nb3Rpb25FdmVudCBldmVudCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBwYWludCAoQ2x1dHRlci5QYWlu dENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBwYXJlbnRfc2V0IChDbHV0dGVyLkFjdG9yPyBv bGRfcGFyZW50KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgcGljayAoQ2x1dHRlci5QaWNrQ29udGV4 dCBwaWNrX2NvbnRleHQpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBxdWV1ZV9yZWxheW91dCAoKTsK KysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCB2b2lkIHJlYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBzY3JvbGxfZXZlbnQgKENsdXR0ZXIuU2Nyb2xsRXZl bnQgZXZlbnQpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIild CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBzaG93ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIHRvdWNoX2V2ZW50 IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgdHJhbnNpdGlvbl9zdG9wcGVkIChzdHJpbmcgbmFtZSwgYm9v bCBpc19maW5pc2hlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHNpZ25hbCB2b2lkIHRyYW5zaXRpb25zX2NvbXBsZXRlZCAoKTsKKysJCVtIYXNFbWl0dGVyXQor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYi LCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHVucmVhbGl6 ZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0b3JfbWV0YV9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBBY3Rvck1ldGEg OiBHTGliLkluaXRpYWxseVVub3duZWQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEFjdG9yTWV0YSAoKTsKKysJCXB1YmxpYyB1bm93 bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2FjdG9yICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2VuYWJs ZWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X25hbWUgKCk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzZXRfYWN0b3IgKENsdXR0ZXIuQWN0b3I/IGFj dG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9lbmFibGVkIChib29sIGlzX2VuYWJsZWQpOworKwkJ cHVibGljIHZvaWQgc2V0X25hbWUgKHN0cmluZyBuYW1lKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFj dG9yIGFjdG9yIHsgZ2V0OyB9CisrCQlwdWJsaWMgYm9vbCBlbmFibGVkIHsgZ2V0OyBzZXQ7IH0K KysJCXB1YmxpYyBzdHJpbmcgbmFtZSB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Fj dG9yX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEFjdG9yTm9kZSA6IENsdXR0 ZXIuUGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl LCB0eXBlID0gIkNsdXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgQWN0b3JOb2RlIChDbHV0 dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWxpZ25fY29uc3RyYWludF9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBB bGlnbkNvbnN0cmFpbnQgOiBDbHV0dGVyLkNvbnN0cmFpbnQgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckNvbnN0cmFpbnQqIildCisr CQlwdWJsaWMgQWxpZ25Db25zdHJhaW50IChDbHV0dGVyLkFjdG9yPyBzb3VyY2UsIENsdXR0ZXIu QWxpZ25BeGlzIGF4aXMsIGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgQ2x1dHRlci5BbGlnbkF4 aXMgZ2V0X2FsaWduX2F4aXMgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2ZhY3RvciAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3NvdXJjZSAoKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9hbGlnbl9heGlzIChDbHV0dGVyLkFsaWduQXhpcyBheGlzKTsKKysJCXB1YmxpYyB2 b2lkIHNldF9mYWN0b3IgKGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfc291cmNl IChDbHV0dGVyLkFjdG9yPyBzb3VyY2UpOworKwkJcHVibGljIENsdXR0ZXIuQWxpZ25BeGlzIGFs aWduX2F4aXMgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBmbG9hdCBmYWN0b3Ig eyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIHNvdXJjZSB7 IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hbHBoYV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgQWxwaGEgOiBHTGliLkluaXRp YWxseVVub3duZWQsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgQWxwaGEgKCk7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgQWxwaGEuZnVsbCAoQ2x1dHRlci5UaW1lbGluZSB0aW1lbGluZSwgdWxv bmcgbW9kZSk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9hbHBoYSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bG9uZyBnZXRfbW9kZSAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuVGltZWxpbmUgZ2V0X3RpbWVsaW5lICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Nsb3N1cmUgKEdMaWIuQ2xvc3VyZSBj bG9zdXJlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9mdW5jIChvd25lZCBDbHV0dGVyLkFscGhhRnVu YyBmdW5jKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9tb2RlICh1bG9uZyBtb2RlKTsKKysJCXB1YmxpYyB2b2lkIHNldF90aW1lbGluZSAoQ2x1dHRl ci5UaW1lbGluZSB0aW1lbGluZSk7CisrCQlwdWJsaWMgZG91YmxlIGFscGhhIHsgZ2V0OyB9Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdWxvbmcgbW9kZSB7IGdldDsg c2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuVGltZWxpbmUgdGltZWxpbmUgeyBn ZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hbmltYXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNzIEFuaW1hdGlvbiA6IEdMaWIuT2JqZWN0LCBD bHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJcHVibGljIEFuaW1hdGlvbiAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9kdXJh dGlvbiAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW50ZXJ2YWwgZ2V0X2ludGVydmFs IChzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrCQlwdWJsaWMgYm9vbCBnZXRfbG9vcCAoKTsKKysJ CXB1YmxpYyB1bG9uZyBnZXRfbW9kZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuVGlt ZWxpbmUgZ2V0X3RpbWVsaW5lICgpOworKwkJcHVibGljIGJvb2wgaGFzX3Byb3BlcnR5IChzdHJp bmcgcHJvcGVydHlfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZHVyYXRpb24gKHVpbnQgbXNl Y3MpOworKwkJcHVibGljIHZvaWQgc2V0X2xvb3AgKGJvb2wgbG9vcCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfbW9kZSAodWxvbmcgbW9kZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb2JqZWN0IChHTGli Lk9iamVjdCBvYmplY3QpOworKwkJcHVibGljIHZvaWQgc2V0X3RpbWVsaW5lIChDbHV0dGVyLlRp bWVsaW5lPyB0aW1lbGluZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgQ2x1dHRlci5BbHBoYSBhbHBoYSB7IG93bmVkIGdldDsgc2V0OyB9Cisr CQlwdWJsaWMgdWludCBkdXJhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBsb29w IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1bG9uZyBtb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIEdMaWIuT2JqZWN0IG9iamVjdCB7IG93bmVkIGdl dDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5UaW1lbGluZSB0aW1lbGluZSB7IGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBjb21wbGV0ZWQgKCk7CisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBzdGFydGVkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQor KwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3Mg QW55RXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3Mg ZmxhZ3M7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3 ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJs aWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYmFja2VuZF9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBjbGFzcyBC YWNrZW5kIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEJhY2tlbmQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgdm9pZCBhZGRfb3B0aW9ucyAoR0xpYi5PcHRpb25Hcm91cCBncm91cCk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBjcmVhdGVfY29udGV4dCAo KSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB1 bm93bmVkIENsdXR0ZXIuU3RhZ2VXaW5kb3cgY3JlYXRlX3N0YWdlIChDbHV0dGVyLlN0YWdlIHdy YXBwZXIpIHRocm93cyBHTGliLkVycm9yOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgZW5zdXJlX2NvbnRleHQgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2UpOworKwkJcHVibGlj IHVub3duZWQgQ2x1dHRlci5TZWF0IGdldF9kZWZhdWx0X3NlYXQgKCk7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgQ2x1dHRlci5GZWF0dXJlRmxhZ3MgZ2V0X2ZlYXR1cmVzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHVub3duZWQgQ2Fpcm8u Rm9udE9wdGlvbnMgZ2V0X2ZvbnRfb3B0aW9ucyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuSW5wdXRNZXRob2QgZ2V0X2lucHV0X21ldGhvZCAoKTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0 X3Jlc29sdXRpb24gKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBp bml0X2V2ZW50cyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGlu aXRfZmVhdHVyZXMgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBw b3N0X3BhcnNlICgpIHRocm93cyBHTGliLkVycm9yOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIGJvb2wgcHJlX3BhcnNlICgpIHRocm93cyBHTGliLkVycm9yOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcmVkcmF3IChDbHV0dGVyLlN0YWdlIHN0YWdl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9mb250 X29wdGlvbnMgKENhaXJvLkZvbnRPcHRpb25zIG9wdGlvbnMpOworKwkJcHVibGljIHZvaWQgc2V0 X2lucHV0X21ldGhvZCAoQ2x1dHRlci5JbnB1dE1ldGhvZCBtZXRob2QpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGZvbnRfY2hhbmdlZCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCByZXNv bHV0aW9uX2NoYW5nZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgc2V0dGluZ3NfY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYmlu X2xheW91dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1 YmxpYyBjbGFzcyBCaW5MYXlvdXQgOiBDbHV0dGVyLkxheW91dE1hbmFnZXIgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckxheW91dE1h bmFnZXIqIildCisrCQlwdWJsaWMgQmluTGF5b3V0IChDbHV0dGVyLkJpbkFsaWdubWVudCB4X2Fs aWduID0gQ2x1dHRlci5CaW5BbGlnbm1lbnQuU1RBUlQsIENsdXR0ZXIuQmluQWxpZ25tZW50IHlf YWxpZ24gPSBDbHV0dGVyLkJpbkFsaWdubWVudC5TVEFSVCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIx LjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5CaW5BbGlnbm1lbnQgeF9h bGlnbiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgQ2x1dHRlci5CaW5BbGlnbm1lbnQgeV9hbGlnbiB7IGdldDsgc2V0OyB9 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX2JpbmRfY29uc3RyYWludF9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBCaW5kQ29uc3RyYWludCA6IENs dXR0ZXIuQ29uc3RyYWludCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSwgdHlwZSA9ICJDbHV0dGVyQ29uc3RyYWludCoiKV0KKysJCXB1YmxpYyBCaW5kQ29uc3Ry YWludCAoQ2x1dHRlci5BY3Rvcj8gc291cmNlLCBDbHV0dGVyLkJpbmRDb29yZGluYXRlIGNvb3Jk aW5hdGUsIGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMgQ2x1dHRlci5CaW5kQ29vcmRpbmF0ZSBn ZXRfY29vcmRpbmF0ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfb2Zmc2V0ICgpOworKwkJcHVi bGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNlICgpOworKwkJcHVibGljIHZvaWQg c2V0X2Nvb3JkaW5hdGUgKENsdXR0ZXIuQmluZENvb3JkaW5hdGUgY29vcmRpbmF0ZSk7CisrCQlw dWJsaWMgdm9pZCBzZXRfb2Zmc2V0IChmbG9hdCBvZmZzZXQpOworKwkJcHVibGljIHZvaWQgc2V0 X3NvdXJjZSAoQ2x1dHRlci5BY3Rvcj8gc291cmNlKTsKKysJCXB1YmxpYyBDbHV0dGVyLkJpbmRD b29yZGluYXRlIGNvb3JkaW5hdGUgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBm bG9hdCBvZmZzZXQgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkFj dG9yIHNvdXJjZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9iaW5k aW5nX3Bvb2xfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlw dWJsaWMgY2xhc3MgQmluZGluZ1Bvb2wgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgQmluZGluZ1Bvb2wgKHN0cmlu ZyBuYW1lKTsKKysJCXB1YmxpYyBib29sIGFjdGl2YXRlICh1aW50IGtleV92YWwsIENsdXR0ZXIu TW9kaWZpZXJUeXBlIG1vZGlmaWVycywgR0xpYi5PYmplY3QgZ29iamVjdCk7CisrCQlwdWJsaWMg dm9pZCBibG9ja19hY3Rpb24gKHN0cmluZyBhY3Rpb25fbmFtZSk7CisrCQlwdWJsaWMgc3RhdGlj IHVub3duZWQgQ2x1dHRlci5CaW5kaW5nUG9vbCBmaW5kIChzdHJpbmcgbmFtZSk7CisrCQlwdWJs aWMgdW5vd25lZCBzdHJpbmcgZmluZF9hY3Rpb24gKHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5Nb2Rp ZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkJp bmRpbmdQb29sIGdldF9mb3JfY2xhc3MgKHZvaWQqIGtsYXNzKTsKKysJCXB1YmxpYyB2b2lkIGlu c3RhbGxfYWN0aW9uIChzdHJpbmcgYWN0aW9uX25hbWUsIHVpbnQga2V5X3ZhbCwgQ2x1dHRlci5N b2RpZmllclR5cGUgbW9kaWZpZXJzLCBvd25lZCBDbHV0dGVyLkJpbmRpbmdBY3Rpb25GdW5jIGNh bGxiYWNrKTsKKysJCXB1YmxpYyB2b2lkIGluc3RhbGxfY2xvc3VyZSAoc3RyaW5nIGFjdGlvbl9u YW1lLCB1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycywgR0xpYi5D bG9zdXJlIGNsb3N1cmUpOworKwkJcHVibGljIHZvaWQgb3ZlcnJpZGVfYWN0aW9uICh1aW50IGtl eV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycywgb3duZWQgR0xpYi5DYWxsYmFj ayBjYWxsYmFjayk7CisrCQlwdWJsaWMgdm9pZCBvdmVycmlkZV9jbG9zdXJlICh1aW50IGtleV92 YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycywgR0xpYi5DbG9zdXJlIGNsb3N1cmUp OworKwkJcHVibGljIHZvaWQgcmVtb3ZlX2FjdGlvbiAodWludCBrZXlfdmFsLCBDbHV0dGVyLk1v ZGlmaWVyVHlwZSBtb2RpZmllcnMpOworKwkJcHVibGljIHZvaWQgdW5ibG9ja19hY3Rpb24gKHN0 cmluZyBhY3Rpb25fbmFtZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBzdHJp bmcgbmFtZSB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JsdXJf ZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVi bGljIGNsYXNzIEJsdXJFZmZlY3QgOiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyRWZmZWN0 KiIpXQorKwkJcHVibGljIEJsdXJFZmZlY3QgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JveF9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBjbGFzcyBC b3ggOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwg Q2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNp bmNlID0gIjEuMiIpXQorKwkJcHVibGljIEJveCAoQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIG1hbmFn ZXIpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9jb2xv ciAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkxheW91 dE1hbmFnZXIgZ2V0X2xheW91dF9tYW5hZ2VyICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyB2b2lkIHBhY2sgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIC4uLik7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIHZvaWQgcGFja19hZnRlciAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1 dHRlci5BY3Rvcj8gc2libGluZywgLi4uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg dm9pZCBwYWNrX2F0IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBpbnQgcG9zaXRpb24sIC4uLik7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIs IHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgcGFja19iZWZvcmUgKENsdXR0ZXIuQWN0 b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcsIC4uLik7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIHZvaWQgcGFja3YgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIFtDQ29kZSAoYXJy YXlfbGVuZ3RoX2NuYW1lID0gIm5fcHJvcGVydGllcyIsIGFycmF5X2xlbmd0aF9wb3MgPSAxLjUs IGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIHN0cmluZ1tdIHByb3BlcnRpZXMsIFtDQ29k ZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fcHJvcGVydGllcyIsIGFycmF5X2xlbmd0aF9wb3Mg PSAxLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIEdMaWIuVmFsdWVbXSB2YWx1ZXMp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ2x1dHRlci5D b2xvcj8gY29sb3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXlv dXRfbWFuYWdlciAoQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIG1hbmFnZXIpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGNvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGNvbG9y X3NldCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIGxheW91 dF9tYW5hZ2VyIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYm94X2xheW91dF9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBjbGFzcyBC b3hMYXlvdXQgOiBDbHV0dGVyLkxheW91dE1hbmFnZXIgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckxheW91dE1hbmFnZXIqIildCisr CQlwdWJsaWMgQm94TGF5b3V0ICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lk IGdldF9hbGlnbm1lbnQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIG91dCBDbHV0dGVyLkJveEFsaWdu bWVudCB4X2FsaWduLCBvdXQgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeV9hbGlnbik7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNl ID0gIjEuMiIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2Vhc2luZ19kdXJhdGlvbiAoKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgdWxvbmcgZ2V0X2Vhc2luZ19tb2RlICgpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5j ZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF9leHBhbmQgKENsdXR0ZXIuQWN0b3IgYWN0 b3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9maWxsIChDbHV0dGVy LkFjdG9yIGFjdG9yLCBvdXQgYm9vbCB4X2ZpbGwsIG91dCBib29sIHlfZmlsbCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBnZXRfaG9tb2dlbmVvdXMgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIENsdXR0ZXIuT3JpZW50 YXRpb24gZ2V0X29yaWVudGF0aW9uICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3BhY2tfc3RhcnQg KCk7CisrCQlwdWJsaWMgdWludCBnZXRfc3BhY2luZyAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgYm9vbCBnZXRfdXNlX2FuaW1hdGlvbnMgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQor KwkJcHVibGljIGJvb2wgZ2V0X3ZlcnRpY2FsICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1 YmxpYyB2b2lkIHBhY2sgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGJvb2wgZXhwYW5kLCBib29sIHhf ZmlsbCwgYm9vbCB5X2ZpbGwsIENsdXR0ZXIuQm94QWxpZ25tZW50IHhfYWxpZ24sIENsdXR0ZXIu Qm94QWxpZ25tZW50IHlfYWxpZ24pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9hbGlnbm1lbnQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQm94QWxpZ25tZW50 IHhfYWxpZ24sIENsdXR0ZXIuQm94QWxpZ25tZW50IHlfYWxpZ24pOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9lYXNpbmdfZHVyYXRpb24gKHVpbnQgbXNlY3MpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9lYXNpbmdfbW9kZSAodWxvbmcgbW9k ZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2V4cGFuZCAoQ2x1dHRl ci5BY3RvciBhY3RvciwgYm9vbCBleHBhbmQpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9maWxsIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBib29sIHhfZmlsbCwgYm9vbCB5 X2ZpbGwpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2hvbW9nZW5lb3VzIChib29sIGhvbW9nZW5lb3VzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfb3JpZW50YXRpb24gKENsdXR0ZXIuT3JpZW50YXRp b24gb3JpZW50YXRpb24pOworKwkJcHVibGljIHZvaWQgc2V0X3BhY2tfc3RhcnQgKGJvb2wgcGFj a19zdGFydCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc3BhY2luZyAodWludCBzcGFjaW5nKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwg c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdXNlX2FuaW1hdGlvbnMgKGJvb2wg YW5pbWF0ZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3ZlcnRpY2Fs IChib29sIHZlcnRpY2FsKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdWludCBlYXNp bmdfZHVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1 bG9uZyBlYXNpbmdfbW9kZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgYm9vbCBob21vZ2VuZW91cyB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIENsdXR0ZXIuT3JpZW50YXRpb24gb3JpZW50 YXRpb24geyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgcGFja19zdGFydCB7IGdldDsgc2V0 OyB9CisrCQlwdWJsaWMgdWludCBzcGFjaW5nIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4y IildCisrCQlwdWJsaWMgYm9vbCB1c2VfYW5pbWF0aW9ucyB7IGdldDsgc2V0OyB9CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNl ID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgdmVydGljYWwgeyBnZXQ7IHNldDsgfQorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9icmlnaHRuZXNzX2NvbnRyYXN0X2VmZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgQnJpZ2h0bmVzc0NvbnRy YXN0RWZmZWN0IDogQ2x1dHRlci5PZmZzY3JlZW5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCXB1 YmxpYyBCcmlnaHRuZXNzQ29udHJhc3RFZmZlY3QgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfYnJp Z2h0bmVzcyAob3V0IGZsb2F0IHJlZCwgb3V0IGZsb2F0IGdyZWVuLCBvdXQgZmxvYXQgYmx1ZSk7 CisrCQlwdWJsaWMgdm9pZCBnZXRfY29udHJhc3QgKG91dCBmbG9hdCByZWQsIG91dCBmbG9hdCBn cmVlbiwgb3V0IGZsb2F0IGJsdWUpOworKwkJcHVibGljIHZvaWQgc2V0X2JyaWdodG5lc3MgKGZs b2F0IGJyaWdodG5lc3MpOworKwkJcHVibGljIHZvaWQgc2V0X2JyaWdodG5lc3NfZnVsbCAoZmxv YXQgcmVkLCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY29u dHJhc3QgKGZsb2F0IGNvbnRyYXN0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb250cmFzdF9mdWxs IChmbG9hdCByZWQsIGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlKTsKKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgYnJpZ2h0bmVzcyB7IG93bmVkIGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGNvbnRy YXN0IHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3Rd CisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIEJ1dHRvbkV2ZW50 IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgZG91YmxlIGF4ZXM7CisrCQlwdWJsaWMgdWlu dDMyIGJ1dHRvbjsKKysJCXB1YmxpYyB1aW50IGNsaWNrX2NvdW50OworKwkJcHVibGljIHdlYWsg Q2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdz IGZsYWdzOworKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVyX3N0YXRlOwor KwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0 dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0 ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5 OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9jYW52YXNfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIENhbnZhcyA6IEdMaWIuT2JqZWN0LCBDbHV0 dGVyLkNvbnRlbnQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Us IHR5cGUgPSAiQ2x1dHRlckNvbnRlbnQqIildCisrCQlwdWJsaWMgQ2FudmFzICgpOworKwkJcHVi bGljIGZsb2F0IGdldF9zY2FsZV9mYWN0b3IgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc2NhbGVf ZmFjdG9yIChmbG9hdCBzY2FsZSk7CisrCQlwdWJsaWMgYm9vbCBzZXRfc2l6ZSAoaW50IHdpZHRo LCBpbnQgaGVpZ2h0KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBoZWln aHQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGZsb2F0IHNjYWxlX2ZhY3RvciB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgd2lkdGggeyBnZXQ7IHNl dDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZHJhdyAoQ2Fpcm8uQ29udGV4dCBj ciwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY2hpbGRfbWV0YV9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBhYnN0 cmFjdCBjbGFzcyBDaGlsZE1ldGEgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQ2hpbGRNZXRhICgpOworKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfYWN0b3IgKCk7CisrCQlwdWJsaWMgdW5v d25lZCBDbHV0dGVyLkNvbnRhaW5lciBnZXRfY29udGFpbmVyICgpOworKwkJcHVibGljIENsdXR0 ZXIuQWN0b3IgYWN0b3IgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuQ29u dGFpbmVyIGNvbnRhaW5lciB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Ns aWNrX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CXB1YmxpYyBjbGFzcyBDbGlja0FjdGlvbiA6IENsdXR0ZXIuQWN0aW9uIHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIild CisrCQlwdWJsaWMgQ2xpY2tBY3Rpb24gKCk7CisrCQlwdWJsaWMgdWludCBnZXRfYnV0dG9uICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X2Nvb3Jk cyAob3V0IGZsb2F0IHByZXNzX3gsIG91dCBmbG9hdCBwcmVzc195KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBnZXRfc3RhdGUg KCk7CisrCQlwdWJsaWMgdm9pZCByZWxlYXNlICgpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgYm9vbCBoZWxkIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgbG9uZ19wcmVzc19kdXJhdGlv biB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgbG9uZ19wcmVzc190aHJlc2hvbGQgeyBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBwcmVzc2VkIHsgZ2V0 OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBjbGlja2VkIChDbHV0dGVyLkFjdG9y IGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFs IHNpZ25hbCBib29sIGxvbmdfcHJlc3MgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuTG9u Z1ByZXNzU3RhdGUgc3RhdGUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jbGlwX25vZGVfZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIENsaXBO b2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBDbGlw Tm9kZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY2xvbmVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xhc3MgQ2xvbmUgOiBDbHV0dGVyLkFjdG9y LCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIs IENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMgQ2xvbmUgKENsdXR0 ZXIuQWN0b3Igc291cmNlKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3Nv dXJjZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0ZXIuQWN0b3I/IHNvdXJj ZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBzb3VyY2UgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7 IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfY29sb3Jfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgQ29sb3JOb2RlIDogQ2x1dHRlci5Q aXBlbGluZU5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Us IHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBDb2xvck5vZGUgKENsdXR0 ZXIuQ29sb3I/IGNvbG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY29sb3JpemVfZWZmZWN0X2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIENv bG9yaXplRWZmZWN0IDogQ2x1dHRlci5PZmZzY3JlZW5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJ CXB1YmxpYyBDb2xvcml6ZUVmZmVjdCAoQ2x1dHRlci5Db2xvciB0aW50KTsKKysJCXB1YmxpYyBD bHV0dGVyLkNvbG9yIGdldF90aW50ICgpOworKwkJcHVibGljIHZvaWQgc2V0X3RpbnQgKENsdXR0 ZXIuQ29sb3IgdGludCk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciB0aW50IHsgZ2V0OyBzZXQ7 IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfY29uc3RyYWludF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBDb25zdHJhaW50IDog Q2x1dHRlci5BY3Rvck1ldGEgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJcHJvdGVjdGVkIENvbnN0cmFpbnQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgdm9pZCB1cGRhdGVfYWxsb2NhdGlvbiAoQ2x1dHRlci5BY3RvciBhY3Rv ciwgQ2x1dHRlci5BY3RvckJveCBhbGxvY2F0aW9uKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCB2b2lkIHVwZGF0ZV9wcmVmZXJyZWRfc2l6ZSAoQ2x1dHRlci5BY3RvciBhY3Rv ciwgQ2x1dHRlci5PcmllbnRhdGlvbiBkaXJlY3Rpb24sIGZsb2F0IGZvcl9zaXplLCBmbG9hdCBt aW5pbXVtX3NpemUsIGZsb2F0IG5hdHVyYWxfc2l6ZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBD cm9zc2luZ0V2ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklu cHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7Cisr CQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHJlbGF0ZWQ7CisrCQlwdWJsaWMgd2VhayBDbHV0 dGVyLkV2ZW50U2VxdWVuY2Ugc2VxdWVuY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9y IHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMg dWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1Ymxp YyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2RlZm9ybV9l ZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJs aWMgYWJzdHJhY3QgY2xhc3MgRGVmb3JtRWZmZWN0IDogQ2x1dHRlci5PZmZzY3JlZW5FZmZlY3Qg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVj dGVkIERlZm9ybUVmZmVjdCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIGRlZm9ybV92ZXJ0ZXggKGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQsIENvZ2wuVGV4dHVy ZVZlcnRleCB2ZXJ0ZXgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5IYW5kbGUgZ2V0X2JhY2tf bWF0ZXJpYWwgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfbl90aWxlcyAob3V0IHVpbnQgeF90aWxl cywgb3V0IHVpbnQgeV90aWxlcyk7CisrCQlwdWJsaWMgdm9pZCBpbnZhbGlkYXRlICgpOworKwkJ cHVibGljIHZvaWQgc2V0X2JhY2tfbWF0ZXJpYWwgKENvZ2wuSGFuZGxlPyBtYXRlcmlhbCk7Cisr CQlwdWJsaWMgdm9pZCBzZXRfbl90aWxlcyAodWludCB4X3RpbGVzLCB1aW50IHlfdGlsZXMpOwor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdWludCB4X3RpbGVzIHsgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHVpbnQgeV90aWxlcyB7IGdldDsg c2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Rlc2F0dXJhdGVfZWZmZWN0X2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIERlc2F0dXJhdGVF ZmZlY3QgOiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyRWZmZWN0KiIpXQorKwkJcHVibGlj IERlc2F0dXJhdGVFZmZlY3QgKGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGljIGRvdWJsZSBnZXRf ZmFjdG9yICgpOworKwkJcHVibGljIHZvaWQgc2V0X2ZhY3RvciAoZG91YmxlIGZhY3Rvcik7Cisr CQlwdWJsaWMgZG91YmxlIGZhY3RvciB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Ry YWdfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ cHVibGljIGNsYXNzIERyYWdBY3Rpb24gOiBDbHV0dGVyLkFjdGlvbiB7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQor KwkJcHVibGljIERyYWdBY3Rpb24gKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfZHJhZ19hcmVhIChH cmFwaGVuZS5SZWN0IGRyYWdfYXJlYSk7CisrCQlwdWJsaWMgQ2x1dHRlci5EcmFnQXhpcyBnZXRf ZHJhZ19heGlzICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfZHJhZ19o YW5kbGUgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfZHJhZ190aHJlc2hvbGQgKG91dCB1aW50IHhf dGhyZXNob2xkLCBvdXQgdWludCB5X3RocmVzaG9sZCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfbW90 aW9uX2Nvb3JkcyAob3V0IGZsb2F0IG1vdGlvbl94LCBvdXQgZmxvYXQgbW90aW9uX3kpOworKwkJ cHVibGljIHZvaWQgZ2V0X3ByZXNzX2Nvb3JkcyAob3V0IGZsb2F0IHByZXNzX3gsIG91dCBmbG9h dCBwcmVzc195KTsKKysJCXB1YmxpYyB2b2lkIHNldF9kcmFnX2FyZWEgKEdyYXBoZW5lLlJlY3Q/ IGRyYWdfYXJlYSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZHJhZ19heGlzIChDbHV0dGVyLkRyYWdB eGlzIGF4aXMpOworKwkJcHVibGljIHZvaWQgc2V0X2RyYWdfaGFuZGxlIChDbHV0dGVyLkFjdG9y PyBoYW5kbGUpOworKwkJcHVibGljIHZvaWQgc2V0X2RyYWdfdGhyZXNob2xkIChpbnQgeF90aHJl c2hvbGQsIGludCB5X3RocmVzaG9sZCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBkcmFnX2FyZWEg eyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgZHJhZ19hcmVhX3NldCB7IGdldDsgfQor KwkJcHVibGljIENsdXR0ZXIuRHJhZ0F4aXMgZHJhZ19heGlzIHsgZ2V0OyBzZXQ7IH0KKysJCXB1 YmxpYyBDbHV0dGVyLkFjdG9yIGRyYWdfaGFuZGxlIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIGludCB4X2RyYWdfdGhyZXNob2xkIHsgZ2V0OyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB5X2RyYWdfdGhyZXNob2xkIHsg Z2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRyYWdfYmVnaW4gKENs dXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGV2ZW50X3gsIGZsb2F0IGV2ZW50X3ksIENsdXR0ZXIu TW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBk cmFnX2VuZCAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZXZlbnRfeCwgZmxvYXQgZXZlbnRf eSwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCB2b2lkIGRyYWdfbW90aW9uIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBkZWx0YV94 LCBmbG9hdCBkZWx0YV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgYm9vbCBkcmFnX3Byb2dyZXNzIChDbHV0dGVyLkFjdG9yIGFjdG9y LCBmbG9hdCBkZWx0YV94LCBmbG9hdCBkZWx0YV95KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZHJvcF9h Y3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJs aWMgY2xhc3MgRHJvcEFjdGlvbiA6IENsdXR0ZXIuQWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlw dWJsaWMgRHJvcEFjdGlvbiAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGNhbl9k cm9wIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBldmVudF94LCBmbG9hdCBldmVudF95KTsK KysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRyb3AgKENsdXR0ZXIuQWN0b3IgYWN0b3Is IGZsb2F0IGV2ZW50X3gsIGZsb2F0IGV2ZW50X3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkcm9wX2NhbmNlbCAoQ2x1dHRlci5BY3RvciBh Y3RvciwgZmxvYXQgZXZlbnRfeCwgZmxvYXQgZXZlbnRfeSk7CisrCQlwdWJsaWMgdmlydHVhbCBz aWduYWwgdm9pZCBvdmVyX2luIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0 dWFsIHNpZ25hbCB2b2lkIG92ZXJfb3V0IChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0g ImNsdXR0ZXJfZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQi KV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIEVmZmVjdCA6IENsdXR0ZXIuQWN0b3JNZXRhIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3Rl ZCBFZmZlY3QgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBtb2Rp ZnlfcGFpbnRfdm9sdW1lIChDbHV0dGVyLlBhaW50Vm9sdW1lIHZvbHVtZSk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBwYWludCAoQ2x1dHRlci5QYWludENvbnRleHQg cGFpbnRfY29udGV4dCwgQ2x1dHRlci5FZmZlY3RQYWludEZsYWdzIGZsYWdzKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHBpY2sgKENsdXR0ZXIuUGlja0NvbnRleHQg cGlja19jb250ZXh0KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHBv c3RfcGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgcHJlX3BhaW50IChDbHV0dGVyLlBhaW50Q29u dGV4dCBwYWludF9jb250ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyB2b2lkIHF1ZXVlX3JlcGFpbnQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHki LCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ldmVu dF9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIp XQorKwlwdWJsaWMgY2xhc3MgRXZlbnQgeworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5 cGU7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJs aWMgRXZlbnQgKENsdXR0ZXIuRXZlbnRUeXBlIHR5cGUpOworKwkJcHVibGljIENsdXR0ZXIuRXZl bnQgY29weSAoKTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfYW5nbGUgKENsdXR0ZXIuRXZlbnQgdGFy Z2V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgZ2V0 X2F4ZXMgKG91dCB1aW50IG5fYXhlcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgdWludDMyIGdldF9idXR0b24gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdWludCBnZXRfY2xpY2tfY291bnQgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC40IildCisrCQlwdWJsaWMgdm9pZCBnZXRfY29vcmRzIChvdXQgZmxvYXQgeCwgb3V0 IGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3du ZWQgQ2x1dHRlci5JbnB1dERldmljZSBnZXRfZGV2aWNlICgpOworKwkJcHVibGljIGludCBnZXRf ZGV2aWNlX2lkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjgiKV0KKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuSW5wdXREZXZpY2VUb29sIGdldF9kZXZpY2VfdG9vbCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlVHlw ZSBnZXRfZGV2aWNlX3R5cGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJ cHVibGljIGZsb2F0IGdldF9kaXN0YW5jZSAoQ2x1dHRlci5FdmVudCB0YXJnZXQpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuRXZlbnRT ZXF1ZW5jZSBnZXRfZXZlbnRfc2VxdWVuY2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGdldF9mbGFncyAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMgdm9pZCBnZXRfZ2VzdHVyZV9tb3Rpb25f ZGVsdGEgKG91dCBkb3VibGUgZHgsIG91dCBkb3VibGUgZHkpOworKwkJcHVibGljIENsdXR0ZXIu VG91Y2hwYWRHZXN0dXJlUGhhc2UgZ2V0X2dlc3R1cmVfcGhhc2UgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfZ2VzdHVyZV9waW5jaF9hbmds ZV9kZWx0YSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMgZG91 YmxlIGdldF9nZXN0dXJlX3BpbmNoX3NjYWxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIHVpbnQxNiBnZXRfa2V5X2NvZGUgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgdWludCBnZXRfa2V5X3N5bWJvbCAoKTsKKysJCXB1Ymxp YyB1bmljaGFyIGdldF9rZXlfdW5pY29kZSAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9tb2RlX2dy b3VwICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3BhZF9ldmVudF9kZXRhaWxzIChvdXQgdWludCBu dW1iZXIsIG91dCB1aW50IG1vZGUsIG91dCBkb3VibGUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9wb3NpdGlvbiAoR3JhcGhlbmUuUG9p bnQgcG9zaXRpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVu b3duZWQgQ2x1dHRlci5BY3RvciBnZXRfcmVsYXRlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBnZXRfc2Nyb2xsX2RlbHRhIChvdXQgZG91YmxlIGR4 LCBvdXQgZG91YmxlIGR5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyBDbHV0dGVyLlNjcm9sbERpcmVjdGlvbiBnZXRfc2Nyb2xsX2RpcmVjdGlvbiAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjI2IildCisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxGaW5pc2hG bGFncyBnZXRfc2Nyb2xsX2ZpbmlzaF9mbGFncyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjI2IildCisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxTb3VyY2UgZ2V0X3Njcm9sbF9zb3VyY2Ug KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0 dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9zb3VyY2VfZGV2aWNlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRl ci5TdGFnZSBnZXRfc3RhZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlw dWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgZ2V0X3N0YXRlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9zdGF0ZV9mdWxsIChvdXQgQ2x1dHRl ci5Nb2RpZmllclR5cGUgYnV0dG9uX3N0YXRlLCBvdXQgQ2x1dHRlci5Nb2RpZmllclR5cGUgYmFz ZV9zdGF0ZSwgb3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGxhdGNoZWRfc3RhdGUsIG91dCBDbHV0 dGVyLk1vZGlmaWVyVHlwZSBsb2NrZWRfc3RhdGUsIG91dCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBl ZmZlY3RpdmVfc3RhdGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGlj IHVpbnQzMiBnZXRfdGltZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlw dWJsaWMgdWludCBnZXRfdG91Y2hwYWRfZ2VzdHVyZV9maW5nZXJfY291bnQgKCk7CisrCQlbQ0Nv ZGUgKGNuYW1lID0gImNsdXR0ZXJfZXZlbnRfdHlwZSIpXQorKwkJcHVibGljIENsdXR0ZXIuRXZl bnRUeXBlIGdldF90eXBlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBib29sIGhhc19jb250cm9sX21vZGlmaWVyICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGhhc19zaGlmdF9tb2RpZmllciAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBpc19wb2ludGVyX2VtdWxhdGVk ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgcHV0ICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2J1dHRv biAodWludDMyIGJ1dHRvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgdm9pZCBzZXRfY29vcmRzIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZXZpY2UgKENsdXR0ZXIuSW5wdXREZXZp Y2U/IGRldmljZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2RldmljZV90b29sIChDbHV0dGVyLklucHV0RGV2aWNlVG9vbD8gdG9vbCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZmxhZ3MgKENsdXR0 ZXIuRXZlbnRGbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlw dWJsaWMgdm9pZCBzZXRfa2V5X2NvZGUgKHVpbnQxNiBrZXlfY29kZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5X3N5bWJvbCAodWludCBrZXlf c3ltKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9r ZXlfdW5pY29kZSAodW5pY2hhciBrZXlfdW5pY29kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfcmVsYXRlZCAoQ2x1dHRlci5BY3Rvcj8gYWN0b3Ip OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zY3Jv bGxfZGVsdGEgKGRvdWJsZSBkeCwgZG91YmxlIGR5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zY3JvbGxfZGlyZWN0aW9uIChDbHV0dGVyLlNjcm9s bERpcmVjdGlvbiBkaXJlY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X3NvdXJjZSAoQ2x1dHRlci5BY3Rvcj8gYWN0b3IpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NvdXJjZV9kZXZpY2UgKENs dXR0ZXIuSW5wdXREZXZpY2U/IGRldmljZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44Iild CisrCQlwdWJsaWMgdm9pZCBzZXRfc3RhZ2UgKENsdXR0ZXIuU3RhZ2U/IHN0YWdlKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zdGF0ZSAoQ2x1dHRl ci5Nb2RpZmllclR5cGUgc3RhdGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X3RpbWUgKHVpbnQzMiB0aW1lXyk7CisrCQlwdWJsaWMgQ2x1dHRlci5B bnlFdmVudCBhbnkge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJBbnlFdmVudCAqKSIpXSAgZ2V0 OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5CdXR0b25FdmVudCBidXR0b24ge1tDQ29kZSAoY25hbWUg PSAiKENsdXR0ZXJCdXR0b25FdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5D cm9zc2luZ0V2ZW50IGNyb3NzaW5nIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyQ3Jvc3NpbmdF dmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5LZXlFdmVudCBrZXkge1tDQ29k ZSAoY25hbWUgPSAiKENsdXR0ZXJLZXlFdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1 dHRlci5Nb3Rpb25FdmVudCBtb3Rpb24ge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJNb3Rpb25F dmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxFdmVudCBzY3JvbGwg e1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJTY3JvbGxFdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlw dWJsaWMgQ2x1dHRlci5TdGFnZVN0YXRlRXZlbnQgc3RhZ2Vfc3RhdGUge1tDQ29kZSAoY25hbWUg PSAiKENsdXR0ZXJTdGFnZVN0YXRlRXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0 ZXIuVG91Y2hFdmVudCB0b3VjaCB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclRvdWNoRXZlbnQg KikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuVG91Y2hwYWRQaW5jaEV2ZW50IHRvdWNo cGFkX3BpbmNoIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91Y2hwYWRQaW5jaEV2ZW50ICop IildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNocGFkU3dpcGVFdmVudCB0b3VjaHBh ZF9zd2lwZSB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclRvdWNocGFkU3dpcGVFdmVudCAqKSIp XSAgZ2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0g ImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ldmVudF9zZXF1ZW5jZV9nZXRfdHlw ZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVi bGljIGNsYXNzIEV2ZW50U2VxdWVuY2UgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9maXhlZF9sYXlvdXRf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgY2xh c3MgRml4ZWRMYXlvdXQgOiBDbHV0dGVyLkxheW91dE1hbmFnZXIgeworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckxheW91dE1hbmFnZXIq IildCisrCQlwdWJsaWMgRml4ZWRMYXlvdXQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Zsb3dfbGF5 b3V0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGlj IGNsYXNzIEZsb3dMYXlvdXQgOiBDbHV0dGVyLkxheW91dE1hbmFnZXIgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckxheW91dE1hbmFn ZXIqIildCisrCQlwdWJsaWMgRmxvd0xheW91dCAoQ2x1dHRlci5GbG93T3JpZW50YXRpb24gb3Jp ZW50YXRpb24pOworKwkJcHVibGljIGZsb2F0IGdldF9jb2x1bW5fc3BhY2luZyAoKTsKKysJCXB1 YmxpYyB2b2lkIGdldF9jb2x1bW5fd2lkdGggKG91dCBmbG9hdCBtaW5fd2lkdGgsIG91dCBmbG9h dCBtYXhfd2lkdGgpOworKwkJcHVibGljIGJvb2wgZ2V0X2hvbW9nZW5lb3VzICgpOworKwkJcHVi bGljIENsdXR0ZXIuRmxvd09yaWVudGF0aW9uIGdldF9vcmllbnRhdGlvbiAoKTsKKysJCXB1Ymxp YyB2b2lkIGdldF9yb3dfaGVpZ2h0IChvdXQgZmxvYXQgbWluX2hlaWdodCwgb3V0IGZsb2F0IG1h eF9oZWlnaHQpOworKwkJcHVibGljIGZsb2F0IGdldF9yb3dfc3BhY2luZyAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgYm9vbCBnZXRfc25hcF90b19ncmlkICgp OworKwkJcHVibGljIHZvaWQgc2V0X2NvbHVtbl9zcGFjaW5nIChmbG9hdCBzcGFjaW5nKTsKKysJ CXB1YmxpYyB2b2lkIHNldF9jb2x1bW5fd2lkdGggKGZsb2F0IG1pbl93aWR0aCwgZmxvYXQgbWF4 X3dpZHRoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9ob21vZ2VuZW91cyAoYm9vbCBob21vZ2VuZW91 cyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb3JpZW50YXRpb24gKENsdXR0ZXIuRmxvd09yaWVudGF0 aW9uIG9yaWVudGF0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9yb3dfaGVpZ2h0IChmbG9hdCBt aW5faGVpZ2h0LCBmbG9hdCBtYXhfaGVpZ2h0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9yb3dfc3Bh Y2luZyAoZmxvYXQgc3BhY2luZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJ cHVibGljIHZvaWQgc2V0X3NuYXBfdG9fZ3JpZCAoYm9vbCBzbmFwX3RvX2dyaWQpOworKwkJcHVi bGljIGZsb2F0IGNvbHVtbl9zcGFjaW5nIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGhv bW9nZW5lb3VzIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IGZsb2F0IG1heF9jb2x1bW5fd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgZmxvYXQgbWF4X3Jvd19oZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZmxvYXQgbWluX2NvbHVtbl93aWR0aCB7IGdldDsg c2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9hdCBtaW5fcm93X2hl aWdodCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5GbG93T3JpZW50YXRpb24gb3Jp ZW50YXRpb24geyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBmbG9hdCByb3dfc3Bh Y2luZyB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVi bGljIGJvb2wgc25hcF90b19ncmlkIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfZ2Vz dHVyZV9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQor KwlwdWJsaWMgY2xhc3MgR2VzdHVyZUFjdGlvbiA6IENsdXR0ZXIuQWN0aW9uIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rpb24q IildCisrCQlwdWJsaWMgR2VzdHVyZUFjdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEyIildCisrCQlwdWJsaWMgdm9pZCBjYW5jZWwgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgYm9vbCBnZXN0dXJlX3ByZXBhcmUgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu SW5wdXREZXZpY2UgZ2V0X2RldmljZSAodWludCBwb2ludCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xNCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5FdmVudCBnZXRfbGFzdF9ldmVu dCAodWludCBwb2ludCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfbW90aW9uX2Nvb3JkcyAodWludCBw b2ludCwgb3V0IGZsb2F0IG1vdGlvbl94LCBvdXQgZmxvYXQgbW90aW9uX3kpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbW90aW9uX2RlbHRhICh1 aW50IHBvaW50LCBvdXQgZmxvYXQgZGVsdGFfeCwgb3V0IGZsb2F0IGRlbHRhX3kpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1aW50IGdldF9uX2N1cnJlbnRfcG9p bnRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBpbnQgZ2V0 X25fdG91Y2hfcG9pbnRzICgpOworKwkJcHVibGljIHZvaWQgZ2V0X3ByZXNzX2Nvb3JkcyAodWlu dCBwb2ludCwgb3V0IGZsb2F0IHByZXNzX3gsIG91dCBmbG9hdCBwcmVzc195KTsKKysJCXB1Ymxp YyB2b2lkIGdldF9yZWxlYXNlX2Nvb3JkcyAodWludCBwb2ludCwgb3V0IGZsb2F0IHJlbGVhc2Vf eCwgb3V0IGZsb2F0IHJlbGVhc2VfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5FdmVudFNlcXVlbmNlIGdldF9zZXF1ZW5jZSAodWlu dCBwb2ludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIHZvaWQg Z2V0X3RocmVzaG9sZF90cmlnZ2VyX2Rpc3RhbmNlIChvdXQgZmxvYXQgeCwgb3V0IGZsb2F0IHkp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdlc3R1 cmVUcmlnZ2VyRWRnZSBnZXRfdGhyZXNob2xkX3RyaWdnZXJfZWRnZSAoKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjIwIiwgc2luY2UgPSAi MS4xOCIpXQorKwkJcHVibGljIENsdXR0ZXIuR2VzdHVyZVRyaWdnZXJFZGdlIGdldF90aHJlc2hv bGRfdHJpZ2dlcl9lZ2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBmbG9hdCBnZXRfdmVsb2NpdHkgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCB2ZWxvY2l0eV94 LCBvdXQgZmxvYXQgdmVsb2NpdHlfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQor KwkJcHVibGljIHZvaWQgc2V0X25fdG91Y2hfcG9pbnRzIChpbnQgbmJfcG9pbnRzKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdGhyZXNob2xkX3Ry aWdnZXJfZGlzdGFuY2UgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90aHJlc2hvbGRfdHJpZ2dlcl9lZGdlIChDbHV0 dGVyLkdlc3R1cmVUcmlnZ2VyRWRnZSBlZGdlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2 IildCisrCQlwdWJsaWMgaW50IG5fdG91Y2hfcG9pbnRzIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyBm bG9hdCB0aHJlc2hvbGRfdHJpZ2dlcl9kaXN0YW5jZV94IHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1 YmxpYyBmbG9hdCB0aHJlc2hvbGRfdHJpZ2dlcl9kaXN0YW5jZV95IHsgZ2V0OyBjb25zdHJ1Y3Q7 IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgQ2x1dHRlci5HZXN0 dXJlVHJpZ2dlckVkZ2UgdGhyZXNob2xkX3RyaWdnZXJfZWRnZSB7IGdldDsgY29uc3RydWN0OyB9 CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBnZXN0dXJlX2JlZ2luIChDbHV0dGVyLkFj dG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGdlc3R1cmVfY2FuY2Vs IChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGdl c3R1cmVfZW5kIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25h bCBib29sIGdlc3R1cmVfcHJvZ3Jlc3MgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9ncmlkX2xheW91dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwlwdWJsaWMgY2xhc3MgR3JpZExheW91dCA6IENsdXR0ZXIuTGF5b3V0TWFuYWdl ciB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJD bHV0dGVyTGF5b3V0TWFuYWdlcioiKV0KKysJCXB1YmxpYyBHcmlkTGF5b3V0ICgpOworKwkJcHVi bGljIHZvaWQgYXR0YWNoIChDbHV0dGVyLkFjdG9yIGNoaWxkLCBpbnQgbGVmdCwgaW50IHRvcCwg aW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJCXB1YmxpYyB2b2lkIGF0dGFjaF9uZXh0X3RvIChD bHV0dGVyLkFjdG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nLCBDbHV0dGVyLkdyaWRQ b3NpdGlvbiBzaWRlLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5BY3RvciBnZXRfY2hpbGRfYXQgKGludCBsZWZ0LCBpbnQgdG9wKTsKKysJCXB1Ymxp YyBib29sIGdldF9jb2x1bW5faG9tb2dlbmVvdXMgKCk7CisrCQlwdWJsaWMgdWludCBnZXRfY29s dW1uX3NwYWNpbmcgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5PcmllbnRhdGlvbiBnZXRfb3JpZW50 YXRpb24gKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfcm93X2hvbW9nZW5lb3VzICgpOworKwkJcHVi bGljIHVpbnQgZ2V0X3Jvd19zcGFjaW5nICgpOworKwkJcHVibGljIHZvaWQgaW5zZXJ0X2NvbHVt biAoaW50IHBvc2l0aW9uKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF9uZXh0X3RvIChDbHV0dGVy LkFjdG9yIHNpYmxpbmcsIENsdXR0ZXIuR3JpZFBvc2l0aW9uIHNpZGUpOworKwkJcHVibGljIHZv aWQgaW5zZXJ0X3JvdyAoaW50IHBvc2l0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb2x1bW5f aG9tb2dlbmVvdXMgKGJvb2wgaG9tb2dlbmVvdXMpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbHVt bl9zcGFjaW5nICh1aW50IHNwYWNpbmcpOworKwkJcHVibGljIHZvaWQgc2V0X29yaWVudGF0aW9u IChDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9y b3dfaG9tb2dlbmVvdXMgKGJvb2wgaG9tb2dlbmVvdXMpOworKwkJcHVibGljIHZvaWQgc2V0X3Jv d19zcGFjaW5nICh1aW50IHNwYWNpbmcpOworKwkJcHVibGljIGJvb2wgY29sdW1uX2hvbW9nZW5l b3VzIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IGNvbHVtbl9zcGFjaW5nIHsgZ2V0OyBz ZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0aW9uIHsgZ2V0OyBz ZXQ7IH0KKysJCXB1YmxpYyBib29sIHJvd19ob21vZ2VuZW91cyB7IGdldDsgc2V0OyB9CisrCQlw dWJsaWMgdWludCByb3dfc3BhY2luZyB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dy b3VwX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGlj IGNsYXNzIEdyb3VwIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFu aW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9y KiIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBHcm91cCAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4yIildCisrCQlwdWJs aWMgaW50IGdldF9uX2NoaWxkcmVuICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X250aF9jaGlsZCAoaW50IGluZGV4Xyk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgcmVtb3ZlX2FsbCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW1hZ2VfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIElt YWdlIDogR0xpYi5PYmplY3QsIENsdXR0ZXIuQ29udGVudCB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQ29udGVudCoiKV0KKysJCXB1 YmxpYyBJbWFnZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuVGV4dHVyZSBnZXRfdGV4dHVy ZSAoKTsKKysJCXB1YmxpYyBib29sIHNldF9hcmVhIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZh bHNlKV0gdWludDhbXSBkYXRhLCBDb2dsLlBpeGVsRm9ybWF0IHBpeGVsX2Zvcm1hdCwgQ2Fpcm8u UmVjdGFuZ2xlSW50IHJlY3QsIHVpbnQgcm93X3N0cmlkZSkgdGhyb3dzIEdMaWIuRXJyb3I7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgc2V0X2J5dGVzIChH TGliLkJ5dGVzIGRhdGEsIENvZ2wuUGl4ZWxGb3JtYXQgcGl4ZWxfZm9ybWF0LCB1aW50IHdpZHRo LCB1aW50IGhlaWdodCwgdWludCByb3dfc3RyaWRlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCXB1 YmxpYyBib29sIHNldF9kYXRhIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gdWludDhb XSBkYXRhLCBDb2dsLlBpeGVsRm9ybWF0IHBpeGVsX2Zvcm1hdCwgdWludCB3aWR0aCwgdWludCBo ZWlnaHQsIHVpbnQgcm93X3N0cmlkZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2lucHV0X2RldmljZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgSW5wdXREZXZp Y2UgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSldCisrCQlwcm90ZWN0ZWQgSW5wdXREZXZpY2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS42IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9hc3Nv Y2lhdGVkX2RldmljZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1Ymxp YyBDbHV0dGVyLklucHV0QXhpcyBnZXRfYXhpcyAodWludCBpbmRleF8pOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2F4aXNfdmFsdWUgKFtDQ29kZSAo YXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBkb3VibGVbXSBheGVzLCBDbHV0dGVyLklucHV0QXhpcyBh eGlzLCBvdXQgZG91YmxlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CQlwdWJsaWMgYm9vbCBnZXRfY29vcmRzIChDbHV0dGVyLkV2ZW50U2VxdWVuY2U/IHNlcXVlbmNl LCBHcmFwaGVuZS5Qb2ludCBwb2ludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgaW50IGdldF9kZXZpY2VfaWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dE1vZGUgZ2V0X2RldmljZV9tb2RlICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9k ZXZpY2VfbmFtZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZGV2aWNlX25vZGUg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1 dERldmljZVR5cGUgZ2V0X2RldmljZV90eXBlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2VuYWJsZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfZ3JhYmJlZF9h Y3RvciAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGludCBnZXRfZ3JvdXBfbl9tb2RlcyAoaW50IGdy b3VwKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9o YXNfY3Vyc29yICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJv b2wgZ2V0X2tleSAodWludCBpbmRleF8sIG91dCB1aW50IGtleXZhbCwgb3V0IENsdXR0ZXIuTW9k aWZpZXJUeXBlIG1vZGlmaWVycyk7CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZU1hcHBp bmcgZ2V0X21hcHBpbmdfbW9kZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X21vZGVfc3dpdGNoX2J1 dHRvbl9ncm91cCAodWludCBidXR0b24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0K KysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBnZXRfbW9kaWZpZXJfc3RhdGUgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdWludCBnZXRfbl9heGVzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVpbnQgZ2V0X25fa2V5 cyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X25fbW9kZV9ncm91cHMgKCk7CisrCQlwdWJsaWMgaW50 IGdldF9uX3JpbmdzICgpOworKwkJcHVibGljIGludCBnZXRfbl9zdHJpcHMgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdl dF9wb2ludGVyX2FjdG9yICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIHVub3duZWQgQ2x1dHRlci5TdGFnZSBnZXRfcG9pbnRlcl9zdGFnZSAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIyIildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3Byb2R1 Y3RfaWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlNlYXQgZ2V0X3NlYXQgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgQ2x1 dHRlci5JbnB1dERldmljZT4gZ2V0X3NsYXZlX2RldmljZXMgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yMiIpXQorKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF92ZW5kb3JfaWQgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZ3JhYiAoQ2x1 dHRlci5BY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBib29sIGlzX2dyb3VwZWQgKENs dXR0ZXIuSW5wdXREZXZpY2Ugb3RoZXJfZGV2aWNlKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wg aXNfbW9kZV9zd2l0Y2hfYnV0dG9uICh1aW50IGdyb3VwLCB1aW50IGJ1dHRvbik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBrZXljb2RlX3Rv X2V2ZGV2ICh1aW50IGhhcmR3YXJlX2tleWNvZGUsIHVpbnQgZXZkZXZfa2V5Y29kZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3Rv ciBzZXF1ZW5jZV9nZXRfZ3JhYmJlZF9hY3RvciAoQ2x1dHRlci5FdmVudFNlcXVlbmNlIHNlcXVl bmNlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXF1 ZW5jZV9ncmFiIChDbHV0dGVyLkV2ZW50U2VxdWVuY2Ugc2VxdWVuY2UsIENsdXR0ZXIuQWN0b3Ig YWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNl cXVlbmNlX3VuZ3JhYiAoQ2x1dHRlci5FdmVudFNlcXVlbmNlIHNlcXVlbmNlKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9lbmFibGVkIChib29sIGVu YWJsZWQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2tleSAodWludCBpbmRleF8sIHVpbnQga2V5dmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2Rp ZmllcnMpOworKwkJcHVibGljIHZvaWQgc2V0X21hcHBpbmdfbW9kZSAoQ2x1dHRlci5JbnB1dERl dmljZU1hcHBpbmcgbWFwcGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgdW5ncmFiICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJ cHVibGljIHZvaWQgdXBkYXRlX2Zyb21fZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQsIGJvb2wg dXBkYXRlX3N0YWdlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHVw ZGF0ZV9mcm9tX3Rvb2wgKENsdXR0ZXIuSW5wdXREZXZpY2VUb29sIHRvb2wpOworKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ2x1 dHRlci5CYWNrZW5kIGJhY2tlbmQgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGlj IENsdXR0ZXIuSW5wdXRNb2RlIGRldmljZV9tb2RlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1 YmxpYyBzdHJpbmcgZGV2aWNlX25vZGUgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VUeXBlIGRldmlj ZV90eXBlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0K KysJCXB1YmxpYyBib29sIGVuYWJsZWQgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgaGFzX2N1cnNvciB7IGdldDsgY29uc3RydWN0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyBpbnQgaWQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuSW5w dXREZXZpY2VNYXBwaW5nIG1hcHBpbmdfbW9kZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdWludCBuX2F4ZXMgeyBnZXQ7IH0KKysJCXB1Ymxp YyBpbnQgbl9tb2RlX2dyb3VwcyB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgaW50IG5f cmluZ3MgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGludCBuX3N0cmlwcyB7IGdldDsg Y29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjIiKV0KKysJCXB1YmxpYyBzdHJpbmcgbmFtZSB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMiIpXQorKwkJcHVibGljIHN0cmluZyBwcm9kdWN0 X2lkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlNlYXQgc2VhdCB7IGdl dDsgY29uc3RydWN0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMiIpXQorKwkJcHVibGlj IHN0cmluZyB2ZW5kb3JfaWQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9p bnB1dF9kZXZpY2VfdG9vbF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3Mg SW5wdXREZXZpY2VUb29sIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIElucHV0RGV2aWNlVG9vbCAoKTsKKysJ CXB1YmxpYyB1aW50NjQgZ2V0X2lkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjgiKV0K KysJCXB1YmxpYyB1aW50NjQgZ2V0X3NlcmlhbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjI4IildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVRvb2xUeXBlIGdldF90b29sX3R5 cGUgKCk7CisrCQlwdWJsaWMgdWludDY0IGlkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1Ymxp YyB1aW50NjQgc2VyaWFsIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VUb29sVHlwZSB0eXBlIHsgZ2V0OyBjb25z dHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZm9jdXNfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGFic3RyYWN0IGNsYXNzIElucHV0Rm9jdXMgOiBHTGliLk9iamVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgSW5wdXRG b2N1cyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNvbW1pdF90 ZXh0IChzdHJpbmcgdGV4dCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9p ZCBkZWxldGVfc3Vycm91bmRpbmcgKHVpbnQgb2Zmc2V0LCB1aW50IGxlbik7CisrCQlwdWJsaWMg Ym9vbCBmaWx0ZXJfa2V5X2V2ZW50IChDbHV0dGVyLktleUV2ZW50IGtleSk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBmb2N1c19pbiAoQ2x1dHRlci5JbnB1dE1ldGhv ZCBpbnB1dF9tZXRob2QpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg Zm9jdXNfb3V0ICgpOworKwkJcHVibGljIGJvb2wgaXNfZm9jdXNlZCAoKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHJlcXVlc3Rfc3Vycm91bmRpbmcgKCk7CisrCQlw dWJsaWMgdm9pZCByZXNldCAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jYW5fc2hvd19wcmVlZGl0 IChib29sIGNhbl9zaG93X3ByZWVkaXQpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbnRlbnRfaGlu dHMgKENsdXR0ZXIuSW5wdXRDb250ZW50SGludEZsYWdzIGhpbnQpOworKwkJcHVibGljIHZvaWQg c2V0X2NvbnRlbnRfcHVycG9zZSAoQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJwb3NlIHB1cnBvc2Up OworKwkJcHVibGljIHZvaWQgc2V0X2N1cnNvcl9sb2NhdGlvbiAoR3JhcGhlbmUuUmVjdCByZWN0 KTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9wYW5lbF9zdGF0ZSAoQ2x1dHRlci5JbnB1dFBh bmVsU3RhdGUgc3RhdGUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg c2V0X3ByZWVkaXRfdGV4dCAoc3RyaW5nIHByZWVkaXQsIHVpbnQgY3Vyc29yKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9zdXJyb3VuZGluZyAoc3RyaW5nIHRleHQsIHVpbnQgY3Vyc29yLCB1aW50IGFu Y2hvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X21ldGhvZF9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgYWJzdHJhY3QgY2xhc3MgSW5wdXRNZXRob2QgOiBHTGliLk9iamVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgSW5wdXRN ZXRob2QgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBmaWx0ZXJf a2V5X2V2ZW50IChDbHV0dGVyLkV2ZW50IGtleSk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGZv Y3VzX2luIChDbHV0dGVyLklucHV0Rm9jdXMgYWN0b3IpOworKwkJcHVibGljIHZpcnR1YWwgdm9p ZCBmb2N1c19vdXQgKCk7CisrCQlwdWJsaWMgdm9pZCBmb3J3YXJkX2tleSAodWludDMyIGtleXZh bCwgdWludDMyIGtleWNvZGUsIHVpbnQzMiBzdGF0ZSwgdWludDY0IHRpbWVfLCBib29sIHByZXNz KTsKKysJCXB1YmxpYyB2b2lkIG5vdGlmeV9rZXlfZXZlbnQgKENsdXR0ZXIuRXZlbnQgZXZlbnQs IGJvb2wgZmlsdGVyZWQpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg cmVzZXQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzZXRfY3Vy c29yX2xvY2F0aW9uIChHcmFwaGVuZS5SZWN0IHJlY3QpOworKwkJcHVibGljIHZvaWQgc2V0X2lu cHV0X3BhbmVsX3N0YXRlIChDbHV0dGVyLklucHV0UGFuZWxTdGF0ZSBzdGF0ZSk7CisrCQlwdWJs aWMgdm9pZCBzZXRfcHJlZWRpdF90ZXh0IChzdHJpbmc/IHByZWVkaXQsIHVpbnQgY3Vyc29yKTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldF9zdXJyb3VuZGluZyAo c3RyaW5nIHRleHQsIHVpbnQgY3Vyc29yLCB1aW50IGFuY2hvcik7CisrCQlbTm9XcmFwcGVyXQor KwkJcHVibGljIHZpcnR1YWwgdm9pZCB1cGRhdGVfY29udGVudF9oaW50cyAoQ2x1dHRlci5JbnB1 dENvbnRlbnRIaW50RmxhZ3MgaGludCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1 YWwgdm9pZCB1cGRhdGVfY29udGVudF9wdXJwb3NlIChDbHV0dGVyLklucHV0Q29udGVudFB1cnBv c2UgcHVycG9zZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGNhbl9z aG93X3ByZWVkaXQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgQ2x1dHRlci5JbnB1dENvbnRlbnRIaW50RmxhZ3MgY29udGVudF9oaW50cyB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0Q29udGVu dFB1cnBvc2UgY29udGVudF9wdXJwb3NlIHsgZ2V0OyBzZXQ7IH0KKysJCVtIYXNFbWl0dGVyXQor KwkJcHVibGljIHNpZ25hbCB2b2lkIGNvbW1pdCAoc3RyaW5nIHRleHQpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIGN1cnNvcl9sb2NhdGlvbl9jaGFuZ2VkIChHcmFwaGVuZS5SZWN0IG9iamVjdCk7 CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkZWxldGVfc3Vycm91bmRp bmcgKHVpbnQgb2Zmc2V0LCB1aW50IGxlbik7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgaW5wdXRf cGFuZWxfc3RhdGUgKENsdXR0ZXIuSW5wdXRQYW5lbFN0YXRlIG9iamVjdCk7CisrCQlbSGFzRW1p dHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCByZXF1ZXN0X3N1cnJvdW5kaW5nICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl9pbnRlcnZhbF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBJbnRlcnZhbCA6IEdMaWIuSW5pdGlhbGx5VW5vd25l ZCwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlKV0KKysJCXB1YmxpYyBJbnRlcnZhbCAoR0xpYi5UeXBlIGd0eXBlLCAuLi4pOwor KwkJcHVibGljIENsdXR0ZXIuSW50ZXJ2YWwgY2xvbmUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBHTGliLlZhbHVlPyBjb21wdXRlIChkb3VibGUg ZmFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgY29tcHV0ZV92YWx1ZSAoZG91YmxlIGZh Y3Rvciwgb3V0IEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIEdMaWIuVmFsdWUgZ2V0X2Zp bmFsX3ZhbHVlICgpOworKwkJcHVibGljIEdMaWIuVmFsdWUgZ2V0X2luaXRpYWxfdmFsdWUgKCk7 CisrCQlwdWJsaWMgdm9pZCBnZXRfaW50ZXJ2YWwgKC4uLik7CisrCQlwdWJsaWMgR0xpYi5UeXBl IGdldF92YWx1ZV90eXBlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBib29sIGlzX3ZhbGlkICgpOworKwkJcHVibGljIHVub3duZWQgR0xpYi5WYWx1ZT8gcGVl a19maW5hbF92YWx1ZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdMaWIuVmFsdWU/IHBlZWtfaW5p dGlhbF92YWx1ZSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCByZWdpc3Rlcl9wcm9ncmVzc19m dW5jIChHTGliLlR5cGUgdmFsdWVfdHlwZSwgQ2x1dHRlci5Qcm9ncmVzc0Z1bmMgZnVuYyk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2ZpbmFsICgu Li4pOworKwkJcHVibGljIHZvaWQgc2V0X2ZpbmFsX3ZhbHVlIChHTGliLlZhbHVlIHZhbHVlKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfaW5pdGlh bCAoLi4uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbml0aWFsX3ZhbHVlIChHTGliLlZhbHVlIHZh bHVlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnRlcnZhbCAoLi4uKTsKKysJCXB1YmxpYyB2aXJ0 dWFsIGJvb2wgdmFsaWRhdGUgKEdMaWIuUGFyYW1TcGVjIHBzcGVjKTsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBJbnRlcnZhbC53aXRoX3Zh bHVlcyAoR0xpYi5UeXBlIGd0eXBlLCBHTGliLlZhbHVlPyBpbml0aWFsLCBHTGliLlZhbHVlPyBm aW5hbCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgR0xpYi5WYWx1ZSBmaW5hbCB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgR0xpYi5WYWx1ZSBpbml0aWFsIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBHTGli LlR5cGUgdmFsdWVfdHlwZSB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSld CisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFz cyBLZXlFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1 dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJ cHVibGljIHVpbnQxNiBoYXJkd2FyZV9rZXljb2RlOworKwkJcHVibGljIHVpbnQga2V5dmFsOwor KwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVyX3N0YXRlOworKwkJcHVibGlj IHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdl IHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRU eXBlIHR5cGU7CisrCQlwdWJsaWMgdW5pY2hhciB1bmljb2RlX3ZhbHVlOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9rZXlmcmFtZV90cmFuc2l0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBLZXlmcmFtZVRyYW5zaXRpb24gOiBDbHV0dGVy LlByb3BlcnR5VHJhbnNpdGlvbiwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJUcmFuc2l0aW9uKiIp XQorKwkJcHVibGljIEtleWZyYW1lVHJhbnNpdGlvbiAoc3RyaW5nIHByb3BlcnR5X25hbWUpOwor KwkJcHVibGljIHZvaWQgY2xlYXIgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfa2V5X2ZyYW1lICh1 aW50IGluZGV4Xywgb3V0IGRvdWJsZSBrZXksIG91dCBDbHV0dGVyLkFuaW1hdGlvbk1vZGUgbW9k ZSwgb3V0IEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIHVpbnQgZ2V0X25fa2V5X2ZyYW1l cyAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9rZXlfZnJhbWUgKHVpbnQgaW5kZXhfLCBkb3VibGUg a2V5LCBDbHV0dGVyLkFuaW1hdGlvbk1vZGUgbW9kZSwgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlw dWJsaWMgdm9pZCBzZXRfa2V5X2ZyYW1lcyAoW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAi bl9rZXlfZnJhbWVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlfbGVuZ3RoX3R5cGUg PSAiZ3VpbnQiKV0gZG91YmxlW10ga2V5X2ZyYW1lcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbW9k ZXMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fbW9kZXMiLCBhcnJheV9sZW5ndGhf cG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBDbHV0dGVyLkFuaW1hdGlv bk1vZGVbXSBtb2Rlcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdmFsdWVzIChbQ0NvZGUgKGFycmF5 X2xlbmd0aF9jbmFtZSA9ICJuX3ZhbHVlcyIsIGFycmF5X2xlbmd0aF9wb3MgPSAwLjUsIGFycmF5 X2xlbmd0aF90eXBlID0gImd1aW50IildIEdMaWIuVmFsdWVbXSB2YWx1ZXMpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9rZXltYXBfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIEtl eW1hcCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXByb3RlY3RlZCBLZXltYXAgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBib29s IGdldF9jYXBzX2xvY2tfc3RhdGUgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBQYW5nby5EaXJlY3Rp b24gZ2V0X2RpcmVjdGlvbiAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgZ2V0X251bV9sb2Nr X3N0YXRlICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHN0YXRlX2NoYW5nZWQgKCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX2xheWVyX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIExh eWVyTm9kZSA6IENsdXR0ZXIuUGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMg TGF5ZXJOb2RlIChDb2dsLk1hdHJpeCBwcm9qZWN0aW9uLCBDYWlyby5SZWN0YW5nbGUgdmlld3Bv cnQsIGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQsIHVpbnQ4IG9wYWNpdHkpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9sYXlvdXRfbWFuYWdlcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBMYXlvdXRNYW5hZ2VyIDogR0xpYi5J bml0aWFsbHlVbm93bmVkIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXByb3RlY3RlZCBMYXlvdXRNYW5hZ2VyICgpOworKwkJcHVibGljIHZpcnR1YWwg dm9pZCBhbGxvY2F0ZSAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFjdG9y Qm94IGFsbG9jYXRpb24sIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdzKTsKKysJCXB1Ymxp YyB2b2lkIGNoaWxkX2dldCAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFj dG9yIGFjdG9yLCAuLi4pOworKwkJcHVibGljIHZvaWQgY2hpbGRfZ2V0X3Byb3BlcnR5IChDbHV0 dGVyLkNvbnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3IsIHN0cmluZyBwcm9w ZXJ0eV9uYW1lLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCXB1YmxpYyB2b2lkIGNoaWxkX3NldCAo Q2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFjdG9yIGFjdG9yLCAuLi4pOwor KwkJcHVibGljIHZvaWQgY2hpbGRfc2V0X3Byb3BlcnR5IChDbHV0dGVyLkNvbnRhaW5lciBjb250 YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3IsIHN0cmluZyBwcm9wZXJ0eV9uYW1lLCBHTGliLlZh bHVlIHZhbHVlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIENs dXR0ZXIuTGF5b3V0TWV0YSBjcmVhdGVfY2hpbGRfbWV0YSAoQ2x1dHRlci5Db250YWluZXIgY29u dGFpbmVyLCBDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMg dmlydHVhbCB2b2lkIGVuZF9hbmltYXRpb24gKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHTGliLlBh cmFtU3BlYyBmaW5kX2NoaWxkX3Byb3BlcnR5IChzdHJpbmcgbmFtZSk7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgZG91YmxlIGdldF9hbmltYXRpb25fcHJvZ3Jlc3MgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkxh eW91dE1ldGEgZ2V0X2NoaWxkX21ldGEgKENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgQ2x1 dHRlci5BY3RvciBhY3Rvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgR0xp Yi5UeXBlIGdldF9jaGlsZF9tZXRhX3R5cGUgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGdl dF9wcmVmZXJyZWRfaGVpZ2h0IChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIGZsb2F0IGZv cl93aWR0aCwgb3V0IGZsb2F0IG1pbl9oZWlnaHRfcCwgb3V0IGZsb2F0IG5hdF9oZWlnaHRfcCk7 CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGdldF9wcmVmZXJyZWRfd2lkdGggKENsdXR0ZXIuQ29u dGFpbmVyIGNvbnRhaW5lciwgZmxvYXQgZm9yX2hlaWdodCwgb3V0IGZsb2F0IG1pbl93aWR0aF9w LCBvdXQgZmxvYXQgbmF0X3dpZHRoX3ApOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0g MC4xLCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXQorKwkJcHVibGljIEdMaWIuUGFyYW1T cGVjW10gbGlzdF9jaGlsZF9wcm9wZXJ0aWVzICgpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBz ZXRfY29udGFpbmVyIChDbHV0dGVyLkNvbnRhaW5lcj8gY29udGFpbmVyKTsKKysJCVtIYXNFbWl0 dGVyXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgbGF5b3V0X2NoYW5nZWQgKCk7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2xheW91dF9tZXRhX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIExheW91dE1ldGEgOiBDbHV0 dGVyLkNoaWxkTWV0YSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwcm90ZWN0ZWQgTGF5b3V0TWV0YSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuTGF5b3V0TWFuYWdlciBnZXRfbWFuYWdlciAoKTsKKysJCXB1YmxpYyBDbHV0dGVyLkxheW91 dE1hbmFnZXIgbWFuYWdlciB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2Jv eGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9tYXJnaW5fZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBNYXJnaW4geworKwkJcHVibGljIGZsb2F0IGJv dHRvbTsKKysJCXB1YmxpYyBmbG9hdCBsZWZ0OworKwkJcHVibGljIGZsb2F0IHJpZ2h0OworKwkJ cHVibGljIGZsb2F0IHRvcDsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXB1YmxpYyBNYXJnaW4gKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5NYXJnaW4gY29w eSAoKTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtD b21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBNb3Rp b25FdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIGRvdWJsZSBheGVzOworKwkJcHVi bGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5F dmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVy X3N0YXRlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMg d2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVi bGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1Ymxp YyBmbG9hdCB5OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9vZmZzY3JlZW5fZWZmZWN0X2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNz IE9mZnNjcmVlbkVmZmVjdCA6IENsdXR0ZXIuRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBPZmZzY3JlZW5FZmZlY3QgKCk7 CisrCQlwdWJsaWMgdmlydHVhbCBDb2dsLkhhbmRsZSBjcmVhdGVfdGV4dHVyZSAoZmxvYXQgd2lk dGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVi bGljIGJvb2wgZ2V0X3RhcmdldF9yZWN0IChvdXQgdW5vd25lZCBHcmFwaGVuZS5SZWN0IHJlY3Qp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTQiLCBzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBib29sIGdldF90YXJnZXRfc2l6ZSAob3V0 IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfdGV4dHVyZSAoKTsKKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgcGFpbnRfdGFyZ2V0IChDbHV0dGVyLlBhaW50Q29udGV4dCBw YWludF9jb250ZXh0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGFnZV90dXJuX2VmZmVjdF9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBQYWdl VHVybkVmZmVjdCA6IENsdXR0ZXIuRGVmb3JtRWZmZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3QqIildCisrCQlwdWJs aWMgUGFnZVR1cm5FZmZlY3QgKGRvdWJsZSBwZXJpb2QsIGRvdWJsZSBhbmdsZSwgZmxvYXQgcmFk aXVzKTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0X2FuZ2xlICgpOworKwkJcHVibGljIGRvdWJsZSBn ZXRfcGVyaW9kICgpOworKwkJcHVibGljIGZsb2F0IGdldF9yYWRpdXMgKCk7CisrCQlwdWJsaWMg dm9pZCBzZXRfYW5nbGUgKGRvdWJsZSBhbmdsZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGVyaW9k IChkb3VibGUgcGVyaW9kKTsKKysJCXB1YmxpYyB2b2lkIHNldF9yYWRpdXMgKGZsb2F0IHJhZGl1 cyk7CisrCQlwdWJsaWMgZG91YmxlIGFuZ2xlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBkb3Vi bGUgcGVyaW9kIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCByYWRpdXMgeyBnZXQ7IHNl dDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIHJlZl9mdW5jdGlvbiA9ICJjbHV0dGVyX3BhaW50X2NvbnRleHRfcmVmIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3BhaW50X2NvbnRleHRfZ2V0X3R5cGUgKCkiLCB1bnJlZl9mdW5jdGlvbiA9ICJj bHV0dGVyX3BhaW50X2NvbnRleHRfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFz cyBQYWludENvbnRleHQgeworKwkJcHVibGljIHZvaWQgZGVzdHJveSAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIENvZ2wuRnJhbWVidWZmZXIgZ2V0X2ZyYW1lYnVmZmVyICgpOworKwkJcHVibGljIHZv aWQgcG9wX2ZyYW1lYnVmZmVyICgpOworKwkJcHVibGljIHZvaWQgcHVzaF9mcmFtZWJ1ZmZlciAo Q29nbC5GcmFtZWJ1ZmZlciBmcmFtZWJ1ZmZlcik7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVy LlBhaW50Q29udGV4dCBAcmVmICgpOworKwkJcHVibGljIHZvaWQgdW5yZWYgKCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3BhaW50X25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIFBhaW50Tm9kZSB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgUGFpbnROb2Rl ICgpOworKwkJcHVibGljIHZvaWQgYWRkX2NoaWxkIChDbHV0dGVyLlBhaW50Tm9kZSBjaGlsZCk7 CisrCQlwdWJsaWMgdm9pZCBhZGRfbXVsdGl0ZXh0dXJlX3JlY3RhbmdsZSAoQ2x1dHRlci5BY3Rv ckJveCByZWN0LCBmbG9hdCB0ZXh0X2Nvb3JkcywgdWludCB0ZXh0X2Nvb3Jkc19sZW4pOworKwkJ cHVibGljIHZvaWQgYWRkX3JlY3RhbmdsZSAoQ2x1dHRlci5BY3RvckJveCByZWN0KTsKKysJCXB1 YmxpYyB2b2lkIGFkZF90ZXh0dXJlX3JlY3RhbmdsZSAoQ2x1dHRlci5BY3RvckJveCByZWN0LCBm bG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIpOworKwkJcHVibGljIHVu b3duZWQgQ29nbC5GcmFtZWJ1ZmZlciBnZXRfZnJhbWVidWZmZXIgKCk7CisrCQlwdWJsaWMgdm9p ZCBwYWludCAoQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCQlwdWJsaWMg dW5vd25lZCBDbHV0dGVyLlBhaW50Tm9kZSBAcmVmICgpOworKwkJcHVibGljIHZvaWQgc2V0X25h bWUgKHN0cmluZyBuYW1lKTsKKysJCXB1YmxpYyB2b2lkIHVucmVmICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24g PSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lk ID0gImNsdXR0ZXJfcGFpbnRfdm9sdW1lX2dldF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBQYWludFZvbHVtZSB7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ2x1dHRlci5QYWludFZvbHVt ZSBjb3B5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQg ZnJlZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBmbG9hdCBn ZXRfZGVwdGggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgZmxv YXQgZ2V0X2hlaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1Ymxp YyB2b2lkIGdldF9vcmlnaW4gKG91dCB1bm93bmVkIEdyYXBoZW5lLlBvaW50M0QgdmVydGV4KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfd2lkdGgg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGVw dGggKGZsb2F0IGRlcHRoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1Ymxp YyBib29sIHNldF9mcm9tX2FsbG9jYXRpb24gKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2hlaWdodCAoZmxvYXQg aGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9vcmlnaW4gKEdyYXBoZW5lLlBvaW50M0Qgb3JpZ2luKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF93aWR0aCAoZmxvYXQgd2lkdGgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgdW5pb24gKENsdXR0ZXIuUGFp bnRWb2x1bWUgYW5vdGhlcl9wdik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgdW5pb25fYm94IChDbHV0dGVyLkFjdG9yQm94IGJveCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX3Bhbl9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJcHVibGljIGNsYXNzIFBhbkFjdGlvbiA6IENsdXR0ZXIuR2VzdHVyZUFjdGlvbiB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0 dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIFBhbkFjdGlvbiAoKTsKKysJCXB1YmxpYyBkb3VibGUg Z2V0X2FjY2VsZXJhdGlvbl9mYWN0b3IgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIp XQorKwkJcHVibGljIGZsb2F0IGdldF9jb25zdHJhaW5lZF9tb3Rpb25fZGVsdGEgKHVpbnQgcG9p bnQsIG91dCBmbG9hdCBkZWx0YV94LCBvdXQgZmxvYXQgZGVsdGFfeSk7CisrCQlwdWJsaWMgZG91 YmxlIGdldF9kZWNlbGVyYXRpb24gKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfaW50ZXJwb2xhdGUg KCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfaW50ZXJwb2xhdGVkX2Nvb3JkcyAob3V0IGZsb2F0IGlu dGVycG9sYXRlZF94LCBvdXQgZmxvYXQgaW50ZXJwb2xhdGVkX3kpOworKwkJcHVibGljIGZsb2F0 IGdldF9pbnRlcnBvbGF0ZWRfZGVsdGEgKG91dCBmbG9hdCBkZWx0YV94LCBvdXQgZmxvYXQgZGVs dGFfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIHZvaWQgZ2V0 X21vdGlvbl9jb29yZHMgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCBtb3Rpb25feCwgb3V0IGZsb2F0 IG1vdGlvbl95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgZmxv YXQgZ2V0X21vdGlvbl9kZWx0YSAodWludCBwb2ludCwgb3V0IGZsb2F0IGRlbHRhX3gsIG91dCBm bG9hdCBkZWx0YV95KTsKKysJCXB1YmxpYyBDbHV0dGVyLlBhbkF4aXMgZ2V0X3Bhbl9heGlzICgp OworKwkJcHVibGljIHZvaWQgc2V0X2FjY2VsZXJhdGlvbl9mYWN0b3IgKGRvdWJsZSBmYWN0b3Ip OworKwkJcHVibGljIHZvaWQgc2V0X2RlY2VsZXJhdGlvbiAoZG91YmxlIHJhdGUpOworKwkJcHVi bGljIHZvaWQgc2V0X2ludGVycG9sYXRlIChib29sIHNob3VsZF9pbnRlcnBvbGF0ZSk7CisrCQlw dWJsaWMgdm9pZCBzZXRfcGFuX2F4aXMgKENsdXR0ZXIuUGFuQXhpcyBheGlzKTsKKysJCXB1Ymxp YyBkb3VibGUgYWNjZWxlcmF0aW9uX2ZhY3RvciB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgZG91 YmxlIGRlY2VsZXJhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBpbnRlcnBvbGF0 ZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5QYW5BeGlzIHBhbl9heGlzIHsgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIHBhbiAoQ2x1dHRlci5BY3Rv ciBhY3RvciwgYm9vbCBpc19pbnRlcnBvbGF0ZWQpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IHZvaWQgcGFuX3N0b3BwZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGxvd2VyX2Nhc2VfY3N1ZmZp eCA9ICJwYXJhbV91bml0cyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYXJhbV91bml0c19nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUGFyYW1TcGVjVW5pdCA6IEdMaWIuUGFyYW1TcGVjIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3Rl ZCBQYXJhbVNwZWNVbml0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYXRoX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNzIFBhdGggOiBHTGli LkluaXRpYWxseVVub3duZWQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJcHVibGljIFBhdGggKCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfY2Fpcm9fcGF0 aCAoQ2Fpcm8uUGF0aCBjcGF0aCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfY2xvc2UgKCk7CisrCQlw dWJsaWMgdm9pZCBhZGRfY3VydmVfdG8gKGludCB4XzEsIGludCB5XzEsIGludCB4XzIsIGludCB5 XzIsIGludCB4XzMsIGludCB5XzMpOworKwkJcHVibGljIHZvaWQgYWRkX2xpbmVfdG8gKGludCB4 LCBpbnQgeSk7CisrCQlwdWJsaWMgdm9pZCBhZGRfbW92ZV90byAoaW50IHgsIGludCB5KTsKKysJ CXB1YmxpYyB2b2lkIGFkZF9ub2RlIChDbHV0dGVyLlBhdGhOb2RlIG5vZGUpOworKwkJcHVibGlj IHZvaWQgYWRkX3JlbF9jdXJ2ZV90byAoaW50IHhfMSwgaW50IHlfMSwgaW50IHhfMiwgaW50IHlf MiwgaW50IHhfMywgaW50IHlfMyk7CisrCQlwdWJsaWMgdm9pZCBhZGRfcmVsX2xpbmVfdG8gKGlu dCB4LCBpbnQgeSk7CisrCQlwdWJsaWMgdm9pZCBhZGRfcmVsX21vdmVfdG8gKGludCB4LCBpbnQg eSk7CisrCQlwdWJsaWMgYm9vbCBhZGRfc3RyaW5nIChzdHJpbmcgc3RyKTsKKysJCXB1YmxpYyB2 b2lkIGNsZWFyICgpOworKwkJcHVibGljIHZvaWQgQGZvcmVhY2ggKENsdXR0ZXIuUGF0aENhbGxi YWNrIGNhbGxiYWNrKTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0X2Rlc2NyaXB0aW9uICgpOworKwkJ cHVibGljIHVpbnQgZ2V0X2xlbmd0aCAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9uX25vZGVzICgp OworKwkJcHVibGljIENsdXR0ZXIuUGF0aE5vZGUgZ2V0X25vZGUgKHVpbnQgaW5kZXhfKTsKKysJ CXB1YmxpYyBHTGliLlNMaXN0PHdlYWsgQ2x1dHRlci5QYXRoTm9kZT8+IGdldF9ub2RlcyAoKTsK KysJCXB1YmxpYyB1aW50IGdldF9wb3NpdGlvbiAoZG91YmxlIHByb2dyZXNzLCBvdXQgQ2x1dHRl ci5Lbm90IHBvc2l0aW9uKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF9ub2RlIChpbnQgaW5kZXhf LCBDbHV0dGVyLlBhdGhOb2RlIG5vZGUpOworKwkJcHVibGljIHZvaWQgcmVtb3ZlX25vZGUgKHVp bnQgaW5kZXhfKTsKKysJCXB1YmxpYyB2b2lkIHJlcGxhY2Vfbm9kZSAodWludCBpbmRleF8sIENs dXR0ZXIuUGF0aE5vZGUgbm9kZSk7CisrCQlwdWJsaWMgYm9vbCBzZXRfZGVzY3JpcHRpb24gKHN0 cmluZyBzdHIpOworKwkJcHVibGljIHZvaWQgdG9fY2Fpcm9fcGF0aCAoQ2Fpcm8uQ29udGV4dCBj cik7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJs aWMgUGF0aC53aXRoX2Rlc2NyaXB0aW9uIChzdHJpbmcgZGVzYyk7CisrCQlwdWJsaWMgc3RyaW5n IGRlc2NyaXB0aW9uIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IGxlbmd0aCB7 IGdldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYXRoX2NvbnN0cmFpbnRfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgY2xhc3MgUGF0aENvbnN0cmFp bnQgOiBDbHV0dGVyLkNvbnN0cmFpbnQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckNvbnN0cmFpbnQqIildCisrCQlwdWJsaWMgUGF0 aENvbnN0cmFpbnQgKENsdXR0ZXIuUGF0aD8gcGF0aCwgZmxvYXQgb2Zmc2V0KTsKKysJCXB1Ymxp YyBmbG9hdCBnZXRfb2Zmc2V0ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5QYXRoIGdl dF9wYXRoICgpOworKwkJcHVibGljIHZvaWQgc2V0X29mZnNldCAoZmxvYXQgb2Zmc2V0KTsKKysJ CXB1YmxpYyB2b2lkIHNldF9wYXRoIChDbHV0dGVyLlBhdGg/IHBhdGgpOworKwkJcHVibGljIGZs b2F0IG9mZnNldCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5QYXRoIHBhdGggeyBn ZXQ7IHNldDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIG5vZGVfcmVhY2hlZCAoQ2x1dHRlci5B Y3RvciBhY3RvciwgdWludCBpbmRleCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgcmVmX2Z1bmN0aW9uID0gImNsdXR0ZXJfcGlja19jb250 ZXh0X3JlZiIsIHR5cGVfaWQgPSAiY2x1dHRlcl9waWNrX2NvbnRleHRfZ2V0X3R5cGUgKCkiLCB1 bnJlZl9mdW5jdGlvbiA9ICJjbHV0dGVyX3BpY2tfY29udGV4dF91bnJlZiIpXQorKwlbQ29tcGFj dF0KKysJcHVibGljIGNsYXNzIFBpY2tDb250ZXh0IHsKKysJCXB1YmxpYyB2b2lkIGRlc3Ryb3kg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlBpY2tDb250ZXh0IEByZWYgKCk7CisrCQlw dWJsaWMgdm9pZCB1bnJlZiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGlwZWxpbmVfbm9kZV9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3Mg UGlwZWxpbmVOb2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFBpcGVsaW5lTm9kZSAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfcHJvcGVydHlfdHJhbnNpdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgUHJvcGVydHlUcmFuc2l0aW9u IDogQ2x1dHRlci5UcmFuc2l0aW9uLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclRyYW5zaXRpb24q IildCisrCQlwdWJsaWMgUHJvcGVydHlUcmFuc2l0aW9uIChzdHJpbmc/IHByb3BlcnR5X25hbWUp OworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9wcm9wZXJ0eV9uYW1lICgpOworKwkJcHVi bGljIHZvaWQgc2V0X3Byb3BlcnR5X25hbWUgKHN0cmluZz8gcHJvcGVydHlfbmFtZSk7CisrCQlw dWJsaWMgc3RyaW5nIHByb3BlcnR5X25hbWUgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRl cl9yZWN0YW5nbGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQor KwlwdWJsaWMgY2xhc3MgUmVjdGFuZ2xlIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9y LCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFi bGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAi Q2x1dHRlckFjdG9yKiIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBSZWN0YW5nbGUgKCk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0g IjAuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2JvcmRlcl9jb2xvciAoKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwg c2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdWludCBnZXRfYm9yZGVyX3dpZHRoICgpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9jb2xvciAoKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfYm9yZGVyX2NvbG9yIChDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4y IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYm9yZGVyX3dpZHRoICh1aW50IHdpZHRoKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgdm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIp XQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyBSZWN0YW5nbGUud2l0aF9jb2xvciAoQ2x1dHRlci5Db2xvciBjb2xv cik7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBib3JkZXJfY29sb3IgeyBnZXQ7IHNldDsgfQor KwkJcHVibGljIHVpbnQgYm9yZGVyX3dpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0 dGVyLkNvbG9yIGNvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ cHVibGljIGJvb2wgaGFzX2JvcmRlciB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Jv b3Rfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUm9vdE5vZGUgOiBDbHV0dGVy LlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwg dHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIFJvb3ROb2RlIChDb2dsLkZy YW1lYnVmZmVyIGZyYW1lYnVmZmVyLCBDbHV0dGVyLkNvbG9yIGNsZWFyX2NvbG9yLCBDb2dsLkJ1 ZmZlckJpdCBjbGVhcl9mbGFncyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JvdGF0ZV9hY3Rpb25fZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNz IFJvdGF0ZUFjdGlvbiA6IENsdXR0ZXIuR2VzdHVyZUFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19j b25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJ cHVibGljIFJvdGF0ZUFjdGlvbiAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIHJv dGF0ZSAoQ2x1dHRlci5BY3RvciBhY3RvciwgZG91YmxlIGFuZ2xlKTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0 ZXJfc2NyaXB0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJ cHVibGljIGNsYXNzIFNjcmlwdCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBTY3JpcHQgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBhZGRfc2VhcmNoX3BhdGhzIChbQ0Nv ZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3BhdGhzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDEu MSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3NpemUiKV0gc3RyaW5nW10gcGF0aHMpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5j ZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9zdGF0ZXMgKHN0cmluZz8gbmFtZSwgQ2x1 dHRlci5TdGF0ZSBzdGF0ZSk7CisrCQlwdWJsaWMgdm9pZCBjb25uZWN0X3NpZ25hbHMgKHZvaWQq IHVzZXJfZGF0YSk7CisrCQlwdWJsaWMgdm9pZCBjb25uZWN0X3NpZ25hbHNfZnVsbCAoQ2x1dHRl ci5TY3JpcHRDb25uZWN0RnVuYyBmdW5jKTsKKysJCXB1YmxpYyB2b2lkIGVuc3VyZV9vYmplY3Rz ICgpOworKwkJcHVibGljIHVub3duZWQgR0xpYi5PYmplY3QgZ2V0X29iamVjdCAoc3RyaW5nIG5h bWUpOworKwkJcHVibGljIGludCBnZXRfb2JqZWN0cyAoLi4uKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS44Iild CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlN0YXRlIGdldF9zdGF0ZXMgKHN0cmluZz8gbmFt ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgc3Ry aW5nIGdldF90cmFuc2xhdGlvbl9kb21haW4gKCk7CisrCQlwdWJsaWMgdmlydHVhbCBHTGliLlR5 cGUgZ2V0X3R5cGVfZnJvbV9uYW1lIChzdHJpbmcgdHlwZV9uYW1lKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBHTGliLk9iamVjdD4gbGlz dF9vYmplY3RzICgpOworKwkJcHVibGljIHVpbnQgbG9hZF9mcm9tX2RhdGEgKHN0cmluZyBkYXRh LCBzc2l6ZV90IGxlbmd0aCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJsaWMgdWludCBsb2Fk X2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdWludCBsb2FkX2Zyb21fcmVzb3VyY2Ug KHN0cmluZyByZXNvdXJjZV9wYXRoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdHJpbmcgbG9va3VwX2ZpbGVuYW1lIChzdHJpbmcg ZmlsZW5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF90cmFuc2xhdGlvbl9kb21haW4gKHN0cmluZz8gZG9tYWluKTsKKysJCXB1YmxpYyB2b2lk IHVubWVyZ2Vfb2JqZWN0cyAodWludCBtZXJnZV9pZCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCXB1YmxpYyBzdHJpbmcgZmlsZW5hbWUgeyBvd25lZCBnZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIGJvb2wgZmlsZW5hbWVfc2V0IHsgZ2V0OyB9CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0cmluZyB0cmFuc2xhdGlvbl9kb21haW4g eyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3JvbGxfYWN0b3JfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNzIFNjcm9sbEFj dG9yIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUs IENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJ cHVibGljIFNjcm9sbEFjdG9yICgpOworKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsTW9kZSBnZXRf c2Nyb2xsX21vZGUgKCk7CisrCQlwdWJsaWMgdm9pZCBzY3JvbGxfdG9fcG9pbnQgKEdyYXBoZW5l LlBvaW50IHBvaW50KTsKKysJCXB1YmxpYyB2b2lkIHNjcm9sbF90b19yZWN0IChHcmFwaGVuZS5S ZWN0IHJlY3QpOworKwkJcHVibGljIHZvaWQgc2V0X3Njcm9sbF9tb2RlIChDbHV0dGVyLlNjcm9s bE1vZGUgbW9kZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxNb2RlIHNjcm9sbF9tb2RlIHsg Z2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9u IChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIFNjcm9sbEV2ZW50IDogQ2x1dHRlci5F dmVudCB7CisrCQlwdWJsaWMgZG91YmxlIGF4ZXM7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklu cHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbERpcmVjdGlvbiBkaXJl Y3Rpb247CisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxGaW5pc2hGbGFncyBmaW5pc2hfZmxhZ3M7 CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIENsdXR0ZXIu TW9kaWZpZXJUeXBlIG1vZGlmaWVyX3N0YXRlOworKwkJcHVibGljIENsdXR0ZXIuU2Nyb2xsU291 cmNlIHNjcm9sbF9zb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsK KysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRp bWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyBmbG9hdCB4 OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NlYXRfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIFNlYXQgOiBHTGliLk9iamVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2VhdCAo KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGFwcGx5X2tiZF9hMTF5 X3NldHRpbmdzIChDbHV0dGVyLktiZEExMXlTZXR0aW5ncyBzZXR0aW5ncyk7CisrCQlwdWJsaWMg dmlydHVhbCB2b2lkIGJlbGxfbm90aWZ5ICgpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBjb21w cmVzc19tb3Rpb24gKENsdXR0ZXIuRXZlbnQgZXZlbnQsIENsdXR0ZXIuRXZlbnQgdG9fZGlzY2Fy ZCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBjb3B5X2V2ZW50X2Rh dGEgKENsdXR0ZXIuRXZlbnQgc3JjLCBDbHV0dGVyLkV2ZW50IGRlc3QpOworKwkJcHVibGljIHZp cnR1YWwgQ2x1dHRlci5WaXJ0dWFsSW5wdXREZXZpY2UgY3JlYXRlX3ZpcnR1YWxfZGV2aWNlIChD bHV0dGVyLklucHV0RGV2aWNlVHlwZSBkZXZpY2VfdHlwZSk7CisrCQlwdWJsaWMgdm9pZCBlbnN1 cmVfYTExeV9zdGF0ZSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lk IGZyZWVfZXZlbnRfZGF0YSAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCQlwdWJsaWMgdm9pZCBn ZXRfa2JkX2ExMXlfc2V0dGluZ3MgKENsdXR0ZXIuS2JkQTExeVNldHRpbmdzIHNldHRpbmdzKTsK KysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5JbnB1dERldmljZSBnZXRfa2V5Ym9h cmQgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIENsdXR0ZXIuS2V5bWFwIGdldF9rZXlt YXAgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIENsdXR0ZXIuSW5wdXREZXZpY2UgZ2V0 X3BvaW50ZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcG9pbnRlcl9hMTF5X3NldHRpbmdzIChD bHV0dGVyLlBvaW50ZXJBMTF5U2V0dGluZ3Mgc2V0dGluZ3MpOworKwkJcHVibGljIHZpcnR1YWwg Q2x1dHRlci5WaXJ0dWFsRGV2aWNlVHlwZSBnZXRfc3VwcG9ydGVkX3ZpcnR1YWxfZGV2aWNlX3R5 cGVzICgpOworKwkJcHVibGljIHZpcnR1YWwgR0xpYi5MaXN0PHdlYWsgQ2x1dHRlci5JbnB1dERl dmljZT4gbGlzdF9kZXZpY2VzICgpOworKwkJcHVibGljIHZvaWQgc2V0X2tiZF9hMTF5X3NldHRp bmdzIChDbHV0dGVyLktiZEExMXlTZXR0aW5ncyBzZXR0aW5ncyk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfcG9pbnRlcl9hMTF5X2R3ZWxsX2NsaWNrX3R5cGUgKENsdXR0ZXIuUG9pbnRlckExMXlEd2Vs bENsaWNrVHlwZSBjbGlja190eXBlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9wb2ludGVyX2ExMXlf c2V0dGluZ3MgKENsdXR0ZXIuUG9pbnRlckExMXlTZXR0aW5ncyBzZXR0aW5ncyk7CisrCQlwdWJs aWMgdmlydHVhbCB2b2lkIHdhcnBfcG9pbnRlciAoaW50IHgsIGludCB5KTsKKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuQmFja2VuZCBiYWNrZW5kIHsgb3duZWQgZ2V0 OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkZXZpY2VfYWRkZWQgKENsdXR0 ZXIuSW5wdXREZXZpY2Ugb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkZXZpY2VfcmVt b3ZlZCAoQ2x1dHRlci5JbnB1dERldmljZSBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lk IGtiZF9hMTF5X2ZsYWdzX2NoYW5nZWQgKHVpbnQgc2V0dGluZ3NfZmxhZ3MsIHVpbnQgY2hhbmdl ZF9tYXNrKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBrYmRfYTExeV9tb2RzX3N0YXRlX2NoYW5n ZWQgKHVpbnQgbGF0Y2hlZF9tYXNrLCB1aW50IGxvY2tlZF9tYXNrKTsKKysJCXB1YmxpYyBzaWdu YWwgdm9pZCBwdHJfYTExeV9kd2VsbF9jbGlja190eXBlX2NoYW5nZWQgKENsdXR0ZXIuUG9pbnRl ckExMXlEd2VsbENsaWNrVHlwZSBjbGlja190eXBlKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBw dHJfYTExeV90aW1lb3V0X3N0YXJ0ZWQgKENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlLCBDbHV0 dGVyLlBvaW50ZXJBMTF5VGltZW91dFR5cGUgdGltZW91dF90eXBlLCB1aW50IGRlbGF5KTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBwdHJfYTExeV90aW1lb3V0X3N0b3BwZWQgKENsdXR0ZXIuSW5w dXREZXZpY2UgZGV2aWNlLCBDbHV0dGVyLlBvaW50ZXJBMTF5VGltZW91dFR5cGUgdGltZW91dF90 eXBlLCBib29sIGNsaWNrZWQpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHRvb2xfY2hhbmdlZCAo Q2x1dHRlci5JbnB1dERldmljZSBvYmplY3QsIENsdXR0ZXIuSW5wdXREZXZpY2VUb29sIHAwKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfc2V0dGluZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgU2V0dGluZ3MgOiBHTGliLk9iamVjdCB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQg U2V0dGluZ3MgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5TZXR0aW5ncyBn ZXRfZGVmYXVsdCAoKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjQiKV0K KysJCXB1YmxpYyBDbHV0dGVyLkJhY2tlbmQgYmFja2VuZCB7IGNvbnN0cnVjdDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMg aW50IGRuZF9kcmFnX3RocmVzaG9sZCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBpbnQgZG91YmxlX2NsaWNrX2Rpc3RhbmNlIHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBkb3VibGVfY2xpY2tfdGltZSB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgZm9udF9hbnRp YWxpYXMgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50 IGZvbnRfZHBpIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IHN0cmluZyBmb250X2hpbnRfc3R5bGUgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGZvbnRfaGludGluZyB7IGdldDsgc2V0OyB9CisrCQlb Tm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBzdHJpbmcgZm9udF9uYW1lIHsgb3duZWQgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHN0cmluZyBmb250X3N1 YnBpeGVsX29yZGVyIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIHVpbnQgZm9udGNvbmZpZ190aW1lc3RhbXAgeyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBs b25nX3ByZXNzX2R1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQor KwkJcHVibGljIHVpbnQgcGFzc3dvcmRfaGludF90aW1lIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB1bnNjYWxlZF9mb250X2RwaSB7IHNldDsgfQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFNoYWRlciB7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3NoYWRlcl9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgU2hhZGVyRWZmZWN0IDogQ2x1dHRl ci5PZmZzY3JlZW5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJCXB1YmxpYyBTaGFkZXJFZmZlY3QgKENsdXR0ZXIuU2hhZGVyVHlwZSBzaGFkZXJf dHlwZSk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfcHJvZ3JhbSAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIENvZ2wuSGFuZGxlIGdldF9zaGFkZXIgKCk7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIHZpcnR1YWwgc3RyaW5nIGdldF9zdGF0aWNfc2hhZGVyX3NvdXJjZSAoKTsK KysJCXB1YmxpYyBib29sIHNldF9zaGFkZXJfc291cmNlIChzdHJpbmcgc291cmNlKTsKKysJCXB1 YmxpYyB2b2lkIHNldF91bmlmb3JtX3ZhbHVlIChzdHJpbmcgbmFtZSwgR0xpYi5WYWx1ZSB2YWx1 ZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLlNoYWRlclR5cGUg c2hhZGVyX3R5cGUgeyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2hhZGVyX2Zsb2F0 X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTaGFkZXJGbG9hdCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2hhZGVyRmxv YXQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NoYWRlcl9pbnRfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGNsYXNzIFNoYWRlckludCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2hhZGVySW50ICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9z aGFkZXJfbWF0cml4X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTaGFkZXJNYXRyaXgg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVj dGVkIFNoYWRlck1hdHJpeCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc25hcF9jb25zdHJhaW50X2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJcHVibGljIGNsYXNz IFNuYXBDb25zdHJhaW50IDogQ2x1dHRlci5Db25zdHJhaW50IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJDb25zdHJhaW50KiIpXQor KwkJcHVibGljIFNuYXBDb25zdHJhaW50IChDbHV0dGVyLkFjdG9yPyBzb3VyY2UsIENsdXR0ZXIu U25hcEVkZ2UgZnJvbV9lZGdlLCBDbHV0dGVyLlNuYXBFZGdlIHRvX2VkZ2UsIGZsb2F0IG9mZnNl dCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfZWRnZXMgKG91dCBDbHV0dGVyLlNuYXBFZGdlIGZyb21f ZWRnZSwgb3V0IENsdXR0ZXIuU25hcEVkZ2UgdG9fZWRnZSk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0 X29mZnNldCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3NvdXJjZSAo KTsKKysJCXB1YmxpYyB2b2lkIHNldF9lZGdlcyAoQ2x1dHRlci5TbmFwRWRnZSBmcm9tX2VkZ2Us IENsdXR0ZXIuU25hcEVkZ2UgdG9fZWRnZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb2Zmc2V0IChm bG9hdCBvZmZzZXQpOworKwkJcHVibGljIHZvaWQgc2V0X3NvdXJjZSAoQ2x1dHRlci5BY3Rvcj8g c291cmNlKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU25hcEVk Z2UgZnJvbV9lZGdlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgZmxvYXQgb2Zm c2V0IHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBzb3Vy Y2UgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIENsdXR0ZXIuU25hcEVkZ2UgdG9fZWRnZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl9zdGFnZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MC4yIildCisrCXB1YmxpYyBjbGFzcyBTdGFnZSA6IENsdXR0ZXIuR3JvdXAsIEF0ay5JbXBsZW1l bnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3Jp cHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBl ID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyBTdGFnZSAoKTsKKysJCXB1YmxpYyBib29sIGNhcHR1cmUgKGJvb2wgcGFpbnQsIENhaXJv LlJlY3RhbmdsZUludCByZWN0LCBDbHV0dGVyLkNhcHR1cmUgY2FwdHVyZXMsIGludCBuX2NhcHR1 cmVzKTsKKysJCXB1YmxpYyB2b2lkIGNhcHR1cmVfaW50byAoYm9vbCBwYWludCwgQ2Fpcm8uUmVj dGFuZ2xlSW50IHJlY3QsIHVpbnQ4IGRhdGEpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVy X3N0YWdlX2V2ZW50IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMg Ym9vbCBlbWl0X2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBlbnN1cmVfY3Vy cmVudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGVu c3VyZV9yZWRyYXcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dm9pZCBlbnN1cmVfdmlld3BvcnQgKCk7CisrCQlwdWJsaWMgdm9pZCBmcmVlemVfdXBkYXRlcyAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9hY2Nl cHRfZm9jdXMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9hY3Rvcl9h dF9wb3MgKENsdXR0ZXIuUGlja01vZGUgcGlja19tb2RlLCBmbG9hdCB4LCBmbG9hdCB5KTsKKysJ CXB1YmxpYyBib29sIGdldF9jYXB0dXJlX2ZpbmFsX3NpemUgKENhaXJvLlJlY3RhbmdsZUludCBy ZWN0LCBpbnQgd2lkdGgsIGludCBoZWlnaHQsIGZsb2F0IHNjYWxlKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg Q2x1dHRlci5Db2xvciBnZXRfY29sb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IENsdXR0ZXIuU3RhZ2UgZ2V0X2RlZmF1bHQgKCk7CisrCQlwdWJsaWMgaW50NjQgZ2V0X2ZyYW1l X2NvdW50ZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdW5v d25lZCBDbHV0dGVyLkFjdG9yIGdldF9rZXlfZm9jdXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBnZXRfbWluaW11bV9zaXplIChvdXQgdWludCB3aWR0 aCwgb3V0IHVpbnQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyBib29sIGdldF9tb3Rpb25fZXZlbnRzX2VuYWJsZWQgKCk7CisrCQlwdWJsaWMgQ2x1dHRl ci5QZXJzcGVjdGl2ZSBnZXRfcGVyc3BlY3RpdmUgKCk7CisrCQlwdWJsaWMgQ2Fpcm8uUmVnaW9u IGdldF9yZWRyYXdfY2xpcCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBib29sIGdldF90aHJvdHRsZV9tb3Rpb25fZXZlbnRzICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNCIpXQorKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF90aXRsZSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF91c2VfYWxwaGEg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdm9pZCBoaWRlX2N1 cnNvciAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEwIiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBpc19kZWZhdWx0ICgp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTAiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIHF1ZXVlX3JlZHJhdyAoKTsKKysJ CVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHVpbnQ4W10gcmVhZF9w aXhlbHMgKGludCB4LCBpbnQgeSwgaW50IHdpZHRoID0gLTEsIGludCBoZWlnaHQgPSAtMSk7Cisr CQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfcmVkcmF3IildCisrCQlwdWJsaWMgdm9pZCByZWRy YXcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRf YWNjZXB0X2ZvY3VzIChib29sIGFjY2VwdF9mb2N1cyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2NvbG9yIChDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9rZXlfZm9jdXMgKENsdXR0ZXIuQWN0b3I/IGFjdG9yKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9taW5pbXVt X3NpemUgKHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9tb3Rpb25fZXZlbnRzX2VuYWJsZWQgKGJvb2wgZW5h YmxlZCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGVyc3BlY3RpdmUgKENsdXR0ZXIuUGVyc3BlY3Rp dmUgcGVyc3BlY3RpdmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X3Rocm90dGxlX21vdGlvbl9ldmVudHMgKGJvb2wgdGhyb3R0bGUpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RpdGxlIChzdHJpbmcg dGl0bGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0 X3VzZV9hbHBoYSAoYm9vbCB1c2VfYWxwaGEpOworKwkJcHVibGljIHZvaWQgc2hvd19jdXJzb3Ig KCk7CisrCQlwdWJsaWMgdm9pZCB0aGF3X3VwZGF0ZXMgKCk7CisrCQlwdWJsaWMgdm9pZCB1cGRh dGVfcmVzb3VyY2Vfc2NhbGVzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJ cHVibGljIGJvb2wgYWNjZXB0X2ZvY3VzIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1 dHRlci5Db2xvciBjb2xvciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBib29sIGN1cnNvcl92aXNpYmxlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGtleV9mb2N1cyB7IGdldDsg c2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgQ2x1dHRlci5Q ZXJzcGVjdGl2ZSBwZXJzcGVjdGl2ZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC40IildCisrCQlwdWJsaWMgc3RyaW5nIHRpdGxlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIHVzZV9hbHBoYSB7IGdldDsgc2V0 OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgdm9pZCBhY3RpdmF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIwIildCisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgYWZ0ZXJfcGFpbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkZWFjdGl2YXRlICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wg ZGVsZXRlX2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCB2b2lkIHBhaW50X3ZpZXcgKENsdXR0ZXIuU3RhZ2VWaWV3IHZpZXcpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9zdGFnZV9tYW5hZ2VyX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJcHVibGljIGNsYXNzIFN0YWdlTWFuYWdlciA6IEdMaWIuT2JqZWN0IHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBT dGFnZU1hbmFnZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMg c3RhdGljIHVub3duZWQgQ2x1dHRlci5TdGFnZU1hbmFnZXIgZ2V0X2RlZmF1bHQgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlN0YWdl IGdldF9kZWZhdWx0X3N0YWdlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJ cHVibGljIEdMaWIuU0xpc3Q8d2VhayBDbHV0dGVyLlN0YWdlPiBsaXN0X3N0YWdlcyAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIEdMaWIuU0xpc3Q8Q2x1dHRlci5TdGFnZT4gcGVla19zdGFnZXMgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgQ2x1dHRlci5TdGFnZSBk ZWZhdWx0X3N0YWdlIHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBzdGFnZV9hZGRlZCAoQ2x1dHRlci5TdGFnZSBzdGFn ZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgdm9pZCBzdGFnZV9yZW1vdmVkIChDbHV0dGVyLlN0YWdlIHN0YWdlKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9 IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVi bGljIGNsYXNzIFN0YWdlU3RhdGVFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIENs dXR0ZXIuU3RhZ2VTdGF0ZSBjaGFuZ2VkX21hc2s7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZs YWdzIGZsYWdzOworKwkJcHVibGljIENsdXR0ZXIuU3RhZ2VTdGF0ZSBuZXdfc3RhdGU7CisrCQlw dWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIu U3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5F dmVudFR5cGUgdHlwZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhZ2Vfdmlld19nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgY2xhc3MgU3RhZ2VWaWV3IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFN0YWdlVmlldyAo KTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuRnJhbWVidWZmZXIgZ2V0X2ZyYW1lYnVmZmVyICgp OworKwkJcHVibGljIHZvaWQgZ2V0X2xheW91dCAoQ2Fpcm8uUmVjdGFuZ2xlSW50IHJlY3QpOwor KwkJcHVibGljIHZpcnR1YWwgdm9pZCBnZXRfb2Zmc2NyZWVuX3RyYW5zZm9ybWF0aW9uX21hdHJp eCAoQ29nbC5NYXRyaXggbWF0cml4KTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuRnJhbWVidWZm ZXIgZ2V0X29uc2NyZWVuICgpOworKwkJcHVibGljIGZsb2F0IGdldF9zY2FsZSAoKTsKKysJCXB1 YmxpYyB2b2lkIGludmFsaWRhdGVfb2Zmc2NyZWVuX2JsaXRfcGlwZWxpbmUgKCk7CisrCQlbTm9X cmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzZXR1cF9vZmZzY3JlZW5fYmxpdF9waXBl bGluZSAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSk7CisrCQlwdWJsaWMgdm9pZCB0cmFuc2Zvcm1f dG9fb25zY3JlZW4gKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgQ2Fpcm8uUmVjdGFuZ2xlSW50IGxheW91dCB7IG93bmVkIGdldDsgc2V0IGNvbnN0 cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZmxvYXQgc2NhbGUgeyBn ZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhdGVfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgU3RhdGUgOiBH TGliLk9iamVjdCwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgU3RhdGUg KCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2R1cmF0aW9uIChzdHJp bmc/IHNvdXJjZV9zdGF0ZV9uYW1lLCBzdHJpbmc/IHRhcmdldF9zdGF0ZV9uYW1lKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3N0YXRlICgpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBzdHJpbmc+IGdldF9zdGF0 ZXMgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2R1cmF0aW9uIChz dHJpbmc/IHNvdXJjZV9zdGF0ZV9uYW1lLCBzdHJpbmc/IHRhcmdldF9zdGF0ZV9uYW1lLCB1aW50 IGR1cmF0aW9uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVy LlN0YXRlIHNldF9rZXkgKHN0cmluZz8gc291cmNlX3N0YXRlX25hbWUsIHN0cmluZyB0YXJnZXRf c3RhdGVfbmFtZSwgR0xpYi5PYmplY3Qgb2JqZWN0LCBzdHJpbmcgcHJvcGVydHlfbmFtZSwgdWlu dCBtb2RlLCBHTGliLlZhbHVlIHZhbHVlLCBkb3VibGUgcHJlX2RlbGF5LCBkb3VibGUgcG9zdF9k ZWxheSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5UaW1l bGluZSBzZXRfc3RhdGUgKHN0cmluZyB0YXJnZXRfc3RhdGVfbmFtZSk7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5UaW1lbGluZSB3YXJwX3RvX3N0YXRlIChz dHJpbmcgdGFyZ2V0X3N0YXRlX25hbWUpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNl ID0gIjEuNCIpXQorKwkJcHVibGljIHVpbnQgZHVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHN0cmluZyBzdGF0 ZSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIHZvaWQgY29tcGxldGVkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5 IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3Rh dGVfa2V5X2dldF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCXB1YmxpYyBjbGFzcyBTdGF0ZUtleSB7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJ cHVibGljIEdMaWIuVHlwZSBnZXRfcHJvcGVydHlfdHlwZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf c3dpcGVfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0K KysJcHVibGljIGNsYXNzIFN3aXBlQWN0aW9uIDogQ2x1dHRlci5HZXN0dXJlQWN0aW9uIHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJB Y3Rpb24qIildCisrCQlwdWJsaWMgU3dpcGVBY3Rpb24gKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNCIsIHNpbmNlID0gIjEuOCIpXQor KwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3dlcHQgKENsdXR0ZXIuQWN0b3IgYWN0b3Is IENsdXR0ZXIuU3dpcGVEaXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjE0IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBzd2lwZSAoQ2x1dHRlci5B Y3RvciBhY3RvciwgQ2x1dHRlci5Td2lwZURpcmVjdGlvbiBkaXJlY3Rpb24pOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAi Y2x1dHRlcl90YXBfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjE0IildCisrCXB1YmxpYyBjbGFzcyBUYXBBY3Rpb24gOiBDbHV0dGVyLkdlc3R1cmVBY3Rpb24g eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1 dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBUYXBBY3Rpb24gKCk7CisrCQlwdWJsaWMgdmlydHVh bCBzaWduYWwgdm9pZCB0YXAgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRl cl90ZXh0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVi bGljIGNsYXNzIFRleHQgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIu QW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0 b3IqIildCisrCQlwdWJsaWMgVGV4dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgaW50IGNvb3Jkc190b19wb3NpdGlvbiAoZmxvYXQgeCwgZmxvYXQgeSk7Cisr CQlwdWJsaWMgdm9pZCBkZWxldGVfY2hhcnMgKHVpbnQgbl9jaGFycyk7CisrCQlwdWJsaWMgYm9v bCBkZWxldGVfc2VsZWN0aW9uICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGljIFRleHQuZnVsbCAo c3RyaW5nIGZvbnRfbmFtZSwgc3RyaW5nIHRleHQsIENsdXR0ZXIuQ29sb3IgY29sb3IpOworKwkJ cHVibGljIGJvb2wgZ2V0X2FjdGl2YXRhYmxlICgpOworKwkJcHVibGljIHVub3duZWQgUGFuZ28u QXR0ckxpc3QgZ2V0X2F0dHJpYnV0ZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5UZXh0QnVmZmVyIGdldF9idWZmZXIgKCk7Cisr CQlwdWJsaWMgc3RyaW5nIGdldF9jaGFycyAoc3NpemVfdCBzdGFydF9wb3MsIHNzaXplX3QgZW5k X3Bvcyk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfY29sb3IgKCk7CisrCQlwdWJsaWMg Q2x1dHRlci5Db2xvciBnZXRfY3Vyc29yX2NvbG9yICgpOworKwkJcHVibGljIGludCBnZXRfY3Vy c29yX3Bvc2l0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1Ymxp YyB2b2lkIGdldF9jdXJzb3JfcmVjdCAob3V0IHVub3duZWQgR3JhcGhlbmUuUmVjdCByZWN0KTsK KysJCXB1YmxpYyB1aW50IGdldF9jdXJzb3Jfc2l6ZSAoKTsKKysJCXB1YmxpYyBib29sIGdldF9j dXJzb3JfdmlzaWJsZSAoKTsKKysJCXB1YmxpYyBib29sIGdldF9lZGl0YWJsZSAoKTsKKysJCXB1 YmxpYyBQYW5nby5FbGxpcHNpemVNb2RlIGdldF9lbGxpcHNpemUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgUGFuZ28uRm9udERlc2NyaXB0aW9uIGdldF9mb250 X2Rlc2NyaXB0aW9uICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9mb250X25hbWUg KCk7CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dENvbnRlbnRIaW50RmxhZ3MgZ2V0X2lucHV0X2hp bnRzICgpOworKwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9zZSBnZXRfaW5wdXRf cHVycG9zZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29s IGdldF9qdXN0aWZ5ICgpOworKwkJcHVibGljIHVub3duZWQgUGFuZ28uTGF5b3V0IGdldF9sYXlv dXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBnZXRf bGF5b3V0X29mZnNldHMgKG91dCBpbnQgeCwgb3V0IGludCB5KTsKKysJCXB1YmxpYyBQYW5nby5B bGlnbm1lbnQgZ2V0X2xpbmVfYWxpZ25tZW50ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X2xpbmVf d3JhcCAoKTsKKysJCXB1YmxpYyBQYW5nby5XcmFwTW9kZSBnZXRfbGluZV93cmFwX21vZGUgKCk7 CisrCQlwdWJsaWMgaW50IGdldF9tYXhfbGVuZ3RoICgpOworKwkJcHVibGljIHVuaWNoYXIgZ2V0 X3Bhc3N3b3JkX2NoYXIgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfc2VsZWN0YWJsZSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9z ZWxlY3RlZF90ZXh0X2NvbG9yICgpOworKwkJcHVibGljIHN0cmluZyBnZXRfc2VsZWN0aW9uICgp OworKwkJcHVibGljIGludCBnZXRfc2VsZWN0aW9uX2JvdW5kICgpOworKwkJcHVibGljIENsdXR0 ZXIuQ29sb3IgZ2V0X3NlbGVjdGlvbl9jb2xvciAoKTsKKysJCXB1YmxpYyBib29sIGdldF9zaW5n bGVfbGluZV9tb2RlICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF90ZXh0ICgpOwor KwkJcHVibGljIGJvb2wgZ2V0X3VzZV9tYXJrdXAgKCk7CisrCQlwdWJsaWMgYm9vbCBoYXNfcHJl ZWRpdCAoKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF90ZXh0IChzdHJpbmcgdGV4dCwgc3NpemVf dCBwb3NpdGlvbik7CisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfdW5pY2hhciAodW5pY2hhciB3Yyk7 CisrCQlwdWJsaWMgYm9vbCBwb3NpdGlvbl90b19jb29yZHMgKGludCBwb3NpdGlvbiwgb3V0IGZs b2F0IHgsIG91dCBmbG9hdCB5LCBvdXQgZmxvYXQgbGluZV9oZWlnaHQgPSBudWxsKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9hY3RpdmF0YWJsZSAoYm9vbCBhY3RpdmF0YWJsZSk7CisrCQlwdWJsaWMg dm9pZCBzZXRfYXR0cmlidXRlcyAoUGFuZ28uQXR0ckxpc3Q/IGF0dHJzKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYnVmZmVyIChDbHV0dGVyLlRl eHRCdWZmZXIgYnVmZmVyKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ2x1dHRlci5Db2xv ciBjb2xvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfY3Vyc29yX2NvbG9yIChDbHV0dGVyLkNvbG9y PyBjb2xvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfY3Vyc29yX3Bvc2l0aW9uIChpbnQgcG9zaXRp b24pOworKwkJcHVibGljIHZvaWQgc2V0X2N1cnNvcl9zaXplIChpbnQgc2l6ZSk7CisrCQlwdWJs aWMgdm9pZCBzZXRfY3Vyc29yX3Zpc2libGUgKGJvb2wgY3Vyc29yX3Zpc2libGUpOworKwkJcHVi bGljIHZvaWQgc2V0X2VkaXRhYmxlIChib29sIGVkaXRhYmxlKTsKKysJCXB1YmxpYyB2b2lkIHNl dF9lbGxpcHNpemUgKFBhbmdvLkVsbGlwc2l6ZU1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZm9udF9kZXNjcmlwdGlvbiAoUGFuZ28u Rm9udERlc2NyaXB0aW9uIGZvbnRfZGVzYyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZm9udF9uYW1l IChzdHJpbmc/IGZvbnRfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5wdXRfaGludHMgKENs dXR0ZXIuSW5wdXRDb250ZW50SGludEZsYWdzIGhpbnRzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9p bnB1dF9wdXJwb3NlIChDbHV0dGVyLklucHV0Q29udGVudFB1cnBvc2UgcHVycG9zZSk7CisrCQlw dWJsaWMgdm9pZCBzZXRfanVzdGlmeSAoYm9vbCBqdXN0aWZ5KTsKKysJCXB1YmxpYyB2b2lkIHNl dF9saW5lX2FsaWdubWVudCAoUGFuZ28uQWxpZ25tZW50IGFsaWdubWVudCk7CisrCQlwdWJsaWMg dm9pZCBzZXRfbGluZV93cmFwIChib29sIGxpbmVfd3JhcCk7CisrCQlwdWJsaWMgdm9pZCBzZXRf bGluZV93cmFwX21vZGUgKFBhbmdvLldyYXBNb2RlIHdyYXBfbW9kZSk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfbWFya3VwIChzdHJpbmc/IG1hcmt1cCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbWF4X2xl bmd0aCAoaW50IG1heCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGFzc3dvcmRfY2hhciAodW5pY2hh ciB3Yyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRf cHJlZWRpdF9zdHJpbmcgKHN0cmluZz8gcHJlZWRpdF9zdHIsIFBhbmdvLkF0dHJMaXN0PyBwcmVl ZGl0X2F0dHJzLCB1aW50IGN1cnNvcl9wb3MpOworKwkJcHVibGljIHZvaWQgc2V0X3NlbGVjdGFi bGUgKGJvb2wgc2VsZWN0YWJsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlw dWJsaWMgdm9pZCBzZXRfc2VsZWN0ZWRfdGV4dF9jb2xvciAoQ2x1dHRlci5Db2xvcj8gY29sb3Ip OworKwkJcHVibGljIHZvaWQgc2V0X3NlbGVjdGlvbiAoc3NpemVfdCBzdGFydF9wb3MsIHNzaXpl X3QgZW5kX3Bvcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc2VsZWN0aW9uX2JvdW5kIChpbnQgc2Vs ZWN0aW9uX2JvdW5kKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zZWxlY3Rpb25fY29sb3IgKENsdXR0 ZXIuQ29sb3I/IGNvbG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zaW5nbGVfbGluZV9tb2RlIChi b29sIHNpbmdsZV9saW5lKTsKKysJCXB1YmxpYyB2b2lkIHNldF90ZXh0IChzdHJpbmc/IHRleHQp OworKwkJcHVibGljIHZvaWQgc2V0X3VzZV9tYXJrdXAgKGJvb2wgc2V0dGluZyk7CisrCQlbQ0Nv ZGUgKGNuYW1lID0gImNsdXR0ZXJfdGV4dF9hY3RpdmF0ZSIpXQorKwkJcHVibGljIGJvb2wgdHJ5 X2FjdGl2YXRlICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Us IHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBUZXh0LndpdGhfYnVmZmVyIChDbHV0dGVyLlRleHRCdWZmZXIgYnVmZmVyKTsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0 ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBUZXh0LndpdGhfdGV4dCAoc3RyaW5nPyBmb250X25hbWUs IHN0cmluZyB0ZXh0KTsKKysJCXB1YmxpYyBib29sIGFjdGl2YXRhYmxlIHsgZ2V0OyBzZXQ7IH0K KysJCXB1YmxpYyBQYW5nby5BdHRyTGlzdCBhdHRyaWJ1dGVzIHsgZ2V0OyBzZXQ7IH0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlRleHRCdWZmZXIgYnVm ZmVyIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGNvbG9yIHsgZ2V0OyBz ZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGN1cnNvcl9jb2xvciB7IGdldDsgc2V0OyB9 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGN1cnNvcl9jb2xvcl9zZXQg eyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgaW50IGN1 cnNvcl9wb3NpdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgaW50IGN1cnNvcl9zaXplIHsg Z2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGN1cnNvcl92aXNpYmxlIHsgZ2V0OyBzZXQ7IH0K KysJCXB1YmxpYyBib29sIGVkaXRhYmxlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBQYW5nby5F bGxpcHNpemVNb2RlIGVsbGlwc2l6ZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgUGFuZ28uRm9udERlc2NyaXB0aW9uIGZvbnRfZGVzY3JpcHRp b24geyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIHN0cmluZyBmb250X25hbWUgeyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50SGludEZsYWdzIGlucHV0X2hp bnRzIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0Q29udGVudFB1cnBvc2Ug aW5wdXRfcHVycG9zZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBqdXN0aWZ5IHsgZ2V0 OyBzZXQ7IH0KKysJCXB1YmxpYyBQYW5nby5BbGlnbm1lbnQgbGluZV9hbGlnbm1lbnQgeyBnZXQ7 IHNldDsgfQorKwkJcHVibGljIGJvb2wgbGluZV93cmFwIHsgZ2V0OyBzZXQ7IH0KKysJCXB1Ymxp YyBQYW5nby5XcmFwTW9kZSBsaW5lX3dyYXBfbW9kZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMg aW50IG1heF9sZW5ndGggeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgcGFzc3dvcmRfY2hh ciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgaW50IHBvc2l0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIHNl bGVjdGFibGUgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIENsdXR0ZXIuQ29sb3Igc2VsZWN0ZWRfdGV4dF9jb2xvciB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyBib29sIHNlbGVjdGVkX3RleHRfY29sb3Jfc2V0IHsgZ2V0OyB9CisrCQlwdWJsaWMgaW50 IHNlbGVjdGlvbl9ib3VuZCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBz ZWxlY3Rpb25fY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlw dWJsaWMgYm9vbCBzZWxlY3Rpb25fY29sb3Jfc2V0IHsgZ2V0OyB9CisrCQlwdWJsaWMgYm9vbCBz aW5nbGVfbGluZV9tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgdGV4dCB7IGdl dDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCB1c2VfbWFya3VwIHsgZ2V0OyBzZXQ7IH0KKysJCXB1 YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGFjdGl2YXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGN1cnNvcl9jaGFuZ2Vk ICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGN1 cnNvcl9ldmVudCAoR3JhcGhlbmUuUmVjdCByZWN0KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGRlbGV0ZV90ZXh0 IChpbnQgc3RhcnRfcG9zLCBpbnQgZW5kX3Bvcyk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg dm9pZCB0ZXh0X2NoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHRfYnVmZmVyX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBU ZXh0QnVmZmVyIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFRleHRCdWZmZXIgKCk7CisrCQlwdWJsaWMgdmlydHVh bCB1aW50IGRlbGV0ZV90ZXh0ICh1aW50IHBvc2l0aW9uLCB1aW50IG5fY2hhcnMpOworKwkJcHVi bGljIHZvaWQgZW1pdF9kZWxldGVkX3RleHQgKHVpbnQgcG9zaXRpb24sIHVpbnQgbl9jaGFycyk7 CisrCQlwdWJsaWMgdm9pZCBlbWl0X2luc2VydGVkX3RleHQgKHVpbnQgcG9zaXRpb24sIHN0cmlu ZyBjaGFycywgdWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyBzaXplX3QgZ2V0X2J5dGVzICgpOwor KwkJcHVibGljIHZpcnR1YWwgdWludCBnZXRfbGVuZ3RoICgpOworKwkJcHVibGljIGludCBnZXRf bWF4X2xlbmd0aCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfdGV4dCAoKTsKKysJ CVtDQ29kZSAodmZ1bmNfbmFtZSA9ICJnZXRfdGV4dCIpXQorKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyB2aXJ0dWFsIHVub3duZWQgc3RyaW5nIGdldF90ZXh0X3dpdGhfbGVuZ3RoIChzaXplX3Qg bl9ieXRlcyk7CisrCQlwdWJsaWMgdmlydHVhbCB1aW50IGluc2VydF90ZXh0ICh1aW50IHBvc2l0 aW9uLCBzdHJpbmcgY2hhcnMsIHVpbnQgbl9jaGFycyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbWF4 X2xlbmd0aCAoaW50IG1heF9sZW5ndGgpOworKwkJcHVibGljIHZvaWQgc2V0X3RleHQgKHN0cmlu ZyBjaGFycywgaW50IG5fY2hhcnMpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJcHVibGljIFRleHRCdWZmZXIud2l0aF90ZXh0IChzdHJpbmc/IHRleHQs IHNzaXplX3QgdGV4dF9sZW4pOworKwkJcHVibGljIHVpbnQgbGVuZ3RoIHsgZ2V0OyB9CisrCQlw dWJsaWMgaW50IG1heF9sZW5ndGggeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHN0cmluZyB0ZXh0 IHsgZ2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkZWxldGVkX3RleHQgKHVp bnQgcG9zaXRpb24sIHVpbnQgbl9jaGFycyk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9p ZCBpbnNlcnRlZF90ZXh0ICh1aW50IHBvc2l0aW9uLCBzdHJpbmcgY2hhcnMsIHVpbnQgbl9jaGFy cyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHRfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dE5vZGUgOiBDbHV0dGVyLlBh aW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlw ZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIFRleHROb2RlIChQYW5nby5MYXlv dXQ/IGxheW91dCwgQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90ZXh0 dXJlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBUZXh0dXJlIDogQ2x1dHRlci5BY3Rv ciB7CisrCQlwdWJsaWMgQ29nbC5NYXRlcmlhbCBjb2dsX21hdGVyaWFsIHsgZ2V0OyBzZXQ7IH0K KysJCXB1YmxpYyBDb2dsLlRleHR1cmUgY29nbF90ZXh0dXJlIHsgZ2V0OyBzZXQ7IH0KKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lk ID0gImNsdXR0ZXJfdGV4dHVyZV9ub2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBUZXh0dXJlTm9kZSA6IENsdXR0ZXIuUGlwZWxp bmVOb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBl ID0gIkNsdXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgVGV4dHVyZU5vZGUgKENvZ2wuVGV4 dHVyZSB0ZXh0dXJlLCBDbHV0dGVyLkNvbG9yPyBjb2xvciwgQ2x1dHRlci5TY2FsaW5nRmlsdGVy IG1pbl9maWx0ZXIsIENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtYWdfZmlsdGVyKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0g ImNsdXR0ZXJfdGltZWxpbmVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAu MiIpXQorKwlwdWJsaWMgY2xhc3MgVGltZWxpbmUgOiBHTGliLk9iamVjdCwgQ2x1dHRlci5TY3Jp cHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBUaW1lbGluZSAodWludCBtc2Vj cyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIHZvaWQgYWRkX21h cmtlciAoc3RyaW5nIG1hcmtlcl9uYW1lLCBkb3VibGUgcHJvZ3Jlc3MpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgYWRkX21hcmtlcl9hdF90aW1lIChzdHJp bmcgbWFya2VyX25hbWUsIHVpbnQgbXNlY3MpOworKwkJcHVibGljIHZvaWQgYWR2YW5jZSAodWlu dCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBh ZHZhbmNlX3RvX21hcmtlciAoc3RyaW5nIG1hcmtlcl9uYW1lKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC40Iild CisrCQlwdWJsaWMgQ2x1dHRlci5UaW1lbGluZSBjbG9uZSAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9hdXRvX3JldmVyc2UgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2N1YmljX2Jlemllcl9w cm9ncmVzcyAoR3JhcGhlbmUuUG9pbnQgY18xLCBHcmFwaGVuZS5Qb2ludCBjXzIpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2N1cnJlbnRfcmVwZWF0 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2Rl bGF5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHVpbnQgZ2V0 X2RlbHRhICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIENsdXR0 ZXIuVGltZWxpbmVEaXJlY3Rpb24gZ2V0X2RpcmVjdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB1aW50IGdldF9kdXJhdGlvbiAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50NjQgZ2V0X2R1cmF0aW9uX2hpbnQgKCk7 CisrCQlwdWJsaWMgdWludCBnZXRfZWxhcHNlZF90aW1lICgpOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29s IGdldF9sb29wICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGRv dWJsZSBnZXRfcHJvZ3Jlc3MgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBnZXRfcHJvZ3Jlc3NfbW9kZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdldF9yZXBlYXRfY291bnQg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3N0 ZXBfcHJvZ3Jlc3MgKG91dCBpbnQgbl9zdGVwcywgb3V0IENsdXR0ZXIuU3RlcE1vZGUgc3RlcF9t b2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIGhhc19t YXJrZXIgKHN0cmluZyBtYXJrZXJfbmFtZSk7CisrCQlwdWJsaWMgYm9vbCBpc19wbGF5aW5nICgp OworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSB0cnVlLCBhcnJheV9sZW5ndGhfcG9zID0gMS4x LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJnc2l6ZSIsIGFycmF5X251bGxfdGVybWluYXRlZCA9IHRy dWUpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0cmluZ1tdIGxp c3RfbWFya2VycyAoaW50IG1zZWNzKTsKKysJCXB1YmxpYyB2b2lkIHBhdXNlICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX21hcmtlciAoc3Ry aW5nIG1hcmtlcl9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIHJld2luZCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hdXRvX3JldmVyc2UgKGJvb2wg cmV2ZXJzZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQg c2V0X2N1YmljX2Jlemllcl9wcm9ncmVzcyAoR3JhcGhlbmUuUG9pbnQgY18xLCBHcmFwaGVuZS5Q b2ludCBjXzIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQg c2V0X2RlbGF5ICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9kaXJlY3Rpb24gKENsdXR0ZXIuVGltZWxpbmVEaXJlY3Rpb24gZGly ZWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9kdXJhdGlvbiAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xvb3AgKGJv b2wgbG9vcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQg c2V0X3Byb2dyZXNzX2Z1bmMgKG93bmVkIENsdXR0ZXIuVGltZWxpbmVQcm9ncmVzc0Z1bmM/IGZ1 bmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9w cm9ncmVzc19tb2RlIChDbHV0dGVyLkFuaW1hdGlvbk1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlcGVhdF9jb3VudCAoaW50IGNv dW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRf c3RlcF9wcm9ncmVzcyAoaW50IG5fc3RlcHMsIENsdXR0ZXIuU3RlcE1vZGUgc3RlcF9tb2RlKTsK KysJCXB1YmxpYyB2b2lkIHNraXAgKHVpbnQgbXNlY3MpOworKwkJcHVibGljIHZvaWQgc3RhcnQg KCk7CisrCQlwdWJsaWMgdm9pZCBzdG9wICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIp XQorKwkJcHVibGljIGJvb2wgYXV0b19yZXZlcnNlIHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB1aW50IGRlbGF5IHsgZ2V0OyBzZXQ7IH0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlRpbWVsaW5lRGly ZWN0aW9uIGRpcmVjdGlvbiB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCQlwdWJsaWMgdWludCBkdXJhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IGJvb2wgbG9vcCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBwcm9ncmVzc19tb2RlIHsgZ2V0OyBzZXQ7 IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IHJlcGVhdF9j b3VudCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBjb21wbGV0 ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCBz aWduYWwgdm9pZCBtYXJrZXJfcmVhY2hlZCAoc3RyaW5nIG1hcmtlcl9uYW1lLCBpbnQgbXNlY3Mp OworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgbmV3X2ZyYW1lIChpbnQgbXNlY3MpOwor KwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgcGF1c2VkICgpOworKwkJcHVibGljIHZpcnR1 YWwgc2lnbmFsIHZvaWQgc3RhcnRlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBzdG9wcGVkIChib29sIGlzX2ZpbmlzaGVk KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi KV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBUaW1lb3V0UG9vbCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgVGltZW91dFBvb2wg KGludCBwcmlvcml0eSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgVG91Y2hFdmVudCA6IENsdXR0 ZXIuRXZlbnQgeworKwkJcHVibGljIGRvdWJsZSBheGVzOworKwkJcHVibGljIHdlYWsgQ2x1dHRl ci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdz OworKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVyX3N0YXRlOworKwkJcHVi bGljIHdlYWsgQ2x1dHRlci5FdmVudFNlcXVlbmNlIHNlcXVlbmNlOworKwkJcHVibGljIHdlYWsg Q2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdl OworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5 cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJcHVi bGljIGNsYXNzIFRvdWNocGFkUGluY2hFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGlj IGZsb2F0IGFuZ2xlX2RlbHRhOworKwkJcHVibGljIGZsb2F0IGR4OworKwkJcHVibGljIGZsb2F0 IGR5OworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB1aW50 IG5fZmluZ2VyczsKKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNocGFkR2VzdHVyZVBoYXNlIHBoYXNl OworKwkJcHVibGljIGZsb2F0IHNjYWxlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBz b3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVp bnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMg ZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29t cGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJcHVibGljIGNsYXNzIFRvdWNo cGFkU3dpcGVFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIGZsb2F0IGR4OworKwkJ cHVibGljIGZsb2F0IGR5OworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJ CXB1YmxpYyB1aW50IG5fZmluZ2VyczsKKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNocGFkR2VzdHVy ZVBoYXNlIHBoYXNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlw dWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOwor KwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJ CXB1YmxpYyBmbG9hdCB5OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90cmFuc2Zvcm1fbm9kZV9nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgVHJhbnNmb3JtTm9kZSA6IENsdXR0ZXIuUGFpbnROb2Rl IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNs dXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgVHJhbnNmb3JtTm9kZSAoQ29nbC5NYXRyaXgg cHJvamVjdGlvbik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RyYW5zaXRpb25fZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIFRy YW5zaXRpb24gOiBDbHV0dGVyLlRpbWVsaW5lLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFRyYW5z aXRpb24gKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBhdHRhY2hl ZCAoQ2x1dHRlci5BbmltYXRhYmxlIGFuaW1hdGFibGUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgY29tcHV0ZV92YWx1ZSAoQ2x1dHRlci5BbmltYXRhYmxlIGFuaW1h dGFibGUsIENsdXR0ZXIuSW50ZXJ2YWwgaW50ZXJ2YWwsIGRvdWJsZSBwcm9ncmVzcyk7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBkZXRhY2hlZCAoQ2x1dHRlci5Bbmlt YXRhYmxlIGFuaW1hdGFibGUpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BbmltYXRhYmxl IGdldF9hbmltYXRhYmxlICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5JbnRlcnZhbCBn ZXRfaW50ZXJ2YWwgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfcmVtb3ZlX29uX2NvbXBsZXRlICgp OworKwkJcHVibGljIHZvaWQgc2V0X2FuaW1hdGFibGUgKENsdXR0ZXIuQW5pbWF0YWJsZT8gYW5p bWF0YWJsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQg c2V0X2Zyb21fdmFsdWUgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIHZvaWQgc2V0X2lu dGVydmFsIChDbHV0dGVyLkludGVydmFsPyBpbnRlcnZhbCk7CisrCQlwdWJsaWMgdm9pZCBzZXRf cmVtb3ZlX29uX2NvbXBsZXRlIChib29sIHJlbW92ZV9jb21wbGV0ZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RvX3ZhbHVlIChHTGliLlZhbHVl IHZhbHVlKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFuaW1hdGFibGUgYW5pbWF0YWJsZSB7IGdldDsg c2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5JbnRlcnZhbCBpbnRlcnZhbCB7IGdldDsgc2V0OyB9 CisrCQlwdWJsaWMgYm9vbCByZW1vdmVfb25fY29tcGxldGUgeyBnZXQ7IHNldDsgfQorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl90cmFuc2l0aW9uX2dyb3VwX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBUcmFuc2l0aW9uR3JvdXAgOiBDbHV0dGVy LlRyYW5zaXRpb24sIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyVHJhbnNpdGlvbioiKV0KKysJCXB1 YmxpYyBUcmFuc2l0aW9uR3JvdXAgKCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfdHJhbnNpdGlvbiAo Q2x1dHRlci5UcmFuc2l0aW9uIHRyYW5zaXRpb24pOworKwkJcHVibGljIHZvaWQgcmVtb3ZlX2Fs bCAoKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV90cmFuc2l0aW9uIChDbHV0dGVyLlRyYW5zaXRp b24gdHJhbnNpdGlvbik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3ZpcnR1YWxfaW5wdXRfZGV2aWNlX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBWaXJ0dWFsSW5wdXREZXZpY2UgOiBHTGliLk9i amVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw cm90ZWN0ZWQgVmlydHVhbElucHV0RGV2aWNlICgpOworKwkJcHVibGljIGludCBnZXRfZGV2aWNl X3R5cGUgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9hYnNvbHV0ZV9tb3Rpb24g KHVpbnQ2NCB0aW1lX3VzLCBkb3VibGUgeCwgZG91YmxlIHkpOworKwkJcHVibGljIHZpcnR1YWwg dm9pZCBub3RpZnlfYnV0dG9uICh1aW50NjQgdGltZV91cywgdWludDMyIGJ1dHRvbiwgQ2x1dHRl ci5CdXR0b25TdGF0ZSBidXR0b25fc3RhdGUpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3Rp ZnlfZGlzY3JldGVfc2Nyb2xsICh1aW50NjQgdGltZV91cywgQ2x1dHRlci5TY3JvbGxEaXJlY3Rp b24gZGlyZWN0aW9uLCBDbHV0dGVyLlNjcm9sbFNvdXJjZSBzY3JvbGxfc291cmNlKTsKKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2tleSAodWludDY0IHRpbWVfdXMsIHVpbnQzMiBrZXks IENsdXR0ZXIuS2V5U3RhdGUga2V5X3N0YXRlKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90 aWZ5X2tleXZhbCAodWludDY0IHRpbWVfdXMsIHVpbnQzMiBrZXl2YWwsIENsdXR0ZXIuS2V5U3Rh dGUga2V5X3N0YXRlKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X3JlbGF0aXZlX21v dGlvbiAodWludDY0IHRpbWVfdXMsIGRvdWJsZSBkeCwgZG91YmxlIGR5KTsKKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgbm90aWZ5X3Njcm9sbF9jb250aW51b3VzICh1aW50NjQgdGltZV91cywgZG91 YmxlIGR4LCBkb3VibGUgZHksIENsdXR0ZXIuU2Nyb2xsU291cmNlIHNjcm9sbF9zb3VyY2UsIENs dXR0ZXIuU2Nyb2xsRmluaXNoRmxhZ3MgZmluaXNoX2ZsYWdzKTsKKysJCXB1YmxpYyB2aXJ0dWFs IHZvaWQgbm90aWZ5X3RvdWNoX2Rvd24gKHVpbnQ2NCB0aW1lX3VzLCBpbnQgc2xvdCwgZG91Ymxl IHgsIGRvdWJsZSB5KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X3RvdWNoX21vdGlv biAodWludDY0IHRpbWVfdXMsIGludCBzbG90LCBkb3VibGUgeCwgZG91YmxlIHkpOworKwkJcHVi bGljIHZpcnR1YWwgdm9pZCBub3RpZnlfdG91Y2hfdXAgKHVpbnQ2NCB0aW1lX3VzLCBpbnQgc2xv dCk7CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVR5cGUgZGV2aWNlX3R5cGUgeyBnZXQ7 IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgQ2x1dHRlci5T ZWF0IHNlYXQgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl96b29t X2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlw dWJsaWMgY2xhc3MgWm9vbUFjdGlvbiA6IENsdXR0ZXIuR2VzdHVyZUFjdGlvbiB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0aW9u KiIpXQorKwkJcHVibGljIFpvb21BY3Rpb24gKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfZm9jYWxf cG9pbnQgKEdyYXBoZW5lLlBvaW50IHBvaW50KTsKKysJCXB1YmxpYyB2b2lkIGdldF90cmFuc2Zv cm1lZF9mb2NhbF9wb2ludCAoR3JhcGhlbmUuUG9pbnQgcG9pbnQpOworKwkJcHVibGljIENsdXR0 ZXIuWm9vbUF4aXMgZ2V0X3pvb21fYXhpcyAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF96b29tX2F4 aXMgKENsdXR0ZXIuWm9vbUF4aXMgYXhpcyk7CisrCQlwdWJsaWMgQ2x1dHRlci5ab29tQXhpcyB6 b29tX2F4aXMgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgem9v bSAoQ2x1dHRlci5BY3RvciBhY3RvciwgR3JhcGhlbmUuUG9pbnQgZm9jYWxfcG9pbnQsIGRvdWJs ZSBmYWN0b3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfY25hbWUgPSAiQ2x1dHRlckFuaW1hdGFibGVJbnRlcmZhY2UiLCB0eXBl X2lkID0gImNsdXR0ZXJfYW5pbWF0YWJsZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgaW50ZXJm YWNlIEFuaW1hdGFibGUgOiBHTGliLk9iamVjdCB7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGlj IGFic3RyYWN0IGJvb2wgYW5pbWF0ZV9wcm9wZXJ0eSAoQ2x1dHRlci5BbmltYXRpb24gYW5pbWF0 aW9uLCBzdHJpbmcgcHJvcGVydHlfbmFtZSwgR0xpYi5WYWx1ZSBpbml0aWFsX3ZhbHVlLCBHTGli LlZhbHVlIGZpbmFsX3ZhbHVlLCBkb3VibGUgcHJvZ3Jlc3MsIEdMaWIuVmFsdWUgdmFsdWUpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGFic3RyYWN0IHVub3duZWQg R0xpYi5QYXJhbVNwZWMgZmluZF9wcm9wZXJ0eSAoc3RyaW5nIHByb3BlcnR5X25hbWUpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgZ2V0X2lu aXRpYWxfc3RhdGUgKHN0cmluZyBwcm9wZXJ0eV9uYW1lLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCBib29sIGludGVy cG9sYXRlX3ZhbHVlIChzdHJpbmcgcHJvcGVydHlfbmFtZSwgQ2x1dHRlci5JbnRlcnZhbCBpbnRl cnZhbCwgZG91YmxlIHByb2dyZXNzLCBvdXQgR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfZmluYWxfc3Rh dGUgKHN0cmluZyBwcm9wZXJ0eV9uYW1lLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfY29udGFpbmVyX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQi KV0KKysJcHVibGljIGludGVyZmFjZSBDb250YWluZXIgOiBHTGliLk9iamVjdCB7CisrCQlwdWJs aWMgdm9pZCBhZGQgKHBhcmFtcyBDbHV0dGVyLkFjdG9yW10gYWN0b3JzKTsKKysJCVtDQ29kZSAo dmZ1bmNfbmFtZSA9ICJhZGQiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgYWJzdHJh Y3Qgdm9pZCBhZGRfYWN0b3IgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgY2hpbGRfZ2V0IChDbHV0dGVyLkFjdG9yIGFj dG9yLCAuLi4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQg Y2hpbGRfZ2V0X3Byb3BlcnR5IChDbHV0dGVyLkFjdG9yIGNoaWxkLCBzdHJpbmcgcHJvcGVydHks IEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIHZvaWQgY2hpbGRfc2V0IChDbHV0dGVyLkFjdG9yIGFjdG9yLCAuLi4pOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgY2hpbGRfc2V0X3Byb3BlcnR5IChD bHV0dGVyLkFjdG9yIGNoaWxkLCBzdHJpbmcgcHJvcGVydHksIEdMaWIuVmFsdWUgdmFsdWUpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdM aWIuUGFyYW1TcGVjIGNsYXNzX2ZpbmRfY2hpbGRfcHJvcGVydHkgKEdMaWIuT2JqZWN0Q2xhc3Mg a2xhc3MsIHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoX3Bv cyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0xpYi5QYXJhbVNwZWNbXSBjbGFzc19saXN0 X2NoaWxkX3Byb3BlcnRpZXMgKEdMaWIuT2JqZWN0Q2xhc3Mga2xhc3MpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBjcmVhdGVfY2hpbGRfbWV0 YSAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIGRlc3Ryb3lfY2hpbGRfbWV0YSAoQ2x1dHRlci5BY3RvciBh Y3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdW5vd25lZCBD bHV0dGVyLkFjdG9yIGZpbmRfY2hpbGRfYnlfbmFtZSAoc3RyaW5nIGNoaWxkX25hbWUpOworKwkJ W0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbnRhaW5lcl9jbGFzc19maW5kX2NoaWxkX3Byb3Bl cnR5IildCisrCQlwdWJsaWMgY2xhc3MgdW5vd25lZCBHTGliLlBhcmFtU3BlYyBmaW5kX2NoaWxk X3Byb3BlcnR5IChzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIENsdXR0ZXIuQ2hpbGRNZXRhIGdldF9j aGlsZF9tZXRhIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC40IildCisrCQlw dWJsaWMgR0xpYi5MaXN0PHdlYWsgQ2x1dHRlci5BY3Rvcj4gZ2V0X2NoaWxkcmVuICgpOworKwkJ W0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbnRhaW5lcl9jbGFzc19saXN0X2NoaWxkX3Byb3Bl cnRpZXMiKV0KKysJCXB1YmxpYyBjbGFzcyB1bm93bmVkIEdMaWIuUGFyYW1TcGVjW10gbGlzdF9j aGlsZF9wcm9wZXJ0aWVzICgpOworKwkJW0NDb2RlICh2ZnVuY19uYW1lID0gImxvd2VyIildCisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIs IHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBsb3dlcl9jaGlsZCAoQ2x1 dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5BY3Rvcj8gc2libGluZyA9IG51bGwpOworKwkJW0ND b2RlICh2ZnVuY19uYW1lID0gInJhaXNlIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGlj IHZpcnR1YWwgdm9pZCByYWlzZV9jaGlsZCAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5B Y3Rvcj8gc2libGluZyA9IG51bGwpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB2b2lk IHJlbW92ZSAoLi4uKTsKKysJCVtDQ29kZSAodmZ1bmNfbmFtZSA9ICJyZW1vdmUiKV0KKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2lu Y2UgPSAiMC40IildCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCByZW1vdmVfYWN0b3IgKENsdXR0 ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBhYnN0cmFjdCB2 b2lkIHNvcnRfZGVwdGhfb3JkZXIgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBh Y3Rvcl9hZGRlZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgdm9pZCBhY3Rvcl9yZW1vdmVkIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtIYXNFbWl0 dGVyXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2ln bmFsIHZvaWQgY2hpbGRfbm90aWZ5IChDbHV0dGVyLkFjdG9yIGNoaWxkLCBHTGliLlBhcmFtU3Bl YyBwc3BlYyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgdHlwZV9jbmFtZSA9ICJDbHV0dGVyQ29udGVudEludGVyZmFjZSIsIHR5cGVfaWQg PSAiY2x1dHRlcl9jb250ZW50X2dldF90eXBlICgpIildCisrCXB1YmxpYyBpbnRlcmZhY2UgQ29u dGVudCA6IEdMaWIuT2JqZWN0IHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgYWJzdHJhY3QgYm9vbCBnZXRfcHJlZmVycmVkX3NpemUgKG91dCBmbG9hdCB3aWR0aCwg b3V0IGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIGFic3RyYWN0IHZvaWQgaW52YWxpZGF0ZSAoKTsKKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lk IGludmFsaWRhdGVfc2l6ZSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qg dm9pZCBwYWludF9jb250ZW50IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0dGVyLlBhaW50Tm9k ZSBub2RlLCBDbHV0dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250ZXh0KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBhdHRhY2hl ZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZGV0YWNoZWQgKENsdXR0ZXIuQWN0b3IgYWN0 b3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3JpcHRhYmxlX2dldF90eXBlICgpIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIGludGVyZmFjZSBTY3JpcHRhYmxlIDogR0xp Yi5PYmplY3QgeworKwkJcHVibGljIGFic3RyYWN0IHVub3duZWQgc3RyaW5nIGdldF9pZCAoKTsK KysJCXB1YmxpYyBhYnN0cmFjdCBib29sIHBhcnNlX2N1c3RvbV9ub2RlIChDbHV0dGVyLlNjcmlw dCBzY3JpcHQsIEdMaWIuVmFsdWUgdmFsdWUsIHN0cmluZyBuYW1lLCBKc29uLk5vZGUgbm9kZSk7 CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfY3VzdG9tX3Byb3BlcnR5IChDbHV0dGVyLlNj cmlwdCBzY3JpcHQsIHN0cmluZyBuYW1lLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCXB1YmxpYyBh YnN0cmFjdCB2b2lkIHNldF9pZCAoc3RyaW5nIGlkXyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBpbnRlcmZhY2UgU3Rh Z2VXaW5kb3cgOiBHTGliLk9iamVjdCB7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3Ry YWN0IGludCBnZXRfcGVuZGluZ19zd2FwcyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMg YWJzdHJhY3QgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF93cmFwcGVyICgpOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCBib29sIGhhc19yZWRyYXdfY2xpcHMgKCk7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgaGlkZSAoKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgYWJzdHJhY3QgYm9vbCBpZ25vcmluZ19yZWRyYXdfY2xpcHMgKCk7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IGJvb2wgcmVhbGl6ZSAoKTsKKysJCVtO b1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCByZXNpemUgKGludCB3aWR0aCwgaW50 IGhlaWdodCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X2N1 cnNvcl92aXNpYmxlIChib29sIGN1cnNvcl92aXNpYmxlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfZnVsbHNjcmVlbiAoYm9vbCBpc19mdWxsc2NyZWVuKTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfdGl0bGUgKHN0cmlu ZyB0aXRsZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2V0X3Vz ZXJfcmVzaXphYmxlIChib29sIGlzX3Jlc2l6YWJsZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIGFic3RyYWN0IHZvaWQgc2hvdyAoYm9vbCBkb19yYWlzZSk7CisrCQlbTm9XcmFwcGVyXQor KwkJcHVibGljIGFic3RyYWN0IHZvaWQgdW5yZWFsaXplICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19i b3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNs dXR0ZXJfYWN0b3JfYm94X2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1Y3QgQWN0b3JCb3gg eworKwkJcHVibGljIGZsb2F0IHgxOworKwkJcHVibGljIGZsb2F0IHkxOworKwkJcHVibGljIGZs b2F0IHgyOworKwkJcHVibGljIGZsb2F0IHkyOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIi KV0KKysJCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5BY3RvckJveD8gYWxsb2MgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgY2xhbXBfdG9fcGl4 ZWwgKHJlZiBDbHV0dGVyLkFjdG9yQm94IGJveCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgYm9vbCBjb250YWlucyAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveD8gY29weSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsIChD bHV0dGVyLkFjdG9yQm94IGJveF9iKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgZmxvYXQgZ2V0X2FyZWEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgZmxvYXQgZ2V0X2hlaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB2b2lkIGdldF9vcmlnaW4gKG91dCBmbG9hdCB4LCBvdXQgZmxvYXQgeSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBnZXRfc2l6ZSAo b3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfd2lkdGggKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvckJveD8gaW5pdCAo ZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBpbml0X3JlY3QgKGZsb2F0IHgsIGZs b2F0IHksIGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JCb3ggaW50ZXJwb2xhdGUgKENsdXR0ZXIu QWN0b3JCb3ggZmluYWwsIGRvdWJsZSBwcm9ncmVzcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS42IildCisrCQlwdWJsaWMgdm9pZCBzY2FsZSAoZmxvYXQgc2NhbGUpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X29yaWdpbiAoZmxvYXQgeCwgZmxv YXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzZXRf c2l6ZSAoZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCB1bmlvbiAoQ2x1dHRlci5BY3RvckJv eCBiKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJcHVibGljIHN0cnVjdCBBY3Rvckl0ZXIgeworKwkJcHVibGljIHZvaWQgZGVzdHJveSAoKTsK KysJCXB1YmxpYyB2b2lkIGluaXQgKENsdXR0ZXIuQWN0b3Igcm9vdCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgaXNfdmFsaWQgKCk7CisrCQlwdWJsaWMg Ym9vbCBuZXh0IChvdXQgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGNoaWxkKTsKKysJCXB1YmxpYyBi b29sIHByZXYgKG91dCB1bm93bmVkIENsdXR0ZXIuQWN0b3IgY2hpbGQpOworKwkJcHVibGljIHZv aWQgcmVtb3ZlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IENhcHR1 cmUgeworKwkJcHVibGljIHdlYWsgQ2Fpcm8uU3VyZmFjZSBpbWFnZTsKKysJCXB1YmxpYyBDYWly by5SZWN0YW5nbGVJbnQgcmVjdDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29weSIsIGZyZWVf ZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJDTFVUVEVSX1RZUEVfQ09MT1Ii KV0KKysJcHVibGljIHN0cnVjdCBDb2xvciB7CisrCQlwdWJsaWMgdWludDggcmVkOworKwkJcHVi bGljIHVpbnQ4IGdyZWVuOworKwkJcHVibGljIHVpbnQ4IGJsdWU7CisrCQlwdWJsaWMgdWludDgg YWxwaGE7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBhZGQgKENsdXR0ZXIuQ29sb3IgYik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHN0YXRpYyBDbHV0dGVyLkNv bG9yPyBhbGxvYyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyBD bHV0dGVyLkNvbG9yPyBjb3B5ICgpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZGFya2VuICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIGJvb2wgZXF1YWwgKENs dXR0ZXIuQ29sb3IgdjIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGlj IHZvaWQgZnJlZSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX2hs cyIpXQorKwkJcHVibGljIENvbG9yLmZyb21faGxzIChmbG9hdCBodWUsIGZsb2F0IGx1bWluYW5j ZSwgZmxvYXQgc2F0dXJhdGlvbik7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3Jf ZnJvbV9waXhlbCIpXQorKwkJcHVibGljIENvbG9yLmZyb21fcGl4ZWwgKHVpbnQzMiBwaXhlbCk7 CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9zdHJpbmciKV0KKysJCXB1 YmxpYyBDb2xvci5mcm9tX3N0cmluZyAoc3RyaW5nIHN0cik7CisrCQlwdWJsaWMgc3RhdGljIHVu b3duZWQgQ2x1dHRlci5Db2xvcj8gZ2V0X3N0YXRpYyAoQ2x1dHRlci5TdGF0aWNDb2xvciBjb2xv cik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdWludCBoYXNoICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0 ZXIuQ29sb3I/IGluaXQgKHVpbnQ4IHJlZCwgdWludDggZ3JlZW4sIHVpbnQ4IGJsdWUsIHVpbnQ4 IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVy LkNvbG9yIGludGVycG9sYXRlIChDbHV0dGVyLkNvbG9yIGZpbmFsLCBkb3VibGUgcHJvZ3Jlc3Mp OworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgbGlnaHRlbiAoKTsKKysJCVtDQ29kZSAoY25hbWUg PSAiY2x1dHRlcl9jb2xvcl9mcm9tX3N0cmluZyIpXQorKwkJcHVibGljIGJvb2wgcGFyc2Vfc3Ry aW5nIChzdHJpbmcgc3RyKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIHNoYWRlIChkb3VibGUg ZmFjdG9yKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIHN1YnRyYWN0IChDbHV0dGVyLkNvbG9y IGIpOworKwkJcHVibGljIHZvaWQgdG9faGxzIChvdXQgZmxvYXQgaHVlLCBvdXQgZmxvYXQgbHVt aW5hbmNlLCBvdXQgZmxvYXQgc2F0dXJhdGlvbik7CisrCQlwdWJsaWMgdWludDMyIHRvX3BpeGVs ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHN0cmluZyB0b19z dHJpbmcgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgS2JkQTExeVNl dHRpbmdzIHsKKysJCXB1YmxpYyBDbHV0dGVyLktleWJvYXJkQTExeUZsYWdzIGNvbnRyb2xzOwor KwkJcHVibGljIGludCBzbG93a2V5c19kZWxheTsKKysJCXB1YmxpYyBpbnQgZGVib3VuY2VfZGVs YXk7CisrCQlwdWJsaWMgaW50IHRpbWVvdXRfZGVsYXk7CisrCQlwdWJsaWMgaW50IG1vdXNla2V5 c19pbml0X2RlbGF5OworKwkJcHVibGljIGludCBtb3VzZWtleXNfbWF4X3NwZWVkOworKwkJcHVi bGljIGludCBtb3VzZWtleXNfYWNjZWxfdGltZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29w eSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2tu b3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMg c3RydWN0IEtub3QgeworKwkJcHVibGljIGludCB4OworKwkJcHVibGljIGludCB5OworKwkJcHVi bGljIENsdXR0ZXIuS25vdD8gY29weSAoKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChDbHV0dGVy Lktub3Qga25vdF9iKTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdHJ1Y3Qg TWF0cml4IDogQ29nbC5NYXRyaXggeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3Ry dWN0IFBhZEJ1dHRvbkV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50VHlwZSB0eXBlOwor KwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFn czsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgd2VhayBD bHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB1aW50MzIgYnV0dG9uOworKwkJcHVibGlj IHVpbnQzMiBncm91cDsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNl OworKwkJcHVibGljIHVpbnQzMiBtb2RlOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMg c3RydWN0IFBhZFJpbmdFdmVudCB7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsK KysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxh Z3M7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHdlYWsg Q2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNl IGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlUGFkU291cmNlIHJpbmdfc291 cmNlOworKwkJcHVibGljIHVpbnQzMiByaW5nX251bWJlcjsKKysJCXB1YmxpYyB1aW50MzIgZ3Jv dXA7CisrCQlwdWJsaWMgZG91YmxlIGFuZ2xlOworKwkJcHVibGljIHVpbnQzMiBtb2RlOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBhZFN0cmlwRXZlbnQgeworKwkJcHVi bGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlw dWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5T dGFnZSBzdGFnZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291cmNlOworKwkJcHVi bGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5J bnB1dERldmljZVBhZFNvdXJjZSBzdHJpcF9zb3VyY2U7CisrCQlwdWJsaWMgdWludDMyIHN0cmlw X251bWJlcjsKKysJCXB1YmxpYyB1aW50MzIgZ3JvdXA7CisrCQlwdWJsaWMgZG91YmxlIHZhbHVl OworKwkJcHVibGljIHVpbnQzMiBtb2RlOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5Iiwg ZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGF0aF9u b2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGlj IHN0cnVjdCBQYXRoTm9kZSB7CisrCQlwdWJsaWMgQ2x1dHRlci5QYXRoTm9kZVR5cGUgdHlwZTsK KysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdlYWsgQ2x1dHRl ci5Lbm90IHBvaW50c1szXTsKKysJCXB1YmxpYyBDbHV0dGVyLlBhdGhOb2RlPyBjb3B5ICgpOwor KwkJcHVibGljIGJvb2wgZXF1YWwgKENsdXR0ZXIuUGF0aE5vZGUgbm9kZV9iKTsKKysJCXB1Ymxp YyB2b2lkIGZyZWUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0 aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wZXJzcGVjdGl2ZV9nZXRf dHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBzdHJ1Y3Qg UGVyc3BlY3RpdmUgeworKwkJcHVibGljIGZsb2F0IGZvdnk7CisrCQlwdWJsaWMgZmxvYXQgYXNw ZWN0OworKwkJcHVibGljIGZsb2F0IHpfbmVhcjsKKysJCXB1YmxpYyBmbG9hdCB6X2ZhcjsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNf dHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQb2ludGVyQTExeVNldHRpbmdzIHsK KysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RmxhZ3MgY29udHJvbHM7CisrCQlwdWJsaWMg Q2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsQ2xpY2tUeXBlIGR3ZWxsX2NsaWNrX3R5cGU7CisrCQlw dWJsaWMgQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsTW9kZSBkd2VsbF9tb2RlOworKwkJcHVibGlj IENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbERpcmVjdGlvbiBkd2VsbF9nZXN0dXJlX3NpbmdsZTsK KysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxEaXJlY3Rpb24gZHdlbGxfZ2VzdHVy ZV9kb3VibGU7CisrCQlwdWJsaWMgQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsRGlyZWN0aW9uIGR3 ZWxsX2dlc3R1cmVfZHJhZzsKKysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxEaXJl Y3Rpb24gZHdlbGxfZ2VzdHVyZV9zZWNvbmRhcnk7CisrCQlwdWJsaWMgaW50IHNlY29uZGFyeV9j bGlja19kZWxheTsKKysJCXB1YmxpYyBpbnQgZHdlbGxfZGVsYXk7CisrCQlwdWJsaWMgaW50IGR3 ZWxsX3RocmVzaG9sZDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMjgiKV0KKysJcHVibGljIHN0cnVjdCBQcm94aW1pdHlFdmVudCB7CisrCQlwdWJsaWMgQ2x1 dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBD bHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0 YWdlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2Vh ayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRfY29w eSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJDTFVUVEVSX1RZ UEVfVU5JVFMiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0 IFVuaXRzIHsKKysJCXB1YmxpYyBDbHV0dGVyLlVuaXRzPyBjb3B5ICgpOworKwkJcHVibGljIHZv aWQgZnJlZSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX2NtIild CisrCQlwdWJsaWMgVW5pdHMuZnJvbV9jbSAoZmxvYXQgY20pOworKwkJW0NDb2RlIChjbmFtZSA9 ICJjbHV0dGVyX3VuaXRzX2Zyb21fZW0iKV0KKysJCXB1YmxpYyBVbml0cy5mcm9tX2VtIChmbG9h dCBlbSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9lbV9mb3JfZm9u dCIpXQorKwkJcHVibGljIFVuaXRzLmZyb21fZW1fZm9yX2ZvbnQgKHN0cmluZyBmb250X25hbWUs IGZsb2F0IGVtKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX21tIild CisrCQlwdWJsaWMgVW5pdHMuZnJvbV9tbSAoZmxvYXQgbW0pOworKwkJW0NDb2RlIChjbmFtZSA9 ICJjbHV0dGVyX3VuaXRzX2Zyb21fcGl4ZWxzIildCisrCQlwdWJsaWMgVW5pdHMuZnJvbV9waXhl bHMgKGludCBweCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9wdCIp XQorKwkJcHVibGljIFVuaXRzLmZyb21fcHQgKGZsb2F0IHB0KTsKKysJCVtDQ29kZSAoY25hbWUg PSAiY2x1dHRlcl91bml0c19mcm9tX3N0cmluZyIpXQorKwkJcHVibGljIFVuaXRzLmZyb21fc3Ry aW5nIChzdHJpbmcgc3RyKTsKKysJCXB1YmxpYyBDbHV0dGVyLlVuaXRUeXBlIGdldF91bml0X3R5 cGUgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3VuaXRfdmFsdWUgKCk7CisrCQlwdWJsaWMgZmxv YXQgdG9fcGl4ZWxzICgpOworKwkJcHVibGljIHN0cmluZyB0b19zdHJpbmcgKCk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9 ICJDTFVUVEVSX0FDVE9SX0FMSUdOXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rvcl9hbGlnbl9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZW51 bSBBY3RvckFsaWduIHsKKysJCUZJTEwsCisrCQlTVEFSVCwKKysJCUNFTlRFUiwKKysJCUVORAor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNw cmVmaXggPSAiQ0xVVFRFUl9BQ1RPUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0b3JfZmxhZ3Nf Z2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBBY3RvckZsYWdzIHsKKysJ CU1BUFBFRCwKKysJCVJFQUxJWkVELAorKwkJUkVBQ1RJVkUsCisrCQlWSVNJQkxFLAorKwkJTk9f TEFZT1VUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0FMSUdOXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hbGln bl9heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVi bGljIGVudW0gQWxpZ25BeGlzIHsKKysJCVhfQVhJUywKKysJCVlfQVhJUywKKysJCUJPVEgKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJl Zml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FsbG9jYXRpb25fZmxhZ3NfZ2V0 X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1 YmxpYyBlbnVtIEFsbG9jYXRpb25GbGFncyB7CisrCQlBTExPQ0FUSU9OX05PTkUsCisrCQlBQlNP TFVURV9PUklHSU5fQ0hBTkdFRCwKKysJCURFTEVHQVRFX0xBWU9VVAorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYW5pbWF0aW9uX21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBBbmltYXRpb25Nb2RlIHsK KysJCUNVU1RPTV9NT0RFLAorKwkJTElORUFSLAorKwkJRUFTRV9JTl9RVUFELAorKwkJRUFTRV9P VVRfUVVBRCwKKysJCUVBU0VfSU5fT1VUX1FVQUQsCisrCQlFQVNFX0lOX0NVQklDLAorKwkJRUFT RV9PVVRfQ1VCSUMsCisrCQlFQVNFX0lOX09VVF9DVUJJQywKKysJCUVBU0VfSU5fUVVBUlQsCisr CQlFQVNFX09VVF9RVUFSVCwKKysJCUVBU0VfSU5fT1VUX1FVQVJULAorKwkJRUFTRV9JTl9RVUlO VCwKKysJCUVBU0VfT1VUX1FVSU5ULAorKwkJRUFTRV9JTl9PVVRfUVVJTlQsCisrCQlFQVNFX0lO X1NJTkUsCisrCQlFQVNFX09VVF9TSU5FLAorKwkJRUFTRV9JTl9PVVRfU0lORSwKKysJCUVBU0Vf SU5fRVhQTywKKysJCUVBU0VfT1VUX0VYUE8sCisrCQlFQVNFX0lOX09VVF9FWFBPLAorKwkJRUFT RV9JTl9DSVJDLAorKwkJRUFTRV9PVVRfQ0lSQywKKysJCUVBU0VfSU5fT1VUX0NJUkMsCisrCQlF QVNFX0lOX0VMQVNUSUMsCisrCQlFQVNFX09VVF9FTEFTVElDLAorKwkJRUFTRV9JTl9PVVRfRUxB U1RJQywKKysJCUVBU0VfSU5fQkFDSywKKysJCUVBU0VfT1VUX0JBQ0ssCisrCQlFQVNFX0lOX09V VF9CQUNLLAorKwkJRUFTRV9JTl9CT1VOQ0UsCisrCQlFQVNFX09VVF9CT1VOQ0UsCisrCQlFQVNF X0lOX09VVF9CT1VOQ0UsCisrCQlTVEVQUywKKysJCVNURVBfU1RBUlQsCisrCQlTVEVQX0VORCwK KysJCUNVQklDX0JFWklFUiwKKysJCUVBU0UsCisrCQlFQVNFX0lOLAorKwkJRUFTRV9PVVQsCisr CQlFQVNFX0lOX09VVCwKKysJCUFOSU1BVElPTl9MQVNUCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0JJTl9B TElHTk1FTlRfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Jpbl9hbGlnbm1lbnRfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51bSBCaW5BbGlnbm1l bnQgeworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlKV0KKysJCUZJWEVELAorKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlKV0KKysJCUZJTEwsCisrCQlTVEFSVCwKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSldCisrCQlFTkQsCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUpXQorKwkJQ0VOVEVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0JJTkRfIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2JpbmRfY29vcmRpbmF0ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIEJpbmRDb29yZGluYXRlIHsKKysJCVgsCisrCQlZ LAorKwkJV0lEVEgsCisrCQlIRUlHSFQsCisrCQlQT1NJVElPTiwKKysJCVNJWkUsCisrCQlBTEwK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj cHJlZml4ID0gIkNMVVRURVJfQk9YX0FMSUdOTUVOVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYm94 X2FsaWdubWVudF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CXB1YmxpYyBlbnVtIEJveEFsaWdubWVudCB7CisrCQlTVEFSVCwKKysJCUVORCwKKysJCUNFTlRF UgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNwcmVmaXggPSAiQ0xVVFRFUl9CVVRUT05fU1RBVEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2J1 dHRvbl9zdGF0ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBCdXR0b25TdGF0ZSB7Cisr CQlSRUxFQVNFRCwKKysJCVBSRVNTRUQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQ09OVEVOVF9HUkFWSVRZ XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb250ZW50X2dyYXZpdHlfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0gQ29udGVudEdyYXZpdHkg eworKwkJVE9QX0xFRlQsCisrCQlUT1AsCisrCQlUT1BfUklHSFQsCisrCQlMRUZULAorKwkJQ0VO VEVSLAorKwkJUklHSFQsCisrCQlCT1RUT01fTEVGVCwKKysJCUJPVFRPTSwKKysJCUJPVFRPTV9S SUdIVCwKKysJCVJFU0laRV9GSUxMLAorKwkJUkVTSVpFX0FTUEVDVAorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9SRVBFQVRfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnRlbnRfcmVwZWF0X2dldF90eXBlICgp IildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGVu dW0gQ29udGVudFJlcGVhdCB7CisrCQlOT05FLAorKwkJWF9BWElTLAorKwkJWV9BWElTLAorKwkJ Qk9USAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9ERUJVR18iLCB0eXBlX2lkID0gImNsdXR0ZXJfZGVidWdf ZmxhZ19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIERlYnVnRmxhZyB7 CisrCQlNSVNDLAorKwkJQUNUT1IsCisrCQlURVhUVVJFLAorKwkJRVZFTlQsCisrCQlQQUlOVCwK KysJCVBBTkdPLAorKwkJQkFDS0VORCwKKysJCVNDSEVEVUxFUiwKKysJCVNDUklQVCwKKysJCVNI QURFUiwKKysJCU1VTFRJU1RBR0UsCisrCQlBTklNQVRJT04sCisrCQlMQVlPVVQsCisrCQlQSUNL LAorKwkJRVZFTlRMT09QLAorKwkJQ0xJUFBJTkcsCisrCQlPT0JfVFJBTlNGT1JNUworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9EUkFHXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kcmFnX2F4aXNfZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgZW51bSBEcmFnQXhp cyB7CisrCQlBWElTX05PTkUsCisrCQlYX0FYSVMsCisrCQlZX0FYSVMKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRU RVJfREVCVUdfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2RyYXdfZGVidWdfZmxhZ19nZXRfdHlwZSAo KSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIERyYXdEZWJ1Z0ZsYWcgeworKwkJRElTQUJM RV9TV0FQX0VWRU5UUywKKysJCURJU0FCTEVfQ0xJUFBFRF9SRURSQVdTLAorKwkJUkVEUkFXUywK KysJCVBBSU5UX1ZPTFVNRVMsCisrCQlESVNBQkxFX0NVTExJTkcsCisrCQlESVNBQkxFX09GRlND UkVFTl9SRURJUkVDVCwKKysJCUNPTlRJTlVPVVNfUkVEUkFXLAorKwkJUEFJTlRfREVGT1JNX1RJ TEVTLAorKwkJUEFJTlRfREFNQUdFX1JFR0lPTgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9FRkZFQ1RfUEFJ TlRfQUNUT1JfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2VmZmVjdF9wYWludF9mbGFnc19nZXRfdHlw ZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEVmZmVjdFBhaW50RmxhZ3MgeworKwkJ W0NDb2RlIChjbmFtZSA9ICJDTFVUVEVSX0VGRkVDVF9QQUlOVF9BQ1RPUl9ESVJUWSIpXQorKwkJ QUNUT1JfRElSVFkKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfRVZFTlRfIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2V2ZW50X2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwlwdWJsaWMgZW51bSBFdmVudEZsYWdzIHsKKysJCU5PTkUsCisrCQlGTEFH X1NZTlRIRVRJQywKKysJCUZMQUdfSU5QVVRfTUVUSE9ELAorKwkJRkxBR19SRVBFQVRFRAorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZXZlbnRfdHlwZV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVtIEV2ZW50VHlw ZSB7CisrCQlOT1RISU5HLAorKwkJS0VZX1BSRVNTLAorKwkJS0VZX1JFTEVBU0UsCisrCQlNT1RJ T04sCisrCQlFTlRFUiwKKysJCUxFQVZFLAorKwkJQlVUVE9OX1BSRVNTLAorKwkJQlVUVE9OX1JF TEVBU0UsCisrCQlTQ1JPTEwsCisrCQlTVEFHRV9TVEFURSwKKysJCURFU1RST1lfTk9USUZZLAor KwkJQ0xJRU5UX01FU1NBR0UsCisrCQlERUxFVEUsCisrCQlUT1VDSF9CRUdJTiwKKysJCVRPVUNI X1VQREFURSwKKysJCVRPVUNIX0VORCwKKysJCVRPVUNIX0NBTkNFTCwKKysJCVRPVUNIUEFEX1BJ TkNILAorKwkJVE9VQ0hQQURfU1dJUEUsCisrCQlQUk9YSU1JVFlfSU4sCisrCQlQUk9YSU1JVFlf T1VULAorKwkJUEFEX0JVVFRPTl9QUkVTUywKKysJCVBBRF9CVVRUT05fUkVMRUFTRSwKKysJCVBB RF9TVFJJUCwKKysJCVBBRF9SSU5HLAorKwkJRVZFTlRfTEFTVAorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9G RUFUVVJFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9mZWF0dXJlX2ZsYWdzX2dldF90eXBlICgpIild CisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgZW51bSBG ZWF0dXJlRmxhZ3MgeworKwkJVEVYVFVSRV9OUE9ULAorKwkJU1dBUF9USFJPVFRMRSwKKysJCVNU QUdFX1NUQVRJQywKKysJCVNUQUdFX0NVUlNPUiwKKysJCVNIQURFUlNfR0xTTCwKKysJCU9GRlND UkVFTiwKKysJCVNUQUdFX01VTFRJUExFLAorKwkJU1dBUF9FVkVOVFM7CisrCQlbQ0NvZGUgKGNu YW1lID0gImNsdXR0ZXJfZmVhdHVyZV9hdmFpbGFibGUiKV0KKysJCXB1YmxpYyBib29sIGlzX2F2 YWlsYWJsZSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9mZWF0dXJlX2dldF9hbGwi KV0KKysJCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5GZWF0dXJlRmxhZ3MgQGdldCAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4 ID0gIkNMVVRURVJfRkxPV18iLCB0eXBlX2lkID0gImNsdXR0ZXJfZmxvd19vcmllbnRhdGlvbl9n ZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBlbnVt IEZsb3dPcmllbnRhdGlvbiB7CisrCQlIT1JJWk9OVEFMLAorKwkJVkVSVElDQUwKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0g IkNMVVRURVJfR0VTVFVSRV9UUklHR0VSX0VER0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dlc3R1 cmVfdHJpZ2dlcl9lZGdlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4 IildCisrCXB1YmxpYyBlbnVtIEdlc3R1cmVUcmlnZ2VyRWRnZSB7CisrCQlOT05FLAorKwkJQUZU RVIsCisrCQlCRUZPUkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfR1JBVklUWV8iLCB0eXBlX2lkID0gImNs dXR0ZXJfZ3Jhdml0eV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4yMiIsIHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMg ZW51bSBHcmF2aXR5IHsKKysJCU5PTkUsCisrCQlOT1JUSCwKKysJCU5PUlRIX0VBU1QsCisrCQlF QVNULAorKwkJU09VVEhfRUFTVCwKKysJCVNPVVRILAorKwkJU09VVEhfV0VTVCwKKysJCVdFU1Qs CisrCQlOT1JUSF9XRVNULAorKwkJQ0VOVEVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0dSSURfUE9TSVRJ T05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dyaWRfcG9zaXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGVudW0gR3JpZFBvc2l0aW9uIHsK KysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVRPUCwKKysJCUJPVFRPTQorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9JTklUXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbml0X2Vycm9yX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGVudW0gSW5pdEVycm9yIHsKKysJ CVNVQ0NFU1MsCisrCQlFUlJPUl9VTktOT1dOLAorKwkJRVJST1JfVEhSRUFEUywKKysJCUVSUk9S X0JBQ0tFTkQsCisrCQlFUlJPUl9JTlRFUk5BTDsKKysJCXB1YmxpYyBzdGF0aWMgR0xpYi5RdWFy ayBxdWFyayAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfQVhJU18iLCB0eXBlX2lkID0gImNs dXR0ZXJfaW5wdXRfYXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS42 IildCisrCXB1YmxpYyBlbnVtIElucHV0QXhpcyB7CisrCQlJR05PUkUsCisrCQlYLAorKwkJWSwK KysJCVBSRVNTVVJFLAorKwkJWFRJTFQsCisrCQlZVElMVCwKKysJCVdIRUVMLAorKwkJRElTVEFO Q0UsCisrCQlST1RBVElPTiwKKysJCVNMSURFUiwKKysJCUxBU1QKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJf SU5QVVRfQ09OVEVOVF9ISU5UXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9jb250ZW50X2hp bnRfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBJbnB1dENv bnRlbnRIaW50RmxhZ3MgeworKwkJQ09NUExFVElPTiwKKysJCVNQRUxMQ0hFQ0ssCisrCQlBVVRP X0NBUElUQUxJWkFUSU9OLAorKwkJTE9XRVJDQVNFLAorKwkJVVBQRVJDQVNFLAorKwkJVElUTEVD QVNFLAorKwkJSElEREVOX1RFWFQsCisrCQlTRU5TSVRJVkVfREFUQSwKKysJCUxBVElOLAorKwkJ TVVMVElMSU5FCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0NPTlRFTlRfUFVSUE9TRV8iLCB0eXBl X2lkID0gImNsdXR0ZXJfaW5wdXRfY29udGVudF9wdXJwb3NlX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBlbnVtIElucHV0Q29udGVudFB1cnBvc2UgeworKwkJTk9STUFMLAorKwkJQUxQSEEsCisr CQlESUdJVFMsCisrCQlOVU1CRVIsCisrCQlQSE9ORSwKKysJCVVSTCwKKysJCUVNQUlMLAorKwkJ TkFNRSwKKysJCVBBU1NXT1JELAorKwkJREFURSwKKysJCVRJTUUsCisrCQlEQVRFVElNRSwKKysJ CVRFUk1JTkFMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0RFVklDRV9NQVBQSU5HXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl9pbnB1dF9kZXZpY2VfbWFwcGluZ19nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgZW51bSBJbnB1dERldmljZU1hcHBpbmcgeworKwkJQUJTT0xVVEUsCisrCQlSRUxBVElWRQor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNw cmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9ERVZJQ0VfUEFEX1NPVVJDRV8iLCB0eXBlX2lkID0gImNs dXR0ZXJfaW5wdXRfZGV2aWNlX3BhZF9zb3VyY2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVu dW0gSW5wdXREZXZpY2VQYWRTb3VyY2UgeworKwkJVU5LTk9XTiwKKysJCUZJTkdFUgorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9JTlBVVF9ERVZJQ0VfVE9PTF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRf ZGV2aWNlX3Rvb2xfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4y OCIpXQorKwlwdWJsaWMgZW51bSBJbnB1dERldmljZVRvb2xUeXBlIHsKKysJCU5PTkUsCisrCQlQ RU4sCisrCQlFUkFTRVIsCisrCQlCUlVTSCwKKysJCVBFTkNJTCwKKysJCUFJUkJSVVNILAorKwkJ TU9VU0UsCisrCQlMRU5TCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9p bnB1dF9kZXZpY2VfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCXB1YmxpYyBlbnVtIElucHV0RGV2aWNlVHlwZSB7CisrCQlQT0lOVEVSX0RFVklDRSwK KysJCUtFWUJPQVJEX0RFVklDRSwKKysJCUVYVEVOU0lPTl9ERVZJQ0UsCisrCQlKT1lTVElDS19E RVZJQ0UsCisrCQlUQUJMRVRfREVWSUNFLAorKwkJVE9VQ0hQQURfREVWSUNFLAorKwkJVE9VQ0hT Q1JFRU5fREVWSUNFLAorKwkJUEVOX0RFVklDRSwKKysJCUVSQVNFUl9ERVZJQ0UsCisrCQlDVVJT T1JfREVWSUNFLAorKwkJUEFEX0RFVklDRSwKKysJCU5fREVWSUNFX1RZUEVTCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJD TFVUVEVSX0lOUFVUX01PREVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X21vZGVfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgZW51bSBJbnB1 dE1vZGUgeworKwkJTUFTVEVSLAorKwkJU0xBVkUsCisrCQlGTE9BVElORworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9JTlBVVF9QQU5FTF9TVEFURV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfcGFuZWxf c3RhdGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gSW5wdXRQYW5lbFN0YXRlIHsKKysJ CU9GRiwKKysJCU9OLAorKwkJVE9HR0xFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOVEVSUE9MQVRJT05f IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2ludGVycG9sYXRpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMjIiLCBzaW5j ZSA9ICIxLjIiKV0KKysJcHVibGljIGVudW0gSW50ZXJwb2xhdGlvbiB7CisrCQlMSU5FQVIsCisr CQlDVUJJQworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9LRVlfU1RBVEVfIiwgdHlwZV9pZCA9ICJjbHV0dGVy X2tleV9zdGF0ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBLZXlTdGF0ZSB7CisrCQlS RUxFQVNFRCwKKysJCVBSRVNTRUQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQTExWV8iLCB0eXBlX2lkID0g ImNsdXR0ZXJfa2V5Ym9hcmRfYTExeV9mbGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisr CXB1YmxpYyBlbnVtIEtleWJvYXJkQTExeUZsYWdzIHsKKysJCUtFWUJPQVJEX0VOQUJMRUQsCisr CQlUSU1FT1VUX0VOQUJMRUQsCisrCQlNT1VTRV9LRVlTX0VOQUJMRUQsCisrCQlTTE9XX0tFWVNf RU5BQkxFRCwKKysJCVNMT1dfS0VZU19CRUVQX1BSRVNTLAorKwkJU0xPV19LRVlTX0JFRVBfQUND RVBULAorKwkJU0xPV19LRVlTX0JFRVBfUkVKRUNULAorKwkJQk9VTkNFX0tFWVNfRU5BQkxFRCwK KysJCUJPVU5DRV9LRVlTX0JFRVBfUkVKRUNULAorKwkJVE9HR0xFX0tFWVNfRU5BQkxFRCwKKysJ CVNUSUNLWV9LRVlTX0VOQUJMRUQsCisrCQlTVElDS1lfS0VZU19UV09fS0VZX09GRiwKKysJCVNU SUNLWV9LRVlTX0JFRVAsCisrCQlGRUFUVVJFX1NUQVRFX0NIQU5HRV9CRUVQCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJD TFVUVEVSX0xPTkdfUFJFU1NfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2xvbmdfcHJlc3Nfc3RhdGVf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgZW51 bSBMb25nUHJlc3NTdGF0ZSB7CisrCQlRVUVSWSwKKysJCUFDVElWQVRFLAorKwkJQ0FOQ0VMCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3By ZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9tb2RpZmllcl90eXBlX2dldF90 eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlwdWJs aWMgZW51bSBNb2RpZmllclR5cGUgeworKwkJU0hJRlRfTUFTSywKKysJCUxPQ0tfTUFTSywKKysJ CUNPTlRST0xfTUFTSywKKysJCU1PRDFfTUFTSywKKysJCU1PRDJfTUFTSywKKysJCU1PRDNfTUFT SywKKysJCU1PRDRfTUFTSywKKysJCU1PRDVfTUFTSywKKysJCUJVVFRPTjFfTUFTSywKKysJCUJV VFRPTjJfTUFTSywKKysJCUJVVFRPTjNfTUFTSywKKysJCUJVVFRPTjRfTUFTSywKKysJCUJVVFRP TjVfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzEzX01BU0ssCisrCQlNT0RJRklFUl9SRVNF UlZFRF8xNF9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMTVfTUFTSywKKysJCU1PRElGSUVS X1JFU0VSVkVEXzE2X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xN19NQVNLLAorKwkJTU9E SUZJRVJfUkVTRVJWRURfMThfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzE5X01BU0ssCisr CQlNT0RJRklFUl9SRVNFUlZFRF8yMF9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjFfTUFT SywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzIyX01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8y M19NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjRfTUFTSywKKysJCU1PRElGSUVSX1JFU0VS VkVEXzI1X01BU0ssCisrCQlTVVBFUl9NQVNLLAorKwkJSFlQRVJfTUFTSywKKysJCU1FVEFfTUFT SywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzI5X01BU0ssCisrCQlSRUxFQVNFX01BU0ssCisrCQlN T0RJRklFUl9NQVNLCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX09GRlNDUkVFTl9SRURJUkVDVF8iLCB0eXBl X2lkID0gImNsdXR0ZXJfb2Zmc2NyZWVuX3JlZGlyZWN0X2dldF90eXBlICgpIildCisrCVtGbGFn c10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgZW51bSBPZmZzY3JlZW5S ZWRpcmVjdCB7CisrCQlBVVRPTUFUSUNfRk9SX09QQUNJVFksCisrCQlBTFdBWVMKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0g IkNMVVRURVJfT1JJRU5UQVRJT05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX29yaWVudGF0aW9uX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBlbnVt IE9yaWVudGF0aW9uIHsKKysJCUhPUklaT05UQUwsCisrCQlWRVJUSUNBTAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9QQU5fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Bhbl9heGlzX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBlbnVtIFBhbkF4aXMgeworKwkJ QVhJU19OT05FLAorKwkJWF9BWElTLAorKwkJWV9BWElTLAorKwkJQVhJU19BVVRPCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9 ICJDTFVUVEVSX1BBVEhfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhdGhfbm9kZV90eXBlX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gUGF0 aE5vZGVUeXBlIHsKKysJCU1PVkVfVE8sCisrCQlMSU5FX1RPLAorKwkJQ1VSVkVfVE8sCisrCQlD TE9TRSwKKysJCVJFTF9NT1ZFX1RPLAorKwkJUkVMX0xJTkVfVE8sCisrCQlSRUxfQ1VSVkVfVE8K KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj cHJlZml4ID0gIkNMVVRURVJfREVCVUdfTk9QXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9waWNrX2Rl YnVnX2ZsYWdfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBQaWNrRGVi dWdGbGFnIHsKKysJCVBJQ0tJTkcKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUElDS18iLCB0eXBlX2lkID0g ImNsdXR0ZXJfcGlja19tb2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJcHVibGljIGVudW0gUGlja01vZGUgeworKwkJTk9ORSwKKysJCVJFQUNUSVZFLAor KwkJQUxMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ExMVlfRFdFTExfQ0xJQ0tfVFlQRV8iLCB0eXBlX2lk ID0gImNsdXR0ZXJfcG9pbnRlcl9hMTF5X2R3ZWxsX2NsaWNrX3R5cGVfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGVudW0gUG9pbnRlckExMXlEd2VsbENsaWNrVHlwZSB7CisrCQlOT05FLAorKwkJ UFJJTUFSWSwKKysJCVNFQ09OREFSWSwKKysJCU1JRERMRSwKKysJCURPVUJMRSwKKysJCURSQUcK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj cHJlZml4ID0gIkNMVVRURVJfQTExWV9EV0VMTF9ESVJFQ1RJT05fIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX3BvaW50ZXJfYTExeV9kd2VsbF9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGVudW0gUG9pbnRlckExMXlEd2VsbERpcmVjdGlvbiB7CisrCQlOT05FLAorKwkJTEVGVCwKKysJ CVJJR0hULAorKwkJVVAsCisrCQlET1dOCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ExMVlfRFdFTExfTU9E RV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcG9pbnRlcl9hMTF5X2R3ZWxsX21vZGVfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGVudW0gUG9pbnRlckExMXlEd2VsbE1vZGUgeworKwkJV0lORE9XLAor KwkJR0VTVFVSRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9w b2ludGVyX2ExMXlfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51 bSBQb2ludGVyQTExeUZsYWdzIHsKKysJCVNFQ09OREFSWV9DTElDS19FTkFCTEVELAorKwkJRFdF TExfRU5BQkxFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZX1RJTUVPVVRfVFlQRV8iLCB0eXBlX2lk ID0gImNsdXR0ZXJfcG9pbnRlcl9hMTF5X3RpbWVvdXRfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgZW51bSBQb2ludGVyQTExeVRpbWVvdXRUeXBlIHsKKysJCVNFQ09OREFSWV9DTElDSywK KysJCURXRUxMLAorKwkJR0VTVFVSRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9SRVBBSU5UX0ZMQUdTXyIs IHR5cGVfaWQgPSAiY2x1dHRlcl9yZXBhaW50X2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFn c10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0gUmVwYWludEZs YWdzIHsKKysJCVBSRV9QQUlOVCwKKysJCVBPU1RfUEFJTlQsCisrCQlRVUVVRV9SRURSQVdfT05f QURECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSX1JFUVVFU1RfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JlcXVl c3RfbW9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCXB1 YmxpYyBlbnVtIFJlcXVlc3RNb2RlIHsKKysJCUhFSUdIVF9GT1JfV0lEVEgsCisrCQlXSURUSF9G T1JfSEVJR0hULAorKwkJQ09OVEVOVF9TSVpFCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl9yb3RhdGVfYXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMC40IildCisrCXB1YmxpYyBlbnVtIFJvdGF0ZUF4aXMgeworKwkJWF9BWElTLAorKwkJWV9B WElTLAorKwkJWl9BWElTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1JPVEFURV8iLCB0eXBlX2lkID0gImNs dXR0ZXJfcm90YXRlX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4yMiIsIHNpbmNlID0gIjAuNCIpXQor KwlwdWJsaWMgZW51bSBSb3RhdGVEaXJlY3Rpb24geworKwkJQ1csCisrCQlDQ1cKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0g IkNMVVRURVJfU0NBTElOR19GSUxURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NjYWxpbmdfZmls dGVyX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1Ymxp YyBlbnVtIFNjYWxpbmdGaWx0ZXIgeworKwkJTElORUFSLAorKwkJTkVBUkVTVCwKKysJCVRSSUxJ TkVBUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TQ1JPTExfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Njcm9s bF9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQor KwlwdWJsaWMgZW51bSBTY3JvbGxEaXJlY3Rpb24geworKwkJVVAsCisrCQlET1dOLAorKwkJTEVG VCwKKysJCVJJR0hULAorKwkJU01PT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDUk9MTF9GSU5JU0hF RF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc2Nyb2xsX2ZpbmlzaF9mbGFnc19nZXRfdHlwZSAoKSIp XQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI2IildCisrCXB1YmxpYyBlbnVt IFNjcm9sbEZpbmlzaEZsYWdzIHsKKysJCU5PTkUsCisrCQlIT1JJWk9OVEFMLAorKwkJVkVSVElD QUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfU0NST0xMXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3JvbGxf bW9kZV9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCXB1YmxpYyBlbnVtIFNjcm9sbE1vZGUgeworKwkJTk9ORSwKKysJCUhPUklaT05UQUxM WSwKKysJCVZFUlRJQ0FMTFksCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NDUk9MTF9TT1VS Q0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Njcm9sbF9zb3VyY2VfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMjYiKV0KKysJcHVibGljIGVudW0gU2Nyb2xsU291cmNlIHsK KysJCVVOS05PV04sCisrCQlXSEVFTCwKKysJCUZJTkdFUiwKKysJCUNPTlRJTlVPVVMKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4 ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NoYWRlcl90eXBlX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGVudW0gU2hhZGVyVHlw ZSB7CisrCQlWRVJURVhfU0hBREVSLAorKwkJRlJBR01FTlRfU0hBREVSCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVU VEVSX1NOQVBfRURHRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc25hcF9lZGdlX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJcHVibGljIGVudW0gU25hcEVkZ2Ug eworKwkJVE9QLAorKwkJUklHSFQsCisrCQlCT1RUT00sCisrCQlMRUZUCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVU VEVSX1NUQUdFX1NUQVRFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGFnZV9zdGF0ZV9nZXRfdHlw ZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGlj IGVudW0gU3RhZ2VTdGF0ZSB7CisrCQlBQ1RJVkFURUQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQ09MT1Jf IiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0YXRpY19jb2xvcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS42IildCisrCXB1YmxpYyBlbnVtIFN0YXRpY0NvbG9yIHsKKysJCVdI SVRFLAorKwkJQkxBQ0ssCisrCQlSRUQsCisrCQlEQVJLX1JFRCwKKysJCUdSRUVOLAorKwkJREFS S19HUkVFTiwKKysJCUJMVUUsCisrCQlEQVJLX0JMVUUsCisrCQlDWUFOLAorKwkJREFSS19DWUFO LAorKwkJTUFHRU5UQSwKKysJCURBUktfTUFHRU5UQSwKKysJCVlFTExPVywKKysJCURBUktfWUVM TE9XLAorKwkJR1JBWSwKKysJCURBUktfR1JBWSwKKysJCUxJR0hUX0dSQVksCisrCQlCVVRURVIs CisrCQlCVVRURVJfTElHSFQsCisrCQlCVVRURVJfREFSSywKKysJCU9SQU5HRSwKKysJCU9SQU5H RV9MSUdIVCwKKysJCU9SQU5HRV9EQVJLLAorKwkJQ0hPQ09MQVRFLAorKwkJQ0hPQ09MQVRFX0xJ R0hULAorKwkJQ0hPQ09MQVRFX0RBUkssCisrCQlDSEFNRUxFT04sCisrCQlDSEFNRUxFT05fTElH SFQsCisrCQlDSEFNRUxFT05fREFSSywKKysJCVNLWV9CTFVFLAorKwkJU0tZX0JMVUVfTElHSFQs CisrCQlTS1lfQkxVRV9EQVJLLAorKwkJUExVTSwKKysJCVBMVU1fTElHSFQsCisrCQlQTFVNX0RB UkssCisrCQlTQ0FSTEVUX1JFRCwKKysJCVNDQVJMRVRfUkVEX0xJR0hULAorKwkJU0NBUkxFVF9S RURfREFSSywKKysJCUFMVU1JTklVTV8xLAorKwkJQUxVTUlOSVVNXzIsCisrCQlBTFVNSU5JVU1f MywKKysJCUFMVU1JTklVTV80LAorKwkJQUxVTUlOSVVNXzUsCisrCQlBTFVNSU5JVU1fNiwKKysJ CVRSQU5TUEFSRU5UCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NURVBfTU9ERV8iLCB0eXBlX2lkID0gImNs dXR0ZXJfc3RlcF9tb2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCXB1YmxpYyBlbnVtIFN0ZXBNb2RlIHsKKysJCVNUQVJULAorKwkJRU5ECisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9 ICJDTFVUVEVSX1NXSVBFX0RJUkVDVElPTl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc3dpcGVfZGly ZWN0aW9uX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu OCIpXQorKwlwdWJsaWMgZW51bSBTd2lwZURpcmVjdGlvbiB7CisrCQlVUCwKKysJCURPV04sCisr CQlMRUZULAorKwkJUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVEVYVF9ESVJFQ1RJT05fIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX3RleHRfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGVudW0gVGV4dERpcmVjdGlvbiB7CisrCQlERUZB VUxULAorKwkJTFRSLAorKwkJUlRMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1RFWFRVUkVfIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX3RleHR1cmVfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4yMiIsIHNp bmNlID0gIjAuNCIpXQorKwlwdWJsaWMgZW51bSBUZXh0dXJlRmxhZ3MgeworKwkJTk9ORSwKKysJ CVJHQl9GTEFHX0JHUiwKKysJCVJHQl9GTEFHX1BSRU1VTFQsCisrCQlZVVZfRkxBR19ZVVYyCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3By ZWZpeCA9ICJDTFVUVEVSX1RFWFRVUkVfUVVBTElUWV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4 dHVyZV9xdWFsaXR5X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBl bnVtIFRleHR1cmVRdWFsaXR5IHsKKysJCUxPVywKKysJCU1FRElVTSwKKysJCUhJR0gKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4 ID0gIkNMVVRURVJfVElNRUxJTkVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RpbWVsaW5lX2RpcmVj dGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1Ymxp YyBlbnVtIFRpbWVsaW5lRGlyZWN0aW9uIHsKKysJCUZPUldBUkQsCisrCQlCQUNLV0FSRAorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl9UT1VDSFBBRF9HRVNUVVJFX1BIQVNFXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl90b3VjaHBhZF9nZXN0dXJlX3BoYXNlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjI0IildCisrCXB1YmxpYyBlbnVtIFRvdWNocGFkR2VzdHVyZVBoYXNlIHsKKysJCUJF R0lOLAorKwkJVVBEQVRFLAorKwkJRU5ELAorKwkJQ0FOQ0VMCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1VO SVRfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3VuaXRfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFVuaXRUeXBlIHsKKysJCVBJWEVM LAorKwkJRU0sCisrCQlNTSwKKysJCVBPSU5ULAorKwkJQ00KKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVklS VFVBTF9ERVZJQ0VfVFlQRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdmlydHVhbF9kZXZpY2VfdHlw ZV9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIFZpcnR1YWxEZXZpY2VU eXBlIHsKKysJCU5PTkUsCisrCQlLRVlCT0FSRCwKKysJCVBPSU5URVIsCisrCQlUT1VDSFNDUkVF TgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNwcmVmaXggPSAiQ0xVVFRFUl9aT09NXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl96b29tX2F4aXNf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGVu dW0gWm9vbUF4aXMgeworKwkJWF9BWElTLAorKwkJWV9BWElTLAorKwkJQk9USAorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAi Q0xVVFRFUl9JTUFHRV9FUlJPUl9JTlZBTElEXyIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwlwdWJsaWMgZXJyb3Jkb21haW4gSW1hZ2VFcnJvciB7CisrCQlEQVRBOworKwkJcHVi bGljIHN0YXRpYyBHTGliLlF1YXJrIHF1YXJrICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TQ1JJUFRf RVJST1JfSU5WQUxJRF8iKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMg ZXJyb3Jkb21haW4gU2NyaXB0RXJyb3IgeworKwkJVFlQRV9GVU5DVElPTiwKKysJCVBST1BFUlRZ LAorKwkJVkFMVUU7CisrCQlwdWJsaWMgc3RhdGljIEdMaWIuUXVhcmsgcXVhcmsgKCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaW5zdGFu Y2VfcG9zID0gMS45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJcHVibGljIGRl bGVnYXRlIENsdXR0ZXIuQWN0b3IgQWN0b3JDcmVhdGVDaGlsZEZ1bmMgKEdMaWIuT2JqZWN0IGl0 ZW0pOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBp bnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgZGVsZWdhdGUg ZG91YmxlIEFscGhhRnVuYyAoQ2x1dHRlci5BbHBoYSBhbHBoYSk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9IDQuOSldCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGRlbGVnYXRlIGJvb2wgQmluZGlu Z0FjdGlvbkZ1bmMgKEdMaWIuT2JqZWN0IGdvYmplY3QsIHN0cmluZyBhY3Rpb25fbmFtZSwgdWlu dCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkp XQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBDYWxsYmFjayAoQ2x1dHRlci5BY3RvciBhY3Rvcik7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190 YXJnZXQgPSBmYWxzZSldCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIEVtaXRJbnB1dERldmljZUV2 ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50LCBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZSk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNl X3BvcyA9IDEuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCXB1YmxpYyBkZWxl Z2F0ZSBib29sIEV2ZW50RmlsdGVyRnVuYyAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3BvcyA9 IDEuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGRlbGVnYXRlIHZv aWQgUGF0aENhbGxiYWNrIChDbHV0dGVyLlBhdGhOb2RlIG5vZGUpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdGFyZ2V0ID0gZmFsc2UpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBkZWxlZ2F0ZSBib29sIFByb2dy ZXNzRnVuYyAoR0xpYi5WYWx1ZSBhLCBHTGliLlZhbHVlIGIsIGRvdWJsZSBwcm9ncmVzcywgR0xp Yi5WYWx1ZSByZXR2YWwpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSA2LjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIFNjcmlwdENvbm5lY3RGdW5jIChDbHV0dGVyLlNj cmlwdCBzY3JpcHQsIEdMaWIuT2JqZWN0IG9iamVjdCwgc3RyaW5nIHNpZ25hbF9uYW1lLCBzdHJp bmcgaGFuZGxlcl9uYW1lLCBHTGliLk9iamVjdCBjb25uZWN0X29iamVjdCwgR0xpYi5Db25uZWN0 RmxhZ3MgZmxhZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAzLjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwlwdWJsaWMgZGVsZWdhdGUgZG91YmxlIFRpbWVsaW5lUHJvZ3Jlc3NGdW5jIChDbHV0dGVy LlRpbWVsaW5lIHRpbWVsaW5lLCBkb3VibGUgZWxhcHNlZCwgZG91YmxlIHRvdGFsKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9DT0dMIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBjb25zdCBzdHJpbmcgQ09H TDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9DVVJSRU5UX1RJTUUiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIp XQorKwlwdWJsaWMgY29uc3QgaW50IENVUlJFTlRfVElNRTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9GTEFWT1VSIild CisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEw Iiwgc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBjb25zdCBzdHJpbmcgRkxBVk9VUjsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9QQVRIX1JFTEFUSVZFIildCisrCXB1YmxpYyBjb25zdCBpbnQgUEFUSF9SRUxBVElWRTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9QUklPUklUWV9SRURSQVciKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIp XQorKwlwdWJsaWMgY29uc3QgaW50IFBSSU9SSVRZX1JFRFJBVzsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBi YXNlX2luaXQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgc3RhdGljIHZv aWQgY2Fpcm9fY2xlYXIgKENhaXJvLkNvbnRleHQgY3IpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwlwdWJsaWMgc3RhdGljIHZvaWQgY2Fpcm9fc2V0X3NvdXJjZV9jb2xvciAoQ2Fpcm8uQ29u dGV4dCBjciwgQ2x1dHRlci5Db2xvciBjb2xvcik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwlwdWJsaWMgc3RhdGljIGJvb2wgY2hlY2tfd2luZG93aW5nX2JhY2tlbmQgKHN0cmluZyBiYWNr ZW5kX3R5cGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGNvbG9yX2Zyb21faGxzIChvdXQgQ2x1dHRlci5D b2xvciBjb2xvciwgZmxvYXQgaHVlLCBmbG9hdCBsdW1pbmFuY2UsIGZsb2F0IHNhdHVyYXRpb24p OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJ cHVibGljIHN0YXRpYyB2b2lkIGNvbG9yX2Zyb21fcGl4ZWwgKG91dCBDbHV0dGVyLkNvbG9yIGNv bG9yLCB1aW50MzIgcGl4ZWwpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3Rh dGljIGJvb2wgY29sb3JfZnJvbV9zdHJpbmcgKG91dCBDbHV0dGVyLkNvbG9yIGNvbG9yLCBzdHJp bmcgc3RyKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJcHVibGljIHN0YXRpYyB1bm93bmVk IENsdXR0ZXIuQ29sb3I/IGNvbG9yX2dldF9zdGF0aWMgKENsdXR0ZXIuU3RhdGljQ29sb3IgY29s b3IpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGRpc2Fi bGVfYWNjZXNzaWJpbGl0eSAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIHN0 YXRpYyB2b2lkIGRvX2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjE4IildCisrCXB1YmxpYyBzdGF0aWMgdWludCBldmVudF9hZGRfZmlsdGVyIChDbHV0dGVy LlN0YWdlPyBzdGFnZSwgW0NDb2RlIChkZWxlZ2F0ZV90YXJnZXRfcG9zID0gMi4yLCBkZXN0cm95 X25vdGlmeV9wb3MgPSAyLjEpXSBvd25lZCBDbHV0dGVyLkV2ZW50RmlsdGVyRnVuYyBmdW5jKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIHN0YXRpYyBDbHV0dGVyLkV2ZW50IGV2 ZW50X2dldCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIHN0YXRpYyB1bm93 bmVkIENsdXR0ZXIuRXZlbnQgZXZlbnRfcGVlayAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4Iild CisrCXB1YmxpYyBzdGF0aWMgdm9pZCBldmVudF9yZW1vdmVfZmlsdGVyICh1aW50IGlkKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGV2ZW50c19wZW5kaW5n ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgZ2V0X2Fj Y2Vzc2liaWxpdHlfZW5hYmxlZCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGlj IHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuRXZlbnQgZ2V0X2N1cnJlbnRfZXZlbnQgKCk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgdWludDMyIGdldF9jdXJyZW50X2V2 ZW50X3RpbWUgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBzdGF0aWMgdW5v d25lZCBDbHV0dGVyLkJhY2tlbmQgZ2V0X2RlZmF1bHRfYmFja2VuZCAoKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjYiKV0KKysJcHVibGljIHN0YXRpYyB1aW50IGdldF9kZWZhdWx0X2ZyYW1lX3JhdGUg KCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQor KwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5UZXh0 RGlyZWN0aW9uIGdldF9kZWZhdWx0X3RleHRfZGlyZWN0aW9uICgpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgUGFuZ28uRm9udE1hcCBnZXRfZm9udF9t YXAgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBzdGF0aWMgR0xpYi5PcHRp b25Hcm91cCBnZXRfb3B0aW9uX2dyb3VwICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwlw dWJsaWMgc3RhdGljIEdMaWIuT3B0aW9uR3JvdXAgZ2V0X29wdGlvbl9ncm91cF93aXRob3V0X2lu aXQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBz dHJpbmcgZ2V0X3NjcmlwdF9pZCAoR0xpYi5PYmplY3QgZ29iamVjdCk7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIENs dXR0ZXIuSW5pdEVycm9yIGluaXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gImFyZ2Mi LCBhcnJheV9sZW5ndGhfcG9zID0gMC41KV0gcmVmIHVub3duZWQgc3RyaW5nW10/IGFyZ3YpOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgc3RhdGljIENsdXR0ZXIuSW5pdEVycm9y IGluaXRfd2l0aF9hcmdzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJhcmdjIiwgYXJy YXlfbGVuZ3RoX3BvcyA9IDAuNSldIHJlZiB1bm93bmVkIHN0cmluZ1tdPyBhcmd2LCBzdHJpbmc/ IHBhcmFtZXRlcl9zdHJpbmcsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBHTGliLk9w dGlvbkVudHJ5W10/IGVudHJpZXMsIHN0cmluZz8gdHJhbnNsYXRpb25fZG9tYWluKSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIildCisrCXB1YmxpYyBzdGF0aWMgdWludDMyIGtleXN5bV90b191bmljb2RlICh1aW50IGtl eXZhbCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwlwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgaW50IG1haW5fbGV2 ZWwgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwlwdWJsaWMgc3RhdGljIHZvaWQgbWFpbl9xdWl0ICgpOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNl dF9jdXN0b21fYmFja2VuZF9mdW5jICh2b2lkKiBmdW5jKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCXB1YmxpYyBzdGF0aWMgdWludCB1bmljb2RlX3RvX2tleXN5bSAodWludDMyIHdjKTsK Kyt9CitkaWZmIC0tZ2l0IGEvdmFwaS9tdXR0ZXItY29nbC02LWN1c3RvbS52YWxhIGIvdmFwaS9t dXR0ZXItY29nbC02LWN1c3RvbS52YWxhCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAw MDAwMDAuLmEyYzEwNjQ1CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL211dHRlci1jb2dsLTYt Y3VzdG9tLnZhbGEKK0BAIC0wLDAgKzEsMTI1IEBACisrbmFtZXNwYWNlIENvZ2wgeworKwlbQ29t cGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2dsSGFuZGxlIildCisrCXB1YmxpYyBjbGFzcyBC aXRtYXA6IEhhbmRsZSB7CisrCQlwdWJsaWMgc3RhdGljIEJpdG1hcCBuZXdfZnJvbV9maWxlIChz dHJpbmcgZmlsZW5hbWUpIHRocm93cyBHTGliLkVycm9yOworKwl9CisrCisrCVtDb21wYWN0XQor KwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJcHVibGljIGNsYXNzIEJ1ZmZlcjog SGFuZGxlIHsKKysJCXB1YmxpYyB1aW50IGdldF9zaXplICgpOworKwkJcHVibGljIGJvb2wgc2V0 X2RhdGEgKHNpemVfdCBvZmZzZXQsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3R5cGUgPSAic2l6ZV90 IildIHVpbnQ4W10gZGF0YSk7CisrCQlwdWJsaWMgdm9pZCB1bm1hcCAoKTsKKysJfQorKworKwlb Q0NvZGUgKGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IENvbG9yIHsKKysJ CXB1YmxpYyBDb2xvci5mcm9tXzRmIChmbG9hdCByZWQsIGZsb2F0IGdyZWVuLCBmbG9hdCBibHVl LCBmbG9hdCBhbHBoYSk7CisrCQlwdWJsaWMgQ29sb3IuZnJvbV80dWIgKHVpbnQ4IHJlZCwgdWlu dDggZ3JlZW4sIHVpbnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJfQorKworKwlbQ29tcGFjdF0K KysJW0NDb2RlIChyZWZfZnVuY3Rpb24gPSAiY29nbF9oYW5kbGVfcmVmIiwgdW5yZWZfZnVuY3Rp b24gPSAiY29nbF9oYW5kbGVfdW5yZWYiKV0KKysJcHVibGljIGNsYXNzIEhhbmRsZSB7CisrCQlb Q0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfYml0bWFwIildCisrCQlwdWJsaWMgYm9vbCBpc19iaXRt YXAgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfYnVmZmVyIildCisrCQlwdWJsaWMg Ym9vbCBpc19idWZmZXIgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfbWF0ZXJpYWwi KV0KKysJCXB1YmxpYyBib29sIGlzX21hdGVyaWFsICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJj b2dsX2lzX29mZnNjcmVlbiIpXQorKwkJcHVibGljIGJvb2wgaXNfb2Zmc2NyZWVuICgpOworKwkJ W0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3BpeGVsX2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wg aXNfcGl4ZWxfYnVmZmVyICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3Byb2dyYW0i KV0KKysJCXB1YmxpYyBib29sIGlzX3Byb2dyYW0gKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNv Z2xfaXNfc2hhZGVyIildCisrCQlwdWJsaWMgYm9vbCBpc19zaGFkZXIgKCk7CisrCQlbQ0NvZGUg KGNuYW1lID0gImNvZ2xfaXNfdGV4dHVyZSIpXQorKwkJcHVibGljIGJvb2wgaXNfdGV4dHVyZSAo KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc192ZXJ0ZXhfYnVmZmVyIildCisrCQlwdWJs aWMgYm9vbCBpc192ZXJ0ZXhfYnVmZmVyICgpOworKwl9CisrCisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiY29nbF9wYXRoX2NvcHki KV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQYXRoIHsKKysJCXB1YmxpYyBzdGF0aWMg dm9pZCBAbmV3ICgpOworKwl9CisrCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUGl4ZWxC dWZmZXI6IEhhbmRsZSB7CisrCQlwdWJsaWMgUGl4ZWxCdWZmZXIgKHVpbnQgc2l6ZSk7CisrCQlw dWJsaWMgUGl4ZWxCdWZmZXIuZm9yX3NpemUgKHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0LCBDb2ds LlBpeGVsRm9ybWF0IGZvcm1hdCwgdWludCBzdHJpZGUpOworKwl9CisrCisrCVtDb21wYWN0XQor KwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24gPSAiY29nbF9wcm9n cmFtX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfcHJvZ3JhbV91bnJlZiIpXQorKwlwdWJs aWMgY2xhc3MgUHJvZ3JhbTogSGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9jcmVh dGVfcHJvZ3JhbSIsIHR5cGUgPSAiQ29nbEhhbmRsZSoiLCBoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJcHVibGljIFByb2dyYW0gKCk7CisrCQlwdWJsaWMgdm9pZCBhdHRhY2hf c2hhZGVyIChDb2dsLlNoYWRlciBzaGFkZXJfaGFuZGxlKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3Vu aWZvcm1fbG9jYXRpb24gKHN0cmluZyB1bmlmb3JtX25hbWUpOworKwkJcHVibGljIHZvaWQgbGlu ayAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtXzFmIChpbnQgdW5pZm9ybV9ubywg ZmxvYXQgdmFsdWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1fMWkgKGludCB1bmlm b3JtX25vLCBpbnQgdmFsdWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1fZmxvYXQg KGludCB1bmlmb3JtX25vLCBpbnQgc2l6ZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMi45 KV0gZmxvYXRbXSB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV9pbnQgKGlu dCB1bmlmb3JtX25vLCBpbnQgc2l6ZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMi45KV0g aW50W10gdmFsdWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1fbWF0cml4IChpbnQg dW5pZm9ybV9ubywgaW50IHNpemUsIGJvb2wgdHJhbnNwb3NlLCBbQ0NvZGUgKGFycmF5X2xlbmd0 aF9wb3MgPSAyLjkpXSBmbG9hdFtdIHZhbHVlKTsKKysJCXB1YmxpYyB2b2lkIHVzZSAoKTsKKysJ fQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2dsSGFuZGxlIiwgcmVmX2Z1 bmN0aW9uID0gImNvZ2xfc2hhZGVyX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfc2hhZGVy X3VucmVmIildCisrCXB1YmxpYyBjbGFzcyBTaGFkZXI6IEhhbmRsZSB7CisrCQlbQ0NvZGUgKGNu YW1lID0gImNvZ2xfY3JlYXRlX3NoYWRlciIsIHR5cGUgPSAiQ29nbEhhbmRsZSoiLCBoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFNoYWRlciAoQ29nbC5TaGFkZXJU eXBlIHNoYWRlcl90eXBlKTsKKysJCXB1YmxpYyB2b2lkIGNvbXBpbGUgKCk7CisrCQlwdWJsaWMg c3RyaW5nIGdldF9pbmZvX2xvZyAoKTsKKysJCXB1YmxpYyBDb2dsLlNoYWRlclR5cGUgZ2V0X3R5 cGUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19jb21waWxlZCAoKTsKKysJCXB1YmxpYyB2b2lkIHNv dXJjZSAoc3RyaW5nIHNvdXJjZSk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAoY25h bWUgPSAiQ29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3ZlcnRleF9idWZmZXJfcmVm IiwgdW5yZWZfZnVuY3Rpb24gPSAiY29nbF92ZXJ0ZXhfYnVmZmVyX3VucmVmIildCisrCXB1Ymxp YyBjbGFzcyBWZXJ0ZXhCdWZmZXI6IEhhbmRsZSB7CisrCQlbQ0NvZGUgKHR5cGUgPSAiQ29nbEhh bmRsZSoiLCBoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFZlcnRl eEJ1ZmZlciAodWludCBuX3ZlcnRpY2VzKTsKKysJCXB1YmxpYyB2b2lkIGFkZCAoc3RyaW5nIGF0 dHJpYnV0ZV9uYW1lLCB1Y2hhciBuX2NvbXBvbmVudHMsIENvZ2wuQXR0cmlidXRlVHlwZSB0eXBl LCBib29sIG5vcm1hbGl6ZWQsIHVpbnQxNiBzdHJpZGUsIHZvaWQqIHBvaW50ZXIpOworKwkJcHVi bGljIHZvaWQgZGVsZXRlIChzdHJpbmcgYXR0cmlidXRlX25hbWUpOworKwkJcHVibGljIHZvaWQg ZGlzYWJsZSAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGRyYXcgKENv Z2wuVmVydGljZXNNb2RlIG1vZGUsIGludCBmaXJzdCwgaW50IGNvdW50KTsKKysJCXB1YmxpYyB2 b2lkIGRyYXdfZWxlbWVudHMgKENvZ2wuVmVydGljZXNNb2RlIG1vZGUsIFZlcnRleEJ1ZmZlcklu ZGljZXMgaW5kaWNlcywgaW50IG1pbl9pbmRleCwgaW50IG1heF9pbmRleCwgaW50IGluZGljZXNf b2Zmc2V0LCBpbnQgY291bnQpOworKwkJcHVibGljIHZvaWQgZW5hYmxlIChzdHJpbmcgYXR0cmli dXRlX25hbWUpOworKwkJcHVibGljIHVpbnQgZ2V0X25fdmVydGljZXMgKCk7CisrCQlwdWJsaWMg dm9pZCBzdWJtaXQgKCk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29kZSAoY25hbWUgPSAi Q29nbEhhbmRsZSIpXQorKwlwdWJsaWMgY2xhc3MgVmVydGV4QnVmZmVySW5kaWNlczogSGFuZGxl IHsKKysJCXB1YmxpYyBWZXJ0ZXhCdWZmZXJJbmRpY2VzIChDb2dsLkluZGljZXNUeXBlIGluZGlj ZXNfdHlwZSwgdm9pZCogaW5kaWNlc19hcnJheSwgaW50IGluZGljZXNfbGVuKTsKKysJCXB1Ymxp YyBzdGF0aWMgdW5vd25lZCBDb2dsLlZlcnRleEJ1ZmZlckluZGljZXMgZ2V0X2Zvcl9xdWFkcyAo dWludCBuX2luZGljZXMpOworKwkJcHVibGljIENvZ2wuSW5kaWNlc1R5cGUgZ2V0X3R5cGUgKCk7 CisrCX0KKysKKysJW0NDb2RlICh0eXBlX2lkID0gIkNPR0xfVFlQRV9NQVRSSVgiLCBjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCXB1YmxpYyBzdHJ1Y3QgTWF0cml4IHsKKysJ CVtDQ29kZSAoY25hbWUgPSAiY29nbF9tYXRyaXhfaW5pdF9mcm9tX2FycmF5IiwgYXJyYXlfbGVu Z3RoID0gZmFsc2UsIGFycmF5X251bGxfdGVybWluYXRlZCA9IGZhbHNlKV0KKysJCXB1YmxpYyBN YXRyaXguZnJvbV9hcnJheSAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0W10g YXJyYXkpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX21hdHJpeF9pbml0X2lkZW50aXR5Iild CisrCQlwdWJsaWMgTWF0cml4LmlkZW50aXR5ICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2ds X21hdHJpeF9tdWx0aXBseSIpXQorKwkJcHVibGljIE1hdHJpeC5tdWx0aXBseSAoQ29nbC5NYXRy aXggYSwgQ29nbC5NYXRyaXggYik7CisrCX0KKysKKysJW1NpbXBsZVR5cGVdCisrCVtHSVIgKG5h bWUgPSAiQm9vbCIpXQorKwlbQm9vbGVhblR5cGVdCisrCXB1YmxpYyBzdHJ1Y3QgQm9vbCA6IGJv b2wgeworKwl9CisrCisrCXB1YmxpYyBzdGF0aWMgR0xpYi5DYWxsYmFjayBnZXRfcHJvY19hZGRy ZXNzKHN0cmluZyBzKTsKKyt9CitkaWZmIC0tZ2l0IGEvdmFwaS9tdXR0ZXItY29nbC02LmRlcHMg Yi92YXBpL211dHRlci1jb2dsLTYuZGVwcworbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAw MDAwMDAwLi45OGNjYWM1YgorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9tdXR0ZXItY29nbC02 LmRlcHMKK0BAIC0wLDAgKzEgQEAKKytwYW5nbworZGlmZiAtLWdpdCBhL3ZhcGkvbXV0dGVyLWNv Z2wtNi52YXBpIGIvdmFwaS9tdXR0ZXItY29nbC02LnZhcGkKK25ldyBmaWxlIG1vZGUgMTAwNjQ0 CitpbmRleCAwMDAwMDAwMC4uYzlhYjVkNTcKKy0tLSAvZGV2L251bGwKKysrKyBiL3ZhcGkvbXV0 dGVyLWNvZ2wtNi52YXBpCitAQCAtMCwwICsxLDEwNzcgQEAKKysvKiBtdXR0ZXItY29nbC02LnZh cGkgZ2VuZXJhdGVkIGJ5IHZhcGlnZW4sIGRvIG5vdCBtb2RpZnkuICovCisrCisrW0NDb2RlIChj cHJlZml4ID0gIkNvZ2wiLCBnaXJfbmFtZXNwYWNlID0gIkNvZ2wiLCBnaXJfdmVyc2lvbiA9ICI2 IiwgbG93ZXJfY2FzZV9jcHJlZml4ID0gImNvZ2xfIildCisrbmFtZXNwYWNlIENvZ2wgeworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDb2dsSGFu ZGxlIiwgdHlwZV9pZCA9ICJjb2dsX2JpdG1hcF9nZXRfZ3R5cGUgKCkiKV0KKysJW0NvbXBhY3Rd CisrCXB1YmxpYyBjbGFzcyBCaXRtYXAgOiBDb2dsLkhhbmRsZSB7CisrCQlwdWJsaWMgc3RhdGlj IHVpbnQzMiBlcnJvcl9xdWFyayAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlv biA9IGZhbHNlLCB0eXBlID0gIkNvZ2xCaXRtYXAqIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgQml0bWFwLmZyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lKSB0aHJv d3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg Q29nbC5QaXhlbEZvcm1hdCBnZXRfZm9ybWF0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2hlaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdldF9yb3dzdHJpZGUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgZ2V0X3NpemVfZnJvbV9maWxl IChzdHJpbmcgZmlsZW5hbWUsIG91dCBpbnQgd2lkdGgsIG91dCBpbnQgaGVpZ2h0KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdldF93aWR0aCAoKTsKKysJ CXB1YmxpYyBzdGF0aWMgQ29nbC5CaXRtYXAgbmV3X2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1l KSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDb2dsSGFuZGxlIildCisrCVtDb21wYWN0XQorKwlwdWJs aWMgY2xhc3MgQnVmZmVyIDogQ29nbC5IYW5kbGUgeworKwkJcHVibGljIHVpbnQgZ2V0X3NpemUg KCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfZGF0YSAoc2l6ZV90IG9mZnNldCwgW0NDb2RlIChhcnJh eV9sZW5ndGhfdHlwZSA9ICJzaXplX3QiKV0gdWludDhbXSBkYXRhKTsKKysJCXB1YmxpYyB2b2lk IHVubWFwICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIHR5cGVfaWQgPSAiY29nbF9jb250ZXh0X2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgY2xh c3MgQ29udGV4dCA6IENvZ2wuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBDb250ZXh0ICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hl ZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNvZ2xf ZnJhbWVfY2xvc3VyZV9nZXRfZ3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjE0IildCisrCXB1YmxpYyBjbGFzcyBGcmFtZUNsb3N1cmUgeworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHJlZl9mdW5jdGlvbiA9ICJj b2dsX2hhbmRsZV9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX2hhbmRsZV91bnJlZiIpXQor KwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIEhhbmRsZSB7CisrCQlbQ0NvZGUgKGNuYW1lID0g ImNvZ2xfaXNfYml0bWFwIildCisrCQlwdWJsaWMgYm9vbCBpc19iaXRtYXAgKCk7CisrCQlbQ0Nv ZGUgKGNuYW1lID0gImNvZ2xfaXNfYnVmZmVyIildCisrCQlwdWJsaWMgYm9vbCBpc19idWZmZXIg KCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfbWF0ZXJpYWwiKV0KKysJCXB1YmxpYyBi b29sIGlzX21hdGVyaWFsICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX29mZnNjcmVl biIpXQorKwkJcHVibGljIGJvb2wgaXNfb2Zmc2NyZWVuICgpOworKwkJW0NDb2RlIChjbmFtZSA9 ICJjb2dsX2lzX3BpeGVsX2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNfcGl4ZWxfYnVmZmVy ICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3Byb2dyYW0iKV0KKysJCXB1YmxpYyBi b29sIGlzX3Byb2dyYW0gKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfc2hhZGVyIild CisrCQlwdWJsaWMgYm9vbCBpc19zaGFkZXIgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xf aXNfdGV4dHVyZSIpXQorKwkJcHVibGljIGJvb2wgaXNfdGV4dHVyZSAoKTsKKysJCVtDQ29kZSAo Y25hbWUgPSAiY29nbF9pc192ZXJ0ZXhfYnVmZmVyIildCisrCQlwdWJsaWMgYm9vbCBpc192ZXJ0 ZXhfYnVmZmVyICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJn X2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNvZ2xfbWF0ZXJpYWxfZ2V0X3R5cGUgKCkiKV0KKysJ W0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBNYXRlcmlhbCB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIE1hdGVyaWFsICgpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbHBoYV90ZXN0X2Z1bmN0aW9uIChD b2dsLk1hdGVyaWFsQWxwaGFGdW5jIGFscGhhX2Z1bmMsIGZsb2F0IGFscGhhX3JlZmVyZW5jZSk7 CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x NiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2JsZW5kIChzdHJpbmcgYmxl bmRfc3RyaW5nKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgdm9pZCBzZXRfYmxlbmRfY29uc3RhbnQgKENvZ2wuQ29sb3IgY29uc3RhbnRfY29sb3IpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYi LCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAoQ29nbC5Db2xvciBj b2xvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yNHViICh1 aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyIChpbnQgbGF5ZXJfaW5kZXgsIENv Z2wuSGFuZGxlIHRleHR1cmUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIHNl dF9sYXllcl9jb21iaW5lIChpbnQgbGF5ZXJfaW5kZXgsIHN0cmluZyBibGVuZF9zdHJpbmcpIHRo cm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9s YXllcl9jb21iaW5lX2NvbnN0YW50IChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuQ29sb3IgY29uc3Rh bnQpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl9maWx0ZXJzIChpbnQgbGF5ZXJfaW5k ZXgsIENvZ2wuTWF0ZXJpYWxGaWx0ZXIgbWluX2ZpbHRlciwgQ29nbC5NYXRlcmlhbEZpbHRlciBt YWdfZmlsdGVyKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfbWF0cml4IChpbnQgbGF5 ZXJfaW5kZXgsIENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIGJvb2wgc2V0X2xheWVyX3BvaW50X3Nwcml0ZV9jb29yZHNfZW5hYmxlZCAoaW50IGxheWVy X2luZGV4LCBib29sIGVuYWJsZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIHZvaWQgc2V0X3BvaW50X3NpemUgKGZsb2F0IHBvaW50X3NpemUpOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91c2VyX3Byb2dyYW0gKENvZ2wuSGFu ZGxlIHByb2dyYW0pOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNz IE1hdGVyaWFsTGF5ZXIgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF9vYmplY3RfZ2V0X2d0eXBlICgpIildCisrCXB1Ymxp YyBhYnN0cmFjdCBjbGFzcyBPYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIE9iamVjdCAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNvZ2xfb2Zmc2NyZWVu X2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgT2Zmc2NyZWVuIDogQ29nbC5PYmplY3Qs IENvZ2wuRnJhbWVidWZmZXIgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJcHJvdGVjdGVkIE9mZnNjcmVlbiAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgT2Zmc2NyZWVuLnRvX3RleHR1 cmUgKENvZ2wuVGV4dHVyZSB0ZXh0dXJlKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBPZmZzY3JlZW4ud2l0aF90ZXh0dXJlIChDb2dsLlRl eHR1cmUgdGV4dHVyZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIiwgdHlwZV9pZCA9ICJjb2dsX29uc2NyZWVuX2dldF9ndHlwZSAoKSIpXQorKwlwdWJs aWMgY2xhc3MgT25zY3JlZW4gOiBDb2dsLk9iamVjdCwgQ29nbC5GcmFtZWJ1ZmZlciB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgT25z Y3JlZW4gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIENvZ2wu T25zY3JlZW5EaXJ0eUNsb3N1cmUgYWRkX2RpcnR5X2NhbGxiYWNrIChbQ0NvZGUgKGRlbGVnYXRl X3RhcmdldF9wb3MgPSAxLjUpXSBDb2dsLk9uc2NyZWVuRGlydHlDYWxsYmFjayBjYWxsYmFjaywg Q29nbC5Vc2VyRGF0YURlc3Ryb3lDYWxsYmFjaz8gZGVzdHJveSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMi4wIildCisrCQlwdWJsaWMgQ29nbC5PbnNjcmVlblJlc2l6ZUNsb3N1cmUgYWRkX3Jl c2l6ZV9jYWxsYmFjayAoW0NDb2RlIChkZWxlZ2F0ZV90YXJnZXRfcG9zID0gMS41KV0gQ29nbC5P bnNjcmVlblJlc2l6ZUNhbGxiYWNrIGNhbGxiYWNrLCBDb2dsLlVzZXJEYXRhRGVzdHJveUNhbGxi YWNrPyBkZXN0cm95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMg aW50IGdldF9idWZmZXJfYWdlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJ CXB1YmxpYyBpbnQ2NCBnZXRfZnJhbWVfY291bnRlciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIyLjAiKV0KKysJCXB1YmxpYyBib29sIGdldF9yZXNpemFibGUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBoaWRlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9kaXJ0eV9jYWxsYmFjayAoQ29n bC5PbnNjcmVlbkRpcnR5Q2xvc3VyZSBjbG9zdXJlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjE0IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfZnJhbWVfY2FsbGJhY2sgKENvZ2wuRnJhbWVD bG9zdXJlIGNsb3N1cmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGlj IHZvaWQgcmVtb3ZlX3Jlc2l6ZV9jYWxsYmFjayAoQ29nbC5PbnNjcmVlblJlc2l6ZUNsb3N1cmUg Y2xvc3VyZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfcmVzaXphYmxlIChib29sIHJlc2l6YWJsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4w IildCisrCQlwdWJsaWMgdm9pZCBzaG93ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIHN3YXBfYnVmZmVycyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCBzd2FwX2J1ZmZlcnNfd2l0aF9kYW1hZ2UgKGludCBy ZWN0YW5nbGVzLCBpbnQgbl9yZWN0YW5nbGVzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCBzd2FwX3JlZ2lvbiAoaW50IHJlY3RhbmdsZXMsIGludCBuX3Jl Y3RhbmdsZXMpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2Jv eGVkX2ZyZWUiLCB0eXBlX2lkID0gImNvZ2xfb25zY3JlZW5fZGlydHlfY2xvc3VyZV9nZXRfZ3R5 cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCXB1 YmxpYyBjbGFzcyBPbnNjcmVlbkRpcnR5Q2xvc3VyZSB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHki LCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY29nbF9vbnNjcmVl bl9yZXNpemVfY2xvc3VyZV9nZXRfZ3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIGNsYXNzIE9uc2NyZWVuUmVzaXplQ2xvc3VyZSB7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29weV9m dW5jdGlvbiA9ICJjb2dsX3BhdGhfY29weSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNz IFBhdGggeworKwkJcHVibGljIHN0YXRpYyB2b2lkIEBuZXcgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgdHlwZV9pZCA9ICJjb2dsX3BpcGVsaW5l X2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUGlwZWxpbmUgOiBDb2dsLk9iamVjdCB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgUGlwZWxpbmUgKENvZ2wuQ29udGV4dCBjb250 ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBDb2dsLlBpcGVs aW5lIGNvcHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9p ZCBmb3JlYWNoX2xheWVyIChDb2dsLlBpcGVsaW5lTGF5ZXJDYWxsYmFjayBjYWxsYmFjayk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGluZUFscGhh RnVuYyBnZXRfYWxwaGFfdGVzdF9mdW5jdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIy LjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfYWxwaGFfdGVzdF9yZWZlcmVuY2UgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgQ29nbC5Db2xvciBnZXRfY29sb3Ig KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgQ29nbC5QaXBlbGlu ZUN1bGxGYWNlTW9kZSBnZXRfY3VsbF9mYWNlX21vZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMi4wIildCisrCQlwdWJsaWMgQ29nbC5XaW5kaW5nIGdldF9mcm9udF9mYWNlX3dpbmRpbmcg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxp bmVGaWx0ZXIgZ2V0X2xheWVyX21hZ19maWx0ZXIgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxpbmVGaWx0ZXIgZ2V0 X2xheWVyX21pbl9maWx0ZXIgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBnZXRfbGF5ZXJfcG9pbnRfc3ByaXRlX2Nvb3Jkc19l bmFibGVkIChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB1bm93bmVkIENvZ2wuVGV4dHVyZSBnZXRfbGF5ZXJfdGV4dHVyZSAoaW50IGxh eWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDb2ds LlBpcGVsaW5lV3JhcE1vZGUgZ2V0X2xheWVyX3dyYXBfbW9kZV9zIChpbnQgbGF5ZXJfaW5kZXgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxpbmVX cmFwTW9kZSBnZXRfbGF5ZXJfd3JhcF9tb2RlX3QgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgaW50IGdldF9uX2xheWVycyAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBib29sIGdldF9wZXJfdmVydGV4 X3BvaW50X3NpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMg ZmxvYXQgZ2V0X3BvaW50X3NpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisr CQlwdWJsaWMgaW50IGdldF91bmlmb3JtX2xvY2F0aW9uIChzdHJpbmcgdW5pZm9ybV9uYW1lKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuSGFu ZGxlIGdldF91c2VyX3Byb2dyYW0gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgcmVtb3ZlX2xheWVyIChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhhX3Rlc3RfZnVuY3Rp b24gKENvZ2wuUGlwZWxpbmVBbHBoYUZ1bmMgYWxwaGFfZnVuYywgZmxvYXQgYWxwaGFfcmVmZXJl bmNlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBib29sIHNldF9i bGVuZCAoc3RyaW5nIGJsZW5kX3N0cmluZykgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYmxlbmRfY29uc3RhbnQgKENv Z2wuQ29sb3IgY29uc3RhbnRfY29sb3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDb2dsLkNvbG9yIGNvbG9yKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvcjRmIChmbG9hdCByZWQs IGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlLCBmbG9hdCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3I0dWIgKHVpbnQ4IHJlZCwgdWlu dDggZ3JlZW4sIHVpbnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jdWxsX2ZhY2VfbW9kZSAoQ29nbC5QaXBlbGlu ZUN1bGxGYWNlTW9kZSBjdWxsX2ZhY2VfbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4w IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZnJvbnRfZmFjZV93aW5kaW5nIChDb2dsLldpbmRpbmcg ZnJvbnRfd2luZGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMg Ym9vbCBzZXRfbGF5ZXJfY29tYmluZSAoaW50IGxheWVyX2luZGV4LCBzdHJpbmcgYmxlbmRfc3Ry aW5nKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9sYXllcl9jb21iaW5lX2NvbnN0YW50IChpbnQgbGF5ZXJfaW5kZXgs IENvZ2wuQ29sb3IgY29uc3RhbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9sYXllcl9maWx0ZXJzIChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuUGlw ZWxpbmVGaWx0ZXIgbWluX2ZpbHRlciwgQ29nbC5QaXBlbGluZUZpbHRlciBtYWdfZmlsdGVyKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJf bWF0cml4IChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyX251bGxfdGV4dHVy ZSAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1 YmxpYyBib29sIHNldF9sYXllcl9wb2ludF9zcHJpdGVfY29vcmRzX2VuYWJsZWQgKGludCBsYXll cl9pbmRleCwgYm9vbCBlbmFibGUpIHRocm93cyBHTGliLkVycm9yOworKwkJcHVibGljIHZvaWQg c2V0X2xheWVyX3RleHR1cmUgKGludCBsYXllcl9pbmRleCwgQ29nbC5UZXh0dXJlIHRleHR1cmUp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVy X3dyYXBfbW9kZSAoaW50IGxheWVyX2luZGV4LCBDb2dsLlBpcGVsaW5lV3JhcE1vZGUgbW9kZSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJf d3JhcF9tb2RlX3MgKGludCBsYXllcl9pbmRleCwgQ29nbC5QaXBlbGluZVdyYXBNb2RlIG1vZGUp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVy X3dyYXBfbW9kZV90IChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuUGlwZWxpbmVXcmFwTW9kZSBtb2Rl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBib29sIHNldF9wZXJf dmVydGV4X3BvaW50X3NpemUgKGJvb2wgZW5hYmxlKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wb2ludF9zaXplIChm bG9hdCBwb2ludF9zaXplKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF91bmlmb3JtXzFmIChpbnQgdW5pZm9ybV9sb2NhdGlvbiwgZmxvYXQgdmFsdWUp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3VuaWZv cm1fMWkgKGludCB1bmlmb3JtX2xvY2F0aW9uLCBpbnQgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3VuaWZvcm1fZmxvYXQgKGludCB1bmlm b3JtX2xvY2F0aW9uLCBpbnQgbl9jb21wb25lbnRzLCBpbnQgY291bnQsIGZsb2F0IHZhbHVlKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91bmlmb3Jt X2ludCAoaW50IHVuaWZvcm1fbG9jYXRpb24sIGludCBuX2NvbXBvbmVudHMsIGludCBjb3VudCwg aW50IHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF91bmlmb3JtX21hdHJpeCAoaW50IHVuaWZvcm1fbG9jYXRpb24sIGludCBkaW1lbnNpb25z LCBpbnQgY291bnQsIGJvb2wgdHJhbnNwb3NlLCBmbG9hdCB2YWx1ZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdXNlcl9wcm9ncmFtIChDb2dsLkhh bmRsZSBwcm9ncmFtKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQaXhlbEJ1ZmZlciA6IENvZ2wu SGFuZGxlIHsKKysJCXB1YmxpYyBQaXhlbEJ1ZmZlciAodWludCBzaXplKTsKKysJCXB1YmxpYyBQ aXhlbEJ1ZmZlci5mb3Jfc2l6ZSAodWludCB3aWR0aCwgdWludCBoZWlnaHQsIENvZ2wuUGl4ZWxG b3JtYXQgZm9ybWF0LCB1aW50IHN0cmlkZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9 ICJjb2dsX3Byb2dyYW1fcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAiY29nbF9wcm9ncmFtX3VucmVm IildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUHJvZ3JhbSA6IENvZ2wuSGFuZGxlIHsK KysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9jcmVhdGVfcHJvZ3JhbSIsIGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDb2dsSGFuZGxlKiIpXQorKwkJcHVibGljIFByb2dy YW0gKCk7CisrCQlwdWJsaWMgdm9pZCBhdHRhY2hfc2hhZGVyIChDb2dsLlNoYWRlciBzaGFkZXJf aGFuZGxlKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3VuaWZvcm1fbG9jYXRpb24gKHN0cmluZyB1bmlm b3JtX25hbWUpOworKwkJcHVibGljIHZvaWQgbGluayAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9p ZCB1bmlmb3JtXzFmIChpbnQgdW5pZm9ybV9ubywgZmxvYXQgdmFsdWUpOworKwkJcHVibGljIHN0 YXRpYyB2b2lkIHVuaWZvcm1fMWkgKGludCB1bmlmb3JtX25vLCBpbnQgdmFsdWUpOworKwkJcHVi bGljIHN0YXRpYyB2b2lkIHVuaWZvcm1fZmxvYXQgKGludCB1bmlmb3JtX25vLCBpbnQgc2l6ZSwg W0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMi45KV0gZmxvYXRbXSB2YWx1ZSk7CisrCQlwdWJs aWMgc3RhdGljIHZvaWQgdW5pZm9ybV9pbnQgKGludCB1bmlmb3JtX25vLCBpbnQgc2l6ZSwgW0ND b2RlIChhcnJheV9sZW5ndGhfcG9zID0gMi45KV0gaW50W10gdmFsdWUpOworKwkJcHVibGljIHN0 YXRpYyB2b2lkIHVuaWZvcm1fbWF0cml4IChpbnQgdW5pZm9ybV9ubywgaW50IHNpemUsIGJvb2wg dHJhbnNwb3NlLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAyLjkpXSBmbG9hdFtdIHZhbHVl KTsKKysJCXB1YmxpYyB2b2lkIHVzZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDb2dsSGFuZGxlIiwgcmVmX2Z1bmN0aW9uID0g ImNvZ2xfc2hhZGVyX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfc2hhZGVyX3VucmVmIild CisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgU2hhZGVyIDogQ29nbC5IYW5kbGUgeworKwkJ W0NDb2RlIChjbmFtZSA9ICJjb2dsX2NyZWF0ZV9zaGFkZXIiLCBoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UsIHR5cGUgPSAiQ29nbEhhbmRsZSoiKV0KKysJCXB1YmxpYyBTaGFkZXIgKENv Z2wuU2hhZGVyVHlwZSBzaGFkZXJfdHlwZSk7CisrCQlwdWJsaWMgdm9pZCBjb21waWxlICgpOwor KwkJcHVibGljIHN0cmluZyBnZXRfaW5mb19sb2cgKCk7CisrCQlwdWJsaWMgQ29nbC5TaGFkZXJU eXBlIGdldF90eXBlICgpOworKwkJcHVibGljIGJvb2wgaXNfY29tcGlsZWQgKCk7CisrCQlwdWJs aWMgdm9pZCBzb3VyY2UgKHN0cmluZyBzb3VyY2UpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGxvd2VyX2Nhc2VfY3N1ZmZpeCA9ICJ0ZXh0dXJlXzJk IiwgdHlwZV9pZCA9ICJjb2dsX3RleHR1cmVfMmRfZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBj bGFzcyBUZXh0dXJlMkQgOiBDb2dsLk9iamVjdCwgQ29nbC5UZXh0dXJlIHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBUZXh0dXJlMkQg KCk7CisrCQlwdWJsaWMgdm9pZCBlZ2xfaW1hZ2VfZXh0ZXJuYWxfYWxsb2NfZmluaXNoICh2b2lk KiB1c2VyX2RhdGEsIEdMaWIuRGVzdHJveU5vdGlmeSBkZXN0cm95KTsKKysJCXB1YmxpYyB2b2lk IGVnbF9pbWFnZV9leHRlcm5hbF9iaW5kICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1 bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGlj IFRleHR1cmUyRC5mcm9tX2JpdG1hcCAoQ29nbC5CaXRtYXAgYml0bWFwKTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBsb3dlcl9jYXNlX2NzdWZmaXgg PSAidGV4dHVyZV8yZF9zbGljZWQiLCB0eXBlX2lkID0gImNvZ2xfdGV4dHVyZV8yZF9zbGljZWRf Z2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBUZXh0dXJlMkRTbGljZWQgOiBDb2dsLk9i amVjdCwgQ29nbC5UZXh0dXJlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCXByb3RlY3RlZCBUZXh0dXJlMkRTbGljZWQgKCk7CisrCQlbQ0NvZGUgKGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x NiIpXQorKwkJcHVibGljIFRleHR1cmUyRFNsaWNlZC5mcm9tX2JpdG1hcCAoQ29nbC5CaXRtYXAg Ym1wLCBpbnQgbWF4X3dhc3RlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDb2dsSGFuZGxlIiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xf dmVydGV4X2J1ZmZlcl9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX3ZlcnRleF9idWZmZXJf dW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBWZXJ0ZXhCdWZmZXIgOiBDb2ds LkhhbmRsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlw ZSA9ICJDb2dsSGFuZGxlKiIpXQorKwkJcHVibGljIFZlcnRleEJ1ZmZlciAodWludCBuX3ZlcnRp Y2VzKTsKKysJCXB1YmxpYyB2b2lkIGFkZCAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1lLCB1Y2hhciBu X2NvbXBvbmVudHMsIENvZ2wuQXR0cmlidXRlVHlwZSB0eXBlLCBib29sIG5vcm1hbGl6ZWQsIHVp bnQxNiBzdHJpZGUsIHZvaWQqIHBvaW50ZXIpOworKwkJcHVibGljIHZvaWQgQGRlbGV0ZSAoc3Ry aW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGRpc2FibGUgKHN0cmluZyBhdHRy aWJ1dGVfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBkcmF3IChDb2dsLlZlcnRpY2VzTW9kZSBtb2Rl LCBpbnQgZmlyc3QsIGludCBjb3VudCk7CisrCQlwdWJsaWMgdm9pZCBkcmF3X2VsZW1lbnRzIChD b2dsLlZlcnRpY2VzTW9kZSBtb2RlLCBDb2dsLlZlcnRleEJ1ZmZlckluZGljZXMgaW5kaWNlcywg aW50IG1pbl9pbmRleCwgaW50IG1heF9pbmRleCwgaW50IGluZGljZXNfb2Zmc2V0LCBpbnQgY291 bnQpOworKwkJcHVibGljIHZvaWQgZW5hYmxlIChzdHJpbmcgYXR0cmlidXRlX25hbWUpOworKwkJ cHVibGljIHVpbnQgZ2V0X25fdmVydGljZXMgKCk7CisrCQlwdWJsaWMgdm9pZCBzdWJtaXQgKCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUg PSAiQ29nbEhhbmRsZSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFZlcnRleEJ1ZmZl ckluZGljZXMgOiBDb2dsLkhhbmRsZSB7CisrCQlwdWJsaWMgVmVydGV4QnVmZmVySW5kaWNlcyAo Q29nbC5JbmRpY2VzVHlwZSBpbmRpY2VzX3R5cGUsIHZvaWQqIGluZGljZXNfYXJyYXksIGludCBp bmRpY2VzX2xlbik7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ29nbC5WZXJ0ZXhCdWZmZXJJ bmRpY2VzIGdldF9mb3JfcXVhZHMgKHVpbnQgbl9pbmRpY2VzKTsKKysJCXB1YmxpYyBDb2dsLklu ZGljZXNUeXBlIGdldF90eXBlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF9mcmFtZWJ1ZmZlcl9nZXRfZ3R5cGUgKCki KV0KKysJcHVibGljIGludGVyZmFjZSBGcmFtZWJ1ZmZlciA6IENvZ2wuT2JqZWN0IHsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBib29sIGFsbG9jYXRlICgpIHRocm93 cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZv aWQgY2xlYXIgKHVsb25nIGJ1ZmZlcnMsIENvZ2wuQ29sb3IgY29sb3IpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgY2xlYXI0ZiAodWxvbmcgYnVmZmVycywg ZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1ZSwgZmxvYXQgYWxwaGEpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgZGlzY2FyZF9idWZmZXJzICh1 bG9uZyBidWZmZXJzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBkcmF3X211bHRpdGV4dHVyZWRfcmVjdGFuZ2xlIChDb2dsLlBpcGVsaW5lIHBpcGVsaW5l LCBmbG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIsIFtDQ29kZSAoYXJy YXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdFtdIHRleF9jb29yZHMsIGludCB0ZXhfY29vcmRzX2xl bik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZHJhd19y ZWN0YW5nbGUgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUsIGZsb2F0IHhfMSwgZmxvYXQgeV8xLCBm bG9hdCB4XzIsIGZsb2F0IHlfMik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgZHJhd19yZWN0YW5nbGVzIChDb2dsLlBpcGVsaW5lIHBpcGVsaW5lLCBbQ0Nv ZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXRbXSBjb29yZGluYXRlcywgdWludCBuX3Jl Y3RhbmdsZXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lk IGRyYXdfdGV4dHVyZWRfcmVjdGFuZ2xlIChDb2dsLlBpcGVsaW5lIHBpcGVsaW5lLCBmbG9hdCB4 XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIsIGZsb2F0IHNfMSwgZmxvYXQgdF8x LCBmbG9hdCBzXzIsIGZsb2F0IHRfMik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgZHJhd190ZXh0dXJlZF9yZWN0YW5nbGVzIChDb2dsLlBpcGVsaW5lIHBp cGVsaW5lLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXRbXSBjb29yZGluYXRl cywgdWludCBuX3JlY3RhbmdsZXMpOworKwkJcHVibGljIHN0YXRpYyB1aW50MzIgZXJyb3JfcXVh cmsgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZmlu aXNoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGZy dXN0dW0gKGZsb2F0IGxlZnQsIGZsb2F0IHJpZ2h0LCBmbG9hdCBib3R0b20sIGZsb2F0IHRvcCwg ZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44Iild CisrCQlwdWJsaWMgaW50IGdldF9hbHBoYV9iaXRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwkJcHVibGljIGludCBnZXRfYmx1ZV9iaXRzICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuOCIpXQorKwkJcHVibGljIHVub3duZWQgQ29nbC5Db250ZXh0IGdldF9jb250ZXh0 ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIGludCBnZXRfZGVw dGhfYml0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgYm9v bCBnZXRfZGVwdGhfd3JpdGVfZW5hYmxlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgi KV0KKysJCXB1YmxpYyBib29sIGdldF9kaXRoZXJfZW5hYmxlZCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2dyZWVuX2JpdHMgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGdldF9oZWlnaHQgKCk7CisrCQlw dWJsaWMgYm9vbCBnZXRfaXNfc3RlcmVvICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyBDb2dsLk1hdHJpeCBnZXRfbW9kZWx2aWV3X21hdHJpeCAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ29nbC5NYXRyaXggZ2V0X3Byb2pl Y3Rpb25fbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGlj IGludCBnZXRfcmVkX2JpdHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIGludCBnZXRfc2FtcGxlc19wZXJfcGl4ZWwgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yMCIpXQorKwkJcHVibGljIENvZ2wuU3RlcmVvTW9kZSBnZXRfc3RlcmVvX21vZGUgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBnZXRfdmlld3Bv cnQ0ZnYgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBvdXQgdW5vd25lZCBmbG9hdCB2 aWV3cG9ydFs0XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgZmxv YXQgZ2V0X3ZpZXdwb3J0X2hlaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0K KysJCXB1YmxpYyBmbG9hdCBnZXRfdmlld3BvcnRfd2lkdGggKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZpZXdwb3J0X3ggKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZpZXdwb3J0X3kgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGdldF93aWR0aCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBpZGVudGl0 eV9tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgb3J0aG9ncmFwaGljIChmbG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5 XzIsIGZsb2F0IG5lYXIsIGZsb2F0IGZhcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHZvaWQgcGVyc3BlY3RpdmUgKGZsb2F0IGZvdl95LCBmbG9hdCBhc3BlY3Qs IGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIHBvcF9jbGlwICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIHBvcF9tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcHVzaF9tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcHVzaF9yZWN0YW5nbGVfY2xpcCAoZmxv YXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yKTsKKysJCXB1YmxpYyB2b2lk IHB1c2hfcmVnaW9uX2NsaXAgKENhaXJvLlJlZ2lvbiByZWdpb24pOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHB1c2hfc2Npc3Nvcl9jbGlwIChpbnQgeCwg aW50IHksIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIGJvb2wgcmVhZF9waXhlbHMgKGludCB4LCBpbnQgeSwgaW50IHdpZHRo LCBpbnQgaGVpZ2h0LCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgdWludDggcGl4ZWxzKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCByZWFkX3BpeGVsc19p bnRvX2JpdG1hcCAoaW50IHgsIGludCB5LCBDb2dsLlJlYWRQaXhlbHNGbGFncyBzb3VyY2UsIENv Z2wuQml0bWFwIGJpdG1hcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgdm9pZCByZXNvbHZlX3NhbXBsZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44Iild CisrCQlwdWJsaWMgdm9pZCByZXNvbHZlX3NhbXBsZXNfcmVnaW9uIChpbnQgeCwgaW50IHksIGlu dCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgcm90YXRlIChmbG9hdCBhbmdsZSwgZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQg eik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCByb3RhdGVf ZXVsZXIgKEdyYXBoZW5lLkV1bGVyIGV1bGVyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgdm9pZCBzY2FsZSAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2RlcHRoX3dy aXRlX2VuYWJsZWQgKGJvb2wgZGVwdGhfd3JpdGVfZW5hYmxlZCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGl0aGVyX2VuYWJsZWQgKGJvb2wgZGl0 aGVyX2VuYWJsZWQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9tb2RlbHZpZXdfbWF0cml4IChDb2dsLk1hdHJpeCBtYXRyaXgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wcm9qZWN0aW9uX21hdHJp eCAoQ29nbC5NYXRyaXggbWF0cml4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9zYW1wbGVzX3Blcl9waXhlbCAoaW50IHNhbXBsZXNfcGVyX3BpeGVs KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfc3Rl cmVvX21vZGUgKENvZ2wuU3RlcmVvTW9kZSBzdGVyZW9fbW9kZSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdmlld3BvcnQgKGZsb2F0IHgsIGZsb2F0 IHksIGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyB2b2lkIHRyYW5zZm9ybSAoQ29nbC5NYXRyaXggbWF0cml4KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCB0cmFuc2xhdGUgKGZs b2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF90ZXh0dXJlX2dldF9ndHlwZSAoKSIp XQorKwlwdWJsaWMgaW50ZXJmYWNlIFRleHR1cmUgOiBDb2dsLk9iamVjdCB7CisrCQlwdWJsaWMg Ym9vbCBhbGxvY2F0ZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCXB1YmxpYyBzdGF0aWMgdWlu dDMyIGVycm9yX3F1YXJrICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1 YmxpYyBDb2dsLlRleHR1cmVDb21wb25lbnRzIGdldF9jb21wb25lbnRzICgpOworKwkJcHVibGlj IGludCBnZXRfZGF0YSAoQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIHVpbnQgcm93c3RyaWRlLCB1 aW50OCBkYXRhKTsKKysJCXB1YmxpYyBib29sIGdldF9nbF90ZXh0dXJlIChvdXQgdWludCBvdXRf Z2xfaGFuZGxlLCBvdXQgdWludCBvdXRfZ2xfdGFyZ2V0KTsKKysJCXB1YmxpYyB1aW50IGdldF9o ZWlnaHQgKCk7CisrCQlwdWJsaWMgaW50IGdldF9tYXhfd2FzdGUgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3ByZW11bHRpcGxpZWQgKCk7Cisr CQlwdWJsaWMgdWludCBnZXRfd2lkdGggKCk7CisrCQlwdWJsaWMgYm9vbCBpc19zbGljZWQgKCk7 CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x OCIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUgbmV3X2Zy b21fYml0bWFwIChDb2dsLkJpdG1hcCBiaXRtYXAsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBD b2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjAuOCIpXQorKwkJ cHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUgbmV3X2Zyb21fZGF0YSAoaW50IHdpZHRoLCBpbnQg aGVpZ2h0LCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQs IENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0LCBpbnQgcm93c3RyaWRlLCB1aW50OCBk YXRhKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjE4Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSBu ZXdfZnJvbV9maWxlIChzdHJpbmcgZmlsZW5hbWUsIENvZ2wuVGV4dHVyZUZsYWdzIGZsYWdzLCBD b2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNp bmNlID0gIjEuMiIpXQorKwkJcHVibGljIENvZ2wuVGV4dHVyZSBuZXdfZnJvbV9zdWJfdGV4dHVy ZSAoaW50IHN1Yl94LCBpbnQgc3ViX3ksIGludCBzdWJfd2lkdGgsIGludCBzdWJfaGVpZ2h0KTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4 Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIENvZ2wuVGV4dHVyZSBuZXdfd2l0 aF9zaXplICh1aW50IHdpZHRoLCB1aW50IGhlaWdodCwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3Ms IENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjE4IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29tcG9uZW50cyAoQ29nbC5UZXh0dXJlQ29t cG9uZW50cyBjb21wb25lbnRzKTsKKysJCXB1YmxpYyBib29sIHNldF9kYXRhIChDb2dsLlBpeGVs Rm9ybWF0IGZvcm1hdCwgaW50IHJvd3N0cmlkZSwgdWludDggZGF0YSwgaW50IGxldmVsKSB0aHJv d3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMg dm9pZCBzZXRfcHJlbXVsdGlwbGllZCAoYm9vbCBwcmVtdWx0aXBsaWVkKTsKKysJCXB1YmxpYyBi b29sIHNldF9yZWdpb24gKGludCBzcmNfeCwgaW50IHNyY195LCBpbnQgZHN0X3gsIGludCBkc3Rf eSwgdWludCBkc3Rfd2lkdGgsIHVpbnQgZHN0X2hlaWdodCwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0 LCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgdWludCByb3dzdHJpZGUsIHVpbnQ4IGRhdGEpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wgc2V0X3JlZ2lvbl9m cm9tX2JpdG1hcCAoaW50IHNyY194LCBpbnQgc3JjX3ksIGludCBkc3RfeCwgaW50IGRzdF95LCB1 aW50IGRzdF93aWR0aCwgdWludCBkc3RfaGVpZ2h0LCBDb2dsLkJpdG1hcCBiaXRtYXApOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbU2ltcGxl VHlwZV0KKysJcHVibGljIHN0cnVjdCBBbmdsZSA6IGludDMyIHsKKysJfQorKwlbQm9vbGVhblR5 cGVdCisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbR0lS IChuYW1lID0gIkJvb2wiKV0KKysJW1NpbXBsZVR5cGVdCisrCXB1YmxpYyBzdHJ1Y3QgQm9vbCA6 IGJvb2wgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1 YmxpYyBzdHJ1Y3QgQ29sb3IgeworKwkJcHVibGljIENvZ2wuQ29sb3I/IGNvcHkgKCk7CisrCQlw dWJsaWMgQ29sb3IuZnJvbV80ZiAoZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1ZSwg ZmxvYXQgYWxwaGEpOworKwkJcHVibGljIENvbG9yLmZyb21fNHViICh1aW50OCByZWQsIHVpbnQ4 IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2Fs cGhhICgpOworKwkJcHVibGljIHVpbnQ4IGdldF9hbHBoYV9ieXRlICgpOworKwkJcHVibGljIGZs b2F0IGdldF9hbHBoYV9mbG9hdCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfYmx1ZSAoKTsKKysJ CXB1YmxpYyB1aW50OCBnZXRfYmx1ZV9ieXRlICgpOworKwkJcHVibGljIGZsb2F0IGdldF9ibHVl X2Zsb2F0ICgpOworKwkJcHVibGljIGZsb2F0IGdldF9ncmVlbiAoKTsKKysJCXB1YmxpYyB1aW50 OCBnZXRfZ3JlZW5fYnl0ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfZ3JlZW5fZmxvYXQgKCk7 CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3JlZCAoKTsKKysJCXB1YmxpYyB1aW50OCBnZXRfcmVkX2J5 dGUgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3JlZF9mbG9hdCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfZnJvbV80ZiAoZmxvYXQgcmVkLCBm bG9hdCBncmVlbiwgZmxvYXQgYmx1ZSwgZmxvYXQgYWxwaGEpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgaW5pdF9mcm9tXzRmdiAoZmxvYXQgY29sb3JfYXJy YXkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgaW5pdF9m cm9tXzR1YiAodWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1ZSwgdWludDggYWxwaGEp OworKwkJcHVibGljIHZvaWQgcHJlbXVsdGlwbHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWxwaGEgKGZsb2F0IGFscGhhKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbHBoYV9ieXRlICh1aW50 OCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfYWxwaGFfZmxvYXQgKGZsb2F0IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9ibHVlIChmbG9hdCBibHVlKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ibHVlX2J5dGUgKHVpbnQ4IGJsdWUp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2JsdWVf ZmxvYXQgKGZsb2F0IGJsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2dyZWVuIChmbG9hdCBncmVlbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZ3JlZW5fYnl0ZSAodWludDggZ3JlZW4pOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2dyZWVuX2Zsb2F0 IChmbG9hdCBncmVlbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMg dm9pZCBzZXRfcmVkIChmbG9hdCByZWQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQor KwkJcHVibGljIHZvaWQgc2V0X3JlZF9ieXRlICh1aW50OCByZWQpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlZF9mbG9hdCAoZmxvYXQgcmVkKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCB0b19oc2wgKG91 dCBmbG9hdCBodWUsIG91dCBmbG9hdCBzYXR1cmF0aW9uLCBvdXQgZmxvYXQgbHVtaW5hbmNlKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHVucHJlbXVsdGlw bHkgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwg aGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVi bGljIHN0cnVjdCBEZWJ1Z09iamVjdFR5cGVJbmZvIHsKKysJCXB1YmxpYyB3ZWFrIHN0cmluZyBu YW1lOworKwkJcHVibGljIHVsb25nIGluc3RhbmNlX2NvdW50OworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9j b3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gIkNPR0xfVFlQ RV9NQVRSSVgiKV0KKysJcHVibGljIHN0cnVjdCBNYXRyaXggeworKwkJcHVibGljIGZsb2F0IHh4 OworKwkJcHVibGljIGZsb2F0IHl4OworKwkJcHVibGljIGZsb2F0IHp4OworKwkJcHVibGljIGZs b2F0IHd4OworKwkJcHVibGljIGZsb2F0IHh5OworKwkJcHVibGljIGZsb2F0IHl5OworKwkJcHVi bGljIGZsb2F0IHp5OworKwkJcHVibGljIGZsb2F0IHd5OworKwkJcHVibGljIGZsb2F0IHh6Owor KwkJcHVibGljIGZsb2F0IHl6OworKwkJcHVibGljIGZsb2F0IHp6OworKwkJcHVibGljIGZsb2F0 IHd6OworKwkJcHVibGljIGZsb2F0IHh3OworKwkJcHVibGljIGZsb2F0IHl3OworKwkJcHVibGlj IGZsb2F0IHp3OworKwkJcHVibGljIGZsb2F0IHd3OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NiIpXQorKwkJcHVibGljIENvZ2wuTWF0cml4PyBjb3B5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVu Z3RoID0gZmFsc2UsIGFycmF5X251bGxfdGVybWluYXRlZCA9IGZhbHNlLCBjbmFtZSA9ICJjb2ds X21hdHJpeF9pbml0X2Zyb21fYXJyYXkiKV0KKysJCXB1YmxpYyBNYXRyaXguZnJvbV9hcnJheSAo W0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0W10gYXJyYXkpOworKwkJcHVibGlj IHZvaWQgZnJ1c3R1bSAoZmxvYXQgbGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0IGJvdHRvbSwgZmxv YXQgdG9wLCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCXB1YmxpYyB1bm93bmVkIGZs b2F0W10gZ2V0X2FycmF5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIGJvb2wgZ2V0X2ludmVyc2UgKG91dCBDb2dsLk1hdHJpeCBpbnZlcnNlKTsKKysJCVtDQ29k ZSAoY25hbWUgPSAiY29nbF9tYXRyaXhfaW5pdF9pZGVudGl0eSIpXQorKwkJcHVibGljIE1hdHJp eC5pZGVudGl0eSAoKTsKKysJCXB1YmxpYyB2b2lkIGluaXRfZnJvbV9ldWxlciAoR3JhcGhlbmUu RXVsZXIgZXVsZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZv aWQgaW5pdF90cmFuc2xhdGlvbiAoZmxvYXQgdHgsIGZsb2F0IHR5LCBmbG9hdCB0eik7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBpc19pZGVudGl0eSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGxvb2tfYXQgKGZs b2F0IGV5ZV9wb3NpdGlvbl94LCBmbG9hdCBleWVfcG9zaXRpb25feSwgZmxvYXQgZXllX3Bvc2l0 aW9uX3osIGZsb2F0IG9iamVjdF94LCBmbG9hdCBvYmplY3RfeSwgZmxvYXQgb2JqZWN0X3osIGZs b2F0IHdvcmxkX3VwX3gsIGZsb2F0IHdvcmxkX3VwX3ksIGZsb2F0IHdvcmxkX3VwX3opOworKwkJ W0NDb2RlIChjbmFtZSA9ICJjb2dsX21hdHJpeF9tdWx0aXBseSIpXQorKwkJcHVibGljIE1hdHJp eC5tdWx0aXBseSAoQ29nbC5NYXRyaXggYSwgQ29nbC5NYXRyaXggYik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgb3J0aG9ncmFwaGljIChmbG9hdCB4XzEs IGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIsIGZsb2F0IG5lYXIsIGZsb2F0IGZhcik7 CisrCQlwdWJsaWMgdm9pZCBwZXJzcGVjdGl2ZSAoZmxvYXQgZm92X3ksIGZsb2F0IGFzcGVjdCwg ZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlwdWJsaWMgdm9pZCBwcm9qZWN0X3BvaW50 cyAoaW50IG5fY29tcG9uZW50cywgc2l6ZV90IHN0cmlkZV9pbiwgdm9pZCogcG9pbnRzX2luLCBz aXplX3Qgc3RyaWRlX291dCwgdm9pZCogcG9pbnRzX291dCwgaW50IG5fcG9pbnRzKTsKKysJCXB1 YmxpYyB2b2lkIHJvdGF0ZSAoZmxvYXQgYW5nbGUsIGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHop OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlX2V1 bGVyIChHcmFwaGVuZS5FdWxlciBldWxlcik7CisrCQlwdWJsaWMgdm9pZCBzY2FsZSAoZmxvYXQg c3gsIGZsb2F0IHN5LCBmbG9hdCBzeik7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdHJhbnNmb3Jt X3BvaW50IChyZWYgQ29nbC5NYXRyaXggbWF0cml4LCByZWYgZmxvYXQgeCwgcmVmIGZsb2F0IHks IHJlZiBmbG9hdCB6LCByZWYgZmxvYXQgdyk7CisrCQlwdWJsaWMgdm9pZCB0cmFuc2Zvcm1fcG9p bnRzIChpbnQgbl9jb21wb25lbnRzLCBzaXplX3Qgc3RyaWRlX2luLCB2b2lkKiBwb2ludHNfaW4s IHNpemVfdCBzdHJpZGVfb3V0LCB2b2lkKiBwb2ludHNfb3V0LCBpbnQgbl9wb2ludHMpOworKwkJ cHVibGljIHZvaWQgdHJhbnNsYXRlIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCB0cmFuc3Bvc2UgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCB2aWV3XzJkX2luX2Zy dXN0dW0gKGZsb2F0IGxlZnQsIGZsb2F0IHJpZ2h0LCBmbG9hdCBib3R0b20sIGZsb2F0IHRvcCwg ZmxvYXQgel9uZWFyLCBmbG9hdCB6XzJkLCBmbG9hdCB3aWR0aF8yZCwgZmxvYXQgaGVpZ2h0XzJk KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHZpZXdfMmRf aW5fcGVyc3BlY3RpdmUgKGZsb2F0IGZvdl95LCBmbG9hdCBhc3BlY3QsIGZsb2F0IHpfbmVhciwg ZmxvYXQgel8yZCwgZmxvYXQgd2lkdGhfMmQsIGZsb2F0IGhlaWdodF8yZCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaGFzX3R5cGVfaWQgPSBmYWxz ZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdHJ1Y3QgT25zY3Jl ZW5EaXJ0eUluZm8geworKwkJcHVibGljIGludCB4OworKwkJcHVibGljIGludCB5OworKwkJcHVi bGljIGludCB3aWR0aDsKKysJCXB1YmxpYyBpbnQgaGVpZ2h0OworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlw dWJsaWMgc3RydWN0IFRleHR1cmVWZXJ0ZXggeworKwkJcHVibGljIGZsb2F0IHg7CisrCQlwdWJs aWMgZmxvYXQgeTsKKysJCXB1YmxpYyBmbG9hdCB6OworKwkJcHVibGljIGZsb2F0IHR4OworKwkJ cHVibGljIGZsb2F0IHR5OworKwkJcHVibGljIENvZ2wuQ29sb3IgY29sb3I7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaGFzX3R5cGVfaWQgPSBmYWxz ZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIHN0cnVjdCBVc2VyRGF0 YUtleSB7CisrCQlwdWJsaWMgaW50IHVudXNlZDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJfQ29nbENvbG9yU2l6ZUNoZWNrIiwgaGFz X3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgX0NvbG9yU2l6ZUNoZWNrIHsKKysJ CVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdlYWsgY2hhcltdIGNv bXBpbGVfdGltZV9hc3NlcnRfQ29nbENvbG9yX3NpemU7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiX0NvZ2xNYXRyaXhTaXplQ2hlY2si LCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBfTWF0cml4U2l6ZUNoZWNr IHsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdlYWsgY2hh cltdIGNvbXBpbGVfdGltZV9hc3NlcnRfQ29nbE1hdHJpeF9zaXplOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIl9Db2dsVGV4dHVyZVZl cnRleFNpemVDaGVjayIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IF9U ZXh0dXJlVmVydGV4U2l6ZUNoZWNrIHsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2Up XQorKwkJcHVibGljIHdlYWsgY2hhcltdIGNvbXBpbGVfdGltZV9hc3NlcnRfQ29nbFRleHR1cmVW ZXJ0ZXhfc2l6ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjcHJlZml4ID0gIkNPR0xfQVRUUklCVVRFX1RZUEVfIiwgaGFzX3R5cGVfaWQgPSBmYWxz ZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gQXR0cmlidXRl VHlwZSB7CisrCQlCWVRFLAorKwkJVU5TSUdORURfQllURSwKKysJCVNIT1JULAorKwkJVU5TSUdO RURfU0hPUlQsCisrCQlGTE9BVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9CSVRNQVBfRVJST1JfIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGVudW0gQml0 bWFwRXJyb3IgeworKwkJRkFJTEVELAorKwkJVU5LTk9XTl9UWVBFLAorKwkJQ09SUlVQVF9JTUFH RQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVm aXggPSAiQ09HTF9CTEVORF9TVFJJTkdfRVJST1JfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gQmxlbmRTdHJpbmdFcnJv ciB7CisrCQlQQVJTRV9FUlJPUiwKKysJCUFSR1VNRU5UX1BBUlNFX0VSUk9SLAorKwkJSU5WQUxJ RF9FUlJPUiwKKysJCUdQVV9VTlNVUFBPUlRFRF9FUlJPUjsKKysJCXB1YmxpYyBzdGF0aWMgdWlu dDMyIHF1YXJrICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGNwcmVmaXggPSAiQ09HTF9CVUZGRVJfQklUXyIsIGhhc190eXBlX2lkID0gZmFsc2Up XQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0g QnVmZmVyQml0IHsKKysJCUNPTE9SLAorKwkJREVQVEgsCisrCQlTVEVOQ0lMCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMXyIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJcHVibGljIGVudW0gQnVmZmVyVGFyZ2V0IHsKKysJCVdJTkRPV19CVUZGRVIsCisr CQlPRkZTQ1JFRU5fQlVGRkVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0RFUFRIX1RFU1RfRlVOQ1RJT05fIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIERlcHRoVGVzdEZ1bmN0aW9uIHsKKysJCU5F VkVSLAorKwkJTEVTUywKKysJCUVRVUFMLAorKwkJTEVRVUFMLAorKwkJR1JFQVRFUiwKKysJCU5P VEVRVUFMLAorKwkJR0VRVUFMLAorKwkJQUxXQVlTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0VHTF9JTUFHRV9GTEFHXyIs IGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEVnbEltYWdl RmxhZ3MgeworKwkJTk9ORSwKKysJCU5PX0dFVF9EQVRBCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0ZFQVRVUkVfSURfIiwg aGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1 YmxpYyBlbnVtIEZlYXR1cmVJRCB7CisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9J RF9VTlNJR05FRF9JTlRfSU5ESUNFUyIpXQorKwkJT0dMX0ZFQVRVUkVfSURfVU5TSUdORURfSU5U X0lORElDRVMsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9NQVBfQlVGRkVS X0ZPUl9SRUFEIildCisrCQlPR0xfRkVBVFVSRV9JRF9NQVBfQlVGRkVSX0ZPUl9SRUFELAorKwkJ W0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfTUFQX0JVRkZFUl9GT1JfV1JJVEUiKV0K KysJCU9HTF9GRUFUVVJFX0lEX01BUF9CVUZGRVJfRk9SX1dSSVRFLAorKwkJW0NDb2RlIChjbmFt ZSA9ICJDT0dMX0ZFQVRVUkVfSURfU1dBUF9CVUZGRVJTX0VWRU5UIildCisrCQlPR0xfRkVBVFVS RV9JRF9TV0FQX0JVRkZFUlNfRVZFTlQsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVS RV9JRF9QUkVTRU5UQVRJT05fVElNRSIpXQorKwkJT0dMX0ZFQVRVUkVfSURfUFJFU0VOVEFUSU9O X1RJTUUsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9GRU5DRSIpXQorKwkJ T0dMX0ZFQVRVUkVfSURfRkVOQ0UsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9J RF9URVhUVVJFX1JHIildCisrCQlPR0xfRkVBVFVSRV9JRF9URVhUVVJFX1JHLAorKwkJW0NDb2Rl IChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfQlVGRkVSX0FHRSIpXQorKwkJT0dMX0ZFQVRVUkVf SURfQlVGRkVSX0FHRSwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFUVVJFX0lEX1RFWFRV UkVfRUdMX0lNQUdFX0VYVEVSTkFMIildCisrCQlPR0xfRkVBVFVSRV9JRF9URVhUVVJFX0VHTF9J TUFHRV9FWFRFUk5BTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGNwcmVmaXggPSAiQ09HTF9GSUxURVJfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CXB1YmxpYyBlbnVtIEZpbHRlclJldHVybiB7CisrCQlDT05USU5VRSwKKysJCVJFTU9WRQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAi Q09HTF9GUkFNRV9FVkVOVF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTQiKV0KKysJcHVibGljIGVudW0gRnJhbWVFdmVudCB7CisrCQlTWU5DLAorKwkJ Q09NUExFVEUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCBjcHJlZml4ID0gIkNPR0xfRlJBTUVCVUZGRVJfRVJST1JfIiwgaGFzX3R5cGVfaWQgPSBmYWxz ZSldCisrCXB1YmxpYyBlbnVtIEZyYW1lYnVmZmVyRXJyb3IgeworKwkJW0NDb2RlIChjbmFtZSA9 ICJDT0dMX0ZSQU1FQlVGRkVSX0VSUk9SX0FMTE9DQVRFIildCisrCQlGUkFNRUJVRkZFUl9FUlJP Ul9BTExPQ0FURTsKKysJCXB1YmxpYyBzdGF0aWMgdWludDMyIHF1YXJrICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9H UkFQSElDU19SRVNFVF9TVEFUVVNfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBl bnVtIEdyYXBoaWNzUmVzZXRTdGF0dXMgeworKwkJTk9fRVJST1IsCisrCQlHVUlMVFlfQ09OVEVY VF9SRVNFVCwKKysJCUlOTk9DRU5UX0NPTlRFWFRfUkVTRVQsCisrCQlVTktOT1dOX0NPTlRFWFRf UkVTRVQsCisrCQlQVVJHRURfQ09OVEVYVF9SRVNFVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9JTkRJQ0VTX1RZUEVfVU5T SUdORURfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIEluZGljZXNUeXBl IHsKKysJCUJZVEUsCisrCQlTSE9SVCwKKysJCUlOVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9NQVRFUklBTF9BTFBIQV9G VU5DXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBNYXRlcmlhbEFscGhh RnVuYyB7CisrCQlORVZFUiwKKysJCUxFU1MsCisrCQlFUVVBTCwKKysJCUxFUVVBTCwKKysJCUdS RUFURVIsCisrCQlOT1RFUVVBTCwKKysJCUdFUVVBTCwKKysJCUFMV0FZUworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9NQVRF UklBTF9GSUxURVJfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIE1hdGVy aWFsRmlsdGVyIHsKKysJCU5FQVJFU1QsCisrCQlMSU5FQVIsCisrCQlORUFSRVNUX01JUE1BUF9O RUFSRVNULAorKwkJTElORUFSX01JUE1BUF9ORUFSRVNULAorKwkJTkVBUkVTVF9NSVBNQVBfTElO RUFSLAorKwkJTElORUFSX01JUE1BUF9MSU5FQVIKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfTUFURVJJQUxfV1JBUF9NT0RF XyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisr CXB1YmxpYyBlbnVtIE1hdGVyaWFsV3JhcE1vZGUgeworKwkJUkVQRUFULAorKwkJQ0xBTVBfVE9f RURHRSwKKysJCUFVVE9NQVRJQworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9QSVBFTElORV9BTFBIQV9GVU5DXyIsIGhhc190 eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBQaXBlbGluZUFscGhhRnVuYyB7CisrCQlO RVZFUiwKKysJCUxFU1MsCisrCQlFUVVBTCwKKysJCUxFUVVBTCwKKysJCUdSRUFURVIsCisrCQlO T1RFUVVBTCwKKysJCUdFUVVBTCwKKysJCUFMV0FZUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9QSVBFTElORV9DVUxMX0ZB Q0VfTU9ERV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVudW0gUGlwZWxpbmVD dWxsRmFjZU1vZGUgeworKwkJTk9ORSwKKysJCUZST05ULAorKwkJQkFDSywKKysJCUJPVEgKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0g IkNPR0xfUElQRUxJTkVfRklMVEVSXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMg ZW51bSBQaXBlbGluZUZpbHRlciB7CisrCQlORUFSRVNULAorKwkJTElORUFSLAorKwkJTkVBUkVT VF9NSVBNQVBfTkVBUkVTVCwKKysJCUxJTkVBUl9NSVBNQVBfTkVBUkVTVCwKKysJCU5FQVJFU1Rf TUlQTUFQX0xJTkVBUiwKKysJCUxJTkVBUl9NSVBNQVBfTElORUFSCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1BJUEVMSU5F X1dSQVBfTU9ERV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjIuMCIpXQorKwlwdWJsaWMgZW51bSBQaXBlbGluZVdyYXBNb2RlIHsKKysJCVJFUEVBVCwKKysJ CU1JUlJPUkVEX1JFUEVBVCwKKysJCUNMQU1QX1RPX0VER0UsCisrCQlBVVRPTUFUSUMKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNP R0xfUElYRUxfRk9STUFUXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGVudW0gUGl4ZWxGb3JtYXQgeworKwkJ QU5ZLAorKwkJQV84LAorKwkJUkdCXzU2NSwKKysJCVJHQkFfNDQ0NCwKKysJCVJHQkFfNTU1MSwK KysJCVlVViwKKysJCUdfOCwKKysJCVJHXzg4LAorKwkJUkdCXzg4OCwKKysJCUJHUl84ODgsCisr CQlSR0JBXzg4ODgsCisrCQlCR1JBXzg4ODgsCisrCQlBUkdCXzg4ODgsCisrCQlBQkdSXzg4ODgs CisrCQlSR0JBXzEwMTAxMDIsCisrCQlCR1JBXzEwMTAxMDIsCisrCQlBUkdCXzIxMDEwMTAsCisr CQlBQkdSXzIxMDEwMTAsCisrCQlSR0JBXzg4ODhfUFJFLAorKwkJQkdSQV84ODg4X1BSRSwKKysJ CUFSR0JfODg4OF9QUkUsCisrCQlBQkdSXzg4ODhfUFJFLAorKwkJUkdCQV80NDQ0X1BSRSwKKysJ CVJHQkFfNTU1MV9QUkUsCisrCQlSR0JBXzEwMTAxMDJfUFJFLAorKwkJQkdSQV8xMDEwMTAyX1BS RSwKKysJCUFSR0JfMjEwMTAxMF9QUkUsCisrCQlBQkdSXzIxMDEwMTBfUFJFLAorKwkJREVQVEhf MTYsCisrCQlERVBUSF8zMiwKKysJCURFUFRIXzI0X1NURU5DSUxfODsKKysJCXB1YmxpYyBpbnQg Z2V0X2J5dGVzX3Blcl9waXhlbCAoaW50IHBsYW5lKTsKKysJCXB1YmxpYyBpbnQgZ2V0X25fcGxh bmVzICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIHRvX3N0cmluZyAoKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xf UkVBRF9QSVhFTFNfQ09MT1JfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtGbGFnc10KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBSZWFkUGl4ZWxzRmxhZ3Mg eworKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX1JFQURfUElYRUxTX0NPTE9SX0JVRkZFUiIpXQor KwkJUkVBRF9QSVhFTFNfQ09MT1JfQlVGRkVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1JFTkRFUkVSX0VSUk9SXyIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBSZW5kZXJlckVycm9yIHsKKysJCVhM SUJfRElTUExBWV9PUEVOLAorKwkJQkFEX0NPTlNUUkFJTlQKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfU0hBREVSX1RZUEVf IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ cHVibGljIGVudW0gU2hhZGVyVHlwZSB7CisrCQlWRVJURVgsCisrCQlGUkFHTUVOVAorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09H TF9TVEVSRU9fIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFN0ZXJlb01v ZGUgeworKwkJQk9USCwKKysJCUxFRlQsCisrCQlSSUdIVAorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9TWVNURU1fRVJST1Jf IiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ cHVibGljIGVudW0gU3lzdGVtRXJyb3IgeworKwkJVU5TVVBQT1JURUQsCisrCQlOT19NRU1PUlkK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4 ID0gIkNPR0xfVEVYVFVSRV9DT01QT05FTlRTXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgZW51bSBUZXh0dXJlQ29tcG9uZW50 cyB7CisrCQlBLAorKwkJUkcsCisrCQlSR0IsCisrCQlSR0JBLAorKwkJREVQVEgKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xf VEVYVFVSRV9FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuOCIpXQorKwlwdWJsaWMgZW51bSBUZXh0dXJlRXJyb3IgeworKwkJU0laRSwKKysJCUZP Uk1BVCwKKysJCUJBRF9QQVJBTUVURVIsCisrCQlUWVBFOworKwkJcHVibGljIHN0YXRpYyB1aW50 MzIgcXVhcmsgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgY3ByZWZpeCA9ICJDT0dMX1RFWFRVUkVfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBUZXh0 dXJlRmxhZ3MgeworKwkJTk9ORSwKKysJCU5PX0FVVE9fTUlQTUFQLAorKwkJTk9fU0xJQ0lORywK KysJCU5PX0FUTEFTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgY3ByZWZpeCA9ICJDT0dMX1ZFUlRJQ0VTX01PREVfIiwgaGFzX3R5cGVfaWQgPSBmYWxz ZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gVmVydGljZXNN b2RlIHsKKysJCVBPSU5UUywKKysJCUxJTkVTLAorKwkJTElORV9MT09QLAorKwkJTElORV9TVFJJ UCwKKysJCVRSSUFOR0xFUywKKysJCVRSSUFOR0xFX1NUUklQLAorKwkJVFJJQU5HTEVfRkFOCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9 ICJDT0dMX1dJTkRJTkdfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFdp bmRpbmcgeworKwkJQ0xPQ0tXSVNFLAorKwkJQ09VTlRFUl9DTE9DS1dJU0UKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfV0lO U1lTX0ZFQVRVUkVfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIFdpbnN5 c0ZlYXR1cmUgeworKwkJTVVMVElQTEVfT05TQ1JFRU4sCisrCQlTV0FQX1RIUk9UVExFLAorKwkJ VkJMQU5LX0NPVU5URVIsCisrCQlWQkxBTktfV0FJVCwKKysJCVRFWFRVUkVfRlJPTV9QSVhNQVAs CisrCQlTV0FQX0JVRkZFUlNfRVZFTlQsCisrCQlTV0FQX1JFR0lPTiwKKysJCVNXQVBfUkVHSU9O X1RIUk9UVExFLAorKwkJU1dBUF9SRUdJT05fU1lOQ0hST05JWkVELAorKwkJQlVGRkVSX0FHRSwK KysJCVNZTkNfQU5EX0NPTVBMRVRFX0VWRU5ULAorKwkJTl9GRUFUVVJFUworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNlX3BvcyA9IDEuOSld CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGRlbGVnYXRlIHZvaWQgRGVi dWdPYmplY3RGb3JlYWNoVHlwZUNhbGxiYWNrIChDb2dsLkRlYnVnT2JqZWN0VHlwZUluZm8gaW5m byk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNl X3BvcyA9IDEuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjEwIildCisrCXB1YmxpYyBkZWxl Z2F0ZSB2b2lkIEZlYXR1cmVDYWxsYmFjayAoQ29nbC5GZWF0dXJlSUQgZmVhdHVyZSk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNlX3BvcyA9IDIu OSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lk IE9uc2NyZWVuRGlydHlDYWxsYmFjayAoQ29nbC5PbnNjcmVlbiBvbnNjcmVlbiwgQ29nbC5PbnNj cmVlbkRpcnR5SW5mbyBpbmZvKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIiwgaW5zdGFuY2VfcG9zID0gMy45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIp XQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBPbnNjcmVlblJlc2l6ZUNhbGxiYWNrIChDb2dsLk9u c2NyZWVuIG9uc2NyZWVuLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAyLjkpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMi4wIildCisrCXB1YmxpYyBkZWxlZ2F0ZSBib29sIFBpcGVsaW5lTGF5 ZXJDYWxsYmFjayAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgaW50IGxheWVyX2luZGV4KTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaW5zdGFuY2VfcG9zID0g MS45KV0KKysJcHVibGljIGRlbGVnYXRlIGJvb2wgVGV4dHVyZTJERUdMSW1hZ2VFeHRlcm5hbEFs bG9jIChDb2dsLlRleHR1cmUyRCB0ZXhfMmQpIHRocm93cyBHTGliLkVycm9yOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdGFyZ2V0ID0gZmFsc2UpXQor KwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBVc2VyRGF0YURlc3Ryb3lDYWxsYmFjayAodm9pZCogZGF0 YSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0g IkNPR0xfQUZJUlNUX0JJVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IEFGSVJTVF9CSVQ7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xfQV9C SVQiKV0KKysJcHVibGljIGNvbnN0IGludCBBX0JJVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9CR1JfQklUIildCisrCXB1YmxpYyBj b25zdCBpbnQgQkdSX0JJVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgY25hbWUgPSAiQ09HTF9ERVBUSF9CSVQiKV0KKysJcHVibGljIGNvbnN0IGludCBERVBU SF9CSVQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1l ID0gIkNPR0xfUElYRUxfRk9STUFUX01BWF9QTEFORVMiKV0KKysJcHVibGljIGNvbnN0IGludCBQ SVhFTF9GT1JNQVRfTUFYX1BMQU5FUzsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9QUkVNVUxUX0JJVCIpXQorKwlwdWJsaWMgY29uc3Qg aW50IFBSRU1VTFRfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjbmFtZSA9ICJDT0dMX1NURU5DSUxfQklUIildCisrCXB1YmxpYyBjb25zdCBpbnQgU1RF TkNJTF9CSVQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNu YW1lID0gIkNPR0xfVEVYVFVSRV9NQVhfV0FTVEUiKV0KKysJcHVibGljIGNvbnN0IGludCBURVhU VVJFX01BWF9XQVNURTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBibGl0X2ZyYW1lYnVmZmVyIChDb2dsLkZyYW1lYnVm ZmVyIHNyYywgQ29nbC5GcmFtZWJ1ZmZlciBkZXN0LCBpbnQgc3JjX3gsIGludCBzcmNfeSwgaW50 IGRzdF94LCBpbnQgZHN0X3ksIGludCB3aWR0aCwgaW50IGhlaWdodCkgdGhyb3dzIEdMaWIuRXJy b3I7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlwdWJs aWMgc3RhdGljIGJvb2wgY2x1dHRlcl93aW5zeXNfaGFzX2ZlYXR1cmVfQ0xVVFRFUiAoQ29nbC5X aW5zeXNGZWF0dXJlIGZlYXR1cmUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29n bC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RhdGlj IGJvb2wgY29sb3JfZXF1YWwgKHZvaWQqIHYxLCB2b2lkKiB2Mik7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIp XQorKwlwdWJsaWMgc3RhdGljIHZvaWQgY29sb3JfaW5pdF9mcm9tX2hzbCAob3V0IENvZ2wuQ29s b3IgY29sb3IsIGZsb2F0IGh1ZSwgZmxvYXQgc2F0dXJhdGlvbiwgZmxvYXQgbHVtaW5hbmNlKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGRlYnVnX21hdHJpeF9wcmlu dCAoQ29nbC5NYXRyaXggbWF0cml4KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIHN0YXRp YyB2b2lkIGRlYnVnX29iamVjdF9mb3JlYWNoX3R5cGUgKENvZ2wuRGVidWdPYmplY3RGb3JlYWNo VHlwZUNhbGxiYWNrIGZ1bmMpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgc3RhdGljIHZv aWQgZGVidWdfb2JqZWN0X3ByaW50X2luc3RhbmNlcyAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ cHVibGljIHN0YXRpYyB2b2lkIGZsdXNoICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGlj IHN0YXRpYyB2b2lkIGZvcmVhY2hfZmVhdHVyZSAoQ29nbC5Db250ZXh0IGNvbnRleHQsIENvZ2wu RmVhdHVyZUNhbGxiYWNrIGNhbGxiYWNrKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBnZXRfYmFja2ZhY2VfY3Vs bGluZ19lbmFibGVkICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJcHVibGljIHN0YXRpYyBpbnQ2 NCBnZXRfY2xvY2tfdGltZSAoQ29nbC5Db250ZXh0IGNvbnRleHQpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGdl dF9kZXB0aF90ZXN0X2VuYWJsZWQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wuR3JhcGhpY3NSZXNldFN0YXR1cyBn ZXRfZ3JhcGhpY3NfcmVzZXRfc3RhdHVzIChDb2dsLkNvbnRleHQgY29udGV4dCk7CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgc3RhdGljIEdMaWIuT3B0aW9uR3JvdXAgZ2V0X29wdGlvbl9ncm91cCAoKTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCXB1YmxpYyBzdGF0 aWMgR0xpYi5DYWxsYmFjayBnZXRfcHJvY19hZGRyZXNzIChzdHJpbmcgcyk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgc3RhdGljIEdM aWIuVHlwZSBndHlwZV9tYXRyaXhfZ2V0X3R5cGUgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlw dWJsaWMgc3RhdGljIGJvb2wgaGFzX2ZlYXR1cmUgKENvZ2wuQ29udGV4dCBjb250ZXh0LCBDb2ds LkZlYXR1cmVJRCBmZWF0dXJlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wv Y29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMg Ym9vbCBpc19jb250ZXh0ICh2b2lkKiBvYmplY3QpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVi bGljIHN0YXRpYyBib29sIGlzX2ZyYW1lYnVmZmVyICh2b2lkKiBvYmplY3QpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGlzX29uc2NyZWVuICh2b2lkKiBvYmplY3Qp OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjIuMCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfcGlwZWxpbmUgKHZv aWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIp XQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfdGV4dHVyZV8yZCAodm9pZCogb2JqZWN0KTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc190ZXh0dXJlXzJkX3NsaWNl ZCAodm9pZCogb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIHN0YXRpYyBib29s IG1hdHJpeF9lcXVhbCAodm9pZCogdjEsIHZvaWQqIHYyKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfYmFj a2ZhY2VfY3VsbGluZ19lbmFibGVkIChib29sIHNldHRpbmcpOworKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIHNldF9k ZXB0aF90ZXN0X2VuYWJsZWQgKGJvb2wgc2V0dGluZyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgc2hhZGVyX2Nv bXBpbGUgKENvZ2wuSGFuZGxlIGhhbmRsZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIHN0cmluZyBzaGFkZXJfZ2V0X2lu Zm9fbG9nIChDb2dsLkhhbmRsZSBoYW5kbGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyBDb2dsLlNoYWRlclR5cGUgc2hh ZGVyX2dldF90eXBlIChDb2dsLkhhbmRsZSBoYW5kbGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBk ZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyBib29sIHNoYWRlcl9p c19jb21waWxlZCAoQ29nbC5IYW5kbGUgaGFuZGxlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBzaGFkZXJfc291 cmNlIChDb2dsLkhhbmRsZSBzaGFkZXIsIHN0cmluZyBzb3VyY2UpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIxLjAiKV0KKysJcHVibGlj IHN0YXRpYyBDb2dsLlRleHR1cmUgdGV4dHVyZV9uZXdfZnJvbV9iaXRtYXAgKENvZ2wuQml0bWFw IGJpdG1hcCwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJu YWxfZm9ybWF0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIild CisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4 Iiwgc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIHRleHR1cmVf bmV3X2Zyb21fZGF0YSAoaW50IHdpZHRoLCBpbnQgaGVpZ2h0LCBDb2dsLlRleHR1cmVGbGFncyBm bGFncywgQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxf Zm9ybWF0LCBpbnQgcm93c3RyaWRlLCB1aW50OCBkYXRhKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBzdGF0 aWMgQ29nbC5UZXh0dXJlIHRleHR1cmVfbmV3X2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lLCBD b2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRlcm5hbF9mb3JtYXQp IHRocm93cyBHTGliLkVycm9yOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9j b2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTgiLCBzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUg dGV4dHVyZV9uZXdfd2l0aF9zaXplICh1aW50IHdpZHRoLCB1aW50IGhlaWdodCwgQ29nbC5UZXh0 dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0KTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgdWludDMyIHgxMV9vbnNjcmVlbl9nZXRfd2lu ZG93X3hpZCAoQ29nbC5PbnNjcmVlbiBvbnNjcmVlbik7CisrfQorLS0gCisyLjI1LjAKKwpkaWZm IC0tZ2l0IGEvc3JjcGtncy9idWRnaWUtZGVza3RvcC90ZW1wbGF0ZSBiL3NyY3BrZ3MvYnVkZ2ll LWRlc2t0b3AvdGVtcGxhdGUKaW5kZXggYjMyZTc3MzRkM2IuLjE4MGNkYzAyZjFmIDEwMDY0NAot LS0gYS9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYnVkZ2ll LWRlc2t0b3AvdGVtcGxhdGUKQEAgLTEsMjEgKzEsMjIgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J2J1ZGdpZS1kZXNrdG9wJwogcGtnbmFtZT1idWRnaWUtZGVza3RvcAogdmVyc2lvbj0xMC41LjEK LXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9 Z2lyCiBjb25maWd1cmVfYXJncz0iLUR3aXRoLWd0ay1kb2M9ZmFsc2UgLUR3aXRoLWRlc2t0b3At aWNvbnM9bm9uZSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBpbnRsdG9vbCB2YWxhIGds aWItZGV2ZWwgZ29iamVjdC1pbnRyb3NwZWN0aW9uIHNhc3NjIgogbWFrZWRlcGVuZHM9ImFsc2Et bGliLWRldmVsIGxpYm5vdGlmeS1kZXZlbCBhY2NvdW50c3NlcnZpY2UtZGV2ZWwgbGlicGVhcy1k ZXZlbCBsaWJ3bmNrLWRldmVsCi1tdXR0ZXItZGV2ZWwgaWJ1cy1kZXZlbCBnbm9tZS1kZXNrdG9w LWRldmVsIHB1bHNlYXVkaW8tZGV2ZWwgdXBvd2VyLWRldmVsIGd0ayszLWRldmVsIHBvbGtpdC1k ZXZlbAotZ25vbWUtYmx1ZXRvb3RoLWRldmVsIGdub21lLW1lbnVzLWRldmVsIGdub21lLXNldHRp bmdzLWRhZW1vbi1kZXZlbCB2YWxhIGxpYnV1aWQtZGV2ZWwgbGlidXBvd2VyLWdsaWIzIgotZGVw ZW5kcz0iZ25vbWUtc2Vzc2lvbiBnbm9tZS1zZXR0aW5ncy1kYWVtb24gZ25vbWUtY29udHJvbC1j ZW50ZXIgZWxvZ2luZCIKKyBtdXR0ZXItZGV2ZWwgaWJ1cy1kZXZlbCBnbm9tZS1kZXNrdG9wLWRl dmVsIHB1bHNlYXVkaW8tZGV2ZWwgdXBvd2VyLWRldmVsIGd0ayszLWRldmVsIHBvbGtpdC1kZXZl bAorIGdub21lLWJsdWV0b290aC1kZXZlbCBnbm9tZS1tZW51cy1kZXZlbCBnbm9tZS1zZXR0aW5n cy1kYWVtb24tZGV2ZWwgdmFsYSBsaWJ1dWlkLWRldmVsIGxpYnVwb3dlci1nbGliMyIKK2RlcGVu ZHM9Imdub21lLXNlc3Npb24gZ25vbWUtc2V0dGluZ3MtZGFlbW9uIGdub21lLWNvbnRyb2wtY2Vu dGVyIGdub21lLXRoZW1lcy1leHRyYSBlbG9naW5kIgogc2hvcnRfZGVzYz0iTW9kZXJuIGRlc2t0 b3AgZW52aXJvbm1lbnQgZnJvbSB0aGUgU29sdXMgUHJvamVjdCIKIG1haW50YWluZXI9IkxvcmVt IDxub3Rsb3JlbWlwc3VtQHByb3Rvbm1haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb25seSwg TEdQTC0yLjEtb25seSIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vc29sdXMtcHJvamVj dC9idWRnaWUtZGVza3RvcCIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL3NvbHVzLXBy b2plY3QvYnVkZ2llLWRlc2t0b3AvcmVsZWFzZXMvZG93bmxvYWQvdiR7dmVyc2lvbn0vYnVkZ2ll LWRlc2t0b3AtJHt2ZXJzaW9ufS50YXIueHoiCiBjaGVja3N1bT1kMDM1ZWM3NjRlMDA5MzcyMmE4 MzI0MTFhZWI2YWJhMjk2YzA5OTVkOTI3ZWEwNjliMjA1YjE5Yzg1YWFlNTY1CitwYXRjaF9hcmdz PSItTnAxIgogCiBwcmVfY29uZmlndXJlKCkgewogCXZzZWQgLWkgJ3MvZXhlYyBnbm9tZS1zZXNz aW9uL2V4ZWMgZ25vbWUtc2Vzc2lvbiAtLWJ1aWx0aW4vJyBzcmMvc2Vzc2lvbi9idWRnaWUtZGVz a3RvcC5pbgoKRnJvbSBhNzk5NjA3YjUwNmFhYTRiMDljZDdiZjE3YWYzZDNmYjdjNzNiYWEzIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5OjQ5OjA3ICswNjAwClN1YmplY3Q6IFtQQVRDSCA0 My82M10geGRnLWRlc2t0b3AtcG9ydGFsLWd0azogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1k ZXNrdG9wLTMuc28uMTkKCi0tLQogc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwtZ3RrL3RlbXBs YXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwtZ3RrL3RlbXBsYXRlIGIv c3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwtZ3RrL3RlbXBsYXRlCmluZGV4IGRlZTBlNDYzMzg2 Li41NThjNzVmNTM5ZCAxMDA2NDQKLS0tIGEvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwtZ3Rr L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZQpA QCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3hkZy1kZXNrdG9wLXBvcnRhbC1n dGsnCiBwa2duYW1lPXhkZy1kZXNrdG9wLXBvcnRhbC1ndGsKIHZlcnNpb249MS42LjAKLXJldmlz aW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGhvc3RtYWtlZGVw ZW5kcz0icGtnLWNvbmZpZyBsaWJ4c2x0IGdsaWItZGV2ZWwgeGRnLWRlc2t0b3AtcG9ydGFsIGdl dHRleHQiCiBtYWtlZGVwZW5kcz0iZmxhdHBhay1kZXZlbCBndGsrMy1kZXZlbCBsaWJ4c2x0LWRl dmVsIGxpYmdsaWItZGV2ZWwKCkZyb20gY2U2MDZhODNjYWYyY2ExZWQ5NmI3NTg5NGZkMDE2N2M3 Njc0YTY4MiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBv dXRsb29rLmNvbT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo0OToxNCArMDYwMApTdWJqZWN0 OiBbUEFUQ0ggNDQvNjNdIGNoZWVzZTogcmVidWlsZCBhZ2FpbnN0IGxpYmdub21lLWRlc2t0b3At My5zby4xOQoKLS0tCiBzcmNwa2dzL2NoZWVzZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFu Z2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv Y2hlZXNlL3RlbXBsYXRlIGIvc3JjcGtncy9jaGVlc2UvdGVtcGxhdGUKaW5kZXggN2E1NmJhMDM5 ZmIuLjAzN2NkYTQ5Yzk4IDEwMDY0NAotLS0gYS9zcmNwa2dzL2NoZWVzZS90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2NoZWVzZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ2NoZWVzZScKIHBrZ25hbWU9Y2hlZXNlCiB2ZXJzaW9uPTMuMzQuMAotcmV2aXNpb249 MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBlcj0iZ2lyIgogY29u ZmlndXJlX2FyZ3M9Ii1EZ3RrX2RvYz0kKHZvcHRfaWYgZ3RrX2RvYyAndHJ1ZScgJ2ZhbHNlJykK CkZyb20gYTJlODA5OTQxOWE5YjdkNTM0MTUyODI2NDZhNDNkYTMxMWJiYzNlNSBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTog VHVlLCAxNiBKdW4gMjAyMCAxOTo0OToyMSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNDUvNjNdIGdu b21lLWJvb2tzOiByZWJ1aWxkIGFnYWluc3QgbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0K IHNyY3BrZ3MvZ25vbWUtYm9va3MvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWJv b2tzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1ib29rcy90ZW1wbGF0ZQppbmRleCAxMTRiOWUw MzRjMi4uMWQ0OTc0ZmUxODMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtYm9va3MvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9nbm9tZS1ib29rcy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWJvb2tzJwogcGtnbmFtZT1nbm9tZS1ib29rcwogdmVy c2lvbj0zLjM0LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX2hlbHBlcj0iZ2lyIgog YnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyB2YWxhIGdsaWIt ZGV2ZWwgbGlicnN2ZyBkb2Nib29rLXhzbCBsaWJ4c2x0CgpGcm9tIGU0NjZlNWNmOGMzZjJmYmZl MzJlNDJiNDliNzdjMTEyOGY3YjM1NmIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5h ZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDk6 MjggKzA2MDAKU3ViamVjdDogW1BBVENIIDQ2LzYzXSBnbm9tZS1jaGFyYWN0ZXJzOiByZWJ1aWxk IGFnYWluc3QKIGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKLS0tCiBzcmNwa2dzL2dub21lLWNo YXJhY3RlcnMvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWNoYXJhY3RlcnMvdGVt cGxhdGUgYi9zcmNwa2dzL2dub21lLWNoYXJhY3RlcnMvdGVtcGxhdGUKaW5kZXggODk4NjhmNGJj MDQuLmFjMjY0ZTUxYTZhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWNoYXJhY3RlcnMvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtY2hhcmFjdGVycycKIHBrZ25hbWU9Z25v bWUtY2hhcmFjdGVycwogdmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1 aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9ImdpciIKIGhvc3RtYWtlZGVwZW5kcz0iZ2V0 dGV4dCBnanMgZ2xpYi1kZXZlbCBpdHN0b29sIHBrZy1jb25maWciCgpGcm9tIDBlMDA1MTg4MWZl MDgxNTYyOWQ1NmEzNjI4OTkyODUyMDQ4YTkxNWMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAg MTk6NDk6MzYgKzA2MDAKU3ViamVjdDogW1BBVENIIDQ3LzYzXSBnbm9tZS1kb2N1bWVudHM6IHJl YnVpbGQgYWdhaW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0KIHNyY3BrZ3MvZ25v bWUtZG9jdW1lbnRzL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1kb2N1bWVudHMv dGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWRvY3VtZW50cy90ZW1wbGF0ZQppbmRleCA5N2I1M2Q2 MzVkNy4uN2U0NWI4MjVlNzEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtZG9jdW1lbnRzL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtZG9jdW1lbnRzL3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtZG9jdW1lbnRzJwogcGtnbmFtZT1nbm9t ZS1kb2N1bWVudHMKIHZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWls ZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImRvY2Jv b2steHNsIGdldHRleHQgaXRzdG9vbCBwa2ctY29uZmlnIGdsaWItZGV2ZWwgbGlieHNsdCBnZGst cGl4YnVmCgpGcm9tIDYwY2M4YTlkZDZlZWQ0OTYxMDc5OGUyMzBjNGVjOGE1ZTQ1YTdkZDYgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+ CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMTk6NDk6NDYgKzA2MDAKU3ViamVjdDogW1BBVENIIDQ4 LzYzXSBnbm9tZS1mb250LXZpZXdlcjogcmVidWlsZCBhZ2FpbnN0CiBsaWJnbm9tZS1kZXNrdG9w LTMuc28uMTkKCi0tLQogc3JjcGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZSB8IDIgKy0K IDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvZ25vbWUtZm9udC12aWV3ZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWZv bnQtdmlld2VyL3RlbXBsYXRlCmluZGV4IDZkMDM1MzY2ZDQ0Li5mNzRmY2JjYjAwMCAxMDA2NDQK LS0tIGEvc3JjcGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2du b21lLWZvbnQtdmlld2VyL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnZ25vbWUtZm9udC12aWV3ZXInCiBwa2duYW1lPWdub21lLWZvbnQtdmlld2VyCiB2ZXJz aW9uPTMuMzQuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWVzb24KIGhv c3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBnbGliLWRldmVsIgogbWFrZWRlcGVuZHM9ImZvbnRj b25maWctZGV2ZWwgZnJlZXR5cGUtZGV2ZWwgZ2xpYi1kZXZlbCBndGsrMy1kZXZlbAoKRnJvbSAz MDkwM2RhOThiYzEwYjUxNzhhODA2NDUxYjZjMWY3ODA1Mzk0ODQ0IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2 IEp1biAyMDIwIDE5OjQ5OjU0ICswNjAwClN1YmplY3Q6IFtQQVRDSCA0OS82M10gZ25vbWUtc2Ny ZWVuc2F2ZXI6IHJlYnVpbGQgYWdhaW5zdAogbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgotLS0K IC4uLi9wYXRjaGVzL2dub21lLWRlc2t0b3AtMy4zNi5wYXRjaCAgICAgICAgICAgICAgICB8IDEz ICsrKysrKysrKysrKysKIHNyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvdGVtcGxhdGUgICAgICAg ICAgICAgICAgICB8ICA1ICsrKy0tCiAyIGZpbGVzIGNoYW5nZWQsIDE2IGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9nbm9tZS1zY3JlZW5z YXZlci9wYXRjaGVzL2dub21lLWRlc2t0b3AtMy4zNi5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvZ25vbWUtc2NyZWVuc2F2ZXIvcGF0Y2hlcy9nbm9tZS1kZXNrdG9wLTMuMzYucGF0Y2ggYi9z cmNwa2dzL2dub21lLXNjcmVlbnNhdmVyL3BhdGNoZXMvZ25vbWUtZGVza3RvcC0zLjM2LnBhdGNo Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi41OGQ5MmU0NjNhMwotLS0g L2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZ25vbWUtc2NyZWVuc2F2ZXIvcGF0Y2hlcy9nbm9tZS1k ZXNrdG9wLTMuMzYucGF0Y2gKQEAgLTAsMCArMSwxMyBAQAorZGlmZiAtTmF1ciBnbm9tZS1zY3Jl ZW5zYXZlci0zLjYuMS5vcmlnL3NyYy9ncy1tYW5hZ2VyLmMgZ25vbWUtc2NyZWVuc2F2ZXItMy42 LjEvc3JjL2dzLW1hbmFnZXIuYworLS0tIGdub21lLXNjcmVlbnNhdmVyLTMuNi4xLm9yaWcvc3Jj L2dzLW1hbmFnZXIuYwkyMDIwLTAzLTA4IDA4OjUzOjQ2LjQwODQzMTU3OCArMDAwMAorKysrIGdu b21lLXNjcmVlbnNhdmVyLTMuNi4xL3NyYy9ncy1tYW5hZ2VyLmMJMjAyMC0wMy0wOCAwODo1NDoz MS44NzU3Mzg3MzIgKzAwMDAKK0BAIC03ODgsOCArNzg4LDcgQEAKKyAgICAgICAgIHN1cmZhY2Ug PSBnbm9tZV9iZ19jcmVhdGVfc3VyZmFjZSAobWFuYWdlci0+cHJpdi0+YmcsCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdka193aW5kb3csCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoLAorLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQsCistICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIEZBTFNFKTsKKysgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0KTsKKyAgICAgICAgIGdzX3dpbmRvd19zZXRfYmFj a2dyb3VuZF9zdXJmYWNlICh3aW5kb3csIHN1cmZhY2UpOworICAgICAgICAgY2Fpcm9fc3VyZmFj ZV9kZXN0cm95IChzdXJmYWNlKTsKKyB9CmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXNjcmVl bnNhdmVyL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci90ZW1wbGF0ZQppbmRl eCAzNjNmY2YxMmUxMC4uNTRhOWEzNWVjY2IgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtc2Ny ZWVuc2F2ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1zY3JlZW5zYXZlci90ZW1wbGF0 ZQpAQCAtMSwxNSArMSwxNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtc2NyZWVuc2F2 ZXInCiBwa2duYW1lPWdub21lLXNjcmVlbnNhdmVyCiB2ZXJzaW9uPTMuNi4xCi1yZXZpc2lvbj0y CityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0i LS1lbmFibGUtY29tcGlsZS13YXJuaW5ncz1taW5pbXVtIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ct Y29uZmlnIGF1dG9tYWtlIGludGx0b29sIGdsaWItZGV2ZWwiCiBtYWtlZGVwZW5kcz0iZ25vbWUt ZGVza3RvcC1kZXZlbCBkYnVzLWdsaWItZGV2ZWwgcGFtLWRldmVsIgogZGVwZW5kcz0iZ25vbWUt ZGVza3RvcCBsaWJnbm9tZWtiZCBkYnVzIgotc2hvcnRfZGVzYz0iQSBuZXcgc2NyZWVuc2F2ZXIg dGhhdCBjYW4gcmVwbGFjZSB4c2NyZWVuc2F2ZXIiCitzaG9ydF9kZXNjPSJOZXcgc2NyZWVuc2F2 ZXIgdGhhdCBjYW4gcmVwbGFjZSB4c2NyZWVuc2F2ZXIiCiBtYWludGFpbmVyPSJzaGl6b25pYyA8 cmVhbHRpYXpAZ21haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFn ZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9tZVNjcmVlbnNhdmVyIgogZGlz dGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9 LSR7dmVyc2lvbn0udGFyLnh6IgogY2hlY2tzdW09ZjM5Yjc4ZDRmN2ZlZDc0OGM3ZjBhMzFkNjk0 MTEyZmI5MDdjNmQzYzRlNjNkYjIyZWI4NThkZjA3ZTk2MmNkMAorcGF0Y2hfYXJncz0iLU5wMSIK CkZyb20gZmNhOGIyOTI4YTZjN2M4NDExMDU2NDY3MjZlOWJjOWFiYjk0YzllNyBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTog VHVlLCAxNiBKdW4gMjAyMCAxOTo1MDowMSArMDYwMApTdWJqZWN0OiBbUEFUQ0ggNTAvNjNdIGdu b21lLXdlYXRoZXI6IHJlYnVpbGQgYWdhaW5zdCBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0t LQogc3JjcGtncy9nbm9tZS13ZWF0aGVyL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQs IDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9t ZS13ZWF0aGVyL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS13ZWF0aGVyL3RlbXBsYXRlCmluZGV4 IGQzMGJlOWJmMTkyLi5jMDI4ZTQ2YmE2NSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS13ZWF0 aGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtd2VhdGhlci90ZW1wbGF0ZQpAQCAtMSw3 ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXdlYXRoZXInCiBwa2duYW1lPWdu b21lLXdlYXRoZXIKIHZlcnNpb249My4zNi4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWls ZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImdldHRl eHQgcGtnLWNvbmZpZyBpdHN0b29sIGdsaWItZGV2ZWwgZ2pzIgoKRnJvbSBkYTcxZGU1YzcyNzg3 ZTk0NTBjNzFlMDU3YmJjNjZiZTA3ZDI0YjM5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUdWUsIDE2IEp1biAyMDIwIDE5 OjUwOjA5ICswNjAwClN1YmplY3Q6IFtQQVRDSCA1MS82M10gdG90ZW06IHJlYnVpbGQgYWdhaW5z dCBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCi0tLQogc3JjcGtncy90b3RlbS90ZW1wbGF0ZSB8 IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvdG90ZW0vdGVtcGxhdGUgYi9zcmNwa2dzL3RvdGVtL3RlbXBsYXRl CmluZGV4IDgxNTIyYjMxNDg4Li5lNDE4NjYzMjE1MyAxMDA2NDQKLS0tIGEvc3JjcGtncy90b3Rl bS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3RvdGVtL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAndG90ZW0nCiBwa2duYW1lPXRvdGVtCiB2ZXJzaW9uPTMuMzQu MQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBl cj0iZ2lyIgogY29uZmlndXJlX2FyZ3M9Ii1EZW5hYmxlLXB5dGhvbj1ubyAtRGVuYWJsZS1uYXV0 aWx1cz15ZXMKCkZyb20gNmM3NmFjMDE1Y2ZiZjI2ZjdkZThlMDI0YTQ0OWE2MDJlNmY0NjA1NyBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNv bT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAyMCAxOTo1MDoxNiArMDYwMApTdWJqZWN0OiBbUEFUQ0gg NTIvNjNdIGx1dHJpczogcmVidWlsZCBhZ2FpbnN0IGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoK LS0tCiBzcmNwa2dzL2x1dHJpcy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGlu c2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbHV0cmlzL3Rl bXBsYXRlIGIvc3JjcGtncy9sdXRyaXMvdGVtcGxhdGUKaW5kZXggYzNjNDczOTJmZjYuLjdlZTc0 Y2M3OTkwIDEwMDY0NAotLS0gYS9zcmNwa2dzL2x1dHJpcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L2x1dHJpcy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2x1 dHJpcycKIHBrZ25hbWU9bHV0cmlzCiB2ZXJzaW9uPTAuNS42Ci1yZXZpc2lvbj0xCityZXZpc2lv bj0yCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPXB5dGhvbjMtbW9kdWxlCiBidWlsZF9oZWxw ZXI9ImdpciIKCkZyb20gMGM3ZDE2ZDUyNjg5NTBmNGIzMDc5MjdiMjFhMjM3ZmNhMTRhYjdhOCBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9QTBuPTIw VHI9RTE9QkE9QTduPTIwQz1DMz1CNG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+ CkRhdGU6IFR1ZSwgMTYgSnVuIDIwMjAgMjI6NTY6NTMgKzA3MDAKU3ViamVjdDogW1BBVENIIDUz LzYzXSBnbm9tZS1kZXNrdG9wOiBhZGQgZG9fY2hlY2sKCi0tLQogc3JjcGtncy9nbm9tZS1kZXNr dG9wL3RlbXBsYXRlIHwgMTcgKysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCAxNyBp bnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRl IGIvc3JjcGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlCmluZGV4IGMxYTc0MDhjMjA3Li5jY2Q3 YzU2NTY5YSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1kZXNrdG9wL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvZ25vbWUtZGVza3RvcC90ZW1wbGF0ZQpAQCAtMTEsNiArMTEsNyBAQCBtYWtlZGVw ZW5kcz0iZXVkZXYtbGlidWRldi1kZXZlbCBnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFzLWRldmVs IGd0ayszLWRldmVsCiAgaXNvLWNvZGVzIGxpYmdsaWItZGV2ZWwgbGlic2VjY29tcC1kZXZlbCBs aWJYMTEtZGV2ZWwgbGliWGV4dC1kZXZlbAogIGxpYnhrYmZpbGUtZGV2ZWwgbGliWHJhbmRyLWRl dmVsIGdkay1waXhidWYtZGV2ZWwiCiBkZXBlbmRzPSJidWJibGV3cmFwIGdzZXR0aW5ncy1kZXNr dG9wLXNjaGVtYXMgaXNvLWNvZGVzIHhrZXlib2FyZC1jb25maWciCitjaGVja2RlcGVuZHM9IiRk ZXBlbmRzIHhvcmctc2VydmVyLXh2ZmIiCiBzaG9ydF9kZXNjPSJHTk9NRSBkZXNrdG9wIG1hbmFn ZW1lbnQgdXRpbGl0aWVzIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGlu dXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIExHUEwtMi4xLW9yLWxhdGVyIgpA QCAtMjEsNiArMjIsMjIgQEAgY2hlY2tzdW09MzhmOTk0ZGNiMWUxYWUwOTNkMWM5MjljN2FjYzRm ODhlMzkxMTFlNDNiNWZkYzEzMTI1YjBmNmUyMzExYzc4OQogYnVpbGRfb3B0aW9ucz0iZ2lyIgog YnVpbGRfb3B0aW9uc19kZWZhdWx0PSJnaXIiCiAKK2RvX2NoZWNrKCkgeworCSMgdGhlcmUgaXMg c3RpbGwgMSB0ZXN0IGZhaWwgZm9yIGhlX0lMIGxvY2FsZSBpbiBtdXNsCisJaWYgdGVzdCAiJFhC UFNfVEFSR0VUX0xJQkMiICE9IG11c2w7IHRoZW4KKwkJbG9jYWwgX3BpZAorCQlYdmZiIDoxIC1z Y3JlZW4gMCAxMzY2eDc2OHgyNCAmCisJCV9waWQ9JCEKKwkJdHJhcCAia2lsbCAkX3BpZCIgRVhJ VAorCQl0cmFwICdleGl0IDEnIElOVCBIVVAgVEVSTQorCQlleHBvcnQgRElTUExBWT06MQorCQlu aW5qYSAtQyBidWlsZCB0ZXN0CisJCXRyYXAgLSBFWElUIElOVCBIVVAgVEVSTQorCQlraWxsICRf cGlkCisJZmkKK30KKworCiBnbm9tZS1kZXNrdG9wLWRldmVsX3BhY2thZ2UoKSB7CiAJZGVwZW5k cz0iZ3RrKzMtZGV2ZWwgZ3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcy1kZXZlbD49My4xMgogCSBn ZGstcGl4YnVmLWRldmVsIGlzby1jb2RlcyBsaWJYMTEtZGV2ZWwgbGliZ2xpYi1kZXZlbCBsaWJz ZWNjb21wLWRldmVsCgpGcm9tIGRmYWNlMGEyZTcyYTUyNDBlMDI2YjI4NWMwZDc3OWE3YThlOWZm NmQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9OTBvPUMzPUEw bj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5ocXhAZ21haWwu Y29tPgpEYXRlOiBTYXQsIDIwIEp1biAyMDIwIDA2OjI1OjU1ICswNzAwClN1YmplY3Q6IFtQQVRD SCA1NC82M10gZ25vbWUtc2V0dGluZ3MtZGFlbW9uOiBmaXggY2hlY2tkZXBlbmRzCgotLS0KIHNy Y3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5n ZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9n bm9tZS1zZXR0aW5ncy1kYWVtb24vdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXNldHRpbmdzLWRh ZW1vbi90ZW1wbGF0ZQppbmRleCA5Y2ViMWQxM2RlOS4uZjQ1MzlhNzJkNDMgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvZ25vbWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25v bWUtc2V0dGluZ3MtZGFlbW9uL3RlbXBsYXRlCkBAIC0xMiw3ICsxMiw3IEBAIG1ha2VkZXBlbmRz PSJOZXR3b3JrTWFuYWdlci1kZXZlbCBhbHNhLWxpYi1kZXZlbCBjb2xvcmQtZGV2ZWwgY3Vwcy1k ZXZlbCBnY3ItZGV2CiAgeGY4Ni1pbnB1dC13YWNvbS1kZXZlbCIKIGRlcGVuZHM9ImhpY29sb3It aWNvbi10aGVtZSBwdWxzZWF1ZGlvIgogY2hlY2tkZXBlbmRzPSJlbG9naW5kIGxpYm5vdGlmeSBw eXRob24zLWRidXNtb2NrIHB5dGhvbjMtZ29iamVjdAotIHB5dGhvbjMtcHljb2Rlc3R5bGUiCisg cHl0aG9uMy1weWNvZGVzdHlsZSB3aGljaCBod2lkcyBldWRldiIKIHNob3J0X2Rlc2M9IkdOT01F IHNldHRpbmdzIGRhZW1vbiIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxp bnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgoKRnJvbSBiMjdhODFkMmM1ZDVi MGQ1ZGFjMTIwMDg4ZGRlNjVlMTQ3MjRiYTBmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBE YW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogU2F0LCAyMCBKdW4gMjAyMCAwNzo0 NDoxMiArMDcwMApTdWJqZWN0OiBbUEFUQ0ggNTUvNjNdIG11dHRlcjogc2tpcCBkb19jaGVjawoK LS0tCiBzcmNwa2dzL211dHRlci90ZW1wbGF0ZSB8IDQgKysrKwogMSBmaWxlIGNoYW5nZWQsIDQg aW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlIGIvc3Jj cGtncy9tdXR0ZXIvdGVtcGxhdGUKaW5kZXggMTMyY2Q5ZGQ2NDUuLjExN2I1OWEyOWE5IDEwMDY0 NAotLS0gYS9zcmNwa2dzL211dHRlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL211dHRlci90ZW1w bGF0ZQpAQCAtMjIsNiArMjIsMTAgQEAgY2hlY2tzdW09NmFjZTc0MmU4ZDg4OTA4M2QzYzMyZDc5 NTQzZDkwMjI0ODNmMGIwMGI2MzBlY2VhYjVlMzgwNGFhZDNhZWVkMgogc2hsaWJfcHJvdmlkZXM9 ImxpYm11dHRlci1jbHV0dGVyLTYuc28gbGlibXV0dGVyLWNvZ2wtNi5zbwogIGxpYm11dHRlci1j b2dsLXBhbmdvLTYuc28gbGlibXV0dGVyLWNvZ2wtcGF0aC02LnNvIgogCitkb19jaGVjaygpIHsK Kwltc2dfd2FybiAieHZmYiBkb2VzIG5vdCB3b3JrXG4iCit9CisKIG11dHRlci1kZXZlbF9wYWNr YWdlKCkgewogCWRlcGVuZHM9ImdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMgZ3JhcGhlbmUtZGV2 ZWwgZ3RrKzMtZGV2ZWwgY2x1dHRlci1kZXZlbAogCSBsaWJYMTEtZGV2ZWwgbGliWHRzdC1kZXZl bCBtdXR0ZXItJHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKCkZyb20gMTVkYjg3ZDJhNjU4MThkYThj Mjc1NDE3ZDBkNTgwMTU3MzVmOTRmNyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9V VEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1DMz1CNG5nPTIwRGFuaD89 CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IFN1biwgMjEgSnVuIDIwMjAgMjI6NTM6MDMg KzA3MDAKU3ViamVjdDogW1BBVENIIDU2LzYzXSBldm9sdXRpb24tZGF0YS1zZXJ2ZXI6IHNwbGl0 IHZhbGEgYnVpbGQgb3B0aW9uIGZyb20gZ2lyCgotLS0KIHNyY3BrZ3MvZXZvbHV0aW9uLWRhdGEt c2VydmVyL3RlbXBsYXRlIHwgNTQgKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBj aGFuZ2VkLCAyNSBpbnNlcnRpb25zKCspLCAyOSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZXZvbHV0aW9u LWRhdGEtc2VydmVyL3RlbXBsYXRlCmluZGV4IGViZjgxNDVmODhjLi44MjJkNTllNjkyMiAxMDA2 NDQKLS0tIGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUKQEAgLTIsNDUgKzIsMzggQEAKIHBr Z25hbWU9ZXZvbHV0aW9uLWRhdGEtc2VydmVyCiB2ZXJzaW9uPTMuMzYuMwogcmV2aXNpb249MQor X2Jhc2V2ZXI9JHt2ZXJzaW9uJS4qfQogYnVpbGRfc3R5bGU9Y21ha2UKLWJ1aWxkX2hlbHBlcj1n aXIKK2J1aWxkX2hlbHBlcj0iZ2lyIHFlbXUiCiBjb25maWd1cmVfYXJncz0iLURFTkFCTEVfVU9B PU9GRgotICQodm9wdF9pZiBnaXIgJy1ERU5BQkxFX0lOVFJPU1BFQ1RJT049T04gLURFTkFCTEVf VkFMQV9CSU5ESU5HUz1PTicgJy1ERU5BQkxFX1dFQVRIRVI9T0ZGJykiCisgJCh2b3B0X2lmIGdp ciAtREVOQUJMRV9JTlRST1NQRUNUSU9OPU9OKQorICQodm9wdF9pZiB2YWxhIC1ERU5BQkxFX1ZB TEFfQklORElOR1M9T04pIgogaG9zdG1ha2VkZXBlbmRzPSJmbGV4IGdsaWItZGV2ZWwgZ3BlcmYg aW50bHRvb2wgcGtnLWNvbmZpZyBsaWJnbGliLWRldmVsCi0gJCh2b3B0X2lmIGdpciAnZ29iamVj dC1pbnRyb3NwZWN0aW9uJykiCi1tYWtlZGVwZW5kcz0iYm9vc3QtZGV2ZWwgbGliY2FuYmVycmEt ZGV2ZWwgbGliZ2RhdGEtZGV2ZWwgJCh2b3B0X2lmIGdpciBsaWJnd2VhdGhlci1kZXZlbCkKLSBs aWJpY2FsLWRldmVsIGxpYnNlY3JldC1kZXZlbCBtaXQta3JiNS1kZXZlbCAkKHZvcHRfaWYgZ2ly ICd2YWxhLWRldmVsJykgd2Via2l0Mmd0ay1kZXZlbCIKLWRlcGVuZHM9IiQodm9wdF9pZiBnaXIg bGliZ3dlYXRoZXIpIGxpYnNvdXAtZ25vbWUiCisgJCh2b3B0X2lmIHZhbGEgdmFsYSkiCittYWtl ZGVwZW5kcz0iYm9vc3QtZGV2ZWwgbGliY2FuYmVycmEtZGV2ZWwgbGliZ2RhdGEtZGV2ZWwgbGli aWNhbC1kZXZlbAorIGxpYnNlY3JldC1kZXZlbCBtaXQta3JiNS1kZXZlbCB3ZWJraXQyZ3RrLWRl dmVsIGxpYmd3ZWF0aGVyLWRldmVsCisgJCh2b3B0X2lmIHZhbGEgdmFsYS1kZXZlbCkiCitkZXBl bmRzPSJsaWJnd2VhdGhlciBsaWJzb3VwLWdub21lIGRidXMgdHpkYXRhIgorY2hlY2tkZXBlbmRz PSIkZGVwZW5kcyIKIHNob3J0X2Rlc2M9IkNlbnRyYWxpemVkIGFjY2VzcyB0byBhcHBvaW50bWVu dHMgYW5kIGNvbnRhY3RzIgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGlu dXgub3JnPiIKIGxpY2Vuc2U9IkxHUEwtMi4xLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtp Lmdub21lLm9yZy9BcHBzL0V2b2x1dGlvbiIKLWNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVi dXNlcmNvbnRlbnQuY29tL0dOT01FL2V2b2x1dGlvbi1kYXRhLXNlcnZlci9nbm9tZS0zLTM2L05F V1MiCi1kaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7 cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCitjaGFuZ2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1 YnVzZXJjb250ZW50LmNvbS9HTk9NRS8kcGtnbmFtZS9nbm9tZS0ke19iYXNldmVyLy4vLX0vTkVX UyIKK2Rpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7X2Jhc2V2ZXJ9LyR7cGtn bmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCiBjaGVja3N1bT0xZjVmNDgxNzNkMGYyODgyMTlkNzNk NGYxOTNjYjkyMWFlNjMxOTMyYmE4NDAzMGYwNTc1MWM0MmJiMDAzZGIyCiAKLWJ1aWxkX29wdGlv bnM9ImdpciIKLWlmIFsgLXogIiRDUk9TU19CVUlMRCIgXTsgdGhlbgotCWJ1aWxkX29wdGlvbnNf ZGVmYXVsdD0iZ2lyIgotZmkKK2J1aWxkX29wdGlvbnM9ImdpciB2YWxhIgorYnVpbGRfb3B0aW9u c19kZWZhdWx0PSJnaXIgdmFsYSIKIAotIyBjbWFrZSBwZXJmb21ybXMgMiBjaGVja3MgdXNpbmcg YmluYXJ5IHJ1bnRpbWUsIGFib3V0IGljb252IGFuZCBzZnJ0aW1lLgotIyBtdXNsICgxLjEuMTYp IGRvZXMgbm90IHN1cHBvcnQgIklTTy0yMDIyLUpQIiBlbmNvZGluZyAoc2VlIGl0cyByb2FkbWFw KSwKLSMgYWx0aG91Z2ggZXZvbHV0aW9uLWRhdGEtc2VydmVyIGlzIGZpbmUgd2l0aCBtdXNsLgot IyBJZiBjcm9zc2J1aWxkLCBjbWFrZSBsZXQgZGlzYWJsaW5nIHJ1bnRpbWUgY2hlY2tzIHZpYSBz cGVjaWZpYyBkaXJlY3RpdmVzLgotIyB0ZXN0IGljb252LWRldGVjdC5jIGFsc28gZ2VuZXJhdGVz IGljb252LWRldGVjdC5oIHRoYXQgaXMgcmVxdWlyZWQgZm9yIGJ1aWxkLgotIyBTbyBjb21wbGV0 bHkgZGlzYWJsZSB0ZXN0IGZyb20gaWNvbnYtZGV0ZWN0LmMgKGNtYWtlLnBhdGNoIGZpbGUpIGFu ZAotIyB1c2UgYSBjbWFrZSBjYWNoZSBmaWxlIG9uIGNyb3NzYnVpbGQgdG8gZGlzYWJsZSBzZnJ0 aW1lIHJ1bm5pbmcgdGVzdC4KLWlmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgotCWNvbmZpZ3Vy ZV9hcmdzKz0iIC1DIGRpc2FibGVSdW50aW1lVGVzdHMuY21ha2UiCi1maQotCi1wcmVfY29uZmln dXJlKCkgewotCW1rZGlyIC1wIGJ1aWxkCi0JY3AgJHtGSUxFU0RJUn0vaWNvbnYtZGV0ZWN0Lmgg JHt3cmtzcmN9L2J1aWxkLy4KLQlpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KLQkJY3AgJHtG SUxFU0RJUn0vZGlzYWJsZVJ1bnRpbWVUZXN0cy5jbWFrZSAke3dya3NyY30vYnVpbGQvLgotCWZp Citkb19jaGVjaygpIHsKKwljZCBidWlsZAorCSMgVE9ETyBUaGlzIHRlc3QgaXMgcHJvYmxlbWF0 aWMsIGZpcnN0IHJ1biB1c3VhbGx5IGZhaWwKKwkjIFNpZ25pZnkgc29tZXRoaW5nIHdyb25nIHdp dGggZXZvbHV0aW9uLWRhdGEtc2VydmVyIG9uIGZpcnN0IHJ1bgorCWN0ZXN0IC1SIHRlc3QtYm9v ay1jbGllbnQtY3VzdG9tLXN1bW1hcnkgfHwgdHJ1ZQorCSMgbWFrZSB0ZXN0IHJ1biBjdGVzdCAt LWZvcmNlLW5ldy1jdGVzdC1wcm9jZXNzIHdoaWNoIGlzIHByb2JsZW1hdGljCisJIyBub29uZSBz aG91bGQgcnVuIG11bHRpcGxlIGluc3RhbmNlIG9mIGV2b2x1dGlvbi1kYXRhLXNlcnZlciBpcmwu CisJY3Rlc3QKIH0KIAogcG9zdF9pbnN0YWxsKCkgewpAQCAtNDksNiArNDIsNyBAQCBwb3N0X2lu c3RhbGwoKSB7CiAKIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbF9wYWNrYWdlKCkgewogCWRl cGVuZHM9InNxbGl0ZS1kZXZlbCBtaXQta3JiNS1kZXZlbCBuc3MtZGV2ZWwgbnNwci1kZXZlbCBs aWJpY2FsLWRldmVsCisKIAkJbGlibGRhcC1kZXZlbCBsaWJnZGF0YS1kZXZlbD49MC4xNSBsaWJz ZWNyZXQtZGV2ZWwgbGliZ2xpYi1kZXZlbAogCQlsaWJzb3VwLWRldmVsIGd0ayszLWRldmVsIGxp YnhtbDItZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbAogCQkke3NvdXJjZXBrZ30+PSR7dmVyc2lv bn1fJHtyZXZpc2lvbn0iCkBAIC01OSw2ICs1Myw4IEBAIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1k ZXZlbF9wYWNrYWdlKCkgewogCQl2bW92ZSAidXNyL2xpYi8qLnNvIgogCQlpZiBbICIkYnVpbGRf b3B0aW9uX2dpciIgXTsgdGhlbgogCQkJdm1vdmUgdXNyL3NoYXJlL2dpci0xLjAKKwkJZmkKKwkJ aWYgWyAiJGJ1aWxkX29wdGlvbl92YWxhIiBdOyB0aGVuCiAJCQl2bW92ZSB1c3Ivc2hhcmUvdmFs YQogCQlmaQogCX0KCkZyb20gMTE4NmMzODkwYTc2YTNlYmI0NGNlYTI2MjliZTBkZmQ1YzJkMjJi ZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9QTBu PTIwVHI9RTE9QkE9QTduPTIwQz1DMz1CNG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5j b20+CkRhdGU6IFR1ZSwgMjMgSnVuIDIwMjAgMjI6NTE6MzEgKzA3MDAKU3ViamVjdDogW1BBVENI IDU3LzYzXSBmb2xrczogYWRkIGJ1aWxkIG9wdGlvbiBnaXIgYW5kIHZhbGEKCkRpc2FibGUgZ2ly IGFuZCB2YWxhIGluIGV2b2x1dGlvbi1kYXRhLXNlcnZlciB3aWxsIG1ha2UgZm9sa3MgZmFpbGVk IHRvCmJlIGJ1aWx0LgoKRWl0aGVyIGVuYWJsZSBib3RoIG9mIHRoZW0sIG9yIGRpc2FibGUgYm90 aCBvZiB0aGVtLgotLS0KIHNyY3BrZ3MvZm9sa3MvdGVtcGxhdGUgfCAxOCArKysrKysrKysrKysr LS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZm9sa3MvdGVtcGxhdGUgYi9zcmNwa2dzL2ZvbGtzL3RlbXBs YXRlCmluZGV4IGUyMWNhOWMxMDc3Li42ZGFiZWFkYWZhZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9m b2xrcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2ZvbGtzL3RlbXBsYXRlCkBAIC01LDEwICs1LDEx IEBAIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9Z2lyCiBjb25m aWd1cmVfYXJncz0iLURiX2x0bz1mYWxzZSIKLWhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBp bnRsdG9vbCBnbGliLWRldmVsIHZhbGEgcHl0aG9uMyBweXRob24zLWRidXNtb2NrCi0gZ29iamVj dC1pbnRyb3NwZWN0aW9uIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCIKK2hvc3RtYWtlZGVw ZW5kcz0icGtnLWNvbmZpZyBpbnRsdG9vbCBnbGliLWRldmVsIHB5dGhvbjMgcHl0aG9uMy1kYnVz bW9jaworIGV2b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCAkKHZvcHRfaWYgdmFsYSB2YWxhKSIK IG1ha2VkZXBlbmRzPSJyZWFkbGluZS1kZXZlbCB0ZWxlcGF0aHktZ2xpYi1kZXZlbCB6ZWl0Z2Vp c3QtZGV2ZWwKLSBsaWJnZWUwOC1kZXZlbCBldm9sdXRpb24tZGF0YS1zZXJ2ZXItZGV2ZWwgdHJh Y2tlci1kZXZlbCIKKyBsaWJnZWUwOC1kZXZlbCBldm9sdXRpb24tZGF0YS1zZXJ2ZXItZGV2ZWwg dHJhY2tlci1kZXZlbAorICQodm9wdF9pZiB2YWxhIHZhbGEtZGV2ZWwpIgogZGVwZW5kcz0iemVp dGdlaXN0Igogc2hvcnRfZGVzYz0iR09iamVjdCBMaWJyYXJ5IHRvIGFnZ3JlZ2F0ZSBwZW9wbGUg aW50byBtZXRhY29udGFjdHMiCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRs aW51eC5vcmc+IgpAQCAtMTcsNiArMTgsOSBAQCBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21l Lm9yZy9Qcm9qZWN0cy9Gb2xrcyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9 LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKIGNoZWNrc3VtPWQ2 ZTc3OGRhNjM3ZDNiMzNmZDlhNmI0NTExNWU4MTU3ZDg4NjgyMTFkYzA4Yjk0M2QxMDc1YjVlYjcy ODJiYjkKIAorYnVpbGRfb3B0aW9ucz0iZ2lyIHZhbGEiCitidWlsZF9vcHRpb25zX2RlZmF1bHQ9 ImdpciB2YWxhIgorCiBmb2xrcy1kZXZlbF9wYWNrYWdlKCkgewogCWRlcGVuZHM9IiR7bWFrZWRl cGVuZHN9ICR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKIAlzaG9ydF9kZXNj Kz0iIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCkBAIC0yNCw3ICsyOCwxMSBAQCBmb2xrcy1kZXZlbF9w YWNrYWdlKCkgewogCQl2bW92ZSB1c3IvaW5jbHVkZQogCQl2bW92ZSB1c3IvbGliL3BrZ2NvbmZp ZwogCQl2bW92ZSAidXNyL2xpYi8qLnNvIgotCQl2bW92ZSB1c3Ivc2hhcmUvdmFsYQotCQl2bW92 ZSB1c3Ivc2hhcmUvZ2lyLTEuMAorCQlpZiBbICIkYnVpbGRfb3B0aW9uX2dpciIgXTsgdGhlbgor CQkJdm1vdmUgdXNyL3NoYXJlL2dpci0xLjAKKwkJZmkKKwkJaWYgWyAiJGJ1aWxkX29wdGlvbl92 YWxhIiBdOyB0aGVuCisJCQl2bW92ZSB1c3Ivc2hhcmUvdmFsYQorCQlmaQogCX0KIH0KCkZyb20g YTA4MWIxMDg0Yzk2ZWM0YmY0YzgxMmJjY2JkNGVkYWUyMWY3YzM2NCBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIw Qz1DMz1CNG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IFR1ZSwgMjMg SnVuIDIwMjAgMjI6NTI6NTAgKzA3MDAKU3ViamVjdDogW1BBVENIIDU4LzYzXSBuYXV0aWx1czog Y29ycmVjdCBjaGVja2RlcGVuZHMKCi0tLQogc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZSB8IDIg Ky0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvbmF1dGlsdXMvdGVtcGxhdGUgYi9zcmNwa2dzL25hdXRpbHVzL3RlbXBs YXRlCmluZGV4IDk0Y2IxMDQ5MmNhLi5jNmZhZjdiZjNkNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9u YXV0aWx1cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCkBAIC0xMSw3 ICsxMSw3IEBAIG1ha2VkZXBlbmRzPSJleGVtcGktZGV2ZWwgZ25vbWUtYXV0b2FyLWRldmVsIGdu b21lLWRlc2t0b3AtZGV2ZWwgZ3RrKzMtZGV2ZWwKICBsaWJYMTEtZGV2ZWwgbGlieG1sMi1kZXZl bCB0cmFja2VyLWRldmVsIGdzdC1wbHVnaW5zLWJhc2UxLWRldmVsIgogZGVwZW5kcz0iZGVza3Rv cC1maWxlLXV0aWxzIGdzZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMgaGljb2xvci1pY29uLXRoZW1l CiAgdHJhY2tlci1taW5lcnMgdHJhY2tlciIKLWNoZWNrZGVwZW5kcz0idHJhY2tlciIKK2NoZWNr ZGVwZW5kcz0idHJhY2tlciB0cmFja2VyLW1pbmVycyIKIHNob3J0X2Rlc2M9IkdOT01FIGZpbGUg bWFuYWdlciIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4i CiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIuMS1vci1sYXRlciIKCkZyb20gYWU2 ZDA3ODEzZTkwYWJjOTUyMTM3YjM2OWY5ZWMxMmUyNjlkMGFiMiBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogPT9VVEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1D Mz1CNG5nPTIwRGFuaD89CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IFR1ZSwgMjMgSnVu IDIwMjAgMjI6NTM6MTQgKzA3MDAKU3ViamVjdDogW1BBVENIIDU5LzYzXSB0cmFja2VyOiBhZGQg dGFyIHRvIGNoZWNrZGVwZW5kcwoKLS0tCiBzcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUgfCAxICsK IDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdHJh Y2tlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvdHJhY2tlci90ZW1wbGF0ZQppbmRleCBlODE0Zjc3Yzcx MS4uMTkzMzhkYjQ1ZTEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvdHJhY2tlci90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL3RyYWNrZXIvdGVtcGxhdGUKQEAgLTExLDYgKzExLDcgQEAgaG9zdG1ha2VkZXBl bmRzPSJnZXR0ZXh0IHBrZy1jb25maWcgZ2xpYi1kZXZlbCB2YWxhIgogbWFrZWRlcGVuZHM9ImRi dXMtZGV2ZWwgbGliZ2xpYi1kZXZlbCBpY3UtZGV2ZWwganNvbi1nbGliLWRldmVsCiAgbGlic291 cC1kZXZlbCBsaWJ4bWwyLWRldmVsIHNxbGl0ZS1kZXZlbCBOZXR3b3JrTWFuYWdlci1kZXZlbAog IGJhc2gtY29tcGxldGlvbiIKK2NoZWNrZGVwZW5kcz0idGFyIgogc2hvcnRfZGVzYz0iUGVyc29u YWwgc2VhcmNoIHRvb2wgYW5kIHN0b3JhZ2Ugc3lzdGVtIgogbWFpbnRhaW5lcj0iT3JwaGFuZWQg PG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCgpGcm9t IDI0MWRhNDZhNGZiNWY5MjQ0ZWEwMjc1MTkyYTRlNGI0NDZiOTg2ZDMgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0y MEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBUdWUsIDIz IEp1biAyMDIwIDIyOjUzOjU1ICswNzAwClN1YmplY3Q6IFtQQVRDSCA2MC82M10gdHJhY2tlci1t aW5lcnM6IHNpbXBsaWZ5IHRlbXBsYXRlCgotLS0KIHNyY3BrZ3MvdHJhY2tlci1taW5lcnMvdGVt cGxhdGUgfCA3ICsrLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDUgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy90cmFja2VyLW1pbmVycy90ZW1wbGF0ZSBi L3NyY3BrZ3MvdHJhY2tlci1taW5lcnMvdGVtcGxhdGUKaW5kZXggMDIwYzEyNGYzMjIuLmE1YWQ2 NWQ3NDQxIDEwMDY0NAotLS0gYS9zcmNwa2dzL3RyYWNrZXItbWluZXJzL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvdHJhY2tlci1taW5lcnMvdGVtcGxhdGUKQEAgLTMsNiArMyw3IEBAIHBrZ25hbWU9 dHJhY2tlci1taW5lcnMKIHZlcnNpb249Mi4zLjEKIHJldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPW1l c29uCisjIE1pc3NpbmcgbGliZ3JzcwogY29uZmlndXJlX2FyZ3M9Ii1EdHJhY2tlcl9jb3JlPXN5 c3RlbSAtRGRvY3M9ZmFsc2UgLURleHRyYWN0PXRydWUKICAtRGZ1bmN0aW9uYWxfdGVzdHM9ZmFs c2UgLURjdWU9ZW5hYmxlZCAtRGV4aWY9ZW5hYmxlZCAtRGZsYWM9ZW5hYmxlZAogIC1EZ2lmPWVu YWJsZWQgLURnc2Y9ZW5hYmxlZCAtRGlwdGM9ZW5hYmxlZCAtRGlzbz1lbmFibGVkIC1EanBlZz1l bmFibGVkCkBAIC0xNywxNCArMTgsMTAgQEAgbWFrZWRlcGVuZHM9InRyYWNrZXItZGV2ZWwgZmZt cGVnLWRldmVsIGRidXMtZGV2ZWwgZXhlbXBpLWRldmVsIGxpYmZsYWMtZGV2ZWwKICBsaWJleGlm LWRldmVsIGxpYmdzZi1kZXZlbCBsaWJneHBzLWRldmVsIGxpYmlwdGNkYXRhLWRldmVsIGxpYmpw ZWctdHVyYm8tZGV2ZWwKICBsaWJvc2luZm8tZGV2ZWwgbGlicG5nLWRldmVsIGxpYnNlY2NvbXAt ZGV2ZWwgdGlmZi1kZXZlbCBsaWJ4bWwyLWRldmVsCiAgbGlidm9yYmlzLWRldmVsIHBvcHBsZXIt Z2xpYi1kZXZlbCB0YWdsaWItZGV2ZWwgdG90ZW0tcGwtcGFyc2VyLWRldmVsCi0gdXBvd2VyLWRl dmVsIHpsaWItZGV2ZWwgZ3N0LXBsdWdpbnMtYmFzZTEtZGV2ZWwgZ2lmbGliLWRldmVsIgorIHVw b3dlci1kZXZlbCB6bGliLWRldmVsIGdzdC1wbHVnaW5zLWJhc2UxLWRldmVsIGdpZmxpYi1kZXZl bCBsaWJoYXJmYnV6eiIKIHNob3J0X2Rlc2M9IkRhdGEgbWluZXJzIGZvciB0cmFja2VyIgogbWFp bnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQ TC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9kZXZlbG9wZXIuZ25vbWUub3JnL2xp YnRyYWNrZXItbWluZXIvc3RhYmxlIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9L3RyYWNrZXIt bWluZXJzLyR7dmVyc2lvbiUuKn0vdHJhY2tlci1taW5lcnMtJHt2ZXJzaW9ufS50YXIueHoiCiBj aGVja3N1bT03YjFkZTA2YTdhNzllYTFjNzgxM2M4YTIxZjhjZDFjNTVmMmI5NWY3OTljZjlmNDdm MDIwNGYzYmU4YTU5MGUwCi0KLSMgTWlzc2luZyBsaWJncnNzCi1jb25maWd1cmVfYXJncys9IiAt RG1pbmVyX3Jzcz1mYWxzZSIKLW1ha2VkZXBlbmRzKz0iIGxpYmhhcmZidXp6IgoKRnJvbSA1OGQz NmUyZTZiZGI0YTE0NDhmZTI4NGZlN2VhODAxZGVjNmM1MTRiIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMz PUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAyNCBKdW4g MjAyMCAyMzoxODo0MCArMDcwMApTdWJqZWN0OiBbUEFUQ0ggNjEvNjNdIGdub21lLXNoZWxsOiBh ZGQgZG9fY2hlY2sKCi0tLQogc3JjcGtncy9nbm9tZS1zaGVsbC90ZW1wbGF0ZSB8IDE3ICsrKysr KysrKysrKysrKysrCiBzcmNwa2dzL2xpYmd3ZWF0aGVyL3RlbXBsYXRlIHwgIDIgKy0KIDIgZmls ZXMgY2hhbmdlZCwgMTggaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ25vbWUtc2hlbGwvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXNoZWxsL3RlbXBs YXRlCmluZGV4IGVlNGM2Mjg4ZjVmLi5kZWI5MjJhMDlhZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9n bm9tZS1zaGVsbC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLXNoZWxsL3RlbXBsYXRlCkBA IC0xNSw2ICsxNSw3IEBAIG1ha2VkZXBlbmRzPSJhdC1zcGkyLWF0ayBjYXJpYm91LWRldmVsIGV2 b2x1dGlvbi1kYXRhLXNlcnZlci1kZXZlbCBmb2xrcy1kZXZlbAogIG5ldHdvcmstbWFuYWdlci1h cHBsZXQtZGV2ZWwgcG9sa2l0LWRldmVsIHB1bHNlYXVkaW8tZGV2ZWwKICBzdGFydHVwLW5vdGlm aWNhdGlvbi1kZXZlbCB0ZWxlcGF0aHktbG9nZ2VyLWRldmVsIGdub21lLWF1dG9hci1kZXZlbCIK IGRlcGVuZHM9ImNhcmlib3UgZWxvZ2luZCBnbHhpbmZvIGdub21lLWNvbnRyb2wtY2VudGVyIGdz ZXR0aW5ncy1kZXNrdG9wLXNjaGVtYXMgdXBvd2VyIgorY2hlY2tkZXBlbmRzPSIkZGVwZW5kcyBh Y2NvdW50c3NlcnZpY2UgZ2RtIHhvcmctc2VydmVyLXh2ZmIgcGlwZXdpcmUgbWVzYS1kcmkgZGJ1 cy14MTEiCiBzaG9ydF9kZXNjPSJHTk9NRSBjb3JlIHVzZXIgaW50ZXJmYWNlIgogbWFpbnRhaW5l cj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAt b3ItbGF0ZXIiCkBAIC0yMiwzICsyMywxOSBAQCBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21l Lm9yZy9Qcm9qZWN0cy9Hbm9tZVNoZWxsIgogY2hhbmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1 c2VyY29udGVudC5jb20vR05PTUUvZ25vbWUtc2hlbGwvZ25vbWUtMy0zMC9ORVdTIgogZGlzdGZp bGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLnh6IgogY2hlY2tzdW09ODZkOGFiZjcwZmFiODlkNWQ5MzlkZDdlMzhjNTk4 NzI0OTJmNDQ0MjcyYTg1MjRkYjc5NDUwYTUxODBkNDViYgorCitkb19jaGVjaygpIHsKKwlsb2Nh bCBfcGlkCisJZXhwb3J0IERJU1BMQVk9OjEKKwlleHBvcnQgWERHX1JVTlRJTUVfRElSPS90bXAK KwlYdmZiIDoxIC1zY3JlZW4gMCAxMzY2eDc2OHgyNCAmCisJX3BpZD0kIQorCXRyYXAgImtpbGwg JF9waWQiIEVYSVQKKwl0cmFwICdleGl0IDEnIElOVCBIVVAgVEVSTQorCWV2YWwgJChkYnVzLWxh dW5jaCkKKwlleHBvcnQgREJVU19TRVNTSU9OX0JVU19BRERSRVNTCisJbmluamEgdGVzdCAtQyBi dWlsZAorCSMgdHJhcCBpcyBoYW5naW5nIG9uIG5vcm1hbCBleGl0LCBkYnVzPworCXRyYXAgLSBF WElUIElOVCBIVVAgVEVSTQorCWtpbGwgJF9waWQgfHwgdHJ1ZQorfQpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9saWJnd2VhdGhlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvbGliZ3dlYXRoZXIvdGVtcGxhdGUK aW5kZXggZDg2MjE3MGNjNGUuLmVjMzk3NjU2MmQ4IDEwMDY0NAotLS0gYS9zcmNwa2dzL2xpYmd3 ZWF0aGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbGliZ3dlYXRoZXIvdGVtcGxhdGUKQEAgLTUs NyArNSw3IEBAIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9Imdp ciIKIGNvbmZpZ3VyZV9hcmdzPSItRGVuYWJsZV92YWxhPSQodm9wdF9pZiB2YWxhIHRydWUgZmFs c2UpCi0gLURpbnRyb3NwZWN0aW9uPSQodm9wdF9pZiBnaXIgdHJ1ZSBmYWxzZSkgLUR0ZXN0PWZh bHNlCisgLURpbnRyb3NwZWN0aW9uPSQodm9wdF9pZiBnaXIgdHJ1ZSBmYWxzZSkKICAtRHpvbmVp bmZvX2Rpcj0vdXNyL3NoYXJlL3pvbmVpbmZvIgogaG9zdG1ha2VkZXBlbmRzPSJnbGliLWRldmVs IGludGx0b29sIHBrZy1jb25maWcgJCh2b3B0X2lmIHZhbGEgdmFsYSkiCiBtYWtlZGVwZW5kcz0i Z2VvY29kZS1nbGliLWRldmVsIGd0ayszLWRldmVsIGxpYnNvdXAtZ25vbWUtZGV2ZWwiCgpGcm9t IGIyODc0ZWQ4MDJkMGY0YzU4MDMzYjU0MmIwMWQ3ZjkyNmVkZjQwZTkgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206ID0/VVRGLTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0y MEM9QzM9QjRuZz0yMERhbmg/PQogPGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBTdW4sIDIx IEp1biAyMDIwIDE1OjU0OjQ2ICswNzAwClN1YmplY3Q6IFtQQVRDSCA2Mi82M10gY29tbW9uL3No bGliczogZml4IGZvciBsaWJoaWRyZF9pdGVtLnNvLjAKCi0tLQogY29tbW9uL3NobGlicyB8IDIg Ky0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAt LWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IDIzZTBjOGY2ODVhLi43 OTQ3OTcwMzczZiAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9jb21tb24vc2hsaWJz CkBAIC0zOTcyLDcgKzM5NzIsNyBAQCBsaWJqcGVneHIuc28uMCBqeHJsaWItMC4yLjJfMQogbGli anhyZ2x1ZS5zby4wIGp4cmxpYi0wLjIuMl8xCiBsaWJoaWRyZF91dGlsLnNvLjAgaGlkcmQtMC4y LjBfMQogbGliaGlkcmRfdXNhZ2Uuc28uMCBoaWRyZC0wLjIuMF8xCi1saWJoaWRyZF9pdGVtLnNv LjAKK2xpYmhpZHJkX2l0ZW0uc28uMCBoaWRyZC0wLjIuMF8xCiBsaWJoaWRyZF9vcHQuc28uMCBo aWRyZC0wLjIuMF8xCiBsaWJoaWRyZF9zdHJtLnNvLjAgaGlkcmQtMC4yLjBfMQogbGliaGlkcmRf Zm10LnNvLjAgaGlkcmQtMC4yLjBfMQoKRnJvbSBjNmNlNGEzMzUwZGVhMDAyNGI1ZWU3YjQxN2Fh ZmFmYzllMTdjNmViIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0 PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1BN249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFu aHF4QGdtYWlsLmNvbT4KRGF0ZTogVGh1LCAyIEp1bCAyMDIwIDA5OjE3OjMxICswNzAwClN1Ympl Y3Q6IFtQQVRDSCA2My82M10gZml4dXAhIGV2b2x1dGlvbi1kYXRhLXNlcnZlcjogc3BsaXQgdmFs YSBidWlsZCBvcHRpb24KIGZyb20gZ2lyCgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2V2b2x1dGlv bi1kYXRhLXNlcnZlci90ZW1wbGF0ZSB8IDQyICsrKysrKysrKysrKysrKysrKysrKysrKystCiAx IGZpbGUgY2hhbmdlZCwgNDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvZXZvbHV0aW9uLWRhdGEtc2VydmVyL3RlbXBsYXRlIGIvc3JjcGtncy9ldm9s dXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUKaW5kZXggODIyZDU5ZTY5MjIuLjcwNWNlMDkzMTE1 IDEwMDY0NAotLS0gYS9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZQpAQCAtMjYsNiArMjYsNDcg QEAgY2hlY2tzdW09MWY1ZjQ4MTczZDBmMjg4MjE5ZDczZDRmMTkzY2I5MjFhZTYzMTkzMmJhODQw MzBmMDU3NTFjNDJiYjAwM2RiMgogYnVpbGRfb3B0aW9ucz0iZ2lyIHZhbGEiCiBidWlsZF9vcHRp b25zX2RlZmF1bHQ9ImdpciB2YWxhIgogCitwcmVfYnVpbGQoKSB7CisJWyAteiAiJENST1NTX0JV SUxEIiBdICYmIHJldHVybiAwCisJbG9jYWwgX2Rpcj0KKwlmb3IgX2RpciBpbiBsaWJlYmFja2Vu ZCBsaWJlZGF0YXNlcnZlciBsaWJlZGF0YXNlcnZlcnVpIFwKKwkJYWRkcmVzc2Jvb2svbGliZWJv b2stY29udGFjdHMgXAorCQlhZGRyZXNzYm9vay9saWJlZGF0YS1ib29rIFwKKwkJYWRkcmVzc2Jv b2svbGliZWJvb2sgXAorCQljYWxlbmRhci9saWJlY2FsIFwKKwkJY2FsZW5kYXIvbGliZWRhdGEt Y2FsCisJZG8KKwkJbG4gLXJzZiAkd3Jrc3JjL2J1aWxkL3NyYy9wcml2YXRlL2xpYmVkYnVzLXBy aXZhdGUuc28gYnVpbGQvc3JjLyRfZGlyCisJZG9uZQorCisJZm9yIF9kaXIgaW4gYWRkcmVzc2Jv b2svbGliZWJvb2stY29udGFjdHMgXAorCQljYWxlbmRhci9saWJlY2FsIGNhbGVuZGFyL2xpYmVk YXRhLWNhbAorCWRvCisJCWxuIC1zZiAuLi8uLi9jYW1lbC9saWJjYW1lbC0xLjIuc28uNjIgYnVp bGQvc3JjLyRfZGlyCisJZG9uZQorCisJZm9yIF9kaXIgaW4gYWRkcmVzc2Jvb2svbGliZWRhdGEt Ym9vayBhZGRyZXNzYm9vay9saWJlYm9vayBcCisJCWNhbGVuZGFyL2xpYmVkYXRhLWNhbAorCWRv CisJCWxuIC1zZiAuLi8uLi9saWJlYmFja2VuZC9saWJlYmFja2VuZC0xLjIuc28uMTAgYnVpbGQv c3JjLyRfZGlyCisJZG9uZQorCisJbG4gLXNmIC4uLy4uL2xpYmVkYXRhc2VydmVyL2xpYmVkYXRh c2VydmVyLTEuMi5zby4yNCBidWlsZC9zcmMvY2FsZW5kYXIvbGliZWNhbAorCXJldHVybgorCSMg aWRlYWxseSBxZW11IHNob3VsZCBwaWNrIGJlbG93IExEX0xJQkFSWV9QQVRICisJIyBpbnN0ZWFk IG9mIGFib3ZlIHNoZW5hbmlnYW5zCisJIyBCdXQgaXQgZG9lc24ndCB3b3JrIGZvciBub3csIGxl ZnQgaXQgaGVyZSBhcyBmdXR1cmUgcmVmZXJlbmNlLgorCSMgVE9ETyBmaWd1cmUgYSBiZXR0ZXIg bWV0aG9kcworCV9idWlsZGRpcj0kd3Jrc3JjL2J1aWxkCisJX2xkX2xpYnJhcnlfcGF0aD0kX2J1 aWxkZGlyOiRfYnVpbGRkaXIvc3JjCisJZm9yIF9kaXIgaW4gbGliZWRhdGFzZXJ2ZXIgcHJpdmF0 ZSBjYW1lbAorCWRvCisJCV9sZF9saWJyYXJ5X3BhdGgrPSI6JF9idWlsZGRpci9zcmMvJF9kaXIi CisJZG9uZQorCV9sZF9saWJyYXJ5X3BhdGgrPSI6JFhCUFNfQ1JPU1NfQkFTRS91c3IvbGliIgor CWV4cG9ydCBRRU1VX1NFVF9FTlY9TERfTElCQVJZX1BBVEg9JF9sZF9saWJyYXJ5X3BhdGgKK30K KwogZG9fY2hlY2soKSB7CiAJY2QgYnVpbGQKIAkjIFRPRE8gVGhpcyB0ZXN0IGlzIHByb2JsZW1h dGljLCBmaXJzdCBydW4gdXN1YWxseSBmYWlsCkBAIC00Miw3ICs4Myw2IEBAIHBvc3RfaW5zdGFs bCgpIHsKIAogZXZvbHV0aW9uLWRhdGEtc2VydmVyLWRldmVsX3BhY2thZ2UoKSB7CiAJZGVwZW5k cz0ic3FsaXRlLWRldmVsIG1pdC1rcmI1LWRldmVsIG5zcy1kZXZlbCBuc3ByLWRldmVsIGxpYmlj YWwtZGV2ZWwKLQogCQlsaWJsZGFwLWRldmVsIGxpYmdkYXRhLWRldmVsPj0wLjE1IGxpYnNlY3Jl dC1kZXZlbCBsaWJnbGliLWRldmVsCiAJCWxpYnNvdXAtZGV2ZWwgZ3RrKzMtZGV2ZWwgbGlieG1s Mi1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsCiAJCSR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8k e3JldmlzaW9ufSIK --===============6200599835901589266==--