ZGlmZiAtLWdpdCBhL3BvbS54bWwgYi9wb20ueG1sCmluZGV4IGMwYzEzODYuLmIwZGY3NzMgMTAwNjQ0Ci0tLSBhL3BvbS54bWwKKysrIGIvcG9tLnhtbApAQCAtMjAsNyArMjAsNyBAQAogICAgIDxtb2RlbFZlcnNpb24+NC4wLjA8L21vZGVsVmVyc2lvbj4KICAgICA8Z3JvdXBJZD5jb20ubmV0d29ya250PC9ncm91cElkPgogICAgIDxhcnRpZmFjdElkPmpzb24tc2NoZW1hLXZhbGlkYXRvcjwvYXJ0aWZhY3RJZD4KLSAgICA8dmVyc2lvbj4xLjAuNjc8L3ZlcnNpb24+CisgICAgPHZlcnNpb24+MS4wLjY4LVNOQVBTSE9UPC92ZXJzaW9uPgogICAgIDxwYWNrYWdpbmc+YnVuZGxlPC9wYWNrYWdpbmc+CiAgICAgPGRlc2NyaXB0aW9uPkEganNvbiBzY2hlbWEgdmFsaWRhdG9yIHRoYXQgc3VwcG9ydHMgZHJhZnQgdjQsIHY2LCB2NyBhbmQgdjIwMTktMDk8L2Rlc2NyaXB0aW9uPgogICAgIDx1cmw+aHR0cHM6Ly9naXRodWIuY29tL25ldHdvcmtudC9qc29uLXNjaGVtYS12YWxpZGF0b3I8L3VybD4KZGlmZiAtLWdpdCBhL3NyYy9tYWluL2phdmEvY29tL25ldHdvcmtudC9zY2hlbWEvSTE4blN1cHBvcnQuamF2YSBiL3NyYy9tYWluL2phdmEvY29tL25ldHdvcmtudC9zY2hlbWEvSTE4blN1cHBvcnQuamF2YQppbmRleCBhNmNiMTYyLi43MGM3OGY0IDEwMDY0NAotLS0gYS9zcmMvbWFpbi9qYXZhL2NvbS9uZXR3b3JrbnQvc2NoZW1hL0kxOG5TdXBwb3J0LmphdmEKKysrIGIvc3JjL21haW4vamF2YS9jb20vbmV0d29ya250L3NjaGVtYS9JMThuU3VwcG9ydC5qYXZhCkBAIC0xLDUgKzEsNiBAQAogcGFja2FnZSBjb20ubmV0d29ya250LnNjaGVtYTsKIAoraW1wb3J0IGphdmEudXRpbC5NaXNzaW5nUmVzb3VyY2VFeGNlcHRpb247CiBpbXBvcnQgamF2YS51dGlsLlJlc291cmNlQnVuZGxlOwogCiAvKioKQEAgLTgsMTAgKzksMzYgQEAKICAqIEBhdXRob3IgbGVhdmVzIGNoZW4gbGVhdmVzNjE1QGdtYWlsLmNvbQogICovCiBwdWJsaWMgY2xhc3MgSTE4blN1cHBvcnQgeworCiAgICAgcHJpdmF0ZSBzdGF0aWMgZmluYWwgU3RyaW5nIEJBU0VfTkFNRSA9ICJqc3YtbWVzc2FnZXMiOwotICAgIHByaXZhdGUgc3RhdGljIFJlc291cmNlQnVuZGxlIGJ1bmRsZSA9IFJlc291cmNlQnVuZGxlLmdldEJ1bmRsZShCQVNFX05BTUUpOworICAgIHByaXZhdGUgc3RhdGljIGZpbmFsIFJlc291cmNlQnVuZGxlIGJ1bmRsZTsKKworICAgIHN0YXRpYyB7CisgICAgICAgIFJlc291cmNlQnVuZGxlIHRtcEJ1bmRsZSA9IG51bGw7CisgICAgICAgIHRyeSB7CisgICAgICAgICAgICB0bXBCdW5kbGUgPSBSZXNvdXJjZUJ1bmRsZS5nZXRCdW5kbGUoQkFTRV9OQU1FKTsKKyAgICAgICAgfSBjYXRjaCAoTWlzc2luZ1Jlc291cmNlRXhjZXB0aW9uIG1yZSkgeworICAgICAgICAgICAgLy8gTmVlZCB0byBhdm9pZCBieSBhbGwgbWVhbnMgdGhhdCB3ZSBmYWlsIGxvYWRpbmcgVmFsaWRhdG9yVHlwZUNvZGUgd2l0aCBhCisgICAgICAgICAgICAvLyAiamF2YS5sYW5nLk5vQ2xhc3NEZWZGb3VuZEVycm9yOiBDb3VsZCBub3QgaW5pdGlhbGl6ZSBjbGFzcyBjb20ubmV0d29ya250LnNjaGVtYS5WYWxpZGF0b3JUeXBlQ29kZSIKKyAgICAgICAgICAgIC8vIGR1ZSB0byB0aGUgZmFjdCB0aGF0IGEgUmVzb3VyY2VCdW5kbGUgaXMgaW5jb21wbGV0ZQorICAgICAgICAgICAgbXJlLnByaW50U3RhY2tUcmFjZSgpOworICAgICAgICAgICAgU3lzdGVtLmV4aXQoMSk7CisgICAgICAgIH0KKyAgICAgICAgYnVuZGxlID0gdG1wQnVuZGxlOworICAgIH0KIAogICAgIHB1YmxpYyBzdGF0aWMgU3RyaW5nIGdldFN0cmluZyhTdHJpbmcga2V5KSB7Ci0gICAgICAgIHJldHVybiBidW5kbGUuZ2V0U3RyaW5nKGtleSk7CisgICAgICAgIFN0cmluZyByZXR2YWwgPSBudWxsOworICAgICAgICB0cnkgeworICAgICAgICAgICAgcmV0dmFsID0gYnVuZGxlLmdldFN0cmluZyhrZXkpOworICAgICAgICB9IGNhdGNoIChNaXNzaW5nUmVzb3VyY2VFeGNlcHRpb24gbXJlKSB7CisgICAgICAgICAgICAvLyBOZWVkIHRvIGF2b2lkIGJ5IGFsbCBtZWFucyB0aGF0IHdlIGZhaWwgbG9hZGluZyBWYWxpZGF0b3JUeXBlQ29kZSB3aXRoIGEKKyAgICAgICAgICAgIC8vICJqYXZhLmxhbmcuTm9DbGFzc0RlZkZvdW5kRXJyb3I6IENvdWxkIG5vdCBpbml0aWFsaXplIGNsYXNzIGNvbS5uZXR3b3JrbnQuc2NoZW1hLlZhbGlkYXRvclR5cGVDb2RlIgorICAgICAgICAgICAgLy8gZHVlIHRvIHRoZSBmYWN0IHRoYXQgYSBSZXNvdXJjZUJ1bmRsZSBpcyBpbmNvbXBsZXRlCisgICAgICAgICAgICBtcmUucHJpbnRTdGFja1RyYWNlKCk7CisgICAgICAgICAgICBTeXN0ZW0uZXhpdCgyKTsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gcmV0dmFsOwogICAgIH0KKyAgICAKIH0KZGlmZiAtLWdpdCBhL3NyYy9tYWluL2phdmEvY29tL25ldHdvcmtudC9zY2hlbWEvT25lT2ZWYWxpZGF0b3IuamF2YSBiL3NyYy9tYWluL2phdmEvY29tL25ldHdvcmtudC9zY2hlbWEvT25lT2ZWYWxpZGF0b3IuamF2YQppbmRleCAxZGYzMzY5Li5iOTViYWU2IDEwMDY0NAotLS0gYS9zcmMvbWFpbi9qYXZhL2NvbS9uZXR3b3JrbnQvc2NoZW1hL09uZU9mVmFsaWRhdG9yLmphdmEKKysrIGIvc3JjL21haW4vamF2YS9jb20vbmV0d29ya250L3NjaGVtYS9PbmVPZlZhbGlkYXRvci5qYXZhCkBAIC0zMDgsOCArMzA4LDcgQEAKICAgICAgICAgICAgIG1zZyA9IG1zZy5jb25jYXQoc2NoZW1hVmFsdWUpOw0KICAgICAgICAgfQ0KIA0KLSAgICAgICAgcmV0dXJuIFZhbGlkYXRpb25NZXNzYWdlLm9mKGdldFZhbGlkYXRvclR5cGUoKS5nZXRWYWx1ZSgpLCBWYWxpZGF0b3JUeXBlQ29kZS5PTkVfT0YgLA0KLSAgICAgICAgICAgICAgICBhdCwgU3RyaW5nLmZvcm1hdCgiYnV0IG1vcmUgdGhhbiBvbmUgc2NoZW1hcyB7JXN9IGFyZSB2YWxpZCAiLG1zZykpOw0KKyAgICAgICAgcmV0dXJuIFZhbGlkYXRpb25NZXNzYWdlLm9mKGdldFZhbGlkYXRvclR5cGUoKS5nZXRWYWx1ZSgpLCBWYWxpZGF0b3JUeXBlQ29kZS5PTkVfT0YsIGF0LCBtc2cpOw0KICAgICB9DQogDQogICAgIEBPdmVycmlkZQ0KZGlmZiAtLWdpdCBhL3NyYy9tYWluL2phdmEvY29tL25ldHdvcmtudC9zY2hlbWEvVmFsaWRhdG9yVHlwZUNvZGUuamF2YSBiL3NyYy9tYWluL2phdmEvY29tL25ldHdvcmtudC9zY2hlbWEvVmFsaWRhdG9yVHlwZUNvZGUuamF2YQppbmRleCA0ZmM0ZjY4Li5lODRjMDU5IDEwMDY0NAotLS0gYS9zcmMvbWFpbi9qYXZhL2NvbS9uZXR3b3JrbnQvc2NoZW1hL1ZhbGlkYXRvclR5cGVDb2RlLmphdmEKKysrIGIvc3JjL21haW4vamF2YS9jb20vbmV0d29ya250L3NjaGVtYS9WYWxpZGF0b3JUeXBlQ29kZS5qYXZhCkBAIC02Miw3ICs2Miw3IEBACiAgICAgVFlQRSgidHlwZSIsICIxMDI5IiwgbmV3IE1lc3NhZ2VGb3JtYXQoSTE4blN1cHBvcnQuZ2V0U3RyaW5nKCJ0eXBlIikpLCBUeXBlVmFsaWRhdG9yLmNsYXNzLCAxNSksCiAgICAgVU5JT05fVFlQRSgidW5pb25UeXBlIiwgIjEwMzAiLCBuZXcgTWVzc2FnZUZvcm1hdChJMThuU3VwcG9ydC5nZXRTdHJpbmcoInVuaW9uVHlwZSIpKSwgVW5pb25UeXBlVmFsaWRhdG9yLmNsYXNzLCAxNSksCiAgICAgVU5JUVVFX0lURU1TKCJ1bmlxdWVJdGVtcyIsICIxMDMxIiwgbmV3IE1lc3NhZ2VGb3JtYXQoSTE4blN1cHBvcnQuZ2V0U3RyaW5nKCJ1bmlxdWVJdGVtcyIpKSwgVW5pcXVlSXRlbXNWYWxpZGF0b3IuY2xhc3MsIDE1KSwKLSAgICBEQVRFVElNRSgiZGF0ZS10aW1lIiwgIjEwMzQiLCBuZXcgTWVzc2FnZUZvcm1hdCgiezB9OiB7MX0gaXMgYW4gaW52YWxpZCB7Mn0iKSwgbnVsbCwgMTUpLAorICAgIERBVEVUSU1FKCJkYXRlVGltZSIsICIxMDM0IiwgbmV3IE1lc3NhZ2VGb3JtYXQoSTE4blN1cHBvcnQuZ2V0U3RyaW5nKCJkYXRlVGltZSIpKSwgbnVsbCwgMTUpLAogICAgIFVVSUQoInV1aWQiLCAiMTAzNSIsIG5ldyBNZXNzYWdlRm9ybWF0KEkxOG5TdXBwb3J0LmdldFN0cmluZygidXVpZCIpKSwgbnVsbCwgMTUpLAogICAgIElEKCJpZCIsICIxMDM2IiwgbmV3IE1lc3NhZ2VGb3JtYXQoSTE4blN1cHBvcnQuZ2V0U3RyaW5nKCJpZCIpKSwgbnVsbCwgMTUpLAogICAgIElGX1RIRU5fRUxTRSgiaWYiLCAiMTAzNyIsIG51bGwsIElmVmFsaWRhdG9yLmNsYXNzLCAxMiksICAvLyBWN3xWMjAxOTA5CkBAIC05MSwxMSArOTEsMTEgQEAKICAgICBwcml2YXRlIGZpbmFsIE1lc3NhZ2VGb3JtYXQgbWVzc2FnZUZvcm1hdDsKICAgICBwcml2YXRlIFN0cmluZyBjdXN0b21NZXNzYWdlOwogICAgIHByaXZhdGUgZmluYWwgU3RyaW5nIGVycm9yQ29kZUtleTsKLSAgICBwcml2YXRlIGZpbmFsIENsYXNzIHZhbGlkYXRvcjsKKyAgICBwcml2YXRlIGZpbmFsIENsYXNzPD8+IHZhbGlkYXRvcjsKICAgICBwcml2YXRlIGZpbmFsIGxvbmcgdmVyc2lvbkNvZGU7CiAKIAotICAgIHByaXZhdGUgVmFsaWRhdG9yVHlwZUNvZGUoU3RyaW5nIHZhbHVlLCBTdHJpbmcgZXJyb3JDb2RlLCBNZXNzYWdlRm9ybWF0IG1lc3NhZ2VGb3JtYXQsIENsYXNzIHZhbGlkYXRvciwgbG9uZyB2ZXJzaW9uQ29kZSkgeworICAgIHByaXZhdGUgVmFsaWRhdG9yVHlwZUNvZGUoU3RyaW5nIHZhbHVlLCBTdHJpbmcgZXJyb3JDb2RlLCBNZXNzYWdlRm9ybWF0IG1lc3NhZ2VGb3JtYXQsIENsYXNzPD8+IHZhbGlkYXRvciwgbG9uZyB2ZXJzaW9uQ29kZSkgewogICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7CiAgICAgICAgIHRoaXMuZXJyb3JDb2RlID0gZXJyb3JDb2RlOwogICAgICAgICB0aGlzLm1lc3NhZ2VGb3JtYXQgPSBtZXNzYWdlRm9ybWF0OwpkaWZmIC0tZ2l0IGEvc3JjL21haW4vcmVzb3VyY2VzL2pzdi1tZXNzYWdlcy5wcm9wZXJ0aWVzIGIvc3JjL21haW4vcmVzb3VyY2VzL2pzdi1tZXNzYWdlcy5wcm9wZXJ0aWVzCmluZGV4IDMxM2Y2OTIuLjZjN2JlMmYgMTAwNjQ0Ci0tLSBhL3NyYy9tYWluL3Jlc291cmNlcy9qc3YtbWVzc2FnZXMucHJvcGVydGllcworKysgYi9zcmMvbWFpbi9yZXNvdXJjZXMvanN2LW1lc3NhZ2VzLnByb3BlcnRpZXMKQEAgLTEsNDEgKzEsNDIgQEAKKyRyZWYgPSB7MH06IGhhcyBhbiBlcnJvciB3aXRoICdyZWZzJwogYWRkaXRpb25hbFByb3BlcnRpZXMgPSB7MH0uezF9OiBpcyBub3QgZGVmaW5lZCBpbiB0aGUgc2NoZW1hIGFuZCB0aGUgc2NoZW1hIGRvZXMgbm90IGFsbG93IGFkZGl0aW9uYWwgcHJvcGVydGllcwogYWxsT2YgPSB7MH06IHNob3VsZCBiZSB2YWxpZCB0byBhbGwgdGhlIHNjaGVtYXMgezF9CiBhbnlPZiA9IHswfTogc2hvdWxkIGJlIHZhbGlkIHRvIGFueSBvZiB0aGUgc2NoZW1hcyB7MX0KK2NvbnN0ID0gezB9OiBtdXN0IGJlIGEgY29uc3RhbnQgdmFsdWUgezF9Citjb250YWlucyA9IHswfTogZG9lcyBub3QgY29udGFpbiBhbiBlbGVtZW50IHRoYXQgcGFzc2VzIHRoZXNlIHZhbGlkYXRpb25zOiB7MX0KIGNyb3NzRWRpdHMgPSB7MH06IGhhcyBhbiBlcnJvciB3aXRoICdjcm9zcyBlZGl0cycKK2RhdGVUaW1lID0gezB9OiB7MX0gaXMgYW4gaW52YWxpZCB7Mn0KIGRlcGVuZGVuY2llcyA9IHswfTogaGFzIGFuIGVycm9yIHdpdGggZGVwZW5kZW5jaWVzIHsxfQogZGVwZW5kZW50UmVxdWlyZWQgPSB7MH06IGhhcyBhIG1pc3NpbmcgcHJvcGVydHkgd2hpY2ggaXMgZGVwZW5kZW50IHJlcXVpcmVkIHsxfQogZGVwZW5kZW50U2NoZW1hcyA9IHswfTogaGFzIGFuIGVycm9yIHdpdGggZGVwZW5kZW50U2NoZW1hcyB7MX0KIGVkaXRzID0gezB9OiBoYXMgYW4gZXJyb3Igd2l0aCAnZWRpdHMnCiBlbnVtID0gezB9OiBkb2VzIG5vdCBoYXZlIGEgdmFsdWUgaW4gdGhlIGVudW1lcmF0aW9uIHsxfQotZm9ybWF0ID0gezB9OiBkb2VzIG5vdCBtYXRjaCB0aGUgezF9IHBhdHRlcm4gezJ9Ci1pdGVtcyA9IHswfVt7MX1dOiBubyB2YWxpZGF0b3IgZm91bmQgYXQgdGhpcyBpbmRleAotbWF4aW11bSA9IHswfTogbXVzdCBoYXZlIGEgbWF4aW11bSB2YWx1ZSBvZiB7MX0KLW1heEl0ZW1zID0gezB9OiB0aGVyZSBtdXN0IGJlIGEgbWF4aW11bSBvZiB7MX0gaXRlbXMgaW4gdGhlIGFycmF5Ci1tYXhMZW5ndGggPSB7MH06IG1heSBvbmx5IGJlIHsxfSBjaGFyYWN0ZXJzIGxvbmcKLW1heFByb3BlcnRpZXMgPSB7MH06IG1heSBvbmx5IGhhdmUgYSBtYXhpbXVtIG9mIHsxfSBwcm9wZXJ0aWVzCi1taW5pbXVtID0gezB9OiBtdXN0IGhhdmUgYSBtaW5pbXVtIHZhbHVlIG9mIHsxfQotbWluSXRlbXMgPSB7MH06IHRoZXJlIG11c3QgYmUgYSBtaW5pbXVtIG9mIHsxfSBpdGVtcyBpbiB0aGUgYXJyYXkKLW1pbkxlbmd0aCA9IHswfTogbXVzdCBiZSBhdCBsZWFzdCB7MX0gY2hhcmFjdGVycyBsb25nCi1taW5Qcm9wZXJ0aWVzID0gezB9OiBzaG91bGQgaGF2ZSBhIG1pbmltdW0gb2YgezF9IHByb3BlcnRpZXMKLW11bHRpcGxlT2YgPSB7MH06IG11c3QgYmUgbXVsdGlwbGUgb2YgezF9Ci1ub3RBbGxvd2VkID0gezB9LnsxfTogaXMgbm90IGFsbG93ZWQgYnV0IGl0IGlzIGluIHRoZSBkYXRhCi1ub3QgPSB7MH06IHNob3VsZCBub3QgYmUgdmFsaWQgdG8gdGhlIHNjaGVtYSB7MX0KLW9uZU9mID0gezB9OiBzaG91bGQgYmUgdmFsaWQgdG8gb25lIGFuZCBvbmx5IG9uZSBvZiB0aGUgc2NoZW1hcyB7MX0KLXBhdHRlcm5Qcm9wZXJ0aWVzID0gezB9OiBoYXMgc29tZSBlcnJvciB3aXRoICdwYXR0ZXJuIHByb3BlcnRpZXMnCi1wYXR0ZXJuID0gezB9OiBkb2VzIG5vdCBtYXRjaCB0aGUgcmVnZXggcGF0dGVybiB7MX0KLXByb3BlcnRpZXMgPSB7MH06IGhhcyBhbiBlcnJvciB3aXRoICdwcm9wZXJ0aWVzJwotcmVhZE9ubHkgPSB7MH06IGlzIGEgcmVhZG9ubHkgZmllbGQsIGl0IGNhbm5vdCBiZSBjaGFuZ2VkCi0kcmVmID0gezB9OiBoYXMgYW4gZXJyb3Igd2l0aCAncmVmcycKLXJlcXVpcmVkID0gezB9LnsxfTogaXMgbWlzc2luZyBidXQgaXQgaXMgcmVxdWlyZWQKLXR5cGUgPSB7MH06IHsxfSBmb3VuZCwgezJ9IGV4cGVjdGVkCi11bmlvblR5cGUgPSB7MH06IHsxfSBmb3VuZCwgYnV0IHsyfSBpcyByZXF1aXJlZAotdW5pcXVlSXRlbXMgPSB7MH06IHRoZSBpdGVtcyBpbiB0aGUgYXJyYXkgbXVzdCBiZSB1bmlxdWUKLXV1aWQgPSB7MH06IHsxfSBpcyBhbiBpbnZhbGlkIHsyfQotaWQgPSB7MH06IHsxfSBpcyBhbiBpbnZhbGlkIHNlZ21lbnQgZm9yIFVSSSB7Mn0KIGV4Y2x1c2l2ZU1heGltdW0gPSB7MH06IG11c3QgaGF2ZSBhbiBleGNsdXNpdmUgbWF4aW11bSB2YWx1ZSBvZiB7MX0KIGV4Y2x1c2l2ZU1pbmltdW0gPSB7MH06IG11c3QgaGF2ZSBhbiBleGNsdXNpdmUgbWluaW11bSB2YWx1ZSBvZiB7MX0KIGZhbHNlID0gQm9vbGVhbiBzY2hlbWEgZmFsc2UgaXMgbm90IHZhbGlkCi1jb25zdCA9IHswfTogbXVzdCBiZSBhIGNvbnN0YW50IHZhbHVlIHsxfQotY29udGFpbnMgPSB7MH06IGRvZXMgbm90IGNvbnRhaW4gYW4gZWxlbWVudCB0aGF0IHBhc3NlcyB0aGVzZSB2YWxpZGF0aW9uczogezF9Citmb3JtYXQgPSB7MH06IGRvZXMgbm90IG1hdGNoIHRoZSB7MX0gcGF0dGVybiB7Mn0KK2lkID0gezB9OiB7MX0gaXMgYW4gaW52YWxpZCBzZWdtZW50IGZvciBVUkkgezJ9CitpdGVtcyA9IHswfVt7MX1dOiBubyB2YWxpZGF0b3IgZm91bmQgYXQgdGhpcyBpbmRleAorbWF4SXRlbXMgPSB7MH06IHRoZXJlIG11c3QgYmUgYSBtYXhpbXVtIG9mIHsxfSBpdGVtcyBpbiB0aGUgYXJyYXkKK21heExlbmd0aCA9IHswfTogbWF5IG9ubHkgYmUgezF9IGNoYXJhY3RlcnMgbG9uZworbWF4UHJvcGVydGllcyA9IHswfTogbWF5IG9ubHkgaGF2ZSBhIG1heGltdW0gb2YgezF9IHByb3BlcnRpZXMKK21heGltdW0gPSB7MH06IG11c3QgaGF2ZSBhIG1heGltdW0gdmFsdWUgb2YgezF9CittaW5JdGVtcyA9IHswfTogdGhlcmUgbXVzdCBiZSBhIG1pbmltdW0gb2YgezF9IGl0ZW1zIGluIHRoZSBhcnJheQorbWluTGVuZ3RoID0gezB9OiBtdXN0IGJlIGF0IGxlYXN0IHsxfSBjaGFyYWN0ZXJzIGxvbmcKK21pblByb3BlcnRpZXMgPSB7MH06IHNob3VsZCBoYXZlIGEgbWluaW11bSBvZiB7MX0gcHJvcGVydGllcworbWluaW11bSA9IHswfTogbXVzdCBoYXZlIGEgbWluaW11bSB2YWx1ZSBvZiB7MX0KK211bHRpcGxlT2YgPSB7MH06IG11c3QgYmUgbXVsdGlwbGUgb2YgezF9Citub3QgPSB7MH06IHNob3VsZCBub3QgYmUgdmFsaWQgdG8gdGhlIHNjaGVtYSB7MX0KK25vdEFsbG93ZWQgPSB7MH0uezF9OiBpcyBub3QgYWxsb3dlZCBidXQgaXQgaXMgaW4gdGhlIGRhdGEKK29uZU9mID0gezB9OiBzaG91bGQgYmUgdmFsaWQgdG8gb25lIGFuZCBvbmx5IG9uZSBvZiBzY2hlbWEsIGJ1dCBtb3JlIHRoYW4gb25lIGFyZSB2YWxpZDogezF9CitwYXR0ZXJuID0gezB9OiBkb2VzIG5vdCBtYXRjaCB0aGUgcmVnZXggcGF0dGVybiB7MX0KK3BhdHRlcm5Qcm9wZXJ0aWVzID0gezB9OiBoYXMgc29tZSBlcnJvciB3aXRoICdwYXR0ZXJuIHByb3BlcnRpZXMnCitwcm9wZXJ0aWVzID0gezB9OiBoYXMgYW4gZXJyb3Igd2l0aCAncHJvcGVydGllcycKIHByb3BlcnR5TmFtZXMgPSBQcm9wZXJ0eSBuYW1lIHswfSBpcyBub3QgdmFsaWQgZm9yIHZhbGlkYXRpb246IHsxfQorcmVhZE9ubHkgPSB7MH06IGlzIGEgcmVhZG9ubHkgZmllbGQsIGl0IGNhbm5vdCBiZSBjaGFuZ2VkCityZXF1aXJlZCA9IHswfS57MX06IGlzIG1pc3NpbmcgYnV0IGl0IGlzIHJlcXVpcmVkCit0eXBlID0gezB9OiB7MX0gZm91bmQsIHsyfSBleHBlY3RlZAogdW5ldmFsdWF0ZWRQcm9wZXJ0aWVzID0gVGhlcmUgYXJlIHVuZXZhbHVhdGVkIHByb3BlcnRpZXMgYXQgZm9sbG93aW5nIHBhdGhzIHswfQordW5pb25UeXBlID0gezB9OiB7MX0gZm91bmQsIGJ1dCB7Mn0gaXMgcmVxdWlyZWQKK3VuaXF1ZUl0ZW1zID0gezB9OiB0aGUgaXRlbXMgaW4gdGhlIGFycmF5IG11c3QgYmUgdW5pcXVlCit1dWlkID0gezB9OiB7MX0gaXMgYW4gaW52YWxpZCB7Mn0KZGlmZiAtLWdpdCBhL3NyYy9tYWluL3Jlc291cmNlcy9qc3YtbWVzc2FnZXNfZGUucHJvcGVydGllcyBiL3NyYy9tYWluL3Jlc291cmNlcy9qc3YtbWVzc2FnZXNfZGUucHJvcGVydGllcwppbmRleCBlY2FhZWQ3Li5mZDRjZGVmIDEwMDY0NAotLS0gYS9zcmMvbWFpbi9yZXNvdXJjZXMvanN2LW1lc3NhZ2VzX2RlLnByb3BlcnRpZXMKKysrIGIvc3JjL21haW4vcmVzb3VyY2VzL2pzdi1tZXNzYWdlc19kZS5wcm9wZXJ0aWVzCkBAIC0xLDQwICsxLDQyIEBACiskcmVmID0gezB9OiBFaW4gRmVobGVyIG1pdCAncmVmcycgaXN0IGF1ZmdldHJldGVuCiBhZGRpdGlvbmFsUHJvcGVydGllcyA9IHswfS57MX0gaXN0IG5pY2h0IGltIFNjaGVtYSBkZWZpbmllcnQgdW5kIGRhcyBTY2hlbWEgdmVyYmlldGV0ICdhZGRpdGlvbmFsUHJvcGVydGllcycKIGFsbE9mID0gezB9IG11c3MgZ/xsdGlnIGb8ciBhbGxlIFNjaGVtYXRhIHsxfSBzZWluCiBhbnlPZiA9IHswfSBtdXNzIGf8bHRpZyBm/HIgbWluZGVzdGVucyBlaW4gU2NoZW1hIHsxfSBzZWluCitjb25zdCA9IHswfSBtdXNzIGRlbiBrb25zdGFudGVuIFdlcnQgezF9IGFubmVobWVuCitjb250YWlucyA9IHswfSBiZWluaGFsdGV0IGtlaW4gRWxlbWVudCwgZGFzIGRpZXNlIFZhbGlkaWVydW5nIGJlc3RlaHQ6IHsxfQogY3Jvc3NFZGl0cyA9IHswfTogRWluIEZlaGxlciBtaXQgJ2Nyb3NzIGVkaXRzJyBpc3QgYXVmZ2V0cmV0ZW4KK2RhdGVUaW1lID0gezB9OiB7MX0gaXN0IGVpbiB1bmf8bHRpZ2VzIHsyfQogZGVwZW5kZW5jaWVzID0gezB9IGhhdCBlaW5lbiBGZWhsZXIgbWl0IEFiaORuZ2lna2VpdGVuIHsxfQogZGVwZW5kZW50UmVxdWlyZWQgPSB7MH0gZmVobHQgZWluZSBFaWdlbnNjaGFmdCwgd2VsY2hlICdkZXBlbmRlbnRSZXF1aXJlZCcgezF9IGlzdAogZGVwZW5kZW50U2NoZW1hcyA9IHswfTogRWluIEZlaGxlciBtaXQgJ2RlcGVuZGVudFNjaGVtYXMnIHsxfSBpc3QgYXVmZ2V0cmV0ZW4KIGVkaXRzID0gezB9OiBFaW4gRmVobGVyIG1pdCAnZWRpdHMnIGlzdCBhdWZnZXRyZXRlbgogZW51bSA9IHswfTogRWluIFdlcnQgaW4gZGVyIEF1ZnrkaGx1bmcgezF9IGZlaGx0CitleGNsdXNpdmVNYXhpbXVtID0gezB9IG11c3MgZ3L232VyIHNlaW4gYWxzIHsxfQorZXhjbHVzaXZlTWluaW11bSA9IHswfSBtdXNzIGtsZWluZXIgc2VpbiBhbHMgezF9CitmYWxzZSA9IERhcyBib29sZXNjaGUgU2NoZW1hICdmYWxzZScgaXN0IHVuZ/xsdGlnCiBmb3JtYXQgPSB7MH0gbXVzcyBkZW0gRm9ybWF0IHsxfSBlbnRzcHJlY2hlbiB7Mn0KK2lkID0gezB9OiB7MX0gaXN0IGVpbiB1bmf8bHRpZ2VzIFNlZ21lbnQgZvxyIGRpZSBVUkkgezJ9CiBpdGVtcyA9IHswfVt7MX1dOiBLZWluIFZhbGlkYXRvciBhbiBkaWVzZW0gSW5kZXggZ2VmdW5kZW4KLW1heGltdW0gPSB7MH0gZGFyZiBkZW4gV2VydCB7MX0gbmljaHQg/GJlcnNjaHJlaXRlbgogbWF4SXRlbXMgPSB7MH0gZGFyZiBo9mNoc3RlbnMgezF9IEVsZW1lbnQoZSkgYmVpbmhhbHRlbgogbWF4TGVuZ3RoID0gezB9IGRhcmYgaPZjaHN0ZW5zIHsxfSBaZWljaGVuIGxhbmcgc2VpbgogbWF4UHJvcGVydGllcyA9IHswfSBkYXJmIGj2Y2hzdGVucyB7MX0gRWlnZW5zY2hhZnQoZW4pIGhhYmVuCi1taW5pbXVtID0gezB9IG11c3MgbWluZGVzdGVucyBkZW4gV2VydCB7MX0gaGFiZW4KK21heGltdW0gPSB7MH0gZGFyZiBkZW4gV2VydCB7MX0gbmljaHQg/GJlcnNjaHJlaXRlbgogbWluSXRlbXMgPSB7MH0gbXVzcyBtaW5kZXN0ZW5zIHsxfSBFbGVtZW50KGUpIGJlaW5oYWx0ZW4KIG1pbkxlbmd0aCA9IHswfSBtdXNzIG1pbmRlc3RlbnMgezF9IFplaWNoZW4gbGFuZyBzZWluCiBtaW5Qcm9wZXJ0aWVzID0gezB9IG11c3MgbWluZGVzdGVucyB7MX0gRWlnZW5zY2hhZnQoZW4pIGhhYmVuCittaW5pbXVtID0gezB9IG11c3MgbWluZGVzdGVucyBkZW4gV2VydCB7MX0gaGFiZW4KIG11bHRpcGxlT2YgPSB7MH0gbXVzcyBlaW4gVmllbGZhY2hlcyB2b24gezF9IHNlaW4KK25vdCA9IHswfSBkYXJmIG5pY2h0IGf8bHRpZyBzZWluIGb8ciBkYXMgU2NoZW1hIHsxfQogbm90QWxsb3dlZCA9IHswfS57MX0gaXN0IG5pY2h0IGVybGF1YnQgdW5kIGRhcmYgZm9sZ2xpY2ggbmljaHQgYXVmdHJldGVuCi1ub3QgPSB7MH0gc29sbCBuaWNodCBn/Gx0aWcgc2VpbiBm/HIgZGFzIFNjaGVtYSB7MX0KLW9uZU9mID0gezB9IGRhcmYgbnVyIGb8ciBlaW4gZWluemlnZXMgU2NoZW1hIHsxfSBn/Gx0aWcgc2VpbgotcGF0dGVyblByb3BlcnRpZXMgPSB7MH0gc3RpbW10IG5pY2h0IPxiZXJlaW4gbWl0IGRlbSBGb3JtYXQgZGVmaW5pZXJ0IGluICdwYXR0ZXJuIHByb3BlcnRpZXMnCitvbmVPZiA9IHswfSBkYXJmIG51ciBm/HIgZWluIGVpbnppZ2VzIFNjaGVtYSBn/Gx0aWcgc2VpbiwgYWJlciBtZWhyIGFscyBlaW4gU2NoZW1hIGlzdCBn/Gx0aWc6IHsxfQogcGF0dGVybiA9IHswfSBzdGltbXQgbmljaHQgbWl0IGRlbSByZWd1bORyZW4gQXVzZHJ1Y2sgezF9IPxiZXJlaW4KK3BhdHRlcm5Qcm9wZXJ0aWVzID0gezB9IHN0aW1tdCBuaWNodCD8YmVyZWluIG1pdCBkZW0gRm9ybWF0IGRlZmluaWVydCBpbiAncGF0dGVybiBwcm9wZXJ0aWVzJwogcHJvcGVydGllcyA9IHswfTogRWluIEZlaGxlciBtaXQgJ3Byb3BlcnRpZXMnIGlzdCBhdWZnZXRyZXRlbgotcmVhZE9ubHkgPSB7MH0gaXN0IGVpbiBzY2hyZWliZ2VzY2j8dHp0ZXMgRmVsZCB1bmQga2FubiBuaWNodCB2ZXLkbmRlcnQgd2VyZGVuCi0kcmVmID0gezB9OiBFaW4gRmVobGVyIG1pdCAncmVmcycgaXN0IGF1ZmdldHJldGVuCi1yZXF1aXJlZCA9IHswfS57MX0gaXN0IGVpbiBQZmxpY2h0ZmVsZCBhYmVyIGZlaGx0Ci10eXBlID0gezB9OiB7MX0gd3VyZGUgZ2VmdW5kZW4gYWJlciB7Mn0gZXJ3YXJ0ZXQKLXVuaW9uVHlwZSA9IHswfTogezF9IHd1cmRlIGdlZnVuZGVuIGFiZXIgezJ9IHdpcmQgdmVybGFuZ3QKLXVuaXF1ZUl0ZW1zID0gezB9OiBEaWUgRWxlbWVudChlKSBkZXMgQXJyYXlzIG38c3NlbiBlaW5tYWxpZyBzZWluCi11dWlkID0gezB9OiB7MX0gaXN0IGVpbiB1bmf8bHRpZ2VzIHsyfQotaWQgPSB7MH06IHsxfSBpc3QgZWluIHVuZ/xsdGlnZXMgU2VnbWVudCBm/HIgZGllIFVSSSB7Mn0KLWV4Y2x1c2l2ZU1heGltdW0gPSB7MH0gbXVzcyBncvbfZXIgc2VpbiBhbHMgezF9Ci1leGNsdXNpdmVNaW5pbXVtID0gezB9IG11c3Mga2xlaW5lciBzZWluIGFscyB7MX0KLWZhbHNlID0gRGFzIGJvb2xzY2hlIFNjaGVtYSAnZmFsc2UnIGlzdCB1bmf8bHRpZwotY29uc3QgPSB7MH0gbXVzcyBkZW4ga29uc3RhbnRlbiBXZXJ0IHsxfSBhbm5laG1lbgotY29udGFpbnMgPSB7MH0gYmVpbmhhbHRldCBrZWluIEVsZW1lbnQsIGRhcyBkaWVzZSBWYWxpZGllcnVuZyBiZXN0ZWh0OiB7MX0KIHByb3BlcnR5TmFtZXMgPSBFaWdlbnNjaGFmdHNuYW1lIHswfSBpc3QgdW5n/Gx0aWcgZvxyIGRpZSBWYWxpZGllcnVuZzogezF9CityZWFkT25seSA9IHswfSBpc3QgZWluIHNjaHJlaWJnZXNjaPx0enRlcyBGZWxkIHVuZCBrYW5uIG5pY2h0IHZlcuRuZGVydCB3ZXJkZW4KK3JlcXVpcmVkID0gezB9LnsxfSBpc3QgZWluIFBmbGljaHRmZWxkIGFiZXIgZmVobHQKK3R5cGUgPSB7MH06IHsxfSB3dXJkZSBnZWZ1bmRlbiwgYWJlciB7Mn0gZXJ3YXJ0ZXQKK3VuZXZhbHVhdGVkUHJvcGVydGllcyA9IEVpZ2Vuc2NoYWZ0ZW4gaW4gZm9sZ2VuZGVuIFBmYWRlbiB3dXJkZW4gbmljaHQgZXZhbHVpZXJ0OiB7MH0KK3VuaW9uVHlwZSA9IHswfTogezF9IHd1cmRlIGdlZnVuZGVuIGFiZXIgezJ9IHdpcmQgdmVybGFuZ3QKK3VuaXF1ZUl0ZW1zID0gezB9OiBEaWUgRWxlbWVudChlKSBkZXMgQXJyYXlzIGT8cmZlbiBudXIgZWlubWFsIGF1ZnRyZXRlbgordXVpZCA9IHswfTogezF9IGlzdCBlaW4gdW5n/Gx0aWdlcyB7Mn0KZGlmZiAtLWdpdCBhL3NyYy9tYWluL3Jlc291cmNlcy9qc3YtbWVzc2FnZXNfemhfQ04ucHJvcGVydGllcyBiL3NyYy9tYWluL3Jlc291cmNlcy9qc3YtbWVzc2FnZXNfemhfQ04ucHJvcGVydGllcwppbmRleCA3YjVlNjM2Li4wZWUyMWIyIDEwMDY0NAotLS0gYS9zcmMvbWFpbi9yZXNvdXJjZXMvanN2LW1lc3NhZ2VzX3poX0NOLnByb3BlcnRpZXMKKysrIGIvc3JjL21haW4vcmVzb3VyY2VzL2pzdi1tZXNzYWdlc196aF9DTi5wcm9wZXJ0aWVzCkBAIC0xLDQwICsxLDQ1IEBACiskcmVmID0gezB9XHVGRjFBJ3JlZnMnIFx1NjcwOVx1OTUxOVx1OEJFRgogYWRkaXRpb25hbFByb3BlcnRpZXMgPSB7MH0uezF9XHVGRjFBXHU2NzJBXHU1NzI4XHU2N0I2XHU2Nzg0XHU0RTJEXHU1QjlBXHU0RTQ5XHU0RTE0XHU2N0I2XHU2Nzg0XHU0RTBEXHU1MTQxXHU4QkI4XHU5NjQ0XHU1MkEwXHU1QzVFXHU2MDI3CiBhbGxPZiA9IHswfVx1RkYxQVx1NUU5NFx1OEJFNVx1NUJGOVx1NjI0MFx1NjcwOVx1NkEyMVx1NUYwRiB7MX0gXHU5MEZEXHU2NzA5XHU2NTQ4CiBhbnlPZiA9IHswfVx1RkYxQVx1NUU5NFx1OEJFNVx1NUJGOVx1NEVGQlx1NEY1NVx1NjdCNlx1Njc4NCB7MX0gXHU5MEZEXHU2NzA5XHU2NTQ4Citjb25zdCA9IHswfVx1RkYxQVx1NUZDNVx1OTg3Qlx1NjYyRlx1NUUzOFx1OTFDRlx1NTAzQyB7MX0KK2NvbnRhaW5zID0gezB9XHVGRjFBXHU0RTBEXHU1MzA1XHU1NDJCXHU5MDFBXHU4RkM3XHU4RkQ5XHU0RTlCXHU5QThDXHU4QkMxXHU3Njg0XHU1MTQzXHU3RDIwXHVGRjFBezF9CiBjcm9zc0VkaXRzID0gezB9XHVGRjFBXHUyMDFDXHU0RUE0XHU1M0M5XHU3RjE2XHU4RjkxXHUyMDFEXHU2NzA5XHU5NTE5XHU4QkVGCisjICJkYXRlVGltZSIgdHJhbnNsYXRpb24gdG8gYmUgcmV2aWV3ZWQgYnkgYSBuYXRpdmUgc3BlYWtlcgorZGF0ZVRpbWUgPSB7MH1cdUZGMUF7MX0gXHU2NjJGXHU2NUUwXHU2NTQ4XHU3Njg0IHsyfQogZGVwZW5kZW5jaWVzID0gezB9XHVGRjFBXHU0RjlEXHU4RDU2XHU5ODc5IHsxfSBcdTY3MDlcdTk1MTlcdThCRUYKIGRlcGVuZGVudFJlcXVpcmVkID0gezB9XHU3ZjNhXHU1YzExXHU0ZjlkXHU4ZDU2XHU5ODc5XHU2MjQwXHU5NzAwXHU3Njg0XHU1YzVlXHU2MDI3IHsxfQogZGVwZW5kZW50U2NoZW1hcyA9IHswfVx1NGY5ZFx1OGQ1Nlx1NmEyMVx1NWYwZiB7MX0gXHU2NzA5XHU5NTE5XHU4QkVGCiBlZGl0cyA9IHswfVx1RkYxQVx1MjAxQ1x1N0YxNlx1OEY5MVx1MjAxRFx1NjcwOVx1OTUxOVx1OEJFRgogZW51bSA9IHswfVx1RkYxQVx1Njc5QVx1NEUzRSB7MX0gXHU0RTJEXHU2Q0ExXHU2NzA5XHU1MDNDCi1mb3JtYXQgPSB7MH1cdUZGMUFcdTRFMEUgezF9IFx1NkEyMVx1NUYwRiB7Mn0gXHU0RTBEXHU1MzM5XHU5MTRECi1pdGVtcyA9IHswfVt7MX1dXHVGRjFBXHU1NzI4XHU2QjY0XHU3RDIyXHU1RjE1XHU0RTJEXHU2MjdFXHU0RTBEXHU1MjMwXHU5QThDXHU4QkMxXHU1NjY4Ci1tYXhpbXVtID0gezB9XHVGRjFBXHU2NzAwXHU1OTI3XHU1MDNDXHU1RkM1XHU5ODdCXHU0RTNBIHsxfQotbWF4SXRlbXMgPSB7MH1cdUZGMUFcdTY1NzBcdTdFQzRcdTRFMkRcdTY3MDBcdTU5MUFcdTVGQzVcdTk4N0JcdTY3MDkgezF9IFx1NEUyQVx1OTg3OVx1NzZFRQotbWF4TGVuZ3RoID0gezB9XHVGRjFBXHU1M0VGXHU4MEZEXHU1M0VBXHU2NzA5IHsxfSBcdTRFMkFcdTVCNTdcdTdCMjZcdTk1N0YKLW1heFByb3BlcnRpZXMgPSB7MH1cdUZGMUFcdTY3MDBcdTU5MUFcdTUzRUFcdTgwRkRcdTY3MDkgezF9IFx1NEUyQVx1NUM1RVx1NjAyNwotbWluaW11bSA9IHswfVx1RkYxQVx1NjcwMFx1NUMwRlx1NTAzQ1x1NUZDNVx1OTg3Qlx1NEUzQSB7MX0KLW1pbkl0ZW1zID0gezB9XHVGRjFBXHU2NTcwXHU3RUM0XHU0RTJEXHU1RkM1XHU5ODdCXHU4MUYzXHU1QzExXHU2NzA5IHsxfSBcdTRFMkFcdTk4NzlcdTc2RUUKLW1pbkxlbmd0aCA9IHswfVx1RkYxQVx1NUZDNVx1OTg3Qlx1ODFGM1x1NUMxMVx1NEUzQSB7MX0gXHU0RTJBXHU1QjU3XHU3QjI2XHU5NTdGCi1taW5Qcm9wZXJ0aWVzID0gezB9XHVGRjFBXHU1RTk0XHU4QkU1XHU4MUYzXHU1QzExXHU2NzA5IHsxfSBcdTRFMkFcdTVDNUVcdTYwMjcKLW11bHRpcGxlT2YgPSB7MH1cdUZGMUFcdTVGQzVcdTk4N0JcdTY2MkYgezF9IFx1NzY4NFx1NTAwRFx1NjU3MAotbm90QWxsb3dlZCA9IHswfS57MX1cdUZGMUFcdTRFMERcdTg4QUJcdTUxNDFcdThCQjhcdTRGNDZcdTU3MjhcdTY1NzBcdTYzNkVcdTRFMkQKLW5vdCA9IHswfVx1RkYxQVx1NEUwRFx1NUU5NFx1NUJGOVx1NjdCNlx1Njc4NCB7MX0gXHU2NzA5XHU2NTQ4Ci1vbmVPZiA9IHswfVx1RkYxQVx1NUU5NFx1OEJFNVx1NUJGOVx1NEUwMFx1NzlDRFx1NEUxNFx1NEVDNVx1NEUwMFx1NzlDRFx1NkEyMVx1NUYwRlx1NjcwOVx1NjU0OCB7MX0KLXBhdHRlcm5Qcm9wZXJ0aWVzID0gezB9XHVGRjFBXHUyMDFDXHU2QTIxXHU1RjBGXHU1QzVFXHU2MDI3XHUyMDFEXHU2NzA5XHU0RTAwXHU0RTlCXHU5NTE5XHU4QkVGCi1wYXR0ZXJuID0gezB9XHVGRjFBXHU0RTBFXHU2QjYzXHU1MjE5XHU4ODY4XHU4RkJFXHU1RjBGXHU2QTIxXHU1RjBGIHsxfSBcdTRFMERcdTUzMzlcdTkxNEQKLXByb3BlcnRpZXMgPSB7MH1cdUZGMUFcdTIwMUNcdTVDNUVcdTYwMjdcdTIwMURcdTY3MDlcdTk1MTlcdThCRUYKLXJlYWRPbmx5ID0gezB9XHVGRjFBXHU2NjJGXHU1M0VBXHU4QkZCXHU1QjU3XHU2QkI1XHVGRjBDXHU0RTBEXHU4MEZEXHU2NkY0XHU2NTM5Ci0kcmVmID0gezB9XHVGRjFBJ3JlZnMnIFx1NjcwOVx1OTUxOVx1OEJFRgotcmVxdWlyZWQgPSB7MH0uezF9XHVGRjFBXHU3RjNBXHU1QzExXHU0RjQ2XHU1QjgzXHU2NjJGXHU1RkM1XHU5NzAwXHU3Njg0Ci10eXBlID0gezB9XHVGRjFBXHU2MjdFXHU1MjMwIHsxfVx1RkYwQ1x1OTg4NFx1NjcxRlx1NEUzQSB7Mn0KLXVuaW9uVHlwZSA9IHswfVx1RkYxQVx1NjI3RVx1NTIzMCB7MX1cdUZGMENcdTRGNDZcdTk3MDBcdTg5ODEgezJ9Ci11bmlxdWVJdGVtcyA9IHswfVx1RkYxQVx1NjU3MFx1N0VDNFx1NEUyRFx1NzY4NFx1OTg3OVx1NzZFRVx1NUZDNVx1OTg3Qlx1NjYyRlx1NTUyRlx1NEUwMFx1NzY4NAotdXVpZCA9IHswfVx1RkYxQXsxfSBcdTY2MkZcdTY1RTBcdTY1NDhcdTc2ODQgezJ9Ci1pZCA9IHswfVx1RkYxQXsxfSBcdTY2MkYgVVJJIHsyfSBcdTc2ODRcdTY1RTBcdTY1NDhcdTZCQjUKIGV4Y2x1c2l2ZU1heGltdW0gPSB7MH1cdUZGMUFcdTVGQzVcdTk4N0JcdTUxNzdcdTY3MDkgezF9IFx1NzY4NFx1NzJFQ1x1NTM2MFx1NjcwMFx1NTkyN1x1NTAzQwogZXhjbHVzaXZlTWluaW11bSA9IHswfVx1RkYxQVx1NUZDNVx1OTg3Qlx1NTE3N1x1NjcwOSB7MX0gXHU3Njg0XHU1NTJGXHU0RTAwXHU2NzAwXHU1QzBGXHU1MDNDCiBmYWxzZSA9IFx1NUUwM1x1NUMxNFx1NjdCNlx1Njc4NCBmYWxzZSBcdTY1RTBcdTY1NDgKLWNvbnN0ID0gezB9XHVGRjFBXHU1RkM1XHU5ODdCXHU2NjJGXHU1RTM4XHU5MUNGXHU1MDNDIHsxfQotY29udGFpbnMgPSB7MH1cdUZGMUFcdTRFMERcdTUzMDVcdTU0MkJcdTkwMUFcdThGQzdcdThGRDlcdTRFOUJcdTlBOENcdThCQzFcdTc2ODRcdTUxNDNcdTdEMjBcdUZGMUF7MX0KK2Zvcm1hdCA9IHswfVx1RkYxQVx1NEUwRSB7MX0gXHU2QTIxXHU1RjBGIHsyfSBcdTRFMERcdTUzMzlcdTkxNEQKK2lkID0gezB9XHVGRjFBezF9IFx1NjYyRiBVUkkgezJ9IFx1NzY4NFx1NjVFMFx1NjU0OFx1NkJCNQoraXRlbXMgPSB7MH1bezF9XVx1RkYxQVx1NTcyOFx1NkI2NFx1N0QyMlx1NUYxNVx1NEUyRFx1NjI3RVx1NEUwRFx1NTIzMFx1OUE4Q1x1OEJDMVx1NTY2OAorbWF4SXRlbXMgPSB7MH1cdUZGMUFcdTY1NzBcdTdFQzRcdTRFMkRcdTY3MDBcdTU5MUFcdTVGQzVcdTk4N0JcdTY3MDkgezF9IFx1NEUyQVx1OTg3OVx1NzZFRQorbWF4TGVuZ3RoID0gezB9XHVGRjFBXHU1M0VGXHU4MEZEXHU1M0VBXHU2NzA5IHsxfSBcdTRFMkFcdTVCNTdcdTdCMjZcdTk1N0YKK21heFByb3BlcnRpZXMgPSB7MH1cdUZGMUFcdTY3MDBcdTU5MUFcdTUzRUFcdTgwRkRcdTY3MDkgezF9IFx1NEUyQVx1NUM1RVx1NjAyNworbWF4aW11bSA9IHswfVx1RkYxQVx1NjcwMFx1NTkyN1x1NTAzQ1x1NUZDNVx1OTg3Qlx1NEUzQSB7MX0KK21pbkl0ZW1zID0gezB9XHVGRjFBXHU2NTcwXHU3RUM0XHU0RTJEXHU1RkM1XHU5ODdCXHU4MUYzXHU1QzExXHU2NzA5IHsxfSBcdTRFMkFcdTk4NzlcdTc2RUUKK21pbkxlbmd0aCA9IHswfVx1RkYxQVx1NUZDNVx1OTg3Qlx1ODFGM1x1NUMxMVx1NEUzQSB7MX0gXHU0RTJBXHU1QjU3XHU3QjI2XHU5NTdGCittaW5Qcm9wZXJ0aWVzID0gezB9XHVGRjFBXHU1RTk0XHU4QkU1XHU4MUYzXHU1QzExXHU2NzA5IHsxfSBcdTRFMkFcdTVDNUVcdTYwMjcKK21pbmltdW0gPSB7MH1cdUZGMUFcdTY3MDBcdTVDMEZcdTUwM0NcdTVGQzVcdTk4N0JcdTRFM0EgezF9CittdWx0aXBsZU9mID0gezB9XHVGRjFBXHU1RkM1XHU5ODdCXHU2NjJGIHsxfSBcdTc2ODRcdTUwMERcdTY1NzAKK25vdCA9IHswfVx1RkYxQVx1NEUwRFx1NUU5NFx1NUJGOVx1NjdCNlx1Njc4NCB7MX0gXHU2NzA5XHU2NTQ4Citub3RBbGxvd2VkID0gezB9LnsxfVx1RkYxQVx1NEUwRFx1ODhBQlx1NTE0MVx1OEJCOFx1NEY0Nlx1NTcyOFx1NjU3MFx1NjM2RVx1NEUyRAorIyBuZWVkcyB0byBiZSByZS13b3JrZWQgYnkgYSBuYXRpdmUgc3BlYWtlcgorI29uZU9mID0gezB9XHVGRjFBXHU1RTk0XHU4QkU1XHU1QkY5XHU0RTAwXHU3OUNEXHU0RTE0XHU0RUM1XHU0RTAwXHU3OUNEXHU2QTIxXHU1RjBGXHU2NzA5XHU2NTQ4IHsxfQorcGF0dGVybiA9IHswfVx1RkYxQVx1NEUwRVx1NkI2M1x1NTIxOVx1ODg2OFx1OEZCRVx1NUYwRlx1NkEyMVx1NUYwRiB7MX0gXHU0RTBEXHU1MzM5XHU5MTRECitwYXR0ZXJuUHJvcGVydGllcyA9IHswfVx1RkYxQVx1MjAxQ1x1NkEyMVx1NUYwRlx1NUM1RVx1NjAyN1x1MjAxRFx1NjcwOVx1NEUwMFx1NEU5Qlx1OTUxOVx1OEJFRgorcHJvcGVydGllcyA9IHswfVx1RkYxQVx1MjAxQ1x1NUM1RVx1NjAyN1x1MjAxRFx1NjcwOVx1OTUxOVx1OEJFRgogcHJvcGVydHlOYW1lcyA9IFx1NUM1RVx1NjAyN1x1NTQwRFx1NzlGMCB7MH0gXHU1QkY5XHU5QThDXHU4QkMxXHU2NUUwXHU2NTQ4XHVGRjFBezF9CityZWFkT25seSA9IHswfVx1RkYxQVx1NjYyRlx1NTNFQVx1OEJGQlx1NUI1N1x1NkJCNVx1RkYwQ1x1NEUwRFx1ODBGRFx1NjZGNFx1NjUzOQorcmVxdWlyZWQgPSB7MH0uezF9XHVGRjFBXHU3RjNBXHU1QzExXHU0RjQ2XHU1QjgzXHU2NjJGXHU1RkM1XHU5NzAwXHU3Njg0Cit0eXBlID0gezB9XHVGRjFBXHU2MjdFXHU1MjMwIHsxfVx1RkYwQ1x1OTg4NFx1NjcxRlx1NEUzQSB7Mn0KKyMgInVuZXZhbHVhdGVkUHJvcGVydGllcyIgdHJhbnNsYXRpb24gdG8gYmUgYWRkZWQgYnkgYSBuYXRpdmUgc3BlYWtlcgorIyB1bmV2YWx1YXRlZFByb3BlcnRpZXMgPSAKK3VuaW9uVHlwZSA9IHswfVx1RkYxQVx1NjI3RVx1NTIzMCB7MX1cdUZGMENcdTRGNDZcdTk3MDBcdTg5ODEgezJ9Cit1bmlxdWVJdGVtcyA9IHswfVx1RkYxQVx1NjU3MFx1N0VDNFx1NEUyRFx1NzY4NFx1OTg3OVx1NzZFRVx1NUZDNVx1OTg3Qlx1NjYyRlx1NTUyRlx1NEUwMFx1NzY4NAordXVpZCA9IHswfVx1RkYxQXsxfSBcdTY2MkZcdTY1RTBcdTY1NDhcdTc2ODQgezJ9Cg==