From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,NUMERIC_HTTP_ADDR, T_SCC_BODY_TEXT_LINE,WEIRD_PORT autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 21450 invoked from network); 8 Aug 2022 17:30:39 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 8 Aug 2022 17:30:39 -0000 Content-Type: multipart/mixed; boundary="===============7184035107481500633==" MIME-Version: 1.0 Subject: =?utf8?q?=5BPR_PATCH=5D_New_package=3A_Orthanc-1=2E11=2E1?= To: ml@inbox.vuxu.org From: bingulo Reply-to: ml@inbox.vuxu.org Message-ID: Date: Mon, 08 Aug 2022 19:30:39 +0200 List-Id: GitHub notification mails are now in MIME to allow UTF8. --===============7184035107481500633== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYSBuZXcgcHVsbCByZXF1ZXN0IGJ5IGJpbmd1bG8gYWdhaW5zdCBtYXN0ZXIgb24g dGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL2Jpbmd1bG8v dm9pZC1wYWNrYWdlcyBvcnRoYW5jCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQt cGFja2FnZXMvcHVsbC8zODUzNwoKTmV3IHBhY2thZ2U6IE9ydGhhbmMtMS4xMS4xCjwhLS0gVW5j b21tZW50IHJlbGV2YW50IHNlY3Rpb25zIGFuZCBkZWxldGUgb3B0aW9ucyB3aGljaCBhcmUgbm90 IGFwcGxpY2FibGUgLS0+DQoNCiMjIyMgVGVzdGluZyB0aGUgY2hhbmdlcw0KLSBJIHRlc3RlZCB0 aGUgY2hhbmdlcyBpbiB0aGlzIFBSOiAqKmJyaWVmbHkqKg0KDQojIyMjIE5ldyBwYWNrYWdlDQot IFRoaXMgbmV3IHBhY2thZ2UgY29uZm9ybXMgdG8gdGhlIFtxdWFsaXR5IHJlcXVpcmVtZW50c10o aHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9ibG9iL21hc3Rlci9N YW51YWwubWQjcXVhbGl0eS1yZXF1aXJlbWVudHMpOiAqKllFUyoqDQoNCjwhLS0gTm90ZTogSWYg dGhlIGJ1aWxkIGlzIGxpa2VseSB0byB0YWtlIG1vcmUgdGhhbiAyIGhvdXJzLCBwbGVhc2UgYWRk IGNpIHNraXAgdGFnIGFzIGRlc2NyaWJlZCBpbg0KaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGlu dXgvdm9pZC1wYWNrYWdlcy9ibG9iL21hc3Rlci9DT05UUklCVVRJTkcubWQjY29udGludW91cy1p bnRlZ3JhdGlvbg0KYW5kIHRlc3QgYXQgbGVhc3Qgb25lIG5hdGl2ZSBidWlsZCBhbmQsIGlmIHN1 cHBvcnRlZCwgYXQgbGVhc3Qgb25lIGNyb3NzIGJ1aWxkLg0KSWdub3JlIHRoaXMgc2VjdGlvbiBp ZiB0aGlzIFBSIGlzIG5vdCBza2lwcGluZyBDSS4NCi0tPg0KDQojIyMjIExvY2FsIGJ1aWxkIHRl c3RpbmcNCi0gSSBidWlsdCB0aGlzIFBSIGxvY2FsbHkgZm9yIG15IG5hdGl2ZSBhcmNoaXRlY3R1 cmUsICh4ODZfNjQtTElCQykKCkEgcGF0Y2ggZmlsZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92 b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC8zODUzNy5wYXRjaCBpcyBhdHRhY2hlZA== --===============7184035107481500633== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-orthanc-38537.patch" RnJvbSBmMjgyODQ5NjhkMTQyOTkyN2U0YmU1YTcyN2ExNzkxOGQzMjU0NzIzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBiaW5ndWxvIDxnY2FybG9zQGRpc3Jvb3Qub3JnPgpEYXRlOiBT dW4sIDcgQXVnIDIwMjIgMTM6NTM6MzcgLTAzMDAKU3ViamVjdDogW1BBVENIXSBOZXcgcGFja2Fn ZTogT3J0aGFuYy0xLjExLjEKCi0tLQogY29tbW9uL3NobGlicyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgIDM4ICsKIHNyY3BrZ3MvT3J0aGFuYy1EaWNvbVdlYi90ZW1wbGF0ZSAgICAg ICAgICB8ICAyMiArCiBzcmNwa2dzL09ydGhhbmMtUG9zdGdyZVNRTC90ZW1wbGF0ZSAgICAgICAg fCAgMjMgKwogc3JjcGtncy9PcnRoYW5jLVB5dGhvbi90ZW1wbGF0ZSAgICAgICAgICAgIHwgIDIz ICsKIHNyY3BrZ3MvT3J0aGFuYy1kZXZlbCAgICAgICAgICAgICAgICAgICAgICB8ICAgMSArCiBz cmNwa2dzL09ydGhhbmMtcGx1Z2lucyAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwogc3JjcGtn cy9PcnRoYW5jL2ZpbGVzL0NvbmZpZ3VyYXRpb24uanNvbiAgIHwgOTE1ICsrKysrKysrKysrKysr KysrKysrKwogc3JjcGtncy9PcnRoYW5jL2ZpbGVzL29ydGhhbmMvcnVuICAgICAgICAgIHwgIDMy ICsKIHNyY3BrZ3MvT3J0aGFuYy90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICB8ICA1NyArKwog c3JjcGtncy9jaXZldHdlYi9wYXRjaGVzL2luc3RhbGwtZml4LnBhdGNoIHwgIDE2ICsKIHNyY3Br Z3MvY2l2ZXR3ZWIvdGVtcGxhdGUgICAgICAgICAgICAgICAgICB8ICAzOSArCiBzcmNwa2dzL2Rj bXRrLWRvYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwogc3JjcGtncy9kY210ay90 ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgIHwgIDQ5ICsrCiBzcmNwa2dzL2xpYmNpdmV0d2Vi ICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwogc3JjcGtncy9saWJjaXZldHdlYi1kZXZl bCAgICAgICAgICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3MvbGliZGNtdGsgICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAgMSArCiBzcmNwa2dzL2xpYmRjbXRrLWRldmVsICAgICAgICAgICAg ICAgICAgICAgfCAgIDEgKwogMTcgZmlsZXMgY2hhbmdlZCwgMTIyMSBpbnNlcnRpb25zKCspCiBj cmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9PcnRoYW5jLURpY29tV2ViL3RlbXBsYXRlCiBjcmVh dGUgbW9kZSAxMDA2NDQgc3JjcGtncy9PcnRoYW5jLVBvc3RncmVTUUwvdGVtcGxhdGUKIGNyZWF0 ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL09ydGhhbmMtUHl0aG9uL3RlbXBsYXRlCiBjcmVhdGUgbW9k ZSAxMjAwMDAgc3JjcGtncy9PcnRoYW5jLWRldmVsCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtn cy9PcnRoYW5jLXBsdWdpbnMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL09ydGhhbmMvZmls ZXMvQ29uZmlndXJhdGlvbi5qc29uCiBjcmVhdGUgbW9kZSAxMDA3NTUgc3JjcGtncy9PcnRoYW5j L2ZpbGVzL29ydGhhbmMvcnVuCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9PcnRoYW5jL3Rl bXBsYXRlCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9jaXZldHdlYi9wYXRjaGVzL2luc3Rh bGwtZml4LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9jaXZldHdlYi90ZW1wbGF0 ZQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvZGNtdGstZG9jCiBjcmVhdGUgbW9kZSAxMDA2 NDQgc3JjcGtncy9kY210ay90ZW1wbGF0ZQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbGli Y2l2ZXR3ZWIKIGNyZWF0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL2xpYmNpdmV0d2ViLWRldmVsCiBj cmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy9saWJkY210awogY3JlYXRlIG1vZGUgMTIwMDAwIHNy Y3BrZ3MvbGliZGNtdGstZGV2ZWwKCmRpZmYgLS1naXQgYS9jb21tb24vc2hsaWJzIGIvY29tbW9u L3NobGlicwppbmRleCBlYTZmZGU0ZmZlMzEuLjI4MzhhY2VlZDA2OSAxMDA2NDQKLS0tIGEvY29t bW9uL3NobGlicworKysgYi9jb21tb24vc2hsaWJzCkBAIC00MTg1LDMgKzQxODUsNDEgQEAgbGli bnZpZGlhLWNvbnRhaW5lci1nby5zby4xIGxpYm52aWRpYS1jb250YWluZXItMS4xMC4wXzEKIGxp YnF0c3BlbGwtcXQ1LnNvLjEgcXRzcGVsbC0xLjAuMV8xCiBsaWJvcGVuc210cGQuc28uMCBsaWJv cGVuc210cGQtMC43XzEKIGxpYmlpby5zby4wIGxpYmlpby0wLjIzXzEKK2xpYmNpdmV0d2ViLnNv LjEgbGliY2l2ZXR3ZWItMS4xNV8xCitsaWJjbXIuc28uMTcKK2xpYmNtci5zby4xNyBsaWJkY210 ay0zLjYuN18xCitsaWJkY21ydC5zby4xNyBsaWJkY210ay0zLjYuN18xCitsaWJkY21kYXRhLnNv LjE3IGxpYmRjbXRrLTMuNi43XzEKK2xpYmRjbXNlZy5zby4xNyBsaWJkY210ay0zLjYuN18xCits aWJkY21kc2lnLnNvLjE3IGxpYmRjbXRrLTMuNi43XzEKK2xpYmRjbXNyLnNvLjE3IGxpYmRjbXRr LTMuNi43XzEKK2xpYmRjbWVjdC5zby4xNyBsaWJkY210ay0zLjYuN18xCitsaWJkY210a2NoYXJs cy5zby4xNyBsaWJkY210ay0zLjYuN18xCitsaWJkY21mZy5zby4xNyBsaWJkY210ay0zLjYuN18x CitsaWJkY210bHMuc28uMTcgbGliZGNtdGstMy42LjdfMQorbGliZGNtaW1hZ2Uuc28uMTcgbGli ZGNtdGstMy42LjdfMQorbGliZGNtdHJhY3Quc28uMTcgbGliZGNtdGstMy42LjdfMQorbGliZGNt aW1nbGUuc28uMTcgbGliZGNtdGstMy42LjdfMQorbGliZGNtd2xtLnNvLjE3IGxpYmRjbXRrLTMu Ni43XzEKK2xpYmRjbWlvZC5zby4xNyBsaWJkY210ay0zLjYuN18xCitsaWJpMmQuc28uMTcgbGli ZGNtdGstMy42LjdfMQorbGliZGNtanBlZy5zby4xNyBsaWJkY210ay0zLjYuN18xCitsaWJpamcx Mi5zby4xNyBsaWJkY210ay0zLjYuN18xCitsaWJkY21qcGxzLnNvLjE3IGxpYmRjbXRrLTMuNi43 XzEKK2xpYmlqZzE2LnNvLjE3IGxpYmRjbXRrLTMuNi43XzEKK2xpYmRjbW5ldC5zby4xNyBsaWJk Y210ay0zLjYuN18xCitsaWJpamc4LnNvLjE3IGxpYmRjbXRrLTMuNi43XzEKK2xpYmRjbXBtYXAu c28uMTcgbGliZGNtdGstMy42LjdfMQorbGlib2Zsb2cuc28uMTcgbGliZGNtdGstMy42LjdfMQor bGliZGNtcHN0YXQuc28uMTcgbGliZGNtdGstMy42LjdfMQorbGlib2ZzdGQuc28uMTcgbGliZGNt dGstMy42LjdfMQorbGliZGNtcXJkYi5zby4xNyBsaWJkY210ay0zLjYuN18xCitsaWJEZWxheWVk RGVsZXRpb24uc28uMS4xMS4xIE9ydGhhbmMtcGx1Z2lucy0xLjExLjFfMQorbGliTW9kYWxpdHlX b3JrbGlzdHMuc28uMS4xMS4xIE9ydGhhbmMtcGx1Z2lucy0xLjExLjFfMQorbGliU2VydmVGb2xk ZXJzLnNvLjEuMTEuMSBPcnRoYW5jLXBsdWdpbnMtMS4xMS4xXzEKK2xpYkNvbm5lY3Rpdml0eUNo ZWNrcy5zby4xLjExLjEgT3J0aGFuYy1wbHVnaW5zLTEuMTEuMV8xCitsaWJIb3VzZWtlZXBlci5z by4xLjExLjEgT3J0aGFuYy1wbHVnaW5zLTEuMTEuMV8xCitsaWJPcnRoYW5jUG9zdGdyZVNRTFN0 b3JhZ2Uuc28uNC4wIE9ydGhhbmMtUG9zdGdyZVNRTC00LjBfMQorbGliT3J0aGFuY1Bvc3RncmVT UUxJbmRleC5zby40LjAgT3J0aGFuYy1Qb3N0Z3JlU1FMLTQuMF8xCitsaWJPcnRoYW5jRGljb21X ZWIuc28uMS45IE9ydGhhbmMtRGljb21XZWItMS45XzEKK2xpYk9ydGhhbmNQeXRob24uc28uNC4w IE9ydGhhbmMtUHl0aG9uLTQuMF8xCmRpZmYgLS1naXQgYS9zcmNwa2dzL09ydGhhbmMtRGljb21X ZWIvdGVtcGxhdGUgYi9zcmNwa2dzL09ydGhhbmMtRGljb21XZWIvdGVtcGxhdGUKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5lMTMwMGM0ZDQ1NTAKLS0tIC9kZXYvbnVs bAorKysgYi9zcmNwa2dzL09ydGhhbmMtRGljb21XZWIvdGVtcGxhdGUKQEAgLTAsMCArMSwyMiBA QAorIyBUZW1wbGF0ZSBmaWxlIGZvciAnT3J0aGFuYy1EaWNvbVdlYicKK3BrZ25hbWU9T3J0aGFu Yy1EaWNvbVdlYgordmVyc2lvbj0xLjkKK3JldmlzaW9uPTEKK3dya3NyYz0iJHtwa2duYW1lLy19 LSR7dmVyc2lvbn0iCitidWlsZF9zdHlsZT1jbWFrZQorY29uZmlndXJlX2FyZ3M9Ii1EQUxMT1df RE9XTkxPQURTPU9OIC1ET1JUSEFOQ19GUkFNRVdPUktfV09VUkNFPXBhdGgKKyAtRE9SVEhBTkNf RlJBTUVXT1JLX1JPT1Q9L3Vzci9zaGFyZS9vcnRoYW5jL09ydGhhbmNGcmFtZXdvcmsvU291cmNl cyIKK2hvc3RtYWtlZGVwZW5kcz0idGFyIHVuemlwIHB5dGhvbjMiCittYWtlZGVwZW5kcz0iT3J0 aGFuYy1kZXZlbD49MS4xMS4xIHB1Z2l4bWwtZGV2ZWwgZ3Rlc3QtZGV2ZWwganNvbmNwcC1kZXZl bAorIGxpYnV1aWQtZGV2ZWwgYm9vc3QtZGV2ZWwiCitzaG9ydF9kZXNjPSJQbHVnaW4gdG8gYnJp bmcgc3VwcG9ydCBvZiB0aGUgRElDT013ZWIgc3RhbmRhcmQgaW50byBPcnRoYW5jIgorbWFpbnRh aW5lcj0iQ2FybG9zIEUuIEdhbGxvIEYuIDxnY2FybG9zQGRpc3Jvb3Qub3JnPiIKK2xpY2Vuc2U9 IkFHUEwtMy4wLW9yLWxhdGVyIgoraG9tZXBhZ2U9Imh0dHBzOi8vd3d3Lm9ydGhhbmMtc2VydmVy LmNvbS9zdGF0aWMucGhwP3BhZ2U9ZGljb213ZWIiCitkaXN0ZmlsZXM9Imh0dHBzOi8vd3d3Lm9y dGhhbmMtc2VydmVyLmNvbS9kb3dubG9hZHMvZ2V0LnBocD9wYXRoPS9wbHVnaW4tZGljb20td2Vi LyR7cGtnbmFtZS8tfS0ke3ZlcnNpb259LnRhci5neiIKK2NoZWNrc3VtPWI2OGZmOWIzZGUzYzNk Y2EwZWE3OTc4MjIzYjEwYWZkODgxOWZjODA5ZWYzMmM0NzZjOWI3MWU4ODMxY2IxN2YKK2lnbm9y ZV9lbGZfZGlycz0iL3Vzci9zaGFyZS9vcnRoYW5jIgorCitwb3N0X2luc3RhbGwoKSB7CisJdmxp Y2Vuc2UgQ09QWUlORworfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9PcnRoYW5jLVBvc3RncmVTUUwv dGVtcGxhdGUgYi9zcmNwa2dzL09ydGhhbmMtUG9zdGdyZVNRTC90ZW1wbGF0ZQpuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjYzMGEzMzNhNjJmZQotLS0gL2Rldi9udWxs CisrKyBiL3NyY3BrZ3MvT3J0aGFuYy1Qb3N0Z3JlU1FML3RlbXBsYXRlCkBAIC0wLDAgKzEsMjMg QEAKKyMgVGVtcGxhdGUgZmlsZSBmb3IgJ09ydGhhbmMtUG9zdGdyZVNRTCcKK3BrZ25hbWU9T3J0 aGFuYy1Qb3N0Z3JlU1FMCit2ZXJzaW9uPTQuMAorcmV2aXNpb249MQord3Jrc3JjPSIke3BrZ25h bWUvLX0tJHt2ZXJzaW9ufSIKK2J1aWxkX3dya3NyYz0iUG9zdGdyZVNRTCIKK2J1aWxkX3N0eWxl PWNtYWtlCitjb25maWd1cmVfYXJncz0iLURBTExPV19ET1dOTE9BRFM9T04gLURPUlRIQU5DX0ZS QU1FV09SS19XT1VSQ0U9cGF0aAorIC1ET1JUSEFOQ19GUkFNRVdPUktfUk9PVD0vdXNyL3NoYXJl L29ydGhhbmMvT3J0aGFuY0ZyYW1ld29yay9Tb3VyY2VzIgoraG9zdG1ha2VkZXBlbmRzPSJ0YXIg dW56aXAgcHl0aG9uMyIKK21ha2VkZXBlbmRzPSJPcnRoYW5jLWRldmVsPj0xLjExLjEgb3BlbnNz bC1kZXZlbCBndGVzdC1kZXZlbCB6bGliLWRldmVsCisganNvbmNwcC1kZXZlbCBsaWJ1dWlkLWRl dmVsIGJvb3N0LWRldmVsIHBvc3RncmVzcWwtbGlicy1kZXZlbCIKK3Nob3J0X2Rlc2M9IlBvc3Rn cmVTUUwgZGF0YWJhc2UgcGx1Z2luIGZvciBPcnRoYW5jIgorbWFpbnRhaW5lcj0iQ2FybG9zIEUu IEdhbGxvIEYuIDxnY2FybG9zQGRpc3Jvb3Qub3JnPiIKK2xpY2Vuc2U9IkFHUEwtMy4wLW9yLWxh dGVyIgoraG9tZXBhZ2U9Imh0dHBzOi8vd3d3Lm9ydGhhbmMtc2VydmVyLmNvbS9zdGF0aWMucGhw P3BhZ2U9ZGljb213ZWIiCitkaXN0ZmlsZXM9Imh0dHBzOi8vd3d3Lm9ydGhhbmMtc2VydmVyLmNv bS9kb3dubG9hZHMvZ2V0LnBocD9wYXRoPS9wbHVnaW4tcG9zdGdyZXNxbC8ke3BrZ25hbWUvLX0t JHt2ZXJzaW9ufS50YXIuZ3oiCitjaGVja3N1bT1hNTA0OWVkOGE1ZDZiYjhiNjUyOTYzNmNmMWQ5 ZjYzMWQxYjYxZjZlMGJiZmRjNmFjY2FlNDVhZGVkNDJiYWM1CitpZ25vcmVfZWxmX2RpcnM9Ii91 c3Ivc2hhcmUvb3J0aGFuYyIKKworcG9zdF9pbnN0YWxsKCkgeworCXZsaWNlbnNlIC4uL0NPUFlJ TkcKK30KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvT3J0aGFuYy1QeXRob24vdGVtcGxhdGUgYi9zcmNw a2dzL09ydGhhbmMtUHl0aG9uL3RlbXBsYXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAwMDAwMC4uMzQ3YzYyMmM5ZWZmCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9PcnRo YW5jLVB5dGhvbi90ZW1wbGF0ZQpAQCAtMCwwICsxLDIzIEBACisjIFRlbXBsYXRlIGZpbGUgZm9y ICdPcnRoYW5jLVB5dGhvbicKK3BrZ25hbWU9T3J0aGFuYy1QeXRob24KK3ZlcnNpb249NC4wCity ZXZpc2lvbj0xCit3cmtzcmM9IiR7cGtnbmFtZS8tfS0ke3ZlcnNpb259IgorYnVpbGRfc3R5bGU9 Y21ha2UKK2NvbmZpZ3VyZV9hcmdzPSItREFMTE9XX0RPV05MT0FEUz1PTiAtRE9SVEhBTkNfRlJB TUVXT1JLX1dPVVJDRT1wYXRoCisgLURPUlRIQU5DX0ZSQU1FV09SS19ST09UPS91c3Ivc2hhcmUv b3J0aGFuYy9PcnRoYW5jRnJhbWV3b3JrL1NvdXJjZXMKKyAtRFBZVEhPTl9WRVJTSU9OPTMuMTAi Citob3N0bWFrZWRlcGVuZHM9InRhciB1bnppcCBweXRob24zPj0zLjEwPDMuMTEgcGtnLWNvbmZp ZyIKK21ha2VkZXBlbmRzPSJPcnRoYW5jLWRldmVsPj0xLjExLjEganNvbmNwcC1kZXZlbCBsaWJ1 dWlkLWRldmVsIGJvb3N0LWRldmVsCisgcHl0aG9uMy1kZXZlbD49My4xMDwzLjExIgorc2hvcnRf ZGVzYz0iUHl0aG9uIHBsdWdpbiBmb3IgT3J0aGFuYyIKK21haW50YWluZXI9IkNhcmxvcyBFLiBH YWxsbyBGLiA8Z2Nhcmxvc0BkaXNyb290Lm9yZz4iCitsaWNlbnNlPSJBR1BMLTMuMC1vci1sYXRl ciIKK2hvbWVwYWdlPSJodHRwczovL2Jvb2sub3J0aGFuYy1zZXJ2ZXIuY29tL3BsdWdpbnMvcHl0 aG9uLmh0bWwiCitkaXN0ZmlsZXM9Imh0dHBzOi8vd3d3Lm9ydGhhbmMtc2VydmVyLmNvbS9kb3du bG9hZHMvZ2V0LnBocD9wYXRoPS9wbHVnaW4tcHl0aG9uLyR7cGtnbmFtZS8tfS0ke3ZlcnNpb259 LnRhci5neiIKK2NoZWNrc3VtPTNlNTQ3M2FiYjgxNDRjOWM4OTEwMWEwOWU3MzM3MzJjYWMxOTQy M2JmODQ3Y2ZhZDUxZmQyYmZmYWIwZTE2NDcKK2lnbm9yZV9lbGZfZGlycz0iL3Vzci9zaGFyZS9v cnRoYW5jIgorCitwb3N0X2luc3RhbGwoKSB7CisJdmxpY2Vuc2UgQ09QWUlORworfQpkaWZmIC0t Z2l0IGEvc3JjcGtncy9PcnRoYW5jLWRldmVsIGIvc3JjcGtncy9PcnRoYW5jLWRldmVsCm5ldyBm aWxlIG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwMC4uNmQwNDA1OTM3NDMwCi0tLSAvZGV2 L251bGwKKysrIGIvc3JjcGtncy9PcnRoYW5jLWRldmVsCkBAIC0wLDAgKzEgQEAKK09ydGhhbmMK XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL09ydGhhbmMt cGx1Z2lucyBiL3NyY3BrZ3MvT3J0aGFuYy1wbHVnaW5zCm5ldyBmaWxlIG1vZGUgMTIwMDAwCmlu ZGV4IDAwMDAwMDAwMDAwMC4uNmQwNDA1OTM3NDMwCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtn cy9PcnRoYW5jLXBsdWdpbnMKQEAgLTAsMCArMSBAQAorT3J0aGFuYwpcIE5vIG5ld2xpbmUgYXQg ZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvT3J0aGFuYy9maWxlcy9Db25maWd1cmF0 aW9uLmpzb24gYi9zcmNwa2dzL09ydGhhbmMvZmlsZXMvQ29uZmlndXJhdGlvbi5qc29uCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uZTBlNTk0YmI0NjQ3Ci0tLSAvZGV2 L251bGwKKysrIGIvc3JjcGtncy9PcnRoYW5jL2ZpbGVzL0NvbmZpZ3VyYXRpb24uanNvbgpAQCAt MCwwICsxLDkxNSBAQAoreworICAvKioKKyAgICogR2VuZXJhbCBjb25maWd1cmF0aW9uIG9mIE9y dGhhbmMKKyAgICoqLworCisgIC8vIFRoZSBsb2dpY2FsIG5hbWUgb2YgdGhpcyBpbnN0YW5jZSBv ZiBPcnRoYW5jLiBUaGlzIG9uZSBpcworICAvLyBkaXNwbGF5ZWQgaW4gT3J0aGFuYyBFeHBsb3Jl ciBhbmQgYXQgdGhlIFVSSSAiL3N5c3RlbSIuCisgICJOYW1lIiA6ICJNeU9ydGhhbmMiLAorCisg IC8vIFBhdGggdG8gdGhlIGRpcmVjdG9yeSB0aGF0IGhvbGRzIHRoZSBoZWF2eXdlaWdodCBmaWxl cyAoaS5lLiB0aGUKKyAgLy8gcmF3IERJQ09NIGluc3RhbmNlcykuIEJhY2tzbGFzaGVzIG11c3Qg YmUgZWl0aGVyIGVzY2FwZWQgYnkKKyAgLy8gZG91YmxpbmcgdGhlbSwgb3IgcmVwbGFjZWQgYnkg Zm9yd2FyZCBzbGFzaGVzICIvIi4KKyAgIlN0b3JhZ2VEaXJlY3RvcnkiIDogIi92YXIvbGliL09y dGhhbmNTdG9yYWdlIiwKKworICAvLyBQYXRoIHRvIHRoZSBkaXJlY3RvcnkgdGhhdCBob2xkcyB0 aGUgU1FMaXRlIGluZGV4IChpZiB1bnNldCwgdGhlCisgIC8vIHZhbHVlIG9mIFN0b3JhZ2VEaXJl Y3RvcnkgaXMgdXNlZCkuIFRoaXMgaW5kZXggY291bGQgYmUgc3RvcmVkIG9uCisgIC8vIGEgUkFN LWRyaXZlIG9yIGEgU1NEIGRldmljZSBmb3IgcGVyZm9ybWFuY2UgcmVhc29ucy4KKyAgIkluZGV4 RGlyZWN0b3J5IiA6ICIvdmFyL2xpYi9PcnRoYW5jU3RvcmFnZSIsCisKKyAgLy8gUGF0aCB0byB0 aGUgZGlyZWN0b3J5IHdoZXJlIE9ydGhhbmMgc3RvcmVzIGl0cyBsYXJnZSB0ZW1wb3JhcnkKKyAg Ly8gZmlsZXMuIFRoZSBjb250ZW50IG9mIHRoaXMgZm9sZGVyIGNhbiBiZSBzYWZlbHkgZGVsZXRl ZCBvbmNlCisgIC8vIE9ydGhhbmMgaXMgc3RvcHBlZC4gVGhlIGZvbGRlciBtdXN0IGV4aXN0LiBU aGUgY29ycmVzcG9uZGluZworICAvLyBmaWxlc3lzdGVtIG11c3QgYmUgcHJvcGVybHkgc2l6ZWQs IGdpdmVuIHRoYXQgZm9yIGluc3RhbmNlIGEgWklQCisgIC8vIGFyY2hpdmUgb2YgRElDT00gaW1h Z2VzIGNyZWF0ZWQgYnkgYSBqb2IgY2FuIHdlaWdodCBzZXZlcmFsIEdCcywKKyAgLy8gYW5kIHRo YXQgdGhlcmUgbWlnaHQgYmUgdXAgdG8gIm1pbihKb2JzSGlzdG9yeVNpemUsCisgIC8vIE1lZGlh QXJjaGl2ZVNpemUpIiBhcmNoaXZlcyB0byBiZSBzdG9yZWQgc2ltdWx0YW5lb3VzbHkuIElmIG5v dAorICAvLyBzZXQsIE9ydGhhbmMgd2lsbCB1c2UgdGhlIGRlZmF1bHQgdGVtcG9yYXJ5IGZvbGRl ciBvZiB0aGUKKyAgLy8gb3BlcmF0aW5nIHN5c3RlbSAoc3VjaCBhcyAiL3RtcC8iIG9uIFVOSVgt bGlrZSBzeXN0ZW1zLCBvcgorICAvLyAiQzovVGVtcCIgb24gTWljcm9zb2Z0IFdpbmRvd3MpLgor ICAvLyAiVGVtcG9yYXJ5RGlyZWN0b3J5IiA6ICIvdG1wL09ydGhhbmMvIiwKKworICAvLyBFbmFi bGUgdGhlIHRyYW5zcGFyZW50IGNvbXByZXNzaW9uIG9mIHRoZSBESUNPTSBpbnN0YW5jZXMKKyAg IlN0b3JhZ2VDb21wcmVzc2lvbiIgOiBmYWxzZSwKKworICAvLyBNYXhpbXVtIHNpemUgb2YgdGhl IHN0b3JhZ2UgaW4gTUIgKGEgdmFsdWUgb2YgIjAiIGluZGljYXRlcyBubworICAvLyBsaW1pdCBv biB0aGUgc3RvcmFnZSBzaXplKQorICAiTWF4aW11bVN0b3JhZ2VTaXplIiA6IDAsCisKKyAgLy8g TWF4aW11bSBudW1iZXIgb2YgcGF0aWVudHMgdGhhdCBjYW4gYmUgc3RvcmVkIGF0IGEgZ2l2ZW4g dGltZQorICAvLyBpbiB0aGUgc3RvcmFnZSAoYSB2YWx1ZSBvZiAiMCIgaW5kaWNhdGVzIG5vIGxp bWl0IG9uIHRoZSBudW1iZXIKKyAgLy8gb2YgcGF0aWVudHMpCisgICJNYXhpbXVtUGF0aWVudENv dW50IiA6IDAsCisKKyAgLy8gTWF4aW11bSBzaXplIG9mIHRoZSBzdG9yYWdlIGNhY2hlIGluIE1C LiAgVGhlIHN0b3JhZ2UgY2FjaGUKKyAgLy8gaXMgc3RvcmVkIGluIFJBTSBhbmQgY29udGFpbnMg YSBjb3B5IG9mIHJlY2VudGx5IGFjY2Vzc2VkCisgIC8vIGZpbGVzICh3cml0dGVuIG9yIHJlYWQp LiAgQSB2YWx1ZSBvZiAiMCIgaW5kaWNhdGVzIHRoZSBjYWNoZQorICAvLyBpcyBkaXNhYmxlZC4g IChuZXcgaW4gT3J0aGFuYyAxLjEwLjApCisgICJNYXhpbXVtU3RvcmFnZUNhY2hlU2l6ZSIgOiAx MjgsCisKKyAgLy8gTGlzdCBvZiBwYXRocyB0byB0aGUgY3VzdG9tIEx1YSBzY3JpcHRzIHRoYXQg YXJlIHRvIGJlIGxvYWRlZAorICAvLyBpbnRvIHRoaXMgaW5zdGFuY2Ugb2YgT3J0aGFuYworICAi THVhU2NyaXB0cyIgOiBbCisgIF0sCisKKyAgLy8gVGhlIHBlcmlvZCAoaW4gc2Vjb25kcykgYmV0 d2VlbiAyIGNhbGxzIG9mIHRoZSAiT25IZWFydEJlYXQiCisgIC8vIGx1YSBjYWxsYmFjay4gIE8g bWVhbnMgdGhlIGhlYXJ0IGJlYXQgaXMgZGlzYWJsZWQuCisgIC8vIFRPRE86IHRleHQgYmVsb3cg Zm9yIE9ydGhhbmMgYm9vazoKKyAgLy8gTm90ZTogdGhhdCB0aGUgcGVyaW9kIGlzIG5vdCBhY3R1 YWxseSB0aGUgZGVsYXkgYmV0d2VlbgorICAvLyB0aGUgZW5kIG9mIGFuIGV4ZWN1dGlvbiBhbmQg dGhlIHRyaWdnZXJpbmcgb2YgdGhlIG5leHQgb25lLgorICAvLyBTaW5jZSB0aGVyZSBpcyBvbmx5 IG9uZSBsdWEgY29udGV4dCwgaWYgb3RoZXIgbHVhIGNvZGUgaXMgYmVpbmcKKyAgLy8gZXhlY3V0 ZWQsIHRoZSBoZWFydCBiZWF0IG1pZ2h0IGJlIGRlbGF5ZWQgZXZlbiBtb3JlLgorICAiTHVhSGVh cnRCZWF0UGVyaW9kIiA6IDAsCisKKyAgLy8gTGlzdCBvZiBwYXRocyB0byB0aGUgcGx1Z2lucyB0 aGF0IGFyZSB0byBiZSBsb2FkZWQgaW50byB0aGlzCisgIC8vIGluc3RhbmNlIG9mIE9ydGhhbmMg KGUuZy4gIi4vbGliUGx1Z2luVGVzdC5zbyIgZm9yIExpbnV4LCBvcgorICAvLyAiLi9QbHVnaW5U ZXN0LmRsbCIgZm9yIFdpbmRvd3MpLiBUaGVzZSBwYXRocyBjYW4gcmVmZXIgdG8KKyAgLy8gZm9s ZGVycywgaW4gd2hpY2ggY2FzZSB0aGV5IHdpbGwgYmUgc2Nhbm5lZCBub24tcmVjdXJzaXZlbHkg dG8KKyAgLy8gZmluZCBzaGFyZWQgbGlicmFyaWVzLiBCYWNrc2xhc2hlcyBtdXN0IGJlIGVpdGhl ciBlc2NhcGVkIGJ5CisgIC8vIGRvdWJsaW5nIHRoZW0sIG9yIHJlcGxhY2VkIGJ5IGZvcndhcmQg c2xhc2hlcyAiLyIuCisgICJQbHVnaW5zIiA6IFsKKyAgXSwKKworICAvLyBNYXhpbXVtIG51bWJl ciBvZiBwcm9jZXNzaW5nIGpvYnMgdGhhdCBhcmUgc2ltdWx0YW5lb3VzbHkgcnVubmluZworICAv LyBhdCBhbnkgZ2l2ZW4gdGltZS4gQSB2YWx1ZSBvZiAiMCIgaW5kaWNhdGVzIHRvIHVzZSBhbGwg dGhlCisgIC8vIGF2YWlsYWJsZSBDUFUgbG9naWNhbCBjb3Jlcy4gVG8gZW11bGF0ZSBPcnRoYW5j IDw9IDEuMy4yLCBzZXQKKyAgLy8gdGhpcyB2YWx1ZSB0byAiMSIuCisgICJDb25jdXJyZW50Sm9i cyIgOiAyLAorCisKKyAgLyoqCisgICAqIENvbmZpZ3VyYXRpb24gb2YgdGhlIEhUVFAgc2VydmVy CisgICAqKi8KKworICAvLyBFbmFibGUgdGhlIEhUVFAgc2VydmVyLiBJZiB0aGlzIHBhcmFtZXRl ciBpcyBzZXQgdG8gImZhbHNlIiwKKyAgLy8gT3J0aGFuYyBhY3RzIGFzIGEgcHVyZSBESUNPTSBz ZXJ2ZXIuIFRoZSBSRVNUIEFQSSBhbmQgT3J0aGFuYworICAvLyBFeHBsb3JlciB3aWxsIG5vdCBi ZSBhdmFpbGFibGUuCisgICJIdHRwU2VydmVyRW5hYmxlZCIgOiB0cnVlLAorCisgIC8vIEVuYWJs ZS9kaXNhYmxlIHRoZSBPcnRoYW5jIEV4cGxvcmVyIFdlYiB1c2VyIGludGVyZmFjZS4gVGhpcwor ICAvLyBvcHRpb24gaXMgb25seSBtZWFuaW5nZnVsIGlmIHRoZSAiSHR0cFNlcnZlckVuYWJsZWQi IG9wdGlvbiBpcworICAvLyBzZXQgdG8gInRydWUiIChuZXcgaW4gT3J0aGFuYyAxLjguMikuCisg ICJPcnRoYW5jRXhwbG9yZXJFbmFibGVkIiA6IHRydWUsCisKKyAgLy8gSFRUUCBwb3J0IGZvciB0 aGUgUkVTVCBzZXJ2aWNlcyBhbmQgZm9yIHRoZSBHVUkKKyAgIkh0dHBQb3J0IiA6IDgwNDIsCisK KyAgLy8gV2hlbiB0aGUgZm9sbG93aW5nIG9wdGlvbiBpcyAidHJ1ZSIsIGlmIGFuIGVycm9yIGlz IGVuY291bnRlcmVkCisgIC8vIHdoaWxlIGNhbGxpbmcgdGhlIFJFU1QgQVBJLCBhIEpTT04gbWVz c2FnZSBkZXNjcmliaW5nIHRoZSBlcnJvcgorICAvLyBpcyBwdXQgaW4gdGhlIEhUVFAgYW5zd2Vy LiBUaGlzIGZlYXR1cmUgY2FuIGJlIGRpc2FibGVkIGlmIHRoZQorICAvLyBIVFRQIGNsaWVudCBk b2VzIG5vdCBwcm9wZXJseSBoYW5kbGVzIHN1Y2ggYW5zd2Vycy4KKyAgIkh0dHBEZXNjcmliZUVy cm9ycyIgOiB0cnVlLAorCisgIC8vIEVuYWJsZSBIVFRQIGNvbXByZXNzaW9uIHRvIGltcHJvdmUg bmV0d29yayBiYW5kd2lkdGggdXRpbGl6YXRpb24sCisgIC8vIGF0IHRoZSBleHBlbnNlIG9mIG1v cmUgY29tcHV0YXRpb25zIG9uIHRoZSBzZXJ2ZXIuIE9ydGhhbmMKKyAgLy8gc3VwcG9ydHMgdGhl ICJnemlwIiBhbmQgImRlZmxhdGUiIEhUVFAgZW5jb2RpbmdzLgorICAiSHR0cENvbXByZXNzaW9u RW5hYmxlZCIgOiB0cnVlLAorCisgIC8vIEVuYWJsZSB0aGUgcHVibGljYXRpb24gb2YgdGhlIGNv bnRlbnQgb2YgdGhlIE9ydGhhbmMgc2VydmVyIGFzIGEKKyAgLy8gV2ViREFWIHNoYXJlIChuZXcg aW4gT3J0aGFuYyAxLjguMCkuIE9uIHRoZSBsb2NhbGhvc3QsIHRoZSBXZWJEQVYKKyAgLy8gc2hh cmUgaXMgbWFwcGVkIGFzICJodHRwOi8vbG9jYWxob3N0OjgwNDIvd2ViZGF2LyIuCisgICJXZWJE YXZFbmFibGVkIiA6IHRydWUsCisKKyAgLy8gV2hldGhlciB0byBhbGxvdyBkZWxldGlvbnMgdGhy b3VnaCB0aGUgV2ViREFWIHNoYXJlLiBUaGlzIGlzCisgIC8vIGRpc2FibGVkIGJ5IGRlZmF1bHQg dG8gYXZvaWQgYWNjaWRlbnRhbCBsb3NzIG9mIERJQ09NIGluc3RhbmNlcy4KKyAgIldlYkRhdkRl bGV0ZUFsbG93ZWQiIDogZmFsc2UsCisKKyAgLy8gV2hldGhlciB0byBhbGxvdyB1cGxvYWRzIHRo cm91Z2ggdGhlIFdlYkRBViBzaGFyZS4KKyAgIldlYkRhdlVwbG9hZEFsbG93ZWQiIDogdHJ1ZSwK KworCisKKyAgLyoqCisgICAqIENvbmZpZ3VyYXRpb24gb2YgdGhlIERJQ09NIHNlcnZlcgorICAg KiovCisKKyAgLy8gRW5hYmxlIHRoZSBESUNPTSBzZXJ2ZXIuIElmIHRoaXMgcGFyYW1ldGVyIGlz IHNldCB0byAiZmFsc2UiLAorICAvLyBPcnRoYW5jIGFjdHMgYXMgYSBwdXJlIFJFU1Qgc2VydmVy LiBJdCB3aWxsIG5vdCBiZSBwb3NzaWJsZSB0bworICAvLyByZWNlaXZlIGZpbGVzIG9yIHRvIGRv IHF1ZXJ5L3JldHJpZXZlIHRocm91Z2ggdGhlIERJQ09NIHByb3RvY29sLgorICAiRGljb21TZXJ2 ZXJFbmFibGVkIiA6IHRydWUsCisKKyAgLy8gVGhlIERJQ09NIEFwcGxpY2F0aW9uIEVudGl0eSBU aXRsZSAoY2Fubm90IGJlIGxvbmdlciB0aGFuIDE2CisgIC8vIGNoYXJhY3RlcnMpCisgICJEaWNv bUFldCIgOiAiT1JUSEFOQyIsCisKKyAgLy8gQ2hlY2sgd2hldGhlciB0aGUgY2FsbGVkIEFFVCBj b3JyZXNwb25kcyB0byB0aGUgQUVUIG9mIE9ydGhhbmMKKyAgLy8gZHVyaW5nIGFuIGluY29taW5n IERJQ09NIFNDVSByZXF1ZXN0CisgICJEaWNvbUNoZWNrQ2FsbGVkQWV0IiA6IGZhbHNlLAorCisg IC8vIFRoZSBESUNPTSBwb3J0CisgICJEaWNvbVBvcnQiIDogNDI0MiwKKworICAvLyBUaGUgZGVm YXVsdCBlbmNvZGluZyB0aGF0IGlzIGFzc3VtZWQgZm9yIERJQ09NIGZpbGVzIHdpdGhvdXQKKyAg Ly8gIlNwZWNpZmljQ2hhcmFjdGVyU2V0IiBESUNPTSB0YWcsIGFuZCB0aGF0IGlzIHVzZWQgd2hl biBhbnN3ZXJpbmcKKyAgLy8gQy1GSU5EIHJlcXVlc3RzIChpbmNsdWRpbmcgd29ya2xpc3RzKS4g VGhlIGFsbG93ZWQgdmFsdWVzIGFyZQorICAvLyAiQXNjaWkiLCAiVXRmOCIsICJMYXRpbjEiLCAi TGF0aW4yIiwgIkxhdGluMyIsICJMYXRpbjQiLAorICAvLyAiTGF0aW41IiwgIkN5cmlsbGljIiwg IldpbmRvd3MxMjUxIiwgIkFyYWJpYyIsICJHcmVlayIsICJIZWJyZXciLAorICAvLyAiVGhhaSIs ICJKYXBhbmVzZSIsICJDaGluZXNlIiwgIkphcGFuZXNlS2FuamkiLCAiS29yZWFuIiwgYW5kCisg IC8vICJTaW1wbGlmaWVkQ2hpbmVzZSIuCisgICJEZWZhdWx0RW5jb2RpbmciIDogIkxhdGluMSIs CisKKyAgLy8gVGhlIHRyYW5zZmVyIHN5bnRheGVzIHRoYXQgYXJlIGFjY2VwdGVkIGJ5IE9ydGhh bmMgQy1TVE9SRSBTQ1AuCisgIC8vIFRoaXMgaXMgYW4gYXJyYXkgbGlzdGluZyB0aGUgYWNjZXB0 ZWQgdHJhbnNmZXIgc3ludGF4IFVJRHMuIEVhY2gKKyAgLy8gZW50cnkgY2FuIGNvbnRhaW4gd2ls ZGNhcmRzICgiPyIgb3IgIioiKS4gQnkgZGVmYXVsdCwgYWxsIHRoZQorICAvLyBrbm93biB0cmFu c2ZlciBzeW50YXhlcyBhcmUgYWNjZXB0ZWQuIChuZXcgaW4gT3J0aGFuYyAxLjkuMCkKKyAgIkFj Y2VwdGVkVHJhbnNmZXJTeW50YXhlcyIgOiBbICIxLjIuODQwLjEwMDA4LjEuKiIgXSwKKworICAv LyBVc2VyLWZyaWVuZGx5IGdyb3VwcyBvZiB0cmFuc2ZlciBzeW50YXhlcyB0aGF0IGNhbiBiZSBl bmFibGVkIG9yCisgIC8vIGRpc2FibGVkIGF0IG9uY2UuIFRoZXNlIG9wdGlvbnMgYXJlIGFwcGxp ZWQgYWZ0ZXIgdGhlIG1haW4KKyAgLy8gIkFjY2VwdGVkVHJhbnNmZXJTeW50YXhlcyIgb3B0aW9u IGhhcyBiZWVuIGFwcGxpZWQgKGlmIHByZXNlbnQpLgorICAvKioKKyAgICAgIkRlZmxhdGVkVHJh bnNmZXJTeW50YXhBY2NlcHRlZCIgICAgIDogdHJ1ZSwKKyAgICAgIkpwZWdUcmFuc2ZlclN5bnRh eEFjY2VwdGVkIiAgICAgICAgIDogdHJ1ZSwKKyAgICAgIkpwZWcyMDAwVHJhbnNmZXJTeW50YXhB Y2NlcHRlZCIgICAgIDogdHJ1ZSwKKyAgICAgIkpwZWdMb3NzbGVzc1RyYW5zZmVyU3ludGF4QWNj ZXB0ZWQiIDogdHJ1ZSwKKyAgICAgIkpwaXBUcmFuc2ZlclN5bnRheEFjY2VwdGVkIiAgICAgICAg IDogdHJ1ZSwKKyAgICAgIk1wZWcyVHJhbnNmZXJTeW50YXhBY2NlcHRlZCIgICAgICAgIDogdHJ1 ZSwKKyAgICAgIlJsZVRyYW5zZmVyU3ludGF4QWNjZXB0ZWQiICAgICAgICAgIDogdHJ1ZSwKKyAg ICAgIk1wZWc0VHJhbnNmZXJTeW50YXhBY2NlcHRlZCIgICAgICAgIDogdHJ1ZSwgIC8vIE5ldyBp biBPcnRoYW5jIDEuNi4wCisgICAgICJIMjY1VHJhbnNmZXJTeW50YXhBY2NlcHRlZCIgICAgICAg ICA6IHRydWUsICAvLyBOZXcgaW4gT3J0aGFuYyAxLjkuMAorICAqKi8KKyAgCisgIC8vIFdoZXRo ZXIgT3J0aGFuYyBhY2NlcHRzIHRvIGFjdCBhcyBDLVNUT1JFIFNDUCBmb3IgdW5rbm93biBzdG9y YWdlCisgIC8vIFNPUCBjbGFzc2VzIChha2EuICJwcm9taXNjdW91cyBtb2RlIikKKyAgIlVua25v d25Tb3BDbGFzc0FjY2VwdGVkIiA6IGZhbHNlLAorCisgIC8vIFNldCB0aGUgdGltZW91dCAoaW4g c2Vjb25kcykgYWZ0ZXIgd2hpY2ggdGhlIERJQ09NIGFzc29jaWF0aW9ucworICAvLyBhcmUgY2xv c2VkIGJ5IHRoZSBPcnRoYW5jIFNDUCAoc2VydmVyKSBpZiBubyBmdXJ0aGVyIERJTVNFCisgIC8v IGNvbW1hbmQgaXMgcmVjZWl2ZWQgZnJvbSB0aGUgU0NVIChjbGllbnQpLgorICAiRGljb21TY3BU aW1lb3V0IiA6IDMwLAorCisKKworICAvKioKKyAgICogU2VjdXJpdHktcmVsYXRlZCBvcHRpb25z IGZvciB0aGUgSFRUUCBzZXJ2ZXIKKyAgICoqLworCisgIC8vIFdoZXRoZXIgcmVtb3RlIGhvc3Rz IGNhbiBjb25uZWN0IHRvIHRoZSBIVFRQIHNlcnZlcgorICAiUmVtb3RlQWNjZXNzQWxsb3dlZCIg OiBmYWxzZSwKKworICAvLyBXaGV0aGVyIG9yIG5vdCBTU0wgaXMgZW5hYmxlZAorICAiU3NsRW5h YmxlZCIgOiBmYWxzZSwKKworICAvLyBQYXRoIHRvIHRoZSBTU0wgY2VydGlmaWNhdGUgdXNlZCBi eSB0aGUgSFRUUCBzZXJ2ZXIuIFRoZSBmaWxlCisgIC8vIG11c3QgYmUgc3RvcmVkIGluIHRoZSBQ RU0gZm9ybWF0LCBhbmQgbXVzdCBjb250YWluIGJvdGggdGhlCisgIC8vIGNlcnRpZmljYXRlIGFu ZCB0aGUgcHJpdmF0ZSBrZXkuIFRoaXMgb3B0aW9uIGlzIG9ubHkgbWVhbmluZ2Z1bAorICAvLyBp ZiAiU3NsRW5hYmxlZCIgaXMgdHJ1ZS4KKyAgIlNzbENlcnRpZmljYXRlIiA6ICJjZXJ0aWZpY2F0 ZS5wZW0iLAorCisgIC8vIFNldHMgdGhlIG1pbmltdW0gYWNjZXB0ZWQgU1NMIHByb3RvY29sIHZl cnNpb24KKyAgLy8gKGNmLiAic3NsX3Byb3RvY29sX3ZlcnNpb24iIG9wdGlvbiBvZiBjaXZldHdl YikuIEJ5IGRlZmF1bHQsCisgIC8vIHJlcXVpcmUgU1NMIDEuMi4gVGhpcyBvcHRpb24gaXMgb25s eSBtZWFuaW5nZnVsIGlmICJTc2xFbmFibGVkIgorICAvLyBpcyB0cnVlLiAobmV3IGluIE9ydGhh bmMgMS44LjIpCisgIC8vCisgIC8vIFZhbHVlID0+IFByb3RvY29scworICAvLyAgIDAgICAgICBT U0wyK1NTTDMrVExTMS4wK1RMUzEuMStUTFMxLjIKKyAgLy8gICAxICAgICAgU1NMMytUTFMxLjAr VExTMS4xK1RMUzEuMgorICAvLyAgIDIgICAgICBUTFMxLjArVExTMS4xK1RMUzEuMgorICAvLyAg IDMgICAgICBUTFMxLjErVExTMS4yCisgIC8vICAgNCAgICAgIFRMUzEuMgorICAiU3NsTWluaW11 bVByb3RvY29sVmVyc2lvbiIgOiA0LAorCisgIC8vIFNldCB0aGUgYWNjZXB0ZWQgY2lwaGVycyBm b3IgU1NMIGNvbm5lY3Rpb25zLiBUaGUgY2lwaGVycyBtdXN0IGJlCisgIC8vIHByb3ZpZGVkIGFz IGEgbGlzdCBvZiBzdHJpbmdzLiBJZiBub3Qgc2V0LCB0aGlzIHdpbGwgZGVmYXVsdCB0bworICAv LyBGSVBTIDE0MC0yIGNpcGhlcnMuIFRoaXMgb3B0aW9uIGlzIG9ubHkgbWVhbmluZ2Z1bCBpZgor ICAvLyAiU3NsRW5hYmxlZCIgaXMgdHJ1ZS4gKG5ldyBpbiBPcnRoYW5jIDEuOC4yKQorICAvKioK KyAgICAiU3NsQ2lwaGVyc0FjY2VwdGVkIiA6IFsgIkFFUzEyOC1HQ00tU0hBMjU2IiBdLAorICAq Ki8KKworICAvLyBXaGV0aGVyIG9yIG5vdCBwZWVyIGNsaWVudCBjZXJ0aWZpY2F0ZXMgc2hhbGwg YmUgY2hlY2tlZC4gVGhpcworICAvLyBvcHRpb24gaXMgb25seSBtZWFuaW5nZnVsIGlmICJTc2xF bmFibGVkIiBpcyB0cnVlLgorICAiU3NsVmVyaWZ5UGVlcnMiIDogZmFsc2UsCisKKyAgLy8gUGF0 aCB0byBhIGZpbGUgY29udGFpbmluZyB0aGUgY29uY2F0ZW5hdGlvbiBvZiB0aGUgY2xpZW50IFNT TAorICAvLyBjZXJ0aWZpY2F0ZShzKSB0aGF0IGFyZSB0cnVzdGVkIHRvIHZlcmlmeSB0aGUgaWRl bnRpZnkgb2YgcmVtb3RlCisgIC8vIEhUVFAgY2xpZW50cy4gVGhlIGluZGl2aWR1YWwgY2VydGlm aWNhdGUocykgbXVzdCBiZSBzdG9yZWQgaW4gdGhlCisgIC8vIFBFTSBmb3JtYXQuIFRoaXMgb3B0 aW9uIGlzIG9ubHkgbWVhbmluZ2Z1bCBpZiAiU3NsVmVyaWZ5UGVlcnMiCisgIC8vIGlzIHRydWUu CisgICJTc2xUcnVzdGVkQ2xpZW50Q2VydGlmaWNhdGVzIiA6ICJ0cnVzdGVkQ2xpZW50Q2VydGlm aWNhdGVzLnBlbSIsCisgIAorICAvLyBXaGV0aGVyIG9yIG5vdCB0aGUgcGFzc3dvcmQgcHJvdGVj dGlvbiBpcyBlbmFibGVkICh1c2luZyBIVFRQCisgIC8vIGJhc2ljIGFjY2VzcyBhdXRoZW50aWNh dGlvbikuIFN0YXJ0aW5nIHdpdGggT3J0aGFuYyAxLjUuOCwgaWYKKyAgLy8gIkF1dGhlbnRpY2F0 aW9uRW5hYmxlZCIgaXMgbm90IGV4cGxpY2l0bHkgc2V0LCBhdXRoZW50aWNhdGlvbiBpcworICAv LyBlbmFibGVkIGlmZi4gcmVtb3RlIGFjY2VzcyBpcyBhbGxvd2VkIChpLmUuIHRoZSBkZWZhdWx0 IHZhbHVlIG9mCisgIC8vICJBdXRoZW50aWNhdGlvbkVuYWJsZWQiIGVxdWFscyB0aGF0IG9mICJS ZW1vdGVBY2Nlc3NBbGxvd2VkIikuCisgIC8qKgorICAgICAiQXV0aGVudGljYXRpb25FbmFibGVk IiA6IGZhbHNlLAorICAgKiovCisKKyAgLy8gVGhlIGxpc3Qgb2YgdGhlIHJlZ2lzdGVyZWQgdXNl cnMuIEJlY2F1c2UgT3J0aGFuYyB1c2VzIEhUVFAKKyAgLy8gQmFzaWMgQXV0aGVudGljYXRpb24s IHRoZSBwYXNzd29yZHMgYXJlIHN0b3JlZCBhcyBwbGFpbiB0ZXh0LgorICAiUmVnaXN0ZXJlZFVz ZXJzIiA6IHsKKyAgICAvLyAiYWxpY2UiIDogImFsaWNlUGFzc3dvcmQiCisgIH0sCisKKworCisg IC8qKgorICAgKiBTZWN1cml0eS1yZWxhdGVkIG9wdGlvbnMgZm9yIHRoZSBESUNPTSBjb25uZWN0 aW9ucyAoU0NVL1NDUCkKKyAgICoqLworCisgIC8vIFdoZXRoZXIgRElDT00gVExTIGlzIGVuYWJs ZWQgaW4gdGhlIE9ydGhhbmMgU0NQIChuZXcgaW4gT3J0aGFuYyAxLjkuMCkKKyAgIkRpY29tVGxz RW5hYmxlZCIgOiBmYWxzZSwKKworICAvLyBQYXRoIHRvIHRoZSBUTFMgY2VydGlmaWNhdGUgZmls ZSAoaW4gUEVNIGZvcm1hdCkgdG8gYmUgdXNlZCBmb3IKKyAgLy8gYm90aCBPcnRoYW5jIFNDUCAo aW5jb21pbmcgRElDT00gY29ubmVjdGlvbnMpIGFuZCBPcnRoYW5jIFNDVQorICAvLyAob3V0Z29p bmcgRElDT00gY29ubmVjdGlvbnMpLiBOb3RlIHRoYXQgY29udHJhcmlseSB0byB0aGUKKyAgLy8g IlNzbENlcnRpZmljYXRlIiBvcHRpb24sIHRoZSBjZXJ0aWZpY2F0ZSBhbmQgaXRzIHByaXZhdGUg a2V5IG11c3QKKyAgLy8gYmUgc3BsaXQgaW50byB0d28gc2VwYXJhdGUgZmlsZXMuIChuZXcgaW4g T3J0aGFuYyAxLjkuMCkKKyAgLyoqCisgICAgICJEaWNvbVRsc0NlcnRpZmljYXRlIiA6ICJvcnRo YW5jLmNydCIsCisgICoqLworCisgIC8vIFBhdGggdG8gdGhlIGZpbGUgY29udGFpbmluZyB0aGUg cHJpdmF0ZSBrZXkgKGluIFBFTSBmb3JtYXQpIHRoYXQKKyAgLy8gY29ycmVzcG9uZHMgdG8gdGhl IFRMUyBjZXJ0aWZpY2F0ZSBzcGVjaWZpZWQgaW4gb3B0aW9uCisgIC8vICJEaWNvbVRsc0NlcnRp ZmljYXRlIi4gKG5ldyBpbiBPcnRoYW5jIDEuOS4wKQorICAvKioKKyAgICAgIkRpY29tVGxzUHJp dmF0ZUtleSIgOiAib3J0aGFuYy5rZXkiLAorICAqKi8KKworICAvLyBQYXRoIHRvIGEgZmlsZSBj b250YWluaW5nIGFsbCB0aGUgVExTIGNlcnRpZmljYXRlcyB0aGF0IE9ydGhhbmMKKyAgLy8gY2Fu IHRydXN0LCBib3RoIGZvciBpdHMgU0NQIChpbmNvbWluZyBESUNPTSBjb25uZWN0aW9ucykgYW5k IFNDVQorICAvLyAob3V0Z29pbmcgRElDT00gY29ubmVjdGlvbnMpLiBUaGlzIGZpbGUgbXVzdCBj b250YWluIGEgc2VxdWVuY2UKKyAgLy8gb2YgUEVNIGNlcnRpZmljYXRlcy4gKG5ldyBpbiBPcnRo YW5jIDEuOS4wKQorICAvKioKKyAgICAgIkRpY29tVGxzVHJ1c3RlZENlcnRpZmljYXRlcyIgOiAi dHJ1c3RlZC5jcnQiLAorICAqKi8KKyAgCisgIC8vIFdoZXRoZXIgT3J0aGFuYyByZWplY3RzIERJ Q09NIFRMUyBjb25uZWN0aW9ucyB0by9mcm9tIHJlbW90ZQorICAvLyBtb2RhbGl0aWVzIHRoYXQg ZG8gbm90IHByb3ZpZGUgYSBjZXJ0aWZpY2F0ZS4gU2V0dGluZyB0aGlzIG9wdGlvbgorICAvLyB0 byAidHJ1ZSIgKHJlc3AuICJmYWxzZSIpIGNvcnJlc3BvbmRzIHRvICItLXJlcXVpcmUtcGVlci1j ZXJ0IgorICAvLyAocmVzcC4gIi0tdmVyaWZ5LXBlZXItY2VydCIpIGluIHRoZSBEQ01USyBjb21t YW5kLWxpbmUKKyAgLy8gdG9vbHMuIChuZXcgaW4gT3J0aGFuYyAxLjkuMykKKyAgIkRpY29tVGxz UmVtb3RlQ2VydGlmaWNhdGVSZXF1aXJlZCIgOiB0cnVlLAorCisgIC8vIFdoZXRoZXIgdGhlIE9y dGhhbmMgU0NQIGFsbG93cyBpbmNvbWluZyBDLUVDSE8gcmVxdWVzdHMsIGV2ZW4KKyAgLy8gZnJv bSBTQ1UgbW9kYWxpdGllcyBpdCBkb2VzIG5vdCBrbm93IGFib3V0IChpLmUuIHRoYXQgYXJlIG5v dAorICAvLyBsaXN0ZWQgaW4gdGhlICJEaWNvbU1vZGFsaXRpZXMiIG9wdGlvbiBhYm92ZSkuIE9y dGhhbmMgMS4zLjAKKyAgLy8gaXMgdGhlIG9ubHkgdmVyc2lvbiB0byBiZWhhdmUgYXMgaWYgdGhp cyBhcmd1bWVudCB3ZXJlIHNldCB0byAiZmFsc2UiLgorICAiRGljb21BbHdheXNBbGxvd0VjaG8i IDogdHJ1ZSwKKworICAvLyBXaGV0aGVyIHRoZSBPcnRoYW5jIFNDUCBhbGxvd3MgaW5jb21pbmcg Qy1TVE9SRSByZXF1ZXN0cywgZXZlbgorICAvLyBmcm9tIFNDVSBtb2RhbGl0aWVzIGl0IGRvZXMg bm90IGtub3cgYWJvdXQgKGkuZS4gdGhhdCBhcmUgbm90CisgIC8vIGxpc3RlZCBpbiB0aGUgIkRp Y29tTW9kYWxpdGllcyIgb3B0aW9uIGFib3ZlKQorICAiRGljb21BbHdheXNBbGxvd1N0b3JlIiA6 IHRydWUsCisKKyAgLy8gV2hldGhlciB0aGUgT3J0aGFuYyBTQ1AgYWxsb3dzIGluY29taW5nIEMt RklORCByZXF1ZXN0cywgZXZlbgorICAvLyBmcm9tIFNDVSBtb2RhbGl0aWVzIGl0IGRvZXMgbm90 IGtub3cgYWJvdXQgKGkuZS4gdGhhdCBhcmUgbm90CisgIC8vIGxpc3RlZCBpbiB0aGUgIkRpY29t TW9kYWxpdGllcyIgb3B0aW9uIGFib3ZlKS4gU2V0dGluZyB0aGlzCisgIC8vIG9wdGlvbiB0byAi dHJ1ZSIgaW1wbGllcyBzZWN1cml0eSByaXNrcy4gKG5ldyBpbiBPcnRoYW5jIDEuOS4wKQorICAv LyBOb3RlOiBGcm9tIE9ydGhhbmMgMS4xMC4wLCB0aGlzIG9wdGlvbiBvbmx5IGFwcGxpZXMgdG8g Qy1GSU5ECisgIC8vIHJlcXVlc3RzIGZvciBwYXRpZW50cy9zdHVkaWVzL3Nlcmllcy9pbnN0YW5j ZXMuIFVzZSBvcHRpb24KKyAgLy8gIkRpY29tQWx3YXlzQWxsb3dGaW5kV29ya2xpc3QiIGZvciB3 b3JrbGlzdHMuCisgICJEaWNvbUFsd2F5c0FsbG93RmluZCIgOiBmYWxzZSwKKworICAvLyBXaGV0 aGVyIHRoZSBPcnRoYW5jIFNDUCBhbGxvd3MgaW5jb21pbmcgQy1GSU5EIHJlcXVlc3RzIGZvciB3 b3JrbGlzdHMsIAorICAvLyBldmVuIGZyb20gU0NVIG1vZGFsaXRpZXMgaXQgZG9lcyBub3Qga25v dyBhYm91dCAoaS5lLiB0aGF0IGFyZSBub3QKKyAgLy8gbGlzdGVkIGluIHRoZSAiRGljb21Nb2Rh bGl0aWVzIiBvcHRpb24gYWJvdmUpLiBTZXR0aW5nIHRoaXMKKyAgLy8gb3B0aW9uIHRvICJ0cnVl IiBpbXBsaWVzIHNlY3VyaXR5IHJpc2tzLiAobmV3IGluIE9ydGhhbmMgMS4xMC4wKQorICAiRGlj b21BbHdheXNBbGxvd0ZpbmRXb3JrbGlzdCIgOiBmYWxzZSwKKworICAvLyBXaGV0aGVyIHRoZSBP cnRoYW5jIFNDUCBhbGxvd3MgaW5jb21pbmcgQy1HRVQgcmVxdWVzdHMsIGV2ZW4KKyAgLy8gZnJv bSBTQ1UgbW9kYWxpdGllcyBpdCBkb2VzIG5vdCBrbm93IGFib3V0IChpLmUuIHRoYXQgYXJlIG5v dAorICAvLyBsaXN0ZWQgaW4gdGhlICJEaWNvbU1vZGFsaXRpZXMiIG9wdGlvbiBhYm92ZSkuIFNl dHRpbmcgdGhpcworICAvLyBvcHRpb24gdG8gInRydWUiIGltcGxpZXMgc2VjdXJpdHkgcmlza3Mu IChuZXcgaW4gT3J0aGFuYyAxLjkuMCkKKyAgIkRpY29tQWx3YXlzQWxsb3dHZXQiIDogZmFsc2Us CisKKyAgLy8gV2hldGhlciB0aGUgT3J0aGFuYyBTQ1AgYWxsb3dzIGluY29taW5nIEMtTU9WRSBy ZXF1ZXN0cywgZXZlbgorICAvLyBmcm9tIFNDVSBtb2RhbGl0aWVzIGl0IGRvZXMgbm90IGtub3cg YWJvdXQgKGkuZS4gdGhhdCBhcmUgbm90CisgIC8vIGxpc3RlZCBpbiB0aGUgIkRpY29tTW9kYWxp dGllcyIgb3B0aW9uIGFib3ZlKS4gU2V0dGluZyB0aGlzCisgIC8vIG9wdGlvbiB0byAidHJ1ZSIg aW1wbGllcyBzZWN1cml0eSByaXNrcy4gKG5ldyBpbiBPcnRoYW5jIDEuOS43KQorICAiRGljb21B bHdheXNBbGxvd01vdmUiIDogZmFsc2UsCisKKyAgLy8gV2hldGhlciBPcnRoYW5jIGNoZWNrcyB0 aGUgSVAvaG9zdG5hbWUgYWRkcmVzcyBvZiB0aGUgcmVtb3RlCisgIC8vIG1vZGFsaXR5IGluaXRp YXRpbmcgYSBESUNPTSBjb25uZWN0aW9uIChhcyBsaXN0ZWQgaW4gdGhlCisgIC8vICJEaWNvbU1v ZGFsaXRpZXMiIG9wdGlvbiBhYm92ZSkuIElmIHRoaXMgb3B0aW9uIGlzIHNldCB0bworICAvLyAi ZmFsc2UiLCBPcnRoYW5jIG9ubHkgY2hlY2tzIHRoZSBBRVQgb2YgdGhlIHJlbW90ZSBtb2RhbGl0 eS4KKyAgIkRpY29tQ2hlY2tNb2RhbGl0eUhvc3QiIDogZmFsc2UsCisKKworCisgIC8qKgorICAg KiBOZXR3b3JrIHRvcG9sb2d5CisgICAqKi8KKworICAvLyBUaGUgbGlzdCBvZiB0aGUga25vd24g RElDT00gbW9kYWxpdGllcy4gVGhpcyBvcHRpb24gaXMgaWdub3JlZCBpZgorICAvLyAiRGljb21N b2RhbGl0aWVzSW5EYXRhYmFzZSIgaXMgc2V0IHRvICJ0cnVlIiwgaW4gd2hpY2ggY2FzZSB5b3UK KyAgLy8gbXVzdCB1c2UgdGhlIFJFU1QgQVBJIHRvIGRlZmluZSBtb2RhbGl0aWVzLgorICAiRGlj b21Nb2RhbGl0aWVzIiA6IHsKKyAgICAvKioKKyAgICAgKiBVbmNvbW1lbnRpbmcgdGhlIGZvbGxv d2luZyBsaW5lIHdvdWxkIGVuYWJsZSBPcnRoYW5jIHRvCisgICAgICogY29ubmVjdCB0byBhbiBp bnN0YW5jZSBvZiB0aGUgInN0b3Jlc2NwIiBvcGVuLXNvdXJjZSBESUNPTQorICAgICAqIHN0b3Jl IChzaGlwcGVkIGluIHRoZSBEQ01USyBkaXN0cmlidXRpb24pLCBhcyBzdGFydGVkIGJ5IHRoZQor ICAgICAqIGNvbW1hbmQgbGluZSAic3RvcmVzY3AgMjAwMCIuIFRoZSBmaXJzdCBwYXJhbWV0ZXIg aXMgdGhlCisgICAgICogQUVUIG9mIHRoZSByZW1vdGUgbW9kYWxpdHkgKGNhbm5vdCBiZSBsb25n ZXIgdGhhbiAxNiAKKyAgICAgKiBjaGFyYWN0ZXJzKSwgdGhlIHNlY29uZCBvbmUgaXMgdGhlIHJl bW90ZSBuZXR3b3JrIGFkZHJlc3MsCisgICAgICogYW5kIHRoZSB0aGlyZCBvbmUgaXMgdGhlIFRD UCBwb3J0IG51bWJlciBjb3JyZXNwb25kaW5nCisgICAgICogdG8gdGhlIERJQ09NIHByb3RvY29s IG9uIHRoZSByZW1vdGUgbW9kYWxpdHkgKHVzdWFsbHkgMTA0KS4KKyAgICAgKiovCisgICAgLy8g InNhbXBsZSIgOiBbICJTVE9SRVNDUCIsICIxMjcuMC4wLjEiLCAyMDAwIF0KKworICAgIC8qKgor ICAgICAqIEEgZm91cnRoIHBhcmFtZXRlciBpcyBhdmFpbGFibGUgdG8gZW5hYmxlIHBhdGNoZXMg Zm9yCisgICAgICogc3BlY2lmaWMgUEFDUyBtYW51ZmFjdHVyZXJzLiBUaGUgYWxsb3dlZCB2YWx1 ZXMgYXJlIGN1cnJlbnRseToKKyAgICAgKiAtICJHZW5lcmljIiAoZGVmYXVsdCB2YWx1ZSksCisg ICAgICogLSAiR2VuZXJpY05vV2lsZGNhcmRJbkRhdGVzIiAodG8gcmVwbGFjZSAiKiIgYnkgIiIg aW4gZGF0ZSBmaWVsZHMgCisgICAgICogICBpbiBvdXRnb2luZyBDLUZJTkQgcmVxdWVzdHMgb3Jp Z2luYXRpbmcgZnJvbSBPcnRoYW5jKSwKKyAgICAgKiAtICJHZW5lcmljTm9Vbml2ZXJzYWxXaWxk Y2FyZCIgKHRvIHJlcGxhY2UgIioiIGJ5ICIiIGluIGFsbCBmaWVsZHMKKyAgICAgKiAgIGluIG91 dGdvaW5nIEMtRklORCBTQ1UgcmVxdWVzdHMgb3JpZ2luYXRpbmcgZnJvbSBPcnRoYW5jKSwKKyAg ICAgKiAtICJWaXRyZWEiLAorICAgICAqIC0gIkdFIiAoRW50ZXJwcmlzZSBBcmNoaXZlLCBNUkkg Y29uc29sZXMgYW5kIEFkdmFudGFnZSBXb3Jrc3RhdGlvbgorICAgICAqICAgZnJvbSBHRSBIZWFs dGhjYXJlKS4KKyAgICAgKgorICAgICAqIFRoaXMgcGFyYW1ldGVyIGlzIGNhc2Utc2Vuc2l0aXZl LgorICAgICAqKi8KKyAgICAvLyAidml0cmVhIiA6IFsgIlZJVFJFQSIsICIxOTIuMTY4LjEuMSIs IDEwNCwgIlZpdHJlYSIgXQorCisgICAgLyoqCisgICAgICogQnkgZGVmYXVsdCwgdGhlIE9ydGhh bmMgU0NQIGFjY2VwdHMgYWxsIERJQ09NIGNvbW1hbmRzIChDLUVDSE8sCisgICAgICogQy1TVE9S RSwgQy1GSU5ELCBDLU1PVkUsIEMtR0VUIGFuZCBzdG9yYWdlIGNvbW1pdG1lbnQpIGlzc3VlZCBi eSB0aGUKKyAgICAgKiByZWdpc3RlcmVkIHJlbW90ZSBTQ1UgbW9kYWxpdGllcy4gU3RhcnRpbmcg d2l0aCBPcnRoYW5jIDEuNS4wLAorICAgICAqIGl0IGlzIHBvc3NpYmxlIHRvIHNwZWNpZnkgd2hp Y2ggRElDT00gY29tbWFuZHMgYXJlIGFsbG93ZWQsCisgICAgICogc2VwYXJhdGVseSBmb3IgZWFj aCByZW1vdGUgbW9kYWxpdHksIHVzaW5nIHRoZSBzeW50YXgKKyAgICAgKiBiZWxvdy4KKyAgICAg KgorICAgICAqIFRoZSAiQWxsb3dFY2hvIiAocmVzcC4gICJBbGxvd1N0b3JlIikgb3B0aW9uIG9u bHkgaGFzIGFuIGVmZmVjdAorICAgICAqIHJlc3BlY3RpdmVseSBpZiBnbG9iYWwgb3B0aW9uICJE aWNvbUFsd2F5c0FsbG93RWNobyIKKyAgICAgKiAocmVzcC4gIkRpY29tQWx3YXlzQWxsb3dTdG9y ZSIpIGlzIHNldCB0byAiZmFsc2UiLgorICAgICAqCisgICAgICogU3RhcnRpbmcgd2l0aCBPcnRo YW5jIDEuNy4wLCAiQWxsb3dUcmFuc2NvZGluZyIgY2FuIGJlIHVzZWQgdG8KKyAgICAgKiBkaXNh YmxlIHRoZSB0cmFuc2NvZGluZyB0byB1bmNvbXByZXNzZWQgdHJhbnNmZXIgc3ludGF4ZXMgaWYK KyAgICAgKiB0aGlzIHJlbW90ZSBtb2RhbGl0eSBkb2Vzbid0IHN1cHBvcnQgY29tcHJlc3NlZCB0 cmFuc2ZlcgorICAgICAqIHN5bnRheGVzLiBUaGlzIG9wdGlvbiBjdXJyZW50bHkgYXBwbGllcyB0 byBPcnRoYW5jIEMtR0VUIFNDUAorICAgICAqIGFuZCB0byBPcnRoYW5jIEMtU1RPUkUgU0NVLiBU aGlzIG9wdGlvbiBvbmx5IGhhcyBhbiBlZmZlY3QgaWYKKyAgICAgKiB0aGUgZ2xvYmFsIG9wdGlv biAiRW5hYmxlVHJhbnNjb2RpbmciIGlzIHNldCB0byAidHJ1ZSIuCisgICAgICoKKyAgICAgKiBC eSBkZWZhdWx0LCBhbGwgIkFsbG93KiIgb3B0aW9ucyBhcmUgdHJ1ZS4KKyAgICAgKiAiQWxsb3dT dG9yYWdlQ29tbWl0bWVudCIgaXMgYWN0dWFsbHkgYW4gYWxpYXMgZm9yIAorICAgICAqICJBbGxv d05BY3Rpb24iICYgIkFsbG93RXZlbnRSZXBvcnQiLgorICAgICAqIAorICAgICAqIFRoZSAiVXNl RGljb21UbHMiIG9wdGlvbiBzcGVjaWZpZXMgd2hldGhlciBESUNPTSBUTFMgc2hvdWxkIGJlCisg ICAgICogdXNlZCB3aGVuIG9wZW5pbmcgYSBTQ1UgY29ubmVjdGlvbiBmcm9tIE9ydGhhbmMgdG8g dGhpcyByZW1vdGUKKyAgICAgKiBtb2RhbGl0eS4gQnkgZGVmYXVsdCwgRElDT00gVExTIGlzIG5v dCBlbmFibGVkLgorICAgICAqCisgICAgICogVGhlICJMb2NhbEFldCIgb3B0aW9uIGFsbG93cyBv bmUgdG8gb3ZlcndyaXRlIHRoZSBnbG9iYWwKKyAgICAgKiAiRGljb21BZXQiIGNvbmZpZ3VyYXRp b24gb3B0aW9uIGluIG9yZGVyIHRvIHNwZWNpZnkgYW5vdGhlciBBRVQKKyAgICAgKiBmb3IgT3J0 aGFuYyB3aGVuIGluaXRpYXRpbmcgYW4gU0NVIHRvIHRoaXMgdmVyeSBzcGVjaWZpYworICAgICAq IG1vZGFsaXR5LiBTaW1pbGFybHksICJUaW1lb3V0IiBhbGxvd3Mgb25lIHRvIG92ZXJ3cml0ZSB0 aGUKKyAgICAgKiBnbG9iYWwgdmFsdWUgIkRpY29tU2N1VGltZW91dCIgb24gYSBwZXItbW9kYWxp dHkgYmFzaXMuCisgICAgICoqLworICAgIC8vInVudHJ1c3RlZCIgOiB7CisgICAgLy8gICJBRVQi IDogIk9SVEhBTkMiLAorICAgIC8vICAiUG9ydCIgOiAxMDQsCisgICAgLy8gICJIb3N0IiA6ICIx MjcuMC4wLjEiLAorICAgIC8vICAiTWFudWZhY3R1cmVyIiA6ICJHZW5lcmljIiwKKyAgICAvLyAg IkFsbG93RWNobyIgOiBmYWxzZSwKKyAgICAvLyAgIkFsbG93RmluZCIgOiBmYWxzZSwKKyAgICAv LyAgIkFsbG93RmluZFdvcmtsaXN0IiA6IGZhbHNlLCAgICAgICAvLyBuZXcgaW4gMS4xMC4wCisg ICAgLy8gICJBbGxvd0dldCIgIDogZmFsc2UsCisgICAgLy8gICJBbGxvd01vdmUiIDogZmFsc2Us CisgICAgLy8gICJBbGxvd1N0b3JlIiA6IHRydWUsCisgICAgLy8gICJBbGxvd1N0b3JhZ2VDb21t aXRtZW50IiA6IGZhbHNlLCAgLy8gbmV3IGluIDEuNi4wCisgICAgLy8gICJBbGxvd1RyYW5zY29k aW5nIiA6IHRydWUsICAgICAgICAgLy8gbmV3IGluIDEuNy4wCisgICAgLy8gICJVc2VEaWNvbVRs cyIgOiBmYWxzZSAgICAgICAgICAgICAgLy8gbmV3IGluIDEuOS4wCisgICAgLy8gICJMb2NhbEFl dCIgOiAiSEVMTE8iICAgICAgICAgICAgICAgLy8gbmV3IGluIDEuOS4wCisgICAgLy8gICJUaW1l b3V0IiA6IDYwICAgICAgICAgICAgICAgICAgICAgLy8gbmV3IGluIDEuOS4xCisgICAgLy99Cisg IH0sCisKKyAgLy8gV2hldGhlciB0byBzdG9yZSB0aGUgRElDT00gbW9kYWxpdGllcyBpbiB0aGUg T3J0aGFuYyBkYXRhYmFzZQorICAvLyBpbnN0ZWFkIG9mIGluIHRoaXMgY29uZmlndXJhdGlvbiBm aWxlIChuZXcgaW4gT3J0aGFuYyAxLjUuMCkKKyAgIkRpY29tTW9kYWxpdGllc0luRGF0YWJhc2Ui IDogZmFsc2UsCisKKyAgLy8gV2hldGhlciB0aGUgQy1FQ0hPIFNDVSBpcyBhdXRvbWF0aWNhbGx5 IGZvbGxvd2VkIGJ5IGEgQy1GSU5EIFNDVSwKKyAgLy8gd2hpbGUgdGVzdGluZyB0aGUgY29ubmVj dGl2aXR5IGZyb20gT3J0aGFuYyB0byBhIHJlbW90ZSBESUNPTQorICAvLyBtb2RhbGl0eS4gVGhp cyBhbGxvd3Mgb25lIHRvIGNoZWNrIHRoYXQgdGhlIHJlbW90ZSBtb2RhbGl0eSBkb2VzCisgIC8v IGFjY2VwdCBDLUZJTkQgcmVxdWVzdHMgZnJvbSBPcnRoYW5jIChuZXcgaW4gT3J0aGFuYyAxLjgu MSkuCisgICJEaWNvbUVjaG9DaGVja3NGaW5kIiA6IGZhbHNlLAorCisgIC8vIFRoZSB0aW1lb3V0 IChpbiBzZWNvbmRzKSBhZnRlciB3aGljaCB0aGUgRElDT00gYXNzb2NpYXRpb25zIGFyZQorICAv LyBjb25zaWRlcmVkIGFzIGNsb3NlZCBieSB0aGUgT3J0aGFuYyBTQ1UgKGNsaWVudCkgaWYgdGhl IHJlbW90ZQorICAvLyBESUNPTSBTQ1AgKHNlcnZlcikgZG9lcyBub3QgYW5zd2VyLgorICAiRGlj b21TY3VUaW1lb3V0IiA6IDEwLAorCisgIC8vIER1cmluZyBhIEMtU1RPUkUgU0NVIHJlcXVlc3Qg aW5pdGlhdGVkIGJ5IE9ydGhhbmMsIGlmIHRoZSByZW1vdGUKKyAgLy8gbW9kYWxpdHkgZG9lc24n dCBzdXBwb3J0IHRoZSBvcmlnaW5hbCB0cmFuc2ZlciBzeW50YXggb2Ygc29tZQorICAvLyBESUNP TSBpbnN0YW5jZSwgc3BlY2lmeSB3aGljaCB0cmFuc2ZlciBzeW50YXggc2hvdWxkIGJlIHByZWZl cnJlZAorICAvLyB0byB0cmFuc2NvZGUgdGhpcyBpbnN0YW5jZSAocHJvdmlkZWQgdGhlIHJlbW90 ZSBtb2RhbGl0eSBhY2NlcHRzCisgIC8vIHRoaXMgc3ludGF4KS4gSW4gT3J0aGFuYyBiZXR3ZWVu IDEuNy4wIGFuZCAxLjguMiwgdGhpcyBwYXJhbWV0ZXIKKyAgLy8gd2FzIGltcGxpY2l0bHkgc2V0 IHRvICJMaXR0bGUgRW5kaWFuIEltcGxpY2l0IgorICAvLyAoMS4yLjg0MC4xMDAwOC4xLjIpLiBJ biBPcnRoYW5jIDw9IDEuNi4xIGFuZCBpbiBPcnRoYW5jID49IDEuOS4wLAorICAvLyB0aGlzIHBh cmFtZXRlciBpcyBieSBkZWZhdWx0IHNldCB0byAiTGl0dGxlIEVuZGlhbiBFeHBsaWNpdCIKKyAg Ly8gKDEuMi44NDAuMTAwMDguMS4yLjEpLiBUaGlzIHBhcmFtZXRlciBjYW4gcG9zc2libHkgY29y cmVzcG9uZCB0bworICAvLyBhIGNvbXByZXNzZWQgdHJhbnNmZXIgc3ludGF4LiAobmV3IGluIE9y dGhhbmMgMS45LjApCisgICJEaWNvbVNjdVByZWZlcnJlZFRyYW5zZmVyU3ludGF4IiA6ICIxLjIu ODQwLjEwMDA4LjEuMi4xIiwKKworICAvLyBOdW1iZXIgb2YgdGhyZWFkcyB0aGF0IGFyZSB1c2Vk IGJ5IHRoZSBlbWJlZGRlZCBESUNPTSBzZXJ2ZXIuCisgIC8vIFRoaXMgZGVmaW5lcyB0aGUgbnVt YmVyIG9mIGNvbmN1cnJlbnQgRElDT00gb3BlcmF0aW9ucyB0aGF0IGNhbgorICAvLyBiZSBydW4u IE5vdGU6IFRoaXMgaXMgbm90IGxpbWl0aW5nIHRoZSBudW1iZXIgb2YgY29uY3VycmVudAorICAv LyBjb25uZWN0aW9ucy4gV2l0aCBhIHNpbmdsZSB0aHJlYWQsIGlmIGEgQy1GaW5kIGlzIHJlY2Vp dmVkIGR1cmluZworICAvLyBlLmcgdGhlIHRyYW5zY29kaW5nIG9mIGFuIGluY29taW5nIEMtU3Rv cmUsIGl0IHdpbGwgaGF2ZSB0byB3YWl0CisgIC8vIHVudGlsIHRoZSBlbmQgb2YgdGhlIEMtU3Rv cmUgYmVmb3JlIGJlaW5nIHByb2Nlc3NlZC4gKG5ldyBpbgorICAvLyBPcnRoYW5jIDEuMTAuMCwg YmVmb3JlIHRoaXMgdmVyc2lvbiwgdGhlIHZhbHVlIHdhcyBmaXhlZCB0byA0KQorICAiRGljb21U aHJlYWRzQ291bnQiIDogNCwKKworICAvLyBUaGUgbGlzdCBvZiB0aGUga25vd24gT3J0aGFuYyBw ZWVycy4gVGhpcyBvcHRpb24gaXMgaWdub3JlZCBpZgorICAvLyAiT3J0aGFuY1BlZXJzSW5EYXRh YmFzZSIgaXMgc2V0IHRvICJ0cnVlIiwgaW4gd2hpY2ggY2FzZSB5b3UgbXVzdAorICAvLyB1c2Ug dGhlIFJFU1QgQVBJIHRvIGRlZmluZSBPcnRoYW5jIHBlZXJzLgorICAiT3J0aGFuY1BlZXJzIiA6 IHsKKyAgICAvKioKKyAgICAgKiBFYWNoIGxpbmUgZ2l2ZXMgdGhlIGJhc2UgVVJMIG9mIGFuIE9y dGhhbmMgcGVlciwgcG9zc2libHkKKyAgICAgKiBmb2xsb3dlZCBieSB0aGUgdXNlcm5hbWUvcGFz c3dvcmQgcGFpciAoaWYgdGhlIHBhc3N3b3JkCisgICAgICogcHJvdGVjdGlvbiBpcyBlbmFibGVk IG9uIHRoZSBwZWVyKS4KKyAgICAgKiovCisgICAgLy8gInBlZXIiICA6IFsgImh0dHA6Ly8xMjcu MC4wLjE6ODA0My8iLCAiYWxpY2UiLCAiYWxpY2VQYXNzd29yZCIgXQorICAgIC8vICJwZWVyMiIg OiBbICJodHRwOi8vMTI3LjAuMC4xOjgwNDQvIiBdCisKKyAgICAvKioKKyAgICAgKiBUaGlzIGlz IGFub3RoZXIsIG1vcmUgYWR2YW5jZWQgZm9ybWF0IHRvIGRlZmluZSBPcnRoYW5jCisgICAgICog cGVlcnMuIEl0IG5vdGFibHkgYWxsb3dzIG9uZSB0byBzcGVjaWZ5IEhUVFAgaGVhZGVycywgYSBI VFRQUworICAgICAqIGNsaWVudCBjZXJ0aWZpY2F0ZSBpbiB0aGUgUEVNIGZvcm1hdCAoYXMgaW4g dGhlICItLWNlcnQiIG9wdGlvbgorICAgICAqIG9mIGN1cmwpLCBvciB0byBlbmFibGUgUEtDUyMx MSBhdXRoZW50aWNhdGlvbiBmb3Igc21hcnQgY2FyZHMuCisgICAgICoKKyAgICAgKiBUaGUgIlRp bWVvdXQiIG9wdGlvbiBhbGxvd3Mgb25lIHRvIG92ZXJ3cml0ZSB0aGUgZ2xvYmFsIHZhbHVlCisg ICAgICogIkh0dHBUaW1lb3V0IiBvbiBhIHBlci1wZWVyIGJhc2lzLgorICAgICAqKi8KKyAgICAv LyAicGVlciIgOiB7CisgICAgLy8gICAiVXJsIiA6ICJodHRwOi8vMTI3LjAuMC4xOjgwNDMvIiwK KyAgICAvLyAgICJVc2VybmFtZSIgOiAiYWxpY2UiLAorICAgIC8vICAgIlBhc3N3b3JkIiA6ICJh bGljZVBhc3N3b3JkIiwKKyAgICAvLyAgICJIdHRwSGVhZGVycyIgOiB7ICJUb2tlbiIgOiAiSGVs bG8gd29ybGQiIH0sCisgICAgLy8gICAiQ2VydGlmaWNhdGVGaWxlIiA6ICJjbGllbnQuY3J0IiwK KyAgICAvLyAgICJDZXJ0aWZpY2F0ZUtleUZpbGUiIDogImNsaWVudC5rZXkiLAorICAgIC8vICAg IkNlcnRpZmljYXRlS2V5UGFzc3dvcmQiIDogImNlcnRwYXNzIiwKKyAgICAvLyAgICJQa2NzMTEi IDogZmFsc2UsCisgICAgLy8gICAiVGltZW91dCIgOiA0MiAgICAgICAgICAgIC8vIE5ldyBpbiBP cnRoYW5jIDEuOS4xCisgICAgLy8gfQorICB9LAorCisgIC8vIFdoZXRoZXIgdG8gc3RvcmUgdGhl IE9ydGhhbmMgcGVlcnMgaW4gdGhlIE9ydGhhbmMgZGF0YWJhc2UKKyAgLy8gaW5zdGVhZCBvZiBp biB0aGlzIGNvbmZpZ3VyYXRpb24gZmlsZSAobmV3IGluIE9ydGhhbmMgMS41LjApCisgICJPcnRo YW5jUGVlcnNJbkRhdGFiYXNlIiA6IGZhbHNlLAorCisgIC8vIFBhcmFtZXRlcnMgb2YgdGhlIEhU VFAgcHJveHkgdG8gYmUgdXNlZCBieSBPcnRoYW5jLiBJZiBzZXQgdG8gdGhlCisgIC8vIGVtcHR5 IHN0cmluZywgbm8gSFRUUCBwcm94eSBpcyB1c2VkLiBGb3IgaW5zdGFuY2U6CisgIC8vICAgIkh0 dHBQcm94eSIgOiAiMTkyLjE2OC4wLjE6MzEyOCIKKyAgLy8gICAiSHR0cFByb3h5IiA6ICJwcm94 eVVzZXI6cHJveHlQYXNzd29yZEAxOTIuMTY4LjAuMTozMTI4IgorICAiSHR0cFByb3h5IiA6ICIi LAorCisgIC8vIElmIHNldCB0byAidHJ1ZSIsIGRlYnVnIG1lc3NhZ2VzIGZyb20gbGliY3VybCB3 aWxsIGJlIGlzc3VlZAorICAvLyB3aGVuZXZlciBPcnRoYW5jIG1ha2VzIGFuIG91dGdvaW5nIEhU VFAgcmVxdWVzdC4gVGhpcyBpcyBub3RhYmx5CisgIC8vIHVzZWZ1bCB0byBkZWJ1ZyBIVFRQUy1y ZWxhdGVkIHByb2JsZW1zLgorICAiSHR0cFZlcmJvc2UiIDogZmFsc2UsCisKKyAgLy8gU2V0IHRo ZSB0aW1lb3V0IGZvciBIVFRQIHJlcXVlc3RzIGlzc3VlZCBieSBPcnRoYW5jIChpbiBzZWNvbmRz KS4KKyAgIkh0dHBUaW1lb3V0IiA6IDYwLAorCisgIC8vIEVuYWJsZSB0aGUgdmVyaWZpY2F0aW9u IG9mIHRoZSBwZWVycyBkdXJpbmcgSFRUUFMgcmVxdWVzdHMuIFRoaXMKKyAgLy8gb3B0aW9uIG11 c3QgYmUgc2V0IHRvICJmYWxzZSIgaWYgdXNpbmcgc2VsZi1zaWduZWQgY2VydGlmaWNhdGVzLgor ICAvLyBQYXkgYXR0ZW50aW9uIHRoYXQgc2V0dGluZyB0aGlzIG9wdGlvbiB0byAiZmFsc2UiIHJl c3VsdHMgaW4KKyAgLy8gc2VjdXJpdHkgcmlza3MhCisgIC8vIFJlZmVyZW5jZTogaHR0cDovL2N1 cmwuaGF4eC5zZS9kb2NzL3NzbGNlcnRzLmh0bWwKKyAgIkh0dHBzVmVyaWZ5UGVlcnMiIDogdHJ1 ZSwKKworICAvLyBQYXRoIHRvIHRoZSBDQSAoY2VydGlmaWNhdGlvbiBhdXRob3JpdHkpIGNlcnRp ZmljYXRlcyB0byB2YWxpZGF0ZQorICAvLyBwZWVycyBpbiBIVFRQUyByZXF1ZXN0cy4gRnJvbSBj dXJsIGRvY3VtZW50YXRpb24gKCItLWNhY2VydCIKKyAgLy8gb3B0aW9uKTogIlRlbGxzIGN1cmwg dG8gdXNlIHRoZSBzcGVjaWZpZWQgY2VydGlmaWNhdGUgZmlsZSB0bworICAvLyB2ZXJpZnkgdGhl IHBlZXJzLiBUaGUgZmlsZSBtYXkgY29udGFpbiBtdWx0aXBsZSBDQQorICAvLyBjZXJ0aWZpY2F0 ZXMuIFRoZSBjZXJ0aWZpY2F0ZShzKSBtdXN0IGJlIGluIFBFTSBmb3JtYXQuIiBPbgorICAvLyBE ZWJpYW4tYmFzZWQgc3lzdGVtcywgdGhpcyBvcHRpb24gY2FuIGJlIHNldCB0bworICAvLyAiL2V0 Yy9zc2wvY2VydHMvY2EtY2VydGlmaWNhdGVzLmNydCIKKyAgIkh0dHBzQ0FDZXJ0aWZpY2F0ZXMi IDogIiIsCisKKworCisgIC8qKgorICAgKiBBZHZhbmNlZCBvcHRpb25zCisgICAqKi8KKworICAv LyBEaWN0aW9uYXJ5IG9mIHN5bWJvbGljIG5hbWVzIGZvciB0aGUgdXNlci1kZWZpbmVkIG1ldGFk YXRhLiBFYWNoCisgIC8vIGVudHJ5IG11c3QgbWFwIGFuIHVuaXF1ZSBzdHJpbmcgdG8gYW4gdW5p cXVlIG51bWJlciBiZXR3ZWVuIDEwMjQKKyAgLy8gYW5kIDY1NTM1LiBSZXNlcnZlZCB2YWx1ZXM6 CisgIC8vICAtIFRoZSBPcnRoYW5jIHdob2xlLXNsaWRlIGltYWdpbmcgcGx1Z2luIHVzZXMgbWV0 YWRhdGEgNDIwMAorICAiVXNlck1ldGFkYXRhIiA6IHsKKyAgICAvLyAiU2FtcGxlIiA6IDEwMjQK KyAgfSwKKworICAvLyBEaWN0aW9uYXJ5IG9mIHN5bWJvbGljIG5hbWVzIGZvciB0aGUgdXNlci1k ZWZpbmVkIHR5cGVzIG9mCisgIC8vIGF0dGFjaGVkIGZpbGVzLiBFYWNoIGVudHJ5IG11c3QgbWFw IGFuIHVuaXF1ZSBzdHJpbmcgdG8gYW4gdW5pcXVlCisgIC8vIG51bWJlciBiZXR3ZWVuIDEwMjQg YW5kIDY1NTM1LiBPcHRpb25hbGx5LCBhIHNlY29uZCBhcmd1bWVudCBjYW4KKyAgLy8gcHJvdmlk ZWQgdG8gc3BlY2lmeSBhIE1JTUUgY29udGVudCB0eXBlIGZvciB0aGUgYXR0YWNobWVudC4KKyAg IlVzZXJDb250ZW50VHlwZSIgOiB7CisgICAgLy8gInNhbXBsZSIgOiAxMDI0CisgICAgLy8gInNh bXBsZTIiIDogWyAxMDI1LCAiYXBwbGljYXRpb24vcGRmIiBdCisgIH0sCisKKyAgLy8gTnVtYmVy IG9mIHNlY29uZHMgd2l0aG91dCByZWNlaXZpbmcgYW55IGluc3RhbmNlIGJlZm9yZSBhCisgIC8v IHBhdGllbnQsIGEgc3R1ZHkgb3IgYSBzZXJpZXMgaXMgY29uc2lkZXJlZCBhcyBzdGFibGUuCisg ICJTdGFibGVBZ2UiIDogNjAsCisKKyAgLy8gQnkgZGVmYXVsdCwgT3J0aGFuYyBjb21wYXJlcyBB RVQgKEFwcGxpY2F0aW9uIEVudGl0eSBUaXRsZXMpIGluIGEKKyAgLy8gY2FzZS1pbnNlbnNpdGl2 ZSB3YXkuIFNldHRpbmcgdGhpcyBvcHRpb24gdG8gInRydWUiIHdpbGwgZW5hYmxlCisgIC8vIGNh c2Utc2Vuc2l0aXZlIG1hdGNoaW5nLgorICAiU3RyaWN0QWV0Q29tcGFyaXNvbiIgOiBmYWxzZSwK KworICAvLyBXaGVuIHRoZSBmb2xsb3dpbmcgb3B0aW9uIGlzICJ0cnVlIiwgdGhlIE1ENSBvZiB0 aGUgRElDT00gZmlsZXMKKyAgLy8gd2lsbCBiZSBjb21wdXRlZCBhbmQgc3RvcmVkIGluIHRoZSBP cnRoYW5jIGRhdGFiYXNlLiBUaGlzCisgIC8vIGluZm9ybWF0aW9uIGNhbiBiZSB1c2VkIHRvIGRl dGVjdCBkaXNrIGNvcnJ1cHRpb24sIGF0IHRoZSBwcmljZQorICAvLyBvZiBhIHNtYWxsIHBlcmZv cm1hbmNlIG92ZXJoZWFkLgorICAiU3RvcmVNRDVGb3JBdHRhY2htZW50cyIgOiB0cnVlLAorCisg IC8vIFRoZSBtYXhpbXVtIG51bWJlciBvZiByZXN1bHRzIGZvciBhIHNpbmdsZSBDLUZJTkQgcmVx dWVzdCBhdCB0aGUKKyAgLy8gUGF0aWVudCwgU3R1ZHkgb3IgU2VyaWVzIGxldmVsLiBTZXR0aW5n IHRoaXMgb3B0aW9uIHRvICIwIiBtZWFucworICAvLyBubyBsaW1pdC4KKyAgIkxpbWl0RmluZFJl c3VsdHMiIDogMCwKKworICAvLyBUaGUgbWF4aW11bSBudW1iZXIgb2YgcmVzdWx0cyBmb3IgYSBz aW5nbGUgQy1GSU5EIHJlcXVlc3QgYXQgdGhlCisgIC8vIEluc3RhbmNlIGxldmVsLiBTZXR0aW5n IHRoaXMgb3B0aW9uIHRvICIwIiBtZWFucyBubyBsaW1pdC4KKyAgIkxpbWl0RmluZEluc3RhbmNl cyIgOiAwLAorCisgIC8vIElmIHRoaXMgb3B0aW9uIGlzIHNldCB0byAidHJ1ZSIgKGRlZmF1bHQg YmVoYXZpb3IgdW50aWwgT3J0aGFuYworICAvLyAxLjMuMiksIE9ydGhhbmMgd2lsbCBsb2cgdGhl IHJlc291cmNlcyB0aGF0IGFyZSBleHBvcnRlZCB0byBvdGhlcgorICAvLyBESUNPTSBtb2RhbGl0 aWVzIG9yIE9ydGhhbmMgcGVlcnMsIGluc2lkZSB0aGUgVVJJCisgIC8vICIvZXhwb3J0cyIuIFNl dHRpbmcgdGhpcyBvcHRpb24gdG8gImZhbHNlIiBpcyB1c2VmdWwgdG8gcHJldmVudAorICAvLyB0 aGUgaW5kZXggdG8gZ3JvdyBpbmRlZmluaXRlbHkgaW4gYXV0by1yb3V0aW5nIHRhc2tzICh0aGlz IGlzIHRoZQorICAvLyBkZWZhdWx0IGJlaGF2aW9yIHNpbmNlIE9ydGhhbmMgMS40LjApLgorICAi TG9nRXhwb3J0ZWRSZXNvdXJjZXMiIDogZmFsc2UsCisKKyAgLy8gRW5hYmxlIG9yIGRpc2FibGUg SFRUUCBLZWVwLUFsaXZlIChwZXJzaXN0ZW50IEhUVFAKKyAgLy8gY29ubmVjdGlvbnMpLiBTZXR0 aW5nIHRoaXMgb3B0aW9uIHRvICJ0cnVlIiBwcmV2ZW50cyBPcnRoYW5jCisgIC8vIGlzc3VlICMz MiAoIkh0dHBTZXJ2ZXIgZG9lcyBub3Qgc3VwcG9ydCBtdWx0aXBsZSBIVFRQIHJlcXVlc3RzIGlu CisgIC8vIHRoZSBzYW1lIFRDUCBzdHJlYW0iKSwgYnV0IGNhbiBwb3NzaWJseSBzbG93IGRvd24g SFRUUCBjbGllbnRzCisgIC8vIHRoYXQgZG8gbm90IHN1cHBvcnQgcGVyc2lzdGVudCBjb25uZWN0 aW9ucy4gVGhlIGRlZmF1bHQgYmVoYXZpb3IKKyAgLy8gdXNlZCB0byBiZSAiZmFsc2UiIGluIE9y dGhhbmMgPD0gMS41LjEuIFNldHRpbmcgdGhpcyBvcHRpb24gdG8KKyAgLy8gImZhbHNlIiBpcyBh bHNvIHJlY29tbWVuZGVkIGlmIE9ydGhhbmMgaXMgY29tcGlsZWQgYWdhaW5zdAorICAvLyBNb25n b29zZS4KKyAgIktlZXBBbGl2ZSIgOiB0cnVlLAorCisgIC8vIEVuYWJsZSBvciBkaXNhYmxlIE5h Z2xlJ3MgYWxnb3JpdGhtLiBPbmx5IHRha2VuIGludG8KKyAgLy8gY29uc2lkZXJhdGlvbiBpZiBP cnRoYW5jIGlzIGNvbXBpbGVkIHRvIHVzZSBDaXZldFdlYi4gRXhwZXJpbWVudHMKKyAgLy8gc2hv dyB0aGF0IGJlc3QgcGVyZm9ybWFuY2UgY2FuIGJlIG9idGFpbmVkIGJ5IHNldHRpbmcgYm90aAor ICAvLyAiS2VlcEFsaXZlIiBhbmQgIlRjcE5vRGVsYXkiIHRvICJ0cnVlIi4gQmV3YXJlIGhvd2V2 ZXIgb2YKKyAgLy8gY2F2ZWF0czogaHR0cHM6Ly9la2xpdHprZS5vcmcvdGhlLWNhdmVhdHMtb2Yt dGNwLW5vZGVsYXkKKyAgIlRjcE5vRGVsYXkiIDogdHJ1ZSwKKworICAvLyBOdW1iZXIgb2YgdGhy ZWFkcyB0aGF0IGFyZSB1c2VkIGJ5IHRoZSBlbWJlZGRlZCBIVFRQIHNlcnZlci4KKyAgIkh0dHBU aHJlYWRzQ291bnQiIDogNTAsCisKKyAgLy8gSWYgdGhpcyBvcHRpb24gaXMgc2V0IHRvICJmYWxz ZSIsIE9ydGhhbmMgd2lsbCBydW4gaW4gaW5kZXgtb25seQorICAvLyBtb2RlLiBUaGUgRElDT00g ZmlsZXMgd2lsbCBub3QgYmUgc3RvcmVkIG9uIHRoZSBkcml2ZTogT3J0aGFuYworICAvLyBvbmx5 IGluZGV4ZXMgdGhlIHNtYWxsIHN1YnNldCBvZiB0aGUgc28tY2FsbGVkICJtYWluIERJQ09NIHRh Z3MiCisgIC8vIGluIGl0cyBTUUwgZGF0YWJhc2UuIE5vdGUgdGhhdCB0aGlzIG9wdGlvbiBtaWdo dCBwcmV2ZW50IHRoZQorICAvLyB1cGdyYWRlIHRvIG5ld2VyIHZlcnNpb25zIG9mIE9ydGhhbmMu IEFsc28gbm90ZSB0aGF0IHRoaXMKKyAgLy8gYmVoYXZpb3IgbWlnaHQgbm90IGJlIGF2YWlsYWJs ZSB3aXRoIHRoZSBzdG9yYWdlIGFyZWEgcGx1Z2lucy4KKyAgIlN0b3JlRGljb20iIDogdHJ1ZSwK KworICAvLyBESUNPTSBhc3NvY2lhdGlvbnMgaW5pdGlhdGVkIGJ5IEx1YSBzY3JpcHRzIGFyZSBr ZXB0IG9wZW4gYXMgbG9uZworICAvLyBhcyBuZXcgRElDT00gY29tbWFuZHMgYXJlIGlzc3VlZC4g VGhpcyBvcHRpb24gc2V0cyB0aGUgbnVtYmVyIG9mCisgIC8vIHNlY29uZHMgb2YgaW5hY3Rpdml0 eSB0byB3YWl0IGJlZm9yZSBhdXRvbWF0aWNhbGx5IGNsb3NpbmcgYQorICAvLyBESUNPTSBhc3Nv Y2lhdGlvbiB1c2VkIGJ5IEx1YS4gSWYgc2V0IHRvIDAsIHRoZSBjb25uZWN0aW9uIGlzCisgIC8v IGNsb3NlZCBpbW1lZGlhdGVseS4gVGhpcyBvcHRpb24gaXMgb25seSB1c2VkIGluIEx1YSBzY3Jp cHRzLgorICAiRGljb21Bc3NvY2lhdGlvbkNsb3NlRGVsYXkiIDogNSwKKworICAvLyBNYXhpbXVt IG51bWJlciBvZiBxdWVyeS9yZXRyaWV2ZSBESUNPTSByZXF1ZXN0cyB0aGF0IGFyZQorICAvLyBt YWludGFpbmVkIGJ5IE9ydGhhbmMuIFRoZSBsZWFzdCByZWNlbnRseSB1c2VkIHJlcXVlc3RzIGdl dAorICAvLyBkZWxldGVkIGFzIG5ldyByZXF1ZXN0cyBhcmUgaXNzdWVkLgorICAiUXVlcnlSZXRy aWV2ZVNpemUiIDogMTAwLAorCisgIC8vIFdoZW4gaGFuZGxpbmcgYSBDLUZJTkQgU0NQIHJlcXVl c3QsIHNldHRpbmcgdGhpcyBmbGFnIHRvICJ0cnVlIgorICAvLyB3aWxsIGVuYWJsZSBjYXNlLXNl bnNpdGl2ZSBtYXRjaCBmb3IgUE4gdmFsdWUgcmVwcmVzZW50YXRpb24KKyAgLy8gKHN1Y2ggYXMg UGF0aWVudE5hbWUpLiBCeSBkZWZhdWx0LCB0aGUgc2VhcmNoIGlzCisgIC8vIGNhc2UtaW5zZW5z aXRpdmUsIHdoaWNoIGRvZXMgbm90IGZvbGxvdyB0aGUgRElDT00gc3RhbmRhcmQuCisgICJDYXNl U2Vuc2l0aXZlUE4iIDogZmFsc2UsCisKKyAgLy8gQ29uZmlndXJlIFBLQ1MjMTEgdG8gdXNlIGhh cmR3YXJlIHNlY3VyaXR5IG1vZHVsZXMgKEhTTSkgYW5kCisgIC8vIHNtYXJ0IGNhcmRzIHdoZW4g Y2Fycnlpbmcgb24gSFRUUFMgY2xpZW50IGF1dGhlbnRpY2F0aW9uLgorICAvKioKKyAgICAgIlBr Y3MxMSIgOiB7CisgICAgICAgIk1vZHVsZSIgOiAiL3Vzci9sb2NhbC9saWIvbGliYmVpZHBrY3Mx MS5zbyIsCisgICAgICAgIk1vZHVsZSIgOiAiQzovV2luZG93cy9TeXN0ZW0zMi9iZWlkcGtjczEx LmRsbCIsCisgICAgICAgIlBpbiIgOiAiMTIzNCIsCisgICAgICAgIlZlcmJvc2UiIDogdHJ1ZQor ICAgICB9CisgICAqKi8KKyAgCisgIC8vIElmIHNldCB0byAiZmFsc2UiLCBPcnRoYW5jIHdpbGwg bm90IGxvYWQgaXRzIGRlZmF1bHQgZGljdGlvbmFyeQorICAvLyBvZiBwcml2YXRlIHRhZ3MuIFRo aXMgbWlnaHQgYmUgbmVjZXNzYXJ5IGlmIHlvdSBjYW5ub3QgaW1wb3J0IGEKKyAgLy8gRElDT00g ZmlsZSBlbmNvZGVkIHVzaW5nIHRoZSBJbXBsaWNpdCBWUiBFbmRpYW4gdHJhbnNmZXIgc3ludGF4 LAorICAvLyBhbmQgY29udGFpbmluZyBwcml2YXRlIHRhZ3M6IFN1Y2ggYW4gaW1wb3J0IGVycm9y IG1pZ2h0IHN0ZW0gZnJvbQorICAvLyBhIGJhZCBkaWN0aW9uYXJ5LiBZb3UgY2FuIHN0aWxsIGxp c3QgeW91ciBwcml2YXRlIHRhZ3Mgb2YKKyAgLy8gaW50ZXJlc3QgaW4gdGhlICJEaWN0aW9uYXJ5 IiBjb25maWd1cmF0aW9uIG9wdGlvbiBiZWxvdy4KKyAgIkxvYWRQcml2YXRlRGljdGlvbmFyeSIg OiB0cnVlLAorCisgIC8vIExvY2FsZSB0byBiZSB1c2VkIGJ5IE9ydGhhbmMuIEN1cnJlbnRseSwg b25seSB1c2VkIGlmIGNvbXBhcmluZworICAvLyBzdHJpbmdzIGluIGEgY2FzZS1pbnNlbnNpdGl2 ZSB3YXkuIEl0IHNob3VsZCBiZSBzYWZlIHRvIGtlZXAgdGhpcworICAvLyB2YWx1ZSB1bmRlZmlu ZWQsIHdoaWNoIGxldHMgT3J0aGFuYyBhdXRvZGV0ZWN0IHRoZSBzdWl0YWJsZSBsb2NhbGUuCisg IC8vICJMb2NhbGUiIDogImVuX1VTLlVURi04IiwKKworICAvLyBSZWdpc3RlciBhIG5ldyB0YWcg aW4gdGhlIGRpY3Rpb25hcnkgb2YgRElDT00gdGFncyB0aGF0IGFyZSBrbm93bgorICAvLyB0byBP cnRoYW5jLiBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSB0YWcgKGZvcm1hdHRlZCBhcyAyCisg IC8vIGhleGFkZWNpbWFsIG51bWJlcnMpLCB0aGUgdmFsdWUgcmVwcmVzZW50YXRpb24gKDIgdXBj YXNlCisgIC8vIGNoYXJhY3RlcnMpLCBhIG5pY2tuYW1lIGZvciB0aGUgdGFnLCBwb3NzaWJseSB0 aGUgbWluaW11bQorICAvLyBtdWx0aXBsaWNpdHkgKD4gMCB3aXRoIGRlZmF1bHRzIHRvIDEpLCBw b3NzaWJseSB0aGUgbWF4aW11bQorICAvLyBtdWx0aXBsaWNpdHkgKDAgbWVhbnMgYXJiaXRyYXJ5 IG11bHRpcGxpY2l0eSwgZGVmYXVsdHMgdG8gMSksIGFuZAorICAvLyBwb3NzaWJseSB0aGUgUHJp dmF0ZSBDcmVhdG9yIChmb3IgcHJpdmF0ZSB0YWdzKS4KKyAgLy8gTm90ZTogRm9yIHByaXZhdGUg dGFncywgeW91IHNob3VsZCBvbmx5IGRlY2xhcmUgdGhlIGxvd2VyIDggYml0cworICAvLyBvZiB0 aGUgZWxlbWVudCBzaW5jZSB0aGUgaGlnaGVyIDggYml0cyBtYXkgdmFyeSBmcm9tIG9uZSBmaWxl IHRvCisgIC8vIHRoZSBvdGhlci4KKyAgIkRpY3Rpb25hcnkiIDogeworICAgIC8vICIwMDE0LDEw MjAiIDogWyAiREEiLCAiVmFsaWRhdGlvbkV4cGlyeURhdGUiLCAxLCAxIF0KKyAgICAvLyAiMDBl MSxjMiIgOiBbICJVSSIsICJQRVQtQ1QgTXVsdGkgTW9kYWxpdHkgTmFtZSIsIDEsIDEsICJFTFND SU5UMSIgXQorICAgIC8vICI3MDUzLDAzIiA6IFsgIlNUIiwgIk9yaWdpbmFsIEltYWdlIEZpbGVu YW1lIiwgMSwgMSwgIlBoaWxpcHMgUEVUIFByaXZhdGUgR3JvdXAiIF0KKyAgICAvLyAiMjAwMSw1 ZiIgOiBbICJTUSIsICJTdGFja1NlcXVlbmNlIiwgMSwgMSwgIlBoaWxpcHMgSW1hZ2luZyBERCAw MDEiIF0KKyAgfSwKKworICAvLyBMb2FkIGEgc2V0IG9mIGV4dGVybmFsIERJQ09NIGRpY3Rpb25h cmllcyBpbiBvcmRlciB0byByZXBsYWNlIHRoZQorICAvLyBkZWZhdWx0IGRpY3Rpb25hcmllcy4g VGhpcyBvcHRpb24gbXVzdCBjb250YWluIGEgc2V0IG9mIGZpbGVzIGluCisgIC8vIHRoZSBEQ01U SyBmb3JtYXQuIFRoZSBvcmRlciBvZiB0aGUgZGljdGlvbmFyaWVzICppcyoKKyAgLy8gaW1wb3J0 YW50LiBUaGlzIG9wdGlvbiBjYW4gYmUgdXNlZCB0byB0dXJuIE9ydGhhbmMgaW50byBhIERJQ09O REUKKyAgLy8gc2VydmVyLiAobmV3IGluIE9ydGhhbmMgMS45LjQpCisgIC8qKgorICAgICAiRXh0 ZXJuYWxEaWN0aW9uYXJpZXMiIDogWworICAgICAiL3Vzci9zaGFyZS9kY210ay9kaWNvbS5kaWMi LAorICAgICAiL3Vzci9zaGFyZS9kY210ay9kaWNvbmRlLmRpYyIKKyAgICAgXQorICAqKi8KKwor ICAvLyBXaGV0aGVyIHRvIHJ1biBESUNPTSBDLU1PVkUgb3BlcmF0aW9ucyBzeW5jaHJvbm91c2x5 LiBJZiBzZXQgdG8KKyAgLy8gImZhbHNlIiAoYXN5bmNocm9ub3VzIG1vZGUpLCBlYWNoIGluY29t aW5nIEMtTU9WRSByZXF1ZXN0IHJlc3VsdHMKKyAgLy8gaW4gdGhlIGNyZWF0aW9uIG9mIGEgbmV3 IGJhY2tncm91bmQgam9iLiBVcCB0byBPcnRoYW5jIDEuMy4yLCB0aGUKKyAgLy8gaW1wbGljaXQg YmVoYXZpb3Igd2FzIHRvIHVzZSBzeW5jaHJvbm91cyBDLU1PVkUgKCJ0cnVlIikuIEJldHdlZW4K KyAgLy8gT3J0aGFuYyAxLjQuMCBhbmQgMS40LjIsIHRoZSBkZWZhdWx0IGJlaGF2aW9yIHdhcyBz ZXQgdG8KKyAgLy8gYXN5bmNocm9ub3VzIEMtTU9WRSAoImZhbHNlIikuIFNpbmNlIE9ydGhhbmMg MS41LjAsIHRoZSBkZWZhdWx0CisgIC8vIGJlaGF2aW9yIGlzIGJhY2sgdG8gc3luY2hyb25vdXMg Qy1NT1ZFICgidHJ1ZSIsIHdoaWNoIGVuc3VyZXMKKyAgLy8gYmFja3dhcmQgY29tcGF0aWJpbGl0 eSB3aXRoIE9ydGhhbmMgPD0gMS4zLjIpLgorICAiU3luY2hyb25vdXNDTW92ZSIgOiB0cnVlLAor CisgIC8vIE1heGltdW0gbnVtYmVyIG9mIGNvbXBsZXRlZCBqb2JzIHRoYXQgYXJlIGtlcHQgaW4g bWVtb3J5LiBBCisgIC8vIHByb2Nlc3Npbmcgam9iIGlzIGNvbnNpZGVyZWQgYXMgY29tcGxldGUg b25jZSBpdCBpcyB0YWdnZWQgYXMKKyAgLy8gIlN1Y2Nlc3MiIG9yICJGYWlsdXJlIi4gU2luY2Ug T3J0aGFuYyAxLjUuMCwgYSB2YWx1ZSBvZiAiMCIKKyAgLy8gaW5kaWNhdGVzIHRvIGtlZXAgbm8g am9iIGluIG1lbW9yeSAoaS5lLiBqb2JzIGFyZSByZW1vdmVkIGZyb20KKyAgLy8gdGhlIGhpc3Rv cnkgYXMgc29vbiBhcyB0aGV5IGFyZSBjb21wbGV0ZWQpLCB3aGljaCBwcmV2ZW50cyB0aGUKKyAg Ly8gdXNlIG9mIHNvbWUgZmVhdHVyZXMgb2YgT3J0aGFuYyAodHlwaWNhbGx5LCBzeW5jaHJvbm91 cyBtb2RlIGluCisgIC8vIFJFU1QgQVBJKSBhbmQgc2hvdWxkIGJlIGF2b2lkZWQgZm9yIG5vbi1k ZXZlbG9wZXJzLgorICAiSm9ic0hpc3RvcnlTaXplIiA6IDEwLAorCisgIC8vIFdoZXRoZXIgdG8g c2F2ZSB0aGUgam9icyBpbnRvIHRoZSBPcnRoYW5jIGRhdGFiYXNlLiBJZiB0aGlzCisgIC8vIG9w dGlvbiBpcyBzZXQgdG8gInRydWUiLCB0aGUgcGVuZGluZy9ydW5uaW5nL2NvbXBsZXRlZCBqb2Jz IGFyZQorICAvLyBhdXRvbWF0aWNhbGx5IHJlbG9hZGVkIGZyb20gdGhlIGRhdGFiYXNlIGlmIE9y dGhhbmMgaXMgc3RvcHBlZAorICAvLyB0aGVuIHJlc3RhcnRlZCAoZXhjZXB0IGlmIHRoZSAiLS1u by1qb2JzIiBjb21tYW5kLWxpbmUgYXJndW1lbnQKKyAgLy8gaXMgc3BlY2lmaWVkKS4gVGhpcyBv cHRpb24gc2hvdWxkIGJlIHNldCB0byAiZmFsc2UiIGlmIG11bHRpcGxlCisgIC8vIE9ydGhhbmMg c2VydmVycyBhcmUgdXNpbmcgdGhlIHNhbWUgZGF0YWJhc2UgKGUuZy4gaWYgUG9zdGdyZVNRTAor ICAvLyBvciBNYXJpYURCL015U1FMIGlzIHVzZWQpLgorICAiU2F2ZUpvYnMiIDogdHJ1ZSwKKwor ICAvLyBTcGVjaWZpZXMgaG93IE9ydGhhbmMgcmVhY3RzIHdoZW4gaXQgcmVjZWl2ZXMgYSBESUNP TSBpbnN0YW5jZQorICAvLyB3aG9zZSBTT1BJbnN0YW5jZVVJRCBpcyBhbHJlYWR5IHN0b3JlZC4g SWYgc2V0IHRvICJ0cnVlIiwgdGhlIG5ldworICAvLyBpbnN0YW5jZSByZXBsYWNlcyB0aGUgb2xk IG9uZS4gSWYgc2V0IHRvICJmYWxzZSIsIHRoZSBuZXcKKyAgLy8gaW5zdGFuY2UgaXMgZGlzY2Fy ZGVkIGFuZCB0aGUgb2xkIG9uZSBpcyBrZXB0LiBVcCB0byBPcnRoYW5jCisgIC8vIDEuNC4xLCB0 aGUgaW1wbGljaXQgYmVoYXZpb3IgY29ycmVzcG9uZGVkIHRvICJmYWxzZSIuCisgICJPdmVyd3Jp dGVJbnN0YW5jZXMiIDogZmFsc2UsCisKKyAgLy8gTWF4aW11bSBudW1iZXIgb2YgWklQL21lZGlh IGFyY2hpdmVzIHRoYXQgYXJlIG1haW50YWluZWQgYnkKKyAgLy8gT3J0aGFuYywgYXMgYSByZXNw b25zZSB0byB0aGUgYXN5bmNocm9ub3VzIGNyZWF0aW9uIG9mIGFyY2hpdmVzLgorICAvLyBUaGUg bGVhc3QgcmVjZW50bHkgdXNlZCBhcmNoaXZlcyBnZXQgZGVsZXRlZCBhcyBuZXcgYXJjaGl2ZXMg YXJlCisgIC8vIGdlbmVyYXRlZC4gVGhpcyBvcHRpb24gd2FzIGludHJvZHVjZWQgaW4gT3J0aGFu YyAxLjUuMCwgYW5kIGhhcworICAvLyBubyBlZmZlY3Qgb24gdGhlIHN5bmNocm9ub3VzIGdlbmVy YXRpb24gb2YgYXJjaGl2ZXMuCisgICJNZWRpYUFyY2hpdmVTaXplIiA6IDEsCisKKyAgLy8gUGVy Zm9ybWFuY2Ugc2V0dGluZyB0byBzcGVjaWZ5IGhvdyBPcnRoYW5jIGFjY2Vzc2VzIHRoZSBzdG9y YWdlCisgIC8vIGFyZWEgZHVyaW5nIGZpbmQgb3BlcmF0aW9ucyAoQy1GSU5ELCAvdG9vbHMvZmlu ZCBBUEkgcm91dGUgYW5kCisgIC8vIFFJRE8tUlMgaW4gZGljb20td2ViKS4gVGhyZWUgbW9kZXMg YXJlIGF2YWlsYWJsZTogKDEpICJBbHdheXMiCisgIC8vIGFsbG93cyBPcnRoYW5jIHRvIHJlYWQg dGhlIHN0b3JhZ2UgYXJlYSBhcyBzb29uIGFzIGl0IG5lZWRzIGFuCisgIC8vIGluZm9ybWF0aW9u IHRoYXQgaXMgbm90IHByZXNlbnQgaW4gaXRzIGRhdGFiYXNlIChzbG93ZXN0IG1vZGUpLAorICAv LyAoMikgIk5ldmVyIiBwcmV2ZW50cyBPcnRoYW5jIGZyb20gYWNjZXNzaW5nIHRoZSBzdG9yYWdl IGFyZWEsIGFuZAorICAvLyBtYWtlcyBpdCB1c2VzIGV4Y2x1c2l2ZWx5IGl0cyBkYXRhYmFzZSAo ZmFzdGVzdCBtb2RlKSwgYW5kICgzKQorICAvLyAiQW5zd2VycyIgYWxsb3dzIE9ydGhhbmMgdG8g cmVhZCB0aGUgc3RvcmFnZSBhcmVhIHRvIGdlbmVyYXRlIGl0cworICAvLyBhbnN3ZXJzLCBidXQg bm90IHRvIGZpbHRlciB0aGUgRElDT00gcmVzb3VyY2VzIChiYWxhbmNlIGJldHdlZW4KKyAgLy8g dGhlIHR3byBtb2RlcykuIEJ5IGRlZmF1bHQsIHRoZSBtb2RlIGlzICJBbHdheXMiLCB3aGljaAor ICAvLyBjb3JyZXNwb25kcyB0byB0aGUgYmVoYXZpb3Igb2YgT3J0aGFuYyA8PSAxLjUuMC4KKyAg IlN0b3JhZ2VBY2Nlc3NPbkZpbmQiIDogIkFsd2F5cyIsCisKKyAgLy8gV2hldGhlciBPcnRoYW5j IG1vbml0b3JzIGl0cyBtZXRyaWNzIChuZXcgaW4gT3J0aGFuYyAxLjUuNCkuIElmCisgIC8vIHNl dCB0byAidHJ1ZSIsIHRoZSBtZXRyaWNzIGNhbiBiZSByZXRyaWV2ZWQgYXQKKyAgLy8gIi90b29s cy9tZXRyaWNzLXByb21ldGhldXMiIGZvcm1ldHRlZCB1c2luZyB0aGUgUHJvbWV0aGV1cworICAv LyB0ZXh0LWJhc2VkIGV4cG9zaXRpb24gZm9ybWF0LgorICAiTWV0cmljc0VuYWJsZWQiIDogdHJ1 ZSwKKworICAvLyBXaGV0aGVyIGNhbGxzIHRvIFVSSSAiL3Rvb2xzL2V4ZWN1dGUtc2NyaXB0IiBp cyBlbmFibGVkLiBTdGFydGluZworICAvLyB3aXRoIE9ydGhhbmMgMS41LjgsIHRoaXMgVVJJIGlz IGRpc2FibGVkIGJ5IGRlZmF1bHQgZm9yIHNlY3VyaXR5LgorICAiRXhlY3V0ZUx1YUVuYWJsZWQi IDogZmFsc2UsCisKKyAgLy8gU2V0IHRoZSB0aW1lb3V0IHdoaWxlIHNlcnZpbmcgSFRUUCByZXF1 ZXN0cyBieSB0aGUgZW1iZWRkZWQgV2ViCisgIC8vIHNlcnZlciwgaW4gc2Vjb25kcy4gVGhpcyBj b3JyZXNwb25kcyB0byBvcHRpb24KKyAgLy8gInJlcXVlc3RfdGltZW91dF9tcyIgb2YgTW9uZ29v c2UvQ2l2ZXR3ZWIuIEl0IHdpbGwgc2V0IHRoZSBzb2NrZXQKKyAgLy8gb3B0aW9ucyAiU09fUkNW VElNRU8iIGFuZCAiU09fU05EVElNRU8iIHRvIHRoZSBzcGVjaWZpZWQgdmFsdWUuCisgICJIdHRw UmVxdWVzdFRpbWVvdXQiIDogMzAsCisKKyAgLy8gU2V0IHRoZSBkZWZhdWx0IHByaXZhdGUgY3Jl YXRvciB0aGF0IGlzIHVzZWQgYnkgT3J0aGFuYyB3aGVuIGl0CisgIC8vIGxvb2tzIGZvciBhIHBy aXZhdGUgdGFnIGluIGl0cyBkaWN0aW9uYXJ5IChjZi4gIkRpY3Rpb25hcnkiCisgIC8vIG9wdGlv biksIG9yIHdoZW4gaXQgY3JlYXRlcy9tb2RpZmllcyBhIERJQ09NIGZpbGUgKG5ldyBpbiBPcnRo YW5jIDEuNi4wKS4KKyAgIkRlZmF1bHRQcml2YXRlQ3JlYXRvciIgOiAiIiwKKworICAvLyBNYXhp bXVtIG51bWJlciBvZiBzdG9yYWdlIGNvbW1pdG1lbnQgcmVwb3J0cyAoaS5lLiByZWNlaXZlZCBm cm9tCisgIC8vIHJlbW90ZSBtb2RhbGl0aWVzKSB0byBiZSBrZXB0IGluIG1lbW9yeSAobmV3IGlu IE9ydGhhbmMgMS42LjApLgorICAiU3RvcmFnZUNvbW1pdG1lbnRSZXBvcnRzU2l6ZSIgOiAxMDAs CisKKyAgLy8gV2hldGhlciBPcnRoYW5jIHRyYW5zY29kZXMgRElDT00gZmlsZXMgdG8gYW4gdW5j b21wcmVzc2VkCisgIC8vIHRyYW5zZmVyIHN5bnRheCBvdmVyIHRoZSBESUNPTSBwcm90b2NvbCwg aWYgdGhlIHJlbW90ZSBtb2RhbGl0eQorICAvLyBkb2VzIG5vdCBzdXBwb3J0IGNvbXByZXNzZWQg dHJhbnNmZXIgc3ludGF4ZXMgKG5ldyBpbiBPcnRoYW5jIDEuNy4wKS4KKyAgIlRyYW5zY29kZURp Y29tUHJvdG9jb2wiIDogdHJ1ZSwKKworICAvLyBJZiBzb21lIHBsdWdpbiB0byBkZWNvZGUvdHJh bnNjb2RlIERJQ09NIGluc3RhbmNlcyBpcyBpbnN0YWxsZWQsCisgIC8vIHRoaXMgb3B0aW9uIHNw ZWNpZmllcyB3aGV0aGVyIHRoZSBidWlsdC1pbiBkZWNvZGVyL3RyYW5zY29kZXIgb2YKKyAgLy8g T3J0aGFuYyAodGhhdCB1c2VzIERDTVRLKSBpcyBhcHBsaWVkIGJlZm9yZSBvciBhZnRlciB0aGUg cGx1Z2lucywKKyAgLy8gb3IgaXMgbm90IGFwcGxpZWQgYXQgYWxsIChuZXcgaW4gT3J0aGFuYyAx LjcuMCkuIFRoZSBhbGxvd2VkCisgIC8vIHZhbHVlcyBmb3IgdGhpcyBvcHRpb24gYXJlICJBZnRl ciIgKGRlZmF1bHQgdmFsdWUsIGNvcnJlc3BvbmRpbmcKKyAgLy8gdG8gdGhlIGJlaGF2aW9yIG9m IE9ydGhhbmMgPD0gMS42LjEpLCAiQmVmb3JlIiwgb3IgIkRpc2FibGVkIi4KKyAgIkJ1aWx0aW5E ZWNvZGVyVHJhbnNjb2Rlck9yZGVyIiA6ICJBZnRlciIsCisKKyAgLy8gSWYgdGhpcyBvcHRpb24g aXMgc2V0LCBPcnRoYW5jIHdpbGwgdHJhbnNwYXJlbnRseSB0cmFuc2NvZGUgYW55CisgIC8vIGlu Y29taW5nIERJQ09NIGluc3RhbmNlIHRvIHRoZSBnaXZlbiB0cmFuc2ZlciBzeW50YXggYmVmb3Jl CisgIC8vIHN0b3JpbmcgaXQgaW50byBpdHMgZGF0YWJhc2UuIEJld2FyZSB0aGF0IHRoaXMgbWln aHQgcmVzdWx0IGluCisgIC8vIGhpZ2ggQ1BVIHVzYWdlIChpZiB0cmFuc2NvZGluZyB0byBzb21l IGNvbXByZXNzZWQgdHJhbnNmZXIKKyAgLy8gc3ludGF4KSwgb3IgaW4gaGlnaGVyIGRpc2sgY29u c3VtcHRpb24gKGlmIHRyYW5zY29kaW5nIHRvIGFuCisgIC8vIHVuY29tcHJlc3NlZCBzeW50YXgp LiBBbHNvLCBiZXdhcmUgdGhhdCB0cmFuc2NvZGluZyB0byBhIHRyYW5zZmVyCisgIC8vIHN5bnRh eCB3aXRoIGxvc3N5IGNvbXByZXNzaW9uIChub3RhYmx5IEpQRUcpIHdpbGwgY2hhbmdlIHRoZQor ICAvLyAiU09QSW5zdGFuY2VVSUQiIERJQ09NIHRhZywgYW5kIHRodXMgdGhlIE9ydGhhbmMgaWRl bnRpZmllciBhdAorICAvLyB0aGUgaW5zdGFuY2UgbGV2ZWwsIHdoaWNoIG1pZ2h0IGJyZWFrIGV4 dGVybmFsIHdvcmtmbG93LgorICAvKioKKyAgICAgIkluZ2VzdFRyYW5zY29kaW5nIiA6ICIxLjIu ODQwLjEwMDA4LjEuMiIsCisgICoqLworCisgIC8vIFdoZXRoZXIgaW5nZXN0IHRyYW5zY29kaW5n IGlzIGFwcGxpZWQgdG8gaW5jb21pbmcgRElDT00gaW5zdGFuY2VzCisgIC8vIHRoYXQgaGF2ZSBh biB1bmNvbXByZXNzZWQgdHJhbnNmZXIgc3ludGF4LCBpLmUuIExpdHRsZSBFbmRpYW4KKyAgLy8g SW1wbGljaXQsIExpdHRsZSBFbmRpYW4gRXhwbGljaXQgb3IgQmlnIEVuZGlhbiBFeHBsaWNpdCAo bmV3IGluCisgIC8vIE9ydGhhbmMgMS44LjIpLgorICAiSW5nZXN0VHJhbnNjb2RpbmdPZlVuY29t cHJlc3NlZCIgOiB0cnVlLAorICAKKyAgLy8gV2hldGhlciBpbmdlc3QgdHJhbnNjb2RpbmcgaXMg YXBwbGllZCB0byBpbmNvbWluZyBESUNPTSBpbnN0YW5jZXMKKyAgLy8gdGhhdCBoYXZlIGEgY29t cHJlc3NlZCB0cmFuc2ZlciBzeW50YXggKG5ldyBpbiBPcnRoYW5jIDEuOC4yKS4KKyAgIkluZ2Vz dFRyYW5zY29kaW5nT2ZDb21wcmVzc2VkIiA6IHRydWUsCisgIAorICAvLyBUaGUgY29tcHJlc3Np b24gbGV2ZWwgdGhhdCBpcyB1c2VkIHdoZW4gdHJhbnNjb2RpbmcgdG8gb25lIG9mIHRoZQorICAv LyBsb3NzeS9KUEVHIHRyYW5zZmVyIHN5bnRheGVzIChpbnRlZ2VyIGJldHdlZW4gMSBhbmQgMTAw KS4KKyAgIkRpY29tTG9zc3lUcmFuc2NvZGluZ1F1YWxpdHkiIDogOTAsCisKKyAgLy8gV2hldGhl ciAiZnN5bmMoKSIgaXMgY2FsbGVkIGFmdGVyIGVhY2ggd3JpdGUgdG8gdGhlIHN0b3JhZ2UgYXJl YQorICAvLyAobmV3IGluIE9ydGhhbmMgMS43LjQpLiBJZiB0aGlzIG9wdGlvbiBpcyBzZXQgdG8g InRydWUiLCBPcnRoYW5jCisgIC8vIHdpbGwgcnVuIG1vcmUgc2xvd2x5LCBidXQgdGhlIERJQ09N IGFyZSBndWFyYW50ZWVkIHRvIGJlCisgIC8vIGltbWVkaWF0ZWx5IHdyaXR0ZW4gdG8gdGhlIGRp c2suIFRoaXMgb3B0aW9uIG9ubHkgbWFrZXMgc2Vuc2UgaWYKKyAgLy8gdGhlIGJ1aWx0aW4gZmls ZXN5c3RlbSBzdG9yYWdlIGFyZWEgaXMgdXNlZC4gSXQgZGVmYXVsdHMgdG8KKyAgLy8gImZhbHNl IiBpbiBPcnRoYW5jIDw9IDEuNy4zLCBhbmQgdG8gInRydWUiIGluIE9ydGhhbmMgPj0gMS43LjQu CisgICJTeW5jU3RvcmFnZUFyZWEiIDogdHJ1ZSwKKworICAvLyBJZiBzcGVjaWZpZWQsIG9uIGNv bXBhdGlibGUgc3lzdGVtcywgY2FsbCAibWFsbG9wdChNX0FSRU5BX01BWCwKKyAgLy8gLi4uKSIg d2hpbGUgc3RhcnRpbmcgT3J0aGFuYy4gVGhpcyBoYXMgdGhlIHNhbWUgZWZmZWN0IGF0IHNldHRp bmcKKyAgLy8gdGhlIGVudmlyb25tZW50IHZhcmlhYmxlICJNQUxMT0NfQVJFTkFfTUFYIi4gVGhp cyBhdm9pZHMgbGFyZ2UKKyAgLy8gZ3Jvd3RoIGluIFJFUyBtZW1vcnkgaWYgdGhlIHRocmVhZHMg b2YgdGhlIGVtYmVkZGVkIEhUVFAgc2VydmVyCisgIC8vIGhhdmUgdG8gYWxsb2NhdGUgbGFyZ2Ug Y2h1bmtzIG9mIG1lbW9yeSAodHlwaWNhbGx5IHRoZSBjYXNlIHdpdGgKKyAgLy8gbGFyZ2UgRElD T00gZmlsZXMpLiBCeSBzZXR0aW5nICJNYWxsb2NBcmVuYU1heCIgdG8gIk4iLCB0aGVzZQorICAv LyB0aHJlYWRzIHNoYXJlICJOIiBtZW1vcnkgcG9vbHMgKGtub3duIGFzICJhcmVuYXMiKS4gU2V0 dGluZyB0aGlzCisgIC8vIG9wdGlvbiB0byAiMCIgZG9lc24ndCBjYWxsIG1hbGxvcHQoKSIsIHdo aWNoIHdhcyB0aGUgYmVoYXZpb3Igb2YKKyAgLy8gT3J0aGFuYyA8PSAxLjguMS4KKyAgIk1hbGxv Y0FyZW5hTWF4IiA6IDUsCisKKyAgLy8gRGVpZGVudGlmeS9hbm9ueW1pemUgdGhlIGNvbnRlbnRz IG9mIHRoZSBsb2dzIChub3RhYmx5IEMtRklORCwKKyAgLy8gQy1HRVQsIGFuZCBDLU1PVkUgcXVl cmllcyBzdWJtaXR0ZWQgdG8gT3J0aGFuYykgYWNjb3JkaW5nIHRvCisgIC8vIFRhYmxlIEUuMS0x IG9mIHRoZSBESUNPTSBzdGFuZGFyZCAobmV3IGluIE9ydGhhbmMgMS44LjIpCisgICJEZWlkZW50 aWZ5TG9ncyIgOiB0cnVlLAorCisgIC8vIElmICJEZWlkZW50aWZ5TG9ncyIgaXMgdHJ1ZSwgdGhp cyBzZXRzIHRoZSBESUNPTSBzdGFuZGFyZCB0bworICAvLyBmb2xsb3cgZm9yIHRoZSBkZWlkZW50 aWZpY2F0aW9uL2Fub255bWl6YXRpb24gb2YgdGhlIHF1ZXJ5CisgIC8vIGNvbnRlbnRzLiBQb3Nz aWJsZSB2YWx1ZXMgYXJlICIyMDA4IiwgIjIwMTdjIiBhbmQgIjIwMjFiIiAobmV3CisgIC8vIGlu IE9ydGhhbmMgMS44LjIpCisgICJEZWlkZW50aWZ5TG9nc0RpY29tVmVyc2lvbiIgOiAiMjAyMWIi LAorCisgIC8vIE1heGltdW0gbGVuZ3RoIG9mIHRoZSBQRFUgKFByb3RvY29sIERhdGEgVW5pdCkg aW4gdGhlIERJQ09NCisgIC8vIG5ldHdvcmsgcHJvdG9jb2wsIGV4cHJlc3NlZCBpbiBieXRlcy4g VGhpcyB2YWx1ZSBhZmZlY3RzIGJvdGgKKyAgLy8gT3J0aGFuYyBTQ1UgYW5kIE9ydGhhbmMgU0NQ LiBJdCBkZWZhdWx0cyB0byAxNktCLiBUaGUgYWxsb3dlZAorICAvLyByYW5nZSBpcyBbNDA5Niwx MzEwNzJdLiAobmV3IGluIE9ydGhhbmMgMS45LjApCisgICJNYXhpbXVtUGR1TGVuZ3RoIiA6IDE2 Mzg0LAorCisgIC8vIEFyYml0cmFyeSBpZGVudGlmaWVyIG9mIHRoaXMgT3J0aGFuYyBzZXJ2ZXIg d2hlbiBzdG9yaW5nIGl0cworICAvLyBnbG9iYWwgcHJvcGVydGllcyBpZiBhIGN1c3RvbSBpbmRl eCBwbHVnaW4gaXMgdXNlZC4gVGhpcworICAvLyBpZGVudGlmaWVyIGlzIG9ubHkgdXNlZnVsIGlu IHRoZSBjYXNlIG9mIG11bHRpcGxlCisgIC8vIHJlYWRlcnMvd3JpdGVycywgaW4gb3JkZXIgdG8g YXZvaWQgY29sbGlzaW9ucyBiZXR3ZWVuIG11bHRpcGxlCisgIC8vIE9ydGhhbmMgc2VydmVycy4g SWYgdW5zZXQsIHRoaXMgaWRlbnRpZmllciBpcyB0YWtlbiBhcyBhIFNIQS0xCisgIC8vIGhhc2gg ZGVyaXZlZCBmcm9tIHRoZSBNQUMgYWRkcmVzc2VzIG9mIHRoZSBuZXR3b3JrIGludGVyZmFjZXMs CisgIC8vIGFuZCBmcm9tIHRoZSBBRVQgYW5kIFRDUCBwb3J0cyB1c2VkIGJ5IE9ydGhhbmMuIE1h bnVhbGx5IHNldHRpbmcKKyAgLy8gdGhpcyBvcHRpb24gaXMgbmVlZGVkIGluIERvY2tlci9LdWJl cm5ldGVzIGVudmlyb25tZW50cy4gKG5ldyBpbgorICAvLyBPcnRoYW5jIDEuOS4yKQorICAvKioK KyAgICAgIkRhdGFiYXNlU2VydmVySWRlbnRpZmllciIgOiAiT3J0aGFuYzEiLAorICAqKi8KKwor ICAvLyBXaGV0aGVyIE9ydGhhbmMgcHJvdGVjdHMgdGhlIG1vZGlmaWNhdGlvbiBvZiBtZXRhZGF0 YSBhbmQKKyAgLy8gYXR0YWNobWVudHMgdXNpbmcgcmV2aXNpb25zLCB3aGljaCBpcyBkb25lIHVz aW5nIHRoZSBIVFRQIGhlYWRlcnMKKyAgLy8gIkVUYWciLCAiSWYtTWF0Y2giIGFuZCAiSWYtTm9u ZS1NYXRjaCIgaW4gdGhlIGNhbGxzIHRvIHRoZSBSRVNUCisgIC8vIEFQSS4gVGhpcyBpcyBuZWVk ZWQgdG8gaGFuZGxlIGNvbGxpc2lvbnMgYmV0d2VlbiBjb25jdXJyZW50CisgIC8vIG1vZGlmaWNh dGlvbnMgaW4gdGhlIGNhc2Ugb2YgbXVsdGlwbGUgd3JpdGVycy4gVGhlIGRhdGFiYXNlCisgIC8v IGJhY2stZW5kIG11c3Qgc3VwcG9ydCB0aGlzIG9wdGlvbiwgd2hpY2ggaXMgbm90YWJseSAqbm90 KiB5ZXQgdGhlCisgIC8vIGNhc2Ugb2YgdGhlIGJ1aWx0LWluIFNRTGl0ZSBpbmRleC4gKG5ldyBp biBPcnRoYW5jIDEuOS4yKQorICAiQ2hlY2tSZXZpc2lvbnMiIDogZmFsc2UsCisKKyAgLy8gV2hl dGhlciBPcnRoYW5jIHN0cmVhbXMgWklQIGFyY2hpdmUvbWVkaWEgdG8gdGhlIEhUVFAKKyAgLy8g Y2xpZW50LiBTZXR0aW5nIHRoaXMgb3B0aW9uIHRvICJmYWxzZSIgY29ycmVzcG9uZHMgdG8gdGhl CisgIC8vIGJlaGF2aW9yIG9mIE9ydGhhbmMgPD0gMS45LjM6IFRoZSBaSVAgaXMgZmlyc3QgZW50 aXJlbHkgd3JpdHRlbgorICAvLyB0byBhIHRlbXBvcmFyeSBmaWxlLCB0aGVuIHNlbnQgdG8gdGhl IGNsaWVudCAod2hpY2ggbmVjZXNzaXRhdGVzCisgIC8vIGRpc2sgc3BhY2UgYW5kIG1pZ2h0IGxl YWQgdG8gSFRUUCB0aW1lb3V0cyBvbiBsYXJnZSBhcmNoaXZlcykuIElmCisgIC8vIHNldCB0byAi dHJ1ZSIsIHRoZSBjaHVua3Mgb2YgdGhlIFpJUCBmaWxlIGFyZSBwcm9ncmVzc2l2ZWx5IHNlbnQK KyAgLy8gYXMgc29vbiBhcyBvbmUgRElDT00gZmlsZSBnZXRzIGNvbXByZXNzZWQgKG5ldyBpbiBP cnRoYW5jIDEuOS40KQorICAiU3luY2hyb25vdXNaaXBTdHJlYW0iIDogdHJ1ZSwKKworICAvLyBE ZWZhdWx0IG51bWJlciBvZiBsb2FkZXIgdGhyZWFkcyB3aGVuIGdlbmVyYXRpbmcgWmlwIGFyY2hp dmUvbWVkaWEuCisgIC8vIEEgdmFsdWUgb2YgMCBtZWFucyByZWFkaW5nIGFuZCB3cml0aW5nIGFy ZSBwZXJmb3JtZWQgaW4gc2VxdWVuY2UKKyAgLy8gKGRlZmF1bHQgYmVoYXZpb3VyKS4gIEEgdmFs dWUgPiAxIGlzIG1lYW5pbmdmdWwgb25seSBpZiB0aGUgc3RvcmFnZQorICAvLyBpcyBhIGRpc3Ry aWJ1dGVkIG5ldHdvcmsgc3RvcmFnZSAoZS5nIG9iamVjdCBzdG9yYWdlIHBsdWdpbikuCisgIC8v IChuZXcgZXhwZXJpbWVudGFsIGZlYXR1cmUgaW4gT3J0aGFuYyAxLjEwLjApCisgICJaaXBMb2Fk ZXJUaHJlYWRzIjogMCwKKworICAvLyBFeHRyYSBNYWluIERpY29tIHRhZ3MgdGhhdCBhcmUgc3Rv cmVkIGluIERCIHRvZ2V0aGVyIHdpdGggYWxsIGRlZmF1bHQKKyAgLy8gTWFpbiBEaWNvbSB0YWdz IHRoYXQgYXJlIGFscmVhZHkgc3RvcmVkIChUT0RPOiBzZWUgYm9vayBuZXcgcGFnZSkuIAorICAv LyAobmV3IGluIE9ydGhhbmMgMS4xMS4wKQorICAvLyBTZXF1ZW5jZXMgdGFncyBhcmUgbm90IHN1 cHBvcnRlZC4KKyAgLyoqCisgICJFeHRyYU1haW5EaWNvbVRhZ3MiIDogeworICAgICJJbnN0YW5j ZSIgOiBbCisgICAgICAiUm93cyIsCisgICAgICAiQ29sdW1ucyIsCisgICAgICAiSW1hZ2VUeXBl IiwKKyAgICAgICJTT1BDbGFzc1VJRCIsCisgICAgICAiQ29udGVudERhdGUiLAorICAgICAgIkNv bnRlbnRUaW1lIiwKKyAgICAgICJGcmFtZU9mUmVmZXJlbmNlVUlEIiwKKyAgICAgICJQaXhlbFNw YWNpbmciLAorICAgICAgIlNwZWNpZmljQ2hhcmFjdGVyU2V0IiwKKyAgICAgICJCaXRzQWxsb2Nh dGVkIgorICAgIF0sCisgICAgIlNlcmllcyIgOiBbXSwKKyAgICAiU3R1ZHkiOiBbXSwKKyAgICAi UGF0aWVudCI6IFtdCisgIH0sCisgICovCisKKyAgLy8gRW5hYmxlcy9kaXNhYmxlcyB3YXJuaW5n cyBpbiB0aGUgbG9ncy4KKyAgLy8gInRydWUiIGVuYWJsZXMgYSB3YXJuaW5nLiAgQWxsIHdhcm5p bmdzIGFyZSBlbmFibGVkIGJ5IGRlZmF1bHQKKyAgLy8gVE9ETzogc2VlIGJvb2sgbmV3IHBhZ2UK KyAgLy8gKG5ldyBpbiBPcnRoYW5jIDEuMTEuMCkKKyAgIldhcm5pbmdzIiA6IHsKKyAgICAvLyBB ICJSZXF1ZXN0ZWRUYWdzIiBoYXMgYmVlbiByZWFkIGZyb20gc3RvcmFnZSB3aGljaCBpcyBzbG93 ZXIgdGhhbgorICAgIC8vIHJlYWRpbmcgaXQgZnJvbSBEQi4KKyAgICAvLyBZb3UgbWlnaHQgd2Fu dCB0byBzdG9yZSB0aGlzIHRhZyBpbiBFeHRyYU1haW5EaWNvbVRhZ3MgdG8gYnVpbGQKKyAgICAv LyB0aGUgcmVzcG9uc2UgZmFzdGVyLgorICAgICJXMDAxX1RhZ3NCZWluZ1JlYWRGcm9tU3RvcmFn ZSI6IHRydWUsCisgICAgCisgICAgLy8gUmV0cmlldmluZyBhIGxpc3Qgb2YgTWFpbiBkaWNvbSB0 YWdzIGZyb20gYSByZXNvdXJjZSB0aGF0IGhhcyBiZWVuCisgICAgLy8gc2F2ZWQgd2l0aCBhbm90 aGVyICJFeHRyYU1haW5EaWNvbVRhZ3MiIGNvbmZpZ3VyYXRpb24gd2hpY2ggbWVhbnMgdGhhdAor ICAgIC8vIHlvdXIgcmVzcG9uc2UgbWlnaHQgYmUgaW5jb21wbGV0ZS9pbmNvbnNpc3RlbnQuCisg ICAgLy8gWW91IHNob3VsZCBjYWxsIHBhdGllbnRzfHN0dWRpZXN8c2VyaWVzfGluc3RhbmNlcy8u Li9yZWNvbnN0cnVjdCB0byByZWJ1aWxkCisgICAgLy8gdGhlIERCLiAgVE9ETzogYWxzbyBjaGVj ayBmb3IgInJlYnVpbGQgREIiIHBsdWdpbgorICAgICJXMDAyX0luY29uc2lzdGVudERpY29tVGFn c0luRGIiOiB0cnVlCisgIH0KKworfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9PcnRoYW5jL2ZpbGVz L29ydGhhbmMvcnVuIGIvc3JjcGtncy9PcnRoYW5jL2ZpbGVzL29ydGhhbmMvcnVuCm5ldyBmaWxl IG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAwMDAwMC4uMzIwNTBiZjI5MjhjCi0tLSAvZGV2L251 bGwKKysrIGIvc3JjcGtncy9PcnRoYW5jL2ZpbGVzL29ydGhhbmMvcnVuCkBAIC0wLDAgKzEsMzIg QEAKKyMhL2Jpbi9zaAorT1BUUz0iIgorWyAtciBjb25mIF0gJiYgLiAuL2NvbmYKKworOiAke1VT RVI6PSJfb3J0aGFuYyJ9CisKKzogJHtDT05GSUdGSUxFOj0iL2V0Yy9vcnRoYW5jL0NvbmZpZ3Vy YXRpb24uanNvbiJ9CitbIC1yICRDT05GSUdGSUxFIF0gfHwgZXhpdCAxCisKKzogJHtPUlRIQU5D U1RPUkFHRTo9Ii92YXIvbGliL09ydGhhbmNTdG9yYWdlIn0KK2lmIFsgISAtZSAkT1JUSEFOQ1NU T1JBR0UgXQordGhlbgorCW1rZGlyIC1wbSAwNzUwICRPUlRIQU5DU1RPUkFHRSAmJgorCWNob3du ICR7VVNFUn06JHtVU0VSfSAkT1JUSEFOQ1NUT1JBR0UgfHwKKwlleGl0IDEKK2ZpCisKKyMgRW5h YmxlIGxvZworaWYgWyAtbiAkTE9HIF07IHRoZW4KKwk6ICR7TE9HRElSOj0iL2xvZy9vcnRoYW5j In0KKwlPUFRTPSIke09QVFN9LS1sb2dkaXI9JExPR0RJUiAiCisKKwlpZiBbICEgLWUgJExPR0RJ UiBdOyB0aGVuCisJCW1rZGlyIC1wbSAwNzUwICRMT0dESVIgJiYKKwkJY2hvd24gJHtVU0VSfTok e1VTRVJ9ICRMT0dESVIgfHwKKwkJZXhpdCAxCisJZmkKK2ZpCisKKyMgU2V0IE9QVFMgb24gY29u ZiBmaWxlIGZvciBhZGl0aW9uYWwgcGFyYW1ldGVycworT1BUUz0iJE9QVFMkQ09ORklHRklMRSIK K2V4ZWMgY2hwc3QgLXUgJHtVU0VSfToke1VTRVJ9IE9ydGhhbmMgJE9QVFMKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvT3J0aGFuYy90ZW1wbGF0ZSBiL3NyY3BrZ3MvT3J0aGFuYy90ZW1wbGF0ZQpuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmQ1Y2I2MTUxNDYxOQotLS0gL2Rl di9udWxsCisrKyBiL3NyY3BrZ3MvT3J0aGFuYy90ZW1wbGF0ZQpAQCAtMCwwICsxLDU3IEBACisj IFRlbXBsYXRlIGZpbGUgZm9yICdPcnRoYW5jJworcGtnbmFtZT1PcnRoYW5jCit2ZXJzaW9uPTEu MTEuMQorcmV2aXNpb249MQorYnVpbGRfd3Jrc3JjPSJPcnRoYW5jU2VydmVyIgorYnVpbGRfc3R5 bGU9Y21ha2UKK2NvbmZpZ3VyZV9hcmdzPSItREFMTE9XX0RPV05MT0FEUz1PTiAtRFNUQVRJQ19C VUlMRD1PRkYgLUREQ01US19ESVI9L3Vzci9saWIvY21ha2UvZGNtdGsiCitob3N0bWFrZWRlcGVu ZHM9InB5dGhvbjMgdW56aXAgdGFyIGRveHlnZW4gZGNtdGsiCittYWtlZGVwZW5kcz0ibGlidXVp ZC1kZXZlbCBib29zdC1kZXZlbCBsaWJjdXJsLWRldmVsCisgbGliZGNtdGstZGV2ZWwgZ3Rlc3Qt ZGV2ZWwgbGlicG5nLWRldmVsIGxpYmpwZWctdHVyYm8tZGV2ZWwKKyBzcWxpdGUtZGV2ZWwgbGli Y2l2ZXR3ZWItZGV2ZWwgb3BlbnNzbC1kZXZlbCBqc29uY3BwLWRldmVsIGx1YS1kZXZlbAorIHB1 Z2l4bWwtZGV2ZWwiCitkZXBlbmRzPSJkY210ayIKK3Nob3J0X2Rlc2M9IkxpZ2h0d2VpZ2h0IFJF U1RmdWwgRElDT00gc2VydmVyIgorbWFpbnRhaW5lcj0iQ2FybG9zIEUuIEdhbGxvIEYuIDxnY2Fy bG9zQGRpc3Jvb3Qub3JnPiIKK2xpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCitob21lcGFnZT0i aHR0cHM6Ly93d3cub3J0aGFuYy1zZXJ2ZXIuY29tL2luZGV4LnBocCIKK2Rpc3RmaWxlcz0iaHR0 cHM6Ly93d3cub3J0aGFuYy1zZXJ2ZXIuY29tL2Rvd25sb2Fkcy9nZXQucGhwP3BhdGg9L29ydGhh bmMvT3J0aGFuYy0ke3ZlcnNpb259LnRhci5neiIKK2NoZWNrc3VtPWE2MzRhZGM5ZjZkZDBhNzRl YmFlYjQxNTY1N2I1ZjNkNTE4MjJiNGZiMzQ3NjQxZGM0NGYzYmY4YjViNTZkYjUKK2lnbm9yZV9l bGZfZGlycz0iL3Vzci9zaGFyZS9vcnRoYW5jIgorcHl0aG9uX3ZlcnNpb249MworCisjIENyZWF0 ZSAnX29ydGhhbmMnIHVzZXIgZm9yIHRoZSBzZXJ2ZXIKK3N5c3RlbV9hY2NvdW50cz0iX29ydGhh bmMiCitfb3J0aGFuY19kZXNjcj0iT3J0aGFuYyBzZXJ2ZXIgdXNlciIKK2NvbmZfZmlsZXM9ImV0 Yy9vcnRoYW5jL0NvbmZpZ3VyYXRpb24uanNvbiIKKworcG9zdF9pbnN0YWxsKCkgeworCWNkICR7 REVTVERJUn0KKwltdiB1c3Ivc2Jpbi8qIHVzci9iaW4vCisJcm0gLXJmIHVzci9zYmluCisKKwkj IFJlbW92ZSBnYXJiYWdlCisJcm0gLXJmIGJ1aWxkZGlyCisKKwl2c3Ygb3J0aGFuYworCXZpbnN0 YWxsICR7RklMRVNESVJ9L0NvbmZpZ3VyYXRpb24uanNvbiAwNjQ0IGV0Yy9vcnRoYW5jCit9CisK K09ydGhhbmMtZGV2ZWxfcGFja2FnZSgpIHsKKwlkZXBlbmRzKz0iICR7c291cmNlcGtnfT49JHt2 ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQgZmlsZXMi CisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlIHVzci9pbmNsdWRlCisJCXZtb3ZlIHVzci9zaGFy ZS9kb2MKKwkJdm1rZGlyIHVzci9zaGFyZS9vcnRoYW5jL09ydGhhbmNGcmFtZXdvcmsgMDc1NQor CQl2Y29weSAke3dya3NyY30vT3J0aGFuY0ZyYW1ld29yayB1c3Ivc2hhcmUvb3J0aGFuYworCX0K K30KKworT3J0aGFuYy1wbHVnaW5zX3BhY2thZ2UoKSB7CisJZGVwZW5kcys9IiAke3NvdXJjZXBr Z30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCisJc2hvcnRfZGVzYys9IiAtIG9mZmljaWFsIHBs dWdpbnMiCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlIHVzci9zaGFyZS9vcnRoYW5jL3BsdWdp bnMKKwl9Cit9CmRpZmYgLS1naXQgYS9zcmNwa2dzL2NpdmV0d2ViL3BhdGNoZXMvaW5zdGFsbC1m aXgucGF0Y2ggYi9zcmNwa2dzL2NpdmV0d2ViL3BhdGNoZXMvaW5zdGFsbC1maXgucGF0Y2gKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5iZTI4MmRiZjYxM2MKLS0tIC9k ZXYvbnVsbAorKysgYi9zcmNwa2dzL2NpdmV0d2ViL3BhdGNoZXMvaW5zdGFsbC1maXgucGF0Y2gK QEAgLTAsMCArMSwxNiBAQAorLS0tIGEvTWFrZWZpbGUKKysrKyBiL01ha2VmaWxlCitAQCAtMTks MTAgKzE5LDEwIEBACisgIyBodHRwOi8vd3d3LmdudS5vcmcvcHJlcC9zdGFuZGFyZHMvaHRtbF9u b2RlL0RpcmVjdG9yeS1WYXJpYWJsZXMuaHRtbAorIFBSRUZJWCA/PSAvdXNyL2xvY2FsCisgRVhF Q19QUkVGSVggPSAkKFBSRUZJWCkKKy1CSU5ESVIgPSAkKEVYRUNfUFJFRklYKS9iaW4KKy1EQVRB Uk9PVERJUiA9ICQoUFJFRklYKS9zaGFyZQorK0JJTkRJUiA9ICQoREVTVERJUikkKEVYRUNfUFJF RklYKS9iaW4KKytEQVRBUk9PVERJUiA9ICQoREVTVERJUikkKFBSRUZJWCkvc2hhcmUKKyBET0NE SVIgPSAkKERBVEFST09URElSKS9kb2MvJChDUFJPRykKKy1TWVNDT05GRElSID89ICQoUFJFRklY KS9ldGMKKytTWVNDT05GRElSID89ICQoREVTVERJUikvZXRjCisgSFRNTERJUiA9ICQoRE9DRElS KQorIElOQ0xVREVESVIgPSAkKERFU1RESVIpJChQUkVGSVgpL2luY2x1ZGUKKyBMSUJESVIgPSAk KERFU1RESVIpJChFWEVDX1BSRUZJWCkvbGliCmRpZmYgLS1naXQgYS9zcmNwa2dzL2NpdmV0d2Vi L3RlbXBsYXRlIGIvc3JjcGtncy9jaXZldHdlYi90ZW1wbGF0ZQpuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMDAuLjk2ZmY4MDgwNTA4YgotLS0gL2Rldi9udWxsCisrKyBiL3Ny Y3BrZ3MvY2l2ZXR3ZWIvdGVtcGxhdGUKQEAgLTAsMCArMSwzOSBAQAorIyBUZW1wbGF0ZSBmaWxl IGZvciAnY2l2ZXR3ZWInCitwa2duYW1lPWNpdmV0d2ViCit2ZXJzaW9uPTEuMTUKK3JldmlzaW9u PTEKK2J1aWxkX3N0eWxlPWdudS1tYWtlZmlsZQorbWFrZV9pbnN0YWxsX3RhcmdldD0iaW5zdGFs bCBpbnN0YWxsLWhlYWRlcnMgaW5zdGFsbC1saWIgaW5zdGFsbC1zbGliIgorbWFrZV91c2VfZW52 PXllcworbWFrZWRlcGVuZHM9Im9wZW5zc2wtZGV2ZWwiCitzaG9ydF9kZXNjPSJFbWJlZGRlZCBD L0MrKyB3ZWIgc2VydmVyIgorbWFpbnRhaW5lcj0iQ2FybG9zIEUuIEdhbGxvIEYuIDxnY2FybG9z QGRpc3Jvb3Qub3JnPiIKK2xpY2Vuc2U9Ik1JVCIKK2hvbWVwYWdlPSJodHRwczovL2NpdmV0d2Vi LmdpdGh1Yi5pby9jaXZldHdlYi8iCitkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9jaXZl dHdlYi9jaXZldHdlYi9hcmNoaXZlL3JlZnMvdGFncy92JHt2ZXJzaW9ufS50YXIuZ3oiCitjaGVj a3N1bT05MGE1MzM0MjI5NDRhYjMyN2E0ZmJiOTk2OWYwODQ1ZDBkYmEwNTM1NGY5Y2FjY2UzYTUw MDVmYTU5ZjU5M2I5CisKK3ByZV9pbnN0YWxsKCkgeworCXZta2RpciB1c3IvaW5jbHVkZQorfQor Citwb3N0X2luc3RhbGwoKSB7CisJdmxpY2Vuc2UgTElDRU5TRS5tZAorfQorCitsaWJjaXZldHdl Yl9wYWNrYWdlKCkgeworCXNob3J0X2Rlc2MrPScgLSBsaWJyYXJ5JworCXBrZ19pbnN0YWxsKCkg eworCQl2bW92ZSAidXNyL2xpYi8qLnNvLioiCisJfQorfQorCitsaWJjaXZldHdlYi1kZXZlbF9w YWNrYWdlKCkgeworCWRlcGVuZHM9ImxpYiR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3Jldmlz aW9ufSIKKwlzaG9ydF9kZXNjKz0nIC0gZGV2ZWxvcG1lbnQgZmlsZXMnCisJcGtnX2luc3RhbGwo KSB7CisJCXZtb3ZlIHVzci9pbmNsdWRlCisJCXZtb3ZlICJ1c3IvbGliLyouYSIKKwkJdm1vdmUg InVzci9saWIvKi5zbyIKKwl9Cit9CmRpZmYgLS1naXQgYS9zcmNwa2dzL2RjbXRrLWRvYyBiL3Ny Y3BrZ3MvZGNtdGstZG9jCm5ldyBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwMC4u NjlmZjU0Y2UyZTBjCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9kY210ay1kb2MKQEAgLTAs MCArMSBAQAorZGNtdGsKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9z cmNwa2dzL2RjbXRrL3RlbXBsYXRlIGIvc3JjcGtncy9kY210ay90ZW1wbGF0ZQpuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmUwNDlmNDRjYWUyMwotLS0gL2Rldi9udWxs CisrKyBiL3NyY3BrZ3MvZGNtdGsvdGVtcGxhdGUKQEAgLTAsMCArMSw0OSBAQAorIyBUZW1wbGF0 ZSBmaWxlIGZvciAnZGNtdGsnCitwa2duYW1lPWRjbXRrCit2ZXJzaW9uPTMuNi43CityZXZpc2lv bj0xCitidWlsZF9zdHlsZT1jbWFrZQorY29uZmlndXJlX2FyZ3M9Ii1ERENNVEtfRU5BQkxFX0NY WDExPU9OIC1EQlVJTERfU0hBUkVEX0xJQlM9T04gLUREQ01US19XSVRIX0RPWFlHRU49T04iCito b3N0bWFrZWRlcGVuZHM9ImRveHlnZW4iCittYWtlZGVwZW5kcz0ib3BlbnNzbC1kZXZlbCB6bGli LWRldmVsIHRpZmYtZGV2ZWwgbGlicG5nLWRldmVsIGxpYnhtbDItZGV2ZWwgaWN1LWRldmVsIgor c2hvcnRfZGVzYz0iTGlicmFyaWVzIGFuZCB0b29scyB0aGF0IGltcGxlbWVudHMgRElDT00gc3Rh bmRhcmQiCittYWludGFpbmVyPSJDYXJsb3MgRS4gR2FsbG8gRi4gPGdjYXJsb3NAZGlzcm9vdC5v cmc+IgorbGljZW5zZT0iY3VzdG9tOiBzZWUgL3Vzci9zaGFyZS9saWNlbnNlcy8ke3BrZ25hbWV9 IgoraG9tZXBhZ2U9Imh0dHBzOi8vZGNtdGsub3JnL2RjbXRrLnBocC5lbiIKK2Rpc3RmaWxlcz0i aHR0cHM6Ly9kaWNvbS5vZmZpcy5kZS9kb3dubG9hZC9kY210ay9kY210azM2Ny9kY210ay0ke3Zl cnNpb259LnRhci5neiIKK2NoZWNrc3VtPTdjNTgyOThlM2U4ZDYwMjMyZWU2ZmM4NDA4Y2ZhZGQx NDQ2M2NjMTFhM2M0Y2E0YzU5YWY1OTg4YzdlOTcxMGEKKworcHJlX2J1aWxkKCkgeworCW5pbmph IC1DIGJ1aWxkIERPWFlHRU4KK30KKworcG9zdF9pbnN0YWxsKCkgeworCXZsaWNlbnNlIENPUFlS SUdIVAorfQorCitkY210ay1kb2NfcGFja2FnZSgpIHsKKwlzaG9ydF9kZXNjKz0nIC0gZG9jdW1l bnRhdGlvbicKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgdXNyL3NoYXJlL2RvYworCX0KK30K KworIyBUT0RPIG5lZWQgbGljZW5zZSBoZXJlCitsaWJkY210a19wYWNrYWdlKCkgeworCXNob3J0 X2Rlc2MrPScgLSBydW50aW1lIGxpYnJhcmllcycKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUg InVzci9saWIvKi5zby4qIgorCQl2bW92ZSB1c3Ivc2hhcmUvZGNtdGsKKwl9Cit9CisKK2xpYmRj bXRrLWRldmVsX3BhY2thZ2UoKSB7CisJc2hvcnRfZGVzYys9JyAtIGRldmVsb3BtZW50IGZpbGVz JworCWRlcGVuZHM9ImxpYiR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlw a2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgdXNyL2luY2x1ZGUKKwkJdm1vdmUgdXNyL2xpYi9wa2dj b25maWcKKwkJdm1vdmUgdXNyL2xpYi9jbWFrZQorCQl2bW92ZSAidXNyL2xpYi8qLnNvIgorCX0K K30KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGliY2l2ZXR3ZWIgYi9zcmNwa2dzL2xpYmNpdmV0d2Vi Cm5ldyBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwMC4uZjc0MGI1MzEzMzE2Ci0t LSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9saWJjaXZldHdlYgpAQCAtMCwwICsxIEBACitjaXZl dHdlYgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGli Y2l2ZXR3ZWItZGV2ZWwgYi9zcmNwa2dzL2xpYmNpdmV0d2ViLWRldmVsCm5ldyBmaWxlIG1vZGUg MTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwMC4uZjc0MGI1MzEzMzE2Ci0tLSAvZGV2L251bGwKKysr IGIvc3JjcGtncy9saWJjaXZldHdlYi1kZXZlbApAQCAtMCwwICsxIEBACitjaXZldHdlYgpcIE5v IG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGliZGNtdGsgYi9z cmNwa2dzL2xpYmRjbXRrCm5ldyBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwMC4u NjlmZjU0Y2UyZTBjCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9saWJkY210awpAQCAtMCww ICsxIEBACitkY210awpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvbGliZGNtdGstZGV2ZWwgYi9zcmNwa2dzL2xpYmRjbXRrLWRldmVsCm5ldyBmaWxlIG1v ZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwMC4uNjlmZjU0Y2UyZTBjCi0tLSAvZGV2L251bGwK KysrIGIvc3JjcGtncy9saWJkY210ay1kZXZlbApAQCAtMCwwICsxIEBACitkY210awpcIE5vIG5l d2xpbmUgYXQgZW5kIG9mIGZpbGUK --===============7184035107481500633==--