ZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2E2NS52aW0gYi9ydW50aW1lL3N5bnRheC9hNjUudmltCmluZGV4IDk0MTk4ZTYuLjVhZGU4MDkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2E2NS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYTY1LnZpbQpAQCAtMywxMSArMyw4IEBACiAiIE1haW50YWluZXI6CUNsZW1lbnMgS2lyY2hnYXR0ZXJlciA8Y2xlbWVuc0AxNTQxLm9yZz4KICIgTGFzdCBDaGFuZ2U6CTIwMTQgSmFuIDA1CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xMzgsMjkgKzEzNSwyMSBAQAogc3luIG1hdGNoICBhNjVDb250aW51ZQkiXFwkIiBjb250YWluZWQKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfYTY1X3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2E2NV9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGE2NVNlY3Rpb24JU3BlY2lhbAotICBIaUxpbmsgYTY1QWRkcmVzcwlTcGVjaWFsCi0gIEhpTGluayBhNjVDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIGE2NVByZVByb2MJUHJlUHJvYwotICBIaUxpbmsgYTY1TnVtYmVyCU51bWJlcgotICBIaUxpbmsgYTY1U3RyaW5nCVN0cmluZwotICBIaUxpbmsgYTY1VHlwZQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGE2NU9wY29kZQlUeXBlCi0gIEhpTGluayBhNjVQQwkJRXJyb3IKLSAgSGlMaW5rIGE2NVRvZG8JVG9kbwotICBIaUxpbmsgYTY1SGlMbwlOdW1iZXIKK0hpTGluayBhNjVTZWN0aW9uCVNwZWNpYWwKK0hpTGluayBhNjVBZGRyZXNzCVNwZWNpYWwKK0hpTGluayBhNjVDb21tZW50CUNvbW1lbnQKK0hpTGluayBhNjVQcmVQcm9jCVByZVByb2MKK0hpTGluayBhNjVOdW1iZXIJTnVtYmVyCitIaUxpbmsgYTY1U3RyaW5nCVN0cmluZworSGlMaW5rIGE2NVR5cGUJU3RhdGVtZW50CitIaUxpbmsgYTY1T3Bjb2RlCVR5cGUKK0hpTGluayBhNjVQQwkJRXJyb3IKK0hpTGluayBhNjVUb2RvCVRvZG8KK0hpTGluayBhNjVIaUxvCU51bWJlcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiYTY1IgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvYWJhcC52aW0gYi9ydW50aW1lL3N5bnRheC9hYmFwLnZpbQppbmRleCAxZDFmNmFmLi5hYzU1MDRhIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9hYmFwLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9hYmFwLnZpbQpAQCAtNSwxMSArNSw4IEBACiAiIExhc3QgQ2hhbmdlOiAyMDEzIEp1biAxMwogIiAgICAgQ29tbWVudDogVGhhbmtzIHRvIEVQSS1VU0UgTGFicyBmb3IgYWxsIHlvdXIgYXNzaXN0YW5jZS4gOikKIAotIiBGb3IgdmVyc2lvbiAgPCA2LjA6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gPj0gNi4wOiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTQzLDExICs0MCw3IEBACiBzeW4gbWF0Y2ggICBhYmFwTnVtYmVyICAiXC1cPVw8XGRcK1w+Igogc3luIHJlZ2lvbiAgYWJhcEhleCAgICAgbWF0Y2hncm91cD1hYmFwSGV4IHN0YXJ0PSJYJyIgZW5kPSInIgogCi1pZiB2ZXJzaW9uID49IDYwMAotICBzZXRsb2NhbCBpc2tleXdvcmQ9NDgtNTcsXyxBLVosYS16LC8KLWVsc2UKLSAgc2V0IGlza2V5d29yZD00OC01NyxfLEEtWixhLXosLwotZW5kaWYKK3NldGxvY2FsIGlza2V5d29yZD00OC01NyxfLEEtWixhLXosLwogCiBzeW4gbWF0Y2ggICBhYmFwTmFtZXNwYWNlICAgICAgICAiXDwvXHdcKy8iCiAKQEAgLTE3NSwzOCArMTY4LDMwIEBACiBzeW4gbWF0Y2ggICBhYmFwVG9kbyAgICAgIlwjRUNcV1wrXHdcKyIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfYWJhcF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9hYmFwX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgYWJhcEVycm9yICAgICAgICAgIEVycm9yCi0gIEhpTGluayBhYmFwQ29tbWVudCAgICAgICAgQ29tbWVudAotICBIaUxpbmsgYWJhcEluY2x1ZGUgICAgICAgIEluY2x1ZGUKLSAgSGlMaW5rIGFiYXBTdGF0ZW1lbnQgICAgICBTdGF0ZW1lbnQKLSAgSGlMaW5rIGFiYXBDb21wbGV4U3RhdGVtZW50ICAgICAgU3RhdGVtZW50Ci0gIEhpTGluayBhYmFwU3BlY2lhbCAgICAgICAgU3BlY2lhbAotICBIaUxpbmsgYWJhcE5hbWVzcGFjZSAgICAgIFNwZWNpYWwKLSAgSGlMaW5rIGFiYXBTcGVjaWFsVGFibGVzICBTcGVjaWFsCi0gIEhpTGluayBhYmFwU3ltYm9sT3BlcmF0b3IgYWJhcE9wZXJhdG9yCi0gIEhpTGluayBhYmFwT3BlcmF0b3IgICAgICAgT3BlcmF0b3IKLSAgSGlMaW5rIGFiYXBDaGFyU3RyaW5nICAgICBTdHJpbmcKLSAgSGlMaW5rIGFiYXBTdHJpbmcgICAgICAgICBTdHJpbmcKLSAgSGlMaW5rIGFiYXBGbG9hdCAgICAgICAgICBGbG9hdAotICBIaUxpbmsgYWJhcFR5cGVzICAgICAgICAgIFR5cGUKLSAgSGlMaW5rIGFiYXBTeW1ib2wgICAgICAgICBTdHJ1Y3R1cmUKLSAgSGlMaW5rIGFiYXBTdHJ1Y3R1cmUgICAgICBTdHJ1Y3R1cmUKLSAgSGlMaW5rIGFiYXBGaWVsZCAgICAgICAgICBWYXJpYWJsZQotICBIaUxpbmsgYWJhcE51bWJlciAgICAgICAgIE51bWJlcgotICBIaUxpbmsgYWJhcEhleCAgICAgICAgICAgIE51bWJlcgorSGlMaW5rIGFiYXBFcnJvciAgICAgICAgICBFcnJvcgorSGlMaW5rIGFiYXBDb21tZW50ICAgICAgICBDb21tZW50CitIaUxpbmsgYWJhcEluY2x1ZGUgICAgICAgIEluY2x1ZGUKK0hpTGluayBhYmFwU3RhdGVtZW50ICAgICAgU3RhdGVtZW50CitIaUxpbmsgYWJhcENvbXBsZXhTdGF0ZW1lbnQgICAgICBTdGF0ZW1lbnQKK0hpTGluayBhYmFwU3BlY2lhbCAgICAgICAgU3BlY2lhbAorSGlMaW5rIGFiYXBOYW1lc3BhY2UgICAgICBTcGVjaWFsCitIaUxpbmsgYWJhcFNwZWNpYWxUYWJsZXMgIFNwZWNpYWwKK0hpTGluayBhYmFwU3ltYm9sT3BlcmF0b3IgYWJhcE9wZXJhdG9yCitIaUxpbmsgYWJhcE9wZXJhdG9yICAgICAgIE9wZXJhdG9yCitIaUxpbmsgYWJhcENoYXJTdHJpbmcgICAgIFN0cmluZworSGlMaW5rIGFiYXBTdHJpbmcgICAgICAgICBTdHJpbmcKK0hpTGluayBhYmFwRmxvYXQgICAgICAgICAgRmxvYXQKK0hpTGluayBhYmFwVHlwZXMgICAgICAgICAgVHlwZQorSGlMaW5rIGFiYXBTeW1ib2wgICAgICAgICBTdHJ1Y3R1cmUKK0hpTGluayBhYmFwU3RydWN0dXJlICAgICAgU3RydWN0dXJlCitIaUxpbmsgYWJhcEZpZWxkICAgICAgICAgIFZhcmlhYmxlCitIaUxpbmsgYWJhcE51bWJlciAgICAgICAgIE51bWJlcgorSGlMaW5rIGFiYXBIZXggICAgICAgICAgICBOdW1iZXIKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImFiYXAiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2FiYXF1cy52aW0gYi9ydW50aW1lL3N5bnRheC9hYmFxdXMudmltCmluZGV4IGNmNGIwODIuLmRkZjAyNTUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2FiYXF1cy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYWJhcXVzLnZpbQpAQCAtNCwxMSArNCw4IEBACiAiIExhc3QgQ2hhbmdlOgkyMDAyIEZlYiAyNAogIiBSZW1hcms6CUh1Z2UgaW1wcm92ZW1lbnQgaW4gZm9sZGluZyBwZXJmb3JtYW5jZS0tc2VlIGZpbGV0eXBlIHBsdWdpbgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMjUsMjQgKzIyLDE2IEBACiBzeW4gbWF0Y2ggYWJhcXVzQmFkTGluZQkiXlxzXCtcKi4qIiBkaXNwbGF5CiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2FiYXF1c19zeW5faW5pdHMiKQotCWlmIHZlcnNpb24gPCA1MDgKLQkJbGV0IGRpZF9hYmFxdXNfc3luX2luaXRzID0gMQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotCWVsc2UKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0JZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0JIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgotCUhpTGluayBhYmFxdXNDb21tZW50CUNvbW1lbnQKLQlIaUxpbmsgYWJhcXVzS2V5d29yZAlTdGF0ZW1lbnQKLQlIaUxpbmsgYWJhcXVzUGFyYW1ldGVyCUlkZW50aWZpZXIKLQlIaUxpbmsgYWJhcXVzVmFsdWUJQ29uc3RhbnQKLQlIaUxpbmsgYWJhcXVzQmFkTGluZSAgICBFcnJvcgorIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgorSGlMaW5rIGFiYXF1c0NvbW1lbnQJQ29tbWVudAorSGlMaW5rIGFiYXF1c0tleXdvcmQJU3RhdGVtZW50CitIaUxpbmsgYWJhcXVzUGFyYW1ldGVyCUlkZW50aWZpZXIKK0hpTGluayBhYmFxdXNWYWx1ZQlDb25zdGFudAorSGlMaW5rIGFiYXF1c0JhZExpbmUgICAgRXJyb3IKIAotCWRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiYWJhcXVzIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvYWJjLnZpbSBiL3J1bnRpbWUvc3ludGF4L2FiYy52aW0KaW5kZXggM2RjMDk4ZS4uNjhmMGNmMSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYWJjLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9hYmMudmltCkBAIC00LDExICs0LDggQEAKICIgVVJMOgkJaHR0cDovL3BlcnVuLmhzY3Mud21pbi5hYy51ay9+anJhL3ZpbS9zeW50YXgvYWJjLnZpbQogIiBMYXN0IENoYW5nZToJMjd0aCBBcHJpbCAyMDAxCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0zNiwyOCArMzMsMjAgQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9hYmNfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfYWJjX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgYWJjQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgYWJjSGVhZEZpZWxkCQlUeXBlCi0gIEhpTGluayBhYmNCb2R5RmllbGQJCVNwZWNpYWwKLSAgSGlMaW5rIGFiY0JhcgkJCVN0YXRlbWVudAotICBIaUxpbmsgYWJjVHVwbGUJCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGFiY0Jyb2tlbgkJCVN0YXRlbWVudAotICBIaUxpbmsgYWJjVGllCQkJU3RhdGVtZW50Ci0gIEhpTGluayBhYmNHdWl0YXJDaG9yZAlJZGVudGlmaWVyCi0gIEhpTGluayBhYmNOb3RlCQkJQ29uc3RhbnQKK0hpTGluayBhYmNDb21tZW50CQlDb21tZW50CitIaUxpbmsgYWJjSGVhZEZpZWxkCQlUeXBlCitIaUxpbmsgYWJjQm9keUZpZWxkCQlTcGVjaWFsCitIaUxpbmsgYWJjQmFyCQkJU3RhdGVtZW50CitIaUxpbmsgYWJjVHVwbGUJCQlTdGF0ZW1lbnQKK0hpTGluayBhYmNCcm9rZW4JCQlTdGF0ZW1lbnQKK0hpTGluayBhYmNUaWUJCQlTdGF0ZW1lbnQKK0hpTGluayBhYmNHdWl0YXJDaG9yZAlJZGVudGlmaWVyCitIaUxpbmsgYWJjTm90ZQkJCUNvbnN0YW50CiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJhYmMiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2FiZWwudmltIGIvcnVudGltZS9zeW50YXgvYWJlbC52aW0KaW5kZXggMDVlOGRhYy4uZGZhODcyZiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYWJlbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYWJlbC52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglKb2huIENvb2sgPGpvaG5jb29rM0BnbWFpbC5jb20+CiAiIExhc3QgQ2hhbmdlOgkyMDExIERlYyAyNwogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTIzLDQ4ICsxMjAsNDAgQEAKIHN5biBzeW5jIG1pbmxpbmVzPTEKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfYWJlbF9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9hYmVsX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAiIFRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSAgSGlMaW5rIGFiZWxIZWFkZXIJCWFiZWxTdGF0ZW1lbnQKLSAgSGlMaW5rIGFiZWxTZWN0aW9uCQlhYmVsU3RhdGVtZW50Ci0gIEhpTGluayBhYmVsRGVjbGFyYXRpb24JYWJlbFN0YXRlbWVudAotICBIaUxpbmsgYWJlbExvZ2ljYWxPcGVyYXRvcglhYmVsT3BlcmF0b3IKLSAgSGlMaW5rIGFiZWxSYW5nZU9wZXJhdG9yCWFiZWxPcGVyYXRvcgotICBIaUxpbmsgYWJlbEFsdGVybmF0ZU9wZXJhdG9yCWFiZWxPcGVyYXRvcgotICBIaUxpbmsgYWJlbEFyaXRobWV0aWNPcGVyYXRvcglhYmVsT3BlcmF0b3IKLSAgSGlMaW5rIGFiZWxSZWxhdGlvbmFsT3BlcmF0b3IJYWJlbE9wZXJhdG9yCi0gIEhpTGluayBhYmVsQXNzaWdubWVudE9wZXJhdG9yCWFiZWxPcGVyYXRvcgotICBIaUxpbmsgYWJlbFRydXRoVGFibGVPcGVyYXRvcglhYmVsT3BlcmF0b3IKLSAgSGlMaW5rIGFiZWxTcGVjaWZpZXIJCWFiZWxTdGF0ZW1lbnQKLSAgSGlMaW5rIGFiZWxPcGVyYXRvcgkJYWJlbFN0YXRlbWVudAotICBIaUxpbmsgYWJlbFN0YXRlbWVudAkJU3RhdGVtZW50Ci0gIEhpTGluayBhYmVsSWRlbnRpZmllcgkJSWRlbnRpZmllcgotICBIaUxpbmsgYWJlbFR5cGVJZAkJYWJlbFR5cGUKLSAgSGlMaW5rIGFiZWxUeXBlSWRDaGFyCQlhYmVsVHlwZQotICBIaUxpbmsgYWJlbFR5cGUJCVR5cGUKLSAgSGlMaW5rIGFiZWxOdW1iZXIJCWFiZWxTdHJpbmcKLSAgSGlMaW5rIGFiZWxTdHJpbmcJCVN0cmluZwotICBIaUxpbmsgYWJlbENvbnN0YW50CQlDb25zdGFudAotICBIaUxpbmsgYWJlbENvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGFiZWxFeHRlbnNpb24JCWFiZWxTcGVjaWFsCi0gIEhpTGluayBhYmVsU3BlY2lhbENoYXIJYWJlbFNwZWNpYWwKLSAgSGlMaW5rIGFiZWxUeXBlSWRFbmQJCWFiZWxTcGVjaWFsCi0gIEhpTGluayBhYmVsU3BlY2lhbAkJU3BlY2lhbAotICBIaUxpbmsgYWJlbERpcmVjdGl2ZQkJUHJlUHJvYwotICBIaUxpbmsgYWJlbFRvZG8JCVRvZG8KLSAgSGlMaW5rIGFiZWxFcnJvcgkJRXJyb3IKKyIgVGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgorSGlMaW5rIGFiZWxIZWFkZXIJCWFiZWxTdGF0ZW1lbnQKK0hpTGluayBhYmVsU2VjdGlvbgkJYWJlbFN0YXRlbWVudAorSGlMaW5rIGFiZWxEZWNsYXJhdGlvbglhYmVsU3RhdGVtZW50CitIaUxpbmsgYWJlbExvZ2ljYWxPcGVyYXRvcglhYmVsT3BlcmF0b3IKK0hpTGluayBhYmVsUmFuZ2VPcGVyYXRvcglhYmVsT3BlcmF0b3IKK0hpTGluayBhYmVsQWx0ZXJuYXRlT3BlcmF0b3IJYWJlbE9wZXJhdG9yCitIaUxpbmsgYWJlbEFyaXRobWV0aWNPcGVyYXRvcglhYmVsT3BlcmF0b3IKK0hpTGluayBhYmVsUmVsYXRpb25hbE9wZXJhdG9yCWFiZWxPcGVyYXRvcgorSGlMaW5rIGFiZWxBc3NpZ25tZW50T3BlcmF0b3IJYWJlbE9wZXJhdG9yCitIaUxpbmsgYWJlbFRydXRoVGFibGVPcGVyYXRvcglhYmVsT3BlcmF0b3IKK0hpTGluayBhYmVsU3BlY2lmaWVyCQlhYmVsU3RhdGVtZW50CitIaUxpbmsgYWJlbE9wZXJhdG9yCQlhYmVsU3RhdGVtZW50CitIaUxpbmsgYWJlbFN0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsgYWJlbElkZW50aWZpZXIJCUlkZW50aWZpZXIKK0hpTGluayBhYmVsVHlwZUlkCQlhYmVsVHlwZQorSGlMaW5rIGFiZWxUeXBlSWRDaGFyCQlhYmVsVHlwZQorSGlMaW5rIGFiZWxUeXBlCQlUeXBlCitIaUxpbmsgYWJlbE51bWJlcgkJYWJlbFN0cmluZworSGlMaW5rIGFiZWxTdHJpbmcJCVN0cmluZworSGlMaW5rIGFiZWxDb25zdGFudAkJQ29uc3RhbnQKK0hpTGluayBhYmVsQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIGFiZWxFeHRlbnNpb24JCWFiZWxTcGVjaWFsCitIaUxpbmsgYWJlbFNwZWNpYWxDaGFyCWFiZWxTcGVjaWFsCitIaUxpbmsgYWJlbFR5cGVJZEVuZAkJYWJlbFNwZWNpYWwKK0hpTGluayBhYmVsU3BlY2lhbAkJU3BlY2lhbAorSGlMaW5rIGFiZWxEaXJlY3RpdmUJCVByZVByb2MKK0hpTGluayBhYmVsVG9kbwkJVG9kbworSGlMaW5rIGFiZWxFcnJvcgkJRXJyb3IKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImFiZWwiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2FjZWRiLnZpbSBiL3J1bnRpbWUvc3ludGF4L2FjZWRiLnZpbQppbmRleCAxMTRlNGFiLi40M2NlYzNhIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9hY2VkYi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYWNlZGIudmltCkBAIC03LDExICs3LDggQEAKICIgU3ludGF4IGZpbGUgdG8gaGFuZGxlIGFsbCAkQUNFREIvd3NwZWMvKi53cm0gZmlsZXMsIHByaW1hcmlseSBtb2RlbHMud3JtCiAiIEFjZURCIHNvZnR3YXJlIGlzIGF2YWlsYWJsZSBmcm9tIGh0dHA6Ly93d3cuYWNlZGIub3JnCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC04NiwzNSArODMsMjcgQEAKICIgUmVzdCBvZiBzeW50YXggaGlnaGxpZ2h0aW5nIHJ1bGVzIHN0YXJ0IGhlcmUKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfYWNlZGJfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfYWNlZGJfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBhY2VkYk1hZ2ljCVNwZWNpYWwKLSAgSGlMaW5rIGFjZWRiSHliCVNwZWNpYWwKLSAgSGlMaW5rIGFjZWRiVHlwZQlUeXBlCi0gIEhpTGluayBhY2VkYk9wdGlvbglUeXBlCi0gIEhpTGluayBhY2VkYlN1YmNsYXNzCVR5cGUKLSAgSGlMaW5rIGFjZWRiU3VidGFnCUluY2x1ZGUKLSAgSGlMaW5rIGFjZWRiRmxhZwlJbmNsdWRlCi0gIEhpTGluayBhY2VkYlRhZwlJbmNsdWRlCi0gIEhpTGluayBhY2VkYkNsYXNzCVRvZG8KLSAgSGlMaW5rIGFjZWRiSGVscAlUb2RvCi0gIEhpTGluayBhY2VkYlhyZWYJSWRlbnRpZmllcgotICBIaUxpbmsgYWNlZGJNb2RpZmllcglMYWJlbAotICBIaUxpbmsgYWNlZGJDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIGFjZWRiQmxvY2sJTW9kZU1zZwotICBIaUxpbmsgYWNlZGJOdW1iZXIJTnVtYmVyCi0gIEhpTGluayBhY2VkYlN0cmluZwlTdHJpbmcKK0hpTGluayBhY2VkYk1hZ2ljCVNwZWNpYWwKK0hpTGluayBhY2VkYkh5YglTcGVjaWFsCitIaUxpbmsgYWNlZGJUeXBlCVR5cGUKK0hpTGluayBhY2VkYk9wdGlvbglUeXBlCitIaUxpbmsgYWNlZGJTdWJjbGFzcwlUeXBlCitIaUxpbmsgYWNlZGJTdWJ0YWcJSW5jbHVkZQorSGlMaW5rIGFjZWRiRmxhZwlJbmNsdWRlCitIaUxpbmsgYWNlZGJUYWcJSW5jbHVkZQorSGlMaW5rIGFjZWRiQ2xhc3MJVG9kbworSGlMaW5rIGFjZWRiSGVscAlUb2RvCitIaUxpbmsgYWNlZGJYcmVmCUlkZW50aWZpZXIKK0hpTGluayBhY2VkYk1vZGlmaWVyCUxhYmVsCitIaUxpbmsgYWNlZGJDb21tZW50CUNvbW1lbnQKK0hpTGluayBhY2VkYkJsb2NrCU1vZGVNc2cKK0hpTGluayBhY2VkYk51bWJlcglOdW1iZXIKK0hpTGluayBhY2VkYlN0cmluZwlTdHJpbmcKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImFjZWRiIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9hZmxleC52aW0gYi9ydW50aW1lL3N5bnRheC9hZmxleC52aW0KaW5kZXggNTkyYzk4ZS4uMjFiNzhkMCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYWZsZXgudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2FmbGV4LnZpbQpAQCAtNywyMSArNywxNCBAQAogIiBDb21tZW50OglSZXBsYWNlZCBzb3VyY2luZyBjLnZpbSBmaWxlIGJ5IGFkYS52aW0gYW5kIHJlbmFtZSBsZXgqCiAiCQlpbiBhZmxleCoKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgIGZpbmlzaAogZW5kaWYKIAogIiBSZWFkIHRoZSBBZGEgc3ludGF4IHRvIHN0YXJ0IHdpdGgKLWlmIHZlcnNpb24gPCA2MDAKLSAgIHNvIDxzZmlsZT46cDpoL2FkYS52aW0KLWVsc2UKLSAgIHJ1bnRpbWUhIHN5bnRheC9hZGEudmltCi0gICB1bmxldCBiOmN1cnJlbnRfc3ludGF4Ci1lbmRpZgorcnVudGltZSEgc3ludGF4L2FkYS52aW0KK3VubGV0IGI6Y3VycmVudF9zeW50YXgKIAogCiAiIC0tLSBBZkxleCBzdHVmZiAtLS0KQEAgLTY5LDMxICs2MiwyMiBAQAogc3luIHN5bmMgbWF0Y2ggYWZsZXhTeW5jUGF0CWdyb3VwdGhlcmUgYWZsZXhQYXRCbG9jawkiXiUlJCIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0CisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KK0hpTGluawlhZmxleFNsYXNoUXVvdGUJYWZsZXhQYXQKK0hpTGluawlhZmxleEJyYWNlCQlhZmxleFBhdAorSGlMaW5rIGFmbGV4QWJicnZDb21tZW50CWFmbGV4UGF0Q29tbWVudAogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfYWZsZXhfc3ludGF4X2luaXRzIikKLSAgIGlmIHZlcnNpb24gPCA1MDgKLSAgICAgIGxldCBkaWRfYWZsZXhfc3ludGF4X2luaXRzID0gMQotICAgICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgIGVsc2UKLSAgICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICAgZW5kaWYKLSAgSGlMaW5rCWFmbGV4U2xhc2hRdW90ZQlhZmxleFBhdAotICBIaUxpbmsJYWZsZXhCcmFjZQkJYWZsZXhQYXQKLSAgSGlMaW5rIGFmbGV4QWJicnZDb21tZW50CWFmbGV4UGF0Q29tbWVudAotCi0gIEhpTGluawlhZmxleEFiYnJ2CQlTcGVjaWFsQ2hhcgotICBIaUxpbmsJYWZsZXhBYmJydlJlZ0V4cAlNYWNybwotICBIaUxpbmsJYWZsZXhDRnVuY3Rpb25zCUZ1bmN0aW9uCi0gIEhpTGluawlhZmxleE1vcmVQYXQJU3BlY2lhbENoYXIKLSAgSGlMaW5rCWFmbGV4UGF0CQlGdW5jdGlvbgotICBIaUxpbmsJYWZsZXhQYXRDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rCWFmbGV4UGF0U3RyaW5nCUZ1bmN0aW9uCi0gIEhpTGluawlhZmxleFBhdFRhZwkJU3BlY2lhbAotICBIaUxpbmsJYWZsZXhTZXAJCURlbGltaXRlcgotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK0hpTGluawlhZmxleEFiYnJ2CQlTcGVjaWFsQ2hhcgorSGlMaW5rCWFmbGV4QWJicnZSZWdFeHAJTWFjcm8KK0hpTGluawlhZmxleENGdW5jdGlvbnMJRnVuY3Rpb24KK0hpTGluawlhZmxleE1vcmVQYXQJU3BlY2lhbENoYXIKK0hpTGluawlhZmxleFBhdAkJRnVuY3Rpb24KK0hpTGluawlhZmxleFBhdENvbW1lbnQJQ29tbWVudAorSGlMaW5rCWFmbGV4UGF0U3RyaW5nCUZ1bmN0aW9uCitIaUxpbmsJYWZsZXhQYXRUYWcJCVNwZWNpYWwKK0hpTGluawlhZmxleFNlcAkJRGVsaW1pdGVyCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJhZmxleCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvYWhkbC52aW0gYi9ydW50aW1lL3N5bnRheC9haGRsLnZpbQppbmRleCBiMTQxN2MzLi44MmYzOTE4IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9haGRsLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9haGRsLnZpbQpAQCAtMywxMSArMyw4IEBACiAiIE1haW50YWluZXI6CUpvaG4gQ29vayA8am9obi5jb29rQGtsYS10ZW5jb3IuY29tPgogIiBMYXN0IENoYW5nZToJMjAwMSBBcHIgMjUKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTY2LDI5ICs2MywyMSBAQAogc3luIHN5bmMgbWlubGluZXM9MQogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9haGRsX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2FoZGxfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICIgVGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotICBIaUxpbmsgYWhkbE51bWJlcgkJYWhkbFN0cmluZwotICBIaUxpbmsgYWhkbE1lZ2FmdW5jdGlvbglhaGRsSWRlbnRpZmllcgotICBIaUxpbmsgYWhkbFNwZWNpYWxDaGFyCVNwZWNpYWxDaGFyCi0gIEhpTGluayBhaGRsS2V5d29yZAkJU3RhdGVtZW50Ci0gIEhpTGluayBhaGRsU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIGFoZGxDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBhaGRsSWRlbnRpZmllcgkJSWRlbnRpZmllcgotICBIaUxpbmsgYWhkbE9wZXJhdG9yCQlPcGVyYXRvcgotICBIaUxpbmsgYWhkbFRvZG8JCVRvZG8KKyIgVGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgorSGlMaW5rIGFoZGxOdW1iZXIJCWFoZGxTdHJpbmcKK0hpTGluayBhaGRsTWVnYWZ1bmN0aW9uCWFoZGxJZGVudGlmaWVyCitIaUxpbmsgYWhkbFNwZWNpYWxDaGFyCVNwZWNpYWxDaGFyCitIaUxpbmsgYWhkbEtleXdvcmQJCVN0YXRlbWVudAorSGlMaW5rIGFoZGxTdHJpbmcJCVN0cmluZworSGlMaW5rIGFoZGxDb21tZW50CQlDb21tZW50CitIaUxpbmsgYWhkbElkZW50aWZpZXIJCUlkZW50aWZpZXIKK0hpTGluayBhaGRsT3BlcmF0b3IJCU9wZXJhdG9yCitIaUxpbmsgYWhkbFRvZG8JCVRvZG8KIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImFoZGwiCiAiIHZpbTp0cz04CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9hbWlnYS52aW0gYi9ydW50aW1lL3N5bnRheC9hbWlnYS52aW0KaW5kZXggNGNjYWIxOS4uZTA5NGNmYyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYW1pZ2EudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2FtaWdhLnZpbQpAQCAtNSwxMSArNSw4IEBACiAiIFZlcnNpb246ICAgICA3CiAiIFVSTDoJaHR0cDovL3d3dy5kcmNoaXAub3JnL2FzdHJvbmF1dC92aW0vaW5kZXguaHRtbCNTWU5UQVhfQU1JR0EKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTcyLDI5ICs2OSwyMSBAQAogc3luIHN5bmMgbGluZXM9NTAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfYW1pZ2Ffc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfYW1pZ2Ffc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBhbWlBbGlhcwlUeXBlCi0gIEhpTGluayBhbWlDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIGFtaURldglUeXBlCi0gIEhpTGluayBhbWlFY2hvCVN0cmluZwotICBIaUxpbmsgYW1pRWxzZQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGFtaUVycm9yCUVycm9yCi0gIEhpTGluayBhbWlLZXkJU3RhdGVtZW50Ci0gIEhpTGluayBhbWlOdW1iZXIJTnVtYmVyCi0gIEhpTGluayBhbWlTdHJpbmcJU3RyaW5nCi0gIEhpTGluayBhbWlUZXN0CVNwZWNpYWwKK0hpTGluayBhbWlBbGlhcwlUeXBlCitIaUxpbmsgYW1pQ29tbWVudAlDb21tZW50CitIaUxpbmsgYW1pRGV2CVR5cGUKK0hpTGluayBhbWlFY2hvCVN0cmluZworSGlMaW5rIGFtaUVsc2UJU3RhdGVtZW50CitIaUxpbmsgYW1pRXJyb3IJRXJyb3IKK0hpTGluayBhbWlLZXkJU3RhdGVtZW50CitIaUxpbmsgYW1pTnVtYmVyCU51bWJlcgorSGlMaW5rIGFtaVN0cmluZwlTdHJpbmcKK0hpTGluayBhbWlUZXN0CVNwZWNpYWwKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImFtaWdhIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9hbWwudmltIGIvcnVudGltZS9zeW50YXgvYW1sLnZpbQppbmRleCA3Y2IxNmYxLi4xYjk3NWNjIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9hbWwudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2FtbC52aW0KQEAgLTksMTEgKzksOCBAQAogIgkJICAgIG9mIFtdLCBpbiBvcmRlciB0byBhdm9pZCAtcmVhZCBoaWdobGlnaHRlZCwKICIJCSAgICBvciBbcXVvdGVdIHN0cmluZ3MgaGlnaGxpZ2h0ZWQKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTEyMywzNSArMTIwLDI3IEBACiBzeW4gcmVnaW9uIGFtbFNraXAgbWF0Y2hncm91cD1hbWxPdXRwdXQgc3RhcnQ9IiZ0eXBlIiBlbmQ9IiQiIGNvbnRhaW5zPWFtbFZhcgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9hbWxfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfYW1sX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgYW1sQ29tbWVudAlDb21tZW50Ci0gIEhpTGluayBhbWxOdW1iZXIJTnVtYmVyCi0gIEhpTGluayBhbWxRdW90ZQlTdHJpbmcKLSAgSGlMaW5rIGFtbFZhcglJZGVudGlmaWVyCi0gIEhpTGluayBhbWxWYXIyCUlkZW50aWZpZXIKLSAgSGlMaW5rIGFtbEZ1bmN0aW9uCVByZVByb2MKLSAgSGlMaW5rIGFtbERpcglTdGF0ZW1lbnQKLSAgSGlMaW5rIGFtbERpcjIJU3RhdGVtZW50Ci0gIEhpTGluayBhbWxEaXJTeW0JU3RhdGVtZW50Ci0gIEhpTGluayBhbWxPdXRwdXQJU3RhdGVtZW50Ci0gIEhpTGluayBhbWxBcmNDbWQJTW9kZU1zZwotICBIaUxpbmsgYW1sRm9ybWVkQ21kCWFtbEFyY0NtZAotICBIaUxpbmsgYW1sVGFiQ21kCWFtbEFyY0NtZAotICBIaUxpbmsgYW1sSW5mb0NtZAlhbWxBcmNDbWQKLSAgSGlMaW5rIGFtbFZ0ckNtZAlhbWxBcmNDbWQKLSAgSGlMaW5rIGFtbEZvcm1lZAlhbWxBcmNDbWQKLSAgSGlMaW5rIGFtbFRhYglhbWxBcmNDbWQKK0hpTGluayBhbWxDb21tZW50CUNvbW1lbnQKK0hpTGluayBhbWxOdW1iZXIJTnVtYmVyCitIaUxpbmsgYW1sUXVvdGUJU3RyaW5nCitIaUxpbmsgYW1sVmFyCUlkZW50aWZpZXIKK0hpTGluayBhbWxWYXIyCUlkZW50aWZpZXIKK0hpTGluayBhbWxGdW5jdGlvbglQcmVQcm9jCitIaUxpbmsgYW1sRGlyCVN0YXRlbWVudAorSGlMaW5rIGFtbERpcjIJU3RhdGVtZW50CitIaUxpbmsgYW1sRGlyU3ltCVN0YXRlbWVudAorSGlMaW5rIGFtbE91dHB1dAlTdGF0ZW1lbnQKK0hpTGluayBhbWxBcmNDbWQJTW9kZU1zZworSGlMaW5rIGFtbEZvcm1lZENtZAlhbWxBcmNDbWQKK0hpTGluayBhbWxUYWJDbWQJYW1sQXJjQ21kCitIaUxpbmsgYW1sSW5mb0NtZAlhbWxBcmNDbWQKK0hpTGluayBhbWxWdHJDbWQJYW1sQXJjQ21kCitIaUxpbmsgYW1sRm9ybWVkCWFtbEFyY0NtZAorSGlMaW5rIGFtbFRhYglhbWxBcmNDbWQKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImFtbCIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2FtcGwudmltIGIvcnVudGltZS9zeW50YXgvYW1wbC52aW0KaW5kZXggN2Y0ZGZhOS4uOTlhNjgzYSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYW1wbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYW1wbC52aW0KQEAgLTMsOSArMyw4IEBACiAiIExhc3QgQ2hhbmdlOiAgMjAwMyBNYXkgMTEKIAogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogIGZpbmlzaAogZW5kaWYKIApAQCAtMTE1LDMzICsxMTQsMjYgQEAKIAogCiAKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9hbXBsX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2FtcGxfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlci4KLSAgSGlMaW5rIGFtcGxFbnRpdHlLZXl3b3JkCUtleXdvcmQKLSAgSGlMaW5rIGFtcGxUeXBlCQlUeXBlCi0gIEhpTGluayBhbXBsU3RhdGVtZW50CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGFtcGxPcGVyYXRvcnMJCU9wZXJhdG9yCi0gIEhpTGluayBhbXBsQmFzaWNPcGVyYXRvcnMJT3BlcmF0b3IKLSAgSGlMaW5rIGFtcGxDb25kaXRpb25hbAlDb25kaXRpb25hbAotICBIaUxpbmsgYW1wbFJlcGVhdAkJUmVwZWF0Ci0gIEhpTGluayBhbXBsU3RyaW5ncwkJU3RyaW5nCi0gIEhpTGluayBhbXBsTnVtZXJpY3MJCU51bWJlcgotICBIaUxpbmsgYW1wbFNldEZ1bmN0aW9uCUZ1bmN0aW9uCi0gIEhpTGluayBhbXBsQnVpbHRJbkZ1bmN0aW9uCUZ1bmN0aW9uCi0gIEhpTGluayBhbXBsUmFuZG9tR2VuZXJhdG9yCUZ1bmN0aW9uCi0gIEhpTGluayBhbXBsQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgYW1wbERvdFN1ZmZpeAkJU3BlY2lhbAotICBIaUxpbmsgYW1wbFBpZWNld2lzZQkJU3BlY2lhbAorIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyLgorSGlMaW5rIGFtcGxFbnRpdHlLZXl3b3JkCUtleXdvcmQKK0hpTGluayBhbXBsVHlwZQkJVHlwZQorSGlMaW5rIGFtcGxTdGF0ZW1lbnQJCVN0YXRlbWVudAorSGlMaW5rIGFtcGxPcGVyYXRvcnMJCU9wZXJhdG9yCitIaUxpbmsgYW1wbEJhc2ljT3BlcmF0b3JzCU9wZXJhdG9yCitIaUxpbmsgYW1wbENvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCitIaUxpbmsgYW1wbFJlcGVhdAkJUmVwZWF0CitIaUxpbmsgYW1wbFN0cmluZ3MJCVN0cmluZworSGlMaW5rIGFtcGxOdW1lcmljcwkJTnVtYmVyCitIaUxpbmsgYW1wbFNldEZ1bmN0aW9uCUZ1bmN0aW9uCitIaUxpbmsgYW1wbEJ1aWx0SW5GdW5jdGlvbglGdW5jdGlvbgorSGlMaW5rIGFtcGxSYW5kb21HZW5lcmF0b3IJRnVuY3Rpb24KK0hpTGluayBhbXBsQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIGFtcGxEb3RTdWZmaXgJCVNwZWNpYWwKK0hpTGluayBhbXBsUGllY2V3aXNlCQlTcGVjaWFsCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJhbXBsIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9hbnRsci52aW0gYi9ydW50aW1lL3N5bnRheC9hbnRsci52aW0KaW5kZXggMTkwMDAyOS4uMmFjMzhkNyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYW50bHIudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2FudGxyLnZpbQpAQCAtNCwxMSArNCw4IEBACiAiIExhc3RDaGFuZ2U6CTAyIE1heSAyMDAxCiAiIE9yaWdpbmFsOglDb21lcyBmcm9tIEphdmFDQy52aW0KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTgsMTIgKzE1LDggQEAKICIgVGhvc2UgZmlsZXMgdXN1YWxseSBoYXZlIHRoZSBleHRlbnNpb24gICouamoKIAogIiBzb3VyY2UgdGhlIGphdmEudmltIGZpbGUKLWlmIHZlcnNpb24gPCA2MDAKLSAgIHNvIDxzZmlsZT46cDpoL2phdmEudmltCi1lbHNlCi0gICBydW50aW1lISBzeW50YXgvamF2YS52aW0KLSAgIHVubGV0IGI6Y3VycmVudF9zeW50YXgKLWVuZGlmCitydW50aW1lISBzeW50YXgvamF2YS52aW0KK3VubGV0IGI6Y3VycmVudF9zeW50YXgKIAogInJlbW92ZSBjYXRjaGluZyBlcnJvcnMgY2F1c2VkIGJ5IHdyb25nIHBhcmVudGhlc2lzIChkb2VzIG5vdCB3b3JrIGluIGFudGxyCiAiZmlsZXMpIChmaXJzdCBkZWZpbmUgdGhlbSBpbiBjYXNlIHRoZXkgaGF2ZSBub3QgYmVlbiBkZWZpbmVkIGluIGphdmEpCkBAIC01MywxNyArNDYsMTAgQEAKIHN5biBrZXl3b3JkIGFudGxyQWN0aW9uVG9rZW4gVE9LRU4gU0tJUCBNT1JFIFNQRUNJQUxfVE9LRU4KIHN5biBrZXl3b3JkIGFudGxyRXJyb3IgREVCVUcgSUdOT1JFX0lOX0JORgogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfYW50bHJfc3ludGF4X2luaXRzIikKLSAgIGlmIHZlcnNpb24gPCA1MDgKLSAgICAgIGxldCBkaWRfYW50bHJfc3ludGF4X2luaXRzID0gMQotICAgICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgIGVsc2UKLSAgICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICAgZW5kaWYKLSAgIEhpTGluayBhbnRsclNlcCBTdGF0ZW1lbnQKLSAgIEhpTGluayBhbnRsclBhY2thZ2VzIFN0YXRlbWVudAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgorSGlMaW5rIGFudGxyU2VwIFN0YXRlbWVudAorSGlMaW5rIGFudGxyUGFja2FnZXMgU3RhdGVtZW50CitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJhbnRsciIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvYXBhY2hlLnZpbSBiL3J1bnRpbWUvc3ludGF4L2FwYWNoZS52aW0KaW5kZXggODVjZGE0MC4uYjU1NmZhMyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYXBhY2hlLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9hcGFjaGUudmltCkBAIC05LDEzICs5LDkgQEAKICIJCW1ha2UgaXQgcmVhbGx5IGxpbmV3aXNlPwogIgkJKyBhZGQgYGRpc3BsYXknIHdoZXJlIGFwcHJvcHJpYXRlCiAKLSIgU2V0dXAKLWlmIHZlcnNpb24gPj0gNjAwCi0JaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKLQkJZmluaXNoCi0JZW5kaWYKLWVsc2UKLQlzeW50YXggY2xlYXIKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorCWZpbmlzaAogZW5kaWYKIAogc3luIGNhc2UgaWdub3JlCkBAIC0xNzgsMzcgKzE3NCwzMCBAQAogc3luIGtleXdvcmQgYXBhY2hlRGVjbGFyYXRpb24gVmlydHVhbERvY3VtZW50Um9vdCBWaXJ0dWFsRG9jdW1lbnRSb290SVAgVmlydHVhbFNjcmlwdEFsaWFzIFZpcnR1YWxTY3JpcHRBbGlhc0lQCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZwotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2FwYWNoZV9zeW50YXhfaW5pdHMiKQotCWlmIHZlcnNpb24gPCA1MDgKLQkJbGV0IGRpZF9hcGFjaGVfc3ludGF4X2luaXRzID0gMQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotCWVsc2UKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0JZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0JSGlMaW5rIGFwYWNoZUFsbG93T3ZlcnJpZGUgYXBhY2hlRGVjbGFyYXRpb24KLQlIaUxpbmsgYXBhY2hlQWxsb3dPdmVycmlkZVZhbHVlIGFwYWNoZU9wdGlvbgotCUhpTGluayBhcGFjaGVBdXRoVHlwZSBhcGFjaGVEZWNsYXJhdGlvbgotCUhpTGluayBhcGFjaGVBdXRoVHlwZVZhbHVlIGFwYWNoZU9wdGlvbgotCUhpTGluayBhcGFjaGVPcHRpb25PcHRpb24gYXBhY2hlT3B0aW9uCi0JSGlMaW5rIGFwYWNoZURlY2xhcmF0aW9uIEZ1bmN0aW9uCi0JSGlMaW5rIGFwYWNoZUFueXRoaW5nIGFwYWNoZU9wdGlvbgotCUhpTGluayBhcGFjaGVPcHRpb24gTnVtYmVyCi0JSGlMaW5rIGFwYWNoZUNvbW1lbnQgQ29tbWVudAotCUhpTGluayBhcGFjaGVGaXhtZSBUb2RvCi0JSGlMaW5rIGFwYWNoZUxpbWl0U2VjdGlvbktleXdvcmQgYXBhY2hlTGltaXRTZWN0aW9uCi0JSGlMaW5rIGFwYWNoZUxpbWl0U2VjdGlvbiBhcGFjaGVTZWN0aW9uCi0JSGlMaW5rIGFwYWNoZVNlY3Rpb24gTGFiZWwKLQlIaUxpbmsgYXBhY2hlTWV0aG9kT3B0aW9uIFR5cGUKLQlIaUxpbmsgYXBhY2hlQWxsb3dEZW55IEluY2x1ZGUKLQlIaUxpbmsgYXBhY2hlQWxsb3dEZW55VmFsdWUgSWRlbnRpZmllcgotCUhpTGluayBhcGFjaGVPcmRlciBTcGVjaWFsCi0JSGlMaW5rIGFwYWNoZU9yZGVyVmFsdWUgU3RyaW5nCi0JSGlMaW5rIGFwYWNoZVN0cmluZyBTdHJpbmcKLQlIaUxpbmsgYXBhY2hlRXJyb3IgRXJyb3IKLQlIaUxpbmsgYXBhY2hlVXNlcklEIE51bWJlcgorSGlMaW5rIGFwYWNoZUFsbG93T3ZlcnJpZGUgYXBhY2hlRGVjbGFyYXRpb24KK0hpTGluayBhcGFjaGVBbGxvd092ZXJyaWRlVmFsdWUgYXBhY2hlT3B0aW9uCitIaUxpbmsgYXBhY2hlQXV0aFR5cGUgYXBhY2hlRGVjbGFyYXRpb24KK0hpTGluayBhcGFjaGVBdXRoVHlwZVZhbHVlIGFwYWNoZU9wdGlvbgorSGlMaW5rIGFwYWNoZU9wdGlvbk9wdGlvbiBhcGFjaGVPcHRpb24KK0hpTGluayBhcGFjaGVEZWNsYXJhdGlvbiBGdW5jdGlvbgorSGlMaW5rIGFwYWNoZUFueXRoaW5nIGFwYWNoZU9wdGlvbgorSGlMaW5rIGFwYWNoZU9wdGlvbiBOdW1iZXIKK0hpTGluayBhcGFjaGVDb21tZW50IENvbW1lbnQKK0hpTGluayBhcGFjaGVGaXhtZSBUb2RvCitIaUxpbmsgYXBhY2hlTGltaXRTZWN0aW9uS2V5d29yZCBhcGFjaGVMaW1pdFNlY3Rpb24KK0hpTGluayBhcGFjaGVMaW1pdFNlY3Rpb24gYXBhY2hlU2VjdGlvbgorSGlMaW5rIGFwYWNoZVNlY3Rpb24gTGFiZWwKK0hpTGluayBhcGFjaGVNZXRob2RPcHRpb24gVHlwZQorSGlMaW5rIGFwYWNoZUFsbG93RGVueSBJbmNsdWRlCitIaUxpbmsgYXBhY2hlQWxsb3dEZW55VmFsdWUgSWRlbnRpZmllcgorSGlMaW5rIGFwYWNoZU9yZGVyIFNwZWNpYWwKK0hpTGluayBhcGFjaGVPcmRlclZhbHVlIFN0cmluZworSGlMaW5rIGFwYWNoZVN0cmluZyBTdHJpbmcKK0hpTGluayBhcGFjaGVFcnJvciBFcnJvcgorSGlMaW5rIGFwYWNoZVVzZXJJRCBOdW1iZXIKIAotCWRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiYXBhY2hlIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvYXBhY2hlc3R5bGUudmltIGIvcnVudGltZS9zeW50YXgvYXBhY2hlc3R5bGUudmltCmluZGV4IDM3NWZjNzAuLjUzZDU5MDcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2FwYWNoZXN0eWxlLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9hcGFjaGVzdHlsZS52aW0KQEAgLTIwLDExICsyMCw4IEBACiAiCQk8L1N1YlNlY3Rpb24+CiAiCTwvU2VjdGlvbj4KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTQxLDI1ICszOCwxNyBAQAogc3luIG1hdGNoICBhcFRhZ0Vycm9yCWNvbnRhaW5lZCAvW14+XTwvbXM9cysxCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2FwYWNoZXN0eWxlX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2FwYWNoZXN0eWxlX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgYXBDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIGFwT3B0aW9uCUtleXdvcmQKLSAgIkhpTGluayBhcExhc3RWYWx1ZQlJZGVudGlmaWVyCQl1Z2x5PwotICBIaUxpbmsgYXBUYWcJCVNwZWNpYWwKLSAgSGlMaW5rIGFwVGFnT3B0aW9uCUlkZW50aWZpZXIKLSAgSGlMaW5rIGFwVGFnRXJyb3IJRXJyb3IKK0hpTGluayBhcENvbW1lbnQJQ29tbWVudAorSGlMaW5rIGFwT3B0aW9uCUtleXdvcmQKKyJIaUxpbmsgYXBMYXN0VmFsdWUJSWRlbnRpZmllcgkJdWdseT8KK0hpTGluayBhcFRhZwkJU3BlY2lhbAorSGlMaW5rIGFwVGFnT3B0aW9uCUlkZW50aWZpZXIKK0hpTGluayBhcFRhZ0Vycm9yCUVycm9yCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJhcGFjaGVzdHlsZSIKICIgdmltOiB0cz04CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9hcHRjb25mLnZpbSBiL3J1bnRpbWUvc3ludGF4L2FwdGNvbmYudmltCmluZGV4IDdhMzFiMmQuLjhjYjE0MzIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2FwdGNvbmYudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2FwdGNvbmYudmltCkBAIC0zLDEyICszLDkgQEAKICIgTWFpbnRhaW5lcjoJWWFubiBBbWFyIDxxdWlkYW1lQHBvaXZyb24ub3JnPgogIiBMYXN0IENoYW5nZToJMjAxNSBEZWMgMjIKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54IGFuZCA3Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKIGlmICFleGlzdHMoIm1haW5fc3ludGF4IikKLSAgaWYgdmVyc2lvbiA8IDYwMAotICAgIHN5bnRheCBjbGVhcgotICBlbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyAgaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgICBmaW5pc2gKICAgZW5kaWYKICAgbGV0IG1haW5fc3ludGF4ID0gJ2FwdGNvbmYnCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9hcmR1aW5vLnZpbSBiL3J1bnRpbWUvc3ludGF4L2FyZHVpbm8udmltCmluZGV4IDE0Mjk5YTQuLjRhNGVmODIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2FyZHVpbm8udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2FyZHVpbm8udmltCkBAIC0xMCwyMCArMTAsMTMgQEAKIAogIiBUaGFua3MgdG8gUmlrLCBFcmlrIE5vbWl0Y2gsIEFkYW0gT2JlbmcgYW5kIEdyYWVtZSBDcm9zcyBmb3IgaGVscGZ1bCBmZWVkYmFjayEKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKICIgUmVhZCB0aGUgQyBzeW50YXggdG8gc3RhcnQgd2l0aAotaWYgdmVyc2lvbiA8IDYwMAotICBzbyA8c2ZpbGU+OnA6aC9jcHAudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9jcHAudmltCi1lbmRpZgorcnVudGltZSEgc3ludGF4L2NwcC52aW0KIAogc3luIGtleXdvcmQgYXJkdWlub0NvbnN0YW50IEhJR0ggTE9XIElOUFVUIE9VVFBVVAogc3luIGtleXdvcmQgYXJkdWlub0NvbnN0YW50IERFQyBCSU4gSEVYIE9DVCBCWVRFCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9hc20udmltIGIvcnVudGltZS9zeW50YXgvYXNtLnZpbQppbmRleCBlNWYxNmM1Li41MDFmNWYwIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9hc20udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2FzbS52aW0KQEAgLTcsMTEgKzcsOCBAQAogCiAiIFRoYW5rcyB0byBPcmkgQXZ0YWxpb24gZm9yIGZlZWRiYWNrIG9uIHRoZSBjb21tZW50IG1hcmtlcnMhCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYuMCBhbmQgbGF0ZXI6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTAzLDM3ICsxMDAsMjkgQEAKIHN5biBjYXNlIG1hdGNoCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2FzbV9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9hc21fc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiAgQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKLSAgSGlMaW5rIGFzbVNlY3Rpb24JU3BlY2lhbAotICBIaUxpbmsgYXNtTGFiZWwJTGFiZWwKLSAgSGlMaW5rIGFzbUNvbW1lbnQJQ29tbWVudAotICBIaUxpbmsgYXNtVG9kbwlUb2RvCi0gIEhpTGluayBhc21EaXJlY3RpdmUJU3RhdGVtZW50CisiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyCitIaUxpbmsgYXNtU2VjdGlvbglTcGVjaWFsCitIaUxpbmsgYXNtTGFiZWwJTGFiZWwKK0hpTGluayBhc21Db21tZW50CUNvbW1lbnQKK0hpTGluayBhc21Ub2RvCVRvZG8KK0hpTGluayBhc21EaXJlY3RpdmUJU3RhdGVtZW50CiAKLSAgSGlMaW5rIGFzbUluY2x1ZGUJSW5jbHVkZQotICBIaUxpbmsgYXNtQ29uZAlQcmVDb25kaXQKLSAgSGlMaW5rIGFzbU1hY3JvCU1hY3JvCitIaUxpbmsgYXNtSW5jbHVkZQlJbmNsdWRlCitIaUxpbmsgYXNtQ29uZAlQcmVDb25kaXQKK0hpTGluayBhc21NYWNybwlNYWNybwogCi0gIEhpTGluayBoZXhOdW1iZXIJTnVtYmVyCi0gIEhpTGluayBkZWNOdW1iZXIJTnVtYmVyCi0gIEhpTGluayBvY3ROdW1iZXIJTnVtYmVyCi0gIEhpTGluayBiaW5OdW1iZXIJTnVtYmVyCitIaUxpbmsgaGV4TnVtYmVyCU51bWJlcgorSGlMaW5rIGRlY051bWJlcglOdW1iZXIKK0hpTGluayBvY3ROdW1iZXIJTnVtYmVyCitIaUxpbmsgYmluTnVtYmVyCU51bWJlcgogCi0gIEhpTGluayBhc21JZGVudGlmaWVyCUlkZW50aWZpZXIKLSAgSGlMaW5rIGFzbVR5cGUJVHlwZQorSGlMaW5rIGFzbUlkZW50aWZpZXIJSWRlbnRpZmllcgorSGlMaW5rIGFzbVR5cGUJVHlwZQogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiYXNtIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9hc202OGsudmltIGIvcnVudGltZS9zeW50YXgvYXNtNjhrLnZpbQppbmRleCA4NDYzZTQ4Li40ZjA1N2E5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9hc202OGsudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2FzbTY4ay52aW0KQEAgLTgsMTEgKzgsOCBAQAogIiBGZWVsIGZyZWUgdG8gY29udHJpYnV0ZS4uLgogIgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMzI4LDYzICszMjUsNTUgQEAKIHN5biBjYXNlIG1hdGNoCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2FzbTY4a19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9hc202OGtfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiAgQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKLSAgIiBDb21tZW50IENvbnN0YW50IEVycm9yIElkZW50aWZpZXIgUHJlUHJvYyBTcGVjaWFsIFN0YXRlbWVudCBUb2RvIFR5cGUKLSAgIgotICAiIENvbnN0YW50CQlCb29sZWFuIENoYXJhY3RlciBOdW1iZXIgU3RyaW5nCi0gICIgSWRlbnRpZmllcgkJRnVuY3Rpb24KLSAgIiBQcmVQcm9jCQlEZWZpbmUgSW5jbHVkZSBNYWNybyBQcmVDb25kaXQKLSAgIiBTcGVjaWFsCQlEZWJ1ZyBEZWxpbWl0ZXIgU3BlY2lhbENoYXIgU3BlY2lhbENvbW1lbnQgVGFnCi0gICIgU3RhdGVtZW50CQlDb25kaXRpb25hbCBFeGNlcHRpb24gS2V5d29yZCBMYWJlbCBPcGVyYXRvciBSZXBlYXQKLSAgIiBUeXBlCQlTdG9yYWdlQ2xhc3MgU3RydWN0dXJlIFR5cGVkZWYKKyIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiAgQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKKyIgQ29tbWVudCBDb25zdGFudCBFcnJvciBJZGVudGlmaWVyIFByZVByb2MgU3BlY2lhbCBTdGF0ZW1lbnQgVG9kbyBUeXBlCisiCisiIENvbnN0YW50CQlCb29sZWFuIENoYXJhY3RlciBOdW1iZXIgU3RyaW5nCisiIElkZW50aWZpZXIJCUZ1bmN0aW9uCisiIFByZVByb2MJCURlZmluZSBJbmNsdWRlIE1hY3JvIFByZUNvbmRpdAorIiBTcGVjaWFsCQlEZWJ1ZyBEZWxpbWl0ZXIgU3BlY2lhbENoYXIgU3BlY2lhbENvbW1lbnQgVGFnCisiIFN0YXRlbWVudAkJQ29uZGl0aW9uYWwgRXhjZXB0aW9uIEtleXdvcmQgTGFiZWwgT3BlcmF0b3IgUmVwZWF0CisiIFR5cGUJCVN0b3JhZ2VDbGFzcyBTdHJ1Y3R1cmUgVHlwZWRlZgogCi0gIEhpTGluayBhc202OGtDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBhc202OGtUb2RvCQlUb2RvCitIaUxpbmsgYXNtNjhrQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIGFzbTY4a1RvZG8JCVRvZG8KIAotICBIaUxpbmsgaGV4TnVtYmVyCQlOdW1iZXIJCSIgQ29uc3RhbnQKLSAgSGlMaW5rIG9jdE51bWJlcgkJTnVtYmVyCQkiIENvbnN0YW50Ci0gIEhpTGluayBiaW5OdW1iZXIJCU51bWJlcgkJIiBDb25zdGFudAotICBIaUxpbmsgZGVjTnVtYmVyCQlOdW1iZXIJCSIgQ29uc3RhbnQKLSAgSGlMaW5rIGZsb2F0TnVtYmVyCQlOdW1iZXIJCSIgQ29uc3RhbnQKLSAgSGlMaW5rIGZsb2F0RXhwb25lbnQJCU51bWJlcgkJIiBDb25zdGFudAotICBIaUxpbmsgZmxvYXRFCQkJU3BlY2lhbENoYXIJIiBTdGF0ZW1lbnQKLSAgIkhpTGluayBmbG9hdEUJCU51bWJlcgkJIiBDb25zdGFudAorSGlMaW5rIGhleE51bWJlcgkJTnVtYmVyCQkiIENvbnN0YW50CitIaUxpbmsgb2N0TnVtYmVyCQlOdW1iZXIJCSIgQ29uc3RhbnQKK0hpTGluayBiaW5OdW1iZXIJCU51bWJlcgkJIiBDb25zdGFudAorSGlMaW5rIGRlY051bWJlcgkJTnVtYmVyCQkiIENvbnN0YW50CitIaUxpbmsgZmxvYXROdW1iZXIJCU51bWJlcgkJIiBDb25zdGFudAorSGlMaW5rIGZsb2F0RXhwb25lbnQJCU51bWJlcgkJIiBDb25zdGFudAorSGlMaW5rIGZsb2F0RQkJCVNwZWNpYWxDaGFyCSIgU3RhdGVtZW50CisiSGlMaW5rIGZsb2F0RQkJTnVtYmVyCQkiIENvbnN0YW50CiAKLSAgSGlMaW5rIGFzbTY4a0ltbWVkaWF0ZQlTcGVjaWFsQ2hhcgkiIFN0YXRlbWVudAotICAiSGlMaW5rIGFzbTY4a1N5bWJvbAkJQ29uc3RhbnQKK0hpTGluayBhc202OGtJbW1lZGlhdGUJU3BlY2lhbENoYXIJIiBTdGF0ZW1lbnQKKyJIaUxpbmsgYXNtNjhrU3ltYm9sCQlDb25zdGFudAogCi0gIEhpTGluayBhc202OGtTdHJpbmcJCVN0cmluZwkJIiBDb25zdGFudAotICBIaUxpbmsgYXNtNjhrQ2hhckVycm9yCUVycm9yCi0gIEhpTGluayBhc202OGtTdHJpbmdFcnJvcglFcnJvcgorSGlMaW5rIGFzbTY4a1N0cmluZwkJU3RyaW5nCQkiIENvbnN0YW50CitIaUxpbmsgYXNtNjhrQ2hhckVycm9yCUVycm9yCitIaUxpbmsgYXNtNjhrU3RyaW5nRXJyb3IJRXJyb3IKIAotICBIaUxpbmsgYXNtNjhrUmVnCQlJZGVudGlmaWVyCi0gIEhpTGluayBhc202OGtPcGVyYXRvcgkJSWRlbnRpZmllcgorSGlMaW5rIGFzbTY4a1JlZwkJSWRlbnRpZmllcgorSGlMaW5rIGFzbTY4a09wZXJhdG9yCQlJZGVudGlmaWVyCiAKLSAgSGlMaW5rIGFzbTY4a0luY2x1ZGUJCUluY2x1ZGUJCSIgUHJlUHJvYwotICBIaUxpbmsgYXNtNjhrTWFjcm8JCU1hY3JvCQkiIFByZVByb2MKLSAgSGlMaW5rIGFzbTY4a01hY3JvUGFyYW0JS2V5d29yZAkJIiBTdGF0ZW1lbnQKK0hpTGluayBhc202OGtJbmNsdWRlCQlJbmNsdWRlCQkiIFByZVByb2MKK0hpTGluayBhc202OGtNYWNybwkJTWFjcm8JCSIgUHJlUHJvYworSGlMaW5rIGFzbTY4a01hY3JvUGFyYW0JS2V5d29yZAkJIiBTdGF0ZW1lbnQKIAotICBIaUxpbmsgYXNtNjhrRGlyZWN0aXZlCVNwZWNpYWwKLSAgSGlMaW5rIGFzbTY4a1ByZUNvbmQJCVNwZWNpYWwKK0hpTGluayBhc202OGtEaXJlY3RpdmUJU3BlY2lhbAorSGlMaW5rIGFzbTY4a1ByZUNvbmQJCVNwZWNpYWwKIAogCi0gIEhpTGluayBhc202OGtPcGNvZGUJCVN0YXRlbWVudAotICBIaUxpbmsgYXNtNjhrQ29uZAkJQ29uZGl0aW9uYWwJIiBTdGF0ZW1lbnQKLSAgSGlMaW5rIGFzbTY4a1JlcGVhdAkJUmVwZWF0CQkiIFN0YXRlbWVudAorSGlMaW5rIGFzbTY4a09wY29kZQkJU3RhdGVtZW50CitIaUxpbmsgYXNtNjhrQ29uZAkJQ29uZGl0aW9uYWwJIiBTdGF0ZW1lbnQKK0hpTGluayBhc202OGtSZXBlYXQJCVJlcGVhdAkJIiBTdGF0ZW1lbnQKIAotICBIaUxpbmsgYXNtNjhrTGFiZWwJCVR5cGUKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitIaUxpbmsgYXNtNjhrTGFiZWwJCVR5cGUKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImFzbTY4ayIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvYXNtaDgzMDAudmltIGIvcnVudGltZS9zeW50YXgvYXNtaDgzMDAudmltCmluZGV4IDQ4Njk5ZDguLjUxMzRjNTEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2FzbWg4MzAwLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9hc21oODMwMC52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglLZXZpbiBEYWhsaGF1c2VuIDxrZGFobGhhdXNAeWFob28uY29tPgogIiBMYXN0IENoYW5nZToJMjAwMiBTZXAgMTkKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTUyLDMzICs0OSwyMSBAQAogCiAKICIgUmVhZCB0aGUgZ2VuZXJhbCBhc20gc3ludGF4Ci1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNvdXJjZSA8c2ZpbGU+OnA6aC9hc20udmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9hc20udmltCi1lbmRpZgorcnVudGltZSEgc3ludGF4L2FzbS52aW0KIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9oaXRhY2hpX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2hpdGFjaGlfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBhc21PcGNvZGUgIFN0YXRlbWVudAotICBIaUxpbmsgYXNtUmVnaXN0ZXIgIElkZW50aWZpZXIKK0hpTGluayBhc21PcGNvZGUgIFN0YXRlbWVudAorSGlMaW5rIGFzbVJlZ2lzdGVyICBJZGVudGlmaWVyCiAKLSAgIiBNeSBkZWZhdWx0LWNvbG9yIG92ZXJyaWRlczoKLSAgImhpIGFzbU9wY29kZSBjdGVybWZnPXllbGxvdwotICAiaGkgYXNtUmVnCWN0ZXJtZmc9bGlnaHRtYWdlbnRhCisiIE15IGRlZmF1bHQtY29sb3Igb3ZlcnJpZGVzOgorImhpIGFzbU9wY29kZSBjdGVybWZnPXllbGxvdworImhpIGFzbVJlZwljdGVybWZnPWxpZ2h0bWFnZW50YQogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiYXNtaDgzMDAiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2Fzbi52aW0gYi9ydW50aW1lL3N5bnRheC9hc24udmltCmluZGV4IDI4YzhlZmIuLjhiNTUzZTggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2Fzbi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYXNuLnZpbQpAQCAtNCwxMSArNCw4IEBACiAiIFVSTDoJCWh0dHA6Ly93d3cuZmxlaW5lci5jb20vdmltL3N5bnRheC9hc24udmltCiAiIExhc3QgQ2hhbmdlOgkyMDEyIE9jdCAwNQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNTAsMzQgKzQ3LDI2IEBACiBzeW4gc3luYyBjY29tbWVudCBhc25Db21tZW50CiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2Fzbl9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9hc25fc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKLSAgSGlMaW5rIGFzbkRlZmluaXRpb24JRnVuY3Rpb24KLSAgSGlMaW5rIGFzbkJyYWNlcwkJRnVuY3Rpb24KLSAgSGlMaW5rIGFzblN0cnVjdHVyZQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGFzbkJvb2xWYWx1ZQlCb29sZWFuCi0gIEhpTGluayBhc25TcGVjaWFsCQlTcGVjaWFsCi0gIEhpTGluayBhc25TdHJpbmcJCVN0cmluZwotICBIaUxpbmsgYXNuQ2hhcmFjdGVyCUNoYXJhY3RlcgotICBIaUxpbmsgYXNuU3BlY2lhbENoYXJhY3Rlcglhc25TcGVjaWFsCi0gIEhpTGluayBhc25OdW1iZXIJCWFzblZhbHVlCi0gIEhpTGluayBhc25Db21tZW50CQlDb21tZW50Ci0gIEhpTGluayBhc25MaW5lQ29tbWVudAlhc25Db21tZW50Ci0gIEhpTGluayBhc25UeXBlCQlUeXBlCi0gIEhpTGluayBhc25UeXBlSW5mbwkJUHJlUHJvYwotICBIaUxpbmsgYXNuVmFsdWUJCU51bWJlcgotICBIaUxpbmsgYXNuRXh0ZXJuYWwJCUluY2x1ZGUKLSAgSGlMaW5rIGFzblRhZ01vZGlmaWVyCUZ1bmN0aW9uCi0gIEhpTGluayBhc25GaWVsZE9wdGlvbglUeXBlCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CitIaUxpbmsgYXNuRGVmaW5pdGlvbglGdW5jdGlvbgorSGlMaW5rIGFzbkJyYWNlcwkJRnVuY3Rpb24KK0hpTGluayBhc25TdHJ1Y3R1cmUJU3RhdGVtZW50CitIaUxpbmsgYXNuQm9vbFZhbHVlCUJvb2xlYW4KK0hpTGluayBhc25TcGVjaWFsCQlTcGVjaWFsCitIaUxpbmsgYXNuU3RyaW5nCQlTdHJpbmcKK0hpTGluayBhc25DaGFyYWN0ZXIJQ2hhcmFjdGVyCitIaUxpbmsgYXNuU3BlY2lhbENoYXJhY3Rlcglhc25TcGVjaWFsCitIaUxpbmsgYXNuTnVtYmVyCQlhc25WYWx1ZQorSGlMaW5rIGFzbkNvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBhc25MaW5lQ29tbWVudAlhc25Db21tZW50CitIaUxpbmsgYXNuVHlwZQkJVHlwZQorSGlMaW5rIGFzblR5cGVJbmZvCQlQcmVQcm9jCitIaUxpbmsgYXNuVmFsdWUJCU51bWJlcgorSGlMaW5rIGFzbkV4dGVybmFsCQlJbmNsdWRlCitIaUxpbmsgYXNuVGFnTW9kaWZpZXIJRnVuY3Rpb24KK0hpTGluayBhc25GaWVsZE9wdGlvbglUeXBlCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKIHVubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2FzcHBlcmwudmltIGIvcnVudGltZS9zeW50YXgvYXNwcGVybC52aW0KaW5kZXggMGY3ZWY0Ni4uNWE5YWJlZCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYXNwcGVybC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYXNwcGVybC52aW0KQEAgLTQsMTEgKzQsOCBAQAogIiBVUkw6CQlodHRwOi8vbmltLmRocy5vcmcvfmVkaC9hc3BwZXJsLnZpbQogIiBMYXN0IENoYW5nZToJMjAwMSBNYXkgMDkKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTE2LDE0ICsxMyw5IEBACiAgIGxldCBtYWluX3N5bnRheCA9ICdwZXJsc2NyaXB0JwogZW5kaWYKIAotaWYgdmVyc2lvbiA8IDYwMAotICBzbyA8c2ZpbGU+OnA6aC9odG1sLnZpbQotICBzeW4gaW5jbHVkZSBAQXNwUGVybFNjcmlwdCA8c2ZpbGU+OnA6aC9wZXJsLnZpbQotZWxzZQotICBydW50aW1lISBzeW50YXgvaHRtbC52aW0KLSAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotICBzeW4gaW5jbHVkZSBAQXNwUGVybFNjcmlwdCBzeW50YXgvcGVybC52aW0KLWVuZGlmCitydW50aW1lISBzeW50YXgvaHRtbC52aW0KK3VubGV0IGI6Y3VycmVudF9zeW50YXgKK3N5biBpbmNsdWRlIEBBc3BQZXJsU2NyaXB0IHN5bnRheC9wZXJsLnZpbQogCiBzeW4gY2x1c3RlciBodG1sUHJlcHJvYyBhZGQ9QXNwUGVybFNjcmlwdEluc2lkZUh0bWxUYWdzCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2FzcHZicy52aW0gYi9ydW50aW1lL3N5bnRheC9hc3B2YnMudmltCmluZGV4IDA3YzEyOWUuLmZmNTUyMWEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2FzcHZicy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYXNwdmJzLnZpbQpAQCAtMTEsMTAgKzExLDggQEAKICIgVGhhbmtzIHRvIERlYW4gSGFsbCA8aGFsbEBhcHQ3LmNvbT4gZm9yIHRlc3RpbmcgdGhlIHVzZSBvZiBjbGFzc2VzIGluCiAiIFZCU2NyaXB0cyB3aGljaCBJJ3ZlIGJlZW4gdG9vIHNjYXJlZCB0byBkby4KIAotIiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3luIGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTIyLDExICsyMCw3IEBACiAgIGxldCBtYWluX3N5bnRheCA9ICdhc3B2YnMnCiBlbmRpZgogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNvdXJjZSA8c2ZpbGU+OnA6aC9odG1sLnZpbQotZWxzZQotICBydW50aW1lISBzeW50YXgvaHRtbC52aW0KLWVuZGlmCitydW50aW1lISBzeW50YXgvaHRtbC52aW0KIHVubGV0IGI6Y3VycmVudF9zeW50YXgKIAogc3luIGNsdXN0ZXIgaHRtbFByZVByb2MgYWRkPUFzcFZCU2NyaXB0SW5zaWRlSHRtbFRhZ3MKQEAgLTE2MywzMSArMTU3LDIzIEBACiAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfYXNwdmJzX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2FzcHZic19zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgIkhpTGluayBBc3BWQlNjcmlwdAkJU3BlY2lhbAotICBIaUxpbmsgQXNwVkJTTGluZU51bWJlcglDb21tZW50Ci0gIEhpTGluayBBc3BWQlNOdW1iZXIJCU51bWJlcgotICBIaUxpbmsgQXNwVkJTRXJyb3IJCUVycm9yCi0gIEhpTGluayBBc3BWQlNTdGF0ZW1lbnQJU3RhdGVtZW50Ci0gIEhpTGluayBBc3BWQlNTdHJpbmcJCVN0cmluZwotICBIaUxpbmsgQXNwVkJTQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgQXNwVkJTVG9kbwkJVG9kbwotICBIaUxpbmsgQXNwVkJTRnVuY3Rpb24JCUlkZW50aWZpZXIKLSAgSGlMaW5rIEFzcFZCU01ldGhvZHMJCVByZVByb2MKLSAgSGlMaW5rIEFzcFZCU0V2ZW50cwkJU3BlY2lhbAotICBIaUxpbmsgQXNwVkJTVHlwZVNwZWNpZmllcglUeXBlCisiSGlMaW5rIEFzcFZCU2NyaXB0CQlTcGVjaWFsCitIaUxpbmsgQXNwVkJTTGluZU51bWJlcglDb21tZW50CitIaUxpbmsgQXNwVkJTTnVtYmVyCQlOdW1iZXIKK0hpTGluayBBc3BWQlNFcnJvcgkJRXJyb3IKK0hpTGluayBBc3BWQlNTdGF0ZW1lbnQJU3RhdGVtZW50CitIaUxpbmsgQXNwVkJTU3RyaW5nCQlTdHJpbmcKK0hpTGluayBBc3BWQlNDb21tZW50CQlDb21tZW50CitIaUxpbmsgQXNwVkJTVG9kbwkJVG9kbworSGlMaW5rIEFzcFZCU0Z1bmN0aW9uCQlJZGVudGlmaWVyCitIaUxpbmsgQXNwVkJTTWV0aG9kcwkJUHJlUHJvYworSGlMaW5rIEFzcFZCU0V2ZW50cwkJU3BlY2lhbAorSGlMaW5rIEFzcFZCU1R5cGVTcGVjaWZpZXIJVHlwZQogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiYXNwdmJzIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9hc3Rlcmlzay52aW0gYi9ydW50aW1lL3N5bnRheC9hc3Rlcmlzay52aW0KaW5kZXggZmQ0ZWMzOS4uYzU2MmI4NSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYXN0ZXJpc2sudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2FzdGVyaXNrLnZpbQpAQCAtNSwxMCArNSw5IEBACiAiIFVwZGF0ZWQgZm9yIDEuMiBieSBUaWxnaG1hbiBMZXNoZXIgKENvcnlkb243NikKICIgTGFzdCBDaGFuZ2U6CTIwMTUgRmViIDI3CiAiIHZlcnNpb24gMC40Ci0iCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTU3LDQyICs1NiwzNSBAQAogc3luIG1hdGNoICAgICAgIGFzdGVyaXNrU2V0dGluZyAgICAgICAgICJeaG9zdFxzKj1ccypcKGR5bmFtaWNcfFwoXGRcezEsM31cLlxkXHsxLDN9XC5cZFx7MSwzfVwuXGRcezEsM31cKVx8XChbWzphbG51bTpdXVtbOmFsbnVtOl1cLVwuXSpcLltbOmFscGhhOl1dezIsMTB9XClcKSIgY29udGFpbnM9YXN0ZXJpc2tJUCxhc3Rlcmlza0hvc3RuYW1lCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2NvbmZfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfY29uZl9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rICAgICAgICBhc3Rlcmlza0NvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rICAgICAgICBhc3Rlcmlza0V4dGVuCQlTdHJpbmcKLSAgSGlMaW5rICAgICAgICBhc3Rlcmlza0NvbnRleHQgICAgICAgICBQcmVwcm9jCi0gIEhpTGluayAgICAgICAgYXN0ZXJpc2tQYXR0ZXJuICAgICAgICAgVHlwZQotICBIaUxpbmsgICAgICAgIGFzdGVyaXNrQXBwICAgICAgICAgICAgIFN0YXRlbWVudAotICBIaUxpbmsgICAgICAgIGFzdGVyaXNrSW5jbHVkZSAgICAgICAgIFByZXByb2MKLSAgSGlMaW5rICAgICAgICBhc3Rlcmlza0luY2x1ZGVCYWQJRXJyb3IKLSAgSGlMaW5rICAgICAgICBhc3Rlcmlza1ByaW9yaXR5ICAgICAgICBQcmVwcm9jCi0gIEhpTGluayAgICAgICAgYXN0ZXJpc2tMYWJlbCAgICAgICAgICAgVHlwZQotICBIaUxpbmsgICAgICAgIGFzdGVyaXNrVmFyICAgICAgICAgICAgIFN0cmluZwotICBIaUxpbmsgICAgICAgIGFzdGVyaXNrVmFyTGVuICAgICAgICAgIEZ1bmN0aW9uCi0gIEhpTGluayAgICAgICAgYXN0ZXJpc2tFeHAgICAgICAgICAgICAgVHlwZQotICBIaUxpbmsgICAgICAgIGFzdGVyaXNrQ29kZWNzUGVybWl0ICAgIFByZXByb2MKLSAgSGlMaW5rICAgICAgICBhc3Rlcmlza0NvZGVjcyAgICAgICAgICBTdHJpbmcKLSAgSGlMaW5rICAgICAgICBhc3Rlcmlza1R5cGUgICAgICAgICAgICBTdGF0ZW1lbnQKLSAgSGlMaW5rICAgICAgICBhc3Rlcmlza1R5cGVUeXBlICAgICAgICBUeXBlCi0gIEhpTGluayAgICAgICAgYXN0ZXJpc2tBdXRoICAgICAgICAgICAgU3RyaW5nCi0gIEhpTGluayAgICAgICAgYXN0ZXJpc2tBdXRoVHlwZSAgICAgICAgVHlwZQotICBIaUxpbmsgICAgICAgIGFzdGVyaXNrSVBSYW5nZSAgICAgICAgIElkZW50aWZpZXIKLSAgSGlMaW5rICAgICAgICBhc3Rlcmlza0lQICAgICAgICAgICAgICBJZGVudGlmaWVyCi0gIEhpTGluayAgICAgICAgYXN0ZXJpc2tQb3J0ICAgICAgICAgICAgSWRlbnRpZmllcgotICBIaUxpbmsgICAgICAgIGFzdGVyaXNrSG9zdG5hbWUgICAgICAgIElkZW50aWZpZXIKLSAgSGlMaW5rICAgICAgICBhc3Rlcmlza1NldHRpbmcgICAgICAgICBTdGF0ZW1lbnQKLSAgSGlMaW5rICAgICAgICBhc3Rlcmlza0Vycm9yICAgICAgICAgICBFcnJvcgotIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorSGlMaW5rICAgICAgICBhc3Rlcmlza0NvbW1lbnQJCUNvbW1lbnQKK0hpTGluayAgICAgICAgYXN0ZXJpc2tFeHRlbgkJU3RyaW5nCitIaUxpbmsgICAgICAgIGFzdGVyaXNrQ29udGV4dCAgICAgICAgIFByZXByb2MKK0hpTGluayAgICAgICAgYXN0ZXJpc2tQYXR0ZXJuICAgICAgICAgVHlwZQorSGlMaW5rICAgICAgICBhc3Rlcmlza0FwcCAgICAgICAgICAgICBTdGF0ZW1lbnQKK0hpTGluayAgICAgICAgYXN0ZXJpc2tJbmNsdWRlICAgICAgICAgUHJlcHJvYworSGlMaW5rICAgICAgICBhc3Rlcmlza0luY2x1ZGVCYWQJRXJyb3IKK0hpTGluayAgICAgICAgYXN0ZXJpc2tQcmlvcml0eSAgICAgICAgUHJlcHJvYworSGlMaW5rICAgICAgICBhc3Rlcmlza0xhYmVsICAgICAgICAgICBUeXBlCitIaUxpbmsgICAgICAgIGFzdGVyaXNrVmFyICAgICAgICAgICAgIFN0cmluZworSGlMaW5rICAgICAgICBhc3Rlcmlza1ZhckxlbiAgICAgICAgICBGdW5jdGlvbgorSGlMaW5rICAgICAgICBhc3Rlcmlza0V4cCAgICAgICAgICAgICBUeXBlCitIaUxpbmsgICAgICAgIGFzdGVyaXNrQ29kZWNzUGVybWl0ICAgIFByZXByb2MKK0hpTGluayAgICAgICAgYXN0ZXJpc2tDb2RlY3MgICAgICAgICAgU3RyaW5nCitIaUxpbmsgICAgICAgIGFzdGVyaXNrVHlwZSAgICAgICAgICAgIFN0YXRlbWVudAorSGlMaW5rICAgICAgICBhc3Rlcmlza1R5cGVUeXBlICAgICAgICBUeXBlCitIaUxpbmsgICAgICAgIGFzdGVyaXNrQXV0aCAgICAgICAgICAgIFN0cmluZworSGlMaW5rICAgICAgICBhc3Rlcmlza0F1dGhUeXBlICAgICAgICBUeXBlCitIaUxpbmsgICAgICAgIGFzdGVyaXNrSVBSYW5nZSAgICAgICAgIElkZW50aWZpZXIKK0hpTGluayAgICAgICAgYXN0ZXJpc2tJUCAgICAgICAgICAgICAgSWRlbnRpZmllcgorSGlMaW5rICAgICAgICBhc3Rlcmlza1BvcnQgICAgICAgICAgICBJZGVudGlmaWVyCitIaUxpbmsgICAgICAgIGFzdGVyaXNrSG9zdG5hbWUgICAgICAgIElkZW50aWZpZXIKK0hpTGluayAgICAgICAgYXN0ZXJpc2tTZXR0aW5nICAgICAgICAgU3RhdGVtZW50CitIaUxpbmsgICAgICAgIGFzdGVyaXNrRXJyb3IgICAgICAgICAgIEVycm9yCitkZWxjb21tYW5kIEhpTGluaworCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJhc3RlcmlzayIgCiAiIHZpbTogdHM9OCBzdz0yCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2FzdGVyaXNrdm0udmltIGIvcnVudGltZS9zeW50YXgvYXN0ZXJpc2t2bS52aW0KaW5kZXggYTZjOWRiYS4uMzU3YjI5OSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYXN0ZXJpc2t2bS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYXN0ZXJpc2t2bS52aW0KQEAgLTMsMTAgKzMsOSBAQAogIiBNYWludGFpbmVyOiBUaWxnaG1hbiBMZXNoZXIgKENvcnlkb243NikKICIgTGFzdCBDaGFuZ2U6CTIwMDYgTWFyIDIxCiAiIHZlcnNpb24gMC4yCi0iCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTMzLDI4ICszMiwyMCBAQAogc3luIG1hdGNoICAgICAgIGNvbW1hICAgICAgICAgICAgICAgICAgICJbLHxdIiBjb250YWluZWQKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci06aWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2NvbmZfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfY29uZl9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rICAgICAgICBhc3Rlcmlza3ZtQ29tbWVudCBDb21tZW50Ci0gIEhpTGluayAgICAgICAgYXN0ZXJpc2t2bUNvbnRleHQgICAgICAgICBJZGVudGlmaWVyCi0gIEhpTGluayAgICAgICAgYXN0ZXJpc2t2bVpvbmUgICAgICAgICAgICBUeXBlCi0gIEhpTGluayAgICAgICAgem9uZU5hbWUgICAgICAgICAgICAgICAgU3RyaW5nCi0gIEhpTGluayAgICAgICAgem9uZURlZiAgICAgICAgICAgICAgICAgU3RyaW5nCi0gIEhpTGluayAgICAgICAgYXN0ZXJpc2t2bVNldHRpbmcgICAgICAgICBUeXBlCi0gIEhpTGluayAgICAgICAgYXN0ZXJpc2t2bVNldHRpbmdCb29sICAgICBUeXBlCitIaUxpbmsgICAgICAgIGFzdGVyaXNrdm1Db21tZW50IENvbW1lbnQKK0hpTGluayAgICAgICAgYXN0ZXJpc2t2bUNvbnRleHQgICAgICAgICBJZGVudGlmaWVyCitIaUxpbmsgICAgICAgIGFzdGVyaXNrdm1ab25lICAgICAgICAgICAgVHlwZQorSGlMaW5rICAgICAgICB6b25lTmFtZSAgICAgICAgICAgICAgICBTdHJpbmcKK0hpTGluayAgICAgICAgem9uZURlZiAgICAgICAgICAgICAgICAgU3RyaW5nCitIaUxpbmsgICAgICAgIGFzdGVyaXNrdm1TZXR0aW5nICAgICAgICAgVHlwZQorSGlMaW5rICAgICAgICBhc3Rlcmlza3ZtU2V0dGluZ0Jvb2wgICAgIFR5cGUKIAotICBIaUxpbmsgICAgICAgIGFzdGVyaXNrdm1NYWlsYm94ICAgICAgICAgU3RhdGVtZW50Ci0gIEhpTGluayAgICAgICAgbWFpbGJveEVtYWlsICAgICAgICAgICAgU3RyaW5nCi0gZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitIaUxpbmsgICAgICAgIGFzdGVyaXNrdm1NYWlsYm94ICAgICAgICAgU3RhdGVtZW50CitIaUxpbmsgICAgICAgIG1haWxib3hFbWFpbCAgICAgICAgICAgIFN0cmluZworZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiYXN0ZXJpc2t2bSIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvYXRsYXMudmltIGIvcnVudGltZS9zeW50YXgvYXRsYXMudmltCmluZGV4IGI4ZmU0MzUuLjMwZTEzNjkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2F0bGFzLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9hdGxhcy52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglJbmFraSBTYWV6IDxqaXNhZXpAc2ZlLmluZHJhLmVzPgogIiBMYXN0IENoYW5nZToJMjAwMSBNYXkgMDkKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTYxLDM3ICs1OCwyOSBAQAogCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2F0bGFzX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2F0bGFzX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgYXRsYXNDb25kaXRpb25hbAlDb25kaXRpb25hbAotICBIaUxpbmsgYXRsYXNSZXBlYXQJCVJlcGVhdAotICBIaUxpbmsgYXRsYXNTdGF0ZW1lbnQJU3RhdGVtZW50Ci0gIEhpTGluayBhdGxhc051bWJlcgkJTnVtYmVyCi0gIEhpTGluayBhdGxhc0hleE51bWJlcglOdW1iZXIKLSAgSGlMaW5rIGF0bGFzT2N0YWxOdW1iZXIJTnVtYmVyCi0gIEhpTGluayBhdGxhc0Jpbk51bWJlcglOdW1iZXIKLSAgSGlMaW5rIGF0bGFzRGVjaW1hbE51bWJlcglGbG9hdAotICBIaUxpbmsgYXRsYXNGb3JtYXRTdHJpbmcJU3RyaW5nCi0gIEhpTGluayBhdGxhc1N0cmluZwkJU3RyaW5nCi0gIEhpTGluayBhdGxhc0NvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGF0bGFzQ29tbWVudDIJCUNvbW1lbnQKLSAgSGlMaW5rIGF0bGFzSW5jbHVkZQkJSW5jbHVkZQotICBIaUxpbmsgYXRsYXNEZWZpbmUJCU1hY3JvCi0gIEhpTGluayBhdGxhc1Jlc2VydmVkCQlQcmVDb25kaXQKLSAgSGlMaW5rIGF0bGFzU3RvcmFnZUNsYXNzCVN0b3JhZ2VDbGFzcwotICBIaUxpbmsgYXRsYXNJZGVudGlmaWVyCU5PTkUKLSAgSGlMaW5rIGF0bGFzU3BlY2lhbAkJU3BlY2lhbAorSGlMaW5rIGF0bGFzQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKK0hpTGluayBhdGxhc1JlcGVhdAkJUmVwZWF0CitIaUxpbmsgYXRsYXNTdGF0ZW1lbnQJU3RhdGVtZW50CitIaUxpbmsgYXRsYXNOdW1iZXIJCU51bWJlcgorSGlMaW5rIGF0bGFzSGV4TnVtYmVyCU51bWJlcgorSGlMaW5rIGF0bGFzT2N0YWxOdW1iZXIJTnVtYmVyCitIaUxpbmsgYXRsYXNCaW5OdW1iZXIJTnVtYmVyCitIaUxpbmsgYXRsYXNEZWNpbWFsTnVtYmVyCUZsb2F0CitIaUxpbmsgYXRsYXNGb3JtYXRTdHJpbmcJU3RyaW5nCitIaUxpbmsgYXRsYXNTdHJpbmcJCVN0cmluZworSGlMaW5rIGF0bGFzQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIGF0bGFzQ29tbWVudDIJCUNvbW1lbnQKK0hpTGluayBhdGxhc0luY2x1ZGUJCUluY2x1ZGUKK0hpTGluayBhdGxhc0RlZmluZQkJTWFjcm8KK0hpTGluayBhdGxhc1Jlc2VydmVkCQlQcmVDb25kaXQKK0hpTGluayBhdGxhc1N0b3JhZ2VDbGFzcwlTdG9yYWdlQ2xhc3MKK0hpTGluayBhdGxhc0lkZW50aWZpZXIJTk9ORQorSGlMaW5rIGF0bGFzU3BlY2lhbAkJU3BlY2lhbAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiYXRsYXMiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2F1dG9tYWtlLnZpbSBiL3J1bnRpbWUvc3ludGF4L2F1dG9tYWtlLnZpbQppbmRleCBlZWEyYTlmLi5iMzRmNzUxIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9hdXRvbWFrZS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYXV0b21ha2UudmltCkBAIC0xOCwxOCArMTgsMTIgQEAKICIgRVhUUkFfU09VUkNFUy4KIAogIiBTdGFuZGFyZCBzeW50YXggaW5pdGlhbGl6YXRpb24KLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIAogIiBSZWFkIHRoZSBNYWtlZmlsZSBzeW50YXggdG8gc3RhcnQgd2l0aAotaWYgdmVyc2lvbiA8IDYwMAotICBzb3VyY2UgPHNmaWxlPjpwOmgvbWFrZS52aW0KLWVsc2UKLSAgcnVudGltZSEgc3ludGF4L21ha2UudmltCi1lbmRpZgorcnVudGltZSEgc3ludGF4L21ha2UudmltCiAKIHN5biBtYXRjaCBhdXRvbWFrZVByaW1hcnkgIl5cd1wrXChfUFJPR1JBTVNcfF9MSUJSQVJJRVNcfF9MSVNQXHxfUFlUSE9OXHxfSkFWQVx8X1NDUklQVFNcfF9EQVRBXHxfSEVBREVSU1x8X01BTlNcfF9URVhJTkZPU1x8X0xUTElCUkFSSUVTXClccypcemUrXD09Igogc3luIG1hdGNoIGF1dG9tYWtlUHJpbWFyeSAiXlRFU1RTXHMqXHplK1w9PSJtZT1lLTEKQEAgLTU5LDM0ICs1MywyNiBAQAogc3luIHJlZ2lvbiAgYXV0b21ha2VNYWtlQlN0cmluZyBzdGFydD0rYCsgIHNraXA9K1xcYCsgIGVuZD0rYCsgIGNvbnRhaW5zPW1ha2VJZGVudCxtYWtlU1N0cmluZyxtYWtlRFN0cmluZyxtYWtlTmV4dExpbmUsYXV0b21ha2VTdWJzdGl0dXRpb24KIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfYXV0b21ha2Vfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfYXV0b21ha2Vfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBhdXRvbWFrZVByaW1hcnkgICAgIFN0YXRlbWVudAotICBIaUxpbmsgYXV0b21ha2VTZWNvbmRhcnkgICBUeXBlCi0gIEhpTGluayBhdXRvbWFrZUV4dHJhICAgICAgIFNwZWNpYWwKLSAgSGlMaW5rIGF1dG9tYWtlT3B0aW9ucyAgICAgU3BlY2lhbAotICBIaUxpbmsgYXV0b21ha2VDbGVhbiAgICAgICBTcGVjaWFsCi0gIEhpTGluayBhdXRvbWFrZVN1YmRpcnMgICAgIFN0YXRlbWVudAotICBIaUxpbmsgYXV0b21ha2VDb25kaXRpb25hbCBQcmVQcm9jCi0gIEhpTGluayBhdXRvbWFrZVN1YnN0ICAgICAgIFByZVByb2MKLSAgSGlMaW5rIGF1dG9tYWtlQ29tbWVudDEgICAgbWFrZUNvbW1lbnQKLSAgSGlMaW5rIGF1dG9tYWtlQ29tbWVudDIgICAgbWFrZUNvbW1lbnQKLSAgSGlMaW5rIGF1dG9tYWtlTWFrZUVycm9yICAgbWFrZUVycm9yCi0gIEhpTGluayBhdXRvbWFrZUJhZFN1YnN0ICAgIG1ha2VFcnJvcgotICBIaUxpbmsgYXV0b21ha2VNYWtlRFN0cmluZyBtYWtlRFN0cmluZwotICBIaUxpbmsgYXV0b21ha2VNYWtlU1N0cmluZyBtYWtlU1N0cmluZwotICBIaUxpbmsgYXV0b21ha2VNYWtlQlN0cmluZyBtYWtlQlN0cmluZworSGlMaW5rIGF1dG9tYWtlUHJpbWFyeSAgICAgU3RhdGVtZW50CitIaUxpbmsgYXV0b21ha2VTZWNvbmRhcnkgICBUeXBlCitIaUxpbmsgYXV0b21ha2VFeHRyYSAgICAgICBTcGVjaWFsCitIaUxpbmsgYXV0b21ha2VPcHRpb25zICAgICBTcGVjaWFsCitIaUxpbmsgYXV0b21ha2VDbGVhbiAgICAgICBTcGVjaWFsCitIaUxpbmsgYXV0b21ha2VTdWJkaXJzICAgICBTdGF0ZW1lbnQKK0hpTGluayBhdXRvbWFrZUNvbmRpdGlvbmFsIFByZVByb2MKK0hpTGluayBhdXRvbWFrZVN1YnN0ICAgICAgIFByZVByb2MKK0hpTGluayBhdXRvbWFrZUNvbW1lbnQxICAgIG1ha2VDb21tZW50CitIaUxpbmsgYXV0b21ha2VDb21tZW50MiAgICBtYWtlQ29tbWVudAorSGlMaW5rIGF1dG9tYWtlTWFrZUVycm9yICAgbWFrZUVycm9yCitIaUxpbmsgYXV0b21ha2VCYWRTdWJzdCAgICBtYWtlRXJyb3IKK0hpTGluayBhdXRvbWFrZU1ha2VEU3RyaW5nIG1ha2VEU3RyaW5nCitIaUxpbmsgYXV0b21ha2VNYWtlU1N0cmluZyBtYWtlU1N0cmluZworSGlMaW5rIGF1dG9tYWtlTWFrZUJTdHJpbmcgbWFrZUJTdHJpbmcKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImF1dG9tYWtlIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9hdmUudmltIGIvcnVudGltZS9zeW50YXgvYXZlLnZpbQppbmRleCAyYTBhOWQ4Li5hZTM2OTM5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9hdmUudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2F2ZS52aW0KQEAgLTExLDExICsxMSw4IEBACiAiIEkgdXNlIHNvbWUgdGVjaG5vbG9naWVzIHRvIGF1dG9tYXRpY2FsbHkgbG9hZCBhdmVudWUgc2NyaXB0cwogIiBpbnRvIEFyY1ZpZXcuCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC01OSwzNCArNTYsMjYgQEAKIHN5biBtYXRjaCBhdmVUeXBvcwkiIT0iCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nK3lldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2F2ZV9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0JbGV0IGRpZF9hdmVfc3luX2luaXRzID0gMQotCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyt5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBhdmVTdGF0ZW1lbnQJCVN0YXRlbWVudAorSGlMaW5rIGF2ZVN0YXRlbWVudAkJU3RhdGVtZW50CiAKLSAgSGlMaW5rIGF2ZVN0cmluZwkJU3RyaW5nCi0gIEhpTGluayBhdmVOdW1iZXIJCU51bWJlcgorSGlMaW5rIGF2ZVN0cmluZwkJU3RyaW5nCitIaUxpbmsgYXZlTnVtYmVyCQlOdW1iZXIKIAotICBIaUxpbmsgYXZlRml4VmFyaWFibGVzCVNwZWNpYWwKLSAgSGlMaW5rIGF2ZVZhcmlhYmxlcwkJSWRlbnRpZmllcgotICBIaUxpbmsgZ2xvYmFsVmFyaWFibGVzCVNwZWNpYWwKLSAgSGlMaW5rIGF2ZUNvbnN0CQlTcGVjaWFsCitIaUxpbmsgYXZlRml4VmFyaWFibGVzCVNwZWNpYWwKK0hpTGluayBhdmVWYXJpYWJsZXMJCUlkZW50aWZpZXIKK0hpTGluayBnbG9iYWxWYXJpYWJsZXMJU3BlY2lhbAorSGlMaW5rIGF2ZUNvbnN0CQlTcGVjaWFsCiAKLSAgSGlMaW5rIGF2ZUNsYXNzTWV0aG9kcwlGdW5jdGlvbgorSGlMaW5rIGF2ZUNsYXNzTWV0aG9kcwlGdW5jdGlvbgogCi0gIEhpTGluayBhdmVPcGVyYXRvcgkJT3BlcmF0b3IKLSAgSGlMaW5rIGF2ZUNvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBhdmVPcGVyYXRvcgkJT3BlcmF0b3IKK0hpTGluayBhdmVDb21tZW50CQlDb21tZW50CiAKLSAgSGlMaW5rIGF2ZVR5cG9zCQlFcnJvcgorSGlMaW5rIGF2ZVR5cG9zCQlFcnJvcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiYXZlIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvYXlhY2MudmltIGIvcnVudGltZS9zeW50YXgvYXlhY2MudmltCmluZGV4IGZlZGQwZTguLjlmNWVjNTYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2F5YWNjLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9heWFjYy52aW0KQEAgLTYsMjEgKzYsMTQgQEAKICIgQ29tbWVudDoJICAgICBSZXBsYWNlZCBzb3VyY2luZyBjLnZpbSBmaWxlIGJ5IGFkYS52aW0gYW5kIHJlbmFtZSB5YWNjKgogIgkJaW4gYXlhY2MqCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICBmaW5pc2gKIGVuZGlmCiAKICIgUmVhZCB0aGUgQWRhIHN5bnRheCB0byBzdGFydCB3aXRoCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICBzbyA8c2ZpbGU+OnA6aC9hZGEudmltCi1lbHNlCi0gICBydW50aW1lISBzeW50YXgvYWRhLnZpbQotICAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9hZGEudmltCit1bmxldCBiOmN1cnJlbnRfc3ludGF4CiAKIGxldCBzOmNwb19zYXZlID0gJmNwbwogc2V0IGNwbyZ2aW0KQEAgLTU0LDM1ICs0NywyOCBAQAogc3luIG1hdGNoCWF5YWNjQ3VybHlFcnJvcgkiW3t9XSIKIHN5biByZWdpb24JYXlhY2NBY3Rpb24JbWF0Y2hncm91cD1heWFjY0N1cmx5IHN0YXJ0PSJ7IiBlbmQ9In0iIGNvbnRhaW5zPUFMTEJVVCxAYXlhY2NBY3Rpb25Hcm91cAogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfYXlhY2Nfc3ludGF4X2luaXRzIikKLSAgIGlmIHZlcnNpb24gPCA1MDgKLSAgICAgIGxldCBkaWRfYXlhY2Nfc3ludGF4X2luaXRzID0gMQotICAgICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgIGVsc2UKLSAgICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICAgZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICIgSW50ZXJuYWwgYXlhY2MgaGlnaGxpZ2h0aW5nIGxpbmtzCi0gIEhpTGluayBheWFjY0Jya3QJYXlhY2NTdG10Ci0gIEhpTGluayBheWFjY0tleQlheWFjY1N0bXQKLSAgSGlMaW5rIGF5YWNjT3BlcglheWFjY1N0bXQKLSAgSGlMaW5rIGF5YWNjVW5pb25TdGFydAlheWFjY0tleQorIiBJbnRlcm5hbCBheWFjYyBoaWdobGlnaHRpbmcgbGlua3MKK0hpTGluayBheWFjY0Jya3QJYXlhY2NTdG10CitIaUxpbmsgYXlhY2NLZXkJYXlhY2NTdG10CitIaUxpbmsgYXlhY2NPcGVyCWF5YWNjU3RtdAorSGlMaW5rIGF5YWNjVW5pb25TdGFydAlheWFjY0tleQogCi0gICIgRXh0ZXJuYWwgYXlhY2MgaGlnaGxpZ2h0aW5nIGxpbmtzCi0gIEhpTGluayBheWFjY0N1cmx5CURlbGltaXRlcgotICBIaUxpbmsgYXlhY2NDdXJseUVycm9yCUVycm9yCi0gIEhpTGluayBheWFjY0RlZmluaXRpb24JRnVuY3Rpb24KLSAgSGlMaW5rIGF5YWNjRGVsaW0JRnVuY3Rpb24KLSAgSGlMaW5rIGF5YWNjS2V5QWN0bglTcGVjaWFsCi0gIEhpTGluayBheWFjY1NlY3Rpb25TZXAJVG9kbwotICBIaUxpbmsgYXlhY2NTZXAJRGVsaW1pdGVyCi0gIEhpTGluayBheWFjY1N0bXQJU3RhdGVtZW50Ci0gIEhpTGluayBheWFjY1R5cGUJVHlwZQorIiBFeHRlcm5hbCBheWFjYyBoaWdobGlnaHRpbmcgbGlua3MKK0hpTGluayBheWFjY0N1cmx5CURlbGltaXRlcgorSGlMaW5rIGF5YWNjQ3VybHlFcnJvcglFcnJvcgorSGlMaW5rIGF5YWNjRGVmaW5pdGlvbglGdW5jdGlvbgorSGlMaW5rIGF5YWNjRGVsaW0JRnVuY3Rpb24KK0hpTGluayBheWFjY0tleUFjdG4JU3BlY2lhbAorSGlMaW5rIGF5YWNjU2VjdGlvblNlcAlUb2RvCitIaUxpbmsgYXlhY2NTZXAJRGVsaW1pdGVyCitIaUxpbmsgYXlhY2NTdG10CVN0YXRlbWVudAorSGlMaW5rIGF5YWNjVHlwZQlUeXBlCiAKLSAgIiBzaW5jZSBCcmFtIGRvZXNuJ3QgbGlrZSBteSBEZWxpbWl0ZXIgOnwKLSAgSGlMaW5rIERlbGltaXRlcglUeXBlCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorIiBzaW5jZSBCcmFtIGRvZXNuJ3QgbGlrZSBteSBEZWxpbWl0ZXIgOnwKK0hpTGluayBEZWxpbWl0ZXIJVHlwZQorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiYXlhY2MiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2IudmltIGIvcnVudGltZS9zeW50YXgvYi52aW0KaW5kZXggYjQ3MGFiOS4uOTVmNWFkNyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYi52aW0KQEAgLTUsMTEgKzUsOCBAQAogIiBMYXN0Q2hhbmdlOgk4IERlYyAyMDA3CiAKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgIGZpbmlzaAogZW5kaWYKIApAQCAtNjksNTggKzY2LDUwIEBACiBzeW4gc3luYyBjY29tbWVudCBiQ29tbWVudCBtaW5saW5lcz0xMAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKIAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2Jfc3ludGF4X2luaXRzIikKLSAgIGlmIHZlcnNpb24gPCA1MDgKLSAgICAgIGxldCBkaWRfYl9zeW50YXhfaW5pdHMgPSAxCi0gICAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICAgZWxzZQotICAgICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gICBlbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgotICBIaUxpbmsgYkxhYmVsCUxhYmVsCi0gIEhpTGluayBiVXNlckxhYmVsCUxhYmVsCi0gIEhpTGluayBiQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIGJSZXBlYXQJUmVwZWF0Ci0gIEhpTGluayBiTG9naWMJU3BlY2lhbAotICBIaUxpbmsgYkNoYXJhY3RlcglDaGFyYWN0ZXIKLSAgSGlMaW5rIGJTcGVjaWFsQ2hhcmFjdGVyIGJTcGVjaWFsCi0gIEhpTGluayBiTnVtYmVyCU51bWJlcgotICBIaUxpbmsgYkZsb2F0CUZsb2F0Ci0gIEhpTGluayBiT2N0YWxFcnJvcgliRXJyb3IKLSAgSGlMaW5rIGJQYXJlbkVycm9yCWJFcnJvcgorIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgorSGlMaW5rIGJMYWJlbAlMYWJlbAorSGlMaW5rIGJVc2VyTGFiZWwJTGFiZWwKK0hpTGluayBiQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKK0hpTGluayBiUmVwZWF0CVJlcGVhdAorSGlMaW5rIGJMb2dpYwlTcGVjaWFsCitIaUxpbmsgYkNoYXJhY3RlcglDaGFyYWN0ZXIKK0hpTGluayBiU3BlY2lhbENoYXJhY3RlciBiU3BlY2lhbAorSGlMaW5rIGJOdW1iZXIJTnVtYmVyCitIaUxpbmsgYkZsb2F0CUZsb2F0CitIaUxpbmsgYk9jdGFsRXJyb3IJYkVycm9yCitIaUxpbmsgYlBhcmVuRXJyb3IJYkVycm9yCiAiIEhpTGluayBiSW5QYXJlbgliRXJyb3IKLSAgSGlMaW5rIGJDb21tZW50RXJyb3IJYkVycm9yCi0gIEhpTGluayBiQm9vbGVhbglJZGVudGlmaWVyCi0gIEhpTGluayBiQ29uc3RhbnQJSWRlbnRpZmllcgotICBIaUxpbmsgYkd1YXJkCUlkZW50aWZpZXIKLSAgSGlMaW5rIGJPcGVyYXRvcglPcGVyYXRvcgotICBIaUxpbmsgYktleXdvcmRzCU9wZXJhdG9yCi0gIEhpTGluayBiT3BzCQlJZGVudGlmaWVyCi0gIEhpTGluayBiU3RydWN0dXJlCVN0cnVjdHVyZQotICBIaUxpbmsgYlN0b3JhZ2VDbGFzcwlTdG9yYWdlQ2xhc3MKLSAgSGlMaW5rIGJJbmNsdWRlCUluY2x1ZGUKLSAgSGlMaW5rIGJQcmVQcm9jCVByZVByb2MKLSAgSGlMaW5rIGJEZWZpbmUJTWFjcm8KLSAgSGlMaW5rIGJJbmNsdWRlZAliU3RyaW5nCi0gIEhpTGluayBiRXJyb3IJRXJyb3IKLSAgSGlMaW5rIGJTdGF0ZW1lbnQJU3RhdGVtZW50Ci0gIEhpTGluayBiUHJlQ29uZGl0CVByZUNvbmRpdAotICBIaUxpbmsgYlR5cGUJCVR5cGUKLSAgSGlMaW5rIGJDb21tZW50RXJyb3IJYkVycm9yCi0gIEhpTGluayBiQ29tbWVudFN0cmluZyBiU3RyaW5nCi0gIEhpTGluayBiQ29tbWVudDJTdHJpbmcgYlN0cmluZwotICBIaUxpbmsgYkNvbW1lbnRTa2lwCWJDb21tZW50Ci0gIEhpTGluayBiU3RyaW5nCVN0cmluZwotICBIaUxpbmsgYkNvbW1lbnQJQ29tbWVudAotICBIaUxpbmsgYlNwZWNpYWwJU3BlY2lhbENoYXIKLSAgSGlMaW5rIGJUb2RvCQlUb2RvCi0gICJoaSBsaW5rIGJJZGVudGlmaWVyCUlkZW50aWZpZXIKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitIaUxpbmsgYkNvbW1lbnRFcnJvcgliRXJyb3IKK0hpTGluayBiQm9vbGVhbglJZGVudGlmaWVyCitIaUxpbmsgYkNvbnN0YW50CUlkZW50aWZpZXIKK0hpTGluayBiR3VhcmQJSWRlbnRpZmllcgorSGlMaW5rIGJPcGVyYXRvcglPcGVyYXRvcgorSGlMaW5rIGJLZXl3b3JkcwlPcGVyYXRvcgorSGlMaW5rIGJPcHMJCUlkZW50aWZpZXIKK0hpTGluayBiU3RydWN0dXJlCVN0cnVjdHVyZQorSGlMaW5rIGJTdG9yYWdlQ2xhc3MJU3RvcmFnZUNsYXNzCitIaUxpbmsgYkluY2x1ZGUJSW5jbHVkZQorSGlMaW5rIGJQcmVQcm9jCVByZVByb2MKK0hpTGluayBiRGVmaW5lCU1hY3JvCitIaUxpbmsgYkluY2x1ZGVkCWJTdHJpbmcKK0hpTGluayBiRXJyb3IJRXJyb3IKK0hpTGluayBiU3RhdGVtZW50CVN0YXRlbWVudAorSGlMaW5rIGJQcmVDb25kaXQJUHJlQ29uZGl0CitIaUxpbmsgYlR5cGUJCVR5cGUKK0hpTGluayBiQ29tbWVudEVycm9yCWJFcnJvcgorSGlMaW5rIGJDb21tZW50U3RyaW5nIGJTdHJpbmcKK0hpTGluayBiQ29tbWVudDJTdHJpbmcgYlN0cmluZworSGlMaW5rIGJDb21tZW50U2tpcAliQ29tbWVudAorSGlMaW5rIGJTdHJpbmcJU3RyaW5nCitIaUxpbmsgYkNvbW1lbnQJQ29tbWVudAorSGlMaW5rIGJTcGVjaWFsCVNwZWNpYWxDaGFyCitIaUxpbmsgYlRvZG8JCVRvZG8KKyJoaSBsaW5rIGJJZGVudGlmaWVyCUlkZW50aWZpZXIKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImIiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2JhYW4udmltIGIvcnVudGltZS9zeW50YXgvYmFhbi52aW0KaW5kZXggNTAwOTIxOC4uOTE3NTYyYiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYmFhbi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYmFhbi52aW0KQEAgLTQsMTUgKzQsOCBAQAogIiBPcmlnaW5hbGx5IG93bmVkIGJ5OiBFcndpbiBTbWl0IC8gSGVyIHZhbiBkZSBWbGllcnQKICIgTGFzdCBjaGFuZ2U6ICB2MS4xNyAyMDA2LzA0LzI2IDEwOjQwOjE4CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi0iCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotICBpZiBleGlzdHMoImJhYW5fZm9sZCIpCi0JICB1bmxldCBiYWFuX2ZvbGQKLSAgZW5kaWYKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTg5NCw0MCArMTg4NywzMiBAQAogc3luIGtleXdvcmQgYmFhbkJzaGVsbCBiY2xtLnNldC5kZXNrdG9wCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2JhYW5fc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfYmFhbl9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGJhYW5Db25kaXRpb25hbAlDb25kaXRpb25hbAotICBIaUxpbmsgYmFhbjNnbAkJU3RhdGVtZW50Ci0gIEhpTGluayBiYWFuM2dscHJlCQlQcmVQcm9jCi0gIEhpTGluayBiYWFuNGdsCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGJhYW40Z2xoCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGJhYW5zcWwJCVN0YXRlbWVudAotICBIaUxpbmsgYmFhbnNxbGgJCVN0YXRlbWVudAotICBIaUxpbmsgYmFhbkRhbEhvb2sJCVN0YXRlbWVudAotICBIaUxpbmsgYmFhbk51bWJlcgkJTnVtYmVyCi0gIEhpTGluayBiYWFuU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIGJhYW5PcGVuU3RyaW5nRXJyb3IJRXJyb3IKLSAgSGlMaW5rIGJhYW5Db25zdGFudAkJQ29uc3RhbnQKLSAgSGlMaW5rIGJhYW5Db21tZW50CQlDb21tZW50Ci0gIEhpTGluayBiYWFuQ29tbWVudGgJCUNvbW1lbnQKLSAgSGlMaW5rIGJhYW5VbmNvbW1lbnRlZAlDb21tZW50Ci0gIEhpTGluayBiYWFuRExMVXNhZ2UJCUNvbW1lbnQKLSAgSGlMaW5rIGJhYW5GdW5Vc2FnZQkJQ29tbWVudAotICBIaUxpbmsgYmFhbklkZW50aWZpZXIJCU5vcm1hbAotICBIaUxpbmsgYmFhbkJzaGVsbAkJRnVuY3Rpb24KLSAgSGlMaW5rIGJhYW5UeXBlCQlUeXBlCi0gIEhpTGluayBiYWFuU3RvcmFnZUNsYXNzCVN0b3JhZ2VDbGFzcworSGlMaW5rIGJhYW5Db25kaXRpb25hbAlDb25kaXRpb25hbAorSGlMaW5rIGJhYW4zZ2wJCVN0YXRlbWVudAorSGlMaW5rIGJhYW4zZ2xwcmUJCVByZVByb2MKK0hpTGluayBiYWFuNGdsCQlTdGF0ZW1lbnQKK0hpTGluayBiYWFuNGdsaAkJU3RhdGVtZW50CitIaUxpbmsgYmFhbnNxbAkJU3RhdGVtZW50CitIaUxpbmsgYmFhbnNxbGgJCVN0YXRlbWVudAorSGlMaW5rIGJhYW5EYWxIb29rCQlTdGF0ZW1lbnQKK0hpTGluayBiYWFuTnVtYmVyCQlOdW1iZXIKK0hpTGluayBiYWFuU3RyaW5nCQlTdHJpbmcKK0hpTGluayBiYWFuT3BlblN0cmluZ0Vycm9yCUVycm9yCitIaUxpbmsgYmFhbkNvbnN0YW50CQlDb25zdGFudAorSGlMaW5rIGJhYW5Db21tZW50CQlDb21tZW50CitIaUxpbmsgYmFhbkNvbW1lbnRoCQlDb21tZW50CitIaUxpbmsgYmFhblVuY29tbWVudGVkCUNvbW1lbnQKK0hpTGluayBiYWFuRExMVXNhZ2UJCUNvbW1lbnQKK0hpTGluayBiYWFuRnVuVXNhZ2UJCUNvbW1lbnQKK0hpTGluayBiYWFuSWRlbnRpZmllcgkJTm9ybWFsCitIaUxpbmsgYmFhbkJzaGVsbAkJRnVuY3Rpb24KK0hpTGluayBiYWFuVHlwZQkJVHlwZQorSGlMaW5rIGJhYW5TdG9yYWdlQ2xhc3MJU3RvcmFnZUNsYXNzCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJiYWFuIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9iYXNpYy52aW0gYi9ydW50aW1lL3N5bnRheC9iYXNpYy52aW0KaW5kZXggYzcyMDMyZC4uNjM4NDkxMyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYmFzaWMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2Jhc2ljLnZpbQpAQCAtOCwxMSArOCw4IEBACiAiIFRoaXMgc3ludGF4IGZpbGUgbm90IGEgY29tcGxldGUgaW1wbGVtZW50YXRpb24geWV0LiAgU2VuZCBzdWdnZXN0aW9ucyB0byB0aGUKICIgbWFpbnRhaW5lci4KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTE0MywzNCArMTQwLDI2IEBACiBzeW4gbWF0Y2ggICBiYXNpY01hdGhzT3BlcmF0b3IgICAiLVx8PVx8Wzo8PitcKl4vXFxdXHxBTkRcfE9SIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9iYXNpY19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9iYXNpY19zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGJhc2ljTGFiZWwJCUxhYmVsCi0gIEhpTGluayBiYXNpY0NvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCi0gIEhpTGluayBiYXNpY1JlcGVhdAkJUmVwZWF0Ci0gIEhpTGluayBiYXNpY0xpbmVOdW1iZXIJQ29tbWVudAotICBIaUxpbmsgYmFzaWNOdW1iZXIJCU51bWJlcgotICBIaUxpbmsgYmFzaWNFcnJvcgkJRXJyb3IKLSAgSGlMaW5rIGJhc2ljU3RhdGVtZW50CVN0YXRlbWVudAotICBIaUxpbmsgYmFzaWNTdHJpbmcJCVN0cmluZwotICBIaUxpbmsgYmFzaWNDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBiYXNpY1NwZWNpYWwJCVNwZWNpYWwKLSAgSGlMaW5rIGJhc2ljVG9kbwkJVG9kbwotICBIaUxpbmsgYmFzaWNGdW5jdGlvbgkJSWRlbnRpZmllcgotICBIaUxpbmsgYmFzaWNUeXBlU3BlY2lmaWVyIFR5cGUKLSAgSGlMaW5rIGJhc2ljRmlsZW51bWJlciBiYXNpY1R5cGVTcGVjaWZpZXIKLSAgImhpIGJhc2ljTWF0aHNPcGVyYXRvciB0ZXJtPWJvbGQgY3Rlcm09Ym9sZCBndWk9Ym9sZAorSGlMaW5rIGJhc2ljTGFiZWwJCUxhYmVsCitIaUxpbmsgYmFzaWNDb25kaXRpb25hbAlDb25kaXRpb25hbAorSGlMaW5rIGJhc2ljUmVwZWF0CQlSZXBlYXQKK0hpTGluayBiYXNpY0xpbmVOdW1iZXIJQ29tbWVudAorSGlMaW5rIGJhc2ljTnVtYmVyCQlOdW1iZXIKK0hpTGluayBiYXNpY0Vycm9yCQlFcnJvcgorSGlMaW5rIGJhc2ljU3RhdGVtZW50CVN0YXRlbWVudAorSGlMaW5rIGJhc2ljU3RyaW5nCQlTdHJpbmcKK0hpTGluayBiYXNpY0NvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBiYXNpY1NwZWNpYWwJCVNwZWNpYWwKK0hpTGluayBiYXNpY1RvZG8JCVRvZG8KK0hpTGluayBiYXNpY0Z1bmN0aW9uCQlJZGVudGlmaWVyCitIaUxpbmsgYmFzaWNUeXBlU3BlY2lmaWVyIFR5cGUKK0hpTGluayBiYXNpY0ZpbGVudW1iZXIgYmFzaWNUeXBlU3BlY2lmaWVyCisiaGkgYmFzaWNNYXRoc09wZXJhdG9yIHRlcm09Ym9sZCBjdGVybT1ib2xkIGd1aT1ib2xkCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJiYXNpYyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvYmMudmltIGIvcnVudGltZS9zeW50YXgvYmMudmltCmluZGV4IDk2NWFmYzMuLmJmNGE2MmEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2JjLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9iYy52aW0KQEAgLTUsMTEgKzUsOCBAQAogIiAJCShEb21pbmlxdWUgUGVsbGUgYWRkZWQgQFNwZWxsKQogIiBBdmFpbGFibGUgb246CXd3dy5namguc2svfnZsYWRvL2JjLnZpbQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNTMsMjcgKzUwLDE5IEBACiBzeW4gY2FzZSBtYXRjaAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9iY19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9iY19zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGJjS2V5d29yZAkJU3RhdGVtZW50Ci0gIEhpTGluayBiY1R5cGUJCVR5cGUKLSAgSGlMaW5rIGJjQ29uc3RhbnQJCUNvbnN0YW50Ci0gIEhpTGluayBiY051bWJlcgkJTnVtYmVyCi0gIEhpTGluayBiY0NvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGJjU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIGJjU3BlY2lhbENoYXIJCVNwZWNpYWxDaGFyCi0gIEhpTGluayBiY1BhcmVuRXJyb3IJCUVycm9yCitIaUxpbmsgYmNLZXl3b3JkCQlTdGF0ZW1lbnQKK0hpTGluayBiY1R5cGUJCVR5cGUKK0hpTGluayBiY0NvbnN0YW50CQlDb25zdGFudAorSGlMaW5rIGJjTnVtYmVyCQlOdW1iZXIKK0hpTGluayBiY0NvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBiY1N0cmluZwkJU3RyaW5nCitIaUxpbmsgYmNTcGVjaWFsQ2hhcgkJU3BlY2lhbENoYXIKK0hpTGluayBiY1BhcmVuRXJyb3IJCUVycm9yCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJiYyIKICIgdmltOiB0cz04CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9iaWIudmltIGIvcnVudGltZS9zeW50YXgvYmliLnZpbQppbmRleCA4YmQwNTI4Li4yNGI4MGI1IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9iaWIudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2JpYi52aW0KQEAgLTgsMTEgKzgsOCBAQAogCiAiIEluaXRpYWxpemF0aW9uCiAiID09PT09PT09PT09PT09Ci0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtOTEsMTEgKzg4LDcgQEAKIHN5biByZWdpb24gYmliRW50cnlEYXRhIGNvbnRhaW5lZCBzdGFydD0vW3soXS9tcz1lKzEgZW5kPS9bfSldL21lPWUtMSBjb250YWlucz1iaWJLZXksYmliRmllbGQKICIgQWN0dWFsbHksIDUuOCA8PSBWaW0gPCA2LjAgd291bGQgaWdub3JlIHRoZSBgZm9sZCcga2V5d29yZCBhbnl3YXksIGJ1dCBWaW08NS44IHdvdWxkIHByb2R1Y2UKICIgYW4gZXJyb3IsIHNvIHdlIGV4cGxpY2l0bHkgZGlzdGluZ3Vpc2ggdmVyc2lvbnMgd2l0aCBhbmQgd2l0aG91dCBmb2xkaW5nIGZ1bmN0aW9uYWxpdHk6Ci1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5biByZWdpb24gYmliRW50cnkgc3RhcnQ9L0BcU1wrXHMqW3soXS8gZW5kPS9eXHMqW30pXS8gdHJhbnNwYXJlbnQgY29udGFpbnM9YmliVHlwZSxiaWJFbnRyeURhdGEgbmV4dGdyb3VwPWJpYkNvbW1lbnQKLWVsc2UKLSAgc3luIHJlZ2lvbiBiaWJFbnRyeSBzdGFydD0vQFxTXCtccypbeyhdLyBlbmQ9L15ccypbfSldLyB0cmFuc3BhcmVudCBmb2xkIGNvbnRhaW5zPWJpYlR5cGUsYmliRW50cnlEYXRhIG5leHRncm91cD1iaWJDb21tZW50Ci1lbmRpZgorc3luIHJlZ2lvbiBiaWJFbnRyeSBzdGFydD0vQFxTXCtccypbeyhdLyBlbmQ9L15ccypbfSldLyB0cmFuc3BhcmVudCBmb2xkIGNvbnRhaW5zPWJpYlR5cGUsYmliRW50cnlEYXRhIG5leHRncm91cD1iaWJDb21tZW50CiBzeW4gcmVnaW9uIGJpYkNvbW1lbnQyIHN0YXJ0PS9AQ29tbWVudFxzKlt7KF0vIGVuZD0vXlxzKlt9KV0vbWU9ZS0xIGNvbnRhaW5zPUBiaWJDb21tZW50Q29udGVudHMgbmV4dGdyb3VwPWJpYkVudHJ5CiAKICIgU3luY2hyb25pemF0aW9uCkBAIC0xMDcsMjUgKzEwMCwxOCBAQAogIiBIaWdobGlnaHRpbmcgZGVmYXVsdHMKICIgPT09PT09PT09PT09PT09PT09PT09CiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9iaWJfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfYmliX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCi0gIEhpTGluayBiaWJUeXBlCUlkZW50aWZpZXIKLSAgSGlMaW5rIGJpYkVudHJ5S3cJU3RhdGVtZW50Ci0gIEhpTGluayBiaWJOU0VudHJ5S3cJUHJlUHJvYwotICBIaUxpbmsgYmliS2V5CQlTcGVjaWFsCi0gIEhpTGluayBiaWJWYXJpYWJsZQlDb25zdGFudAotICBIaUxpbmsgYmliVW5lc2NhcGVkU3BlY2lhbAlFcnJvcgotICBIaUxpbmsgYmliQ29tbWVudAlDb21tZW50Ci0gIEhpTGluayBiaWJDb21tZW50MglDb21tZW50Ci0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CisKK0hpTGluayBiaWJUeXBlCUlkZW50aWZpZXIKK0hpTGluayBiaWJFbnRyeUt3CVN0YXRlbWVudAorSGlMaW5rIGJpYk5TRW50cnlLdwlQcmVQcm9jCitIaUxpbmsgYmliS2V5CQlTcGVjaWFsCitIaUxpbmsgYmliVmFyaWFibGUJQ29uc3RhbnQKK0hpTGluayBiaWJVbmVzY2FwZWRTcGVjaWFsCUVycm9yCitIaUxpbmsgYmliQ29tbWVudAlDb21tZW50CitIaUxpbmsgYmliQ29tbWVudDIJQ29tbWVudAorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiYmliIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9iaW5kem9uZS52aW0gYi9ydW50aW1lL3N5bnRheC9iaW5kem9uZS52aW0KaW5kZXggZDU5OWE4NS4uZjIzNzI1NSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYmluZHpvbmUudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2JpbmR6b25lLnZpbQpAQCAtOSwxMSArOSw4IEBACiAiIAogIiAkSWQ6IGJpbmR6b25lLnZpbSAxMiAyMDExLTA3LTE2IDIxOjA5OjU3WiBqdWxpYW4gJAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNzAsNDAgKzY3LDMyIEBACiBzeW4gbWF0Y2ggICAgICAgem9uZUNvbW1lbnQgICAgIC87LiovCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2JpbmRfem9uZV9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9iaW5kX3pvbmVfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayB6b25lRGlyZWN0aXZlICAgIE1hY3JvCi0gIAotICBIaUxpbmsgem9uZVVua25vd24gICAgICBFcnJvcgotICAKLSAgSGlMaW5rIHpvbmVPcmlnaW4gICAgICAgU3RhdGVtZW50Ci0gIEhpTGluayB6b25lT3duZXJOYW1lICAgIFN0YXRlbWVudAotICBIaUxpbmsgem9uZURvbWFpbiAgICAgICBJZGVudGlmaWVyCi0gIAotICBIaUxpbmsgem9uZVNwZWNpYWwgICAgICBTcGVjaWFsCi0gIEhpTGluayB6b25lVFRMICAgICAgICAgIENvbnN0YW50Ci0gIEhpTGluayB6b25lQ2xhc3MgICAgICAgIEluY2x1ZGUKLSAgSGlMaW5rIHpvbmVSUlR5cGUgICAgICAgVHlwZQotICAKLSAgSGlMaW5rIHpvbmVJUEFkZHIgICAgICAgTnVtYmVyCi0gIEhpTGluayB6b25lSVA2QWRkciAgICAgIE51bWJlcgotICBIaUxpbmsgem9uZVRleHQgICAgICAgICBTdHJpbmcKLSAgSGlMaW5rIHpvbmVOdW1iZXIgICAgICAgTnVtYmVyCi0gIEhpTGluayB6b25lU2VyaWFsICAgICAgIFNwZWNpYWwKLSAgCi0gIEhpTGluayB6b25lRXJyUGFyZW4gICAgIEVycm9yCi0gIEhpTGluayB6b25lQ29tbWVudCAgICAgIENvbW1lbnQKK0hpTGluayB6b25lRGlyZWN0aXZlICAgIE1hY3JvCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitIaUxpbmsgem9uZVVua25vd24gICAgICBFcnJvcgorCitIaUxpbmsgem9uZU9yaWdpbiAgICAgICBTdGF0ZW1lbnQKK0hpTGluayB6b25lT3duZXJOYW1lICAgIFN0YXRlbWVudAorSGlMaW5rIHpvbmVEb21haW4gICAgICAgSWRlbnRpZmllcgorCitIaUxpbmsgem9uZVNwZWNpYWwgICAgICBTcGVjaWFsCitIaUxpbmsgem9uZVRUTCAgICAgICAgICBDb25zdGFudAorSGlMaW5rIHpvbmVDbGFzcyAgICAgICAgSW5jbHVkZQorSGlMaW5rIHpvbmVSUlR5cGUgICAgICAgVHlwZQorCitIaUxpbmsgem9uZUlQQWRkciAgICAgICBOdW1iZXIKK0hpTGluayB6b25lSVA2QWRkciAgICAgIE51bWJlcgorSGlMaW5rIHpvbmVUZXh0ICAgICAgICAgU3RyaW5nCitIaUxpbmsgem9uZU51bWJlciAgICAgICBOdW1iZXIKK0hpTGluayB6b25lU2VyaWFsICAgICAgIFNwZWNpYWwKKworSGlMaW5rIHpvbmVFcnJQYXJlbiAgICAgRXJyb3IKK0hpTGluayB6b25lQ29tbWVudCAgICAgIENvbW1lbnQKKworZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiYmluZHpvbmUiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2JsYW5rLnZpbSBiL3J1bnRpbWUvc3ludGF4L2JsYW5rLnZpbQppbmRleCA2MDI1MWM5Li41M2VmNTU2IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9ibGFuay52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYmxhbmsudmltCkBAIC0zLDExICszLDggQEAKICIgTWFpbnRhaW5lcjogICBSYWZhbCBNLiBTdWxlam1hbiA8dW5lZnVuZ2VAZnJpa28yLm9uZXQucGw+CiAiIExhc3QgY2hhbmdlOiAgMjAxMSBEZWMgMjggYnkgVGhpbG8gU2l4CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0yOCwyMiArMjUsMTQgQEAKIHN5biBjYXNlIG1hdGNoCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2JsYW5rX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2JsYW5rX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgYmxhbmtJbnN0cnVjdGlvbiAgICAgIFN0YXRlbWVudAotICBIaUxpbmsgYmxhbmtOdW1iZXIJICAgICAgIE51bWJlcgotICBIaUxpbmsgYmxhbmtTdHJpbmcJICAgICAgIFN0cmluZworSGlMaW5rIGJsYW5rSW5zdHJ1Y3Rpb24gICAgICBTdGF0ZW1lbnQKK0hpTGluayBibGFua051bWJlcgkgICAgICAgTnVtYmVyCitIaUxpbmsgYmxhbmtTdHJpbmcJICAgICAgIFN0cmluZwogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiYmxhbmsiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2JzdC52aW0gYi9ydW50aW1lL3N5bnRheC9ic3QudmltCmluZGV4IGU3ODM2ZDcuLjk5NWYxZGEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2JzdC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYnN0LnZpbQpAQCAtNCwyMSArNCwxMiBAQAogIiBGaWxlbmFtZXM6ICAgICouYnN0CiAiICRJZDogYnN0LnZpbSx2IDEuMiAyMDA3LzA1LzA1IDE4OjI0OjQyIHZpbWJvc3MgRXhwICQKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICAgZmluaXNoCiBlbmRpZgogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICAgY29tbWFuZCAtbmFyZ3M9MSBTZXRJc2sgc2V0IGlza2V5d29yZD08YXJncz4KLWVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0xIFNldElzayBzZXRsb2NhbCBpc2tleXdvcmQ9PGFyZ3M+Ci1lbmRpZgotU2V0SXNrIDQ4LTU3LCMsJCwnLC4sQS1aLGEtegotZGVsY29tbWFuZCBTZXRJc2sKK3NldGxvY2FsIGlza2V5d29yZD00OC01NywjLCQsJywuLEEtWixhLXoKIAogc3luIGNhc2UgaWdub3JlCiAKQEAgLTYyLDI3ICs1MywxOSBAQAogc3luIGtleXdvcmQgYnN0RmllbGQgICAgICAgICAgdm9sdW1lIHllYXIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfYnN0X3N5bl9pbml0cyIpCi0gICAgaWYgdmVyc2lvbiA8IDUwOAotICAgICAgICBsZXQgZGlkX2JzdF9zeW5faW5pdHMgPSAxCi0gICAgICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gICAgZWxzZQotICAgICAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgICBIaUxpbmsgYnN0Q29tbWVudCAgICAgICAgICAgQ29tbWVudAotICAgIEhpTGluayBic3RTdHJpbmcgICAgICAgICAgICBTdHJpbmcKLSAgICBIaUxpbmsgYnN0Q29tbWFuZCAgICAgICAgICAgUHJlUHJvYwotICAgIEhpTGluayBic3RCdWlsdEluICAgICAgICAgICBTdGF0ZW1lbnQKLSAgICBIaUxpbmsgYnN0RmllbGQgICAgICAgICAgICAgU3BlY2lhbAotICAgIEhpTGluayBic3ROdW1iZXIgICAgICAgICAgICBOdW1iZXIKLSAgICBIaUxpbmsgYnN0VHlwZSAgICAgICAgICAgICAgVHlwZQotICAgIEhpTGluayBic3RJZGVudGlmaWVyICAgICAgICBJZGVudGlmaWVyCi0gICAgSGlMaW5rIGJzdEVycm9yICAgICAgICAgICAgIEVycm9yCi0gICAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitIaUxpbmsgYnN0Q29tbWVudCAgICAgICAgICAgQ29tbWVudAorSGlMaW5rIGJzdFN0cmluZyAgICAgICAgICAgIFN0cmluZworSGlMaW5rIGJzdENvbW1hbmQgICAgICAgICAgIFByZVByb2MKK0hpTGluayBic3RCdWlsdEluICAgICAgICAgICBTdGF0ZW1lbnQKK0hpTGluayBic3RGaWVsZCAgICAgICAgICAgICBTcGVjaWFsCitIaUxpbmsgYnN0TnVtYmVyICAgICAgICAgICAgTnVtYmVyCitIaUxpbmsgYnN0VHlwZSAgICAgICAgICAgICAgVHlwZQorSGlMaW5rIGJzdElkZW50aWZpZXIgICAgICAgIElkZW50aWZpZXIKK0hpTGluayBic3RFcnJvciAgICAgICAgICAgICBFcnJvcgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiYnN0IgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9idG0udmltIGIvcnVudGltZS9zeW50YXgvYnRtLnZpbQppbmRleCA0ZmQ1YjJkLi4xMzNhNTFiIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9idG0udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2J0bS52aW0KQEAgLTExLDExICsxMSw4IEBACiAiLy8tIEFmdGVyIHVuYXJ5IG9wZXJhdG9ycyBsaWtlICJkZWZpbmVkIiBjYW4gYXNzdW1lIHRva2VuIHR5cGUuCiAiLy8gIFNob3VsZCB0aGVyZSBiZSBtb3JlIG9mIHRoZXNlPwogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTg0LDQ1ICsxODEsMzcgQEAKIHN5biBrZXl3b3JkIGJ0bUNvbW1hbmQJdnNjcnB1dCB5CiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2J0bV9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9idG1fc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBidG1MYWJlbAkJU3BlY2lhbAotICBIaUxpbmsgYnRtTGFiZWxNYXJrCQlTcGVjaWFsCi0gIEhpTGluayBidG1DbWREaXZpZGVyCQlTcGVjaWFsCi0gIEhpTGluayBidG1Db25kaXRpb25hbAkJYnRtU3RhdGVtZW50Ci0gIEhpTGluayBidG1Eb3RCb29sT3AJCWJ0bVN0YXRlbWVudAotICBIaUxpbmsgYnRtUmVwZWF0CQlidG1TdGF0ZW1lbnQKLSAgSGlMaW5rIGJ0bUVjaG9Db21tYW5kCWJ0bVN0YXRlbWVudAotICBIaUxpbmsgYnRtRWNob1BhcmFtCQlidG1TdGF0ZW1lbnQKLSAgSGlMaW5rIGJ0bVN0YXRlbWVudAkJU3RhdGVtZW50Ci0gIEhpTGluayBidG1Ub2RvCQlUb2RvCi0gIEhpTGluayBidG1TdHJpbmcJCVN0cmluZwotICBIaUxpbmsgYnRtTnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIGJ0bUNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGJ0bUFyZ3VtZW50CQlJZGVudGlmaWVyCi0gIEhpTGluayBidG1WYXJpYWJsZQkJSWRlbnRpZmllcgotICBIaUxpbmsgYnRtRWNobwkJU3RyaW5nCi0gIEhpTGluayBidG1CSUZNYXRjaAkJYnRtU3RhdGVtZW50Ci0gIEhpTGluayBidG1CdWlsdEluRnVuYwkJYnRtU3RhdGVtZW50Ci0gIEhpTGluayBidG1CdWlsdEluVmFyCQlidG1TdGF0ZW1lbnQKLSAgSGlMaW5rIGJ0bVNwZWNpYWxWYXIJCWJ0bVN0YXRlbWVudAotICBIaUxpbmsgYnRtQ29tbWFuZAkJYnRtU3RhdGVtZW50CitIaUxpbmsgYnRtTGFiZWwJCVNwZWNpYWwKK0hpTGluayBidG1MYWJlbE1hcmsJCVNwZWNpYWwKK0hpTGluayBidG1DbWREaXZpZGVyCQlTcGVjaWFsCitIaUxpbmsgYnRtQ29uZGl0aW9uYWwJCWJ0bVN0YXRlbWVudAorSGlMaW5rIGJ0bURvdEJvb2xPcAkJYnRtU3RhdGVtZW50CitIaUxpbmsgYnRtUmVwZWF0CQlidG1TdGF0ZW1lbnQKK0hpTGluayBidG1FY2hvQ29tbWFuZAlidG1TdGF0ZW1lbnQKK0hpTGluayBidG1FY2hvUGFyYW0JCWJ0bVN0YXRlbWVudAorSGlMaW5rIGJ0bVN0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsgYnRtVG9kbwkJVG9kbworSGlMaW5rIGJ0bVN0cmluZwkJU3RyaW5nCitIaUxpbmsgYnRtTnVtYmVyCQlOdW1iZXIKK0hpTGluayBidG1Db21tZW50CQlDb21tZW50CitIaUxpbmsgYnRtQXJndW1lbnQJCUlkZW50aWZpZXIKK0hpTGluayBidG1WYXJpYWJsZQkJSWRlbnRpZmllcgorSGlMaW5rIGJ0bUVjaG8JCVN0cmluZworSGlMaW5rIGJ0bUJJRk1hdGNoCQlidG1TdGF0ZW1lbnQKK0hpTGluayBidG1CdWlsdEluRnVuYwkJYnRtU3RhdGVtZW50CitIaUxpbmsgYnRtQnVpbHRJblZhcgkJYnRtU3RhdGVtZW50CitIaUxpbmsgYnRtU3BlY2lhbFZhcgkJYnRtU3RhdGVtZW50CitIaUxpbmsgYnRtQ29tbWFuZAkJYnRtU3RhdGVtZW50CiAKLSAgIm9wdGlvbmFsIGhpZ2hsaWdodGluZwotICAiSGlMaW5rIGJ0bVNob3dUYWIJCUVycm9yCi0gICJIaUxpbmsgYnRtU2hvd1RhYmMJCUVycm9yCi0gICJoaUxpbmsgYnRtSWRlbnRpZmllcgkJSWRlbnRpZmllcgorIm9wdGlvbmFsIGhpZ2hsaWdodGluZworIkhpTGluayBidG1TaG93VGFiCQlFcnJvcgorIkhpTGluayBidG1TaG93VGFiYwkJRXJyb3IKKyJoaUxpbmsgYnRtSWRlbnRpZmllcgkJSWRlbnRpZmllcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiYnRtIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9ienIudmltIGIvcnVudGltZS9zeW50YXgvYnpyLnZpbQppbmRleCBlZjU0NDViLi4xMTQ1MGJhIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9ienIudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2J6ci52aW0KQEAgLTExLDExICsxMSw4IEBACiAiICAgIEdpb2VsZSBCYXJhYnVjY2kKICIgICAgICAgZm9yIGlkZWEgb2YgZGlmZiBoaWdobGlnaHRpbmcKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMuCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkLgotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQuCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTQwLDI0ICszNywxNiBAQAogc3luIHN5bmMgbWF0Y2ggYnpyU3luYyAgZ3JvdXBoZXJlIGJ6clJlZ2lvbiAiXi1cezE0fSBUaGlzIGxpbmUgYW5kIHRoZSBmb2xsb3dpbmcgd2lsbCBiZSBpZ25vcmVkIC1cezE0fSQibWU9cy0xCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeS4KLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQuCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfYnpyX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPD0gNTA4Ci0gICAgbGV0IGRpZF9ienJfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQuCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgYnpyUmVtb3ZlZCAgICBDb25zdGFudAotICBIaUxpbmsgYnpyQWRkZWQgICAgICBJZGVudGlmaWVyCi0gIEhpTGluayBienJNb2RpZmllZCAgIFNwZWNpYWwKLSAgSGlMaW5rIGJ6clJlbmFtZWQgICAgU3BlY2lhbAotICBIaUxpbmsgYnpyVW5jaGFuZ2VkICBTcGVjaWFsCi0gIEhpTGluayBienJVbmtub3duICAgIFNwZWNpYWwKK0hpTGluayBienJSZW1vdmVkICAgIENvbnN0YW50CitIaUxpbmsgYnpyQWRkZWQgICAgICBJZGVudGlmaWVyCitIaUxpbmsgYnpyTW9kaWZpZWQgICBTcGVjaWFsCitIaUxpbmsgYnpyUmVuYW1lZCAgICBTcGVjaWFsCitIaUxpbmsgYnpyVW5jaGFuZ2VkICBTcGVjaWFsCitIaUxpbmsgYnpyVW5rbm93biAgICBTcGVjaWFsCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJienIiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9jYWJhbC52aW0gYi9ydW50aW1lL3N5bnRheC9jYWJhbC52aW0KaW5kZXggNDEzMGJhYy4uMGJhMjcwNCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvY2FiYWwudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2NhYmFsLnZpbQpAQCAtMTgsMTEgKzE4LDggQEAKICIgdjEuMDogQ2FiYWwgc3ludGF4IGluIHZpbWJhbGwgZm9ybWF0CiAiICAgICAgICh0aGFua3MgdG8gTWFnbnVzIFRoZXJuaW5nKQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTA1LDI3ICsxMDIsMTkgQEAKIHN5biBtYXRjaAljYWJhbFN0YXRlbWVudAkiXGN2ZXJzaW9uIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9jYWJhbF9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9jYWJhbF9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGNhYmFsVmVyc2lvbiAgICAgICBOdW1iZXIKLSAgSGlMaW5rIGNhYmFsVHJ1dGggICAgICAgICBCb29sZWFuCi0gIEhpTGluayBjYWJhbENvbW1lbnQgICAgICAgQ29tbWVudAotICBIaUxpbmsgY2FiYWxTdGF0ZW1lbnQgICAgIFN0YXRlbWVudAotICBIaUxpbmsgY2FiYWxDYXRlZ29yeSAgICAgIFR5cGUKLSAgSGlMaW5rIGNhYmFsRnVuY3Rpb24gICAgICBGdW5jdGlvbgotICBIaUxpbmsgY2FiYWxDb25kaXRpb25hbCAgIENvbmRpdGlvbmFsCi0gIEhpTGluayBjYWJhbE9wZXJhdG9yICAgICAgT3BlcmF0b3IKLSAgSGlMaW5rIGNhYmFsQ29tcGlsZXIgICAgICBDb25zdGFudAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK0hpTGluayBjYWJhbFZlcnNpb24gICAgICAgTnVtYmVyCitIaUxpbmsgY2FiYWxUcnV0aCAgICAgICAgIEJvb2xlYW4KK0hpTGluayBjYWJhbENvbW1lbnQgICAgICAgQ29tbWVudAorSGlMaW5rIGNhYmFsU3RhdGVtZW50ICAgICBTdGF0ZW1lbnQKK0hpTGluayBjYWJhbENhdGVnb3J5ICAgICAgVHlwZQorSGlMaW5rIGNhYmFsRnVuY3Rpb24gICAgICBGdW5jdGlvbgorSGlMaW5rIGNhYmFsQ29uZGl0aW9uYWwgICBDb25kaXRpb25hbAorSGlMaW5rIGNhYmFsT3BlcmF0b3IgICAgICBPcGVyYXRvcgorSGlMaW5rIGNhYmFsQ29tcGlsZXIgICAgICBDb25zdGFudAorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiY2FiYWwiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2NkbC52aW0gYi9ydW50aW1lL3N5bnRheC9jZGwudmltCmluZGV4IDY5ZjEyNGIuLjUwMWRjZmMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2NkbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvY2RsLnZpbQpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9jZmcudmltIGIvcnVudGltZS9zeW50YXgvY2ZnLnZpbQppbmRleCBiODJmYjI2Li5jNTdiNmY4IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9jZmcudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2NmZy52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglJZ29yIE4uIFByaXNjaGVwb2ZmIChpZ29yQHR5dW1iaXQucnUsIHByaV9pZ29yQG1haWwucnUpCiAiIExhc3QgY2hhbmdlOgkyMDEyIEF1ZyAxMQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICAgIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cyAoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cyAoImI6Y3VycmVudF9zeW50YXgiKQogICAgIGZpbmlzaAogZW5kaWYKIApAQCAtMzYsMjUgKzMzLDE4IEBACiBzeW4gbWF0Y2ggIENmZ0NvbW1lbnQJIlwvXC8uKiIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaHRsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2NmZ19zeW5faW5pdHMiKQotICAgIGlmIHZlcnNpb24gPCA1MDgKLQlsZXQgZGlkX2NmZ19zeW5faW5pdHMgPSAxCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgICBlbHNlCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gICAgZW5kaWYKLSAgICBIaUxpbmsgQ2ZnT25PZmYgICAgIExhYmVsCi0gICAgSGlMaW5rIENmZ0NvbW1lbnQJQ29tbWVudAotICAgIEhpTGluayBDZmdTZWN0aW9uCVR5cGUKLSAgICBIaUxpbmsgQ2ZnU3RyaW5nCVN0cmluZwotICAgIEhpTGluayBDZmdQYXJhbXMgICAgS2V5d29yZAotICAgIEhpTGluayBDZmdWYWx1ZXMgICAgQ29uc3RhbnQKLSAgICBIaUxpbmsgQ2ZnRGlyZWN0b3J5IERpcmVjdG9yeQotICAgIEhpTGluayBVbmNQYXRoICAgICAgRGlyZWN0b3J5CisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KK0hpTGluayBDZmdPbk9mZiAgICAgTGFiZWwKK0hpTGluayBDZmdDb21tZW50CUNvbW1lbnQKK0hpTGluayBDZmdTZWN0aW9uCVR5cGUKK0hpTGluayBDZmdTdHJpbmcJU3RyaW5nCitIaUxpbmsgQ2ZnUGFyYW1zICAgIEtleXdvcmQKK0hpTGluayBDZmdWYWx1ZXMgICAgQ29uc3RhbnQKK0hpTGluayBDZmdEaXJlY3RvcnkgRGlyZWN0b3J5CitIaUxpbmsgVW5jUGF0aCAgICAgIERpcmVjdG9yeQogCi0gICAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluaworCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJjZmciCiAiIHZpbTp0cz04CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9jaC52aW0gYi9ydW50aW1lL3N5bnRheC9jaC52aW0KaW5kZXggYWRkNzM5NS4uMDVhMWZjYiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvY2gudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2NoLnZpbQpAQCAtOCwyMSArOCwxNCBAQAogIiBDaCBpcyBhIEMvQysrIGludGVycHJldGVyIHdpdGggbWFueSBoaWdoIGxldmVsIGV4dGVuc2lvbnMKICIKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKICIgUmVhZCB0aGUgQyBzeW50YXggdG8gc3RhcnQgd2l0aAotaWYgdmVyc2lvbiA8IDYwMAotICBzbyA8c2ZpbGU+OnA6aC9jLnZpbQotZWxzZQotICBydW50aW1lISBzeW50YXgvYy52aW0KLSAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9jLnZpbQordW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiAiIENoIGV4dGVudGlvbnMKIApAQCAtMzMsMjAgKzI2LDE0IEBACiBzeW4ga2V5d29yZAljaFR5cGUJCXN0cmluZ190IGFycmF5CiAKICIgRGVmYXVsdCBoaWdobGlnaHRpbmcKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9jaF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9jaF9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgotICBIaUxpbmsgY2hBY2Nlc3MJCWNoU3RhdGVtZW50Ci0gIEhpTGluayBjaEV4Y2VwdGlvbnMJCUV4Y2VwdGlvbgotICBIaUxpbmsgY2hTdGF0ZW1lbnQJCVN0YXRlbWVudAotICBIaUxpbmsgY2hUeXBlCQkJVHlwZQotICBIaUxpbmsgY2hTdHJ1Y3R1cmUJCVN0cnVjdHVyZQotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgorCitIaUxpbmsgY2hBY2Nlc3MJCWNoU3RhdGVtZW50CitIaUxpbmsgY2hFeGNlcHRpb25zCQlFeGNlcHRpb24KK0hpTGluayBjaFN0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsgY2hUeXBlCQkJVHlwZQorSGlMaW5rIGNoU3RydWN0dXJlCQlTdHJ1Y3R1cmUKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImNoIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9jaGFuZ2UudmltIGIvcnVudGltZS9zeW50YXgvY2hhbmdlLnZpbQppbmRleCBlOWJmODhiLi5hZTkwZjM0IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9jaGFuZ2UudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2NoYW5nZS52aW0KQEAgLTcsMTEgKzcsOCBAQAogIiBpbiB0aGUgYXJ0aWNsZXMgYnkgRG9uYWxkIEUuIEtudXRoIGFuZCBTaWx2aW8gTGV2eSBjaXRlZCBpbiAid2ViLnZpbSIgYW5kCiAiICJjd2ViLnZpbSIgcmVzcGVjdGl2ZWx5LgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW4gY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMjEsMjEgKzE4LDEzIEBACiBzeW4gcmVnaW9uIGNoYW5nZVRvTWF0ZXJpYWwgc3RhcnQ9Il5AeS4qJCJtcz1lKzEgZW5kPSJeQHouKiQibWU9cy0xCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2NoYW5nZV9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9jaGFuZ2Vfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBjaGFuZ2VGcm9tTWF0ZXJpYWwgU3RyaW5nCi0gIEhpTGluayBjaGFuZ2VUb01hdGVyaWFsIFN0YXRlbWVudAorSGlMaW5rIGNoYW5nZUZyb21NYXRlcmlhbCBTdHJpbmcKK0hpTGluayBjaGFuZ2VUb01hdGVyaWFsIFN0YXRlbWVudAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiY2hhbmdlIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9jaGFuZ2Vsb2cudmltIGIvcnVudGltZS9zeW50YXgvY2hhbmdlbG9nLnZpbQppbmRleCAzM2QzMWJhLi5mYzU1ZmI1IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9jaGFuZ2Vsb2cudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2NoYW5nZWxvZy52aW0KQEAgLTQsMTEgKzQsOCBAQAogIiBNYWludGFpbmVyOglDb3Jpbm5hIFZpbnNjaGVuIDx2aW5zY2hlbkByZWRoYXQuY29tPgogIiBMYXN0IENoYW5nZToJSnVuZSAxLCAyMDAzCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0yOCwxNyArMjUsMTIgQEAKIAogc3luIG1hdGNoCWNoYW5nZWxvZ1RleHQJIl5ccy4qJCIgY29udGFpbnM9Y2hhbmdlbG9nTWFpbCxjaGFuZ2Vsb2dOdW1iZXIsY2hhbmdlbG9nTW9udGgsY2hhbmdlbG9nRGF5LGNoYW5nZWxvZ0Vycm9yCiBzeW4gbWF0Y2gJY2hhbmdlbG9nSGVhZGVyCSJeXFMuKiQiIGNvbnRhaW5zPWNoYW5nZWxvZ051bWJlcixjaGFuZ2Vsb2dNb250aCxjaGFuZ2Vsb2dEYXksY2hhbmdlbG9nTWFpbAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW4gcmVnaW9uCWNoYW5nZWxvZ0ZpbGVzCXN0YXJ0PSJeXHNcK1srKl1ccyIgZW5kPSI6XHMiIGVuZD0iXiQiIGNvbnRhaW5zPWNoYW5nZWxvZ0J1bGxldCxjaGFuZ2Vsb2dDb2xvbixjaGFuZ2Vsb2dFcnJvciBrZWVwZW5kCi0gIHN5biByZWdpb24JY2hhbmdlbG9nRmlsZXMJc3RhcnQ9Il5cc1wrWyhbXSIgZW5kPSI6XHMiIGVuZD0iXiQiIGNvbnRhaW5zPWNoYW5nZWxvZ0J1bGxldCxjaGFuZ2Vsb2dDb2xvbixjaGFuZ2Vsb2dFcnJvciBrZWVwZW5kCi0gIHN5biBtYXRjaAljaGFuZ2Vsb2dDb2xvbgljb250YWluZWQgIjpccyIKLWVsc2UKLSAgc3luIHJlZ2lvbgljaGFuZ2Vsb2dGaWxlcwlzdGFydD0iXlxzXCtbKypdXHMiIGVuZD0iOiIgZW5kPSJeJCIgY29udGFpbnM9Y2hhbmdlbG9nQnVsbGV0LGNoYW5nZWxvZ0NvbG9uLGNoYW5nZWxvZ0Z1bmNzLGNoYW5nZWxvZ0Vycm9yIGtlZXBlbmQKLSAgc3luIHJlZ2lvbgljaGFuZ2Vsb2dGaWxlcwlzdGFydD0iXlxzXCtbKFtdIiBlbmQ9IjoiIGVuZD0iXiQiIGNvbnRhaW5zPWNoYW5nZWxvZ0J1bGxldCxjaGFuZ2Vsb2dDb2xvbixjaGFuZ2Vsb2dGdW5jcyxjaGFuZ2Vsb2dFcnJvciBrZWVwZW5kCi0gIHN5biBtYXRjaAljaGFuZ2Vsb2dGdW5jcyAgY29udGFpbmVkICIoLlx7LX0pIiBleHRlbmQKLSAgc3luIG1hdGNoCWNoYW5nZWxvZ0Z1bmNzICBjb250YWluZWQgIlxbLlx7LX1dIiBleHRlbmQKLSAgc3luIG1hdGNoCWNoYW5nZWxvZ0NvbG9uCWNvbnRhaW5lZCAiOiIKLWVuZGlmCitzeW4gcmVnaW9uCWNoYW5nZWxvZ0ZpbGVzCXN0YXJ0PSJeXHNcK1srKl1ccyIgZW5kPSI6IiBlbmQ9Il4kIiBjb250YWlucz1jaGFuZ2Vsb2dCdWxsZXQsY2hhbmdlbG9nQ29sb24sY2hhbmdlbG9nRnVuY3MsY2hhbmdlbG9nRXJyb3Iga2VlcGVuZAorc3luIHJlZ2lvbgljaGFuZ2Vsb2dGaWxlcwlzdGFydD0iXlxzXCtbKFtdIiBlbmQ9IjoiIGVuZD0iXiQiIGNvbnRhaW5zPWNoYW5nZWxvZ0J1bGxldCxjaGFuZ2Vsb2dDb2xvbixjaGFuZ2Vsb2dGdW5jcyxjaGFuZ2Vsb2dFcnJvciBrZWVwZW5kCitzeW4gbWF0Y2gJY2hhbmdlbG9nRnVuY3MgIGNvbnRhaW5lZCAiKC5cey19KSIgZXh0ZW5kCitzeW4gbWF0Y2gJY2hhbmdlbG9nRnVuY3MgIGNvbnRhaW5lZCAiXFsuXHstfV0iIGV4dGVuZAorc3luIG1hdGNoCWNoYW5nZWxvZ0NvbG9uCWNvbnRhaW5lZCAiOiIKKwogc3luIG1hdGNoCWNoYW5nZWxvZ0J1bGxldAljb250YWluZWQgIl5cc1wrWysqXVxzIiBjb250YWlucz1jaGFuZ2Vsb2dFcnJvcgogc3luIG1hdGNoCWNoYW5nZWxvZ01haWwJY29udGFpbmVkICI8W0EtWmEtejAtOVwuXzorLV1cK0BbQS1aYS16MC05XC5fLV1cKz4iCiBzeW4ga2V5d29yZAljaGFuZ2Vsb2dNb250aAljb250YWluZWQgamFuIGZlYiBtYXIgYXByIG1heSBqdW4ganVsIGF1ZyBzZXAgb2N0IG5vdiBkZWMKQEAgLTQ2LDMyICszOCwyMiBAQAogc3luIG1hdGNoCWNoYW5nZWxvZ051bWJlcgljb250YWluZWQgIlsuLV0qWzAtOV1cKyIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfY2hhbmdlbG9nX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2NoYW5nZWxvZ19zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGNoYW5nZWxvZ1RleHQJCU5vcm1hbAotICBIaUxpbmsgY2hhbmdlbG9nQnVsbGV0CVR5cGUKLSAgSGlMaW5rIGNoYW5nZWxvZ0NvbG9uCQlUeXBlCi0gIEhpTGluayBjaGFuZ2Vsb2dGaWxlcwkJQ29tbWVudAotICBpZiB2ZXJzaW9uID49IDYwMAotICAgIEhpTGluayBjaGFuZ2Vsb2dGdW5jcwlDb21tZW50Ci0gIGVuZGlmCi0gIEhpTGluayBjaGFuZ2Vsb2dIZWFkZXIJU3RhdGVtZW50Ci0gIEhpTGluayBjaGFuZ2Vsb2dNYWlsCQlTcGVjaWFsCi0gIEhpTGluayBjaGFuZ2Vsb2dOdW1iZXIJTnVtYmVyCi0gIEhpTGluayBjaGFuZ2Vsb2dNb250aAkJTnVtYmVyCi0gIEhpTGluayBjaGFuZ2Vsb2dEYXkJCU51bWJlcgotICBIaUxpbmsgY2hhbmdlbG9nRXJyb3IJCUZvbGRlZAorSGlMaW5rIGNoYW5nZWxvZ1RleHQJCU5vcm1hbAorSGlMaW5rIGNoYW5nZWxvZ0J1bGxldAlUeXBlCitIaUxpbmsgY2hhbmdlbG9nQ29sb24JCVR5cGUKK0hpTGluayBjaGFuZ2Vsb2dGaWxlcwkJQ29tbWVudAorSGlMaW5rIGNoYW5nZWxvZ0Z1bmNzCUNvbW1lbnQKK0hpTGluayBjaGFuZ2Vsb2dIZWFkZXIJU3RhdGVtZW50CitIaUxpbmsgY2hhbmdlbG9nTWFpbAkJU3BlY2lhbAorSGlMaW5rIGNoYW5nZWxvZ051bWJlcglOdW1iZXIKK0hpTGluayBjaGFuZ2Vsb2dNb250aAkJTnVtYmVyCitIaUxpbmsgY2hhbmdlbG9nRGF5CQlOdW1iZXIKK0hpTGluayBjaGFuZ2Vsb2dFcnJvcgkJRm9sZGVkCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJjaGFuZ2Vsb2ciCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2NoYXNrZWxsLnZpbSBiL3J1bnRpbWUvc3ludGF4L2NoYXNrZWxsLnZpbQppbmRleCAzZjc2NGQwLi40YjFlOGM1IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9jaGFza2VsbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvY2hhc2tlbGwudmltCkBAIC05LDEwICs5LDYgQEAKIGxldCBiOmhzX2Nocz0xCiAKICIgSW5jbHVkZSBzdGFuZGFyZCBIYXNrZWxsIGhpZ2hsaWdodGluZwotaWYgdmVyc2lvbiA8IDYwMAotICBzb3VyY2UgPHNmaWxlPjpwOmgvaGFza2VsbC52aW0KLWVsc2UKLSAgcnVudGltZSEgc3ludGF4L2hhc2tlbGwudmltCi1lbmRpZgorcnVudGltZSEgc3ludGF4L2hhc2tlbGwudmltCiAKICIgdmltOiB0cz04CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9jaGVldGFoLnZpbSBiL3J1bnRpbWUvc3ludGF4L2NoZWV0YWgudmltCmluZGV4IDdlYjE3NTYuLmMxODYwZGUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2NoZWV0YWgudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2NoZWV0YWgudmltCkBAIC04LDExICs4LDggQEAKICIgIFBTUC1zdHlsZSB0YWdzOiA8JSAuLiAlPiAob2Jzb2xldGVkIGZlYXR1cmUpCiAiICBkb2Mtc3RyaW5ncyBhbmQgaGVhZGVyIGNvbW1lbnRzIChyYXJlbHkgdXNlZCBmZWF0dXJlKQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotCXN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKIAlmaW5pc2gKIGVuZGlmCiAKQEAgLTM2LDI1ICszMywxNyBAQAogc3luIHJlZ2lvbiAgY2hlZXRhaE11bHRpTGluZUNvbW1lbnQgc3RhcnQ9IiNcKiIgZW5kPSJcKiMiCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2NoZWV0YWhfc3luX2luaXRzIikKLQlpZiB2ZXJzaW9uIDwgNTA4Ci0JCWxldCBkaWRfY2hlZXRhaF9zeW5faW5pdHMgPSAxCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0JZWxzZQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLQllbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLQlIaUxpbmsgY2hlZXRhaFBsYWNlSG9sZGVyIElkZW50aWZpZXIKLQlIaUxpbmsgY2hlZXRhaERpcmVjdGl2ZSBQcmVDb25kaXQKLQlIaUxpbmsgY2hlZXRhaEtleXdvcmQgRGVmaW5lCi0JSGlMaW5rIGNoZWV0YWhDb250aW51YXRpb24gU3BlY2lhbAotCUhpTGluayBjaGVldGFoQ29tbWVudCBDb21tZW50Ci0JSGlMaW5rIGNoZWV0YWhNdWx0aUxpbmVDb21tZW50IENvbW1lbnQKK0hpTGluayBjaGVldGFoUGxhY2VIb2xkZXIgSWRlbnRpZmllcgorSGlMaW5rIGNoZWV0YWhEaXJlY3RpdmUgUHJlQ29uZGl0CitIaUxpbmsgY2hlZXRhaEtleXdvcmQgRGVmaW5lCitIaUxpbmsgY2hlZXRhaENvbnRpbnVhdGlvbiBTcGVjaWFsCitIaUxpbmsgY2hlZXRhaENvbW1lbnQgQ29tbWVudAorSGlMaW5rIGNoZWV0YWhNdWx0aUxpbmVDb21tZW50IENvbW1lbnQKIAotCWRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiY2hlZXRhaCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvY2hpbGwudmltIGIvcnVudGltZS9zeW50YXgvY2hpbGwudmltCmluZGV4IGNhMDBjZDkuLmQ4ZWU5ZGIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2NoaWxsLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9jaGlsbC52aW0KQEAgLTExLDExICsxMSw4IEBACiAiICYgQ29tbXVuaWNhdGlvbnMgTFRkLikKIAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTI0LDY3ICsxMjEsNTkgQEAKIGV4ZWMgInN5biBzeW5jIGNjb21tZW50IGNoaWxsQ29tbWVudCBtaW5saW5lcz0iIC4gY2hpbGxfbWlubGluZXMKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfY2hfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfY2hfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBjaGlsbExhYmVsCUxhYmVsCi0gIEhpTGluayBjaGlsbFVzZXJMYWJlbAlMYWJlbAotICBIaUxpbmsgY2hpbGxDb25kaXRpb25hbAlDb25kaXRpb25hbAotICAiIGhpIGNoaWxsQ29uZGl0aW9uYWwJdGVybT1ib2xkIGN0ZXJtZmc9cmVkIGd1aWZnPXJlZCBndWk9Ym9sZAorSGlMaW5rIGNoaWxsTGFiZWwJTGFiZWwKK0hpTGluayBjaGlsbFVzZXJMYWJlbAlMYWJlbAorSGlMaW5rIGNoaWxsQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKKyIgaGkgY2hpbGxDb25kaXRpb25hbAl0ZXJtPWJvbGQgY3Rlcm1mZz1yZWQgZ3VpZmc9cmVkIGd1aT1ib2xkCiAKLSAgSGlMaW5rIGNoaWxsUmVwZWF0CVJlcGVhdAotICBIaUxpbmsgY2hpbGxQcm9jZXNzCVJlcGVhdAotICBIaUxpbmsgY2hpbGxTaWduYWwJUmVwZWF0Ci0gIEhpTGluayBjaGlsbENoYXJhY3RlcglDaGFyYWN0ZXIKLSAgSGlMaW5rIGNoaWxsU3BlY2lhbENoYXJhY3RlciBjaGlsbFNwZWNpYWwKLSAgSGlMaW5rIGNoaWxsTnVtYmVyCU51bWJlcgotICBIaUxpbmsgY2hpbGxGbG9hdAlGbG9hdAotICBIaUxpbmsgY2hpbGxPY3RhbEVycm9yCWNoaWxsRXJyb3IKLSAgSGlMaW5rIGNoaWxsUGFyZW5FcnJvcgljaGlsbEVycm9yCi0gIEhpTGluayBjaGlsbEluUGFyZW4JY2hpbGxFcnJvcgotICBIaUxpbmsgY2hpbGxDb21tZW50RXJyb3IJY2hpbGxFcnJvcgotICBIaUxpbmsgY2hpbGxTcGFjZUVycm9yCWNoaWxsRXJyb3IKLSAgSGlMaW5rIGNoaWxsT3BlcmF0b3IJT3BlcmF0b3IKLSAgSGlMaW5rIGNoaWxsU3RydWN0dXJlCVN0cnVjdHVyZQotICBIaUxpbmsgY2hpbGxCbG9jawlPcGVyYXRvcgotICBIaUxpbmsgY2hpbGxTY29wZQlPcGVyYXRvcgotICAiaGkgY2hpbGxFRE1MICAgICB0ZXJtPXVuZGVybGluZSBjdGVybWZnPURhcmtSZWQgZ3VpZmc9UmVkCi0gIEhpTGluayBjaGlsbEVETUwJUHJlUHJvYwotICAiaGkgY2hpbGxCb29sQ29uc3QJdGVybT1ib2xkIGN0ZXJtZmc9YnJvd24gZ3VpZmc9YnJvd24KLSAgSGlMaW5rIGNoaWxsQm9vbENvbnN0CUNvbnN0YW50Ci0gICJoaSBjaGlsbExvZ2ljYWwJdGVybT1ib2xkIGN0ZXJtZmc9YnJvd24gZ3VpZmc9YnJvd24KLSAgSGlMaW5rIGNoaWxsTG9naWNhbAlDb25zdGFudAotICBIaUxpbmsgY2hpbGxTdG9yYWdlQ2xhc3MJU3RvcmFnZUNsYXNzCi0gIEhpTGluayBjaGlsbEluY2x1ZGUJSW5jbHVkZQotICBIaUxpbmsgY2hpbGxQcmVQcm9jCVByZVByb2MKLSAgSGlMaW5rIGNoaWxsRGVmaW5lCU1hY3JvCi0gIEhpTGluayBjaGlsbEluY2x1ZGVkCWNoaWxsU3RyaW5nCi0gIEhpTGluayBjaGlsbEVycm9yCUVycm9yCi0gIEhpTGluayBjaGlsbFN0YXRlbWVudAlTdGF0ZW1lbnQKLSAgSGlMaW5rIGNoaWxsUHJlQ29uZGl0CVByZUNvbmRpdAotICBIaUxpbmsgY2hpbGxUeXBlCVR5cGUKLSAgSGlMaW5rIGNoaWxsQ29tbWVudEVycm9yCWNoaWxsRXJyb3IKLSAgSGlMaW5rIGNoaWxsQ29tbWVudFN0cmluZyBjaGlsbFN0cmluZwotICBIaUxpbmsgY2hpbGxDb21tZW50MlN0cmluZyBjaGlsbFN0cmluZwotICBIaUxpbmsgY2hpbGxDb21tZW50U2tpcAljaGlsbENvbW1lbnQKLSAgSGlMaW5rIGNoaWxsU3RyaW5nCVN0cmluZwotICBIaUxpbmsgY2hpbGxDb21tZW50CUNvbW1lbnQKLSAgIiBoaSBjaGlsbENvbW1lbnQJdGVybT1Ob25lIGN0ZXJtZmc9bGlnaHRibHVlIGd1aWZnPWxpZ2h0Ymx1ZQotICBIaUxpbmsgY2hpbGxTcGVjaWFsCVNwZWNpYWxDaGFyCi0gIEhpTGluayBjaGlsbFRvZG8JVG9kbwotICBIaUxpbmsgY2hpbGxCbG9jawlTdGF0ZW1lbnQKLSAgIkhpTGluayBjaGlsbElkZW50aWZpZXIJSWRlbnRpZmllcgotICBIaUxpbmsgY2hpbGxCcmFja2V0CURlbGltaXRlcgorSGlMaW5rIGNoaWxsUmVwZWF0CVJlcGVhdAorSGlMaW5rIGNoaWxsUHJvY2VzcwlSZXBlYXQKK0hpTGluayBjaGlsbFNpZ25hbAlSZXBlYXQKK0hpTGluayBjaGlsbENoYXJhY3RlcglDaGFyYWN0ZXIKK0hpTGluayBjaGlsbFNwZWNpYWxDaGFyYWN0ZXIgY2hpbGxTcGVjaWFsCitIaUxpbmsgY2hpbGxOdW1iZXIJTnVtYmVyCitIaUxpbmsgY2hpbGxGbG9hdAlGbG9hdAorSGlMaW5rIGNoaWxsT2N0YWxFcnJvcgljaGlsbEVycm9yCitIaUxpbmsgY2hpbGxQYXJlbkVycm9yCWNoaWxsRXJyb3IKK0hpTGluayBjaGlsbEluUGFyZW4JY2hpbGxFcnJvcgorSGlMaW5rIGNoaWxsQ29tbWVudEVycm9yCWNoaWxsRXJyb3IKK0hpTGluayBjaGlsbFNwYWNlRXJyb3IJY2hpbGxFcnJvcgorSGlMaW5rIGNoaWxsT3BlcmF0b3IJT3BlcmF0b3IKK0hpTGluayBjaGlsbFN0cnVjdHVyZQlTdHJ1Y3R1cmUKK0hpTGluayBjaGlsbEJsb2NrCU9wZXJhdG9yCitIaUxpbmsgY2hpbGxTY29wZQlPcGVyYXRvcgorImhpIGNoaWxsRURNTCAgICAgdGVybT11bmRlcmxpbmUgY3Rlcm1mZz1EYXJrUmVkIGd1aWZnPVJlZAorSGlMaW5rIGNoaWxsRURNTAlQcmVQcm9jCisiaGkgY2hpbGxCb29sQ29uc3QJdGVybT1ib2xkIGN0ZXJtZmc9YnJvd24gZ3VpZmc9YnJvd24KK0hpTGluayBjaGlsbEJvb2xDb25zdAlDb25zdGFudAorImhpIGNoaWxsTG9naWNhbAl0ZXJtPWJvbGQgY3Rlcm1mZz1icm93biBndWlmZz1icm93bgorSGlMaW5rIGNoaWxsTG9naWNhbAlDb25zdGFudAorSGlMaW5rIGNoaWxsU3RvcmFnZUNsYXNzCVN0b3JhZ2VDbGFzcworSGlMaW5rIGNoaWxsSW5jbHVkZQlJbmNsdWRlCitIaUxpbmsgY2hpbGxQcmVQcm9jCVByZVByb2MKK0hpTGluayBjaGlsbERlZmluZQlNYWNybworSGlMaW5rIGNoaWxsSW5jbHVkZWQJY2hpbGxTdHJpbmcKK0hpTGluayBjaGlsbEVycm9yCUVycm9yCitIaUxpbmsgY2hpbGxTdGF0ZW1lbnQJU3RhdGVtZW50CitIaUxpbmsgY2hpbGxQcmVDb25kaXQJUHJlQ29uZGl0CitIaUxpbmsgY2hpbGxUeXBlCVR5cGUKK0hpTGluayBjaGlsbENvbW1lbnRFcnJvcgljaGlsbEVycm9yCitIaUxpbmsgY2hpbGxDb21tZW50U3RyaW5nIGNoaWxsU3RyaW5nCitIaUxpbmsgY2hpbGxDb21tZW50MlN0cmluZyBjaGlsbFN0cmluZworSGlMaW5rIGNoaWxsQ29tbWVudFNraXAJY2hpbGxDb21tZW50CitIaUxpbmsgY2hpbGxTdHJpbmcJU3RyaW5nCitIaUxpbmsgY2hpbGxDb21tZW50CUNvbW1lbnQKKyIgaGkgY2hpbGxDb21tZW50CXRlcm09Tm9uZSBjdGVybWZnPWxpZ2h0Ymx1ZSBndWlmZz1saWdodGJsdWUKK0hpTGluayBjaGlsbFNwZWNpYWwJU3BlY2lhbENoYXIKK0hpTGluayBjaGlsbFRvZG8JVG9kbworSGlMaW5rIGNoaWxsQmxvY2sJU3RhdGVtZW50CisiSGlMaW5rIGNoaWxsSWRlbnRpZmllcglJZGVudGlmaWVyCitIaUxpbmsgY2hpbGxCcmFja2V0CURlbGltaXRlcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiY2hpbGwiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2NsLnZpbSBiL3J1bnRpbWUvc3ludGF4L2NsLnZpbQppbmRleCA0MWMwNDVmLi4wNTdkMDA1IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9jbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvY2wudmltCkBAIC0xMCwxOSArMTAsMTIgQEAKICIgVmVyc2lvbjogICAgICAgICAgICAgIDYKICIgTGFzdCBDaGFuZ2U6CQlNYXIgMDYgMjAxMwogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotCXN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKIAlmaW5pc2gKIGVuZGlmCiAKLWlmIHZlcnNpb24gPj0gNjAwCi0Jc2V0bG9jYWwgaXNrZXl3b3JkPUAsNDgtNTcsXywtCi1lbHNlCi0Jc2V0IGlza2V5d29yZD1ALDQ4LTU3LF8sLQotZW5kaWYKK3NldGxvY2FsIGlza2V5d29yZD1ALDQ4LTU3LF8sLQogCiBzeW4gY2FzZSBpZ25vcmUKIApAQCAtNzUsNDAgKzY4LDMyIEBACiBzeW4ga2V5d29yZAljbFN0YXRlbWVudAljbGVhciBjbGVhcl9lb2wgY2xlYXJfZW9zIGNsb3NlIGNvcHkgY3JlYXRlIHVuaXF1ZSB3aXRoIHdoZXJlIGVtcHR5IGRlZmluZSBkZWZpbmUgbGRlZmluZSBkZWxheV9mb3JtIGRlbGV0ZSBlc2NhcGUgZXhpdF9ibG9jayBleGl0X2RvIGV4aXRfcHJvY2VzcyBmaWVsZCBmb3JrIGZvcm1hdCBnZXQgZ2V0ZmlsZSBnZXRuZXh0IGdldHByZXYgZ290byBoZWFkIGpvaW4gbWFpbnRhaW4gbWVzc2FnZSBub19qb2luIG9uX2VvcCBvbl9rZXkgb25fZXhpdCBvbl9kZWxldGUgb3BlbmluIG9wZW5vdXQgb3BlbmFwcCBwYXVzZSBwb3BlbmluIHBvcGVub3V0IHBvcGVuaW8gcHJpbnQgcHV0IHJhbmdlIHJlYWQgcmVkaXNwbGF5IHJlZnJlc2ggcmVzdGFydF9ibG9jayBzY3JlZW4gc2VsZWN0IHNsZWVwIHRleHQgdW5sb2NrIHdyaXRlIGFuZCBub3Qgb3IgZG8KIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZgl2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfY2xfc3ludGF4X2luaXRzIikKLQlpZgl2ZXJzaW9uIDwgNTA4Ci0JCWxldCBkaWRfY2xfc3ludGF4X2luaXRzID0gMQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotCWVsc2UKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0JZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0JSGlMaW5rIGNsaWZFcnJvcglFcnJvcgotCUhpTGluayBjbFNwYWNlRXJyb3IJRXJyb3IKLQlIaUxpbmsgY2xXaGlsZQkJUmVwZWF0Ci0JSGlMaW5rIGNsQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLQlIaUxpbmsgY2xEZWJ1ZwkJRGVidWcKLQlIaUxpbmsgY2xOZWVkc1dvcmsJVG9kbwotCUhpTGluayBjbFRvZG8JCVRvZG8KLQlIaUxpbmsgY2xDb21tZW50CUNvbW1lbnQKLQlIaUxpbmsgY2xQcm9jZWR1cmUJUHJvY2VkdXJlCi0JSGlMaW5rIGNsQnJlYWsJCVByb2NlZHVyZQotCUhpTGluayBjbEluY2x1ZGUJSW5jbHVkZQotCUhpTGluayBjbFNldE9wdGlvbglTdGF0ZW1lbnQKLQlIaUxpbmsgY2xTZXQJCUlkZW50aWZpZXIKLQlIaUxpbmsgY2xQcmVQcm9jCVByZVByb2MKLQlIaUxpbmsgY2xPcGVyYXRvcglPcGVyYXRvcgotCUhpTGluayBjbE51bWJlcgkJTnVtYmVyCi0JSGlMaW5rIGNsU3RyaW5nCQlTdHJpbmcKLQlIaUxpbmsgY2xRdW90ZQkJRGVsaW1pdGVyCi0JSGlMaW5rIGNsUmVzZXJ2ZWQJSWRlbnRpZmllcgotCUhpTGluayBjbEZ1bmN0aW9uCUZ1bmN0aW9uCi0JSGlMaW5rIGNsU3RhdGVtZW50CVN0YXRlbWVudAorSGlMaW5rIGNsaWZFcnJvcglFcnJvcgorSGlMaW5rIGNsU3BhY2VFcnJvcglFcnJvcgorSGlMaW5rIGNsV2hpbGUJCVJlcGVhdAorSGlMaW5rIGNsQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKK0hpTGluayBjbERlYnVnCQlEZWJ1ZworSGlMaW5rIGNsTmVlZHNXb3JrCVRvZG8KK0hpTGluayBjbFRvZG8JCVRvZG8KK0hpTGluayBjbENvbW1lbnQJQ29tbWVudAorSGlMaW5rIGNsUHJvY2VkdXJlCVByb2NlZHVyZQorSGlMaW5rIGNsQnJlYWsJCVByb2NlZHVyZQorSGlMaW5rIGNsSW5jbHVkZQlJbmNsdWRlCitIaUxpbmsgY2xTZXRPcHRpb24JU3RhdGVtZW50CitIaUxpbmsgY2xTZXQJCUlkZW50aWZpZXIKK0hpTGluayBjbFByZVByb2MJUHJlUHJvYworSGlMaW5rIGNsT3BlcmF0b3IJT3BlcmF0b3IKK0hpTGluayBjbE51bWJlcgkJTnVtYmVyCitIaUxpbmsgY2xTdHJpbmcJCVN0cmluZworSGlMaW5rIGNsUXVvdGUJCURlbGltaXRlcgorSGlMaW5rIGNsUmVzZXJ2ZWQJSWRlbnRpZmllcgorSGlMaW5rIGNsRnVuY3Rpb24JRnVuY3Rpb24KK0hpTGluayBjbFN0YXRlbWVudAlTdGF0ZW1lbnQKIAotCWRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiY2wiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2NsZWFuLnZpbSBiL3J1bnRpbWUvc3ludGF4L2NsZWFuLnZpbQppbmRleCBlYTk1YWEyLi4xM2RkZmFiIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9jbGVhbi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvY2xlYW4udmltCkBAIC00LDExICs0LDggQEAKICIgQ28tQXV0aG9yOglBcnRodXIgdmFuIExlZXV3ZW4gPGFydGh1cnZsQHNjaS5rdW4ubmw+CiAiIExhc3QgQ2hhbmdlOgkyMDEzIE9jdCAxNSBieSBKdXJyacOrbiBTdHV0dGVyaGVpbQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNTIsNDkgKzQ5LDQxIEBACiAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfY2xlYW5fc3ludGF4X2luaXQiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9jbGVhbl9zeW50YXhfaW5pdCA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAgIiBDb21tZW50cwotICAgSGlMaW5rIGNsZWFuQ29tbWVudCAgICAgIENvbW1lbnQKLSAgICIgQ29uc3RhbnRzIGFuZCBkZW5vdGF0aW9ucwotICAgSGlMaW5rIGNsZWFuU3RyaW5nRGVub3QgIFN0cmluZwotICAgSGlMaW5rIGNsZWFuQ2hhckRlbm90ICAgIENoYXJhY3RlcgotICAgSGlMaW5rIGNsZWFuSW50ZWdlckRlbm90IE51bWJlcgotICAgSGlMaW5rIGNsZWFuQm9vbERlbm90ICAgIEJvb2xlYW4KLSAgIEhpTGluayBjbGVhblJlYWxEZW5vdCAgICBGbG9hdAotICAgIiBJZGVudGlmaWVycwotICAgIiBTdGF0ZW1lbnRzCi0gICBIaUxpbmsgY2xlYW5UeXBlQ2xhc3MgICAgS2V5d29yZAotICAgSGlMaW5rIGNsZWFuQ29uZGl0aW9uYWwgIENvbmRpdGlvbmFsCi0gICBIaUxpbmsgY2xlYW5MYWJlbAkJTGFiZWwKLSAgIEhpTGluayBjbGVhbktleXdvcmQgICAgICBLZXl3b3JkCi0gICAiIEdlbmVyaWMgUHJlcHJvY2Vzc2luZwotICAgSGlMaW5rIGNsZWFuSW5jbHVkZUtleXdvcmQgICAgICBJbmNsdWRlCi0gICBIaUxpbmsgY2xlYW5Nb2R1bGVTeXN0ZW0gUHJlUHJvYwotICAgIiBUeXBlCi0gICBIaUxpbmsgY2xlYW5CYXNpY1R5cGUgICAgVHlwZQotICAgSGlMaW5rIGNsZWFuU3BlY2lhbFR5cGUgIFR5cGUKLSAgIEhpTGluayBjbGVhbkZ1bmNUeXBlRGVmICBUeXBlZGVmCi0gICAiIFNwZWNpYWwKLSAgIEhpTGluayBjbGVhblNwZWNpYWwgICAgICBTcGVjaWFsCi0gICBIaUxpbmsgY2xlYW5MaXN0CQkJU3BlY2lhbAotICAgSGlMaW5rIGNsZWFuQXJyYXkJCVNwZWNpYWwKLSAgIEhpTGluayBjbGVhblJlY29yZAkJU3BlY2lhbAotICAgSGlMaW5rIGNsZWFuVHVwbGUJCVNwZWNpYWwKLSAgICIgRXJyb3IKLSAgICIgVG9kbwotICAgSGlMaW5rIGNsZWFuVG9kbyAgICAgICAgIFRvZG8KKyAiIENvbW1lbnRzCisgSGlMaW5rIGNsZWFuQ29tbWVudCAgICAgIENvbW1lbnQKKyAiIENvbnN0YW50cyBhbmQgZGVub3RhdGlvbnMKKyBIaUxpbmsgY2xlYW5TdHJpbmdEZW5vdCAgU3RyaW5nCisgSGlMaW5rIGNsZWFuQ2hhckRlbm90ICAgIENoYXJhY3RlcgorIEhpTGluayBjbGVhbkludGVnZXJEZW5vdCBOdW1iZXIKKyBIaUxpbmsgY2xlYW5Cb29sRGVub3QgICAgQm9vbGVhbgorIEhpTGluayBjbGVhblJlYWxEZW5vdCAgICBGbG9hdAorICIgSWRlbnRpZmllcnMKKyAiIFN0YXRlbWVudHMKKyBIaUxpbmsgY2xlYW5UeXBlQ2xhc3MgICAgS2V5d29yZAorIEhpTGluayBjbGVhbkNvbmRpdGlvbmFsICBDb25kaXRpb25hbAorIEhpTGluayBjbGVhbkxhYmVsCQlMYWJlbAorIEhpTGluayBjbGVhbktleXdvcmQgICAgICBLZXl3b3JkCisgIiBHZW5lcmljIFByZXByb2Nlc3NpbmcKKyBIaUxpbmsgY2xlYW5JbmNsdWRlS2V5d29yZCAgICAgIEluY2x1ZGUKKyBIaUxpbmsgY2xlYW5Nb2R1bGVTeXN0ZW0gUHJlUHJvYworICIgVHlwZQorIEhpTGluayBjbGVhbkJhc2ljVHlwZSAgICBUeXBlCisgSGlMaW5rIGNsZWFuU3BlY2lhbFR5cGUgIFR5cGUKKyBIaUxpbmsgY2xlYW5GdW5jVHlwZURlZiAgVHlwZWRlZgorICIgU3BlY2lhbAorIEhpTGluayBjbGVhblNwZWNpYWwgICAgICBTcGVjaWFsCisgSGlMaW5rIGNsZWFuTGlzdAkJCVNwZWNpYWwKKyBIaUxpbmsgY2xlYW5BcnJheQkJU3BlY2lhbAorIEhpTGluayBjbGVhblJlY29yZAkJU3BlY2lhbAorIEhpTGluayBjbGVhblR1cGxlCQlTcGVjaWFsCisgIiBFcnJvcgorICIgVG9kbworIEhpTGluayBjbGVhblRvZG8gICAgICAgICBUb2RvCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJjbGVhbiIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvY2xpcHBlci52aW0gYi9ydW50aW1lL3N5bnRheC9jbGlwcGVyLnZpbQppbmRleCAxYTEwYTJkLi4zMGZkZDdiIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9jbGlwcGVyLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9jbGlwcGVyLnZpbQpAQCAtNCwxMSArNCw4IEBACiAiIFNvbWUgdGhpbmdzIGJhc2VkIG9uIGMudmltIGJ5IEJyYW0gTW9vbGVuYWFyIGFuZCBwYXNjYWwudmltIGJ5IE1hcmlvIEV1c2ViaW8KICIgTGFzdCBDaGFuZ2U6CTIwMTEgRGVjIDI5IGJ5IFRoaWxvIFNpeAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTE0LDMyICsxMTEsMjQgQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9jbGlwcGVyX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2NsaXBwZXJfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBjbGlwcGVyQ29uZGl0aW9uYWwJCUNvbmRpdGlvbmFsCi0gIEhpTGluayBjbGlwcGVyUmVwZWF0CQkJUmVwZWF0Ci0gIEhpTGluayBjbGlwcGVyTnVtYmVyCQkJTnVtYmVyCi0gIEhpTGluayBjbGlwcGVySW5jbHVkZQkJSW5jbHVkZQotICBIaUxpbmsgY2xpcHBlckNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGNsaXBwZXJPcGVyYXRvcgkJT3BlcmF0b3IKLSAgSGlMaW5rIGNsaXBwZXJTdG9yYWdlQ2xhc3MJCVN0b3JhZ2VDbGFzcwotICBIaUxpbmsgY2xpcHBlclN0YXRlbWVudAkJU3RhdGVtZW50Ci0gIEhpTGluayBjbGlwcGVyU3RyaW5nCQkJU3RyaW5nCi0gIEhpTGluayBjbGlwcGVyRnVuY3Rpb24JCUZ1bmN0aW9uCi0gIEhpTGluayBjbGlwcGVyTGluZUNvbnRpbnVhdGlvbglTcGVjaWFsCi0gIEhpTGluayBjbGlwcGVyRGVsaW1pdGVycwkJRGVsaW1pdGVyCi0gIEhpTGluayBjbGlwcGVyVXNlclZhcmlhYmxlCQlJZGVudGlmaWVyCitIaUxpbmsgY2xpcHBlckNvbmRpdGlvbmFsCQlDb25kaXRpb25hbAorSGlMaW5rIGNsaXBwZXJSZXBlYXQJCQlSZXBlYXQKK0hpTGluayBjbGlwcGVyTnVtYmVyCQkJTnVtYmVyCitIaUxpbmsgY2xpcHBlckluY2x1ZGUJCUluY2x1ZGUKK0hpTGluayBjbGlwcGVyQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIGNsaXBwZXJPcGVyYXRvcgkJT3BlcmF0b3IKK0hpTGluayBjbGlwcGVyU3RvcmFnZUNsYXNzCQlTdG9yYWdlQ2xhc3MKK0hpTGluayBjbGlwcGVyU3RhdGVtZW50CQlTdGF0ZW1lbnQKK0hpTGluayBjbGlwcGVyU3RyaW5nCQkJU3RyaW5nCitIaUxpbmsgY2xpcHBlckZ1bmN0aW9uCQlGdW5jdGlvbgorSGlMaW5rIGNsaXBwZXJMaW5lQ29udGludWF0aW9uCVNwZWNpYWwKK0hpTGluayBjbGlwcGVyRGVsaW1pdGVycwkJRGVsaW1pdGVyCitIaUxpbmsgY2xpcHBlclVzZXJWYXJpYWJsZQkJSWRlbnRpZmllcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiY2xpcHBlciIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvY21ha2UudmltIGIvcnVudGltZS9zeW50YXgvY21ha2UudmltCmluZGV4IDQ1ODY5NDAuLjhlNzNlMzIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2NtYWtlLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9jbWFrZS52aW0KQEAgLTEyLDExICsxMiw4IEBACiAiICAgICAgICAgICAgICAgaHR0cDovL3d3dy5jbWFrZS5vcmcvSFRNTC9Db3B5cmlnaHQuaHRtbAogIiAgICAgICAgICAgICAgIFRoaXMgaW1wbGllcyB0aGF0IGRpc3RyaWJ1dGlvbiB3aXRoIFZpbSBpcyBhbGxvd2VkCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogbGV0IHM6a2VlcGNwbz0gJmNwbwpAQCAtNTIsMzIgKzQ5LDI0IEBACiAgICAgICAgICAgICBcIGNvbnRhaW5lZAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9jbWFrZV9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9jbWFrZV9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGNtYWtlU3RhdGVtZW50IFN0YXRlbWVudAotICBIaUxpbmsgY21ha2VDb21tZW50IENvbW1lbnQKLSAgSGlMaW5rIGNtYWtlU3RyaW5nIFN0cmluZwotICBIaUxpbmsgY21ha2VWYXJpYWJsZVZhbHVlIFR5cGUKLSAgSGlMaW5rIGNtYWtlUmVnaXN0cnkgVW5kZXJsaW5lZAotICBIaUxpbmsgY21ha2VBcmd1bWVudHMgSWRlbnRpZmllcgotICBIaUxpbmsgY21ha2VBcmd1bWVudCBDb25zdGFudAotICBIaUxpbmsgY21ha2VFbnZpcm9ubWVudCBTcGVjaWFsCi0gIEhpTGluayBjbWFrZU9wZXJhdG9ycyBPcGVyYXRvcgotICBIaUxpbmsgY21ha2VNYWNybyBQcmVQcm9jCi0gIEhpTGluayBjbWFrZUVycm9yIEVycm9yCi0gIEhpTGluayBjbWFrZVRvZG8gVE9ETwotICBIaUxpbmsgY21ha2VFc2NhcGVkIFNwZWNpYWwKK0hpTGluayBjbWFrZVN0YXRlbWVudCBTdGF0ZW1lbnQKK0hpTGluayBjbWFrZUNvbW1lbnQgQ29tbWVudAorSGlMaW5rIGNtYWtlU3RyaW5nIFN0cmluZworSGlMaW5rIGNtYWtlVmFyaWFibGVWYWx1ZSBUeXBlCitIaUxpbmsgY21ha2VSZWdpc3RyeSBVbmRlcmxpbmVkCitIaUxpbmsgY21ha2VBcmd1bWVudHMgSWRlbnRpZmllcgorSGlMaW5rIGNtYWtlQXJndW1lbnQgQ29uc3RhbnQKK0hpTGluayBjbWFrZUVudmlyb25tZW50IFNwZWNpYWwKK0hpTGluayBjbWFrZU9wZXJhdG9ycyBPcGVyYXRvcgorSGlMaW5rIGNtYWtlTWFjcm8gUHJlUHJvYworSGlMaW5rIGNtYWtlRXJyb3IgRXJyb3IKK0hpTGluayBjbWFrZVRvZG8gVE9ETworSGlMaW5rIGNtYWtlRXNjYXBlZCBTcGVjaWFsCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJjbWFrZSIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvY29ib2wudmltIGIvcnVudGltZS9zeW50YXgvY29ib2wudmltCmluZGV4IDUxY2EzZDguLmE2M2U4YjMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2NvYm9sLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9jb2JvbC52aW0KQEAgLTYsMjAgKzYsMTMgQEAKICIgICAgICAgICAgICAgICBKYW1lcyBNaXRjaGVsbCA8amFtZXNfbWl0Y2hlbGxAYWNtLm9yZz4pCiAiIExhc3QgQ2hhbmdlOiAgMjAxNSBGZWIgMTMKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKICIgTU9TVCBpbXBvcnRhbnQgLSBlbHNlIG1vc3Qgb2YgdGhlIGtleXdvcmRzIHdvbnQgd29yayEKLWlmIHZlcnNpb24gPCA2MDAKLSAgc2V0IGlzaz1ALDQ4LTU3LC0KLWVsc2UKLSAgc2V0bG9jYWwgaXNrPUAsNDgtNTcsLQotZW5kaWYKK3NldGxvY2FsIGlzaz1ALDQ4LTU3LC0KIAogc3luIGNhc2UgaWdub3JlCiAKQEAgLTE1Nyw1MiArMTUwLDQ0IEBACiBlbmRpZgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9jb2JvbF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9jb2JvbF9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGNvYm9sQkFEICAgICAgRXJyb3IKLSAgSGlMaW5rIGNvYm9sQmFkSUQgICAgRXJyb3IKLSAgSGlMaW5rIGNvYm9sQmFkTGluZSAgRXJyb3IKLSAgaWYgZXhpc3RzKCJnOmNvYm9sX2xlZ2FjeV9jb2RlIikKLSAgICAgIEhpTGluayBjb2JvbE1hcmtlciAgIENvbW1lbnQKLSAgZWxzZQotICAgICAgSGlMaW5rIGNvYm9sTWFya2VyICAgRXJyb3IKLSAgZW5kaWYKLSAgSGlMaW5rIGNvYm9sQ0FMTHMgICAgRnVuY3Rpb24KLSAgSGlMaW5rIGNvYm9sQ29tbWVudCAgQ29tbWVudAotICBIaUxpbmsgY29ib2xLZXlzICAgICBDb21tZW50Ci0gIEhpTGluayBjb2JvbEFyZWFCICAgIFNwZWNpYWwKLSAgSGlMaW5rIGNvYm9sQ29tcGlsZXIgUHJlUHJvYwotICBIaUxpbmsgY29ib2xDb25kRmxvdyBTcGVjaWFsCi0gIEhpTGluayBjb2JvbENvcHkgICAgIFByZVByb2MKLSAgSGlMaW5rIGNvYm9sRGVjbEEgICAgY29ib2xEZWNsCi0gIEhpTGluayBjb2JvbERlY2wgICAgIFR5cGUKLSAgSGlMaW5rIGNvYm9sRXh0cmFzICAgU3BlY2lhbAotICBIaUxpbmsgY29ib2xHb1RvICAgICBTcGVjaWFsCi0gIEhpTGluayBjb2JvbENvbnN0YW50IENvbnN0YW50Ci0gIEhpTGluayBjb2JvbE51bWJlciAgIENvbnN0YW50Ci0gIEhpTGluayBjb2JvbFBpYyAgICAgIENvbnN0YW50Ci0gIEhpTGluayBjb2JvbFJlc2VydmVkIFN0YXRlbWVudAotICBIaUxpbmsgY29ib2xEaXZpc2lvbiBMYWJlbAotICBIaUxpbmsgY29ib2xTZWN0aW9uICBMYWJlbAotICBIaUxpbmsgY29ib2xQYXJhZ3JhcGggTGFiZWwKLSAgSGlMaW5rIGNvYm9sRGl2aXNpb25OYW1lICBLZXl3b3JkCi0gIEhpTGluayBjb2JvbFNlY3Rpb25OYW1lICAgS2V5d29yZAotICBIaUxpbmsgY29ib2xQYXJhZ3JhcGhOYW1lIEtleXdvcmQKLSAgSGlMaW5rIGNvYm9sU3RyaW5nICAgQ29uc3RhbnQKLSAgSGlMaW5rIGNvYm9sVG9kbyAgICAgVG9kbwotICBIaUxpbmsgY29ib2xXYXRjaCAgICBTcGVjaWFsCi0gIEhpTGluayBjb2JvbEluZGljYXRvciBTcGVjaWFsCi0KLSAgZGVsY29tbWFuZCBIaUxpbmsKK0hpTGluayBjb2JvbEJBRCAgICAgIEVycm9yCitIaUxpbmsgY29ib2xCYWRJRCAgICBFcnJvcgorSGlMaW5rIGNvYm9sQmFkTGluZSAgRXJyb3IKK2lmIGV4aXN0cygiZzpjb2JvbF9sZWdhY3lfY29kZSIpCisgICAgSGlMaW5rIGNvYm9sTWFya2VyICAgQ29tbWVudAorZWxzZQorICAgIEhpTGluayBjb2JvbE1hcmtlciAgIEVycm9yCiBlbmRpZgorSGlMaW5rIGNvYm9sQ0FMTHMgICAgRnVuY3Rpb24KK0hpTGluayBjb2JvbENvbW1lbnQgIENvbW1lbnQKK0hpTGluayBjb2JvbEtleXMgICAgIENvbW1lbnQKK0hpTGluayBjb2JvbEFyZWFCICAgIFNwZWNpYWwKK0hpTGluayBjb2JvbENvbXBpbGVyIFByZVByb2MKK0hpTGluayBjb2JvbENvbmRGbG93IFNwZWNpYWwKK0hpTGluayBjb2JvbENvcHkgICAgIFByZVByb2MKK0hpTGluayBjb2JvbERlY2xBICAgIGNvYm9sRGVjbAorSGlMaW5rIGNvYm9sRGVjbCAgICAgVHlwZQorSGlMaW5rIGNvYm9sRXh0cmFzICAgU3BlY2lhbAorSGlMaW5rIGNvYm9sR29UbyAgICAgU3BlY2lhbAorSGlMaW5rIGNvYm9sQ29uc3RhbnQgQ29uc3RhbnQKK0hpTGluayBjb2JvbE51bWJlciAgIENvbnN0YW50CitIaUxpbmsgY29ib2xQaWMgICAgICBDb25zdGFudAorSGlMaW5rIGNvYm9sUmVzZXJ2ZWQgU3RhdGVtZW50CitIaUxpbmsgY29ib2xEaXZpc2lvbiBMYWJlbAorSGlMaW5rIGNvYm9sU2VjdGlvbiAgTGFiZWwKK0hpTGluayBjb2JvbFBhcmFncmFwaCBMYWJlbAorSGlMaW5rIGNvYm9sRGl2aXNpb25OYW1lICBLZXl3b3JkCitIaUxpbmsgY29ib2xTZWN0aW9uTmFtZSAgIEtleXdvcmQKK0hpTGluayBjb2JvbFBhcmFncmFwaE5hbWUgS2V5d29yZAorSGlMaW5rIGNvYm9sU3RyaW5nICAgQ29uc3RhbnQKK0hpTGluayBjb2JvbFRvZG8gICAgIFRvZG8KK0hpTGluayBjb2JvbFdhdGNoICAgIFNwZWNpYWwKK0hpTGluayBjb2JvbEluZGljYXRvciBTcGVjaWFsCisKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImNvYm9sIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9jb2NvLnZpbSBiL3J1bnRpbWUvc3ludGF4L2NvY28udmltCmluZGV4IDQwOTRhNTUuLmFlMzIzNDggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2NvY28udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2NvY28udmltCkBAIC01LDkgKzUsOCBAQAogIiBSZW1hcms6ICAgICAgIENvY28vUiBzeW50YXggcGFydGlhbGx5IGltcGxlbWVudGVkLgogIiBMaWNlbnNlOiAgICAgIFZpbSBsaWNlbnNlCiAKLWlmIHZlcnNpb24gPCA2MDAKLQlzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAJZmluaXNoCiBlbmRpZgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9jb25maWcudmltIGIvcnVudGltZS9zeW50YXgvY29uZmlnLnZpbQppbmRleCBjZDgzYjI0Li4xYmI1YzJmIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9jb25maWcudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2NvbmZpZy52aW0KQEAgLTExLDExICsxMSw4IEBACiAiIHNjcmlwdCwgc28gSSB3cm90ZSB0aGlzIHF1aWNrIGFuZCBkaXJ0eSBwYXRjaC4KIAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMzcsMjggKzM0LDIwIEBACiBzeW4gcmVnaW9uICBjb25maWdzdHJpbmcgbWF0Y2hncm91cD1jb25maWdmdW5jdGlvbiBzdGFydD0iQUNfTVNHX1tBLVpdKlx6ZShbXltdIiBtYXRjaGdyb3VwPWNvbmZpZ2RlbGltaXRlciBlbmQ9IikiIGNvbnRhaW5zPWNvbmZpZ2RlbGltaXRlcixAU3BlbGwKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfY29uZmlnX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2NvbmZpZ19zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGNvbmZpZ2RlbGltaXRlciBEZWxpbWl0ZXIKLSAgSGlMaW5rIGNvbmZpZ29wZXJhdG9yICBPcGVyYXRvcgotICBIaUxpbmsgY29uZmlnY29tbWVudCAgIENvbW1lbnQKLSAgSGlMaW5rIGNvbmZpZ0RubCAgCSBDb21tZW50Ci0gIEhpTGluayBjb25maWdmdW5jdGlvbiAgRnVuY3Rpb24KLSAgSGlMaW5rIGNvbmZpZ251bWJlciAgICBOdW1iZXIKLSAgSGlMaW5rIGNvbmZpZ2tleXdvcmQgICBLZXl3b3JkCi0gIEhpTGluayBjb25maWdzcGVjaWFsICAgU3BlY2lhbAotICBIaUxpbmsgY29uZmlnc3RyaW5nICAgIFN0cmluZworSGlMaW5rIGNvbmZpZ2RlbGltaXRlciBEZWxpbWl0ZXIKK0hpTGluayBjb25maWdvcGVyYXRvciAgT3BlcmF0b3IKK0hpTGluayBjb25maWdjb21tZW50ICAgQ29tbWVudAorSGlMaW5rIGNvbmZpZ0RubCAgCSBDb21tZW50CitIaUxpbmsgY29uZmlnZnVuY3Rpb24gIEZ1bmN0aW9uCitIaUxpbmsgY29uZmlnbnVtYmVyICAgIE51bWJlcgorSGlMaW5rIGNvbmZpZ2tleXdvcmQgICBLZXl3b3JkCitIaUxpbmsgY29uZmlnc3BlY2lhbCAgIFNwZWNpYWwKK0hpTGluayBjb25maWdzdHJpbmcgICAgU3RyaW5nCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJjb25maWciCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2NwcC52aW0gYi9ydW50aW1lL3N5bnRheC9jcHAudmltCmluZGV4IGZlZmQwZmYuLmJlNzM4MWUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2NwcC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvY3BwLnZpbQpAQCAtNCwyMSArNCwxNCBAQAogIiBQcmV2aW91cyBNYWludGFpbmVyOglLZW4gU2hhbiA8Y2NzaGFuQHBvc3QuaGFydmFyZC5lZHU+CiAiIExhc3QgQ2hhbmdlOgkyMDE2IEp1bCAwNwogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIAogIiBSZWFkIHRoZSBDIHN5bnRheCB0byBzdGFydCB3aXRoCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNvIDxzZmlsZT46cDpoL2MudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9jLnZpbQotICB1bmxldCBiOmN1cnJlbnRfc3ludGF4Ci1lbmRpZgorcnVudGltZSEgc3ludGF4L2MudmltCit1bmxldCBiOmN1cnJlbnRfc3ludGF4CiAKICIgQysrIGV4dGVuc2lvbnMKIHN5biBrZXl3b3JkIGNwcFN0YXRlbWVudAluZXcgZGVsZXRlIHRoaXMgZnJpZW5kIHVzaW5nCkBAIC02MCwyOSArNTMsMjIgQEAKIHN5biBtYXRjaCBjcHBNaW5NYXggIls8Pl0/IgogCiAiIERlZmF1bHQgaGlnaGxpZ2h0aW5nCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfY3BwX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2NwcF9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgotICBIaUxpbmsgY3BwQWNjZXNzCQljcHBTdGF0ZW1lbnQKLSAgSGlMaW5rIGNwcENhc3QJCWNwcFN0YXRlbWVudAotICBIaUxpbmsgY3BwRXhjZXB0aW9ucwkJRXhjZXB0aW9uCi0gIEhpTGluayBjcHBPcGVyYXRvcgkJT3BlcmF0b3IKLSAgSGlMaW5rIGNwcFN0YXRlbWVudAkJU3RhdGVtZW50Ci0gIEhpTGluayBjcHBNb2RpZmllcgkJVHlwZQotICBIaUxpbmsgY3BwVHlwZQkJVHlwZQotICBIaUxpbmsgY3BwU3RvcmFnZUNsYXNzCVN0b3JhZ2VDbGFzcwotICBIaUxpbmsgY3BwU3RydWN0dXJlCQlTdHJ1Y3R1cmUKLSAgSGlMaW5rIGNwcEJvb2xlYW4JCUJvb2xlYW4KLSAgSGlMaW5rIGNwcENvbnN0YW50CQlDb25zdGFudAotICBIaUxpbmsgY3BwUmF3U3RyaW5nRGVsaW1pdGVyCURlbGltaXRlcgotICBIaUxpbmsgY3BwUmF3U3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIGNwcE51bWJlcgkJTnVtYmVyCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CitIaUxpbmsgY3BwQWNjZXNzCQljcHBTdGF0ZW1lbnQKK0hpTGluayBjcHBDYXN0CQljcHBTdGF0ZW1lbnQKK0hpTGluayBjcHBFeGNlcHRpb25zCQlFeGNlcHRpb24KK0hpTGluayBjcHBPcGVyYXRvcgkJT3BlcmF0b3IKK0hpTGluayBjcHBTdGF0ZW1lbnQJCVN0YXRlbWVudAorSGlMaW5rIGNwcE1vZGlmaWVyCQlUeXBlCitIaUxpbmsgY3BwVHlwZQkJVHlwZQorSGlMaW5rIGNwcFN0b3JhZ2VDbGFzcwlTdG9yYWdlQ2xhc3MKK0hpTGluayBjcHBTdHJ1Y3R1cmUJCVN0cnVjdHVyZQorSGlMaW5rIGNwcEJvb2xlYW4JCUJvb2xlYW4KK0hpTGluayBjcHBDb25zdGFudAkJQ29uc3RhbnQKK0hpTGluayBjcHBSYXdTdHJpbmdEZWxpbWl0ZXIJRGVsaW1pdGVyCitIaUxpbmsgY3BwUmF3U3RyaW5nCQlTdHJpbmcKK0hpTGluayBjcHBOdW1iZXIJCU51bWJlcgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiY3BwIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9jcm9udGFiLnZpbSBiL3J1bnRpbWUvc3ludGF4L2Nyb250YWIudmltCmluZGV4IGZkMWMzMDAuLmVkMjAyNTQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2Nyb250YWIudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2Nyb250YWIudmltCkBAIC0xMCwxMSArMTAsOCBAQAogIiBjcm9udGFiIGxpbmUgZm9ybWF0OgogIiBNaW51dGVzICAgSG91cnMgICBEYXlzICAgTW9udGhzICAgRGF5c19vZl9XZWVrICAgQ29tbWFuZHMgIyBjb21tZW50cwogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotCXN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKIAlmaW5pc2gKIGVuZGlmCiAKQEAgLTM5LDQxICszNiwzMyBAQAogc3ludGF4IG1hdGNoIGNyb250YWJQZXJjZW50ICJbXlxcXSUuKiJsYz0xIGNvbnRhaW5lZAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9jcm9udGFiX3N5bl9pbml0cyIpCi0JaWYgdmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX2Nyb250YWJfc3luX2luaXRzID0gMQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotCWVsc2UKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0JZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0JSGlMaW5rIGNyb250YWJNaW4JCU51bWJlcgotCUhpTGluayBjcm9udGFiSHIJCVByZVByb2MKLQlIaUxpbmsgY3JvbnRhYkRheQkJVHlwZQorSGlMaW5rIGNyb250YWJNaW4JCU51bWJlcgorSGlMaW5rIGNyb250YWJIcgkJUHJlUHJvYworSGlMaW5rIGNyb250YWJEYXkJCVR5cGUKIAotCUhpTGluayBjcm9udGFiTW50aAkJTnVtYmVyCi0JSGlMaW5rIGNyb250YWJNbnRoMTIJCU51bWJlcgotCUhpTGluayBjcm9udGFiTW50aFMJCU51bWJlcgotCUhpTGluayBjcm9udGFiTW50aE4JCU51bWJlcgorSGlMaW5rIGNyb250YWJNbnRoCQlOdW1iZXIKK0hpTGluayBjcm9udGFiTW50aDEyCQlOdW1iZXIKK0hpTGluayBjcm9udGFiTW50aFMJCU51bWJlcgorSGlMaW5rIGNyb250YWJNbnRoTgkJTnVtYmVyCiAKLQlIaUxpbmsgY3JvbnRhYkRvdwkJUHJlUHJvYwotCUhpTGluayBjcm9udGFiRG93NwkJUHJlUHJvYwotCUhpTGluayBjcm9udGFiRG93UwkJUHJlUHJvYwotCUhpTGluayBjcm9udGFiRG93TgkJUHJlUHJvYworSGlMaW5rIGNyb250YWJEb3cJCVByZVByb2MKK0hpTGluayBjcm9udGFiRG93NwkJUHJlUHJvYworSGlMaW5rIGNyb250YWJEb3dTCQlQcmVQcm9jCitIaUxpbmsgY3JvbnRhYkRvd04JCVByZVByb2MKIAotCUhpTGluayBjcm9udGFiTmljawkJU3BlY2lhbAotCUhpTGluayBjcm9udGFiVmFyCQlJZGVudGlmaWVyCi0JSGlMaW5rIGNyb250YWJQZXJjZW50CQlTcGVjaWFsCitIaUxpbmsgY3JvbnRhYk5pY2sJCVNwZWNpYWwKK0hpTGluayBjcm9udGFiVmFyCQlJZGVudGlmaWVyCitIaUxpbmsgY3JvbnRhYlBlcmNlbnQJCVNwZWNpYWwKIAogIiBjb21tZW50IG91dCBuZXh0IGxpbmUgZm9yIHRvIHN1cHByZXNzIHVuaXggY29tbWFuZHMgY29sb3JpbmcuCi0JSGlMaW5rIGNyb250YWJDbWQJCVN0YXRlbWVudAorSGlMaW5rIGNyb250YWJDbWQJCVN0YXRlbWVudAogCi0JSGlMaW5rIGNyb250YWJDbW50CQlDb21tZW50CitIaUxpbmsgY3JvbnRhYkNtbnQJCUNvbW1lbnQKIAotCWRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiY3JvbnRhYiIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvY3NjLnZpbSBiL3J1bnRpbWUvc3ludGF4L2NzYy52aW0KaW5kZXggNTQ5M2IxNy4uZjRjZTYyYyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvY3NjLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9jc2MudmltCkBAIC0zLDExICszLDggQEAKICIgTWFpbnRhaW5lcjoJUmF1bCBTZWd1cmEgQWNldmVkbyA8cmF1bHNlZ3VyYWFjZXZlZEBuZXRzY2FwZS5uZXQ+CiAiIExhc3QgY2hhbmdlOgkyMDExIERlYyAyNSBieSBUaGlsbyBTaXgKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLQlzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAJZmluaXNoCiBlbmRpZgogCkBAIC0xNDUsNyArMTQyLDcgQEAKIHN5CW1hdGNoCWNzY0JQVwkiIVxzKlxhKiIJY29udGFpbnM9Y3NjQlBtYWNybwogCiAiIHdoZW4gd2FudGVkLCBoaWdobGlnaHRpbmcgbGhzIG1lbWJlcnMgb3IgZXJyb3MgaW4gYXNpZ25tZW50cyAobWF5IGxhZyB0aGUgZWRpdGluZykKLWlmIHZlcnNpb24gPj0gNjAwICYmIGV4aXN0cygiY3NjX2FzaWdubWVudCIpCitpZiBleGlzdHMoImNzY19hc2lnbm1lbnQiKQogCXN5CW1hdGNoCWNzY0VxRXJyb3IJJ1woIlteIl0qIlxzKlx8W15dW1x0ICElKCkqKywtLS86Ozw9Pnt9fl1cK1xzKlx8LT5ccypcKSo9XChbXj1dXEA9XHwkXCknCiAJc3kJcmVnaW9uCWNzY0Zvcm11bGEJdHJhbnNwYXJlbnQgbWF0Y2hncm91cD1jc2NWYXJOYW1lIHN0YXJ0PSdcKCJbXiJdKiJcfFteXVtcdCAhJSgpKissLS0vOjs8PT57fX5dXCtcKVxzKj1cKFtePV1cQD1cfFxuXCknIHNraXA9JyJbXiJdKiInIGVuZD0nOycgY29udGFpbnM9QUxMQlVULGNzY0Zvcm11bGEsY3NjRm9ybXVsYUluLGNzY0JQTWFjcm8sY3NjQ29uZGl0aW9uCiAJc3kJcmVnaW9uCWNzY0Zvcm11bGFJbgltYXRjaGdyb3VwPWNzY1Zhck5hbWUgdHJhbnNwYXJlbnQgc3RhcnQ9J1woIlteIl0qIlx8W15dW1x0ICElKCkqKywtLS86Ozw9Pnt9fl1cK1wpXCgtPlwoIlteIl0qIlx8W15dW1x0ICElKCkqKywtLS86Ozw9Pnt9fl1cK1wpXCkqXHMqPVwoW149XVxAPVx8JFwpJyBza2lwPSciW14iXSoiJyBlbmQ9JzsnIGNvbnRhaW5zPUFMTEJVVCxjc2NGb3JtdWxhLGNzY0Zvcm11bGFJbixjc2NCUE1hY3JvLGNzY0NvbmRpdGlvbiBjb250YWluZWQKQEAgLTE1OCw0NCArMTU1LDM2IEBACiBleGVjICJzeSBzeW5jIGNjb21tZW50IGNzY0NvbW1lbnQgbWlubGluZXM9IiAuIGNzY19taW5saW5lcwogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9jc2Nfc3ludGF4X2luaXRzIikKLQlpZiB2ZXJzaW9uIDwgNTA4Ci0JCWxldCBkaWRfY3NjX3N5bnRheF9pbml0cyA9IDEKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLQllbHNlCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotCWVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotCWhpIGNzY1Zhck5hbWUgdGVybT1ib2xkIGN0ZXJtZmc9OSBndWk9Ym9sZCBndWlmZz1ibHVlCitoaSBjc2NWYXJOYW1lIHRlcm09Ym9sZCBjdGVybWZnPTkgZ3VpPWJvbGQgZ3VpZmc9Ymx1ZQogCi0JSGlMaW5rCWNzY051bWJlcglOdW1iZXIKLQlIaUxpbmsJY3NjT2N0YWwJTnVtYmVyCi0JSGlMaW5rCWNzY0Zsb2F0CUZsb2F0Ci0JSGlMaW5rCWNzY1BhcmVuRQlFcnJvcgotCUhpTGluawljc2NDb21tZW50RQlFcnJvcgotCUhpTGluawljc2NTcGFjZUUJRXJyb3IKLQlIaUxpbmsJY3NjRXJyb3IJRXJyb3IKLQlIaUxpbmsJY3NjU3RyaW5nCVN0cmluZwotCUhpTGluawljc2NDb21tZW50CUNvbW1lbnQKLQlIaUxpbmsJY3NjVG9kbwkJVG9kbwotCUhpTGluawljc2NTdGF0ZW1lbnQJU3RhdGVtZW50Ci0JSGlMaW5rCWNzY0lmRXJyb3IJRXJyb3IKLQlIaUxpbmsJY3NjRXFFcnJvcglFcnJvcgotCUhpTGluawljc2NGdW5jdGlvbglTdGF0ZW1lbnQKLQlIaUxpbmsJY3NjQ29uZGl0aW9uCVN0YXRlbWVudAotCUhpTGluawljc2NXYXJuCQlXYXJuaW5nTXNnCitIaUxpbmsJY3NjTnVtYmVyCU51bWJlcgorSGlMaW5rCWNzY09jdGFsCU51bWJlcgorSGlMaW5rCWNzY0Zsb2F0CUZsb2F0CitIaUxpbmsJY3NjUGFyZW5FCUVycm9yCitIaUxpbmsJY3NjQ29tbWVudEUJRXJyb3IKK0hpTGluawljc2NTcGFjZUUJRXJyb3IKK0hpTGluawljc2NFcnJvcglFcnJvcgorSGlMaW5rCWNzY1N0cmluZwlTdHJpbmcKK0hpTGluawljc2NDb21tZW50CUNvbW1lbnQKK0hpTGluawljc2NUb2RvCQlUb2RvCitIaUxpbmsJY3NjU3RhdGVtZW50CVN0YXRlbWVudAorSGlMaW5rCWNzY0lmRXJyb3IJRXJyb3IKK0hpTGluawljc2NFcUVycm9yCUVycm9yCitIaUxpbmsJY3NjRnVuY3Rpb24JU3RhdGVtZW50CitIaUxpbmsJY3NjQ29uZGl0aW9uCVN0YXRlbWVudAorSGlMaW5rCWNzY1dhcm4JCVdhcm5pbmdNc2cKIAotCUhpTGluawljc2NDb21FCUVycm9yCi0JSGlMaW5rCWNzY0NvbQlTdGF0ZW1lbnQKLQlIaUxpbmsJY3NjQ29tVwlXYXJuaW5nTXNnCitIaUxpbmsJY3NjQ29tRQlFcnJvcgorSGlMaW5rCWNzY0NvbQlTdGF0ZW1lbnQKK0hpTGluawljc2NDb21XCVdhcm5pbmdNc2cKIAotCUhpTGluawljc2NCUE1hY3JvCUlkZW50aWZpZXIKLQlIaUxpbmsJY3NjQlBXCQlXYXJuaW5nTXNnCitIaUxpbmsJY3NjQlBNYWNybwlJZGVudGlmaWVyCitIaUxpbmsJY3NjQlBXCQlXYXJuaW5nTXNnCiAKLQlkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImNzYyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvY3NoLnZpbSBiL3J1bnRpbWUvc3ludGF4L2NzaC52aW0KaW5kZXggOWRjMmM0ZS4uOTczYTM1NSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvY3NoLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9jc2gudmltCkBAIC01LDExICs1LDggQEAKICIgVmVyc2lvbjoJMTEKICIgVVJMOglodHRwOi8vd3d3LmRyY2hpcC5vcmcvYXN0cm9uYXV0L3ZpbS9pbmRleC5odG1sI1NZTlRBWF9DU0gKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTEwMCw2MCArOTcsNDcgQEAKICJzeW4gbWF0Y2ggY3NoSWRlbnRpZmllcgkiXDxbYS16QS1aLl9dW2EtekEtWjAtOS5fXSpcPiIKIAogIiBTaGVsbCBJbnB1dCBSZWRpcmVjdGlvbiAoSGVyZSBEb2N1bWVudHMpCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5biByZWdpb24gY3NoSGVyZURvYyBtYXRjaGdyb3VwPWNzaFJlZGlyIHN0YXJ0PSI8PC1cPVxzKlwqKkVORFthLXpBLVpfMC05XSpcKioiIG1hdGNoZ3JvdXA9Y3NoUmVkaXIgZW5kPSJeRU5EW2EtekEtWl8wLTldKiQiCi0gIHN5biByZWdpb24gY3NoSGVyZURvYyBtYXRjaGdyb3VwPWNzaFJlZGlyIHN0YXJ0PSI8PC1cPVxzKlwqKkVPRlwqKiIgbWF0Y2hncm91cD1jc2hSZWRpciBlbmQ9Il5FT0YkIgotZWxzZQotICBzeW4gcmVnaW9uIGNzaEhlcmVEb2MgbWF0Y2hncm91cD1jc2hSZWRpciBzdGFydD0iPDwtXD1ccypcKipceihcaFx3KlwpXCoqIiBtYXRjaGdyb3VwPWNzaFJlZGlyIGVuZD0iXlx6MSQiCi1lbmRpZgorc3luIHJlZ2lvbiBjc2hIZXJlRG9jIG1hdGNoZ3JvdXA9Y3NoUmVkaXIgc3RhcnQ9Ijw8LVw9XHMqXCoqXHooXGhcdypcKVwqKiIgbWF0Y2hncm91cD1jc2hSZWRpciBlbmQ9Il5cejEkIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9jc2hfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfY3NoX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgY3NoQXJndgkJY3NoVmFyaWFibGVzCi0gIEhpTGluayBjc2hCY2tRdW90ZQljc2hDb21tYW5kCi0gIEhpTGluayBjc2hEYmxRdW90ZQljc2hTdHJpbmcKLSAgSGlMaW5rIGNzaEV4dFZhcgljc2hWYXJpYWJsZXMKLSAgSGlMaW5rIGNzaEhlcmVEb2MJY3NoU3RyaW5nCi0gIEhpTGluayBjc2hOb0VuZGxpbmVCUQljc2hOb0VuZGxpbmUKLSAgSGlMaW5rIGNzaE5vRW5kbGluZURRCWNzaE5vRW5kbGluZQotICBIaUxpbmsgY3NoTm9FbmRsaW5lU1EJY3NoTm9FbmRsaW5lCi0gIEhpTGluayBjc2hRdHlXb3JkCWNzaFZhcmlhYmxlcwotICBIaUxpbmsgY3NoUmVkaXIJCWNzaE9wZXJhdG9yCi0gIEhpTGluayBjc2hTZWxlY3Rvcgljc2hWYXJpYWJsZXMKLSAgSGlMaW5rIGNzaFNldFN0bXQJY3NoU3RhdGVtZW50Ci0gIEhpTGluayBjc2hTZXRWYXJpYWJsZXMJY3NoVmFyaWFibGVzCi0gIEhpTGluayBjc2hTbmdsUXVvdGUJY3NoU3RyaW5nCi0gIEhpTGluayBjc2hTdWJzdAkJY3NoVmFyaWFibGVzCitIaUxpbmsgY3NoQXJndgkJY3NoVmFyaWFibGVzCitIaUxpbmsgY3NoQmNrUXVvdGUJY3NoQ29tbWFuZAorSGlMaW5rIGNzaERibFF1b3RlCWNzaFN0cmluZworSGlMaW5rIGNzaEV4dFZhcgljc2hWYXJpYWJsZXMKK0hpTGluayBjc2hIZXJlRG9jCWNzaFN0cmluZworSGlMaW5rIGNzaE5vRW5kbGluZUJRCWNzaE5vRW5kbGluZQorSGlMaW5rIGNzaE5vRW5kbGluZURRCWNzaE5vRW5kbGluZQorSGlMaW5rIGNzaE5vRW5kbGluZVNRCWNzaE5vRW5kbGluZQorSGlMaW5rIGNzaFF0eVdvcmQJY3NoVmFyaWFibGVzCitIaUxpbmsgY3NoUmVkaXIJCWNzaE9wZXJhdG9yCitIaUxpbmsgY3NoU2VsZWN0b3IJY3NoVmFyaWFibGVzCitIaUxpbmsgY3NoU2V0U3RtdAljc2hTdGF0ZW1lbnQKK0hpTGluayBjc2hTZXRWYXJpYWJsZXMJY3NoVmFyaWFibGVzCitIaUxpbmsgY3NoU25nbFF1b3RlCWNzaFN0cmluZworSGlMaW5rIGNzaFN1YnN0CQljc2hWYXJpYWJsZXMKIAotICBIaUxpbmsgY3NoQ29tbWFuZAlTdGF0ZW1lbnQKLSAgSGlMaW5rIGNzaENvbW1lbnQJQ29tbWVudAotICBIaUxpbmsgY3NoQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIGNzaElkZW50aWZpZXIJRXJyb3IKLSAgSGlMaW5rIGNzaE1vZGlmaWVyCVNwZWNpYWwKLSAgSGlMaW5rIGNzaE5vRW5kbGluZQlFcnJvcgotICBIaUxpbmsgY3NoTnVtYmVyCU51bWJlcgotICBIaUxpbmsgY3NoT3BlcmF0b3IJT3BlcmF0b3IKLSAgSGlMaW5rIGNzaFJlZGlyCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGNzaFJlcGVhdAlSZXBlYXQKLSAgSGlMaW5rIGNzaFNoZWxsVmFyaWFibGVzCVNwZWNpYWwKLSAgSGlMaW5rIGNzaFNwZWNpYWwJU3BlY2lhbAotICBIaUxpbmsgY3NoU3RhdGVtZW50CVN0YXRlbWVudAotICBIaUxpbmsgY3NoU3RyaW5nCVN0cmluZwotICBIaUxpbmsgY3NoU3Vic3RFcnJvcglFcnJvcgotICBIaUxpbmsgY3NoVG9kbwkJVG9kbwotICBIaUxpbmsgY3NoVmFyaWFibGVzCVR5cGUKK0hpTGluayBjc2hDb21tYW5kCVN0YXRlbWVudAorSGlMaW5rIGNzaENvbW1lbnQJQ29tbWVudAorSGlMaW5rIGNzaENvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCitIaUxpbmsgY3NoSWRlbnRpZmllcglFcnJvcgorSGlMaW5rIGNzaE1vZGlmaWVyCVNwZWNpYWwKK0hpTGluayBjc2hOb0VuZGxpbmUJRXJyb3IKK0hpTGluayBjc2hOdW1iZXIJTnVtYmVyCitIaUxpbmsgY3NoT3BlcmF0b3IJT3BlcmF0b3IKK0hpTGluayBjc2hSZWRpcgkJU3RhdGVtZW50CitIaUxpbmsgY3NoUmVwZWF0CVJlcGVhdAorSGlMaW5rIGNzaFNoZWxsVmFyaWFibGVzCVNwZWNpYWwKK0hpTGluayBjc2hTcGVjaWFsCVNwZWNpYWwKK0hpTGluayBjc2hTdGF0ZW1lbnQJU3RhdGVtZW50CitIaUxpbmsgY3NoU3RyaW5nCVN0cmluZworSGlMaW5rIGNzaFN1YnN0RXJyb3IJRXJyb3IKK0hpTGluayBjc2hUb2RvCQlUb2RvCitIaUxpbmsgY3NoVmFyaWFibGVzCVR5cGUKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImNzaCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvY3NwLnZpbSBiL3J1bnRpbWUvc3ludGF4L2NzcC52aW0KaW5kZXggYmQ2MjEzZS4uYTU0NjBjZCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvY3NwLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9jc3AudmltCkBAIC0xNSwxMSArMTUsOCBAQAogIgkJLSBUaGUgYWRkaXRpb25hbCBzeW50YXggZm9yIHRoZSBSVC1UZXN0ZXIgKHBzZXVkby1jb21tZW50cykKICIJCSAgc2hvdWxkIGJlIG9wdGlvbmFsLgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTQ5LDQ2ICsxNDYsMzggQEAKIHN5biBzeW5jIGxpbmVzPTI1MAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9jc3Bfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfY3NwX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyCi0gICIgKEZvciB2aW0gdmVyc2lvbiA8PTUuNywgdGhlIGNvbW1hbmQgZ3JvdXBzIGFyZSBkZWZpbmVkIGluCi0gICIgJFZJTVJVTlRJTUUvc3ludGF4L3N5bmxvYWQudmltICkKLSAgSGlMaW5rIGNzcENvbW1lbnQJCQlDb21tZW50Ci0gIEhpTGluayBjc3BOdW1iZXIJCQlOdW1iZXIKLSAgSGlMaW5rIGNzcENvbmRpdGlvbmFsCQkJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIGNzcE9wZXJhdG9yCQkJRGVsaW1pdGVyCi0gIEhpTGluayBjc3BLZXl3b3JkCQkJS2V5d29yZAotICBIaUxpbmsgY3NwUmVzZXJ2ZWQJCQlTcGVjaWFsQ2hhcgotICBIaUxpbmsgY3NwSW5jbHVkZQkJCUVycm9yCi0gIEhpTGluayBjc3BJbmNsdWRlS2V5d29yZAkJSW5jbHVkZQotICBIaUxpbmsgY3NwSW5jbHVkZUFyZwkJCUluY2x1ZGUKLSAgSGlMaW5rIGNzcEFzc2VydAkJCVByZUNvbmRpdAotICBIaUxpbmsgY3NwVHlwZQkJCVR5cGUKLSAgSGlMaW5rIGNzcFByb2Nlc3MJCQlGdW5jdGlvbgotICBIaUxpbmsgY3NwVG9kbwkJCVRvZG8KLSAgSGlMaW5rIGNzcE9sZFJ0dENvbW1lbnQJCURlZmluZQotICBIaUxpbmsgY3NwUnR0UHJhZ21hS2V5d29yZAkJRGVmaW5lCi0gIEhpTGluayBjc3BTZGxSdHRDb21tZW50CQlEZWZpbmUKLSAgSGlMaW5rIGNzcFJ0dFByYWdtYUFyZwkJRGVmaW5lCi0gIEhpTGluayBjc3BSdHRQcmFnbWFTZGxBcmcJCURlZmluZQotICBIaUxpbmsgY3NwUnR0UHJhZ21hU2RsTmFtZQkJRGVmYXVsdAotICBIaUxpbmsgY3NwUnR0UHJhZ21hU2RsVGFpbEFyZwkJRGVmaW5lCi0gIEhpTGluayBjc3BSdHRQcmFnbWFTZGxUcmFuc05hbWUJRGVmYXVsdAotICBIaUxpbmsgY3NwUnR0UHJhZ21hU2RsVHJhbnNUYWlsQXJnCURlZmluZQotICBIaUxpbmsgY3NwUmVzZXJ2ZWRJZGVudGlmaWVyCUVycm9yCi0gICIgKEN1cnJlbnRseSB1bnVzZWQgdmltIG1ldGhvZDogRGVidWcpCisiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyCisiIChGb3IgdmltIHZlcnNpb24gPD01LjcsIHRoZSBjb21tYW5kIGdyb3VwcyBhcmUgZGVmaW5lZCBpbgorIiAkVklNUlVOVElNRS9zeW50YXgvc3lubG9hZC52aW0gKQorSGlMaW5rIGNzcENvbW1lbnQJCQlDb21tZW50CitIaUxpbmsgY3NwTnVtYmVyCQkJTnVtYmVyCitIaUxpbmsgY3NwQ29uZGl0aW9uYWwJCQlDb25kaXRpb25hbAorSGlMaW5rIGNzcE9wZXJhdG9yCQkJRGVsaW1pdGVyCitIaUxpbmsgY3NwS2V5d29yZAkJCUtleXdvcmQKK0hpTGluayBjc3BSZXNlcnZlZAkJCVNwZWNpYWxDaGFyCitIaUxpbmsgY3NwSW5jbHVkZQkJCUVycm9yCitIaUxpbmsgY3NwSW5jbHVkZUtleXdvcmQJCUluY2x1ZGUKK0hpTGluayBjc3BJbmNsdWRlQXJnCQkJSW5jbHVkZQorSGlMaW5rIGNzcEFzc2VydAkJCVByZUNvbmRpdAorSGlMaW5rIGNzcFR5cGUJCQlUeXBlCitIaUxpbmsgY3NwUHJvY2VzcwkJCUZ1bmN0aW9uCitIaUxpbmsgY3NwVG9kbwkJCVRvZG8KK0hpTGluayBjc3BPbGRSdHRDb21tZW50CQlEZWZpbmUKK0hpTGluayBjc3BSdHRQcmFnbWFLZXl3b3JkCQlEZWZpbmUKK0hpTGluayBjc3BTZGxSdHRDb21tZW50CQlEZWZpbmUKK0hpTGluayBjc3BSdHRQcmFnbWFBcmcJCURlZmluZQorSGlMaW5rIGNzcFJ0dFByYWdtYVNkbEFyZwkJRGVmaW5lCitIaUxpbmsgY3NwUnR0UHJhZ21hU2RsTmFtZQkJRGVmYXVsdAorSGlMaW5rIGNzcFJ0dFByYWdtYVNkbFRhaWxBcmcJCURlZmluZQorSGlMaW5rIGNzcFJ0dFByYWdtYVNkbFRyYW5zTmFtZQlEZWZhdWx0CitIaUxpbmsgY3NwUnR0UHJhZ21hU2RsVHJhbnNUYWlsQXJnCURlZmluZQorSGlMaW5rIGNzcFJlc2VydmVkSWRlbnRpZmllcglFcnJvcgorIiAoQ3VycmVudGx5IHVudXNlZCB2aW0gbWV0aG9kOiBEZWJ1ZykKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImNzcCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvY3NzLnZpbSBiL3J1bnRpbWUvc3ludGF4L2Nzcy52aW0KaW5kZXggNTE3NThjYS4uZThjMmM4NSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvY3NzLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9jc3MudmltCkBAIC04LDEyICs4LDkgQEAKICIgVVJMOiAgICAgICAgICBodHRwczovL2dpdGh1Yi5jb20vSnVsZXNXYW5nL2Nzcy52aW0KICIgTGFzdCBDaGFuZ2U6ICAyMDE1IEFwci4xNwogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKIGlmICFleGlzdHMoIm1haW5fc3ludGF4IikKLSAgaWYgdmVyc2lvbiA8IDYwMAotICAgIHN5bnRheCBjbGVhcgotICBlbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyAgaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgICBmaW5pc2gKICAgZW5kaWYKICAgbGV0IG1haW5fc3ludGF4ID0gJ2NzcycKQEAgLTUxNiwxMzkgKzUxMywxMzEgQEAKIGVuZGlmCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2Nzc19zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9jc3Nfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBjc3NDb21tZW50IENvbW1lbnQKLSAgSGlMaW5rIGNzc1ZlbmRvciBDb21tZW50Ci0gIEhpTGluayBjc3NIYWNrcyBDb21tZW50Ci0gIEhpTGluayBjc3NUYWdOYW1lIFN0YXRlbWVudAotICBIaUxpbmsgY3NzRGVwcmVjYXRlZCBFcnJvcgotICBIaUxpbmsgY3NzU2VsZWN0b3JPcCBTcGVjaWFsCi0gIEhpTGluayBjc3NTZWxlY3Rvck9wMiBTcGVjaWFsCi0gIEhpTGluayBjc3NBdHRyQ29tbWEgU3BlY2lhbAorSGlMaW5rIGNzc0NvbW1lbnQgQ29tbWVudAorSGlMaW5rIGNzc1ZlbmRvciBDb21tZW50CitIaUxpbmsgY3NzSGFja3MgQ29tbWVudAorSGlMaW5rIGNzc1RhZ05hbWUgU3RhdGVtZW50CitIaUxpbmsgY3NzRGVwcmVjYXRlZCBFcnJvcgorSGlMaW5rIGNzc1NlbGVjdG9yT3AgU3BlY2lhbAorSGlMaW5rIGNzc1NlbGVjdG9yT3AyIFNwZWNpYWwKK0hpTGluayBjc3NBdHRyQ29tbWEgU3BlY2lhbAogCi0gIEhpTGluayBjc3NBbmltYXRpb25Qcm9wIGNzc1Byb3AKLSAgSGlMaW5rIGNzc0JhY2tncm91bmRQcm9wIGNzc1Byb3AKLSAgSGlMaW5rIGNzc0JvcmRlclByb3AgY3NzUHJvcAotICBIaUxpbmsgY3NzQm94UHJvcCBjc3NQcm9wCi0gIEhpTGluayBjc3NDb2xvclByb3AgY3NzUHJvcAotICBIaUxpbmsgY3NzQ29udGVudEZvclBhZ2VkTWVkaWFQcm9wIGNzc1Byb3AKLSAgSGlMaW5rIGNzc0RpbWVuc2lvblByb3AgY3NzUHJvcAotICBIaUxpbmsgY3NzRmxleGlibGVCb3hQcm9wIGNzc1Byb3AKLSAgSGlMaW5rIGNzc0ZvbnRQcm9wIGNzc1Byb3AKLSAgSGlMaW5rIGNzc0dlbmVyYXRlZENvbnRlbnRQcm9wIGNzc1Byb3AKLSAgSGlMaW5rIGNzc0dyaWRQcm9wIGNzc1Byb3AKLSAgSGlMaW5rIGNzc0h5ZXJsaW5rUHJvcCBjc3NQcm9wCi0gIEhpTGluayBjc3NMaW5lYm94UHJvcCBjc3NQcm9wCi0gIEhpTGluayBjc3NMaXN0UHJvcCBjc3NQcm9wCi0gIEhpTGluayBjc3NNYXJxdWVlUHJvcCBjc3NQcm9wCi0gIEhpTGluayBjc3NNdWx0aUNvbHVtblByb3AgY3NzUHJvcAotICBIaUxpbmsgY3NzUGFnZWRNZWRpYVByb3AgY3NzUHJvcAotICBIaUxpbmsgY3NzUG9zaXRpb25pbmdQcm9wIGNzc1Byb3AKLSAgSGlMaW5rIGNzc1ByaW50UHJvcCBjc3NQcm9wCi0gIEhpTGluayBjc3NSdWJ5UHJvcCBjc3NQcm9wCi0gIEhpTGluayBjc3NTcGVlY2hQcm9wIGNzc1Byb3AKLSAgSGlMaW5rIGNzc1RhYmxlUHJvcCBjc3NQcm9wCi0gIEhpTGluayBjc3NUZXh0UHJvcCBjc3NQcm9wCi0gIEhpTGluayBjc3NUcmFuc2Zvcm1Qcm9wIGNzc1Byb3AKLSAgSGlMaW5rIGNzc1RyYW5zaXRpb25Qcm9wIGNzc1Byb3AKLSAgSGlMaW5rIGNzc1VJUHJvcCBjc3NQcm9wCi0gIEhpTGluayBjc3NJRVVJUHJvcCBjc3NQcm9wCi0gIEhpTGluayBjc3NBdXJhbFByb3AgY3NzUHJvcAotICBIaUxpbmsgY3NzUmVuZGVyUHJvcCBjc3NQcm9wCi0gIEhpTGluayBjc3NNb2JpbGVUZXh0UHJvcCBjc3NQcm9wCitIaUxpbmsgY3NzQW5pbWF0aW9uUHJvcCBjc3NQcm9wCitIaUxpbmsgY3NzQmFja2dyb3VuZFByb3AgY3NzUHJvcAorSGlMaW5rIGNzc0JvcmRlclByb3AgY3NzUHJvcAorSGlMaW5rIGNzc0JveFByb3AgY3NzUHJvcAorSGlMaW5rIGNzc0NvbG9yUHJvcCBjc3NQcm9wCitIaUxpbmsgY3NzQ29udGVudEZvclBhZ2VkTWVkaWFQcm9wIGNzc1Byb3AKK0hpTGluayBjc3NEaW1lbnNpb25Qcm9wIGNzc1Byb3AKK0hpTGluayBjc3NGbGV4aWJsZUJveFByb3AgY3NzUHJvcAorSGlMaW5rIGNzc0ZvbnRQcm9wIGNzc1Byb3AKK0hpTGluayBjc3NHZW5lcmF0ZWRDb250ZW50UHJvcCBjc3NQcm9wCitIaUxpbmsgY3NzR3JpZFByb3AgY3NzUHJvcAorSGlMaW5rIGNzc0h5ZXJsaW5rUHJvcCBjc3NQcm9wCitIaUxpbmsgY3NzTGluZWJveFByb3AgY3NzUHJvcAorSGlMaW5rIGNzc0xpc3RQcm9wIGNzc1Byb3AKK0hpTGluayBjc3NNYXJxdWVlUHJvcCBjc3NQcm9wCitIaUxpbmsgY3NzTXVsdGlDb2x1bW5Qcm9wIGNzc1Byb3AKK0hpTGluayBjc3NQYWdlZE1lZGlhUHJvcCBjc3NQcm9wCitIaUxpbmsgY3NzUG9zaXRpb25pbmdQcm9wIGNzc1Byb3AKK0hpTGluayBjc3NQcmludFByb3AgY3NzUHJvcAorSGlMaW5rIGNzc1J1YnlQcm9wIGNzc1Byb3AKK0hpTGluayBjc3NTcGVlY2hQcm9wIGNzc1Byb3AKK0hpTGluayBjc3NUYWJsZVByb3AgY3NzUHJvcAorSGlMaW5rIGNzc1RleHRQcm9wIGNzc1Byb3AKK0hpTGluayBjc3NUcmFuc2Zvcm1Qcm9wIGNzc1Byb3AKK0hpTGluayBjc3NUcmFuc2l0aW9uUHJvcCBjc3NQcm9wCitIaUxpbmsgY3NzVUlQcm9wIGNzc1Byb3AKK0hpTGluayBjc3NJRVVJUHJvcCBjc3NQcm9wCitIaUxpbmsgY3NzQXVyYWxQcm9wIGNzc1Byb3AKK0hpTGluayBjc3NSZW5kZXJQcm9wIGNzc1Byb3AKK0hpTGluayBjc3NNb2JpbGVUZXh0UHJvcCBjc3NQcm9wCiAKLSAgSGlMaW5rIGNzc0FuaW1hdGlvbkF0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzQmFja2dyb3VuZEF0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzQm9yZGVyQXR0ciBjc3NBdHRyCi0gIEhpTGluayBjc3NCb3hBdHRyIGNzc0F0dHIKLSAgSGlMaW5rIGNzc0NvbnRlbnRGb3JQYWdlZE1lZGlhQXR0ciBjc3NBdHRyCi0gIEhpTGluayBjc3NEaW1lbnNpb25BdHRyIGNzc0F0dHIKLSAgSGlMaW5rIGNzc0ZsZXhpYmxlQm94QXR0ciBjc3NBdHRyCi0gIEhpTGluayBjc3NGb250QXR0ciBjc3NBdHRyCi0gIEhpTGluayBjc3NHZW5lcmF0ZWRDb250ZW50QXR0ciBjc3NBdHRyCi0gIEhpTGluayBjc3NHcmlkQXR0ciBjc3NBdHRyCi0gIEhpTGluayBjc3NIeWVybGlua0F0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzTGluZWJveEF0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzTGlzdEF0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzTWFyZ2luQXR0ciBjc3NBdHRyCi0gIEhpTGluayBjc3NNYXJxdWVlQXR0ciBjc3NBdHRyCi0gIEhpTGluayBjc3NNdWx0aUNvbHVtbkF0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzUGFkZGluZ0F0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzUGFnZWRNZWRpYUF0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzUG9zaXRpb25pbmdBdHRyIGNzc0F0dHIKLSAgSGlMaW5rIGNzc0dyYWRpZW50QXR0ciBjc3NBdHRyCi0gIEhpTGluayBjc3NQcmludEF0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzUnVieUF0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzU3BlZWNoQXR0ciBjc3NBdHRyCi0gIEhpTGluayBjc3NUYWJsZUF0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzVGV4dEF0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzVHJhbnNmb3JtQXR0ciBjc3NBdHRyCi0gIEhpTGluayBjc3NUcmFuc2l0aW9uQXR0ciBjc3NBdHRyCi0gIEhpTGluayBjc3NVSUF0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzSUVVSUF0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzQXVyYWxBdHRyIGNzc0F0dHIKLSAgSGlMaW5rIGNzc1JlbmRlckF0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzQ29tbW9uQXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzQW5pbWF0aW9uQXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzQmFja2dyb3VuZEF0dHIgY3NzQXR0cgorSGlMaW5rIGNzc0JvcmRlckF0dHIgY3NzQXR0cgorSGlMaW5rIGNzc0JveEF0dHIgY3NzQXR0cgorSGlMaW5rIGNzc0NvbnRlbnRGb3JQYWdlZE1lZGlhQXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzRGltZW5zaW9uQXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzRmxleGlibGVCb3hBdHRyIGNzc0F0dHIKK0hpTGluayBjc3NGb250QXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzR2VuZXJhdGVkQ29udGVudEF0dHIgY3NzQXR0cgorSGlMaW5rIGNzc0dyaWRBdHRyIGNzc0F0dHIKK0hpTGluayBjc3NIeWVybGlua0F0dHIgY3NzQXR0cgorSGlMaW5rIGNzc0xpbmVib3hBdHRyIGNzc0F0dHIKK0hpTGluayBjc3NMaXN0QXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzTWFyZ2luQXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzTWFycXVlZUF0dHIgY3NzQXR0cgorSGlMaW5rIGNzc011bHRpQ29sdW1uQXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzUGFkZGluZ0F0dHIgY3NzQXR0cgorSGlMaW5rIGNzc1BhZ2VkTWVkaWFBdHRyIGNzc0F0dHIKK0hpTGluayBjc3NQb3NpdGlvbmluZ0F0dHIgY3NzQXR0cgorSGlMaW5rIGNzc0dyYWRpZW50QXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzUHJpbnRBdHRyIGNzc0F0dHIKK0hpTGluayBjc3NSdWJ5QXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzU3BlZWNoQXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzVGFibGVBdHRyIGNzc0F0dHIKK0hpTGluayBjc3NUZXh0QXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzVHJhbnNmb3JtQXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzVHJhbnNpdGlvbkF0dHIgY3NzQXR0cgorSGlMaW5rIGNzc1VJQXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzSUVVSUF0dHIgY3NzQXR0cgorSGlMaW5rIGNzc0F1cmFsQXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzUmVuZGVyQXR0ciBjc3NBdHRyCitIaUxpbmsgY3NzQ29tbW9uQXR0ciBjc3NBdHRyCiAKLSAgSGlMaW5rIGNzc1BzZXVkb0NsYXNzSWQgUHJlUHJvYwotICBIaUxpbmsgY3NzUHNldWRvQ2xhc3NMYW5nIENvbnN0YW50Ci0gIEhpTGluayBjc3NWYWx1ZUxlbmd0aCBOdW1iZXIKLSAgSGlMaW5rIGNzc1ZhbHVlSW50ZWdlciBOdW1iZXIKLSAgSGlMaW5rIGNzc1ZhbHVlTnVtYmVyIE51bWJlcgotICBIaUxpbmsgY3NzVmFsdWVBbmdsZSBOdW1iZXIKLSAgSGlMaW5rIGNzc1ZhbHVlVGltZSBOdW1iZXIKLSAgSGlMaW5rIGNzc1ZhbHVlRnJlcXVlbmN5IE51bWJlcgotICBIaUxpbmsgY3NzRnVuY3Rpb24gQ29uc3RhbnQKLSAgSGlMaW5rIGNzc1VSTCBTdHJpbmcKLSAgSGlMaW5rIGNzc0Z1bmN0aW9uTmFtZSBGdW5jdGlvbgotICBIaUxpbmsgY3NzRnVuY3Rpb25Db21tYSBGdW5jdGlvbgotICBIaUxpbmsgY3NzQ29sb3IgQ29uc3RhbnQKLSAgSGlMaW5rIGNzc0lkZW50aWZpZXIgRnVuY3Rpb24KLSAgSGlMaW5rIGNzc0luY2x1ZGUgSW5jbHVkZQotICBIaUxpbmsgY3NzSW5jbHVkZUtleXdvcmQgYXRLZXl3b3JkCi0gIEhpTGluayBjc3NJbXBvcnRhbnQgU3BlY2lhbAotICBIaUxpbmsgY3NzQnJhY2VzIEZ1bmN0aW9uCi0gIEhpTGluayBjc3NCcmFjZUVycm9yIEVycm9yCi0gIEhpTGluayBjc3NFcnJvciBFcnJvcgotICBIaUxpbmsgY3NzVW5pY29kZUVzY2FwZSBTcGVjaWFsCi0gIEhpTGluayBjc3NTdHJpbmdRUSBTdHJpbmcKLSAgSGlMaW5rIGNzc1N0cmluZ1EgU3RyaW5nCi0gIEhpTGluayBjc3NBdHRyaWJ1dGVTZWxlY3RvciBTdHJpbmcKLSAgSGlMaW5rIGNzc01lZGlhIGF0S2V5d29yZAotICBIaUxpbmsgY3NzTWVkaWFUeXBlIFNwZWNpYWwKLSAgSGlMaW5rIGNzc01lZGlhQ29tbWEgTm9ybWFsCi0gIEhpTGluayBjc3NNZWRpYUtleXdvcmQgU3RhdGVtZW50Ci0gIEhpTGluayBjc3NNZWRpYVByb3AgY3NzUHJvcAotICBIaUxpbmsgY3NzTWVkaWFBdHRyIGNzc0F0dHIKLSAgSGlMaW5rIGNzc1BhZ2UgYXRLZXl3b3JkCi0gIEhpTGluayBjc3NQYWdlUHNldWRvIFByZVByb2MKLSAgSGlMaW5rIGNzc1BhZ2VNYXJnaW4gYXRLZXl3b3JkCi0gIEhpTGluayBjc3NQYWdlUHJvcCBjc3NQcm9wCi0gIEhpTGluayBjc3NLZXlGcmFtZSBhdEtleXdvcmQKLSAgSGlMaW5rIGNzc0tleUZyYW1lU2VsZWN0b3IgQ29uc3RhbnQKLSAgSGlMaW5rIGNzc0ZvbnREZXNjcmlwdG9yIFNwZWNpYWwKLSAgSGlMaW5rIGNzc0ZvbnREZXNjcmlwdG9yRnVuY3Rpb24gQ29uc3RhbnQKLSAgSGlMaW5rIGNzc0ZvbnREZXNjcmlwdG9yUHJvcCBjc3NQcm9wCi0gIEhpTGluayBjc3NGb250RGVzY3JpcHRvckF0dHIgY3NzQXR0cgotICBIaUxpbmsgY3NzVW5pY29kZVJhbmdlIENvbnN0YW50Ci0gIEhpTGluayBjc3NDbGFzc05hbWUgRnVuY3Rpb24KLSAgSGlMaW5rIGNzc0NsYXNzTmFtZURvdCBGdW5jdGlvbgotICBIaUxpbmsgY3NzUHJvcCBTdG9yYWdlQ2xhc3MKLSAgSGlMaW5rIGNzc0F0dHIgQ29uc3RhbnQKLSAgSGlMaW5rIGNzc1VuaXREZWNvcmF0b3JzIE51bWJlcgotICBIaUxpbmsgY3NzTm9pc2UgTm9pc2UKLSAgSGlMaW5rIGF0S2V5d29yZCBQcmVQcm9jCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorSGlMaW5rIGNzc1BzZXVkb0NsYXNzSWQgUHJlUHJvYworSGlMaW5rIGNzc1BzZXVkb0NsYXNzTGFuZyBDb25zdGFudAorSGlMaW5rIGNzc1ZhbHVlTGVuZ3RoIE51bWJlcgorSGlMaW5rIGNzc1ZhbHVlSW50ZWdlciBOdW1iZXIKK0hpTGluayBjc3NWYWx1ZU51bWJlciBOdW1iZXIKK0hpTGluayBjc3NWYWx1ZUFuZ2xlIE51bWJlcgorSGlMaW5rIGNzc1ZhbHVlVGltZSBOdW1iZXIKK0hpTGluayBjc3NWYWx1ZUZyZXF1ZW5jeSBOdW1iZXIKK0hpTGluayBjc3NGdW5jdGlvbiBDb25zdGFudAorSGlMaW5rIGNzc1VSTCBTdHJpbmcKK0hpTGluayBjc3NGdW5jdGlvbk5hbWUgRnVuY3Rpb24KK0hpTGluayBjc3NGdW5jdGlvbkNvbW1hIEZ1bmN0aW9uCitIaUxpbmsgY3NzQ29sb3IgQ29uc3RhbnQKK0hpTGluayBjc3NJZGVudGlmaWVyIEZ1bmN0aW9uCitIaUxpbmsgY3NzSW5jbHVkZSBJbmNsdWRlCitIaUxpbmsgY3NzSW5jbHVkZUtleXdvcmQgYXRLZXl3b3JkCitIaUxpbmsgY3NzSW1wb3J0YW50IFNwZWNpYWwKK0hpTGluayBjc3NCcmFjZXMgRnVuY3Rpb24KK0hpTGluayBjc3NCcmFjZUVycm9yIEVycm9yCitIaUxpbmsgY3NzRXJyb3IgRXJyb3IKK0hpTGluayBjc3NVbmljb2RlRXNjYXBlIFNwZWNpYWwKK0hpTGluayBjc3NTdHJpbmdRUSBTdHJpbmcKK0hpTGluayBjc3NTdHJpbmdRIFN0cmluZworSGlMaW5rIGNzc0F0dHJpYnV0ZVNlbGVjdG9yIFN0cmluZworSGlMaW5rIGNzc01lZGlhIGF0S2V5d29yZAorSGlMaW5rIGNzc01lZGlhVHlwZSBTcGVjaWFsCitIaUxpbmsgY3NzTWVkaWFDb21tYSBOb3JtYWwKK0hpTGluayBjc3NNZWRpYUtleXdvcmQgU3RhdGVtZW50CitIaUxpbmsgY3NzTWVkaWFQcm9wIGNzc1Byb3AKK0hpTGluayBjc3NNZWRpYUF0dHIgY3NzQXR0cgorSGlMaW5rIGNzc1BhZ2UgYXRLZXl3b3JkCitIaUxpbmsgY3NzUGFnZVBzZXVkbyBQcmVQcm9jCitIaUxpbmsgY3NzUGFnZU1hcmdpbiBhdEtleXdvcmQKK0hpTGluayBjc3NQYWdlUHJvcCBjc3NQcm9wCitIaUxpbmsgY3NzS2V5RnJhbWUgYXRLZXl3b3JkCitIaUxpbmsgY3NzS2V5RnJhbWVTZWxlY3RvciBDb25zdGFudAorSGlMaW5rIGNzc0ZvbnREZXNjcmlwdG9yIFNwZWNpYWwKK0hpTGluayBjc3NGb250RGVzY3JpcHRvckZ1bmN0aW9uIENvbnN0YW50CitIaUxpbmsgY3NzRm9udERlc2NyaXB0b3JQcm9wIGNzc1Byb3AKK0hpTGluayBjc3NGb250RGVzY3JpcHRvckF0dHIgY3NzQXR0cgorSGlMaW5rIGNzc1VuaWNvZGVSYW5nZSBDb25zdGFudAorSGlMaW5rIGNzc0NsYXNzTmFtZSBGdW5jdGlvbgorSGlMaW5rIGNzc0NsYXNzTmFtZURvdCBGdW5jdGlvbgorSGlMaW5rIGNzc1Byb3AgU3RvcmFnZUNsYXNzCitIaUxpbmsgY3NzQXR0ciBDb25zdGFudAorSGlMaW5rIGNzc1VuaXREZWNvcmF0b3JzIE51bWJlcgorSGlMaW5rIGNzc05vaXNlIE5vaXNlCitIaUxpbmsgYXRLZXl3b3JkIFByZVByb2MKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImNzcyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvY3Rlcm0udmltIGIvcnVudGltZS9zeW50YXgvY3Rlcm0udmltCmluZGV4IDEzOWEwZDUuLjg1MTBmNjIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2N0ZXJtLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9jdGVybS52aW0KQEAgLTQsMTEgKzQsOCBAQAogIiBMYXN0IENoYW5nZToJMjAwMiBBcHIgMTMKICIgVmVyc2lvbiBJbmZvOiBAKCMpY3Rlcm0udmltCTEuNwk5Ny8xMi8xNSAwOToyMzoxNAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTQyLDQ4ICsxMzksNDAgQEAKIHN5biBtYXRjaCAgIGN0ZXJtU3BlY2lhbENoYXJhY3RlcgkiJ1xcLiciCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2N0ZXJtX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2N0ZXJtX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotCUhpTGluayBjdGVybVN0YXRlbWVudAkJU3RhdGVtZW50Ci0JSGlMaW5rIGN0ZXJtRnVuY3Rpb24JCVN0YXRlbWVudAotCUhpTGluayBjdGVybVN0ckZ1bmN0aW9uCVN0YXRlbWVudAotCUhpTGluayBjdGVybUludEZ1bmN0aW9uCVN0YXRlbWVudAotCUhpTGluayBjdGVybUxhYmVsCQlTdGF0ZW1lbnQKLQlIaUxpbmsgY3Rlcm1Db25kaXRpb25hbAlTdGF0ZW1lbnQKLQlIaUxpbmsgY3Rlcm1SZXBlYXQJCVN0YXRlbWVudAotCUhpTGluayBjdGVybUxpYkZ1bmMJCVVzZXJEZWZGdW5jCi0JSGlMaW5rIGN0ZXJtVHlwZQkJVHlwZQotCUhpTGluayBjdGVybUZ1bmNBcmcJCVByZUNvbmRpdAorSGlMaW5rIGN0ZXJtU3RhdGVtZW50CQlTdGF0ZW1lbnQKK0hpTGluayBjdGVybUZ1bmN0aW9uCQlTdGF0ZW1lbnQKK0hpTGluayBjdGVybVN0ckZ1bmN0aW9uCVN0YXRlbWVudAorSGlMaW5rIGN0ZXJtSW50RnVuY3Rpb24JU3RhdGVtZW50CitIaUxpbmsgY3Rlcm1MYWJlbAkJU3RhdGVtZW50CitIaUxpbmsgY3Rlcm1Db25kaXRpb25hbAlTdGF0ZW1lbnQKK0hpTGluayBjdGVybVJlcGVhdAkJU3RhdGVtZW50CitIaUxpbmsgY3Rlcm1MaWJGdW5jCQlVc2VyRGVmRnVuYworSGlMaW5rIGN0ZXJtVHlwZQkJVHlwZQorSGlMaW5rIGN0ZXJtRnVuY0FyZwkJUHJlQ29uZGl0CiAKLQlIaUxpbmsgY3Rlcm1QcmVWYXJSTwkJUHJlQ29uZGl0Ci0JSGlMaW5rIGN0ZXJtUHJlVmFyUlcJCVByZUNvbmRpdEJvbGQKLQlIaUxpbmsgY3Rlcm1WYXIJCVR5cGUKK0hpTGluayBjdGVybVByZVZhclJPCQlQcmVDb25kaXQKK0hpTGluayBjdGVybVByZVZhclJXCQlQcmVDb25kaXRCb2xkCitIaUxpbmsgY3Rlcm1WYXIJCVR5cGUKIAotCUhpTGluayBjdGVybUNvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBjdGVybUNvbW1lbnQJCUNvbW1lbnQKIAotCUhpTGluayBjdGVybUNoYXJhY3RlcgkJU3BlY2lhbENoYXIKLQlIaUxpbmsgY3Rlcm1TcGVjaWFsCQlTcGVjaWFsCi0JSGlMaW5rIGN0ZXJtU3BlY2lhbENoYXJhY3RlcglTcGVjaWFsQ2hhcgotCUhpTGluayBjdGVybVN5bWJvbHMJCVNwZWNpYWwKLQlIaUxpbmsgY3Rlcm1TdHJpbmcJCVN0cmluZwotCUhpTGluayBjdGVybVRvZG8JCVRvZG8KLQlIaUxpbmsgY3Rlcm1PcGVyYXRvcgkJU3RhdGVtZW50Ci0JSGlMaW5rIGN0ZXJtTnVtYmVyCQlOdW1iZXIKK0hpTGluayBjdGVybUNoYXJhY3RlcgkJU3BlY2lhbENoYXIKK0hpTGluayBjdGVybVNwZWNpYWwJCVNwZWNpYWwKK0hpTGluayBjdGVybVNwZWNpYWxDaGFyYWN0ZXIJU3BlY2lhbENoYXIKK0hpTGluayBjdGVybVN5bWJvbHMJCVNwZWNpYWwKK0hpTGluayBjdGVybVN0cmluZwkJU3RyaW5nCitIaUxpbmsgY3Rlcm1Ub2RvCQlUb2RvCitIaUxpbmsgY3Rlcm1PcGVyYXRvcgkJU3RhdGVtZW50CitIaUxpbmsgY3Rlcm1OdW1iZXIJCU51bWJlcgogCi0JIiByZWRlZmluZSB0aGUgY29sb3JzCi0JImhpIFByZUNvbmRpdEJvbGQJdGVybT1ib2xkIGN0ZXJtZmc9MSBjdGVybT1ib2xkIGd1aWZnPVB1cnBsZSBndWk9Ym9sZAotCSJoaSBTcGVjaWFsCXRlcm09Ym9sZCBjdGVybWZnPTYgZ3VpZmc9U2xhdGVCbHVlIGd1aT11bmRlcmxpbmUKKyIgcmVkZWZpbmUgdGhlIGNvbG9ycworImhpIFByZUNvbmRpdEJvbGQJdGVybT1ib2xkIGN0ZXJtZmc9MSBjdGVybT1ib2xkIGd1aWZnPVB1cnBsZSBndWk9Ym9sZAorImhpIFNwZWNpYWwJdGVybT1ib2xkIGN0ZXJtZmc9NiBndWlmZz1TbGF0ZUJsdWUgZ3VpPXVuZGVybGluZQogCi0JZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJjdGVybSIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvY3VkYS52aW0gYi9ydW50aW1lL3N5bnRheC9jdWRhLnZpbQppbmRleCA3NzkzMGUzLi5jZmM3MGI5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9jdWRhLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9jdWRhLnZpbQpAQCAtMywyMCArMywxMyBAQAogIiBNYWludGFpbmVyOglUaW1vdGh5IEIuIFRlcnJpYmVycnkgPHR0ZXJyaWJlQHVzZXJzLnNvdXJjZWZvcmdlLm5ldD4KICIgTGFzdCBDaGFuZ2U6CTIwMDcgT2N0IDEzCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCiAiIFJlYWQgdGhlIEMgc3ludGF4IHRvIHN0YXJ0IHdpdGgKLWlmIHZlcnNpb24gPCA2MDAKLSAgc291cmNlIDxzZmlsZT46cDpoL2MudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9jLnZpbQotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9jLnZpbQogCiAiIENVREEgZXh0ZW50aW9ucwogc3luIGtleXdvcmQgY3VkYVN0b3JhZ2VDbGFzcwlfX2RldmljZV9fIF9fZ2xvYmFsX18gX19ob3N0X18KZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2N1cGwudmltIGIvcnVudGltZS9zeW50YXgvY3VwbC52aW0KaW5kZXggNTQ1ZDg3My4uNTg1NDBiNiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvY3VwbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvY3VwbC52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglKb2huIENvb2sgPGpvaG5jb29rM0BnbWFpbC5jb20+CiAiIExhc3QgQ2hhbmdlOgkyMDExIERlYyAyNwogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtOTUsMzkgKzkyLDMxIEBACiBzeW4gc3luYyBtaW5saW5lcz0xCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2N1cGxfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfY3VwbF9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgIiBUaGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0gIEhpTGluayBjdXBsSGVhZGVyCWN1cGxTdGF0ZW1lbnQKLSAgSGlMaW5rIGN1cGxMb2dpY2FsT3BlcmF0b3IJIGN1cGxPcGVyYXRvcgotICBIaUxpbmsgY3VwbFJhbmdlT3BlcmF0b3IJIGN1cGxPcGVyYXRvcgotICBIaUxpbmsgY3VwbEFyaXRobWV0aWNPcGVyYXRvciBjdXBsT3BlcmF0b3IKLSAgSGlMaW5rIGN1cGxBc3NpZ25tZW50T3BlcmF0b3IgY3VwbE9wZXJhdG9yCi0gIEhpTGluayBjdXBsRXF1YWxpdHlPcGVyYXRvcgkgY3VwbE9wZXJhdG9yCi0gIEhpTGluayBjdXBsVHJ1dGhUYWJsZU9wZXJhdG9yIGN1cGxPcGVyYXRvcgotICBIaUxpbmsgY3VwbE9wZXJhdG9yCWN1cGxTdGF0ZW1lbnQKLSAgSGlMaW5rIGN1cGxGdW5jdGlvbgljdXBsU3RhdGVtZW50Ci0gIEhpTGluayBjdXBsU3RhdGVtZW50IFN0YXRlbWVudAotICBIaUxpbmsgY3VwbE51bWJlclJhbmdlIGN1cGxOdW1iZXIKLSAgSGlMaW5rIGN1cGxOdW1iZXIJICBjdXBsU3RyaW5nCi0gIEhpTGluayBjdXBsU3RyaW5nCVN0cmluZwotICBIaUxpbmsgY3VwbENvbW1lbnQJQ29tbWVudAotICBIaUxpbmsgY3VwbEV4dGVuc2lvbiAgIGN1cGxTcGVjaWFsCi0gIEhpTGluayBjdXBsU3BlY2lhbENoYXIgY3VwbFNwZWNpYWwKLSAgSGlMaW5rIGN1cGxTcGVjaWFsCVNwZWNpYWwKLSAgSGlMaW5rIGN1cGxEaXJlY3RpdmUgUHJlUHJvYwotICBIaUxpbmsgY3VwbFRvZG8JVG9kbworIiBUaGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCitIaUxpbmsgY3VwbEhlYWRlcgljdXBsU3RhdGVtZW50CitIaUxpbmsgY3VwbExvZ2ljYWxPcGVyYXRvcgkgY3VwbE9wZXJhdG9yCitIaUxpbmsgY3VwbFJhbmdlT3BlcmF0b3IJIGN1cGxPcGVyYXRvcgorSGlMaW5rIGN1cGxBcml0aG1ldGljT3BlcmF0b3IgY3VwbE9wZXJhdG9yCitIaUxpbmsgY3VwbEFzc2lnbm1lbnRPcGVyYXRvciBjdXBsT3BlcmF0b3IKK0hpTGluayBjdXBsRXF1YWxpdHlPcGVyYXRvcgkgY3VwbE9wZXJhdG9yCitIaUxpbmsgY3VwbFRydXRoVGFibGVPcGVyYXRvciBjdXBsT3BlcmF0b3IKK0hpTGluayBjdXBsT3BlcmF0b3IJY3VwbFN0YXRlbWVudAorSGlMaW5rIGN1cGxGdW5jdGlvbgljdXBsU3RhdGVtZW50CitIaUxpbmsgY3VwbFN0YXRlbWVudCBTdGF0ZW1lbnQKK0hpTGluayBjdXBsTnVtYmVyUmFuZ2UgY3VwbE51bWJlcgorSGlMaW5rIGN1cGxOdW1iZXIJICBjdXBsU3RyaW5nCitIaUxpbmsgY3VwbFN0cmluZwlTdHJpbmcKK0hpTGluayBjdXBsQ29tbWVudAlDb21tZW50CitIaUxpbmsgY3VwbEV4dGVuc2lvbiAgIGN1cGxTcGVjaWFsCitIaUxpbmsgY3VwbFNwZWNpYWxDaGFyIGN1cGxTcGVjaWFsCitIaUxpbmsgY3VwbFNwZWNpYWwJU3BlY2lhbAorSGlMaW5rIGN1cGxEaXJlY3RpdmUgUHJlUHJvYworSGlMaW5rIGN1cGxUb2RvCVRvZG8KIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImN1cGwiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2N1cGxzaW0udmltIGIvcnVudGltZS9zeW50YXgvY3VwbHNpbS52aW0KaW5kZXggMThhMzBjZS4uZDBjOWVjMyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvY3VwbHNpbS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvY3VwbHNpbS52aW0KQEAgLTMsMjEgKzMsMTQgQEAKICIgTWFpbnRhaW5lcjoJSm9obiBDb29rIDxqb2huLmNvb2tAa2xhLXRlbmNvci5jb20+CiAiIExhc3QgQ2hhbmdlOgkyMDAxIEFwciAyNQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIAogIiBSZWFkIHRoZSBDVVBMIHN5bnRheCB0byBzdGFydCB3aXRoCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNvdXJjZSA8c2ZpbGU+OnA6aC9jdXBsLnZpbQotZWxzZQotICBydW50aW1lISBzeW50YXgvY3VwbC52aW0KLSAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9jdXBsLnZpbQordW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiAiIG9taXQgZGVmaW5pdGlvbi1zcGVjaWZpYyBzdHVmZgogc3luIGNsZWFyIGN1cGxTdGF0ZW1lbnQKQEAgLTUzLDI4ICs0NiwyMCBAQAogc3luIHN5bmMgbWlubGluZXM9MQogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9jdXBsc2ltX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2N1cGxzaW1fc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICIgYXBwZW5kIHRvIHRoZSBoaWdobGlnaHRpbmcgbGlua3MgaW4gY3VwbC52aW0KLSAgIiBUaGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0gIEhpTGluayBjdXBsc2ltT3JkZXIJCWN1cGxTdGF0ZW1lbnQKLSAgSGlMaW5rIGN1cGxzaW1CYXNlCQljdXBsU3RhdGVtZW50Ci0gIEhpTGluayBjdXBsc2ltQmFzZVR5cGUJY3VwbFN0YXRlbWVudAotICBIaUxpbmsgY3VwbHNpbVZlY3RvcnMJCWN1cGxTdGF0ZW1lbnQKLSAgSGlMaW5rIGN1cGxzaW1TdGltdWx1cwljdXBsTnVtYmVyCi0gIEhpTGluayBjdXBsc2ltT3V0cHV0CQljdXBsTnVtYmVyCi0gIEhpTGluayBjdXBsc2ltT3JkZXJGb3JtYXQJY3VwbE51bWJlcgorIiBhcHBlbmQgdG8gdGhlIGhpZ2hsaWdodGluZyBsaW5rcyBpbiBjdXBsLnZpbQorIiBUaGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCitIaUxpbmsgY3VwbHNpbU9yZGVyCQljdXBsU3RhdGVtZW50CitIaUxpbmsgY3VwbHNpbUJhc2UJCWN1cGxTdGF0ZW1lbnQKK0hpTGluayBjdXBsc2ltQmFzZVR5cGUJY3VwbFN0YXRlbWVudAorSGlMaW5rIGN1cGxzaW1WZWN0b3JzCQljdXBsU3RhdGVtZW50CitIaUxpbmsgY3VwbHNpbVN0aW11bHVzCWN1cGxOdW1iZXIKK0hpTGluayBjdXBsc2ltT3V0cHV0CQljdXBsTnVtYmVyCitIaUxpbmsgY3VwbHNpbU9yZGVyRm9ybWF0CWN1cGxOdW1iZXIKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImN1cGxzaW0iCiAiIHZpbTp0cz04CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9jdnMudmltIGIvcnVudGltZS9zeW50YXgvY3ZzLnZpbQppbmRleCA5NGIyYTgwLi40YTAxYzJiIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9jdnMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2N2cy52aW0KQEAgLTQsMTEgKzQsOCBAQAogIiBVUkw6CQlodHRwOi8vd3d3LnpvdGlrb3MuY29tL2Rvd25sb2Fkcy9jdnMudmltCiAiIExhc3QgQ2hhbmdlOglTYXQgTm92IDI0IDIzOjI1OjExIENFVCAyMDAxCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0Jc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogCWZpbmlzaAogZW5kaWYKIApAQCAtMjAsMjQgKzE3LDE2IEBACiBzeW4gbWF0Y2ggY3ZzRGlyICAgY29udGFpbmVkICJcU1wrJCIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfY3ZzX3N5bl9pbml0cyIpCi0JaWYgdmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX2N2c19zeW5faW5pdHMgPSAxCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0JZWxzZQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLQllbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLQlIaUxpbmsgY3ZzTGluZQkJQ29tbWVudAotCUhpTGluayBjdnNEaXIJCWN2c0ZpbGUKLQlIaUxpbmsgY3ZzRmlsZQkJQ29uc3RhbnQKLQlIaUxpbmsgY3ZzRmlsZXMJCWN2c0NvbQotCUhpTGluayBjdnNUYWcJCWN2c0NvbQotCUhpTGluayBjdnNDb20JCVN0YXRlbWVudAorSGlMaW5rIGN2c0xpbmUJCUNvbW1lbnQKK0hpTGluayBjdnNEaXIJCWN2c0ZpbGUKK0hpTGluayBjdnNGaWxlCQlDb25zdGFudAorSGlMaW5rIGN2c0ZpbGVzCQljdnNDb20KK0hpTGluayBjdnNUYWcJCWN2c0NvbQorSGlMaW5rIGN2c0NvbQkJU3RhdGVtZW50CiAKLQlkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImN2cyIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2N3ZWIudmltIGIvcnVudGltZS9zeW50YXgvY3dlYi52aW0KaW5kZXggMzliNTkzZC4uMWQ2ZTBmZCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvY3dlYi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvY3dlYi52aW0KQEAgLTEzLDExICsxMyw4IEBACiAiIFRPRE86IG5hbWVzLCBhbmQgbGVhdmVzIEMvQysrIGNvbW1lbnRzIGFzIHN1Y2guIChPbiB0aGUgb3RoZXIgaGFuZCwKICIgVE9ETzogc3dpdGNoaW5nIHRvIFRlWCBtb2RlIGluIEMvQysrIGNvbW1lbnRzIG1pZ2h0IGJlIGNvbG91ciBvdmVya2lsbC4pCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0yNSwxMiArMjIsOCBAQAogIiBsZXZlbCBpbiB0aGUgQ1dFQiBzeW50YXgsIGUuZy4sIGluIHRoZSBwcmVhbWJsZS4gIEluIGdlbmVyYWwsIGEgQ1dFQiBzb3VyY2UKICIgY29kZSBjYW4gYmUgc2VlbiBhcyBhIG5vcm1hbCBUZVggZG9jdW1lbnQgd2l0aCBzb21lIEMvQysrIG1hdGVyaWFsCiAiIGludGVyc3BlcnNlZCBpbiBjZXJ0YWluIGRlZmluZWQgcmVnaW9ucy4KLWlmIHZlcnNpb24gPCA2MDAKLSAgc291cmNlIDxzZmlsZT46cDpoL3RleC52aW0KLWVsc2UKLSAgcnVudGltZSEgc3ludGF4L3RleC52aW0KLSAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC90ZXgudmltCit1bmxldCBiOmN1cnJlbnRfc3ludGF4CiAKICIgUmVhZCB0aGUgQy9DKysgc3ludGF4IHRvbzsgQy9DKysgc3ludGF4IGl0ZW1zIGFyZSB0cmVhdGVkIGFzIHN1Y2ggaW4gdGhlCiAiIEMvQysrIHNlY3Rpb24gb2YgYSBDV0VCIGNodW5rIG9yIGluIGlubmVyIEMvQysrIGNvbnRleHQgaW4gInwuLi58IiBncm91cHMuCkBAIC02MywyMCArNTYsMTIgQEAKIHN5bnRheCBtYXRjaCB3ZWJJZ25vcmVkU3R1ZmYgIkBAIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9jd2ViX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2N3ZWJfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayB3ZWJSZXN0cmljdGVkVGVYIFN0cmluZworSGlMaW5rIHdlYlJlc3RyaWN0ZWRUZVggU3RyaW5nCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJjd2ViIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9jeW5saWIudmltIGIvcnVudGltZS9zeW50YXgvY3lubGliLnZpbQppbmRleCBhOTk4NTA3Li41MzM4YzYxIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9jeW5saWIudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2N5bmxpYi52aW0KQEAgLTE1LDIyICsxNSwxNSBAQAogCiAKICIgUmVtb3ZlIGFueSBvbGQgc3ludGF4IHN0dWZmIGhhbmdpbmcgYXJvdW5kCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIAogCiAKICIgUmVhZCB0aGUgQysrIHN5bnRheCB0byBzdGFydCB3aXRoIC0gdGhpcyBpbmNsdWRlcyB0aGUgQyBzeW50YXgKLWlmIHZlcnNpb24gPCA2MDAKLSAgc291cmNlIDxzZmlsZT46cDpoL2NwcC52aW0KLWVsc2UKLSAgcnVudGltZSEgc3ludGF4L2NwcC52aW0KLWVuZGlmCitydW50aW1lISBzeW50YXgvY3BwLnZpbQogdW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiAiIEN5bmxpYiBleHRlbnNpb25zCkBAIC02OSwyMyArNjIsMTUgQEAKIHN5biBrZXl3b3JkCWN5bmxpYlR5cGUJICAgSW4gT3V0IEluU1QgT3V0U1QgSW50IFVpbnQgQ29uc3QgQ3luY2xvY2sKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfY3lubGliX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2N5bmxpYl9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGN5bmxpYk9wZXJhdG9yICAgT3BlcmF0b3IKLSAgSGlMaW5rIGN5bmxpYk1hY3JvICAgICAgU3RhdGVtZW50Ci0gIEhpTGluayBjeW5saWJGdW5jdGlvbiAgIFN0YXRlbWVudAotICBIaUxpbmsgY3lubGlicHBNYWNybyAgICAgIFN0YXRlbWVudAotICBIaUxpbmsgY3lubGliVHlwZSAgICAgICBUeXBlCitIaUxpbmsgY3lubGliT3BlcmF0b3IgICBPcGVyYXRvcgorSGlMaW5rIGN5bmxpYk1hY3JvICAgICAgU3RhdGVtZW50CitIaUxpbmsgY3lubGliRnVuY3Rpb24gICBTdGF0ZW1lbnQKK0hpTGluayBjeW5saWJwcE1hY3JvICAgICAgU3RhdGVtZW50CitIaUxpbmsgY3lubGliVHlwZSAgICAgICBUeXBlCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJjeW5saWIiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9jeW5wcC52aW0gYi9ydW50aW1lL3N5bnRheC9jeW5wcC52aW0KaW5kZXggYjk4NGJhYy4uZWU1NGViNiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvY3lucHAudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2N5bnBwLnZpbQpAQCAtMTksMjEgKzE5LDEzIEBACiAKIAogCi0iIFJlbW92ZSBhbnkgb2xkIHN5bnRheCBzdHVmZiBoYW5naW5nIGFyb3VuZAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKICIgUmVhZCB0aGUgQ3lubGliIHN5bnRheCB0byBzdGFydCB3aXRoIC0gdGhpcyBpbmNsdWRlcyB0aGUgQysrIHN5bnRheAotaWYgdmVyc2lvbiA8IDYwMAotICBzb3VyY2UgPHNmaWxlPjpwOmgvY3lubGliLnZpbQotZWxzZQotICBydW50aW1lISBzeW50YXgvY3lubGliLnZpbQotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9jeW5saWIudmltCiB1bmxldCBiOmN1cnJlbnRfc3ludGF4CiAKIApAQCAtNDksMjAgKzQxLDEyIEBACiBzeW4ga2V5d29yZCAgICAgY3lucHBNYWNybyAgICAgIEluc3RhbnRpYXRlCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2N5bnBwX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2N5bnBwX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgY0xhYmVsCQlMYWJlbAotICBIaUxpbmsgY3lucHBNYWNybyAgU3RhdGVtZW50CitIaUxpbmsgY0xhYmVsCQlMYWJlbAorSGlMaW5rIGN5bnBwTWFjcm8gIFN0YXRlbWVudAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiY3lucHAiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9kYXRhc2NyaXB0LnZpbSBiL3J1bnRpbWUvc3ludGF4L2RhdGFzY3JpcHQudmltCmluZGV4IGE5ODNiOGUuLjdiNjg2YTEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2RhdGFzY3JpcHQudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2RhdGFzY3JpcHQudmltCkBAIC04LDkgKzgsOCBAQAogIgogIiBodHRwOi8vZHN0b29scy5zb3VyY2Vmb3JnZS5uZXQvRGF0YVNjcmlwdExhbmd1YWdlT3ZlcnZpZXcuaHRtbAogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogbGV0IHM6a2VlcGNwbz0gJmNwbwpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZGNkLnZpbSBiL3J1bnRpbWUvc3ludGF4L2RjZC52aW0KaW5kZXggYTU2Njc0NS4uYmRlMWQzZCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZGNkLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9kY2QudmltCkBAIC0zLDExICszLDggQEAKICIgTWFpbnRhaW5lcjoJQ2hyaXN0b3BoZXIgU2hpbm4gPGNocmlzdG9waGVyQGx1Y2VudC5jb20+CiAiIExhc3QgQ2hhbmdlOgkyMDAzIEFwciAyNQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNDAsMjUgKzM3LDE3IEBACiBzeW4gcmVnaW9uICBkY2RDb21tZW50CQlzdGFydD0iXCoiIGVuZD0iXDsiCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2RjZF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9kY2Rfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBkY2RGdW5jdGlvbgkJSWRlbnRpZmllcgotICBIaUxpbmsgZGNkTGFiZWwJCUNvbnN0YW50Ci0gIEhpTGluayBkY2RDb25kaXRpb25hbAkJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIGRjZERpc3BsYXkJCVR5cGUKLSAgSGlMaW5rIGRjZFN0YXRlbWVudAkJU3RhdGVtZW50Ci0gIEhpTGluayBkY2RTcGVjaWFsCQlTcGVjaWFsCi0gIEhpTGluayBkY2RDb21tZW50CQlDb21tZW50CitIaUxpbmsgZGNkRnVuY3Rpb24JCUlkZW50aWZpZXIKK0hpTGluayBkY2RMYWJlbAkJQ29uc3RhbnQKK0hpTGluayBkY2RDb25kaXRpb25hbAkJQ29uZGl0aW9uYWwKK0hpTGluayBkY2REaXNwbGF5CQlUeXBlCitIaUxpbmsgZGNkU3RhdGVtZW50CQlTdGF0ZW1lbnQKK0hpTGluayBkY2RTcGVjaWFsCQlTcGVjaWFsCitIaUxpbmsgZGNkQ29tbWVudAkJQ29tbWVudAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZGNkIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZGNsLnZpbSBiL3J1bnRpbWUvc3ludGF4L2RjbC52aW0KaW5kZXggOGE1M2MyNS4uYjNhM2EwMiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZGNsLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9kY2wudmltCkBAIC01LDExICs1LDggQEAKICIgVmVyc2lvbjoJOQogIiBVUkw6CWh0dHA6Ly93d3cuZHJjaGlwLm9yZy9hc3Ryb25hdXQvdmltL2luZGV4Lmh0bWwjU1lOVEFYX0RDTAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTE0LDUwICsxMTEsNDIgQEAKIHN5biBtYXRjaCAgIGRjbEVycm9yCSIpIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9kY2xfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfZGNsX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotIEhpTGluayBkY2xMb2dPcGVyCWRjbEVycm9yCi0gSGlMaW5rIGRjbExvZ2ljYWwJZGNsT3BlcgotIEhpTGluayBkY2xMb2dTZXAJZGNsU2VwCitIaUxpbmsgZGNsTG9nT3BlcglkY2xFcnJvcgorSGlMaW5rIGRjbExvZ2ljYWwJZGNsT3BlcgorSGlMaW5rIGRjbExvZ1NlcAlkY2xTZXAKIAotIEhpTGluayBkY2xBc3NpZ24JT3BlcmF0b3IKLSBIaUxpbmsgZGNsQ21kUHJvYwlTcGVjaWFsCi0gSGlMaW5rIGRjbENtZFByb2NTdGFydAlPcGVyYXRvcgotIEhpTGluayBkY2xDb21tZW50CUNvbW1lbnQKLSBIaUxpbmsgZGNsQ29udGludWUJU3RhdGVtZW50Ci0gSGlMaW5rIGRjbERldmljZQlJZGVudGlmaWVyCi0gSGlMaW5rIGRjbERpclBhdGgJSWRlbnRpZmllcgotIEhpTGluayBkY2xEaXJQYXRoCUlkZW50aWZpZXIKLSBIaUxpbmsgZGNsRGlyU2VwCURlbGltaXRlcgotIEhpTGluayBkY2xFcnJvcglFcnJvcgotIEhpTGluayBkY2xFeGUJCVN0YXRlbWVudAotIEhpTGluayBkY2xGaWxlbmFtZQlOT05FCi0gSGlMaW5rIGRjbEdvdG9MYWJlbAlMYWJlbAotIEhpTGluayBkY2xJbnN0cglTdGF0ZW1lbnQKLSBIaUxpbmsgZGNsTGV4aWNhbAlGdW5jdGlvbgotIEhpTGluayBkY2xNZGZ5CVR5cGUKLSBIaUxpbmsgZGNsTWRmeUJya3QJRGVsaW1pdGVyCi0gSGlMaW5rIGRjbE1kZnlTZXAJRGVsaW1pdGVyCi0gSGlMaW5rIGRjbE1kZnlTZXQJVHlwZQotIEhpTGluayBkY2xNZGZ5U2V0U3RyaW5nCVN0cmluZwotIEhpTGluayBkY2xOdW1iZXIJTnVtYmVyCi0gSGlMaW5rIGRjbE9wZXIJT3BlcmF0b3IKLSBIaUxpbmsgZGNsUGFyYW0JU3BlY2lhbAotIEhpTGluayBkY2xTZXAJCURlbGltaXRlcgotIEhpTGluayBkY2xTdGFydAlEZWxpbWl0ZXIKLSBIaUxpbmsgZGNsU3RyaW5nCVN0cmluZwotIEhpTGluayBkY2xUb2RvCVRvZG8KK0hpTGluayBkY2xBc3NpZ24JT3BlcmF0b3IKK0hpTGluayBkY2xDbWRQcm9jCVNwZWNpYWwKK0hpTGluayBkY2xDbWRQcm9jU3RhcnQJT3BlcmF0b3IKK0hpTGluayBkY2xDb21tZW50CUNvbW1lbnQKK0hpTGluayBkY2xDb250aW51ZQlTdGF0ZW1lbnQKK0hpTGluayBkY2xEZXZpY2UJSWRlbnRpZmllcgorSGlMaW5rIGRjbERpclBhdGgJSWRlbnRpZmllcgorSGlMaW5rIGRjbERpclBhdGgJSWRlbnRpZmllcgorSGlMaW5rIGRjbERpclNlcAlEZWxpbWl0ZXIKK0hpTGluayBkY2xFcnJvcglFcnJvcgorSGlMaW5rIGRjbEV4ZQkJU3RhdGVtZW50CitIaUxpbmsgZGNsRmlsZW5hbWUJTk9ORQorSGlMaW5rIGRjbEdvdG9MYWJlbAlMYWJlbAorSGlMaW5rIGRjbEluc3RyCVN0YXRlbWVudAorSGlMaW5rIGRjbExleGljYWwJRnVuY3Rpb24KK0hpTGluayBkY2xNZGZ5CVR5cGUKK0hpTGluayBkY2xNZGZ5QnJrdAlEZWxpbWl0ZXIKK0hpTGluayBkY2xNZGZ5U2VwCURlbGltaXRlcgorSGlMaW5rIGRjbE1kZnlTZXQJVHlwZQorSGlMaW5rIGRjbE1kZnlTZXRTdHJpbmcJU3RyaW5nCitIaUxpbmsgZGNsTnVtYmVyCU51bWJlcgorSGlMaW5rIGRjbE9wZXIJT3BlcmF0b3IKK0hpTGluayBkY2xQYXJhbQlTcGVjaWFsCitIaUxpbmsgZGNsU2VwCQlEZWxpbWl0ZXIKK0hpTGluayBkY2xTdGFydAlEZWxpbWl0ZXIKK0hpTGluayBkY2xTdHJpbmcJU3RyaW5nCitIaUxpbmsgZGNsVG9kbwlUb2RvCiAKLSBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImRjbCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZGViY2hhbmdlbG9nLnZpbSBiL3J1bnRpbWUvc3ludGF4L2RlYmNoYW5nZWxvZy52aW0KaW5kZXggZDBjNjU4Yy4uMzY2OGVhNSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZGViY2hhbmdlbG9nLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9kZWJjaGFuZ2Vsb2cudmltCkBAIC03LDkgKzcsNyBAQAogIiBVUkw6IGh0dHBzOi8vYW5vbnNjbS5kZWJpYW4ub3JnL2NnaXQvcGtnLXZpbS92aW0uZ2l0L3BsYWluL3J1bnRpbWUvc3ludGF4L2RlYmNoYW5nZWxvZy52aW0KIAogIiBTdGFuZGFyZCBzeW50YXggaW5pdGlhbGl6YXRpb24KLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMzYsMjggKzM0LDIxIEBACiBzeW4gcmVnaW9uIGRlYmNoYW5nZWxvZ0VudHJ5IHN0YXJ0PSJeICAiIGVuZD0iJCIgY29udGFpbnM9ZGViY2hhbmdlbG9nQ2xvc2VzLGRlYmNoYW5nZWxvZ0xQIG9uZWxpbmUKIAogIiBBc3NvY2lhdGUgb3VyIG1hdGNoZXMgYW5kIHJlZ2lvbnMgd2l0aCBwcmV0dHkgY29sb3VycwotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2RlYmNoYW5nZWxvZ19zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9kZWJjaGFuZ2Vsb2dfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBkZWJjaGFuZ2Vsb2dIZWFkZXIJCUVycm9yCi0gIEhpTGluayBkZWJjaGFuZ2Vsb2dGb290ZXIJCUlkZW50aWZpZXIKLSAgSGlMaW5rIGRlYmNoYW5nZWxvZ0VudHJ5CQlOb3JtYWwKLSAgSGlMaW5rIGRlYmNoYW5nZWxvZ0Nsb3NlcwkJU3RhdGVtZW50Ci0gIEhpTGluayBkZWJjaGFuZ2Vsb2dMUAkJCVN0YXRlbWVudAotICBIaUxpbmsgZGViY2hhbmdlbG9nRmlyc3RLVgkJSWRlbnRpZmllcgotICBIaUxpbmsgZGViY2hhbmdlbG9nT3RoZXJLVgkJSWRlbnRpZmllcgotICBIaUxpbmsgZGViY2hhbmdlbG9nTmFtZQkJQ29tbWVudAotICBIaUxpbmsgZGViY2hhbmdlbG9nVmVyc2lvbgkJSWRlbnRpZmllcgotICBIaUxpbmsgZGViY2hhbmdlbG9nVGFyZ2V0CQlJZGVudGlmaWVyCi0gIEhpTGluayBkZWJjaGFuZ2Vsb2dFbWFpbAkJU3BlY2lhbAorSGlMaW5rIGRlYmNoYW5nZWxvZ0hlYWRlcgkJRXJyb3IKK0hpTGluayBkZWJjaGFuZ2Vsb2dGb290ZXIJCUlkZW50aWZpZXIKK0hpTGluayBkZWJjaGFuZ2Vsb2dFbnRyeQkJTm9ybWFsCitIaUxpbmsgZGViY2hhbmdlbG9nQ2xvc2VzCQlTdGF0ZW1lbnQKK0hpTGluayBkZWJjaGFuZ2Vsb2dMUAkJCVN0YXRlbWVudAorSGlMaW5rIGRlYmNoYW5nZWxvZ0ZpcnN0S1YJCUlkZW50aWZpZXIKK0hpTGluayBkZWJjaGFuZ2Vsb2dPdGhlcktWCQlJZGVudGlmaWVyCitIaUxpbmsgZGViY2hhbmdlbG9nTmFtZQkJQ29tbWVudAorSGlMaW5rIGRlYmNoYW5nZWxvZ1ZlcnNpb24JCUlkZW50aWZpZXIKK0hpTGluayBkZWJjaGFuZ2Vsb2dUYXJnZXQJCUlkZW50aWZpZXIKK0hpTGluayBkZWJjaGFuZ2Vsb2dFbWFpbAkJU3BlY2lhbAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZGViY2hhbmdlbG9nIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9kZWJjb250cm9sLnZpbSBiL3J1bnRpbWUvc3ludGF4L2RlYmNvbnRyb2wudmltCmluZGV4IDRmYjUzYTUuLjRkMzU0YzQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2RlYmNvbnRyb2wudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2RlYmNvbnRyb2wudmltCkBAIC03LDkgKzcsNyBAQAogIiBVUkw6IGh0dHBzOi8vYW5vbnNjbS5kZWJpYW4ub3JnL2NnaXQvcGtnLXZpbS92aW0uZ2l0L3BsYWluL3J1bnRpbWUvc3ludGF4L2RlYmNvbnRyb2wudmltCiAKICIgU3RhbmRhcmQgc3ludGF4IGluaXRpYWxpemF0aW9uCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTg2LDM3ICs4NCwzMCBAQAogc3luIHJlZ2lvbiBkZWJjb250cm9sTXVsdGlGaWVsZFNwZWxsIHN0YXJ0PSJeXCUoRGVzY3JpcHRpb25cKToiIHNraXA9Il4gIiBlbmQ9Il4kIm1lPXMtMSBlbmQ9Il5bXiAjXSJtZT1zLTEgY29udGFpbnM9ZGViY29udHJvbEtleSxkZWJjb250cm9sRW1haWwsZGViY29udHJvbFZhcmlhYmxlLGRlYmNvbnRyb2xDb21tZW50LEBTcGVsbAogCiAiIEFzc29jaWF0ZSBvdXIgbWF0Y2hlcyBhbmQgcmVnaW9ucyB3aXRoIHByZXR0eSBjb2xvdXJzCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfZGViY29udHJvbF9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9kZWJjb250cm9sX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgZGViY29udHJvbEtleQkJS2V5d29yZAotICBIaUxpbmsgZGViY29udHJvbEZpZWxkCU5vcm1hbAotICBIaUxpbmsgZGViY29udHJvbFN0cmljdEZpZWxkCUVycm9yCi0gIEhpTGluayBkZWJjb250cm9sRGVwcmVjYXRlZEtleQlFcnJvcgotICBIaUxpbmsgZGViY29udHJvbE11bHRpRmllbGQJTm9ybWFsCi0gIEhpTGluayBkZWJjb250cm9sQXJjaGl0ZWN0dXJlCU5vcm1hbAotICBIaUxpbmsgZGViY29udHJvbE11bHRpQXJjaAlOb3JtYWwKLSAgSGlMaW5rIGRlYmNvbnRyb2xOYW1lCQlOb3JtYWwKLSAgSGlMaW5rIGRlYmNvbnRyb2xQcmlvcml0eQlOb3JtYWwKLSAgSGlMaW5rIGRlYmNvbnRyb2xTZWN0aW9uCU5vcm1hbAotICBIaUxpbmsgZGViY29udHJvbFBhY2thZ2VUeXBlCU5vcm1hbAotICBIaUxpbmsgZGViY29udHJvbFZhcmlhYmxlCUlkZW50aWZpZXIKLSAgSGlMaW5rIGRlYmNvbnRyb2xFbWFpbAlJZGVudGlmaWVyCi0gIEhpTGluayBkZWJjb250cm9sVmNzU3ZuCUlkZW50aWZpZXIKLSAgSGlMaW5rIGRlYmNvbnRyb2xWY3NDdnMJSWRlbnRpZmllcgotICBIaUxpbmsgZGViY29udHJvbFZjc0dpdAlJZGVudGlmaWVyCi0gIEhpTGluayBkZWJjb250cm9sSFRUUFVybAlJZGVudGlmaWVyCi0gIEhpTGluayBkZWJjb250cm9sRG1VcGxvYWQJSWRlbnRpZmllcgotICBIaUxpbmsgZGViY29udHJvbENvbW1lbnQJQ29tbWVudAotICBIaUxpbmsgZGViY29udHJvbEVsc2UJCVNwZWNpYWwKK0hpTGluayBkZWJjb250cm9sS2V5CQlLZXl3b3JkCitIaUxpbmsgZGViY29udHJvbEZpZWxkCU5vcm1hbAorSGlMaW5rIGRlYmNvbnRyb2xTdHJpY3RGaWVsZAlFcnJvcgorSGlMaW5rIGRlYmNvbnRyb2xEZXByZWNhdGVkS2V5CUVycm9yCitIaUxpbmsgZGViY29udHJvbE11bHRpRmllbGQJTm9ybWFsCitIaUxpbmsgZGViY29udHJvbEFyY2hpdGVjdHVyZQlOb3JtYWwKK0hpTGluayBkZWJjb250cm9sTXVsdGlBcmNoCU5vcm1hbAorSGlMaW5rIGRlYmNvbnRyb2xOYW1lCQlOb3JtYWwKK0hpTGluayBkZWJjb250cm9sUHJpb3JpdHkJTm9ybWFsCitIaUxpbmsgZGViY29udHJvbFNlY3Rpb24JTm9ybWFsCitIaUxpbmsgZGViY29udHJvbFBhY2thZ2VUeXBlCU5vcm1hbAorSGlMaW5rIGRlYmNvbnRyb2xWYXJpYWJsZQlJZGVudGlmaWVyCitIaUxpbmsgZGViY29udHJvbEVtYWlsCUlkZW50aWZpZXIKK0hpTGluayBkZWJjb250cm9sVmNzU3ZuCUlkZW50aWZpZXIKK0hpTGluayBkZWJjb250cm9sVmNzQ3ZzCUlkZW50aWZpZXIKK0hpTGluayBkZWJjb250cm9sVmNzR2l0CUlkZW50aWZpZXIKK0hpTGluayBkZWJjb250cm9sSFRUUFVybAlJZGVudGlmaWVyCitIaUxpbmsgZGViY29udHJvbERtVXBsb2FkCUlkZW50aWZpZXIKK0hpTGluayBkZWJjb250cm9sQ29tbWVudAlDb21tZW50CitIaUxpbmsgZGViY29udHJvbEVsc2UJCVNwZWNpYWwKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImRlYmNvbnRyb2wiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2RlYnNvdXJjZXMudmltIGIvcnVudGltZS9zeW50YXgvZGVic291cmNlcy52aW0KaW5kZXggZDM1ZTI0Ny4uNTM4MzYwMiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZGVic291cmNlcy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZGVic291cmNlcy52aW0KQEAgLTYsOSArNiw3IEBACiAiIFVSTDogaHR0cHM6Ly9hbm9uc2NtLmRlYmlhbi5vcmcvY2dpdC9wa2ctdmltL3ZpbS5naXQvcGxhaW4vcnVudGltZS9zeW50YXgvZGVic291cmNlcy52aW0KIAogIiBTdGFuZGFyZCBzeW50YXggaW5pdGlhbGl6YXRpb24KLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZGVmLnZpbSBiL3J1bnRpbWUvc3ludGF4L2RlZi52aW0KaW5kZXggNWVmYjQxYi4uY2ZhZTIxMSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZGVmLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9kZWYudmltCkBAIC01LDExICs1LDggQEAKICIgTGFzdCBDaGFuZ2U6CSREYXRlOiAyMDA3LzEwLzAyIDEzOjUxOjI0ICQKICIgJFJldmlzaW9uOiAxLjIgJAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMzIsMjUgKzI5LDE3IEBACiAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfZGVmX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2RlZl9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGRlZkNvbW1lbnQJQ29tbWVudAotICBIaUxpbmsgZGVmS2V5d29yZAlLZXl3b3JkCi0gIEhpTGluayBkZWZTdG9yYWdlCVN0b3JhZ2VDbGFzcwotICBIaUxpbmsgZGVmU3RyaW5nCVN0cmluZwotICBIaUxpbmsgZGVmTnVtYmVyCU51bWJlcgotICBIaUxpbmsgZGVmT3JkaW5hbAlPcGVyYXRvcgorSGlMaW5rIGRlZkNvbW1lbnQJQ29tbWVudAorSGlMaW5rIGRlZktleXdvcmQJS2V5d29yZAorSGlMaW5rIGRlZlN0b3JhZ2UJU3RvcmFnZUNsYXNzCitIaUxpbmsgZGVmU3RyaW5nCVN0cmluZworSGlMaW5rIGRlZk51bWJlcglOdW1iZXIKK0hpTGluayBkZWZPcmRpbmFsCU9wZXJhdG9yCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJkZWYiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2Rlc2MudmltIGIvcnVudGltZS9zeW50YXgvZGVzYy52aW0KaW5kZXggY2E0NzE3Ni4uZmEwMTg5YSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZGVzYy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZGVzYy52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglSZW7DqSBSZWJlIDxyZW5lQGV4YWN0Y29kZS5kZT4sIFBpb3RyIEVzZGVuLVRlbXBza2kgPGVzZGVuQHJvY2tsaW51eC5vcmc+CiAiIExhc3QgQ2hhbmdlOgkyMDA2IEF1ZyAxNAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNjMsNDAgKzYwLDMxIEBACiAKIHN5biByZWdpb24gZGVzY1RhZ1JlZ2lvbiBzdGFydD0vXlxbXChMXHxMSUNFTlNFXClcXS8gZW5kPS8kLyBjb250YWlucz1kZXNjVGFnLGRlc2NMaWNlbnNlCiAKLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2Rlc2Nfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfZGVzY19zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGRlc2NGbGFnCQlJZGVudGlmaWVyCi0gIEhpTGluayBkZXNjTGljZW5zZQkJSWRlbnRpZmllcgotICBIaUxpbmsgZGVzY0NhdGVnb3J5CQlJZGVudGlmaWVyCitIaUxpbmsgZGVzY0ZsYWcJCUlkZW50aWZpZXIKK0hpTGluayBkZXNjTGljZW5zZQkJSWRlbnRpZmllcgorSGlMaW5rIGRlc2NDYXRlZ29yeQkJSWRlbnRpZmllcgogCi0gIEhpTGluayBkZXNjVGFnCQlUeXBlCi0gIEhpTGluayBkZXNjVXJsCQlVbmRlcmxpbmVkCi0gIEhpTGluayBkZXNjRW1haWwJCVVuZGVybGluZWQKK0hpTGluayBkZXNjVGFnCQlUeXBlCitIaUxpbmsgZGVzY1VybAkJVW5kZXJsaW5lZAorSGlMaW5rIGRlc2NFbWFpbAkJVW5kZXJsaW5lZAogCi0gICIgcHJpb3JpdHkgdGFnIGNvbG9ycwotICBIaUxpbmsgZGVzY0luc3RhbGxYCQlCb29sZWFuCi0gIEhpTGluayBkZXNjSW5zdGFsbE8JCVR5cGUKLSAgSGlMaW5rIGRlc2NEYXNoCQlPcGVyYXRvcgotICBIaUxpbmsgZGVzY0RpZ2l0CQlOdW1iZXIKLSAgSGlMaW5rIGRlc2NDb21waWxlUHJpb3JpdHkJTnVtYmVyCisiIHByaW9yaXR5IHRhZyBjb2xvcnMKK0hpTGluayBkZXNjSW5zdGFsbFgJCUJvb2xlYW4KK0hpTGluayBkZXNjSW5zdGFsbE8JCVR5cGUKK0hpTGluayBkZXNjRGFzaAkJT3BlcmF0b3IKK0hpTGluayBkZXNjRGlnaXQJCU51bWJlcgorSGlMaW5rIGRlc2NDb21waWxlUHJpb3JpdHkJTnVtYmVyCiAKLSAgIiBkb3dubG9hZCB0YWcgY29sb3JzCi0gIEhpTGluayBkZXNjU3VtCQlOdW1iZXIKLSAgSGlMaW5rIGRlc2NUYXJiYWxsCQlVbmRlcmxpbmVkCisiIGRvd25sb2FkIHRhZyBjb2xvcnMKK0hpTGluayBkZXNjU3VtCQlOdW1iZXIKK0hpTGluayBkZXNjVGFyYmFsbAkJVW5kZXJsaW5lZAogCi0gICIgdGFnIHJlZ2lvbiBjb2xvcnMKLSAgSGlMaW5rIGRlc2NUZXh0CQlDb21tZW50CisiIHRhZyByZWdpb24gY29sb3JzCitIaUxpbmsgZGVzY1RleHQJCUNvbW1lbnQKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImRlc2MiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9kZXNrdG9wLnZpbSBiL3J1bnRpbWUvc3ludGF4L2Rlc2t0b3AudmltCmluZGV4IDI3ZGFjNWMuLmVmYWI2ZDUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2Rlc2t0b3AudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2Rlc2t0b3AudmltCkBAIC03LDExICs3LDggQEAKICIgCQkoYWRkZWQgIktleXdvcmRzIikKICIgVmVyc2lvbiBJbmZvOiBkZXNrdG9wLnZpbSAwLjkuNC0xLjIKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLQlzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICAgZmluaXNoCiBlbmRpZgogCkBAIC03OSw0MSArNzYsMzMgQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9kZXNrdG9wX3N5bnRheF9pbml0cyIpCi0JaWYgdmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX2Rvc2luaV9zeW50YXhfaW5pdHMgPSAxCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0JZWxzZQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLQllbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLQlIaUxpbmsgZHRHcm91cAkJIFNwZWNpYWwKLQlIaUxpbmsgZHRDb21tZW50CSBDb21tZW50Ci0JSGlMaW5rIGR0RGVsaW0JCSBTdHJpbmcKK0hpTGluayBkdEdyb3VwCQkgU3BlY2lhbAorSGlMaW5rIGR0Q29tbWVudAkgQ29tbWVudAorSGlMaW5rIGR0RGVsaW0JCSBTdHJpbmcKIAotCUhpTGluayBkdExvY2FsZUtleQkgVHlwZQotCUhpTGluayBkdExvY2FsZU5hbWUJIElkZW50aWZpZXIKLQlIaUxpbmsgZHRYTG9jYWxlCSBJZGVudGlmaWVyCi0JSGlMaW5rIGR0QUxvY2FsZQkgSWRlbnRpZmllcgorSGlMaW5rIGR0TG9jYWxlS2V5CSBUeXBlCitIaUxpbmsgZHRMb2NhbGVOYW1lCSBJZGVudGlmaWVyCitIaUxpbmsgZHRYTG9jYWxlCSBJZGVudGlmaWVyCitIaUxpbmsgZHRBTG9jYWxlCSBJZGVudGlmaWVyCiAKLQlIaUxpbmsgZHROdW1lcmljS2V5CSBUeXBlCitIaUxpbmsgZHROdW1lcmljS2V5CSBUeXBlCiAKLQlIaUxpbmsgZHRCb29sZWFuS2V5CSBUeXBlCi0JSGlMaW5rIGR0Qm9vbGVhblZhbHVlCSBDb25zdGFudAorSGlMaW5rIGR0Qm9vbGVhbktleQkgVHlwZQorSGlMaW5rIGR0Qm9vbGVhblZhbHVlCSBDb25zdGFudAogCi0JSGlMaW5rIGR0U3RyaW5nS2V5CSBUeXBlCitIaUxpbmsgZHRTdHJpbmdLZXkJIFR5cGUKIAotCUhpTGluayBkdEV4ZWNLZXkJIFR5cGUKLQlIaUxpbmsgZHRFeGVjUGFyYW0JIFNwZWNpYWwKLQlIaUxpbmsgZHRUeXBlS2V5CSBUeXBlCi0JSGlMaW5rIGR0VHlwZVZhbHVlCSBDb25zdGFudAotCUhpTGluayBkdE5vdFN0TGFiZWwJIFR5cGUKLQlIaUxpbmsgZHRYQWRkS2V5CSBUeXBlCitIaUxpbmsgZHRFeGVjS2V5CSBUeXBlCitIaUxpbmsgZHRFeGVjUGFyYW0JIFNwZWNpYWwKK0hpTGluayBkdFR5cGVLZXkJIFR5cGUKK0hpTGluayBkdFR5cGVWYWx1ZQkgQ29uc3RhbnQKK0hpTGluayBkdE5vdFN0TGFiZWwJIFR5cGUKK0hpTGluayBkdFhBZGRLZXkJIFR5cGUKIAotCWRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZGVza3RvcCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZGl2YS52aW0gYi9ydW50aW1lL3N5bnRheC9kaXZhLnZpbQppbmRleCA3ODY2OGZkLi4wMmZjNDZkIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9kaXZhLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9kaXZhLnZpbQpAQCAtMTEsMTEgKzExLDcgQEAKICIgRG9uJ3QgcmVtb3ZlIGFueSBvbGQgc3ludGF4IHN0dWZmIGhhbmdpbmcgYXJvdW5kISBXZSBuZWVkIHN0dWZmCiAiIGZyb20gc2tpbGwudmltLgogaWYgIWV4aXN0cygiZGlkX3NraWxsX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA2MDAKLQlzbyA8c2ZpbGU+OnA6aC9za2lsbC52aW0KLSAgZWxzZQotICAgIHJ1bnRpbWUhIHN5bnRheC9za2lsbC52aW0KLSAgZW5kaWYKKyAgcnVudGltZSEgc3ludGF4L3NraWxsLnZpbQogZW5kaWYKIAogc3luIGtleXdvcmQgZGl2YURSQ0tleXdvcmRzCQlhcmVhIGVuYyBub3RjaCBvdmxwIHNlcCB3aWR0aApAQCAtODEsMjkgKzc3LDIxIEBACiBzeW4gbWF0Y2ggZGl2YUdlb21GdW5jdGlvbnMJCSJcPGdlb21cdVxhXCtcKDQ1XHw5MFwpXD0oImhlPWUtMQogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9kaXZhX3N5bnRheF9pbml0cyIpCi0JaWYgdmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX2RpdmFfc3ludGF4X2luaXRzID0gMQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotCWVsc2UKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0JZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0JSGlMaW5rIGRpdmFEUkNLZXl3b3JkcwkJU3RhdGVtZW50Ci0JSGlMaW5rIGRpdmFNZWFzS2V5d29yZHMJCVN0YXRlbWVudAotCUhpTGluayBkaXZhQ3RybEZ1bmN0aW9ucwlDb25kaXRpb25hbAotCUhpTGluayBkaXZhRXh0RnVuY3Rpb25zCQlGdW5jdGlvbgotCUhpTGluayBkaXZhRFJDRnVuY3Rpb25zCQlGdW5jdGlvbgotCUhpTGluayBkaXZhRnVuY3Rpb25zCQlGdW5jdGlvbgotCUhpTGluayBkaXZhTGF5ZXJGdW5jdGlvbnMJRnVuY3Rpb24KLQlIaUxpbmsgZGl2YUNoa0Z1bmN0aW9ucwkJRnVuY3Rpb24KLQlIaUxpbmsgZGl2YUxWU0Z1bmN0aW9ucwkJRnVuY3Rpb24KLQlIaUxpbmsgZGl2YUdlb21GdW5jdGlvbnMJRnVuY3Rpb24KK0hpTGluayBkaXZhRFJDS2V5d29yZHMJCVN0YXRlbWVudAorSGlMaW5rIGRpdmFNZWFzS2V5d29yZHMJCVN0YXRlbWVudAorSGlMaW5rIGRpdmFDdHJsRnVuY3Rpb25zCUNvbmRpdGlvbmFsCitIaUxpbmsgZGl2YUV4dEZ1bmN0aW9ucwkJRnVuY3Rpb24KK0hpTGluayBkaXZhRFJDRnVuY3Rpb25zCQlGdW5jdGlvbgorSGlMaW5rIGRpdmFGdW5jdGlvbnMJCUZ1bmN0aW9uCitIaUxpbmsgZGl2YUxheWVyRnVuY3Rpb25zCUZ1bmN0aW9uCitIaUxpbmsgZGl2YUNoa0Z1bmN0aW9ucwkJRnVuY3Rpb24KK0hpTGluayBkaXZhTFZTRnVuY3Rpb25zCQlGdW5jdGlvbgorSGlMaW5rIGRpdmFHZW9tRnVuY3Rpb25zCUZ1bmN0aW9uCiAKLQlkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImRpdmEiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2RqYW5nby52aW0gYi9ydW50aW1lL3N5bnRheC9kamFuZ28udmltCmluZGV4IGRhMzE1YWMuLmE3MTA0ZDMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2RqYW5nby52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZGphbmdvLnZpbQpAQCAtMywxMSArMyw4IEBACiAiIE1haW50YWluZXI6CURhdmUgSG9kZGVyIDxkbWhAZG1oLm9yZy51az4KICIgTGFzdCBDaGFuZ2U6CTIwMTQgSnVsIDEzCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC02OCwyOSArNjUsMjEgQEAKIHN5biByZWdpb24gZGphbmdvQ29tQmxvY2sgc3RhcnQ9InsjIiBlbmQ9IiN9IiBjb250YWlucz1kamFuZ29Ub2RvCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2RqYW5nb19zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9kamFuZ29fc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBkamFuZ29UYWdCbG9jayBQcmVQcm9jCi0gIEhpTGluayBkamFuZ29WYXJCbG9jayBQcmVQcm9jCi0gIEhpTGluayBkamFuZ29TdGF0ZW1lbnQgU3RhdGVtZW50Ci0gIEhpTGluayBkamFuZ29GaWx0ZXIgSWRlbnRpZmllcgotICBIaUxpbmsgZGphbmdvQXJndW1lbnQgQ29uc3RhbnQKLSAgSGlMaW5rIGRqYW5nb1RhZ0Vycm9yIEVycm9yCi0gIEhpTGluayBkamFuZ29WYXJFcnJvciBFcnJvcgotICBIaUxpbmsgZGphbmdvRXJyb3IgRXJyb3IKLSAgSGlMaW5rIGRqYW5nb0NvbW1lbnQgQ29tbWVudAotICBIaUxpbmsgZGphbmdvQ29tQmxvY2sgQ29tbWVudAotICBIaUxpbmsgZGphbmdvVG9kbyBUb2RvCitIaUxpbmsgZGphbmdvVGFnQmxvY2sgUHJlUHJvYworSGlMaW5rIGRqYW5nb1ZhckJsb2NrIFByZVByb2MKK0hpTGluayBkamFuZ29TdGF0ZW1lbnQgU3RhdGVtZW50CitIaUxpbmsgZGphbmdvRmlsdGVyIElkZW50aWZpZXIKK0hpTGluayBkamFuZ29Bcmd1bWVudCBDb25zdGFudAorSGlMaW5rIGRqYW5nb1RhZ0Vycm9yIEVycm9yCitIaUxpbmsgZGphbmdvVmFyRXJyb3IgRXJyb3IKK0hpTGluayBkamFuZ29FcnJvciBFcnJvcgorSGlMaW5rIGRqYW5nb0NvbW1lbnQgQ29tbWVudAorSGlMaW5rIGRqYW5nb0NvbUJsb2NrIENvbW1lbnQKK0hpTGluayBkamFuZ29Ub2RvIFRvZG8KIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImRqYW5nbyIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2Ruc21hc3EudmltIGIvcnVudGltZS9zeW50YXgvZG5zbWFzcS52aW0KaW5kZXggOWZhMzIwNy4uYTRjYzhiNSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZG5zbWFzcS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZG5zbWFzcS52aW0KQEAgLTIwLDEwICsyMCw4IEBACiAiCQllbmRpZgogIgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotaWYgdjp2ZXJzaW9uIDwgNjAwCi0gICAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikgfHwgJmNvbXBhdGlibGUKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKSB8fCAmY29tcGF0aWJsZQogICAgIGZpbmlzaAogZW5kaWYKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZG9jYmsudmltIGIvcnVudGltZS9zeW50YXgvZG9jYmsudmltCmluZGV4IGZjNjc5ZWUuLjNiYzgwNDkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2RvY2JrLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9kb2Niay52aW0KQEAgLTEzLDExICsxMyw4IEBACiAiICAgaHR0cDovL3d3dy5vcGVuLW9hc2lzLm9yZy9kb2Nib29rLwogIgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTc0LDI2ICsxNzEsMTcgQEAKIHN5biByZWdpb24gZG9jYmtDaXRlICAgc3RhcnQ9IjxjaXRhdGlvbj4ibGM9MTAgZW5kPSI8L2NpdGF0aW9uPiJtZT1lLTExIGNvbnRhaW5zPXhtbFJlZ2lvbix4bWxFbnRpdHksc2dtbFJlZ2lvbixzZ21sRW50aXR5IGtlZXBlbmQKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfZG9jYmtfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfZG9jYmtfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gICAgaGkgRG9jYmtCb2xkIHRlcm09Ym9sZCBjdGVybT1ib2xkIGd1aT1ib2xkCi0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgICBoaSBkZWYgRG9jYmtCb2xkIHRlcm09Ym9sZCBjdGVybT1ib2xkIGd1aT1ib2xkCi0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KK2hpIGRlZiBEb2Nia0JvbGQgdGVybT1ib2xkIGN0ZXJtPWJvbGQgZ3VpPWJvbGQKIAotICBIaUxpbmsgZG9jYmtLZXl3b3JkCVN0YXRlbWVudAotICBIaUxpbmsgZG9jYmtSZWdpb24JRG9jYmtCb2xkCi0gIEhpTGluayBkb2Nia1RpdGxlCVRpdGxlCi0gIEhpTGluayBkb2Nia1JlbWFyawlDb21tZW50Ci0gIEhpTGluayBkb2Nia0NpdGUJQ29uc3RhbnQKK0hpTGluayBkb2Nia0tleXdvcmQJU3RhdGVtZW50CitIaUxpbmsgZG9jYmtSZWdpb24JRG9jYmtCb2xkCitIaUxpbmsgZG9jYmtUaXRsZQlUaXRsZQorSGlMaW5rIGRvY2JrUmVtYXJrCUNvbW1lbnQKK0hpTGluayBkb2Nia0NpdGUJQ29uc3RhbnQKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImRvY2JrIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9kb3NiYXRjaC52aW0gYi9ydW50aW1lL3N5bnRheC9kb3NiYXRjaC52aW0KaW5kZXggZDliMWFhNi4uYjdmNDljYSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZG9zYmF0Y2gudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2Rvc2JhdGNoLnZpbQpAQCAtOSwxMSArOSw4IEBACiAiIGRvc2JhdGNoX2NtZGV4dHZlcnNpb24JLSAxID0gV2luZG93cyBOVCwgMiA9IFdpbmRvd3MgMjAwMCBbZGVmYXVsdF0KICIKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTExMSw0OSArMTA4LDQxIEBACiBzeW4ga2V5d29yZCBkb3NiYXRjaEltcGxpY2l0ICAgIHZvbCB4Y29weQogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9kb3NiYXRjaF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9kb3NiYXRjaF9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGRvc2JhdGNoVG9kbwkJVG9kbworSGlMaW5rIGRvc2JhdGNoVG9kbwkJVG9kbwogCi0gIEhpTGluayBkb3NiYXRjaFN0YXRlbWVudAlTdGF0ZW1lbnQKLSAgSGlMaW5rIGRvc2JhdGNoQ29tbWFuZHMJZG9zYmF0Y2hTdGF0ZW1lbnQKLSAgSGlMaW5rIGRvc2JhdGNoTGFiZWwJCUxhYmVsCi0gIEhpTGluayBkb3NiYXRjaENvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCi0gIEhpTGluayBkb3NiYXRjaFJlcGVhdAkJUmVwZWF0CitIaUxpbmsgZG9zYmF0Y2hTdGF0ZW1lbnQJU3RhdGVtZW50CitIaUxpbmsgZG9zYmF0Y2hDb21tYW5kcwlkb3NiYXRjaFN0YXRlbWVudAorSGlMaW5rIGRvc2JhdGNoTGFiZWwJCUxhYmVsCitIaUxpbmsgZG9zYmF0Y2hDb25kaXRpb25hbAlDb25kaXRpb25hbAorSGlMaW5rIGRvc2JhdGNoUmVwZWF0CQlSZXBlYXQKIAotICBIaUxpbmsgZG9zYmF0Y2hPcGVyYXRvciAgICAgICBPcGVyYXRvcgotICBIaUxpbmsgZG9zYmF0Y2hFY2hvT3BlcmF0b3IgICBkb3NiYXRjaE9wZXJhdG9yCi0gIEhpTGluayBkb3NiYXRjaElmT3BlcmF0b3IgICAgIGRvc2JhdGNoT3BlcmF0b3IKK0hpTGluayBkb3NiYXRjaE9wZXJhdG9yICAgICAgIE9wZXJhdG9yCitIaUxpbmsgZG9zYmF0Y2hFY2hvT3BlcmF0b3IgICBkb3NiYXRjaE9wZXJhdG9yCitIaUxpbmsgZG9zYmF0Y2hJZk9wZXJhdG9yICAgICBkb3NiYXRjaE9wZXJhdG9yCiAKLSAgSGlMaW5rIGRvc2JhdGNoQXJndW1lbnQJSWRlbnRpZmllcgotICBIaUxpbmsgZG9zYmF0Y2hJZGVudGlmaWVyICAgICBJZGVudGlmaWVyCi0gIEhpTGluayBkb3NiYXRjaFZhcmlhYmxlCWRvc2JhdGNoSWRlbnRpZmllcgorSGlMaW5rIGRvc2JhdGNoQXJndW1lbnQJSWRlbnRpZmllcgorSGlMaW5rIGRvc2JhdGNoSWRlbnRpZmllciAgICAgSWRlbnRpZmllcgorSGlMaW5rIGRvc2JhdGNoVmFyaWFibGUJZG9zYmF0Y2hJZGVudGlmaWVyCiAKLSAgSGlMaW5rIGRvc2JhdGNoU3BlY2lhbENoYXIJU3BlY2lhbENoYXIKLSAgSGlMaW5rIGRvc2JhdGNoU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIGRvc2JhdGNoTnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIGRvc2JhdGNoSW50ZWdlcglkb3NiYXRjaE51bWJlcgotICBIaUxpbmsgZG9zYmF0Y2hIZXgJCWRvc2JhdGNoTnVtYmVyCi0gIEhpTGluayBkb3NiYXRjaEJpbmFyeQkJZG9zYmF0Y2hOdW1iZXIKLSAgSGlMaW5rIGRvc2JhdGNoT2N0YWwJCWRvc2JhdGNoTnVtYmVyCitIaUxpbmsgZG9zYmF0Y2hTcGVjaWFsQ2hhcglTcGVjaWFsQ2hhcgorSGlMaW5rIGRvc2JhdGNoU3RyaW5nCQlTdHJpbmcKK0hpTGluayBkb3NiYXRjaE51bWJlcgkJTnVtYmVyCitIaUxpbmsgZG9zYmF0Y2hJbnRlZ2VyCWRvc2JhdGNoTnVtYmVyCitIaUxpbmsgZG9zYmF0Y2hIZXgJCWRvc2JhdGNoTnVtYmVyCitIaUxpbmsgZG9zYmF0Y2hCaW5hcnkJCWRvc2JhdGNoTnVtYmVyCitIaUxpbmsgZG9zYmF0Y2hPY3RhbAkJZG9zYmF0Y2hOdW1iZXIKIAotICBIaUxpbmsgZG9zYmF0Y2hDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIGRvc2JhdGNoSW1wbGljaXQJRnVuY3Rpb24KK0hpTGluayBkb3NiYXRjaENvbW1lbnQJQ29tbWVudAorSGlMaW5rIGRvc2JhdGNoSW1wbGljaXQJRnVuY3Rpb24KIAotICBIaUxpbmsgZG9zYmF0Y2hTd2l0Y2gJCVNwZWNpYWwKK0hpTGluayBkb3NiYXRjaFN3aXRjaAkJU3BlY2lhbAogCi0gIEhpTGluayBkb3NiYXRjaENtZAkJUHJlUHJvYworSGlMaW5rIGRvc2JhdGNoQ21kCQlQcmVQcm9jCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJkb3NiYXRjaCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZG9zaW5pLnZpbSBiL3J1bnRpbWUvc3ludGF4L2Rvc2luaS52aW0KaW5kZXggZTQ3NGYyMS4uMmQ4MDg2YiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZG9zaW5pLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9kb3NpbmkudmltCkBAIC05LDExICs5LDggQEAKICIgTGFzdCBDaGFuZ2U6ICAgICAgICAgICAgMjAxMSBOb3YgOAogCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0yOCwyMyArMjUsMTUgQEAKIHN5biBtYXRjaCAgZG9zaW5pQ29tbWVudCAgIl5bIztdLiokIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9kb3Npbmlfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfZG9zaW5pX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgZG9zaW5pTnVtYmVyICAgTnVtYmVyCi0gIEhpTGluayBkb3NpbmlIZWFkZXIgICBTcGVjaWFsCi0gIEhpTGluayBkb3NpbmlDb21tZW50ICBDb21tZW50Ci0gIEhpTGluayBkb3NpbmlMYWJlbCAgICBUeXBlCitIaUxpbmsgZG9zaW5pTnVtYmVyICAgTnVtYmVyCitIaUxpbmsgZG9zaW5pSGVhZGVyICAgU3BlY2lhbAorSGlMaW5rIGRvc2luaUNvbW1lbnQgIENvbW1lbnQKK0hpTGluayBkb3NpbmlMYWJlbCAgICBUeXBlCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJkb3NpbmkiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2RvdC52aW0gYi9ydW50aW1lL3N5bnRheC9kb3QudmltCmluZGV4IDRjYzZmNGYuLmU2YTVkOWEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2RvdC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZG90LnZpbQpAQCAtNiwxMSArNiw4IEBACiAiIExhc3QgQ2hhbmdlOiAgMjAxMSBNYXkgMTcgLSBpbXByb3ZlZCBpZGVudGlmaWVyIG1hdGNoaW5nICsgdHdvIG5ldyBrZXl3b3JkcwogIiAgICAgICAgICAgICAgIDIwMDEgTWF5IDA0IC0gaW5pdGlhbCB2ZXJzaW9uCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC03NCwzNiArNzEsMjggQEAKIHN5biBzeW5jIG1heGxpbmVzPTUwMAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9kb3Rfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfZG90X3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgZG90UGFyRXJyCSBFcnJvcgotICBIaUxpbmsgZG90QnJhY2VFcnIJIEVycm9yCi0gIEhpTGluayBkb3RCcmFja0VycgkgRXJyb3IKK0hpTGluayBkb3RQYXJFcnIJIEVycm9yCitIaUxpbmsgZG90QnJhY2VFcnIJIEVycm9yCitIaUxpbmsgZG90QnJhY2tFcnIJIEVycm9yCiAKLSAgSGlMaW5rIGRvdENvbW1lbnQJIENvbW1lbnQKLSAgSGlMaW5rIGRvdFRvZG8JIFRvZG8KK0hpTGluayBkb3RDb21tZW50CSBDb21tZW50CitIaUxpbmsgZG90VG9kbwkgVG9kbwogCi0gIEhpTGluayBkb3RQYXJFbmNsCSBLZXl3b3JkCi0gIEhpTGluayBkb3RCcmFja0VuY2wJIEtleXdvcmQKLSAgSGlMaW5rIGRvdEJyYWNlRW5jbAkgS2V5d29yZAorSGlMaW5rIGRvdFBhckVuY2wJIEtleXdvcmQKK0hpTGluayBkb3RCcmFja0VuY2wJIEtleXdvcmQKK0hpTGluayBkb3RCcmFjZUVuY2wJIEtleXdvcmQKIAotICBIaUxpbmsgZG90S2V5d29yZAkgS2V5d29yZAotICBIaUxpbmsgZG90VHlwZQkgVHlwZQotICBIaUxpbmsgZG90S2V5Q2hhcgkgS2V5d29yZAorSGlMaW5rIGRvdEtleXdvcmQJIEtleXdvcmQKK0hpTGluayBkb3RUeXBlCSBUeXBlCitIaUxpbmsgZG90S2V5Q2hhcgkgS2V5d29yZAogCi0gIEhpTGluayBkb3RTdHJpbmcJIFN0cmluZwotICBIaUxpbmsgZG90SWRlbnRpZmllcgkgSWRlbnRpZmllcgorSGlMaW5rIGRvdFN0cmluZwkgU3RyaW5nCitIaUxpbmsgZG90SWRlbnRpZmllcgkgSWRlbnRpZmllcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZG90IgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9kcmFjdWxhLnZpbSBiL3J1bnRpbWUvc3ludGF4L2RyYWN1bGEudmltCmluZGV4IDZhMzgwNjAuLmI2MGU0ODQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2RyYWN1bGEudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2RyYWN1bGEudmltCkBAIC04LDExICs4LDggQEAKICIJCXRoZSBwdXJwb3NlcyBvZiBEZXNpZ24gUnVsZSBDaGVja2luZywgTGF5b3V0IHZzLiBTY2hlbWF0aWMKICIJCXZlcmlmaWNhdGlvbiwgYW5kIExheW91dCBQYXJhbWV0ZXIgRXh0cmFjdGlvbi4KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTYxLDI0ICs1OCwxNiBAQAogc3luIHN5bmMgbGluZXM9NTAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfZHJhY3VsYV9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9kcmFjdWxhX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgZHJhY3VsYUlkZW50aWZpZXIgSWRlbnRpZmllcgotICBIaUxpbmsgZHJhY3VsYVN0YXRlbWVudCAgU3RhdGVtZW50Ci0gIEhpTGluayBkcmFjdWxhVHlwZSAgICAgICBUeXBlCi0gIEhpTGluayBkcmFjdWxhQ29tbWVudCAgICBDb21tZW50Ci0gIEhpTGluayBkcmFjdWxhUHJlUHJvYyAgICBQcmVQcm9jCitIaUxpbmsgZHJhY3VsYUlkZW50aWZpZXIgSWRlbnRpZmllcgorSGlMaW5rIGRyYWN1bGFTdGF0ZW1lbnQgIFN0YXRlbWVudAorSGlMaW5rIGRyYWN1bGFUeXBlICAgICAgIFR5cGUKK0hpTGluayBkcmFjdWxhQ29tbWVudCAgICBDb21tZW50CitIaUxpbmsgZHJhY3VsYVByZVByb2MgICAgUHJlUHJvYwogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZHJhY3VsYSIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZHRkLnZpbSBiL3J1bnRpbWUvc3ludGF4L2R0ZC52aW0KaW5kZXggMDAxZGJiZC4uZTAwYzcwZCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZHRkLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9kdGQudmltCkBAIC0xMjYsNDEgKzEyNiwzMyBAQAogc3luIHN5bmMgbGluZXM9MjUwCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2R0ZF9zeW5faW5pdHMiKQotICAgIGlmIHZlcnNpb24gPCA1MDgKLQlsZXQgZGlkX2R0ZF9zeW5faW5pdHMgPSAxCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgICBlbHNlCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gICAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICAgIiBUaGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0gICAgSGlMaW5rIGR0ZEZ1bmN0aW9uCQlGdW5jdGlvbgotICAgIEhpTGluayBkdGRUYWcJCU5vcm1hbAotICAgIEhpTGluayBkdGRUeXBlCQlUeXBlCi0gICAgSGlMaW5rIGR0ZEF0dHJUeXBlCQlkdGRUeXBlCi0gICAgSGlMaW5rIGR0ZEF0dHJEZWYJCWR0ZFR5cGUKLSAgICBIaUxpbmsgZHRkQ29uc3RhbnQJCUNvbnN0YW50Ci0gICAgSGlMaW5rIGR0ZFN0cmluZwkJZHRkQ29uc3RhbnQKLSAgICBIaUxpbmsgZHRkRW51bQkJZHRkQ29uc3RhbnQKLSAgICBIaUxpbmsgZHRkQ2FyZAkJZHRkRnVuY3Rpb24KKyIgVGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgorSGlMaW5rIGR0ZEZ1bmN0aW9uCQlGdW5jdGlvbgorSGlMaW5rIGR0ZFRhZwkJTm9ybWFsCitIaUxpbmsgZHRkVHlwZQkJVHlwZQorSGlMaW5rIGR0ZEF0dHJUeXBlCQlkdGRUeXBlCitIaUxpbmsgZHRkQXR0ckRlZgkJZHRkVHlwZQorSGlMaW5rIGR0ZENvbnN0YW50CQlDb25zdGFudAorSGlMaW5rIGR0ZFN0cmluZwkJZHRkQ29uc3RhbnQKK0hpTGluayBkdGRFbnVtCQlkdGRDb25zdGFudAorSGlMaW5rIGR0ZENhcmQJCWR0ZEZ1bmN0aW9uCiAKLSAgICBIaUxpbmsgZHRkRW50aXR5CQlTdGF0ZW1lbnQKLSAgICBIaUxpbmsgZHRkRW50aXR5UHVuY3QJZHRkVHlwZQotICAgIEhpTGluayBkdGRQYXJhbUVudGl0eUluc3QJZHRkQ29uc3RhbnQKLSAgICBIaUxpbmsgZHRkUGFyYW1FbnRpdHlQdW5jdAlkdGRUeXBlCi0gICAgSGlMaW5rIGR0ZFBhcmFtRW50aXR5RGVjbAlkdGRUeXBlCi0gICAgSGlMaW5rIGR0ZFBhcmFtRW50aXR5RFB1bmN0IGR0ZENvbW1lbnQKK0hpTGluayBkdGRFbnRpdHkJCVN0YXRlbWVudAorSGlMaW5rIGR0ZEVudGl0eVB1bmN0CWR0ZFR5cGUKK0hpTGluayBkdGRQYXJhbUVudGl0eUluc3QJZHRkQ29uc3RhbnQKK0hpTGluayBkdGRQYXJhbUVudGl0eVB1bmN0CWR0ZFR5cGUKK0hpTGluayBkdGRQYXJhbUVudGl0eURlY2wJZHRkVHlwZQorSGlMaW5rIGR0ZFBhcmFtRW50aXR5RFB1bmN0IGR0ZENvbW1lbnQKIAotICAgIEhpTGluayBkdGRDb21tZW50CQlDb21tZW50Ci0gICAgSGlMaW5rIGR0ZFRhZ05hbWUJCVN0YXRlbWVudAotICAgIEhpTGluayBkdGRFcnJvcgkJRXJyb3IKLSAgICBIaUxpbmsgZHRkVG9kbwkJVG9kbworSGlMaW5rIGR0ZENvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBkdGRUYWdOYW1lCQlTdGF0ZW1lbnQKK0hpTGluayBkdGRFcnJvcgkJRXJyb3IKK0hpTGluayBkdGRUb2RvCQlUb2RvCiAKLSAgICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCAmY3BvID0gczpkdGRfY3BvX3NhdmUKIHVubGV0IHM6ZHRkX2Nwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9kdG1sLnZpbSBiL3J1bnRpbWUvc3ludGF4L2R0bWwudmltCmluZGV4IDdkZTcyMmEuLjBjYzI3MjkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2R0bWwudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2R0bWwudmltCkBAIC05LDIwICs5LDEzIEBACiAiIGhhY2tlZCBvdXQgb2YgdGhlIFpvcGUgUXVpY2sgUmVmZXJlbmNlIGluIGNhc2Ugc29tZW9uZSBmaW5kcyBzb21ldGhpbmcKICIgc2Vuc2libGUgdG8gZG8gd2l0aCB0aGVtLiBJIGNlcnRhaW5seSBoYXZlbid0LgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIAogIiBGaXJzdCBsb2FkIHRoZSBIVE1MIHN5bnRheAotaWYgdmVyc2lvbiA8IDYwMAotICBzb3VyY2UgPHNmaWxlPjpwOmgvaHRtbC52aW0KLWVsc2UKLSAgcnVudGltZSEgc3ludGF4L2h0bWwudmltCi1lbmRpZgorcnVudGltZSEgc3ludGF4L2h0bWwudmltCiAKIHN5biBjYXNlIG1hdGNoCiAKQEAgLTE5NiwyNSArMTg5LDE3IEBACiBzeW4gbWF0Y2ggICBodG1sVGFnTiAgICAgY29udGFpbmVkICs8L1xzKlstYS16QS1aMC05XVwrK2hzPXMrMiBjb250YWlucz1odG1sVGFnTmFtZSxodG1sU3BlY2lhbFRhZ05hbWUsZHRtbElzVGFnLGR0bWxBdHRyaWJ1dGUsZHRtbE1ldGhvZCxAaHRtbFRhZ05hbWVDbHVzdGVyCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2R0bWxfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfZHRtbF9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGR0bWxJc1RhZwkJCVByZVByb2MKLSAgSGlMaW5rIGR0bWxBdHRyaWJ1dGUJCUlkZW50aWZpZXIKLSAgSGlMaW5rIGR0bWxNZXRob2QJCQlGdW5jdGlvbgotICBIaUxpbmsgZHRtbENvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGR0bWxUT0RPCQkJVG9kbwotICBIaUxpbmsgZHRtbFNwZWNpYWxDaGFyICAgIFNwZWNpYWwKK0hpTGluayBkdG1sSXNUYWcJCQlQcmVQcm9jCitIaUxpbmsgZHRtbEF0dHJpYnV0ZQkJSWRlbnRpZmllcgorSGlMaW5rIGR0bWxNZXRob2QJCQlGdW5jdGlvbgorSGlMaW5rIGR0bWxDb21tZW50CQlDb21tZW50CitIaUxpbmsgZHRtbFRPRE8JCQlUb2RvCitIaUxpbmsgZHRtbFNwZWNpYWxDaGFyICAgIFNwZWNpYWwKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImR0bWwiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2R0cmFjZS52aW0gYi9ydW50aW1lL3N5bnRheC9kdHJhY2UudmltCmluZGV4IDJmMmQ2ZTIuLjM5MmZhMWMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2R0cmFjZS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZHRyYWNlLnZpbQpAQCAtMTAsMTkgKzEwLDE0IEBACiAiIGh0dHA6Ly9zcmMub3BlbnNvbGFyaXMub3JnL3NvdXJjZS94cmVmL29ubnYvb25udi1nYXRlL3Vzci9zcmMvbGliL2xpYmR0cmFjZS9jb21tb24vZHRfbGV4LmwKICIgaHR0cDovL3NyYy5vcGVuc29sYXJpcy5vcmcvc291cmNlL3hyZWYvb25udi9vbm52LWdhdGUvdXNyL3NyYy9saWIvbGliZHRyYWNlL2NvbW1vbi9kdF9ncmFtbWFyLnkKIAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIAogIiBSZWFkIHRoZSBDIHN5bnRheCB0byBzdGFydCB3aXRoCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNvIDxzZmlsZT46cDpoL2MudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9jLnZpbQotICB1bmxldCBiOmN1cnJlbnRfc3ludGF4Ci1lbmRpZgorcnVudGltZSEgc3ludGF4L2MudmltCit1bmxldCBiOmN1cnJlbnRfc3ludGF4CiAKIHN5biBjbGVhciBjQ29tbWVudEwgICIgZHRyYWNlIGRvZXNuJ3Qgc3VwcG9ydCAvLyBzdHlsZSBjb21tZW50cwogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9keWxhbi52aW0gYi9ydW50aW1lL3N5bnRheC9keWxhbi52aW0KaW5kZXggMTQyNjJkNS4uOTU2ODRlNSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZHlsYW4udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2R5bGFuLnZpbQpAQCAtOCwyMSArOCwxNCBAQAogIiBzeW50YXggZmlsZXMuCiAKICIgUGFydCAxOiAgU3ludGF4IGRlZmluaXRpb24KLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCiBzeW4gY2FzZSBpZ25vcmUKIAotaWYgdmVyc2lvbiA8IDYwMAotICBzZXQgbGlzcAotZWxzZQotICBzZXRsb2NhbCBsaXNwCi1lbmRpZgorc2V0bG9jYWwgbGlzcAogCiAiIEhpZ2hsaWdodCBzcGVjaWFsIGNoYXJhY3RlcnMgKHRob3NlIHRoYXQgaGF2ZSBiYWNrc2xhc2hlcykgZGlmZmVyZW50bHkKIHN5biBtYXRjaAlkeWxhblNwZWNpYWwJCWRpc3BsYXkgY29udGFpbmVkICJcXFwoeFx4XCtcfFxvXHsxLDN9XHwuXHwkXCkiCkBAIC02Nyw0MiArNjAsMzQgQEAKIHN5biByZWdpb24JZHlsYW5IZWFkZXIJc3RhcnQ9Il5bTW1db2R1bGU6IiBlbmQ9Il4kIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9keWxhbl9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9keWxhbl9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGR5bGFuQmxvY2sJCVByZVByb2MKLSAgSGlMaW5rIGR5bGFuQm9vbGVhbgkJQm9vbGVhbgotICBIaUxpbmsgZHlsYW5DaGFyYWN0ZXIJCUNoYXJhY3RlcgotICBIaUxpbmsgZHlsYW5DbGFzcwkJU3RydWN0dXJlCi0gIEhpTGluayBkeWxhbkNsYXNzTW9kcwkJU3RvcmFnZUNsYXNzCi0gIEhpTGluayBkeWxhbkNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGR5bGFuQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIGR5bGFuQ29uc3RhbnQJCUNvbnN0YW50Ci0gIEhpTGluayBkeWxhbkV4Y2VwdGlvbgkJRXhjZXB0aW9uCi0gIEhpTGluayBkeWxhbkhlYWRlcgkJTWFjcm8KLSAgSGlMaW5rIGR5bGFuSW1wb3J0CQlJbmNsdWRlCi0gIEhpTGluayBkeWxhbkxhYmVsCQlMYWJlbAotICBIaUxpbmsgZHlsYW5NaXNjTW9kcwkJU3RvcmFnZUNsYXNzCi0gIEhpTGluayBkeWxhbk51bWJlcgkJTnVtYmVyCi0gIEhpTGluayBkeWxhbk90aGVyCQlLZXl3b3JkCi0gIEhpTGluayBkeWxhbk9wZXJhdG9yCQlPcGVyYXRvcgotICBIaUxpbmsgZHlsYW5QYXJhbURlZnMJCUtleXdvcmQKLSAgSGlMaW5rIGR5bGFuUHJlY29uZGl0CQlQcmVDb25kaXQKLSAgSGlMaW5rIGR5bGFuUmVwZWF0CQlSZXBlYXQKLSAgSGlMaW5rIGR5bGFuU2ltcGxlRGVmcwlLZXl3b3JkCi0gIEhpTGluayBkeWxhblN0YXRlbWVudAkJTWFjcm8KLSAgSGlMaW5rIGR5bGFuU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIGR5bGFuVmFyaWFibGUJCUlkZW50aWZpZXIKK0hpTGluayBkeWxhbkJsb2NrCQlQcmVQcm9jCitIaUxpbmsgZHlsYW5Cb29sZWFuCQlCb29sZWFuCitIaUxpbmsgZHlsYW5DaGFyYWN0ZXIJCUNoYXJhY3RlcgorSGlMaW5rIGR5bGFuQ2xhc3MJCVN0cnVjdHVyZQorSGlMaW5rIGR5bGFuQ2xhc3NNb2RzCQlTdG9yYWdlQ2xhc3MKK0hpTGluayBkeWxhbkNvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBkeWxhbkNvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCitIaUxpbmsgZHlsYW5Db25zdGFudAkJQ29uc3RhbnQKK0hpTGluayBkeWxhbkV4Y2VwdGlvbgkJRXhjZXB0aW9uCitIaUxpbmsgZHlsYW5IZWFkZXIJCU1hY3JvCitIaUxpbmsgZHlsYW5JbXBvcnQJCUluY2x1ZGUKK0hpTGluayBkeWxhbkxhYmVsCQlMYWJlbAorSGlMaW5rIGR5bGFuTWlzY01vZHMJCVN0b3JhZ2VDbGFzcworSGlMaW5rIGR5bGFuTnVtYmVyCQlOdW1iZXIKK0hpTGluayBkeWxhbk90aGVyCQlLZXl3b3JkCitIaUxpbmsgZHlsYW5PcGVyYXRvcgkJT3BlcmF0b3IKK0hpTGluayBkeWxhblBhcmFtRGVmcwkJS2V5d29yZAorSGlMaW5rIGR5bGFuUHJlY29uZGl0CQlQcmVDb25kaXQKK0hpTGluayBkeWxhblJlcGVhdAkJUmVwZWF0CitIaUxpbmsgZHlsYW5TaW1wbGVEZWZzCUtleXdvcmQKK0hpTGluayBkeWxhblN0YXRlbWVudAkJTWFjcm8KK0hpTGluayBkeWxhblN0cmluZwkJU3RyaW5nCitIaUxpbmsgZHlsYW5WYXJpYWJsZQkJSWRlbnRpZmllcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZHlsYW4iCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2R5bGFuaW50ci52aW0gYi9ydW50aW1lL3N5bnRheC9keWxhbmludHIudmltCmluZGV4IDExZWY4MTYuLmFhZjJkNzQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2R5bGFuaW50ci52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZHlsYW5pbnRyLnZpbQpAQCAtNCwxMSArNCw4IEBACiAiIExhc3QgQ2hhbmdlOglGcmkgU2VwIDI5IDEzOjUzOjI3IFBEVCAyMDAwCiAiCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0yNiwyNiArMjMsMTggQEAKICJzeW4ga2V5d29yZCBpbnRyTW9kcyBwb2ludGVyIHN0cnVjdAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9keWxhbl9pbnRyX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2R5bGFuX2ludHJfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBkeWxhbmludHJJbmZvCQlTcGVjaWFsCi0gIEhpTGluayBkeWxhbmludHJJbnRlcmZhY2UJT3BlcmF0b3IKLSAgSGlMaW5rIGR5bGFuaW50ck1vZHMJCVR5cGUKLSAgSGlMaW5rIGR5bGFuaW50ckNsYXNzCQlTdG9yYWdlQ2xhc3MKLSAgSGlMaW5rIGR5bGFuaW50clR5cGUJCVR5cGUKLSAgSGlMaW5rIGR5bGFuaW50ckluY2x1ZGVkCVN0cmluZwotICBIaUxpbmsgZHlsYW5pbnRySW5jbHVkZQlJbmNsdWRlCitIaUxpbmsgZHlsYW5pbnRySW5mbwkJU3BlY2lhbAorSGlMaW5rIGR5bGFuaW50ckludGVyZmFjZQlPcGVyYXRvcgorSGlMaW5rIGR5bGFuaW50ck1vZHMJCVR5cGUKK0hpTGluayBkeWxhbmludHJDbGFzcwkJU3RvcmFnZUNsYXNzCitIaUxpbmsgZHlsYW5pbnRyVHlwZQkJVHlwZQorSGlMaW5rIGR5bGFuaW50ckluY2x1ZGVkCVN0cmluZworSGlMaW5rIGR5bGFuaW50ckluY2x1ZGUJSW5jbHVkZQogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZHlsYW5pbnRyIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9keWxhbmxpZC52aW0gYi9ydW50aW1lL3N5bnRheC9keWxhbmxpZC52aW0KaW5kZXggZWM3YjQwMS4uYzdkMjY2NCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZHlsYW5saWQudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2R5bGFubGlkLnZpbQpAQCAtNSwxMSArNSw4IEBACiAiIExhc3QgQ2hhbmdlOglGcmkgU2VwIDI5IDEzOjUwOjIwIFBEVCAyMDAwCiAiCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0yMSwyMSArMTgsMTMgQEAKIHN5biBzeW5jCWxpbmVzPTUwCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2R5bGFuX2xpZF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9keWxhbl9saWRfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBkeWxhbmxpZEluZm8JCVR5cGUKLSAgSGlMaW5rIGR5bGFubGlkRW50cnkJCVN0cmluZworSGlMaW5rIGR5bGFubGlkSW5mbwkJVHlwZQorSGlMaW5rIGR5bGFubGlkRW50cnkJCVN0cmluZwogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZHlsYW5saWQiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2VjZC52aW0gYi9ydW50aW1lL3N5bnRheC9lY2QudmltCmluZGV4IGZmZjdhNGIuLjcyOGNmMjggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2VjZC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZWNkLnZpbQpAQCAtOCwxMCArOCw4IEBACiAiIFRoaXMgc3ludGF4IGZpbGUgd2FzIGRlcml2ZWQgZnJvbSBhcGFjaGVzdHlsZS52aW0KICIgYnkgQ2hyaXN0aWFuIEhhbW1lcnMgPGNoQHdlc3RlbmQuY29tPgogCi0iIFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMzEsMjYgKzI5LDE4IEBACiBzeW4gbWF0Y2ggIGVjZFRhZ0Vycm9yCWNvbnRhaW5lZCAiW14+XTwibXM9cysxCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2VjZF9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9lY2Rfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBlY2RDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIGVjZEF0dHIJVHlwZQotICBIaUxpbmsgZWNkQXR0ck4JU3RhdGVtZW50Ci0gIEhpTGluayBlY2RBdHRyVglWYWx1ZQotICBIaUxpbmsgZWNkVGFnCQlGdW5jdGlvbgotICBIaUxpbmsgZWNkVGFnTglTdGF0ZW1lbnQKLSAgSGlMaW5rIGVjZFRhZ0Vycm9yCUVycm9yCitIaUxpbmsgZWNkQ29tbWVudAlDb21tZW50CitIaUxpbmsgZWNkQXR0cglUeXBlCitIaUxpbmsgZWNkQXR0ck4JU3RhdGVtZW50CitIaUxpbmsgZWNkQXR0clYJVmFsdWUKK0hpTGluayBlY2RUYWcJCUZ1bmN0aW9uCitIaUxpbmsgZWNkVGFnTglTdGF0ZW1lbnQKK0hpTGluayBlY2RUYWdFcnJvcglFcnJvcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZWNkIgogIiB2aW06IHRzPTgKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2VkaWYudmltIGIvcnVudGltZS9zeW50YXgvZWRpZi52aW0KaW5kZXggMGMxNzgzNC4uMjFjN2VjNyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZWRpZi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZWRpZi52aW0KQEAgLTgsMTggKzgsMTIgQEAKICIgICBJRUMgNjE2OTAtMSAoRURJRiBWZXJzaW9uIDMgMCAwKQogIiAgIElFQyA2MTY5MC0yIChFRElGIFZlcnNpb24gNCAwIDApCiAKLSIgUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCi1pZiB2ZXJzaW9uID49IDYwMAotIHNldGxvY2FsIGlza2V5d29yZD00OC01NywtLCssQS1aLGEteixfLCYKLWVsc2UKLSBzZXQgaXNrZXl3b3JkPUEtWixhLXosXywmCi1lbmRpZgorc2V0bG9jYWwgaXNrZXl3b3JkPTQ4LTU3LC0sKyxBLVosYS16LF8sJgogCiBzeW4gcmVnaW9uCWVkaWZMaXN0CW1hdGNoZ3JvdXA9RGVsaW1pdGVyIHN0YXJ0PSIoIiBlbmQ9IikiIGNvbnRhaW5zPWVkaWZMaXN0LGVkaWZLZXl3b3JkLGVkaWZTdHJpbmcsZWRpZk51bWJlcgogCkBAIC0zNywyOCArMzEsMTcgQEAKIHN5biBtYXRjaCAgICAgICBlZGlmRXJyb3IgICAgICAgIikiCiAKICIgc3luY2hyb25pemF0aW9uCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBzeW5jIG1heGxpbmVzPTI1MAotZWxzZQotICBzeW50YXggc3luYyBmcm9tc3RhcnQKLWVuZGlmCitzeW50YXggc3luYyBmcm9tc3RhcnQKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2VkaWZfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfZWRpZl9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGVkaWZJblN0cmluZwkJU3BlY2lhbENoYXIKLSAgSGlMaW5rIGVkaWZLZXl3b3JkCQlLZXl3b3JkCi0gIEhpTGluayBlZGlmTnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIGVkaWZJblN0cmluZ0Vycm9yCWVkaWZFcnJvcgotICBIaUxpbmsgZWRpZkVycm9yCQlFcnJvcgotICBIaUxpbmsgZWRpZlN0cmluZwkJU3RyaW5nCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorSGlMaW5rIGVkaWZJblN0cmluZwkJU3BlY2lhbENoYXIKK0hpTGluayBlZGlmS2V5d29yZAkJS2V5d29yZAorSGlMaW5rIGVkaWZOdW1iZXIJCU51bWJlcgorSGlMaW5rIGVkaWZJblN0cmluZ0Vycm9yCWVkaWZFcnJvcgorSGlMaW5rIGVkaWZFcnJvcgkJRXJyb3IKK0hpTGluayBlZGlmU3RyaW5nCQlTdHJpbmcKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImVkaWYiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9laWZmZWwudmltIGIvcnVudGltZS9zeW50YXgvZWlmZmVsLnZpbQppbmRleCBhOTFmODVkLi4wZWU1ZWEwIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9laWZmZWwudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2VpZmZlbC52aW0KQEAgLTUsMTEgKzUsOCBAQAogIiBDb250cmlidXRpb25zIGZyb206IFRoaWxvIFNpeAogIiAKICIgVVJMOiBodHRwczovL2dpdGh1Yi5jb20vZWlmZmVsaHViL3ZpbS1laWZmZWwKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xNDEsNjggKzEzOCw2MCBAQAogc3luIHN5bmMgbGluZXM9NDAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfZWlmZmVsX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2VpZmZlbF9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGVpZmZlbEtleXdvcmQJCVN0YXRlbWVudAotICBIaUxpbmsgZWlmZmVsUHJvcGVydHkJCVN0YXRlbWVudAotICBIaUxpbmsgZWlmZmVsSW5oZXJpdENsYXVzZQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGVpZmZlbFN0YXRlbWVudAlTdGF0ZW1lbnQKLSAgSGlMaW5rIGVpZmZlbERlY2xhcmF0aW9uCVN0YXRlbWVudAotICBIaUxpbmsgZWlmZmVsQXNzZXJ0aW9uCVN0YXRlbWVudAotICBIaUxpbmsgZWlmZmVsRGVidWcJCVN0YXRlbWVudAotICBIaUxpbmsgZWlmZmVsRXhjZXB0aW9uCVN0YXRlbWVudAotICBIaUxpbmsgZWlmZmVsR2VuZXJpY0NyZWF0ZQlTdGF0ZW1lbnQKK0hpTGluayBlaWZmZWxLZXl3b3JkCQlTdGF0ZW1lbnQKK0hpTGluayBlaWZmZWxQcm9wZXJ0eQkJU3RhdGVtZW50CitIaUxpbmsgZWlmZmVsSW5oZXJpdENsYXVzZQlTdGF0ZW1lbnQKK0hpTGluayBlaWZmZWxTdGF0ZW1lbnQJU3RhdGVtZW50CitIaUxpbmsgZWlmZmVsRGVjbGFyYXRpb24JU3RhdGVtZW50CitIaUxpbmsgZWlmZmVsQXNzZXJ0aW9uCVN0YXRlbWVudAorSGlMaW5rIGVpZmZlbERlYnVnCQlTdGF0ZW1lbnQKK0hpTGluayBlaWZmZWxFeGNlcHRpb24JU3RhdGVtZW50CitIaUxpbmsgZWlmZmVsR2VuZXJpY0NyZWF0ZQlTdGF0ZW1lbnQKIAotICBIaUxpbmsgZWlmZmVsQWdlbnQJCVN0YXRlbWVudAotICBIaUxpbmsgZWlmZmVsQ29udmVydAkJU3RhdGVtZW50CitIaUxpbmsgZWlmZmVsQWdlbnQJCVN0YXRlbWVudAorSGlMaW5rIGVpZmZlbENvbnZlcnQJCVN0YXRlbWVudAogCi0gIEhpTGluayBlaWZmZWxUb3BTdHJ1Y3QJUHJlUHJvYworSGlMaW5rIGVpZmZlbFRvcFN0cnVjdAlQcmVQcm9jCiAKLSAgSGlMaW5rIGVpZmZlbEFsbAkJU3BlY2lhbAotICBIaUxpbmsgZWlmZmVsQW5jaG9yZWQJCVNwZWNpYWwKLSAgSGlMaW5rIGVpZmZlbEJpdFR5cGUJCVNwZWNpYWwKK0hpTGluayBlaWZmZWxBbGwJCVNwZWNpYWwKK0hpTGluayBlaWZmZWxBbmNob3JlZAkJU3BlY2lhbAorSGlMaW5rIGVpZmZlbEJpdFR5cGUJCVNwZWNpYWwKIAogCi0gIEhpTGluayBlaWZmZWxCb29sCQlCb29sZWFuCi0gIEhpTGluayBlaWZmZWxTdHJpbmcJCVN0cmluZwotICBIaUxpbmsgZWlmZmVsQ2hhcmFjdGVyCUNoYXJhY3RlcgotICBIaUxpbmsgZWlmZmVsQ2xhc3NOYW1lCVR5cGUKLSAgSGlMaW5rIGVpZmZlbE51bWJlcgkJTnVtYmVyCitIaUxpbmsgZWlmZmVsQm9vbAkJQm9vbGVhbgorSGlMaW5rIGVpZmZlbFN0cmluZwkJU3RyaW5nCitIaUxpbmsgZWlmZmVsQ2hhcmFjdGVyCUNoYXJhY3RlcgorSGlMaW5rIGVpZmZlbENsYXNzTmFtZQlUeXBlCitIaUxpbmsgZWlmZmVsTnVtYmVyCQlOdW1iZXIKIAotICBIaUxpbmsgZWlmZmVsU3RyaW5nRXNjYXBlCVNwZWNpYWwKK0hpTGluayBlaWZmZWxTdHJpbmdFc2NhcGUJU3BlY2lhbAogCi0gIEhpTGluayBlaWZmZWxPcGVyYXRvcgkJU3BlY2lhbAotICBIaUxpbmsgZWlmZmVsQXJyYXkJCVNwZWNpYWwKLSAgSGlMaW5rIGVpZmZlbEV4cG9ydAkJU3BlY2lhbAotICBIaUxpbmsgZWlmZmVsQ3JlYXRpb24JCVNwZWNpYWwKLSAgSGlMaW5rIGVpZmZlbEJyYWNrZXRzCQlTcGVjaWFsCi0gIEhpTGluayBlaWZmZWxHZW5lcmljCQlTcGVjaWFsCi0gIEhpTGluayBlaWZmZWxHZW5lcmljRGVjbAlTcGVjaWFsCi0gIEhpTGluayBlaWZmZWxDb25zdHJhaW50CVNwZWNpYWwKLSAgSGlMaW5rIGVpZmZlbENyZWF0ZQkJU3BlY2lhbAorSGlMaW5rIGVpZmZlbE9wZXJhdG9yCQlTcGVjaWFsCitIaUxpbmsgZWlmZmVsQXJyYXkJCVNwZWNpYWwKK0hpTGluayBlaWZmZWxFeHBvcnQJCVNwZWNpYWwKK0hpTGluayBlaWZmZWxDcmVhdGlvbgkJU3BlY2lhbAorSGlMaW5rIGVpZmZlbEJyYWNrZXRzCQlTcGVjaWFsCitIaUxpbmsgZWlmZmVsR2VuZXJpYwkJU3BlY2lhbAorSGlMaW5rIGVpZmZlbEdlbmVyaWNEZWNsCVNwZWNpYWwKK0hpTGluayBlaWZmZWxDb25zdHJhaW50CVNwZWNpYWwKK0hpTGluayBlaWZmZWxDcmVhdGUJCVNwZWNpYWwKIAotICBIaUxpbmsgZWlmZmVsUHJlZGVmaW5lZAlDb25zdGFudAorSGlMaW5rIGVpZmZlbFByZWRlZmluZWQJQ29uc3RhbnQKIAotICBIaUxpbmsgZWlmZmVsQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIGVpZmZlbENvbW1lbnQJCUNvbW1lbnQKIAotICBIaUxpbmsgZWlmZmVsRXJyb3IJCUVycm9yCi0gIEhpTGluayBlaWZmZWxCYWRDb25zdGFudAlFcnJvcgotICBIaUxpbmsgZWlmZmVsU3RyaW5nRXJyb3IJRXJyb3IKLSAgSGlMaW5rIGVpZmZlbFBhcmVuRXJyb3IJRXJyb3IKLSAgSGlMaW5rIGVpZmZlbEJyYWNrZXRFcnJvcglFcnJvcgorSGlMaW5rIGVpZmZlbEVycm9yCQlFcnJvcgorSGlMaW5rIGVpZmZlbEJhZENvbnN0YW50CUVycm9yCitIaUxpbmsgZWlmZmVsU3RyaW5nRXJyb3IJRXJyb3IKK0hpTGluayBlaWZmZWxQYXJlbkVycm9yCUVycm9yCitIaUxpbmsgZWlmZmVsQnJhY2tldEVycm9yCUVycm9yCiAKLSAgSGlMaW5rIGVpZmZlbFRvZG8JCVRvZG8KK0hpTGluayBlaWZmZWxUb2RvCQlUb2RvCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJlaWZmZWwiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2VsZi52aW0gYi9ydW50aW1lL3N5bnRheC9lbGYudmltCmluZGV4IDYyMWUwNjMuLjc4MzVmNTUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2VsZi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZWxmLnZpbQpAQCAtMTAsMTEgKzEwLDggQEAKICIgICAgICBUaGlzIGlzIHRoZSBBcHBsaXggSW5jLiwgTWFjcm8gYW5kIEJ1aWxkZXIgcHJvZ3JhbW1pbmcgbGFuZ3VhZ2UuCiAiICAgICAgSXQgaGFzIG5vdGhpbmcgaW4gY29tbW9uIHdpdGggdGhlIGJpbmFyeSBmb3JtYXQgY2FsbGVkIEVMRi4KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLQlzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAJZmluaXNoCiBlbmRpZgogCkBAIC02MywzMiArNjAsMjQgQEAKIHN5biBtYXRjaCBlbGZQdW5jdCAiWyw7XSIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfZWxmX3N5bl9pbml0cyIpCi0JaWYgdmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX2VsZl9zeW5faW5pdHMgPSAxCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0JZWxzZQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIuCi0gIEhpTGluayBlbGZDb21tZW50IENvbW1lbnQKLSAgSGlMaW5rIGVsZlBQQ29tIEluY2x1ZGUKLSAgSGlMaW5rIGVsZktleXdvcmQgS2V5d29yZAotICBIaUxpbmsgZWxmU3BlY2lhbCBTcGVjaWFsCi0gIEhpTGluayBlbGZFbnZpcm9ubWVudCBTcGVjaWFsCi0gIEhpTGluayBlbGZCcmFjZUVycm9yIEVycm9yCi0gIEhpTGluayBlbGZDb25kaXRpb25hbCBDb25kaXRpb25hbAotICBIaUxpbmsgZWxmTWFjcm8gRnVuY3Rpb24KLSAgSGlMaW5rIGVsZk51bWJlciBOdW1iZXIKLSAgSGlMaW5rIGVsZlN0cmluZyBTdHJpbmcKLSAgSGlMaW5rIGVsZlBhcmVucyBEZWxpbWl0ZXIKLSAgSGlMaW5rIGVsZlB1bmN0IERlbGltaXRlcgorIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyLgorSGlMaW5rIGVsZkNvbW1lbnQgQ29tbWVudAorSGlMaW5rIGVsZlBQQ29tIEluY2x1ZGUKK0hpTGluayBlbGZLZXl3b3JkIEtleXdvcmQKK0hpTGluayBlbGZTcGVjaWFsIFNwZWNpYWwKK0hpTGluayBlbGZFbnZpcm9ubWVudCBTcGVjaWFsCitIaUxpbmsgZWxmQnJhY2VFcnJvciBFcnJvcgorSGlMaW5rIGVsZkNvbmRpdGlvbmFsIENvbmRpdGlvbmFsCitIaUxpbmsgZWxmTWFjcm8gRnVuY3Rpb24KK0hpTGluayBlbGZOdW1iZXIgTnVtYmVyCitIaUxpbmsgZWxmU3RyaW5nIFN0cmluZworSGlMaW5rIGVsZlBhcmVucyBEZWxpbWl0ZXIKK0hpTGluayBlbGZQdW5jdCBEZWxpbWl0ZXIKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImVsZiIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZWxtZmlsdC52aW0gYi9ydW50aW1lL3N5bnRheC9lbG1maWx0LnZpbQppbmRleCBlN2Q1ZGYyLi41ODU4OTQ2IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9lbG1maWx0LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9lbG1maWx0LnZpbQpAQCAtNSwxMSArNSw4IEBACiAiIFZlcnNpb246CTYKICIgVVJMOglodHRwOi8vd3d3LmRyY2hpcC5vcmcvYXN0cm9uYXV0L3ZpbS9pbmRleC5odG1sI1NZTlRBWF9FTE1GSUxUCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0zOCwzMyArMzUsMjUgQEAKIHN5biBtYXRjaAllbG1maWx0U3BhY2VFcnJvcgljb250YWluZWQJIlxzLiokIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9lbG1maWx0X3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2VsbWZpbHRfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBlbG1maWx0QWN0aW9uCVN0YXRlbWVudAotICBIaUxpbmsgZWxtZmlsdEFyZwlTcGVjaWFsCi0gIEhpTGluayBlbG1maWx0Q29tbWVudAlDb21tZW50Ci0gIEhpTGluayBlbG1maWx0Q29uZAlTdGF0ZW1lbnQKLSAgSGlMaW5rIGVsbWZpbHRJZglTdGF0ZW1lbnQKLSAgSGlMaW5rIGVsbWZpbHRNYXRjaAlTcGVjaWFsCi0gIEhpTGluayBlbG1maWx0TWF0Y2hFcnJvcglFcnJvcgotICBIaUxpbmsgZWxtZmlsdE51bWJlcglOdW1iZXIKLSAgSGlMaW5rIGVsbWZpbHRPcGVyCU9wZXJhdG9yCi0gIEhpTGluayBlbG1maWx0T3BlcktleQlUeXBlCi0gIEhpTGluayBlbG1maWx0UGFyZW5FcnJvcglFcnJvcgotICBIaUxpbmsgZWxtZmlsdFNwYWNlRXJyb3IJRXJyb3IKLSAgSGlMaW5rIGVsbWZpbHRTdHJpbmcJU3RyaW5nCi0gIEhpTGluayBlbG1maWx0VGhlbkVycm9yCUVycm9yCitIaUxpbmsgZWxtZmlsdEFjdGlvbglTdGF0ZW1lbnQKK0hpTGluayBlbG1maWx0QXJnCVNwZWNpYWwKK0hpTGluayBlbG1maWx0Q29tbWVudAlDb21tZW50CitIaUxpbmsgZWxtZmlsdENvbmQJU3RhdGVtZW50CitIaUxpbmsgZWxtZmlsdElmCVN0YXRlbWVudAorSGlMaW5rIGVsbWZpbHRNYXRjaAlTcGVjaWFsCitIaUxpbmsgZWxtZmlsdE1hdGNoRXJyb3IJRXJyb3IKK0hpTGluayBlbG1maWx0TnVtYmVyCU51bWJlcgorSGlMaW5rIGVsbWZpbHRPcGVyCU9wZXJhdG9yCitIaUxpbmsgZWxtZmlsdE9wZXJLZXkJVHlwZQorSGlMaW5rIGVsbWZpbHRQYXJlbkVycm9yCUVycm9yCitIaUxpbmsgZWxtZmlsdFNwYWNlRXJyb3IJRXJyb3IKK0hpTGluayBlbG1maWx0U3RyaW5nCVN0cmluZworSGlMaW5rIGVsbWZpbHRUaGVuRXJyb3IJRXJyb3IKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImVsbWZpbHQiCiAiIHZpbTogdHM9OQpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZXJsYW5nLnZpbSBiL3J1bnRpbWUvc3ludGF4L2VybGFuZy52aW0KaW5kZXggMDI1OTdlNy4uYTQ5ZjI0ZSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZXJsYW5nLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9lcmxhbmcudmltCkBAIC0yOCwxMSArMjgsOCBAQAogIgogIiAgICAgc3luIGtleXdvcmQgZXJsYW5nQXR0cmlidXRlIG15YXR0cjEgbXlhdHRyMiBjb250YWluZWQKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICAgZmluaXNoCiBlbmRpZgogCkBAIC00Miw5ICszOSw3IEBACiAiIENhc2Ugc2Vuc2l0aXZlCiBzeW4gY2FzZSBtYXRjaAogCi1pZiB2ZXJzaW9uID49IDYwMAotICBzZXRsb2NhbCBpc2tleXdvcmQrPSQsQC1ACi1lbmRpZgorc2V0bG9jYWwgaXNrZXl3b3JkKz0kLEAtQAogCiAiIENvbW1lbnRzCiBzeW4gbWF0Y2ggZXJsYW5nQ29tbWVudCAgICAgICAgICAgJyUuKiQnIGNvbnRhaW5zPWVybGFuZ0NvbW1lbnRBbm5vdGF0aW9uLGVybGFuZ1RvZG8KQEAgLTE0NywxMTYgKzE0MiwxMDggQEAKIGxldCBzOm9sZF9zdHlsZSA9IChleGlzdHMoImc6ZXJsYW5nX29sZF9zdHlsZV9oaWdobGlnaHQiKSAmJgogICAgICAgICAgICAgICAgICAgXGc6ZXJsYW5nX29sZF9zdHlsZV9oaWdobGlnaHQgPT0gMSkKIAotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfZXJsYW5nX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfZXJsYW5nX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICIgQ29tbWVudHMKLSAgSGlMaW5rIGVybGFuZ0NvbW1lbnQgQ29tbWVudAotICBIaUxpbmsgZXJsYW5nQ29tbWVudEFubm90YXRpb24gU3BlY2lhbAotICBIaUxpbmsgZXJsYW5nVG9kbyBUb2RvCi0gIEhpTGluayBlcmxhbmdTaGViYW5nIENvbW1lbnQKKyIgQ29tbWVudHMKK0hpTGluayBlcmxhbmdDb21tZW50IENvbW1lbnQKK0hpTGluayBlcmxhbmdDb21tZW50QW5ub3RhdGlvbiBTcGVjaWFsCitIaUxpbmsgZXJsYW5nVG9kbyBUb2RvCitIaUxpbmsgZXJsYW5nU2hlYmFuZyBDb21tZW50CiAKLSAgIiBOdW1iZXJzCi0gIEhpTGluayBlcmxhbmdOdW1iZXJJbnRlZ2VyIE51bWJlcgotICBIaUxpbmsgZXJsYW5nTnVtYmVyRmxvYXQgRmxvYXQKKyIgTnVtYmVycworSGlMaW5rIGVybGFuZ051bWJlckludGVnZXIgTnVtYmVyCitIaUxpbmsgZXJsYW5nTnVtYmVyRmxvYXQgRmxvYXQKIAotICAiIFN0cmluZ3MsIGF0b21zLCBjaGFyYWN0ZXJzCi0gIEhpTGluayBlcmxhbmdTdHJpbmcgU3RyaW5nCisiIFN0cmluZ3MsIGF0b21zLCBjaGFyYWN0ZXJzCitIaUxpbmsgZXJsYW5nU3RyaW5nIFN0cmluZwogCi0gIGlmIHM6b2xkX3N0eWxlCi0gICAgSGlMaW5rIGVybGFuZ1F1b3RlZEF0b20gVHlwZQotICBlbHNlCi0gICAgSGlMaW5rIGVybGFuZ1F1b3RlZEF0b20gU3RyaW5nCi0gIGVuZGlmCi0KLSAgSGlMaW5rIGVybGFuZ1N0cmluZ01vZGlmaWVyIFNwZWNpYWwKLSAgSGlMaW5rIGVybGFuZ1F1b3RlZEF0b21Nb2RpZmllciBTcGVjaWFsCi0gIEhpTGluayBlcmxhbmdNb2RpZmllciBTcGVjaWFsCi0KLSAgIiBPcGVyYXRvcnMsIHNlcGFyYXRvcnMKLSAgSGlMaW5rIGVybGFuZ09wZXJhdG9yIE9wZXJhdG9yCi0gIEhpTGluayBlcmxhbmdSaWdodEFycm93IE9wZXJhdG9yCi0gIGlmIHM6b2xkX3N0eWxlCi0gICAgSGlMaW5rIGVybGFuZ0JyYWNrZXQgTm9ybWFsCi0gICAgSGlMaW5rIGVybGFuZ1BpcGUgTm9ybWFsCi0gIGVsc2UKLSAgICBIaUxpbmsgZXJsYW5nQnJhY2tldCBEZWxpbWl0ZXIKLSAgICBIaUxpbmsgZXJsYW5nUGlwZSBEZWxpbWl0ZXIKLSAgZW5kaWYKLQotICAiIEF0b21zLCBmdW5jdGlvbnMsIHZhcmlhYmxlcywgbWFjcm9zCi0gIGlmIHM6b2xkX3N0eWxlCi0gICAgSGlMaW5rIGVybGFuZ0F0b20gTm9ybWFsCi0gICAgSGlMaW5rIGVybGFuZ0xvY2FsRnVuY0NhbGwgTm9ybWFsCi0gICAgSGlMaW5rIGVybGFuZ0xvY2FsRnVuY1JlZiBOb3JtYWwKLSAgICBIaUxpbmsgZXJsYW5nR2xvYmFsRnVuY0NhbGwgRnVuY3Rpb24KLSAgICBIaUxpbmsgZXJsYW5nR2xvYmFsRnVuY1JlZiBGdW5jdGlvbgotICAgIEhpTGluayBlcmxhbmdWYXJpYWJsZSBOb3JtYWwKLSAgICBIaUxpbmsgZXJsYW5nTWFjcm8gTm9ybWFsCi0gICAgSGlMaW5rIGVybGFuZ1JlY29yZCBOb3JtYWwKLSAgZWxzZQotICAgIEhpTGluayBlcmxhbmdBdG9tIFN0cmluZwotICAgIEhpTGluayBlcmxhbmdMb2NhbEZ1bmNDYWxsIE5vcm1hbAotICAgIEhpTGluayBlcmxhbmdMb2NhbEZ1bmNSZWYgTm9ybWFsCi0gICAgSGlMaW5rIGVybGFuZ0dsb2JhbEZ1bmNDYWxsIE5vcm1hbAotICAgIEhpTGluayBlcmxhbmdHbG9iYWxGdW5jUmVmIE5vcm1hbAotICAgIEhpTGluayBlcmxhbmdWYXJpYWJsZSBJZGVudGlmaWVyCi0gICAgSGlMaW5rIGVybGFuZ01hY3JvIE1hY3JvCi0gICAgSGlMaW5rIGVybGFuZ1JlY29yZCBTdHJ1Y3R1cmUKLSAgZW5kaWYKLQotICAiIEJpdHN0cmluZ3MKLSAgaWYgIXM6b2xkX3N0eWxlCi0gICAgSGlMaW5rIGVybGFuZ0JpdFR5cGUgVHlwZQotICBlbmRpZgotCi0gICIgQ29uc3RhbnRzIGFuZCBEaXJlY3RpdmVzCi0gIGlmIHM6b2xkX3N0eWxlCi0gICAgSGlMaW5rIGVybGFuZ0F0dHJpYnV0ZSBUeXBlCi0gICAgSGlMaW5rIGVybGFuZ01hY3JvRGVmIFR5cGUKLSAgICBIaUxpbmsgZXJsYW5nVW5rbm93bkF0dHJpYnV0ZSBOb3JtYWwKLSAgICBIaUxpbmsgZXJsYW5nSW5jbHVkZSBUeXBlCi0gICAgSGlMaW5rIGVybGFuZ1JlY29yZERlZiBUeXBlCi0gICAgSGlMaW5rIGVybGFuZ0RlZmluZSBUeXBlCi0gICAgSGlMaW5rIGVybGFuZ1ByZUNvbmRpdCBUeXBlCi0gICAgSGlMaW5rIGVybGFuZ1R5cGUgVHlwZQotICBlbHNlCi0gICAgSGlMaW5rIGVybGFuZ0F0dHJpYnV0ZSBLZXl3b3JkCi0gICAgSGlMaW5rIGVybGFuZ01hY3JvRGVmIE1hY3JvCi0gICAgSGlMaW5rIGVybGFuZ1Vua25vd25BdHRyaWJ1dGUgTm9ybWFsCi0gICAgSGlMaW5rIGVybGFuZ0luY2x1ZGUgSW5jbHVkZQotICAgIEhpTGluayBlcmxhbmdSZWNvcmREZWYgS2V5d29yZAotICAgIEhpTGluayBlcmxhbmdEZWZpbmUgRGVmaW5lCi0gICAgSGlMaW5rIGVybGFuZ1ByZUNvbmRpdCBQcmVDb25kaXQKLSAgICBIaUxpbmsgZXJsYW5nVHlwZSBUeXBlCi0gIGVuZGlmCi0KLSAgIiBLZXl3b3JkcwotICBIaUxpbmsgZXJsYW5nS2V5d29yZCBLZXl3b3JkCi0KLSAgIiBCdWlsZC1pbi1mdW5jdGlvbnMgKEJJRnMpCi0gIEhpTGluayBlcmxhbmdCSUYgRnVuY3Rpb24KLQotICBpZiBzOm9sZF9zdHlsZQotICAgIEhpTGluayBlcmxhbmdCb29sZWFuIFN0YXRlbWVudAotICAgIEhpTGluayBlcmxhbmdFeHRyYSBTdGF0ZW1lbnQKLSAgICBIaUxpbmsgZXJsYW5nU2lnbmFsIFN0YXRlbWVudAotICBlbHNlCi0gICAgSGlMaW5rIGVybGFuZ0Jvb2xlYW4gQm9vbGVhbgotICAgIEhpTGluayBlcmxhbmdFeHRyYSBTdGF0ZW1lbnQKLSAgICBIaUxpbmsgZXJsYW5nU2lnbmFsIFN0YXRlbWVudAotICBlbmRpZgotCi0gIGRlbGNvbW1hbmQgSGlMaW5rCitpZiBzOm9sZF9zdHlsZQorSGlMaW5rIGVybGFuZ1F1b3RlZEF0b20gVHlwZQorZWxzZQorSGlMaW5rIGVybGFuZ1F1b3RlZEF0b20gU3RyaW5nCiBlbmRpZgogCitIaUxpbmsgZXJsYW5nU3RyaW5nTW9kaWZpZXIgU3BlY2lhbAorSGlMaW5rIGVybGFuZ1F1b3RlZEF0b21Nb2RpZmllciBTcGVjaWFsCitIaUxpbmsgZXJsYW5nTW9kaWZpZXIgU3BlY2lhbAorCisiIE9wZXJhdG9ycywgc2VwYXJhdG9ycworSGlMaW5rIGVybGFuZ09wZXJhdG9yIE9wZXJhdG9yCitIaUxpbmsgZXJsYW5nUmlnaHRBcnJvdyBPcGVyYXRvcgoraWYgczpvbGRfc3R5bGUKK0hpTGluayBlcmxhbmdCcmFja2V0IE5vcm1hbAorSGlMaW5rIGVybGFuZ1BpcGUgTm9ybWFsCitlbHNlCitIaUxpbmsgZXJsYW5nQnJhY2tldCBEZWxpbWl0ZXIKK0hpTGluayBlcmxhbmdQaXBlIERlbGltaXRlcgorZW5kaWYKKworIiBBdG9tcywgZnVuY3Rpb25zLCB2YXJpYWJsZXMsIG1hY3JvcworaWYgczpvbGRfc3R5bGUKK0hpTGluayBlcmxhbmdBdG9tIE5vcm1hbAorSGlMaW5rIGVybGFuZ0xvY2FsRnVuY0NhbGwgTm9ybWFsCitIaUxpbmsgZXJsYW5nTG9jYWxGdW5jUmVmIE5vcm1hbAorSGlMaW5rIGVybGFuZ0dsb2JhbEZ1bmNDYWxsIEZ1bmN0aW9uCitIaUxpbmsgZXJsYW5nR2xvYmFsRnVuY1JlZiBGdW5jdGlvbgorSGlMaW5rIGVybGFuZ1ZhcmlhYmxlIE5vcm1hbAorSGlMaW5rIGVybGFuZ01hY3JvIE5vcm1hbAorSGlMaW5rIGVybGFuZ1JlY29yZCBOb3JtYWwKK2Vsc2UKK0hpTGluayBlcmxhbmdBdG9tIFN0cmluZworSGlMaW5rIGVybGFuZ0xvY2FsRnVuY0NhbGwgTm9ybWFsCitIaUxpbmsgZXJsYW5nTG9jYWxGdW5jUmVmIE5vcm1hbAorSGlMaW5rIGVybGFuZ0dsb2JhbEZ1bmNDYWxsIE5vcm1hbAorSGlMaW5rIGVybGFuZ0dsb2JhbEZ1bmNSZWYgTm9ybWFsCitIaUxpbmsgZXJsYW5nVmFyaWFibGUgSWRlbnRpZmllcgorSGlMaW5rIGVybGFuZ01hY3JvIE1hY3JvCitIaUxpbmsgZXJsYW5nUmVjb3JkIFN0cnVjdHVyZQorZW5kaWYKKworIiBCaXRzdHJpbmdzCitpZiAhczpvbGRfc3R5bGUKK0hpTGluayBlcmxhbmdCaXRUeXBlIFR5cGUKK2VuZGlmCisKKyIgQ29uc3RhbnRzIGFuZCBEaXJlY3RpdmVzCitpZiBzOm9sZF9zdHlsZQorSGlMaW5rIGVybGFuZ0F0dHJpYnV0ZSBUeXBlCitIaUxpbmsgZXJsYW5nTWFjcm9EZWYgVHlwZQorSGlMaW5rIGVybGFuZ1Vua25vd25BdHRyaWJ1dGUgTm9ybWFsCitIaUxpbmsgZXJsYW5nSW5jbHVkZSBUeXBlCitIaUxpbmsgZXJsYW5nUmVjb3JkRGVmIFR5cGUKK0hpTGluayBlcmxhbmdEZWZpbmUgVHlwZQorSGlMaW5rIGVybGFuZ1ByZUNvbmRpdCBUeXBlCitIaUxpbmsgZXJsYW5nVHlwZSBUeXBlCitlbHNlCitIaUxpbmsgZXJsYW5nQXR0cmlidXRlIEtleXdvcmQKK0hpTGluayBlcmxhbmdNYWNyb0RlZiBNYWNybworSGlMaW5rIGVybGFuZ1Vua25vd25BdHRyaWJ1dGUgTm9ybWFsCitIaUxpbmsgZXJsYW5nSW5jbHVkZSBJbmNsdWRlCitIaUxpbmsgZXJsYW5nUmVjb3JkRGVmIEtleXdvcmQKK0hpTGluayBlcmxhbmdEZWZpbmUgRGVmaW5lCitIaUxpbmsgZXJsYW5nUHJlQ29uZGl0IFByZUNvbmRpdAorSGlMaW5rIGVybGFuZ1R5cGUgVHlwZQorZW5kaWYKKworIiBLZXl3b3JkcworSGlMaW5rIGVybGFuZ0tleXdvcmQgS2V5d29yZAorCisiIEJ1aWxkLWluLWZ1bmN0aW9ucyAoQklGcykKK0hpTGluayBlcmxhbmdCSUYgRnVuY3Rpb24KKworaWYgczpvbGRfc3R5bGUKK0hpTGluayBlcmxhbmdCb29sZWFuIFN0YXRlbWVudAorSGlMaW5rIGVybGFuZ0V4dHJhIFN0YXRlbWVudAorSGlMaW5rIGVybGFuZ1NpZ25hbCBTdGF0ZW1lbnQKK2Vsc2UKK0hpTGluayBlcmxhbmdCb29sZWFuIEJvb2xlYW4KK0hpTGluayBlcmxhbmdFeHRyYSBTdGF0ZW1lbnQKK0hpTGluayBlcmxhbmdTaWduYWwgU3RhdGVtZW50CitlbmRpZgorCitkZWxjb21tYW5kIEhpTGluaworCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJlcmxhbmciCiAKIGxldCAmY3BvID0gczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZXJ1YnkudmltIGIvcnVudGltZS9zeW50YXgvZXJ1YnkudmltCmluZGV4IGMyMGIwODYuLjRlMTc1YmMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2VydWJ5LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9lcnVieS52aW0KQEAgLTIyLDcgKzIyLDcgQEAKICAgbGV0IHM6bGluZXMgPSBnZXRsaW5lKDEpLiJcbiIuZ2V0bGluZSgyKS4iXG4iLmdldGxpbmUoMykuIlxuIi5nZXRsaW5lKDQpLiJcbiIuZ2V0bGluZSg1KS4iXG4iLmdldGxpbmUoIiQiKQogICBsZXQgYjplcnVieV9zdWJ0eXBlID0gbWF0Y2hzdHIoczpsaW5lcywnZXJ1Ynlfc3VidHlwZT1cenNcd1wrJykKICAgaWYgYjplcnVieV9zdWJ0eXBlID09ICcnCi0gICAgbGV0IGI6ZXJ1Ynlfc3VidHlwZSA9IG1hdGNoc3RyKHN1YnN0aXR1dGUoZXhwYW5kKCIlOnQiKSwnXGNcJShcLmVyYlx8XC5lcnVieVx8XC5lcnViaXNcKVwrJCcsJycsJycpLCdcLlx6c1x3XCskJykKKyAgICBsZXQgYjplcnVieV9zdWJ0eXBlID0gbWF0Y2hzdHIoc3Vic3RpdHV0ZShleHBhbmQoIiU6dCIpLCdcY1wlKFwuZXJiXHxcLmVydWJ5XHxcLmVydWJpc1wpXCskJywnJywnJyksJ1wuXHpzXHdcK1wlKFx6ZStcd1wrXClcPSQnKQogICBlbmRpZgogICBpZiBiOmVydWJ5X3N1YnR5cGUgPT0gJ3JodG1sJwogICAgIGxldCBiOmVydWJ5X3N1YnR5cGUgPSAnaHRtbCcKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2VzbXRwcmMudmltIGIvcnVudGltZS9zeW50YXgvZXNtdHByYy52aW0KaW5kZXggYjIyYjFhMS4uODFmMDc0YiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZXNtdHByYy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZXNtdHByYy52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglLb3JuZWwgS2llbGN6ZXdza2kgPGtvcm5lbEBnYXpldGEucGw+CiAiIExhc3QgQ2hhbmdlOgkxNiBGZWIgMjAwNQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZXNxbGMudmltIGIvcnVudGltZS9zeW50YXgvZXNxbGMudmltCmluZGV4IDZhZDE2N2EuLmVhMzZkNjYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2VzcWxjLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9lc3FsYy52aW0KQEAgLTMsMjAgKzMsMTMgQEAKICIgTWFpbnRhaW5lcjoJSm9uYXRoYW4gQS4gR2VvcmdlIDxqYWdlb3JnZUB0ZWwuZ3RlLmNvbT4KICIgTGFzdCBDaGFuZ2U6CTIwMDEgTWF5IDA5CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCiAiIFJlYWQgdGhlIEMrKyBzeW50YXggdG8gc3RhcnQgd2l0aAotaWYgdmVyc2lvbiA8IDYwMAotICBzb3VyY2UgPHNmaWxlPjpwOmgvY3BwLnZpbQotZWxzZQotICBydW50aW1lISBzeW50YXgvY3BwLnZpbQotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9jcHAudmltCiAKICIgRVNRTC1DIGV4dGVudGlvbnMKIApAQCAtNTIsMjQgKzQ1LDE2IEBACiBzeW50YXgga2V5d29yZCBlc3FsY1N0YXRlbWVudAl0cnVuY2F0ZSB1cGRhdGUKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfZXNxbGNfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfZXNxbGNfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBlc3FsY09wZXJhdG9yCU9wZXJhdG9yCi0gIEhpTGluayBlc3FsY1N0YXRlbWVudAlTdGF0ZW1lbnQKLSAgSGlMaW5rIGVzcWxjS2V5d29yZAllc3FsY1NwZWNpYWwKLSAgSGlMaW5rIGVzcWxjU3BlY2lhbAlTcGVjaWFsCi0gIEhpTGluayBlc3FsY1ByZVByb2MJUHJlUHJvYworSGlMaW5rIGVzcWxjT3BlcmF0b3IJT3BlcmF0b3IKK0hpTGluayBlc3FsY1N0YXRlbWVudAlTdGF0ZW1lbnQKK0hpTGluayBlc3FsY0tleXdvcmQJZXNxbGNTcGVjaWFsCitIaUxpbmsgZXNxbGNTcGVjaWFsCVNwZWNpYWwKK0hpTGluayBlc3FsY1ByZVByb2MJUHJlUHJvYwogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZXNxbGMiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2VzdGVyZWwudmltIGIvcnVudGltZS9zeW50YXgvZXN0ZXJlbC52aW0KaW5kZXggZDg1M2U3NS4uMDU0MDg0MyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZXN0ZXJlbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZXN0ZXJlbC52aW0KQEAgLTYsMTEgKzYsOCBAQAogIiBMYXN0IENoYW5nZToJCVR1ZSBNYXkgIDYgMTM6Mjk6NTYgQ0VTVCAyMDA4CiAiIFZlcnNpb246CQkJMC44CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC02NSwyNiArNjIsMTkgQEAKIHN5biBtYXRjaCBlc3RlcmVsTm9uZQkJCSJcPGVsc2Vcc1wraWZcPlxzIgogCiAiIENsYXNzIExpbmtpbmcKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9lc3RlcmVsX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2VzdGVyZWxfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0JSGlMaW5rIGVzdGVyZWxTdGF0ZW1lbnQJCVN0YXRlbWVudAotCUhpTGluayBlc3RlcmVsVHlwZQkJCVR5cGUKLQlIaUxpbmsgZXN0ZXJlbENvbW1lbnQJCUNvbW1lbnQKLQlIaUxpbmsgZXN0ZXJlbEJvb2xlYW4JCU51bWJlcgotCUhpTGluayBlc3RlcmVsRXhwcmVzc2lvbnMJTnVtYmVyCi0JSGlMaW5rIGVzdGVyZWxJTwkJCVN0cmluZwotCUhpTGluayBlc3RlcmVsT3BlcmF0b3IJCVR5cGUKLQlIaUxpbmsgZXN0ZXJlbFN5c0NhbGwJCVR5cGUKLQlIaUxpbmsgZXN0ZXJlbEZ1bmN0aW9ucwkJVHlwZQotCUhpTGluayBlc3RlcmVsU3BlY2lhbAkJU3BlY2lhbAorSGlMaW5rIGVzdGVyZWxTdGF0ZW1lbnQJCVN0YXRlbWVudAorSGlMaW5rIGVzdGVyZWxUeXBlCQkJVHlwZQorSGlMaW5rIGVzdGVyZWxDb21tZW50CQlDb21tZW50CitIaUxpbmsgZXN0ZXJlbEJvb2xlYW4JCU51bWJlcgorSGlMaW5rIGVzdGVyZWxFeHByZXNzaW9ucwlOdW1iZXIKK0hpTGluayBlc3RlcmVsSU8JCQlTdHJpbmcKK0hpTGluayBlc3RlcmVsT3BlcmF0b3IJCVR5cGUKK0hpTGluayBlc3RlcmVsU3lzQ2FsbAkJVHlwZQorSGlMaW5rIGVzdGVyZWxGdW5jdGlvbnMJCVR5cGUKK0hpTGluayBlc3RlcmVsU3BlY2lhbAkJU3BlY2lhbAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZXN0ZXJlbCIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2V1cGhvcmlhMy52aW0gYi9ydW50aW1lL3N5bnRheC9ldXBob3JpYTMudmltCmluZGV4IDEyNTRiOTYuLmVjZTE0MDIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2V1cGhvcmlhMy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZXVwaG9yaWEzLnZpbQpAQCAtNSwxMCArNSw4IEBACiAiIFJlbWFyazogICAgICAgRXVwaG9yaWEgaGFzIHR3byBzeW50YXggZmlsZXMsIGV1cGhvcmlhMy52aW0gYW5kIGV1cGhvcmlhNC52aW07IAogIiAgICAgICAgICAgICAgIEZvciBkZXRhaWxzIHNlZSA6aGVscCBmdC1ldXBob3JpYS1zeW50YXgKIAotIiBRdWl0IGlmIGEgKGN1c3RvbSkgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkIChjb21wYXRpYmxlIHdpdGggVmltIDUuOCk6IAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZXVwaG9yaWE0LnZpbSBiL3J1bnRpbWUvc3ludGF4L2V1cGhvcmlhNC52aW0KaW5kZXggNTNmNWNlYS4uNWU2NjhhNyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZXVwaG9yaWE0LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9ldXBob3JpYTQudmltCkBAIC01LDEwICs1LDggQEAKICIgUmVtYXJrOiAgICAgICBFdXBob3JpYSBoYXMgdHdvIHN5bnRheCBmaWxlcywgZXVwaG9yaWEzLnZpbSBhbmQgZXVwaG9yaWE0LnZpbTsgCiAiICAgICAgICAgICAgICAgRm9yIGRldGFpbHMgc2VlIDpoZWxwIGZ0LWV1cGhvcmlhLXN5bnRheAogCi0iIFF1aXQgaWYgYSAoY3VzdG9tKSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQgKGNvbXBhdGlibGUgd2l0aCBWaW0gNS44KTogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9ldmlld3MudmltIGIvcnVudGltZS9zeW50YXgvZXZpZXdzLnZpbQppbmRleCBhYTY1ZmRhLi43ZDAzOWMyIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9ldmlld3MudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2V2aWV3cy52aW0KQEAgLTQsMTkgKzQsMTIgQEAKICIgTGFzdCBDaGFuZ2U6ICAyMDA2IEFwciAzMAogIiBGaWxlbmFtZXM6CSoucHJnCiAiIFVSTDoJaHR0cDovL3Vvc2lzLm1pZi52dS5sdC9+emVtbHlzL3ZpbS1zeW50YXgvZXZpZXdzLnZpbQotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKLWlmIHZlcnNpb24gPj0gNjAwCi0gIHNldGxvY2FsIGlza2V5d29yZD1ALDQ4LTU3LF8sLgotZWxzZQotICBzZXQgaXNrZXl3b3JkPUAsNDgtNTcsXywuCi1lbmRpZgorc2V0bG9jYWwgaXNrZXl3b3JkPUAsNDgtNTcsXywuCiAKIHN5biBjYXNlIG1hdGNoCiAKQEAgLTY5LDM1ICs2MiwyNyBAQAogc3luIG1hdGNoIGVQYXJlbkVycm9yIC9bXF19XS8gY29udGFpbmVkCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3Jfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfcl9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgotICBIaUxpbmsgZUNvbW1lbnQgICAgIENvbW1lbnQKLSAgSGlMaW5rIGVDb25zdGFudCAgICBJZGVudGlmaWVyCi0gIEhpTGluayBlU3RyaW5nSWQgICAgSWRlbnRpZmllcgotICBIaUxpbmsgZUNvbW1hbmQgICAgIFR5cGUKLSAgSGlMaW5rIGVTdHJpbmcgICAgICBTdHJpbmcKLSAgSGlMaW5rIGVOdW1iZXIgICAgICBOdW1iZXIKLSAgSGlMaW5rIGVCb29sZWFuICAgICBCb29sZWFuCi0gIEhpTGluayBlRmxvYXQgICAgICAgRmxvYXQKLSAgSGlMaW5rIGVDb25kaXRpb25hbCBDb25kaXRpb25hbAotICBIaUxpbmsgZVByb2dMYW5nICAgIFN0YXRlbWVudAotICBIaUxpbmsgZU9WUAkgICAgICBTdGF0ZW1lbnQKLSAgSGlMaW5rIGVTdGRDbWQgICAgICBTdGF0ZW1lbnQKLSAgSGlMaW5rIGVJZGVudGlmaWVyICBOb3JtYWwKLSAgSGlMaW5rIGVEZWxpbWl0ZXIgICBEZWxpbWl0ZXIKLSAgSGlMaW5rIGVFcnJvciAgICAgICBFcnJvcgotICBIaUxpbmsgZUJyYWNlRXJyb3IgIEVycm9yCi0gIEhpTGluayBlQ3VybHlFcnJvciAgRXJyb3IKLSAgSGlMaW5rIGVQYXJlbkVycm9yICBFcnJvcgotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgorSGlMaW5rIGVDb21tZW50ICAgICBDb21tZW50CitIaUxpbmsgZUNvbnN0YW50ICAgIElkZW50aWZpZXIKK0hpTGluayBlU3RyaW5nSWQgICAgSWRlbnRpZmllcgorSGlMaW5rIGVDb21tYW5kICAgICBUeXBlCitIaUxpbmsgZVN0cmluZyAgICAgIFN0cmluZworSGlMaW5rIGVOdW1iZXIgICAgICBOdW1iZXIKK0hpTGluayBlQm9vbGVhbiAgICAgQm9vbGVhbgorSGlMaW5rIGVGbG9hdCAgICAgICBGbG9hdAorSGlMaW5rIGVDb25kaXRpb25hbCBDb25kaXRpb25hbAorSGlMaW5rIGVQcm9nTGFuZyAgICBTdGF0ZW1lbnQKK0hpTGluayBlT1ZQCSAgICAgIFN0YXRlbWVudAorSGlMaW5rIGVTdGRDbWQgICAgICBTdGF0ZW1lbnQKK0hpTGluayBlSWRlbnRpZmllciAgTm9ybWFsCitIaUxpbmsgZURlbGltaXRlciAgIERlbGltaXRlcgorSGlMaW5rIGVFcnJvciAgICAgICBFcnJvcgorSGlMaW5rIGVCcmFjZUVycm9yICBFcnJvcgorSGlMaW5rIGVDdXJseUVycm9yICBFcnJvcgorSGlMaW5rIGVQYXJlbkVycm9yICBFcnJvcgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXg9ImV2aWV3cyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZXhpbS52aW0gYi9ydW50aW1lL3N5bnRheC9leGltLnZpbQppbmRleCBmZjgwNjZmLi5mOTAxN2FjIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9leGltLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9leGltLnZpbQpAQCAtNiwxMiArNiw5IEBACiAiIFVSTDogaHR0cDovL3RyaWZpYy5hdGguY3gvRnRwL3ZpbS9zeW50YXgvZXhpbS52aW0KIAogIiBTZXR1cAotaWYgdmVyc2lvbiA+PSA2MDAKLQlpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQotCQlmaW5pc2gKLQllbmRpZgotZWxzZQotCXN5bnRheCBjbGVhcgorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisJZmluaXNoCiBlbmRpZgogCiBzeW4gY2FzZSBtYXRjaApAQCAtOTEsMjcgKzg4LDIwIEBACiBzeW4ga2V5d29yZCBleGltS2V5d29yZCBzZXJ2ZXJfc2VjcmV0IGNsaWVudF9uYW1lIGNsaWVudF9zZWNyZXQKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfZXhpbV9zeW50YXhfaW5pdHMiKQotCWlmIHZlcnNpb24gPCA1MDgKLQkJbGV0IGRpZF9leGltX3N5bnRheF9pbml0cyA9IDEKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLQllbHNlCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotCWVuZGlmCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotCUhpTGluayBleGltQ29tbWVudCBDb21tZW50Ci0JSGlMaW5rIGV4aW1GaXhtZSBUb2RvCi0JSGlMaW5rIGV4aW1FbmQgS2V5d29yZAotCUhpTGluayBleGltTnVtYmVyIE51bWJlcgotCUhpTGluayBleGltRHJpdmVyTmFtZSBDb25zdGFudAotCUhpTGluayBleGltQ29uc3RhbnQgQ29uc3RhbnQKLQlIaUxpbmsgZXhpbVRpbWUgQ29uc3RhbnQKLQlIaUxpbmsgZXhpbUtleXdvcmQgVHlwZQotCUhpTGluayBleGltU3BlY2lhbENoYXIgU3BlY2lhbAotCUhpTGluayBleGltTWFjcm9OYW1lIFByZXByb2MKLQlIaUxpbmsgZXhpbVRyYW5zcG9ydCBJZGVudGlmaWVyCitIaUxpbmsgZXhpbUNvbW1lbnQgQ29tbWVudAorSGlMaW5rIGV4aW1GaXhtZSBUb2RvCitIaUxpbmsgZXhpbUVuZCBLZXl3b3JkCitIaUxpbmsgZXhpbU51bWJlciBOdW1iZXIKK0hpTGluayBleGltRHJpdmVyTmFtZSBDb25zdGFudAorSGlMaW5rIGV4aW1Db25zdGFudCBDb25zdGFudAorSGlMaW5rIGV4aW1UaW1lIENvbnN0YW50CitIaUxpbmsgZXhpbUtleXdvcmQgVHlwZQorSGlMaW5rIGV4aW1TcGVjaWFsQ2hhciBTcGVjaWFsCitIaUxpbmsgZXhpbU1hY3JvTmFtZSBQcmVwcm9jCitIaUxpbmsgZXhpbVRyYW5zcG9ydCBJZGVudGlmaWVyCiAKLQlkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImV4aW0iCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9leHBlY3QudmltIGIvcnVudGltZS9zeW50YXgvZXhwZWN0LnZpbQppbmRleCA2ZmY3ZDQxLi40ZjA1MjU5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9leHBlY3QudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2V4cGVjdC52aW0KQEAgLTQsMTEgKzQsOCBAQAogIiBMYXN0IENoYW5nZToJMjAxMiBKdW4gMDEKICIgCQkoRG9taW5pcXVlIFBlbGxlIGFkZGVkIEBTcGVsbCkKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTgxLDM1ICs3OCwyNyBAQAogc3luIG1hdGNoICAgZXhwZWN0U2hhcnBCYW5nCSJcJV4jIS4qIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9leHBlY3Rfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfZXhwZWN0X3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgZXhwZWN0U2hhcnBCYW5nCVByZVByb2MKLSAgSGlMaW5rIGV4cGVjdFZhcmlhYmxlcwlTcGVjaWFsCi0gIEhpTGluayBleHBlY3RDb21tYW5kCQlGdW5jdGlvbgotICBIaUxpbmsgZXhwZWN0U3RhdGVtZW50CVN0YXRlbWVudAotICBIaUxpbmsgZXhwZWN0Q29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIGV4cGVjdFJlcGVhdAkJUmVwZWF0Ci0gIEhpTGluayBleHBlY3RFeHBlY3RPcHRzCUtleXdvcmQKLSAgSGlMaW5rIGV4cGVjdE91dFZhcgkJU3BlY2lhbAotICBIaUxpbmsgZXhwZWN0U3BlY2lhbAkJU3BlY2lhbAotICBIaUxpbmsgZXhwZWN0TnVtYmVyCQlOdW1iZXIKK0hpTGluayBleHBlY3RTaGFycEJhbmcJUHJlUHJvYworSGlMaW5rIGV4cGVjdFZhcmlhYmxlcwlTcGVjaWFsCitIaUxpbmsgZXhwZWN0Q29tbWFuZAkJRnVuY3Rpb24KK0hpTGluayBleHBlY3RTdGF0ZW1lbnQJU3RhdGVtZW50CitIaUxpbmsgZXhwZWN0Q29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKK0hpTGluayBleHBlY3RSZXBlYXQJCVJlcGVhdAorSGlMaW5rIGV4cGVjdEV4cGVjdE9wdHMJS2V5d29yZAorSGlMaW5rIGV4cGVjdE91dFZhcgkJU3BlY2lhbAorSGlMaW5rIGV4cGVjdFNwZWNpYWwJCVNwZWNpYWwKK0hpTGluayBleHBlY3ROdW1iZXIJCU51bWJlcgogCi0gIEhpTGluayBleHBlY3RTdHJpbmcJCVN0cmluZworSGlMaW5rIGV4cGVjdFN0cmluZwkJU3RyaW5nCiAKLSAgSGlMaW5rIGV4cGVjdENvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGV4cGVjdFRvZG8JCVRvZG8KLSAgIkhpTGluayBleHBlY3RJZGVudGlmaWVyCUlkZW50aWZpZXIKK0hpTGluayBleHBlY3RDb21tZW50CQlDb21tZW50CitIaUxpbmsgZXhwZWN0VG9kbwkJVG9kbworIkhpTGluayBleHBlY3RJZGVudGlmaWVyCUlkZW50aWZpZXIKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImV4cGVjdCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZXhwb3J0cy52aW0gYi9ydW50aW1lL3N5bnRheC9leHBvcnRzLnZpbQppbmRleCBmNjk1ZGM4Li5hYTZiNzZhIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9leHBvcnRzLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9leHBvcnRzLnZpbQpAQCAtNiwxMSArNiw4IEBACiAiIE5vdGVzOgkJVGhpcyBmaWxlIGluY2x1ZGVzIGJvdGggU3lzViBhbmQgQlNEICdpc21zCiAiIFVSTDoJaHR0cDovL3d3dy5kcmNoaXAub3JnL2FzdHJvbmF1dC92aW0vaW5kZXguaHRtbCNTWU5UQVhfRVhQT1JUUwogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMzksMzIgKzM2LDI0IEBACiBzeW4gbWF0Y2ggZXhwb3J0c0NvbW1lbnQJIl5ccyojLiokIgljb250YWlucz1AU3BlbGwKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfZXhwb3J0c19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9leHBvcnRzX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgZXhwb3J0c0tleU9wdFNldAlleHBvcnRzS2V5U2V0dGluZ3MKLSAgSGlMaW5rIGV4cG9ydHNPcHRTZXQJZXhwb3J0c1NldHRpbmdzCitIaUxpbmsgZXhwb3J0c0tleU9wdFNldAlleHBvcnRzS2V5U2V0dGluZ3MKK0hpTGluayBleHBvcnRzT3B0U2V0CWV4cG9ydHNTZXR0aW5ncwogCi0gIEhpTGluayBleHBvcnRzQ29tbWVudAlDb21tZW50Ci0gIEhpTGluayBleHBvcnRzS2V5T3B0aW9ucwlUeXBlCi0gIEhpTGluayBleHBvcnRzS2V5U2V0dGluZ3MJS2V5d29yZAotICBIaUxpbmsgZXhwb3J0c09wdGlvbnMJQ29uc3RhbnQKLSAgSGlMaW5rIGV4cG9ydHNTZXBhcmF0b3IJQ29uc3RhbnQKLSAgSGlMaW5rIGV4cG9ydHNTZXR0aW5ncwlDb25zdGFudAorSGlMaW5rIGV4cG9ydHNDb21tZW50CUNvbW1lbnQKK0hpTGluayBleHBvcnRzS2V5T3B0aW9ucwlUeXBlCitIaUxpbmsgZXhwb3J0c0tleVNldHRpbmdzCUtleXdvcmQKK0hpTGluayBleHBvcnRzT3B0aW9ucwlDb25zdGFudAorSGlMaW5rIGV4cG9ydHNTZXBhcmF0b3IJQ29uc3RhbnQKK0hpTGluayBleHBvcnRzU2V0dGluZ3MJQ29uc3RhbnQKIAotICBIaUxpbmsgZXhwb3J0c09wdEVycm9yCUVycm9yCi0gIEhpTGluayBleHBvcnRzT3B0U2V0RXJyb3IJRXJyb3IKLSAgSGlMaW5rIGV4cG9ydHNTZXRFcnJvcglFcnJvcgorSGlMaW5rIGV4cG9ydHNPcHRFcnJvcglFcnJvcgorSGlMaW5rIGV4cG9ydHNPcHRTZXRFcnJvcglFcnJvcgorSGlMaW5rIGV4cG9ydHNTZXRFcnJvcglFcnJvcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZXhwb3J0cyIKICIgdmltOiB0cz0xMApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZmFzbS52aW0gYi9ydW50aW1lL3N5bnRheC9mYXNtLnZpbQppbmRleCA2OTZlMDViLi4xNzJiYTdjIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9mYXNtLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9mYXNtLnZpbQpAQCAtNiw5ICs2LDggQEAKICIgRkFTTSBIb21lOglodHRwOi8vZmxhdGFzc2VtYmxlci5uZXQvCiAiIEZBU00gVmVyc2lvbjogMS41NgogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9mZGNjLnZpbSBiL3J1bnRpbWUvc3ludGF4L2ZkY2MudmltCmluZGV4IDM4NzE3ZWIuLjQyMmZkMzEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2ZkY2MudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2ZkY2MudmltCkBAIC00LDExICs0LDggQEAKICIgTGFzdCBDaGFuZ2U6CTIwMDQgTWF5IDE2CiAiIFJlbWFya3M6ICAgICAgRkRDQyAoRm9ybWFsIERlZmluaXRpb25zIG9mIEN1bHR1cmFsIENvbnZlbnRpb25zKSBzZWUgSVNPIFRSIDE0NjUyCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC01OCw1NiArNTUsNDggQEAKIHN5biByZWdpb24gZmRjY0JsYW5rIG1hdGNoZ3JvdXA9ZmRjY0xDQWRkcmVzcyBzdGFydD0vXkxDX0FERFJFU1MkLyBlbmQ9L15FTkQgTENfQUREUkVTUyQvIGNvbnRhaW5zPWZkY2NLZXl3b3JkQWRkcmVzcyxmZGNjU3RyaW5nLGZkY2NDb21tZW50LGZkY2NOdW1iZXIKIAogCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9mZGNjX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2ZkY2Nfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBmZGNjQmxhbmsJCSBCbGFuaworSGlMaW5rIGZkY2NCbGFuawkJIEJsYW5rCiAKLSAgSGlMaW5rIGZkY2NUb2RvCQkgVG9kbwotICBIaUxpbmsgZmRjY0NvbW1lbnQJCSBDb21tZW50Ci0gIEhpTGluayBmZGNjVmFyaWFibGUJCSBUeXBlCitIaUxpbmsgZmRjY1RvZG8JCSBUb2RvCitIaUxpbmsgZmRjY0NvbW1lbnQJCSBDb21tZW50CitIaUxpbmsgZmRjY1ZhcmlhYmxlCQkgVHlwZQogCi0gIEhpTGluayBmZGNjTENJZGVudGlmaWNhdGlvbgkgU3RhdGVtZW50Ci0gIEhpTGluayBmZGNjTENDdHlwZQkJIFN0YXRlbWVudAotICBIaUxpbmsgZmRjY0xDQ29sbGF0ZQkJIFN0YXRlbWVudAotICBIaUxpbmsgZmRjY0xDTW9uZXRhcnkJCSBTdGF0ZW1lbnQKLSAgSGlMaW5rIGZkY2NMQ051bWVyaWMJCSBTdGF0ZW1lbnQKLSAgSGlMaW5rIGZkY2NMQ1RpbWUJCSBTdGF0ZW1lbnQKLSAgSGlMaW5rIGZkY2NMQ01lc3NhZ2VzCQkgU3RhdGVtZW50Ci0gIEhpTGluayBmZGNjTENQYXBlcgkJIFN0YXRlbWVudAotICBIaUxpbmsgZmRjY0xDVGVsZXBob25lCSBTdGF0ZW1lbnQKLSAgSGlMaW5rIGZkY2NMQ01lYXN1cmVtZW50CSBTdGF0ZW1lbnQKLSAgSGlMaW5rIGZkY2NMQ05hbWUJCSBTdGF0ZW1lbnQKLSAgSGlMaW5rIGZkY2NMQ0FkZHJlc3MJCSBTdGF0ZW1lbnQKK0hpTGluayBmZGNjTENJZGVudGlmaWNhdGlvbgkgU3RhdGVtZW50CitIaUxpbmsgZmRjY0xDQ3R5cGUJCSBTdGF0ZW1lbnQKK0hpTGluayBmZGNjTENDb2xsYXRlCQkgU3RhdGVtZW50CitIaUxpbmsgZmRjY0xDTW9uZXRhcnkJCSBTdGF0ZW1lbnQKK0hpTGluayBmZGNjTENOdW1lcmljCQkgU3RhdGVtZW50CitIaUxpbmsgZmRjY0xDVGltZQkJIFN0YXRlbWVudAorSGlMaW5rIGZkY2NMQ01lc3NhZ2VzCQkgU3RhdGVtZW50CitIaUxpbmsgZmRjY0xDUGFwZXIJCSBTdGF0ZW1lbnQKK0hpTGluayBmZGNjTENUZWxlcGhvbmUJIFN0YXRlbWVudAorSGlMaW5rIGZkY2NMQ01lYXN1cmVtZW50CSBTdGF0ZW1lbnQKK0hpTGluayBmZGNjTENOYW1lCQkgU3RhdGVtZW50CitIaUxpbmsgZmRjY0xDQWRkcmVzcwkJIFN0YXRlbWVudAogCi0gIEhpTGluayBmZGNjVW5pY29kZUluVmFsaWQJIEVycm9yCi0gIEhpTGluayBmZGNjVW5pY29kZVZhbGlkCSBTdHJpbmcKLSAgSGlMaW5rIGZkY2NTdHJpbmcJCSBTdHJpbmcKLSAgSGlMaW5rIGZkY2NOdW1iZXIJCSBCbGFuaworSGlMaW5rIGZkY2NVbmljb2RlSW5WYWxpZAkgRXJyb3IKK0hpTGluayBmZGNjVW5pY29kZVZhbGlkCSBTdHJpbmcKK0hpTGluayBmZGNjU3RyaW5nCQkgU3RyaW5nCitIaUxpbmsgZmRjY051bWJlcgkJIEJsYW5rCiAKLSAgSGlMaW5rIGZkY2NLZXl3b3JkSWRlbnRpZmljYXRpb24gZmRjY0tleXdvcmQKLSAgSGlMaW5rIGZkY2NLZXl3b3JkQ3R5cGUJICAgZmRjY0tleXdvcmQKLSAgSGlMaW5rIGZkY2NLZXl3b3JkQ29sbGF0ZQkgICBmZGNjS2V5d29yZAotICBIaUxpbmsgZmRjY0tleXdvcmRNb25ldGFyeQkgICBmZGNjS2V5d29yZAotICBIaUxpbmsgZmRjY0tleXdvcmROdW1lcmljCSAgIGZkY2NLZXl3b3JkCi0gIEhpTGluayBmZGNjS2V5d29yZFRpbWUJICAgZmRjY0tleXdvcmQKLSAgSGlMaW5rIGZkY2NLZXl3b3JkTWVzc2FnZXMJICAgZmRjY0tleXdvcmQKLSAgSGlMaW5rIGZkY2NLZXl3b3JkUGFwZXIJICAgZmRjY0tleXdvcmQKLSAgSGlMaW5rIGZkY2NLZXl3b3JkVGVsZXBob25lCSAgIGZkY2NLZXl3b3JkCi0gIEhpTGluayBmZGNjS2V5d29yZE1lYXN1cmVtZW50ICAgIGZkY2NLZXl3b3JkCi0gIEhpTGluayBmZGNjS2V5d29yZE5hbWUJICAgZmRjY0tleXdvcmQKLSAgSGlMaW5rIGZkY2NLZXl3b3JkQWRkcmVzcwkgICBmZGNjS2V5d29yZAotICBIaUxpbmsgZmRjY0tleXdvcmQJCSAgIElkZW50aWZpZXIKK0hpTGluayBmZGNjS2V5d29yZElkZW50aWZpY2F0aW9uIGZkY2NLZXl3b3JkCitIaUxpbmsgZmRjY0tleXdvcmRDdHlwZQkgICBmZGNjS2V5d29yZAorSGlMaW5rIGZkY2NLZXl3b3JkQ29sbGF0ZQkgICBmZGNjS2V5d29yZAorSGlMaW5rIGZkY2NLZXl3b3JkTW9uZXRhcnkJICAgZmRjY0tleXdvcmQKK0hpTGluayBmZGNjS2V5d29yZE51bWVyaWMJICAgZmRjY0tleXdvcmQKK0hpTGluayBmZGNjS2V5d29yZFRpbWUJICAgZmRjY0tleXdvcmQKK0hpTGluayBmZGNjS2V5d29yZE1lc3NhZ2VzCSAgIGZkY2NLZXl3b3JkCitIaUxpbmsgZmRjY0tleXdvcmRQYXBlcgkgICBmZGNjS2V5d29yZAorSGlMaW5rIGZkY2NLZXl3b3JkVGVsZXBob25lCSAgIGZkY2NLZXl3b3JkCitIaUxpbmsgZmRjY0tleXdvcmRNZWFzdXJlbWVudCAgICBmZGNjS2V5d29yZAorSGlMaW5rIGZkY2NLZXl3b3JkTmFtZQkgICBmZGNjS2V5d29yZAorSGlMaW5rIGZkY2NLZXl3b3JkQWRkcmVzcwkgICBmZGNjS2V5d29yZAorSGlMaW5rIGZkY2NLZXl3b3JkCQkgICBJZGVudGlmaWVyCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJmZGNjIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9mZ2wudmltIGIvcnVudGltZS9zeW50YXgvZmdsLnZpbQppbmRleCAxYjJmZTE5Li5lNDVlMzFjIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9mZ2wudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2ZnbC52aW0KQEAgLTcsMTEgKzcsOCBAQAogIiAtIENvbmRpdGlvbmFsbHkgYWxsb3cgY2FzZSBpbnNlbnNpdGl2ZSBrZXl3b3JkcyAoSnVsaWFuIEJyaWRsZSkKICIKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTExOSwyOCArMTE2LDIwIEBACiBzeW4gc3luYyBjY29tbWVudCBmZ2xDb21tZW50CiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2ZnbF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9mZ2xfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBmZ2xDb21tZW50CUNvbW1lbnQKLSAgIkhpTGluayBmZ2xLZXl3b3JkCWZnbFNwZWNpYWwKLSAgSGlMaW5rIGZnbEtleXdvcmQJZmdsU3RhdGVtZW50Ci0gIEhpTGluayBmZ2xOdW1iZXIJTnVtYmVyCi0gIEhpTGluayBmZ2xPcGVyYXRvcglmZ2xTdGF0ZW1lbnQKLSAgSGlMaW5rIGZnbFNwZWNpYWwJU3BlY2lhbAotICBIaUxpbmsgZmdsU3RhdGVtZW50CVN0YXRlbWVudAotICBIaUxpbmsgZmdsU3RyaW5nCVN0cmluZwotICBIaUxpbmsgZmdsVHlwZQlUeXBlCitIaUxpbmsgZmdsQ29tbWVudAlDb21tZW50CisiSGlMaW5rIGZnbEtleXdvcmQJZmdsU3BlY2lhbAorSGlMaW5rIGZnbEtleXdvcmQJZmdsU3RhdGVtZW50CitIaUxpbmsgZmdsTnVtYmVyCU51bWJlcgorSGlMaW5rIGZnbE9wZXJhdG9yCWZnbFN0YXRlbWVudAorSGlMaW5rIGZnbFNwZWNpYWwJU3BlY2lhbAorSGlMaW5rIGZnbFN0YXRlbWVudAlTdGF0ZW1lbnQKK0hpTGluayBmZ2xTdHJpbmcJU3RyaW5nCitIaUxpbmsgZmdsVHlwZQlUeXBlCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJmZ2wiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2ZsZXh3aWtpLnZpbSBiL3J1bnRpbWUvc3ludGF4L2ZsZXh3aWtpLnZpbQppbmRleCAzNGY4OTNkLi42YjE1YWIyIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9mbGV4d2lraS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZmxleHdpa2kudmltCkBAIC0xNCwxMCArMTQsOCBAQAogIiByZWdleGVzLCB3aGljaCB1c2UgYSBkaWZmZXJlbnQgc3ludGF4IHRoYW4gVmltIChmZXdlciBccykuCiAiIFRoZSBwcmltYXJ5IHRlc3QgY2FzZSBpcyBGbGV4V2lraVxGb3JtYXR0aW5nUnVsZXMud2lraQogCi0iIFF1aXQgaWYgc3ludGF4IGZpbGUgaXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICAgZmluaXNoCiBlbmRpZgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9mb2NleGVjLnZpbSBiL3J1bnRpbWUvc3ludGF4L2ZvY2V4ZWMudmltCmluZGV4IDhiZTFiNjUuLjU0ZjRjMGQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2ZvY2V4ZWMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2ZvY2V4ZWMudmltCkBAIC0xMSwxMSArMTEsOCBAQAogIiBJIHRoaW5rIHNvbWUgb2YgdGhlc2UgdGhpbmdzIHNob3VsZCBnZXQgZGlmZmVyZW50IGhpbGlnaHRzIC0KICIgIHNob3VsZCBNT0RJRlkgY29tbWFuZHMgbG9vayBkaWZmZXJlbnQgdGhhbiBUQUJMRT8KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTY5LDMyICs2NiwyNCBAQAogc3luIG1hdGNoICAgZm9jZXhlY0NvbW1lbnQJIi1cKi4qIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9mb2NleGVjX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2ZvY2V4ZWNfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBmb2NleGVjU3RyaW5nMQkJU3RyaW5nCi0gIEhpTGluayBmb2NleGVjU3RyaW5nMgkJU3RyaW5nCi0gIEhpTGluayBmb2NleGVjTnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIGZvY2V4ZWNDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBmb2NleGVjVGFibGUJCUtleXdvcmQKLSAgSGlMaW5rIGZvY2V4ZWNNb2RpZnkJCUtleXdvcmQKLSAgSGlMaW5rIGZvY2V4ZWNOb3JtYWwJCUtleXdvcmQKLSAgSGlMaW5rIGZvY2V4ZWNTZXQJCUtleXdvcmQKLSAgSGlMaW5rIGZvY2V4ZWNEYXNoCQlLZXl3b3JkCi0gIEhpTGluayBmb2NleGVjRmlsZURlZgkJS2V5d29yZAotICBIaUxpbmsgZm9jZXhlY0pvaW4JCUtleXdvcmQKLSAgSGlMaW5rIGZvY2V4ZWNBbXBlclZhcglJZGVudGlmaWVyCi0gIEhpTGluayBmb2NleGVjRnVzZQkJRnVuY3Rpb24KK0hpTGluayBmb2NleGVjU3RyaW5nMQkJU3RyaW5nCitIaUxpbmsgZm9jZXhlY1N0cmluZzIJCVN0cmluZworSGlMaW5rIGZvY2V4ZWNOdW1iZXIJCU51bWJlcgorSGlMaW5rIGZvY2V4ZWNDb21tZW50CQlDb21tZW50CitIaUxpbmsgZm9jZXhlY1RhYmxlCQlLZXl3b3JkCitIaUxpbmsgZm9jZXhlY01vZGlmeQkJS2V5d29yZAorSGlMaW5rIGZvY2V4ZWNOb3JtYWwJCUtleXdvcmQKK0hpTGluayBmb2NleGVjU2V0CQlLZXl3b3JkCitIaUxpbmsgZm9jZXhlY0Rhc2gJCUtleXdvcmQKK0hpTGluayBmb2NleGVjRmlsZURlZgkJS2V5d29yZAorSGlMaW5rIGZvY2V4ZWNKb2luCQlLZXl3b3JkCitIaUxpbmsgZm9jZXhlY0FtcGVyVmFyCUlkZW50aWZpZXIKK0hpTGluayBmb2NleGVjRnVzZQkJRnVuY3Rpb24KIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImZvY2V4ZWMiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2Zvcm0udmltIGIvcnVudGltZS9zeW50YXgvZm9ybS52aW0KaW5kZXggMTlhNDdlZC4uYWJkMWM0OCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZm9ybS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZm9ybS52aW0KQEAgLTExLDExICsxMSw4IEBACiAiIFRoaXMgc3ludGF4IGZpbGUgaXMgc3RpbGwgaW4gZGV2ZWxvcG1lbnQuIFBsZWFzZSBzZW5kIHN1Z2dlc3Rpb25zCiAiIHRvIHRoZSBtYWludGFpbmVyLgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTA5LDQ5ICsxMDYsNDEgQEAKIHN5biBzeW5jIGNjb21tZW50IGZvcm1Db21tZW50IG1pbmxpbmVzPTEwCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2Zvcm1fc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfZm9ybV9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGZvcm1Db25kaXRpb25hbAlDb25kaXRpb25hbAotICBIaUxpbmsgZm9ybU51bWJlcgkJTnVtYmVyCi0gIEhpTGluayBmb3JtU3RhdGVtZW50CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGZvcm1Db21tZW50CQlDb21tZW50Ci0gIEhpTGluayBmb3JtUHJlUHJvYwkJUHJlUHJvYwotICBIaUxpbmsgZm9ybURpcmVjdGl2ZQkJUHJlUHJvYwotICBIaUxpbmsgZm9ybVR5cGUJCVR5cGUKLSAgSGlMaW5rIGZvcm1TdHJpbmcJCVN0cmluZwotICBIaUxpbmsgZm9ybU5lc3RlZFN0cmluZwlTdHJpbmcKLSAgSGlMaW5rIGZvcm1SZXNlcnZlZCAgICAgICAgICAgRXJyb3IKLSAgSGlMaW5rIGZvcm1Ub2RvICAgICAgICAgICAgICAgVG9kbwotICBIaUxpbmsgZm9ybVNwZWNpYWwgICAgICAgICAgICBTcGVjaWFsQ2hhcgorSGlMaW5rIGZvcm1Db25kaXRpb25hbAlDb25kaXRpb25hbAorSGlMaW5rIGZvcm1OdW1iZXIJCU51bWJlcgorSGlMaW5rIGZvcm1TdGF0ZW1lbnQJCVN0YXRlbWVudAorSGlMaW5rIGZvcm1Db21tZW50CQlDb21tZW50CitIaUxpbmsgZm9ybVByZVByb2MJCVByZVByb2MKK0hpTGluayBmb3JtRGlyZWN0aXZlCQlQcmVQcm9jCitIaUxpbmsgZm9ybVR5cGUJCVR5cGUKK0hpTGluayBmb3JtU3RyaW5nCQlTdHJpbmcKK0hpTGluayBmb3JtTmVzdGVkU3RyaW5nCVN0cmluZworSGlMaW5rIGZvcm1SZXNlcnZlZCAgICAgICAgICAgRXJyb3IKK0hpTGluayBmb3JtVG9kbyAgICAgICAgICAgICAgIFRvZG8KK0hpTGluayBmb3JtU3BlY2lhbCAgICAgICAgICAgIFNwZWNpYWxDaGFyCiAKLSAgaWYgIWV4aXN0cygiZm9ybV9lbmhhbmNlZF9jb2xvciIpCi0gICAgSGlMaW5rIGZvcm1IZWFkZXJTdGF0ZW1lbnQJU3RhdGVtZW50Ci0gIGVsc2UKLSAgIiBlbmhhbmNlZCBjb2xvciBtb2RlCi0gICAgSGlMaW5rIGZvcm1IZWFkZXJTdGF0ZW1lbnQJSGVhZGVyU3RhdGVtZW50Ci0gICAgIiBkYXJrIGFuZCBhIGxpZ2h0IGJhY2tncm91bmQgZm9yIGxvY2FsIHR5cGVzCi0gICAgaWYgJmJhY2tncm91bmQgPT0gImRhcmsiCi0gICAgICBoaSBIZWFkZXJTdGF0ZW1lbnQgdGVybT11bmRlcmxpbmUgY3Rlcm1mZz1MaWdodEdyZWVuIGd1aWZnPUxpZ2h0R3JlZW4gZ3VpPWJvbGQKLSAgICBlbHNlCi0gICAgICBoaSBIZWFkZXJTdGF0ZW1lbnQgdGVybT11bmRlcmxpbmUgY3Rlcm1mZz1EYXJrR3JlZW4gZ3VpZmc9U2VhR3JlZW4gZ3VpPWJvbGQKLSAgICBlbmRpZgotICAgICIgY2hhbmdlIHNsaWdodGx5IHRoZSBkZWZhdWx0IGZvciBkYXJrIGd2aW0KLSAgICBpZiBoYXMoImd1aV9ydW5uaW5nIikgJiYgJmJhY2tncm91bmQgPT0gImRhcmsiCi0gICAgICBoaSBDb25kaXRpb25hbCBndWlmZz1MaWdodEJsdWUgZ3VpPWJvbGQKLSAgICAgIGhpIFN0YXRlbWVudCBndWlmZz1MaWdodFllbGxvdwotICAgIGVuZGlmCi0gIGVuZGlmCi0KLSAgZGVsY29tbWFuZCBIaUxpbmsKK2lmICFleGlzdHMoImZvcm1fZW5oYW5jZWRfY29sb3IiKQorSGlMaW5rIGZvcm1IZWFkZXJTdGF0ZW1lbnQJU3RhdGVtZW50CitlbHNlCisiIGVuaGFuY2VkIGNvbG9yIG1vZGUKK0hpTGluayBmb3JtSGVhZGVyU3RhdGVtZW50CUhlYWRlclN0YXRlbWVudAorIiBkYXJrIGFuZCBhIGxpZ2h0IGJhY2tncm91bmQgZm9yIGxvY2FsIHR5cGVzCitpZiAmYmFja2dyb3VuZCA9PSAiZGFyayIKK2hpIEhlYWRlclN0YXRlbWVudCB0ZXJtPXVuZGVybGluZSBjdGVybWZnPUxpZ2h0R3JlZW4gZ3VpZmc9TGlnaHRHcmVlbiBndWk9Ym9sZAorZWxzZQoraGkgSGVhZGVyU3RhdGVtZW50IHRlcm09dW5kZXJsaW5lIGN0ZXJtZmc9RGFya0dyZWVuIGd1aWZnPVNlYUdyZWVuIGd1aT1ib2xkCiBlbmRpZgorIiBjaGFuZ2Ugc2xpZ2h0bHkgdGhlIGRlZmF1bHQgZm9yIGRhcmsgZ3ZpbQoraWYgaGFzKCJndWlfcnVubmluZyIpICYmICZiYWNrZ3JvdW5kID09ICJkYXJrIgoraGkgQ29uZGl0aW9uYWwgZ3VpZmc9TGlnaHRCbHVlIGd1aT1ib2xkCitoaSBTdGF0ZW1lbnQgZ3VpZmc9TGlnaHRZZWxsb3cKK2VuZGlmCitlbmRpZgorCitkZWxjb21tYW5kIEhpTGluawogCiAgIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImZvcm0iCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2ZvcnRoLnZpbSBiL3J1bnRpbWUvc3ludGF4L2ZvcnRoLnZpbQppbmRleCA5OWU5NDAwLi4yNTU5Nzc5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9mb3J0aC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZm9ydGgudmltCkBAIC04MCwxMSArODAsOCBAQAogIgogCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTA0LDExICsxMDEsNyBAQAogCiAiIENoYXJhY3RlcnMgYWxsb3dlZCBpbiBrZXl3b3JkcwogIiBJIGRvbid0IGtub3cgaWYgMTI4LTI1NSBhcmUgYWxsb3dlZCBpbiBBTlMtRk9SVEgKLWlmIHZlcnNpb24gPj0gNjAwCi0gICAgc2V0bG9jYWwgaXNrZXl3b3JkPSEsQCwzMy0zNSwlLCQsMzgtNjQsQS1aLDkxLTk2LGEteiwxMjMtMTI2LDEyOC0yNTUKLWVsc2UKLSAgICBzZXQgaXNrZXl3b3JkPSEsQCwzMy0zNSwlLCQsMzgtNjQsQS1aLDkxLTk2LGEteiwxMjMtMTI2LDEyOC0yNTUKLWVuZGlmCitzZXRsb2NhbCBpc2tleXdvcmQ9ISxALDMzLTM1LCUsJCwzOC02NCxBLVosOTEtOTYsYS16LDEyMy0xMjYsMTI4LTI1NQogCiAiIHdoZW4gd2FudGVkLCBoaWdobGlnaHQgdHJhaWxpbmcgd2hpdGUgc3BhY2UKIGlmIGV4aXN0cygiZm9ydGhfc3BhY2VfZXJyb3JzIikKQEAgLTI4OSw1NiArMjgyLDQ4IEBACiBzeW4gcmVnaW9uIGZvcnRoRGVwcmVjYXRlZCBzdGFydD0nbG9jYWxzfCcgZW5kPSd8JwogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9mb3J0aF9zeW5faW5pdHMiKQotICAgIGlmIHZlcnNpb24gPCA1MDgKLQlsZXQgZGlkX2ZvcnRoX3N5bl9pbml0cyA9IDEKLQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICAgIGVsc2UKLQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgICAiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIuCi0gICAgSGlMaW5rIGZvcnRoVG9kbyBUb2RvCi0gICAgSGlMaW5rIGZvcnRoT3BlcmF0b3JzIE9wZXJhdG9yCi0gICAgSGlMaW5rIGZvcnRoTWF0aCBOdW1iZXIKLSAgICBIaUxpbmsgZm9ydGhJbnRlZ2VyIE51bWJlcgotICAgIEhpTGluayBmb3J0aEZsb2F0IEZsb2F0Ci0gICAgSGlMaW5rIGZvcnRoU3RhY2sgU3BlY2lhbAotICAgIEhpTGluayBmb3J0aFJzdGFjayBTcGVjaWFsCi0gICAgSGlMaW5rIGZvcnRoRlN0YWNrIFNwZWNpYWwKLSAgICBIaUxpbmsgZm9ydGhTUCBTcGVjaWFsCi0gICAgSGlMaW5rIGZvcnRoTWVtb3J5IEZ1bmN0aW9uCi0gICAgSGlMaW5rIGZvcnRoQWRyQXJpdGggRnVuY3Rpb24KLSAgICBIaUxpbmsgZm9ydGhNZW1CbGtzIEZ1bmN0aW9uCi0gICAgSGlMaW5rIGZvcnRoQ29uZCBDb25kaXRpb25hbAotICAgIEhpTGluayBmb3J0aExvb3AgUmVwZWF0Ci0gICAgSGlMaW5rIGZvcnRoQ29sb25EZWYgRGVmaW5lCi0gICAgSGlMaW5rIGZvcnRoRW5kT2ZDb2xvbkRlZiBEZWZpbmUKLSAgICBIaUxpbmsgZm9ydGhEZWZpbmUgRGVmaW5lCi0gICAgSGlMaW5rIGZvcnRoRGVidWcgRGVidWcKLSAgICBIaUxpbmsgZm9ydGhBc3NlbWJsZXIgSW5jbHVkZQotICAgIEhpTGluayBmb3J0aENoYXJPcHMgQ2hhcmFjdGVyCi0gICAgSGlMaW5rIGZvcnRoQ29udmVyc2lvbiBTdHJpbmcKLSAgICBIaUxpbmsgZm9ydGhGb3J0aCBTdGF0ZW1lbnQKLSAgICBIaUxpbmsgZm9ydGhWb2NzIFN0YXRlbWVudAotICAgIEhpTGluayBmb3J0aFN0cmluZyBTdHJpbmcKLSAgICBIaUxpbmsgZm9ydGhDb21tZW50IENvbW1lbnQKLSAgICBIaUxpbmsgZm9ydGhDbGFzc0RlZiBEZWZpbmUKLSAgICBIaUxpbmsgZm9ydGhFbmRPZkNsYXNzRGVmIERlZmluZQotICAgIEhpTGluayBmb3J0aE9iamVjdERlZiBEZWZpbmUKLSAgICBIaUxpbmsgZm9ydGhFbmRPZk9iamVjdERlZiBEZWZpbmUKLSAgICBIaUxpbmsgZm9ydGhJbmNsdWRlIEluY2x1ZGUKLSAgICBIaUxpbmsgZm9ydGhMb2NhbHMgVHlwZSAiIG5vdGhpbmcgZWxzZSB1c2VzIHR5cGUgYW5kIGxvY2FscyBtdXN0IHN0YW5kIG91dAotICAgIEhpTGluayBmb3J0aERlcHJlY2F0ZWQgRXJyb3IgIiBpZiB5b3UgbXVzdCwgY2hhbmdlIHRvIFR5cGUKLSAgICBIaUxpbmsgZm9ydGhGaWxlTW9kZSBGdW5jdGlvbgotICAgIEhpTGluayBmb3J0aEZpbGVXb3JkcyBTdGF0ZW1lbnQKLSAgICBIaUxpbmsgZm9ydGhCbG9ja3MgU3RhdGVtZW50Ci0gICAgSGlMaW5rIGZvcnRoU3BhY2VFcnJvciBFcnJvcgorIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyLgorSGlMaW5rIGZvcnRoVG9kbyBUb2RvCitIaUxpbmsgZm9ydGhPcGVyYXRvcnMgT3BlcmF0b3IKK0hpTGluayBmb3J0aE1hdGggTnVtYmVyCitIaUxpbmsgZm9ydGhJbnRlZ2VyIE51bWJlcgorSGlMaW5rIGZvcnRoRmxvYXQgRmxvYXQKK0hpTGluayBmb3J0aFN0YWNrIFNwZWNpYWwKK0hpTGluayBmb3J0aFJzdGFjayBTcGVjaWFsCitIaUxpbmsgZm9ydGhGU3RhY2sgU3BlY2lhbAorSGlMaW5rIGZvcnRoU1AgU3BlY2lhbAorSGlMaW5rIGZvcnRoTWVtb3J5IEZ1bmN0aW9uCitIaUxpbmsgZm9ydGhBZHJBcml0aCBGdW5jdGlvbgorSGlMaW5rIGZvcnRoTWVtQmxrcyBGdW5jdGlvbgorSGlMaW5rIGZvcnRoQ29uZCBDb25kaXRpb25hbAorSGlMaW5rIGZvcnRoTG9vcCBSZXBlYXQKK0hpTGluayBmb3J0aENvbG9uRGVmIERlZmluZQorSGlMaW5rIGZvcnRoRW5kT2ZDb2xvbkRlZiBEZWZpbmUKK0hpTGluayBmb3J0aERlZmluZSBEZWZpbmUKK0hpTGluayBmb3J0aERlYnVnIERlYnVnCitIaUxpbmsgZm9ydGhBc3NlbWJsZXIgSW5jbHVkZQorSGlMaW5rIGZvcnRoQ2hhck9wcyBDaGFyYWN0ZXIKK0hpTGluayBmb3J0aENvbnZlcnNpb24gU3RyaW5nCitIaUxpbmsgZm9ydGhGb3J0aCBTdGF0ZW1lbnQKK0hpTGluayBmb3J0aFZvY3MgU3RhdGVtZW50CitIaUxpbmsgZm9ydGhTdHJpbmcgU3RyaW5nCitIaUxpbmsgZm9ydGhDb21tZW50IENvbW1lbnQKK0hpTGluayBmb3J0aENsYXNzRGVmIERlZmluZQorSGlMaW5rIGZvcnRoRW5kT2ZDbGFzc0RlZiBEZWZpbmUKK0hpTGluayBmb3J0aE9iamVjdERlZiBEZWZpbmUKK0hpTGluayBmb3J0aEVuZE9mT2JqZWN0RGVmIERlZmluZQorSGlMaW5rIGZvcnRoSW5jbHVkZSBJbmNsdWRlCitIaUxpbmsgZm9ydGhMb2NhbHMgVHlwZSAiIG5vdGhpbmcgZWxzZSB1c2VzIHR5cGUgYW5kIGxvY2FscyBtdXN0IHN0YW5kIG91dAorSGlMaW5rIGZvcnRoRGVwcmVjYXRlZCBFcnJvciAiIGlmIHlvdSBtdXN0LCBjaGFuZ2UgdG8gVHlwZQorSGlMaW5rIGZvcnRoRmlsZU1vZGUgRnVuY3Rpb24KK0hpTGluayBmb3J0aEZpbGVXb3JkcyBTdGF0ZW1lbnQKK0hpTGluayBmb3J0aEJsb2NrcyBTdGF0ZW1lbnQKK0hpTGluayBmb3J0aFNwYWNlRXJyb3IgRXJyb3IKIAotICAgIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZm9ydGgiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2ZvcnRyYW4udmltIGIvcnVudGltZS9zeW50YXgvZm9ydHJhbi52aW0KaW5kZXggMDZlNTM5MC4uMGI1NmY1YiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZm9ydHJhbi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZm9ydHJhbi52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZToJRm9ydHJhbiAyMDA4IChhbmQgb2xkZXI6IEZvcnRyYW4gMjAwMywgOTUsIDkwLCBhbmQgNzcpCiAiIFZlcnNpb246CTAuOTgKLSIgTGFzdCBDaGFuZ2U6CTIwMTYgQXVnLiAyNgorIiBMYXN0IENoYW5nZToJMjAxNiBBdWcuIDI5CiAiIE1haW50YWluZXI6CUFqaXQgSi4gVGhha2thciA8YWppdEB1bmIuY2E+OyA8aHR0cDovL3d3dzIudW5iLmNhL35haml0Lz4KICIgVXNhZ2U6CUZvciBpbnN0cnVjdGlvbnMsIGRvIDpoZWxwIGZvcnRyYW4tc3ludGF4IGZyb20gVmltCiAiIENyZWRpdHM6CkBAIC0xMSw3ICsxMSw3IEBACiAiICBBbmRyZWogUGFuamtvdiwgQnJhbSBNb29sZW5hYXIsIFRob21hcyBPbHNlbiwgTWljaGFlbCBTdGVybmJlcmcsIENocmlzdGlhbiBSZWlsZSwKICIgIFdhbHRlciBEaWV1ZG9ubuksIEFsZXhhbmRlciBXYWduZXIsIFJvbWFuIEJlcnRsZSwgQ2hhcmxlcyBSZW5kbGVtYW4sCiAiICBBbmRyZXcgR3JpZmZpdGhzLCBKb2UgS3JhaG4sIEhlbmRyaWsgTWVyeCwgTWF0dCBUaG9tcHNvbiwgSmFuIEhlcm1hbm4sCi0iICBTdGVmYW5vIFphZ2hpIGFuZCBWaXNobnUgS3Jpc2huYW4uCisiICBTdGVmYW5vIFphZ2hpIGFuZCBWaXNobnUgVi4gS3Jpc2huYW4uCiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApAQCAtMzY4LDYgKzM2OCw3IEBACiBlbmRpZgogCiBzeW4gbWF0Y2ggZm9ydHJhbkNvbW1lbnQJZXhjbHVkZW5sICIhLiokIiBjb250YWlucz1AZm9ydHJhbkNvbW1lbnRHcm91cCxAc3BlbGwKK3N5biBtYXRjaCBmb3J0cmFuT3Blbk1QCQlleGNsdWRlbmwgCQkiXlxzKiFcJFwoT01QXClcPVxzLiokIgogCiAiY3BwIGlzIG9mdGVuIHVzZWQgd2l0aCBGb3J0cmFuCiBzeW4gbWF0Y2gJY1ByZVByb2MJCSJeXHMqI1xzKlwoZGVmaW5lXHxpZmRlZlwpXD4uKiIKQEAgLTUxNyw2ICs1MTgsNyBAQAogaGkgZGVmIGxpbmsgY0luY2x1ZGUJCUluY2x1ZGUKIGhpIGRlZiBsaW5rIGNQcmVQcm9jCQlQcmVQcm9jCiBoaSBkZWYgbGluayBjUHJlQ29uZGl0CQlQcmVDb25kaXQKK2hpIGRlZiBsaW5rIGZvcnRyYW5PcGVuTVAgICAgICAgUHJlUHJvYwogaGkgZGVmIGxpbmsgZm9ydHJhblBhcmVuRXJyb3IJRXJyb3IKIGhpIGRlZiBsaW5rIGZvcnRyYW5Db21tZW50CUNvbW1lbnQKIGhpIGRlZiBsaW5rIGZvcnRyYW5TZXJpYWxOdW1iZXIJVG9kbwpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZm94cHJvLnZpbSBiL3J1bnRpbWUvc3ludGF4L2ZveHByby52aW0KaW5kZXggY2E1ZDdlMi4uYjMyOTM2OCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZm94cHJvLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9mb3hwcm8udmltCkBAIC0xMyw5ICsxMyw4IEBACiAiIAkJY29ycmVjdGVkIGhpZ2hsaWdodGluZyBvZiBjb21tZW50cyBhdCBlbmQgb2YgbGluZSAoJiYpCiAiIAogIiAKLWlmIHZlcnNpb24gPCA2MDAKLSAgICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICAgZmluaXNoCiBlbmRpZgogCkBAIC02OTEsMzcgKzY5MCwyOSBAQAogc3luIHN5bmMgbWlubGluZXM9MSBtYXhsaW5lcz0zCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2ZveHByb19zeW5faW5pdHMiKQotICAgIGlmIHZlcnNpb24gPCA1MDgKLQlsZXQgZGlkX2ZveHByb19zeW5faW5pdHMgPSAxCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgICBlbHNlCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gICAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICAgSGlMaW5rIGZveHByb1NwZWNpYWwgIFNwZWNpYWwKLSAgICBIaUxpbmsgZm94cHJvQXRTeW1ib2wgU3BlY2lhbAotICAgIEhpTGluayBmb3hwcm9BdENtZCAgICBTdGF0ZW1lbnQKLSAgICBIaUxpbmsgZm94cHJvUHJlUHJvYyAgUHJlUHJvYwotICAgIEhpTGluayBmb3hwcm9GdW5jICAgICBJZGVudGlmaWVyCi0gICAgSGlMaW5rIGZveHByb0NtZCAgICAgIFN0YXRlbWVudAotICAgIEhpTGluayBmb3hwcm9FbkJsayAgICBUeXBlCi0gICAgSGlMaW5rIGZveHByb1N5c1ZhciAgIFN0cmluZwotICAgIEhpTGluayBmb3hwcm9TdHJpbmcgICBTdHJpbmcKLSAgICBIaUxpbmsgZm94cHJvQ29uc3QgICAgQ29uc3RhbnQKLSAgICBIaUxpbmsgZm94cHJvTnVtYmVyICAgTnVtYmVyCi0gICAgSGlMaW5rIGZveHByb0Zsb2F0ICAgIEZsb2F0Ci0gICAgSGlMaW5rIGZveHByb0NvbW1lbnQgIENvbW1lbnQKLSAgICBIaUxpbmsgZm94cHJvUGFyZW5FcnIgRXJyb3IKLSAgICBIaUxpbmsgZm94cHJvQ0JDb25zdCAgUHJlUHJvYwotICAgIEhpTGluayBmb3hwcm9DQkZpZWxkICBTcGVjaWFsCi0gICAgSGlMaW5rIGZveHByb0NCVmFyICAgIElkZW50aWZpZXIKLSAgICBIaUxpbmsgZm94cHJvQ0JXaW4gICAgU3BlY2lhbAotICAgIEhpTGluayBmb3hwcm9DQk9iamVjdCBJZGVudGlmaWVyCitIaUxpbmsgZm94cHJvU3BlY2lhbCAgU3BlY2lhbAorSGlMaW5rIGZveHByb0F0U3ltYm9sIFNwZWNpYWwKK0hpTGluayBmb3hwcm9BdENtZCAgICBTdGF0ZW1lbnQKK0hpTGluayBmb3hwcm9QcmVQcm9jICBQcmVQcm9jCitIaUxpbmsgZm94cHJvRnVuYyAgICAgSWRlbnRpZmllcgorSGlMaW5rIGZveHByb0NtZCAgICAgIFN0YXRlbWVudAorSGlMaW5rIGZveHByb0VuQmxrICAgIFR5cGUKK0hpTGluayBmb3hwcm9TeXNWYXIgICBTdHJpbmcKK0hpTGluayBmb3hwcm9TdHJpbmcgICBTdHJpbmcKK0hpTGluayBmb3hwcm9Db25zdCAgICBDb25zdGFudAorSGlMaW5rIGZveHByb051bWJlciAgIE51bWJlcgorSGlMaW5rIGZveHByb0Zsb2F0ICAgIEZsb2F0CitIaUxpbmsgZm94cHJvQ29tbWVudCAgQ29tbWVudAorSGlMaW5rIGZveHByb1BhcmVuRXJyIEVycm9yCitIaUxpbmsgZm94cHJvQ0JDb25zdCAgUHJlUHJvYworSGlMaW5rIGZveHByb0NCRmllbGQgIFNwZWNpYWwKK0hpTGluayBmb3hwcm9DQlZhciAgICBJZGVudGlmaWVyCitIaUxpbmsgZm94cHJvQ0JXaW4gICAgU3BlY2lhbAorSGlMaW5rIGZveHByb0NCT2JqZWN0IElkZW50aWZpZXIKIAotICAgIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZm94cHJvIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZnN0YWIudmltIGIvcnVudGltZS9zeW50YXgvZnN0YWIudmltCmluZGV4IDMwMDZkMjEuLmExN2ZjODAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2ZzdGFiLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9mc3RhYi52aW0KQEAgLTE5LDkgKzE5LDggQEAKICIgICBsZXQgZnN0YWJfdW5rbm93bl9kZXZpY2VfZXJyb3JzID0gMAogIiAgICAgZG8gbm90IGhpZ2hsaWdodCB1bmtub3duIGRldmljZXMgYXMgZXJyb3JzCiAKLWlmIHZlcnNpb24gPCA2MDAKLQlzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAJZmluaXNoCiBlbmRpZgogCkBAIC0yMjksNjYgKzIyOCw1OSBAQAogIiBXaG9sZSBsaW5lIGNvbW1lbnRzCiBzeW4gbWF0Y2ggZnNDb21tZW50TGluZSAvXiMuKiQvIGNvbnRhaW5zPUBTcGVsbAogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfY29uZmlnX3N5bnRheF9pbml0cyIpCi0JaWYgdmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX2NvbmZpZ19zeW50YXhfaW5pdHMgPSAxCi0JCWNvbW1hbmQhIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotCWVsc2UKLQkJY29tbWFuZCEgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotCWVuZGlmCitjb21tYW5kISAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLQlIaUxpbmsgZnNPcGVyYXRvciBPcGVyYXRvcgotCUhpTGluayBmc0NvbW1lbnQgQ29tbWVudAotCUhpTGluayBmc0NvbW1lbnRMaW5lIENvbW1lbnQKK0hpTGluayBmc09wZXJhdG9yIE9wZXJhdG9yCitIaUxpbmsgZnNDb21tZW50IENvbW1lbnQKK0hpTGluayBmc0NvbW1lbnRMaW5lIENvbW1lbnQKIAotCUhpTGluayBmc1R5cGVLZXl3b3JkIFR5cGUKLQlIaUxpbmsgZnNEZXZpY2VLZXl3b3JkIElkZW50aWZpZXIKLQlIaUxpbmsgZnNEZXZpY2VMYWJlbCBTdHJpbmcKLQlIaUxpbmsgZnNEZXZpY2VVVUlEIFN0cmluZwotCUhpTGluayBmc0RldmljZVNzaGZzIFN0cmluZwotCUhpTGluayBmc0ZyZXFQYXNzTnVtYmVyIE51bWJlcgorSGlMaW5rIGZzVHlwZUtleXdvcmQgVHlwZQorSGlMaW5rIGZzRGV2aWNlS2V5d29yZCBJZGVudGlmaWVyCitIaUxpbmsgZnNEZXZpY2VMYWJlbCBTdHJpbmcKK0hpTGluayBmc0RldmljZVVVSUQgU3RyaW5nCitIaUxpbmsgZnNEZXZpY2VTc2hmcyBTdHJpbmcKK0hpTGluayBmc0ZyZXFQYXNzTnVtYmVyIE51bWJlcgogCi0JaWYgZXhpc3RzKCdmc3RhYl91bmtub3duX2ZzX2Vycm9ycycpICYmIGZzdGFiX3Vua25vd25fZnNfZXJyb3JzID09IDEKLQkJSGlMaW5rIGZzVHlwZVVua25vd24gRXJyb3IKLQllbmRpZgotCi0JaWYgIWV4aXN0cygnZnN0YWJfdW5rbm93bl9kZXZpY2VfZXJyb3JzJykgfHwgZnN0YWJfdW5rbm93bl9kZXZpY2VfZXJyb3JzID09IDEKLQkJSGlMaW5rIGZzRGV2aWNlRXJyb3IgRXJyb3IKLQllbmRpZgotCi0JSGlMaW5rIGZzTW91bnRQb2ludEVycm9yIEVycm9yCi0JSGlMaW5rIGZzTW91bnRQb2ludEtleXdvcmQgS2V5d29yZAotCUhpTGluayBmc0ZyZXFQYXNzRXJyb3IgRXJyb3IKLQotCUhpTGluayBmc09wdGlvbnNHZW5lcmFsIFR5cGUKLQlIaUxpbmsgZnNPcHRpb25zS2V5d29yZHMgS2V5d29yZAotCUhpTGluayBmc09wdGlvbnNOdW1iZXIgTnVtYmVyCi0JSGlMaW5rIGZzT3B0aW9uc051bWJlck9jdGFsIE51bWJlcgotCUhpTGluayBmc09wdGlvbnNTdHJpbmcgU3RyaW5nCi0JSGlMaW5rIGZzT3B0aW9uc1NpemUgTnVtYmVyCi0JSGlMaW5rIGZzT3B0aW9uc0V4dDJDaGVjayBTdHJpbmcKLQlIaUxpbmsgZnNPcHRpb25zRXh0MkVycm9ycyBTdHJpbmcKLQlIaUxpbmsgZnNPcHRpb25zRXh0M0pvdXJuYWwgU3RyaW5nCi0JSGlMaW5rIGZzT3B0aW9uc0V4dDNEYXRhIFN0cmluZwotCUhpTGluayBmc09wdGlvbnNFeHQ0Sm91cm5hbCBTdHJpbmcKLQlIaUxpbmsgZnNPcHRpb25zRXh0NERhdGEgU3RyaW5nCi0JSGlMaW5rIGZzT3B0aW9uc0V4dDRCYXJyaWVyIE51bWJlcgotCUhpTGluayBmc09wdGlvbnNGYXRDaGVjayBTdHJpbmcKLQlIaUxpbmsgZnNPcHRpb25zQ29udiBTdHJpbmcKLQlIaUxpbmsgZnNPcHRpb25zRmF0VHlwZSBOdW1iZXIKLQlIaUxpbmsgZnNPcHRpb25zWWVzTm8gU3RyaW5nCi0JSGlMaW5rIGZzT3B0aW9uc0hwZnNDYXNlIFN0cmluZwotCUhpTGluayBmc09wdGlvbnNJc29NYXAgU3RyaW5nCi0JSGlMaW5rIGZzT3B0aW9uc1JlaXNlckhhc2ggU3RyaW5nCi0JSGlMaW5rIGZzT3B0aW9uc1NzaFllc05vQXNrIFN0cmluZwotCUhpTGluayBmc09wdGlvbnNVZnNUeXBlIFN0cmluZwotCUhpTGluayBmc09wdGlvbnNVZnNFcnJvciBTdHJpbmcKLQotCUhpTGluayBmc09wdGlvbnNWZmF0U2hvcnRuYW1lIFN0cmluZwotCi0JZGVsY29tbWFuZCBIaUxpbmsKK2lmIGV4aXN0cygnZnN0YWJfdW5rbm93bl9mc19lcnJvcnMnKSAmJiBmc3RhYl91bmtub3duX2ZzX2Vycm9ycyA9PSAxCitIaUxpbmsgZnNUeXBlVW5rbm93biBFcnJvcgogZW5kaWYKIAoraWYgIWV4aXN0cygnZnN0YWJfdW5rbm93bl9kZXZpY2VfZXJyb3JzJykgfHwgZnN0YWJfdW5rbm93bl9kZXZpY2VfZXJyb3JzID09IDEKK0hpTGluayBmc0RldmljZUVycm9yIEVycm9yCitlbmRpZgorCitIaUxpbmsgZnNNb3VudFBvaW50RXJyb3IgRXJyb3IKK0hpTGluayBmc01vdW50UG9pbnRLZXl3b3JkIEtleXdvcmQKK0hpTGluayBmc0ZyZXFQYXNzRXJyb3IgRXJyb3IKKworSGlMaW5rIGZzT3B0aW9uc0dlbmVyYWwgVHlwZQorSGlMaW5rIGZzT3B0aW9uc0tleXdvcmRzIEtleXdvcmQKK0hpTGluayBmc09wdGlvbnNOdW1iZXIgTnVtYmVyCitIaUxpbmsgZnNPcHRpb25zTnVtYmVyT2N0YWwgTnVtYmVyCitIaUxpbmsgZnNPcHRpb25zU3RyaW5nIFN0cmluZworSGlMaW5rIGZzT3B0aW9uc1NpemUgTnVtYmVyCitIaUxpbmsgZnNPcHRpb25zRXh0MkNoZWNrIFN0cmluZworSGlMaW5rIGZzT3B0aW9uc0V4dDJFcnJvcnMgU3RyaW5nCitIaUxpbmsgZnNPcHRpb25zRXh0M0pvdXJuYWwgU3RyaW5nCitIaUxpbmsgZnNPcHRpb25zRXh0M0RhdGEgU3RyaW5nCitIaUxpbmsgZnNPcHRpb25zRXh0NEpvdXJuYWwgU3RyaW5nCitIaUxpbmsgZnNPcHRpb25zRXh0NERhdGEgU3RyaW5nCitIaUxpbmsgZnNPcHRpb25zRXh0NEJhcnJpZXIgTnVtYmVyCitIaUxpbmsgZnNPcHRpb25zRmF0Q2hlY2sgU3RyaW5nCitIaUxpbmsgZnNPcHRpb25zQ29udiBTdHJpbmcKK0hpTGluayBmc09wdGlvbnNGYXRUeXBlIE51bWJlcgorSGlMaW5rIGZzT3B0aW9uc1llc05vIFN0cmluZworSGlMaW5rIGZzT3B0aW9uc0hwZnNDYXNlIFN0cmluZworSGlMaW5rIGZzT3B0aW9uc0lzb01hcCBTdHJpbmcKK0hpTGluayBmc09wdGlvbnNSZWlzZXJIYXNoIFN0cmluZworSGlMaW5rIGZzT3B0aW9uc1NzaFllc05vQXNrIFN0cmluZworSGlMaW5rIGZzT3B0aW9uc1Vmc1R5cGUgU3RyaW5nCitIaUxpbmsgZnNPcHRpb25zVWZzRXJyb3IgU3RyaW5nCisKK0hpTGluayBmc09wdGlvbnNWZmF0U2hvcnRuYW1lIFN0cmluZworCitkZWxjb21tYW5kIEhpTGluaworCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJmc3RhYiIKIAogbGV0ICZjcG8gPSBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9mdndtMm00LnZpbSBiL3J1bnRpbWUvc3ludGF4L2Z2d20ybTQudmltCmluZGV4IDI0M2RhMTguLmUyOTYyNzMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2Z2d20ybTQudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2Z2d20ybTQudmltCkBAIC01LDEyICs1LDkgQEAKICIgVVJJOiBodHRwOi8vcGh5c2ljcy5tdW5pLmN6L355ZXRpL2Rvd25sb2FkL3N5bnRheC9mdndtbTQudmltCiAKICIgU2V0dXAKLWlmIHZlcnNpb24gPj0gNjAwCi0gIGlmIGV4aXN0cygnYjpjdXJyZW50X3N5bnRheCcpCi0gICAgZmluaXNoCi0gIGVuZGlmCi1lbHNlCi0gIHN5bnRheCBjbGVhcgorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygnYjpjdXJyZW50X3N5bnRheCcpCisgIGZpbmlzaAogZW5kaWYKIAogIiBMZXQgaW5jbHVkZWQgZmlsZXMga25vdyB0aGV5IGFyZSBpbmNsdWRlZApAQCAtMTksMTkgKzE2LDExIEBACiBlbmRpZgogCiAiIEluY2x1ZGUgTTQgc3ludGF4Ci1pZiB2ZXJzaW9uID49IDYwMAotICBydW50aW1lISBzeW50YXgvbTQudmltCi1lbHNlCi0gIHNvIDxzZmlsZT46cDpoL200LnZpbQotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9tNC52aW0KIHVubGV0IGI6Y3VycmVudF9zeW50YXgKIAogIiBJbmNsdWRlIEZ2d20yIHN5bnRheCAoRnZ3bTEgZG9lc24ndCBoYXZlIE00IHByZXByb2Nlc3NvcikKLWlmIHZlcnNpb24gPj0gNjAwCi0gIHJ1bnRpbWUhIHN5bnRheC9mdndtLnZpbQotZWxzZQotICBzbyA8c2ZpbGU+OnA6aC9mdndtLnZpbQotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9mdndtLnZpbQogdW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiAiIFRoYXQncyBhbGwhCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9nZGIudmltIGIvcnVudGltZS9zeW50YXgvZ2RiLnZpbQppbmRleCA2NGU4OWNjLi42NzdmOTQ4IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9nZGIudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2dkYi52aW0KQEAgLTQsMTEgKzQsOCBAQAogIiBVUkw6CQlodHRwOi8vd3d3LmZsZWluZXIuY29tL3ZpbS9zeW50YXgvZ2RiLnZpbQogIiBMYXN0IENoYW5nZToJMjAxMiBPY3QgMDUKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTg3LDI3ICs4NCwxOSBAQAogZXhlYyAic3luIHN5bmMgY2NvbW1lbnQgZ2RiQ29tbWVudCBtaW5saW5lcz0iIC4gZ2RiX21pbmxpbmVzCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2dkYl9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9nZGJfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKLSAgSGlMaW5rIGdkYkZ1bmNEZWYJRnVuY3Rpb24KLSAgSGlMaW5rIGdkYkNvbW1lbnQJQ29tbWVudAotICBIaUxpbmsgZ2RiU3RhdGVtZW50CVN0YXRlbWVudAotICBIaUxpbmsgZ2RiU3RyaW5nCVN0cmluZwotICBIaUxpbmsgZ2RiQ2hhcmFjdGVyCUNoYXJhY3RlcgotICBIaUxpbmsgZ2RiVmFyaWFibGUJSWRlbnRpZmllcgotICBIaUxpbmsgZ2RiU2V0CQlDb25zdGFudAotICBIaUxpbmsgZ2RiSW5mbwlUeXBlCi0gIEhpTGluayBnZGJEb2N1bWVudAlTcGVjaWFsCi0gIEhpTGluayBnZGJOdW1iZXIJTnVtYmVyCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CitIaUxpbmsgZ2RiRnVuY0RlZglGdW5jdGlvbgorSGlMaW5rIGdkYkNvbW1lbnQJQ29tbWVudAorSGlMaW5rIGdkYlN0YXRlbWVudAlTdGF0ZW1lbnQKK0hpTGluayBnZGJTdHJpbmcJU3RyaW5nCitIaUxpbmsgZ2RiQ2hhcmFjdGVyCUNoYXJhY3RlcgorSGlMaW5rIGdkYlZhcmlhYmxlCUlkZW50aWZpZXIKK0hpTGluayBnZGJTZXQJCUNvbnN0YW50CitIaUxpbmsgZ2RiSW5mbwlUeXBlCitIaUxpbmsgZ2RiRG9jdW1lbnQJU3BlY2lhbAorSGlMaW5rIGdkYk51bWJlcglOdW1iZXIKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImdkYiIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZ2Rtby52aW0gYi9ydW50aW1lL3N5bnRheC9nZG1vLnZpbQppbmRleCA4NmM2ZDVjLi5kOWNlYmFlIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9nZG1vLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9nZG1vLnZpbQpAQCAtNSwxMSArNSw4IEBACiAiIFVSTDoJCWh0dHA6Ly9jbGFzc2ljYWxwcm9ncmFtbWVyLndpa2lkb3QuY29tL2xvY2FsLS1maWxlcy92aW0tc3ludGF4LWZpbGUtZm9yLWdkbW8vZ2Rtby52aW0KICIgTGFzdCBjaGFuZ2U6CTh0aCBKdW5lLCAyMDExCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC02NCwzMiArNjEsMjQgQEAKIHN5biBzeW5jIGNjb21tZW50IGdkbW9Db21tZW50CiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2dkbW9fc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfZ2Rtb19zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGdkbW9DYXRlZ29yeQkgICAgICBTdHJ1Y3R1cmUKLSAgSGlMaW5rIGdkbW9SZWxhdGlvbnNoaXAgICAgIE1hY3JvCi0gIEhpTGluayBnZG1vRGVmaW5pdGlvbiAgICAgICBTdGF0ZW1lbnQKLSAgSGlMaW5rIGdkbW9SZWZlcmVuY2UJICAgICAgVHlwZQotICBIaUxpbmsgZ2Rtb0V4dGVuc2lvbgkgICAgICBPcGVyYXRvcgotICBIaUxpbmsgZ2Rtb0JyYWNlcwkgICAgICBGdW5jdGlvbgotICBIaUxpbmsgZ2Rtb1NwZWNpYWwJICAgICAgU3BlY2lhbAotICBIaUxpbmsgZ2Rtb1N0cmluZwkgICAgICBTdHJpbmcKLSAgSGlMaW5rIGdkbW9DaGFyYWN0ZXIJICAgICAgQ2hhcmFjdGVyCi0gIEhpTGluayBnZG1vU3BlY2lhbENoYXJhY3RlciBnZG1vU3BlY2lhbAotICBIaUxpbmsgZ2Rtb0NvbW1lbnQJICAgICAgQ29tbWVudAotICBIaUxpbmsgZ2Rtb0xpbmVDb21tZW50ICAgICAgZ2Rtb0NvbW1lbnQKLSAgSGlMaW5rIGdkbW9UeXBlCSAgICAgIFR5cGUKK0hpTGluayBnZG1vQ2F0ZWdvcnkJICAgICAgU3RydWN0dXJlCitIaUxpbmsgZ2Rtb1JlbGF0aW9uc2hpcCAgICAgTWFjcm8KK0hpTGluayBnZG1vRGVmaW5pdGlvbiAgICAgICBTdGF0ZW1lbnQKK0hpTGluayBnZG1vUmVmZXJlbmNlCSAgICAgIFR5cGUKK0hpTGluayBnZG1vRXh0ZW5zaW9uCSAgICAgIE9wZXJhdG9yCitIaUxpbmsgZ2Rtb0JyYWNlcwkgICAgICBGdW5jdGlvbgorSGlMaW5rIGdkbW9TcGVjaWFsCSAgICAgIFNwZWNpYWwKK0hpTGluayBnZG1vU3RyaW5nCSAgICAgIFN0cmluZworSGlMaW5rIGdkbW9DaGFyYWN0ZXIJICAgICAgQ2hhcmFjdGVyCitIaUxpbmsgZ2Rtb1NwZWNpYWxDaGFyYWN0ZXIgZ2Rtb1NwZWNpYWwKK0hpTGluayBnZG1vQ29tbWVudAkgICAgICBDb21tZW50CitIaUxpbmsgZ2Rtb0xpbmVDb21tZW50ICAgICAgZ2Rtb0NvbW1lbnQKK0hpTGluayBnZG1vVHlwZQkgICAgICBUeXBlCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJnZG1vIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9nZWRjb20udmltIGIvcnVudGltZS9zeW50YXgvZ2VkY29tLnZpbQppbmRleCA5ODg1MWNjLi40MGExNzg2IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9nZWRjb20udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2dlZGNvbS52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglQYXVsIEpvaG5zb24gKHBqY2pAdHJhbnNlZGEuY29tKQogIiBWZXJzaW9uIDEuMDU5IC0gMjNyZCBEZWNlbWJlciAxOTk5CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC00MSwyNiArMzgsMTggQEAKIHN5bnRheCBtYXRjaCBnZWRjb21fZGF0ZSAiLioiIGNvbnRhaW5lZAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9nZWRjb21fc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfZ2VkY29tX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgZ2VkY29tX3JlY29yZCBTdGF0ZW1lbnQKLSAgSGlMaW5rIGdlZGNvbV9pZCBDb21tZW50Ci0gIEhpTGluayBnZWRjb21faWkgUHJlUHJvYwotICBIaUxpbmsgZ2VkY29tX2luIFR5cGUKLSAgSGlMaW5rIGdlZGNvbV9uYW1lIFByZVByb2MKLSAgSGlMaW5rIGdlZGNvbV9jbmFtZSBUeXBlCi0gIEhpTGluayBnZWRjb21fc3VybmFtZSBJZGVudGlmaWVyCi0gIEhpTGluayBnZWRjb21fZGF0ZSBDb25zdGFudAorSGlMaW5rIGdlZGNvbV9yZWNvcmQgU3RhdGVtZW50CitIaUxpbmsgZ2VkY29tX2lkIENvbW1lbnQKK0hpTGluayBnZWRjb21faWkgUHJlUHJvYworSGlMaW5rIGdlZGNvbV9pbiBUeXBlCitIaUxpbmsgZ2VkY29tX25hbWUgUHJlUHJvYworSGlMaW5rIGdlZGNvbV9jbmFtZSBUeXBlCitIaUxpbmsgZ2VkY29tX3N1cm5hbWUgSWRlbnRpZmllcgorSGlMaW5rIGdlZGNvbV9kYXRlIENvbnN0YW50CiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJnZWRjb20iCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9naXRjb21taXQudmltIGIvcnVudGltZS9zeW50YXgvZ2l0Y29tbWl0LnZpbQppbmRleCBiMDMxNWE5Li41ZTA2NDJmIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9naXRjb21taXQudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2dpdGNvbW1pdC52aW0KQEAgLTIsNyArMiw3IEBACiAiIExhbmd1YWdlOglnaXQgY29tbWl0IGZpbGUKICIgTWFpbnRhaW5lcjoJVGltIFBvcGUgPHZpbU5PU1BBTUB0cG9wZS5vcmc+CiAiIEZpbGVuYW1lczoJKi5naXQvQ09NTUlUX0VESVRNU0cKLSIgTGFzdCBDaGFuZ2U6CTIwMTMgTWF5IDMwCisiIExhc3QgQ2hhbmdlOgkyMDE2IEF1ZyAyOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKQEAgLTM5LDkgKzM5LDEwIEBACiBzeW4gcmVnaW9uICBnaXRjb21taXRTZWxlY3RlZAlzdGFydD0vXiMgQ2hhbmdlcyB0byBiZSBjb21taXR0ZWQ6LyBlbmQ9L14jJFx8XiNcQCEvIGNvbnRhaW5zPWdpdGNvbW1pdEhlYWRlcixnaXRjb21taXRIZWFkLGdpdGNvbW1pdFNlbGVjdGVkVHlwZSBmb2xkCiBzeW4gcmVnaW9uICBnaXRjb21taXRVbm1lcmdlZAlzdGFydD0vXiMgVW5tZXJnZWQgcGF0aHM6LyBlbmQ9L14jJFx8XiNcQCEvIGNvbnRhaW5zPWdpdGNvbW1pdEhlYWRlcixnaXRjb21taXRIZWFkLGdpdGNvbW1pdFVubWVyZ2VkVHlwZSBmb2xkCiAKLXN5biBtYXRjaCAgIGdpdGNvbW1pdERpc2NhcmRlZFR5cGUJIlx0XEA8PVthLXpdW2EteiBdKlthLXpdOiAiaGU9ZS0yCWNvbnRhaW5lZCBjb250YWluZWRpbj1naXRjb21taXRDb21tZW50IG5leHRncm91cD1naXRjb21taXREaXNjYXJkZWRGaWxlIHNraXB3aGl0ZQotc3luIG1hdGNoICAgZ2l0Y29tbWl0U2VsZWN0ZWRUeXBlCSJcdFxAPD1bYS16XVthLXogXSpbYS16XTogImhlPWUtMgljb250YWluZWQgY29udGFpbmVkaW49Z2l0Y29tbWl0Q29tbWVudCBuZXh0Z3JvdXA9Z2l0Y29tbWl0U2VsZWN0ZWRGaWxlIHNraXB3aGl0ZQotc3luIG1hdGNoICAgZ2l0Y29tbWl0VW5tZXJnZWRUeXBlCSJcdFxAPD1bYS16XVthLXogXSpbYS16XTogImhlPWUtMgljb250YWluZWQgY29udGFpbmVkaW49Z2l0Y29tbWl0Q29tbWVudCBuZXh0Z3JvdXA9Z2l0Y29tbWl0VW5tZXJnZWRGaWxlIHNraXB3aGl0ZQorCitzeW4gbWF0Y2ggICBnaXRjb21taXREaXNjYXJkZWRUeXBlCSJcdFxAPD1bWzpsb3dlcjpdXVteOl0qW1s6bG93ZXI6XV06ICJoZT1lLTIJY29udGFpbmVkIGNvbnRhaW5lZGluPWdpdGNvbW1pdENvbW1lbnQgbmV4dGdyb3VwPWdpdGNvbW1pdERpc2NhcmRlZEZpbGUgc2tpcHdoaXRlCitzeW4gbWF0Y2ggICBnaXRjb21taXRTZWxlY3RlZFR5cGUJIlx0XEA8PVtbOmxvd2VyOl1dW146XSpbWzpsb3dlcjpdXTogImhlPWUtMgljb250YWluZWQgY29udGFpbmVkaW49Z2l0Y29tbWl0Q29tbWVudCBuZXh0Z3JvdXA9Z2l0Y29tbWl0U2VsZWN0ZWRGaWxlIHNraXB3aGl0ZQorc3luIG1hdGNoICAgZ2l0Y29tbWl0VW5tZXJnZWRUeXBlCSJcdFxAPD1bWzpsb3dlcjpdXVteOl0qW1s6bG93ZXI6XV06ICJoZT1lLTIJY29udGFpbmVkIGNvbnRhaW5lZGluPWdpdGNvbW1pdENvbW1lbnQgbmV4dGdyb3VwPWdpdGNvbW1pdFVubWVyZ2VkRmlsZSBza2lwd2hpdGUKIHN5biBtYXRjaCAgIGdpdGNvbW1pdERpc2NhcmRlZEZpbGUJIi5cey1cfVwlKCRcfCAtPiBcKVxAPSIgY29udGFpbmVkIG5leHRncm91cD1naXRjb21taXREaXNjYXJkZWRBcnJvdwogc3luIG1hdGNoICAgZ2l0Y29tbWl0U2VsZWN0ZWRGaWxlCSIuXHstXH1cJSgkXHwgLT4gXClcQD0iIGNvbnRhaW5lZCBuZXh0Z3JvdXA9Z2l0Y29tbWl0U2VsZWN0ZWRBcnJvdwogc3luIG1hdGNoICAgZ2l0Y29tbWl0VW5tZXJnZWRGaWxlCSIuXHstXH1cJSgkXHwgLT4gXClcQD0iIGNvbnRhaW5lZCBuZXh0Z3JvdXA9Z2l0Y29tbWl0U2VsZWN0ZWRBcnJvdwpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZ2l0cmViYXNlLnZpbSBiL3J1bnRpbWUvc3ludGF4L2dpdHJlYmFzZS52aW0KaW5kZXggYTc0NjAyOC4uYTk0NGMxNCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZ2l0cmViYXNlLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9naXRyZWJhc2UudmltCkBAIC0yLDcgKzIsNyBAQAogIiBMYW5ndWFnZToJZ2l0IHJlYmFzZSAtLWludGVyYWN0aXZlCiAiIE1haW50YWluZXI6CVRpbSBQb3BlIDx2aW1OT1NQQU1AdHBvcGUub3JnPgogIiBGaWxlbmFtZXM6CWdpdC1yZWJhc2UtdG9kbwotIiBMYXN0IENoYW5nZToJMjAxMyBNYXkgMzAKKyIgTGFzdCBDaGFuZ2U6CTIwMTYgQXVnIDI5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApAQCAtMTgsNiArMTgsNyBAQAogc3luIG1hdGNoICAgZ2l0cmViYXNlU3F1YXNoICJcdl5zJShxdWFzaCk9PiIgbmV4dGdyb3VwPWdpdHJlYmFzZUNvbW1pdCBza2lwd2hpdGUKIHN5biBtYXRjaCAgIGdpdHJlYmFzZUZpeHVwICAiXHZeZiUoaXh1cCk9PiIgIG5leHRncm91cD1naXRyZWJhc2VDb21taXQgc2tpcHdoaXRlCiBzeW4gbWF0Y2ggICBnaXRyZWJhc2VFeGVjICAgIlx2XiUoeHxleGVjKT4iIG5leHRncm91cD1naXRyZWJhc2VDb21tYW5kIHNraXB3aGl0ZQorc3luIG1hdGNoICAgZ2l0cmViYXNlRHJvcCAgICJcdl5kJShyb3ApPT4iICAgbmV4dGdyb3VwPWdpdHJlYmFzZUNvbW1pdCBza2lwd2hpdGUKIHN5biBtYXRjaCAgIGdpdHJlYmFzZVN1bW1hcnkgIi4qIiAgICAgICAgICAgICAgIGNvbnRhaW5zPWdpdHJlYmFzZUhhc2ggY29udGFpbmVkCiBzeW4gbWF0Y2ggICBnaXRyZWJhc2VDb21tYW5kICIuKiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRhaW5lZAogc3luIG1hdGNoICAgZ2l0cmViYXNlQ29tbWVudCAiXiMuKiIgICAgICAgICAgICAgY29udGFpbnM9Z2l0cmViYXNlSGFzaApAQCAtMzEsNiArMzIsNyBAQAogaGkgZGVmIGxpbmsgZ2l0cmViYXNlU3F1YXNoICAgICAgICAgVHlwZQogaGkgZGVmIGxpbmsgZ2l0cmViYXNlRml4dXAgICAgICAgICAgU3BlY2lhbAogaGkgZGVmIGxpbmsgZ2l0cmViYXNlRXhlYyAgICAgICAgICAgRnVuY3Rpb24KK2hpIGRlZiBsaW5rIGdpdHJlYmFzZURyb3AgICAgICAgICAgIENvbW1lbnQKIGhpIGRlZiBsaW5rIGdpdHJlYmFzZVN1bW1hcnkgICAgICAgIFN0cmluZwogaGkgZGVmIGxpbmsgZ2l0cmViYXNlQ29tbWVudCAgICAgICAgQ29tbWVudAogaGkgZGVmIGxpbmsgZ2l0cmViYXNlU3F1YXNoRXJyb3IgICAgRXJyb3IKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2dpdHNlbmRlbWFpbC52aW0gYi9ydW50aW1lL3N5bnRheC9naXRzZW5kZW1haWwudmltCmluZGV4IDhiOTM4MTEuLjhmZGY2ODMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2dpdHNlbmRlbWFpbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZ2l0c2VuZGVtYWlsLnZpbQpAQCAtMSwxNCArMSwxOCBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6CWdpdCBzZW5kLWVtYWlsIG1lc3NhZ2UKICIgTWFpbnRhaW5lcjoJVGltIFBvcGUKLSIgRmlsZW5hbWVzOgkqLm1zZy5bMC05XSogKGZpcnN0IGxpbmUgaXMgIkZyb20gLi4uICMgVGhpcyBsaW5lIGlzIGlnbm9yZWQuIikKLSIgTGFzdCBDaGFuZ2U6CTIwMTAgTWF5IDIxCisiIEZpbGVuYW1lczoJLmdpdHNlbmRlbWFpbC4qCisiIExhc3QgQ2hhbmdlOgkyMDE2IEF1ZyAyOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKIHJ1bnRpbWUhIHN5bnRheC9tYWlsLnZpbQordW5sZXQhIGI6Y3VycmVudF9zeW50YXgKK3N5biBpbmNsdWRlIEBnaXRzZW5kZW1haWxEaWZmIHN5bnRheC9kaWZmLnZpbQorc3luIHJlZ2lvbiBnaXRzZW5kZW1haWxEaWZmIHN0YXJ0PS9cJSheZGlmZiAtLVwlKGdpdFx8Y2NcfGNvbWJpbmVkXCkgXClcQD0vIGVuZD0vXi0tICUvIGZvbGQgY29udGFpbnM9QGdpdHNlbmRlbWFpbERpZmYKKwogc3luIGNhc2UgbWF0Y2gKIAogc3luIG1hdGNoICAgZ2l0c2VuZGVtYWlsQ29tbWVudCAiXCVeRnJvbS4qIy4qIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZ2tyZWxsbXJjLnZpbSBiL3J1bnRpbWUvc3ludGF4L2drcmVsbG1yYy52aW0KaW5kZXggNmNlMTIzOC4uOTg0MGE5MCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZ2tyZWxsbXJjLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9na3JlbGxtcmMudmltCkBAIC02LDE5ICs2LDEyIEBACiAiIFVSTDogaHR0cDovL3RyaWZpYy5hdGguY3gvRnRwL3ZpbS9zeW50YXgvZ2tyZWxsbXJjLnZpbQogCiAiIFNldHVwCi1pZiB2ZXJzaW9uID49IDYwMAotCWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCi0JCWZpbmlzaAotCWVuZGlmCi1lbHNlCi0Jc3ludGF4IGNsZWFyCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKwlmaW5pc2gKIGVuZGlmCiAKLWlmIHZlcnNpb24gPj0gNjAwCi0Jc2V0bG9jYWwgaXNrZXl3b3JkPV8sLSxhLXosQS1aLDQ4LTU3Ci1lbHNlCi0Jc2V0IGlza2V5d29yZD1fLC0sYS16LEEtWiw0OC01NwotZW5kaWYKK3NldGxvY2FsIGlza2V5d29yZD1fLC0sYS16LEEtWiw0OC01NwogCiBzeW4gY2FzZSBtYXRjaAogCkBAIC01NSwzNyArNDgsMzAgQEAKIHN5biBrZXl3b3JkIGdrcmVsbG1yY1N0eWxlSXRlbSB0ZXh0Y29sb3IgYWx0X3RleHRjb2xvciBmb250IGFsdF9mb250IHRyYW5zcGFyZW5jeSBib3JkZXIgbGFiZWxfcG9zaXRpb24gbWFyZ2luIG1hcmdpbnMgbGVmdF9tYXJnaW4gcmlnaHRfbWFyZ2luIHRvcF9tYXJnaW4gYm90dG9tX21hcmdpbiBrcmVsbF9kZXB0aCBrcmVsbF95b2ZmIGtyZWxsX3hfaG90IGtyZWxsX2V4cGFuZCBrcmVsbF9sZWZ0X21hcmdpbiBrcmVsbF9yaWdodF9tYXJnaW4KIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfZ3RrcmNfc3ludGF4X2luaXRzIikKLQlpZiB2ZXJzaW9uIDwgNTA4Ci0JCWxldCBkaWRfZ3RrcmNfc3ludGF4X2luaXRzID0gMQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotCWVsc2UKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0JZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0JSGlMaW5rIGdrcmVsbG1yY0NvbW1lbnQgQ29tbWVudAotCUhpTGluayBna3JlbGxtcmNGaXhtZSBUb2RvCitIaUxpbmsgZ2tyZWxsbXJjQ29tbWVudCBDb21tZW50CitIaUxpbmsgZ2tyZWxsbXJjRml4bWUgVG9kbwogCi0JSGlMaW5rIGdrcmVsbG1yY1N0cmluZyBna3JlbGxtcmNDb25zdGFudAotCUhpTGluayBna3JlbGxtcmNOdW1iZXIgZ2tyZWxsbXJjQ29uc3RhbnQKLQlIaUxpbmsgZ2tyZWxsbXJjUkdCQ29sb3IgZ2tyZWxsbXJjQ29uc3RhbnQKLQlIaUxpbmsgZ2tyZWxsbXJjRXhwYW5kTW9kZSBna3JlbGxtcmNDb25zdGFudAotCUhpTGluayBna3JlbGxtcmNDb25zdGFudCBDb25zdGFudAorSGlMaW5rIGdrcmVsbG1yY1N0cmluZyBna3JlbGxtcmNDb25zdGFudAorSGlMaW5rIGdrcmVsbG1yY051bWJlciBna3JlbGxtcmNDb25zdGFudAorSGlMaW5rIGdrcmVsbG1yY1JHQkNvbG9yIGdrcmVsbG1yY0NvbnN0YW50CitIaUxpbmsgZ2tyZWxsbXJjRXhwYW5kTW9kZSBna3JlbGxtcmNDb25zdGFudAorSGlMaW5rIGdrcmVsbG1yY0NvbnN0YW50IENvbnN0YW50CiAKLQlIaUxpbmsgZ2tyZWxsbXJjTWV0ZXJOYW1lIGdrcmVsbG1yY0NsYXNzCi0JSGlMaW5rIGdrcmVsbG1yY0NoYXJ0TmFtZSBna3JlbGxtcmNDbGFzcwotCUhpTGluayBna3JlbGxtcmNTcGVjaWFsQ2xhc3NOYW1lIGdrcmVsbG1yY0NsYXNzCi0JSGlMaW5rIGdrcmVsbG1yY0NsYXNzIFR5cGUKK0hpTGluayBna3JlbGxtcmNNZXRlck5hbWUgZ2tyZWxsbXJjQ2xhc3MKK0hpTGluayBna3JlbGxtcmNDaGFydE5hbWUgZ2tyZWxsbXJjQ2xhc3MKK0hpTGluayBna3JlbGxtcmNTcGVjaWFsQ2xhc3NOYW1lIGdrcmVsbG1yY0NsYXNzCitIaUxpbmsgZ2tyZWxsbXJjQ2xhc3MgVHlwZQogCi0JSGlMaW5rIGdrcmVsbG1yY0dsb2JhbCBna3JlbGxtcmNJdGVtCi0JSGlMaW5rIGdrcmVsbG1yY0J1aWx0aW5FeHQgZ2tyZWxsbXJjSXRlbQotCUhpTGluayBna3JlbGxtcmNTdHlsZUl0ZW0gZ2tyZWxsbXJjSXRlbQotCUhpTGluayBna3JlbGxtcmNJdGVtIEZ1bmN0aW9uCitIaUxpbmsgZ2tyZWxsbXJjR2xvYmFsIGdrcmVsbG1yY0l0ZW0KK0hpTGluayBna3JlbGxtcmNCdWlsdGluRXh0IGdrcmVsbG1yY0l0ZW0KK0hpTGluayBna3JlbGxtcmNTdHlsZUl0ZW0gZ2tyZWxsbXJjSXRlbQorSGlMaW5rIGdrcmVsbG1yY0l0ZW0gRnVuY3Rpb24KIAotCUhpTGluayBna3JlbGxtcmNTZXRDbWQgU3BlY2lhbAotCUhpTGluayBna3JlbGxtcmNTdHlsZUNtZCBTdGF0ZW1lbnQKK0hpTGluayBna3JlbGxtcmNTZXRDbWQgU3BlY2lhbAorSGlMaW5rIGdrcmVsbG1yY1N0eWxlQ21kIFN0YXRlbWVudAogCi0JZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJna3JlbGxtcmMiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9nbmFzaC52aW0gYi9ydW50aW1lL3N5bnRheC9nbmFzaC52aW0KaW5kZXggZjllMmI1MS4uY2NlNTIyZCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZ25hc2gudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2duYXNoLnZpbQpAQCAtMTUsMTEgKzE1LDggQEAKICIJCVZpbSBpcyBDaGFyaXR5d2FyZSwgc2VlICI6aGVscCBVZ2FuZGEiCiAiCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikgfHwgJmNvbXBhdGlibGUKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKSB8fCAmY29tcGF0aWJsZQogICAgIGZpbmlzaAogZW5kaWYKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZ251cGxvdC52aW0gYi9ydW50aW1lL3N5bnRheC9nbnVwbG90LnZpbQppbmRleCBkODU5MzJkLi4zOGFhZGZmIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9nbnVwbG90LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9nbnVwbG90LnZpbQpAQCAtMjAsOSArMjAsOCBAQAogIiBGb3IgdmltIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCiAiIEZvciB2aW0gdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC01MDEsNTQgKzUwMCw0NiBAQAogc3luIGtleXdvcmQgZ251cGxvdFN0YXRlbWVudAl1bnNldCB1cGRhdGUKIAogIiAtLS0tIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcgLS0tLSAiCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9nbnVwbG90X3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2dudXBsb3Rfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICIgLS0tLSBDb21tZW50cyAtLS0tICIKLSAgSGlMaW5rIGdudXBsb3RDb21tZW50CQlDb21tZW50CisiIC0tLS0gQ29tbWVudHMgLS0tLSAiCitIaUxpbmsgZ251cGxvdENvbW1lbnQJCUNvbW1lbnQKIAotICAiIC0tLS0gQ29uc3RhbnRzIC0tLS0gIgotICBIaUxpbmsgZ251cGxvdFN0cmluZwkJU3RyaW5nCi0gIEhpTGluayBnbnVwbG90TnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIGdudXBsb3RGbG9hdAkJRmxvYXQKKyIgLS0tLSBDb25zdGFudHMgLS0tLSAiCitIaUxpbmsgZ251cGxvdFN0cmluZwkJU3RyaW5nCitIaUxpbmsgZ251cGxvdE51bWJlcgkJTnVtYmVyCitIaUxpbmsgZ251cGxvdEZsb2F0CQlGbG9hdAogCi0gICIgLS0tLSBJZGVudGlmaWVycyAtLS0tICIKLSAgSGlMaW5rIGdudXBsb3RJZGVudGlmaWVyCUlkZW50aWZpZXIKKyIgLS0tLSBJZGVudGlmaWVycyAtLS0tICIKK0hpTGluayBnbnVwbG90SWRlbnRpZmllcglJZGVudGlmaWVyCiAKLSAgIiAtLS0tIFN0YXRlbWVudHMgLS0tLSAiCi0gIEhpTGluayBnbnVwbG90Q29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIGdudXBsb3RSZXBlYXQJCVJlcGVhdAotICBIaUxpbmsgZ251cGxvdEtleXdvcmQJCUtleXdvcmQKLSAgSGlMaW5rIGdudXBsb3RPcGVyYXRvcglPcGVyYXRvcgorIiAtLS0tIFN0YXRlbWVudHMgLS0tLSAiCitIaUxpbmsgZ251cGxvdENvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCitIaUxpbmsgZ251cGxvdFJlcGVhdAkJUmVwZWF0CitIaUxpbmsgZ251cGxvdEtleXdvcmQJCUtleXdvcmQKK0hpTGluayBnbnVwbG90T3BlcmF0b3IJT3BlcmF0b3IKIAotICAiIC0tLS0gUHJlUHJvY3MgLS0tLSAiCi0gIEhpTGluayBnbnVwbG90TWFjcm8JCU1hY3JvCisiIC0tLS0gUHJlUHJvY3MgLS0tLSAiCitIaUxpbmsgZ251cGxvdE1hY3JvCQlNYWNybwogCi0gICIgLS0tLSBUeXBlcyAtLS0tICIKLSAgSGlMaW5rIGdudXBsb3RTdGF0ZW1lbnQJVHlwZQotICBIaUxpbmsgZ251cGxvdEZ1bmMJCUlkZW50aWZpZXIKKyIgLS0tLSBUeXBlcyAtLS0tICIKK0hpTGluayBnbnVwbG90U3RhdGVtZW50CVR5cGUKK0hpTGluayBnbnVwbG90RnVuYwkJSWRlbnRpZmllcgogCi0gICIgLS0tLSBTcGVjaWFscyAtLS0tICIKLSAgSGlMaW5rIGdudXBsb3RTcGVjaWFsCQlTcGVjaWFsCi0gIEhpTGluayBnbnVwbG90VW5pdAkJU3BlY2lhbAotICBIaUxpbmsgZ251cGxvdEV4dGVybmFsCVNwZWNpYWwKKyIgLS0tLSBTcGVjaWFscyAtLS0tICIKK0hpTGluayBnbnVwbG90U3BlY2lhbAkJU3BlY2lhbAorSGlMaW5rIGdudXBsb3RVbml0CQlTcGVjaWFsCitIaUxpbmsgZ251cGxvdEV4dGVybmFsCVNwZWNpYWwKIAotICAiIC0tLS0gRXJyb3JzIC0tLS0gIgotICBIaUxpbmsgZ251cGxvdEVycm9yCQlFcnJvcgotICBIaUxpbmsgZ251cGxvdE9jdGFsRXJyb3IJRXJyb3IKKyIgLS0tLSBFcnJvcnMgLS0tLSAiCitIaUxpbmsgZ251cGxvdEVycm9yCQlFcnJvcgorSGlMaW5rIGdudXBsb3RPY3RhbEVycm9yCUVycm9yCiAKLSAgIiAtLS0tIFRvZG9zIC0tLS0gIgotICBIaUxpbmsgZ251cGxvdFRvZG8JCVRvZG8KKyIgLS0tLSBUb2RvcyAtLS0tICIKK0hpTGluayBnbnVwbG90VG9kbwkJVG9kbwogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiZ251cGxvdCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZ3AudmltIGIvcnVudGltZS9zeW50YXgvZ3AudmltCmluZGV4IGY0NmE0NjUuLjJlODk4ZGEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2dwLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9ncC52aW0KQEAgLTQsOSArNCw4IEBACiAiIExhc3QgY2hhbmdlOgkyMDEyIEphbiAwOAogIiBVUkw6CQlodHRwOi8vcGFyaS5tYXRoLnUtYm9yZGVhdXguZnIKIAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNTksMzMgKzU4LDI2IEBACiBzeW50YXggbWF0Y2ggZ3BQYXJlbkVycm9yCSIpIgogc3ludGF4IG1hdGNoIGdwSW5QYXJlbiBjb250YWluZWQgIlt7fV0iCiAKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9ncF9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9ncF9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGdwQ29uZGl0aW9uYWwJCUNvbmRpdGlvbmFsCi0gIEhpTGluayBncFJlcGVhdAkJUmVwZWF0Ci0gIEhpTGluayBncEVycm9yCQlFcnJvcgotICBIaUxpbmsgZ3BQYXJlbkVycm9yCQlncEVycm9yCi0gIEhpTGluayBncEluUGFyZW4JCWdwRXJyb3IKLSAgSGlMaW5rIGdwU3RhdGVtZW50CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGdwU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIGdwQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgZ3BJbnRlcmZhY2UJCVR5cGUKLSAgSGlMaW5rIGdwSW5wdXQJCVR5cGUKLSAgSGlMaW5rIGdwSW50ZXJmYWNlS2V5CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGdwRnVuY3Rpb24JCUZ1bmN0aW9uCi0gIEhpTGluayBncFNjb3BlCQlUeXBlCi0gICIgY29udGFpbmVkIG9uZXMKLSAgSGlMaW5rIGdwU3BlY2lhbAkJU3BlY2lhbAotICBIaUxpbmsgZ3BUb2RvCQkJVG9kbwotICBIaUxpbmsgZ3BBcmdzCQkJVHlwZQotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK0hpTGluayBncENvbmRpdGlvbmFsCQlDb25kaXRpb25hbAorSGlMaW5rIGdwUmVwZWF0CQlSZXBlYXQKK0hpTGluayBncEVycm9yCQlFcnJvcgorSGlMaW5rIGdwUGFyZW5FcnJvcgkJZ3BFcnJvcgorSGlMaW5rIGdwSW5QYXJlbgkJZ3BFcnJvcgorSGlMaW5rIGdwU3RhdGVtZW50CQlTdGF0ZW1lbnQKK0hpTGluayBncFN0cmluZwkJU3RyaW5nCitIaUxpbmsgZ3BDb21tZW50CQlDb21tZW50CitIaUxpbmsgZ3BJbnRlcmZhY2UJCVR5cGUKK0hpTGluayBncElucHV0CQlUeXBlCitIaUxpbmsgZ3BJbnRlcmZhY2VLZXkJCVN0YXRlbWVudAorSGlMaW5rIGdwRnVuY3Rpb24JCUZ1bmN0aW9uCitIaUxpbmsgZ3BTY29wZQkJVHlwZQorIiBjb250YWluZWQgb25lcworSGlMaW5rIGdwU3BlY2lhbAkJU3BlY2lhbAorSGlMaW5rIGdwVG9kbwkJCVRvZG8KK0hpTGluayBncEFyZ3MJCQlUeXBlCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJncCIKIGxldCAmY3BvID0gczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZ3JhZHMudmltIGIvcnVudGltZS9zeW50YXgvZ3JhZHMudmltCmluZGV4IDBiODg1NDkuLjBmMDk0ODMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2dyYWRzLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9ncmFkcy52aW0KQEAgLTcsMTEgKzcsOCBAQAogIiBUaGlzIHN5bnRheCBmaWxlIGRlZmluZXMgaGlnaGxpZ2h0aW5nIGZvciBvbmx5IHZlcnkgZmV3IGZlYXR1cmVzIG9mCiAiIHRoZSBHckFEUyBzY3JpcHRpbmcgbGFuZ3VhZ2UuCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC01MywzNCArNTAsMjYgQEAKICIgc3luIG1hdGNoIGdyYWRzVHlwb3MJIiE9IgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoZ3MgaGlnaGxpZ2h0aW5nK3lldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2dzX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLQlsZXQgZGlkX2dzX3N5bl9pbml0cyA9IDEKLQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGdzIGhpZ2hsaWdodGluZyt5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBncmFkc1N0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsgZ3JhZHNTdGF0ZW1lbnQJCVN0YXRlbWVudAogCi0gIEhpTGluayBncmFkc1N0cmluZwkJU3RyaW5nCi0gIEhpTGluayBncmFkc051bWJlcgkJTnVtYmVyCitIaUxpbmsgZ3JhZHNTdHJpbmcJCVN0cmluZworSGlMaW5rIGdyYWRzTnVtYmVyCQlOdW1iZXIKIAotICBIaUxpbmsgZ3JhZHNGaXhWYXJpYWJsZXMJU3BlY2lhbAotICBIaUxpbmsgZ3JhZHNWYXJpYWJsZXMJCUlkZW50aWZpZXIKLSAgSGlMaW5rIGdyYWRzZ2xvYmFsVmFyaWFibGVzCVNwZWNpYWwKLSAgSGlMaW5rIGdyYWRzQ29uc3QJCVNwZWNpYWwKK0hpTGluayBncmFkc0ZpeFZhcmlhYmxlcwlTcGVjaWFsCitIaUxpbmsgZ3JhZHNWYXJpYWJsZXMJCUlkZW50aWZpZXIKK0hpTGluayBncmFkc2dsb2JhbFZhcmlhYmxlcwlTcGVjaWFsCitIaUxpbmsgZ3JhZHNDb25zdAkJU3BlY2lhbAogCi0gIEhpTGluayBncmFkc0NsYXNzTWV0aG9kcwlGdW5jdGlvbgorSGlMaW5rIGdyYWRzQ2xhc3NNZXRob2RzCUZ1bmN0aW9uCiAKLSAgSGlMaW5rIGdyYWRzT3BlcmF0b3IJCU9wZXJhdG9yCi0gIEhpTGluayBncmFkc0NvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBncmFkc09wZXJhdG9yCQlPcGVyYXRvcgorSGlMaW5rIGdyYWRzQ29tbWVudAkJQ29tbWVudAogCi0gIEhpTGluayBncmFkc1R5cG9zCQlFcnJvcgorSGlMaW5rIGdyYWRzVHlwb3MJCUVycm9yCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJncmFkcyIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2dyZXRsLnZpbSBiL3J1bnRpbWUvc3ludGF4L2dyZXRsLnZpbQppbmRleCAzNzI5OWI4Li40MGViNTQ0IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9ncmV0bC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZ3JldGwudmltCkBAIC00LDIwICs0LDEzIEBACiAiIExhc3QgQ2hhbmdlOiAgMjAwNiBBcHIgMzAKICIgRmlsZW5hbWVzOgkqLmlucCAqLmdyZXRsCiAiIFVSTDoJaHR0cDovL3Vvc2lzLm1pZi52dS5sdC9+emVtbHlzL3ZpbS1zeW50YXgvZ3JldGwudmltCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCi1pZiB2ZXJzaW9uID49IDYwMAotICBzZXRsb2NhbCBpc2tleXdvcmQ9QCw0OC01NyxfLC4KLWVsc2UKLSAgc2V0IGlza2V5d29yZD1ALDQ4LTU3LF8sLgotZW5kaWYKK3NldGxvY2FsIGlza2V5d29yZD1ALDQ4LTU3LF8sLgogCiBzeW4gY2FzZSBtYXRjaAogCkBAIC02OCwzNCArNjEsMjYgQEAKIHN5biByZWdpb24gZ0Jsb2NrQ29tbWVudCBtYXRjaGdyb3VwPWdDb21tZW50U3RhcnQgc3RhcnQ9IihcKiIgZW5kPSJcKikiCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3Jfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfcl9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgotICBIaUxpbmsgZ0NvbW1lbnQgICAgICBDb21tZW50Ci0gIEhpTGluayBnQ29tbWVudFN0YXJ0IENvbW1lbnQKLSAgSGlMaW5rIGdCbG9ja0NvbW1lbnQgQ29tbWVudAotICBIaUxpbmsgZ1N0cmluZyAgICAgICBTdHJpbmcKLSAgSGlMaW5rIGdOdW1iZXIgICAgICAgTnVtYmVyCi0gIEhpTGluayBnQm9vbGVhbiAgICAgIEJvb2xlYW4KLSAgSGlMaW5rIGdGbG9hdCAgICAgICAgRmxvYXQKLSAgSGlMaW5rIGdDb21tYW5kcyAgICAgUmVwZWF0CQotICBIaUxpbmsgZ0dlbnJGdW5jICAgICBUeXBlCi0gIEhpTGluayBnRGVsaW1pdGVyICAgIERlbGltaXRlcgotICBIaUxpbmsgZ0Vycm9yICAgICAgICBFcnJvcgotICBIaUxpbmsgZ0JyYWNlRXJyb3IgICBFcnJvcgotICBIaUxpbmsgZ0N1cmx5RXJyb3IgICBFcnJvcgotICBIaUxpbmsgZ1BhcmVuRXJyb3IgICBFcnJvcgotICBIaUxpbmsgZ0lkZW50aWZpZXIgICBOb3JtYWwKLSAgSGlMaW5rIGdWYXJpYWJsZSAgICAgSWRlbnRpZmllcgotICBIaUxpbmsgZ0Fycm93CSAgICAgICBSZXBlYXQKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KK0hpTGluayBnQ29tbWVudCAgICAgIENvbW1lbnQKK0hpTGluayBnQ29tbWVudFN0YXJ0IENvbW1lbnQKK0hpTGluayBnQmxvY2tDb21tZW50IENvbW1lbnQKK0hpTGluayBnU3RyaW5nICAgICAgIFN0cmluZworSGlMaW5rIGdOdW1iZXIgICAgICAgTnVtYmVyCitIaUxpbmsgZ0Jvb2xlYW4gICAgICBCb29sZWFuCitIaUxpbmsgZ0Zsb2F0ICAgICAgICBGbG9hdAorSGlMaW5rIGdDb21tYW5kcyAgICAgUmVwZWF0CQorSGlMaW5rIGdHZW5yRnVuYyAgICAgVHlwZQorSGlMaW5rIGdEZWxpbWl0ZXIgICAgRGVsaW1pdGVyCitIaUxpbmsgZ0Vycm9yICAgICAgICBFcnJvcgorSGlMaW5rIGdCcmFjZUVycm9yICAgRXJyb3IKK0hpTGluayBnQ3VybHlFcnJvciAgIEVycm9yCitIaUxpbmsgZ1BhcmVuRXJyb3IgICBFcnJvcgorSGlMaW5rIGdJZGVudGlmaWVyICAgTm9ybWFsCitIaUxpbmsgZ1ZhcmlhYmxlICAgICBJZGVudGlmaWVyCitIaUxpbmsgZ0Fycm93CSAgICAgICBSZXBlYXQKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4PSJncmV0bCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZ3Jvb3Z5LnZpbSBiL3J1bnRpbWUvc3ludGF4L2dyb292eS52aW0KaW5kZXggZGMzOTY3Ny4uODRlMzc3OSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZ3Jvb3Z5LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9ncm9vdnkudmltCkBAIC00NCwxMSArNDQsOSBAQAogIiBMZXQgbWUga25vdyBpZiB5b3UgbGlrZSBpdCBvciBzZW5kIG1lIHBhdGNoZXMsIHNvIHRoYXQgSSBjYW4gaW1wcm92ZSBpdAogIiB3aGVuIEkgaGF2ZSB0aW1lCiAKLSIgUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAogaWYgIWV4aXN0cygibWFpbl9zeW50YXgiKQotICBpZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3ludGF4IGNsZWFyCi0gIGVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorICBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICAgIGZpbmlzaAogICBlbmRpZgogICAiIHdlIGRlZmluZSBpdCBoZXJlIHNvIHRoYXQgaW5jbHVkZWQgZmlsZXMgY2FuIHRlc3QgZm9yIGl0CkBAIC01OSwxMSArNTcsNyBAQAogc2V0IGNwbyZ2aW0KIAogIiBkb24ndCB1c2Ugc3RhbmRhcmQgSGlMaW5rLCBpdCB3aWxsIG5vdCB3b3JrIHdpdGggaW5jbHVkZWQgc3ludGF4IGZpbGVzCi1pZiB2ZXJzaW9uIDwgNTA4Ci0gIGNvbW1hbmQhIC1uYXJncz0rIEdyb292eUhpTGluayBoaSBsaW5rIDxhcmdzPgotZWxzZQotICBjb21tYW5kISAtbmFyZ3M9KyBHcm9vdnlIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci1lbmRpZgorY29tbWFuZCEgLW5hcmdzPSsgR3Jvb3Z5SGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCiAiICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAiIEphdmEgc3R1ZmYgdGFrZW4gZnJvbSBqYXZhLnZpbQpAQCAtMzI5LDIzICszMjMsMjEgQEAKIAogICBzeW4gY2x1c3RlciBncm9vdnlUb3AgYWRkPWdyb292eURlYnVnCiAKLSAgaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2Nfc3luX2luaXRzIikKLSAgICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5RGVidWcgICAgICAgICAgICAgICAgIERlYnVnCi0gICAgR3Jvb3Z5SGlMaW5rIGdyb292eURlYnVnU3RyaW5nICAgICAgICAgICBEZWJ1Z1N0cmluZwotICAgIEdyb292eUhpTGluayBncm9vdnlEZWJ1Z1N0cmluZ0Vycm9yICAgICAgZ3Jvb3Z5RXJyb3IKLSAgICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5RGVidWdUeXBlICAgICAgICAgICAgIERlYnVnVHlwZQotICAgIEdyb292eUhpTGluayBncm9vdnlEZWJ1Z0Jvb2xlYW4gICAgICAgICAgRGVidWdCb29sZWFuCi0gICAgR3Jvb3Z5SGlMaW5rIGdyb292eURlYnVnTnVtYmVyICAgICAgICAgICBEZWJ1ZwotICAgIEdyb292eUhpTGluayBncm9vdnlEZWJ1Z1NwZWNpYWwgICAgICAgICAgRGVidWdTcGVjaWFsCi0gICAgR3Jvb3Z5SGlMaW5rIGdyb292eURlYnVnU3BlY2lhbENoYXJhY3RlciBEZWJ1Z1NwZWNpYWwKLSAgICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5RGVidWdDaGFyYWN0ZXIgICAgICAgIERlYnVnU3RyaW5nCi0gICAgR3Jvb3Z5SGlMaW5rIGdyb292eURlYnVnUGFyZW4gICAgICAgICAgICBEZWJ1ZworICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5RGVidWcgICAgICAgICAgICAgICAgIERlYnVnCisgIEdyb292eUhpTGluayBncm9vdnlEZWJ1Z1N0cmluZyAgICAgICAgICAgRGVidWdTdHJpbmcKKyAgR3Jvb3Z5SGlMaW5rIGdyb292eURlYnVnU3RyaW5nRXJyb3IgICAgICBncm9vdnlFcnJvcgorICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5RGVidWdUeXBlICAgICAgICAgICAgIERlYnVnVHlwZQorICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5RGVidWdCb29sZWFuICAgICAgICAgIERlYnVnQm9vbGVhbgorICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5RGVidWdOdW1iZXIgICAgICAgICAgIERlYnVnCisgIEdyb292eUhpTGluayBncm9vdnlEZWJ1Z1NwZWNpYWwgICAgICAgICAgRGVidWdTcGVjaWFsCisgIEdyb292eUhpTGluayBncm9vdnlEZWJ1Z1NwZWNpYWxDaGFyYWN0ZXIgRGVidWdTcGVjaWFsCisgIEdyb292eUhpTGluayBncm9vdnlEZWJ1Z0NoYXJhY3RlciAgICAgICAgRGVidWdTdHJpbmcKKyAgR3Jvb3Z5SGlMaW5rIGdyb292eURlYnVnUGFyZW4gICAgICAgICAgICBEZWJ1ZwogCi0gICAgR3Jvb3Z5SGlMaW5rIERlYnVnU3RyaW5nICAgICAgICAgICAgICAgU3RyaW5nCi0gICAgR3Jvb3Z5SGlMaW5rIERlYnVnU3BlY2lhbCAgICAgICAgICAgICAgU3BlY2lhbAotICAgIEdyb292eUhpTGluayBEZWJ1Z0Jvb2xlYW4gICAgICAgICAgICAgIEJvb2xlYW4KLSAgICBHcm9vdnlIaUxpbmsgRGVidWdUeXBlICAgICAgICAgICAgICAgICBUeXBlCi0gIGVuZGlmCisgIEdyb292eUhpTGluayBEZWJ1Z1N0cmluZyAgICAgICAgICAgICAgIFN0cmluZworICBHcm9vdnlIaUxpbmsgRGVidWdTcGVjaWFsICAgICAgICAgICAgICBTcGVjaWFsCisgIEdyb292eUhpTGluayBEZWJ1Z0Jvb2xlYW4gICAgICAgICAgICAgIEJvb2xlYW4KKyAgR3Jvb3Z5SGlMaW5rIERlYnVnVHlwZSAgICAgICAgICAgICAgICAgVHlwZQogZW5kaWYKIAogIiBNYXRjaCBhbGwgRXhjZXB0aW9uIGNsYXNzZXMKQEAgLTM5OCw1OSArMzkwLDU0IEBACiAKICIgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwogIiBqYXZhLnZpbSBkZWZhdWx0IGhpZ2hsaWdodGluZwotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2dyb292eV9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9ncm9vdnlfc3luX2luaXRzID0gMQotICBlbmRpZgotICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5RnVuY0RlZgkJRnVuY3Rpb24KLSAgR3Jvb3Z5SGlMaW5rIGdyb292eUJyYWNlcwkJRnVuY3Rpb24KLSAgR3Jvb3Z5SGlMaW5rIGdyb292eUJyYW5jaAkJQ29uZGl0aW9uYWwKLSAgR3Jvb3Z5SGlMaW5rIGdyb292eVVzZXJMYWJlbFJlZglncm9vdnlVc2VyTGFiZWwKLSAgR3Jvb3Z5SGlMaW5rIGdyb292eUxhYmVsCQlMYWJlbAotICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5VXNlckxhYmVsCQlMYWJlbAotICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5Q29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLSAgR3Jvb3Z5SGlMaW5rIGdyb292eVJlcGVhdAkJUmVwZWF0Ci0gIEdyb292eUhpTGluayBncm9vdnlFeGNlcHRpb25zCQlFeGNlcHRpb24KLSAgR3Jvb3Z5SGlMaW5rIGdyb292eUFzc2VydCAJCVN0YXRlbWVudAotICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5U3RvcmFnZUNsYXNzCVN0b3JhZ2VDbGFzcwotICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5TWV0aG9kRGVjbAkJZ3Jvb3Z5U3RvcmFnZUNsYXNzCi0gIEdyb292eUhpTGluayBncm9vdnlDbGFzc0RlY2wJCWdyb292eVN0b3JhZ2VDbGFzcwotICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5U2NvcGVEZWNsCQlncm9vdnlTdG9yYWdlQ2xhc3MKLSAgR3Jvb3Z5SGlMaW5rIGdyb292eUJvb2xlYW4JCUJvb2xlYW4KLSAgR3Jvb3Z5SGlMaW5rIGdyb292eVNwZWNpYWwJCVNwZWNpYWwKLSAgR3Jvb3Z5SGlMaW5rIGdyb292eVNwZWNpYWxFcnJvcglFcnJvcgotICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5U3BlY2lhbENoYXJFcnJvcglFcnJvcgotICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5U3RyaW5nCQlTdHJpbmcKLSAgR3Jvb3Z5SGlMaW5rIGdyb292eVJlZ2V4Q2hhcgkJU3RyaW5nCi0gIEdyb292eUhpTGluayBncm9vdnlDaGFyYWN0ZXIJCUNoYXJhY3RlcgotICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5U3BlY2lhbENoYXIJU3BlY2lhbENoYXIKLSAgR3Jvb3Z5SGlMaW5rIGdyb292eU51bWJlcgkJTnVtYmVyCi0gIEdyb292eUhpTGluayBncm9vdnlFcnJvcgkJRXJyb3IKLSAgR3Jvb3Z5SGlMaW5rIGdyb292eVN0cmluZ0Vycm9yCUVycm9yCi0gIEdyb292eUhpTGluayBncm9vdnlTdGF0ZW1lbnQJCVN0YXRlbWVudAotICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5T3BlcmF0b3IJCU9wZXJhdG9yCi0gIEdyb292eUhpTGluayBncm9vdnlDb21tZW50CQlDb21tZW50Ci0gIEdyb292eUhpTGluayBncm9vdnlEb2NDb21tZW50CQlDb21tZW50Ci0gIEdyb292eUhpTGluayBncm9vdnlMaW5lQ29tbWVudAlDb21tZW50Ci0gIEdyb292eUhpTGluayBncm9vdnlDb25zdGFudAkJQ29uc3RhbnQKLSAgR3Jvb3Z5SGlMaW5rIGdyb292eVR5cGVkZWYJCVR5cGVkZWYKLSAgR3Jvb3Z5SGlMaW5rIGdyb292eVRvZG8JCVRvZG8KK0dyb292eUhpTGluayBncm9vdnlGdW5jRGVmCQlGdW5jdGlvbgorR3Jvb3Z5SGlMaW5rIGdyb292eUJyYWNlcwkJRnVuY3Rpb24KK0dyb292eUhpTGluayBncm9vdnlCcmFuY2gJCUNvbmRpdGlvbmFsCitHcm9vdnlIaUxpbmsgZ3Jvb3Z5VXNlckxhYmVsUmVmCWdyb292eVVzZXJMYWJlbAorR3Jvb3Z5SGlMaW5rIGdyb292eUxhYmVsCQlMYWJlbAorR3Jvb3Z5SGlMaW5rIGdyb292eVVzZXJMYWJlbAkJTGFiZWwKK0dyb292eUhpTGluayBncm9vdnlDb25kaXRpb25hbAlDb25kaXRpb25hbAorR3Jvb3Z5SGlMaW5rIGdyb292eVJlcGVhdAkJUmVwZWF0CitHcm9vdnlIaUxpbmsgZ3Jvb3Z5RXhjZXB0aW9ucwkJRXhjZXB0aW9uCitHcm9vdnlIaUxpbmsgZ3Jvb3Z5QXNzZXJ0IAkJU3RhdGVtZW50CitHcm9vdnlIaUxpbmsgZ3Jvb3Z5U3RvcmFnZUNsYXNzCVN0b3JhZ2VDbGFzcworR3Jvb3Z5SGlMaW5rIGdyb292eU1ldGhvZERlY2wJCWdyb292eVN0b3JhZ2VDbGFzcworR3Jvb3Z5SGlMaW5rIGdyb292eUNsYXNzRGVjbAkJZ3Jvb3Z5U3RvcmFnZUNsYXNzCitHcm9vdnlIaUxpbmsgZ3Jvb3Z5U2NvcGVEZWNsCQlncm9vdnlTdG9yYWdlQ2xhc3MKK0dyb292eUhpTGluayBncm9vdnlCb29sZWFuCQlCb29sZWFuCitHcm9vdnlIaUxpbmsgZ3Jvb3Z5U3BlY2lhbAkJU3BlY2lhbAorR3Jvb3Z5SGlMaW5rIGdyb292eVNwZWNpYWxFcnJvcglFcnJvcgorR3Jvb3Z5SGlMaW5rIGdyb292eVNwZWNpYWxDaGFyRXJyb3IJRXJyb3IKK0dyb292eUhpTGluayBncm9vdnlTdHJpbmcJCVN0cmluZworR3Jvb3Z5SGlMaW5rIGdyb292eVJlZ2V4Q2hhcgkJU3RyaW5nCitHcm9vdnlIaUxpbmsgZ3Jvb3Z5Q2hhcmFjdGVyCQlDaGFyYWN0ZXIKK0dyb292eUhpTGluayBncm9vdnlTcGVjaWFsQ2hhcglTcGVjaWFsQ2hhcgorR3Jvb3Z5SGlMaW5rIGdyb292eU51bWJlcgkJTnVtYmVyCitHcm9vdnlIaUxpbmsgZ3Jvb3Z5RXJyb3IJCUVycm9yCitHcm9vdnlIaUxpbmsgZ3Jvb3Z5U3RyaW5nRXJyb3IJRXJyb3IKK0dyb292eUhpTGluayBncm9vdnlTdGF0ZW1lbnQJCVN0YXRlbWVudAorR3Jvb3Z5SGlMaW5rIGdyb292eU9wZXJhdG9yCQlPcGVyYXRvcgorR3Jvb3Z5SGlMaW5rIGdyb292eUNvbW1lbnQJCUNvbW1lbnQKK0dyb292eUhpTGluayBncm9vdnlEb2NDb21tZW50CQlDb21tZW50CitHcm9vdnlIaUxpbmsgZ3Jvb3Z5TGluZUNvbW1lbnQJQ29tbWVudAorR3Jvb3Z5SGlMaW5rIGdyb292eUNvbnN0YW50CQlDb25zdGFudAorR3Jvb3Z5SGlMaW5rIGdyb292eVR5cGVkZWYJCVR5cGVkZWYKK0dyb292eUhpTGluayBncm9vdnlUb2RvCQlUb2RvCiAKLSAgR3Jvb3Z5SGlMaW5rIGdyb292eUNvbW1lbnRUaXRsZQlTcGVjaWFsQ29tbWVudAotICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5RG9jVGFncwkJU3BlY2lhbAotICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5RG9jUGFyYW0JCUZ1bmN0aW9uCi0gIEdyb292eUhpTGluayBncm9vdnlDb21tZW50U3Rhcglncm9vdnlDb21tZW50CitHcm9vdnlIaUxpbmsgZ3Jvb3Z5Q29tbWVudFRpdGxlCVNwZWNpYWxDb21tZW50CitHcm9vdnlIaUxpbmsgZ3Jvb3Z5RG9jVGFncwkJU3BlY2lhbAorR3Jvb3Z5SGlMaW5rIGdyb292eURvY1BhcmFtCQlGdW5jdGlvbgorR3Jvb3Z5SGlMaW5rIGdyb292eUNvbW1lbnRTdGFyCWdyb292eUNvbW1lbnQKIAotICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5VHlwZQkJVHlwZQotICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5RXh0ZXJuYWwJCUluY2x1ZGUKK0dyb292eUhpTGluayBncm9vdnlUeXBlCQlUeXBlCitHcm9vdnlIaUxpbmsgZ3Jvb3Z5RXh0ZXJuYWwJCUluY2x1ZGUKIAotICBHcm9vdnlIaUxpbmsgaHRtbENvbW1lbnQJCVNwZWNpYWwKLSAgR3Jvb3Z5SGlMaW5rIGh0bWxDb21tZW50UGFydAkJU3BlY2lhbAotICBHcm9vdnlIaUxpbmsgZ3Jvb3Z5U3BhY2VFcnJvcgkJRXJyb3IKLSAgR3Jvb3Z5SGlMaW5rIGdyb292eUpES0J1aWx0aW4gICAgICAgICBTcGVjaWFsCi0gIEdyb292eUhpTGluayBncm9vdnlKREtPcGVyT3ZlcmwgICAgICAgT3BlcmF0b3IKLSAgR3Jvb3Z5SGlMaW5rIGdyb292eUpES01ldGhvZHMgICAgICAgICBGdW5jdGlvbgotZW5kaWYKK0dyb292eUhpTGluayBodG1sQ29tbWVudAkJU3BlY2lhbAorR3Jvb3Z5SGlMaW5rIGh0bWxDb21tZW50UGFydAkJU3BlY2lhbAorR3Jvb3Z5SGlMaW5rIGdyb292eVNwYWNlRXJyb3IJCUVycm9yCitHcm9vdnlIaUxpbmsgZ3Jvb3Z5SkRLQnVpbHRpbiAgICAgICAgIFNwZWNpYWwKK0dyb292eUhpTGluayBncm9vdnlKREtPcGVyT3ZlcmwgICAgICAgT3BlcmF0b3IKK0dyb292eUhpTGluayBncm9vdnlKREtNZXRob2RzICAgICAgICAgRnVuY3Rpb24KIAogZGVsY29tbWFuZCBHcm9vdnlIaUxpbmsKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZ3NwLnZpbSBiL3J1bnRpbWUvc3ludGF4L2dzcC52aW0KaW5kZXggZTdiMWIxNi4uNjI3MGIyYSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZ3NwLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9nc3AudmltCkBAIC01LDExICs1LDggQEAKICIgRmlsZW5hbWVzOiAgICAqLmdzcAogIiBVUkw6CQlodHRwOi8vd3d3LmNvbnN0cnVjdGljb24uY29tL35uaGFyd2FyZC92aW0vc3ludGF4L2dzcC52aW0KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTE4LDIxICsxNSwxMyBAQAogZW5kaWYKIAogIiBTb3VyY2UgSFRNTCBzeW50YXgKLWlmIHZlcnNpb24gPCA2MDAKLSAgc291cmNlIDxzZmlsZT46cDpoL2h0bWwudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9odG1sLnZpbQotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9odG1sLnZpbQogdW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiBzeW4gY2FzZSBtYXRjaAogCiAiIEluY2x1ZGUgSmF2YSBzeW50YXgKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3luIGluY2x1ZGUgQGdzcEphdmEgPHNmaWxlPjpwOmgvamF2YS52aW0KLWVsc2UKLSAgc3luIGluY2x1ZGUgQGdzcEphdmEgc3ludGF4L2phdmEudmltCi1lbmRpZgorc3luIGluY2x1ZGUgQGdzcEphdmEgc3ludGF4L2phdmEudmltCiAKIGxldCBzOmNwb19zYXZlID0gJmNwbwogc2V0IGNwbyZ2aW0KZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2d0a3JjLnZpbSBiL3J1bnRpbWUvc3ludGF4L2d0a3JjLnZpbQppbmRleCA1NzA1NGEyLi5lM2E1NTUwIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9ndGtyYy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZ3RrcmMudmltCkBAIC02LDE5ICs2LDEyIEBACiAiIFVSTDogaHR0cDovL3RyaWZpYy5hdGguY3gvRnRwL3ZpbS9zeW50YXgvZ3RrcmMudmltCiAKICIgU2V0dXAKLWlmIHZlcnNpb24gPj0gNjAwCi0JaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKLQkJZmluaXNoCi0JZW5kaWYKLWVsc2UKLQlzeW50YXggY2xlYXIKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorCWZpbmlzaAogZW5kaWYKIAotaWYgdmVyc2lvbiA+PSA2MDAKLQlzZXRsb2NhbCBpc2tleXdvcmQ9XywtLGEteixBLVosNDgtNTcKLWVsc2UKLQlzZXQgaXNrZXl3b3JkPV8sLSxhLXosQS1aLDQ4LTU3Ci1lbmRpZgorc2V0bG9jYWwgaXNrZXl3b3JkPV8sLSxhLXosQS1aLDQ4LTU3CiAKIHN5biBjYXNlIG1hdGNoCiAKQEAgLTg2LDU3ICs3OSw1MCBAQAogc3luIHN5bmMgbWF0Y2ggZ3RrcmNTeW5jQ2xhc3MgZ3JvdXB0aGVyZSBOT05FICJeXHMqY2xhc3NcPiIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfZ3RrcmNfc3ludGF4X2luaXRzIikKLQlpZiB2ZXJzaW9uIDwgNTA4Ci0JCWxldCBkaWRfZ3RrcmNfc3ludGF4X2luaXRzID0gMQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotCWVsc2UKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0JZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0JSGlMaW5rIGd0a3JjQ29tbWVudCBDb21tZW50Ci0JSGlMaW5rIGd0a3JjRml4bWUgVG9kbworSGlMaW5rIGd0a3JjQ29tbWVudCBDb21tZW50CitIaUxpbmsgZ3RrcmNGaXhtZSBUb2RvCiAKLQlIaUxpbmsgZ3RrcmNJbmNsdWRlIFByZXByb2MKK0hpTGluayBndGtyY0luY2x1ZGUgUHJlcHJvYwogCi0JSGlMaW5rIGd0a3JjQUNTdHJpbmcgZ3RrcmNTdHJpbmcKLQlIaUxpbmsgZ3RrcmNCU3RyaW5nIGd0a3JjU3RyaW5nCi0JSGlMaW5rIGd0a3JjU3RyaW5nIFN0cmluZwotCUhpTGluayBndGtyY051bWJlciBOdW1iZXIKLQlIaUxpbmsgZ3RrcmNTdGF0ZU5hbWUgZ3RrcmNDb25zdGFudAotCUhpTGluayBndGtyY1ByaW9yaXR5TmFtZSBndGtyY0NvbnN0YW50Ci0JSGlMaW5rIGd0a3JjVGV4dERpck5hbWUgZ3RrcmNDb25zdGFudAotCUhpTGluayBndGtyY1NldHRpbmdzTmFtZSBGdW5jdGlvbgotCUhpTGluayBndGtyY1N0b2NrTmFtZSBGdW5jdGlvbgotCUhpTGluayBndGtyY0NvbnN0YW50IENvbnN0YW50CitIaUxpbmsgZ3RrcmNBQ1N0cmluZyBndGtyY1N0cmluZworSGlMaW5rIGd0a3JjQlN0cmluZyBndGtyY1N0cmluZworSGlMaW5rIGd0a3JjU3RyaW5nIFN0cmluZworSGlMaW5rIGd0a3JjTnVtYmVyIE51bWJlcgorSGlMaW5rIGd0a3JjU3RhdGVOYW1lIGd0a3JjQ29uc3RhbnQKK0hpTGluayBndGtyY1ByaW9yaXR5TmFtZSBndGtyY0NvbnN0YW50CitIaUxpbmsgZ3RrcmNUZXh0RGlyTmFtZSBndGtyY0NvbnN0YW50CitIaUxpbmsgZ3RrcmNTZXR0aW5nc05hbWUgRnVuY3Rpb24KK0hpTGluayBndGtyY1N0b2NrTmFtZSBGdW5jdGlvbgorSGlMaW5rIGd0a3JjQ29uc3RhbnQgQ29uc3RhbnQKIAotCUhpTGluayBndGtyY1BhdGhTcGVjaWFsIGd0a3JjU3BlY2lhbAotCUhpTGluayBndGtyY1dQYXRoU3BlY2lhbCBndGtyY1NwZWNpYWwKLQlIaUxpbmsgZ3RrcmNSR0JDb2xvciBndGtyY1NwZWNpYWwKLQlIaUxpbmsgZ3RrcmNLZXlNb2QgZ3RrcmNTcGVjaWFsCi0JSGlMaW5rIGd0a3JjU3BlY2lhbCBTcGVjaWFsCitIaUxpbmsgZ3RrcmNQYXRoU3BlY2lhbCBndGtyY1NwZWNpYWwKK0hpTGluayBndGtyY1dQYXRoU3BlY2lhbCBndGtyY1NwZWNpYWwKK0hpTGluayBndGtyY1JHQkNvbG9yIGd0a3JjU3BlY2lhbAorSGlMaW5rIGd0a3JjS2V5TW9kIGd0a3JjU3BlY2lhbAorSGlMaW5rIGd0a3JjU3BlY2lhbCBTcGVjaWFsCiAKLQlIaUxpbmsgZ3RrcmNUb3AgZ3RrcmNLZXl3b3JkCi0JSGlMaW5rIGd0a3JjUGF0aFNldCBndGtyY0tleXdvcmQKLQlIaUxpbmsgZ3RrcmNTdHlsZUtleXdvcmQgZ3RrcmNLZXl3b3JkCi0JSGlMaW5rIGd0a3JjRnVuY3Rpb24gZ3RrcmNLZXl3b3JkCi0JSGlMaW5rIGd0a3JjQmluZCBndGtyY0tleXdvcmQKLQlIaUxpbmsgZ3RrcmNLZXl3b3JkIEtleXdvcmQKK0hpTGluayBndGtyY1RvcCBndGtyY0tleXdvcmQKK0hpTGluayBndGtyY1BhdGhTZXQgZ3RrcmNLZXl3b3JkCitIaUxpbmsgZ3RrcmNTdHlsZUtleXdvcmQgZ3RrcmNLZXl3b3JkCitIaUxpbmsgZ3RrcmNGdW5jdGlvbiBndGtyY0tleXdvcmQKK0hpTGluayBndGtyY0JpbmQgZ3RrcmNLZXl3b3JkCitIaUxpbmsgZ3RrcmNLZXl3b3JkIEtleXdvcmQKIAotCUhpTGluayBndGtyY0NsYXNzTmFtZUdub21lIGd0a3JjR3RrQ2xhc3MKLQlIaUxpbmsgZ3RrcmNDbGFzc05hbWUgZ3RrcmNHdGtDbGFzcwotCUhpTGluayBndGtyY0Z1bmN0aW9uTmFtZSBndGtyY0d0a0NsYXNzCi0JSGlMaW5rIGd0a3JjR3RrQ2xhc3MgVHlwZQorSGlMaW5rIGd0a3JjQ2xhc3NOYW1lR25vbWUgZ3RrcmNHdGtDbGFzcworSGlMaW5rIGd0a3JjQ2xhc3NOYW1lIGd0a3JjR3RrQ2xhc3MKK0hpTGluayBndGtyY0Z1bmN0aW9uTmFtZSBndGtyY0d0a0NsYXNzCitIaUxpbmsgZ3RrcmNHdGtDbGFzcyBUeXBlCiAKLQlIaUxpbmsgZ3RrcmNJbWFnZSBndGtyY090aGVyd29yZAotCUhpTGluayBndGtyY090aGVyd29yZCBGdW5jdGlvbgorSGlMaW5rIGd0a3JjSW1hZ2UgZ3RrcmNPdGhlcndvcmQKK0hpTGluayBndGtyY090aGVyd29yZCBGdW5jdGlvbgogCi0JSGlMaW5rIGd0a3JjUGFyZW5FcnJvciBndGtyY0Vycm9yCi0JSGlMaW5rIGd0a3JjQnJhY2VFcnJvciBndGtyY0Vycm9yCi0JSGlMaW5rIGd0a3JjQnJhY2tldEVycm9yIGd0a3JjRXJyb3IKLQlIaUxpbmsgZ3RrcmNFcnJvciBFcnJvcgorSGlMaW5rIGd0a3JjUGFyZW5FcnJvciBndGtyY0Vycm9yCitIaUxpbmsgZ3RrcmNCcmFjZUVycm9yIGd0a3JjRXJyb3IKK0hpTGluayBndGtyY0JyYWNrZXRFcnJvciBndGtyY0Vycm9yCitIaUxpbmsgZ3RrcmNFcnJvciBFcnJvcgogCi0JZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJndGtyYyIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2hhbWwudmltIGIvcnVudGltZS9zeW50YXgvaGFtbC52aW0KaW5kZXggYmY3YTA3My4uNTM2OTY5NSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvaGFtbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvaGFtbC52aW0KQEAgLTIsNyArMiw3IEBACiAiIExhbmd1YWdlOglIYW1sCiAiIE1haW50YWluZXI6CVRpbSBQb3BlIDx2aW1OT1NQQU1AdHBvcGUub3JnPgogIiBGaWxlbmFtZXM6CSouaGFtbAotIiBMYXN0IENoYW5nZToJMjAxMCBBdWcgMDkKKyIgTGFzdCBDaGFuZ2U6CTIwMTYgQXVnIDI5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApAQCAtNjcsNyArNjcsNyBAQAogc3luIHJlZ2lvbiAgaGFtbENTU0ZpbHRlciAgICAgICAgbWF0Y2hncm91cD1oYW1sRmlsdGVyIHN0YXJ0PSJeXHooXHMqXCk6Y3NzXHMqJCIgICAgICAgIGVuZD0iXlwlKFx6MSBcfCAqJFwpXEAhIiBjb250YWlucz1AaHRtbENzcyxoYW1sSW50ZXJwb2xhdGlvbiBrZWVwZW5kCiBzeW4gcmVnaW9uICBoYW1sU2Fzc0ZpbHRlciAgICAgICBtYXRjaGdyb3VwPWhhbWxGaWx0ZXIgc3RhcnQ9Il5ceihccypcKTpzYXNzXHMqJCIgICAgICAgZW5kPSJeXCUoXHoxIFx8ICokXClcQCEiIGNvbnRhaW5zPUBoYW1sU2Fzc1RvcAogCi1zeW4gcmVnaW9uICBoYW1sSmF2YXNjcmlwdEJsb2NrIHN0YXJ0PSJeXHooXHMqXCklc2NyaXB0IiBuZXh0Z3JvdXA9QGhhbWxDb21wb25lbnQsaGFtbEVycm9yIGVuZD0iXlwlKFx6MSBcfCAqJFwpXEAhIiBjb250YWlucz1AaGFtbFRvcCxAaHRtbEphdmFTY3JpcHQga2VlcGVuZAorc3luIHJlZ2lvbiAgaGFtbEphdmFzY3JpcHRCbG9jayBzdGFydD0iXlx6KFxzKlwpJXNjcmlwdFwlKCh0eXBlPVtcIidddGV4dC9qYXZhc2NyaXB0W1wiJ10pXClcPVxzKiQiIG5leHRncm91cD1AaGFtbENvbXBvbmVudCxoYW1sRXJyb3IgZW5kPSJeXCUoXHoxIFx8ICokXClcQCEiIGNvbnRhaW5zPUBoYW1sVG9wLEBodG1sSmF2YVNjcmlwdCBrZWVwZW5kCiBzeW4gcmVnaW9uICBoYW1sQ3NzQmxvY2sgICAgICAgIHN0YXJ0PSJeXHooXHMqXCklc3R5bGUiIG5leHRncm91cD1AaGFtbENvbXBvbmVudCxoYW1sRXJyb3IgIGVuZD0iXlwlKFx6MSBcfCAqJFwpXEAhIiBjb250YWlucz1AaGFtbFRvcCxAaHRtbENzcyBrZWVwZW5kCiBzeW4gbWF0Y2ggICBoYW1sRXJyb3IgIlwkIiBjb250YWluZWQKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvaGFtc3Rlci52aW0gYi9ydW50aW1lL3N5bnRheC9oYW1zdGVyLnZpbQppbmRleCBiZDUyMzAwLi5mOWFhZGEyIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9oYW1zdGVyLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9oYW1zdGVyLnZpbQpAQCAtMTIsMTAgKzEyLDggQEAKICIgZm9yIG5ld3MgYW5kIG1haWwsIGEgYnVpbGQtaW4gc2NyaXB0IGxhbmd1YWdlLCB0aGUgR1VJIGFsbG93cyB0cmFuc2xhdGlvbiB0bwogIiBvdGhlciBsYW5ndWFnZXMsIGl0IGNhbiBiZSB1c2VkIGluIGEgbmV0d29yayBhbmQgdGhhdCdzIG5vdCBhbGwgZmVhdHVyZXMuLi4KICIKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICAgZmluaXNoCiBlbmRpZgogCkBAIC0zNTgsMjQgKzM1NiwxNiBAQAogc3luIHN5bmMgY2NvbW1lbnQgaGFtc3Rlckhhc2hDb21tZW50CiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2hhbXN0ZXJfc3luX2luaXRzIikKLSAgICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgICAgIGxldCBkaWRfaGFtc3Rlcl9zeW5faW5pdHMgPSAxCi0gICAgICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gICAgZWxzZQotICAgICAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgICBIaUxpbmsgaGFtc3Rlckhhc2hDb21tZW50CUNvbW1lbnQKLSAgICBIaUxpbmsgaGFtc3RlclNwZWNpYWwJU3BlY2lhbAotICAgIEhpTGluayBoYW1zdGVyU3RhdGVtZW50CVN0YXRlbWVudAotICAgIEhpTGluayBoYW1zdGVyU3RyaW5nCVN0cmluZwotICAgIEhpTGluayBoYW1zdGVyRnVuY3Rpb24JRnVuY3Rpb24KK0hpTGluayBoYW1zdGVySGFzaENvbW1lbnQJQ29tbWVudAorSGlMaW5rIGhhbXN0ZXJTcGVjaWFsCVNwZWNpYWwKK0hpTGluayBoYW1zdGVyU3RhdGVtZW50CVN0YXRlbWVudAorSGlMaW5rIGhhbXN0ZXJTdHJpbmcJU3RyaW5nCitIaUxpbmsgaGFtc3RlckZ1bmN0aW9uCUZ1bmN0aW9uCiAKLSAgICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImhhbXN0ZXIiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2hhc2tlbGwudmltIGIvcnVudGltZS9zeW50YXgvaGFza2VsbC52aW0KaW5kZXggOGFmY2EwNC4uODZkNTU0YiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvaGFza2VsbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvaGFza2VsbC52aW0KQEAgLTMyLDEwICszMiw4IEBACiAiCSAgICAgICB0byBhdHRyaWJ1dGlvbiBvZiB3b3JrLgogIiAyMDA4IERlYyAxNTogQWRkZWQgY29tbWVudHMgYXMgY29udGFpbmVkIGVsZW1lbnQgaW4gaW1wb3J0IHN0YXRlbWVudHMKIAotIiBSZW1vdmUgYW55IG9sZCBzeW50YXggc3R1ZmYgaGFuZ2luZyBhcm91bmQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3luIGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTEyNyw2NyArMTI1LDU5IEBACiBzeW4gcmVnaW9uCWNDcHBTdHJpbmcJc3RhcnQ9K0xcPSIrIHNraXA9K1xcXFxcfFxcIlx8XFwkKyBleGNsdWRlbmwgZW5kPSsiKyBlbmQ9JyQnIGNvbnRhaW5zPWNTcGVjaWFsIGNvbnRhaW5lZAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9oc19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9oc19zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGhzTW9kdWxlCQkJICBoc1N0cnVjdHVyZQotICBIaUxpbmsgaHNJbXBvcnQJCQkgIEluY2x1ZGUKLSAgSGlMaW5rIGhzSW1wb3J0TW9kCQkJICBoc0ltcG9ydAotICBIaUxpbmsgaHNJbmZpeAkJCSAgUHJlUHJvYwotICBIaUxpbmsgaHNTdHJ1Y3R1cmUJCQkgIFN0cnVjdHVyZQotICBIaUxpbmsgaHNTdGF0ZW1lbnQJCQkgIFN0YXRlbWVudAotICBIaUxpbmsgaHNDb25kaXRpb25hbAkJCSAgQ29uZGl0aW9uYWwKLSAgSGlMaW5rIGhzU3BlY2lhbENoYXIJCQkgIFNwZWNpYWxDaGFyCi0gIEhpTGluayBoc1R5cGVkZWYJCQkgIFR5cGVkZWYKLSAgSGlMaW5rIGhzVmFyU3ltCQkJICBoc09wZXJhdG9yCi0gIEhpTGluayBoc0NvblN5bQkJCSAgaHNPcGVyYXRvcgotICBIaUxpbmsgaHNPcGVyYXRvcgkJCSAgT3BlcmF0b3IKLSAgaWYgZXhpc3RzKCJoc19oaWdobGlnaHRfZGVsaW1pdGVycyIpCi0gICAgIiBTb21lIHBlb3BsZSBmaW5kIHRoaXMgaGlnaGxpZ2h0aW5nIGRpc3RyYWN0aW5nLgotICAgIEhpTGluayBoc0RlbGltaXRlcgkJCSAgRGVsaW1pdGVyCi0gIGVuZGlmCi0gIEhpTGluayBoc1NwZWNpYWxDaGFyRXJyb3IJCSAgRXJyb3IKLSAgSGlMaW5rIGhzU3RyaW5nCQkJICBTdHJpbmcKLSAgSGlMaW5rIGhzQ2hhcmFjdGVyCQkJICBDaGFyYWN0ZXIKLSAgSGlMaW5rIGhzTnVtYmVyCQkJICBOdW1iZXIKLSAgSGlMaW5rIGhzRmxvYXQJCQkgIEZsb2F0Ci0gIEhpTGluayBoc0NvbmRpdGlvbmFsCQkJICBDb25kaXRpb25hbAotICBIaUxpbmsgaHNMaXRlcmF0ZUNvbW1lbnQJCSAgaHNDb21tZW50Ci0gIEhpTGluayBoc0Jsb2NrQ29tbWVudAkJICBoc0NvbW1lbnQKLSAgSGlMaW5rIGhzTGluZUNvbW1lbnQJCQkgIGhzQ29tbWVudAotICBIaUxpbmsgaHNDb21tZW50CQkJICBDb21tZW50Ci0gIEhpTGluayBoc1ByYWdtYQkJCSAgU3BlY2lhbENvbW1lbnQKLSAgSGlMaW5rIGhzQm9vbGVhbgkJCSAgQm9vbGVhbgotICBIaUxpbmsgaHNUeXBlCQkJICBUeXBlCi0gIEhpTGluayBoc01heWJlCQkJICBoc0VudW1Db25zdAotICBIaUxpbmsgaHNPcmRlcmluZwkJCSAgaHNFbnVtQ29uc3QKLSAgSGlMaW5rIGhzRW51bUNvbnN0CQkJICBDb25zdGFudAotICBIaUxpbmsgaHNEZWJ1ZwkJCSAgRGVidWcKLQotICBIaUxpbmsgY0NwcFN0cmluZwkJaHNTdHJpbmcKLSAgSGlMaW5rIGNDb21tZW50U3RhcnQJCWhzQ29tbWVudAotICBIaUxpbmsgY0NvbW1lbnRFcnJvcgkJaHNFcnJvcgotICBIaUxpbmsgY0NvbW1lbnRTdGFydEVycm9yCWhzRXJyb3IKLSAgSGlMaW5rIGNJbmNsdWRlCQlJbmNsdWRlCi0gIEhpTGluayBjUHJlUHJvYwkJUHJlUHJvYwotICBIaUxpbmsgY0RlZmluZQkJTWFjcm8KLSAgSGlMaW5rIGNJbmNsdWRlZAkJaHNTdHJpbmcKLSAgSGlMaW5rIGNFcnJvcgkJCUVycm9yCi0gIEhpTGluayBjUHJlQ29uZGl0CQlQcmVDb25kaXQKLSAgSGlMaW5rIGNDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBjQ3BwU2tpcAkJY0NwcE91dAotICBIaUxpbmsgY0NwcE91dDIJCWNDcHBPdXQKLSAgSGlMaW5rIGNDcHBPdXQJCUNvbW1lbnQKLQotICBkZWxjb21tYW5kIEhpTGluaworSGlMaW5rIGhzTW9kdWxlCQkJICBoc1N0cnVjdHVyZQorSGlMaW5rIGhzSW1wb3J0CQkJICBJbmNsdWRlCitIaUxpbmsgaHNJbXBvcnRNb2QJCQkgIGhzSW1wb3J0CitIaUxpbmsgaHNJbmZpeAkJCSAgUHJlUHJvYworSGlMaW5rIGhzU3RydWN0dXJlCQkJICBTdHJ1Y3R1cmUKK0hpTGluayBoc1N0YXRlbWVudAkJCSAgU3RhdGVtZW50CitIaUxpbmsgaHNDb25kaXRpb25hbAkJCSAgQ29uZGl0aW9uYWwKK0hpTGluayBoc1NwZWNpYWxDaGFyCQkJICBTcGVjaWFsQ2hhcgorSGlMaW5rIGhzVHlwZWRlZgkJCSAgVHlwZWRlZgorSGlMaW5rIGhzVmFyU3ltCQkJICBoc09wZXJhdG9yCitIaUxpbmsgaHNDb25TeW0JCQkgIGhzT3BlcmF0b3IKK0hpTGluayBoc09wZXJhdG9yCQkJICBPcGVyYXRvcgoraWYgZXhpc3RzKCJoc19oaWdobGlnaHRfZGVsaW1pdGVycyIpCisiIFNvbWUgcGVvcGxlIGZpbmQgdGhpcyBoaWdobGlnaHRpbmcgZGlzdHJhY3RpbmcuCitIaUxpbmsgaHNEZWxpbWl0ZXIJCQkgIERlbGltaXRlcgogZW5kaWYKK0hpTGluayBoc1NwZWNpYWxDaGFyRXJyb3IJCSAgRXJyb3IKK0hpTGluayBoc1N0cmluZwkJCSAgU3RyaW5nCitIaUxpbmsgaHNDaGFyYWN0ZXIJCQkgIENoYXJhY3RlcgorSGlMaW5rIGhzTnVtYmVyCQkJICBOdW1iZXIKK0hpTGluayBoc0Zsb2F0CQkJICBGbG9hdAorSGlMaW5rIGhzQ29uZGl0aW9uYWwJCQkgIENvbmRpdGlvbmFsCitIaUxpbmsgaHNMaXRlcmF0ZUNvbW1lbnQJCSAgaHNDb21tZW50CitIaUxpbmsgaHNCbG9ja0NvbW1lbnQJCSAgaHNDb21tZW50CitIaUxpbmsgaHNMaW5lQ29tbWVudAkJCSAgaHNDb21tZW50CitIaUxpbmsgaHNDb21tZW50CQkJICBDb21tZW50CitIaUxpbmsgaHNQcmFnbWEJCQkgIFNwZWNpYWxDb21tZW50CitIaUxpbmsgaHNCb29sZWFuCQkJICBCb29sZWFuCitIaUxpbmsgaHNUeXBlCQkJICBUeXBlCitIaUxpbmsgaHNNYXliZQkJCSAgaHNFbnVtQ29uc3QKK0hpTGluayBoc09yZGVyaW5nCQkJICBoc0VudW1Db25zdAorSGlMaW5rIGhzRW51bUNvbnN0CQkJICBDb25zdGFudAorSGlMaW5rIGhzRGVidWcJCQkgIERlYnVnCisKK0hpTGluayBjQ3BwU3RyaW5nCQloc1N0cmluZworSGlMaW5rIGNDb21tZW50U3RhcnQJCWhzQ29tbWVudAorSGlMaW5rIGNDb21tZW50RXJyb3IJCWhzRXJyb3IKK0hpTGluayBjQ29tbWVudFN0YXJ0RXJyb3IJaHNFcnJvcgorSGlMaW5rIGNJbmNsdWRlCQlJbmNsdWRlCitIaUxpbmsgY1ByZVByb2MJCVByZVByb2MKK0hpTGluayBjRGVmaW5lCQlNYWNybworSGlMaW5rIGNJbmNsdWRlZAkJaHNTdHJpbmcKK0hpTGluayBjRXJyb3IJCQlFcnJvcgorSGlMaW5rIGNQcmVDb25kaXQJCVByZUNvbmRpdAorSGlMaW5rIGNDb21tZW50CQlDb21tZW50CitIaUxpbmsgY0NwcFNraXAJCWNDcHBPdXQKK0hpTGluayBjQ3BwT3V0MgkJY0NwcE91dAorSGlMaW5rIGNDcHBPdXQJCUNvbW1lbnQKKworZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiaGFza2VsbCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvaGFzdGUudmltIGIvcnVudGltZS9zeW50YXgvaGFzdGUudmltCmluZGV4IGI4ODljNWMuLjc5ZTlmNWUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2hhc3RlLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9oYXN0ZS52aW0KQEAgLTEyLDExICsxMiw4IEBACiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICAgIGZpbmlzaAogZW5kaWYKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9oYXN0ZXByZXByb2MudmltIGIvcnVudGltZS9zeW50YXgvaGFzdGVwcmVwcm9jLnZpbQppbmRleCAzZmNiOGRkLi5mMDhiZjNmIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9oYXN0ZXByZXByb2MudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2hhc3RlcHJlcHJvYy52aW0KQEAgLTUsMjQgKzUsMTMgQEAKICIJCWZpbGVzCiAiIFZlcnNpb246CTAuNQogCi0iIEhBU1RFCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKLSAgICBmaW5pc2gKLWVuZGlmCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCi0iIFJlYWQgdGhlIEMgc3ludGF4IHRvIHN0YXJ0IHdpdGgKLWlmIHZlcnNpb24gPCA2MDAKLSAgICBzbyA8c2ZpbGU+OnA6aC9oYXN0ZS52aW0KLWVsc2UKLSAgICBydW50aW1lISBzeW50YXgvaGFzdGUudmltCi0gICAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotZW5kaWYKKyIgUmVhZCB0aGUgaGFzdGUgc3ludGF4IHRvIHN0YXJ0IHdpdGgKK3J1bnRpbWUhIHN5bnRheC9oYXN0ZS52aW0KK3VubGV0IGI6Y3VycmVudF9zeW50YXgKIAogIiBjYXNlIGlzIHNpZ25pZmljYW50CiBzeW4gY2FzZSBtYXRjaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvaGIudmltIGIvcnVudGltZS9zeW50YXgvaGIudmltCmluZGV4IGQ0ZGUzZmYuLmFiMmZiN2YgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2hiLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9oYi52aW0KQEAgLTQsMTEgKzQsOCBAQAogIiBVUkw6CQlodHRwOi8vYmFjaHVlLmNvbS9oYi92aW0vc3ludGF4L2hiLnZpbQogIiBMYXN0IENoYW5nZToJMjAxMiBKYW4gMDggYnkgVGhpbG8gU2l4CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC02MywzMSArNjAsMjMgQEAKIHN5biBtYXRjaCBIQkNvbW1lbnQgIl4jLiokIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9oYl9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9oYl9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIEhCaHRtbFN0cmluZwkJCSBTdHJpbmcKLSAgSGlMaW5rIEhCaHRtbFRhZ04JCQkgRnVuY3Rpb24KLSAgSGlMaW5rIGh0bWxTcGVjaWFsQ2hhcgkJIFN0cmluZworSGlMaW5rIEhCaHRtbFN0cmluZwkJCSBTdHJpbmcKK0hpTGluayBIQmh0bWxUYWdOCQkJIEZ1bmN0aW9uCitIaUxpbmsgaHRtbFNwZWNpYWxDaGFyCQkgU3RyaW5nCiAKLSAgSGlMaW5rIEhCSW52YWxpZExpbmUgRXJyb3IKLSAgSGlMaW5rIEhCRm9vYmFyIENvbW1lbnQKLSAgaGkgSEJGaWxlTmFtZSBndWliZz1saWdodGdyYXkgZ3VpZmc9YmxhY2sKLSAgSGlMaW5rIEhCRGlyZWN0aXZlRXJyb3IgRXJyb3IKLSAgSGlMaW5rIEhCRGlyZWN0aXZlQmxvY2tFbmQgSEJEaXJlY3RpdmVLZXl3b3JkCi0gIGhpIEhCRGlyZWN0aXZlS2V5d29yZCBndWliZz1saWdodGdyYXkgZ3VpZmc9ZGFya2dyZWVuCi0gIEhpTGluayBIQkNvbW1lbnQgQ29tbWVudAotICBIaUxpbmsgSEJodG1sVGFnU2sgU3RhdGVtZW50CitIaUxpbmsgSEJJbnZhbGlkTGluZSBFcnJvcgorSGlMaW5rIEhCRm9vYmFyIENvbW1lbnQKK2hpIEhCRmlsZU5hbWUgZ3VpYmc9bGlnaHRncmF5IGd1aWZnPWJsYWNrCitIaUxpbmsgSEJEaXJlY3RpdmVFcnJvciBFcnJvcgorSGlMaW5rIEhCRGlyZWN0aXZlQmxvY2tFbmQgSEJEaXJlY3RpdmVLZXl3b3JkCitoaSBIQkRpcmVjdGl2ZUtleXdvcmQgZ3VpYmc9bGlnaHRncmF5IGd1aWZnPWRhcmtncmVlbgorSGlMaW5rIEhCQ29tbWVudCBDb21tZW50CitIaUxpbmsgSEJodG1sVGFnU2sgU3RhdGVtZW50CiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBzeW4gc3luYyBtYXRjaCBOb3JtYWwgZ3JvdXBoZXJlIE5PTkUgIl46XHMqJCIKIHN5biBzeW5jIG1hdGNoIE5vcm1hbCBncm91cGhlcmUgTk9ORSAiXjpccypsaWJcc1wrW14gXHRdXCskIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvaGVyY3VsZXMudmltIGIvcnVudGltZS9zeW50YXgvaGVyY3VsZXMudmltCmluZGV4IDAyZDhlOWIuLjJhNzg2NzYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2hlcmN1bGVzLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9oZXJjdWxlcy52aW0KQEAgLTcsMTEgKzcsOCBAQAogIgkJdGhhdCBhbiBJQydzIHBoeXNpY2FsIGRlc2lnbiBtYXRjaGVzIGl0cyBsb2dpY2FsIGRlc2lnbiBhbmQKICIJCXNhdGlzZmllcyBtYW51ZmFjdHVyaW5nIHJ1bGVzLgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTAxLDMyICs5OCwyMyBAQAogc3luIHN5bmMgICAgICBsaW5lcz0xMDAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfaGVyY3VsZXNfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfaGVyY3VsZXNfc3ludGF4X2luaXRzID0gMQotICAgICIgRGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGhlcmN1bGVzU3RhdGVtZW50ICBTdGF0ZW1lbnQKLSAgSGlMaW5rIGhlcmN1bGVzVHlwZSAgICAgICBUeXBlCi0gIEhpTGluayBoZXJjdWxlc0NvbW1lbnQgICAgQ29tbWVudAotICBIaUxpbmsgaGVyY3VsZXNQcmVQcm9jICAgIFByZVByb2MKLSAgSGlMaW5rIGhlcmN1bGVzVG9kbyAgICAgICBUb2RvCi0gIEhpTGluayBoZXJjdWxlc091dHB1dCAgICAgSW5jbHVkZQotICBIaUxpbmsgaGVyY3VsZXNDbWRDbW50ICAgIElkZW50aWZpZXIKLSAgSGlMaW5rIGhlcmN1bGVzTnVtYmVyICAgICBOdW1iZXIKLSAgSGlMaW5rIGhlcmN1bGVzQnJhY2VFcnJvciBoZXJjdWxlc0Vycm9yCi0gIEhpTGluayBoZXJjdWxlc0N1cmx5RXJyb3IgaGVyY3VsZXNFcnJvcgotICBIaUxpbmsgaGVyY3VsZXNQYXJlbkVycm9yIGhlcmN1bGVzRXJyb3IKLSAgSGlMaW5rIGhlcmN1bGVzRXJyb3IgICAgICBFcnJvcgorSGlMaW5rIGhlcmN1bGVzU3RhdGVtZW50ICBTdGF0ZW1lbnQKK0hpTGluayBoZXJjdWxlc1R5cGUgICAgICAgVHlwZQorSGlMaW5rIGhlcmN1bGVzQ29tbWVudCAgICBDb21tZW50CitIaUxpbmsgaGVyY3VsZXNQcmVQcm9jICAgIFByZVByb2MKK0hpTGluayBoZXJjdWxlc1RvZG8gICAgICAgVG9kbworSGlMaW5rIGhlcmN1bGVzT3V0cHV0ICAgICBJbmNsdWRlCitIaUxpbmsgaGVyY3VsZXNDbWRDbW50ICAgIElkZW50aWZpZXIKK0hpTGluayBoZXJjdWxlc051bWJlciAgICAgTnVtYmVyCitIaUxpbmsgaGVyY3VsZXNCcmFjZUVycm9yIGhlcmN1bGVzRXJyb3IKK0hpTGluayBoZXJjdWxlc0N1cmx5RXJyb3IgaGVyY3VsZXNFcnJvcgorSGlMaW5rIGhlcmN1bGVzUGFyZW5FcnJvciBoZXJjdWxlc0Vycm9yCitIaUxpbmsgaGVyY3VsZXNFcnJvciAgICAgIEVycm9yCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJoZXJjdWxlcyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvaGV4LnZpbSBiL3J1bnRpbWUvc3ludGF4L2hleC52aW0KaW5kZXggNDBmN2YwZC4uZDI2MzdlYSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvaGV4LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9oZXgudmltCkBAIC0yNSwxMSArMjUsOCBAQAogIiBTdGF0ZXMgaW4gcGFyZW50aGVzZXMgaW4gdGhlIHVwcGVyIGZvcm1hdCBkZXNjcmlwdGlvbiBpbmRpY2F0ZSB0aGF0IHRoZXkKICIgc2hvdWxkIG5vdCBhcHBlYXIgaW4gYSB2YWxpZCBmaWxlLgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNjgsMzQgKzY1LDI2IEBACiBzeW4gcmVnaW9uIGhleEV4dEFkckJsb2NrIHN0YXJ0PSJeOlswLTlhLWZBLUZdXHs3fVsyNF0iIHNraXA9Il46WzAtOWEtZkEtRl1cezd9MCIgZW5kPSJeOiJtZT1zLTEgZm9sZCB0cmFuc3BhcmVudAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9oZXhfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfaGV4X3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKLSAgSGlMaW5rIGhleFJlY1N0YXJ0ICAgICAgICAgICAgaGV4UmVjVHlwZQotICBIaUxpbmsgaGV4RGF0YUJ5dGVDb3VudCAgICAgICBDb25zdGFudAotICBoaSBkZWYgaGV4QWRkcmVzc0ZpZWxkVW5rbm93biB0ZXJtPWl0YWxpYyBjdGVybT1pdGFsaWMgZ3VpPWl0YWxpYwotICBIaUxpbmsgaGV4RGF0YUFkZHJlc3MgICAgICAgICBDb21tZW50Ci0gIEhpTGluayBoZXhOb0FkZHJlc3MgICAgICAgICAgIERpZmZBZGQKLSAgSGlMaW5rIGhleFJlY1R5cGVVbmtub3duICAgICAgaGV4UmVjVHlwZQotICBIaUxpbmsgaGV4UmVjVHlwZSAgICAgICAgICAgICBXYXJuaW5nTXNnCi0gIGhpIGRlZiBoZXhEYXRhRmllbGRVbmtub3duICAgIHRlcm09aXRhbGljIGN0ZXJtPWl0YWxpYyBndWk9aXRhbGljCi0gIGhpIGRlZiBoZXhEYXRhT2RkICAgICAgICAgICAgIHRlcm09Ym9sZCBjdGVybT1ib2xkIGd1aT1ib2xkCi0gIGhpIGRlZiBoZXhEYXRhRXZlbiAgICAgICAgICAgIHRlcm09Tk9ORSBjdGVybT1OT05FIGd1aT1OT05FCi0gIEhpTGluayBoZXhEYXRhVW5leHBlY3RlZCAgICAgIEVycm9yCi0gIEhpTGluayBoZXhFeHRlbmRlZEFkZHJlc3MgICAgIGhleERhdGFBZGRyZXNzCi0gIEhpTGluayBoZXhTdGFydEFkZHJlc3MgICAgICAgIGhleERhdGFBZGRyZXNzCi0gIEhpTGluayBoZXhDaGVja3N1bSAgICAgICAgICAgIERpZmZDaGFuZ2UKKyIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgorSGlMaW5rIGhleFJlY1N0YXJ0ICAgICAgICAgICAgaGV4UmVjVHlwZQorSGlMaW5rIGhleERhdGFCeXRlQ291bnQgICAgICAgQ29uc3RhbnQKK2hpIGRlZiBoZXhBZGRyZXNzRmllbGRVbmtub3duIHRlcm09aXRhbGljIGN0ZXJtPWl0YWxpYyBndWk9aXRhbGljCitIaUxpbmsgaGV4RGF0YUFkZHJlc3MgICAgICAgICBDb21tZW50CitIaUxpbmsgaGV4Tm9BZGRyZXNzICAgICAgICAgICBEaWZmQWRkCitIaUxpbmsgaGV4UmVjVHlwZVVua25vd24gICAgICBoZXhSZWNUeXBlCitIaUxpbmsgaGV4UmVjVHlwZSAgICAgICAgICAgICBXYXJuaW5nTXNnCitoaSBkZWYgaGV4RGF0YUZpZWxkVW5rbm93biAgICB0ZXJtPWl0YWxpYyBjdGVybT1pdGFsaWMgZ3VpPWl0YWxpYworaGkgZGVmIGhleERhdGFPZGQgICAgICAgICAgICAgdGVybT1ib2xkIGN0ZXJtPWJvbGQgZ3VpPWJvbGQKK2hpIGRlZiBoZXhEYXRhRXZlbiAgICAgICAgICAgIHRlcm09Tk9ORSBjdGVybT1OT05FIGd1aT1OT05FCitIaUxpbmsgaGV4RGF0YVVuZXhwZWN0ZWQgICAgICBFcnJvcgorSGlMaW5rIGhleEV4dGVuZGVkQWRkcmVzcyAgICAgaGV4RGF0YUFkZHJlc3MKK0hpTGluayBoZXhTdGFydEFkZHJlc3MgICAgICAgIGhleERhdGFBZGRyZXNzCitIaUxpbmsgaGV4Q2hlY2tzdW0gICAgICAgICAgICBEaWZmQ2hhbmdlCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJoZXgiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2hvZy52aW0gYi9ydW50aW1lL3N5bnRheC9ob2cudmltCmluZGV4IGYzN2Y3YWUuLjcyMDY4MTUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2hvZy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvaG9nLnZpbQpAQCAtNCw5ICs0LDggQEAKICIgTGFzdCBDaGFuZ2U6IDIwMTUgT2N0IDI0ICAtPiBSZW5hbWUgc3ludGF4IGl0ZW1zIGZyb20gU25vcnQgLT4gSG9nCiAiICAgICAgICAgICAgICAyMDEyIE9jdCAyNCAgLT4gT3JpZ2luYWxpc2ggcmVsZWFzZQogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICAgIGZpbmlzaAogZW5kaWYKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvaG9zdHNhY2Nlc3MudmltIGIvcnVudGltZS9zeW50YXgvaG9zdHNhY2Nlc3MudmltCmluZGV4IDhhOWYwMmUuLjcyMDE4MTYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2hvc3RzYWNjZXNzLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9ob3N0c2FjY2Vzcy52aW0KQEAgLTE1LDEyICsxNSw4IEBACiBlbmRpZgogCiAiIEZvciBhIHN0YXJ0ZXIgd2UganVzdCB1c2UgY29uZi52aW0gZm9yIGhpZ2hsaWdodGluZwotaWYgdmVyc2lvbiA8IDYwMAotICBzbyA8c2ZpbGU+OnA6aC9jb25mLnZpbQotZWxzZQotICBydW50aW1lISBzeW50YXgvY29uZi52aW0KLSAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9jb25mLnZpbQordW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImhvc3RzYWNjZXNzIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvaHRtbC52aW0gYi9ydW50aW1lL3N5bnRheC9odG1sLnZpbQppbmRleCBhYjFmOWIzLi5hYzMxZTQ4IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9odG1sLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9odG1sLnZpbQpAQCAtNywxMiArNyw5IEBACiAKICIgUGxlYXNlIGNoZWNrIDpoZWxwIGh0bWwudmltIGZvciBzb21lIGNvbW1lbnRzIGFuZCBhIGRlc2NyaXB0aW9uIG9mIHRoZSBvcHRpb25zCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAogaWYgIWV4aXN0cygibWFpbl9zeW50YXgiKQotICBpZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3ludGF4IGNsZWFyCi0gIGVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorICBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICAgIGZpbmlzaAogICBlbmRpZgogICBsZXQgbWFpbl9zeW50YXggPSAnaHRtbCcKQEAgLTIyLDExICsxOSw3IEBACiBzZXQgY3BvJnZpbQogCiAiIGRvbid0IHVzZSBzdGFuZGFyZCBIaUxpbmssIGl0IHdpbGwgbm90IHdvcmsgd2l0aCBpbmNsdWRlZCBzeW50YXggZmlsZXMKLWlmIHZlcnNpb24gPCA1MDgKLSAgY29tbWFuZCEgLW5hcmdzPSsgSHRtbEhpTGluayBoaSBsaW5rIDxhcmdzPgotZWxzZQotICBjb21tYW5kISAtbmFyZ3M9KyBIdG1sSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotZW5kaWYKK2NvbW1hbmQhIC1uYXJncz0rIEh0bWxIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKIHN5bnRheCBzcGVsbCB0b3BsZXZlbAogCkBAIC0yMjEsNzIgKzIxNCw2NyBAQAogZW5kaWYKIAogIiBUaGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfaHRtbF9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9odG1sX3N5bl9pbml0cyA9IDEKK0h0bWxIaUxpbmsgaHRtbFRhZyAgICAgICAgICAgICAgICAgICAgIEZ1bmN0aW9uCitIdG1sSGlMaW5rIGh0bWxFbmRUYWcgICAgICAgICAgICAgICAgICBJZGVudGlmaWVyCitIdG1sSGlMaW5rIGh0bWxBcmcgICAgICAgICAgICAgICAgICAgICBUeXBlCitIdG1sSGlMaW5rIGh0bWxUYWdOYW1lICAgICAgICAgICAgICAgICBodG1sU3RhdGVtZW50CitIdG1sSGlMaW5rIGh0bWxTcGVjaWFsVGFnTmFtZSAgICAgICAgICBFeGNlcHRpb24KK0h0bWxIaUxpbmsgaHRtbFZhbHVlICAgICAgICAgICAgICAgICAgICAgU3RyaW5nCitIdG1sSGlMaW5rIGh0bWxTcGVjaWFsQ2hhciAgICAgICAgICAgICBTcGVjaWFsCisKK2lmICFleGlzdHMoImh0bWxfbm9fcmVuZGVyaW5nIikKKyAgSHRtbEhpTGluayBodG1sSDEgICAgICAgICAgICAgICAgICAgICAgVGl0bGUKKyAgSHRtbEhpTGluayBodG1sSDIgICAgICAgICAgICAgICAgICAgICAgaHRtbEgxCisgIEh0bWxIaUxpbmsgaHRtbEgzICAgICAgICAgICAgICAgICAgICAgIGh0bWxIMgorICBIdG1sSGlMaW5rIGh0bWxINCAgICAgICAgICAgICAgICAgICAgICBodG1sSDMKKyAgSHRtbEhpTGluayBodG1sSDUgICAgICAgICAgICAgICAgICAgICAgaHRtbEg0CisgIEh0bWxIaUxpbmsgaHRtbEg2ICAgICAgICAgICAgICAgICAgICAgIGh0bWxINQorICBIdG1sSGlMaW5rIGh0bWxIZWFkICAgICAgICAgICAgICAgICAgICBQcmVQcm9jCisgIEh0bWxIaUxpbmsgaHRtbFRpdGxlICAgICAgICAgICAgICAgICAgIFRpdGxlCisgIEh0bWxIaUxpbmsgaHRtbEJvbGRJdGFsaWNVbmRlcmxpbmUgICAgIGh0bWxCb2xkVW5kZXJsaW5lSXRhbGljCisgIEh0bWxIaUxpbmsgaHRtbFVuZGVybGluZUJvbGQgICAgICAgICAgIGh0bWxCb2xkVW5kZXJsaW5lCisgIEh0bWxIaUxpbmsgaHRtbFVuZGVybGluZUl0YWxpY0JvbGQgICAgIGh0bWxCb2xkVW5kZXJsaW5lSXRhbGljCisgIEh0bWxIaUxpbmsgaHRtbFVuZGVybGluZUJvbGRJdGFsaWMgICAgIGh0bWxCb2xkVW5kZXJsaW5lSXRhbGljCisgIEh0bWxIaUxpbmsgaHRtbEl0YWxpY1VuZGVybGluZSAgICAgICAgIGh0bWxVbmRlcmxpbmVJdGFsaWMKKyAgSHRtbEhpTGluayBodG1sSXRhbGljQm9sZCAgICAgICAgICAgICAgaHRtbEJvbGRJdGFsaWMKKyAgSHRtbEhpTGluayBodG1sSXRhbGljQm9sZFVuZGVybGluZSAgICAgaHRtbEJvbGRVbmRlcmxpbmVJdGFsaWMKKyAgSHRtbEhpTGluayBodG1sSXRhbGljVW5kZXJsaW5lQm9sZCAgICAgaHRtbEJvbGRVbmRlcmxpbmVJdGFsaWMKKyAgSHRtbEhpTGluayBodG1sTGluayAgICAgICAgICAgICAgICAgICAgVW5kZXJsaW5lZAorICBIdG1sSGlMaW5rIGh0bWxMZWFkaW5nU3BhY2UgICAgICAgICAgICBOb25lCisgIGlmICFleGlzdHMoImh0bWxfbXlfcmVuZGVyaW5nIikKKyAgICBoaSBkZWYgaHRtbEJvbGQgICAgICAgICAgICAgICAgdGVybT1ib2xkIGN0ZXJtPWJvbGQgZ3VpPWJvbGQKKyAgICBoaSBkZWYgaHRtbEJvbGRVbmRlcmxpbmUgICAgICAgdGVybT1ib2xkLHVuZGVybGluZSBjdGVybT1ib2xkLHVuZGVybGluZSBndWk9Ym9sZCx1bmRlcmxpbmUKKyAgICBoaSBkZWYgaHRtbEJvbGRJdGFsaWMgICAgICAgICAgdGVybT1ib2xkLGl0YWxpYyBjdGVybT1ib2xkLGl0YWxpYyBndWk9Ym9sZCxpdGFsaWMKKyAgICBoaSBkZWYgaHRtbEJvbGRVbmRlcmxpbmVJdGFsaWMgdGVybT1ib2xkLGl0YWxpYyx1bmRlcmxpbmUgY3Rlcm09Ym9sZCxpdGFsaWMsdW5kZXJsaW5lIGd1aT1ib2xkLGl0YWxpYyx1bmRlcmxpbmUKKyAgICBoaSBkZWYgaHRtbFVuZGVybGluZSAgICAgICAgICAgdGVybT11bmRlcmxpbmUgY3Rlcm09dW5kZXJsaW5lIGd1aT11bmRlcmxpbmUKKyAgICBoaSBkZWYgaHRtbFVuZGVybGluZUl0YWxpYyAgICAgdGVybT1pdGFsaWMsdW5kZXJsaW5lIGN0ZXJtPWl0YWxpYyx1bmRlcmxpbmUgZ3VpPWl0YWxpYyx1bmRlcmxpbmUKKyAgICBoaSBkZWYgaHRtbEl0YWxpYyAgICAgICAgICAgICAgdGVybT1pdGFsaWMgY3Rlcm09aXRhbGljIGd1aT1pdGFsaWMKICAgZW5kaWYKLSAgSHRtbEhpTGluayBodG1sVGFnICAgICAgICAgICAgICAgICAgICAgRnVuY3Rpb24KLSAgSHRtbEhpTGluayBodG1sRW5kVGFnICAgICAgICAgICAgICAgICAgSWRlbnRpZmllcgotICBIdG1sSGlMaW5rIGh0bWxBcmcgICAgICAgICAgICAgICAgICAgICBUeXBlCi0gIEh0bWxIaUxpbmsgaHRtbFRhZ05hbWUgICAgICAgICAgICAgICAgIGh0bWxTdGF0ZW1lbnQKLSAgSHRtbEhpTGluayBodG1sU3BlY2lhbFRhZ05hbWUgICAgICAgICAgRXhjZXB0aW9uCi0gIEh0bWxIaUxpbmsgaHRtbFZhbHVlICAgICAgICAgICAgICAgICAgICAgU3RyaW5nCi0gIEh0bWxIaUxpbmsgaHRtbFNwZWNpYWxDaGFyICAgICAgICAgICAgIFNwZWNpYWwKLSAgCi0gIGlmICFleGlzdHMoImh0bWxfbm9fcmVuZGVyaW5nIikKLSAgICBIdG1sSGlMaW5rIGh0bWxIMSAgICAgICAgICAgICAgICAgICAgICBUaXRsZQotICAgIEh0bWxIaUxpbmsgaHRtbEgyICAgICAgICAgICAgICAgICAgICAgIGh0bWxIMQotICAgIEh0bWxIaUxpbmsgaHRtbEgzICAgICAgICAgICAgICAgICAgICAgIGh0bWxIMgotICAgIEh0bWxIaUxpbmsgaHRtbEg0ICAgICAgICAgICAgICAgICAgICAgIGh0bWxIMwotICAgIEh0bWxIaUxpbmsgaHRtbEg1ICAgICAgICAgICAgICAgICAgICAgIGh0bWxINAotICAgIEh0bWxIaUxpbmsgaHRtbEg2ICAgICAgICAgICAgICAgICAgICAgIGh0bWxINQotICAgIEh0bWxIaUxpbmsgaHRtbEhlYWQgICAgICAgICAgICAgICAgICAgIFByZVByb2MKLSAgICBIdG1sSGlMaW5rIGh0bWxUaXRsZSAgICAgICAgICAgICAgICAgICBUaXRsZQotICAgIEh0bWxIaUxpbmsgaHRtbEJvbGRJdGFsaWNVbmRlcmxpbmUgICAgIGh0bWxCb2xkVW5kZXJsaW5lSXRhbGljCi0gICAgSHRtbEhpTGluayBodG1sVW5kZXJsaW5lQm9sZCAgICAgICAgICAgaHRtbEJvbGRVbmRlcmxpbmUKLSAgICBIdG1sSGlMaW5rIGh0bWxVbmRlcmxpbmVJdGFsaWNCb2xkICAgICBodG1sQm9sZFVuZGVybGluZUl0YWxpYwotICAgIEh0bWxIaUxpbmsgaHRtbFVuZGVybGluZUJvbGRJdGFsaWMgICAgIGh0bWxCb2xkVW5kZXJsaW5lSXRhbGljCi0gICAgSHRtbEhpTGluayBodG1sSXRhbGljVW5kZXJsaW5lICAgICAgICAgaHRtbFVuZGVybGluZUl0YWxpYwotICAgIEh0bWxIaUxpbmsgaHRtbEl0YWxpY0JvbGQgICAgICAgICAgICAgIGh0bWxCb2xkSXRhbGljCi0gICAgSHRtbEhpTGluayBodG1sSXRhbGljQm9sZFVuZGVybGluZSAgICAgaHRtbEJvbGRVbmRlcmxpbmVJdGFsaWMKLSAgICBIdG1sSGlMaW5rIGh0bWxJdGFsaWNVbmRlcmxpbmVCb2xkICAgICBodG1sQm9sZFVuZGVybGluZUl0YWxpYwotICAgIEh0bWxIaUxpbmsgaHRtbExpbmsgICAgICAgICAgICAgICAgICAgIFVuZGVybGluZWQKLSAgICBIdG1sSGlMaW5rIGh0bWxMZWFkaW5nU3BhY2UgICAgICAgICAgICBOb25lCi0gICAgaWYgIWV4aXN0cygiaHRtbF9teV9yZW5kZXJpbmciKQotICAgICAgaGkgZGVmIGh0bWxCb2xkICAgICAgICAgICAgICAgIHRlcm09Ym9sZCBjdGVybT1ib2xkIGd1aT1ib2xkCi0gICAgICBoaSBkZWYgaHRtbEJvbGRVbmRlcmxpbmUgICAgICAgdGVybT1ib2xkLHVuZGVybGluZSBjdGVybT1ib2xkLHVuZGVybGluZSBndWk9Ym9sZCx1bmRlcmxpbmUKLSAgICAgIGhpIGRlZiBodG1sQm9sZEl0YWxpYyAgICAgICAgICB0ZXJtPWJvbGQsaXRhbGljIGN0ZXJtPWJvbGQsaXRhbGljIGd1aT1ib2xkLGl0YWxpYwotICAgICAgaGkgZGVmIGh0bWxCb2xkVW5kZXJsaW5lSXRhbGljIHRlcm09Ym9sZCxpdGFsaWMsdW5kZXJsaW5lIGN0ZXJtPWJvbGQsaXRhbGljLHVuZGVybGluZSBndWk9Ym9sZCxpdGFsaWMsdW5kZXJsaW5lCi0gICAgICBoaSBkZWYgaHRtbFVuZGVybGluZSAgICAgICAgICAgdGVybT11bmRlcmxpbmUgY3Rlcm09dW5kZXJsaW5lIGd1aT11bmRlcmxpbmUKLSAgICAgIGhpIGRlZiBodG1sVW5kZXJsaW5lSXRhbGljICAgICB0ZXJtPWl0YWxpYyx1bmRlcmxpbmUgY3Rlcm09aXRhbGljLHVuZGVybGluZSBndWk9aXRhbGljLHVuZGVybGluZQotICAgICAgaGkgZGVmIGh0bWxJdGFsaWMgICAgICAgICAgICAgIHRlcm09aXRhbGljIGN0ZXJtPWl0YWxpYyBndWk9aXRhbGljCi0gICAgZW5kaWYKLSAgZW5kaWYKLSAgCi0gIEh0bWxIaUxpbmsgaHRtbFByZVN0bXQgICAgICAgICAgICBQcmVQcm9jCi0gIEh0bWxIaUxpbmsgaHRtbFByZUVycm9yICAgICAgICAgICBFcnJvcgotICBIdG1sSGlMaW5rIGh0bWxQcmVQcm9jICAgICAgICAgICAgUHJlUHJvYwotICBIdG1sSGlMaW5rIGh0bWxQcmVBdHRyICAgICAgICAgICAgU3RyaW5nCi0gIEh0bWxIaUxpbmsgaHRtbFByZVByb2NBdHRyTmFtZSAgICBQcmVQcm9jCi0gIEh0bWxIaUxpbmsgaHRtbFByZVByb2NBdHRyRXJyb3IgICBFcnJvcgotICBIdG1sSGlMaW5rIGh0bWxTcGVjaWFsICAgICAgICAgICAgU3BlY2lhbAotICBIdG1sSGlMaW5rIGh0bWxTcGVjaWFsQ2hhciAgICAgICAgU3BlY2lhbAotICBIdG1sSGlMaW5rIGh0bWxTdHJpbmcgICAgICAgICAgICAgU3RyaW5nCi0gIEh0bWxIaUxpbmsgaHRtbFN0YXRlbWVudCAgICAgICAgICBTdGF0ZW1lbnQKLSAgSHRtbEhpTGluayBodG1sQ29tbWVudCAgICAgICAgICAgIENvbW1lbnQKLSAgSHRtbEhpTGluayBodG1sQ29tbWVudFBhcnQgICAgICAgIENvbW1lbnQKLSAgSHRtbEhpTGluayBodG1sVmFsdWUgICAgICAgICAgICAgIFN0cmluZwotICBIdG1sSGlMaW5rIGh0bWxDb21tZW50RXJyb3IgICAgICAgaHRtbEVycm9yCi0gIEh0bWxIaUxpbmsgaHRtbFRhZ0Vycm9yICAgICAgICAgICBodG1sRXJyb3IKLSAgSHRtbEhpTGluayBodG1sRXZlbnQgICAgICAgICAgICAgIGphdmFTY3JpcHQKLSAgSHRtbEhpTGluayBodG1sRXJyb3IgICAgICAgICAgICAgIEVycm9yCi0gIAotICBIdG1sSGlMaW5rIGphdmFTY3JpcHQgICAgICAgICAgICAgU3BlY2lhbAotICBIdG1sSGlMaW5rIGphdmFTY3JpcHRFeHByZXNzaW9uICAgamF2YVNjcmlwdAotICBIdG1sSGlMaW5rIGh0bWxDc3NTdHlsZUNvbW1lbnQgICAgQ29tbWVudAotICBIdG1sSGlMaW5rIGh0bWxDc3NEZWZpbml0aW9uICAgICAgU3BlY2lhbAogZW5kaWYKIAorSHRtbEhpTGluayBodG1sUHJlU3RtdCAgICAgICAgICAgIFByZVByb2MKK0h0bWxIaUxpbmsgaHRtbFByZUVycm9yICAgICAgICAgICBFcnJvcgorSHRtbEhpTGluayBodG1sUHJlUHJvYyAgICAgICAgICAgIFByZVByb2MKK0h0bWxIaUxpbmsgaHRtbFByZUF0dHIgICAgICAgICAgICBTdHJpbmcKK0h0bWxIaUxpbmsgaHRtbFByZVByb2NBdHRyTmFtZSAgICBQcmVQcm9jCitIdG1sSGlMaW5rIGh0bWxQcmVQcm9jQXR0ckVycm9yICAgRXJyb3IKK0h0bWxIaUxpbmsgaHRtbFNwZWNpYWwgICAgICAgICAgICBTcGVjaWFsCitIdG1sSGlMaW5rIGh0bWxTcGVjaWFsQ2hhciAgICAgICAgU3BlY2lhbAorSHRtbEhpTGluayBodG1sU3RyaW5nICAgICAgICAgICAgIFN0cmluZworSHRtbEhpTGluayBodG1sU3RhdGVtZW50ICAgICAgICAgIFN0YXRlbWVudAorSHRtbEhpTGluayBodG1sQ29tbWVudCAgICAgICAgICAgIENvbW1lbnQKK0h0bWxIaUxpbmsgaHRtbENvbW1lbnRQYXJ0ICAgICAgICBDb21tZW50CitIdG1sSGlMaW5rIGh0bWxWYWx1ZSAgICAgICAgICAgICAgU3RyaW5nCitIdG1sSGlMaW5rIGh0bWxDb21tZW50RXJyb3IgICAgICAgaHRtbEVycm9yCitIdG1sSGlMaW5rIGh0bWxUYWdFcnJvciAgICAgICAgICAgaHRtbEVycm9yCitIdG1sSGlMaW5rIGh0bWxFdmVudCAgICAgICAgICAgICAgamF2YVNjcmlwdAorSHRtbEhpTGluayBodG1sRXJyb3IgICAgICAgICAgICAgIEVycm9yCisKK0h0bWxIaUxpbmsgamF2YVNjcmlwdCAgICAgICAgICAgICBTcGVjaWFsCitIdG1sSGlMaW5rIGphdmFTY3JpcHRFeHByZXNzaW9uICAgamF2YVNjcmlwdAorSHRtbEhpTGluayBodG1sQ3NzU3R5bGVDb21tZW50ICAgIENvbW1lbnQKK0h0bWxIaUxpbmsgaHRtbENzc0RlZmluaXRpb24gICAgICBTcGVjaWFsCisKIGRlbGNvbW1hbmQgSHRtbEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJodG1sIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvaHRtbGNoZWV0YWgudmltIGIvcnVudGltZS9zeW50YXgvaHRtbGNoZWV0YWgudmltCmluZGV4IGY1N2RmOTAuLjA3MjFjNzYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2h0bWxjaGVldGFoLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9odG1sY2hlZXRhaC52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglNYXggSXNjaGVua28gPG1maUB1a3IubmV0PgogIiBMYXN0IENoYW5nZTogMjAwMy0wNS0xMQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTUsMTQgKzEyLDkgQEAKICAgbGV0IG1haW5fc3ludGF4ID0gJ2h0bWwnCiBlbmRpZgogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNvIDxzZmlsZT46cDpoL2NoZWV0YWgudmltCi0gIHNvIDxzZmlsZT46cDpoL2h0bWwudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9jaGVldGFoLnZpbQotICBydW50aW1lISBzeW50YXgvaHRtbC52aW0KLSAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9jaGVldGFoLnZpbQorcnVudGltZSEgc3ludGF4L2h0bWwudmltCit1bmxldCBiOmN1cnJlbnRfc3ludGF4CiAKIHN5bnRheCBjbHVzdGVyIGh0bWxQcmVwcm9jIGFkZD1jaGVldGFoUGxhY2VIb2xkZXIKIHN5bnRheCBjbHVzdGVyIGh0bWxTdHJpbmcgYWRkPWNoZWV0YWhQbGFjZUhvbGRlcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvaHRtbGRqYW5nby52aW0gYi9ydW50aW1lL3N5bnRheC9odG1sZGphbmdvLnZpbQppbmRleCA1OGFmZDFiLi4wN2IxYzM3IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9odG1sZGphbmdvLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9odG1sZGphbmdvLnZpbQpAQCAtMywxMSArMyw4IEBACiAiIE1haW50YWluZXI6CURhdmUgSG9kZGVyIDxkbWhAZG1oLm9yZy51az4KICIgTGFzdCBDaGFuZ2U6CTIwMTQgSnVsIDEzCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xNSwxNCArMTIsOSBAQAogICBsZXQgbWFpbl9zeW50YXggPSAnaHRtbCcKIGVuZGlmCiAKLWlmIHZlcnNpb24gPCA2MDAKLSAgc28gPHNmaWxlPjpwOmgvZGphbmdvLnZpbQotICBzbyA8c2ZpbGU+OnA6aC9odG1sLnZpbQotZWxzZQotICBydW50aW1lISBzeW50YXgvZGphbmdvLnZpbQotICBydW50aW1lISBzeW50YXgvaHRtbC52aW0KLSAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9kamFuZ28udmltCitydW50aW1lISBzeW50YXgvaHRtbC52aW0KK3VubGV0IGI6Y3VycmVudF9zeW50YXgKIAogc3luIGNsdXN0ZXIgZGphbmdvQmxvY2tzIGFkZD1kamFuZ29UYWdCbG9jayxkamFuZ29WYXJCbG9jayxkamFuZ29Db21tZW50LGRqYW5nb0NvbUJsb2NrCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2h0bWxtNC52aW0gYi9ydW50aW1lL3N5bnRheC9odG1sbTQudmltCmluZGV4IDMxMTlkMmQuLmVlMWYwNmUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2h0bWxtNC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvaHRtbG00LnZpbQpAQCAtNCwxMSArNCw4IEBACiAiIFVSTDoJCWh0dHA6Ly93d3cuZmxlaW5lci5jb20vdmltL3N5bnRheC9odG1sbTQudmltCiAiIExhc3QgQ2hhbmdlOgkyMDAxIEFwciAzMAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTcsMTkgKzE0LDEyIEBACiAgIGxldCBtYWluX3N5bnRheD0naHRtbG00JwogZW5kaWYKIAotaWYgdmVyc2lvbiA8IDYwMAotICBzbyA8c2ZpbGU+OnA6aC9odG1sLnZpbQotZWxzZQotICBydW50aW1lISBzeW50YXgvaHRtbC52aW0KLWVuZGlmCitydW50aW1lISBzeW50YXgvaHRtbC52aW0KIHVubGV0IGI6Y3VycmVudF9zeW50YXgKIHN5biBjYXNlIG1hdGNoCiAKLWlmIHZlcnNpb24gPCA2MDAKLSAgc28gPHNmaWxlPjpwOmgvbTQudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9tNC52aW0KLWVuZGlmCitydW50aW1lISBzeW50YXgvbTQudmltCisKIHVubGV0IGI6Y3VycmVudF9zeW50YXgKIHN5biBjbHVzdGVyIGh0bWxQcmVwcm9jIGFkZD1AbTRUb3AKIHN5biBjbHVzdGVyIG00U3RyaW5nQ29udGVudHMgYWRkPWh0bWxUYWcsaHRtbEVuZFRhZwpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvaHRtbG9zLnZpbSBiL3J1bnRpbWUvc3ludGF4L2h0bWxvcy52aW0KaW5kZXggZjMxYjlmNi4uNTMwYzA0NiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvaHRtbG9zLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9odG1sb3MudmltCkBAIC02LDExICs2LDggQEAKICIgTGFzdCBDaGFuZ2U6CTIwMDMgTWF5IDExCiAiCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xOCwxMiArMTUsOCBAQAogICBsZXQgbWFpbl9zeW50YXggPSAnaHRtbG9zJwogZW5kaWYKIAotaWYgdmVyc2lvbiA8IDYwMAotICBzbyA8c2ZpbGU+OnA6aC9odG1sLnZpbQotZWxzZQotICBydW50aW1lISBzeW50YXgvaHRtbC52aW0KLSAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9odG1sLnZpbQordW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiBzeW4gY2x1c3RlciBodG1sUHJlcHJvYyBhZGQ9aHRtbG9zUmVnaW9uCiAKQEAgLTEyMSw0MiArMTE0LDM0IEBACiBlbmRpZgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9odG1sb3Nfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfaHRtbG9zX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyCi0gIEhpTGluawkgaHRtbG9zU3BlY2lhbElkZW50aWZpZXIJT3BlcmF0b3IKLSAgSGlMaW5rCSBodG1sb3NJZGVudGlmaWVyCUlkZW50aWZpZXIKLSAgSGlMaW5rCSBodG1sb3NTdG9yYWdlQ2xhc3MJU3RvcmFnZUNsYXNzCi0gIEhpTGluawkgaHRtbG9zQ29tbWVudAlDb21tZW50Ci0gIEhpTGluawkgaHRtbG9zQm9vbGVhbglCb29sZWFuCi0gIEhpTGluawkgaHRtbG9zU3RyaW5nU2luZ2xlCVN0cmluZwotICBIaUxpbmsJIGh0bWxvc1N0cmluZ0RvdWJsZQlTdHJpbmcKLSAgSGlMaW5rCSBodG1sb3NOdW1iZXIJTnVtYmVyCi0gIEhpTGluawkgaHRtbG9zRmxvYXQJRmxvYXQKLSAgSGlMaW5rCSBodG1sb3NGdW5jdGlvbnMJRnVuY3Rpb24KLSAgSGlMaW5rCSBodG1sb3NSZXBlYXQJUmVwZWF0Ci0gIEhpTGluawkgaHRtbG9zQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLSAgSGlMaW5rCSBodG1sb3NMYWJlbAlMYWJlbAotICBIaUxpbmsJIGh0bWxvc1N0YXRlbWVudAlTdGF0ZW1lbnQKLSAgSGlMaW5rCSBodG1sb3NLZXl3b3JkCVN0YXRlbWVudAotICBIaUxpbmsJIGh0bWxvc1R5cGUJVHlwZQotICBIaUxpbmsJIGh0bWxvc0RlZmluZQlEZWZpbmUKLSAgSGlMaW5rCSBodG1sb3NQYXJlbnQJRGVsaW1pdGVyCi0gIEhpTGluawkgaHRtbG9zRXJyb3IJRXJyb3IKLSAgSGlMaW5rCSBodG1sb3NUb2RvCVRvZG8KLSAgSGlMaW5rCWh0bWxvc09wZXJhdG9yCU9wZXJhdG9yCi0gIEhpTGluawlodG1sb3NSZWxhdGlvbglPcGVyYXRvcgorIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgorSGlMaW5rCSBodG1sb3NTcGVjaWFsSWRlbnRpZmllcglPcGVyYXRvcgorSGlMaW5rCSBodG1sb3NJZGVudGlmaWVyCUlkZW50aWZpZXIKK0hpTGluawkgaHRtbG9zU3RvcmFnZUNsYXNzCVN0b3JhZ2VDbGFzcworSGlMaW5rCSBodG1sb3NDb21tZW50CUNvbW1lbnQKK0hpTGluawkgaHRtbG9zQm9vbGVhbglCb29sZWFuCitIaUxpbmsJIGh0bWxvc1N0cmluZ1NpbmdsZQlTdHJpbmcKK0hpTGluawkgaHRtbG9zU3RyaW5nRG91YmxlCVN0cmluZworSGlMaW5rCSBodG1sb3NOdW1iZXIJTnVtYmVyCitIaUxpbmsJIGh0bWxvc0Zsb2F0CUZsb2F0CitIaUxpbmsJIGh0bWxvc0Z1bmN0aW9ucwlGdW5jdGlvbgorSGlMaW5rCSBodG1sb3NSZXBlYXQJUmVwZWF0CitIaUxpbmsJIGh0bWxvc0NvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCitIaUxpbmsJIGh0bWxvc0xhYmVsCUxhYmVsCitIaUxpbmsJIGh0bWxvc1N0YXRlbWVudAlTdGF0ZW1lbnQKK0hpTGluawkgaHRtbG9zS2V5d29yZAlTdGF0ZW1lbnQKK0hpTGluawkgaHRtbG9zVHlwZQlUeXBlCitIaUxpbmsJIGh0bWxvc0RlZmluZQlEZWZpbmUKK0hpTGluawkgaHRtbG9zUGFyZW50CURlbGltaXRlcgorSGlMaW5rCSBodG1sb3NFcnJvcglFcnJvcgorSGlMaW5rCSBodG1sb3NUb2RvCVRvZG8KK0hpTGluawlodG1sb3NPcGVyYXRvcglPcGVyYXRvcgorSGlMaW5rCWh0bWxvc1JlbGF0aW9uCU9wZXJhdG9yCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiaHRtbG9zIgogCiBpZiBtYWluX3N5bnRheCA9PSAnaHRtbG9zJwpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvaWE2NC52aW0gYi9ydW50aW1lL3N5bnRheC9pYTY0LnZpbQppbmRleCBmMGQ1MTBiLi44Y2M5YWRlIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9pYTY0LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9pYTY0LnZpbQpAQCAtNiwxMSArNiw4IEBACiAiIEZpbGUgVmVyc2lvbjogMC43CiAiIExhc3QgQ2hhbmdlOiAgMjAwNiBTZXAgMDgKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTE5LDExICsxNiw3IEBACiBzeW4gY2FzZSBpZ25vcmUKIAogIiAgSWRlbnRpZmllciBLZXl3b3JkIGNoYXJhY3RlcnMgKGRlZmluZXMgXGspCi1pZiB2ZXJzaW9uID49IDYwMAotCXNldGxvY2FsIGlza2V5d29yZD1ALDQ4LTU3LCMsJCwuLDosPyxALUAsXyx+Ci1lbHNlCi0Jc2V0IGlza2V5d29yZD1ALDQ4LTU3LCMsJCwuLDosPyxALUAsXyx+Ci1lbmRpZgorc2V0bG9jYWwgaXNrZXl3b3JkPUAsNDgtNTcsIywkLC4sOiw/LEAtQCxfLH4KIAogc3luIHN5bmMgbWlubGluZXM9NQogCkBAIC0yNjgsNDMgKzI2MSwzNSBAQAogc3luIG1hdGNoIGlhNjRkYXRhICJzdHJpbmd6XD1cKFwoXChcLnVhXClcPVwoXC5tc2JcfFwubHNiXClcPVwpXHxcKFwoXC5tc2JcfFwubHNiXClcPVwoXC51YVwpXD1cKVwpXD1cPiIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfaWE2NF9zeW5faW5pdHMiKQotCWlmIHZlcnNpb24gPCA1MDgKLQkJbGV0IGRpZF9pYTY0X3N5bl9pbml0cyA9IDEKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLQllbHNlCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotCWVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotCSJwdXQgbWFzbSBncm91cHMgd2l0aCBvdXIgZ3JvdXBzCi0JSGlMaW5rIG1hc21PcGVyYXRvcglpYTY0b3BlcmF0b3IKLQlIaUxpbmsgbWFzbURpcmVjdGl2ZQlpYTY0RGlyZWN0aXZlCi0JSGlMaW5rIG1hc21PcGNvZGUJaWE2NE9wY29kZQotCUhpTGluayBtYXNtSWRlbnRpZmllcglpYTY0SWRlbnRpZmllcgotCUhpTGluayBtYXNtRmxvYXQJaWE2NEZsb2F0CisicHV0IG1hc20gZ3JvdXBzIHdpdGggb3VyIGdyb3VwcworSGlMaW5rIG1hc21PcGVyYXRvcglpYTY0b3BlcmF0b3IKK0hpTGluayBtYXNtRGlyZWN0aXZlCWlhNjREaXJlY3RpdmUKK0hpTGluayBtYXNtT3Bjb2RlCWlhNjRPcGNvZGUKK0hpTGluayBtYXNtSWRlbnRpZmllcglpYTY0SWRlbnRpZmllcgorSGlMaW5rIG1hc21GbG9hdAlpYTY0RmxvYXQKIAotCSJpYTY0IHNwZWNpZmljIHN0dWZmCi0JSGlMaW5rIGlhNjRMYWJlbAlEZWZpbmUKLQlIaUxpbmsgaWE2NENvbW1lbnQJQ29tbWVudAotCUhpTGluayBpYTY0RGlyZWN0aXZlCVR5cGUKLQlIaUxpbmsgaWE2NG9wY29kZQlTdGF0ZW1lbnQKLQlIaUxpbmsgaWE2NHJlZ2lzdGVycwlPcGVyYXRvcgotCUhpTGluayBpYTY0c3RyaW5nCVN0cmluZwotCUhpTGluayBpYTY0SGV4CQlOdW1iZXIKLQlIaUxpbmsgaWE2NEJpbmFyeQlOdW1iZXIKLQlIaUxpbmsgaWE2NE9jdGFsCU51bWJlcgotCUhpTGluayBpYTY0RmxvYXQJRmxvYXQKLQlIaUxpbmsgaWE2NERlY2ltYWwJTnVtYmVyCi0JSGlMaW5rIGlhNjRJZGVudGlmaWVyCUlkZW50aWZpZXIKLQlIaUxpbmsgaWE2NGRhdGEJCVR5cGUKLQlIaUxpbmsgaWE2NGRlbGltaXRlcglEZWxpbWl0ZXIKLQlIaUxpbmsgaWE2NG9wZXJhdG9yCU9wZXJhdG9yCi0JSGlMaW5rIGlhNjRUb2RvCQlUb2RvCisiaWE2NCBzcGVjaWZpYyBzdHVmZgorSGlMaW5rIGlhNjRMYWJlbAlEZWZpbmUKK0hpTGluayBpYTY0Q29tbWVudAlDb21tZW50CitIaUxpbmsgaWE2NERpcmVjdGl2ZQlUeXBlCitIaUxpbmsgaWE2NG9wY29kZQlTdGF0ZW1lbnQKK0hpTGluayBpYTY0cmVnaXN0ZXJzCU9wZXJhdG9yCitIaUxpbmsgaWE2NHN0cmluZwlTdHJpbmcKK0hpTGluayBpYTY0SGV4CQlOdW1iZXIKK0hpTGluayBpYTY0QmluYXJ5CU51bWJlcgorSGlMaW5rIGlhNjRPY3RhbAlOdW1iZXIKK0hpTGluayBpYTY0RmxvYXQJRmxvYXQKK0hpTGluayBpYTY0RGVjaW1hbAlOdW1iZXIKK0hpTGluayBpYTY0SWRlbnRpZmllcglJZGVudGlmaWVyCitIaUxpbmsgaWE2NGRhdGEJCVR5cGUKK0hpTGluayBpYTY0ZGVsaW1pdGVyCURlbGltaXRlcgorSGlMaW5rIGlhNjRvcGVyYXRvcglPcGVyYXRvcgorSGlMaW5rIGlhNjRUb2RvCQlUb2RvCiAKLQlkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImlhNjQiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2ljZW1lbnUudmltIGIvcnVudGltZS9zeW50YXgvaWNlbWVudS52aW0KaW5kZXggZDNhNzMzZC4uNjUxMzI4NyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvaWNlbWVudS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvaWNlbWVudS52aW0KQEAgLTYsMTAgKzYsOCBAQAogIiBDb21tZW50OglJY2V3bSBpcyBhIGxpZ2h0d2VpZ2h0IHdpbmRvdyBtYW5hZ2VyLiAgVGhpcyBhZGRzIHN5bnRheAogIgkJaGlnaGxpZ2h0aW5nIHdoZW4gZWRpdGluZyB5b3VyIHVzZXIncyBtZW51IGZpbGUgKH4vLmljZXdtL21lbnUpLgogCi0iIGNsZWFyIGV4aXN0aW5nIHN5bnRheAotaWYgdmVyc2lvbiA8IDYwMAotCXN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKIAlmaW5pc2gKIGVuZGlmCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2ljb24udmltIGIvcnVudGltZS9zeW50YXgvaWNvbi52aW0KaW5kZXggMWE3M2M0My4uMWJkMTJkMyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvaWNvbi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvaWNvbi52aW0KQEAgLTQsMTEgKzQsOCBAQAogIiBVUkw6CQlmdHA6Ly9mdHAuaGFsY3lvbi5jb20vcHViL3VzZXJzL3d0dXJuZXIvaWNvbi52aW0KICIgTGFzdCBDaGFuZ2U6CTIwMDMgTWF5IDExCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xNTcsNTYgKzE1NCw0OCBAQAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCiAKLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfaWNvbl9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9pY29uX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiAgQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKKyIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiAgQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKIAotICAiIEhpTGluayBpY29uU3BlY2lhbENoYXJhY3RlcglpY29uU3BlY2lhbAorIiBIaUxpbmsgaWNvblNwZWNpYWxDaGFyYWN0ZXIJaWNvblNwZWNpYWwKIAotICBIaUxpbmsgaWNvbk9jdGFsRXJyb3IJCWljb25FcnJvcgotICBIaUxpbmsgaWNvblBhcmVuRXJyb3IJCWljb25FcnJvcgotICBIaUxpbmsgaWNvbkluUGFyZW4JCWljb25FcnJvcgotICBIaUxpbmsgaWNvbkNvbW1lbnRFcnJvcglpY29uRXJyb3IKLSAgSGlMaW5rIGljb25TcGFjZUVycm9yCQlpY29uRXJyb3IKLSAgSGlMaW5rIGljb25Db21tZW50RXJyb3IJaWNvbkVycm9yCi0gIEhpTGluayBpY29uSW5jbHVkZWQJCWljb25TdHJpbmcKLSAgSGlMaW5rIGljb25Db21tZW50U3RyaW5nCWljb25TdHJpbmcKLSAgSGlMaW5rIGljb25Db21tZW50MlN0cmluZwlpY29uU3RyaW5nCi0gIEhpTGluayBpY29uQ29tbWVudFNraXAJaWNvbkNvbW1lbnQKK0hpTGluayBpY29uT2N0YWxFcnJvcgkJaWNvbkVycm9yCitIaUxpbmsgaWNvblBhcmVuRXJyb3IJCWljb25FcnJvcgorSGlMaW5rIGljb25JblBhcmVuCQlpY29uRXJyb3IKK0hpTGluayBpY29uQ29tbWVudEVycm9yCWljb25FcnJvcgorSGlMaW5rIGljb25TcGFjZUVycm9yCQlpY29uRXJyb3IKK0hpTGluayBpY29uQ29tbWVudEVycm9yCWljb25FcnJvcgorSGlMaW5rIGljb25JbmNsdWRlZAkJaWNvblN0cmluZworSGlMaW5rIGljb25Db21tZW50U3RyaW5nCWljb25TdHJpbmcKK0hpTGluayBpY29uQ29tbWVudDJTdHJpbmcJaWNvblN0cmluZworSGlMaW5rIGljb25Db21tZW50U2tpcAlpY29uQ29tbWVudAogCi0gIEhpTGluayBpY29uVXNlckxhYmVsCQlMYWJlbAotICBIaUxpbmsgaWNvbkNoYXJhY3RlcgkJQ2hhcmFjdGVyCi0gIEhpTGluayBpY29uTnVtYmVyCQkJTnVtYmVyCi0gIEhpTGluayBpY29uUmFkaXgJCQlOdW1iZXIKLSAgSGlMaW5rIGljb25GbG9hdAkJCUZsb2F0Ci0gIEhpTGluayBpY29uSW5jbHVkZQkJSW5jbHVkZQotICBIaUxpbmsgaWNvblByZVByb2MJCVByZVByb2MKLSAgSGlMaW5rIGljb25EZWZpbmUJCQlNYWNybwotICBIaUxpbmsgaWNvbkVycm9yCQkJRXJyb3IKLSAgSGlMaW5rIGljb25TdGF0ZW1lbnQJCVN0YXRlbWVudAotICBIaUxpbmsgaWNvblByZUNvbmRpdAkJUHJlQ29uZGl0Ci0gIEhpTGluayBpY29uU3RyaW5nCQkJU3RyaW5nCi0gIEhpTGluayBpY29uQ3NldAkJCVN0cmluZwotICBIaUxpbmsgaWNvbkNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGljb25TcGVjaWFsCQlTcGVjaWFsQ2hhcgotICBIaUxpbmsgaWNvblRvZG8JCQlUb2RvCi0gIEhpTGluayBpY29uU3RvcmFnZUNsYXNzCVN0b3JhZ2VDbGFzcwotICBIaUxpbmsgaWNvbkZ1bmN0aW9uCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGljb25SZXNlcnZlZAkJTGFiZWwKLSAgSGlMaW5rIGljb25LZXl3b3JkCQlPcGVyYXRvcgorSGlMaW5rIGljb25Vc2VyTGFiZWwJCUxhYmVsCitIaUxpbmsgaWNvbkNoYXJhY3RlcgkJQ2hhcmFjdGVyCitIaUxpbmsgaWNvbk51bWJlcgkJCU51bWJlcgorSGlMaW5rIGljb25SYWRpeAkJCU51bWJlcgorSGlMaW5rIGljb25GbG9hdAkJCUZsb2F0CitIaUxpbmsgaWNvbkluY2x1ZGUJCUluY2x1ZGUKK0hpTGluayBpY29uUHJlUHJvYwkJUHJlUHJvYworSGlMaW5rIGljb25EZWZpbmUJCQlNYWNybworSGlMaW5rIGljb25FcnJvcgkJCUVycm9yCitIaUxpbmsgaWNvblN0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsgaWNvblByZUNvbmRpdAkJUHJlQ29uZGl0CitIaUxpbmsgaWNvblN0cmluZwkJCVN0cmluZworSGlMaW5rIGljb25Dc2V0CQkJU3RyaW5nCitIaUxpbmsgaWNvbkNvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBpY29uU3BlY2lhbAkJU3BlY2lhbENoYXIKK0hpTGluayBpY29uVG9kbwkJCVRvZG8KK0hpTGluayBpY29uU3RvcmFnZUNsYXNzCVN0b3JhZ2VDbGFzcworSGlMaW5rIGljb25GdW5jdGlvbgkJU3RhdGVtZW50CitIaUxpbmsgaWNvblJlc2VydmVkCQlMYWJlbAorSGlMaW5rIGljb25LZXl3b3JkCQlPcGVyYXRvcgogCi0gICJIaUxpbmsgaWNvbklkZW50aWZpZXIJSWRlbnRpZmllcgorIkhpTGluayBpY29uSWRlbnRpZmllcglJZGVudGlmaWVyCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJpY29uIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9pZGxhbmcudmltIGIvcnVudGltZS9zeW50YXgvaWRsYW5nLnZpbQppbmRleCA2NzBkMDgwLi42ZDYzOWM5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9pZGxhbmcudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2lkbGFuZy52aW0KQEAgLTQsMTEgKzQsOCBAQAogIiBDcmVhdGVkIGJ5OiBIZXJtYW5uIFJvY2hob2x6IDxIZXJtYW5uLlJvY2hob2x6IEFUIGdteC5kZT4KIAogIiBSZW1vdmUgYW55IG9sZCBzeW50YXggc3R1ZmYgaGFuZ2luZyBhcm91bmQKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0yMTksMzUgKzIxNiwyNyBAQAogc3luIGtleXdvcmQgaWRsYW5nUm91dGluZSBYVk9MVU1FX1dSSVRFX0lNQUdFIFhZT1VUUyBaT09NIFpPT01fMjQKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfaWRsYW5nX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2lkbGFuZ19zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLWVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLWVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgaWRsYW5nQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIGlkbGFuZ1JvdXRpbmUJVHlwZQotICBIaUxpbmsgaWRsYW5nU3RhdGVtZW50CVN0YXRlbWVudAotICBIaUxpbmsgaWRsYW5nQ29udGludWVMaW5lCVRvZG8KLSAgSGlMaW5rIGlkbGFuZ1JlYWxOdW1iZXIJRmxvYXQKLSAgSGlMaW5rIGlkbGFuZ051bWJlcglOdW1iZXIKLSAgSGlMaW5rIGlkbGFuZ1N0cmluZwlTdHJpbmcKLSAgSGlMaW5rIGlkbGFuZ09wZXJhdG9yCU9wZXJhdG9yCi0gIEhpTGluayBpZGxhbmdDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIGlkbGFuZ1RvZG8JVG9kbwotICBIaUxpbmsgaWRsYW5nUHJlQ29uZGl0CUlkZW50aWZpZXIKLSAgSGlMaW5rIGlkbGFuZ0RibENvbW1hRXJyb3IJRXJyb3IKLSAgSGlMaW5rIGlkbGFuZ1N0b3AJRXJyb3IKLSAgSGlMaW5rIGlkbGFuZ1N0cnVjdmFyCVByZVByb2MKLSAgSGlMaW5rIGlkbGFuZ1N5c3RlbQlJZGVudGlmaWVyCi0gIEhpTGluayBpZGxhbmdLZXl3b3JkCVNwZWNpYWwKK0hpTGluayBpZGxhbmdDb25kaXRpb25hbAlDb25kaXRpb25hbAorSGlMaW5rIGlkbGFuZ1JvdXRpbmUJVHlwZQorSGlMaW5rIGlkbGFuZ1N0YXRlbWVudAlTdGF0ZW1lbnQKK0hpTGluayBpZGxhbmdDb250aW51ZUxpbmUJVG9kbworSGlMaW5rIGlkbGFuZ1JlYWxOdW1iZXIJRmxvYXQKK0hpTGluayBpZGxhbmdOdW1iZXIJTnVtYmVyCitIaUxpbmsgaWRsYW5nU3RyaW5nCVN0cmluZworSGlMaW5rIGlkbGFuZ09wZXJhdG9yCU9wZXJhdG9yCitIaUxpbmsgaWRsYW5nQ29tbWVudAlDb21tZW50CitIaUxpbmsgaWRsYW5nVG9kbwlUb2RvCitIaUxpbmsgaWRsYW5nUHJlQ29uZGl0CUlkZW50aWZpZXIKK0hpTGluayBpZGxhbmdEYmxDb21tYUVycm9yCUVycm9yCitIaUxpbmsgaWRsYW5nU3RvcAlFcnJvcgorSGlMaW5rIGlkbGFuZ1N0cnVjdmFyCVByZVByb2MKK0hpTGluayBpZGxhbmdTeXN0ZW0JSWRlbnRpZmllcgorSGlMaW5rIGlkbGFuZ0tleXdvcmQJU3BlY2lhbAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiaWRsYW5nIgogIiB2aW06IHRzPTE4CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9pbmZvcm0udmltIGIvcnVudGltZS9zeW50YXgvaW5mb3JtLnZpbQppbmRleCBkOGJhNDNkLi40ZDgzM2M3IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9pbmZvcm0udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2luZm9ybS52aW0KQEAgLTQsMTAgKzQsOCBAQAogIiBVUkw6CQlodHRwOi8vd3d3Lmdvd2FydGhvbWFzLmNvbS9pbmZvcm12aW0KICIgTGFzdCBDaGFuZ2U6ICAyMDA2IEFwcmlsIDIwCiAKLSIgUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0yOTQsMTMgKzI5Miw4IEBACiAKICIgSGFuZGxpbmcgZm9yIGRpZmZlcmVudCB2ZXJzaW9ucyBvZiBWSU0uCiAKLWlmIHZlcnNpb24gPj0gNjAwCi0gIHNldGxvY2FsIGlza2V5d29yZCs9JAotICBjb21tYW5kIC1uYXJncz0rIFN5bkRpc3BsYXkgc3ludGF4IDxhcmdzPiBkaXNwbGF5Ci1lbHNlCi0gIHNldCBpc2tleXdvcmQrPSQKLSAgY29tbWFuZCAtbmFyZ3M9KyBTeW5EaXNwbGF5IHN5bnRheCA8YXJncz4KLWVuZGlmCitzZXRsb2NhbCBpc2tleXdvcmQrPSQKK2NvbW1hbmQgLW5hcmdzPSsgU3luRGlzcGxheSBzeW50YXggPGFyZ3M+IGRpc3BsYXkKIAogIiBHcmFtbWFyIHNlY3Rpb25zLgogCkBAIC0zNDcsNjEgKzM0MCw1NCBAQAogZGVsY29tbWFuZCBTeW5EaXNwbGF5CiAKICIgVGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2luZm9ybV9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9pbmZvcm1fc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBpbmZvcm1EZWZpbmUJCURlZmluZQotICBIaUxpbmsgaW5mb3JtVHlwZQkJVHlwZQotICBIaUxpbmsgaW5mb3JtSW5jbHVkZQkJSW5jbHVkZQotICBIaUxpbmsgaW5mb3JtUHJlQ29uZGl0CVByZUNvbmRpdAotICBIaUxpbmsgaW5mb3JtUHJlUHJvYwkJUHJlUHJvYwotICBIaUxpbmsgaW5mb3JtR3JhbVByZVByb2MJUHJlUHJvYwotICBIaUxpbmsgaW5mb3JtQXNtCQlTcGVjaWFsCi0gIGlmICFleGlzdHMoImluZm9ybV9zdXBwcmVzc19vYnNvbGV0ZSIpCi0gICAgSGlMaW5rIGluZm9ybUFzbU9ic29sZXRlCQlpbmZvcm1FcnJvcgotICAgIEhpTGluayBpbmZvcm1LZXl3b3JkT2Jzb2xldGUJaW5mb3JtRXJyb3IKLSAgZWxzZQotICAgIEhpTGluayBpbmZvcm1Bc21PYnNvbGV0ZQkJU3BlY2lhbAotICAgIEhpTGluayBpbmZvcm1LZXl3b3JkT2Jzb2xldGUJS2V5d29yZAotICBlbmRpZgotICBIaUxpbmsgaW5mb3JtUHJlZGljYXRlCU9wZXJhdG9yCi0gIEhpTGluayBpbmZvcm1TeXNGdW5jCQlJZGVudGlmaWVyCi0gIEhpTGluayBpbmZvcm1TeXNDb25zdAkJSWRlbnRpZmllcgotICBIaUxpbmsgaW5mb3JtQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIGluZm9ybVJlcGVhdAkJUmVwZWF0Ci0gIEhpTGluayBpbmZvcm1TdGF0ZW1lbnQJU3RhdGVtZW50Ci0gIEhpTGluayBpbmZvcm1PcGVyYXRvcgkJT3BlcmF0b3IKLSAgSGlMaW5rIGluZm9ybUtleXdvcmQJCUtleXdvcmQKLSAgSGlMaW5rIGluZm9ybUdyYW1tYXIJCUtleXdvcmQKLSAgSGlMaW5rIGluZm9ybURpY3RTdHJpbmcJU3RyaW5nCi0gIEhpTGluayBpbmZvcm1OdW1iZXIJCU51bWJlcgotICBIaUxpbmsgaW5mb3JtRXJyb3IJCUVycm9yCi0gIEhpTGluayBpbmZvcm1TdHJpbmcJCVN0cmluZwotICBIaUxpbmsgaW5mb3JtQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgaW5mb3JtQWNjZW50CQlTcGVjaWFsCi0gIEhpTGluayBpbmZvcm1TdHJpbmdVbmljb2RlCVNwZWNpYWwKLSAgSGlMaW5rIGluZm9ybVN0cmluZ0NvZGUJU3BlY2lhbAotICBIaUxpbmsgaW5mb3JtVG9kbwkJVG9kbwotICBpZiAhZXhpc3RzKCJpbmZvcm1faGlnaGxpZ2h0X3NpbXBsZSIpCi0gICAgSGlMaW5rIGluZm9ybUxpYkF0dHJpYglJZGVudGlmaWVyCi0gICAgSGlMaW5rIGluZm9ybUxpYlByb3AJSWRlbnRpZmllcgotICAgIEhpTGluayBpbmZvcm1MaWJPYmoJCUlkZW50aWZpZXIKLSAgICBIaUxpbmsgaW5mb3JtTGliUm91dGluZQlJZGVudGlmaWVyCi0gICAgSGlMaW5rIGluZm9ybUxpYlZhcmlhYmxlCUlkZW50aWZpZXIKLSAgICBIaUxpbmsgaW5mb3JtTGliQ29uc3QJSWRlbnRpZmllcgotICAgIEhpTGluayBpbmZvcm1MaWJBY3Rpb24JSWRlbnRpZmllcgotICBlbmRpZgotICBIaUxpbmsgaW5mb3JtQmFkRGljdFN0cmluZwlpbmZvcm1FcnJvcgotICBIaUxpbmsgaW5mb3JtQmFkQWNjZW50CWluZm9ybUVycm9yCi0gIEhpTGluayBpbmZvcm1CYWRTdHJVbmljb2RlCWluZm9ybUVycm9yCi0KLSAgZGVsY29tbWFuZCBIaUxpbmsKK0hpTGluayBpbmZvcm1EZWZpbmUJCURlZmluZQorSGlMaW5rIGluZm9ybVR5cGUJCVR5cGUKK0hpTGluayBpbmZvcm1JbmNsdWRlCQlJbmNsdWRlCitIaUxpbmsgaW5mb3JtUHJlQ29uZGl0CVByZUNvbmRpdAorSGlMaW5rIGluZm9ybVByZVByb2MJCVByZVByb2MKK0hpTGluayBpbmZvcm1HcmFtUHJlUHJvYwlQcmVQcm9jCitIaUxpbmsgaW5mb3JtQXNtCQlTcGVjaWFsCitpZiAhZXhpc3RzKCJpbmZvcm1fc3VwcHJlc3Nfb2Jzb2xldGUiKQorSGlMaW5rIGluZm9ybUFzbU9ic29sZXRlCQlpbmZvcm1FcnJvcgorSGlMaW5rIGluZm9ybUtleXdvcmRPYnNvbGV0ZQlpbmZvcm1FcnJvcgorZWxzZQorSGlMaW5rIGluZm9ybUFzbU9ic29sZXRlCQlTcGVjaWFsCitIaUxpbmsgaW5mb3JtS2V5d29yZE9ic29sZXRlCUtleXdvcmQKIGVuZGlmCitIaUxpbmsgaW5mb3JtUHJlZGljYXRlCU9wZXJhdG9yCitIaUxpbmsgaW5mb3JtU3lzRnVuYwkJSWRlbnRpZmllcgorSGlMaW5rIGluZm9ybVN5c0NvbnN0CQlJZGVudGlmaWVyCitIaUxpbmsgaW5mb3JtQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKK0hpTGluayBpbmZvcm1SZXBlYXQJCVJlcGVhdAorSGlMaW5rIGluZm9ybVN0YXRlbWVudAlTdGF0ZW1lbnQKK0hpTGluayBpbmZvcm1PcGVyYXRvcgkJT3BlcmF0b3IKK0hpTGluayBpbmZvcm1LZXl3b3JkCQlLZXl3b3JkCitIaUxpbmsgaW5mb3JtR3JhbW1hcgkJS2V5d29yZAorSGlMaW5rIGluZm9ybURpY3RTdHJpbmcJU3RyaW5nCitIaUxpbmsgaW5mb3JtTnVtYmVyCQlOdW1iZXIKK0hpTGluayBpbmZvcm1FcnJvcgkJRXJyb3IKK0hpTGluayBpbmZvcm1TdHJpbmcJCVN0cmluZworSGlMaW5rIGluZm9ybUNvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBpbmZvcm1BY2NlbnQJCVNwZWNpYWwKK0hpTGluayBpbmZvcm1TdHJpbmdVbmljb2RlCVNwZWNpYWwKK0hpTGluayBpbmZvcm1TdHJpbmdDb2RlCVNwZWNpYWwKK0hpTGluayBpbmZvcm1Ub2RvCQlUb2RvCitpZiAhZXhpc3RzKCJpbmZvcm1faGlnaGxpZ2h0X3NpbXBsZSIpCitIaUxpbmsgaW5mb3JtTGliQXR0cmliCUlkZW50aWZpZXIKK0hpTGluayBpbmZvcm1MaWJQcm9wCUlkZW50aWZpZXIKK0hpTGluayBpbmZvcm1MaWJPYmoJCUlkZW50aWZpZXIKK0hpTGluayBpbmZvcm1MaWJSb3V0aW5lCUlkZW50aWZpZXIKK0hpTGluayBpbmZvcm1MaWJWYXJpYWJsZQlJZGVudGlmaWVyCitIaUxpbmsgaW5mb3JtTGliQ29uc3QJSWRlbnRpZmllcgorSGlMaW5rIGluZm9ybUxpYkFjdGlvbglJZGVudGlmaWVyCitlbmRpZgorSGlMaW5rIGluZm9ybUJhZERpY3RTdHJpbmcJaW5mb3JtRXJyb3IKK0hpTGluayBpbmZvcm1CYWRBY2NlbnQJaW5mb3JtRXJyb3IKK0hpTGluayBpbmZvcm1CYWRTdHJVbmljb2RlCWluZm9ybUVycm9yCisKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImluZm9ybSIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvaW5pdHRhYi52aW0gYi9ydW50aW1lL3N5bnRheC9pbml0dGFiLnZpbQppbmRleCBiNzQ3MmY5Li5hNzQzYzgyIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9pbml0dGFiLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9pbml0dGFiLnZpbQpAQCAtNiwxMiArNiw5IEBACiAiIFVSTDogaHR0cDovL3BoeXNpY3MubXVuaS5jei9+eWV0aS9kb3dubG9hZC9zeW50YXgvaW5pdHRhYi52aW0KIAogIiBTZXR1cAotaWYgdmVyc2lvbiA+PSA2MDAKLSAgaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKLSAgICBmaW5pc2gKLSAgZW5kaWYKLWVsc2UKLSAgc3ludGF4IGNsZWFyCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyAgZmluaXNoCiBlbmRpZgogCiBzeW4gY2FzZSBtYXRjaApAQCAtNDUsMzEgKzQyLDI0IEBACiBzeW4gcmVnaW9uIGluaXR0YWJQcm9jZXNzIHN0YXJ0PSIvIiBlbmQ9IiQiIHRyYW5zcGFyZW50IG9uZWxpbmUgY29udGFpbmVkIGNvbnRhaW5zPUBpbml0dGFiU2gsaW5pdHRhYkNvbW1lbnQKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfaW5pdHRhYl9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9pbml0dGFiX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgaW5pdHRhYkNvbW1lbnQgQ29tbWVudAotICBIaUxpbmsgaW5pdHRhYkZpeG1lIFRvZG8KLSAgSGlMaW5rIGluaXR0YWJBY3Rpb25OYW1lIFR5cGUKLSAgSGlMaW5rIGluaXR0YWJFcnJvciBFcnJvcgotICBIaUxpbmsgaW5pdHRhYklkIElkZW50aWZpZXIKLSAgSGlMaW5rIGluaXR0YWJSdW5MZXZlbHMgU3BlY2lhbAorSGlMaW5rIGluaXR0YWJDb21tZW50IENvbW1lbnQKK0hpTGluayBpbml0dGFiRml4bWUgVG9kbworSGlMaW5rIGluaXR0YWJBY3Rpb25OYW1lIFR5cGUKK0hpTGluayBpbml0dGFiRXJyb3IgRXJyb3IKK0hpTGluayBpbml0dGFiSWQgSWRlbnRpZmllcgorSGlMaW5rIGluaXR0YWJSdW5MZXZlbHMgU3BlY2lhbAogCi0gIEhpTGluayBpbml0dGFiQ29sb25Qcm9jZXNzIGluaXR0YWJDb2xvbgotICBIaUxpbmsgaW5pdHRhYkNvbG9uQWN0aW9uIGluaXR0YWJDb2xvbgotICBIaUxpbmsgaW5pdHRhYkNvbG9uUnVuTGV2ZWxzIGluaXR0YWJDb2xvbgotICBIaUxpbmsgaW5pdHRhYkNvbG9uIFByZVByb2MKK0hpTGluayBpbml0dGFiQ29sb25Qcm9jZXNzIGluaXR0YWJDb2xvbgorSGlMaW5rIGluaXR0YWJDb2xvbkFjdGlvbiBpbml0dGFiQ29sb24KK0hpTGluayBpbml0dGFiQ29sb25SdW5MZXZlbHMgaW5pdHRhYkNvbG9uCitIaUxpbmsgaW5pdHRhYkNvbG9uIFByZVByb2MKIAotICBIaUxpbmsgaW5pdHRhYlNoU3RyaW5nIFN0cmluZwotICBIaUxpbmsgaW5pdHRhYlNoT3B0aW9uIFNwZWNpYWwKLSAgSGlMaW5rIGluaXR0YWJTaENvbW1hbmQgU3RhdGVtZW50CitIaUxpbmsgaW5pdHRhYlNoU3RyaW5nIFN0cmluZworSGlMaW5rIGluaXR0YWJTaE9wdGlvbiBTcGVjaWFsCitIaUxpbmsgaW5pdHRhYlNoQ29tbWFuZCBTdGF0ZW1lbnQKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImluaXR0YWIiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9pcGZpbHRlci52aW0gYi9ydW50aW1lL3N5bnRheC9pcGZpbHRlci52aW0KaW5kZXggZGI5OTgxMi4uYTdiN2RmMiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvaXBmaWx0ZXIudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2lwZmlsdGVyLnZpbQpAQCAtOSwxMSArOSw4IEBACiAiIG5vdCBjb3JyZWN0bHkgaWRlbnRpZmllZC4KICIgUGxlYXNlIHNlbmQgY29tbWVudHMgdG8gaGVuZHJpa0BzY2hvbHoubmV0CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9pc2hkLnZpbSBiL3J1bnRpbWUvc3ludGF4L2lzaGQudmltCmluZGV4IDFjMDExZjEuLjc4ZDg4YjkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2lzaGQudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2lzaGQudmltCkBAIC0zLDExICszLDggQEAKICIgTWFpbnRhaW5lcjoJUm9iZXJ0IE0uIENvcnRvcGFzc2kgPGNvcnRvcGFyQG1pbmRzcHJpbmcuY29tPgogIiBMYXN0IENoYW5nZToJMjAwMSBNYXkgMDkKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTM4NywzNSArMzg0LDI3IEBACiBzeW4gcmVnaW9uCWlzaGREZWZpbmUJCXN0YXJ0PSJeXHMqI1xzKlwoZGVmaW5lXHx1bmRlZlwpXD4iIGVuZD0iJCIgY29udGFpbnM9QUxMQlVULEBpc2hkUHJlUHJvY0dyb3VwCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2lzX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2lzX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgaXNoZE51bWJlcgkgICAgTnVtYmVyCi0gIEhpTGluayBpc2hkRXJyb3IJICAgIEVycm9yCi0gIEhpTGluayBpc2hkU3RhdGVtZW50CSAgICBTdGF0ZW1lbnQKLSAgSGlMaW5rIGlzaGRTdHJpbmcJICAgIFN0cmluZwotICBIaUxpbmsgaXNoZENvbW1lbnQJICAgIENvbW1lbnQKLSAgSGlMaW5rIGlzaGRUb2RvCSAgICBUb2RvCi0gIEhpTGluayBpc2hkRnVuY3Rpb24JICAgIElkZW50aWZpZXIKLSAgSGlMaW5rIGlzaGRDb25zdGFudAkgICAgUHJlUHJvYwotICBIaUxpbmsgaXNoZFR5cGUJICAgIFR5cGUKLSAgSGlMaW5rIGlzaGRJbmNsdWRlCSAgICBJbmNsdWRlCi0gIEhpTGluayBpc2hkRGVmaW5lCSAgICBNYWNybwotICBIaUxpbmsgaXNoZEluY2x1ZGVkCSAgICBTdHJpbmcKLSAgSGlMaW5rIGlzaGRQcmVDb25kaXQJICAgIFByZUNvbmRpdAotICBIaUxpbmsgaXNoZEhhc2hJZjBTa2lwICAgaXNoZEhhc2hJZjAKLSAgSGlMaW5rIGlzaGRIYXNoSWYwRW5kICAgIGlzaGRIYXNoSWYwCi0gIEhpTGluayBpc2hkSGFzaElmMAkgICAgQ29tbWVudAorSGlMaW5rIGlzaGROdW1iZXIJICAgIE51bWJlcgorSGlMaW5rIGlzaGRFcnJvcgkgICAgRXJyb3IKK0hpTGluayBpc2hkU3RhdGVtZW50CSAgICBTdGF0ZW1lbnQKK0hpTGluayBpc2hkU3RyaW5nCSAgICBTdHJpbmcKK0hpTGluayBpc2hkQ29tbWVudAkgICAgQ29tbWVudAorSGlMaW5rIGlzaGRUb2RvCSAgICBUb2RvCitIaUxpbmsgaXNoZEZ1bmN0aW9uCSAgICBJZGVudGlmaWVyCitIaUxpbmsgaXNoZENvbnN0YW50CSAgICBQcmVQcm9jCitIaUxpbmsgaXNoZFR5cGUJICAgIFR5cGUKK0hpTGluayBpc2hkSW5jbHVkZQkgICAgSW5jbHVkZQorSGlMaW5rIGlzaGREZWZpbmUJICAgIE1hY3JvCitIaUxpbmsgaXNoZEluY2x1ZGVkCSAgICBTdHJpbmcKK0hpTGluayBpc2hkUHJlQ29uZGl0CSAgICBQcmVDb25kaXQKK0hpTGluayBpc2hkSGFzaElmMFNraXAgICBpc2hkSGFzaElmMAorSGlMaW5rIGlzaGRIYXNoSWYwRW5kICAgIGlzaGRIYXNoSWYwCitIaUxpbmsgaXNoZEhhc2hJZjAJICAgIENvbW1lbnQKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImlzaGQiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2lzcy52aW0gYi9ydW50aW1lL3N5bnRheC9pc3MudmltCmluZGV4IDI2ZDkxNTAuLjYzYTQ1M2EgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2lzcy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvaXNzLnZpbQpAQCAtOSwxMSArOSw4IEBACiAiICAtIFBhc2NhbCBzY3JpcHRpbmcgc3ludGF4IGlzIG5vdCByZWNvZ25pemVkLgogIiAgLSBFbWJlZGRlZCBkb3VibGUgcXVvdGVzIGNvbmZ1c2Ugc3RyaW5nIG1hdGNoZXMuIGUuZy4gImFzZmQiImFzZmEiCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xMDUsNDQgKzEwMiwzNiBAQAogCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2lzc19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9pc3Nfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICAiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyCi0gICBIaUxpbmsgaXNzU2VjdGlvbglTcGVjaWFsCi0gICBIaUxpbmsgaXNzQ29tbWVudAlDb21tZW50Ci0gICBIaUxpbmsgaXNzRGlyZWN0aXZlCVR5cGUKLSAgIEhpTGluayBpc3NQYXJhbQlUeXBlCi0gICBIaUxpbmsgaXNzRm9sZGVyCVNwZWNpYWwKLSAgIEhpTGluayBpc3NTdHJpbmcJU3RyaW5nCi0gICBIaUxpbmsgaXNzVVJMCUluY2x1ZGUKLSAgIEhpTGluayBpc3NQcmVQcm9jCVByZVByb2MgCisiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyCitIaUxpbmsgaXNzU2VjdGlvbglTcGVjaWFsCitIaUxpbmsgaXNzQ29tbWVudAlDb21tZW50CitIaUxpbmsgaXNzRGlyZWN0aXZlCVR5cGUKK0hpTGluayBpc3NQYXJhbQlUeXBlCitIaUxpbmsgaXNzRm9sZGVyCVNwZWNpYWwKK0hpTGluayBpc3NTdHJpbmcJU3RyaW5nCitIaUxpbmsgaXNzVVJMCUluY2x1ZGUKK0hpTGluayBpc3NQcmVQcm9jCVByZVByb2MgCiAKLSAgIEhpTGluayBpc3NEaXJzRmxhZ3MJCUtleXdvcmQKLSAgIEhpTGluayBpc3NGaWxlc0NvcHlNb2RlCUtleXdvcmQKLSAgIEhpTGluayBpc3NGaWxlc0F0dHJpYnMJS2V5d29yZAotICAgSGlMaW5rIGlzc0ZpbGVzUGVybWlzc2lvbnMJS2V5d29yZAotICAgSGlMaW5rIGlzc0ZpbGVzRmxhZ3MJCUtleXdvcmQKLSAgIEhpTGluayBpc3NJY29uc0ZsYWdzCQlLZXl3b3JkCi0gICBIaUxpbmsgaXNzSU5JRmxhZ3MJCUtleXdvcmQKLSAgIEhpTGluayBpc3NSZWdSb290S2V5CQlLZXl3b3JkCi0gICBIaUxpbmsgaXNzUmVnVmFsdWVUeXBlCUtleXdvcmQKLSAgIEhpTGluayBpc3NSZWdGbGFncwkJS2V5d29yZAotICAgSGlMaW5rIGlzc1J1bkZsYWdzCQlLZXl3b3JkCi0gICBIaUxpbmsgaXNzVHlwZXNGbGFncwkJS2V5d29yZAotICAgSGlMaW5rIGlzc0NvbXBvbmVudHNGbGFncwlLZXl3b3JkCi0gICBIaUxpbmsgaXNzSW5zdGFsbERlbGV0ZVR5cGUJS2V5d29yZAotICAgSGlMaW5rIGlzc1Rhc2tzRmxhZ3MJCUtleXdvcmQKK0hpTGluayBpc3NEaXJzRmxhZ3MJCUtleXdvcmQKK0hpTGluayBpc3NGaWxlc0NvcHlNb2RlCUtleXdvcmQKK0hpTGluayBpc3NGaWxlc0F0dHJpYnMJS2V5d29yZAorSGlMaW5rIGlzc0ZpbGVzUGVybWlzc2lvbnMJS2V5d29yZAorSGlMaW5rIGlzc0ZpbGVzRmxhZ3MJCUtleXdvcmQKK0hpTGluayBpc3NJY29uc0ZsYWdzCQlLZXl3b3JkCitIaUxpbmsgaXNzSU5JRmxhZ3MJCUtleXdvcmQKK0hpTGluayBpc3NSZWdSb290S2V5CQlLZXl3b3JkCitIaUxpbmsgaXNzUmVnVmFsdWVUeXBlCUtleXdvcmQKK0hpTGluayBpc3NSZWdGbGFncwkJS2V5d29yZAorSGlMaW5rIGlzc1J1bkZsYWdzCQlLZXl3b3JkCitIaUxpbmsgaXNzVHlwZXNGbGFncwkJS2V5d29yZAorSGlMaW5rIGlzc0NvbXBvbmVudHNGbGFncwlLZXl3b3JkCitIaUxpbmsgaXNzSW5zdGFsbERlbGV0ZVR5cGUJS2V5d29yZAorSGlMaW5rIGlzc1Rhc2tzRmxhZ3MJCUtleXdvcmQKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImlzcyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvaXN0LnZpbSBiL3J1bnRpbWUvc3ludGF4L2lzdC52aW0KaW5kZXggMTMxZDgzMy4uZjNmMDA1YiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvaXN0LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9pc3QudmltCkBAIC0zLDIyICszLDE1IEBACiAiIE1haW50YWluZXI6CVBldGVyIE1lc3phcm9zIDxwbWVzemFyb3NAZWZmaWNlLmh1PgogIiBMYXN0IENoYW5nZToJMjAxMiBKYW4gMDggYnkgVGhpbG8gU2l4CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCiBsZXQgczpjcG9fc2F2ZSA9ICZjcG8KIHNldCBjcG8mdmltCiAKLWlmIHZlcnNpb24gPj0gNjAwCi0gIHNldGxvY2FsIGlza2V5d29yZD0kLEAsNDgtNTcsXwotZWxzZQotICBzZXQgaXNrZXl3b3JkPSQsQCw0OC01NyxfCi1lbmRpZgorc2V0bG9jYWwgaXNrZXl3b3JkPSQsQCw0OC01NyxfCiAKIHN5biBjYXNlIGlnbm9yZQogc3luIGtleXdvcmQgSXN0SW5wU3BlYyAgYWN0dWFsICBhcmdfY2xvc2UgYXJnX29wZW4gZW5jYXAgICAgICAgZXNjYXBlCkBAIC00NSwyOCArMzgsMjAgQEAKIHN5biBtYXRjaCAgIElzdFRvZG8JICAgIkRFQlVHXHxUT0RPIgkgY29udGFpbmVkCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2R1bW15X3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2R1bW15X3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgSXN0SW5wU3BlYwlUeXBlCi0gIEhpTGluayBJc3RPdXRTcGVjCUlkZW50aWZpZXIKLSAgSGlMaW5rIElzdFN0cmluZwlTdHJpbmcKLSAgSGlMaW5rIElzdE51bWJlcglOdW1iZXIKLSAgSGlMaW5rIElzdENvbW1lbnQJQ29tbWVudAotICBIaUxpbmsgSXN0VG9kbwlUb2RvCi0gIEhpTGluayBJc3RTcGVjaWFsCVNwZWNpYWwKLSAgSGlMaW5rIElzdERvdWJsZVF1b3RlCUxhYmVsCi0gIEhpTGluayBJc3RDaGFyYWN0ZXIJTGFiZWwKK0hpTGluayBJc3RJbnBTcGVjCVR5cGUKK0hpTGluayBJc3RPdXRTcGVjCUlkZW50aWZpZXIKK0hpTGluayBJc3RTdHJpbmcJU3RyaW5nCitIaUxpbmsgSXN0TnVtYmVyCU51bWJlcgorSGlMaW5rIElzdENvbW1lbnQJQ29tbWVudAorSGlMaW5rIElzdFRvZG8JVG9kbworSGlMaW5rIElzdFNwZWNpYWwJU3BlY2lhbAorSGlMaW5rIElzdERvdWJsZVF1b3RlCUxhYmVsCitIaUxpbmsgSXN0Q2hhcmFjdGVyCUxhYmVsCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJpc3QiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2phbC52aW0gYi9ydW50aW1lL3N5bnRheC9qYWwudmltCmluZGV4IGQwYmE2NzIuLmRlZDJlY2QgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2phbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvamFsLnZpbQpAQCAtOSwxMSArOSw4IEBACiAiCiAiIFRPRE8gdGVzdC4KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTE3MSw3NyArMTY4LDY5IEBACiAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfamFsX3N5bl9pbml0cyIpCi1pZiB2ZXJzaW9uIDwgNTA4Ci0gIGxldCBkaWRfamFsX3N5bl9pbml0cyA9IDEKLSAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLWVsc2UKLSAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci1lbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGphbEFjY2VzCQlqYWxTdGF0ZW1lbnQKLSAgSGlMaW5rIGphbEJvb2xlYW4JCUJvb2xlYW4KLSAgSGlMaW5rIGphbEJpdAkJCUJvb2xlYW4KLSAgSGlMaW5rIGphbENvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGphbENvbmRpdGlvbmFsCQlDb25kaXRpb25hbAotICBIaUxpbmsgamFsQ29uc3RhbnQJCUNvbnN0YW50Ci0gIEhpTGluayBqYWxEZWxpbWl0ZXIJCUlkZW50aWZpZXIKLSAgSGlMaW5rIGphbERpcmVjdGl2ZQkJUHJlUHJvYwotICBIaUxpbmsgamFsRXhjZXB0aW9uCQlFeGNlcHRpb24KLSAgSGlMaW5rIGphbEZsb2F0CQlGbG9hdAotICBIaUxpbmsgamFsRnVuY3Rpb24JCUZ1bmN0aW9uCi0gIEhpTGluayBqYWxQc3Vkb1ZhcnNLZXkJRnVuY3Rpb24KLSAgSGlMaW5rIGphbExhYmVsCQlMYWJlbAotICBIaUxpbmsgamFsTWF0cml4RGVsaW1pdGVyCUlkZW50aWZpZXIKLSAgSGlMaW5rIGphbE1vZGlmaWVyCQlUeXBlCi0gIEhpTGluayBqYWxOdW1iZXIJCU51bWJlcgotICBIaUxpbmsgamFsQmluTnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIGphbEhleE51bWJlcgkJTnVtYmVyCi0gIEhpTGluayBqYWxPcGVyYXRvcgkJT3BlcmF0b3IKLSAgSGlMaW5rIGphbFByZWRlZmluZWQJCUNvbnN0YW50Ci0gIEhpTGluayBqYWxQcmVQcm9jCQlQcmVQcm9jCi0gIEhpTGluayBqYWxSZXBlYXQJCVJlcGVhdAotICBIaUxpbmsgamFsU3RhdGVtZW50CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGphbFN0cmluZwkJU3RyaW5nCi0gIEhpTGluayBqYWxTdHJpbmdFc2NhcGUJU3BlY2lhbAotICBIaUxpbmsgamFsU3RyaW5nRXNjYXBlR1BDCVNwZWNpYWwKLSAgSGlMaW5rIGphbFN0cmluZ0Vycm9yCQlFcnJvcgotICBIaUxpbmsgamFsU3RydWN0CQlqYWxTdGF0ZW1lbnQKLSAgSGlMaW5rIGphbFN5bWJvbE9wZXJhdG9yCWphbE9wZXJhdG9yCi0gIEhpTGluayBqYWxUb2RvCQlUb2RvCi0gIEhpTGluayBqYWxUeXBlCQlUeXBlCi0gIEhpTGluayBqYWxVbmNsYXNzaWZpZWQJU3RhdGVtZW50Ci0gIEhpTGluayBqYWxBc20JCQlBc3NlbWJsZXIKLSAgSGlMaW5rIGphbEVycm9yCQlFcnJvcgotICBIaUxpbmsgamFsQXNtS2V5CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGphbFBJQwkJCVN0YXRlbWVudAorSGlMaW5rIGphbEFjY2VzCQlqYWxTdGF0ZW1lbnQKK0hpTGluayBqYWxCb29sZWFuCQlCb29sZWFuCitIaUxpbmsgamFsQml0CQkJQm9vbGVhbgorSGlMaW5rIGphbENvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBqYWxDb25kaXRpb25hbAkJQ29uZGl0aW9uYWwKK0hpTGluayBqYWxDb25zdGFudAkJQ29uc3RhbnQKK0hpTGluayBqYWxEZWxpbWl0ZXIJCUlkZW50aWZpZXIKK0hpTGluayBqYWxEaXJlY3RpdmUJCVByZVByb2MKK0hpTGluayBqYWxFeGNlcHRpb24JCUV4Y2VwdGlvbgorSGlMaW5rIGphbEZsb2F0CQlGbG9hdAorSGlMaW5rIGphbEZ1bmN0aW9uCQlGdW5jdGlvbgorSGlMaW5rIGphbFBzdWRvVmFyc0tleQlGdW5jdGlvbgorSGlMaW5rIGphbExhYmVsCQlMYWJlbAorSGlMaW5rIGphbE1hdHJpeERlbGltaXRlcglJZGVudGlmaWVyCitIaUxpbmsgamFsTW9kaWZpZXIJCVR5cGUKK0hpTGluayBqYWxOdW1iZXIJCU51bWJlcgorSGlMaW5rIGphbEJpbk51bWJlcgkJTnVtYmVyCitIaUxpbmsgamFsSGV4TnVtYmVyCQlOdW1iZXIKK0hpTGluayBqYWxPcGVyYXRvcgkJT3BlcmF0b3IKK0hpTGluayBqYWxQcmVkZWZpbmVkCQlDb25zdGFudAorSGlMaW5rIGphbFByZVByb2MJCVByZVByb2MKK0hpTGluayBqYWxSZXBlYXQJCVJlcGVhdAorSGlMaW5rIGphbFN0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsgamFsU3RyaW5nCQlTdHJpbmcKK0hpTGluayBqYWxTdHJpbmdFc2NhcGUJU3BlY2lhbAorSGlMaW5rIGphbFN0cmluZ0VzY2FwZUdQQwlTcGVjaWFsCitIaUxpbmsgamFsU3RyaW5nRXJyb3IJCUVycm9yCitIaUxpbmsgamFsU3RydWN0CQlqYWxTdGF0ZW1lbnQKK0hpTGluayBqYWxTeW1ib2xPcGVyYXRvcglqYWxPcGVyYXRvcgorSGlMaW5rIGphbFRvZG8JCVRvZG8KK0hpTGluayBqYWxUeXBlCQlUeXBlCitIaUxpbmsgamFsVW5jbGFzc2lmaWVkCVN0YXRlbWVudAorSGlMaW5rIGphbEFzbQkJCUFzc2VtYmxlcgorSGlMaW5rIGphbEVycm9yCQlFcnJvcgorSGlMaW5rIGphbEFzbUtleQkJU3RhdGVtZW50CitIaUxpbmsgamFsUElDCQkJU3RhdGVtZW50CiAKLSAgSGlMaW5rIGphbFNob3dUYWIJCUVycm9yCitIaUxpbmsgamFsU2hvd1RhYgkJRXJyb3IKIAotICBIaUxpbmsgcGljVG9kbwkJVG9kbwotICBIaUxpbmsgcGljQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgcGljRGlyZWN0aXZlCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHBpY0xhYmVsCQlMYWJlbAotICBIaUxpbmsgcGljU3RyaW5nCQlTdHJpbmcKK0hpTGluayBwaWNUb2RvCQlUb2RvCitIaUxpbmsgcGljQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHBpY0RpcmVjdGl2ZQkJU3RhdGVtZW50CitIaUxpbmsgcGljTGFiZWwJCUxhYmVsCitIaUxpbmsgcGljU3RyaW5nCQlTdHJpbmcKIAotICBIaUxpbmsgcGljT3Bjb2RlCQlLZXl3b3JkCi0gIEhpTGluayBwaWNSZWdpc3RlcgkJU3RydWN0dXJlCi0gIEhpTGluayBwaWNSZWdpc3RlclBhcnQJU3BlY2lhbAotICBIaUxpbmsgcGljUGluRGlyCQlTUGVjaWFsCi0gIEhpTGluayBwaWNQb3J0RGlyCQlTUGVjaWFsCitIaUxpbmsgcGljT3Bjb2RlCQlLZXl3b3JkCitIaUxpbmsgcGljUmVnaXN0ZXIJCVN0cnVjdHVyZQorSGlMaW5rIHBpY1JlZ2lzdGVyUGFydAlTcGVjaWFsCitIaUxpbmsgcGljUGluRGlyCQlTUGVjaWFsCitIaUxpbmsgcGljUG9ydERpcgkJU1BlY2lhbAogCi0gIEhpTGluayBwaWNBU0NJSQkJU3RyaW5nCi0gIEhpTGluayBwaWNCaW5hcnkJCU51bWJlcgotICBIaUxpbmsgcGljRGVjaW1hbAkJTnVtYmVyCi0gIEhpTGluayBwaWNIZXhhZGVjaW1hbAkJTnVtYmVyCi0gIEhpTGluayBwaWNPY3RhbAkJTnVtYmVyCitIaUxpbmsgcGljQVNDSUkJCVN0cmluZworSGlMaW5rIHBpY0JpbmFyeQkJTnVtYmVyCitIaUxpbmsgcGljRGVjaW1hbAkJTnVtYmVyCitIaUxpbmsgcGljSGV4YWRlY2ltYWwJCU51bWJlcgorSGlMaW5rIHBpY09jdGFsCQlOdW1iZXIKIAotICBIaUxpbmsgcGljSWRlbnRpZmllcgkJSWRlbnRpZmllcgorSGlMaW5rIHBpY0lkZW50aWZpZXIJCUlkZW50aWZpZXIKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiamFsIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvamFtLnZpbSBiL3J1bnRpbWUvc3ludGF4L2phbS52aW0KaW5kZXggY2JkOTliYi4uZjE2NWE3OCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvamFtLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9qYW0udmltCkBAIC0zLDIyICszLDE1IEBACiAiIE1haW50YWluZXI6CVJhbGYgTGVta2UgKHJhbGZsZW1rQHQtb25saW5lLmRlKQogIiBMYXN0IGNoYW5nZToJMjAxMiBKYW4gMDggYnkgVGhpbG8gU2l4CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCiBsZXQgczpjcG9fc2F2ZSA9ICZjcG8KIHNldCBjcG8mdmltCiAKLWlmIHZlcnNpb24gPj0gNjAwCi0gIHNldGxvY2FsIGlza2V5d29yZD1ALDQ4LTU3LF8sLQotZWxzZQotICBzZXQgaXNrZXl3b3JkPUAsNDgtNTcsXywtCi1lbmRpZgorc2V0bG9jYWwgaXNrZXl3b3JkPUAsNDgtNTcsXywtCiAKICIgQSBidW5jaCBvZiB1c2VmdWwgamFtIGtleXdvcmRzCiBzeW4ga2V5d29yZAlqYW1TdGF0ZW1lbnQJYnJlYWsgY2FsbCBkYm1zIGZsdXNoIGdsb2JhbCBpbmNsdWRlIG1zZyBwYXJtcyBwcm9jIHB1YmxpYyByZWNlaXZlIHJldHVybiBzZW5kIHVubG9hZCB2YXJzCkBAIC0xNjcsODggKzE2MCw4MCBAQAogc3ludGF4IG1hdGNoICAgIGphbU9wZXJhdG9yM0Vycm9yICAgIiovIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9qYW1fc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfamFtX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAgIEhpTGluayBqYW1Db21tZW50TAkJamFtQ29tbWVudAotICAgIEhpTGluayBqYW1Db21tZW50TDIJCWphbUNvbW1lbnQKLSAgICBIaUxpbmsgamFtT3BlcmF0b3IzRXJyb3IJamFtRXJyb3IKLSAgICBIaUxpbmsgamFtQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLSAgICBIaUxpbmsgamFtUmVwZWF0CQlSZXBlYXQKLSAgICBIaUxpbmsgamFtQ2hhcmFjdGVyCQlDaGFyYWN0ZXIKLSAgICBIaUxpbmsgamFtU3BlY2lhbENoYXJhY3RlcglqYW1TcGVjaWFsCi0gICAgSGlMaW5rIGphbU51bWJlcgkJTnVtYmVyCi0gICAgSGlMaW5rIGphbVBhcmVuRXJyb3IJamFtRXJyb3IKLSAgICBIaUxpbmsgamFtRXJySW5QYXJlbglqYW1FcnJvcgotICAgIEhpTGluayBqYW1FcnJJbkJyYWNrZXQJamFtRXJyb3IKLSAgICBIaUxpbmsgamFtQ29tbWVudEVycm9yCWphbUVycm9yCi0gICAgSGlMaW5rIGphbVNwYWNlRXJyb3IJamFtRXJyb3IKLSAgICBIaUxpbmsgamFtU3BlY2lhbEVycm9yCWphbUVycm9yCi0gICAgSGlMaW5rIGphbU9wZXJhdG9yMQkJamFtT3BlcmF0b3IKLSAgICBIaUxpbmsgamFtT3BlcmF0b3IyCQlqYW1PcGVyYXRvcgotICAgIEhpTGluayBqYW1PcGVyYXRvcjMJCWphbU9wZXJhdG9yCi0gICAgSGlMaW5rIGphbU9wZXJhdG9yNAkJamFtT3BlcmF0b3IKLSAgICBIaUxpbmsgamFtT3BlcmF0b3I1CQlqYW1PcGVyYXRvcgotICAgIEhpTGluayBqYW1PcGVyYXRvcjYJCWphbU9wZXJhdG9yCi0gICAgSGlMaW5rIGphbU9wZXJhdG9yNwkJamFtT3BlcmF0b3IKLSAgICBIaUxpbmsgamFtT3BlcmF0b3I4CQlqYW1PcGVyYXRvcgotICAgIEhpTGluayBqYW1PcGVyYXRvcjkJCWphbU9wZXJhdG9yCi0gICAgSGlMaW5rIGphbU9wZXJhdG9yMTAJamFtT3BlcmF0b3IKLSAgICBIaUxpbmsgamFtT3BlcmF0b3IxMQlqYW1PcGVyYXRvcgotICAgIEhpTGluayBqYW1PcGVyYXRvcjEyCWphbU9wZXJhdG9yCi0gICAgSGlMaW5rIGphbU9wZXJhdG9yMTMJamFtT3BlcmF0b3IKLSAgICBIaUxpbmsgamFtT3BlcmF0b3IxNAlqYW1PcGVyYXRvcgotICAgIEhpTGluayBqYW1FcnJvcgkJRXJyb3IKLSAgICBIaUxpbmsgamFtU3RhdGVtZW50CQlTdGF0ZW1lbnQKLSAgICBIaUxpbmsgamFtUHJlQ29uZGl0CQlQcmVDb25kaXQKLSAgICBIaUxpbmsgamFtQ29tbWVudEVycm9yCWphbUVycm9yCi0gICAgSGlMaW5rIGphbUNvbW1lbnRTdHJpbmcJamFtU3RyaW5nCi0gICAgSGlMaW5rIGphbUNvbW1lbnQyU3RyaW5nCWphbVN0cmluZwotICAgIEhpTGluayBqYW1Db21tZW50U2tpcAlqYW1Db21tZW50Ci0gICAgSGlMaW5rIGphbVN0cmluZwkJU3RyaW5nCi0gICAgSGlMaW5rIGphbUNvbW1lbnQJCUNvbW1lbnQKLSAgICBIaUxpbmsgamFtU3BlY2lhbAkJU3BlY2lhbENoYXIKLSAgICBIaUxpbmsgamFtVG9kbwkJVG9kbwotICAgIEhpTGluayBqYW1DcHBTa2lwCQlqYW1DcHBPdXQKLSAgICBIaUxpbmsgamFtQ3BwT3V0MgkJamFtQ3BwT3V0Ci0gICAgSGlMaW5rIGphbUNwcE91dAkJQ29tbWVudAotICAgIEhpTGluayBqYW1EQlN0YXRlMQkJSWRlbnRpZmllcgotICAgIEhpTGluayBqYW1EQlN0YXRlMgkJSWRlbnRpZmllcgotICAgIEhpTGluayBqYW1TUUxTdGF0ZTEJCWphbVNRTAotICAgIEhpTGluayBqYW1TUUxTdGF0ZTIJCWphbVNRTAotICAgIEhpTGluayBqYW1MaWJGdW5jMQkJamFtTGliRnVuYwotICAgIEhpTGluayBqYW1MaWJGdW5jMgkJamFtTGliRnVuYwotICAgIEhpTGluayBqYW1MaWJGdW5jMwkJamFtTGliRnVuYwotICAgIEhpTGluayBqYW1MaWJGdW5jNAkJamFtTGliRnVuYwotICAgIEhpTGluayBqYW1MaWJGdW5jNQkJamFtTGliRnVuYwotICAgIEhpTGluayBqYW1MaWJGdW5jNgkJamFtTGliRnVuYwotICAgIEhpTGluayBqYW1MaWJGdW5jNwkJamFtTGliRnVuYwotICAgIEhpTGluayBqYW1MaWJGdW5jOAkJamFtTGliRnVuYwotICAgIEhpTGluayBqYW1MaWJGdW5jOQkJamFtTGliRnVuYwotICAgIEhpTGluayBqYW1WYXJpYWJsZTEJCWphbVZhcmlhYmxlbgotICAgIEhpTGluayBqYW1WYXJpYWJsZTIJCWphbVZhcmlhYmxlbgotICAgIEhpTGluayBqYW1WYXJpYWJsZTMJCWphbVZhcmlhYmxlbgotICAgIEhpTGluayBqYW1WYXJpYWJsZTQJCWphbVZhcmlhYmxlbgotICAgIEhpTGluayBqYW1WYXJpYWJsZTUJCWphbVZhcmlhYmxlbgotICAgIEhpTGluayBqYW1WYXJpYWJsZTYJCWphbVZhcmlhYmxlbgotICAgIEhpTGluayBqYW1WYXJpYWJsZTcJCWphbVZhcmlhYmxlbgotICAgIEhpTGluayBqYW1WYXJpYWJsZTgJCWphbVZhcmlhYmxlbgotICAgIEhpTGluayBqYW1WYXJpYWJsZTkJCWphbVZhcmlhYmxlbgotICAgIEhpTGluayBqYW1WYXJpYWJsZTEwCWphbVZhcmlhYmxlbgotICAgIEhpTGluayBqYW1WYXJpYWJsZW4JCUNvbnN0YW50Ci0gICAgSGlMaW5rIGphbVNRTAkJVHlwZQotICAgIEhpTGluayBqYW1MaWJGdW5jCQlQcmVQcm9jCi0gICAgSGlMaW5rIGphbU9wZXJhdG9yCQlTcGVjaWFsCitIaUxpbmsgamFtQ29tbWVudEwJCWphbUNvbW1lbnQKK0hpTGluayBqYW1Db21tZW50TDIJCWphbUNvbW1lbnQKK0hpTGluayBqYW1PcGVyYXRvcjNFcnJvcglqYW1FcnJvcgorSGlMaW5rIGphbUNvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCitIaUxpbmsgamFtUmVwZWF0CQlSZXBlYXQKK0hpTGluayBqYW1DaGFyYWN0ZXIJCUNoYXJhY3RlcgorSGlMaW5rIGphbVNwZWNpYWxDaGFyYWN0ZXIJamFtU3BlY2lhbAorSGlMaW5rIGphbU51bWJlcgkJTnVtYmVyCitIaUxpbmsgamFtUGFyZW5FcnJvcglqYW1FcnJvcgorSGlMaW5rIGphbUVyckluUGFyZW4JamFtRXJyb3IKK0hpTGluayBqYW1FcnJJbkJyYWNrZXQJamFtRXJyb3IKK0hpTGluayBqYW1Db21tZW50RXJyb3IJamFtRXJyb3IKK0hpTGluayBqYW1TcGFjZUVycm9yCWphbUVycm9yCitIaUxpbmsgamFtU3BlY2lhbEVycm9yCWphbUVycm9yCitIaUxpbmsgamFtT3BlcmF0b3IxCQlqYW1PcGVyYXRvcgorSGlMaW5rIGphbU9wZXJhdG9yMgkJamFtT3BlcmF0b3IKK0hpTGluayBqYW1PcGVyYXRvcjMJCWphbU9wZXJhdG9yCitIaUxpbmsgamFtT3BlcmF0b3I0CQlqYW1PcGVyYXRvcgorSGlMaW5rIGphbU9wZXJhdG9yNQkJamFtT3BlcmF0b3IKK0hpTGluayBqYW1PcGVyYXRvcjYJCWphbU9wZXJhdG9yCitIaUxpbmsgamFtT3BlcmF0b3I3CQlqYW1PcGVyYXRvcgorSGlMaW5rIGphbU9wZXJhdG9yOAkJamFtT3BlcmF0b3IKK0hpTGluayBqYW1PcGVyYXRvcjkJCWphbU9wZXJhdG9yCitIaUxpbmsgamFtT3BlcmF0b3IxMAlqYW1PcGVyYXRvcgorSGlMaW5rIGphbU9wZXJhdG9yMTEJamFtT3BlcmF0b3IKK0hpTGluayBqYW1PcGVyYXRvcjEyCWphbU9wZXJhdG9yCitIaUxpbmsgamFtT3BlcmF0b3IxMwlqYW1PcGVyYXRvcgorSGlMaW5rIGphbU9wZXJhdG9yMTQJamFtT3BlcmF0b3IKK0hpTGluayBqYW1FcnJvcgkJRXJyb3IKK0hpTGluayBqYW1TdGF0ZW1lbnQJCVN0YXRlbWVudAorSGlMaW5rIGphbVByZUNvbmRpdAkJUHJlQ29uZGl0CitIaUxpbmsgamFtQ29tbWVudEVycm9yCWphbUVycm9yCitIaUxpbmsgamFtQ29tbWVudFN0cmluZwlqYW1TdHJpbmcKK0hpTGluayBqYW1Db21tZW50MlN0cmluZwlqYW1TdHJpbmcKK0hpTGluayBqYW1Db21tZW50U2tpcAlqYW1Db21tZW50CitIaUxpbmsgamFtU3RyaW5nCQlTdHJpbmcKK0hpTGluayBqYW1Db21tZW50CQlDb21tZW50CitIaUxpbmsgamFtU3BlY2lhbAkJU3BlY2lhbENoYXIKK0hpTGluayBqYW1Ub2RvCQlUb2RvCitIaUxpbmsgamFtQ3BwU2tpcAkJamFtQ3BwT3V0CitIaUxpbmsgamFtQ3BwT3V0MgkJamFtQ3BwT3V0CitIaUxpbmsgamFtQ3BwT3V0CQlDb21tZW50CitIaUxpbmsgamFtREJTdGF0ZTEJCUlkZW50aWZpZXIKK0hpTGluayBqYW1EQlN0YXRlMgkJSWRlbnRpZmllcgorSGlMaW5rIGphbVNRTFN0YXRlMQkJamFtU1FMCitIaUxpbmsgamFtU1FMU3RhdGUyCQlqYW1TUUwKK0hpTGluayBqYW1MaWJGdW5jMQkJamFtTGliRnVuYworSGlMaW5rIGphbUxpYkZ1bmMyCQlqYW1MaWJGdW5jCitIaUxpbmsgamFtTGliRnVuYzMJCWphbUxpYkZ1bmMKK0hpTGluayBqYW1MaWJGdW5jNAkJamFtTGliRnVuYworSGlMaW5rIGphbUxpYkZ1bmM1CQlqYW1MaWJGdW5jCitIaUxpbmsgamFtTGliRnVuYzYJCWphbUxpYkZ1bmMKK0hpTGluayBqYW1MaWJGdW5jNwkJamFtTGliRnVuYworSGlMaW5rIGphbUxpYkZ1bmM4CQlqYW1MaWJGdW5jCitIaUxpbmsgamFtTGliRnVuYzkJCWphbUxpYkZ1bmMKK0hpTGluayBqYW1WYXJpYWJsZTEJCWphbVZhcmlhYmxlbgorSGlMaW5rIGphbVZhcmlhYmxlMgkJamFtVmFyaWFibGVuCitIaUxpbmsgamFtVmFyaWFibGUzCQlqYW1WYXJpYWJsZW4KK0hpTGluayBqYW1WYXJpYWJsZTQJCWphbVZhcmlhYmxlbgorSGlMaW5rIGphbVZhcmlhYmxlNQkJamFtVmFyaWFibGVuCitIaUxpbmsgamFtVmFyaWFibGU2CQlqYW1WYXJpYWJsZW4KK0hpTGluayBqYW1WYXJpYWJsZTcJCWphbVZhcmlhYmxlbgorSGlMaW5rIGphbVZhcmlhYmxlOAkJamFtVmFyaWFibGVuCitIaUxpbmsgamFtVmFyaWFibGU5CQlqYW1WYXJpYWJsZW4KK0hpTGluayBqYW1WYXJpYWJsZTEwCWphbVZhcmlhYmxlbgorSGlMaW5rIGphbVZhcmlhYmxlbgkJQ29uc3RhbnQKK0hpTGluayBqYW1TUUwJCVR5cGUKK0hpTGluayBqYW1MaWJGdW5jCQlQcmVQcm9jCitIaUxpbmsgamFtT3BlcmF0b3IJCVNwZWNpYWwKIAotICAgIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiamFtIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9qYXJnb24udmltIGIvcnVudGltZS9zeW50YXgvamFyZ29uLnZpbQppbmRleCAyNWE4OGJjLi45N2IwM2MzIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9qYXJnb24udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2phcmdvbi52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOgk8cm1zQHBvY3p0YS5vbmV0LnBsPgogIiBMYXN0IENoYW5nZToJMjAwMSBNYXkgMjYKICIKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0Jc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogCWZpbmlzaAogZW5kaWYKIApAQCAtMTcsMjAgKzE0LDEyIEBACiBzeW4gbWF0Y2ggamFyZ29uTWFyawkve1tefV0qfS8KIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfamFyZ29uX3N5bnRheF9pbml0cyIpCi0JaWYgdmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX2phcmdvbl9zeW50YXhfaW5pdHMgPSAxCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0JZWxzZQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLQllbmRpZgotCUhpTGluayBqYXJnb25DaGFwdFRpdGxlCVRpdGxlCi0JSGlMaW5rIGphcmdvbkVtYWlsQWRkcgkgQ29tbWVudAotCUhpTGluayBqYXJnb25VcmwJIENvbW1lbnQKLQlIaUxpbmsgamFyZ29uTWFyawlMYWJlbAotCWRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CitIaUxpbmsgamFyZ29uQ2hhcHRUaXRsZQlUaXRsZQorSGlMaW5rIGphcmdvbkVtYWlsQWRkcgkgQ29tbWVudAorSGlMaW5rIGphcmdvblVybAkgQ29tbWVudAorSGlMaW5rIGphcmdvbk1hcmsJTGFiZWwKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImphcmdvbiIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2phdmEudmltIGIvcnVudGltZS9zeW50YXgvamF2YS52aW0KaW5kZXggZTExM2E5MC4uYzIyYzY3YiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvamF2YS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvamF2YS52aW0KQEAgLTYsMTEgKzYsOSBAQAogCiAiIFBsZWFzZSBjaGVjayA6aGVscCBqYXZhLnZpbSBmb3IgY29tbWVudHMgb24gc29tZSBvZiB0aGUgb3B0aW9ucyBhdmFpbGFibGUuCiAKLSIgUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAogaWYgIWV4aXN0cygibWFpbl9zeW50YXgiKQotICBpZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3ludGF4IGNsZWFyCi0gIGVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorICBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICAgIGZpbmlzaAogICBlbmRpZgogICAiIHdlIGRlZmluZSBpdCBoZXJlIHNvIHRoYXQgaW5jbHVkZWQgZmlsZXMgY2FuIHRlc3QgZm9yIGl0CkBAIC0yMiwxMSArMjAsNyBAQAogc2V0IGNwbyZ2aW0KIAogIiBkb24ndCB1c2Ugc3RhbmRhcmQgSGlMaW5rLCBpdCB3aWxsIG5vdCB3b3JrIHdpdGggaW5jbHVkZWQgc3ludGF4IGZpbGVzCi1pZiB2ZXJzaW9uIDwgNTA4Ci0gIGNvbW1hbmQhIC1uYXJncz0rIEphdmFIaUxpbmsgaGkgbGluayA8YXJncz4KLWVsc2UKLSAgY29tbWFuZCEgLW5hcmdzPSsgSmF2YUhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLWVuZGlmCitjb21tYW5kISAtbmFyZ3M9KyBKYXZhSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCiAiIHNvbWUgY2hhcmFjdGVycyB0aGF0IGNhbm5vdCBiZSBpbiBhIGphdmEgcHJvZ3JhbSAob3V0c2lkZSBhIHN0cmluZykKIHN5biBtYXRjaCBqYXZhRXJyb3IgIltcXEBgXSIKQEAgLTI0MiwyMyArMjM2LDIxIEBACiAKICAgc3luIGNsdXN0ZXIgamF2YVRvcCBhZGQ9amF2YURlYnVnCiAKLSAgaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2Nfc3luX2luaXRzIikKLSAgICBKYXZhSGlMaW5rIGphdmFEZWJ1ZwkJIERlYnVnCi0gICAgSmF2YUhpTGluayBqYXZhRGVidWdTdHJpbmcJCSBEZWJ1Z1N0cmluZwotICAgIEphdmFIaUxpbmsgamF2YURlYnVnU3RyaW5nRXJyb3IJIGphdmFFcnJvcgotICAgIEphdmFIaUxpbmsgamF2YURlYnVnVHlwZQkJIERlYnVnVHlwZQotICAgIEphdmFIaUxpbmsgamF2YURlYnVnQm9vbGVhbgkJIERlYnVnQm9vbGVhbgotICAgIEphdmFIaUxpbmsgamF2YURlYnVnTnVtYmVyCQkgRGVidWcKLSAgICBKYXZhSGlMaW5rIGphdmFEZWJ1Z1NwZWNpYWwJCSBEZWJ1Z1NwZWNpYWwKLSAgICBKYXZhSGlMaW5rIGphdmFEZWJ1Z1NwZWNpYWxDaGFyYWN0ZXIgRGVidWdTcGVjaWFsCi0gICAgSmF2YUhpTGluayBqYXZhRGVidWdDaGFyYWN0ZXIJIERlYnVnU3RyaW5nCi0gICAgSmF2YUhpTGluayBqYXZhRGVidWdQYXJlbgkJIERlYnVnCisgIEphdmFIaUxpbmsgamF2YURlYnVnCQkgRGVidWcKKyAgSmF2YUhpTGluayBqYXZhRGVidWdTdHJpbmcJCSBEZWJ1Z1N0cmluZworICBKYXZhSGlMaW5rIGphdmFEZWJ1Z1N0cmluZ0Vycm9yCSBqYXZhRXJyb3IKKyAgSmF2YUhpTGluayBqYXZhRGVidWdUeXBlCQkgRGVidWdUeXBlCisgIEphdmFIaUxpbmsgamF2YURlYnVnQm9vbGVhbgkJIERlYnVnQm9vbGVhbgorICBKYXZhSGlMaW5rIGphdmFEZWJ1Z051bWJlcgkJIERlYnVnCisgIEphdmFIaUxpbmsgamF2YURlYnVnU3BlY2lhbAkJIERlYnVnU3BlY2lhbAorICBKYXZhSGlMaW5rIGphdmFEZWJ1Z1NwZWNpYWxDaGFyYWN0ZXIgRGVidWdTcGVjaWFsCisgIEphdmFIaUxpbmsgamF2YURlYnVnQ2hhcmFjdGVyCSBEZWJ1Z1N0cmluZworICBKYXZhSGlMaW5rIGphdmFEZWJ1Z1BhcmVuCQkgRGVidWcKIAotICAgIEphdmFIaUxpbmsgRGVidWdTdHJpbmcJCSBTdHJpbmcKLSAgICBKYXZhSGlMaW5rIERlYnVnU3BlY2lhbAkJIFNwZWNpYWwKLSAgICBKYXZhSGlMaW5rIERlYnVnQm9vbGVhbgkJIEJvb2xlYW4KLSAgICBKYXZhSGlMaW5rIERlYnVnVHlwZQkJIFR5cGUKLSAgZW5kaWYKKyAgSmF2YUhpTGluayBEZWJ1Z1N0cmluZwkJIFN0cmluZworICBKYXZhSGlMaW5rIERlYnVnU3BlY2lhbAkJIFNwZWNpYWwKKyAgSmF2YUhpTGluayBEZWJ1Z0Jvb2xlYW4JCSBCb29sZWFuCisgIEphdmFIaUxpbmsgRGVidWdUeXBlCQkgVHlwZQogZW5kaWYKIAogaWYgZXhpc3RzKCJqYXZhX21hcmtfYnJhY2VzX2luX3BhcmVuc19hc19lcnJvcnMiKQpAQCAtMjkxLDU5ICsyODMsNTQgQEAKIGV4ZWMgInN5biBzeW5jIGNjb21tZW50IGphdmFDb21tZW50IG1pbmxpbmVzPSIgLiBqYXZhX21pbmxpbmVzCiAKICIgVGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2phdmFfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfamF2YV9zeW5faW5pdHMgPSAxCi0gIGVuZGlmCi0gIEphdmFIaUxpbmsgamF2YUxhbWJkYURlZgkJRnVuY3Rpb24KLSAgSmF2YUhpTGluayBqYXZhRnVuY0RlZgkJRnVuY3Rpb24KLSAgSmF2YUhpTGluayBqYXZhVmFyQXJnCQkJRnVuY3Rpb24KLSAgSmF2YUhpTGluayBqYXZhQnJhY2VzCQkJRnVuY3Rpb24KLSAgSmF2YUhpTGluayBqYXZhQnJhbmNoCQkJQ29uZGl0aW9uYWwKLSAgSmF2YUhpTGluayBqYXZhVXNlckxhYmVsUmVmCQlqYXZhVXNlckxhYmVsCi0gIEphdmFIaUxpbmsgamF2YUxhYmVsCQkJTGFiZWwKLSAgSmF2YUhpTGluayBqYXZhVXNlckxhYmVsCQlMYWJlbAotICBKYXZhSGlMaW5rIGphdmFDb25kaXRpb25hbAkJQ29uZGl0aW9uYWwKLSAgSmF2YUhpTGluayBqYXZhUmVwZWF0CQkJUmVwZWF0Ci0gIEphdmFIaUxpbmsgamF2YUV4Y2VwdGlvbnMJCUV4Y2VwdGlvbgotICBKYXZhSGlMaW5rIGphdmFBc3NlcnQJCQlTdGF0ZW1lbnQKLSAgSmF2YUhpTGluayBqYXZhU3RvcmFnZUNsYXNzCQlTdG9yYWdlQ2xhc3MKLSAgSmF2YUhpTGluayBqYXZhTWV0aG9kRGVjbAkJamF2YVN0b3JhZ2VDbGFzcwotICBKYXZhSGlMaW5rIGphdmFDbGFzc0RlY2wJCWphdmFTdG9yYWdlQ2xhc3MKLSAgSmF2YUhpTGluayBqYXZhU2NvcGVEZWNsCQlqYXZhU3RvcmFnZUNsYXNzCi0gIEphdmFIaUxpbmsgamF2YUJvb2xlYW4JCUJvb2xlYW4KLSAgSmF2YUhpTGluayBqYXZhU3BlY2lhbAkJU3BlY2lhbAotICBKYXZhSGlMaW5rIGphdmFTcGVjaWFsRXJyb3IJCUVycm9yCi0gIEphdmFIaUxpbmsgamF2YVNwZWNpYWxDaGFyRXJyb3IJRXJyb3IKLSAgSmF2YUhpTGluayBqYXZhU3RyaW5nCQkJU3RyaW5nCi0gIEphdmFIaUxpbmsgamF2YUNoYXJhY3RlcgkJQ2hhcmFjdGVyCi0gIEphdmFIaUxpbmsgamF2YVNwZWNpYWxDaGFyCQlTcGVjaWFsQ2hhcgotICBKYXZhSGlMaW5rIGphdmFOdW1iZXIJCQlOdW1iZXIKLSAgSmF2YUhpTGluayBqYXZhRXJyb3IJCQlFcnJvcgotICBKYXZhSGlMaW5rIGphdmFTdHJpbmdFcnJvcgkJRXJyb3IKLSAgSmF2YUhpTGluayBqYXZhU3RhdGVtZW50CQlTdGF0ZW1lbnQKLSAgSmF2YUhpTGluayBqYXZhT3BlcmF0b3IJCU9wZXJhdG9yCi0gIEphdmFIaUxpbmsgamF2YUNvbW1lbnQJCUNvbW1lbnQKLSAgSmF2YUhpTGluayBqYXZhRG9jQ29tbWVudAkJQ29tbWVudAotICBKYXZhSGlMaW5rIGphdmFMaW5lQ29tbWVudAkJQ29tbWVudAotICBKYXZhSGlMaW5rIGphdmFDb25zdGFudAkJQ29uc3RhbnQKLSAgSmF2YUhpTGluayBqYXZhVHlwZWRlZgkJVHlwZWRlZgotICBKYXZhSGlMaW5rIGphdmFUb2RvCQkJVG9kbwotICBKYXZhSGlMaW5rIGphdmFBbm5vdGF0aW9uCQlQcmVQcm9jCitKYXZhSGlMaW5rIGphdmFMYW1iZGFEZWYJCUZ1bmN0aW9uCitKYXZhSGlMaW5rIGphdmFGdW5jRGVmCQlGdW5jdGlvbgorSmF2YUhpTGluayBqYXZhVmFyQXJnCQkJRnVuY3Rpb24KK0phdmFIaUxpbmsgamF2YUJyYWNlcwkJCUZ1bmN0aW9uCitKYXZhSGlMaW5rIGphdmFCcmFuY2gJCQlDb25kaXRpb25hbAorSmF2YUhpTGluayBqYXZhVXNlckxhYmVsUmVmCQlqYXZhVXNlckxhYmVsCitKYXZhSGlMaW5rIGphdmFMYWJlbAkJCUxhYmVsCitKYXZhSGlMaW5rIGphdmFVc2VyTGFiZWwJCUxhYmVsCitKYXZhSGlMaW5rIGphdmFDb25kaXRpb25hbAkJQ29uZGl0aW9uYWwKK0phdmFIaUxpbmsgamF2YVJlcGVhdAkJCVJlcGVhdAorSmF2YUhpTGluayBqYXZhRXhjZXB0aW9ucwkJRXhjZXB0aW9uCitKYXZhSGlMaW5rIGphdmFBc3NlcnQJCQlTdGF0ZW1lbnQKK0phdmFIaUxpbmsgamF2YVN0b3JhZ2VDbGFzcwkJU3RvcmFnZUNsYXNzCitKYXZhSGlMaW5rIGphdmFNZXRob2REZWNsCQlqYXZhU3RvcmFnZUNsYXNzCitKYXZhSGlMaW5rIGphdmFDbGFzc0RlY2wJCWphdmFTdG9yYWdlQ2xhc3MKK0phdmFIaUxpbmsgamF2YVNjb3BlRGVjbAkJamF2YVN0b3JhZ2VDbGFzcworSmF2YUhpTGluayBqYXZhQm9vbGVhbgkJQm9vbGVhbgorSmF2YUhpTGluayBqYXZhU3BlY2lhbAkJU3BlY2lhbAorSmF2YUhpTGluayBqYXZhU3BlY2lhbEVycm9yCQlFcnJvcgorSmF2YUhpTGluayBqYXZhU3BlY2lhbENoYXJFcnJvcglFcnJvcgorSmF2YUhpTGluayBqYXZhU3RyaW5nCQkJU3RyaW5nCitKYXZhSGlMaW5rIGphdmFDaGFyYWN0ZXIJCUNoYXJhY3RlcgorSmF2YUhpTGluayBqYXZhU3BlY2lhbENoYXIJCVNwZWNpYWxDaGFyCitKYXZhSGlMaW5rIGphdmFOdW1iZXIJCQlOdW1iZXIKK0phdmFIaUxpbmsgamF2YUVycm9yCQkJRXJyb3IKK0phdmFIaUxpbmsgamF2YVN0cmluZ0Vycm9yCQlFcnJvcgorSmF2YUhpTGluayBqYXZhU3RhdGVtZW50CQlTdGF0ZW1lbnQKK0phdmFIaUxpbmsgamF2YU9wZXJhdG9yCQlPcGVyYXRvcgorSmF2YUhpTGluayBqYXZhQ29tbWVudAkJQ29tbWVudAorSmF2YUhpTGluayBqYXZhRG9jQ29tbWVudAkJQ29tbWVudAorSmF2YUhpTGluayBqYXZhTGluZUNvbW1lbnQJCUNvbW1lbnQKK0phdmFIaUxpbmsgamF2YUNvbnN0YW50CQlDb25zdGFudAorSmF2YUhpTGluayBqYXZhVHlwZWRlZgkJVHlwZWRlZgorSmF2YUhpTGluayBqYXZhVG9kbwkJCVRvZG8KK0phdmFIaUxpbmsgamF2YUFubm90YXRpb24JCVByZVByb2MKIAotICBKYXZhSGlMaW5rIGphdmFDb21tZW50VGl0bGUJCVNwZWNpYWxDb21tZW50Ci0gIEphdmFIaUxpbmsgamF2YURvY1RhZ3MJCVNwZWNpYWwKLSAgSmF2YUhpTGluayBqYXZhRG9jUGFyYW0JCUZ1bmN0aW9uCi0gIEphdmFIaUxpbmsgamF2YURvY1NlZVRhZ1BhcmFtCQlGdW5jdGlvbgotICBKYXZhSGlMaW5rIGphdmFDb21tZW50U3RhcgkJamF2YUNvbW1lbnQKK0phdmFIaUxpbmsgamF2YUNvbW1lbnRUaXRsZQkJU3BlY2lhbENvbW1lbnQKK0phdmFIaUxpbmsgamF2YURvY1RhZ3MJCVNwZWNpYWwKK0phdmFIaUxpbmsgamF2YURvY1BhcmFtCQlGdW5jdGlvbgorSmF2YUhpTGluayBqYXZhRG9jU2VlVGFnUGFyYW0JCUZ1bmN0aW9uCitKYXZhSGlMaW5rIGphdmFDb21tZW50U3RhcgkJamF2YUNvbW1lbnQKIAotICBKYXZhSGlMaW5rIGphdmFUeXBlCQkJVHlwZQotICBKYXZhSGlMaW5rIGphdmFFeHRlcm5hbAkJSW5jbHVkZQorSmF2YUhpTGluayBqYXZhVHlwZQkJCVR5cGUKK0phdmFIaUxpbmsgamF2YUV4dGVybmFsCQlJbmNsdWRlCiAKLSAgSmF2YUhpTGluayBodG1sQ29tbWVudAkJU3BlY2lhbAotICBKYXZhSGlMaW5rIGh0bWxDb21tZW50UGFydAkJU3BlY2lhbAotICBKYXZhSGlMaW5rIGphdmFTcGFjZUVycm9yCQlFcnJvcgotZW5kaWYKK0phdmFIaUxpbmsgaHRtbENvbW1lbnQJCVNwZWNpYWwKK0phdmFIaUxpbmsgaHRtbENvbW1lbnRQYXJ0CQlTcGVjaWFsCitKYXZhSGlMaW5rIGphdmFTcGFjZUVycm9yCQlFcnJvcgogCiBkZWxjb21tYW5kIEphdmFIaUxpbmsKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvamF2YWNjLnZpbSBiL3J1bnRpbWUvc3ludGF4L2phdmFjYy52aW0KaW5kZXggNTQ1OGRlNy4uOTNkMTc0MCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvamF2YWNjLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9qYXZhY2MudmltCkBAIC03LDExICs3LDggQEAKICIgVXNlcyBqYXZhLnZpbSwgYW5kIGFkZHMgYSBmZXcgc3BlY2lhbCB0aGluZ3MgZm9yIEphdmFDQyBQYXJzZXIgZmlsZXMuCiAiIFRob3NlIGZpbGVzIHVzdWFsbHkgaGF2ZSB0aGUgZXh0ZW5zaW9uICAqLmpqCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xOSwxMSArMTYsNyBAQAogc2V0IGNwbyZ2aW0KIAogIiBzb3VyY2UgdGhlIGphdmEudmltIGZpbGUKLWlmIHZlcnNpb24gPCA2MDAKLSAgc291cmNlIDxzZmlsZT46cDpoL2phdmEudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9qYXZhLnZpbQotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9qYXZhLnZpbQogdW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiAicmVtb3ZlIGNhdGNoaW5nIGVycm9ycyBjYXVzZWQgYnkgd3JvbmcgcGFyZW50aGVzaXMgKGRvZXMgbm90IHdvcmsgaW4gamF2YWNjCkBAIC01OCwyMiArNTEsMTQgQEAKIHN5biBrZXl3b3JkIGphdmFjY0Vycm9yIERFQlVHIElHTk9SRV9JTl9CTkYKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfY3NzX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2Nzc19zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgotICBIaUxpbmsgamF2YWNjU3BlY1Rva2VuIFN0YXRlbWVudAotICBIaUxpbmsgamF2YWNjQWN0aW9uVG9rZW4gVHlwZQotICBIaUxpbmsgamF2YWNjUGFja2FnZXMgamF2YVNjb3BlRGVjbAotICBIaUxpbmsgamF2YWNjVG9rZW4gU3RyaW5nCi0gIEhpTGluayBqYXZhY2NFcnJvciBFcnJvcgotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgorSGlMaW5rIGphdmFjY1NwZWNUb2tlbiBTdGF0ZW1lbnQKK0hpTGluayBqYXZhY2NBY3Rpb25Ub2tlbiBUeXBlCitIaUxpbmsgamF2YWNjUGFja2FnZXMgamF2YVNjb3BlRGVjbAorSGlMaW5rIGphdmFjY1Rva2VuIFN0cmluZworSGlMaW5rIGphdmFjY0Vycm9yIEVycm9yCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJqYXZhY2MiCiBsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2phdmFzY3JpcHQudmltIGIvcnVudGltZS9zeW50YXgvamF2YXNjcmlwdC52aW0KaW5kZXggMWIyMGY5OC4uZTNlODI2MiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvamF2YXNjcmlwdC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvamF2YXNjcmlwdC52aW0KQEAgLTEwLDE1ICsxMCwxMiBAQAogIiBMYXN0IENoYW5nZToJMjAxMiBPY3QgMDUKICIgCQkyMDEzIEp1biAxMjogYWRqdXN0ZWQgamF2YVNjcmlwdFJlZ2V4cFN0cmluZyAoS2V2aW4gTG9ja2UpCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCiAiIHR1bmluZyBwYXJhbWV0ZXJzOgogIiB1bmxldCBqYXZhU2NyaXB0X2ZvbGQKIAogaWYgIWV4aXN0cygibWFpbl9zeW50YXgiKQotICBpZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3ludGF4IGNsZWFyCi0gIGVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorICAiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAorICBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICAgIGZpbmlzaAogICBlbmRpZgogICBsZXQgbWFpbl9zeW50YXggPSAnamF2YXNjcmlwdCcKQEAgLTI5LDExICsyNiw2IEBACiBsZXQgczpjcG9fc2F2ZSA9ICZjcG8KIHNldCBjcG8mdmltCiAKLSIgRHJvcCBmb2xkIGlmIGl0IHNldCBidXQgdmltIGRvZXNuJ3Qgc3VwcG9ydCBpdC4KLWlmIHZlcnNpb24gPCA2MDAgJiYgZXhpc3RzKCJqYXZhU2NyaXB0X2ZvbGQiKQotICB1bmxldCBqYXZhU2NyaXB0X2ZvbGQKLWVuZGlmCi0KIAogc3luIGtleXdvcmQgamF2YVNjcmlwdENvbW1lbnRUb2RvICAgICAgVE9ETyBGSVhNRSBYWFggVEJEIGNvbnRhaW5lZAogc3luIG1hdGNoICAgamF2YVNjcmlwdExpbmVDb21tZW50ICAgICAgIlwvXC8uKiIgY29udGFpbnM9QFNwZWxsLGphdmFTY3JpcHRDb21tZW50VG9kbwpAQCAtODcsNTEgKzc5LDQzIEBACiBlbmRpZgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9qYXZhc2NyaXB0X3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2phdmFzY3JpcHRfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKLSAgSGlMaW5rIGphdmFTY3JpcHRDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBqYXZhU2NyaXB0TGluZUNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGphdmFTY3JpcHRDb21tZW50VG9kbwkJVG9kbwotICBIaUxpbmsgamF2YVNjcmlwdFNwZWNpYWwJCVNwZWNpYWwKLSAgSGlMaW5rIGphdmFTY3JpcHRTdHJpbmdTCQlTdHJpbmcKLSAgSGlMaW5rIGphdmFTY3JpcHRTdHJpbmdECQlTdHJpbmcKLSAgSGlMaW5rIGphdmFTY3JpcHRDaGFyYWN0ZXIJCUNoYXJhY3RlcgotICBIaUxpbmsgamF2YVNjcmlwdFNwZWNpYWxDaGFyYWN0ZXIJamF2YVNjcmlwdFNwZWNpYWwKLSAgSGlMaW5rIGphdmFTY3JpcHROdW1iZXIJCWphdmFTY3JpcHRWYWx1ZQotICBIaUxpbmsgamF2YVNjcmlwdENvbmRpdGlvbmFsCQlDb25kaXRpb25hbAotICBIaUxpbmsgamF2YVNjcmlwdFJlcGVhdAkJUmVwZWF0Ci0gIEhpTGluayBqYXZhU2NyaXB0QnJhbmNoCQlDb25kaXRpb25hbAotICBIaUxpbmsgamF2YVNjcmlwdE9wZXJhdG9yCQlPcGVyYXRvcgotICBIaUxpbmsgamF2YVNjcmlwdFR5cGUJCQlUeXBlCi0gIEhpTGluayBqYXZhU2NyaXB0U3RhdGVtZW50CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGphdmFTY3JpcHRGdW5jdGlvbgkJRnVuY3Rpb24KLSAgSGlMaW5rIGphdmFTY3JpcHRCcmFjZXMJCUZ1bmN0aW9uCi0gIEhpTGluayBqYXZhU2NyaXB0RXJyb3IJCUVycm9yCi0gIEhpTGluayBqYXZhU2NyUGFyZW5FcnJvcgkJamF2YVNjcmlwdEVycm9yCi0gIEhpTGluayBqYXZhU2NyaXB0TnVsbAkJCUtleXdvcmQKLSAgSGlMaW5rIGphdmFTY3JpcHRCb29sZWFuCQlCb29sZWFuCi0gIEhpTGluayBqYXZhU2NyaXB0UmVnZXhwU3RyaW5nCQlTdHJpbmcKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgorSGlMaW5rIGphdmFTY3JpcHRDb21tZW50CQlDb21tZW50CitIaUxpbmsgamF2YVNjcmlwdExpbmVDb21tZW50CQlDb21tZW50CitIaUxpbmsgamF2YVNjcmlwdENvbW1lbnRUb2RvCQlUb2RvCitIaUxpbmsgamF2YVNjcmlwdFNwZWNpYWwJCVNwZWNpYWwKK0hpTGluayBqYXZhU2NyaXB0U3RyaW5nUwkJU3RyaW5nCitIaUxpbmsgamF2YVNjcmlwdFN0cmluZ0QJCVN0cmluZworSGlMaW5rIGphdmFTY3JpcHRDaGFyYWN0ZXIJCUNoYXJhY3RlcgorSGlMaW5rIGphdmFTY3JpcHRTcGVjaWFsQ2hhcmFjdGVyCWphdmFTY3JpcHRTcGVjaWFsCitIaUxpbmsgamF2YVNjcmlwdE51bWJlcgkJamF2YVNjcmlwdFZhbHVlCitIaUxpbmsgamF2YVNjcmlwdENvbmRpdGlvbmFsCQlDb25kaXRpb25hbAorSGlMaW5rIGphdmFTY3JpcHRSZXBlYXQJCVJlcGVhdAorSGlMaW5rIGphdmFTY3JpcHRCcmFuY2gJCUNvbmRpdGlvbmFsCitIaUxpbmsgamF2YVNjcmlwdE9wZXJhdG9yCQlPcGVyYXRvcgorSGlMaW5rIGphdmFTY3JpcHRUeXBlCQkJVHlwZQorSGlMaW5rIGphdmFTY3JpcHRTdGF0ZW1lbnQJCVN0YXRlbWVudAorSGlMaW5rIGphdmFTY3JpcHRGdW5jdGlvbgkJRnVuY3Rpb24KK0hpTGluayBqYXZhU2NyaXB0QnJhY2VzCQlGdW5jdGlvbgorSGlMaW5rIGphdmFTY3JpcHRFcnJvcgkJRXJyb3IKK0hpTGluayBqYXZhU2NyUGFyZW5FcnJvcgkJamF2YVNjcmlwdEVycm9yCitIaUxpbmsgamF2YVNjcmlwdE51bGwJCQlLZXl3b3JkCitIaUxpbmsgamF2YVNjcmlwdEJvb2xlYW4JCUJvb2xlYW4KK0hpTGluayBqYXZhU2NyaXB0UmVnZXhwU3RyaW5nCQlTdHJpbmcKIAotICBIaUxpbmsgamF2YVNjcmlwdElkZW50aWZpZXIJCUlkZW50aWZpZXIKLSAgSGlMaW5rIGphdmFTY3JpcHRMYWJlbAkJTGFiZWwKLSAgSGlMaW5rIGphdmFTY3JpcHRFeGNlcHRpb24JCUV4Y2VwdGlvbgotICBIaUxpbmsgamF2YVNjcmlwdE1lc3NhZ2UJCUtleXdvcmQKLSAgSGlMaW5rIGphdmFTY3JpcHRHbG9iYWwJCUtleXdvcmQKLSAgSGlMaW5rIGphdmFTY3JpcHRNZW1iZXIJCUtleXdvcmQKLSAgSGlMaW5rIGphdmFTY3JpcHREZXByZWNhdGVkCQlFeGNlcHRpb24gCi0gIEhpTGluayBqYXZhU2NyaXB0UmVzZXJ2ZWQJCUtleXdvcmQKLSAgSGlMaW5rIGphdmFTY3JpcHREZWJ1ZwkJRGVidWcKLSAgSGlMaW5rIGphdmFTY3JpcHRDb25zdGFudAkJTGFiZWwKK0hpTGluayBqYXZhU2NyaXB0SWRlbnRpZmllcgkJSWRlbnRpZmllcgorSGlMaW5rIGphdmFTY3JpcHRMYWJlbAkJTGFiZWwKK0hpTGluayBqYXZhU2NyaXB0RXhjZXB0aW9uCQlFeGNlcHRpb24KK0hpTGluayBqYXZhU2NyaXB0TWVzc2FnZQkJS2V5d29yZAorSGlMaW5rIGphdmFTY3JpcHRHbG9iYWwJCUtleXdvcmQKK0hpTGluayBqYXZhU2NyaXB0TWVtYmVyCQlLZXl3b3JkCitIaUxpbmsgamF2YVNjcmlwdERlcHJlY2F0ZWQJCUV4Y2VwdGlvbiAKK0hpTGluayBqYXZhU2NyaXB0UmVzZXJ2ZWQJCUtleXdvcmQKK0hpTGluayBqYXZhU2NyaXB0RGVidWcJCURlYnVnCitIaUxpbmsgamF2YVNjcmlwdENvbnN0YW50CQlMYWJlbAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiamF2YXNjcmlwdCIKIGlmIG1haW5fc3ludGF4ID09ICdqYXZhc2NyaXB0JwpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvamVzcy52aW0gYi9ydW50aW1lL3N5bnRheC9qZXNzLnZpbQppbmRleCAyNDNiYWIzLi5hZDYyNWFjIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9qZXNzLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9qZXNzLnZpbQpAQCAtNCwxOSArNCwxMiBAQAogIiBMYXN0IGNoYW5nZToJU2VwdGVtYmVyIDE0LCAyMDAwCiAiIEJhc2VkIG9uIGxpc3AudmltIGJ5IDogRHIuIENoYXJsZXMgRS4gQ2FtcGJlbGwsIEpyLgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIAotaWYgdmVyc2lvbiA8IDYwMAotICBzZXQgaXNrZXl3b3JkPTQyLDQzLDQ1LDQ3LTU4LDYwLTYyLDY0LTkwLDk3LTEyMixfCi1lbHNlCi0gIHNldGxvY2FsIGlza2V5d29yZD00Miw0Myw0NSw0Ny01OCw2MC02Miw2NC05MCw5Ny0xMjIsXwotZW5kaWYKK3NldGxvY2FsIGlza2V5d29yZD00Miw0Myw0NSw0Ny01OCw2MC02Miw2NC05MCw5Ny0xMjIsXwogCiAiIExpc3RzCiBzeW4gbWF0Y2gJamVzc1N5bWJvbAkhW14oKSdgLCI7IFx0XVwrIQljb250YWluZWQKQEAgLTEyNSwzNiArMTE4LDI4IEBACiBzeW4gc3luYyBsaW5lcz0xMDAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfamVzc19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9qZXNzX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgamVzc0F0b21ObWJyCWplc3NOdW1iZXIKLSAgSGlMaW5rIGplc3NBdG9tTWFyawlqZXNzTWFyaworSGlMaW5rIGplc3NBdG9tTm1icglqZXNzTnVtYmVyCitIaUxpbmsgamVzc0F0b21NYXJrCWplc3NNYXJrCiAKLSAgSGlMaW5rIGplc3NBdG9tCQlJZGVudGlmaWVyCi0gIEhpTGluayBqZXNzQXRvbUJhclN5bWJvbAlTcGVjaWFsCi0gIEhpTGluayBqZXNzQmFyU3ltYm9sCVNwZWNpYWwKLSAgSGlMaW5rIGplc3NDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIGplc3NDb25jYXQJU3RhdGVtZW50Ci0gIEhpTGluayBqZXNzRGVjbGFyYXRpb24JU3RhdGVtZW50Ci0gIEhpTGluayBqZXNzRnVuYwkJU3RhdGVtZW50Ci0gIEhpTGluayBqZXNzS2V5CQlUeXBlCi0gIEhpTGluayBqZXNzTWFyawkJRGVsaW1pdGVyCi0gIEhpTGluayBqZXNzTnVtYmVyCU51bWJlcgotICBIaUxpbmsgamVzc1BhcmVuRXJyb3IJRXJyb3IKLSAgSGlMaW5rIGplc3NTcGVjaWFsCVR5cGUKLSAgSGlMaW5rIGplc3NTdHJpbmcJU3RyaW5nCi0gIEhpTGluayBqZXNzVmFyCQlJZGVudGlmaWVyCitIaUxpbmsgamVzc0F0b20JCUlkZW50aWZpZXIKK0hpTGluayBqZXNzQXRvbUJhclN5bWJvbAlTcGVjaWFsCitIaUxpbmsgamVzc0JhclN5bWJvbAlTcGVjaWFsCitIaUxpbmsgamVzc0NvbW1lbnQJQ29tbWVudAorSGlMaW5rIGplc3NDb25jYXQJU3RhdGVtZW50CitIaUxpbmsgamVzc0RlY2xhcmF0aW9uCVN0YXRlbWVudAorSGlMaW5rIGplc3NGdW5jCQlTdGF0ZW1lbnQKK0hpTGluayBqZXNzS2V5CQlUeXBlCitIaUxpbmsgamVzc01hcmsJCURlbGltaXRlcgorSGlMaW5rIGplc3NOdW1iZXIJTnVtYmVyCitIaUxpbmsgamVzc1BhcmVuRXJyb3IJRXJyb3IKK0hpTGluayBqZXNzU3BlY2lhbAlUeXBlCitIaUxpbmsgamVzc1N0cmluZwlTdHJpbmcKK0hpTGluayBqZXNzVmFyCQlJZGVudGlmaWVyCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJqZXNzIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9qZ3JhcGgudmltIGIvcnVudGltZS9zeW50YXgvamdyYXBoLnZpbQppbmRleCA3ZWNkNWFmLi40M2ZjNDI3IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9qZ3JhcGgudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2pncmFwaC52aW0KQEAgLTUsMTEgKzUsOCBAQAogIiB0aGlzIHN5bnRheCBmaWxlIGlzIG5vdCB5ZXQgY29tcGxldGUKIAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMzYsMjMgKzMzLDE1IEBACiAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfamdyYXBoX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2pncmFwaF9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGpncmFwaENvbW1lbnQJQ29tbWVudAotICBIaUxpbmsgamdyYXBoQ21kCUlkZW50aWZpZXIKLSAgSGlMaW5rIGpncmFwaFR5cGUJVHlwZQotICBIaUxpbmsgamdyYXBoTnVtYmVyCU51bWJlcgorSGlMaW5rIGpncmFwaENvbW1lbnQJQ29tbWVudAorSGlMaW5rIGpncmFwaENtZAlJZGVudGlmaWVyCitIaUxpbmsgamdyYXBoVHlwZQlUeXBlCitIaUxpbmsgamdyYXBoTnVtYmVyCU51bWJlcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJqZ3JhcGgiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9qcHJvcGVydGllcy52aW0gYi9ydW50aW1lL3N5bnRheC9qcHJvcGVydGllcy52aW0KaW5kZXggOTM0M2JkMi4uYmRlMTYwYiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvanByb3BlcnRpZXMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2pwcm9wZXJ0aWVzLnZpbQpAQCAtNDMsMTEgKzQzLDggQEAKIAogIiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTIwLDI4ICsxMTcsMjAgQEAKIHN5biBrZXl3b3JkIGpwcm9wZXJ0aWVzVG9kbwkJVE9ETyBGSVhNRSBYWFggY29udGFpbmVkCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2pwcm9wZXJ0aWVzX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2pwcm9wZXJ0aWVzX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotCUhpTGluayBqcHJvcGVydGllc0NvbW1lbnQJQ29tbWVudAotCUhpTGluayBqcHJvcGVydGllc1RvZG8JCVRvZG8KLQlIaUxpbmsganByb3BlcnRpZXNJZGVudGlmaWVyCUlkZW50aWZpZXIKLQlIaUxpbmsganByb3BlcnRpZXNTdHJpbmcJU3RyaW5nCi0JSGlMaW5rIGpwcm9wZXJ0aWVzRXh0ZW5kU3RyaW5nCVN0cmluZwotCUhpTGluayBqcHJvcGVydGllc0NoYXJhY3RlcglDaGFyYWN0ZXIKLQlIaUxpbmsganByb3BlcnRpZXNTcGVjaWFsCVNwZWNpYWwKLQlIaUxpbmsganByb3BlcnRpZXNTcGVjaWFsQ2hhcglTcGVjaWFsQ2hhcgotCUhpTGluayBqcHJvcGVydGllc0Vycm9yCUVycm9yCitIaUxpbmsganByb3BlcnRpZXNDb21tZW50CUNvbW1lbnQKK0hpTGluayBqcHJvcGVydGllc1RvZG8JCVRvZG8KK0hpTGluayBqcHJvcGVydGllc0lkZW50aWZpZXIJSWRlbnRpZmllcgorSGlMaW5rIGpwcm9wZXJ0aWVzU3RyaW5nCVN0cmluZworSGlMaW5rIGpwcm9wZXJ0aWVzRXh0ZW5kU3RyaW5nCVN0cmluZworSGlMaW5rIGpwcm9wZXJ0aWVzQ2hhcmFjdGVyCUNoYXJhY3RlcgorSGlMaW5rIGpwcm9wZXJ0aWVzU3BlY2lhbAlTcGVjaWFsCitIaUxpbmsganByb3BlcnRpZXNTcGVjaWFsQ2hhcglTcGVjaWFsQ2hhcgorSGlMaW5rIGpwcm9wZXJ0aWVzRXJyb3IJRXJyb3IKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImpwcm9wZXJ0aWVzIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9qc29uLnZpbSBiL3J1bnRpbWUvc3ludGF4L2pzb24udmltCmluZGV4IDFmZGZlYTIuLjM0YzI2ZDMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2pzb24udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2pzb24udmltCkBAIC01LDkgKzUsOCBAQAogIiBWZXJzaW9uOiAgICAgIDAuMTIKIAogaWYgIWV4aXN0cygibWFpbl9zeW50YXgiKQotICBpZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3ludGF4IGNsZWFyCi0gIGVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorICAiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAorICBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICAgIGZpbmlzaAogICBlbmRpZgogICBsZXQgbWFpbl9zeW50YXggPSAnanNvbicKQEAgLTkzLDM5ICs5MiwzMSBAQAogc3luIHJlZ2lvbiAganNvbkZvbGQgbWF0Y2hncm91cD1qc29uQnJhY2VzIHN0YXJ0PSJcWyIgZW5kPS9dXChcX3NcK1x6ZSJcKVxAIS8gdHJhbnNwYXJlbnQgZm9sZAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9qc29uX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2pzb25fc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKLSAgSGlMaW5rIGpzb25QYWRkaW5nICAgICAgICAgT3BlcmF0b3IKLSAgSGlMaW5rIGpzb25TdHJpbmcgICAgICAgICAgU3RyaW5nCi0gIEhpTGluayBqc29uVGVzdCAgICAgICAgICBMYWJlbAotICBIaUxpbmsganNvbkVzY2FwZSAgICAgICAgICBTcGVjaWFsCi0gIEhpTGluayBqc29uTnVtYmVyICAgICAgICAgIE51bWJlcgotICBIaUxpbmsganNvbkJyYWNlcyAgICAgICAgICBEZWxpbWl0ZXIKLSAgSGlMaW5rIGpzb25OdWxsICAgICAgICAgICAgRnVuY3Rpb24KLSAgSGlMaW5rIGpzb25Cb29sZWFuICAgICAgICAgQm9vbGVhbgotICBIaUxpbmsganNvbktleXdvcmQgICAgICAgICBMYWJlbAorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CitIaUxpbmsganNvblBhZGRpbmcgICAgICAgICBPcGVyYXRvcgorSGlMaW5rIGpzb25TdHJpbmcgICAgICAgICAgU3RyaW5nCitIaUxpbmsganNvblRlc3QgICAgICAgICAgTGFiZWwKK0hpTGluayBqc29uRXNjYXBlICAgICAgICAgIFNwZWNpYWwKK0hpTGluayBqc29uTnVtYmVyICAgICAgICAgIE51bWJlcgorSGlMaW5rIGpzb25CcmFjZXMgICAgICAgICAgRGVsaW1pdGVyCitIaUxpbmsganNvbk51bGwgICAgICAgICAgICBGdW5jdGlvbgorSGlMaW5rIGpzb25Cb29sZWFuICAgICAgICAgQm9vbGVhbgorSGlMaW5rIGpzb25LZXl3b3JkICAgICAgICAgTGFiZWwKIAotCWlmICghZXhpc3RzKCJnOnZpbV9qc29uX3dhcm5pbmdzIikgfHwgZzp2aW1fanNvbl93YXJuaW5ncz09MSkKLQkgIEhpTGluayBqc29uTnVtRXJyb3IgICAgICAgIEVycm9yCi0JICBIaUxpbmsganNvbkNvbW1lbnRFcnJvciAgICBFcnJvcgotCSAgSGlMaW5rIGpzb25TZW1pY29sb25FcnJvciAgRXJyb3IKLQkgIEhpTGluayBqc29uVHJhaWxpbmdDb21tYUVycm9yICAgICBFcnJvcgotCSAgSGlMaW5rIGpzb25NaXNzaW5nQ29tbWFFcnJvciAgICAgIEVycm9yCi0JICBIaUxpbmsganNvblN0cmluZ1NRRXJyb3IgICAgICAgIAlFcnJvcgotCSAgSGlMaW5rIGpzb25Ob1F1b3Rlc0Vycm9yICAgICAgICAJRXJyb3IKLQkgIEhpTGluayBqc29uVHJpcGxlUXVvdGVzRXJyb3IgICAgIAlFcnJvcgotICBlbmRpZgotICBIaUxpbmsganNvblF1b3RlICAgICAgICAgICBRdW90ZQotICBIaUxpbmsganNvbk5vaXNlICAgICAgICAgICBOb2lzZQotICBkZWxjb21tYW5kIEhpTGluaworaWYgKCFleGlzdHMoImc6dmltX2pzb25fd2FybmluZ3MiKSB8fCBnOnZpbV9qc29uX3dhcm5pbmdzPT0xKQorSGlMaW5rIGpzb25OdW1FcnJvciAgICAgICAgRXJyb3IKK0hpTGluayBqc29uQ29tbWVudEVycm9yICAgIEVycm9yCitIaUxpbmsganNvblNlbWljb2xvbkVycm9yICBFcnJvcgorSGlMaW5rIGpzb25UcmFpbGluZ0NvbW1hRXJyb3IgICAgIEVycm9yCitIaUxpbmsganNvbk1pc3NpbmdDb21tYUVycm9yICAgICAgRXJyb3IKK0hpTGluayBqc29uU3RyaW5nU1FFcnJvciAgICAgICAgCUVycm9yCitIaUxpbmsganNvbk5vUXVvdGVzRXJyb3IgICAgICAgIAlFcnJvcgorSGlMaW5rIGpzb25UcmlwbGVRdW90ZXNFcnJvciAgICAgCUVycm9yCiBlbmRpZgorSGlMaW5rIGpzb25RdW90ZSAgICAgICAgICAgUXVvdGUKK0hpTGluayBqc29uTm9pc2UgICAgICAgICAgIE5vaXNlCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJqc29uIgogaWYgbWFpbl9zeW50YXggPT0gJ2pzb24nCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9qc3AudmltIGIvcnVudGltZS9zeW50YXgvanNwLnZpbQppbmRleCA5NzY2NjU3Li44MTJhODE0IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9qc3AudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2pzcC52aW0KQEAgLTYsMTEgKzYsOCBAQAogIiBDcmVkaXRzIDogUGF0Y2ggYnkgRGFycmVuIEdyZWF2ZXMgKHJlY29nbml6ZXMgPGpzcDouLi4+IHRhZ3MpCiAiCSAgICBQYXRjaCBieSBUaG9tYXMgS2ltcHRvbiAocmVjb2duaXplcyBqc3BFeHByIGluc2lkZSBIVE1MIHRhZ3MpCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xOSwxMSArMTYsNyBAQAogZW5kaWYKIAogIiBTb3VyY2UgSFRNTCBzeW50YXgKLWlmIHZlcnNpb24gPCA2MDAKLSAgc291cmNlIDxzZmlsZT46cDpoL2h0bWwudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9odG1sLnZpbQotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9odG1sLnZpbQogdW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiAiIE5leHQgc3ludGF4IGl0ZW1zIGFyZSBjYXNlLXNlbnNpdGl2ZQpAQCAtNTIsMjkgKzQ1LDIxIEBACiBzeW4gcmVnaW9uIGh0bWxUYWcgc3RhcnQ9KzxbXi8lXSsgZW5kPSs+KyBjb250YWlucz1odG1sVGFnTixodG1sU3RyaW5nLGh0bWxBcmcsaHRtbFZhbHVlLGh0bWxUYWdFcnJvcixodG1sRXZlbnQsaHRtbENzc0RlZmluaXRpb24sQGh0bWxQcmVwcm9jLEBodG1sQXJnQ2x1c3Rlcixqc3BFeHByLGphdmFTY3JpcHQKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfanNwX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2pzcF9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgotICAiIGphdmEudmltIGhhcyByZWRlZmluZWQgaHRtbENvbW1lbnQgaGlnaGxpZ2h0aW5nCi0gIEhpTGluayBodG1sQ29tbWVudAkgQ29tbWVudAotICBIaUxpbmsgaHRtbENvbW1lbnRQYXJ0IENvbW1lbnQKLSAgIiBCZSBjb25zaXN0ZW50IHdpdGggaHRtbCBoaWdobGlnaHQgc2V0dGluZ3MKLSAgSGlMaW5rIGpzcENvbW1lbnQJIGh0bWxDb21tZW50Ci0gIEhpTGluayBqc3BUYWcJCSBodG1sVGFnCi0gIEhpTGluayBqc3BEaXJlY3RpdmUJIGpzcFRhZwotICBIaUxpbmsganNwRGlyTmFtZQkgaHRtbFRhZ05hbWUKLSAgSGlMaW5rIGpzcERpckFyZwkgaHRtbEFyZwotICBIaUxpbmsganNwQ29tbWFuZAkganNwVGFnCi0gIEhpTGluayBqc3BDb21tYW5kTmFtZSAgaHRtbFRhZ05hbWUKLSAgSGlMaW5rIGpzcENvbW1hbmRBcmcJIGh0bWxBcmcKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KKyIgamF2YS52aW0gaGFzIHJlZGVmaW5lZCBodG1sQ29tbWVudCBoaWdobGlnaHRpbmcKK0hpTGluayBodG1sQ29tbWVudAkgQ29tbWVudAorSGlMaW5rIGh0bWxDb21tZW50UGFydCBDb21tZW50CisiIEJlIGNvbnNpc3RlbnQgd2l0aCBodG1sIGhpZ2hsaWdodCBzZXR0aW5ncworSGlMaW5rIGpzcENvbW1lbnQJIGh0bWxDb21tZW50CitIaUxpbmsganNwVGFnCQkgaHRtbFRhZworSGlMaW5rIGpzcERpcmVjdGl2ZQkganNwVGFnCitIaUxpbmsganNwRGlyTmFtZQkgaHRtbFRhZ05hbWUKK0hpTGluayBqc3BEaXJBcmcJIGh0bWxBcmcKK0hpTGluayBqc3BDb21tYW5kCSBqc3BUYWcKK0hpTGluayBqc3BDb21tYW5kTmFtZSAgaHRtbFRhZ05hbWUKK0hpTGluayBqc3BDb21tYW5kQXJnCSBodG1sQXJnCitkZWxjb21tYW5kIEhpTGluawogCiBpZiBtYWluX3N5bnRheCA9PSAnanNwJwogICB1bmxldCBtYWluX3N5bnRheApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgva2l4LnZpbSBiL3J1bnRpbWUvc3ludGF4L2tpeC52aW0KaW5kZXggNjJkYzMyNS4uYTg2ZDY2YyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgva2l4LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9raXgudmltCkBAIC0xOSwxMCArMTksOCBAQAogIglXb3JrIG91dCBob3cgdG8gZXJyb3IgdG9vIG1hbnkgIigiLCBpLmUuICgoKSBzaG91bGQgYmUgYW4gZXJyb3IuCiAiCVNpbWlsYXJseSwgImlmIiB3aXRob3V0ICJlbmRpZiIgYW5kIHNpbWlsYXIgY29uc3RydWN0cyBzaG91bGQgZXJyb3IuCiAKLSIgQ2xlYXIgbGVnYWN5IHN5bnRheCBydWxlcyBmb3IgdmVyc2lvbiA1LngsIGV4aXQgaWYgYWxyZWFkeSBwcm9jZXNzZWQgZm9yIHZlcnNpb24gNisKLWlmIHZlcnNpb24gPCA2MDAKLQlzeW4gY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAJZmluaXNoCiBlbmRpZgogCkBAIC0xMzAsNTIgKzEyOCw0NCBAQAogCiAKICIgRGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIFZlcnNpb24gPCA1Ljggc2V0IGRlZmF1bHQgaGlnaGxpZ2h0IGlmIGZpbGUgbm90IGFscmVhZHkgcHJvY2Vzc2VkLgotIiBWZXJzaW9uID49IDUuOCBzZXQgZGVmYXVsdCBoaWdobGlnaHQgb25seSBpZiBpdCBkb2Vzbid0IGFscmVhZHkgaGF2ZSBhIHZhbHVlLgotaWYgdmVyc2lvbiA+IDUwOCB8fCAhZXhpc3RzKCJkaWRfa2l4X3N5bl9pbml0cyIpCi0JaWYgdmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX2tpeF9zeW5faW5pdHM9MQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotCWVsc2UKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0JZW5kaWYKKyIgU2V0IGRlZmF1bHQgaGlnaGxpZ2h0IG9ubHkgaWYgaXQgZG9lc24ndCBhbHJlYWR5IGhhdmUgYSB2YWx1ZS4KK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0JSGlMaW5rIGtpeERvdWJsZVN0cmluZwkJU3RyaW5nCi0JSGlMaW5rIGtpeFNpbmdsZVN0cmluZwkJU3RyaW5nCi0JSGlMaW5rIGtpeFN0YXRlbWVudAkJU3RhdGVtZW50Ci0JSGlMaW5rIGtpeFJlcGVhdAkJUmVwZWF0Ci0JSGlMaW5rIGtpeENvbW1lbnQJCUNvbW1lbnQKLQlIaUxpbmsga2l4QnVpbHRpbgkJRnVuY3Rpb24KLQlIaUxpbmsga2l4TG9jYWxWYXIJCVNwZWNpYWwKLQlIaUxpbmsga2l4TWFjcm8JCQlTcGVjaWFsCi0JSGlMaW5rIGtpeEVudlZhcgkJU3BlY2lhbAotCUhpTGluayBraXhMYWJlbAkJCVR5cGUKLQlIaUxpbmsga2l4RnVuY3Rpb24JCUZ1bmN0aW9uCi0JSGlMaW5rIGtpeEludGVnZXIJCU51bWJlcgotCUhpTGluayBraXhIZXgJCQlOdW1iZXIKLQlIaUxpbmsga2l4RmxvYXQJCQlOdW1iZXIKLQlIaUxpbmsga2l4T3BlcmF0b3IJCU9wZXJhdG9yCi0JSGlMaW5rIGtpeEV4cHJlc3Npb24JCU9wZXJhdG9yCitIaUxpbmsga2l4RG91YmxlU3RyaW5nCQlTdHJpbmcKK0hpTGluayBraXhTaW5nbGVTdHJpbmcJCVN0cmluZworSGlMaW5rIGtpeFN0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsga2l4UmVwZWF0CQlSZXBlYXQKK0hpTGluayBraXhDb21tZW50CQlDb21tZW50CitIaUxpbmsga2l4QnVpbHRpbgkJRnVuY3Rpb24KK0hpTGluayBraXhMb2NhbFZhcgkJU3BlY2lhbAorSGlMaW5rIGtpeE1hY3JvCQkJU3BlY2lhbAorSGlMaW5rIGtpeEVudlZhcgkJU3BlY2lhbAorSGlMaW5rIGtpeExhYmVsCQkJVHlwZQorSGlMaW5rIGtpeEZ1bmN0aW9uCQlGdW5jdGlvbgorSGlMaW5rIGtpeEludGVnZXIJCU51bWJlcgorSGlMaW5rIGtpeEhleAkJCU51bWJlcgorSGlMaW5rIGtpeEZsb2F0CQkJTnVtYmVyCitIaUxpbmsga2l4T3BlcmF0b3IJCU9wZXJhdG9yCitIaUxpbmsga2l4RXhwcmVzc2lvbgkJT3BlcmF0b3IKIAotCUhpTGluayBraXhQYXJlbkNsb3NlRXJyb3IJRXJyb3IKLQlIaUxpbmsga2l4QnJhY2tDbG9zZUVycm9yCUVycm9yCi0JSGlMaW5rIGtpeFN0cmluZ0Vycm9yCQlFcnJvcgorSGlMaW5rIGtpeFBhcmVuQ2xvc2VFcnJvcglFcnJvcgorSGlMaW5rIGtpeEJyYWNrQ2xvc2VFcnJvcglFcnJvcgorSGlMaW5rIGtpeFN0cmluZ0Vycm9yCQlFcnJvcgogCi0JSGlMaW5rIGtpeFdoaWxlRXJyb3IJCUVycm9yCi0JSGlMaW5rIGtpeFdoaWxlT0sJCUNvbmRpdGlvbmFsCi0JSGlMaW5rIGtpeERvRXJyb3IJCUVycm9yCi0JSGlMaW5rIGtpeERvT0sJCQlDb25kaXRpb25hbAotCUhpTGluayBraXhJZkVycm9yCQlFcnJvcgotCUhpTGluayBraXhJZk9LCQkJQ29uZGl0aW9uYWwKLQlIaUxpbmsga2l4U2VsZWN0RXJyb3IJCUVycm9yCi0JSGlMaW5rIGtpeFNlbGVjdE9LCQlDb25kaXRpb25hbAotCUhpTGluayBraXhGb3JOZXh0RXJyb3IJCUVycm9yCi0JSGlMaW5rIGtpeEZvck5leHRPSwkJQ29uZGl0aW9uYWwKLQlIaUxpbmsga2l4Rm9yRWFjaEVycm9yCQlFcnJvcgotCUhpTGluayBraXhGb3JFYWNoT0sJCUNvbmRpdGlvbmFsCitIaUxpbmsga2l4V2hpbGVFcnJvcgkJRXJyb3IKK0hpTGluayBraXhXaGlsZU9LCQlDb25kaXRpb25hbAorSGlMaW5rIGtpeERvRXJyb3IJCUVycm9yCitIaUxpbmsga2l4RG9PSwkJCUNvbmRpdGlvbmFsCitIaUxpbmsga2l4SWZFcnJvcgkJRXJyb3IKK0hpTGluayBraXhJZk9LCQkJQ29uZGl0aW9uYWwKK0hpTGluayBraXhTZWxlY3RFcnJvcgkJRXJyb3IKK0hpTGluayBraXhTZWxlY3RPSwkJQ29uZGl0aW9uYWwKK0hpTGluayBraXhGb3JOZXh0RXJyb3IJCUVycm9yCitIaUxpbmsga2l4Rm9yTmV4dE9LCQlDb25kaXRpb25hbAorSGlMaW5rIGtpeEZvckVhY2hFcnJvcgkJRXJyb3IKK0hpTGluayBraXhGb3JFYWNoT0sJCUNvbmRpdGlvbmFsCiAKLQlkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImtpeCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgva3NjcmlwdC52aW0gYi9ydW50aW1lL3N5bnRheC9rc2NyaXB0LnZpbQppbmRleCBjZWZiZTM5Li5lMDZiNDlkIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9rc2NyaXB0LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9rc2NyaXB0LnZpbQpAQCAtNCwxMSArNCw4IEBACiAiIFVSTDoJCWh0dHA6Ly9hcXVpbGEucmV6ZWwuZW5zdC5mci90aG9tYXMvdmltL2tzY3JpcHQudmltCiAiIENWUzoJCSRJZDoga3NjcmlwdC52aW0sdiAxLjEgMjAwNC8wNi8xMyAxNzo0MDowMiB2aW1ib3NzIEV4cCAkCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0zNywzMyArMzQsMjUgQEAKIHN5biByZWdpb24Ja3NjcmlwdFN0cmluZwkJc3RhcnQ9KycnJysgIGVuZD0rJycnKwogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9rc2NyaXB0X3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2tzY3JpcHRfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBrc2NyaXB0Q29uZGl0aW9uYWwJCUNvbmRpdGlvbmFsCi0gIEhpTGluayBrc2NyaXB0UmVwZWF0CQkJUmVwZWF0Ci0gIEhpTGluayBrc2NyaXB0RXhjZXB0aW9ucwkJU3RhdGVtZW50Ci0gIEhpTGluayBrc2NyaXB0RnVuY3Rpb24JCUZ1bmN0aW9uCi0gIEhpTGluayBrc2NyaXB0Q29uc3QJCQlDb25zdGFudAotICBIaUxpbmsga3NjcmlwdFN0YXRlbWVudAkJU3RhdGVtZW50Ci0gIEhpTGluayBrc2NyaXB0TGFiZWwJCQlMYWJlbAotICBIaUxpbmsga3NjcmlwdFN0b3JhZ2VDbGFzcwkJU3RvcmFnZUNsYXNzCi0gIEhpTGluayBrc2NyaXB0VHlwZQkJCVR5cGUKLSAgSGlMaW5rIGtzY3JpcHRUb2RvCQkJVG9kbwotICBIaUxpbmsga3NjcmlwdENvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGtzY3JpcHRTdHJpbmcJCQlTdHJpbmcKLSAgSGlMaW5rIGtzY3JpcHRQcmVDb25kaXQJCVByZUNvbmRpdAotICBIaUxpbmsga3NjcmlwdEhhcmRDb2RlZAkJU3RhdGVtZW50CitIaUxpbmsga3NjcmlwdENvbmRpdGlvbmFsCQlDb25kaXRpb25hbAorSGlMaW5rIGtzY3JpcHRSZXBlYXQJCQlSZXBlYXQKK0hpTGluayBrc2NyaXB0RXhjZXB0aW9ucwkJU3RhdGVtZW50CitIaUxpbmsga3NjcmlwdEZ1bmN0aW9uCQlGdW5jdGlvbgorSGlMaW5rIGtzY3JpcHRDb25zdAkJCUNvbnN0YW50CitIaUxpbmsga3NjcmlwdFN0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsga3NjcmlwdExhYmVsCQkJTGFiZWwKK0hpTGluayBrc2NyaXB0U3RvcmFnZUNsYXNzCQlTdG9yYWdlQ2xhc3MKK0hpTGluayBrc2NyaXB0VHlwZQkJCVR5cGUKK0hpTGluayBrc2NyaXB0VG9kbwkJCVRvZG8KK0hpTGluayBrc2NyaXB0Q29tbWVudAkJQ29tbWVudAorSGlMaW5rIGtzY3JpcHRTdHJpbmcJCQlTdHJpbmcKK0hpTGluayBrc2NyaXB0UHJlQ29uZGl0CQlQcmVDb25kaXQKK0hpTGluayBrc2NyaXB0SGFyZENvZGVkCQlTdGF0ZW1lbnQKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImtzY3JpcHQiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2t3dC52aW0gYi9ydW50aW1lL3N5bnRheC9rd3QudmltCmluZGV4IDRjMmM5ZDkuLmI3MTE2NjMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2t3dC52aW0KKysrIGIvcnVudGltZS9zeW50YXgva3d0LnZpbQpAQCAtMywyMSArMywxNCBAQAogIiBNYWludGFpbmVyOglNaWNoYWVsIFBpZWZlbCA8ZW50d3VyZkBwaWVmZWwuZGU+CiAiIExhc3QgQ2hhbmdlOgkyIE1heSAyMDAxCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICAgIGZpbmlzaAogZW5kaWYKIAogIiBSZWFkIHRoZSBDKysgc3ludGF4IHRvIHN0YXJ0IHdpdGgKLWlmIHZlcnNpb24gPCA2MDAKLSAgc291cmNlIDxzZmlsZT46cDpoL2NwcC52aW0KLWVsc2UKLSAgcnVudGltZSEgc3ludGF4L2NwcC52aW0KLSAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9jcHAudmltCit1bmxldCBiOmN1cnJlbnRfc3ludGF4CiAKICIga2ltd2l0dSsrIGV4dGVudGlvbnMKIApAQCAtNTgsMjcgKzUxLDE5IEBACiBzeW4gcmVnaW9uIGt3dFJld0JvZHkJCXRyYW5zcGFyZW50IGtlZXBlbmQgZXh0ZW5kIGZvbGQgc3RhcnQ9Ii0+XHMqPCIgc3RhcnQ9Il5ccyo8IiBlbmQ9IlxzPlxzXD07XD0kIiBlbmQ9Il4+XHNcPTtcPSQiCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2t3dF9zeW5faW5pdHMiKQotICAgIGlmIHZlcnNpb24gPCA1MDgKLQlsZXQgZGlkX2t3dF9zeW5faW5pdHMgPSAxCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgICBlbHNlCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gICAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICAgSGlMaW5rIGt3dFN0YXRlbWVudAljcHBTdGF0ZW1lbnQKLSAgICBIaUxpbmsga3d0RGVjbAljcHBTdGF0ZW1lbnQKLSAgICBIaUxpbmsga3d0Q2FzdAljcHBTdGF0ZW1lbnQKLSAgICBIaUxpbmsga3d0U2VwCURlbGltaXRlcgotICAgIEhpTGluayBrd3RWaWV3cwlMYWJlbAotICAgIEhpTGluayBrd3RQaHlsdW0JVHlwZQotICAgIEhpTGluayBrd3RPcHRpb24JUHJlUHJvYwotICAgICJIaUxpbmsgY1RleHQJQ29tbWVudAorSGlMaW5rIGt3dFN0YXRlbWVudAljcHBTdGF0ZW1lbnQKK0hpTGluayBrd3REZWNsCWNwcFN0YXRlbWVudAorSGlMaW5rIGt3dENhc3QJY3BwU3RhdGVtZW50CitIaUxpbmsga3d0U2VwCURlbGltaXRlcgorSGlMaW5rIGt3dFZpZXdzCUxhYmVsCitIaUxpbmsga3d0UGh5bHVtCVR5cGUKK0hpTGluayBrd3RPcHRpb24JUHJlUHJvYworIkhpTGluayBjVGV4dAlDb21tZW50CiAKLSAgICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIHN5biBzeW5jIGxpbmVzPTMwMAogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9sYWNlLnZpbSBiL3J1bnRpbWUvc3ludGF4L2xhY2UudmltCmluZGV4IDllNjRlZWEuLmRiZGFmOGIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2xhY2UudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2xhY2UudmltCkBAIC05LDExICs5LDggQEAKICIgaXQgdG8gdGhlIG1haW50YWluZXIgYXQgPHV0aWxpdGllc0BlaWZmZWwuY29tPgogCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC04NSw1MCArODIsNDIgQEAKIHN5biBzeW5jIGxpbmVzPTQwCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2xhY2Vfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbGFjZV9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGxhY2VUb3BTdHJ1Y3QJCQlQcmVQcm9jCitIaUxpbmsgbGFjZVRvcFN0cnVjdAkJCVByZVByb2MKIAotICBIaUxpbmsgbGFjZU9wdGlvbkNsYXVzZQkJU3RhdGVtZW50Ci0gIEhpTGluayBsYWNlT3B0aW9uTWFyawkJCUNvbnN0YW50Ci0gIEhpTGluayBsYWNlQ2x1c3RlclByb3AJCUxhYmVsCi0gIEhpTGluayBsYWNlQWRhcHRDbGFzc05hbWUJCUxhYmVsCi0gIEhpTGluayBsYWNlRXh0ZXJuYWwJCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGxhY2VDbHVzdGVyCQkJTW9kZU1zZworSGlMaW5rIGxhY2VPcHRpb25DbGF1c2UJCVN0YXRlbWVudAorSGlMaW5rIGxhY2VPcHRpb25NYXJrCQkJQ29uc3RhbnQKK0hpTGluayBsYWNlQ2x1c3RlclByb3AJCUxhYmVsCitIaUxpbmsgbGFjZUFkYXB0Q2xhc3NOYW1lCQlMYWJlbAorSGlMaW5rIGxhY2VFeHRlcm5hbAkJCVN0YXRlbWVudAorSGlMaW5rIGxhY2VDbHVzdGVyCQkJTW9kZU1zZwogCi0gIEhpTGluayBsYWNlRXNjYXBlCQkJCVNwZWNpYWwKK0hpTGluayBsYWNlRXNjYXBlCQkJCVNwZWNpYWwKIAotICBIaUxpbmsgbGFjZUJvb2wJCQkJQm9vbGVhbgotICBIaUxpbmsgbGFjZVN0cmluZwkJCQlTdHJpbmcKLSAgSGlMaW5rIGxhY2VDaGFyYWN0ZXIJCQlDaGFyYWN0ZXIKLSAgSGlMaW5rIGxhY2VDbGFzc05hbWUJCQlUeXBlCi0gIEhpTGluayBsYWNlTnVtYmVyCQkJCU51bWJlcgorSGlMaW5rIGxhY2VCb29sCQkJCUJvb2xlYW4KK0hpTGluayBsYWNlU3RyaW5nCQkJCVN0cmluZworSGlMaW5rIGxhY2VDaGFyYWN0ZXIJCQlDaGFyYWN0ZXIKK0hpTGluayBsYWNlQ2xhc3NOYW1lCQkJVHlwZQorSGlMaW5rIGxhY2VOdW1iZXIJCQkJTnVtYmVyCiAKLSAgSGlMaW5rIGxhY2VPcGVyYXRvcgkJCVNwZWNpYWwKLSAgSGlMaW5rIGxhY2VBcnJheQkJCQlTcGVjaWFsCi0gIEhpTGluayBsYWNlRXhwb3J0CQkJCVNwZWNpYWwKLSAgSGlMaW5rIGxhY2VDcmVhdGlvbgkJCVNwZWNpYWwKLSAgSGlMaW5rIGxhY2VCcmFja2V0cwkJCVNwZWNpYWwKLSAgSGlMaW5rIGxhY2VDb25zdHJhaW50CQkJU3BlY2lhbAorSGlMaW5rIGxhY2VPcGVyYXRvcgkJCVNwZWNpYWwKK0hpTGluayBsYWNlQXJyYXkJCQkJU3BlY2lhbAorSGlMaW5rIGxhY2VFeHBvcnQJCQkJU3BlY2lhbAorSGlMaW5rIGxhY2VDcmVhdGlvbgkJCVNwZWNpYWwKK0hpTGluayBsYWNlQnJhY2tldHMJCQlTcGVjaWFsCitIaUxpbmsgbGFjZUNvbnN0cmFpbnQJCQlTcGVjaWFsCiAKLSAgSGlMaW5rIGxhY2VDb21tZW50CQkJQ29tbWVudAorSGlMaW5rIGxhY2VDb21tZW50CQkJQ29tbWVudAogCi0gIEhpTGluayBsYWNlRXJyb3IJCQkJRXJyb3IKLSAgSGlMaW5rIGxhY2VTdHJpbmdFcnJvcgkJRXJyb3IKLSAgSGlMaW5rIGxhY2VQYXJlbkVycm9yCQkJRXJyb3IKLSAgSGlMaW5rIGxhY2VCcmFja2V0RXJyb3IJCUVycm9yCi0gIEhpTGluayBsYWNlVG9kbwkJCQlUb2RvCitIaUxpbmsgbGFjZUVycm9yCQkJCUVycm9yCitIaUxpbmsgbGFjZVN0cmluZ0Vycm9yCQlFcnJvcgorSGlMaW5rIGxhY2VQYXJlbkVycm9yCQkJRXJyb3IKK0hpTGluayBsYWNlQnJhY2tldEVycm9yCQlFcnJvcgorSGlMaW5rIGxhY2VUb2RvCQkJCVRvZG8KIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImxhY2UiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2xhdHRlLnZpbSBiL3J1bnRpbWUvc3ludGF4L2xhdHRlLnZpbQppbmRleCBlMmE4NzI5Li5mOTVjN2I1IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9sYXR0ZS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbGF0dGUudmltCkBAIC03LDExICs3LDggQEAKICIgSSBiYXNlZCB0aGlzIG9uIHRoZSBUZVggYW5kIFNjaGVtZSBzeW50YXggZmlsZXMgKGJ1dCBtb3N0bHkgc2NoZW1lKS4KICIgU2VlIGh0dHA6Ly93d3cubGF0dGUub3JnIGZvciBpbmZvIG9uIHRoZSBsYW5ndWFnZS4KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTIwLDExICsxNyw3IEBACiBzeW4gbWF0Y2ggbGF0dGVPdGhlciAiXFx9Igogc3luIG1hdGNoIGxhdHRlT3RoZXIgIlxcXFwiCiAKLWlmIHZlcnNpb24gPCA2MDAKLSAgc2V0IGlza2V5d29yZD0zMyw0Myw0NSw0OC01Nyw2Myw2NS05MCw5NSw5Ny0xMjIsXwotZWxzZQotICBzZXRsb2NhbCBpc2tleXdvcmQ9MzMsNDMsNDUsNDgtNTcsNjMsNjUtOTAsOTUsOTctMTIyLF8KLWVuZGlmCitzZXRsb2NhbCBpc2tleXdvcmQ9MzMsNDMsNDUsNDgtNTcsNjMsNjUtOTAsOTUsOTctMTIyLF8KIAogc3luIHJlZ2lvbiBsYXR0ZVZhciBtYXRjaGdyb3VwPVNwZWNpYWxDaGFyIHN0YXJ0PSFcXFtBLVphLXpfXSFycz1zKzEgZW5kPSFbXkEtWmEtejAtOT8hK18tXSFtZT1lLTEgY29udGFpbnM9QUxMQlVULGxhdHRlTnVtYmVyLGxhdHRlT3RoZXIKIHN5biByZWdpb24gbGF0dGVWYXIgbWF0Y2hncm91cD1TcGVjaWFsQ2hhciBzdGFydD0hXFxbPVwmXVtBLVphLXpfXSFycz1zKzIgZW5kPSFbXkEtWmEtejAtOT8hK18tXSFtZT1lLTEgY29udGFpbnM9QUxMQlVULGxhdHRlTnVtYmVyLGxhdHRlT3RoZXIKQEAgLTcwLDI5ICs2MywyMSBAQAogIiAuLi4gaS5lLiBzeW5jaHJvbml6ZSBvbiBhIGxpbmUgdGhhdCBzdGFydHMgYXQgdGhlIGxlZnQgbWFyZ2luCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2xhdHRlX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2xhdHRlX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgbGF0dGVTeW50YXgJCVN0YXRlbWVudAotICBIaUxpbmsgbGF0dGVWYXIJCQlGdW5jdGlvbgorSGlMaW5rIGxhdHRlU3ludGF4CQlTdGF0ZW1lbnQKK0hpTGluayBsYXR0ZVZhcgkJCUZ1bmN0aW9uCiAKLSAgSGlMaW5rIGxhdHRlU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIGxhdHRlUXVvdGUJCQlTdHJpbmcKK0hpTGluayBsYXR0ZVN0cmluZwkJU3RyaW5nCitIaUxpbmsgbGF0dGVRdW90ZQkJCVN0cmluZwogCi0gIEhpTGluayBsYXR0ZURlbGltaXRlcgkJRGVsaW1pdGVyCi0gIEhpTGluayBsYXR0ZU9wZXJhdG9yCQlPcGVyYXRvcgorSGlMaW5rIGxhdHRlRGVsaW1pdGVyCQlEZWxpbWl0ZXIKK0hpTGluayBsYXR0ZU9wZXJhdG9yCQlPcGVyYXRvcgogCi0gIEhpTGluayBsYXR0ZUNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGxhdHRlRXJyb3IJCQlFcnJvcgorSGlMaW5rIGxhdHRlQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIGxhdHRlRXJyb3IJCQlFcnJvcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibGF0dGUiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9sZGlmLnZpbSBiL3J1bnRpbWUvc3ludGF4L2xkaWYudmltCmluZGV4IDlmNjdiNTcuLjcwNGE1OTAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2xkaWYudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2xkaWYudmltCkBAIC0zLDkgKzMsOCBAQAogIiBNYWludGFpbmVyOglaYWsgSm9obnNvbiA8emFrakBub3guY3g+CiAiIExhc3QgQ2hhbmdlOgkyMDAzLTEyLTMwCiAKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTIxLDIzICsyMCwxNiBAQAogCiBzeW4gcmVnaW9uIGxkaWZDb21tZW50IHN0YXJ0PS9eIy8gZW5kPS9cXyQvIHNraXA9L1xuIC8KIAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2xkaWZfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbGRpZl9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGxkaWZBdHRyaWJ1dGUJCVR5cGUKLSAgSGlMaW5rIGxkaWZPcHRpb24JCUlkZW50aWZpZXIKLSAgSGlMaW5rIGxkaWZQdW5jdHVhdGlvbglOb3JtYWwKLSAgSGlMaW5rIGxkaWZTdHJpbmdWYWx1ZQlTdHJpbmcKLSAgSGlMaW5rIGxkaWZCYXNlNjRWYWx1ZQlTcGVjaWFsCi0gIEhpTGluayBsZGlmRmlsZVZhbHVlCQlTcGVjaWFsCi0gIEhpTGluayBsZGlmQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIGxkaWZBdHRyaWJ1dGUJCVR5cGUKK0hpTGluayBsZGlmT3B0aW9uCQlJZGVudGlmaWVyCitIaUxpbmsgbGRpZlB1bmN0dWF0aW9uCU5vcm1hbAorSGlMaW5rIGxkaWZTdHJpbmdWYWx1ZQlTdHJpbmcKK0hpTGluayBsZGlmQmFzZTY0VmFsdWUJU3BlY2lhbAorSGlMaW5rIGxkaWZGaWxlVmFsdWUJCVNwZWNpYWwKK0hpTGluayBsZGlmQ29tbWVudAkJQ29tbWVudAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibGRpZiIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2xleC52aW0gYi9ydW50aW1lL3N5bnRheC9sZXgudmltCmluZGV4IGI3YWZmMzQuLjgzZWIyMTIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2xleC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbGV4LnZpbQpAQCAtOCwxMSArOCw4IEBACiAiIE9wdGlvbjoKICIgICBsZXhfdXNlc19jcHAgOiBpZiB0aGlzIHZhcmlhYmxlIGV4aXN0cywgdGhlbiBDKysgaXMgbG9hZGVkIHJhdGhlciB0aGFuIEMKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2xoYXNrZWxsLnZpbSBiL3J1bnRpbWUvc3ludGF4L2xoYXNrZWxsLnZpbQppbmRleCAwNzc1NDlhLi43ODIwNzgxIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9saGFza2VsbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbGhhc2tlbGwudmltCkBAIC0zNiwxMSArMzYsOCBAQAogIgogCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC04NCwxNSArODEsMTAgQEAKIAogIiBJZiB1c2VyIHdhbnRzIHVzIHRvIGhpZ2hsaWdodCBUZVggc3ludGF4IG9yIGd1ZXNzIHRoaW5rcyBpdCdzIFRlWCwgcmVhZCBpdC4KIGlmIGI6bGhzX21hcmt1cCA9PSAidGV4IgotICAgIGlmIHZlcnNpb24gPCA2MDAKLQlzb3VyY2UgPHNmaWxlPjpwOmgvdGV4LnZpbQotCXNldCBpc2srPV8KLSAgICBlbHNlCi0JcnVudGltZSEgc3ludGF4L3RleC52aW0KLQl1bmxldCBiOmN1cnJlbnRfc3ludGF4Ci0JIiBUZXgudmltIHJlbW92ZXMgIl8iIGZyb20gJ2lza2V5d29yZCcsIGJ1dCB3ZSBuZWVkIGl0IGZvciBIYXNrZWxsLgotCXNldGxvY2FsIGlzays9XwotICAgIGVuZGlmCisgICAgcnVudGltZSEgc3ludGF4L3RleC52aW0KKyAgICB1bmxldCBiOmN1cnJlbnRfc3ludGF4CisgICAgIiBUZXgudmltIHJlbW92ZXMgIl8iIGZyb20gJ2lza2V5d29yZCcsIGJ1dCB3ZSBuZWVkIGl0IGZvciBIYXNrZWxsLgorICAgIHNldGxvY2FsIGlzays9XwogICAgIHN5bnRheCBjbHVzdGVyIGxoc1RlWENvbnRhaW5lciBjb250YWlucz10ZXguKlpvbmUsdGV4QWJzdHJhY3QKIGVsc2UKICAgICBzeW50YXggY2x1c3RlciBsaHNUZVhDb250YWluZXIgY29udGFpbnM9LioKQEAgLTEwMCwxMSArOTIsNyBAQAogCiAiIExpdGVyYXRlIEhhc2tlbGwgaXMgSGFza2VsbCBpbiBiZXR3ZWVuIHRleHQsIHNvIGF0IGxlYXN0IHJlYWQgSGFza2VsbAogIiBoaWdobGlnaHRpbmcKLWlmIHZlcnNpb24gPCA2MDAKLSAgICBzeW50YXggaW5jbHVkZSBAaGFza2VsbFRvcCA8c2ZpbGU+OnA6aC9oYXNrZWxsLnZpbQotZWxzZQotICAgIHN5bnRheCBpbmNsdWRlIEBoYXNrZWxsVG9wIHN5bnRheC9oYXNrZWxsLnZpbQotZW5kaWYKK3N5bnRheCBpbmNsdWRlIEBoYXNrZWxsVG9wIHN5bnRheC9oYXNrZWxsLnZpbQogCiBzeW50YXggcmVnaW9uIGxoc0hhc2tlbGxCaXJkVHJhY2sgc3RhcnQ9Il4+IiBlbmQ9IlwlKF5bXj5dXClcQD0iIGNvbnRhaW5zPUBoYXNrZWxsVG9wLGxoc0JpcmRUcmFjayBjb250YWluZWRpbj1AbGhzVGVYQ29udGFpbmVyCiBzeW50YXggcmVnaW9uIGxoc0hhc2tlbGxCZWdpbkVuZEJsb2NrIHN0YXJ0PSJeXFxiZWdpbntjb2RlfVxzKiQiIG1hdGNoZ3JvdXA9Tk9ORSBlbmQ9IlwlKF5cXGVuZHtjb2RlfS4qJFwpXEA9IiBjb250YWlucz1AaGFza2VsbFRvcCxiZWdpbkNvZGVCZWdpbiBjb250YWluZWRpbj1AbGhzVGVYQ29udGFpbmVyCkBAIC0xMTUsMjMgKzEwMywxNSBAQAogc3ludGF4IHJlZ2lvbiBiZWdpbkNvZGVDb2RlICBtYXRjaGdyb3VwPXRleERlbGltaXRlciBzdGFydD0ieyIgZW5kPSJ9IgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF90ZXhfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfdGV4X3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgbGhzQmlyZFRyYWNrIENvbW1lbnQKK0hpTGluayBsaHNCaXJkVHJhY2sgQ29tbWVudAogCi0gIEhpTGluayBiZWdpbkNvZGVCZWdpbgkgICAgICB0ZXhDbWROYW1lCi0gIEhpTGluayBiZWdpbkNvZGVDb2RlCSAgICAgIHRleFNlY3Rpb24KK0hpTGluayBiZWdpbkNvZGVCZWdpbgkgICAgICB0ZXhDbWROYW1lCitIaUxpbmsgYmVnaW5Db2RlQ29kZQkgICAgICB0ZXhTZWN0aW9uCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiAiIFJlc3RvcmUgY3Vyc29yIHRvIG9yaWdpbmFsIHBvc2l0aW9uLCBhcyBpdCBtYXkgaGF2ZSBiZWVuIGRpc3R1cmJlZAogIiBieSB0aGUgc2VhcmNoZXMgaW4gb3VyIGd1ZXNzaW5nIGNvZGUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2xpZmVsaW5lcy52aW0gYi9ydW50aW1lL3N5bnRheC9saWZlbGluZXMudmltCmluZGV4IGY4YmVhMDEuLjA0MWM1MDkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2xpZmVsaW5lcy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbGlmZWxpbmVzLnZpbQpAQCAtMTEsOSArMTEsOCBAQAogIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKICIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKIAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTEwLDkgKzEwOSw3IEBACiBzeW4gbWF0Y2gJbGlmZWxpbmVzTnVtYmVyCSItXD1cLlxkXCtcPiIKIAogIiBmb2xkaW5nIHVzaW5nIHt9Ci1pZiB2ZXJzaW9uID49IDYwMAotCXN5biByZWdpb24gbGlmZWxpbmVzRm9sZEJsb2NrCXN0YXJ0PSJ7IiBlbmQ9In0iIHRyYW5zcGFyZW50IGZvbGQKLWVuZGlmCitzeW4gcmVnaW9uIGxpZmVsaW5lc0ZvbGRCbG9jawlzdGFydD0ieyIgZW5kPSJ9IiB0cmFuc3BhcmVudCBmb2xkCiAKICJjYXRjaCBlcnJvcnMgY2F1c2VkIGJ5IHdyb25nIHBhcmVudGhlc2lzCiAiYWRhcHRlZCBmcm9tIG9yaWdpbmFsIGMudmltIHdyaXR0ZW4gYnkgQnJhbSBNb29sZW5hYXIKQEAgLTEyMyw0NCArMTIwLDM2IEBACiBzeW4gbWF0Y2gJbGlmZWxpbmVzRXJySW5QYXJlbgljb250YWluZWQgIlt7fV0iCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbGlmZWxpbmVzX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2xpZmVsaW5lc19zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGxpZmVsaW5lc0NvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCi0gIEhpTGluayBsaWZlbGluZXNBcml0aG0JT3BlcmF0b3IKLSAgSGlMaW5rIGxpZmVsaW5lc0xvZ2ljYWwJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIGxpZmVsaW5lc0luY2x1ZGUJSW5jbHVkZQotICBIaUxpbmsgbGlmZWxpbmVzQ29tbWVudAlDb21tZW50Ci0gIEhpTGluayBsaWZlbGluZXNTdGF0ZW1lbnQJU3RhdGVtZW50Ci0gIEhpTGluayBsaWZlbGluZXNVc2VyCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGxpZmVsaW5lc0Z1bmN0CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGxpZmVsaW5lc1RhYmxlCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGxpZmVsaW5lc0dlZGNvbQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGxpZmVsaW5lc0xpc3QJCVN0YXRlbWVudAotICBIaUxpbmsgbGlmZWxpbmVzUmVwZWF0CVJlcGVhdAotICBIaUxpbmsgbGlmZWxpbmVzRmFtCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGxpZmVsaW5lc0luZGkJCVN0YXRlbWVudAotICBIaUxpbmsgbGlmZWxpbmVzUHJvYwkJU3RhdGVtZW50Ci0gIEhpTGluayBsaWZlbGluZXNEZWYJCVN0YXRlbWVudAotICBIaUxpbmsgbGlmZWxpbmVzU3RyaW5nCVN0cmluZwotICBIaUxpbmsgbGlmZWxpbmVzU3BlY2lhbAlTcGVjaWFsCi0gIEhpTGluayBsaWZlbGluZXNOdW1iZXIJTnVtYmVyCi0gIEhpTGluayBsaWZlbGluZXNQYXJlbkVycm9yCUVycm9yCi0gIEhpTGluayBsaWZlbGluZXNFcnJJblBhcmVuCUVycm9yCi0gIEhpTGluayBsaWZlbGluZXNFcnJvcgkJRXJyb3IKLSAgSGlMaW5rIGxpZmVsaW5lc1RvZG8JCVRvZG8KLSAgSGlMaW5rIGxpZmVsaW5lc0RlY2wJCVByZVByb2MKK0hpTGluayBsaWZlbGluZXNDb25kaXRpb25hbAlDb25kaXRpb25hbAorSGlMaW5rIGxpZmVsaW5lc0FyaXRobQlPcGVyYXRvcgorSGlMaW5rIGxpZmVsaW5lc0xvZ2ljYWwJQ29uZGl0aW9uYWwKK0hpTGluayBsaWZlbGluZXNJbmNsdWRlCUluY2x1ZGUKK0hpTGluayBsaWZlbGluZXNDb21tZW50CUNvbW1lbnQKK0hpTGluayBsaWZlbGluZXNTdGF0ZW1lbnQJU3RhdGVtZW50CitIaUxpbmsgbGlmZWxpbmVzVXNlcgkJU3RhdGVtZW50CitIaUxpbmsgbGlmZWxpbmVzRnVuY3QJCVN0YXRlbWVudAorSGlMaW5rIGxpZmVsaW5lc1RhYmxlCQlTdGF0ZW1lbnQKK0hpTGluayBsaWZlbGluZXNHZWRjb20JU3RhdGVtZW50CitIaUxpbmsgbGlmZWxpbmVzTGlzdAkJU3RhdGVtZW50CitIaUxpbmsgbGlmZWxpbmVzUmVwZWF0CVJlcGVhdAorSGlMaW5rIGxpZmVsaW5lc0ZhbQkJU3RhdGVtZW50CitIaUxpbmsgbGlmZWxpbmVzSW5kaQkJU3RhdGVtZW50CitIaUxpbmsgbGlmZWxpbmVzUHJvYwkJU3RhdGVtZW50CitIaUxpbmsgbGlmZWxpbmVzRGVmCQlTdGF0ZW1lbnQKK0hpTGluayBsaWZlbGluZXNTdHJpbmcJU3RyaW5nCitIaUxpbmsgbGlmZWxpbmVzU3BlY2lhbAlTcGVjaWFsCitIaUxpbmsgbGlmZWxpbmVzTnVtYmVyCU51bWJlcgorSGlMaW5rIGxpZmVsaW5lc1BhcmVuRXJyb3IJRXJyb3IKK0hpTGluayBsaWZlbGluZXNFcnJJblBhcmVuCUVycm9yCitIaUxpbmsgbGlmZWxpbmVzRXJyb3IJCUVycm9yCitIaUxpbmsgbGlmZWxpbmVzVG9kbwkJVG9kbworSGlMaW5rIGxpZmVsaW5lc0RlY2wJCVByZVByb2MKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImxpZmVsaW5lcyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbGlsby52aW0gYi9ydW50aW1lL3N5bnRheC9saWxvLnZpbQppbmRleCAzZTk0NTkyLi5mNThlMzQwIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9saWxvLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9saWxvLnZpbQpAQCAtNSwyMSArNSwxMiBAQAogIiBMYXN0IENoYW5nZTogMjAxMC0wMi0wMwogCiAiIFNldHVwCi1pZiB2ZXJzaW9uID49IDYwMAotICBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQotICAgIGZpbmlzaAotICBlbmRpZgotZWxzZQotICBzeW50YXggY2xlYXIKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorICBmaW5pc2gKIGVuZGlmCiAKLWlmIHZlcnNpb24gPj0gNjAwCi0gIGNvbW1hbmQgLW5hcmdzPTEgU2V0SXNrIHNldGxvY2FsIGlza2V5d29yZD08YXJncz4KLWVsc2UKLSAgY29tbWFuZCAtbmFyZ3M9MSBTZXRJc2sgc2V0IGlza2V5d29yZD08YXJncz4KLWVuZGlmCi1TZXRJc2sgQCw0OC01NywuLC0sXwotZGVsY29tbWFuZCBTZXRJc2sKK3NldGxvY2FsIGlza2V5d29yZD1ALDQ4LTU3LC4sLSxfCiAKIHN5biBjYXNlIGlnbm9yZQogCkBAIC0xMjgsNjUgKzExOSw1OCBAQAogc3luIG1hdGNoIGxpbG9Bbnl0aGluZ0NvbW1lbnQgIiMuKiQiIGNvbnRhaW5lZCBuZXh0Z3JvdXA9bGlsb0FueXRoaW5nLGxpbG9Bbnl0aGluZ0NvbW1lbnQsbGlsb0Vycm9yIHNraXB3aGl0ZSBza2lwZW1wdHkKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbGlsb19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9saWxvX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgbGlsb0VxUGF0aCAgICAgICAgICAgICBsaWxvRXF1YWxzCi0gIEhpTGluayBsaWxvRXFXb3JkICAgICAgICAgICAgIGxpbG9FcXVhbHMKLSAgSGlMaW5rIGxpbG9FcVZnYSAgICAgICAgICAgICAgbGlsb0VxdWFscwotICBIaUxpbmsgbGlsb0VxRGVjTnVtYmVyICAgICAgICBsaWxvRXF1YWxzCi0gIEhpTGluayBsaWxvRXFIZXhOdW1iZXIgICAgICAgIGxpbG9FcXVhbHMKLSAgSGlMaW5rIGxpbG9FcU51bWJlciAgICAgICAgICAgbGlsb0VxdWFscwotICBIaUxpbmsgbGlsb0VxU3RyaW5nICAgICAgICAgICBsaWxvRXF1YWxzCi0gIEhpTGluayBsaWxvRXFBbnl0aGluZyAgICAgICAgIGxpbG9FcXVhbHMKLSAgSGlMaW5rIGxpbG9FcXVhbHMgICAgICAgICAgICAgU3BlY2lhbAorSGlMaW5rIGxpbG9FcVBhdGggICAgICAgICAgICAgbGlsb0VxdWFscworSGlMaW5rIGxpbG9FcVdvcmQgICAgICAgICAgICAgbGlsb0VxdWFscworSGlMaW5rIGxpbG9FcVZnYSAgICAgICAgICAgICAgbGlsb0VxdWFscworSGlMaW5rIGxpbG9FcURlY051bWJlciAgICAgICAgbGlsb0VxdWFscworSGlMaW5rIGxpbG9FcUhleE51bWJlciAgICAgICAgbGlsb0VxdWFscworSGlMaW5rIGxpbG9FcU51bWJlciAgICAgICAgICAgbGlsb0VxdWFscworSGlMaW5rIGxpbG9FcVN0cmluZyAgICAgICAgICAgbGlsb0VxdWFscworSGlMaW5rIGxpbG9FcUFueXRoaW5nICAgICAgICAgbGlsb0VxdWFscworSGlMaW5rIGxpbG9FcXVhbHMgICAgICAgICAgICAgU3BlY2lhbAogCi0gIEhpTGluayBsaWxvRXJyb3IgICAgICAgICAgICAgIEVycm9yCitIaUxpbmsgbGlsb0Vycm9yICAgICAgICAgICAgICBFcnJvcgogCi0gIEhpTGluayBsaWxvRXFQYXRoQ29tbWVudCAgICAgIGxpbG9Db21tZW50Ci0gIEhpTGluayBsaWxvRXFWZ2FDb21tZW50ICAgICAgIGxpbG9Db21tZW50Ci0gIEhpTGluayBsaWxvRXFEZWNOdW1iZXJDb21tZW50IGxpbG9Db21tZW50Ci0gIEhpTGluayBsaWxvRXFIZXhOdW1iZXJDb21tZW50IGxpbG9Db21tZW50Ci0gIEhpTGluayBsaWxvRXFTdHJpbmdDb21tZW50ICAgIGxpbG9Db21tZW50Ci0gIEhpTGluayBsaWxvRXFBbnl0aGluZ0NvbW1lbnQgIGxpbG9Db21tZW50Ci0gIEhpTGluayBsaWxvUGF0aENvbW1lbnQgICAgICAgIGxpbG9Db21tZW50Ci0gIEhpTGluayBsaWxvVmdhQ29tbWVudCAgICAgICAgIGxpbG9Db21tZW50Ci0gIEhpTGluayBsaWxvRGVjTnVtYmVyQ29tbWVudCAgIGxpbG9Db21tZW50Ci0gIEhpTGluayBsaWxvSGV4TnVtYmVyQ29tbWVudCAgIGxpbG9Db21tZW50Ci0gIEhpTGluayBsaWxvTnVtYmVyQ29tbWVudCAgICAgIGxpbG9Db21tZW50Ci0gIEhpTGluayBsaWxvU3RyaW5nQ29tbWVudCAgICAgIGxpbG9Db21tZW50Ci0gIEhpTGluayBsaWxvQW55dGhpbmdDb21tZW50ICAgIGxpbG9Db21tZW50Ci0gIEhpTGluayBsaWxvQ29tbWVudCAgICAgICAgICAgIENvbW1lbnQKK0hpTGluayBsaWxvRXFQYXRoQ29tbWVudCAgICAgIGxpbG9Db21tZW50CitIaUxpbmsgbGlsb0VxVmdhQ29tbWVudCAgICAgICBsaWxvQ29tbWVudAorSGlMaW5rIGxpbG9FcURlY051bWJlckNvbW1lbnQgbGlsb0NvbW1lbnQKK0hpTGluayBsaWxvRXFIZXhOdW1iZXJDb21tZW50IGxpbG9Db21tZW50CitIaUxpbmsgbGlsb0VxU3RyaW5nQ29tbWVudCAgICBsaWxvQ29tbWVudAorSGlMaW5rIGxpbG9FcUFueXRoaW5nQ29tbWVudCAgbGlsb0NvbW1lbnQKK0hpTGluayBsaWxvUGF0aENvbW1lbnQgICAgICAgIGxpbG9Db21tZW50CitIaUxpbmsgbGlsb1ZnYUNvbW1lbnQgICAgICAgICBsaWxvQ29tbWVudAorSGlMaW5rIGxpbG9EZWNOdW1iZXJDb21tZW50ICAgbGlsb0NvbW1lbnQKK0hpTGluayBsaWxvSGV4TnVtYmVyQ29tbWVudCAgIGxpbG9Db21tZW50CitIaUxpbmsgbGlsb051bWJlckNvbW1lbnQgICAgICBsaWxvQ29tbWVudAorSGlMaW5rIGxpbG9TdHJpbmdDb21tZW50ICAgICAgbGlsb0NvbW1lbnQKK0hpTGluayBsaWxvQW55dGhpbmdDb21tZW50ICAgIGxpbG9Db21tZW50CitIaUxpbmsgbGlsb0NvbW1lbnQgICAgICAgICAgICBDb21tZW50CiAKLSAgSGlMaW5rIGxpbG9EaXNrT3B0ICAgICAgICAgICAgbGlsb09wdGlvbgotICBIaUxpbmsgbGlsb0tlcm5lbE9wdCAgICAgICAgICBsaWxvT3B0aW9uCi0gIEhpTGluayBsaWxvSW1hZ2VPcHQgICAgICAgICAgIGxpbG9PcHRpb24KLSAgSGlMaW5rIGxpbG9PcHRpb24gICAgICAgICAgICAgS2V5d29yZAorSGlMaW5rIGxpbG9EaXNrT3B0ICAgICAgICAgICAgbGlsb09wdGlvbgorSGlMaW5rIGxpbG9LZXJuZWxPcHQgICAgICAgICAgbGlsb09wdGlvbgorSGlMaW5rIGxpbG9JbWFnZU9wdCAgICAgICAgICAgbGlsb09wdGlvbgorSGlMaW5rIGxpbG9PcHRpb24gICAgICAgICAgICAgS2V5d29yZAogCi0gIEhpTGluayBsaWxvRGVjTnVtYmVyICAgICAgICAgIGxpbG9OdW1iZXIKLSAgSGlMaW5rIGxpbG9IZXhOdW1iZXIgICAgICAgICAgbGlsb051bWJlcgotICBIaUxpbmsgbGlsb0RlY051bWJlclAgICAgICAgICBsaWxvTnVtYmVyCi0gIEhpTGluayBsaWxvTnVtYmVyICAgICAgICAgICAgIE51bWJlcgotICBIaUxpbmsgbGlsb1N0cmluZyAgICAgICAgICAgICBTdHJpbmcKLSAgSGlMaW5rIGxpbG9QYXRoICAgICAgICAgICAgICAgQ29uc3RhbnQKK0hpTGluayBsaWxvRGVjTnVtYmVyICAgICAgICAgIGxpbG9OdW1iZXIKK0hpTGluayBsaWxvSGV4TnVtYmVyICAgICAgICAgIGxpbG9OdW1iZXIKK0hpTGluayBsaWxvRGVjTnVtYmVyUCAgICAgICAgIGxpbG9OdW1iZXIKK0hpTGluayBsaWxvTnVtYmVyICAgICAgICAgICAgIE51bWJlcgorSGlMaW5rIGxpbG9TdHJpbmcgICAgICAgICAgICAgU3RyaW5nCitIaUxpbmsgbGlsb1BhdGggICAgICAgICAgICAgICBDb25zdGFudAogCi0gIEhpTGluayBsaWxvU3BlY2lhbCAgICAgICAgICAgIFNwZWNpYWwKLSAgSGlMaW5rIGxpbG9MYWJlbCAgICAgICAgICAgICAgVGl0bGUKLSAgSGlMaW5rIGxpbG9EZWNOdW1iZXJMaXN0ICAgICAgU3BlY2lhbAotICBIaUxpbmsgbGlsb0RlY051bWJlclBMaXN0ICAgICBTcGVjaWFsCi0gIEhpTGluayBsaWxvQW55dGhpbmcgICAgICAgICAgIE5vcm1hbAotICBIaUxpbmsgbGlsb0Vudmlyb24gICAgICAgICAgICBJZGVudGlmaWVyCi0gIEhpTGluayBsaWxvVmdhS2V5d29yZCAgICAgICAgIElkZW50aWZpZXIKLSAgSGlMaW5rIGxpbG9JbWFnZSAgICAgICAgICAgICAgVHlwZQotICBIaUxpbmsgbGlsb0NoUnVsZXMgICAgICAgICAgICBQcmVwcm9jCi0gIEhpTGluayBsaWxvRGlzayAgICAgICAgICAgICAgIFByZXByb2MKK0hpTGluayBsaWxvU3BlY2lhbCAgICAgICAgICAgIFNwZWNpYWwKK0hpTGluayBsaWxvTGFiZWwgICAgICAgICAgICAgIFRpdGxlCitIaUxpbmsgbGlsb0RlY051bWJlckxpc3QgICAgICBTcGVjaWFsCitIaUxpbmsgbGlsb0RlY051bWJlclBMaXN0ICAgICBTcGVjaWFsCitIaUxpbmsgbGlsb0FueXRoaW5nICAgICAgICAgICBOb3JtYWwKK0hpTGluayBsaWxvRW52aXJvbiAgICAgICAgICAgIElkZW50aWZpZXIKK0hpTGluayBsaWxvVmdhS2V5d29yZCAgICAgICAgIElkZW50aWZpZXIKK0hpTGluayBsaWxvSW1hZ2UgICAgICAgICAgICAgIFR5cGUKK0hpTGluayBsaWxvQ2hSdWxlcyAgICAgICAgICAgIFByZXByb2MKK0hpTGluayBsaWxvRGlzayAgICAgICAgICAgICAgIFByZXByb2MKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImxpbG8iCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9saXNwLnZpbSBiL3J1bnRpbWUvc3ludGF4L2xpc3AudmltCmluZGV4IGE0MDI0NTIuLmY1NTUwNzAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2xpc3AudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2xpc3AudmltCkBAIC01NjEsNjEgKzU2MSw1OCBAQAogCiAiIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIiBEZWZpbmUgSGlnaGxpZ2h0aW5nOiB7e3sxCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4Ci0gIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGxpc3BDb21tZW50UmVnaW9uCWxpc3BDb21tZW50Ci0gIEhpTGluayBsaXNwQXRvbU5tYnIJCWxpc3BOdW1iZXIKLSAgSGlMaW5rIGxpc3BBdG9tTWFyawkJbGlzcE1hcmsKLSAgSGlMaW5rIGxpc3BJblN0cmluZ1N0cmluZwlsaXNwU3RyaW5nCitIaUxpbmsgbGlzcENvbW1lbnRSZWdpb24JbGlzcENvbW1lbnQKK0hpTGluayBsaXNwQXRvbU5tYnIJCWxpc3BOdW1iZXIKK0hpTGluayBsaXNwQXRvbU1hcmsJCWxpc3BNYXJrCitIaUxpbmsgbGlzcEluU3RyaW5nU3RyaW5nCWxpc3BTdHJpbmcKIAotICBIaUxpbmsgbGlzcEF0b20JCUlkZW50aWZpZXIKLSAgSGlMaW5rIGxpc3BBdG9tQmFyU3ltYm9sCVNwZWNpYWwKLSAgSGlMaW5rIGxpc3BCYXJTeW1ib2wJCVNwZWNpYWwKLSAgSGlMaW5rIGxpc3BDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBsaXNwQ29uY2F0CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGxpc3BEZWNsCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGxpc3BGdW5jCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGxpc3BLZXkJCVR5cGUKLSAgSGlMaW5rIGxpc3BNYXJrCQlEZWxpbWl0ZXIKLSAgSGlMaW5rIGxpc3BOdW1iZXIJCU51bWJlcgotICBIaUxpbmsgbGlzcFBhcmVuRXJyb3IJCUVycm9yCi0gIEhpTGluayBsaXNwRXNjYXBlU3BlY2lhbAlUeXBlCi0gIEhpTGluayBsaXNwU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIGxpc3BUb2RvCQlUb2RvCi0gIEhpTGluayBsaXNwVmFyCQlTdGF0ZW1lbnQKK0hpTGluayBsaXNwQXRvbQkJSWRlbnRpZmllcgorSGlMaW5rIGxpc3BBdG9tQmFyU3ltYm9sCVNwZWNpYWwKK0hpTGluayBsaXNwQmFyU3ltYm9sCQlTcGVjaWFsCitIaUxpbmsgbGlzcENvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBsaXNwQ29uY2F0CQlTdGF0ZW1lbnQKK0hpTGluayBsaXNwRGVjbAkJU3RhdGVtZW50CitIaUxpbmsgbGlzcEZ1bmMJCVN0YXRlbWVudAorSGlMaW5rIGxpc3BLZXkJCVR5cGUKK0hpTGluayBsaXNwTWFyawkJRGVsaW1pdGVyCitIaUxpbmsgbGlzcE51bWJlcgkJTnVtYmVyCitIaUxpbmsgbGlzcFBhcmVuRXJyb3IJCUVycm9yCitIaUxpbmsgbGlzcEVzY2FwZVNwZWNpYWwJVHlwZQorSGlMaW5rIGxpc3BTdHJpbmcJCVN0cmluZworSGlMaW5rIGxpc3BUb2RvCQlUb2RvCitIaUxpbmsgbGlzcFZhcgkJU3RhdGVtZW50CiAKLSAgaWYgZXhpc3RzKCJnOmxpc3BfcmFpbmJvdyIpICYmIGc6bGlzcF9yYWluYm93ICE9IDAKLSAgIGlmICZiZyA9PSAiZGFyayIKLSAgICBoaSBkZWYgaGxMZXZlbDAgY3Rlcm1mZz1yZWQgICAgICAgICBndWlmZz1yZWQxCi0gICAgaGkgZGVmIGhsTGV2ZWwxIGN0ZXJtZmc9eWVsbG93ICAgICAgZ3VpZmc9b3JhbmdlMQotICAgIGhpIGRlZiBobExldmVsMiBjdGVybWZnPWdyZWVuICAgICAgIGd1aWZnPXllbGxvdzEKLSAgICBoaSBkZWYgaGxMZXZlbDMgY3Rlcm1mZz1jeWFuICAgICAgICBndWlmZz1ncmVlbnllbGxvdwotICAgIGhpIGRlZiBobExldmVsNCBjdGVybWZnPW1hZ2VudGEgICAgIGd1aWZnPWdyZWVuMQotICAgIGhpIGRlZiBobExldmVsNSBjdGVybWZnPXJlZCAgICAgICAgIGd1aWZnPXNwcmluZ2dyZWVuMQotICAgIGhpIGRlZiBobExldmVsNiBjdGVybWZnPXllbGxvdyAgICAgIGd1aWZnPWN5YW4xCi0gICAgaGkgZGVmIGhsTGV2ZWw3IGN0ZXJtZmc9Z3JlZW4gICAgICAgZ3VpZmc9c2xhdGVibHVlMQotICAgIGhpIGRlZiBobExldmVsOCBjdGVybWZnPWN5YW4gICAgICAgIGd1aWZnPW1hZ2VudGExCi0gICAgaGkgZGVmIGhsTGV2ZWw5IGN0ZXJtZmc9bWFnZW50YSAgICAgZ3VpZmc9cHVycGxlMQotICAgZWxzZQotICAgIGhpIGRlZiBobExldmVsMCBjdGVybWZnPXJlZCAgICAgICAgIGd1aWZnPXJlZDMKLSAgICBoaSBkZWYgaGxMZXZlbDEgY3Rlcm1mZz1kYXJreWVsbG93ICBndWlmZz1vcmFuZ2VyZWQzCi0gICAgaGkgZGVmIGhsTGV2ZWwyIGN0ZXJtZmc9ZGFya2dyZWVuICAgZ3VpZmc9b3JhbmdlMgotICAgIGhpIGRlZiBobExldmVsMyBjdGVybWZnPWJsdWUgICAgICAgIGd1aWZnPXllbGxvdzMKLSAgICBoaSBkZWYgaGxMZXZlbDQgY3Rlcm1mZz1kYXJrbWFnZW50YSBndWlmZz1vbGl2ZWRyYWI0Ci0gICAgaGkgZGVmIGhsTGV2ZWw1IGN0ZXJtZmc9cmVkICAgICAgICAgZ3VpZmc9Z3JlZW40Ci0gICAgaGkgZGVmIGhsTGV2ZWw2IGN0ZXJtZmc9ZGFya3llbGxvdyAgZ3VpZmc9cGFsZXR1cnF1b2lzZTMKLSAgICBoaSBkZWYgaGxMZXZlbDcgY3Rlcm1mZz1kYXJrZ3JlZW4gICBndWlmZz1kZWVwc2t5Ymx1ZTQKLSAgICBoaSBkZWYgaGxMZXZlbDggY3Rlcm1mZz1ibHVlICAgICAgICBndWlmZz1kYXJrc2xhdGVibHVlCi0gICAgaGkgZGVmIGhsTGV2ZWw5IGN0ZXJtZmc9ZGFya21hZ2VudGEgZ3VpZmc9ZGFya3Zpb2xldAotICAgZW5kaWYKLSAgZW5kaWYKLQotICBkZWxjb21tYW5kIEhpTGluaworaWYgZXhpc3RzKCJnOmxpc3BfcmFpbmJvdyIpICYmIGc6bGlzcF9yYWluYm93ICE9IDAKKyBpZiAmYmcgPT0gImRhcmsiCisgIGhpIGRlZiBobExldmVsMCBjdGVybWZnPXJlZCAgICAgICAgIGd1aWZnPXJlZDEKKyAgaGkgZGVmIGhsTGV2ZWwxIGN0ZXJtZmc9eWVsbG93ICAgICAgZ3VpZmc9b3JhbmdlMQorICBoaSBkZWYgaGxMZXZlbDIgY3Rlcm1mZz1ncmVlbiAgICAgICBndWlmZz15ZWxsb3cxCisgIGhpIGRlZiBobExldmVsMyBjdGVybWZnPWN5YW4gICAgICAgIGd1aWZnPWdyZWVueWVsbG93CisgIGhpIGRlZiBobExldmVsNCBjdGVybWZnPW1hZ2VudGEgICAgIGd1aWZnPWdyZWVuMQorICBoaSBkZWYgaGxMZXZlbDUgY3Rlcm1mZz1yZWQgICAgICAgICBndWlmZz1zcHJpbmdncmVlbjEKKyAgaGkgZGVmIGhsTGV2ZWw2IGN0ZXJtZmc9eWVsbG93ICAgICAgZ3VpZmc9Y3lhbjEKKyAgaGkgZGVmIGhsTGV2ZWw3IGN0ZXJtZmc9Z3JlZW4gICAgICAgZ3VpZmc9c2xhdGVibHVlMQorICBoaSBkZWYgaGxMZXZlbDggY3Rlcm1mZz1jeWFuICAgICAgICBndWlmZz1tYWdlbnRhMQorICBoaSBkZWYgaGxMZXZlbDkgY3Rlcm1mZz1tYWdlbnRhICAgICBndWlmZz1wdXJwbGUxCisgZWxzZQorICBoaSBkZWYgaGxMZXZlbDAgY3Rlcm1mZz1yZWQgICAgICAgICBndWlmZz1yZWQzCisgIGhpIGRlZiBobExldmVsMSBjdGVybWZnPWRhcmt5ZWxsb3cgIGd1aWZnPW9yYW5nZXJlZDMKKyAgaGkgZGVmIGhsTGV2ZWwyIGN0ZXJtZmc9ZGFya2dyZWVuICAgZ3VpZmc9b3JhbmdlMgorICBoaSBkZWYgaGxMZXZlbDMgY3Rlcm1mZz1ibHVlICAgICAgICBndWlmZz15ZWxsb3czCisgIGhpIGRlZiBobExldmVsNCBjdGVybWZnPWRhcmttYWdlbnRhIGd1aWZnPW9saXZlZHJhYjQKKyAgaGkgZGVmIGhsTGV2ZWw1IGN0ZXJtZmc9cmVkICAgICAgICAgZ3VpZmc9Z3JlZW40CisgIGhpIGRlZiBobExldmVsNiBjdGVybWZnPWRhcmt5ZWxsb3cgIGd1aWZnPXBhbGV0dXJxdW9pc2UzCisgIGhpIGRlZiBobExldmVsNyBjdGVybWZnPWRhcmtncmVlbiAgIGd1aWZnPWRlZXBza3libHVlNAorICBoaSBkZWYgaGxMZXZlbDggY3Rlcm1mZz1ibHVlICAgICAgICBndWlmZz1kYXJrc2xhdGVibHVlCisgIGhpIGRlZiBobExldmVsOSBjdGVybWZnPWRhcmttYWdlbnRhIGd1aWZnPWRhcmt2aW9sZXQKKyBlbmRpZgogZW5kaWYKIAorZGVsY29tbWFuZCBIaUxpbmsKKwogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibGlzcCIKIAogIiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2xpdGUudmltIGIvcnVudGltZS9zeW50YXgvbGl0ZS52aW0KaW5kZXggOGFiYzUxZC4uMWE3NmU2YyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbGl0ZS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbGl0ZS52aW0KQEAgLTgsMTEgKzgsOCBAQAogIiBPcHRpb25zCWxpdGVfc3FsX3F1ZXJ5ID0gMSBmb3IgU1FMIHN5bnRheCBoaWdobGlndGhpbmcgaW5zaWRlIHN0cmluZ3MKICIJCWxpdGVfbWlubGluZXMgPSB4ICAgICB0byBzeW5jIGF0IGxlYXN0IHggbGluZXMgYmFja3dhcmRzCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xMzgsMzkgKzEzNSwzMSBAQAogZW5kaWYKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbGl0ZV9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9saXRlX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgbGl0ZUNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGxpdGVTdHJpbmcJCVN0cmluZwotICBIaUxpbmsgbGl0ZU51bWJlcgkJTnVtYmVyCi0gIEhpTGluayBsaXRlRmxvYXQJCUZsb2F0Ci0gIEhpTGluayBsaXRlSWRlbnRpZmllcglJZGVudGlmaWVyCi0gIEhpTGluayBsaXRlR2xvYmFsSWRlbnRpZmllcglJZGVudGlmaWVyCi0gIEhpTGluayBsaXRlSW50VmFyCQlJZGVudGlmaWVyCi0gIEhpTGluayBsaXRlRnVuY3Rpb25zCQlGdW5jdGlvbgotICBIaUxpbmsgbGl0ZVJlcGVhdAkJUmVwZWF0Ci0gIEhpTGluayBsaXRlQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIGxpdGVTdGF0ZW1lbnQJCVN0YXRlbWVudAotICBIaUxpbmsgbGl0ZVR5cGUJCVR5cGUKLSAgSGlMaW5rIGxpdGVJbmNsdWRlCQlJbmNsdWRlCi0gIEhpTGluayBsaXRlRGVmaW5lCQlEZWZpbmUKLSAgSGlMaW5rIGxpdGVTcGVjaWFsQ2hhcglTcGVjaWFsQ2hhcgotICBIaUxpbmsgbGl0ZVBhcmVudEVycm9yCWxpdGVFcnJvcgotICBIaUxpbmsgbGl0ZUVycm9yCQlFcnJvcgotICBIaUxpbmsgbGl0ZVRvZG8JCVRvZG8KLSAgSGlMaW5rIGxpdGVPcGVyYXRvcgkJT3BlcmF0b3IKLSAgSGlMaW5rIGxpdGVSZWxhdGlvbgkJT3BlcmF0b3IKK0hpTGluayBsaXRlQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIGxpdGVTdHJpbmcJCVN0cmluZworSGlMaW5rIGxpdGVOdW1iZXIJCU51bWJlcgorSGlMaW5rIGxpdGVGbG9hdAkJRmxvYXQKK0hpTGluayBsaXRlSWRlbnRpZmllcglJZGVudGlmaWVyCitIaUxpbmsgbGl0ZUdsb2JhbElkZW50aWZpZXIJSWRlbnRpZmllcgorSGlMaW5rIGxpdGVJbnRWYXIJCUlkZW50aWZpZXIKK0hpTGluayBsaXRlRnVuY3Rpb25zCQlGdW5jdGlvbgorSGlMaW5rIGxpdGVSZXBlYXQJCVJlcGVhdAorSGlMaW5rIGxpdGVDb25kaXRpb25hbAlDb25kaXRpb25hbAorSGlMaW5rIGxpdGVTdGF0ZW1lbnQJCVN0YXRlbWVudAorSGlMaW5rIGxpdGVUeXBlCQlUeXBlCitIaUxpbmsgbGl0ZUluY2x1ZGUJCUluY2x1ZGUKK0hpTGluayBsaXRlRGVmaW5lCQlEZWZpbmUKK0hpTGluayBsaXRlU3BlY2lhbENoYXIJU3BlY2lhbENoYXIKK0hpTGluayBsaXRlUGFyZW50RXJyb3IJbGl0ZUVycm9yCitIaUxpbmsgbGl0ZUVycm9yCQlFcnJvcgorSGlMaW5rIGxpdGVUb2RvCQlUb2RvCitIaUxpbmsgbGl0ZU9wZXJhdG9yCQlPcGVyYXRvcgorSGlMaW5rIGxpdGVSZWxhdGlvbgkJT3BlcmF0b3IKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImxpdGUiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2xvZ3RhbGsudmltIGIvcnVudGltZS9zeW50YXgvbG9ndGFsay52aW0KaW5kZXggYmUzNGM3ZS4uZTRkZWNmMiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbG9ndGFsay52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbG9ndGFsay52aW0KQEAgLTUsMTEgKzUsOCBAQAogIiBMYXN0IENoYW5nZToJRmVicnVhcnkgNCwgMjAxMgogCiAKLSIgUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkOgotCi1pZiB2ZXJzaW9uIDwgNjAwCi0Jc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogCWZpbmlzaAogZW5kaWYKIApAQCAtMzg5LDU5ICszODYsNDkgQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbG9ndGFsa19zeW5faW5pdHMiKQotCWlmIHZlcnNpb24gPCA1MDgKLQkJbGV0IGRpZF9sb2d0YWxrX3N5bl9pbml0cyA9IDEKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLQllbHNlCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotCWVuZGlmCitIaUxpbmsJbG9ndGFsa0Jsb2NrQ29tbWVudAlDb21tZW50CitIaUxpbmsJbG9ndGFsa0xpbmVDb21tZW50CUNvbW1lbnQKIAotCUhpTGluawlsb2d0YWxrQmxvY2tDb21tZW50CUNvbW1lbnQKLQlIaUxpbmsJbG9ndGFsa0xpbmVDb21tZW50CUNvbW1lbnQKK0hpTGluawlsb2d0YWxrT3BlbkVudGl0eURpcglOb3JtYWwKK0hpTGluawlsb2d0YWxrT3BlbkVudGl0eURpclRhZwlQcmVQcm9jCiAKLQlIaUxpbmsJbG9ndGFsa09wZW5FbnRpdHlEaXIJTm9ybWFsCi0JSGlMaW5rCWxvZ3RhbGtPcGVuRW50aXR5RGlyVGFnCVByZVByb2MKK0hpTGluawlsb2d0YWxrSWZDb250YWluZXIJUHJlUHJvYworSGlMaW5rCWxvZ3RhbGtJZgkJUHJlUHJvYworSGlMaW5rCWxvZ3RhbGtFbHNlSWYJCVByZVByb2MKK0hpTGluawlsb2d0YWxrRWxzZQkJUHJlUHJvYwogCi0JSGlMaW5rCWxvZ3RhbGtJZkNvbnRhaW5lcglQcmVQcm9jCi0JSGlMaW5rCWxvZ3RhbGtJZgkJUHJlUHJvYwotCUhpTGluawlsb2d0YWxrRWxzZUlmCQlQcmVQcm9jCi0JSGlMaW5rCWxvZ3RhbGtFbHNlCQlQcmVQcm9jCitIaUxpbmsJbG9ndGFsa0VudGl0eQkJTm9ybWFsCiAKLQlIaUxpbmsJbG9ndGFsa0VudGl0eQkJTm9ybWFsCitIaUxpbmsJbG9ndGFsa0VudGl0eVJlbAlOb3JtYWwKK0hpTGluawlsb2d0YWxrRW50aXR5UmVsVGFnCVByZVByb2MKIAotCUhpTGluawlsb2d0YWxrRW50aXR5UmVsCU5vcm1hbAotCUhpTGluawlsb2d0YWxrRW50aXR5UmVsVGFnCVByZVByb2MKK0hpTGluawlsb2d0YWxrQ2xvc2VFbnRpdHlEaXIJUHJlUHJvYwogCi0JSGlMaW5rCWxvZ3RhbGtDbG9zZUVudGl0eURpcglQcmVQcm9jCitIaUxpbmsJbG9ndGFsa0RpcgkJTm9ybWFsCitIaUxpbmsJbG9ndGFsa0RpclRhZwkJUHJlUHJvYwogCi0JSGlMaW5rCWxvZ3RhbGtEaXIJCU5vcm1hbAotCUhpTGluawlsb2d0YWxrRGlyVGFnCQlQcmVQcm9jCitIaUxpbmsJbG9ndGFsa0F0b20JCVN0cmluZworSGlMaW5rCWxvZ3RhbGtTdHJpbmcJCVN0cmluZworSGlMaW5rCWxvZ3RhbGtFc2NhcGVTZXF1ZW5jZQlTcGVjaWFsQ2hhcgogCi0JSGlMaW5rCWxvZ3RhbGtBdG9tCQlTdHJpbmcKLQlIaUxpbmsJbG9ndGFsa1N0cmluZwkJU3RyaW5nCi0JSGlMaW5rCWxvZ3RhbGtFc2NhcGVTZXF1ZW5jZQlTcGVjaWFsQ2hhcgorSGlMaW5rCWxvZ3RhbGtOdW1iZXIJCU51bWJlcgogCi0JSGlMaW5rCWxvZ3RhbGtOdW1iZXIJCU51bWJlcgorSGlMaW5rCWxvZ3RhbGtLZXl3b3JkCQlLZXl3b3JkCiAKLQlIaUxpbmsJbG9ndGFsa0tleXdvcmQJCUtleXdvcmQKK0hpTGluawlsb2d0YWxrQnVpbHRJbgkJS2V5d29yZAorSGlMaW5rCWxvZ3RhbGtCdWlsdEluTWV0aG9kCUtleXdvcmQKIAotCUhpTGluawlsb2d0YWxrQnVpbHRJbgkJS2V5d29yZAotCUhpTGluawlsb2d0YWxrQnVpbHRJbk1ldGhvZAlLZXl3b3JkCitIaUxpbmsJbG9ndGFsa09wZXJhdG9yCQlPcGVyYXRvcgogCi0JSGlMaW5rCWxvZ3RhbGtPcGVyYXRvcgkJT3BlcmF0b3IKK0hpTGluawlsb2d0YWxrRXh0Q2FsbAkJTm9ybWFsCitIaUxpbmsJbG9ndGFsa0V4dENhbGxUYWcJT3BlcmF0b3IKIAotCUhpTGluawlsb2d0YWxrRXh0Q2FsbAkJTm9ybWFsCi0JSGlMaW5rCWxvZ3RhbGtFeHRDYWxsVGFnCU9wZXJhdG9yCitIaUxpbmsJbG9ndGFsa1ZhcmlhYmxlCQlJZGVudGlmaWVyCiAKLQlIaUxpbmsJbG9ndGFsa1ZhcmlhYmxlCQlJZGVudGlmaWVyCi0KLQlkZWxjb21tYW5kIEhpTGluawotCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJsb2d0YWxrIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbG90b3MudmltIGIvcnVudGltZS9zeW50YXgvbG90b3MudmltCmluZGV4IDNjZDgzYzQuLmU2MTdiZGIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2xvdG9zLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9sb3Rvcy52aW0KQEAgLTcsMTEgKzcsOCBAQAogIiBJJ20gbm90IHN1cmUgSSB1bmRlcnN0YW5kIGFsbCBvZiB0aGUgc3ludGF4IGhpZ2hsaWdodCBsYW5ndWFnZSwKICIgYnV0IHRoaXMgZmlsZSBzZWVtcyB0byBkbyB0aGUgam9iIGZvciBzdGFuZGFyZCBMT1RPUy4KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTU2LDI2ICs1MywxOCBAQAogc3luIHN5bmMgbGluZXM9MjUwCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2xvdG9zX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2xvdG9zX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgbG90b3NTdGF0ZW1lbnQJCVN0YXRlbWVudAotICBIaUxpbmsgbG90b3NQcm9jZXNzCQlMYWJlbAotICBIaUxpbmsgbG90b3NPcGVyYXRvcgkJT3BlcmF0b3IKLSAgSGlMaW5rIGxvdG9zU29ydAkJRnVuY3Rpb24KLSAgSGlMaW5rIGxvdG9zVHlwZQkJVHlwZQotICBIaUxpbmsgbG90b3NDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBsb3Rvc0RlbGltaXRlcgkJU3RyaW5nCitIaUxpbmsgbG90b3NTdGF0ZW1lbnQJCVN0YXRlbWVudAorSGlMaW5rIGxvdG9zUHJvY2VzcwkJTGFiZWwKK0hpTGluayBsb3Rvc09wZXJhdG9yCQlPcGVyYXRvcgorSGlMaW5rIGxvdG9zU29ydAkJRnVuY3Rpb24KK0hpTGluayBsb3Rvc1R5cGUJCVR5cGUKK0hpTGluayBsb3Rvc0NvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBsb3Rvc0RlbGltaXRlcgkJU3RyaW5nCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJsb3RvcyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbG91dC52aW0gYi9ydW50aW1lL3N5bnRheC9sb3V0LnZpbQppbmRleCA5YTM0MzI4Li5lN2ExZTE1IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9sb3V0LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9sb3V0LnZpbQpAQCAtMTYsMTEgKzE2LDggQEAKICIgU2VlIHRoZSBkaXNjdXNzaW9uIGF0IGh0dHA6Ly90aHJlYWQuZ21hbmUub3JnL2dtYW5lLmVkaXRvcnMudmltLmRldmVsLzMyMTUxCiAKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLQlzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAJZmluaXNoCiBlbmRpZgogCkBAIC0zNiwxMSArMzMsNyBAQAogCiAiIENoYXJhY3RlcnMgYWxsb3dlZCBpbiBrZXl3b3JkcwogIiBJIGRvbid0IGtub3cgaWYgMTI4LTI1NSBhcmUgYWxsb3dlZCBpbiBBTlMtRk9SSFQKLWlmIHZlcnNpb24gPj0gNjAwCi0Jc2V0bG9jYWwgaXNrZXl3b3JkPUAsNDgtNTcsLixALUAsXywxOTItMjU1Ci1lbHNlCi0Jc2V0IGlza2V5d29yZD1ALDQ4LTU3LC4sQC1ALF8sMTkyLTI1NQotZW5kaWYKK3NldGxvY2FsIGlza2V5d29yZD1ALDQ4LTU3LC4sQC1ALF8sMTkyLTI1NQogCiAiIFNvbWUgc3BlY2lhbCBrZXl3b3Jkcwogc3luIGtleXdvcmQgbG91dFRvZG8gY29udGFpbmVkIFRPRE8gbG91dCBMb3V0IExPVVQKQEAgLTEwNiw0NCArOTksMzYgQEAKIHN5biByZWdpb24gbG91dEhlYWRpbmdzIG1hdGNoZ3JvdXA9bG91dEhlYWRzIHN0YXJ0PSdAXChcKFRpdGxlXClcfFwoQ2FwdGlvblwpXClccyp7JyBtYXRjaGdyb3VwPWxvdXRIZWFkcyBlbmQ9J30nIGNvbnRhaW5zPUFMTEJVVCxsb3V0QnJhY2VFcnJvcgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9sb3V0X3N5bl9pbml0cyIpCi0JaWYgdmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX2xvdXRfc3luX2luaXRzID0gMQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotCWVsc2UKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0JZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0JIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuIENhbiBiZSBvdmVycnJpZGVuIGxhdGVyLgotCUhpTGluayBsb3V0VG9kbyBUb2RvCi0JSGlMaW5rIGxvdXREZWZpbmUgRGVmaW5lCi0JSGlMaW5rIGxvdXRFT21sRGVmIERlZmluZQotCUhpTGluayBsb3V0RnVuY3Rpb24gRnVuY3Rpb24KLQlIaUxpbmsgbG91dEJyYWNlRXJyb3IgRXJyb3IKLQlIaUxpbmsgbG91dE5VTEwgU3BlY2lhbAotCUhpTGluayBsb3V0Q29tbWVudCBDb21tZW50Ci0JSGlMaW5rIGxvdXRTcGVjaWFsIFNwZWNpYWwKLQlIaUxpbmsgbG91dFN5bWJvbHMgQ2hhcmFjdGVyCi0JSGlMaW5rIGxvdXRJbmNsdWRlIEluY2x1ZGUKLQlIaUxpbmsgbG91dEtleXdvcmQgS2V5d29yZAotCUhpTGluayBsb3V0VGFnIFRhZwotCUhpTGluayBsb3V0TWF0aCBOdW1iZXIKKyIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiBDYW4gYmUgb3ZlcnJyaWRlbiBsYXRlci4KK0hpTGluayBsb3V0VG9kbyBUb2RvCitIaUxpbmsgbG91dERlZmluZSBEZWZpbmUKK0hpTGluayBsb3V0RU9tbERlZiBEZWZpbmUKK0hpTGluayBsb3V0RnVuY3Rpb24gRnVuY3Rpb24KK0hpTGluayBsb3V0QnJhY2VFcnJvciBFcnJvcgorSGlMaW5rIGxvdXROVUxMIFNwZWNpYWwKK0hpTGluayBsb3V0Q29tbWVudCBDb21tZW50CitIaUxpbmsgbG91dFNwZWNpYWwgU3BlY2lhbAorSGlMaW5rIGxvdXRTeW1ib2xzIENoYXJhY3RlcgorSGlMaW5rIGxvdXRJbmNsdWRlIEluY2x1ZGUKK0hpTGluayBsb3V0S2V5d29yZCBLZXl3b3JkCitIaUxpbmsgbG91dFRhZyBUYWcKK0hpTGluayBsb3V0TWF0aCBOdW1iZXIKIAotCSIgSGlMaW5rIE5vdCByZWFsbHkgbmVlZGVkIGhlcmUsIGJ1dCBJIHRoaW5rIGl0IGlzIG1vcmUgY29uc2lzdGVudC4KLQlIaUxpbmsgbG91dE1CcmFjZXMgbG91dE1hdGgKLQloaSBsb3V0SXRhbGljIHRlcm09aXRhbGljIGN0ZXJtPWl0YWxpYyBndWk9aXRhbGljCi0JSGlMaW5rIGxvdXRJQnJhY2VzIGxvdXRJdGFsaWMKLQloaSBsb3V0Qm9sZCB0ZXJtPWJvbGQgY3Rlcm09Ym9sZCBndWk9Ym9sZAotCUhpTGluayBsb3V0QkJyYWNlcyBsb3V0Qm9sZAotCWhpIGxvdXRCb2xkSXRhbGljIHRlcm09Ym9sZCxpdGFsaWMgY3Rlcm09Ym9sZCxpdGFsaWMgZ3VpPWJvbGQsaXRhbGljCi0JSGlMaW5rIGxvdXRCSUJyYWNlcyBsb3V0Qm9sZEl0YWxpYwotCWhpIGxvdXRIZWFkaW5ncyB0ZXJtPWJvbGQgY3Rlcm09Ym9sZCBndWlmZz1pbmRpYW5yZWQKLQlIaUxpbmsgbG91dEhlYWRzIGxvdXRIZWFkaW5ncworIiBIaUxpbmsgTm90IHJlYWxseSBuZWVkZWQgaGVyZSwgYnV0IEkgdGhpbmsgaXQgaXMgbW9yZSBjb25zaXN0ZW50LgorSGlMaW5rIGxvdXRNQnJhY2VzIGxvdXRNYXRoCitoaSBsb3V0SXRhbGljIHRlcm09aXRhbGljIGN0ZXJtPWl0YWxpYyBndWk9aXRhbGljCitIaUxpbmsgbG91dElCcmFjZXMgbG91dEl0YWxpYworaGkgbG91dEJvbGQgdGVybT1ib2xkIGN0ZXJtPWJvbGQgZ3VpPWJvbGQKK0hpTGluayBsb3V0QkJyYWNlcyBsb3V0Qm9sZAoraGkgbG91dEJvbGRJdGFsaWMgdGVybT1ib2xkLGl0YWxpYyBjdGVybT1ib2xkLGl0YWxpYyBndWk9Ym9sZCxpdGFsaWMKK0hpTGluayBsb3V0QklCcmFjZXMgbG91dEJvbGRJdGFsaWMKK2hpIGxvdXRIZWFkaW5ncyB0ZXJtPWJvbGQgY3Rlcm09Ym9sZCBndWlmZz1pbmRpYW5yZWQKK0hpTGluayBsb3V0SGVhZHMgbG91dEhlYWRpbmdzCiAKLQlkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImxvdXQiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2xwYy52aW0gYi9ydW50aW1lL3N5bnRheC9scGMudmltCmluZGV4IGU5NDhmM2QuLjQ1YWJhOTIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2xwYy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbHBjLnZpbQpAQCAtOSwxMSArOSw4IEBACiAKICIgTm9kdWxlOiBUaGlzIGlzIHRoZSBzdGFydCBub2R1bGUuIHt7ezEKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTM2MCw5NCArMzU3LDg2IEBACiAiIE5vZHVsZTogSGlnaGxpZ2h0IGxpbmtzIHt7ezEKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbHBjX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2xwY19zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIGxwY01vZGlmaWVyCQlscGNTdG9yYWdlQ2xhc3MKK0hpTGluayBscGNNb2RpZmllcgkJbHBjU3RvcmFnZUNsYXNzCiAKLSAgSGlMaW5rIGxwY1F1b3RlZEZtdAkJbHBjRm9ybWF0Ci0gIEhpTGluayBscGNGb3JtYXQJCWxwY1NwZWNpYWwKLSAgSGlMaW5rIGxwY0NwcFN0cmluZwkJbHBjU3RyaW5nCSIgQ3BwIG1lYW5zCi0JCQkJCQkiIEMgUHJlLVByb2Nlc3NvcgotICBIaUxpbmsgbHBjQ29tbWVudEwJCWxwY0NvbW1lbnQKLSAgSGlMaW5rIGxwY0NvbW1lbnRTdGFydAlscGNDb21tZW50Ci0gIEhpTGluayBscGNVc2VyTGFiZWwJCWxwY0xhYmVsCi0gIEhpTGluayBscGNTcGVjaWFsQ2hhcmFjdGVyCWxwY1NwZWNpYWwKLSAgSGlMaW5rIGxwY09jdGFsCQlscGNQcmVQcm9jCi0gIEhpTGluayBscGNPY3RhbFplcm8JCWxwY1NwZWNpYWwgICIgTFBDIHdpbGwgdHJlYXQgb2N0YWwgbnVtYmVycwotCQkJCQkgICAgIiBhcyBkZWNpbWFscywgcHJvZ3JhbW1lcnMgc2hvdWxkCi0JCQkJCSAgICAiIGJlIGF3YXJlIG9mIHRoYXQuCi0gIEhpTGluayBscGNFZnVuRXJyb3IJCWxwY0Vycm9yCi0gIEhpTGluayBscGNLZXl3ZEVycm9yCQlscGNFcnJvcgotICBIaUxpbmsgbHBjT2N0YWxFcnJvcgkJbHBjRXJyb3IKLSAgSGlMaW5rIGxwY1BhcmVuRXJyb3IJCWxwY0Vycm9yCi0gIEhpTGluayBscGNFcnJJblBhcmVuCQlscGNFcnJvcgotICBIaUxpbmsgbHBjRXJySW5CcmFja2V0CWxwY0Vycm9yCi0gIEhpTGluayBscGNDb21tZW50RXJyb3IJbHBjRXJyb3IKLSAgSGlMaW5rIGxwY0NvbW1lbnRTdGFydEVycm9yCWxwY0Vycm9yCi0gIEhpTGluayBscGNTcGFjZUVycm9yCQlscGNFcnJvcgotICBIaUxpbmsgbHBjU3BlY2lhbEVycm9yCWxwY0Vycm9yCi0gIEhpTGluayBscGNFcnJGdW5jCQlscGNFcnJvcgorSGlMaW5rIGxwY1F1b3RlZEZtdAkJbHBjRm9ybWF0CitIaUxpbmsgbHBjRm9ybWF0CQlscGNTcGVjaWFsCitIaUxpbmsgbHBjQ3BwU3RyaW5nCQlscGNTdHJpbmcJIiBDcHAgbWVhbnMKKwkJCQkJICAgICAgIiBDIFByZS1Qcm9jZXNzb3IKK0hpTGluayBscGNDb21tZW50TAkJbHBjQ29tbWVudAorSGlMaW5rIGxwY0NvbW1lbnRTdGFydAlscGNDb21tZW50CitIaUxpbmsgbHBjVXNlckxhYmVsCQlscGNMYWJlbAorSGlMaW5rIGxwY1NwZWNpYWxDaGFyYWN0ZXIJbHBjU3BlY2lhbAorSGlMaW5rIGxwY09jdGFsCQlscGNQcmVQcm9jCitIaUxpbmsgbHBjT2N0YWxaZXJvCQlscGNTcGVjaWFsICAiIExQQyB3aWxsIHRyZWF0IG9jdGFsIG51bWJlcnMKKwkJCQkJICAiIGFzIGRlY2ltYWxzLCBwcm9ncmFtbWVycyBzaG91bGQKKwkJCQkJICAiIGJlIGF3YXJlIG9mIHRoYXQuCitIaUxpbmsgbHBjRWZ1bkVycm9yCQlscGNFcnJvcgorSGlMaW5rIGxwY0tleXdkRXJyb3IJCWxwY0Vycm9yCitIaUxpbmsgbHBjT2N0YWxFcnJvcgkJbHBjRXJyb3IKK0hpTGluayBscGNQYXJlbkVycm9yCQlscGNFcnJvcgorSGlMaW5rIGxwY0VyckluUGFyZW4JCWxwY0Vycm9yCitIaUxpbmsgbHBjRXJySW5CcmFja2V0CWxwY0Vycm9yCitIaUxpbmsgbHBjQ29tbWVudEVycm9yCWxwY0Vycm9yCitIaUxpbmsgbHBjQ29tbWVudFN0YXJ0RXJyb3IJbHBjRXJyb3IKK0hpTGluayBscGNTcGFjZUVycm9yCQlscGNFcnJvcgorSGlMaW5rIGxwY1NwZWNpYWxFcnJvcglscGNFcnJvcgorSGlMaW5rIGxwY0VyckZ1bmMJCWxwY0Vycm9yCiAKLSAgaWYgZXhpc3RzKCJscGNfcHJlX3YyMiIpCi0gICAgICBIaUxpbmsgbHBjT2xkRWZ1bnMJbHBjX2VmdW5zCi0gICAgICBIaUxpbmsgbHBjTmV3RWZ1bnMJbHBjRXJyb3IKLSAgZWxzZQotICAgICAgSGlMaW5rIGxwY09sZEVmdW5zCWxwY1Jlc2VydmVkCi0gICAgICBIaUxpbmsgbHBjTmV3RWZ1bnMJbHBjX2VmdW5zCi0gIGVuZGlmCi0gIEhpTGluayBscGNfZWZ1bnMJCWxwY0Z1bmN0aW9uCi0KLSAgSGlMaW5rIGxwY1Jlc2VydmVkCQlscGNQcmVQcm9jCi0gIEhpTGluayBscGNUZXh0U3RyaW5nCQlscGNTdHJpbmcgICAiIFRoaXMgc2hvdWxkIGJlIHByZXByb2Nlc3NvcnMsIGJ1dAotICBIaUxpbmsgbHBjQXJyYXlTdHJpbmcJCWxwY1ByZVByb2MgICIgbGV0J3MgbWFrZSBzb21lIGRpZmZlcmVuY2UKLQkJCQkJICAgICIgYmV0d2VlbiB0ZXh0IGFuZCBhcnJheQotCi0gIEhpTGluayBscGNJbmNsdWRlZAkJbHBjU3RyaW5nCi0gIEhpTGluayBscGNDb21tZW50U3RyaW5nCWxwY1N0cmluZwotICBIaUxpbmsgbHBjQ29tbWVudDJTdHJpbmcJbHBjU3RyaW5nCi0gIEhpTGluayBscGNDb21tZW50U2tpcAkJbHBjQ29tbWVudAotICBIaUxpbmsgbHBjQ29tbWVudEZ1bmMJCWxwY0NvbW1lbnQKLQotICBIaUxpbmsgbHBjQ3BwU2tpcAkJbHBjQ3BwT3V0Ci0gIEhpTGluayBscGNDcHBPdXQyCQlscGNDcHBPdXQKLSAgSGlMaW5rIGxwY0NwcE91dAkJbHBjQ29tbWVudAotCi0gICIgU3RhbmRhcmQgdHlwZSBiZWxvdwotICBIaUxpbmsgbHBjQXBwbGllcwkJU3BlY2lhbAotICBIaUxpbmsgbHBjQ2hhcmFjdGVyCQlDaGFyYWN0ZXIKLSAgSGlMaW5rIGxwY0NvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGxwY0NvbmRpdGlvbmFsCQlDb25kaXRpb25hbAotICBIaUxpbmsgbHBjQ29uc3RhbnQJCUNvbnN0YW50Ci0gIEhpTGluayBscGNEZWZpbmUJCU1hY3JvCi0gIEhpTGluayBscGNFcnJvcgkJRXJyb3IKLSAgSGlMaW5rIGxwY0Zsb2F0CQlGbG9hdAotICBIaUxpbmsgbHBjRnVuY3Rpb24JCUZ1bmN0aW9uCi0gIEhpTGluayBscGNJZGVudGlmaWVyCQlJZGVudGlmaWVyCi0gIEhpTGluayBscGNJbmNsdWRlCQlJbmNsdWRlCi0gIEhpTGluayBscGNMYWJlbAkJTGFiZWwKLSAgSGlMaW5rIGxwY051bWJlcgkJTnVtYmVyCi0gIEhpTGluayBscGNPcGVyYXRvcgkJT3BlcmF0b3IKLSAgSGlMaW5rIGxwY1ByZUNvbmRpdAkJUHJlQ29uZGl0Ci0gIEhpTGluayBscGNQcmVQcm9jCQlQcmVQcm9jCi0gIEhpTGluayBscGNSZXBlYXQJCVJlcGVhdAotICBIaUxpbmsgbHBjU3RhdGVtZW50CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGxwY1N0b3JhZ2VDbGFzcwlTdG9yYWdlQ2xhc3MKLSAgSGlMaW5rIGxwY1N0cmluZwkJU3RyaW5nCi0gIEhpTGluayBscGNTdHJ1Y3R1cmUJCVN0cnVjdHVyZQotICBIaUxpbmsgbHBjU3BlY2lhbAkJTGluZU5yCi0gIEhpTGluayBscGNUb2RvCQlUb2RvCi0gIEhpTGluayBscGNUeXBlCQlUeXBlCi0KLSAgZGVsY29tbWFuZCBIaUxpbmsKK2lmIGV4aXN0cygibHBjX3ByZV92MjIiKQorICAgIEhpTGluayBscGNPbGRFZnVucwlscGNfZWZ1bnMKKyAgICBIaUxpbmsgbHBjTmV3RWZ1bnMJbHBjRXJyb3IKK2Vsc2UKKyAgICBIaUxpbmsgbHBjT2xkRWZ1bnMJbHBjUmVzZXJ2ZWQKKyAgICBIaUxpbmsgbHBjTmV3RWZ1bnMJbHBjX2VmdW5zCiBlbmRpZgorSGlMaW5rIGxwY19lZnVucwkJbHBjRnVuY3Rpb24KKworSGlMaW5rIGxwY1Jlc2VydmVkCQlscGNQcmVQcm9jCitIaUxpbmsgbHBjVGV4dFN0cmluZwkJbHBjU3RyaW5nICAgIiBUaGlzIHNob3VsZCBiZSBwcmVwcm9jZXNzb3JzLCBidXQKK0hpTGluayBscGNBcnJheVN0cmluZwkJbHBjUHJlUHJvYyAgIiBsZXQncyBtYWtlIHNvbWUgZGlmZmVyZW5jZQorCQkJCQkgICIgYmV0d2VlbiB0ZXh0IGFuZCBhcnJheQorCitIaUxpbmsgbHBjSW5jbHVkZWQJCWxwY1N0cmluZworSGlMaW5rIGxwY0NvbW1lbnRTdHJpbmcJbHBjU3RyaW5nCitIaUxpbmsgbHBjQ29tbWVudDJTdHJpbmcJbHBjU3RyaW5nCitIaUxpbmsgbHBjQ29tbWVudFNraXAJCWxwY0NvbW1lbnQKK0hpTGluayBscGNDb21tZW50RnVuYwkJbHBjQ29tbWVudAorCitIaUxpbmsgbHBjQ3BwU2tpcAkJbHBjQ3BwT3V0CitIaUxpbmsgbHBjQ3BwT3V0MgkJbHBjQ3BwT3V0CitIaUxpbmsgbHBjQ3BwT3V0CQlscGNDb21tZW50CisKKyIgU3RhbmRhcmQgdHlwZSBiZWxvdworSGlMaW5rIGxwY0FwcGxpZXMJCVNwZWNpYWwKK0hpTGluayBscGNDaGFyYWN0ZXIJCUNoYXJhY3RlcgorSGlMaW5rIGxwY0NvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBscGNDb25kaXRpb25hbAkJQ29uZGl0aW9uYWwKK0hpTGluayBscGNDb25zdGFudAkJQ29uc3RhbnQKK0hpTGluayBscGNEZWZpbmUJCU1hY3JvCitIaUxpbmsgbHBjRXJyb3IJCUVycm9yCitIaUxpbmsgbHBjRmxvYXQJCUZsb2F0CitIaUxpbmsgbHBjRnVuY3Rpb24JCUZ1bmN0aW9uCitIaUxpbmsgbHBjSWRlbnRpZmllcgkJSWRlbnRpZmllcgorSGlMaW5rIGxwY0luY2x1ZGUJCUluY2x1ZGUKK0hpTGluayBscGNMYWJlbAkJTGFiZWwKK0hpTGluayBscGNOdW1iZXIJCU51bWJlcgorSGlMaW5rIGxwY09wZXJhdG9yCQlPcGVyYXRvcgorSGlMaW5rIGxwY1ByZUNvbmRpdAkJUHJlQ29uZGl0CitIaUxpbmsgbHBjUHJlUHJvYwkJUHJlUHJvYworSGlMaW5rIGxwY1JlcGVhdAkJUmVwZWF0CitIaUxpbmsgbHBjU3RhdGVtZW50CQlTdGF0ZW1lbnQKK0hpTGluayBscGNTdG9yYWdlQ2xhc3MJU3RvcmFnZUNsYXNzCitIaUxpbmsgbHBjU3RyaW5nCQlTdHJpbmcKK0hpTGluayBscGNTdHJ1Y3R1cmUJCVN0cnVjdHVyZQorSGlMaW5rIGxwY1NwZWNpYWwJCUxpbmVOcgorSGlMaW5rIGxwY1RvZG8JCVRvZG8KK0hpTGluayBscGNUeXBlCQlUeXBlCisKK2RlbGNvbW1hbmQgSGlMaW5rCiAKICIgTm9kdWxlOiBUaGlzIGlzIHRoZSBlbmQgbm9kdWxlLiB7e3sxCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2xwcm9sb2cudmltIGIvcnVudGltZS9zeW50YXgvbHByb2xvZy52aW0KaW5kZXggMDg2YzAwZi4uMTI1Njc1OCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbHByb2xvZy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbHByb2xvZy52aW0KQEAgLTcsMTEgKzcsOCBAQAogIiAgICAgICAgICAgICAgIDIwMDEgQXByIDI2IC0gVXBncmFkZWQgZm9yIG5ldyBWaW0gdmVyc2lvbgogIiAgICAgICAgICAgICAgIDIwMDAgSnVuICA1IC0gSW5pdGlhbCByZWxlYXNlCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC05Niw0MSArOTMsMzMgQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9scHJvbG9nX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2xwcm9sb2dfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBscHJvbG9nQ29tbWVudCAgICAgQ29tbWVudAotICBIaUxpbmsgbHByb2xvZ1RvZG8JICAgIFRvZG8KK0hpTGluayBscHJvbG9nQ29tbWVudCAgICAgQ29tbWVudAorSGlMaW5rIGxwcm9sb2dUb2RvCSAgICBUb2RvCiAKLSAgSGlMaW5rIGxwcm9sb2dLZXl3b3JkICAgICBLZXl3b3JkCi0gIEhpTGluayBscHJvbG9nU3BlY2lhbCAgICAgU3BlY2lhbAotICBIaUxpbmsgbHByb2xvZ09wZXJhdG9yICAgIE9wZXJhdG9yCi0gIEhpTGluayBscHJvbG9nSWRlbnRpZmllciAgTm9ybWFsCitIaUxpbmsgbHByb2xvZ0tleXdvcmQgICAgIEtleXdvcmQKK0hpTGluayBscHJvbG9nU3BlY2lhbCAgICAgU3BlY2lhbAorSGlMaW5rIGxwcm9sb2dPcGVyYXRvciAgICBPcGVyYXRvcgorSGlMaW5rIGxwcm9sb2dJZGVudGlmaWVyICBOb3JtYWwKIAotICBIaUxpbmsgbHByb2xvZ0ludGVnZXIgICAgIE51bWJlcgotICBIaUxpbmsgbHByb2xvZ1JlYWwJICAgIE51bWJlcgotICBIaUxpbmsgbHByb2xvZ1N0cmluZwkgICAgU3RyaW5nCitIaUxpbmsgbHByb2xvZ0ludGVnZXIgICAgIE51bWJlcgorSGlMaW5rIGxwcm9sb2dSZWFsCSAgICBOdW1iZXIKK0hpTGluayBscHJvbG9nU3RyaW5nCSAgICBTdHJpbmcKIAotICBIaUxpbmsgbHByb2xvZ0NvbW1lbnRFcnIgIEVycm9yCi0gIEhpTGluayBscHJvbG9nQnJhY2tFcnIgICAgRXJyb3IKLSAgSGlMaW5rIGxwcm9sb2dQYXJlbkVyciAgICBFcnJvcgorSGlMaW5rIGxwcm9sb2dDb21tZW50RXJyICBFcnJvcgorSGlMaW5rIGxwcm9sb2dCcmFja0VyciAgICBFcnJvcgorSGlMaW5rIGxwcm9sb2dQYXJlbkVyciAgICBFcnJvcgogCi0gIEhpTGluayBscHJvbG9nTW9kdWxlTmFtZSAgU3BlY2lhbAotICBIaUxpbmsgbHByb2xvZ1R5cGVOYW1lICAgIElkZW50aWZpZXIKK0hpTGluayBscHJvbG9nTW9kdWxlTmFtZSAgU3BlY2lhbAorSGlMaW5rIGxwcm9sb2dUeXBlTmFtZSAgICBJZGVudGlmaWVyCiAKLSAgSGlMaW5rIGxwcm9sb2dWYXJpYWJsZSAgICBLZXl3b3JkCi0gIEhpTGluayBscHJvbG9nQXRvbQkgICAgTm9ybWFsCi0gIEhpTGluayBscHJvbG9nQ2xhdXNlCSAgICBUeXBlCitIaUxpbmsgbHByb2xvZ1ZhcmlhYmxlICAgIEtleXdvcmQKK0hpTGluayBscHJvbG9nQXRvbQkgICAgTm9ybWFsCitIaUxpbmsgbHByb2xvZ0NsYXVzZQkgICAgVHlwZQogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibHByb2xvZyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbHNjcmlwdC52aW0gYi9ydW50aW1lL3N5bnRheC9sc2NyaXB0LnZpbQppbmRleCA2NDhhMGViLi4yZGJkMzNkIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9sc2NyaXB0LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9sc2NyaXB0LnZpbQpAQCAtOSwxMSArOSw4IEBACiAiIGFuZCBiKSBJJ20gbm90IHNvIGNyYXNoIGhvdCBhdCBMb3R1c1NjcmlwdCBlaXRoZXIuIElmIHlvdSBzZWUgYW55IHByb2JsZW1zCiAiIGZlZWwgZnJlZSB0byBlbWFpbCBtZSB3aXRoIHRoZW0uCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xNzksMzQgKzE3NiwyNiBAQAogc3luIG1hdGNoICAgbHNjcmlwdFR5cGVTcGVjaWZpZXIJIlthLXpBLVowLTldW1wkJSYhI10ibXM9cysxCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2xzY3JpcHRfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbHNjcmlwdF9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgaGkgbHNjcmlwdE5vdGVzVHlwZQl0ZXJtPXVuZGVybGluZSBjdGVybWZnPURhcmtHcmVlbiBndWlmZz1TZWFHcmVlbiBndWk9Ym9sZAoraGkgbHNjcmlwdE5vdGVzVHlwZQl0ZXJtPXVuZGVybGluZSBjdGVybWZnPURhcmtHcmVlbiBndWlmZz1TZWFHcmVlbiBndWk9Ym9sZAogCi0gIEhpTGluayBsc2NyaXB0Tm90ZXNDb25zdAlsc2NyaXB0Tm90ZXNUeXBlCi0gIEhpTGluayBsc2NyaXB0TGluZU51bWJlcglDb21tZW50Ci0gIEhpTGluayBsc2NyaXB0RGF0YXR5cGUJVHlwZQotICBIaUxpbmsgbHNjcmlwdE51bWJlcgkJTnVtYmVyCi0gIEhpTGluayBsc2NyaXB0RXJyb3IJCUVycm9yCi0gIEhpTGluayBsc2NyaXB0U3RhdGVtZW50CVN0YXRlbWVudAotICBIaUxpbmsgbHNjcmlwdFN0cmluZwkJU3RyaW5nCi0gIEhpTGluayBsc2NyaXB0Q29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgbHNjcmlwdFRvZG8JCVRvZG8KLSAgSGlMaW5rIGxzY3JpcHRGdW5jdGlvbglJZGVudGlmaWVyCi0gIEhpTGluayBsc2NyaXB0TWV0aG9kcwkJUHJlUHJvYwotICBIaUxpbmsgbHNjcmlwdEV2ZW50cwkJU3BlY2lhbAotICBIaUxpbmsgbHNjcmlwdFR5cGVTcGVjaWZpZXIJVHlwZQorSGlMaW5rIGxzY3JpcHROb3Rlc0NvbnN0CWxzY3JpcHROb3Rlc1R5cGUKK0hpTGluayBsc2NyaXB0TGluZU51bWJlcglDb21tZW50CitIaUxpbmsgbHNjcmlwdERhdGF0eXBlCVR5cGUKK0hpTGluayBsc2NyaXB0TnVtYmVyCQlOdW1iZXIKK0hpTGluayBsc2NyaXB0RXJyb3IJCUVycm9yCitIaUxpbmsgbHNjcmlwdFN0YXRlbWVudAlTdGF0ZW1lbnQKK0hpTGluayBsc2NyaXB0U3RyaW5nCQlTdHJpbmcKK0hpTGluayBsc2NyaXB0Q29tbWVudAkJQ29tbWVudAorSGlMaW5rIGxzY3JpcHRUb2RvCQlUb2RvCitIaUxpbmsgbHNjcmlwdEZ1bmN0aW9uCUlkZW50aWZpZXIKK0hpTGluayBsc2NyaXB0TWV0aG9kcwkJUHJlUHJvYworSGlMaW5rIGxzY3JpcHRFdmVudHMJCVNwZWNpYWwKK0hpTGluayBsc2NyaXB0VHlwZVNwZWNpZmllcglUeXBlCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJsc2NyaXB0IgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9sc3MudmltIGIvcnVudGltZS9zeW50YXgvbHNzLnZpbQppbmRleCA2NjIwNzA3Li42ZWU3MTdiIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9sc3MudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2xzcy52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglTY290dCBCaWdoYW0gPGRzYkBraWxsZXJidW5uaWVzLm9yZz4KICIgTGFzdCBDaGFuZ2U6CTIwMDQgT2N0IDA2CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC03MCw2NCArNjcsNTcgQEAKIHN5biBtYXRjaCBsc3NDb21tZW50ICIjLiokIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9sc3Nfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbHNzX3N5bnRheF9pbml0cyA9IDEKLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2hpIGRlZiBsaW5rIGxzc0NvbW1lbnQgQ29tbWVudAoraGkgZGVmIGxpbmsgbHNzRWxlbWVudCBJZGVudGlmaWVyCiAKLSAgaGkgZGVmIGxpbmsgbHNzQ29tbWVudCBDb21tZW50Ci0gIGhpIGRlZiBsaW5rIGxzc0VsZW1lbnQgSWRlbnRpZmllcgoraGkgZGVmIGxzc0JvbGQJCXRlcm09Ym9sZCBjdGVybT1ib2xkCitoaSBkZWYgbHNzUmV2ZXJzZQkJdGVybT1yZXZlcnNlIGN0ZXJtPXJldmVyc2UKK2hpIGRlZiBsc3NVbmRlcmxpbmUJCXRlcm09dW5kZXJsaW5lIGN0ZXJtPXVuZGVybGluZQoraGkgZGVmIGxzc1N0YW5kb3V0CQl0ZXJtPXN0YW5kb3V0IGN0ZXJtPXN0YW5kb3V0CiAKLSAgaGkgZGVmIGxzc0JvbGQJCXRlcm09Ym9sZCBjdGVybT1ib2xkCi0gIGhpIGRlZiBsc3NSZXZlcnNlCQl0ZXJtPXJldmVyc2UgY3Rlcm09cmV2ZXJzZQotICBoaSBkZWYgbHNzVW5kZXJsaW5lCQl0ZXJtPXVuZGVybGluZSBjdGVybT11bmRlcmxpbmUKLSAgaGkgZGVmIGxzc1N0YW5kb3V0CQl0ZXJtPXN0YW5kb3V0IGN0ZXJtPXN0YW5kb3V0Ci0KLSAgaGkgZGVmIGxzc1JlZEZnCQljdGVybWZnPXJlZAotICBoaSBkZWYgbHNzQmx1ZUZnCQljdGVybWZnPWJsdWUKLSAgaGkgZGVmIGxzc0dyZWVuRmcJCWN0ZXJtZmc9Z3JlZW4KLSAgaGkgZGVmIGxzc0Jyb3duRmcJCWN0ZXJtZmc9YnJvd24KLSAgaGkgZGVmIGxzc01hZ2VudGFGZwkJY3Rlcm1mZz1tYWdlbnRhCi0gIGhpIGRlZiBsc3NDeWFuRmcJCWN0ZXJtZmc9Y3lhbgotICBoaSBkZWYgbHNzR3JheUZnCQljdGVybWZnPWdyYXkKLSAgaWYgJENPTE9SVEVSTSA9PSAicnh2dCIKLSAgICAiIE9uIHJ4dnQncywgYnJpZ2h0IGNvbG9ycyBhcmUgYWN0aXZhdGVkIGJ5IHNldHRpbmcgdGhlIGJvbGQgYXR0cmlidXRlLgotICAgIGhpIGRlZiBsc3NMaWdodGdyYXlGZwljdGVybWZnPWdyYXkgY3Rlcm09Ym9sZAotICAgIGhpIGRlZiBsc3NCcmlnaHRyZWRGZwljdGVybWZnPXJlZCBjdGVybT1ib2xkCi0gICAgaGkgZGVmIGxzc0JyaWdodGdyZWVuRmcJY3Rlcm1mZz1ncmVlbiBjdGVybT1ib2xkCi0gICAgaGkgZGVmIGxzc1llbGxvd0ZnCQljdGVybWZnPXllbGxvdyBjdGVybT1ib2xkCi0gICAgaGkgZGVmIGxzc0JyaWdodGJsdWVGZwljdGVybWZnPWJsdWUgY3Rlcm09Ym9sZAotICAgIGhpIGRlZiBsc3NCcmlnaHRtYWdlbnRhRmcJY3Rlcm1mZz1tYWdlbnRhIGN0ZXJtPWJvbGQKLSAgICBoaSBkZWYgbHNzQnJpZ2h0Y3lhbkZnCWN0ZXJtZmc9Y3lhbiBjdGVybT1ib2xkCi0gIGVsc2UKLSAgICBoaSBkZWYgbHNzTGlnaHRncmF5RmcJY3Rlcm1mZz1saWdodGdyYXkKLSAgICBoaSBkZWYgbHNzQnJpZ2h0cmVkRmcJY3Rlcm1mZz1saWdodHJlZAotICAgIGhpIGRlZiBsc3NCcmlnaHRncmVlbkZnCWN0ZXJtZmc9bGlnaHRncmVlbgotICAgIGhpIGRlZiBsc3NZZWxsb3dGZwkJY3Rlcm1mZz15ZWxsb3cKLSAgICBoaSBkZWYgbHNzQnJpZ2h0Ymx1ZUZnCWN0ZXJtZmc9bGlnaHRibHVlCi0gICAgaGkgZGVmIGxzc0JyaWdodG1hZ2VudGFGZwljdGVybWZnPWxpZ2h0bWFnZW50YQotICAgIGhpIGRlZiBsc3NCcmlnaHRjeWFuRmcJY3Rlcm1mZz1saWdodGN5YW4KLSAgZW5kaWYKLQotICBoaSBkZWYgbHNzUmVkQmcJCWN0ZXJtYmc9cmVkCi0gIGhpIGRlZiBsc3NCbHVlQmcJCWN0ZXJtYmc9Ymx1ZQotICBoaSBkZWYgbHNzR3JlZW5CZwkJY3Rlcm1iZz1ncmVlbgotICBoaSBkZWYgbHNzQnJvd25CZwkJY3Rlcm1iZz1icm93bgotICBoaSBkZWYgbHNzTWFnZW50YUJnCQljdGVybWJnPW1hZ2VudGEKLSAgaGkgZGVmIGxzc0N5YW5CZwkJY3Rlcm1iZz1jeWFuCi0gIGhpIGRlZiBsc3NMaWdodGdyYXlCZwkJY3Rlcm1iZz1saWdodGdyYXkKLSAgaGkgZGVmIGxzc0dyYXlCZwkJY3Rlcm1iZz1ncmF5Ci0gIGhpIGRlZiBsc3NCcmlnaHRyZWRCZwkJY3Rlcm1iZz1saWdodHJlZAotICBoaSBkZWYgbHNzQnJpZ2h0Z3JlZW5CZwljdGVybWJnPWxpZ2h0Z3JlZW4KLSAgaGkgZGVmIGxzc1llbGxvd0JnCQljdGVybWJnPXllbGxvdwotICBoaSBkZWYgbHNzQnJpZ2h0Ymx1ZUJnCWN0ZXJtYmc9bGlnaHRibHVlCi0gIGhpIGRlZiBsc3NCcmlnaHRtYWdlbnRhQmcJY3Rlcm1iZz1saWdodG1hZ2VudGEKLSAgaGkgZGVmIGxzc0JyaWdodGN5YW5CZwljdGVybWJnPWxpZ2h0Y3lhbgotICBoaSBkZWYgbHNzV2hpdGVCZwkJY3Rlcm1iZz13aGl0ZSBjdGVybWZnPWJsYWNrCitoaSBkZWYgbHNzUmVkRmcJCWN0ZXJtZmc9cmVkCitoaSBkZWYgbHNzQmx1ZUZnCQljdGVybWZnPWJsdWUKK2hpIGRlZiBsc3NHcmVlbkZnCQljdGVybWZnPWdyZWVuCitoaSBkZWYgbHNzQnJvd25GZwkJY3Rlcm1mZz1icm93bgoraGkgZGVmIGxzc01hZ2VudGFGZwkJY3Rlcm1mZz1tYWdlbnRhCitoaSBkZWYgbHNzQ3lhbkZnCQljdGVybWZnPWN5YW4KK2hpIGRlZiBsc3NHcmF5RmcJCWN0ZXJtZmc9Z3JheQoraWYgJENPTE9SVEVSTSA9PSAicnh2dCIKKyAgIiBPbiByeHZ0J3MsIGJyaWdodCBjb2xvcnMgYXJlIGFjdGl2YXRlZCBieSBzZXR0aW5nIHRoZSBib2xkIGF0dHJpYnV0ZS4KKyAgaGkgZGVmIGxzc0xpZ2h0Z3JheUZnCWN0ZXJtZmc9Z3JheSBjdGVybT1ib2xkCisgIGhpIGRlZiBsc3NCcmlnaHRyZWRGZwljdGVybWZnPXJlZCBjdGVybT1ib2xkCisgIGhpIGRlZiBsc3NCcmlnaHRncmVlbkZnCWN0ZXJtZmc9Z3JlZW4gY3Rlcm09Ym9sZAorICBoaSBkZWYgbHNzWWVsbG93RmcJCWN0ZXJtZmc9eWVsbG93IGN0ZXJtPWJvbGQKKyAgaGkgZGVmIGxzc0JyaWdodGJsdWVGZwljdGVybWZnPWJsdWUgY3Rlcm09Ym9sZAorICBoaSBkZWYgbHNzQnJpZ2h0bWFnZW50YUZnCWN0ZXJtZmc9bWFnZW50YSBjdGVybT1ib2xkCisgIGhpIGRlZiBsc3NCcmlnaHRjeWFuRmcJY3Rlcm1mZz1jeWFuIGN0ZXJtPWJvbGQKK2Vsc2UKKyAgaGkgZGVmIGxzc0xpZ2h0Z3JheUZnCWN0ZXJtZmc9bGlnaHRncmF5CisgIGhpIGRlZiBsc3NCcmlnaHRyZWRGZwljdGVybWZnPWxpZ2h0cmVkCisgIGhpIGRlZiBsc3NCcmlnaHRncmVlbkZnCWN0ZXJtZmc9bGlnaHRncmVlbgorICBoaSBkZWYgbHNzWWVsbG93RmcJCWN0ZXJtZmc9eWVsbG93CisgIGhpIGRlZiBsc3NCcmlnaHRibHVlRmcJY3Rlcm1mZz1saWdodGJsdWUKKyAgaGkgZGVmIGxzc0JyaWdodG1hZ2VudGFGZwljdGVybWZnPWxpZ2h0bWFnZW50YQorICBoaSBkZWYgbHNzQnJpZ2h0Y3lhbkZnCWN0ZXJtZmc9bGlnaHRjeWFuCiBlbmRpZgogCitoaSBkZWYgbHNzUmVkQmcJCWN0ZXJtYmc9cmVkCitoaSBkZWYgbHNzQmx1ZUJnCQljdGVybWJnPWJsdWUKK2hpIGRlZiBsc3NHcmVlbkJnCQljdGVybWJnPWdyZWVuCitoaSBkZWYgbHNzQnJvd25CZwkJY3Rlcm1iZz1icm93bgoraGkgZGVmIGxzc01hZ2VudGFCZwkJY3Rlcm1iZz1tYWdlbnRhCitoaSBkZWYgbHNzQ3lhbkJnCQljdGVybWJnPWN5YW4KK2hpIGRlZiBsc3NMaWdodGdyYXlCZwkJY3Rlcm1iZz1saWdodGdyYXkKK2hpIGRlZiBsc3NHcmF5QmcJCWN0ZXJtYmc9Z3JheQoraGkgZGVmIGxzc0JyaWdodHJlZEJnCQljdGVybWJnPWxpZ2h0cmVkCitoaSBkZWYgbHNzQnJpZ2h0Z3JlZW5CZwljdGVybWJnPWxpZ2h0Z3JlZW4KK2hpIGRlZiBsc3NZZWxsb3dCZwkJY3Rlcm1iZz15ZWxsb3cKK2hpIGRlZiBsc3NCcmlnaHRibHVlQmcJY3Rlcm1iZz1saWdodGJsdWUKK2hpIGRlZiBsc3NCcmlnaHRtYWdlbnRhQmcJY3Rlcm1iZz1saWdodG1hZ2VudGEKK2hpIGRlZiBsc3NCcmlnaHRjeWFuQmcJY3Rlcm1iZz1saWdodGN5YW4KK2hpIGRlZiBsc3NXaGl0ZUJnCQljdGVybWJnPXdoaXRlIGN0ZXJtZmc9YmxhY2sKKwogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibHNzIgogCiAiIHZpbTogdHM9OApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbHVhLnZpbSBiL3J1bnRpbWUvc3ludGF4L2x1YS52aW0KaW5kZXggM2ZmODBiMS4uNWVmNzcxYiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbHVhLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9sdWEudmltCkBAIC03LDExICs3LDggQEAKICIJCWx1YV9zdWJ2ZXJzaW9uID0gMCAoNC4wLCA1LjApIG9yIDEgKDUuMSkgb3IgMiAoNS4yKQogIgkJZGVmYXVsdCA1LjIKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTMyNSw0MCArMzIyLDMyIEBACiBlbmRpZgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9sdWFfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbHVhX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgbHVhU3RhdGVtZW50CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIGx1YVJlcGVhdAkJUmVwZWF0Ci0gIEhpTGluayBsdWFGb3IJCQlSZXBlYXQKLSAgSGlMaW5rIGx1YVN0cmluZwkJU3RyaW5nCi0gIEhpTGluayBsdWFTdHJpbmcyCQlTdHJpbmcKLSAgSGlMaW5rIGx1YU51bWJlcgkJTnVtYmVyCi0gIEhpTGluayBsdWFPcGVyYXRvcgkJT3BlcmF0b3IKLSAgSGlMaW5rIGx1YUluCQkJT3BlcmF0b3IKLSAgSGlMaW5rIGx1YUNvbnN0YW50CQlDb25zdGFudAotICBIaUxpbmsgbHVhQ29uZAkJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIGx1YUVsc2UJCUNvbmRpdGlvbmFsCi0gIEhpTGluayBsdWFGdW5jdGlvbgkJRnVuY3Rpb24KLSAgSGlMaW5rIGx1YUNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIGx1YVRvZG8JCVRvZG8KLSAgSGlMaW5rIGx1YVRhYmxlCQlTdHJ1Y3R1cmUKLSAgSGlMaW5rIGx1YUVycm9yCQlFcnJvcgotICBIaUxpbmsgbHVhUGFyZW5FcnJvcgkJRXJyb3IKLSAgSGlMaW5rIGx1YUJyYWNlRXJyb3IJCUVycm9yCi0gIEhpTGluayBsdWFTcGVjaWFsCQlTcGVjaWFsQ2hhcgotICBIaUxpbmsgbHVhRnVuYwkJSWRlbnRpZmllcgotICBIaUxpbmsgbHVhTGFiZWwJCUxhYmVsCitIaUxpbmsgbHVhU3RhdGVtZW50CQlTdGF0ZW1lbnQKK0hpTGluayBsdWFSZXBlYXQJCVJlcGVhdAorSGlMaW5rIGx1YUZvcgkJCVJlcGVhdAorSGlMaW5rIGx1YVN0cmluZwkJU3RyaW5nCitIaUxpbmsgbHVhU3RyaW5nMgkJU3RyaW5nCitIaUxpbmsgbHVhTnVtYmVyCQlOdW1iZXIKK0hpTGluayBsdWFPcGVyYXRvcgkJT3BlcmF0b3IKK0hpTGluayBsdWFJbgkJCU9wZXJhdG9yCitIaUxpbmsgbHVhQ29uc3RhbnQJCUNvbnN0YW50CitIaUxpbmsgbHVhQ29uZAkJQ29uZGl0aW9uYWwKK0hpTGluayBsdWFFbHNlCQlDb25kaXRpb25hbAorSGlMaW5rIGx1YUZ1bmN0aW9uCQlGdW5jdGlvbgorSGlMaW5rIGx1YUNvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBsdWFUb2RvCQlUb2RvCitIaUxpbmsgbHVhVGFibGUJCVN0cnVjdHVyZQorSGlMaW5rIGx1YUVycm9yCQlFcnJvcgorSGlMaW5rIGx1YVBhcmVuRXJyb3IJCUVycm9yCitIaUxpbmsgbHVhQnJhY2VFcnJvcgkJRXJyb3IKK0hpTGluayBsdWFTcGVjaWFsCQlTcGVjaWFsQ2hhcgorSGlMaW5rIGx1YUZ1bmMJCUlkZW50aWZpZXIKK0hpTGluayBsdWFMYWJlbAkJTGFiZWwKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImx1YSIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbTQudmltIGIvcnVudGltZS9zeW50YXgvbTQudmltCmluZGV4IGJhN2EyOTQuLjgzMjU0MDUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L200LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tNC52aW0KQEAgLTgsMTUgKzgsMTIgQEAKICIgY2FwaXRhbCBsZXR0ZXJzIGFuZCBoYXZlIGF0IGxlYXN0IG9uZSBhcmd1bWVudCAoaS5lLiB0aGUgJygnCiAiIG11c3QgYmUgdGhlcmUpLiBMZXQgbWUga25vdyBpZiB0aGlzIGlzIGEgcHJvYmxlbS4KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCiBpZiAhZXhpc3RzKCJtYWluX3N5bnRheCIpCi0gIGlmIHZlcnNpb24gPCA2MDAKLSAgICBzeW50YXggY2xlYXIKLSAgZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCi0gIGZpbmlzaAotZW5kaWYKLSIgd2UgZGVmaW5lIGl0IGhlcmUgc28gdGhhdCBpbmNsdWRlZCBmaWxlcyBjYW4gdGVzdCBmb3IgaXQKKyAgaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKwlmaW5pc2gKKyAgZW5kaWYKKyAgIiB3ZSBkZWZpbmUgaXQgaGVyZSBzbyB0aGF0IGluY2x1ZGVkIGZpbGVzIGNhbiB0ZXN0IGZvciBpdAogICBsZXQgbWFpbl9zeW50YXg9J200JwogZW5kaWYKIApAQCAtMzksMzAgKzM2LDIyIEBACiBzeW4gY2x1c3RlciBtNFRvcCAgICAgY29udGFpbnM9bTRDb21tZW50LG00Q29uc3RhbnRzLG00U3BlY2lhbCxtNFZhcmlhYmxlLG00U3RyaW5nLG00UGFyZW4sbTRDb21tYW5kLG00U3RhdGVtZW50LG00RnVuY3Rpb24KIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbTRfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbTRfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKLSAgSGlMaW5rIG00RGVsaW1pdGVyIERlbGltaXRlcgotICBIaUxpbmsgbTRDb21tZW50ICAgQ29tbWVudAotICBIaUxpbmsgbTRGdW5jdGlvbiAgRnVuY3Rpb24KLSAgSGlMaW5rIG00S2V5d29yZCAgIEtleXdvcmQKLSAgSGlMaW5rIG00U3BlY2lhbCAgIFNwZWNpYWwKLSAgSGlMaW5rIG00U3RyaW5nICAgIFN0cmluZwotICBIaUxpbmsgbTRTdGF0ZW1lbnQgU3RhdGVtZW50Ci0gIEhpTGluayBtNFByZXByb2MgICBQcmVQcm9jCi0gIEhpTGluayBtNFR5cGUgICAgICBUeXBlCi0gIEhpTGluayBtNFNwZWNpYWwgICBTcGVjaWFsCi0gIEhpTGluayBtNFZhcmlhYmxlICBTcGVjaWFsCi0gIEhpTGluayBtNENvbnN0YW50cyBDb25zdGFudAotICBIaUxpbmsgbTRCdWlsdGluICAgU3RhdGVtZW50Ci0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CitIaUxpbmsgbTREZWxpbWl0ZXIgRGVsaW1pdGVyCitIaUxpbmsgbTRDb21tZW50ICAgQ29tbWVudAorSGlMaW5rIG00RnVuY3Rpb24gIEZ1bmN0aW9uCitIaUxpbmsgbTRLZXl3b3JkICAgS2V5d29yZAorSGlMaW5rIG00U3BlY2lhbCAgIFNwZWNpYWwKK0hpTGluayBtNFN0cmluZyAgICBTdHJpbmcKK0hpTGluayBtNFN0YXRlbWVudCBTdGF0ZW1lbnQKK0hpTGluayBtNFByZXByb2MgICBQcmVQcm9jCitIaUxpbmsgbTRUeXBlICAgICAgVHlwZQorSGlMaW5rIG00U3BlY2lhbCAgIFNwZWNpYWwKK0hpTGluayBtNFZhcmlhYmxlICBTcGVjaWFsCitIaUxpbmsgbTRDb25zdGFudHMgQ29uc3RhbnQKK0hpTGluayBtNEJ1aWx0aW4gICBTdGF0ZW1lbnQKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm00IgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9tYWtlLnZpbSBiL3J1bnRpbWUvc3ludGF4L21ha2UudmltCmluZGV4IDM1YjA5MzQuLmYwMjJhNGUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L21ha2UudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L21ha2UudmltCkBAIC00LDExICs0LDggQEAKICIgVVJMOgkJaHR0cDovL3d3dy5mbGVpbmVyLmNvbS92aW0vc3ludGF4L21ha2UudmltCiAiIExhc3QgQ2hhbmdlOgkyMDE1IEZlYiAyOAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTAxLDQwICs5OCwzMiBAQAogc3luIHN5bmMgbWF0Y2ggbWFrZUNvbW1hbmRTeW5jIGdyb3VwdGhlcmUgbWFrZUNvbW1hbmRzICJeW0EtWmEtejAtOV8uLyQoKSUtXVtBLVphLXowLTlfLi9cdCAkKCklLV0qOlx7MSwyfVxzKiQiCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX21ha2Vfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbWFrZV9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIG1ha2VOZXh0TGluZQkJbWFrZVNwZWNpYWwKLSAgSGlMaW5rIG1ha2VDbWROZXh0TGluZQltYWtlU3BlY2lhbAotICBIaUxpbmsgbWFrZVNwZWNUYXJnZXQJCVN0YXRlbWVudAotICBpZiAhZXhpc3RzKCJtYWtlX25vX2NvbW1hbmRzIikKLSAgICBIaUxpbmsgbWFrZUNvbW1hbmRzCQlOdW1iZXIKLSAgZW5kaWYKLSAgSGlMaW5rIG1ha2VJbXBsaWNpdAkJRnVuY3Rpb24KLSAgSGlMaW5rIG1ha2VUYXJnZXQJCUZ1bmN0aW9uCi0gIEhpTGluayBtYWtlSW5jbHVkZQkJSW5jbHVkZQotICBIaUxpbmsgbWFrZVByZUNvbmRpdAkJUHJlQ29uZGl0Ci0gIEhpTGluayBtYWtlU3RhdGVtZW50CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIG1ha2VJZGVudAkJSWRlbnRpZmllcgotICBIaUxpbmsgbWFrZVNwZWNpYWwJCVNwZWNpYWwKLSAgSGlMaW5rIG1ha2VDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBtYWtlRFN0cmluZwkJU3RyaW5nCi0gIEhpTGluayBtYWtlU1N0cmluZwkJU3RyaW5nCi0gIEhpTGluayBtYWtlQlN0cmluZwkJRnVuY3Rpb24KLSAgSGlMaW5rIG1ha2VFcnJvcgkJRXJyb3IKLSAgSGlMaW5rIG1ha2VUb2RvCQlUb2RvCi0gIEhpTGluayBtYWtlRGVmaW5lCQlEZWZpbmUKLSAgSGlMaW5rIG1ha2VDb21tYW5kRXJyb3IJRXJyb3IKLSAgSGlMaW5rIG1ha2VDb25maWcJCVByZUNvbmRpdAotICBkZWxjb21tYW5kIEhpTGluaworSGlMaW5rIG1ha2VOZXh0TGluZQkJbWFrZVNwZWNpYWwKK0hpTGluayBtYWtlQ21kTmV4dExpbmUJbWFrZVNwZWNpYWwKK0hpTGluayBtYWtlU3BlY1RhcmdldAkJU3RhdGVtZW50CitpZiAhZXhpc3RzKCJtYWtlX25vX2NvbW1hbmRzIikKK0hpTGluayBtYWtlQ29tbWFuZHMJCU51bWJlcgogZW5kaWYKK0hpTGluayBtYWtlSW1wbGljaXQJCUZ1bmN0aW9uCitIaUxpbmsgbWFrZVRhcmdldAkJRnVuY3Rpb24KK0hpTGluayBtYWtlSW5jbHVkZQkJSW5jbHVkZQorSGlMaW5rIG1ha2VQcmVDb25kaXQJCVByZUNvbmRpdAorSGlMaW5rIG1ha2VTdGF0ZW1lbnQJCVN0YXRlbWVudAorSGlMaW5rIG1ha2VJZGVudAkJSWRlbnRpZmllcgorSGlMaW5rIG1ha2VTcGVjaWFsCQlTcGVjaWFsCitIaUxpbmsgbWFrZUNvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBtYWtlRFN0cmluZwkJU3RyaW5nCitIaUxpbmsgbWFrZVNTdHJpbmcJCVN0cmluZworSGlMaW5rIG1ha2VCU3RyaW5nCQlGdW5jdGlvbgorSGlMaW5rIG1ha2VFcnJvcgkJRXJyb3IKK0hpTGluayBtYWtlVG9kbwkJVG9kbworSGlMaW5rIG1ha2VEZWZpbmUJCURlZmluZQorSGlMaW5rIG1ha2VDb21tYW5kRXJyb3IJRXJyb3IKK0hpTGluayBtYWtlQ29uZmlnCQlQcmVDb25kaXQKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm1ha2UiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L21hbi52aW0gYi9ydW50aW1lL3N5bnRheC9tYW4udmltCmluZGV4IGZiYzE4NDcuLmQ2Yzg3NjQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L21hbi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbWFuLnZpbQpAQCAtOSwyMCArOSwxMyBAQAogIgkqIG1hblN1YkhlYWRpbmcKICIJKiBtYW5TeW5vcHNpcyAob25seSBmb3Igc2VjdGlvbnMgMiBhbmQgMykKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKICIgR2V0IHRoZSBDVFJMLUggc3ludGF4IHRvIGhhbmRsZSBiYWNrc3BhY2VkIHRleHQKLWlmIHZlcnNpb24gPj0gNjAwCi0gIHJ1bnRpbWUhIHN5bnRheC9jdHJsaC52aW0KLWVsc2UKLSAgc291cmNlIDxzZmlsZT46cDpoL2N0cmxoLnZpbQotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9jdHJsaC52aW0KIAogc3luIGNhc2UgaWdub3JlCiBzeW4gbWF0Y2ggIG1hblJlZmVyZW5jZSAgICAgICAiXGZcKyhbMS05XVthLXpdXD0pIgpAQCAtNDEsMjYgKzM0LDE4IEBACiAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbWFuX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX21hbl9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIG1hblRpdGxlCSAgICBUaXRsZQotICBIaUxpbmsgbWFuU2VjdGlvbkhlYWRpbmcgIFN0YXRlbWVudAotICBIaUxpbmsgbWFuT3B0aW9uRGVzYwkgICAgQ29uc3RhbnQKLSAgSGlMaW5rIG1hbkxvbmdPcHRpb25EZXNjICBDb25zdGFudAotICBIaUxpbmsgbWFuUmVmZXJlbmNlCSAgICBQcmVQcm9jCi0gIEhpTGluayBtYW5TdWJIZWFkaW5nICAgICAgRnVuY3Rpb24KLSAgSGlMaW5rIG1hbkNGdW5jRGVmaW5pdGlvbiBGdW5jdGlvbgorSGlMaW5rIG1hblRpdGxlCSAgICBUaXRsZQorSGlMaW5rIG1hblNlY3Rpb25IZWFkaW5nICBTdGF0ZW1lbnQKK0hpTGluayBtYW5PcHRpb25EZXNjCSAgICBDb25zdGFudAorSGlMaW5rIG1hbkxvbmdPcHRpb25EZXNjICBDb25zdGFudAorSGlMaW5rIG1hblJlZmVyZW5jZQkgICAgUHJlUHJvYworSGlMaW5rIG1hblN1YkhlYWRpbmcgICAgICBGdW5jdGlvbgorSGlMaW5rIG1hbkNGdW5jRGVmaW5pdGlvbiBGdW5jdGlvbgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibWFuIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9tYXBsZS52aW0gYi9ydW50aW1lL3N5bnRheC9tYXBsZS52aW0KaW5kZXggNzdiMTUwNy4uYWQ5NDA1MyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbWFwbGUudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L21hcGxlLnZpbQpAQCAtMjEsMTEgKzIxLDggQEAKICIgYnV0IG9ubHkgdGhlIGNvbnRlbnRzIG9mIHBhY2thZ2VzIG9mIE1hcGxlIFYgUmVsZWFzZSA0LCBhbmQgdGhlIHRvcC1sZXZlbAogIiByb3V0aW5lcyBvZiBSZWxlYXNlIDQuICA8SmFjcXVlcyBDYXJldHRlIC0gY2FyZXR0ZUBtY21hc3Rlci5jYT4KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTU1MSw4MiArNTQ4LDc0IEBACiAiID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogCiAiIEhpZ2hsaWdodGluZzogRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4ge3t7MQotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbWFwbGV2X3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX21hcGxldl9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgIiBNYXBsZS0+TWFwbGUgTGlua3Mge3t7MgotICBIaUxpbmsgbXZCcmFjZUVycm9yCW12RXJyb3IKLSAgSGlMaW5rIG12Q3VybHlFcnJvcgltdkVycm9yCi0gIEhpTGluayBtdkRlYnVnCQltdlRvZG8KLSAgSGlMaW5rIG12UGFyZW5FcnJvcgltdkVycm9yCi0gIEhpTGluayBtdlBrZ19ERXRvb2xzCW12UGtnRnVuYwotICBIaUxpbmsgbXZQa2dfR2Fsb2lzCW12UGtnRnVuYwotICBIaUxpbmsgbXZQa2dfR2F1c3NJbnQJbXZQa2dGdW5jCi0gIEhpTGluayBtdlBrZ19MUkV0b29scwltdlBrZ0Z1bmMKLSAgSGlMaW5rIG12UGtnX2NvbWJpbmF0CW12UGtnRnVuYwotICBIaUxpbmsgbXZQa2dfY29tYnN0cnVjdAltdlBrZ0Z1bmMKLSAgSGlMaW5rIG12UGtnX2RpZmZvcm1zCW12UGtnRnVuYwotICBIaUxpbmsgbXZQa2dfZmluYW5jZQltdlBrZ0Z1bmMKLSAgSGlMaW5rIG12UGtnX2dlbmZ1bmMJbXZQa2dGdW5jCi0gIEhpTGluayBtdlBrZ19nZW9tZXRyeQltdlBrZ0Z1bmMKLSAgSGlMaW5rIG12UGtnX2dyb2JuZXIJbXZQa2dGdW5jCi0gIEhpTGluayBtdlBrZ19ncm91cAltdlBrZ0Z1bmMKLSAgSGlMaW5rIG12UGtnX2ludHRyYW5zCW12UGtnRnVuYwotICBIaUxpbmsgbXZQa2dfbGllc3ltbQltdlBrZ0Z1bmMKLSAgSGlMaW5rIG12UGtnX2xpbmFsZwltdlBrZ0Z1bmMKLSAgSGlMaW5rIG12UGtnX2xvZ2ljCW12UGtnRnVuYwotICBIaUxpbmsgbXZQa2dfbmV0d29ya3MJbXZQa2dGdW5jCi0gIEhpTGluayBtdlBrZ19udW1hcHByb3gJbXZQa2dGdW5jCi0gIEhpTGluayBtdlBrZ19udW10aGVvcnkJbXZQa2dGdW5jCi0gIEhpTGluayBtdlBrZ19vcnRob3BvbHkJbXZQa2dGdW5jCi0gIEhpTGluayBtdlBrZ19wYWRpYwltdlBrZ0Z1bmMKLSAgSGlMaW5rIG12UGtnX3Bsb3RzCW12UGtnRnVuYwotICBIaUxpbmsgbXZQa2dfcGxvdHRvb2xzCW12UGtnRnVuYwotICBIaUxpbmsgbXZQa2dfcG93c2VyaWVzCW12UGtnRnVuYwotICBIaUxpbmsgbXZQa2dfcHJvY2VzcwltdlBrZ0Z1bmMKLSAgSGlMaW5rIG12UGtnX3NpbXBsZXgJbXZQa2dGdW5jCi0gIEhpTGluayBtdlBrZ19zdGF0cwltdlBrZ0Z1bmMKLSAgSGlMaW5rIG12UGtnX3N0dWRlbnQJbXZQa2dGdW5jCi0gIEhpTGluayBtdlBrZ19zdW10b29scwltdlBrZ0Z1bmMKLSAgSGlMaW5rIG12UGtnX3RlbnNvcgltdlBrZ0Z1bmMKLSAgSGlMaW5rIG12UGtnX3RvdG9yZGVyCW12UGtnRnVuYwotICBIaUxpbmsgbXZSYW5nZQkJbXZPcGVyCi0gIEhpTGluayBtdlNlbWlFcnJvcgltdkVycm9yCi0gIEhpTGluayBtdkRlbGltCQlEZWxpbWl0ZXIKKyIgTWFwbGUtPk1hcGxlIExpbmtzIHt7ezIKK0hpTGluayBtdkJyYWNlRXJyb3IJbXZFcnJvcgorSGlMaW5rIG12Q3VybHlFcnJvcgltdkVycm9yCitIaUxpbmsgbXZEZWJ1ZwkJbXZUb2RvCitIaUxpbmsgbXZQYXJlbkVycm9yCW12RXJyb3IKK0hpTGluayBtdlBrZ19ERXRvb2xzCW12UGtnRnVuYworSGlMaW5rIG12UGtnX0dhbG9pcwltdlBrZ0Z1bmMKK0hpTGluayBtdlBrZ19HYXVzc0ludAltdlBrZ0Z1bmMKK0hpTGluayBtdlBrZ19MUkV0b29scwltdlBrZ0Z1bmMKK0hpTGluayBtdlBrZ19jb21iaW5hdAltdlBrZ0Z1bmMKK0hpTGluayBtdlBrZ19jb21ic3RydWN0CW12UGtnRnVuYworSGlMaW5rIG12UGtnX2RpZmZvcm1zCW12UGtnRnVuYworSGlMaW5rIG12UGtnX2ZpbmFuY2UJbXZQa2dGdW5jCitIaUxpbmsgbXZQa2dfZ2VuZnVuYwltdlBrZ0Z1bmMKK0hpTGluayBtdlBrZ19nZW9tZXRyeQltdlBrZ0Z1bmMKK0hpTGluayBtdlBrZ19ncm9ibmVyCW12UGtnRnVuYworSGlMaW5rIG12UGtnX2dyb3VwCW12UGtnRnVuYworSGlMaW5rIG12UGtnX2ludHRyYW5zCW12UGtnRnVuYworSGlMaW5rIG12UGtnX2xpZXN5bW0JbXZQa2dGdW5jCitIaUxpbmsgbXZQa2dfbGluYWxnCW12UGtnRnVuYworSGlMaW5rIG12UGtnX2xvZ2ljCW12UGtnRnVuYworSGlMaW5rIG12UGtnX25ldHdvcmtzCW12UGtnRnVuYworSGlMaW5rIG12UGtnX251bWFwcHJveAltdlBrZ0Z1bmMKK0hpTGluayBtdlBrZ19udW10aGVvcnkJbXZQa2dGdW5jCitIaUxpbmsgbXZQa2dfb3J0aG9wb2x5CW12UGtnRnVuYworSGlMaW5rIG12UGtnX3BhZGljCW12UGtnRnVuYworSGlMaW5rIG12UGtnX3Bsb3RzCW12UGtnRnVuYworSGlMaW5rIG12UGtnX3Bsb3R0b29scwltdlBrZ0Z1bmMKK0hpTGluayBtdlBrZ19wb3dzZXJpZXMJbXZQa2dGdW5jCitIaUxpbmsgbXZQa2dfcHJvY2VzcwltdlBrZ0Z1bmMKK0hpTGluayBtdlBrZ19zaW1wbGV4CW12UGtnRnVuYworSGlMaW5rIG12UGtnX3N0YXRzCW12UGtnRnVuYworSGlMaW5rIG12UGtnX3N0dWRlbnQJbXZQa2dGdW5jCitIaUxpbmsgbXZQa2dfc3VtdG9vbHMJbXZQa2dGdW5jCitIaUxpbmsgbXZQa2dfdGVuc29yCW12UGtnRnVuYworSGlMaW5rIG12UGtnX3RvdG9yZGVyCW12UGtnRnVuYworSGlMaW5rIG12UmFuZ2UJCW12T3BlcgorSGlMaW5rIG12U2VtaUVycm9yCW12RXJyb3IKK0hpTGluayBtdkRlbGltCQlEZWxpbWl0ZXIKIAotICAiIE1hcGxlLT5TdGFuZGFyZCBMaW5rcyB7e3syCi0gIEhpTGluayBtdkFzc2lnbgkJRGVsaW1pdGVyCi0gIEhpTGluayBtdkJvb2wJCUJvb2xlYW4KLSAgSGlMaW5rIG12Q29tbWEJCURlbGltaXRlcgotICBIaUxpbmsgbXZDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBtdkNvbmQJCUNvbmRpdGlvbmFsCi0gIEhpTGluayBtdkNvbnN0YW50CQlOdW1iZXIKLSAgSGlMaW5rIG12RGVsYXlFdmFsCUxhYmVsCi0gIEhpTGluayBtdkRjb2xvbgkJRGVsaW1pdGVyCi0gIEhpTGluayBtdkVycm9yCQlFcnJvcgotICBIaUxpbmsgbXZMaWJyYXJ5CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIG12TnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIG12T3BlcgkJT3BlcmF0b3IKLSAgSGlMaW5rIG12QXNzaWduCQlEZWxpbWl0ZXIKLSAgSGlMaW5rIG12UGFja2FnZQkJVHlwZQotICBIaUxpbmsgbXZQa2dGdW5jCQlGdW5jdGlvbgotICBIaUxpbmsgbXZQa3RPcHRpb24JU3BlY2lhbAotICBIaUxpbmsgbXZSZXBlYXQJCVJlcGVhdAotICBIaUxpbmsgbXZTcGVjaWFsCQlTcGVjaWFsCi0gIEhpTGluayBtdlN0YXRlbWVudAlTdGF0ZW1lbnQKLSAgSGlMaW5rIG12TmFtZQkJU3RyaW5nCi0gIEhpTGluayBtdlN0cmluZwkJU3RyaW5nCi0gIEhpTGluayBtdlRvZG8JCVRvZG8KKyIgTWFwbGUtPlN0YW5kYXJkIExpbmtzIHt7ezIKK0hpTGluayBtdkFzc2lnbgkJRGVsaW1pdGVyCitIaUxpbmsgbXZCb29sCQlCb29sZWFuCitIaUxpbmsgbXZDb21tYQkJRGVsaW1pdGVyCitIaUxpbmsgbXZDb21tZW50CQlDb21tZW50CitIaUxpbmsgbXZDb25kCQlDb25kaXRpb25hbAorSGlMaW5rIG12Q29uc3RhbnQJCU51bWJlcgorSGlMaW5rIG12RGVsYXlFdmFsCUxhYmVsCitIaUxpbmsgbXZEY29sb24JCURlbGltaXRlcgorSGlMaW5rIG12RXJyb3IJCUVycm9yCitIaUxpbmsgbXZMaWJyYXJ5CQlTdGF0ZW1lbnQKK0hpTGluayBtdk51bWJlcgkJTnVtYmVyCitIaUxpbmsgbXZPcGVyCQlPcGVyYXRvcgorSGlMaW5rIG12QXNzaWduCQlEZWxpbWl0ZXIKK0hpTGluayBtdlBhY2thZ2UJCVR5cGUKK0hpTGluayBtdlBrZ0Z1bmMJCUZ1bmN0aW9uCitIaUxpbmsgbXZQa3RPcHRpb24JU3BlY2lhbAorSGlMaW5rIG12UmVwZWF0CQlSZXBlYXQKK0hpTGluayBtdlNwZWNpYWwJCVNwZWNpYWwKK0hpTGluayBtdlN0YXRlbWVudAlTdGF0ZW1lbnQKK0hpTGluayBtdk5hbWUJCVN0cmluZworSGlMaW5rIG12U3RyaW5nCQlTdHJpbmcKK0hpTGluayBtdlRvZG8JCVRvZG8KIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKICIgQ3VycmVudCBTeW50YXg6IHt7ezEKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm1hcGxlIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbWFya2Rvd24udmltIGIvcnVudGltZS9zeW50YXgvbWFya2Rvd24udmltCmluZGV4IDA2ODExNWUuLjE5NTVhNzQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L21hcmtkb3duLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tYXJrZG93bi52aW0KQEAgLTIsNyArMiw3IEBACiAiIExhbmd1YWdlOiAgICAgTWFya2Rvd24KICIgTWFpbnRhaW5lcjogICBUaW0gUG9wZSA8dmltTk9TUEFNQHRwb3BlLm9yZz4KICIgRmlsZW5hbWVzOiAgICAqLm1hcmtkb3duCi0iIExhc3QgQ2hhbmdlOiAgMjAxMyBNYXkgMzAKKyIgTGFzdCBDaGFuZ2U6ICAyMDE2IEF1ZyAyOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKQEAgLTcwLDI5ICs3MCwzNCBAQAogc3luIHJlZ2lvbiBtYXJrZG93blVybFRpdGxlIG1hdGNoZ3JvdXA9bWFya2Rvd25VcmxUaXRsZURlbGltaXRlciBzdGFydD0rJysgZW5kPSsnKyBrZWVwZW5kIGNvbnRhaW5lZAogc3luIHJlZ2lvbiBtYXJrZG93blVybFRpdGxlIG1hdGNoZ3JvdXA9bWFya2Rvd25VcmxUaXRsZURlbGltaXRlciBzdGFydD0rKCsgZW5kPSspKyBrZWVwZW5kIGNvbnRhaW5lZAogCi1zeW4gcmVnaW9uIG1hcmtkb3duTGlua1RleHQgbWF0Y2hncm91cD1tYXJrZG93bkxpbmtUZXh0RGVsaW1pdGVyIHN0YXJ0PSIhXD1cW1wlKFxfW15dXSpdXCUoIFw9W1soXVwpXClcQD0iIGVuZD0iXF1cJSggXD1bWyhdXClcQD0iIGtlZXBlbmQgbmV4dGdyb3VwPW1hcmtkb3duTGluayxtYXJrZG93bklkIHNraXB3aGl0ZSBjb250YWlucz1AbWFya2Rvd25JbmxpbmUsbWFya2Rvd25MaW5lU3RhcnQKK3N5biByZWdpb24gbWFya2Rvd25MaW5rVGV4dCBtYXRjaGdyb3VwPW1hcmtkb3duTGlua1RleHREZWxpbWl0ZXIgc3RhcnQ9IiFcPVxbXCUoXF9bXl1dKl1cJSggXD1bWyhdXClcKVxAPSIgZW5kPSJcXVwlKCBcPVtbKF1cKVxAPSIgbmV4dGdyb3VwPW1hcmtkb3duTGluayxtYXJrZG93bklkIHNraXB3aGl0ZSBjb250YWlucz1AbWFya2Rvd25JbmxpbmUsbWFya2Rvd25MaW5lU3RhcnQKIHN5biByZWdpb24gbWFya2Rvd25MaW5rIG1hdGNoZ3JvdXA9bWFya2Rvd25MaW5rRGVsaW1pdGVyIHN0YXJ0PSIoIiBlbmQ9IikiIGNvbnRhaW5zPW1hcmtkb3duVXJsIGtlZXBlbmQgY29udGFpbmVkCiBzeW4gcmVnaW9uIG1hcmtkb3duSWQgbWF0Y2hncm91cD1tYXJrZG93bklkRGVsaW1pdGVyIHN0YXJ0PSJcWyIgZW5kPSJcXSIga2VlcGVuZCBjb250YWluZWQKIHN5biByZWdpb24gbWFya2Rvd25BdXRvbWF0aWNMaW5rIG1hdGNoZ3JvdXA9bWFya2Rvd25VcmxEZWxpbWl0ZXIgc3RhcnQ9IjxcJShcd1wrOlx8W1s6YWxudW06XV8rLV1cK0BcKVxAPSIgZW5kPSI+IiBrZWVwZW5kIG9uZWxpbmUKIAotc3luIHJlZ2lvbiBtYXJrZG93bkl0YWxpYyBzdGFydD0iXFNcQDw9XCpcfFwqXFNcQD0iIGVuZD0iXFNcQDw9XCpcfFwqXFNcQD0iIGtlZXBlbmQgY29udGFpbnM9bWFya2Rvd25MaW5lU3RhcnQKLXN5biByZWdpb24gbWFya2Rvd25JdGFsaWMgc3RhcnQ9IlxTXEA8PV9cfF9cU1xAPSIgZW5kPSJcU1xAPD1fXHxfXFNcQD0iIGtlZXBlbmQgY29udGFpbnM9bWFya2Rvd25MaW5lU3RhcnQKLXN5biByZWdpb24gbWFya2Rvd25Cb2xkIHN0YXJ0PSJcU1xAPD1cKlwqXHxcKlwqXFNcQD0iIGVuZD0iXFNcQDw9XCpcKlx8XCpcKlxTXEA9IiBrZWVwZW5kIGNvbnRhaW5zPW1hcmtkb3duTGluZVN0YXJ0LG1hcmtkb3duSXRhbGljCi1zeW4gcmVnaW9uIG1hcmtkb3duQm9sZCBzdGFydD0iXFNcQDw9X19cfF9fXFNcQD0iIGVuZD0iXFNcQDw9X19cfF9fXFNcQD0iIGtlZXBlbmQgY29udGFpbnM9bWFya2Rvd25MaW5lU3RhcnQsbWFya2Rvd25JdGFsaWMKLXN5biByZWdpb24gbWFya2Rvd25Cb2xkSXRhbGljIHN0YXJ0PSJcU1xAPD1cKlwqXCpcfFwqXCpcKlxTXEA9IiBlbmQ9IlxTXEA8PVwqXCpcKlx8XCpcKlwqXFNcQD0iIGtlZXBlbmQgY29udGFpbnM9bWFya2Rvd25MaW5lU3RhcnQKLXN5biByZWdpb24gbWFya2Rvd25Cb2xkSXRhbGljIHN0YXJ0PSJcU1xAPD1fX19cfF9fX1xTXEA9IiBlbmQ9IlxTXEA8PV9fX1x8X19fXFNcQD0iIGtlZXBlbmQgY29udGFpbnM9bWFya2Rvd25MaW5lU3RhcnQKK2xldCBzOmNvbmNlYWxlbmRzID0gaGFzKCdjb25jZWFsJykgPyAnIGNvbmNlYWxlbmRzJyA6ICcnCitleGUgJ3N5biByZWdpb24gbWFya2Rvd25JdGFsaWMgbWF0Y2hncm91cD1tYXJrZG93bkl0YWxpY0RlbGltaXRlciBzdGFydD0iXFNcQDw9XCpcfFwqXFNcQD0iIGVuZD0iXFNcQDw9XCpcfFwqXFNcQD0iIGtlZXBlbmQgY29udGFpbnM9bWFya2Rvd25MaW5lU3RhcnQnIC4gczpjb25jZWFsZW5kcworZXhlICdzeW4gcmVnaW9uIG1hcmtkb3duSXRhbGljIG1hdGNoZ3JvdXA9bWFya2Rvd25JdGFsaWNEZWxpbWl0ZXIgc3RhcnQ9IlxTXEA8PV9cfF9cU1xAPSIgZW5kPSJcU1xAPD1fXHxfXFNcQD0iIGtlZXBlbmQgY29udGFpbnM9bWFya2Rvd25MaW5lU3RhcnQnIC4gczpjb25jZWFsZW5kcworZXhlICdzeW4gcmVnaW9uIG1hcmtkb3duQm9sZCBtYXRjaGdyb3VwPW1hcmtkb3duQm9sZERlbGltaXRlciBzdGFydD0iXFNcQDw9XCpcKlx8XCpcKlxTXEA9IiBlbmQ9IlxTXEA8PVwqXCpcfFwqXCpcU1xAPSIga2VlcGVuZCBjb250YWlucz1tYXJrZG93bkxpbmVTdGFydCxtYXJrZG93bkl0YWxpYycgLiBzOmNvbmNlYWxlbmRzCitleGUgJ3N5biByZWdpb24gbWFya2Rvd25Cb2xkIG1hdGNoZ3JvdXA9bWFya2Rvd25Cb2xkRGVsaW1pdGVyIHN0YXJ0PSJcU1xAPD1fX1x8X19cU1xAPSIgZW5kPSJcU1xAPD1fX1x8X19cU1xAPSIga2VlcGVuZCBjb250YWlucz1tYXJrZG93bkxpbmVTdGFydCxtYXJrZG93bkl0YWxpYycgLiBzOmNvbmNlYWxlbmRzCitleGUgJ3N5biByZWdpb24gbWFya2Rvd25Cb2xkSXRhbGljIG1hdGNoZ3JvdXA9bWFya2Rvd25Cb2xkSXRhbGljRGVsaW1pdGVyIHN0YXJ0PSJcU1xAPD1cKlwqXCpcfFwqXCpcKlxTXEA9IiBlbmQ9IlxTXEA8PVwqXCpcKlx8XCpcKlwqXFNcQD0iIGtlZXBlbmQgY29udGFpbnM9bWFya2Rvd25MaW5lU3RhcnQnIC4gczpjb25jZWFsZW5kcworZXhlICdzeW4gcmVnaW9uIG1hcmtkb3duQm9sZEl0YWxpYyBtYXRjaGdyb3VwPW1hcmtkb3duQm9sZEl0YWxpY0RlbGltaXRlciBzdGFydD0iXFNcQDw9X19fXHxfX19cU1xAPSIgZW5kPSJcU1xAPD1fX19cfF9fX1xTXEA9IiBrZWVwZW5kIGNvbnRhaW5zPW1hcmtkb3duTGluZVN0YXJ0JyAuIHM6Y29uY2VhbGVuZHMKKwogc3luIHJlZ2lvbiBtYXJrZG93bkNvZGUgbWF0Y2hncm91cD1tYXJrZG93bkNvZGVEZWxpbWl0ZXIgc3RhcnQ9ImAiIGVuZD0iYCIga2VlcGVuZCBjb250YWlucz1tYXJrZG93bkxpbmVTdGFydAogc3luIHJlZ2lvbiBtYXJrZG93bkNvZGUgbWF0Y2hncm91cD1tYXJrZG93bkNvZGVEZWxpbWl0ZXIgc3RhcnQ9ImBgIFw9IiBlbmQ9IiBcPWBgIiBrZWVwZW5kIGNvbnRhaW5zPW1hcmtkb3duTGluZVN0YXJ0CiBzeW4gcmVnaW9uIG1hcmtkb3duQ29kZSBtYXRjaGdyb3VwPW1hcmtkb3duQ29kZURlbGltaXRlciBzdGFydD0iXlxzKmBgYC4qJCIgZW5kPSJeXHMqYGBgXHplXHMqJCIga2VlcGVuZAogCitzeW4gbWF0Y2ggbWFya2Rvd25Gb290bm90ZSAiXFteW15cXV1cK1xdIgorc3luIG1hdGNoIG1hcmtkb3duRm9vdG5vdGVEZWZpbml0aW9uICJeXFteW15cXV1cK1xdOiIKKwogaWYgbWFpbl9zeW50YXggPT0jICdtYXJrZG93bicKICAgZm9yIHM6dHlwZSBpbiBnOm1hcmtkb3duX2ZlbmNlZF9sYW5ndWFnZXMKLSAgICBleGUgJ3N5biByZWdpb24gbWFya2Rvd25IaWdobGlnaHQnLnN1YnN0aXR1dGUobWF0Y2hzdHIoczp0eXBlLCdbXj1dKiQnKSwnXC4uKicsJycsJycpLicgbWF0Y2hncm91cD1tYXJrZG93bkNvZGVEZWxpbWl0ZXIgc3RhcnQ9Il5ccypgYGAnLm1hdGNoc3RyKHM6dHlwZSwnW149XSonKS4nXD4uKiQiIGVuZD0iXlxzKmBgYFx6ZVxzKiQiIGtlZXBlbmQgY29udGFpbnM9QG1hcmtkb3duSGlnaGxpZ2h0Jy5zdWJzdGl0dXRlKG1hdGNoc3RyKHM6dHlwZSwnW149XSokJyksJ1wuJywnJywnZycpCisgICAgZXhlICdzeW4gcmVnaW9uIG1hcmtkb3duSGlnaGxpZ2h0Jy5zdWJzdGl0dXRlKG1hdGNoc3RyKHM6dHlwZSwnW149XSokJyksJ1wuLionLCcnLCcnKS4nIG1hdGNoZ3JvdXA9bWFya2Rvd25Db2RlRGVsaW1pdGVyIHN0YXJ0PSJeXHMqYGBgXHMqJy5tYXRjaHN0cihzOnR5cGUsJ1tePV0qJykuJ1w+LiokIiBlbmQ9Il5ccypgYGBcemVccyokIiBrZWVwZW5kIGNvbnRhaW5zPUBtYXJrZG93bkhpZ2hsaWdodCcuc3Vic3RpdHV0ZShtYXRjaHN0cihzOnR5cGUsJ1tePV0qJCcpLCdcLicsJycsJ2cnKQogICBlbmRmb3IKICAgdW5sZXQhIHM6dHlwZQogZW5kaWYKIAotc3luIG1hdGNoIG1hcmtkb3duRXNjYXBlICJcXFtdW1xcYCpfe30oKSMrLiEtXSIKK3N5biBtYXRjaCBtYXJrZG93bkVzY2FwZSAiXFxbXVtcXGAqX3t9KCk8PiMrLiEtXSIKIHN5biBtYXRjaCBtYXJrZG93bkVycm9yICJcd1xAPD1fXHdcQD0iCiAKIGhpIGRlZiBsaW5rIG1hcmtkb3duSDEgICAgICAgICAgICAgICAgICAgIGh0bWxIMQpAQCAtMTA4LDYgKzExMyw5IEBACiBoaSBkZWYgbGluayBtYXJrZG93bkJsb2NrcXVvdGUgICAgICAgICAgICBDb21tZW50CiBoaSBkZWYgbGluayBtYXJrZG93blJ1bGUgICAgICAgICAgICAgICAgICBQcmVQcm9jCiAKK2hpIGRlZiBsaW5rIG1hcmtkb3duRm9vdG5vdGUgICAgICAgICAgICAgIFR5cGVkZWYKK2hpIGRlZiBsaW5rIG1hcmtkb3duRm9vdG5vdGVEZWZpbml0aW9uICAgIFR5cGVkZWYKKwogaGkgZGVmIGxpbmsgbWFya2Rvd25MaW5rVGV4dCAgICAgICAgICAgICAgaHRtbExpbmsKIGhpIGRlZiBsaW5rIG1hcmtkb3duSWREZWNsYXJhdGlvbiAgICAgICAgIFR5cGVkZWYKIGhpIGRlZiBsaW5rIG1hcmtkb3duSWQgICAgICAgICAgICAgICAgICAgIFR5cGUKQEAgLTExOSw4ICsxMjcsMTEgQEAKIGhpIGRlZiBsaW5rIG1hcmtkb3duVXJsVGl0bGVEZWxpbWl0ZXIgICAgIERlbGltaXRlcgogCiBoaSBkZWYgbGluayBtYXJrZG93bkl0YWxpYyAgICAgICAgICAgICAgICBodG1sSXRhbGljCitoaSBkZWYgbGluayBtYXJrZG93bkl0YWxpY0RlbGltaXRlciAgICAgICBtYXJrZG93bkl0YWxpYwogaGkgZGVmIGxpbmsgbWFya2Rvd25Cb2xkICAgICAgICAgICAgICAgICAgaHRtbEJvbGQKK2hpIGRlZiBsaW5rIG1hcmtkb3duQm9sZERlbGltaXRlciAgICAgICAgIG1hcmtkb3duQm9sZAogaGkgZGVmIGxpbmsgbWFya2Rvd25Cb2xkSXRhbGljICAgICAgICAgICAgaHRtbEJvbGRJdGFsaWMKK2hpIGRlZiBsaW5rIG1hcmtkb3duQm9sZEl0YWxpY0RlbGltaXRlciAgIG1hcmtkb3duQm9sZEl0YWxpYwogaGkgZGVmIGxpbmsgbWFya2Rvd25Db2RlRGVsaW1pdGVyICAgICAgICAgRGVsaW1pdGVyCiAKIGhpIGRlZiBsaW5rIG1hcmtkb3duRXNjYXBlICAgICAgICAgICAgICAgIFNwZWNpYWwKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L21hc29uLnZpbSBiL3J1bnRpbWUvc3ludGF4L21hc29uLnZpbQppbmRleCA0MGJkYjBlLi42Nzg5ZTExIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tYXNvbi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbWFzb24udmltCkBAIC0xMywxMiArMTMsOCBAQAogIiAgLSBGaXggPCV0ZXh0PiBibG9ja3MgdG8gc2hvdyBIVE1MIHRhZ3MgYnV0IGlnbm9yZSBNYXNvbiB0YWdzLgogIgogCi0iIENsZWFyIHByZXZpb3VzIHN5bnRheCBzZXR0aW5ncyB1bmxlc3MgdGhpcyBpcyB2NiBvciBhYm92ZSwgaW4gd2hpY2ggY2FzZSBqdXN0Ci0iIGV4aXQgd2l0aG91dCBkb2luZyBhbnl0aGluZy4KLSIKLWlmIHZlcnNpb24gPCA2MDAKLQlzeW4gY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAJZmluaXNoCiBlbmRpZgogCkBAIC0zMCwyMiArMjYsMTQgQEAKIAogIiBGaXJzdCBwdWxsIGluIHRoZSBIVE1MIHN5bnRheC4KICIKLWlmIHZlcnNpb24gPCA2MDAKLQlzbyA8c2ZpbGU+OnA6aC9odG1sLnZpbQotZWxzZQotCXJ1bnRpbWUhIHN5bnRheC9odG1sLnZpbQotCXVubGV0IGI6Y3VycmVudF9zeW50YXgKLWVuZGlmCitydW50aW1lISBzeW50YXgvaHRtbC52aW0KK3VubGV0IGI6Y3VycmVudF9zeW50YXgKIAogc3luIGNsdXN0ZXIgaHRtbFByZXByb2MgYWRkPUBtYXNvblRvcAogCiAiIE5vdyBwdWxsIGluIHRoZSBQZXJsIHN5bnRheC4KICIKLWlmIHZlcnNpb24gPCA2MDAKLQlzeW4gaW5jbHVkZSBAcGVybFRvcCA8c2ZpbGU+OnA6aC9wZXJsLnZpbQotZWxzZQotCXN5biBpbmNsdWRlIEBwZXJsVG9wIHN5bnRheC9wZXJsLnZpbQotZW5kaWYKK3N5biBpbmNsdWRlIEBwZXJsVG9wIHN5bnRheC9wZXJsLnZpbQogCiAiIEl0J3MgaGFyZCB0byByZWR1Y2UgZG93biB0byB0aGUgY29ycmVjdCBzdWItc2V0IG9mIFBlcmwgdG8gaGlnaGxpZ2h0IGluIHNvbWUKICIgb2YgdGhlc2UgY2FzZXMgc28gSSd2ZSB0YWtlbiB0aGUgc2FmZSBvcHRpb24gb2YganVzdCB1c2luZyBwZXJsVG9wIGluIGFsbCBvZgpAQCAtNzgsMTkgKzY2LDcgQEAKIAogIiBTZXQgdXAgZGVmYXVsdCBoaWdobGlnaHRpbmcuIEFsbW9zdCBhbGwgb2YgdGhpcyBpcyBkb25lIGluIHRoZSBpbmNsdWRlZAogIiBzeW50YXggZmlsZXMuCi0iCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbWFzb25fc3luX2luaXRzIikKLQlpZiB2ZXJzaW9uIDwgNTA4Ci0JCWxldCBkaWRfbWFzb25fc3luX2luaXRzID0gMQotCQljb20gLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0JZWxzZQotCQljb20gLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotCWVuZGlmCi0KLQlIaUxpbmsgbWFzb25Eb2MgQ29tbWVudAotCi0JZGVsYyBIaUxpbmsKLWVuZGlmCitoaSBkZWYgbGluayBtYXNvbkRvYyBDb21tZW50CiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm1hc29uIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9tYXN0ZXIudmltIGIvcnVudGltZS9zeW50YXgvbWFzdGVyLnZpbQppbmRleCA0MGQ2NDRlLi4xNDQ0MGVlIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tYXN0ZXIudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L21hc3Rlci52aW0KQEAgLTgsMTEgKzgsOCBAQAogIiB0aGlzIGlzIGEgdmVyeSBzaW1wbGUgc3ludGF4IGZpbGUgLSBJIHdpbGwgYmUgaW1wcm92aW5nIGl0CiAiIGFkZCBlbnRpcmUgREVGSU5FIHN5bnRheAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMjgsMjIgKzI1LDE0IEBACiBzeW4gbWF0Y2ggICBtYXN0ZXJDb21tZW50CSJcJC4qIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9tYXN0ZXJfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbWFzdGVyX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgbWFzdGVyS2V5d29yZCBLZXl3b3JkCi0gIEhpTGluayBtYXN0ZXJDb21tZW50IENvbW1lbnQKLSAgSGlMaW5rIG1hc3RlclN0cmluZyAgU3RyaW5nCitIaUxpbmsgbWFzdGVyS2V5d29yZCBLZXl3b3JkCitIaUxpbmsgbWFzdGVyQ29tbWVudCBDb21tZW50CitIaUxpbmsgbWFzdGVyU3RyaW5nICBTdHJpbmcKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm1hc3RlciIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbWF0bGFiLnZpbSBiL3J1bnRpbWUvc3ludGF4L21hdGxhYi52aW0KaW5kZXggMzgyOGYzZS4uOWNjMmJlOCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbWF0bGFiLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tYXRsYWIudmltCkBAIC04LDExICs4LDggQEAKICIgQ2hhbmdlIEhpc3Rvcnk6CiAiIAkJLSAnZ2xvYmFsJyBhbmQgJ3BlcnNpc3RlbnQnIGtleXdvcmQgYXJlIG5vdyByZWNvZ25pemVkCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC03Niw0OSArNzMsNDEgQEAKIHN5biBtYXRjaCBtYXRsYWJFcnJvcgkiLVw9XDxcZFwrXC5cZFwrW2VFZERdWy0rXVw9XGRcK1wuXChbXiovXFxeXVwpIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9tYXRsYWJfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbWF0bGFiX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgbWF0bGFiVHJhbnNwb3NlT3BlcmF0b3IJbWF0bGFiT3BlcmF0b3IKLSAgSGlMaW5rIG1hdGxhYk9wZXJhdG9yCQkJT3BlcmF0b3IKLSAgSGlMaW5rIG1hdGxhYkxpbmVDb250aW51YXRpb24JCVNwZWNpYWwKLSAgSGlMaW5rIG1hdGxhYkxhYmVsCQkJTGFiZWwKLSAgSGlMaW5rIG1hdGxhYkNvbmRpdGlvbmFsCQlDb25kaXRpb25hbAotICBIaUxpbmsgbWF0bGFiRXhjZXB0aW9ucwkJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIG1hdGxhYlJlcGVhdAkJCVJlcGVhdAotICBIaUxpbmsgbWF0bGFiVG9kbwkJCVRvZG8KLSAgSGlMaW5rIG1hdGxhYlN0cmluZwkJCVN0cmluZwotICBIaUxpbmsgbWF0bGFiRGVsaW1pdGVyCQlJZGVudGlmaWVyCi0gIEhpTGluayBtYXRsYWJUcmFuc3Bvc2VPdGhlcgkJSWRlbnRpZmllcgotICBIaUxpbmsgbWF0bGFiTnVtYmVyCQkJTnVtYmVyCi0gIEhpTGluayBtYXRsYWJGbG9hdAkJCUZsb2F0Ci0gIEhpTGluayBtYXRsYWJGdW5jdGlvbgkJCUZ1bmN0aW9uCi0gIEhpTGluayBtYXRsYWJFcnJvcgkJCUVycm9yCi0gIEhpTGluayBtYXRsYWJJbXBsaWNpdAkJCW1hdGxhYlN0YXRlbWVudAotICBIaUxpbmsgbWF0bGFiU3RhdGVtZW50CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIG1hdGxhYk9PCQkJU3RhdGVtZW50Ci0gIEhpTGluayBtYXRsYWJTZW1pY29sb24JCVNwZWNpYWxDaGFyCi0gIEhpTGluayBtYXRsYWJDb21tZW50CQkJQ29tbWVudAotICBIaUxpbmsgbWF0bGFiTXVsdGlsaW5lQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgbWF0bGFiU2NvcGUJCQlUeXBlCitIaUxpbmsgbWF0bGFiVHJhbnNwb3NlT3BlcmF0b3IJbWF0bGFiT3BlcmF0b3IKK0hpTGluayBtYXRsYWJPcGVyYXRvcgkJCU9wZXJhdG9yCitIaUxpbmsgbWF0bGFiTGluZUNvbnRpbnVhdGlvbgkJU3BlY2lhbAorSGlMaW5rIG1hdGxhYkxhYmVsCQkJTGFiZWwKK0hpTGluayBtYXRsYWJDb25kaXRpb25hbAkJQ29uZGl0aW9uYWwKK0hpTGluayBtYXRsYWJFeGNlcHRpb25zCQlDb25kaXRpb25hbAorSGlMaW5rIG1hdGxhYlJlcGVhdAkJCVJlcGVhdAorSGlMaW5rIG1hdGxhYlRvZG8JCQlUb2RvCitIaUxpbmsgbWF0bGFiU3RyaW5nCQkJU3RyaW5nCitIaUxpbmsgbWF0bGFiRGVsaW1pdGVyCQlJZGVudGlmaWVyCitIaUxpbmsgbWF0bGFiVHJhbnNwb3NlT3RoZXIJCUlkZW50aWZpZXIKK0hpTGluayBtYXRsYWJOdW1iZXIJCQlOdW1iZXIKK0hpTGluayBtYXRsYWJGbG9hdAkJCUZsb2F0CitIaUxpbmsgbWF0bGFiRnVuY3Rpb24JCQlGdW5jdGlvbgorSGlMaW5rIG1hdGxhYkVycm9yCQkJRXJyb3IKK0hpTGluayBtYXRsYWJJbXBsaWNpdAkJCW1hdGxhYlN0YXRlbWVudAorSGlMaW5rIG1hdGxhYlN0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsgbWF0bGFiT08JCQlTdGF0ZW1lbnQKK0hpTGluayBtYXRsYWJTZW1pY29sb24JCVNwZWNpYWxDaGFyCitIaUxpbmsgbWF0bGFiQ29tbWVudAkJCUNvbW1lbnQKK0hpTGluayBtYXRsYWJNdWx0aWxpbmVDb21tZW50CQlDb21tZW50CitIaUxpbmsgbWF0bGFiU2NvcGUJCQlUeXBlCiAKLSAgSGlMaW5rIG1hdGxhYkFyaXRobWV0aWNPcGVyYXRvcgltYXRsYWJPcGVyYXRvcgotICBIaUxpbmsgbWF0bGFiUmVsYXRpb25hbE9wZXJhdG9yCW1hdGxhYk9wZXJhdG9yCi0gIEhpTGluayBtYXRsYWJMb2dpY2FsT3BlcmF0b3IJCW1hdGxhYk9wZXJhdG9yCitIaUxpbmsgbWF0bGFiQXJpdGhtZXRpY09wZXJhdG9yCW1hdGxhYk9wZXJhdG9yCitIaUxpbmsgbWF0bGFiUmVsYXRpb25hbE9wZXJhdG9yCW1hdGxhYk9wZXJhdG9yCitIaUxpbmsgbWF0bGFiTG9naWNhbE9wZXJhdG9yCQltYXRsYWJPcGVyYXRvcgogCiAib3B0aW9uYWwgaGlnaGxpZ2h0aW5nCi0gICJIaUxpbmsgbWF0bGFiSWRlbnRpZmllcgkJSWRlbnRpZmllcgotICAiSGlMaW5rIG1hdGxhYlRhYgkJCUVycm9yCisiSGlMaW5rIG1hdGxhYklkZW50aWZpZXIJCUlkZW50aWZpZXIKKyJIaUxpbmsgbWF0bGFiVGFiCQkJRXJyb3IKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm1hdGxhYiIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbWF4aW1hLnZpbSBiL3J1bnRpbWUvc3ludGF4L21heGltYS52aW0KaW5kZXggMjdkY2MxOC4uYmUxM2IwZSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbWF4aW1hLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tYXhpbWEudmltCkBAIC02LDExICs2LDggQEAKICIgQWRhcHRlZCBtb3N0bHkgZnJvbSB4bWF0aC52aW0KICIgTnVtYmVyIGZvcm1hdHMgYWRhcHRlZCBmcm9tIHIudmltCiAiCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMjM0LDQxICsyMzEsMzMgQEAKIHN5biBzeW5jIG1hdGNoIG1heGltYVN5bmNDb21tZW50CWdyb3VwdGhlcmUgTk9ORSAiKi8iCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX21heGltYV9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9tYXhpbWFfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBtYXhpbWFCcmFjZUVycm9yCW1heGltYUVycm9yCi0gIEhpTGluayBtYXhpbWFDbWQJbWF4aW1hU3RhdGVtZW50Ci0gIEhpTGluayBtYXhpbWFDdXJseUVycm9yCW1heGltYUVycm9yCi0gIEhpTGluayBtYXhpbWFGdW5jQ21kCW1heGltYVN0YXRlbWVudAotICBIaUxpbmsgbWF4aW1hUGFyZW5FcnJvcgltYXhpbWFFcnJvcgorSGlMaW5rIG1heGltYUJyYWNlRXJyb3IJbWF4aW1hRXJyb3IKK0hpTGluayBtYXhpbWFDbWQJbWF4aW1hU3RhdGVtZW50CitIaUxpbmsgbWF4aW1hQ3VybHlFcnJvcgltYXhpbWFFcnJvcgorSGlMaW5rIG1heGltYUZ1bmNDbWQJbWF4aW1hU3RhdGVtZW50CitIaUxpbmsgbWF4aW1hUGFyZW5FcnJvcgltYXhpbWFFcnJvcgogCi0gICIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiAgQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKLSAgSGlMaW5rIG1heGltYUNoYXJhY3RlcglDaGFyYWN0ZXIKLSAgSGlMaW5rIG1heGltYUNvbW1hCUZ1bmN0aW9uCi0gIEhpTGluayBtYXhpbWFDb21tZW50QmxvY2sJQ29tbWVudAotICBIaUxpbmsgbWF4aW1hQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIG1heGltYUVycm9yCUVycm9yCi0gIEhpTGluayBtYXhpbWFGdW5jCURlbGltaXRlcgotICBIaUxpbmsgbWF4aW1hT3AgICAgICAgICAgICAgICAgIERlbGltaXRlcgotICBIaUxpbmsgbWF4aW1hTGFiZWwJUHJlUHJvYwotICBIaUxpbmsgbWF4aW1hTnVtYmVyCU51bWJlcgotICBIaUxpbmsgbWF4aW1hRmxvYXQJRmxvYXQKLSAgSGlMaW5rIG1heGltYVJlcGVhdAlSZXBlYXQKLSAgSGlMaW5rIG1heGltYVNwZWNpYWwJVHlwZQotICBIaUxpbmsgbWF4aW1hU3BlY2lhbENoYXIJU3BlY2lhbENoYXIKLSAgSGlMaW5rIG1heGltYVN0YXRlbWVudAlTdGF0ZW1lbnQKLSAgSGlMaW5rIG1heGltYVN0cmluZwlTdHJpbmcKLSAgSGlMaW5rIG1heGltYVRvZG8JVG9kbworIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgorSGlMaW5rIG1heGltYUNoYXJhY3RlcglDaGFyYWN0ZXIKK0hpTGluayBtYXhpbWFDb21tYQlGdW5jdGlvbgorSGlMaW5rIG1heGltYUNvbW1lbnRCbG9jawlDb21tZW50CitIaUxpbmsgbWF4aW1hQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKK0hpTGluayBtYXhpbWFFcnJvcglFcnJvcgorSGlMaW5rIG1heGltYUZ1bmMJRGVsaW1pdGVyCitIaUxpbmsgbWF4aW1hT3AgICAgICAgICAgICAgICAgIERlbGltaXRlcgorSGlMaW5rIG1heGltYUxhYmVsCVByZVByb2MKK0hpTGluayBtYXhpbWFOdW1iZXIJTnVtYmVyCitIaUxpbmsgbWF4aW1hRmxvYXQJRmxvYXQKK0hpTGluayBtYXhpbWFSZXBlYXQJUmVwZWF0CitIaUxpbmsgbWF4aW1hU3BlY2lhbAlUeXBlCitIaUxpbmsgbWF4aW1hU3BlY2lhbENoYXIJU3BlY2lhbENoYXIKK0hpTGluayBtYXhpbWFTdGF0ZW1lbnQJU3RhdGVtZW50CitIaUxpbmsgbWF4aW1hU3RyaW5nCVN0cmluZworSGlMaW5rIG1heGltYVRvZG8JVG9kbwogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibWF4aW1hIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbWVsLnZpbSBiL3J1bnRpbWUvc3ludGF4L21lbC52aW0KaW5kZXggZGFiODk0OC4uOWY0ZDVmYyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbWVsLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tZWwudmltCkBAIC00LDExICs0LDggQEAKICIgTGFzdCBDaGFuZ2U6CU1heSAyNyAxOTk5CiAiIEJhc2VkIG9uOglCcmFtIE1vb2xlbmFhciA8QnJhbUB2aW0ub3JnPiBDIHN5bnRheCBmaWxlCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC03Nyw0NSArNzQsMzcgQEAKIGV4ZWMgInN5IHN5bmMgY2NvbW1lbnQgbWVsQ29tbWVudCBtaW5saW5lcz0iIC4gbWVsX21pbmxpbmVzCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX21lbF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9tZWxfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBtZWxCb29sZWFuCUJvb2xlYW4KLSAgSGlMaW5rIG1lbEZ1bmN0aW9uCUZ1bmN0aW9uCi0gIEhpTGluayBtZWxJZGVudGlmaWVyCUlkZW50aWZpZXIKLSAgSGlMaW5rIG1lbFN0YXRlbWVudAlTdGF0ZW1lbnQKLSAgSGlMaW5rIG1lbENvbmRpdGlvbmFsIENvbmRpdGlvbmFsCi0gIEhpTGluayBtZWxSZXBlYXQJUmVwZWF0Ci0gIEhpTGluayBtZWxMYWJlbAlMYWJlbAotICBIaUxpbmsgbWVsT3BlcmF0b3IJT3BlcmF0b3IKLSAgSGlMaW5rIG1lbEtleXdvcmQJS2V5d29yZAotICBIaUxpbmsgbWVsRXhjZXB0aW9uCUV4Y2VwdGlvbgotICBIaUxpbmsgbWVsSW5jbHVkZQlJbmNsdWRlCi0gIEhpTGluayBtZWxUeXBlCVR5cGUKLSAgSGlMaW5rIG1lbFN0b3JhZ2VDbGFzcyBTdG9yYWdlQ2xhc3MKLSAgSGlMaW5rIG1lbERlYnVnCURlYnVnCi0gIEhpTGluayBtZWxUb2RvCVRvZG8KLSAgSGlMaW5rIG1lbENoYXJTcGVjaWFsIFNwZWNpYWxDaGFyCi0gIEhpTGluayBtZWxTdHJpbmcJU3RyaW5nCi0gIEhpTGluayBtZWxJbnRlZ2VyCU51bWJlcgotICBIaUxpbmsgbWVsRmxvYXQJRmxvYXQKLSAgSGlMaW5rIG1lbE1hdHJpeFZlY3RvciBGbG9hdAotICBIaUxpbmsgbWVsQ29tbWVudAlDb21tZW50Ci0gIEhpTGluayBtZWxFcnJvcglFcnJvcgotICBIaUxpbmsgbWVsU3BhY2VFcnJvcgltZWxFcnJvcgotICBIaUxpbmsgbWVsQ2hhckVycm9yCW1lbEVycm9yCi0gIEhpTGluayBtZWxQYXJlbkVycm9yCW1lbEVycm9yCi0gIEhpTGluayBtZWxJblBhcmVuCW1lbEVycm9yCi0gIEhpTGluayBtZWxDb21tZW50RXJyb3IgbWVsRXJyb3IKK0hpTGluayBtZWxCb29sZWFuCUJvb2xlYW4KK0hpTGluayBtZWxGdW5jdGlvbglGdW5jdGlvbgorSGlMaW5rIG1lbElkZW50aWZpZXIJSWRlbnRpZmllcgorSGlMaW5rIG1lbFN0YXRlbWVudAlTdGF0ZW1lbnQKK0hpTGluayBtZWxDb25kaXRpb25hbCBDb25kaXRpb25hbAorSGlMaW5rIG1lbFJlcGVhdAlSZXBlYXQKK0hpTGluayBtZWxMYWJlbAlMYWJlbAorSGlMaW5rIG1lbE9wZXJhdG9yCU9wZXJhdG9yCitIaUxpbmsgbWVsS2V5d29yZAlLZXl3b3JkCitIaUxpbmsgbWVsRXhjZXB0aW9uCUV4Y2VwdGlvbgorSGlMaW5rIG1lbEluY2x1ZGUJSW5jbHVkZQorSGlMaW5rIG1lbFR5cGUJVHlwZQorSGlMaW5rIG1lbFN0b3JhZ2VDbGFzcyBTdG9yYWdlQ2xhc3MKK0hpTGluayBtZWxEZWJ1ZwlEZWJ1ZworSGlMaW5rIG1lbFRvZG8JVG9kbworSGlMaW5rIG1lbENoYXJTcGVjaWFsIFNwZWNpYWxDaGFyCitIaUxpbmsgbWVsU3RyaW5nCVN0cmluZworSGlMaW5rIG1lbEludGVnZXIJTnVtYmVyCitIaUxpbmsgbWVsRmxvYXQJRmxvYXQKK0hpTGluayBtZWxNYXRyaXhWZWN0b3IgRmxvYXQKK0hpTGluayBtZWxDb21tZW50CUNvbW1lbnQKK0hpTGluayBtZWxFcnJvcglFcnJvcgorSGlMaW5rIG1lbFNwYWNlRXJyb3IJbWVsRXJyb3IKK0hpTGluayBtZWxDaGFyRXJyb3IJbWVsRXJyb3IKK0hpTGluayBtZWxQYXJlbkVycm9yCW1lbEVycm9yCitIaUxpbmsgbWVsSW5QYXJlbgltZWxFcnJvcgorSGlMaW5rIG1lbENvbW1lbnRFcnJvciBtZWxFcnJvcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibWVsIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbWYudmltIGIvcnVudGltZS9zeW50YXgvbWYudmltCmluZGV4IDhiYzQ4ZmUuLmUyNzdjMmQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L21mLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tZi52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglBbmRyZWFzIFNjaGVyZXIgPGFuZHJlYXMuc2NoZXJlckBwb2JveC5jb20+CiAiIExhc3QgQ2hhbmdlOglBcHJpbCAyNSwgMjAwMQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW4gY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTU3LDQwICsxNTQsMzIgQEAKIHN5biBzeW5jIG1heGxpbmVzPTUwCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZwotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbWZfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbWZfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBtZkJvb2xFeHAJU3RhdGVtZW50Ci0gIEhpTGluayBtZk51bUV4cAlTdGF0ZW1lbnQKLSAgSGlMaW5rIG1mSW50ZXJuYWwJSWRlbnRpZmllcgotICBIaUxpbmsgbWZQYWlyRXhwCVN0YXRlbWVudAotICBIaUxpbmsgbWZQYXRoRXhwCVN0YXRlbWVudAotICBIaUxpbmsgbWZQZW5FeHAJU3RhdGVtZW50Ci0gIEhpTGluayBtZlBpY0V4cAlTdGF0ZW1lbnQKLSAgSGlMaW5rIG1mU3RyaW5nRXhwCVN0YXRlbWVudAotICBIaUxpbmsgbWZDb21tYW5kCVN0YXRlbWVudAotICBIaUxpbmsgbWZUeXBlCVR5cGUKLSAgSGlMaW5rIG1mU3RhdGVtZW50CVN0YXRlbWVudAotICBIaUxpbmsgbWZEZWZpbml0aW9uCVN0YXRlbWVudAotICBIaUxpbmsgbWZDb25kaXRpb24JQ29uZGl0aW9uYWwKLSAgSGlMaW5rIG1mUHJpbWl0aXZlCVN0YXRlbWVudAotICBIaUxpbmsgbWZNYWNybwlNYWNybwotICBIaUxpbmsgbWZDb29yZAlJZGVudGlmaWVyCi0gIEhpTGluayBtZlBvaW50CUlkZW50aWZpZXIKLSAgSGlMaW5rIG1mTnVtZXJpYwlOdW1iZXIKLSAgSGlMaW5rIG1mTGVuZ3RoCU51bWJlcgotICBIaUxpbmsgbWZDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIG1mU3RyaW5nCVN0cmluZworSGlMaW5rIG1mQm9vbEV4cAlTdGF0ZW1lbnQKK0hpTGluayBtZk51bUV4cAlTdGF0ZW1lbnQKK0hpTGluayBtZkludGVybmFsCUlkZW50aWZpZXIKK0hpTGluayBtZlBhaXJFeHAJU3RhdGVtZW50CitIaUxpbmsgbWZQYXRoRXhwCVN0YXRlbWVudAorSGlMaW5rIG1mUGVuRXhwCVN0YXRlbWVudAorSGlMaW5rIG1mUGljRXhwCVN0YXRlbWVudAorSGlMaW5rIG1mU3RyaW5nRXhwCVN0YXRlbWVudAorSGlMaW5rIG1mQ29tbWFuZAlTdGF0ZW1lbnQKK0hpTGluayBtZlR5cGUJVHlwZQorSGlMaW5rIG1mU3RhdGVtZW50CVN0YXRlbWVudAorSGlMaW5rIG1mRGVmaW5pdGlvbglTdGF0ZW1lbnQKK0hpTGluayBtZkNvbmRpdGlvbglDb25kaXRpb25hbAorSGlMaW5rIG1mUHJpbWl0aXZlCVN0YXRlbWVudAorSGlMaW5rIG1mTWFjcm8JTWFjcm8KK0hpTGluayBtZkNvb3JkCUlkZW50aWZpZXIKK0hpTGluayBtZlBvaW50CUlkZW50aWZpZXIKK0hpTGluayBtZk51bWVyaWMJTnVtYmVyCitIaUxpbmsgbWZMZW5ndGgJTnVtYmVyCitIaUxpbmsgbWZDb21tZW50CUNvbW1lbnQKK0hpTGluayBtZlN0cmluZwlTdHJpbmcKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm1mIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9tZ2wudmltIGIvcnVudGltZS9zeW50YXgvbWdsLnZpbQppbmRleCA1NWFlMTM3Li40ZmQ3MThlIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tZ2wudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L21nbC52aW0KQEAgLTYsOSArNiw4IEBACiAiCiAiICRJZDogbWdsLnZpbSx2IDEuMSAyMDA2LzAyLzIxIDIyOjA4OjIwIHZpbWJvc3MgRXhwICQKICIKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTg0LDQzICs4MywzNSBAQAogCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX21nbF9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9tZ2xfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBtZ2xCb29sZWFuCQlCb29sZWFuCi0gIEhpTGluayBtZ2xDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBtZ2xDb25kaXRpb25hbAkJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIG1nbENvbnN0YW50CQlDb25zdGFudAotICBIaUxpbmsgbWdsRXhjZXB0aW9uCQlFeGNlcHRpb24KLSAgSGlMaW5rIG1nbEZ1bmN0aW9uCQlGdW5jdGlvbgotICBIaUxpbmsgbWdsTGFiZWwJCUxhYmVsCi0gIEhpTGluayBtZ2xNYXRyaXhEZWxpbWl0ZXIJSWRlbnRpZmllcgotICBIaUxpbmsgbWdsTnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIG1nbEhleE51bWJlcgkJTnVtYmVyCi0gIEhpTGluayBtZ2xDaGFyYWN0ZXIJCU51bWJlcgotICBIaUxpbmsgbWdsSXBBZGRyCQlOdW1iZXIKLSAgSGlMaW5rIG1nbE9wZXJhdG9yCQlPcGVyYXRvcgotICBIaUxpbmsgbWdsUHJlZGVmaW5lZAkJbWdsRnVuY3Rpb24KLSAgSGlMaW5rIG1nbFByZVByb2MJCVByZVByb2MKLSAgSGlMaW5rIG1nbFJlcGVhdAkJUmVwZWF0Ci0gIEhpTGluayBtZ2xTdGF0ZW1lbnQJCVN0YXRlbWVudAotICBIaUxpbmsgbWdsU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIG1nbFN0cmluZ0VzY2FwZQlTcGVjaWFsCi0gIEhpTGluayBtZ2xTdHJpbmdFc2NhcGVHUEMJU3BlY2lhbAotICBIaUxpbmsgbWdsU3RyaW5nRXJyb3IJCUVycm9yCi0gIEhpTGluayBtZ2xTdHJ1Y3QJCW1nbFN0YXRlbWVudAotICBIaUxpbmsgbWdsU3ltYm9sT3BlcmF0b3IJbWdsT3BlcmF0b3IKLSAgSGlMaW5rIG1nbFR5cGUJCVR5cGUKK0hpTGluayBtZ2xCb29sZWFuCQlCb29sZWFuCitIaUxpbmsgbWdsQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIG1nbENvbmRpdGlvbmFsCQlDb25kaXRpb25hbAorSGlMaW5rIG1nbENvbnN0YW50CQlDb25zdGFudAorSGlMaW5rIG1nbEV4Y2VwdGlvbgkJRXhjZXB0aW9uCitIaUxpbmsgbWdsRnVuY3Rpb24JCUZ1bmN0aW9uCitIaUxpbmsgbWdsTGFiZWwJCUxhYmVsCitIaUxpbmsgbWdsTWF0cml4RGVsaW1pdGVyCUlkZW50aWZpZXIKK0hpTGluayBtZ2xOdW1iZXIJCU51bWJlcgorSGlMaW5rIG1nbEhleE51bWJlcgkJTnVtYmVyCitIaUxpbmsgbWdsQ2hhcmFjdGVyCQlOdW1iZXIKK0hpTGluayBtZ2xJcEFkZHIJCU51bWJlcgorSGlMaW5rIG1nbE9wZXJhdG9yCQlPcGVyYXRvcgorSGlMaW5rIG1nbFByZWRlZmluZWQJCW1nbEZ1bmN0aW9uCitIaUxpbmsgbWdsUHJlUHJvYwkJUHJlUHJvYworSGlMaW5rIG1nbFJlcGVhdAkJUmVwZWF0CitIaUxpbmsgbWdsU3RhdGVtZW50CQlTdGF0ZW1lbnQKK0hpTGluayBtZ2xTdHJpbmcJCVN0cmluZworSGlMaW5rIG1nbFN0cmluZ0VzY2FwZQlTcGVjaWFsCitIaUxpbmsgbWdsU3RyaW5nRXNjYXBlR1BDCVNwZWNpYWwKK0hpTGluayBtZ2xTdHJpbmdFcnJvcgkJRXJyb3IKK0hpTGluayBtZ2xTdHJ1Y3QJCW1nbFN0YXRlbWVudAorSGlMaW5rIG1nbFN5bWJvbE9wZXJhdG9yCW1nbE9wZXJhdG9yCitIaUxpbmsgbWdsVHlwZQkJVHlwZQogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJtZ2wiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9tZ3AudmltIGIvcnVudGltZS9zeW50YXgvbWdwLnZpbQppbmRleCA3NmI5NjYxLi5hNWM2MTg2IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tZ3AudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L21ncC52aW0KQEAgLTEwLDExICsxMCw4IEBACiAiIFNQQU0gaXMgX05PVF8gd2VsY29tZSAtIGJlIHJlYWR5IHRvIGJlIHJlcG9ydGVkIQogCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5biBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC00OCwzNiArNDUsMjcgQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9tZ3Bfc3luX2luaXRzIikKLSAgbGV0IGRpZF9tZ3Bfc3luX2luaXRzID0gMQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9tZ3Bfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBtZ3BMaW5lU2tpcAlTcGVjaWFsCitIaUxpbmsgbWdwTGluZVNraXAJU3BlY2lhbAogCi0gIEhpTGluayBtZ3BIYXNoCW1ncENvbW1lbnQKLSAgSGlMaW5rIG1ncFBlcmNlbnQJbWdwQ29tbWVudAotICBIaUxpbmsgbWdwQ29tbWVudAlDb21tZW50CitIaUxpbmsgbWdwSGFzaAltZ3BDb21tZW50CitIaUxpbmsgbWdwUGVyY2VudAltZ3BDb21tZW50CitIaUxpbmsgbWdwQ29tbWVudAlDb21tZW50CiAKLSAgSGlMaW5rIG1ncENvbW1hbmQJSWRlbnRpZmllcgorSGlMaW5rIG1ncENvbW1hbmQJSWRlbnRpZmllcgogCi0gIEhpTGluayBtZ3BMaW5lCVR5cGUKK0hpTGluayBtZ3BMaW5lCVR5cGUKIAotICBIaUxpbmsgbWdwRmlsZQlTdHJpbmcKLSAgSGlMaW5rIG1ncFNpemUJTnVtYmVyCi0gIEhpTGluayBtZ3BWYWx1ZQlOdW1iZXIKK0hpTGluayBtZ3BGaWxlCVN0cmluZworSGlMaW5rIG1ncFNpemUJTnVtYmVyCitIaUxpbmsgbWdwVmFsdWUJTnVtYmVyCiAKLSAgSGlMaW5rIG1ncFBhZ2UJbWdwRGVmaW5lCi0gIEhpTGluayBtZ3BOb0RlZmF1bHQJbWdwRGVmaW5lCi0gIEhpTGluayBtZ3BEZWZpbmUJRGVmaW5lCitIaUxpbmsgbWdwUGFnZQltZ3BEZWZpbmUKK0hpTGluayBtZ3BOb0RlZmF1bHQJbWdwRGVmaW5lCitIaUxpbmsgbWdwRGVmaW5lCURlZmluZQogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibWdwIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbW1hLnZpbSBiL3J1bnRpbWUvc3ludGF4L21tYS52aW0KaW5kZXggYzYzYmViMS4uOWJkYjcwMSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbW1hLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tbWEudmltCkBAIC0zNSw5ICszNSw4IEBACiAiICAgZml4IG5lc3RpbmcKICIgICBmaW5pc2ggcG9wdWxhdGluZyBwb3B1bGFyIHN5bWJvbHMKIAotaWYgdmVyc2lvbiA8IDYwMAotCXN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgICBmaW5pc2gKIGVuZGlmCiAKQEAgLTI4Myw0NyArMjgyLDQwIEBACiAic2V0IGZvbGRuZXN0bWF4PTEKICJzZXQgZm9sZG1pbmxpbmVzPTE1CiAKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9tbWFfc3luX2luaXRzIikKLQlpZiB2ZXJzaW9uIDwgNTA4Ci0JCWxldCBkaWRfbW1hX3N5bl9pbml0cyA9IDEKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLQllbHNlCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotCWVuZGlmCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAgICIgTk9URSAtIHRoZSBmb2xsb3dpbmcgbGlua3MgYXJlIG5vdCBndWFyYW50ZWVkIHRvCi0gICAgIiBsb29rIGdvb2QgdW5kZXIgYWxsIGNvbG9yc2NoZW1lcy4gIFlvdSBtaWdodCBuZWVkIHRvCi0gICAgIiA6c28gJFZJTVJVTlRJTUUvc3ludGF4L2hpdGVzdC52aW0gYW5kIHR3ZWFrIHRoZXNlIHRvCi0gICAgIiBsb29rIGdvb2QgaW4geW91cnMKKyIgTk9URSAtIHRoZSBmb2xsb3dpbmcgbGlua3MgYXJlIG5vdCBndWFyYW50ZWVkIHRvCisiIGxvb2sgZ29vZCB1bmRlciBhbGwgY29sb3JzY2hlbWVzLiAgWW91IG1pZ2h0IG5lZWQgdG8KKyIgOnNvICRWSU1SVU5USU1FL3N5bnRheC9oaXRlc3QudmltIGFuZCB0d2VhayB0aGVzZSB0bworIiBsb29rIGdvb2QgaW4geW91cnMKIAogCi0gICAgSGlMaW5rIG1tYUNvbW1lbnQgICAgICAgICAgIENvbW1lbnQKLSAgICBIaUxpbmsgbW1hQ29tbWVudFN0YXIgICAgICAgQ29tbWVudAotICAgIEhpTGluayBtbWFGdW5jdGlvbkNvbW1lbnQgICBDb21tZW50Ci0gICAgSGlMaW5rIG1tYUxvb3NlUXVvdGUgICAgICAgIENvbW1lbnQKLQlIaUxpbmsgbW1hR2VuZXJpY0Z1bmN0aW9uICAgRnVuY3Rpb24KLQlIaUxpbmsgbW1hVmFyaWFibGUgICAgICAgICAgSWRlbnRpZmllcgorSGlMaW5rIG1tYUNvbW1lbnQgICAgICAgICAgIENvbW1lbnQKK0hpTGluayBtbWFDb21tZW50U3RhciAgICAgICBDb21tZW50CitIaUxpbmsgbW1hRnVuY3Rpb25Db21tZW50ICAgQ29tbWVudAorSGlMaW5rIG1tYUxvb3NlUXVvdGUgICAgICAgIENvbW1lbnQKK0hpTGluayBtbWFHZW5lcmljRnVuY3Rpb24gICBGdW5jdGlvbgorSGlMaW5rIG1tYVZhcmlhYmxlICAgICAgICAgIElkZW50aWZpZXIKICIgICAgSGlMaW5rIG1tYVN5bWJvbCAgICAgICAgICAgIElkZW50aWZpZXIKLQlIaUxpbmsgbW1hT3BlcmF0b3IgICAgICAgICAgT3BlcmF0b3IKLSAgICBIaUxpbmsgbW1hUGF0dGVybk9wICAgICAgICAgT3BlcmF0b3IKLQlIaUxpbmsgbW1hUHVyZUZ1bmN0aW9uICAgICAgT3BlcmF0b3IKLQlIaUxpbmsgbW1hU3RyaW5nICAgICAgICAgICAgU3RyaW5nCi0gICAgSGlMaW5rIG1tYUNvbW1lbnRTdHJpbmcgICAgIFN0cmluZwotCUhpTGluayBtbWFVbmljb2RlICAgICAgICAgICBTdHJpbmcKLQlIaUxpbmsgbW1hTWVzc2FnZSAgICAgICAgICAgVHlwZQotICAgIEhpTGluayBtbWFOdW1iZXIgICAgICAgICAgICBUeXBlCi0JSGlMaW5rIG1tYVBhdHRlcm4gICAgICAgICAgIFR5cGUKLQlIaUxpbmsgbW1hRXJyb3IgICAgICAgICAgICAgRXJyb3IKLQlIaUxpbmsgbW1hRml4bWUgICAgICAgICAgICAgRXJyb3IKLSAgICBIaUxpbmsgbW1hUGF0dGVybkVycm9yICAgICAgRXJyb3IKLSAgICBIaUxpbmsgbW1hVG9kbyAgICAgICAgICAgICAgVG9kbwotICAgIEhpTGluayBtbWFlbVBIQXNpcyAgICAgICAgICBTcGVjaWFsCi0gICAgSGlMaW5rIG1tYUZ1bmN0aW9uVGl0bGUgICAgIFNwZWNpYWwKLSAgICBIaUxpbmsgbW1hTWVzc2FnZVR5cGUgICAgICAgU3BlY2lhbAotICAgIEhpTGluayBtbWFJdGVtICAgICAgICAgICAgICBQcmVwcm9jCitIaUxpbmsgbW1hT3BlcmF0b3IgICAgICAgICAgT3BlcmF0b3IKK0hpTGluayBtbWFQYXR0ZXJuT3AgICAgICAgICBPcGVyYXRvcgorSGlMaW5rIG1tYVB1cmVGdW5jdGlvbiAgICAgIE9wZXJhdG9yCitIaUxpbmsgbW1hU3RyaW5nICAgICAgICAgICAgU3RyaW5nCitIaUxpbmsgbW1hQ29tbWVudFN0cmluZyAgICAgU3RyaW5nCitIaUxpbmsgbW1hVW5pY29kZSAgICAgICAgICAgU3RyaW5nCitIaUxpbmsgbW1hTWVzc2FnZSAgICAgICAgICAgVHlwZQorSGlMaW5rIG1tYU51bWJlciAgICAgICAgICAgIFR5cGUKK0hpTGluayBtbWFQYXR0ZXJuICAgICAgICAgICBUeXBlCitIaUxpbmsgbW1hRXJyb3IgICAgICAgICAgICAgRXJyb3IKK0hpTGluayBtbWFGaXhtZSAgICAgICAgICAgICBFcnJvcgorSGlMaW5rIG1tYVBhdHRlcm5FcnJvciAgICAgIEVycm9yCitIaUxpbmsgbW1hVG9kbyAgICAgICAgICAgICAgVG9kbworSGlMaW5rIG1tYWVtUEhBc2lzICAgICAgICAgIFNwZWNpYWwKK0hpTGluayBtbWFGdW5jdGlvblRpdGxlICAgICBTcGVjaWFsCitIaUxpbmsgbW1hTWVzc2FnZVR5cGUgICAgICAgU3BlY2lhbAorSGlMaW5rIG1tYUl0ZW0gICAgICAgICAgICAgIFByZXByb2MKIAotCWRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibW1hIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9tbWl4LnZpbSBiL3J1bnRpbWUvc3ludGF4L21taXgudmltCmluZGV4IDc5Y2E3ODEuLjcyNGJkZDMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L21taXgudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L21taXgudmltCkBAIC05LDkgKzksOCBAQAogIiBMaW1pdGF0aW9uczoJQ29tbWVudHMgbXVzdCBzdGFydCB3aXRoIGVpdGhlciAlIG9yIC8vCiAiCQkocHJlZmVyYWJseSAlLCBLbnV0aC1TdHlsZSkKIAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTE5LDQ0ICsxMTgsMzYgQEAKIHN5biBrZXl3b3JkIG1taXhSZWdpc3RlcglyQkIgclRUIHJXVyByWFggcllZIHJaWgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9tbWl4X3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX21taXhfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiAgQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKLSAgSGlMaW5rIG1taXhBdAkJVHlwZQotICBIaUxpbmsgbW1peFBzZXVkbwlUeXBlCi0gIEhpTGluayBtbWl4UmVnaXN0ZXIJU3BlY2lhbAotICBIaUxpbmsgbW1peFNlZ21lbnRzCVR5cGUKKyIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiAgQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKK0hpTGluayBtbWl4QXQJCVR5cGUKK0hpTGluayBtbWl4UHNldWRvCVR5cGUKK0hpTGluayBtbWl4UmVnaXN0ZXIJU3BlY2lhbAorSGlMaW5rIG1taXhTZWdtZW50cwlUeXBlCiAKLSAgSGlMaW5rIG1taXhMYWJlbAlTcGVjaWFsCi0gIEhpTGluayBtbWl4Q29tbWVudAlDb21tZW50Ci0gIEhpTGluayBtbWl4T3Bjb2RlCUtleXdvcmQKK0hpTGluayBtbWl4TGFiZWwJU3BlY2lhbAorSGlMaW5rIG1taXhDb21tZW50CUNvbW1lbnQKK0hpTGluayBtbWl4T3Bjb2RlCUtleXdvcmQKIAotICBIaUxpbmsgaGV4TnVtYmVyCU51bWJlcgotICBIaUxpbmsgZGVjTnVtYmVyCU51bWJlcgotICBIaUxpbmsgb2N0TnVtYmVyCU51bWJlcgorSGlMaW5rIGhleE51bWJlcglOdW1iZXIKK0hpTGluayBkZWNOdW1iZXIJTnVtYmVyCitIaUxpbmsgb2N0TnVtYmVyCU51bWJlcgogCi0gIEhpTGluayBtbWl4U3RyaW5nCVN0cmluZwotICBIaUxpbmsgbW1peENoYXIJU3RyaW5nCitIaUxpbmsgbW1peFN0cmluZwlTdHJpbmcKK0hpTGluayBtbWl4Q2hhcglTdHJpbmcKIAotICBIaUxpbmsgbW1peFR5cGUJVHlwZQotICBIaUxpbmsgbW1peElkZW50aWZpZXIJTm9ybWFsCi0gIEhpTGluayBtbWl4U3BlY2lhbENvbW1lbnQgQ29tbWVudAorSGlMaW5rIG1taXhUeXBlCVR5cGUKK0hpTGluayBtbWl4SWRlbnRpZmllcglOb3JtYWwKK0hpTGluayBtbWl4U3BlY2lhbENvbW1lbnQgQ29tbWVudAogCi0gICIgTXkgZGVmYXVsdCBjb2xvciBvdmVycmlkZXM6Ci0gICIgaGkgbW1peFNwZWNpYWxDb21tZW50IGN0ZXJtZmc9cmVkCi0gICJoaSBtbWl4TGFiZWwgY3Rlcm1mZz1saWdodGN5YW4KLSAgIiBoaSBtbWl4VHlwZSBjdGVybWJnPWJsYWNrIGN0ZXJtZmc9YnJvd24KKyIgTXkgZGVmYXVsdCBjb2xvciBvdmVycmlkZXM6CisiIGhpIG1taXhTcGVjaWFsQ29tbWVudCBjdGVybWZnPXJlZAorImhpIG1taXhMYWJlbCBjdGVybWZnPWxpZ2h0Y3lhbgorIiBoaSBtbWl4VHlwZSBjdGVybWJnPWJsYWNrIGN0ZXJtZmc9YnJvd24KIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm1taXgiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L21tcC52aW0gYi9ydW50aW1lL3N5bnRheC9tbXAudmltCmluZGV4IDAxMTdlNzcuLmQwYjlmN2MgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L21tcC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbW1wLnZpbQpAQCAtNSwxMSArNSw4IEBACiAiIFVSTDogaHR0cDovL3JvbndhcmUub3JnL3dpa2kvdmltL21tcAogIiBGaWxldHlwZXM6CSoubW1wCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0zNCw4ICszMSw3IEBACiAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0CisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0CiBpZiAhZXhpc3RzKCJkaWRfbW1wX3N5bnRheF9pbml0cyIpCiAgIGxldCBkaWRfbW1wX3N5bnRheF9pbml0cz0xCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L21vZHNpbTMudmltIGIvcnVudGltZS9zeW50YXgvbW9kc2ltMy52aW0KaW5kZXggMDRlOWFiOS4uYmExOTYzYiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbW9kc2ltMy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbW9kc2ltMy52aW0KQEAgLTEyLDEwICsxMiw4IEBACiAiCiAiIHZlcnkgYmFzaWMgdGhpbmdzIG9ubHkgKGJhc2VkIG9uIHRoZSBtb2R1bGEyIGFuZCBjIGZpbGVzKS4KIAotaWYgdmVyc2lvbiA8IDYwMAotICAiIFJlbW92ZSBhbnkgb2xkIHN5bnRheCBzdHVmZiBoYW5naW5nIGFyb3VuZAotICBzeW4gY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNzcsMzEgKzc1LDIzIEBACiBzeW4gbWF0Y2ggbW9kc2ltM0xpdGVyYWwgIidbXiddJ1x8JycnJyIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbW9kc2ltM19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9tb2RzaW0zX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyCi0gIEhpTGluayBtb2RzaW0zS2V5d29yZAlTdGF0ZW1lbnQKLSAgSGlMaW5rIG1vZHNpbTNCbG9jawkJU3RhdGVtZW50Ci0gIEhpTGluayBtb2RzaW0zQ29tbWVudDEJQ29tbWVudAotICBIaUxpbmsgbW9kc2ltM0NvbW1lbnQyCUNvbW1lbnQKLSAgSGlMaW5rIG1vZHNpbTNTdHJpbmcJCVN0cmluZwotICBIaUxpbmsgbW9kc2ltM0xpdGVyYWwJQ2hhcmFjdGVyCi0gIEhpTGluayBtb2RzaW0zSW5jbHVkZQlTdGF0ZW1lbnQKLSAgSGlMaW5rIG1vZHNpbTNUeXBlCQlUeXBlCi0gIEhpTGluayBtb2RzaW0zUGFyZW5FcnJvcglFcnJvcgotICBIaUxpbmsgbW9kc2ltM0J1aWx0aW4JRnVuY3Rpb24KLSAgSGlMaW5rIG1vZHNpbTNCdWlsdGluTm9QYXJlbglGdW5jdGlvbgorIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgorSGlMaW5rIG1vZHNpbTNLZXl3b3JkCVN0YXRlbWVudAorSGlMaW5rIG1vZHNpbTNCbG9jawkJU3RhdGVtZW50CitIaUxpbmsgbW9kc2ltM0NvbW1lbnQxCUNvbW1lbnQKK0hpTGluayBtb2RzaW0zQ29tbWVudDIJQ29tbWVudAorSGlMaW5rIG1vZHNpbTNTdHJpbmcJCVN0cmluZworSGlMaW5rIG1vZHNpbTNMaXRlcmFsCUNoYXJhY3RlcgorSGlMaW5rIG1vZHNpbTNJbmNsdWRlCVN0YXRlbWVudAorSGlMaW5rIG1vZHNpbTNUeXBlCQlUeXBlCitIaUxpbmsgbW9kc2ltM1BhcmVuRXJyb3IJRXJyb3IKK0hpTGluayBtb2RzaW0zQnVpbHRpbglGdW5jdGlvbgorSGlMaW5rIG1vZHNpbTNCdWlsdGluTm9QYXJlbglGdW5jdGlvbgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibW9kc2ltMyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbW9kdWxhMi52aW0gYi9ydW50aW1lL3N5bnRheC9tb2R1bGEyLnZpbQppbmRleCAzMDE4OTAwLi45ODczMjAxIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tb2R1bGEyLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tb2R1bGEyLnZpbQpAQCAtNCwxMSArNCw4IEBACiAiICAgYmFzZWQgb24gb3JpZ2luYWwgd29yayBvZiBCcmFtIE1vb2xlbmFhciA8QnJhbUB2aW0ub3JnPgogIiBMYXN0IENoYW5nZToJMjAwMSBNYXkgMDkKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTU0LDMyICs1MSwyNCBAQAogc3luIHJlZ2lvbiBtb2R1bGEyU2V0IHN0YXJ0PSJ7IiBlbmQ9In0iCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX21vZHVsYTJfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbW9kdWxhMl9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIG1vZHVsYTJJZGVudAkJSWRlbnRpZmllcgotICBIaUxpbmsgbW9kdWxhMlN0ZENvbnN0CUJvb2xlYW4KLSAgSGlMaW5rIG1vZHVsYTJUeXBlCQlJZGVudGlmaWVyCi0gIEhpTGluayBtb2R1bGEyU3RkRnVuYwkJSWRlbnRpZmllcgotICBIaUxpbmsgbW9kdWxhMkhlYWRlcgkJVHlwZQotICBIaUxpbmsgbW9kdWxhMktleXdvcmQJCVN0YXRlbWVudAotICBIaUxpbmsgbW9kdWxhMkF0dEtleXdvcmQJUHJlUHJvYwotICBIaUxpbmsgbW9kdWxhMkNvbW1lbnQJCUNvbW1lbnQKLSAgIiBUaGUgZm9sbG93aW5nIGlzIGp1c3QgYSBtYXR0ZXIgb2YgdGFzdGUgKHlvdSB3YW50IHRvIHRyeSB0aGlzIGluc3RlYWQpOgotICAiIGhpIG1vZHVsYTJDb21tZW50IHRlcm09Ym9sZCBjdGVybWZnPURhcmtCbHVlIGd1aWZnPUJsdWUgZ3VpPWJvbGQKLSAgSGlMaW5rIG1vZHVsYTJUb2RvCQlUb2RvCi0gIEhpTGluayBtb2R1bGEyU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIG1vZHVsYTJTZXQJCVN0cmluZworSGlMaW5rIG1vZHVsYTJJZGVudAkJSWRlbnRpZmllcgorSGlMaW5rIG1vZHVsYTJTdGRDb25zdAlCb29sZWFuCitIaUxpbmsgbW9kdWxhMlR5cGUJCUlkZW50aWZpZXIKK0hpTGluayBtb2R1bGEyU3RkRnVuYwkJSWRlbnRpZmllcgorSGlMaW5rIG1vZHVsYTJIZWFkZXIJCVR5cGUKK0hpTGluayBtb2R1bGEyS2V5d29yZAkJU3RhdGVtZW50CitIaUxpbmsgbW9kdWxhMkF0dEtleXdvcmQJUHJlUHJvYworSGlMaW5rIG1vZHVsYTJDb21tZW50CQlDb21tZW50CisiIFRoZSBmb2xsb3dpbmcgaXMganVzdCBhIG1hdHRlciBvZiB0YXN0ZSAoeW91IHdhbnQgdG8gdHJ5IHRoaXMgaW5zdGVhZCk6CisiIGhpIG1vZHVsYTJDb21tZW50IHRlcm09Ym9sZCBjdGVybWZnPURhcmtCbHVlIGd1aWZnPUJsdWUgZ3VpPWJvbGQKK0hpTGluayBtb2R1bGEyVG9kbwkJVG9kbworSGlMaW5rIG1vZHVsYTJTdHJpbmcJCVN0cmluZworSGlMaW5rIG1vZHVsYTJTZXQJCVN0cmluZwogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibW9kdWxhMiIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbW9kdWxhMy52aW0gYi9ydW50aW1lL3N5bnRheC9tb2R1bGEzLnZpbQppbmRleCBkNmY3MmFmLi41ZjAwZWZiIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tb2R1bGEzLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tb2R1bGEzLnZpbQpAQCAtNiwxMSArNiw4IEBACiAiIEJhc2ljIHRoaW5ncyBvbmx5Li4uCiAiIEJhc2VkIG9uIHRoZSBtb2R1bGEgMiBzeW50YXggZmlsZQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNDYsMjQgKzQzLDE2IEBACiBzeW4gcmVnaW9uIG1vZHVsYTNTdHJpbmcgc3RhcnQ9KycrIGVuZD0rJysKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbW9kdWxhM19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9tb2R1bGEzX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyCi0gIEhpTGluayBtb2R1bGEzS2V5d29yZAlTdGF0ZW1lbnQKLSAgSGlMaW5rIG1vZHVsYTNCbG9jawkJUHJlUHJvYwotICBIaUxpbmsgbW9kdWxhM0NvbW1lbnQJQ29tbWVudAotICBIaUxpbmsgbW9kdWxhM1N0cmluZwkJU3RyaW5nCisiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyCitIaUxpbmsgbW9kdWxhM0tleXdvcmQJU3RhdGVtZW50CitIaUxpbmsgbW9kdWxhM0Jsb2NrCQlQcmVQcm9jCitIaUxpbmsgbW9kdWxhM0NvbW1lbnQJQ29tbWVudAorSGlMaW5rIG1vZHVsYTNTdHJpbmcJCVN0cmluZwogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibW9kdWxhMyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbW9uay52aW0gYi9ydW50aW1lL3N5bnRheC9tb25rLnZpbQppbmRleCBhZmUyYjU2Li44NTE1NjBhIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tb25rLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tb25rLnZpbQpAQCAtMjEsMTEgKzIxLDggQEAKIAogIiBJbml0aWFsaXppbmc6CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC02MCwxMSArNTcsNyBAQAogCiAiIFI1UlMgU2NoZW1lIEZ1bmN0aW9ucyBhbmQgU3ludGF4OgogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNldCBpc2tleXdvcmQ9MzMsMzUtMzksNDItNTgsNjAtOTAsOTQsOTUsOTctMTIyLDEyNixfCi1lbHNlCi0gIHNldGxvY2FsIGlza2V5d29yZD0zMywzNS0zOSw0Mi01OCw2MC05MCw5NCw5NSw5Ny0xMjIsMTI2LF8KLWVuZGlmCitzZXRsb2NhbCBpc2tleXdvcmQ9MzMsMzUtMzksNDItNTgsNjAtOTAsOTQsOTUsOTctMTIyLDEyNixfCiAKIHN5biBrZXl3b3JkIG1vbmtTeW50YXggbGFtYmRhIGFuZCBvciBpZiBjb25kIGNhc2UgZGVmaW5lIGxldCBsZXQqIGxldHJlYwogc3luIGtleXdvcmQgbW9ua1N5bnRheCBiZWdpbiBkbyBkZWxheSBzZXQhIGVsc2UgPT4KQEAgLTIwMSwzMiArMTk0LDI0IEBACiAiIC4uLiBpLmUuIHN5bmNocm9uaXplIG9uIGEgbGluZSB0aGF0IHN0YXJ0cyBhdCB0aGUgbGVmdCBtYXJnaW4KIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbW9ua19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9tb25rX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgbW9ua1N5bnRheAkJU3RhdGVtZW50Ci0gIEhpTGluayBtb25rRnVuYwkJRnVuY3Rpb24KK0hpTGluayBtb25rU3ludGF4CQlTdGF0ZW1lbnQKK0hpTGluayBtb25rRnVuYwkJRnVuY3Rpb24KIAotICBIaUxpbmsgbW9ua1N0cmluZwkJU3RyaW5nCi0gIEhpTGluayBtb25rQ2hhcgkJQ2hhcmFjdGVyCi0gIEhpTGluayBtb25rTnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIG1vbmtCb29sZWFuCQlCb29sZWFuCitIaUxpbmsgbW9ua1N0cmluZwkJU3RyaW5nCitIaUxpbmsgbW9ua0NoYXIJCUNoYXJhY3RlcgorSGlMaW5rIG1vbmtOdW1iZXIJCU51bWJlcgorSGlMaW5rIG1vbmtCb29sZWFuCQlCb29sZWFuCiAKLSAgSGlMaW5rIG1vbmtEZWxpbWl0ZXIJRGVsaW1pdGVyCi0gIEhpTGluayBtb25rQ29uc3RhbnQJQ29uc3RhbnQKK0hpTGluayBtb25rRGVsaW1pdGVyCURlbGltaXRlcgorSGlMaW5rIG1vbmtDb25zdGFudAlDb25zdGFudAogCi0gIEhpTGluayBtb25rQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgbW9ua0Vycm9yCQlFcnJvcgorSGlMaW5rIG1vbmtDb21tZW50CQlDb21tZW50CitIaUxpbmsgbW9ua0Vycm9yCQlFcnJvcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibW9uayIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbW9vLnZpbSBiL3J1bnRpbWUvc3ludGF4L21vby52aW0KaW5kZXggMTBjNWQzYi4uNjE3MDU4ZiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbW9vLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tb28udmltCkBAIC00LDggKzQsOCBAQAogIiBMYXN0IENoYW5nZToJMjAwMSBPY3QgMDYKICIgTm90ZToJCVJlcXVpcmVzIFZpbSA2LjAgb3IgYWJvdmUKIAotIiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAgfHwgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L21wLnZpbSBiL3J1bnRpbWUvc3ludGF4L21wLnZpbQppbmRleCBjMGZkNjBiLi40ODBkYjJhIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tcC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbXAudmltCkBAIC0zLDExICszLDggQEAKICIgTWFpbnRhaW5lcjoJQW5kcmVhcyBTY2hlcmVyIDxhbmRyZWFzLnNjaGVyZXJAcG9ib3guY29tPgogIiBMYXN0IENoYW5nZToJQXByaWwgMzAsIDIwMDEKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3luIGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTE1LDExICsxMiw3IEBACiBsZXQgb3RoZXJfbWZfbWFjcm9zID0gMCAiIGNtYmFzZS5tZiwgbG9nby5tZiwgLi4uIG5laXRoZXIKIAogIiBSZWFkIHRoZSBNZXRhZm9udCBzeW50YXggdG8gc3RhcnQgd2l0aAotaWYgdmVyc2lvbiA8IDYwMAotICBzb3VyY2UgPHNmaWxlPjpwOmgvbWYudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9tZi52aW0KLWVuZGlmCitydW50aW1lISBzeW50YXgvbWYudmltCiAKICIgTWV0YVBvc3QgaGFzIFRlWCBpbnNlcnRzIGZvciB0eXBlc2V0IGxhYmVscwogIiB2ZXJiYXRpbXRleCwgYnRleCwgYW5kIGV0ZXggd2lsbCBiZSB0cmVhdGVkIGFzIGtleXdvcmRzCkBAIC0xMDgsMjQgKzEwMSwxNiBAQAogZW5kaWYKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9tcF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9tcF9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIG1wVGVYaW5zZXJ0CVN0cmluZwotICBIaUxpbmsgbXBUZVhiZWdpbglTdGF0ZW1lbnQKLSAgSGlMaW5rIG1wVGVYZW5kCVN0YXRlbWVudAotICBIaUxpbmsgbXBJbnRlcm5hbAltZkludGVybmFsCi0gIEhpTGluayBtcE1hY3JvCU1hY3JvCitIaUxpbmsgbXBUZVhpbnNlcnQJU3RyaW5nCitIaUxpbmsgbXBUZVhiZWdpbglTdGF0ZW1lbnQKK0hpTGluayBtcFRlWGVuZAlTdGF0ZW1lbnQKK0hpTGluayBtcEludGVybmFsCW1mSW50ZXJuYWwKK0hpTGluayBtcE1hY3JvCU1hY3JvCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJtcCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbXNpZGwudmltIGIvcnVudGltZS9zeW50YXgvbXNpZGwudmltCmluZGV4IDc5NTg1YmUuLjNiZjU5NDAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L21zaWRsLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tc2lkbC52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOiAgIFZhZGltIFplaXRsaW4gPHZhZGltQHd4d2luZG93cy5vcmc+CiAiIExhc3QgQ2hhbmdlOiAgMjAxMiBGZWIgMTIgYnkgVGhpbG8gU2l4CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC01NiwzOSArNTMsMzEgQEAKIHN5biBzeW5jIGxpbmVzPTUwCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX21zaWRsX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX21zaWRsX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgbXNpZGxJbmNsdWRlCQlJbmNsdWRlCi0gIEhpTGluayBtc2lkbFByZVByb2MJCVByZVByb2MKLSAgSGlMaW5rIG1zaWRsUHJlQ29uZGl0CQlQcmVDb25kaXQKLSAgSGlMaW5rIG1zaWRsRGVmaW5lCQlNYWNybwotICBIaUxpbmsgbXNpZGxJbmNsdWRlZAkJU3RyaW5nCi0gIEhpTGluayBtc2lkbFN0cmluZwkJU3RyaW5nCi0gIEhpTGluayBtc2lkbENvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIG1zaWRsVG9kbwkJVG9kbwotICBIaUxpbmsgbXNpZGxTcGVjaWFsCQlTcGVjaWFsQ2hhcgotICBIaUxpbmsgbXNpZGxMaXRlcmFsCQlOdW1iZXIKLSAgSGlMaW5rIG1zaWRsVVVJRAkJTnVtYmVyCitIaUxpbmsgbXNpZGxJbmNsdWRlCQlJbmNsdWRlCitIaUxpbmsgbXNpZGxQcmVQcm9jCQlQcmVQcm9jCitIaUxpbmsgbXNpZGxQcmVDb25kaXQJCVByZUNvbmRpdAorSGlMaW5rIG1zaWRsRGVmaW5lCQlNYWNybworSGlMaW5rIG1zaWRsSW5jbHVkZWQJCVN0cmluZworSGlMaW5rIG1zaWRsU3RyaW5nCQlTdHJpbmcKK0hpTGluayBtc2lkbENvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBtc2lkbFRvZG8JCVRvZG8KK0hpTGluayBtc2lkbFNwZWNpYWwJCVNwZWNpYWxDaGFyCitIaUxpbmsgbXNpZGxMaXRlcmFsCQlOdW1iZXIKK0hpTGluayBtc2lkbFVVSUQJCU51bWJlcgogCi0gIEhpTGluayBtc2lkbEltcG9ydAkJSW5jbHVkZQotICBIaUxpbmsgbXNpZGxFbnVtCQlTdG9yYWdlQ2xhc3MKLSAgSGlMaW5rIG1zaWRsU3RydWN0CQlTdHJ1Y3R1cmUKLSAgSGlMaW5rIG1zaWRsVHlwZWRlZgkJVHlwZWRlZgotICBIaUxpbmsgbXNpZGxBdHRyaWJ1dGUJCVN0b3JhZ2VDbGFzcworSGlMaW5rIG1zaWRsSW1wb3J0CQlJbmNsdWRlCitIaUxpbmsgbXNpZGxFbnVtCQlTdG9yYWdlQ2xhc3MKK0hpTGluayBtc2lkbFN0cnVjdAkJU3RydWN0dXJlCitIaUxpbmsgbXNpZGxUeXBlZGVmCQlUeXBlZGVmCitIaUxpbmsgbXNpZGxBdHRyaWJ1dGUJCVN0b3JhZ2VDbGFzcwogCi0gIEhpTGluayBtc2lkbFN0YW5kYXJkVHlwZQlUeXBlCi0gIEhpTGluayBtc2lkbFNhZmVBcnJheQkJVHlwZQorSGlMaW5rIG1zaWRsU3RhbmRhcmRUeXBlCVR5cGUKK0hpTGluayBtc2lkbFNhZmVBcnJheQkJVHlwZQogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibXNpZGwiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L21zbWVzc2FnZXMudmltIGIvcnVudGltZS9zeW50YXgvbXNtZXNzYWdlcy52aW0KaW5kZXggNjA1ODg1Ny4uNWZhZWU5NyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbXNtZXNzYWdlcy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbXNtZXNzYWdlcy52aW0KQEAgLTcsMTEgKzcsOCBAQAogIiBTZWUgZm9ybWF0IGRlc2NyaXB0aW9uIGF0IDxodHRwOi8vbXNkbjIubWljcm9zb2Z0LmNvbS9lbi11cy9saWJyYXJ5L2FhMzg1NjQ2LmFzcHg+CiAiIFRoaXMgZmlsZSBpcyBiYXNlZCBvbiB0aGUgcmMudmltIGFuZCBjLnZpbQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbXNxbC52aW0gYi9ydW50aW1lL3N5bnRheC9tc3FsLnZpbQppbmRleCAwNzE2ZmJiLi42MTk1Nzg2IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tc3FsLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tc3FsLnZpbQpAQCAtOCwxMSArOCw4IEBACiAiIE9wdGlvbnMJbXNxbF9zcWxfcXVlcnkgPSAxIGZvciBTUUwgc3ludGF4IGhpZ2hsaWd0aGluZyBpbnNpZGUgc3RyaW5ncwogIgkJbXNxbF9taW5saW5lcyA9IHggICAgIHRvIHN5bmMgYXQgbGVhc3QgeCBsaW5lcyBiYWNrd2FyZHMKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTIwLDEyICsxNyw4IEBACiAgIGxldCBtYWluX3N5bnRheCA9ICdtc3FsJwogZW5kaWYKIAotaWYgdmVyc2lvbiA8IDYwMAotICBzbyA8c2ZpbGU+OnA6aC9odG1sLnZpbQotZWxzZQotICBydW50aW1lISBzeW50YXgvaHRtbC52aW0KLSAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9odG1sLnZpbQordW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiBzeW4gY2x1c3RlciBodG1sUHJlcHJvYyBhZGQ9bXNxbFJlZ2lvbgogCkBAIC01NywzOSArNTAsMzEgQEAKIGVuZGlmCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX21zcWxfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbXNxbF9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIG1zcWxDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBtc3FsU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIG1zcWxOdW1iZXIJCU51bWJlcgotICBIaUxpbmsgbXNxbEZsb2F0CQlGbG9hdAotICBIaUxpbmsgbXNxbElkZW50aWZpZXIJSWRlbnRpZmllcgotICBIaUxpbmsgbXNxbEdsb2JhbElkZW50aWZpZXIJSWRlbnRpZmllcgotICBIaUxpbmsgbXNxbEludFZhcgkJSWRlbnRpZmllcgotICBIaUxpbmsgbXNxbEVudlZhcgkJSWRlbnRpZmllcgotICBIaUxpbmsgbXNxbEZ1bmN0aW9ucwkJRnVuY3Rpb24KLSAgSGlMaW5rIG1zcWxSZXBlYXQJCVJlcGVhdAotICBIaUxpbmsgbXNxbENvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCi0gIEhpTGluayBtc3FsU3RhdGVtZW50CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIG1zcWxUeXBlCQlUeXBlCi0gIEhpTGluayBtc3FsSW5jbHVkZQkJSW5jbHVkZQotICBIaUxpbmsgbXNxbERlZmluZQkJRGVmaW5lCi0gIEhpTGluayBtc3FsU3BlY2lhbENoYXIJU3BlY2lhbENoYXIKLSAgSGlMaW5rIG1zcWxQYXJlbnRFcnJvcglFcnJvcgotICBIaUxpbmsgbXNxbFRvZG8JCVRvZG8KLSAgSGlMaW5rIG1zcWxPcGVyYXRvcgkJT3BlcmF0b3IKLSAgSGlMaW5rIG1zcWxSZWxhdGlvbgkJT3BlcmF0b3IKK0hpTGluayBtc3FsQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIG1zcWxTdHJpbmcJCVN0cmluZworSGlMaW5rIG1zcWxOdW1iZXIJCU51bWJlcgorSGlMaW5rIG1zcWxGbG9hdAkJRmxvYXQKK0hpTGluayBtc3FsSWRlbnRpZmllcglJZGVudGlmaWVyCitIaUxpbmsgbXNxbEdsb2JhbElkZW50aWZpZXIJSWRlbnRpZmllcgorSGlMaW5rIG1zcWxJbnRWYXIJCUlkZW50aWZpZXIKK0hpTGluayBtc3FsRW52VmFyCQlJZGVudGlmaWVyCitIaUxpbmsgbXNxbEZ1bmN0aW9ucwkJRnVuY3Rpb24KK0hpTGluayBtc3FsUmVwZWF0CQlSZXBlYXQKK0hpTGluayBtc3FsQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKK0hpTGluayBtc3FsU3RhdGVtZW50CQlTdGF0ZW1lbnQKK0hpTGluayBtc3FsVHlwZQkJVHlwZQorSGlMaW5rIG1zcWxJbmNsdWRlCQlJbmNsdWRlCitIaUxpbmsgbXNxbERlZmluZQkJRGVmaW5lCitIaUxpbmsgbXNxbFNwZWNpYWxDaGFyCVNwZWNpYWxDaGFyCitIaUxpbmsgbXNxbFBhcmVudEVycm9yCUVycm9yCitIaUxpbmsgbXNxbFRvZG8JCVRvZG8KK0hpTGluayBtc3FsT3BlcmF0b3IJCU9wZXJhdG9yCitIaUxpbmsgbXNxbFJlbGF0aW9uCQlPcGVyYXRvcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibXNxbCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbXVwYWQudmltIGIvcnVudGltZS9zeW50YXgvbXVwYWQudmltCmluZGV4IDEwOWY4ODAuLjdmOTgxZjAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L211cGFkLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tdXBhZC52aW0KQEAgLTUsMTEgKzUsOCBAQAogIiBEYXRlOiAgICAgICAgNi8zMC8yMDA0CiAKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTI2OCwyOCArMjY1LDIxIEBACiAiIGdyYXBoaWNzICBtZXRhLWRvY3VtZW50YXRpb24gQXR0cmlidXRlcwogc3luIGtleXdvcmQgbXVwYWRJZGVudGlmaWVyCW9iamVjdEdyb3Vwc0xpc3RlZAogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbXVwYWRfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbXVwYWRfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBtdXBhZENvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIG11cGFkU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIG11cGFkT3BlcmF0b3IJCU9wZXJhdG9yCi0gIEhpTGluayBtdXBhZFNwZWNpYWwJCVNwZWNpYWwKLSAgSGlMaW5rIG11cGFkU3RhdGVtZW50CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIG11cGFkVW5kZXJsaW5lZAlVbmRlcmxpbmVkCi0gIEhpTGluayBtdXBhZENvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCi0gIEhpTGluayBtdXBhZFJlcGVhdAkJUmVwZWF0Ci0gIEhpTGluayBtdXBhZEZ1bmN0aW9uCQlGdW5jdGlvbgotICBIaUxpbmsgbXVwYWRUeXBlCQlUeXBlCi0gIEhpTGluayBtdXBhZERlZmluZQkJRGVmaW5lCi0gIEhpTGluayBtdXBhZElkZW50aWZpZXIJSWRlbnRpZmllcgorSGlMaW5rIG11cGFkQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIG11cGFkU3RyaW5nCQlTdHJpbmcKK0hpTGluayBtdXBhZE9wZXJhdG9yCQlPcGVyYXRvcgorSGlMaW5rIG11cGFkU3BlY2lhbAkJU3BlY2lhbAorSGlMaW5rIG11cGFkU3RhdGVtZW50CQlTdGF0ZW1lbnQKK0hpTGluayBtdXBhZFVuZGVybGluZWQJVW5kZXJsaW5lZAorSGlMaW5rIG11cGFkQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKK0hpTGluayBtdXBhZFJlcGVhdAkJUmVwZWF0CitIaUxpbmsgbXVwYWRGdW5jdGlvbgkJRnVuY3Rpb24KK0hpTGluayBtdXBhZFR5cGUJCVR5cGUKK0hpTGluayBtdXBhZERlZmluZQkJRGVmaW5lCitIaUxpbmsgbXVwYWRJZGVudGlmaWVyCUlkZW50aWZpZXIKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKICIgVE9ETyAgTW9yZSBjb21wcmVoZW5zaXZlIGxpc3RpbmcuCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9tdXNoLnZpbSBiL3J1bnRpbWUvc3ludGF4L211c2gudmltCmluZGV4IDA2NDVmMzMuLmNmOTVkMmEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L211c2gudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L211c2gudmltCkBAIC0zLDExICszLDggQEAKICIgQmFzZWQgb24gdmltIFN5bnRheCBmaWxlIGJ5OiBCZWsgT2JlcmluIDxnb3NzYW1lckB0ZXJ0aXVzLm5ldC5hdT4KICIgTGFzdCBVcGRhdGVkOiBGcmkgTm92IDA0IDIwOjI4OjE1IDIwMDUKICIKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xODUsNDIgKzE4MiwzNSBAQAogc3ludGF4IGtleXdvcmQgbXVzaEF0dHJpYnV0ZSB2byB2cCB2cSB2ciB2cyB2dCB2dSB2diB2dyB2eCB2eSB2egogCiAKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9tdXNoX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX211c2hfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiAgQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKLSAgSGlMaW5rIG11c2hBdHRyaWJ1dGUgIENvbnN0YW50Ci0gIEhpTGluayBtdXNoQ29tbWFuZCAgICBGdW5jdGlvbgotICBIaUxpbmsgbXVzaE51bWJlciAgICAgTnVtYmVyCi0gIEhpTGluayBtdXNoU2V0dGluZyAgICBQcmVQcm9jCi0gIEhpTGluayBtdXNoRnVuY3Rpb24gICBTdGF0ZW1lbnQKLSAgSGlMaW5rIG11c2hWYXJpYWJsZSAgIElkZW50aWZpZXIKLSAgSGlMaW5rIG11c2hTcGVjaWFsICAgIFNwZWNpYWwKLSAgSGlMaW5rIG11c2hUb2RvICAgICAgIFRvZG8KLSAgSGlMaW5rIG11c2hGbGFnICAgICAgIFNwZWNpYWwKLSAgSGlMaW5rIG11c2hJZGVudGlmaWVyIElkZW50aWZpZXIKLSAgSGlMaW5rIG11c2hEZWZpbmUgICAgIE1hY3JvCi0gIEhpTGluayBtdXNoUHJlUHJvYyAgICBQcmVQcm9jCi0gIEhpTGluayBtdXNoUHJlUHJvY0dyb3VwIFByZVByb2MgCi0gIEhpTGluayBtdXNoUHJlQ29uZGl0IFByZUNvbmRpdAotICBIaUxpbmsgbXVzaEluY2x1ZGVkIGNTdHJpbmcKLSAgSGlMaW5rICBtdXNoSW5jbHVkZSBJbmNsdWRlCisiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyCitIaUxpbmsgbXVzaEF0dHJpYnV0ZSAgQ29uc3RhbnQKK0hpTGluayBtdXNoQ29tbWFuZCAgICBGdW5jdGlvbgorSGlMaW5rIG11c2hOdW1iZXIgICAgIE51bWJlcgorSGlMaW5rIG11c2hTZXR0aW5nICAgIFByZVByb2MKK0hpTGluayBtdXNoRnVuY3Rpb24gICBTdGF0ZW1lbnQKK0hpTGluayBtdXNoVmFyaWFibGUgICBJZGVudGlmaWVyCitIaUxpbmsgbXVzaFNwZWNpYWwgICAgU3BlY2lhbAorSGlMaW5rIG11c2hUb2RvICAgICAgIFRvZG8KK0hpTGluayBtdXNoRmxhZyAgICAgICBTcGVjaWFsCitIaUxpbmsgbXVzaElkZW50aWZpZXIgSWRlbnRpZmllcgorSGlMaW5rIG11c2hEZWZpbmUgICAgIE1hY3JvCitIaUxpbmsgbXVzaFByZVByb2MgICAgUHJlUHJvYworSGlMaW5rIG11c2hQcmVQcm9jR3JvdXAgUHJlUHJvYyAKK0hpTGluayBtdXNoUHJlQ29uZGl0IFByZUNvbmRpdAorSGlMaW5rIG11c2hJbmNsdWRlZCBjU3RyaW5nCitIaUxpbmsgIG11c2hJbmNsdWRlIEluY2x1ZGUKIAogCiAKICIgQ29tbWVudHMKLSAgSGlMaW5rIG11c2hDb21tZW50U3RhcnQgbXVzaENvbW1lbnQKLSAgSGlMaW5rIG11c2hDb21tZW50ICAgIENvbW1lbnQKLSAgSGlMaW5rIG11c2hDb21tZW50U3RyaW5nIG11c2hTdHJpbmcKK0hpTGluayBtdXNoQ29tbWVudFN0YXJ0IG11c2hDb21tZW50CitIaUxpbmsgbXVzaENvbW1lbnQgICAgQ29tbWVudAorSGlMaW5rIG11c2hDb21tZW50U3RyaW5nIG11c2hTdHJpbmcKIAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibXVzaCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbXV0dHJjLnZpbSBiL3J1bnRpbWUvc3ludGF4L211dHRyYy52aW0KaW5kZXggOTRiMjczMS4uNGUwNzNiOCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbXV0dHJjLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tdXR0cmMudmltCkBAIC02LDExICs2LDggQEAKIAogIiBUaGlzIGZpbGUgY292ZXJzIG11dHQgdmVyc2lvbiAxLjcuMAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTgsMTEgKzE1LDcgQEAKIHNldCBjcG8mdmltCiAKICIgU2V0IHRoZSBrZXl3b3JkIGNoYXJhY3RlcnMKLWlmIHZlcnNpb24gPCA2MDAKLSAgc2V0IGlzaz1ALDQ4LTU3LF8sLQotZWxzZQotICBzZXRsb2NhbCBpc2s9QCw0OC01NyxfLC0KLWVuZGlmCitzZXRsb2NhbCBpc2s9QCw0OC01NyxfLC0KIAogIiBoYW5kbGluZyBvcHRpb25hbCB2YXJpYWJsZXMKIGlmICFleGlzdHMoInVzZV9tdXR0X3NpZGViYXIiKQpAQCAtNjM2LDE2MCArNjI5LDE1MiBAQAogc3luIG1hdGNoICAgbXV0dHJjTW9ub0xpbmUJIl5ccyptb25vXHNcK1xTXCsiCXNraXB3aGl0ZSBuZXh0Z3JvdXA9bXV0dHJjTW9ub0F0dHJpYiBjb250YWlucz1tdXR0cmNNb25vCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX211dHRyY19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9tdXR0cmNfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBtdXR0cmNDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBtdXR0cmNFc2NhcGUJCVNwZWNpYWxDaGFyCi0gIEhpTGluayBtdXR0cmNSWENoYXJzCQlTcGVjaWFsQ2hhcgotICBIaUxpbmsgbXV0dHJjU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIG11dHRyY1JYU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIG11dHRyY1JYU3RyaW5nMglTdHJpbmcKLSAgSGlMaW5rIG11dHRyY1NwZWNpYWwJCVNwZWNpYWwKLSAgSGlMaW5rIG11dHRyY0hvb2tzCQlUeXBlCi0gIEhpTGluayBtdXR0cmNHcm91cEZsYWcJVHlwZQotICBIaUxpbmsgbXV0dHJjR3JvdXBEZWYJCU1hY3JvCi0gIEhpTGluayBtdXR0cmNBZGRyRGVmCQltdXR0cmNHcm91cEZsYWcKLSAgSGlMaW5rIG11dHRyY1JYRGVmCQltdXR0cmNHcm91cEZsYWcKLSAgSGlMaW5rIG11dHRyY1JYUGF0CQlTdHJpbmcKLSAgSGlMaW5rIG11dHRyY0FsaWFzR3JvdXBOYW1lCU1hY3JvCi0gIEhpTGluayBtdXR0cmNBbGlhc0tleQkgICAgICAgIElkZW50aWZpZXIKLSAgSGlMaW5rIG11dHRyY1VuQWxpYXNLZXkJSWRlbnRpZmllcgotICBIaUxpbmsgbXV0dHJjQWxpYXNFbmNFbWFpbAlJZGVudGlmaWVyCi0gIEhpTGluayBtdXR0cmNBbGlhc1BhcmVucwlUeXBlCi0gIEhpTGluayBtdXR0cmNTZXROdW1Bc3NpZ25tZW50CU51bWJlcgotICBIaUxpbmsgbXV0dHJjU2V0Qm9vbEFzc2lnbm1lbnQJQm9vbGVhbgotICBIaUxpbmsgbXV0dHJjU2V0UXVhZEFzc2lnbm1lbnQJQm9vbGVhbgotICBIaUxpbmsgbXV0dHJjU2V0U3RyQXNzaWdubWVudAlTdHJpbmcKLSAgSGlMaW5rIG11dHRyY0VtYWlsCQlTcGVjaWFsCi0gIEhpTGluayBtdXR0cmNWYXJpYWJsZUlubmVyCVNwZWNpYWwKLSAgSGlMaW5rIG11dHRyY0VzY2FwZWRWYXJpYWJsZQlTdHJpbmcKLSAgSGlMaW5rIG11dHRyY0hlYWRlcgkJVHlwZQotICBIaUxpbmsgbXV0dHJjS2V5U3BlY2lhbAlTcGVjaWFsQ2hhcgotICBIaUxpbmsgbXV0dHJjS2V5CQlUeXBlCi0gIEhpTGluayBtdXR0cmNLZXlOYW1lCQlTcGVjaWFsQ2hhcgotICBIaUxpbmsgbXV0dHJjVmFyQm9vbAkJSWRlbnRpZmllcgotICBIaUxpbmsgbXV0dHJjVmFyUXVhZAkJSWRlbnRpZmllcgotICBIaUxpbmsgbXV0dHJjVmFyTnVtCQlJZGVudGlmaWVyCi0gIEhpTGluayBtdXR0cmNWYXJTdHIJCUlkZW50aWZpZXIKLSAgSGlMaW5rIG11dHRyY01lbnUJCUlkZW50aWZpZXIKLSAgSGlMaW5rIG11dHRyY0NvbW1hbmQJCUtleXdvcmQKLSAgSGlMaW5rIG11dHRyY01hY3JvRGVzY3IJU3RyaW5nCi0gIEhpTGluayBtdXR0cmNBY3Rpb24JCU1hY3JvCi0gIEhpTGluayBtdXR0cmNCYWRBY3Rpb24JRXJyb3IKLSAgSGlMaW5rIG11dHRyY0JpbmRGdW5jdGlvbglFcnJvcgotICBIaUxpbmsgbXV0dHJjQmluZE1lbnVMaXN0CUVycm9yCi0gIEhpTGluayBtdXR0cmNGdW5jdGlvbgkJTWFjcm8KLSAgSGlMaW5rIG11dHRyY0dyb3VwS2V5d29yZAltdXR0cmNDb21tYW5kCi0gIEhpTGluayBtdXR0cmNHcm91cExpbmUJRXJyb3IKLSAgSGlMaW5rIG11dHRyY1N1YnNjcmliZUtleXdvcmQJbXV0dHJjQ29tbWFuZAotICBIaUxpbmsgbXV0dHJjU3Vic2NyaWJlTGluZQlFcnJvcgotICBIaUxpbmsgbXV0dHJjTGlzdHNLZXl3b3JkCW11dHRyY0NvbW1hbmQKLSAgSGlMaW5rIG11dHRyY0xpc3RzTGluZQlFcnJvcgotICBIaUxpbmsgbXV0dHJjQWx0ZXJuYXRlS2V5d29yZAltdXR0cmNDb21tYW5kCi0gIEhpTGluayBtdXR0cmNBbHRlcm5hdGVzTGluZQlFcnJvcgotICBIaUxpbmsgbXV0dHJjQXR0YWNobWVudHNMaW5lCW11dHRyY0NvbW1hbmQKLSAgSGlMaW5rIG11dHRyY0F0dGFjaG1lbnRzRmxhZwlUeXBlCi0gIEhpTGluayBtdXR0cmNBdHRhY2htZW50c01pbWVUeXBlCVN0cmluZwotICBIaUxpbmsgbXV0dHJjQ29sb3JMaW5lCUVycm9yCi0gIEhpTGluayBtdXR0cmNDb2xvckNvbnRleHQJRXJyb3IKLSAgSGlMaW5rIG11dHRyY0NvbG9yQ29udGV4dEkJSWRlbnRpZmllcgotICBIaUxpbmsgbXV0dHJjQ29sb3JDb250ZXh0SAlJZGVudGlmaWVyCi0gIEhpTGluayBtdXR0cmNDb2xvcktleXdvcmQJbXV0dHJjQ29tbWFuZAotICBIaUxpbmsgbXV0dHJjQ29sb3JLZXl3b3JkSQltdXR0cmNDb2xvcktleXdvcmQKLSAgSGlMaW5rIG11dHRyY0NvbG9yS2V5d29yZEgJbXV0dHJjQ29sb3JLZXl3b3JkCi0gIEhpTGluayBtdXR0cmNDb2xvckZpZWxkCUlkZW50aWZpZXIKLSAgSGlMaW5rIG11dHRyY0NvbG9yCQlUeXBlCi0gIEhpTGluayBtdXR0cmNDb2xvckZHCQlFcnJvcgotICBIaUxpbmsgbXV0dHJjQ29sb3JGR0kJCUVycm9yCi0gIEhpTGluayBtdXR0cmNDb2xvckZHSAkJRXJyb3IKLSAgSGlMaW5rIG11dHRyY0NvbG9yQkcJCUVycm9yCi0gIEhpTGluayBtdXR0cmNDb2xvckJHSQkJRXJyb3IKLSAgSGlMaW5rIG11dHRyY0NvbG9yQkdICQlFcnJvcgotICBIaUxpbmsgbXV0dHJjTW9ub0F0dHJpYgltdXR0cmNDb2xvcgotICBIaUxpbmsgbXV0dHJjTW9ubwkJbXV0dHJjQ29tbWFuZAotICBIaUxpbmsgbXV0dHJjU2ltcGxlUGF0CUlkZW50aWZpZXIKLSAgSGlMaW5rIG11dHRyY1NpbXBsZVBhdFN0cmluZwlNYWNybwotICBIaUxpbmsgbXV0dHJjU2ltcGxlUGF0TWV0YXMJU3BlY2lhbAotICBIaUxpbmsgbXV0dHJjUGF0dGVybgkJRXJyb3IKLSAgSGlMaW5rIG11dHRyY1VuQ29sb3JMaW5lCUVycm9yCi0gIEhpTGluayBtdXR0cmNVbkNvbG9yS2V5d29yZAltdXR0cmNDb21tYW5kCi0gIEhpTGluayBtdXR0cmNVbkNvbG9ySW5kZXgJSWRlbnRpZmllcgotICBIaUxpbmsgbXV0dHJjU2hlbGxTdHJpbmcJbXV0dHJjRXNjYXBlCi0gIEhpTGluayBtdXR0cmNSWEhvb2tzCQltdXR0cmNDb21tYW5kCi0gIEhpTGluayBtdXR0cmNSWEhvb2tOb3QJVHlwZQotICBIaUxpbmsgbXV0dHJjUGF0SG9va3MJCW11dHRyY0NvbW1hbmQKLSAgSGlMaW5rIG11dHRyY1BhdEhvb2tOb3QJVHlwZQotICBIaUxpbmsgbXV0dHJjRm9ybWF0Q29uZGl0aW9uYWxzMiBUeXBlCi0gIEhpTGluayBtdXR0cmNJbmRleEZvcm1hdFN0cgltdXR0cmNTdHJpbmcKLSAgSGlMaW5rIG11dHRyY0luZGV4Rm9ybWF0RXNjYXBlcyBtdXR0cmNFc2NhcGUKLSAgSGlMaW5rIG11dHRyY0luZGV4Rm9ybWF0Q29uZGl0aW9uYWxzIG11dHRyY0Zvcm1hdENvbmRpdGlvbmFsczIKLSAgSGlMaW5rIG11dHRyY0FsaWFzRm9ybWF0U3RyCW11dHRyY1N0cmluZwotICBIaUxpbmsgbXV0dHJjQWxpYXNGb3JtYXRFc2NhcGVzIG11dHRyY0VzY2FwZQotICBIaUxpbmsgbXV0dHJjQXR0YWNoRm9ybWF0U3RyCW11dHRyY1N0cmluZwotICBIaUxpbmsgbXV0dHJjQXR0YWNoRm9ybWF0RXNjYXBlcyBtdXR0cmNFc2NhcGUKLSAgSGlMaW5rIG11dHRyY0F0dGFjaEZvcm1hdENvbmRpdGlvbmFscyBtdXR0cmNGb3JtYXRDb25kaXRpb25hbHMyCi0gIEhpTGluayBtdXR0cmNDb21wb3NlRm9ybWF0U3RyCW11dHRyY1N0cmluZwotICBIaUxpbmsgbXV0dHJjQ29tcG9zZUZvcm1hdEVzY2FwZXMgbXV0dHJjRXNjYXBlCi0gIEhpTGluayBtdXR0cmNGb2xkZXJGb3JtYXRTdHIJbXV0dHJjU3RyaW5nCi0gIEhpTGluayBtdXR0cmNGb2xkZXJGb3JtYXRFc2NhcGVzIG11dHRyY0VzY2FwZQotICBIaUxpbmsgbXV0dHJjRm9sZGVyRm9ybWF0Q29uZGl0aW9uYWxzIG11dHRyY0Zvcm1hdENvbmRpdGlvbmFsczIKLSAgSGlMaW5rIG11dHRyY01peEZvcm1hdFN0cgltdXR0cmNTdHJpbmcKLSAgSGlMaW5rIG11dHRyY01peEZvcm1hdEVzY2FwZXMgbXV0dHJjRXNjYXBlCi0gIEhpTGluayBtdXR0cmNNaXhGb3JtYXRDb25kaXRpb25hbHMgbXV0dHJjRm9ybWF0Q29uZGl0aW9uYWxzMgotICBIaUxpbmsgbXV0dHJjUEdQRm9ybWF0U3RyCW11dHRyY1N0cmluZwotICBIaUxpbmsgbXV0dHJjUEdQRm9ybWF0RXNjYXBlcyBtdXR0cmNFc2NhcGUKLSAgSGlMaW5rIG11dHRyY1BHUEZvcm1hdENvbmRpdGlvbmFscyBtdXR0cmNGb3JtYXRDb25kaXRpb25hbHMyCi0gIEhpTGluayBtdXR0cmNQR1BDbWRGb3JtYXRTdHIJbXV0dHJjU3RyaW5nCi0gIEhpTGluayBtdXR0cmNQR1BDbWRGb3JtYXRFc2NhcGVzIG11dHRyY0VzY2FwZQotICBIaUxpbmsgbXV0dHJjUEdQQ21kRm9ybWF0Q29uZGl0aW9uYWxzIG11dHRyY0Zvcm1hdENvbmRpdGlvbmFsczIKLSAgSGlMaW5rIG11dHRyY1N0YXR1c0Zvcm1hdFN0cgltdXR0cmNTdHJpbmcKLSAgSGlMaW5rIG11dHRyY1N0YXR1c0Zvcm1hdEVzY2FwZXMgbXV0dHJjRXNjYXBlCi0gIEhpTGluayBtdXR0cmNTdGF0dXNGb3JtYXRDb25kaXRpb25hbHMgbXV0dHJjRm9ybWF0Q29uZGl0aW9uYWxzMgotICBIaUxpbmsgbXV0dHJjUEdQR2V0S2V5c0Zvcm1hdFN0cgltdXR0cmNTdHJpbmcKLSAgSGlMaW5rIG11dHRyY1BHUEdldEtleXNGb3JtYXRFc2NhcGVzIG11dHRyY0VzY2FwZQotICBIaUxpbmsgbXV0dHJjU21pbWVGb3JtYXRTdHIJbXV0dHJjU3RyaW5nCi0gIEhpTGluayBtdXR0cmNTbWltZUZvcm1hdEVzY2FwZXMgbXV0dHJjRXNjYXBlCi0gIEhpTGluayBtdXR0cmNTbWltZUZvcm1hdENvbmRpdGlvbmFscyBtdXR0cmNGb3JtYXRDb25kaXRpb25hbHMyCi0gIEhpTGluayBtdXR0cmNUaW1lRXNjYXBlcwltdXR0cmNFc2NhcGUKLSAgSGlMaW5rIG11dHRyY1BHUFRpbWVFc2NhcGVzCW11dHRyY0VzY2FwZQotICBIaUxpbmsgbXV0dHJjU3RyZnRpbWVFc2NhcGVzCVR5cGUKLSAgSGlMaW5rIG11dHRyY1N0cmZ0aW1lRm9ybWF0U3RyIG11dHRyY1N0cmluZwotICBIaUxpbmsgbXV0dHJjRm9ybWF0RXJyb3JzIEVycm9yCitIaUxpbmsgbXV0dHJjQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIG11dHRyY0VzY2FwZQkJU3BlY2lhbENoYXIKK0hpTGluayBtdXR0cmNSWENoYXJzCQlTcGVjaWFsQ2hhcgorSGlMaW5rIG11dHRyY1N0cmluZwkJU3RyaW5nCitIaUxpbmsgbXV0dHJjUlhTdHJpbmcJCVN0cmluZworSGlMaW5rIG11dHRyY1JYU3RyaW5nMglTdHJpbmcKK0hpTGluayBtdXR0cmNTcGVjaWFsCQlTcGVjaWFsCitIaUxpbmsgbXV0dHJjSG9va3MJCVR5cGUKK0hpTGluayBtdXR0cmNHcm91cEZsYWcJVHlwZQorSGlMaW5rIG11dHRyY0dyb3VwRGVmCQlNYWNybworSGlMaW5rIG11dHRyY0FkZHJEZWYJCW11dHRyY0dyb3VwRmxhZworSGlMaW5rIG11dHRyY1JYRGVmCQltdXR0cmNHcm91cEZsYWcKK0hpTGluayBtdXR0cmNSWFBhdAkJU3RyaW5nCitIaUxpbmsgbXV0dHJjQWxpYXNHcm91cE5hbWUJTWFjcm8KK0hpTGluayBtdXR0cmNBbGlhc0tleQkgICAgICAgIElkZW50aWZpZXIKK0hpTGluayBtdXR0cmNVbkFsaWFzS2V5CUlkZW50aWZpZXIKK0hpTGluayBtdXR0cmNBbGlhc0VuY0VtYWlsCUlkZW50aWZpZXIKK0hpTGluayBtdXR0cmNBbGlhc1BhcmVucwlUeXBlCitIaUxpbmsgbXV0dHJjU2V0TnVtQXNzaWdubWVudAlOdW1iZXIKK0hpTGluayBtdXR0cmNTZXRCb29sQXNzaWdubWVudAlCb29sZWFuCitIaUxpbmsgbXV0dHJjU2V0UXVhZEFzc2lnbm1lbnQJQm9vbGVhbgorSGlMaW5rIG11dHRyY1NldFN0ckFzc2lnbm1lbnQJU3RyaW5nCitIaUxpbmsgbXV0dHJjRW1haWwJCVNwZWNpYWwKK0hpTGluayBtdXR0cmNWYXJpYWJsZUlubmVyCVNwZWNpYWwKK0hpTGluayBtdXR0cmNFc2NhcGVkVmFyaWFibGUJU3RyaW5nCitIaUxpbmsgbXV0dHJjSGVhZGVyCQlUeXBlCitIaUxpbmsgbXV0dHJjS2V5U3BlY2lhbAlTcGVjaWFsQ2hhcgorSGlMaW5rIG11dHRyY0tleQkJVHlwZQorSGlMaW5rIG11dHRyY0tleU5hbWUJCVNwZWNpYWxDaGFyCitIaUxpbmsgbXV0dHJjVmFyQm9vbAkJSWRlbnRpZmllcgorSGlMaW5rIG11dHRyY1ZhclF1YWQJCUlkZW50aWZpZXIKK0hpTGluayBtdXR0cmNWYXJOdW0JCUlkZW50aWZpZXIKK0hpTGluayBtdXR0cmNWYXJTdHIJCUlkZW50aWZpZXIKK0hpTGluayBtdXR0cmNNZW51CQlJZGVudGlmaWVyCitIaUxpbmsgbXV0dHJjQ29tbWFuZAkJS2V5d29yZAorSGlMaW5rIG11dHRyY01hY3JvRGVzY3IJU3RyaW5nCitIaUxpbmsgbXV0dHJjQWN0aW9uCQlNYWNybworSGlMaW5rIG11dHRyY0JhZEFjdGlvbglFcnJvcgorSGlMaW5rIG11dHRyY0JpbmRGdW5jdGlvbglFcnJvcgorSGlMaW5rIG11dHRyY0JpbmRNZW51TGlzdAlFcnJvcgorSGlMaW5rIG11dHRyY0Z1bmN0aW9uCQlNYWNybworSGlMaW5rIG11dHRyY0dyb3VwS2V5d29yZAltdXR0cmNDb21tYW5kCitIaUxpbmsgbXV0dHJjR3JvdXBMaW5lCUVycm9yCitIaUxpbmsgbXV0dHJjU3Vic2NyaWJlS2V5d29yZAltdXR0cmNDb21tYW5kCitIaUxpbmsgbXV0dHJjU3Vic2NyaWJlTGluZQlFcnJvcgorSGlMaW5rIG11dHRyY0xpc3RzS2V5d29yZAltdXR0cmNDb21tYW5kCitIaUxpbmsgbXV0dHJjTGlzdHNMaW5lCUVycm9yCitIaUxpbmsgbXV0dHJjQWx0ZXJuYXRlS2V5d29yZAltdXR0cmNDb21tYW5kCitIaUxpbmsgbXV0dHJjQWx0ZXJuYXRlc0xpbmUJRXJyb3IKK0hpTGluayBtdXR0cmNBdHRhY2htZW50c0xpbmUJbXV0dHJjQ29tbWFuZAorSGlMaW5rIG11dHRyY0F0dGFjaG1lbnRzRmxhZwlUeXBlCitIaUxpbmsgbXV0dHJjQXR0YWNobWVudHNNaW1lVHlwZQlTdHJpbmcKK0hpTGluayBtdXR0cmNDb2xvckxpbmUJRXJyb3IKK0hpTGluayBtdXR0cmNDb2xvckNvbnRleHQJRXJyb3IKK0hpTGluayBtdXR0cmNDb2xvckNvbnRleHRJCUlkZW50aWZpZXIKK0hpTGluayBtdXR0cmNDb2xvckNvbnRleHRICUlkZW50aWZpZXIKK0hpTGluayBtdXR0cmNDb2xvcktleXdvcmQJbXV0dHJjQ29tbWFuZAorSGlMaW5rIG11dHRyY0NvbG9yS2V5d29yZEkJbXV0dHJjQ29sb3JLZXl3b3JkCitIaUxpbmsgbXV0dHJjQ29sb3JLZXl3b3JkSAltdXR0cmNDb2xvcktleXdvcmQKK0hpTGluayBtdXR0cmNDb2xvckZpZWxkCUlkZW50aWZpZXIKK0hpTGluayBtdXR0cmNDb2xvcgkJVHlwZQorSGlMaW5rIG11dHRyY0NvbG9yRkcJCUVycm9yCitIaUxpbmsgbXV0dHJjQ29sb3JGR0kJCUVycm9yCitIaUxpbmsgbXV0dHJjQ29sb3JGR0gJCUVycm9yCitIaUxpbmsgbXV0dHJjQ29sb3JCRwkJRXJyb3IKK0hpTGluayBtdXR0cmNDb2xvckJHSQkJRXJyb3IKK0hpTGluayBtdXR0cmNDb2xvckJHSAkJRXJyb3IKK0hpTGluayBtdXR0cmNNb25vQXR0cmliCW11dHRyY0NvbG9yCitIaUxpbmsgbXV0dHJjTW9ubwkJbXV0dHJjQ29tbWFuZAorSGlMaW5rIG11dHRyY1NpbXBsZVBhdAlJZGVudGlmaWVyCitIaUxpbmsgbXV0dHJjU2ltcGxlUGF0U3RyaW5nCU1hY3JvCitIaUxpbmsgbXV0dHJjU2ltcGxlUGF0TWV0YXMJU3BlY2lhbAorSGlMaW5rIG11dHRyY1BhdHRlcm4JCUVycm9yCitIaUxpbmsgbXV0dHJjVW5Db2xvckxpbmUJRXJyb3IKK0hpTGluayBtdXR0cmNVbkNvbG9yS2V5d29yZAltdXR0cmNDb21tYW5kCitIaUxpbmsgbXV0dHJjVW5Db2xvckluZGV4CUlkZW50aWZpZXIKK0hpTGluayBtdXR0cmNTaGVsbFN0cmluZwltdXR0cmNFc2NhcGUKK0hpTGluayBtdXR0cmNSWEhvb2tzCQltdXR0cmNDb21tYW5kCitIaUxpbmsgbXV0dHJjUlhIb29rTm90CVR5cGUKK0hpTGluayBtdXR0cmNQYXRIb29rcwkJbXV0dHJjQ29tbWFuZAorSGlMaW5rIG11dHRyY1BhdEhvb2tOb3QJVHlwZQorSGlMaW5rIG11dHRyY0Zvcm1hdENvbmRpdGlvbmFsczIgVHlwZQorSGlMaW5rIG11dHRyY0luZGV4Rm9ybWF0U3RyCW11dHRyY1N0cmluZworSGlMaW5rIG11dHRyY0luZGV4Rm9ybWF0RXNjYXBlcyBtdXR0cmNFc2NhcGUKK0hpTGluayBtdXR0cmNJbmRleEZvcm1hdENvbmRpdGlvbmFscyBtdXR0cmNGb3JtYXRDb25kaXRpb25hbHMyCitIaUxpbmsgbXV0dHJjQWxpYXNGb3JtYXRTdHIJbXV0dHJjU3RyaW5nCitIaUxpbmsgbXV0dHJjQWxpYXNGb3JtYXRFc2NhcGVzIG11dHRyY0VzY2FwZQorSGlMaW5rIG11dHRyY0F0dGFjaEZvcm1hdFN0cgltdXR0cmNTdHJpbmcKK0hpTGluayBtdXR0cmNBdHRhY2hGb3JtYXRFc2NhcGVzIG11dHRyY0VzY2FwZQorSGlMaW5rIG11dHRyY0F0dGFjaEZvcm1hdENvbmRpdGlvbmFscyBtdXR0cmNGb3JtYXRDb25kaXRpb25hbHMyCitIaUxpbmsgbXV0dHJjQ29tcG9zZUZvcm1hdFN0cgltdXR0cmNTdHJpbmcKK0hpTGluayBtdXR0cmNDb21wb3NlRm9ybWF0RXNjYXBlcyBtdXR0cmNFc2NhcGUKK0hpTGluayBtdXR0cmNGb2xkZXJGb3JtYXRTdHIJbXV0dHJjU3RyaW5nCitIaUxpbmsgbXV0dHJjRm9sZGVyRm9ybWF0RXNjYXBlcyBtdXR0cmNFc2NhcGUKK0hpTGluayBtdXR0cmNGb2xkZXJGb3JtYXRDb25kaXRpb25hbHMgbXV0dHJjRm9ybWF0Q29uZGl0aW9uYWxzMgorSGlMaW5rIG11dHRyY01peEZvcm1hdFN0cgltdXR0cmNTdHJpbmcKK0hpTGluayBtdXR0cmNNaXhGb3JtYXRFc2NhcGVzIG11dHRyY0VzY2FwZQorSGlMaW5rIG11dHRyY01peEZvcm1hdENvbmRpdGlvbmFscyBtdXR0cmNGb3JtYXRDb25kaXRpb25hbHMyCitIaUxpbmsgbXV0dHJjUEdQRm9ybWF0U3RyCW11dHRyY1N0cmluZworSGlMaW5rIG11dHRyY1BHUEZvcm1hdEVzY2FwZXMgbXV0dHJjRXNjYXBlCitIaUxpbmsgbXV0dHJjUEdQRm9ybWF0Q29uZGl0aW9uYWxzIG11dHRyY0Zvcm1hdENvbmRpdGlvbmFsczIKK0hpTGluayBtdXR0cmNQR1BDbWRGb3JtYXRTdHIJbXV0dHJjU3RyaW5nCitIaUxpbmsgbXV0dHJjUEdQQ21kRm9ybWF0RXNjYXBlcyBtdXR0cmNFc2NhcGUKK0hpTGluayBtdXR0cmNQR1BDbWRGb3JtYXRDb25kaXRpb25hbHMgbXV0dHJjRm9ybWF0Q29uZGl0aW9uYWxzMgorSGlMaW5rIG11dHRyY1N0YXR1c0Zvcm1hdFN0cgltdXR0cmNTdHJpbmcKK0hpTGluayBtdXR0cmNTdGF0dXNGb3JtYXRFc2NhcGVzIG11dHRyY0VzY2FwZQorSGlMaW5rIG11dHRyY1N0YXR1c0Zvcm1hdENvbmRpdGlvbmFscyBtdXR0cmNGb3JtYXRDb25kaXRpb25hbHMyCitIaUxpbmsgbXV0dHJjUEdQR2V0S2V5c0Zvcm1hdFN0cgltdXR0cmNTdHJpbmcKK0hpTGluayBtdXR0cmNQR1BHZXRLZXlzRm9ybWF0RXNjYXBlcyBtdXR0cmNFc2NhcGUKK0hpTGluayBtdXR0cmNTbWltZUZvcm1hdFN0cgltdXR0cmNTdHJpbmcKK0hpTGluayBtdXR0cmNTbWltZUZvcm1hdEVzY2FwZXMgbXV0dHJjRXNjYXBlCitIaUxpbmsgbXV0dHJjU21pbWVGb3JtYXRDb25kaXRpb25hbHMgbXV0dHJjRm9ybWF0Q29uZGl0aW9uYWxzMgorSGlMaW5rIG11dHRyY1RpbWVFc2NhcGVzCW11dHRyY0VzY2FwZQorSGlMaW5rIG11dHRyY1BHUFRpbWVFc2NhcGVzCW11dHRyY0VzY2FwZQorSGlMaW5rIG11dHRyY1N0cmZ0aW1lRXNjYXBlcwlUeXBlCitIaUxpbmsgbXV0dHJjU3RyZnRpbWVGb3JtYXRTdHIgbXV0dHJjU3RyaW5nCitIaUxpbmsgbXV0dHJjRm9ybWF0RXJyb3JzIEVycm9yCiAKLSAgSGlMaW5rIG11dHRyY0JpbmRGdW5jdGlvbk5MCVNwZWNpYWxDaGFyCi0gIEhpTGluayBtdXR0cmNCaW5kS2V5TkwJU3BlY2lhbENoYXIKLSAgSGlMaW5rIG11dHRyY0JpbmRNZW51TGlzdE5MCVNwZWNpYWxDaGFyCi0gIEhpTGluayBtdXR0cmNNYWNyb0Rlc2NyTkwJU3BlY2lhbENoYXIKLSAgSGlMaW5rIG11dHRyY01hY3JvQm9keU5MCVNwZWNpYWxDaGFyCi0gIEhpTGluayBtdXR0cmNNYWNyb0tleU5MCVNwZWNpYWxDaGFyCi0gIEhpTGluayBtdXR0cmNNYWNyb01lbnVMaXN0TkwJU3BlY2lhbENoYXIKLSAgSGlMaW5rIG11dHRyY0NvbG9yTWF0Y2hDb3VudE5MIFNwZWNpYWxDaGFyCi0gIEhpTGluayBtdXR0cmNDb2xvck5MCQlTcGVjaWFsQ2hhcgotICBIaUxpbmsgbXV0dHJjQ29sb3JSWE5MCVNwZWNpYWxDaGFyCi0gIEhpTGluayBtdXR0cmNDb2xvckJHTkwJU3BlY2lhbENoYXIKLSAgSGlMaW5rIG11dHRyY0NvbG9yRkdOTAlTcGVjaWFsQ2hhcgotICBIaUxpbmsgbXV0dHJjQWxpYXNOYW1lTkwJU3BlY2lhbENoYXIKLSAgSGlMaW5rIG11dHRyY0FsaWFzRU5OTAlTcGVjaWFsQ2hhcgotICBIaUxpbmsgbXV0dHJjQWxpYXNOTAkJU3BlY2lhbENoYXIKLSAgSGlMaW5rIG11dHRyY1VuQWxpYXNOTAlTcGVjaWFsQ2hhcgotICBIaUxpbmsgbXV0dHJjQWxpYXNHcm91cERlZk5MCVNwZWNpYWxDaGFyCi0gIEhpTGluayBtdXR0cmNBbGlhc0VuY0VtYWlsTkwJU3BlY2lhbENoYXIKLSAgSGlMaW5rIG11dHRyY1BhdHRlcm5OTAlTcGVjaWFsQ2hhcgotICBIaUxpbmsgbXV0dHJjVW5Db2xvclBhdE5MCVNwZWNpYWxDaGFyCi0gIEhpTGluayBtdXR0cmNVbkNvbG9yQVBOTAlTcGVjaWFsQ2hhcgotICBIaUxpbmsgbXV0dHJjVW5Db2xvckluZGV4TkwJU3BlY2lhbENoYXIKLSAgSGlMaW5rIG11dHRyY1N0cmluZ05MCQlTcGVjaWFsQ2hhcgorSGlMaW5rIG11dHRyY0JpbmRGdW5jdGlvbk5MCVNwZWNpYWxDaGFyCitIaUxpbmsgbXV0dHJjQmluZEtleU5MCVNwZWNpYWxDaGFyCitIaUxpbmsgbXV0dHJjQmluZE1lbnVMaXN0TkwJU3BlY2lhbENoYXIKK0hpTGluayBtdXR0cmNNYWNyb0Rlc2NyTkwJU3BlY2lhbENoYXIKK0hpTGluayBtdXR0cmNNYWNyb0JvZHlOTAlTcGVjaWFsQ2hhcgorSGlMaW5rIG11dHRyY01hY3JvS2V5TkwJU3BlY2lhbENoYXIKK0hpTGluayBtdXR0cmNNYWNyb01lbnVMaXN0TkwJU3BlY2lhbENoYXIKK0hpTGluayBtdXR0cmNDb2xvck1hdGNoQ291bnROTCBTcGVjaWFsQ2hhcgorSGlMaW5rIG11dHRyY0NvbG9yTkwJCVNwZWNpYWxDaGFyCitIaUxpbmsgbXV0dHJjQ29sb3JSWE5MCVNwZWNpYWxDaGFyCitIaUxpbmsgbXV0dHJjQ29sb3JCR05MCVNwZWNpYWxDaGFyCitIaUxpbmsgbXV0dHJjQ29sb3JGR05MCVNwZWNpYWxDaGFyCitIaUxpbmsgbXV0dHJjQWxpYXNOYW1lTkwJU3BlY2lhbENoYXIKK0hpTGluayBtdXR0cmNBbGlhc0VOTkwJU3BlY2lhbENoYXIKK0hpTGluayBtdXR0cmNBbGlhc05MCQlTcGVjaWFsQ2hhcgorSGlMaW5rIG11dHRyY1VuQWxpYXNOTAlTcGVjaWFsQ2hhcgorSGlMaW5rIG11dHRyY0FsaWFzR3JvdXBEZWZOTAlTcGVjaWFsQ2hhcgorSGlMaW5rIG11dHRyY0FsaWFzRW5jRW1haWxOTAlTcGVjaWFsQ2hhcgorSGlMaW5rIG11dHRyY1BhdHRlcm5OTAlTcGVjaWFsQ2hhcgorSGlMaW5rIG11dHRyY1VuQ29sb3JQYXROTAlTcGVjaWFsQ2hhcgorSGlMaW5rIG11dHRyY1VuQ29sb3JBUE5MCVNwZWNpYWxDaGFyCitIaUxpbmsgbXV0dHJjVW5Db2xvckluZGV4TkwJU3BlY2lhbENoYXIKK0hpTGluayBtdXR0cmNTdHJpbmdOTAkJU3BlY2lhbENoYXIKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm11dHRyYyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbXlzcWwudmltIGIvcnVudGltZS9zeW50YXgvbXlzcWwudmltCmluZGV4IGQ3Y2Y3NDcuLjhkMDM2MWMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L215c3FsLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9teXNxbC52aW0KQEAgLTYsMTEgKzYsOCBAQAogIiBVUkw6ICAgICAgICAgIGZ0cDovL2NlZGFyLXNvbHV0aW9ucy5jb20vc29mdHdhcmUvbXlzcWwudmltCiAiIE5vdGU6ICAgICAgICAgVGhlIGRlZmluaXRpb25zIGJlbG93IGFyZSB0YWtlbiBmcm9tIHRoZSBteXNxbCB1c2VyIG1hbnVhbCBhcyBvZiBBcHJpbCAyMDAyLCBmb3IgdmVyc2lvbiAzLjIzCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0yNzMsMjkgKzI3MCwyMSBAQAogc3luIHJlZ2lvbiBteXNxbEZ1bmN0aW9uICAgICAgICAgc3RhcnQ9InllYXJ3ZWVrKCIgZW5kPSIpIiBjb250YWlucz1BTEwKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbXlzcWxfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbXlzcWxfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBteXNxbEtleXdvcmQgICAgICAgICAgICBTdGF0ZW1lbnQKLSAgSGlMaW5rIG15c3FsU3BlY2lhbCAgICAgICAgICAgIFNwZWNpYWwKLSAgSGlMaW5rIG15c3FsU3RyaW5nICAgICAgICAgICAgIFN0cmluZwotICBIaUxpbmsgbXlzcWxOdW1iZXIgICAgICAgICAgICAgTnVtYmVyCi0gIEhpTGluayBteXNxbFZhcmlhYmxlICAgICAgICAgICBJZGVudGlmaWVyCi0gIEhpTGluayBteXNxbENvbW1lbnQgICAgICAgICAgICBDb21tZW50Ci0gIEhpTGluayBteXNxbFR5cGUgICAgICAgICAgICAgICBUeXBlCi0gIEhpTGluayBteXNxbE9wZXJhdG9yICAgICAgICAgICBTdGF0ZW1lbnQKLSAgSGlMaW5rIG15c3FsRmxvdyAgICAgICAgICAgICAgIFN0YXRlbWVudAotICBIaUxpbmsgbXlzcWxGdW5jdGlvbiAgICAgICAgICAgRnVuY3Rpb24KK0hpTGluayBteXNxbEtleXdvcmQgICAgICAgICAgICBTdGF0ZW1lbnQKK0hpTGluayBteXNxbFNwZWNpYWwgICAgICAgICAgICBTcGVjaWFsCitIaUxpbmsgbXlzcWxTdHJpbmcgICAgICAgICAgICAgU3RyaW5nCitIaUxpbmsgbXlzcWxOdW1iZXIgICAgICAgICAgICAgTnVtYmVyCitIaUxpbmsgbXlzcWxWYXJpYWJsZSAgICAgICAgICAgSWRlbnRpZmllcgorSGlMaW5rIG15c3FsQ29tbWVudCAgICAgICAgICAgIENvbW1lbnQKK0hpTGluayBteXNxbFR5cGUgICAgICAgICAgICAgICBUeXBlCitIaUxpbmsgbXlzcWxPcGVyYXRvciAgICAgICAgICAgU3RhdGVtZW50CitIaUxpbmsgbXlzcWxGbG93ICAgICAgICAgICAgICAgU3RhdGVtZW50CitIaUxpbmsgbXlzcWxGdW5jdGlvbiAgICAgICAgICAgRnVuY3Rpb24KIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm15c3FsIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9uYW1lZC52aW0gYi9ydW50aW1lL3N5bnRheC9uYW1lZC52aW0KaW5kZXggZmFlYzVmNi4uNmQ2Y2JkNCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbmFtZWQudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L25hbWVkLnZpbQpAQCAtMTEsMjUgKzExLDE2IEBACiAiIFRoaXMgZmlsZSBjb3VsZCBkbyB3aXRoIGEgbG90IG9mIGltcHJvdmVtZW50cywgc28gY29tbWVudHMgYXJlIHdlbGNvbWUuCiAiIFBsZWFzZSBzdWJtaXQgdGhlIG5hbWVkLmNvbmYgKHNlZ21lbnQpIHdpdGggYW55IGNvbW1lbnRzLgogIgotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKIHN5biBjYXNlIG1hdGNoCiAKLWlmIHZlcnNpb24gPj0gNjAwCi0gIHNldGxvY2FsIGlza2V5d29yZD0uLC0sNDgtNTgsQS1aLGEteixfCi1lbHNlCi0gIHNldCBpc2tleXdvcmQ9LiwtLDQ4LTU4LEEtWixhLXosXwotZW5kaWYKK3NldGxvY2FsIGlza2V5d29yZD0uLC0sNDgtNTgsQS1aLGEteixfCiAKLWlmIHZlcnNpb24gPj0gNjAwCi0gIHN5biBzeW5jIG1hdGNoIG5hbWVkU3luYyBncm91cGhlcmUgTk9ORSAiXih6b25lfGNvbnRyb2xzfGFjbHxrZXkpIgotZW5kaWYKK3N5biBzeW5jIG1hdGNoIG5hbWVkU3luYyBncm91cGhlcmUgTk9ORSAiXih6b25lfGNvbnRyb2xzfGFjbHxrZXkpIgogCiBsZXQgczpzYXZlX2NwbyA9ICZjcG8KIHNldCBjcG8tPUMKQEAgLTE5Nyw0OCArMTg4LDQwIEBACiBzeW4gbWF0Y2gJbmFtZWRQYXJlbkVycm9yCSt9XChbXjtdXHwkXCkrCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX25hbWVkX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX25hbWVkX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgbmFtZWRDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIG5hbWVkSW5jbHVkZQlJbmNsdWRlCi0gIEhpTGluayBuYW1lZEtleXdvcmQJS2V5d29yZAotICBIaUxpbmsgbmFtZWRJbnRLZXl3b3JkCUtleXdvcmQKLSAgSGlMaW5rIG5hbWVkSWRlbnRpZmllcglJZGVudGlmaWVyCi0gIEhpTGluayBuYW1lZEludElkZW50CUlkZW50aWZpZXIKK0hpTGluayBuYW1lZENvbW1lbnQJQ29tbWVudAorSGlMaW5rIG5hbWVkSW5jbHVkZQlJbmNsdWRlCitIaUxpbmsgbmFtZWRLZXl3b3JkCUtleXdvcmQKK0hpTGluayBuYW1lZEludEtleXdvcmQJS2V5d29yZAorSGlMaW5rIG5hbWVkSWRlbnRpZmllcglJZGVudGlmaWVyCitIaUxpbmsgbmFtZWRJbnRJZGVudAlJZGVudGlmaWVyCiAKLSAgSGlMaW5rIG5hbWVkU3RyaW5nCVN0cmluZwotICBIaUxpbmsgbmFtZWRCb29sCVR5cGUKLSAgSGlMaW5rIG5hbWVkTm90Qm9vbAlFcnJvcgotICBIaUxpbmsgbmFtZWROdW1iZXIJTnVtYmVyCi0gIEhpTGluayBuYW1lZE5vdE51bWJlcglFcnJvcgorSGlMaW5rIG5hbWVkU3RyaW5nCVN0cmluZworSGlMaW5rIG5hbWVkQm9vbAlUeXBlCitIaUxpbmsgbmFtZWROb3RCb29sCUVycm9yCitIaUxpbmsgbmFtZWROdW1iZXIJTnVtYmVyCitIaUxpbmsgbmFtZWROb3ROdW1iZXIJRXJyb3IKIAotICBIaUxpbmsgbmFtZWRPcHRpb24JbmFtZWRLZXl3b3JkCi0gIEhpTGluayBuYW1lZExvZ09wdGlvbgluYW1lZEtleXdvcmQKLSAgSGlMaW5rIG5hbWVkQ05PcHRpb24JbmFtZWRLZXl3b3JkCi0gIEhpTGluayBuYW1lZFFTS2V5d29yZHMJVHlwZQotICBIaUxpbmsgbmFtZWRDTktleXdvcmRzCVR5cGUKLSAgSGlMaW5rIG5hbWVkTG9nQ2F0ZWdvcnkJVHlwZQotICBIaUxpbmsgbmFtZWRJUGFkZHIJTnVtYmVyCi0gIEhpTGluayBuYW1lZERvbWFpbglJZGVudGlmaWVyCi0gIEhpTGluayBuYW1lZFpvbmVPcHQJbmFtZWRLZXl3b3JkCi0gIEhpTGluayBuYW1lZFpvbmVUeXBlCVR5cGUKLSAgSGlMaW5rIG5hbWVkUGFyZW5FcnJvcglFcnJvcgotICBIaUxpbmsgbmFtZWRFUGFyZW5FcnJvcglFcnJvcgotICBIaUxpbmsgbmFtZWRJbGxlZ2FsRG9tCUVycm9yCi0gIEhpTGluayBuYW1lZElQZXJyb3IJRXJyb3IKLSAgSGlMaW5rIG5hbWVkU3BhcmVEb3QJRXJyb3IKLSAgSGlMaW5rIG5hbWVkRXJyb3IJRXJyb3IKK0hpTGluayBuYW1lZE9wdGlvbgluYW1lZEtleXdvcmQKK0hpTGluayBuYW1lZExvZ09wdGlvbgluYW1lZEtleXdvcmQKK0hpTGluayBuYW1lZENOT3B0aW9uCW5hbWVkS2V5d29yZAorSGlMaW5rIG5hbWVkUVNLZXl3b3JkcwlUeXBlCitIaUxpbmsgbmFtZWRDTktleXdvcmRzCVR5cGUKK0hpTGluayBuYW1lZExvZ0NhdGVnb3J5CVR5cGUKK0hpTGluayBuYW1lZElQYWRkcglOdW1iZXIKK0hpTGluayBuYW1lZERvbWFpbglJZGVudGlmaWVyCitIaUxpbmsgbmFtZWRab25lT3B0CW5hbWVkS2V5d29yZAorSGlMaW5rIG5hbWVkWm9uZVR5cGUJVHlwZQorSGlMaW5rIG5hbWVkUGFyZW5FcnJvcglFcnJvcgorSGlMaW5rIG5hbWVkRVBhcmVuRXJyb3IJRXJyb3IKK0hpTGluayBuYW1lZElsbGVnYWxEb20JRXJyb3IKK0hpTGluayBuYW1lZElQZXJyb3IJRXJyb3IKK0hpTGluayBuYW1lZFNwYXJlRG90CUVycm9yCitIaUxpbmsgbmFtZWRFcnJvcglFcnJvcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0ICZjcG8gPSBzOnNhdmVfY3BvCiB1bmxldCBzOnNhdmVfY3BvCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9uYXNtLnZpbSBiL3J1bnRpbWUvc3ludGF4L25hc20udmltCmluZGV4IGE2ZWQwNTYuLjBmODFjZWIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L25hc20udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L25hc20udmltCkBAIC05LDEwICs5LDggQEAKIAogCiAiIFNldHVwIFN5bnRheDoKLSIgIENsZWFyIG9sZCBzeW50YXggc2V0dGluZ3MKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3luIGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAiICBBc3NlbWJsZXIgc3ludGF4IGlzIGNhc2UgaW5zZW5zZXRpdmUKQEAgLTIxLDE4ICsxOSwxMCBAQAogCiAKICIgVmltIHNlYXJjaCBhbmQgbW92ZW1lbnQgY29tbWFuZHMgb24gaWRlbnRpZmVycwotaWYgdmVyc2lvbiA8IDYwMAotICAiICBDb21tZW50cyBhdCBzdGFydCBvZiBhIGxpbmUgaW5zaWRlIHdoaWNoIHRvIHNraXAgc2VhcmNoIGZvciBpbmRlbnRpZmllcnMKLSAgc2V0IGNvbW1lbnRzPTo7Ci0gICIgIElkZW50aWZpZXIgS2V5d29yZCBjaGFyYWN0ZXJzIChkZWZpbmVzIFxrKQotICBzZXQgaXNrZXl3b3JkPUAsNDgtNTcsIywkLC4sPyxALUAsXyx+Ci1lbHNlCi0gICIgIENvbW1lbnRzIGF0IHN0YXJ0IG9mIGEgbGluZSBpbnNpZGUgd2hpY2ggdG8gc2tpcCBzZWFyY2ggZm9yIGluZGVudGlmaWVycwotICBzZXRsb2NhbCBjb21tZW50cz06OwotICAiICBJZGVudGlmaWVyIEtleXdvcmQgY2hhcmFjdGVycyAoZGVmaW5lcyBcaykKLSAgc2V0bG9jYWwgaXNrZXl3b3JkPUAsNDgtNTcsIywkLC4sPyxALUAsXyx+Ci1lbmRpZgotCisiICBDb21tZW50cyBhdCBzdGFydCBvZiBhIGxpbmUgaW5zaWRlIHdoaWNoIHRvIHNraXAgc2VhcmNoIGZvciBpbmRlbnRpZmllcnMKK3NldGxvY2FsIGNvbW1lbnRzPTo7CisiICBJZGVudGlmaWVyIEtleXdvcmQgY2hhcmFjdGVycyAoZGVmaW5lcyBcaykKK3NldGxvY2FsIGlza2V5d29yZD1ALDQ4LTU3LCMsJCwuLD8sQC1ALF8sfgogCiAKICIgQ29tbWVudHM6CkBAIC00MzEsOTYgKzQyMSw4OCBAQAogCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyICA6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbmFzbV9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9uYXNtX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAiIFN1YiBMaW5rczoKLSAgSGlMaW5rIG5hc21Jbk1hY0RpcmVjdGl2ZQluYXNtRGlyZWN0aXZlCi0gIEhpTGluayBuYXNtSW5NYWNMYWJlbAkJbmFzbUxvY2FsTGFiZWwKLSAgSGlMaW5rIG5hc21Jbk1hY0xibFdhcm4JbmFzbUxhYmVsV2FybgotICBIaUxpbmsgbmFzbUluTWFjTWFjcm8JCW5hc21NYWNybwotICBIaUxpbmsgbmFzbUluTWFjUGFyYW0JCW5hc21NYWNybwotICBIaUxpbmsgbmFzbUluTWFjUGFyYW1OdW0JbmFzbURlY051bWJlcgotICBIaUxpbmsgbmFzbUluTWFjUHJlQ29uZGl0CW5hc21QcmVDb25kaXQKLSAgSGlMaW5rIG5hc21Jbk1hY1ByZVByb2MJbmFzbVByZVByb2MKLSAgSGlMaW5rIG5hc21JblByZUNvbmRpdAluYXNtUHJlQ29uZGl0Ci0gIEhpTGluayBuYXNtSW5TdHJ1Y3R1cmUJbmFzbVN0cnVjdHVyZQotICBIaUxpbmsgbmFzbVN0cnVjdHVyZUxhYmVsCW5hc21TdHJ1Y3R1cmUKKyIgU3ViIExpbmtzOgorSGlMaW5rIG5hc21Jbk1hY0RpcmVjdGl2ZQluYXNtRGlyZWN0aXZlCitIaUxpbmsgbmFzbUluTWFjTGFiZWwJCW5hc21Mb2NhbExhYmVsCitIaUxpbmsgbmFzbUluTWFjTGJsV2FybgluYXNtTGFiZWxXYXJuCitIaUxpbmsgbmFzbUluTWFjTWFjcm8JCW5hc21NYWNybworSGlMaW5rIG5hc21Jbk1hY1BhcmFtCQluYXNtTWFjcm8KK0hpTGluayBuYXNtSW5NYWNQYXJhbU51bQluYXNtRGVjTnVtYmVyCitIaUxpbmsgbmFzbUluTWFjUHJlQ29uZGl0CW5hc21QcmVDb25kaXQKK0hpTGluayBuYXNtSW5NYWNQcmVQcm9jCW5hc21QcmVQcm9jCitIaUxpbmsgbmFzbUluUHJlQ29uZGl0CW5hc21QcmVDb25kaXQKK0hpTGluayBuYXNtSW5TdHJ1Y3R1cmUJbmFzbVN0cnVjdHVyZQorSGlMaW5rIG5hc21TdHJ1Y3R1cmVMYWJlbAluYXNtU3RydWN0dXJlCiAKLSAgIiBDb21tZW50IEdyb3VwOgotICBIaUxpbmsgbmFzbUNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIG5hc21TcGVjaWFsQ29tbWVudAlTcGVjaWFsQ29tbWVudAotICBIaUxpbmsgbmFzbUluQ29tbWVudFRvZG8JVG9kbworIiBDb21tZW50IEdyb3VwOgorSGlMaW5rIG5hc21Db21tZW50CQlDb21tZW50CitIaUxpbmsgbmFzbVNwZWNpYWxDb21tZW50CVNwZWNpYWxDb21tZW50CitIaUxpbmsgbmFzbUluQ29tbWVudFRvZG8JVG9kbwogCi0gICIgQ29uc3RhbnQgR3JvdXA6Ci0gIEhpTGluayBuYXNtU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIG5hc21TdHJpbmdFcnJvcglFcnJvcgotICBIaUxpbmsgbmFzbUJpbk51bWJlcgkJTnVtYmVyCi0gIEhpTGluayBuYXNtT2N0TnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIG5hc21EZWNOdW1iZXIJCU51bWJlcgotICBIaUxpbmsgbmFzbUhleE51bWJlcgkJTnVtYmVyCi0gIEhpTGluayBuYXNtRmx0TnVtYmVyCQlGbG9hdAotICBIaUxpbmsgbmFzbU51bWJlckVycm9yCUVycm9yCisiIENvbnN0YW50IEdyb3VwOgorSGlMaW5rIG5hc21TdHJpbmcJCVN0cmluZworSGlMaW5rIG5hc21TdHJpbmdFcnJvcglFcnJvcgorSGlMaW5rIG5hc21CaW5OdW1iZXIJCU51bWJlcgorSGlMaW5rIG5hc21PY3ROdW1iZXIJCU51bWJlcgorSGlMaW5rIG5hc21EZWNOdW1iZXIJCU51bWJlcgorSGlMaW5rIG5hc21IZXhOdW1iZXIJCU51bWJlcgorSGlMaW5rIG5hc21GbHROdW1iZXIJCUZsb2F0CitIaUxpbmsgbmFzbU51bWJlckVycm9yCUVycm9yCiAKLSAgIiBJZGVudGlmaWVyIEdyb3VwOgotICBIaUxpbmsgbmFzbUxhYmVsCQlJZGVudGlmaWVyCi0gIEhpTGluayBuYXNtTG9jYWxMYWJlbAkJSWRlbnRpZmllcgotICBIaUxpbmsgbmFzbVNwZWNpYWxMYWJlbAlTcGVjaWFsCi0gIEhpTGluayBuYXNtTGFiZWxFcnJvcgkJRXJyb3IKLSAgSGlMaW5rIG5hc21MYWJlbFdhcm4JCVRvZG8KKyIgSWRlbnRpZmllciBHcm91cDoKK0hpTGluayBuYXNtTGFiZWwJCUlkZW50aWZpZXIKK0hpTGluayBuYXNtTG9jYWxMYWJlbAkJSWRlbnRpZmllcgorSGlMaW5rIG5hc21TcGVjaWFsTGFiZWwJU3BlY2lhbAorSGlMaW5rIG5hc21MYWJlbEVycm9yCQlFcnJvcgorSGlMaW5rIG5hc21MYWJlbFdhcm4JCVRvZG8KIAotICAiIFByZVByb2MgR3JvdXA6Ci0gIEhpTGluayBuYXNtUHJlUHJvYwkJUHJlUHJvYwotICBIaUxpbmsgbmFzbURlZmluZQkJRGVmaW5lCi0gIEhpTGluayBuYXNtSW5jbHVkZQkJSW5jbHVkZQotICBIaUxpbmsgbmFzbU1hY3JvCQlNYWNybwotICBIaUxpbmsgbmFzbVByZUNvbmRpdAkJUHJlQ29uZGl0Ci0gIEhpTGluayBuYXNtUHJlUHJvY0Vycm9yCUVycm9yCi0gIEhpTGluayBuYXNtUHJlUHJvY1dhcm4JVG9kbworIiBQcmVQcm9jIEdyb3VwOgorSGlMaW5rIG5hc21QcmVQcm9jCQlQcmVQcm9jCitIaUxpbmsgbmFzbURlZmluZQkJRGVmaW5lCitIaUxpbmsgbmFzbUluY2x1ZGUJCUluY2x1ZGUKK0hpTGluayBuYXNtTWFjcm8JCU1hY3JvCitIaUxpbmsgbmFzbVByZUNvbmRpdAkJUHJlQ29uZGl0CitIaUxpbmsgbmFzbVByZVByb2NFcnJvcglFcnJvcgorSGlMaW5rIG5hc21QcmVQcm9jV2FybglUb2RvCiAKLSAgIiBUeXBlIEdyb3VwOgotICBIaUxpbmsgbmFzbVR5cGUJCVR5cGUKLSAgSGlMaW5rIG5hc21TdG9yYWdlCQlTdG9yYWdlQ2xhc3MKLSAgSGlMaW5rIG5hc21TdHJ1Y3R1cmUJCVN0cnVjdHVyZQotICBIaUxpbmsgbmFzbVR5cGVFcnJvcgkJRXJyb3IKKyIgVHlwZSBHcm91cDoKK0hpTGluayBuYXNtVHlwZQkJVHlwZQorSGlMaW5rIG5hc21TdG9yYWdlCQlTdG9yYWdlQ2xhc3MKK0hpTGluayBuYXNtU3RydWN0dXJlCQlTdHJ1Y3R1cmUKK0hpTGluayBuYXNtVHlwZUVycm9yCQlFcnJvcgogCi0gICIgRGlyZWN0aXZlIEdyb3VwOgotICBIaUxpbmsgbmFzbUNvbnN0YW50CQlDb25zdGFudAotICBIaUxpbmsgbmFzbUluc3RyTW9kaWZpZXIJT3BlcmF0b3IKLSAgSGlMaW5rIG5hc21SZXBlYXQJCVJlcGVhdAotICBIaUxpbmsgbmFzbURpcmVjdGl2ZQkJS2V5d29yZAotICBIaUxpbmsgbmFzbVN0ZERpcmVjdGl2ZQlPcGVyYXRvcgotICBIaUxpbmsgbmFzbUZtdERpcmVjdGl2ZQlLZXl3b3JkCisiIERpcmVjdGl2ZSBHcm91cDoKK0hpTGluayBuYXNtQ29uc3RhbnQJCUNvbnN0YW50CitIaUxpbmsgbmFzbUluc3RyTW9kaWZpZXIJT3BlcmF0b3IKK0hpTGluayBuYXNtUmVwZWF0CQlSZXBlYXQKK0hpTGluayBuYXNtRGlyZWN0aXZlCQlLZXl3b3JkCitIaUxpbmsgbmFzbVN0ZERpcmVjdGl2ZQlPcGVyYXRvcgorSGlMaW5rIG5hc21GbXREaXJlY3RpdmUJS2V5d29yZAogCi0gICIgUmVnaXN0ZXIgR3JvdXA6Ci0gIEhpTGluayBuYXNtQ3RybFJlZ2lzdGVyCVNwZWNpYWwKLSAgSGlMaW5rIG5hc21EZWJ1Z1JlZ2lzdGVyCURlYnVnCi0gIEhpTGluayBuYXNtVGVzdFJlZ2lzdGVyCVNwZWNpYWwKLSAgSGlMaW5rIG5hc21SZWdpc3RlckVycm9yCUVycm9yCi0gIEhpTGluayBuYXNtTWVtUmVmRXJyb3IJRXJyb3IKKyIgUmVnaXN0ZXIgR3JvdXA6CitIaUxpbmsgbmFzbUN0cmxSZWdpc3RlcglTcGVjaWFsCitIaUxpbmsgbmFzbURlYnVnUmVnaXN0ZXIJRGVidWcKK0hpTGluayBuYXNtVGVzdFJlZ2lzdGVyCVNwZWNpYWwKK0hpTGluayBuYXNtUmVnaXN0ZXJFcnJvcglFcnJvcgorSGlMaW5rIG5hc21NZW1SZWZFcnJvcglFcnJvcgogCi0gICIgSW5zdHJ1Y3Rpb24gR3JvdXA6Ci0gIEhpTGluayBuYXNtU3RkSW5zdHJ1Y3Rpb24JU3RhdGVtZW50Ci0gIEhpTGluayBuYXNtU3lzSW5zdHJ1Y3Rpb24JU3RhdGVtZW50Ci0gIEhpTGluayBuYXNtRGJnSW5zdHJ1Y3Rpb24JRGVidWcKLSAgSGlMaW5rIG5hc21GcHVJbnN0cnVjdGlvbglTdGF0ZW1lbnQKLSAgSGlMaW5rIG5hc21NbXhJbnN0cnVjdGlvbglTdGF0ZW1lbnQKLSAgSGlMaW5rIG5hc21Tc2VJbnN0cnVjdGlvbglTdGF0ZW1lbnQKLSAgSGlMaW5rIG5hc21Ob3dJbnN0cnVjdGlvbglTdGF0ZW1lbnQKLSAgSGlMaW5rIG5hc21BbWRJbnN0cnVjdGlvbglTcGVjaWFsCi0gIEhpTGluayBuYXNtQ3J4SW5zdHJ1Y3Rpb24JU3BlY2lhbAotICBIaUxpbmsgbmFzbVVuZEluc3RydWN0aW9uCVRvZG8KLSAgSGlMaW5rIG5hc21JbnN0cnVjdG5FcnJvcglFcnJvcgorIiBJbnN0cnVjdGlvbiBHcm91cDoKK0hpTGluayBuYXNtU3RkSW5zdHJ1Y3Rpb24JU3RhdGVtZW50CitIaUxpbmsgbmFzbVN5c0luc3RydWN0aW9uCVN0YXRlbWVudAorSGlMaW5rIG5hc21EYmdJbnN0cnVjdGlvbglEZWJ1ZworSGlMaW5rIG5hc21GcHVJbnN0cnVjdGlvbglTdGF0ZW1lbnQKK0hpTGluayBuYXNtTW14SW5zdHJ1Y3Rpb24JU3RhdGVtZW50CitIaUxpbmsgbmFzbVNzZUluc3RydWN0aW9uCVN0YXRlbWVudAorSGlMaW5rIG5hc21Ob3dJbnN0cnVjdGlvbglTdGF0ZW1lbnQKK0hpTGluayBuYXNtQW1kSW5zdHJ1Y3Rpb24JU3BlY2lhbAorSGlMaW5rIG5hc21DcnhJbnN0cnVjdGlvbglTcGVjaWFsCitIaUxpbmsgbmFzbVVuZEluc3RydWN0aW9uCVRvZG8KK0hpTGluayBuYXNtSW5zdHJ1Y3RuRXJyb3IJRXJyb3IKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm5hc20iCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L25hc3RyYW4udmltIGIvcnVudGltZS9zeW50YXgvbmFzdHJhbi52aW0KaW5kZXggZjc5Mjc2OS4uMzRhZDFiZiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbmFzdHJhbi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbmFzdHJhbi52aW0KQEAgLTYsMTEgKzYsOCBAQAogIgkJU2luY2UgRE1BUCBzaGFyZXMgc29tZSB0cmFpdHMgd2l0aCBmb3J0cmFuLCB0aGlzIHN5bnRheCBmaWxlCiAiCQlpcyBiYXNlZCBvbiB0aGUgZm9ydHJhbi52aW0gc3ludGF4IGZpbGUuCiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIiBSZW1vdmUgYW55IG9sZCBzeW50YXggc3R1ZmYgaGFuZ2luZyBhcm91bmQKLSJzeW4gY2xlYXIKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAiIERNQVAgaXMgbm90IGNhc2UgZGVwZW5kZW50CkBAIC0xNTYsMzcgKzE1MywzMCBAQAogc3luIGtleXdvcmQgbmFzdHJhblV0aWxDYXJkIEVDSE9PTiBFQ0hPT0ZGIElOQ0xVREUgUEFSQU0KIAogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbmFzdHJhbl9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgIGxldCBkaWRfbmFzdHJhbl9zeW50YXhfaW5pdHMgPSAxCi0gICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZW5kaWYKLSAgIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgotICBIaUxpbmsgbmFzdHJhbkRtYXBleGVjbW9kCSAgICAgU3RhdGVtZW50Ci0gIEhpTGluayBuYXN0cmFuRG1hcFR5cGUJICAgICBUeXBlCi0gIEhpTGluayBuYXN0cmFuRG1hcFByZUNvbmRpdAkgICAgIEVycm9yCi0gIEhpTGluayBuYXN0cmFuRG1hcFV0aWxtb2QJICAgICBQcmVQcm9jCi0gIEhpTGluayBuYXN0cmFuRG1hcE1hdG1vZAkgICAgIG5hc3RyYW5EbWFwVXRpbG1vZAotICBIaUxpbmsgbmFzdHJhbkRtYXBTdHJpbmcJICAgICBTdHJpbmcKLSAgSGlMaW5rIG5hc3RyYW5EbWFwTnVtYmVyCSAgICAgQ29uc3RhbnQKLSAgSGlMaW5rIG5hc3RyYW5EbWFwRmxvYXQJICAgICBuYXN0cmFuRG1hcE51bWJlcgotICBIaUxpbmsgbmFzdHJhbkRtYXBJbml0VGFiCSAgICAgbmFzdHJhbkRtYXBOdW1iZXIKLSAgSGlMaW5rIG5hc3RyYW5EbWFwVGFiCQkgICAgIG5hc3RyYW5EbWFwTnVtYmVyCi0gIEhpTGluayBuYXN0cmFuRG1hcExvZ2ljYWwJICAgICBuYXN0cmFuRG1hcEV4ZWNtb2QKLSAgSGlMaW5rIG5hc3RyYW5EbWFwSW1wbGljaXQJICAgICBJZGVudGlmaWVyCi0gIEhpTGluayBuYXN0cmFuRG1hcENvbW1lbnQJICAgICBDb21tZW50Ci0gIEhpTGluayBuYXN0cmFuRG1hcFJlcGVhdAkgICAgIG5hc3RyYW5EbWFwZXhlY21vZAotICBIaUxpbmsgbmFzdHJhbk5hc3RyYW5DYXJkCSAgICAgbmFzdHJhbkRtYXBQcmVDb25kaXQKLSAgSGlMaW5rIG5hc3RyYW5FQ1NDYXJkCQkgICAgIG5hc3RyYW5EbWFwVXRpbG1vZAotICBIaUxpbmsgbmFzdHJhbkZNU0NhcmQJCSAgICAgbmFzdHJhbk5hc3RyYW5DYXJkCi0gIEhpTGluayBuYXN0cmFuQ0MJCSAgICAgbmFzdHJhbkRtYXBleGVjbW9kCi0gIEhpTGluayBuYXN0cmFuRGVsaW1pdGVyCSAgICAgU3BlY2lhbAotICBIaUxpbmsgbmFzdHJhbkJ1bGtEYXRhCSAgICAgbmFzdHJhbkRtYXBUeXBlCi0gIEhpTGluayBuYXN0cmFuVXRpbENhcmQJICAgICBuYXN0cmFuRG1hcGV4ZWNtb2QKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgorIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgorSGlMaW5rIG5hc3RyYW5EbWFwZXhlY21vZAkgICAgIFN0YXRlbWVudAorSGlMaW5rIG5hc3RyYW5EbWFwVHlwZQkgICAgIFR5cGUKK0hpTGluayBuYXN0cmFuRG1hcFByZUNvbmRpdAkgICAgIEVycm9yCitIaUxpbmsgbmFzdHJhbkRtYXBVdGlsbW9kCSAgICAgUHJlUHJvYworSGlMaW5rIG5hc3RyYW5EbWFwTWF0bW9kCSAgICAgbmFzdHJhbkRtYXBVdGlsbW9kCitIaUxpbmsgbmFzdHJhbkRtYXBTdHJpbmcJICAgICBTdHJpbmcKK0hpTGluayBuYXN0cmFuRG1hcE51bWJlcgkgICAgIENvbnN0YW50CitIaUxpbmsgbmFzdHJhbkRtYXBGbG9hdAkgICAgIG5hc3RyYW5EbWFwTnVtYmVyCitIaUxpbmsgbmFzdHJhbkRtYXBJbml0VGFiCSAgICAgbmFzdHJhbkRtYXBOdW1iZXIKK0hpTGluayBuYXN0cmFuRG1hcFRhYgkJICAgICBuYXN0cmFuRG1hcE51bWJlcgorSGlMaW5rIG5hc3RyYW5EbWFwTG9naWNhbAkgICAgIG5hc3RyYW5EbWFwRXhlY21vZAorSGlMaW5rIG5hc3RyYW5EbWFwSW1wbGljaXQJICAgICBJZGVudGlmaWVyCitIaUxpbmsgbmFzdHJhbkRtYXBDb21tZW50CSAgICAgQ29tbWVudAorSGlMaW5rIG5hc3RyYW5EbWFwUmVwZWF0CSAgICAgbmFzdHJhbkRtYXBleGVjbW9kCitIaUxpbmsgbmFzdHJhbk5hc3RyYW5DYXJkCSAgICAgbmFzdHJhbkRtYXBQcmVDb25kaXQKK0hpTGluayBuYXN0cmFuRUNTQ2FyZAkJICAgICBuYXN0cmFuRG1hcFV0aWxtb2QKK0hpTGluayBuYXN0cmFuRk1TQ2FyZAkJICAgICBuYXN0cmFuTmFzdHJhbkNhcmQKK0hpTGluayBuYXN0cmFuQ0MJCSAgICAgbmFzdHJhbkRtYXBleGVjbW9kCitIaUxpbmsgbmFzdHJhbkRlbGltaXRlcgkgICAgIFNwZWNpYWwKK0hpTGluayBuYXN0cmFuQnVsa0RhdGEJICAgICBuYXN0cmFuRG1hcFR5cGUKK0hpTGluayBuYXN0cmFuVXRpbENhcmQJICAgICBuYXN0cmFuRG1hcGV4ZWNtb2QKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm5hc3RyYW4iCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L25hdHVyYWwudmltIGIvcnVudGltZS9zeW50YXgvbmF0dXJhbC52aW0KaW5kZXggNGZiYzkxNi4uYzk0MjMxZCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbmF0dXJhbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbmF0dXJhbC52aW0KQEAgLTYsMTYgKzYsMTEgQEAKICIgTGFzdCBDaGFuZ2VkOgkyMDEyLTAyLTA1IDE4OjUwOjQzCiAiIFN1cHBvcnQ6CWh0dHA6Ly93d3cudm9uLW9wcGVuLmNvbS8KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gdGhpcyBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHY6dmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLSAgc2V0IGlza2V5d29yZCs9LSwqLCMsKyxfLC8KLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAotZWxzZQotICBzZXRsb2NhbCBpc2tleXdvcmQrPS0sKiwjLCssXywvCiBlbmRpZgorc2V0bG9jYWwgaXNrZXl3b3JkKz0tLCosIywrLF8sLwogCiBsZXQgczpjcG9fc2F2ZSA9ICZjcG8KIHNldCBjcG8mdmltCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9uY2YudmltIGIvcnVudGltZS9zeW50YXgvbmNmLnZpbQppbmRleCAyMDE5YzAzLi5iNDU4ZTYzIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9uY2YudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L25jZi52aW0KQEAgLTQsMTAgKzQsOCBAQAogIiBMYXN0IENoYW5nZToJVHVlLCAwNCBTZXAgMjAwMSAxNjoyMDozMyBDRFQKICIgJElkOiBuY2YudmltLHYgMS4xIDIwMDQvMDYvMTMgMTY6MzE6NTggdmltYm9zcyBFeHAgJAogCi0iIFJlbW92ZSBhbnkgb2xkIHN5bnRheCBzdHVmZiBoYW5naW5nIGFyb3VuZAotaWYgdmVyc2lvbiA8IDYwMAotICAgIHN5biBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgICBmaW5pc2gKIGVuZGlmCiAKQEAgLTIxNyw0MiArMjE1LDM1IEBACiAgICAgc3luIG1hdGNoIEVycm9yICJbXiBcdF0qIiBjb250YWlucz1BTEwKIGVuZGlmCiAKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9uY2Zfc3ludGF4X2luaXRzIikKLSAgICBpZiB2ZXJzaW9uIDwgNTA4Ci0JbGV0IGRpZF9uY2Zfc3ludGF4X2luaXRzID0gMQotCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gICAgZWxzZQotCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICAgIGVuZGlmCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAgICIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiAgQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKLSAgICBIaUxpbmsgbmNmQ29tbWFuZHMJCVN0YXRlbWVudAotICAgIEhpTGluayBuY2ZTZXRDb21tYW5kcwluY2ZDb21tYW5kcwotICAgIEhpTGluayBuY2ZMb2dpbnMJCW5jZkNvbW1hbmRzCi0gICAgSGlMaW5rIG5jZlN0cmluZwkJU3RyaW5nCi0gICAgSGlMaW5rIG5jZkNvbnRTdHJpbmcJbmNmU3RyaW5nCi0gICAgSGlMaW5rIG5jZkNvbW1lbnQJCUNvbW1lbnQKLSAgICBIaUxpbmsgbmNmSW1wbGljaXQJCVR5cGUKLSAgICBIaUxpbmsgbmNmQm9vbGVhbgkJQm9vbGVhbgotICAgIEhpTGluayBuY2ZTY3JpcHQJCUlkZW50aWZpZXIKLSAgICBIaUxpbmsgbmNmTnVtYmVyCQlOdW1iZXIKLSAgICBIaUxpbmsgbmNmSVBBZGRyCQluY2ZOdW1iZXIKLSAgICBIaUxpbmsgbmNmSGV4TnVtYmVyCQluY2ZOdW1iZXIKLSAgICBIaUxpbmsgbmNmVGltZQkJbmNmTnVtYmVyCi0gICAgSGlMaW5rIG5jZkRTVFRpbWUJCW5jZk51bWJlcgotICAgIEhpTGluayBuY2ZQYXRoCQlDb25zdGFudAotICAgIEhpTGluayBuY2ZTZXJ2ZXJOYW1lCVNwZWNpYWwKLSAgICBIaUxpbmsgbmNmSVBYTmV0CQluY2ZTZXJ2ZXJOYW1lCi0gICAgSGlMaW5rIG5jZlRpbWVUeXBlcwkJQ29uc3RhbnQKLSAgICBIaUxpbmsgbmNmU2V0Q29tbWFuZHNOdW0JICAgbmNmU2V0Q29tbWFuZHMKLSAgICBIaUxpbmsgbmNmU2V0Q29tbWFuZHNCb29sCSAgIG5jZlNldENvbW1hbmRzCi0gICAgSGlMaW5rIG5jZlNldENvbW1hbmRzU3RyCSAgIG5jZlNldENvbW1hbmRzCi0gICAgSGlMaW5rIG5jZlNldENvbW1hbmRzVGltZQkgICBuY2ZTZXRDb21tYW5kcwotICAgIEhpTGluayBuY2ZTZXRDb21tYW5kc1RpbWVEYXRlICBuY2ZTZXRDb21tYW5kcwotICAgIEhpTGluayBuY2ZTZXRDb21tYW5kc0JpbmRDb24gICBuY2ZTZXRDb21tYW5kcworIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgorSGlMaW5rIG5jZkNvbW1hbmRzCQlTdGF0ZW1lbnQKK0hpTGluayBuY2ZTZXRDb21tYW5kcwluY2ZDb21tYW5kcworSGlMaW5rIG5jZkxvZ2lucwkJbmNmQ29tbWFuZHMKK0hpTGluayBuY2ZTdHJpbmcJCVN0cmluZworSGlMaW5rIG5jZkNvbnRTdHJpbmcJbmNmU3RyaW5nCitIaUxpbmsgbmNmQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIG5jZkltcGxpY2l0CQlUeXBlCitIaUxpbmsgbmNmQm9vbGVhbgkJQm9vbGVhbgorSGlMaW5rIG5jZlNjcmlwdAkJSWRlbnRpZmllcgorSGlMaW5rIG5jZk51bWJlcgkJTnVtYmVyCitIaUxpbmsgbmNmSVBBZGRyCQluY2ZOdW1iZXIKK0hpTGluayBuY2ZIZXhOdW1iZXIJCW5jZk51bWJlcgorSGlMaW5rIG5jZlRpbWUJCW5jZk51bWJlcgorSGlMaW5rIG5jZkRTVFRpbWUJCW5jZk51bWJlcgorSGlMaW5rIG5jZlBhdGgJCUNvbnN0YW50CitIaUxpbmsgbmNmU2VydmVyTmFtZQlTcGVjaWFsCitIaUxpbmsgbmNmSVBYTmV0CQluY2ZTZXJ2ZXJOYW1lCitIaUxpbmsgbmNmVGltZVR5cGVzCQlDb25zdGFudAorSGlMaW5rIG5jZlNldENvbW1hbmRzTnVtCSAgIG5jZlNldENvbW1hbmRzCitIaUxpbmsgbmNmU2V0Q29tbWFuZHNCb29sCSAgIG5jZlNldENvbW1hbmRzCitIaUxpbmsgbmNmU2V0Q29tbWFuZHNTdHIJICAgbmNmU2V0Q29tbWFuZHMKK0hpTGluayBuY2ZTZXRDb21tYW5kc1RpbWUJICAgbmNmU2V0Q29tbWFuZHMKK0hpTGluayBuY2ZTZXRDb21tYW5kc1RpbWVEYXRlICBuY2ZTZXRDb21tYW5kcworSGlMaW5rIG5jZlNldENvbW1hbmRzQmluZENvbiAgIG5jZlNldENvbW1hbmRzCiAKLSAgICBkZWxjb21tYW5kIEhpTGluaworZGVsY29tbWFuZCBIaUxpbmsKIAotZW5kaWYKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibmNmIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbmV0cncudmltIGIvcnVudGltZS9zeW50YXgvbmV0cncudmltCmluZGV4IDcxOGNlZTEuLjNkM2FhOTkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L25ldHJ3LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9uZXRydy52aW0KQEAgLTUsOSArNSw4IEBACiAiIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiAiIFN5bnRheCBDbGVhcmluZzoge3t7MQotaWYgdmVyc2lvbiA8IDYwMAotIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICBmaW5pc2gKIGVuZGlmCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L25xYy52aW0gYi9ydW50aW1lL3N5bnRheC9ucWMudmltCmluZGV4IDBhM2NkNmIuLjkxMDU3MDUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L25xYy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbnFjLnZpbQpAQCAtNiwxMSArNiw4IEBACiAiIFVSTDoJCWh0dHA6Ly93d3cuZW5vdGVzLmRlL3R3aWtpL3B1Yi9Ib21lL0xlZ29NaW5kc3Rvcm1zL25xYy52aW0KICIgRmlsZW5hbWVzOgkubnFjCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0zMjYsNTIgKzMyMyw0NCBAQAogZXhlYyAic3luIHN5bmMgY2NvbW1lbnQgbnFjQ29tbWVudCBtaW5saW5lcz0iIC4gbnFjX21pbmxpbmVzCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX25xY19zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9ucWNfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiAgQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKLSAgSGlMaW5rIG5xY0xhYmVsCQlMYWJlbAotICBIaUxpbmsgbnFjQ29uZGl0aW9uYWwJCUNvbmRpdGlvbmFsCi0gIEhpTGluayBucWNSZXBlYXQJCVJlcGVhdAotICBIaUxpbmsgbnFjQ2hhcmFjdGVyCQlDaGFyYWN0ZXIKLSAgSGlMaW5rIG5xY051bWJlcgkJTnVtYmVyCi0gIEhpTGluayBucWNGbG9hdAkJRmxvYXQKLSAgSGlMaW5rIG5xY0Z1bmN0aW9uCQlGdW5jdGlvbgotICBIaUxpbmsgbnFjUGFyZW5FcnJvcgkJbnFjRXJyb3IKLSAgSGlMaW5rIG5xY0VyckluUGFyZW4JCW5xY0Vycm9yCi0gIEhpTGluayBucWNFcnJJbkJyYWNrZXQJbnFjRXJyb3IKLSAgSGlMaW5rIG5xY0NvbW1lbnRMCQlucWNDb21tZW50Ci0gIEhpTGluayBucWNDb21tZW50U3RhcnQJbnFjQ29tbWVudAotICBIaUxpbmsgbnFjQ29tbWVudEVycm9yCW5xY0Vycm9yCi0gIEhpTGluayBucWNDb21tZW50U3RhcnRFcnJvcglucWNFcnJvcgotICBIaUxpbmsgbnFjU3BhY2VFcnJvcgkJbnFjRXJyb3IKLSAgSGlMaW5rIG5xY1N0b3JhZ2VDbGFzcwlTdG9yYWdlQ2xhc3MKLSAgSGlMaW5rIG5xY0luY2x1ZGUJCUluY2x1ZGUKLSAgSGlMaW5rIG5xY1ByZVByb2MJCVByZVByb2MKLSAgSGlMaW5rIG5xY0RlZmluZQkJTWFjcm8KLSAgSGlMaW5rIG5xY0luY2x1ZGVkCQlTdHJpbmcKLSAgSGlMaW5rIG5xY0Vycm9yCQlFcnJvcgotICBIaUxpbmsgbnFjU3RhdGVtZW50CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIG5xY0V2ZW50cwkJU3RhdGVtZW50Ci0gIEhpTGluayBucWNQcmVDb25kaXQJCVByZUNvbmRpdAotICBIaUxpbmsgbnFjVHlwZQkJVHlwZQotICBIaUxpbmsgbnFjQ29uc3RhbnQJCUNvbnN0YW50Ci0gIEhpTGluayBucWNDb21tZW50U2tpcAkJbnFjQ29tbWVudAotICBIaUxpbmsgbnFjQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgbnFjVG9kbwkJVG9kbwotICBIaUxpbmsgbnFjQ3BwU2tpcAkJbnFjQ3BwT3V0Ci0gIEhpTGluayBucWNDcHBPdXQyCQlucWNDcHBPdXQKLSAgSGlMaW5rIG5xY0NwcE91dAkJQ29tbWVudAorIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgorSGlMaW5rIG5xY0xhYmVsCQlMYWJlbAorSGlMaW5rIG5xY0NvbmRpdGlvbmFsCQlDb25kaXRpb25hbAorSGlMaW5rIG5xY1JlcGVhdAkJUmVwZWF0CitIaUxpbmsgbnFjQ2hhcmFjdGVyCQlDaGFyYWN0ZXIKK0hpTGluayBucWNOdW1iZXIJCU51bWJlcgorSGlMaW5rIG5xY0Zsb2F0CQlGbG9hdAorSGlMaW5rIG5xY0Z1bmN0aW9uCQlGdW5jdGlvbgorSGlMaW5rIG5xY1BhcmVuRXJyb3IJCW5xY0Vycm9yCitIaUxpbmsgbnFjRXJySW5QYXJlbgkJbnFjRXJyb3IKK0hpTGluayBucWNFcnJJbkJyYWNrZXQJbnFjRXJyb3IKK0hpTGluayBucWNDb21tZW50TAkJbnFjQ29tbWVudAorSGlMaW5rIG5xY0NvbW1lbnRTdGFydAlucWNDb21tZW50CitIaUxpbmsgbnFjQ29tbWVudEVycm9yCW5xY0Vycm9yCitIaUxpbmsgbnFjQ29tbWVudFN0YXJ0RXJyb3IJbnFjRXJyb3IKK0hpTGluayBucWNTcGFjZUVycm9yCQlucWNFcnJvcgorSGlMaW5rIG5xY1N0b3JhZ2VDbGFzcwlTdG9yYWdlQ2xhc3MKK0hpTGluayBucWNJbmNsdWRlCQlJbmNsdWRlCitIaUxpbmsgbnFjUHJlUHJvYwkJUHJlUHJvYworSGlMaW5rIG5xY0RlZmluZQkJTWFjcm8KK0hpTGluayBucWNJbmNsdWRlZAkJU3RyaW5nCitIaUxpbmsgbnFjRXJyb3IJCUVycm9yCitIaUxpbmsgbnFjU3RhdGVtZW50CQlTdGF0ZW1lbnQKK0hpTGluayBucWNFdmVudHMJCVN0YXRlbWVudAorSGlMaW5rIG5xY1ByZUNvbmRpdAkJUHJlQ29uZGl0CitIaUxpbmsgbnFjVHlwZQkJVHlwZQorSGlMaW5rIG5xY0NvbnN0YW50CQlDb25zdGFudAorSGlMaW5rIG5xY0NvbW1lbnRTa2lwCQlucWNDb21tZW50CitIaUxpbmsgbnFjQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIG5xY1RvZG8JCVRvZG8KK0hpTGluayBucWNDcHBTa2lwCQlucWNDcHBPdXQKK0hpTGluayBucWNDcHBPdXQyCQlucWNDcHBPdXQKK0hpTGluayBucWNDcHBPdXQJCUNvbW1lbnQKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm5xYyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbnJvZmYudmltIGIvcnVudGltZS9zeW50YXgvbnJvZmYudmltCmluZGV4IDI4MGJhOWUuLjI2MTlkMDIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L25yb2ZmLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9ucm9mZi52aW0KQEAgLTIyLDEyICsyMiw5IEBACiAiCiAiIHt7ezEgU3RhcnQgc3ludGF4IGhpZ2hsaWdodGluZy4KICIKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAogIgotaWYgdmVyc2lvbiA8IDYwMAotCXN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogCWZpbmlzaAogZW5kaWYKIApAQCAtMTk3LDY1ICsxOTQsNTUgQEAKIAogIgogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0CisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0CiAiCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbnJvZmZfc3luX2luaXRzIikKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0JaWYgdmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX25yb2ZmX3N5bl9pbml0cyA9IDEKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLQllbHNlCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotCWVuZGlmCitIaUxpbmsgbnJvZmZFc2NDaGFyIG5yb2ZmU3BlY2lhbENoYXIKK0hpTGluayBucm9mZkVzY0NoYXJBciBucm9mZlNwZWNpYWxDaGFyCitIaUxpbmsgbnJvZmZTcGVjaWFsQ2hhciBTcGVjaWFsQ2hhcgorSGlMaW5rIG5yb2ZmU3BhY2UgRGVsaW1pdGVyCiAKLQlIaUxpbmsgbnJvZmZFc2NDaGFyIG5yb2ZmU3BlY2lhbENoYXIKLQlIaUxpbmsgbnJvZmZFc2NDaGFyQXIgbnJvZmZTcGVjaWFsQ2hhcgotCUhpTGluayBucm9mZlNwZWNpYWxDaGFyIFNwZWNpYWxDaGFyCi0JSGlMaW5rIG5yb2ZmU3BhY2UgRGVsaW1pdGVyCitIaUxpbmsgbnJvZmZFc2NSZWdBcmcyIG5yb2ZmRXNjUmVnQXJnCitIaUxpbmsgbnJvZmZFc2NSZWdBcmcgbnJvZmZJZGVudAogCi0JSGlMaW5rIG5yb2ZmRXNjUmVnQXJnMiBucm9mZkVzY1JlZ0FyZwotCUhpTGluayBucm9mZkVzY1JlZ0FyZyBucm9mZklkZW50CitIaUxpbmsgbnJvZmZFc2NBcmcyIG5yb2ZmRXNjQXJnCitIaUxpbmsgbnJvZmZFc2NQYXIgbnJvZmZFc2NhcGUKIAotCUhpTGluayBucm9mZkVzY0FyZzIgbnJvZmZFc2NBcmcKLQlIaUxpbmsgbnJvZmZFc2NQYXIgbnJvZmZFc2NhcGUKK0hpTGluayBucm9mZkVzY1JlZ1BhciBucm9mZkVzY2FwZQorSGlMaW5rIG5yb2ZmRXNjQXJnIG5yb2ZmRXNjYXBlCitIaUxpbmsgbnJvZmZTaXplIG5yb2ZmRXNjYXBlCitIaUxpbmsgbnJvZmZFc2NhcGUgUHJlcHJvYwogCi0JSGlMaW5rIG5yb2ZmRXNjUmVnUGFyIG5yb2ZmRXNjYXBlCi0JSGlMaW5rIG5yb2ZmRXNjQXJnIG5yb2ZmRXNjYXBlCi0JSGlMaW5rIG5yb2ZmU2l6ZSBucm9mZkVzY2FwZQotCUhpTGluayBucm9mZkVzY2FwZSBQcmVwcm9jCitIaUxpbmsgbnJvZmZJZ25vcmUgQ29tbWVudAorSGlMaW5rIG5yb2ZmQ29tbWVudCBDb21tZW50CitIaUxpbmsgbnJvZmZUb2RvIFRvZG8KIAotCUhpTGluayBucm9mZklnbm9yZSBDb21tZW50Ci0JSGlMaW5rIG5yb2ZmQ29tbWVudCBDb21tZW50Ci0JSGlMaW5rIG5yb2ZmVG9kbyBUb2RvCitIaUxpbmsgbnJvZmZSZXFMZWFkZXIgbnJvZmZSZXF1ZXN0CitIaUxpbmsgbnJvZmZSZXFOYW1lIG5yb2ZmUmVxdWVzdAorSGlMaW5rIG5yb2ZmUmVxdWVzdCBTdGF0ZW1lbnQKK0hpTGluayBucm9mZkNvbmQgUHJlQ29uZGl0CitIaUxpbmsgbnJvZmZEZWZJZGVudCBucm9mZklkZW50CitIaUxpbmsgbnJvZmZJZGVudCBJZGVudGlmaWVyCiAKLQlIaUxpbmsgbnJvZmZSZXFMZWFkZXIgbnJvZmZSZXF1ZXN0Ci0JSGlMaW5rIG5yb2ZmUmVxTmFtZSBucm9mZlJlcXVlc3QKLQlIaUxpbmsgbnJvZmZSZXF1ZXN0IFN0YXRlbWVudAotCUhpTGluayBucm9mZkNvbmQgUHJlQ29uZGl0Ci0JSGlMaW5rIG5yb2ZmRGVmSWRlbnQgbnJvZmZJZGVudAotCUhpTGluayBucm9mZklkZW50IElkZW50aWZpZXIKK0hpTGluayBucm9mZkVxdWF0aW9uIFByZVByb2MKK0hpTGluayBucm9mZlRhYmxlIFByZVByb2MKK0hpTGluayBucm9mZlBpY3R1cmUgUHJlUHJvYworSGlMaW5rIG5yb2ZmUmVmZXIgUHJlUHJvYworSGlMaW5rIG5yb2ZmR3JhcCBQcmVQcm9jCitIaUxpbmsgbnJvZmZHcmVtbGluIFByZVByb2MKIAotCUhpTGluayBucm9mZkVxdWF0aW9uIFByZVByb2MKLQlIaUxpbmsgbnJvZmZUYWJsZSBQcmVQcm9jCi0JSGlMaW5rIG5yb2ZmUGljdHVyZSBQcmVQcm9jCi0JSGlMaW5rIG5yb2ZmUmVmZXIgUHJlUHJvYwotCUhpTGluayBucm9mZkdyYXAgUHJlUHJvYwotCUhpTGluayBucm9mZkdyZW1saW4gUHJlUHJvYworSGlMaW5rIG5yb2ZmTnVtYmVyIE51bWJlcgorSGlMaW5rIG5yb2ZmQmFkQ2hhciBucm9mZkVycm9yCitIaUxpbmsgbnJvZmZTcGFjZUVycm9yIG5yb2ZmRXJyb3IKK0hpTGluayBucm9mZkVycm9yIEVycm9yCiAKLQlIaUxpbmsgbnJvZmZOdW1iZXIgTnVtYmVyCi0JSGlMaW5rIG5yb2ZmQmFkQ2hhciBucm9mZkVycm9yCi0JSGlMaW5rIG5yb2ZmU3BhY2VFcnJvciBucm9mZkVycm9yCi0JSGlMaW5rIG5yb2ZmRXJyb3IgRXJyb3IKK0hpTGluayBucm9mZlByZXNlcnZlIFN0cmluZworSGlMaW5rIG5yb2ZmU3RyaW5nIFN0cmluZworSGlMaW5rIG5yb2ZmRGVmaW5pdGlvbiBTdHJpbmcKK0hpTGluayBucm9mZkRlZlNwZWNpYWwgU3BlY2lhbAogCi0JSGlMaW5rIG5yb2ZmUHJlc2VydmUgU3RyaW5nCi0JSGlMaW5rIG5yb2ZmU3RyaW5nIFN0cmluZwotCUhpTGluayBucm9mZkRlZmluaXRpb24gU3RyaW5nCi0JSGlMaW5rIG5yb2ZmRGVmU3BlY2lhbCBTcGVjaWFsCi0KLQlkZWxjb21tYW5kIEhpTGluawotCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAibnJvZmYiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L25zaXMudmltIGIvcnVudGltZS9zeW50YXgvbnNpcy52aW0KaW5kZXggZDZkODAzNy4uOGYzYWEyNSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbnNpcy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbnNpcy52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglBbGV4IEpha3VzaGV2IDxBbGV4Lkpha3VzaGV2QGtlbWVrLmx0PgogIiBMYXN0IENoYW5nZToJMjAwNCBNYXkgMTIKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTIyNCw0OCArMjIxLDM4IEBACiAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbnNpc19zeW5faW5pdHMiKQorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbnN5c19zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorSGlMaW5rIG5zaXNJbnN0cnVjdGlvbgkJRnVuY3Rpb24KK0hpTGluayBuc2lzQ29tbWVudAkJCUNvbW1lbnQKK0hpTGluayBuc2lzTG9jYWxMYWJlbAkJCUxhYmVsCitIaUxpbmsgbnNpc0dsb2JhbExhYmVsCQlMYWJlbAorSGlMaW5rIG5zaXNTdGF0ZW1lbnQJCQlTdGF0ZW1lbnQKK0hpTGluayBuc2lzU3RyaW5nCQkJU3RyaW5nCitIaUxpbmsgbnNpc0Jvb2xlYW4JCQlCb29sZWFuCitIaUxpbmsgbnNpc0F0dHJpYk9wdGlvbnMJCUNvbnN0YW50CitIaUxpbmsgbnNpc0V4ZWNTaGVsbAkJCUNvbnN0YW50CitIaUxpbmsgbnNpc0ZpbGVBdHRyaWIJCQlDb25zdGFudAorSGlMaW5rIG5zaXNNZXNzYWdlQm94CQkJQ29uc3RhbnQKK0hpTGluayBuc2lzUmVnaXN0cnkJCQlJZGVudGlmaWVyCitIaUxpbmsgbnNpc051bWJlcgkJCU51bWJlcgorSGlMaW5rIG5zaXNFcnJvcgkJCUVycm9yCitIaUxpbmsgbnNpc1VzZXJWYXIJCQlJZGVudGlmaWVyCitIaUxpbmsgbnNpc1N5c1ZhcgkJCUlkZW50aWZpZXIKK0hpTGluayBuc2lzQXR0cmlidXRlCQkJVHlwZQorSGlMaW5rIG5zaXNDb21waWxlcgkJCVR5cGUKK0hpTGluayBuc2lzVG9kbwkJCVRvZG8KK0hpTGluayBuc2lzQ2FsbGJhY2sJCQlPcGVyYXRvcgorIiBwcmVwcm9jZXNzb3IgY29tbWFuZHMKK0hpTGluayBuc2lzUHJlcHJvY1N1YnN0CQlQcmVQcm9jCitIaUxpbmsgbnNpc0RlZmluZQkJCURlZmluZQorSGlMaW5rIG5zaXNNYWNybwkJCU1hY3JvCitIaUxpbmsgbnNpc1ByZUNvbmRpdAkJCVByZUNvbmRpdAorSGlMaW5rIG5zaXNJbmNsdWRlCQkJSW5jbHVkZQorSGlMaW5rIG5zaXNTeXN0ZW0JCQlQcmVQcm9jCiAKLQotICBIaUxpbmsgbnNpc0luc3RydWN0aW9uCQlGdW5jdGlvbgotICBIaUxpbmsgbnNpc0NvbW1lbnQJCQlDb21tZW50Ci0gIEhpTGluayBuc2lzTG9jYWxMYWJlbAkJCUxhYmVsCi0gIEhpTGluayBuc2lzR2xvYmFsTGFiZWwJCUxhYmVsCi0gIEhpTGluayBuc2lzU3RhdGVtZW50CQkJU3RhdGVtZW50Ci0gIEhpTGluayBuc2lzU3RyaW5nCQkJU3RyaW5nCi0gIEhpTGluayBuc2lzQm9vbGVhbgkJCUJvb2xlYW4KLSAgSGlMaW5rIG5zaXNBdHRyaWJPcHRpb25zCQlDb25zdGFudAotICBIaUxpbmsgbnNpc0V4ZWNTaGVsbAkJCUNvbnN0YW50Ci0gIEhpTGluayBuc2lzRmlsZUF0dHJpYgkJCUNvbnN0YW50Ci0gIEhpTGluayBuc2lzTWVzc2FnZUJveAkJCUNvbnN0YW50Ci0gIEhpTGluayBuc2lzUmVnaXN0cnkJCQlJZGVudGlmaWVyCi0gIEhpTGluayBuc2lzTnVtYmVyCQkJTnVtYmVyCi0gIEhpTGluayBuc2lzRXJyb3IJCQlFcnJvcgotICBIaUxpbmsgbnNpc1VzZXJWYXIJCQlJZGVudGlmaWVyCi0gIEhpTGluayBuc2lzU3lzVmFyCQkJSWRlbnRpZmllcgotICBIaUxpbmsgbnNpc0F0dHJpYnV0ZQkJCVR5cGUKLSAgSGlMaW5rIG5zaXNDb21waWxlcgkJCVR5cGUKLSAgSGlMaW5rIG5zaXNUb2RvCQkJVG9kbwotICBIaUxpbmsgbnNpc0NhbGxiYWNrCQkJT3BlcmF0b3IKLSAgIiBwcmVwcm9jZXNzb3IgY29tbWFuZHMKLSAgSGlMaW5rIG5zaXNQcmVwcm9jU3Vic3QJCVByZVByb2MKLSAgSGlMaW5rIG5zaXNEZWZpbmUJCQlEZWZpbmUKLSAgSGlMaW5rIG5zaXNNYWNybwkJCU1hY3JvCi0gIEhpTGluayBuc2lzUHJlQ29uZGl0CQkJUHJlQ29uZGl0Ci0gIEhpTGluayBuc2lzSW5jbHVkZQkJCUluY2x1ZGUKLSAgSGlMaW5rIG5zaXNTeXN0ZW0JCQlQcmVQcm9jCi0KLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJuc2lzIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9vYmoudmltIGIvcnVudGltZS9zeW50YXgvb2JqLnZpbQppbmRleCA2NmNkNmMyLi5mMmNkOGE0IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9vYmoudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L29iai52aW0KQEAgLTQsMTEgKzQsOCBAQAogIiBGaWxlIFR5cGVzOgkub2JqICh1c2VkIGluIDNEKQogIiBMYXN0IENoYW5nZTogIDIwMTAgTWF5IDE4CiAiCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNjIsMzQgKzU5LDI2IEBACiBzeW4gbWF0Y2ggICAgICAgb2JqSW5kZXggICAgICAgICJcZFwrXC9cZCpcL1xkKiIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfY2FiYWxfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfY2FiYWxfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBvYmpFcnJvciAgICAgICAgICAgRXJyb3IKLSAgSGlMaW5rIG9iakNvbW1lbnQgICAgICAgICBDb21tZW50Ci0gIEhpTGluayBvYmpJbmNsdWRlICAgICAgICAgUHJlUHJvYwotICBIaUxpbmsgb2JqRmxvYXQgICAgICAgICAgIEZsb2F0Ci0gIEhpTGluayBvYmpJbnQgICAgICAgICAgICAgTnVtYmVyCi0gIEhpTGluayBvYmpHcm91cCAgICAgICAgICAgU3RydWN0dXJlCi0gIEhpTGluayBvYmpJbmRleCAgICAgICAgICAgQ29uc3RhbnQKLSAgSGlMaW5rIG9iak1hdGVyaWFsICAgICAgICBMYWJlbAorSGlMaW5rIG9iakVycm9yICAgICAgICAgICBFcnJvcgorSGlMaW5rIG9iakNvbW1lbnQgICAgICAgICBDb21tZW50CitIaUxpbmsgb2JqSW5jbHVkZSAgICAgICAgIFByZVByb2MKK0hpTGluayBvYmpGbG9hdCAgICAgICAgICAgRmxvYXQKK0hpTGluayBvYmpJbnQgICAgICAgICAgICAgTnVtYmVyCitIaUxpbmsgb2JqR3JvdXAgICAgICAgICAgIFN0cnVjdHVyZQorSGlMaW5rIG9iakluZGV4ICAgICAgICAgICBDb25zdGFudAorSGlMaW5rIG9iak1hdGVyaWFsICAgICAgICBMYWJlbAogCi0gIEhpTGluayBvYmpWZXJ0ZXggICAgICAgICAgS2V5d29yZAotICBIaUxpbmsgb2JqTm9ybWFsZSAgICAgICAgIEtleXdvcmQKLSAgSGlMaW5rIG9ialZlcnRpY2UgICAgICAgICBLZXl3b3JkCi0gIEhpTGluayBvYmpGYWNlICAgICAgICAgICAgS2V5d29yZAotICBIaUxpbmsgb2JqS2V5d29yZHMgICAgICAgIEtleXdvcmQKK0hpTGluayBvYmpWZXJ0ZXggICAgICAgICAgS2V5d29yZAorSGlMaW5rIG9iak5vcm1hbGUgICAgICAgICBLZXl3b3JkCitIaUxpbmsgb2JqVmVydGljZSAgICAgICAgIEtleXdvcmQKK0hpTGluayBvYmpGYWNlICAgICAgICAgICAgS2V5d29yZAorSGlMaW5rIG9iaktleXdvcmRzICAgICAgICBLZXl3b3JkCiAKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gIm9iaiIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvb2JqY3BwLnZpbSBiL3J1bnRpbWUvc3ludGF4L29iamNwcC52aW0KaW5kZXggZTgwZWVkOS4uZjExZTMwNyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvb2JqY3BwLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9vYmpjcHAudmltCkBAIC00LDIzICs0LDE1IEBACiAiIEV4LU1haW50YWluZXI6ICAgIEFudGhvbnkgSG9kc2RvbiA8YWhvZHNkb25AZmFzdG1haWwuZm0+CiAiIExhc3QgQ2hhbmdlOgkgICAgMjAwNyBPY3QgMjkKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgIGZpbmlzaAogZW5kaWYKIAogIiBSZWFkIGluIEMrKyBhbmQgT2JqQyBzeW50YXggZmlsZXMKLWlmIHZlcnNpb24gPCA2MDAKLSAgIHNvIDxzZmlsZT46cDpoL2NwcC52aW0KLSAgIHNvIDxzZmlsZT46cDpoL29iamMudmltCi1lbHNlCi0gICBydW50aW1lISBzeW50YXgvY3BwLnZpbQotICAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotICAgcnVudGltZSEgc3ludGF4L29iamMudmltCi1lbmRpZgorcnVudGltZSEgc3ludGF4L2NwcC52aW0KK3VubGV0IGI6Y3VycmVudF9zeW50YXgKK3J1bnRpbWUhIHN5bnRheC9vYmpjLnZpbQogCiBzeW4ga2V5d29yZCBvYmpDcHBOb25TdHJ1Y3R1cmUgICAgY2xhc3MgdGVtcGxhdGUgbmFtZXNwYWNlIHRyYW5zcGFyZW50IGNvbnRhaW5lZAogc3luIGtleXdvcmQgb2JqQ3BwTm9uU3RhdGVtZW50ICAgIG5ldyBkZWxldGUgZnJpZW5kIHVzaW5nIHRyYW5zcGFyZW50IGNvbnRhaW5lZApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvb2NhbWwudmltIGIvcnVudGltZS9zeW50YXgvb2NhbWwudmltCmluZGV4IDI0MTE2ZjAuLjE4ODRjMzEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L29jYW1sLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9vY2FtbC52aW0KQEAgLTEzLDExICsxMyw4IEBACiAiIGNhbiBiZSBkaXN0aW5ndWlzaGVkIGZyb20gYmVnaW4vZW5kLCB3aGljaCBpcyB1c2VkIGZvciBpbmRlbnRhdGlvbiwKICIgYW5kIGZvbGRpbmcuIChEYXZpZCBCYWVsZGUpCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpICYmIGI6Y3VycmVudF9zeW50YXggPT0gIm9jYW1sIgorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpICYmIGI6Y3VycmVudF9zeW50YXggPT0gIm9jYW1sIgogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTI1Myw3OCArMjUwLDcwIEBACiBzeW4gc3luYyBtYXRjaCBvY2FtbFNpZ1N5bmMgICAgIGdyb3VwdGhlcmUgb2NhbWxTaWcgICAgICJcPGVuZFw+IgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9vY2FtbF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9vY2FtbF9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIG9jYW1sQnJhY2VFcnIJICAgRXJyb3IKLSAgSGlMaW5rIG9jYW1sQnJhY2tFcnIJICAgRXJyb3IKLSAgSGlMaW5rIG9jYW1sUGFyZW5FcnIJICAgRXJyb3IKLSAgSGlMaW5rIG9jYW1sQXJyRXJyCSAgIEVycm9yCitIaUxpbmsgb2NhbWxCcmFjZUVycgkgICBFcnJvcgorSGlMaW5rIG9jYW1sQnJhY2tFcnIJICAgRXJyb3IKK0hpTGluayBvY2FtbFBhcmVuRXJyCSAgIEVycm9yCitIaUxpbmsgb2NhbWxBcnJFcnIJICAgRXJyb3IKIAotICBIaUxpbmsgb2NhbWxDb21tZW50RXJyICAgRXJyb3IKK0hpTGluayBvY2FtbENvbW1lbnRFcnIgICBFcnJvcgogCi0gIEhpTGluayBvY2FtbENvdW50RXJyCSAgIEVycm9yCi0gIEhpTGluayBvY2FtbERvRXJyCSAgIEVycm9yCi0gIEhpTGluayBvY2FtbERvbmVFcnIJICAgRXJyb3IKLSAgSGlMaW5rIG9jYW1sRW5kRXJyCSAgIEVycm9yCi0gIEhpTGluayBvY2FtbFRoZW5FcnIJICAgRXJyb3IKK0hpTGluayBvY2FtbENvdW50RXJyCSAgIEVycm9yCitIaUxpbmsgb2NhbWxEb0VycgkgICBFcnJvcgorSGlMaW5rIG9jYW1sRG9uZUVycgkgICBFcnJvcgorSGlMaW5rIG9jYW1sRW5kRXJyCSAgIEVycm9yCitIaUxpbmsgb2NhbWxUaGVuRXJyCSAgIEVycm9yCiAKLSAgSGlMaW5rIG9jYW1sQ2hhckVycgkgICBFcnJvcgorSGlMaW5rIG9jYW1sQ2hhckVycgkgICBFcnJvcgogCi0gIEhpTGluayBvY2FtbEVycgkgICBFcnJvcgorSGlMaW5rIG9jYW1sRXJyCSAgIEVycm9yCiAKLSAgSGlMaW5rIG9jYW1sQ29tbWVudAkgICBDb21tZW50CitIaUxpbmsgb2NhbWxDb21tZW50CSAgIENvbW1lbnQKIAotICBIaUxpbmsgb2NhbWxNb2RQYXRoCSAgIEluY2x1ZGUKLSAgSGlMaW5rIG9jYW1sT2JqZWN0CSAgIEluY2x1ZGUKLSAgSGlMaW5rIG9jYW1sTW9kdWxlCSAgIEluY2x1ZGUKLSAgSGlMaW5rIG9jYW1sTW9kUGFyYW0xICAgIEluY2x1ZGUKLSAgSGlMaW5rIG9jYW1sTW9kVHlwZQkgICBJbmNsdWRlCi0gIEhpTGluayBvY2FtbE1QUmVzdHIzCSAgIEluY2x1ZGUKLSAgSGlMaW5rIG9jYW1sRnVsbE1vZAkgICBJbmNsdWRlCi0gIEhpTGluayBvY2FtbE1vZFR5cGVSZXN0ciBJbmNsdWRlCi0gIEhpTGluayBvY2FtbFdpdGgJICAgSW5jbHVkZQotICBIaUxpbmsgb2NhbWxNVERlZgkgICBJbmNsdWRlCitIaUxpbmsgb2NhbWxNb2RQYXRoCSAgIEluY2x1ZGUKK0hpTGluayBvY2FtbE9iamVjdAkgICBJbmNsdWRlCitIaUxpbmsgb2NhbWxNb2R1bGUJICAgSW5jbHVkZQorSGlMaW5rIG9jYW1sTW9kUGFyYW0xICAgIEluY2x1ZGUKK0hpTGluayBvY2FtbE1vZFR5cGUJICAgSW5jbHVkZQorSGlMaW5rIG9jYW1sTVBSZXN0cjMJICAgSW5jbHVkZQorSGlMaW5rIG9jYW1sRnVsbE1vZAkgICBJbmNsdWRlCitIaUxpbmsgb2NhbWxNb2RUeXBlUmVzdHIgSW5jbHVkZQorSGlMaW5rIG9jYW1sV2l0aAkgICBJbmNsdWRlCitIaUxpbmsgb2NhbWxNVERlZgkgICBJbmNsdWRlCiAKLSAgSGlMaW5rIG9jYW1sU2NyaXB0CSAgIEluY2x1ZGUKK0hpTGluayBvY2FtbFNjcmlwdAkgICBJbmNsdWRlCiAKLSAgSGlMaW5rIG9jYW1sQ29uc3RydWN0b3IgIENvbnN0YW50CitIaUxpbmsgb2NhbWxDb25zdHJ1Y3RvciAgQ29uc3RhbnQKIAotICBIaUxpbmsgb2NhbWxWYWwgICAgICAgICAgS2V5d29yZAotICBIaUxpbmsgb2NhbWxNb2RQcmVSSFMgICAgS2V5d29yZAotICBIaUxpbmsgb2NhbWxNUFJlc3RyMgkgICBLZXl3b3JkCi0gIEhpTGluayBvY2FtbEtleXdvcmQJICAgS2V5d29yZAotICBIaUxpbmsgb2NhbWxNZXRob2QJICAgSW5jbHVkZQotICBIaUxpbmsgb2NhbWxGdW5EZWYJICAgS2V5d29yZAotICBIaUxpbmsgb2NhbWxSZWZBc3NpZ24gICAgS2V5d29yZAotICBIaUxpbmsgb2NhbWxLZXlDaGFyCSAgIEtleXdvcmQKLSAgSGlMaW5rIG9jYW1sQW55VmFyCSAgIEtleXdvcmQKLSAgSGlMaW5rIG9jYW1sVG9wU3RvcAkgICBLZXl3b3JkCi0gIEhpTGluayBvY2FtbE9wZXJhdG9yCSAgIEtleXdvcmQKK0hpTGluayBvY2FtbFZhbCAgICAgICAgICBLZXl3b3JkCitIaUxpbmsgb2NhbWxNb2RQcmVSSFMgICAgS2V5d29yZAorSGlMaW5rIG9jYW1sTVBSZXN0cjIJICAgS2V5d29yZAorSGlMaW5rIG9jYW1sS2V5d29yZAkgICBLZXl3b3JkCitIaUxpbmsgb2NhbWxNZXRob2QJICAgSW5jbHVkZQorSGlMaW5rIG9jYW1sRnVuRGVmCSAgIEtleXdvcmQKK0hpTGluayBvY2FtbFJlZkFzc2lnbiAgICBLZXl3b3JkCitIaUxpbmsgb2NhbWxLZXlDaGFyCSAgIEtleXdvcmQKK0hpTGluayBvY2FtbEFueVZhcgkgICBLZXl3b3JkCitIaUxpbmsgb2NhbWxUb3BTdG9wCSAgIEtleXdvcmQKK0hpTGluayBvY2FtbE9wZXJhdG9yCSAgIEtleXdvcmQKIAotICBIaUxpbmsgb2NhbWxCb29sZWFuCSAgIEJvb2xlYW4KLSAgSGlMaW5rIG9jYW1sQ2hhcmFjdGVyICAgIENoYXJhY3RlcgotICBIaUxpbmsgb2NhbWxOdW1iZXIJICAgTnVtYmVyCi0gIEhpTGluayBvY2FtbEZsb2F0CSAgIEZsb2F0Ci0gIEhpTGluayBvY2FtbFN0cmluZwkgICBTdHJpbmcKK0hpTGluayBvY2FtbEJvb2xlYW4JICAgQm9vbGVhbgorSGlMaW5rIG9jYW1sQ2hhcmFjdGVyICAgIENoYXJhY3RlcgorSGlMaW5rIG9jYW1sTnVtYmVyCSAgIE51bWJlcgorSGlMaW5rIG9jYW1sRmxvYXQJICAgRmxvYXQKK0hpTGluayBvY2FtbFN0cmluZwkgICBTdHJpbmcKIAotICBIaUxpbmsgb2NhbWxMYWJlbAkgICBJZGVudGlmaWVyCitIaUxpbmsgb2NhbWxMYWJlbAkgICBJZGVudGlmaWVyCiAKLSAgSGlMaW5rIG9jYW1sVHlwZQkgICBUeXBlCitIaUxpbmsgb2NhbWxUeXBlCSAgIFR5cGUKIAotICBIaUxpbmsgb2NhbWxUb2RvCSAgIFRvZG8KK0hpTGluayBvY2FtbFRvZG8JICAgVG9kbwogCi0gIEhpTGluayBvY2FtbEVuY2wJICAgS2V5d29yZAorSGlMaW5rIG9jYW1sRW5jbAkgICBLZXl3b3JkCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJvY2FtbCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvb2NjYW0udmltIGIvcnVudGltZS9zeW50YXgvb2NjYW0udmltCmluZGV4IDFjODRiZjAuLmJhYjg0ZjIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L29jY2FtLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9vY2NhbS52aW0KQEAgLTQsOSArNCw4IEBACiAiIE1haW50YWluZXI6CU1hcmlvIFNjaHdlaWdsZXIgPG1zNDRAa2VudC5hYy51az4KICIgTGFzdCBDaGFuZ2U6CTI0IE1heSAyMDAzCiAKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTg2LDQxICs4NSwzNCBAQAogCiBzeW4gcmVnaW9uIG9jY2FtQ0RpcmVjdGl2ZQlzdGFydD0vI1woVVNFXHxJTkNMVURFXHxQUkFHTUFcfERFRklORVx8VU5ERUZJTkVcfFVOREVGXHxJRlx8RUxJRlx8RUxTRVx8RU5ESUZcfFdBUk5JTkdcfEVSUk9SXHxSRUxBWFwpXD4vIGVuZD0vJC8gY29udGFpbnM9b2NjYW1TdHJpbmcsb2NjYW1Db21tZW50LG9jY2FtQ0RTdHJpbmcKIAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX29jY2FtX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX29jY2FtX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgb2NjYW1UeXBlIFR5cGUKLSAgSGlMaW5rIG9jY2FtS2V5d29yZCBLZXl3b3JkCi0gIEhpTGluayBvY2NhbUNvbW1lbnQgQ29tbWVudAotICBIaUxpbmsgb2NjYW1Db21tZW50VGl0bGUgUHJlUHJvYwotICBIaUxpbmsgb2NjYW1Ub2RvIFRvZG8KLSAgSGlMaW5rIG9jY2FtTm90ZSBUb2RvCi0gIEhpTGluayBvY2NhbVN0cmluZyBTdHJpbmcKLSAgSGlMaW5rIG9jY2FtQ2hhclN0cmluZyBTdHJpbmcKLSAgSGlMaW5rIG9jY2FtTnVtYmVyIE51bWJlcgotICBIaUxpbmsgb2NjYW1DRGlyZWN0aXZlIFByZVByb2MKLSAgSGlMaW5rIG9jY2FtQ0RTdHJpbmcgU3RyaW5nCi0gIEhpTGluayBvY2NhbVBQSWRlbnRpZmllciBQcmVQcm9jCi0gIEhpTGluayBvY2NhbUJvb2xlYW4gQm9vbGVhbgotICBIaUxpbmsgb2NjYW1TcGVjaWFsQ2hhciBTcGVjaWFsQ2hhcgotICBIaUxpbmsgb2NjYW1DaGFyIENoYXJhY3RlcgotICBIaUxpbmsgb2NjYW1TdHJ1Y3R1cmUgU3RydWN0dXJlCi0gIEhpTGluayBvY2NhbUlkZW50aWZpZXIgSWRlbnRpZmllcgotICBIaUxpbmsgb2NjYW1Db25zdGFudCBDb25zdGFudAotICBIaUxpbmsgb2NjYW1PcGVyYXRvciBPcGVyYXRvcgotICBIaUxpbmsgb2NjYW1GdW5jdGlvbiBJZ25vcmUKLSAgSGlMaW5rIG9jY2FtUmVwZWF0IFJlcGVhdAotICBIaUxpbmsgb2NjYW1Db25kaXRpb25hbCBDb25kaXRpb25hbAotICBIaUxpbmsgb2NjYW1CcmFja2V0cyBUeXBlCi0gIEhpTGluayBvY2NhbVBhcmFudGhlc2VzIERlbGltaXRlcgorSGlMaW5rIG9jY2FtVHlwZSBUeXBlCitIaUxpbmsgb2NjYW1LZXl3b3JkIEtleXdvcmQKK0hpTGluayBvY2NhbUNvbW1lbnQgQ29tbWVudAorSGlMaW5rIG9jY2FtQ29tbWVudFRpdGxlIFByZVByb2MKK0hpTGluayBvY2NhbVRvZG8gVG9kbworSGlMaW5rIG9jY2FtTm90ZSBUb2RvCitIaUxpbmsgb2NjYW1TdHJpbmcgU3RyaW5nCitIaUxpbmsgb2NjYW1DaGFyU3RyaW5nIFN0cmluZworSGlMaW5rIG9jY2FtTnVtYmVyIE51bWJlcgorSGlMaW5rIG9jY2FtQ0RpcmVjdGl2ZSBQcmVQcm9jCitIaUxpbmsgb2NjYW1DRFN0cmluZyBTdHJpbmcKK0hpTGluayBvY2NhbVBQSWRlbnRpZmllciBQcmVQcm9jCitIaUxpbmsgb2NjYW1Cb29sZWFuIEJvb2xlYW4KK0hpTGluayBvY2NhbVNwZWNpYWxDaGFyIFNwZWNpYWxDaGFyCitIaUxpbmsgb2NjYW1DaGFyIENoYXJhY3RlcgorSGlMaW5rIG9jY2FtU3RydWN0dXJlIFN0cnVjdHVyZQorSGlMaW5rIG9jY2FtSWRlbnRpZmllciBJZGVudGlmaWVyCitIaUxpbmsgb2NjYW1Db25zdGFudCBDb25zdGFudAorSGlMaW5rIG9jY2FtT3BlcmF0b3IgT3BlcmF0b3IKK0hpTGluayBvY2NhbUZ1bmN0aW9uIElnbm9yZQorSGlMaW5rIG9jY2FtUmVwZWF0IFJlcGVhdAorSGlMaW5rIG9jY2FtQ29uZGl0aW9uYWwgQ29uZGl0aW9uYWwKK0hpTGluayBvY2NhbUJyYWNrZXRzIFR5cGUKK0hpTGluayBvY2NhbVBhcmFudGhlc2VzIERlbGltaXRlcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAib2NjYW0iCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L29tbmltYXJrLnZpbSBiL3J1bnRpbWUvc3ludGF4L29tbmltYXJrLnZpbQppbmRleCA2OThiM2MwLi45ODg3MzUyIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9vbW5pbWFyay52aW0KKysrIGIvcnVudGltZS9zeW50YXgvb21uaW1hcmsudmltCkBAIC0zLDE5ICszLDEyIEBACiAiIE1haW50YWluZXI6CVBhdWwgVGVycmF5IDxtYWlsdG86dGVycmF5QDRkY29uY2VwdC5mcj4KICIgTGFzdCBDaGFuZ2U6CTExIE9jdCAyMDAwCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNldCBpc2tleXdvcmQ9QCw0OC01NyxfLDEyOC0xNjcsMjI0LTIzNSwtCi1lbHNlCi0gIHNldGxvY2FsIGlza2V5d29yZD1ALDQ4LTU3LF8sMTI4LTE2NywyMjQtMjM1LC0KLWVuZGlmCitzZXRsb2NhbCBpc2tleXdvcmQ9QCw0OC01NyxfLDEyOC0xNjcsMjI0LTIzNSwtCiAKIHN5biBrZXl3b3JkIG9tbmltYXJrS2V5d29yZHMJQUNUSVZBVEUgQUdBSU4KIHN5biBrZXl3b3JkIG9tbmltYXJrS2V5d29yZHMJQ0FUQ0ggQ0xFQVIgQ0xPU0UgQ09QWSBDT1BZLUNMRUFSIENST1NTLVRSQU5TTEFURQpAQCAtOTYsMjYgKzg5LDE4IEBACiBzeW4gc3luYyBtaW5saW5lcz0yMDAwCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX29tbmltYXJrX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX29tbmltYXJrX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgb21uaW1hcmtDb21tYW5kcwkJU3RhdGVtZW50Ci0gIEhpTGluayBvbW5pbWFya0tleXdvcmRzCQlJZGVudGlmaWVyCi0gIEhpTGluayBvbW5pbWFya1N0cmluZwkJU3RyaW5nCi0gIEhpTGluayBvbW5pbWFya1BhdHRlcm5zCQlNYWNybworSGlMaW5rIG9tbmltYXJrQ29tbWFuZHMJCVN0YXRlbWVudAorSGlMaW5rIG9tbmltYXJrS2V5d29yZHMJCUlkZW50aWZpZXIKK0hpTGluayBvbW5pbWFya1N0cmluZwkJU3RyaW5nCitIaUxpbmsgb21uaW1hcmtQYXR0ZXJucwkJTWFjcm8KICIgIEhpTGluayBvbW5pbWFya051bWJlcgkJCU51bWJlcgotICBIaUxpbmsgb21uaW1hcmtDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBvbW5pbWFya0VzY2FwZQkJU3BlY2lhbAorSGlMaW5rIG9tbmltYXJrQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIG9tbmltYXJrRXNjYXBlCQlTcGVjaWFsCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJvbW5pbWFyayIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvb3BlbnJvYWQudmltIGIvcnVudGltZS9zeW50YXgvb3BlbnJvYWQudmltCmluZGV4IDNmOWE3OGQuLjZkMmFmZmMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L29wZW5yb2FkLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9vcGVucm9hZC52aW0KQEAgLTMsMTIgKzMsOCBAQAogIiBNYWludGFpbmVyOglMdWlzIE1vcmVubyA8bG1vcmVub0BlcmVzbWFzLm5ldD4KICIgTGFzdCBjaGFuZ2U6CTIwMDEgSnVuIDEyCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi0iCi1pZiB2ZXJzaW9uIDwgNjAwCi0Jc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogCWZpbmlzaAogZW5kaWYKIApAQCAtMjM1LDMyICsyMzEsMjQgQEAKIGVuZGlmCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAogIgotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX29wZW5yb2FkX3N5bnRheF9pbml0cyIpCi0JaWYgdmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX29wZW5yb2FkX3N5bnRheF9pbml0cyA9IDEKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLQllbHNlCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotCWVuZGlmCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotCUhpTGluayBvcGVucm9hZEtleXdvcmQJU3RhdGVtZW50Ci0JSGlMaW5rIG9wZW5yb2FkTnVtYmVyCU51bWJlcgotCUhpTGluayBvcGVucm9hZFN0cmluZwlTdHJpbmcKLQlIaUxpbmsgb3BlbnJvYWRDb21tZW50CUNvbW1lbnQKLQlIaUxpbmsgb3BlbnJvYWRPcGVyYXRvcglPcGVyYXRvcgotCUhpTGluayBvcGVucm9hZFR5cGUJCVR5cGUKLQlIaUxpbmsgb3BlbnJvYWRGdW5jCQlTcGVjaWFsCi0JSGlMaW5rIG9wZW5yb2FkQ2xhc3MJVHlwZQotCUhpTGluayBvcGVucm9hZEV2ZW50CVN0YXRlbWVudAotCUhpTGluayBvcGVucm9hZENvbnN0CUNvbnN0YW50Ci0JSGlMaW5rIG9wZW5yb2FkVmFyCQlJZGVudGlmaWVyCi0JSGlMaW5rIG9wZW5yb2FkSWRlbnQJSWRlbnRpZmllcgotCUhpTGluayBvcGVucm9hZFRvZG8JCVRvZG8KK0hpTGluayBvcGVucm9hZEtleXdvcmQJU3RhdGVtZW50CitIaUxpbmsgb3BlbnJvYWROdW1iZXIJTnVtYmVyCitIaUxpbmsgb3BlbnJvYWRTdHJpbmcJU3RyaW5nCitIaUxpbmsgb3BlbnJvYWRDb21tZW50CUNvbW1lbnQKK0hpTGluayBvcGVucm9hZE9wZXJhdG9yCU9wZXJhdG9yCitIaUxpbmsgb3BlbnJvYWRUeXBlCQlUeXBlCitIaUxpbmsgb3BlbnJvYWRGdW5jCQlTcGVjaWFsCitIaUxpbmsgb3BlbnJvYWRDbGFzcwlUeXBlCitIaUxpbmsgb3BlbnJvYWRFdmVudAlTdGF0ZW1lbnQKK0hpTGluayBvcGVucm9hZENvbnN0CUNvbnN0YW50CitIaUxpbmsgb3BlbnJvYWRWYXIJCUlkZW50aWZpZXIKK0hpTGluayBvcGVucm9hZElkZW50CUlkZW50aWZpZXIKK0hpTGluayBvcGVucm9hZFRvZG8JCVRvZG8KIAotCWRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAib3BlbnJvYWQiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9vcGwudmltIGIvcnVudGltZS9zeW50YXgvb3BsLnZpbQppbmRleCAxYjA3ZTM1Li44OTU5Y2Y2IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9vcGwudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L29wbC52aW0KQEAgLTYsMTEgKzYsOCBAQAogCiAiIE9wZW4gUHNpb24gTGFuZ3VhZ2UuLi4gKEVQT0MxNi9FUE9DMzIpCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC03NSwyNSArNzIsMTcgQEAKIHN5biBtYXRjaCAgIE9QTE1hdGhzT3BlcmF0b3IgICAgIi1cfD1cfFs6PD4rXCpeL1xcXSIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfT1BMX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX09QTF9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIE9QTFN0YXRlbWVudAkJU3RhdGVtZW50Ci0gIEhpTGluayBPUExOdW1iZXIJCU51bWJlcgotICBIaUxpbmsgT1BMU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIE9QTENvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIE9QTE1hdGhzT3BlcmF0b3IJQ29uZGl0aW9uYWwKK0hpTGluayBPUExTdGF0ZW1lbnQJCVN0YXRlbWVudAorSGlMaW5rIE9QTE51bWJlcgkJTnVtYmVyCitIaUxpbmsgT1BMU3RyaW5nCQlTdHJpbmcKK0hpTGluayBPUExDb21tZW50CQlDb21tZW50CitIaUxpbmsgT1BMTWF0aHNPcGVyYXRvcglDb25kaXRpb25hbAogIiAgSGlMaW5rIE9QTEVycm9yCQlFcnJvcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAib3BsIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9vcmEudmltIGIvcnVudGltZS9zeW50YXgvb3JhLnZpbQppbmRleCBiZjVkMzIyLi5lODQyOTlhIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9vcmEudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L29yYS52aW0KQEAgLTExLDEwICsxMSw4IEBACiAiICAgc3FsbmV0LW9yYSBhbmQgdG5zbmFtZXMub3JhOyBzaW5jZSB3aWxsIG5vdCBjYXVzZSg/KSBwcm9ibGVtcwogIiAgIGlzIGVhc2llciB0byBmb2xsb3cgc2VwYXJhdGVseSBlYWNoIGZpbGUncyBrZXl3b3JkcykKIAotIiBSZW1vdmUgYW55IG9sZCBzeW50YXggc3R1ZmYgaGFuZ2luZyBhcm91bmQsIGlmIG5lZWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW4gY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNDM3LDM2ICs0MzUsMjYgQEAKICI9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICIgaGlnaGxpZ2h0aW5nCiAKLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX29yYV9zeW5faW5pdHMiKQorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfb3JhX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCitIaUxpbmsgb3JhS2V5d29yZAkgIFN0YXRlbWVudAkJInVzdWFsIGtleXdvcmRzCitIaUxpbmsgb3JhS2V5d29yZEdyb3VwICBUeXBlCQkJImtleXdvcmRzIHdoaWNoIGdyb3VwIG90aGVyIGtleXdvcmRzCitIaUxpbmsgb3JhS2V5d29yZFByZWYgICBvcmFLZXl3b3JkR3JvdXAJImtleXdvcmRzIHdoaWNoIGFjdCBhcyBwcmVmaXhlcworSGlMaW5rIG9yYUtleXdvcmRPYnMJICBUb2RvCQkJIm9ic29sZXRlIGtleXdvcmRzCitIaUxpbmsgb3JhS2V5d29yZFVuZAkgIFByZVByb2MJCSJ1bmRvY3VtZW50ZWQga2V5d29yZHMKK0hpTGluayBvcmFLZXl3b3JkVW5kT2JzIG9yYUtleXdvcmRPYnMJCSJ1bmRvY3VtZW50ZWQgb2Jzb2xldGUga2V5d29yZHMKK0hpTGluayBvcmFWYWx1ZQkgIElkZW50aWZpZXIJCSJ2YWx1ZXMsIGxpa2UgdHJ1ZSBvciBmYWxzZQorSGlMaW5rIG9yYU1vZGlmaWVyCSAgb3JhVmFsdWUJCSJtb2RpZmllcyB2YWx1ZXMKK0hpTGluayBvcmFTdHJpbmcJICBTdHJpbmcJCSJzdHJpbmdzCiAKLSAgSGlMaW5rIG9yYUtleXdvcmQJICBTdGF0ZW1lbnQJCSJ1c3VhbCBrZXl3b3JkcwotICBIaUxpbmsgb3JhS2V5d29yZEdyb3VwICBUeXBlCQkJImtleXdvcmRzIHdoaWNoIGdyb3VwIG90aGVyIGtleXdvcmRzCi0gIEhpTGluayBvcmFLZXl3b3JkUHJlZiAgIG9yYUtleXdvcmRHcm91cAkia2V5d29yZHMgd2hpY2ggYWN0IGFzIHByZWZpeGVzCi0gIEhpTGluayBvcmFLZXl3b3JkT2JzCSAgVG9kbwkJCSJvYnNvbGV0ZSBrZXl3b3JkcwotICBIaUxpbmsgb3JhS2V5d29yZFVuZAkgIFByZVByb2MJCSJ1bmRvY3VtZW50ZWQga2V5d29yZHMKLSAgSGlMaW5rIG9yYUtleXdvcmRVbmRPYnMgb3JhS2V5d29yZE9icwkJInVuZG9jdW1lbnRlZCBvYnNvbGV0ZSBrZXl3b3JkcwotICBIaUxpbmsgb3JhVmFsdWUJICBJZGVudGlmaWVyCQkidmFsdWVzLCBsaWtlIHRydWUgb3IgZmFsc2UKLSAgSGlMaW5rIG9yYU1vZGlmaWVyCSAgb3JhVmFsdWUJCSJtb2RpZmllcyB2YWx1ZXMKLSAgSGlMaW5rIG9yYVN0cmluZwkgIFN0cmluZwkJInN0cmluZ3MKK0hpTGluayBvcmFTcGVjaWFsCSAgU3BlY2lhbAkJInNwZWNpYWwgY2hhcmFjdGVycworSGlMaW5rIG9yYUVycm9yCSAgRXJyb3IJCQkiZXJyb3JzCitIaUxpbmsgb3JhUGFyZW5FcnJvcgkgIG9yYUVycm9yCQkiZXJyb3JzIGNhdXNlZCBieSBtaXNtYXRjaGluZyBwYXJhbnRoZXNlcwogCi0gIEhpTGluayBvcmFTcGVjaWFsCSAgU3BlY2lhbAkJInNwZWNpYWwgY2hhcmFjdGVycwotICBIaUxpbmsgb3JhRXJyb3IJICBFcnJvcgkJCSJlcnJvcnMKLSAgSGlMaW5rIG9yYVBhcmVuRXJyb3IJICBvcmFFcnJvcgkJImVycm9ycyBjYXVzZWQgYnkgbWlzbWF0Y2hpbmcgcGFyYW50aGVzZXMKK0hpTGluayBvcmFDb21tZW50CSAgQ29tbWVudAkJImNvbW1lbnRzCiAKLSAgSGlMaW5rIG9yYUNvbW1lbnQJICBDb21tZW50CQkiY29tbWVudHMKLQotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKLQorZGVsY29tbWFuZCBIaUxpbmsKIAogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJvcmEiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9wYXBwLnZpbSBiL3J1bnRpbWUvc3ludGF4L3BhcHAudmltCmluZGV4IGQ4NmRjZTYuLjViNjVmMDUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3BhcHAudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3BhcHAudmltCkBAIC0xNCw0MSArMTQsMjQgQEAKIAogIiBwb2QgaXMsIGJ0dywgYWxsb3dlZCBldmVyeXdoZXJlLCB3aGljaCBpcyBhY3R1YWxseSB3cm9uZyA6KAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIAogIiBzb3VyY2UgaXMgYmFzaWNhbGx5IHhtbCwgd2l0aCBpbmNsdWRlZCBodG1sICh0aGlzIGlzIGNvbW1vbikgYW5kIHBlcmwgYml0cwotaWYgdmVyc2lvbiA8IDYwMAotICBzbyA8c2ZpbGU+OnA6aC94bWwudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC94bWwudmltCi1lbmRpZgorcnVudGltZSEgc3ludGF4L3htbC52aW0KIHVubGV0IGI6Y3VycmVudF9zeW50YXgKIAogaWYgZXhpc3RzKCJwYXBwX2luY2x1ZGVfaHRtbCIpCi0gIGlmIHZlcnNpb24gPCA2MDAKLSAgICBzeW4gaW5jbHVkZSBAUEFwcEh0bWwgPHNmaWxlPjpwOmgvaHRtbC52aW0KLSAgZWxzZQotICAgIHN5biBpbmNsdWRlIEBQQXBwSHRtbCBzeW50YXgvaHRtbC52aW0KLSAgZW5kaWYKKyAgc3luIGluY2x1ZGUgQFBBcHBIdG1sIHN5bnRheC9odG1sLnZpbQogICB1bmxldCBiOmN1cnJlbnRfc3ludGF4CiAgIHN5bnRheCBzcGVsbCBkZWZhdWx0ICAiIGFkZGVkIGJ5IEJyYW0KIGVuZGlmCiAKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3luIGluY2x1ZGUgQFBBcHBQZXJsIDxzZmlsZT46cDpoL3BlcmwudmltCi1lbHNlCi0gIHN5biBpbmNsdWRlIEBQQXBwUGVybCBzeW50YXgvcGVybC52aW0KLWVuZGlmCitzeW4gaW5jbHVkZSBAUEFwcFBlcmwgc3ludGF4L3BlcmwudmltCiAKLWlmIHY6dmVyc2lvbiA+PSA2MDAKLSAgIHN5biBjbHVzdGVyIHhtbEZvbGRDbHVzdGVyIGFkZD1wYXBwX3BlcmwscGFwcF94cGVybCxwYXBwX3BodG1sLHBhcHBfcHhtbCxwYXBwX3BlcmxQT0QKLWVuZGlmCitzeW4gY2x1c3RlciB4bWxGb2xkQ2x1c3RlciBhZGQ9cGFwcF9wZXJsLHBhcHBfeHBlcmwscGFwcF9waHRtbCxwYXBwX3B4bWwscGFwcF9wZXJsUE9ECiAKICIgcHJlcHJvY2Vzc29yIGNvbW1hbmRzCiBzeW4gcmVnaW9uIHBhcHBfcHJlcCBtYXRjaGdyb3VwPXBhcHBfcHJlcCBzdGFydD0iXiNccypcKGlmXHxlbHNpZlwpIiBlbmQ9IiQiIGtlZXBlbmQgY29udGFpbnM9QHBlcmxFeHByIGNvbnRhaW5lZApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcGFzY2FsLnZpbSBiL3J1bnRpbWUvc3ludGF4L3Bhc2NhbC52aW0KaW5kZXggZDJiNjA2MC4uNGEyOTBmMCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcGFzY2FsLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9wYXNjYWwudmltCkBAIC0xMiwxMSArMTIsOCBAQAogIglBdXN0aW4gWmllZ2xlciA8YXVzdGluQGhhbG9zdGF0dWUuY2E+LAogIglNYXJrdXMgS29lbmlnIDxtYXJrdXNAc3RiZXIta29lbmlnLmRlPgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMzIwLDUyICszMTcsNDQgQEAKIGVuZGlmCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3Bhc2NhbF9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9wYXNjYWxfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBwYXNjYWxBY2NlcwkJcGFzY2FsU3RhdGVtZW50Ci0gIEhpTGluayBwYXNjYWxCb29sZWFuCQlCb29sZWFuCi0gIEhpTGluayBwYXNjYWxDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBwYXNjYWxDb25kaXRpb25hbAlDb25kaXRpb25hbAotICBIaUxpbmsgcGFzY2FsQ29uc3RhbnQJCUNvbnN0YW50Ci0gIEhpTGluayBwYXNjYWxEZWxpbWl0ZXIJSWRlbnRpZmllcgotICBIaUxpbmsgcGFzY2FsRGlyZWN0aXZlCXBhc2NhbFN0YXRlbWVudAotICBIaUxpbmsgcGFzY2FsRXhjZXB0aW9uCUV4Y2VwdGlvbgotICBIaUxpbmsgcGFzY2FsRmxvYXQJCUZsb2F0Ci0gIEhpTGluayBwYXNjYWxGdW5jdGlvbgkJRnVuY3Rpb24KLSAgSGlMaW5rIHBhc2NhbExhYmVsCQlMYWJlbAotICBIaUxpbmsgcGFzY2FsTWF0cml4RGVsaW1pdGVyCUlkZW50aWZpZXIKLSAgSGlMaW5rIHBhc2NhbE1vZGlmaWVyCQlUeXBlCi0gIEhpTGluayBwYXNjYWxOdW1iZXIJCU51bWJlcgotICBIaUxpbmsgcGFzY2FsT3BlcmF0b3IJCU9wZXJhdG9yCi0gIEhpTGluayBwYXNjYWxQcmVkZWZpbmVkCXBhc2NhbFN0YXRlbWVudAotICBIaUxpbmsgcGFzY2FsUHJlUHJvYwkJUHJlUHJvYwotICBIaUxpbmsgcGFzY2FsUmVwZWF0CQlSZXBlYXQKLSAgSGlMaW5rIHBhc2NhbFNwYWNlRXJyb3IJRXJyb3IKLSAgSGlMaW5rIHBhc2NhbFN0YXRlbWVudAlTdGF0ZW1lbnQKLSAgSGlMaW5rIHBhc2NhbFN0cmluZwkJU3RyaW5nCi0gIEhpTGluayBwYXNjYWxTdHJpbmdFc2NhcGUJU3BlY2lhbAotICBIaUxpbmsgcGFzY2FsU3RyaW5nRXNjYXBlR1BDCVNwZWNpYWwKLSAgSGlMaW5rIHBhc2NhbFN0cmluZ0Vycm9yCUVycm9yCi0gIEhpTGluayBwYXNjYWxTdHJ1Y3QJCXBhc2NhbFN0YXRlbWVudAotICBIaUxpbmsgcGFzY2FsU3ltYm9sT3BlcmF0b3IJcGFzY2FsT3BlcmF0b3IKLSAgSGlMaW5rIHBhc2NhbFRvZG8JCVRvZG8KLSAgSGlMaW5rIHBhc2NhbFR5cGUJCVR5cGUKLSAgSGlMaW5rIHBhc2NhbFVuY2xhc3NpZmllZAlwYXNjYWxTdGF0ZW1lbnQKLSAgIiAgSGlMaW5rIHBhc2NhbEFzbQkJQXNzZW1ibGVyCi0gIEhpTGluayBwYXNjYWxFcnJvcgkJRXJyb3IKLSAgSGlMaW5rIHBhc2NhbEFzbUtleQkJcGFzY2FsU3RhdGVtZW50Ci0gIEhpTGluayBwYXNjYWxTaG93VGFiCQlFcnJvcgorSGlMaW5rIHBhc2NhbEFjY2VzCQlwYXNjYWxTdGF0ZW1lbnQKK0hpTGluayBwYXNjYWxCb29sZWFuCQlCb29sZWFuCitIaUxpbmsgcGFzY2FsQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHBhc2NhbENvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCitIaUxpbmsgcGFzY2FsQ29uc3RhbnQJCUNvbnN0YW50CitIaUxpbmsgcGFzY2FsRGVsaW1pdGVyCUlkZW50aWZpZXIKK0hpTGluayBwYXNjYWxEaXJlY3RpdmUJcGFzY2FsU3RhdGVtZW50CitIaUxpbmsgcGFzY2FsRXhjZXB0aW9uCUV4Y2VwdGlvbgorSGlMaW5rIHBhc2NhbEZsb2F0CQlGbG9hdAorSGlMaW5rIHBhc2NhbEZ1bmN0aW9uCQlGdW5jdGlvbgorSGlMaW5rIHBhc2NhbExhYmVsCQlMYWJlbAorSGlMaW5rIHBhc2NhbE1hdHJpeERlbGltaXRlcglJZGVudGlmaWVyCitIaUxpbmsgcGFzY2FsTW9kaWZpZXIJCVR5cGUKK0hpTGluayBwYXNjYWxOdW1iZXIJCU51bWJlcgorSGlMaW5rIHBhc2NhbE9wZXJhdG9yCQlPcGVyYXRvcgorSGlMaW5rIHBhc2NhbFByZWRlZmluZWQJcGFzY2FsU3RhdGVtZW50CitIaUxpbmsgcGFzY2FsUHJlUHJvYwkJUHJlUHJvYworSGlMaW5rIHBhc2NhbFJlcGVhdAkJUmVwZWF0CitIaUxpbmsgcGFzY2FsU3BhY2VFcnJvcglFcnJvcgorSGlMaW5rIHBhc2NhbFN0YXRlbWVudAlTdGF0ZW1lbnQKK0hpTGluayBwYXNjYWxTdHJpbmcJCVN0cmluZworSGlMaW5rIHBhc2NhbFN0cmluZ0VzY2FwZQlTcGVjaWFsCitIaUxpbmsgcGFzY2FsU3RyaW5nRXNjYXBlR1BDCVNwZWNpYWwKK0hpTGluayBwYXNjYWxTdHJpbmdFcnJvcglFcnJvcgorSGlMaW5rIHBhc2NhbFN0cnVjdAkJcGFzY2FsU3RhdGVtZW50CitIaUxpbmsgcGFzY2FsU3ltYm9sT3BlcmF0b3IJcGFzY2FsT3BlcmF0b3IKK0hpTGluayBwYXNjYWxUb2RvCQlUb2RvCitIaUxpbmsgcGFzY2FsVHlwZQkJVHlwZQorSGlMaW5rIHBhc2NhbFVuY2xhc3NpZmllZAlwYXNjYWxTdGF0ZW1lbnQKKyIgIEhpTGluayBwYXNjYWxBc20JCUFzc2VtYmxlcgorSGlMaW5rIHBhc2NhbEVycm9yCQlFcnJvcgorSGlMaW5rIHBhc2NhbEFzbUtleQkJcGFzY2FsU3RhdGVtZW50CitIaUxpbmsgcGFzY2FsU2hvd1RhYgkJRXJyb3IKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicGFzY2FsIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcGNhcC52aW0gYi9ydW50aW1lL3N5bnRheC9wY2FwLnZpbQppbmRleCAxN2QwZDQyLi43Yzk3NzM4IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9wY2FwLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9wY2FwLnZpbQpAQCAtNCwyMCArNCwxMyBAQAogIgkJTW9kaWZpZWQgYnkgQnJhbQogIiBMYXN0IENoYW5nZToJMjAwMyBNYXkgMTEKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKICJkZWZpbmUga2V5d29yZHMKLWlmIHZlcnNpb24gPCA2MDAKLSAgc2V0IGlzaz1ALDQ2LTU3LF8sLSwjLD0sMTkyLTI1NQotZWxzZQotICBzZXRsb2NhbCBpc2s9QCw0Ni01NyxfLC0sIyw9LDE5Mi0yNTUKLWVuZGlmCitzZXRsb2NhbCBpc2s9QCw0Ni01NyxfLC0sIyw9LDE5Mi0yNTUKIAogImZpcnN0IGFsbCB0aGUgYmFkIGd1eXMKIHN5biBtYXRjaCBwY2FwQmFkICdeLlwrJCcJICAgICAgICJkZWZpbmUgYW55IGxpbmUgYXMgYmFkCkBAIC00MywyMiArMzYsMTQgQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9wY2FwX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3BjYXBfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBwY2FwQmFkIFdhcm5pbmdNc2cKLSAgSGlMaW5rIHBjYXBCYWR3b3JkIFdhcm5pbmdNc2cKLSAgSGlMaW5rIHBjYXBDb21tZW50IENvbW1lbnQKK0hpTGluayBwY2FwQmFkIFdhcm5pbmdNc2cKK0hpTGluayBwY2FwQmFkd29yZCBXYXJuaW5nTXNnCitIaUxpbmsgcGNhcENvbW1lbnQgQ29tbWVudAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicGNhcCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcGNjdHMudmltIGIvcnVudGltZS9zeW50YXgvcGNjdHMudmltCmluZGV4IDgzNDFmNWIuLjVkZGM1NzAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3BjY3RzLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9wY2N0cy52aW0KQEAgLTMsMjAgKzMsMTMgQEAKICIgTWFpbnRhaW5lcjoJU2NvdHQgQmlnaGFtIDxkc2JAa2lsbGVyYnVubmllcy5vcmc+CiAiIExhc3QgQ2hhbmdlOgkxMCBBdWcgMTk5OQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIAogIiBSZWFkIHRoZSBDKysgc3ludGF4IHRvIHN0YXJ0IHdpdGgKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3luIGluY2x1ZGUgQGNwcFRvcExldmVsIDxzZmlsZT46cDpoL2NwcC52aW0KLWVsc2UKLSAgc3luIGluY2x1ZGUgQGNwcFRvcExldmVsIHN5bnRheC9jcHAudmltCi1lbmRpZgorc3luIGluY2x1ZGUgQGNwcFRvcExldmVsIHN5bnRheC9jcHAudmltCiAKIHN5biByZWdpb24gcGNjdHNBY3Rpb24gbWF0Y2hncm91cD1wY2N0c0RlbGltIHN0YXJ0PSI8PCIgZW5kPSI+Pj9cPSIgY29udGFpbnM9QGNwcFRvcExldmVsLHBjY3RzUnVsZVJlZgogCkBAIC03MiwzNCArNjUsMjYgQEAKIHN5biBzeW5jIG1hdGNoIHBjY3RzU3luY1J1bGUgZ3JvdXBoZXJlIHBjY3RzUnVsZSAiXDxbYS16XVtBLVphLXowLTlfXSpcPlwoXHMqXFtbXl1dKlxdXClcPVxzKj5ccypcW1teXV0qXF1ccyo6IgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9wY2N0c19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9wY2N0c19zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHBjY3RzRGVsaW0JCVNwZWNpYWwKLSAgSGlMaW5rIHBjY3RzVG9rZW5OYW1lCQlJZGVudGlmaWVyCi0gIEhpTGluayBwY2N0c1J1bGVOYW1lCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHBjY3RzTGFiZWxIYWNrCQlMYWJlbAotICBIaUxpbmsgcGNjdHNEaXJlY3RpdmUJCVByZVByb2MKLSAgSGlMaW5rIHBjY3RzU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIHBjY3RzQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgcGNjdHNDbGFzcwkJU3RhdGVtZW50Ci0gIEhpTGluayBwY2N0c0NsYXNzTmFtZQkJSWRlbnRpZmllcgotICBIaUxpbmsgcGNjdHNFeGNlcHRpb24JCVN0YXRlbWVudAotICBIaUxpbmsgcGNjdHNFeGNlcHRpb25IYW5kbGVyCUtleXdvcmQKLSAgSGlMaW5rIHBjY3RzRXhjZXB0aW9uUnVsZVJlZglwY2N0c0RlbGltCi0gIEhpTGluayBwY2N0c0V4Y2VwdGlvbklECUlkZW50aWZpZXIKLSAgSGlMaW5rIHBjY3RzUnVsZVJlZgkJSWRlbnRpZmllcgotICBIaUxpbmsgcGNjdHNTcGVjaWFsQ2hhcglTcGVjaWFsQ2hhcgorSGlMaW5rIHBjY3RzRGVsaW0JCVNwZWNpYWwKK0hpTGluayBwY2N0c1Rva2VuTmFtZQkJSWRlbnRpZmllcgorSGlMaW5rIHBjY3RzUnVsZU5hbWUJCVN0YXRlbWVudAorSGlMaW5rIHBjY3RzTGFiZWxIYWNrCQlMYWJlbAorSGlMaW5rIHBjY3RzRGlyZWN0aXZlCQlQcmVQcm9jCitIaUxpbmsgcGNjdHNTdHJpbmcJCVN0cmluZworSGlMaW5rIHBjY3RzQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHBjY3RzQ2xhc3MJCVN0YXRlbWVudAorSGlMaW5rIHBjY3RzQ2xhc3NOYW1lCQlJZGVudGlmaWVyCitIaUxpbmsgcGNjdHNFeGNlcHRpb24JCVN0YXRlbWVudAorSGlMaW5rIHBjY3RzRXhjZXB0aW9uSGFuZGxlcglLZXl3b3JkCitIaUxpbmsgcGNjdHNFeGNlcHRpb25SdWxlUmVmCXBjY3RzRGVsaW0KK0hpTGluayBwY2N0c0V4Y2VwdGlvbklECUlkZW50aWZpZXIKK0hpTGluayBwY2N0c1J1bGVSZWYJCUlkZW50aWZpZXIKK0hpTGluayBwY2N0c1NwZWNpYWxDaGFyCVNwZWNpYWxDaGFyCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJwY2N0cyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcGVybDYudmltIGIvcnVudGltZS9zeW50YXgvcGVybDYudmltCmluZGV4IDNkODJjZWQuLmY0MGEwNDAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Blcmw2LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9wZXJsNi52aW0KQEAgLTYxLDExICs2MSw4IEBACiAiICB1bmxldCBwZXJsNl9leHRlbmRlZF9xCiAiICB1bmxldCBwZXJsNl9leHRlbmRlZF9hbGwKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICAgZmluaXNoCiBlbmRpZgogbGV0IHM6a2VlcGNwbz0gJmNwbwpAQCAtMjA2MywxNzYgKzIwNjAsMTY4IEBACiAgICAgXCBjb250YWlucz1wNlBvZEZvcm1hdEFuZ2xlc0ZyZW5jaCxwNlBvZEZvcm1hdEZyZW5jaCxwNlBvZEZvcm1hdE9uZSxwNlBvZEZvcm1hdFR3byxwNlBvZEZvcm1hdFRocmVlLHA2UG9kVmVydGljYWxCYXIscDZQb2RTZW1pQ29sb24scDZQb2RDb21tYQogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9wZXJsNl9zeW50YXhfaW5pdHMiKQotICAgIGlmIHZlcnNpb24gPCA1MDgKLSAgICAgICAgbGV0IGRpZF9wZXJsNl9zeW50YXhfaW5pdHMgPSAxCi0gICAgICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gICAgZWxzZQotICAgICAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgICBIaUxpbmsgcDZFc2NPY3RPbGQgICAgICAgcDZFcnJvcgotICAgIEhpTGluayBwNlBhY2thZ2VUd2lnaWwgICBwNlR3aWdpbAotICAgIEhpTGluayBwNlN0cmluZ0FuZ2xlICAgICBwNlN0cmluZwotICAgIEhpTGluayBwNlN0cmluZ0ZyZW5jaCAgICBwNlN0cmluZwotICAgIEhpTGluayBwNlN0cmluZ0FuZ2xlcyAgICBwNlN0cmluZwotICAgIEhpTGluayBwNlN0cmluZ1NRICAgICAgICBwNlN0cmluZwotICAgIEhpTGluayBwNlN0cmluZ0RRICAgICAgICBwNlN0cmluZwotICAgIEhpTGluayBwNlN0cmluZ1EgICAgICAgICBwNlN0cmluZwotICAgIEhpTGluayBwNlJ4U3RyaW5nU1EgICAgICBwNlN0cmluZwotICAgIEhpTGluayBwNlJ4U3RyaW5nRFEgICAgICBwNlN0cmluZwotICAgIEhpTGluayBwNlN1YnN0aXR1dGlvbiAgICBwNlN0cmluZwotICAgIEhpTGluayBwNlRyYW5zbGl0ZXJhdGlvbiBwNlN0cmluZwotICAgIEhpTGluayBwNlN0cmluZ0F1dG8gICAgICBwNlN0cmluZwotICAgIEhpTGluayBwNlN0cmluZ1A1QXV0byAgICBwNlN0cmluZwotICAgIEhpTGluayBwNktleSAgICAgICAgICAgICBwNlN0cmluZwotICAgIEhpTGluayBwNk1hdGNoICAgICAgICAgICBwNlN0cmluZwotICAgIEhpTGluayBwNlJlZ2V4QmxvY2sgICAgICBwNlN0cmluZwotICAgIEhpTGluayBwNlJ4UDVDaGFyQ2xhc3MgICBwNlN0cmluZwotICAgIEhpTGluayBwNlJ4UDVRdW90ZU1ldGEgICBwNlN0cmluZwotICAgIEhpTGluayBwNlJ4Q2hhckNsYXNzICAgICBwNlN0cmluZwotICAgIEhpTGluayBwNlJ4UXVvdGVXb3JkcyAgICBwNlN0cmluZwotICAgIEhpTGluayBwNlJlZHVjZU9wICAgICAgICBwNk9wZXJhdG9yCi0gICAgSGlMaW5rIHA2UmV2ZXJzZUNyb3NzT3AgIHA2T3BlcmF0b3IKLSAgICBIaUxpbmsgcDZIeXBlck9wICAgICAgICAgcDZPcGVyYXRvcgotICAgIEhpTGluayBwNlF1b3RlUSAgICAgICAgICBwNk9wZXJhdG9yCi0gICAgSGlMaW5rIHA2UnhSYW5nZSAgICAgICAgIHA2U3RyaW5nU3BlY2lhbAotICAgIEhpTGluayBwNlJ4QW5jaG9yICAgICAgICBwNlN0cmluZ1NwZWNpYWwKLSAgICBIaUxpbmsgcDZSeFA1QW5jaG9yICAgICAgcDZTdHJpbmdTcGVjaWFsCi0gICAgSGlMaW5rIHA2Q29kZVBvaW50ICAgICAgIHA2U3RyaW5nU3BlY2lhbAotICAgIEhpTGluayBwNlJ4TWV0YSAgICAgICAgICBwNlN0cmluZ1NwZWNpYWwKLSAgICBIaUxpbmsgcDZSeFA1UmFuZ2UgICAgICAgcDZTdHJpbmdTcGVjaWFsCi0gICAgSGlMaW5rIHA2UnhQNUNQSWQgICAgICAgIHA2U3RyaW5nU3BlY2lhbAotICAgIEhpTGluayBwNlJ4UDVQb3NpeCAgICAgICBwNlN0cmluZ1NwZWNpYWwKLSAgICBIaUxpbmsgcDZSeFA1TW9kICAgICAgICAgcDZTdHJpbmdTcGVjaWFsCi0gICAgSGlMaW5rIHA2UnhQNUhleFNlcSAgICAgIHA2U3RyaW5nU3BlY2lhbAotICAgIEhpTGluayBwNlJ4UDVPY3RTZXEgICAgICBwNlN0cmluZ1NwZWNpYWwKLSAgICBIaUxpbmsgcDZSeFA1V3JpdGVSZWZJZCAgcDZTdHJpbmdTcGVjaWFsCi0gICAgSGlMaW5rIHA2SGV4U2VxdWVuY2UgICAgIHA2U3RyaW5nU3BlY2lhbAotICAgIEhpTGluayBwNk9jdFNlcXVlbmNlICAgICBwNlN0cmluZ1NwZWNpYWwKLSAgICBIaUxpbmsgcDZSeFA1TmFtZWQgICAgICAgcDZTdHJpbmdTcGVjaWFsCi0gICAgSGlMaW5rIHA2UnhQNVByb3BJZCAgICAgIHA2U3RyaW5nU3BlY2lhbAotICAgIEhpTGluayBwNlJ4UDVRdWFudGlmaWVyICBwNlN0cmluZ1NwZWNpYWwKLSAgICBIaUxpbmsgcDZSeFA1Q291bnRJZCAgICAgcDZTdHJpbmdTcGVjaWFsCi0gICAgSGlMaW5rIHA2UnhQNVZlcmIgICAgICAgIHA2U3RyaW5nU3BlY2lhbAotICAgIEhpTGluayBwNkVzY2FwZSAgICAgICAgICBwNlN0cmluZ1NwZWNpYWwyCi0gICAgSGlMaW5rIHA2RXNjTnVsbCAgICAgICAgIHA2U3RyaW5nU3BlY2lhbDIKLSAgICBIaUxpbmsgcDZFc2NIYXNoICAgICAgICAgcDZTdHJpbmdTcGVjaWFsMgotICAgIEhpTGluayBwNkVzY1FRICAgICAgICAgICBwNlN0cmluZ1NwZWNpYWwyCi0gICAgSGlMaW5rIHA2RXNjUXVvdGUgICAgICAgIHA2U3RyaW5nU3BlY2lhbDIKLSAgICBIaUxpbmsgcDZFc2NEb3VibGVRdW90ZSAgcDZTdHJpbmdTcGVjaWFsMgotICAgIEhpTGluayBwNkVzY0JhY2tUaWNrICAgICBwNlN0cmluZ1NwZWNpYWwyCi0gICAgSGlMaW5rIHA2RXNjRm9yd2FyZFNsYXNoIHA2U3RyaW5nU3BlY2lhbDIKLSAgICBIaUxpbmsgcDZFc2NWZXJ0aWNhbEJhciAgcDZTdHJpbmdTcGVjaWFsMgotICAgIEhpTGluayBwNkVzY0V4Y2xhbWF0aW9uICBwNlN0cmluZ1NwZWNpYWwyCi0gICAgSGlMaW5rIHA2RXNjRG9sbGFyICAgICAgIHA2U3RyaW5nU3BlY2lhbDIKLSAgICBIaUxpbmsgcDZFc2NPcGVuQ3VybHkgICAgcDZTdHJpbmdTcGVjaWFsMgotICAgIEhpTGluayBwNkVzY0Nsb3NlQ3VybHkgICBwNlN0cmluZ1NwZWNpYWwyCi0gICAgSGlMaW5rIHA2RXNjQ2xvc2VCcmFja2V0IHA2U3RyaW5nU3BlY2lhbDIKLSAgICBIaUxpbmsgcDZFc2NDbG9zZUFuZ2xlICAgcDZTdHJpbmdTcGVjaWFsMgotICAgIEhpTGluayBwNkVzY0Nsb3NlRnJlbmNoICBwNlN0cmluZ1NwZWNpYWwyCi0gICAgSGlMaW5rIHA2RXNjQmFja1NsYXNoICAgIHA2U3RyaW5nU3BlY2lhbDIKLSAgICBIaUxpbmsgcDZSeEVzY2FwZSAgICAgICAgcDZTdHJpbmdTcGVjaWFsMgotICAgIEhpTGluayBwNlJ4Q2FwdHVyZSAgICAgICBwNlN0cmluZ1NwZWNpYWwyCi0gICAgSGlMaW5rIHA2UnhBbHRlcm5hdGlvbiAgIHA2U3RyaW5nU3BlY2lhbDIKLSAgICBIaUxpbmsgcDZSeFA1ICAgICAgICAgICAgcDZTdHJpbmdTcGVjaWFsMgotICAgIEhpTGluayBwNlJ4UDVSZWFkUmVmICAgICBwNlN0cmluZ1NwZWNpYWwyCi0gICAgSGlMaW5rIHA2UnhQNU9jdCAgICAgICAgIHA2U3RyaW5nU3BlY2lhbDIKLSAgICBIaUxpbmsgcDZSeFA1SGV4ICAgICAgICAgcDZTdHJpbmdTcGVjaWFsMgotICAgIEhpTGluayBwNlJ4UDVFc2NNZXRhICAgICBwNlN0cmluZ1NwZWNpYWwyCi0gICAgSGlMaW5rIHA2UnhQNU1ldGEgICAgICAgIHA2U3RyaW5nU3BlY2lhbDIKLSAgICBIaUxpbmsgcDZSeFA1RXNjYXBlICAgICAgcDZTdHJpbmdTcGVjaWFsMgotICAgIEhpTGluayBwNlJ4UDVDb2RlUG9pbnQgICBwNlN0cmluZ1NwZWNpYWwyCi0gICAgSGlMaW5rIHA2UnhQNVdyaXRlUmVmICAgIHA2U3RyaW5nU3BlY2lhbDIKLSAgICBIaUxpbmsgcDZSeFA1UHJvcCAgICAgICAgcDZTdHJpbmdTcGVjaWFsMgorSGlMaW5rIHA2RXNjT2N0T2xkICAgICAgIHA2RXJyb3IKK0hpTGluayBwNlBhY2thZ2VUd2lnaWwgICBwNlR3aWdpbAorSGlMaW5rIHA2U3RyaW5nQW5nbGUgICAgIHA2U3RyaW5nCitIaUxpbmsgcDZTdHJpbmdGcmVuY2ggICAgcDZTdHJpbmcKK0hpTGluayBwNlN0cmluZ0FuZ2xlcyAgICBwNlN0cmluZworSGlMaW5rIHA2U3RyaW5nU1EgICAgICAgIHA2U3RyaW5nCitIaUxpbmsgcDZTdHJpbmdEUSAgICAgICAgcDZTdHJpbmcKK0hpTGluayBwNlN0cmluZ1EgICAgICAgICBwNlN0cmluZworSGlMaW5rIHA2UnhTdHJpbmdTUSAgICAgIHA2U3RyaW5nCitIaUxpbmsgcDZSeFN0cmluZ0RRICAgICAgcDZTdHJpbmcKK0hpTGluayBwNlN1YnN0aXR1dGlvbiAgICBwNlN0cmluZworSGlMaW5rIHA2VHJhbnNsaXRlcmF0aW9uIHA2U3RyaW5nCitIaUxpbmsgcDZTdHJpbmdBdXRvICAgICAgcDZTdHJpbmcKK0hpTGluayBwNlN0cmluZ1A1QXV0byAgICBwNlN0cmluZworSGlMaW5rIHA2S2V5ICAgICAgICAgICAgIHA2U3RyaW5nCitIaUxpbmsgcDZNYXRjaCAgICAgICAgICAgcDZTdHJpbmcKK0hpTGluayBwNlJlZ2V4QmxvY2sgICAgICBwNlN0cmluZworSGlMaW5rIHA2UnhQNUNoYXJDbGFzcyAgIHA2U3RyaW5nCitIaUxpbmsgcDZSeFA1UXVvdGVNZXRhICAgcDZTdHJpbmcKK0hpTGluayBwNlJ4Q2hhckNsYXNzICAgICBwNlN0cmluZworSGlMaW5rIHA2UnhRdW90ZVdvcmRzICAgIHA2U3RyaW5nCitIaUxpbmsgcDZSZWR1Y2VPcCAgICAgICAgcDZPcGVyYXRvcgorSGlMaW5rIHA2UmV2ZXJzZUNyb3NzT3AgIHA2T3BlcmF0b3IKK0hpTGluayBwNkh5cGVyT3AgICAgICAgICBwNk9wZXJhdG9yCitIaUxpbmsgcDZRdW90ZVEgICAgICAgICAgcDZPcGVyYXRvcgorSGlMaW5rIHA2UnhSYW5nZSAgICAgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2UnhBbmNob3IgICAgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2UnhQNUFuY2hvciAgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2Q29kZVBvaW50ICAgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2UnhNZXRhICAgICAgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2UnhQNVJhbmdlICAgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2UnhQNUNQSWQgICAgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2UnhQNVBvc2l4ICAgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2UnhQNU1vZCAgICAgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2UnhQNUhleFNlcSAgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2UnhQNU9jdFNlcSAgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2UnhQNVdyaXRlUmVmSWQgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2SGV4U2VxdWVuY2UgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2T2N0U2VxdWVuY2UgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2UnhQNU5hbWVkICAgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2UnhQNVByb3BJZCAgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2UnhQNVF1YW50aWZpZXIgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2UnhQNUNvdW50SWQgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2UnhQNVZlcmIgICAgICAgIHA2U3RyaW5nU3BlY2lhbAorSGlMaW5rIHA2RXNjYXBlICAgICAgICAgIHA2U3RyaW5nU3BlY2lhbDIKK0hpTGluayBwNkVzY051bGwgICAgICAgICBwNlN0cmluZ1NwZWNpYWwyCitIaUxpbmsgcDZFc2NIYXNoICAgICAgICAgcDZTdHJpbmdTcGVjaWFsMgorSGlMaW5rIHA2RXNjUVEgICAgICAgICAgIHA2U3RyaW5nU3BlY2lhbDIKK0hpTGluayBwNkVzY1F1b3RlICAgICAgICBwNlN0cmluZ1NwZWNpYWwyCitIaUxpbmsgcDZFc2NEb3VibGVRdW90ZSAgcDZTdHJpbmdTcGVjaWFsMgorSGlMaW5rIHA2RXNjQmFja1RpY2sgICAgIHA2U3RyaW5nU3BlY2lhbDIKK0hpTGluayBwNkVzY0ZvcndhcmRTbGFzaCBwNlN0cmluZ1NwZWNpYWwyCitIaUxpbmsgcDZFc2NWZXJ0aWNhbEJhciAgcDZTdHJpbmdTcGVjaWFsMgorSGlMaW5rIHA2RXNjRXhjbGFtYXRpb24gIHA2U3RyaW5nU3BlY2lhbDIKK0hpTGluayBwNkVzY0RvbGxhciAgICAgICBwNlN0cmluZ1NwZWNpYWwyCitIaUxpbmsgcDZFc2NPcGVuQ3VybHkgICAgcDZTdHJpbmdTcGVjaWFsMgorSGlMaW5rIHA2RXNjQ2xvc2VDdXJseSAgIHA2U3RyaW5nU3BlY2lhbDIKK0hpTGluayBwNkVzY0Nsb3NlQnJhY2tldCBwNlN0cmluZ1NwZWNpYWwyCitIaUxpbmsgcDZFc2NDbG9zZUFuZ2xlICAgcDZTdHJpbmdTcGVjaWFsMgorSGlMaW5rIHA2RXNjQ2xvc2VGcmVuY2ggIHA2U3RyaW5nU3BlY2lhbDIKK0hpTGluayBwNkVzY0JhY2tTbGFzaCAgICBwNlN0cmluZ1NwZWNpYWwyCitIaUxpbmsgcDZSeEVzY2FwZSAgICAgICAgcDZTdHJpbmdTcGVjaWFsMgorSGlMaW5rIHA2UnhDYXB0dXJlICAgICAgIHA2U3RyaW5nU3BlY2lhbDIKK0hpTGluayBwNlJ4QWx0ZXJuYXRpb24gICBwNlN0cmluZ1NwZWNpYWwyCitIaUxpbmsgcDZSeFA1ICAgICAgICAgICAgcDZTdHJpbmdTcGVjaWFsMgorSGlMaW5rIHA2UnhQNVJlYWRSZWYgICAgIHA2U3RyaW5nU3BlY2lhbDIKK0hpTGluayBwNlJ4UDVPY3QgICAgICAgICBwNlN0cmluZ1NwZWNpYWwyCitIaUxpbmsgcDZSeFA1SGV4ICAgICAgICAgcDZTdHJpbmdTcGVjaWFsMgorSGlMaW5rIHA2UnhQNUVzY01ldGEgICAgIHA2U3RyaW5nU3BlY2lhbDIKK0hpTGluayBwNlJ4UDVNZXRhICAgICAgICBwNlN0cmluZ1NwZWNpYWwyCitIaUxpbmsgcDZSeFA1RXNjYXBlICAgICAgcDZTdHJpbmdTcGVjaWFsMgorSGlMaW5rIHA2UnhQNUNvZGVQb2ludCAgIHA2U3RyaW5nU3BlY2lhbDIKK0hpTGluayBwNlJ4UDVXcml0ZVJlZiAgICBwNlN0cmluZ1NwZWNpYWwyCitIaUxpbmsgcDZSeFA1UHJvcCAgICAgICAgcDZTdHJpbmdTcGVjaWFsMgogCi0gICAgSGlMaW5rIHA2UHJvcGVydHkgICAgICAgVGFnCi0gICAgSGlMaW5rIHA2QXR0ZW50aW9uICAgICAgVG9kbwotICAgIEhpTGluayBwNlR5cGUgICAgICAgICAgIFR5cGUKLSAgICBIaUxpbmsgcDZFcnJvciAgICAgICAgICBFcnJvcgotICAgIEhpTGluayBwNkJsb2NrTGFiZWwgICAgIExhYmVsCi0gICAgSGlMaW5rIHA2RmxvYXQgICAgICAgICAgRmxvYXQKLSAgICBIaUxpbmsgcDZOb3JtYWwgICAgICAgICBOb3JtYWwKLSAgICBIaUxpbmsgcDZQYWNrYWdlICAgICAgICBOb3JtYWwKLSAgICBIaUxpbmsgcDZQYWNrYWdlU2NvcGUgICBOb3JtYWwKLSAgICBIaUxpbmsgcDZOdW1iZXIgICAgICAgICBOdW1iZXIKLSAgICBIaUxpbmsgcDZWZXJzaW9uTnVtICAgICBOdW1iZXIKLSAgICBIaUxpbmsgcDZTdHJpbmcgICAgICAgICBTdHJpbmcKLSAgICBIaUxpbmsgcDZSZXBlYXQgICAgICAgICBSZXBlYXQKLSAgICBIaUxpbmsgcDZLZXl3b3JkICAgICAgICBLZXl3b3JkCi0gICAgSGlMaW5rIHA2UHJhZ21hICAgICAgICAgS2V5d29yZAotICAgIEhpTGluayBwNk1vZHVsZSAgICAgICAgIEtleXdvcmQKLSAgICBIaUxpbmsgcDZEZWNsYXJlUm91dGluZSBLZXl3b3JkCi0gICAgSGlMaW5rIHA2VmFyU3RvcmFnZSAgICAgU3BlY2lhbAotICAgIEhpTGluayBwNkZsb3dDb250cm9sICAgIFNwZWNpYWwKLSAgICBIaUxpbmsgcDZOdW1iZXJCYXNlICAgICBTcGVjaWFsCi0gICAgSGlMaW5rIHA2VHdpZ2lsICAgICAgICAgU3BlY2lhbAotICAgIEhpTGluayBwNlN0cmluZ1NwZWNpYWwyIFNwZWNpYWwKLSAgICBIaUxpbmsgcDZWZXJzaW9uRG90ICAgICBTcGVjaWFsCi0gICAgSGlMaW5rIHA2Q29tbWVudCAgICAgICAgQ29tbWVudAotICAgIEhpTGluayBwNkluY2x1ZGUgICAgICAgIEluY2x1ZGUKLSAgICBIaUxpbmsgcDZTaGViYW5nICAgICAgICBQcmVQcm9jCi0gICAgSGlMaW5rIHA2Q2xvc3VyZVRyYWl0ICAgUHJlUHJvYwotICAgIEhpTGluayBwNlJvdXRpbmUgICAgICAgIEZ1bmN0aW9uCi0gICAgSGlMaW5rIHA2T3BlcmF0b3IgICAgICAgT3BlcmF0b3IKLSAgICBIaUxpbmsgcDZWZXJzaW9uICAgICAgICBPcGVyYXRvcgotICAgIEhpTGluayBwNkNvbnRleHQgICAgICAgIE9wZXJhdG9yCi0gICAgSGlMaW5rIHA2UXVvdGUgICAgICAgICAgRGVsaW1pdGVyCi0gICAgSGlMaW5rIHA2VHlwZUNvbnN0cmFpbnQgUHJlQ29uZGl0Ci0gICAgSGlMaW5rIHA2RXhjZXB0aW9uICAgICAgRXhjZXB0aW9uCi0gICAgSGlMaW5rIHA2UGxhY2Vob2xkZXIgICAgSWRlbnRpZmllcgotICAgIEhpTGluayBwNlZhcmlhYmxlICAgICAgIElkZW50aWZpZXIKLSAgICBIaUxpbmsgcDZWYXJTbGFzaCAgICAgICBJZGVudGlmaWVyCi0gICAgSGlMaW5rIHA2VmFyTnVtICAgICAgICAgSWRlbnRpZmllcgotICAgIEhpTGluayBwNlZhckV4Y2xhbSAgICAgIElkZW50aWZpZXIKLSAgICBIaUxpbmsgcDZWYXJNYXRjaCAgICAgICBJZGVudGlmaWVyCi0gICAgSGlMaW5rIHA2VmFyTmFtZSAgICAgICAgSWRlbnRpZmllcgotICAgIEhpTGluayBwNk1hdGNoVmFyICAgICAgIElkZW50aWZpZXIKLSAgICBIaUxpbmsgcDZSeFA1UmVhZFJlZklkICBJZGVudGlmaWVyCi0gICAgSGlMaW5rIHA2UnhQNU1vZERlZiAgICAgSWRlbnRpZmllcgotICAgIEhpTGluayBwNlJ4UDVNb2ROYW1lICAgIElkZW50aWZpZXIKLSAgICBIaUxpbmsgcDZDb25kaXRpb25hbCAgICBDb25kaXRpb25hbAotICAgIEhpTGluayBwNlN0cmluZ1NwZWNpYWwgIFNwZWNpYWxDaGFyCitIaUxpbmsgcDZQcm9wZXJ0eSAgICAgICBUYWcKK0hpTGluayBwNkF0dGVudGlvbiAgICAgIFRvZG8KK0hpTGluayBwNlR5cGUgICAgICAgICAgIFR5cGUKK0hpTGluayBwNkVycm9yICAgICAgICAgIEVycm9yCitIaUxpbmsgcDZCbG9ja0xhYmVsICAgICBMYWJlbAorSGlMaW5rIHA2RmxvYXQgICAgICAgICAgRmxvYXQKK0hpTGluayBwNk5vcm1hbCAgICAgICAgIE5vcm1hbAorSGlMaW5rIHA2UGFja2FnZSAgICAgICAgTm9ybWFsCitIaUxpbmsgcDZQYWNrYWdlU2NvcGUgICBOb3JtYWwKK0hpTGluayBwNk51bWJlciAgICAgICAgIE51bWJlcgorSGlMaW5rIHA2VmVyc2lvbk51bSAgICAgTnVtYmVyCitIaUxpbmsgcDZTdHJpbmcgICAgICAgICBTdHJpbmcKK0hpTGluayBwNlJlcGVhdCAgICAgICAgIFJlcGVhdAorSGlMaW5rIHA2S2V5d29yZCAgICAgICAgS2V5d29yZAorSGlMaW5rIHA2UHJhZ21hICAgICAgICAgS2V5d29yZAorSGlMaW5rIHA2TW9kdWxlICAgICAgICAgS2V5d29yZAorSGlMaW5rIHA2RGVjbGFyZVJvdXRpbmUgS2V5d29yZAorSGlMaW5rIHA2VmFyU3RvcmFnZSAgICAgU3BlY2lhbAorSGlMaW5rIHA2Rmxvd0NvbnRyb2wgICAgU3BlY2lhbAorSGlMaW5rIHA2TnVtYmVyQmFzZSAgICAgU3BlY2lhbAorSGlMaW5rIHA2VHdpZ2lsICAgICAgICAgU3BlY2lhbAorSGlMaW5rIHA2U3RyaW5nU3BlY2lhbDIgU3BlY2lhbAorSGlMaW5rIHA2VmVyc2lvbkRvdCAgICAgU3BlY2lhbAorSGlMaW5rIHA2Q29tbWVudCAgICAgICAgQ29tbWVudAorSGlMaW5rIHA2SW5jbHVkZSAgICAgICAgSW5jbHVkZQorSGlMaW5rIHA2U2hlYmFuZyAgICAgICAgUHJlUHJvYworSGlMaW5rIHA2Q2xvc3VyZVRyYWl0ICAgUHJlUHJvYworSGlMaW5rIHA2Um91dGluZSAgICAgICAgRnVuY3Rpb24KK0hpTGluayBwNk9wZXJhdG9yICAgICAgIE9wZXJhdG9yCitIaUxpbmsgcDZWZXJzaW9uICAgICAgICBPcGVyYXRvcgorSGlMaW5rIHA2Q29udGV4dCAgICAgICAgT3BlcmF0b3IKK0hpTGluayBwNlF1b3RlICAgICAgICAgIERlbGltaXRlcgorSGlMaW5rIHA2VHlwZUNvbnN0cmFpbnQgUHJlQ29uZGl0CitIaUxpbmsgcDZFeGNlcHRpb24gICAgICBFeGNlcHRpb24KK0hpTGluayBwNlBsYWNlaG9sZGVyICAgIElkZW50aWZpZXIKK0hpTGluayBwNlZhcmlhYmxlICAgICAgIElkZW50aWZpZXIKK0hpTGluayBwNlZhclNsYXNoICAgICAgIElkZW50aWZpZXIKK0hpTGluayBwNlZhck51bSAgICAgICAgIElkZW50aWZpZXIKK0hpTGluayBwNlZhckV4Y2xhbSAgICAgIElkZW50aWZpZXIKK0hpTGluayBwNlZhck1hdGNoICAgICAgIElkZW50aWZpZXIKK0hpTGluayBwNlZhck5hbWUgICAgICAgIElkZW50aWZpZXIKK0hpTGluayBwNk1hdGNoVmFyICAgICAgIElkZW50aWZpZXIKK0hpTGluayBwNlJ4UDVSZWFkUmVmSWQgIElkZW50aWZpZXIKK0hpTGluayBwNlJ4UDVNb2REZWYgICAgIElkZW50aWZpZXIKK0hpTGluayBwNlJ4UDVNb2ROYW1lICAgIElkZW50aWZpZXIKK0hpTGluayBwNkNvbmRpdGlvbmFsICAgIENvbmRpdGlvbmFsCitIaUxpbmsgcDZTdHJpbmdTcGVjaWFsICBTcGVjaWFsQ2hhcgogCi0gICAgSGlMaW5rIHA2UG9kQWJiciAgICAgICAgIHA2UG9kCi0gICAgSGlMaW5rIHA2UG9kQWJickVPRiAgICAgIHA2UG9kCi0gICAgSGlMaW5rIHA2UG9kQWJick5vQ29kZSAgIHA2UG9kCi0gICAgSGlMaW5rIHA2UG9kQWJickNvZGUgICAgIHA2UG9kQ29kZQotICAgIEhpTGluayBwNlBvZFBhcmEgICAgICAgICBwNlBvZAotICAgIEhpTGluayBwNlBvZFBhcmFFT0YgICAgICBwNlBvZAotICAgIEhpTGluayBwNlBvZFBhcmFOb0NvZGUgICBwNlBvZAotICAgIEhpTGluayBwNlBvZFBhcmFDb2RlICAgICBwNlBvZENvZGUKLSAgICBIaUxpbmsgcDZQb2REZWxpbSAgICAgICAgcDZQb2QKLSAgICBIaUxpbmsgcDZQb2REZWxpbUVPRiAgICAgcDZQb2QKLSAgICBIaUxpbmsgcDZQb2REZWxpbU5vQ29kZSAgcDZQb2QKLSAgICBIaUxpbmsgcDZQb2REZWxpbUNvZGUgICAgcDZQb2RDb2RlCi0gICAgSGlMaW5rIHA2UG9kSW1wbGljaXRDb2RlIHA2UG9kQ29kZQotICAgIEhpTGluayBwNlBvZEV4dHJhQ29uZmlnICBwNlBvZFByZWZpeAotICAgIEhpTGluayBwNlBvZFZlcnRpY2FsQmFyICBwNlBvZEZvcm1hdENvZGUKLSAgICBIaUxpbmsgcDZQb2RDb2xvbiAgICAgICAgcDZQb2RGb3JtYXRDb2RlCi0gICAgSGlMaW5rIHA2UG9kU2VtaWNvbG9uICAgIHA2UG9kRm9ybWF0Q29kZQotICAgIEhpTGluayBwNlBvZENvbW1hICAgICAgICBwNlBvZEZvcm1hdENvZGUKLSAgICBIaUxpbmsgcDZQb2RGb3JtYXRPbmUgICAgcDZQb2RGb3JtYXQKLSAgICBIaUxpbmsgcDZQb2RGb3JtYXRUd28gICAgcDZQb2RGb3JtYXQKLSAgICBIaUxpbmsgcDZQb2RGb3JtYXRUaHJlZSAgcDZQb2RGb3JtYXQKLSAgICBIaUxpbmsgcDZQb2RGb3JtYXRGcmVuY2ggcDZQb2RGb3JtYXQKK0hpTGluayBwNlBvZEFiYnIgICAgICAgICBwNlBvZAorSGlMaW5rIHA2UG9kQWJickVPRiAgICAgIHA2UG9kCitIaUxpbmsgcDZQb2RBYmJyTm9Db2RlICAgcDZQb2QKK0hpTGluayBwNlBvZEFiYnJDb2RlICAgICBwNlBvZENvZGUKK0hpTGluayBwNlBvZFBhcmEgICAgICAgICBwNlBvZAorSGlMaW5rIHA2UG9kUGFyYUVPRiAgICAgIHA2UG9kCitIaUxpbmsgcDZQb2RQYXJhTm9Db2RlICAgcDZQb2QKK0hpTGluayBwNlBvZFBhcmFDb2RlICAgICBwNlBvZENvZGUKK0hpTGluayBwNlBvZERlbGltICAgICAgICBwNlBvZAorSGlMaW5rIHA2UG9kRGVsaW1FT0YgICAgIHA2UG9kCitIaUxpbmsgcDZQb2REZWxpbU5vQ29kZSAgcDZQb2QKK0hpTGluayBwNlBvZERlbGltQ29kZSAgICBwNlBvZENvZGUKK0hpTGluayBwNlBvZEltcGxpY2l0Q29kZSBwNlBvZENvZGUKK0hpTGluayBwNlBvZEV4dHJhQ29uZmlnICBwNlBvZFByZWZpeAorSGlMaW5rIHA2UG9kVmVydGljYWxCYXIgIHA2UG9kRm9ybWF0Q29kZQorSGlMaW5rIHA2UG9kQ29sb24gICAgICAgIHA2UG9kRm9ybWF0Q29kZQorSGlMaW5rIHA2UG9kU2VtaWNvbG9uICAgIHA2UG9kRm9ybWF0Q29kZQorSGlMaW5rIHA2UG9kQ29tbWEgICAgICAgIHA2UG9kRm9ybWF0Q29kZQorSGlMaW5rIHA2UG9kRm9ybWF0T25lICAgIHA2UG9kRm9ybWF0CitIaUxpbmsgcDZQb2RGb3JtYXRUd28gICAgcDZQb2RGb3JtYXQKK0hpTGluayBwNlBvZEZvcm1hdFRocmVlICBwNlBvZEZvcm1hdAorSGlMaW5rIHA2UG9kRm9ybWF0RnJlbmNoIHA2UG9kRm9ybWF0CiAKLSAgICBIaUxpbmsgcDZQb2RUeXBlICAgICAgICAgICBUeXBlCi0gICAgSGlMaW5rIHA2UG9kQ29uZmlnT3B0aW9uICAgU3RyaW5nCi0gICAgSGlMaW5rIHA2UG9kQ29kZSAgICAgICAgICAgUHJlUHJvYwotICAgIEhpTGluayBwNlBvZCAgICAgICAgICAgICAgIENvbW1lbnQKLSAgICBIaUxpbmsgcDZQb2RDb21tZW50ICAgICAgICBDb21tZW50Ci0gICAgSGlMaW5rIHA2UG9kQXV0b1F1b3RlICAgICAgT3BlcmF0b3IKLSAgICBIaUxpbmsgcDZQb2RDb25maWdPcGVyYXRvciBPcGVyYXRvcgotICAgIEhpTGluayBwNlBvZFByZWZpeCAgICAgICAgIFN0YXRlbWVudAotICAgIEhpTGluayBwNlBvZE5hbWUgICAgICAgICAgIElkZW50aWZpZXIKLSAgICBIaUxpbmsgcDZQb2RGb3JtYXRDb2RlICAgICBTcGVjaWFsQ2hhcgotICAgIEhpTGluayBwNlBvZEZvcm1hdCAgICAgICAgIFNwZWNpYWxDb21tZW50CitIaUxpbmsgcDZQb2RUeXBlICAgICAgICAgICBUeXBlCitIaUxpbmsgcDZQb2RDb25maWdPcHRpb24gICBTdHJpbmcKK0hpTGluayBwNlBvZENvZGUgICAgICAgICAgIFByZVByb2MKK0hpTGluayBwNlBvZCAgICAgICAgICAgICAgIENvbW1lbnQKK0hpTGluayBwNlBvZENvbW1lbnQgICAgICAgIENvbW1lbnQKK0hpTGluayBwNlBvZEF1dG9RdW90ZSAgICAgIE9wZXJhdG9yCitIaUxpbmsgcDZQb2RDb25maWdPcGVyYXRvciBPcGVyYXRvcgorSGlMaW5rIHA2UG9kUHJlZml4ICAgICAgICAgU3RhdGVtZW50CitIaUxpbmsgcDZQb2ROYW1lICAgICAgICAgICBJZGVudGlmaWVyCitIaUxpbmsgcDZQb2RGb3JtYXRDb2RlICAgICBTcGVjaWFsQ2hhcgorSGlMaW5rIHA2UG9kRm9ybWF0ICAgICAgICAgU3BlY2lhbENvbW1lbnQKIAotICAgIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogIiBTeW5jaW5nIHRvIHNwZWVkIHVwIHByb2Nlc3NpbmcKICJzeW4gc3luYyBtYXRjaCBwNlN5bmNQb2QgZ3JvdXB0aGVyZSBwNlBvZEFiYnJSZWdpb24gICAgICJePVxLXGsqXD4iCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9wZm1haW4udmltIGIvcnVudGltZS9zeW50YXgvcGZtYWluLnZpbQppbmRleCAzMmVkNjk3Li43OTRhYTVkIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9wZm1haW4udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3BmbWFpbi52aW0KQEAgLTcsMTcgKzcsMTIgQEAKICIgVVJMOgkJaHR0cDovL2Nlcm4uY2gvZnVqaS92aW0vc3ludGF4L3BmbWFpbi52aW0KICIgQ29tbWVudDoJQmFzZWQgb24gUG9zdGZpeCAyLjEyLzMuMCBwb3N0Y29uZi41Lmh0bWwuCiAKLWlmIHZlcnNpb24gPCA2MDAKLQlzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAJZmluaXNoCiBlbmRpZgogCi1pZiB2ZXJzaW9uID49IDYwMAotCXNldGxvY2FsIGlza2V5d29yZD1ALDQ4LTU3LF8sLQotZWxzZQotCXNldCBpc2tleXdvcmQ9QCw0OC01NyxfLC0KLWVuZGlmCitzZXRsb2NhbCBpc2tleXdvcmQ9QCw0OC01NyxfLC0KIAogc3ludGF4IGNhc2UgbWF0Y2gKIHN5bnRheCBzeW5jIG1pbmxpbmVzPTEKQEAgLTE4MTYsMzMgKzE4MTEsMjYgQEAKIHN5bnRheCBtYXRjaCBwZm1haW5TcGVjaWFsCSJcPHRyYWNlXD4iCiBzeW50YXggbWF0Y2ggcGZtYWluU3BlY2lhbAkiXDx2ZXJpZnlcPiIKIAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygicGZtYWluX3N5bnRheF9pbml0IikKLQlpZiB2ZXJzaW9uIDwgNTA4Ci0JCWxldCBwZm1haW5fc3ludGF4X2luaXQgPSAxCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0JZWxzZQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLQllbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLQlIaUxpbmsgcGZtYWluQ29uZglTdGF0ZW1lbnQKLQlIaUxpbmsgcGZtYWluUmVmCVByZVByb2MKLQlIaUxpbmsgcGZtYWluV29yZAlpZGVudGlmaWVyCitIaUxpbmsgcGZtYWluQ29uZglTdGF0ZW1lbnQKK0hpTGluayBwZm1haW5SZWYJUHJlUHJvYworSGlMaW5rIHBmbWFpbldvcmQJaWRlbnRpZmllcgogCi0JSGlMaW5rIHBmbWFpbkRpY3QJVHlwZQotCUhpTGluayBwZm1haW5RdWV1ZURpcglDb25zdGFudAotCUhpTGluayBwZm1haW5UcmFuc3BvcnQJQ29uc3RhbnQKLQlIaUxpbmsgcGZtYWluTG9jawlDb25zdGFudAotCUhpTGluayBwZm1haW5BbnN3ZXIJQ29uc3RhbnQKK0hpTGluayBwZm1haW5EaWN0CVR5cGUKK0hpTGluayBwZm1haW5RdWV1ZURpcglDb25zdGFudAorSGlMaW5rIHBmbWFpblRyYW5zcG9ydAlDb25zdGFudAorSGlMaW5rIHBmbWFpbkxvY2sJQ29uc3RhbnQKK0hpTGluayBwZm1haW5BbnN3ZXIJQ29uc3RhbnQKIAotCUhpTGluayBwZm1haW5Db21tZW50CUNvbW1lbnQKLQlIaUxpbmsgcGZtYWluTnVtYmVyCU51bWJlcgotCUhpTGluayBwZm1haW5UaW1lCU51bWJlcgotCUhpTGluayBwZm1haW5JUAkJTnVtYmVyCi0JSGlMaW5rIHBmbWFpblZhcmlhYmxlCUVycm9yCi0JSGlMaW5rIHBmbWFpblNwZWNpYWwJU3BlY2lhbAorSGlMaW5rIHBmbWFpbkNvbW1lbnQJQ29tbWVudAorSGlMaW5rIHBmbWFpbk51bWJlcglOdW1iZXIKK0hpTGluayBwZm1haW5UaW1lCU51bWJlcgorSGlMaW5rIHBmbWFpbklQCQlOdW1iZXIKK0hpTGluayBwZm1haW5WYXJpYWJsZQlFcnJvcgorSGlMaW5rIHBmbWFpblNwZWNpYWwJU3BlY2lhbAogCi0JZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJwZm1haW4iCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3BocC52aW0gYi9ydW50aW1lL3N5bnRheC9waHAudmltCmluZGV4IGQ0OTRhOTIuLjMwMTlhNDIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3BocC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcGhwLnZpbQpAQCAtNTUsMTEgKzU1LDggQEAKICIgICAgaWkpIFNhbWUgcHJvYmxlbSBpZiB5b3UgYXJlIHNldHRpbmcgcGhwX2ZvbGRpbmcgPSAyIHdpdGggYSBjbG9zaW5nCiAiICAgICAgICB9IGluc2lkZSBhbiBzdHJpbmcgb24gdGhlIGZpcnN0IGxpbmUgb2YgdGhpcyBzdHJpbmcuCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC02NywxNiArNjQsOCBAQAogICBsZXQgbWFpbl9zeW50YXggPSAncGhwJwogZW5kaWYKIAotaWYgdmVyc2lvbiA8IDYwMAotICB1bmxldCEgcGhwX2ZvbGRpbmcKLSAgaWYgZXhpc3RzKCJwaHBfc3luY19tZXRob2QiKSAmJiAhcGhwX3N5bmNfbWV0aG9kCi0gICAgbGV0IHBocF9zeW5jX21ldGhvZD0tMQotICBlbmRpZgotICBzbyA8c2ZpbGU+OnA6aC9odG1sLnZpbQotZWxzZQotICBydW50aW1lISBzeW50YXgvaHRtbC52aW0KLSAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9odG1sLnZpbQordW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiAiIGFjY2VwdCBvbGQgb3B0aW9ucwogaWYgIWV4aXN0cygicGhwX3N5bmNfbWV0aG9kIikKQEAgLTk0LDExICs4Myw3IEBACiAKIHN5biBjbHVzdGVyIGh0bWxQcmVwcm9jIGFkZD1waHBSZWdpb24scGhwUmVnaW9uQXNwLHBocFJlZ2lvblNjCiAKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3luIGluY2x1ZGUgQHNxbFRvcCA8c2ZpbGU+OnA6aC9zcWwudmltCi1lbHNlCi0gIHN5biBpbmNsdWRlIEBzcWxUb3Agc3ludGF4L3NxbC52aW0KLWVuZGlmCitzeW4gaW5jbHVkZSBAc3FsVG9wIHN5bnRheC9zcWwudmltCiBzeW4gc3luYyBjbGVhcgogdW5sZXQgYjpjdXJyZW50X3N5bnRheAogc3luIGNsdXN0ZXIgc3FsVG9wIHJlbW92ZT1zcWxTdHJpbmcsc3FsQ29tbWVudApAQCAtMzgxLDE1ICszNjYsOCBAQAogZWxzZQogICBzeW4gcmVnaW9uICBwaHBDb21tZW50ICBzdGFydD0iL1wqIiBlbmQ9IlwqLyIgY29udGFpbmVkIGNvbnRhaW5zPXBocFRvZG8sQFNwZWxsIGV4dGVuZAogZW5kaWYKLWlmIHZlcnNpb24gPj0gNjAwCi0gIHN5biBtYXRjaCBwaHBDb21tZW50ICAiIy5cey19XCg/Plx8JFwpXEA9IiAgY29udGFpbmVkIGNvbnRhaW5zPXBocFRvZG8sQFNwZWxsCi0gIHN5biBtYXRjaCBwaHBDb21tZW50ICAiLy8uXHstfVwoPz5cfCRcKVxAPSIgY29udGFpbmVkIGNvbnRhaW5zPXBocFRvZG8sQFNwZWxsCi1lbHNlCi0gIHN5biBtYXRjaCBwaHBDb21tZW50ICAiIy5cey19JCIgY29udGFpbmVkIGNvbnRhaW5zPXBocFRvZG8sQFNwZWxsCi0gIHN5biBtYXRjaCBwaHBDb21tZW50ICAiIy5cey19Pz4ibWU9ZS0yICBjb250YWluZWQgY29udGFpbnM9cGhwVG9kbyxAU3BlbGwKLSAgc3luIG1hdGNoIHBocENvbW1lbnQgICIvLy5cey19JCIgIGNvbnRhaW5lZCBjb250YWlucz1waHBUb2RvLEBTcGVsbAotICBzeW4gbWF0Y2ggcGhwQ29tbWVudCAgIi8vLlx7LX0/PiJtZT1lLTIgY29udGFpbmVkIGNvbnRhaW5zPXBocFRvZG8sQFNwZWxsCi1lbmRpZgorc3luIG1hdGNoIHBocENvbW1lbnQgICIjLlx7LX1cKD8+XHwkXClcQD0iICBjb250YWluZWQgY29udGFpbnM9cGhwVG9kbyxAU3BlbGwKK3N5biBtYXRjaCBwaHBDb21tZW50ICAiLy8uXHstfVwoPz5cfCRcKVxAPSIgY29udGFpbmVkIGNvbnRhaW5zPXBocFRvZG8sQFNwZWxsCiAKICIgU3RyaW5nCiBpZiBleGlzdHMoInBocF9wYXJlbnRfZXJyb3Jfb3BlbiIpCkBAIC00MDMsMjQgKzM4MSwyMiBAQAogZW5kaWYKIAogIiBIZXJlRG9jIGFuZCBOb3dEb2MKLWlmIHZlcnNpb24gPj0gNjAwCi0gIHN5biBjYXNlIG1hdGNoCitzeW4gY2FzZSBtYXRjaAogCi0gICIgSGVyZURvYwotICBzeW4gcmVnaW9uICBwaHBIZXJlRG9jICBtYXRjaGdyb3VwPURlbGltaXRlciBzdGFydD0iXCg8PDxcKVxAPD1cKFwiXD1cKVx6KFxJXGkqXClcMiQiIGVuZD0iXlx6MVwoO1w9JFwpXEA9IiBjb250YWluZWQgY29udGFpbnM9cGhwSWRlbnRpZmllcixwaHBJZGVudGlmaWVyU2ltcGx5LHBocElkZW50aWZpZXJDb21wbGV4LHBocEJhY2tzbGFzaFNlcXVlbmNlcyxwaHBNZXRob2RzVmFyLEBTcGVsbCBrZWVwZW5kIGV4dGVuZAorIiBIZXJlRG9jCitzeW4gcmVnaW9uICBwaHBIZXJlRG9jICBtYXRjaGdyb3VwPURlbGltaXRlciBzdGFydD0iXCg8PDxcKVxAPD1cKFwiXD1cKVx6KFxJXGkqXClcMiQiIGVuZD0iXlx6MVwoO1w9JFwpXEA9IiBjb250YWluZWQgY29udGFpbnM9cGhwSWRlbnRpZmllcixwaHBJZGVudGlmaWVyU2ltcGx5LHBocElkZW50aWZpZXJDb21wbGV4LHBocEJhY2tzbGFzaFNlcXVlbmNlcyxwaHBNZXRob2RzVmFyLEBTcGVsbCBrZWVwZW5kIGV4dGVuZAogIiBpbmNsdWRpbmcgSFRNTCxKYXZhU2NyaXB0LFNRTCBldmVuIGlmIG5vdCBlbmFibGVkIHZpYSBvcHRpb25zCi0gIHN5biByZWdpb24gIHBocEhlcmVEb2MgIG1hdGNoZ3JvdXA9RGVsaW1pdGVyIHN0YXJ0PSJcKDw8PFwpXEA8PVwoXCJcPVwpXHooXChcSVxpKlwpXD1cKGh0bWxcKVxjXChcaSpcKVwpXDIkIiBlbmQ9Il5cejFcKDtcPSRcKVxAPSIgIGNvbnRhaW5lZCBjb250YWlucz1AaHRtbFRvcCxwaHBJZGVudGlmaWVyLHBocElkZW50aWZpZXJTaW1wbHkscGhwSWRlbnRpZmllckNvbXBsZXgscGhwQmFja3NsYXNoU2VxdWVuY2VzLHBocE1ldGhvZHNWYXIsQFNwZWxsIGtlZXBlbmQgZXh0ZW5kCi0gIHN5biByZWdpb24gIHBocEhlcmVEb2MgIG1hdGNoZ3JvdXA9RGVsaW1pdGVyIHN0YXJ0PSJcKDw8PFwpXEA8PVwoXCJcPVwpXHooXChcSVxpKlwpXD1cKHNxbFwpXGNcKFxpKlwpXClcMiQiIGVuZD0iXlx6MVwoO1w9JFwpXEA9IiBjb250YWluZWQgY29udGFpbnM9QHNxbFRvcCxwaHBJZGVudGlmaWVyLHBocElkZW50aWZpZXJTaW1wbHkscGhwSWRlbnRpZmllckNvbXBsZXgscGhwQmFja3NsYXNoU2VxdWVuY2VzLHBocE1ldGhvZHNWYXIsQFNwZWxsIGtlZXBlbmQgZXh0ZW5kCi0gIHN5biByZWdpb24gIHBocEhlcmVEb2MgIG1hdGNoZ3JvdXA9RGVsaW1pdGVyIHN0YXJ0PSJcKDw8PFwpXEA8PVwoXCJcPVwpXHooXChcSVxpKlwpXD1cKGphdmFzY3JpcHRcKVxjXChcaSpcKVwpXDIkIiBlbmQ9Il5cejFcKDtcPSRcKVxAPSIgIGNvbnRhaW5lZCBjb250YWlucz1AaHRtbEphdmFzY3JpcHQscGhwSWRlbnRpZmllclNpbXBseSxwaHBJZGVudGlmaWVyLHBocElkZW50aWZpZXJDb21wbGV4LHBocEJhY2tzbGFzaFNlcXVlbmNlcyxwaHBNZXRob2RzVmFyLEBTcGVsbCBrZWVwZW5kIGV4dGVuZAorc3luIHJlZ2lvbiAgcGhwSGVyZURvYyAgbWF0Y2hncm91cD1EZWxpbWl0ZXIgc3RhcnQ9IlwoPDw8XClcQDw9XChcIlw9XClceihcKFxJXGkqXClcPVwoaHRtbFwpXGNcKFxpKlwpXClcMiQiIGVuZD0iXlx6MVwoO1w9JFwpXEA9IiAgY29udGFpbmVkIGNvbnRhaW5zPUBodG1sVG9wLHBocElkZW50aWZpZXIscGhwSWRlbnRpZmllclNpbXBseSxwaHBJZGVudGlmaWVyQ29tcGxleCxwaHBCYWNrc2xhc2hTZXF1ZW5jZXMscGhwTWV0aG9kc1ZhcixAU3BlbGwga2VlcGVuZCBleHRlbmQKK3N5biByZWdpb24gIHBocEhlcmVEb2MgIG1hdGNoZ3JvdXA9RGVsaW1pdGVyIHN0YXJ0PSJcKDw8PFwpXEA8PVwoXCJcPVwpXHooXChcSVxpKlwpXD1cKHNxbFwpXGNcKFxpKlwpXClcMiQiIGVuZD0iXlx6MVwoO1w9JFwpXEA9IiBjb250YWluZWQgY29udGFpbnM9QHNxbFRvcCxwaHBJZGVudGlmaWVyLHBocElkZW50aWZpZXJTaW1wbHkscGhwSWRlbnRpZmllckNvbXBsZXgscGhwQmFja3NsYXNoU2VxdWVuY2VzLHBocE1ldGhvZHNWYXIsQFNwZWxsIGtlZXBlbmQgZXh0ZW5kCitzeW4gcmVnaW9uICBwaHBIZXJlRG9jICBtYXRjaGdyb3VwPURlbGltaXRlciBzdGFydD0iXCg8PDxcKVxAPD1cKFwiXD1cKVx6KFwoXElcaSpcKVw9XChqYXZhc2NyaXB0XClcY1woXGkqXClcKVwyJCIgZW5kPSJeXHoxXCg7XD0kXClcQD0iICBjb250YWluZWQgY29udGFpbnM9QGh0bWxKYXZhc2NyaXB0LHBocElkZW50aWZpZXJTaW1wbHkscGhwSWRlbnRpZmllcixwaHBJZGVudGlmaWVyQ29tcGxleCxwaHBCYWNrc2xhc2hTZXF1ZW5jZXMscGhwTWV0aG9kc1ZhcixAU3BlbGwga2VlcGVuZCBleHRlbmQKIAotICAiIE5vd0RvYwotICBzeW4gcmVnaW9uICBwaHBOb3dEb2MgIG1hdGNoZ3JvdXA9RGVsaW1pdGVyIHN0YXJ0PSJcKDw8PFwpXEA8PSdceihcSVxpKlwpJyQiIGVuZD0iXlx6MVwoO1w9JFwpXEA9IiBjb250YWluZWQgY29udGFpbnM9QFNwZWxsIGtlZXBlbmQgZXh0ZW5kCisiIE5vd0RvYworc3luIHJlZ2lvbiAgcGhwTm93RG9jICBtYXRjaGdyb3VwPURlbGltaXRlciBzdGFydD0iXCg8PDxcKVxAPD0nXHooXElcaSpcKSckIiBlbmQ9Il5cejFcKDtcPSRcKVxAPSIgY29udGFpbmVkIGNvbnRhaW5zPUBTcGVsbCBrZWVwZW5kIGV4dGVuZAogIiBpbmNsdWRpbmcgSFRNTCxKYXZhU2NyaXB0LFNRTCBldmVuIGlmIG5vdCBlbmFibGVkIHZpYSBvcHRpb25zCi0gIHN5biByZWdpb24gIHBocE5vd0RvYyAgbWF0Y2hncm91cD1EZWxpbWl0ZXIgc3RhcnQ9IlwoPDw8XClcQDw9J1x6KFwoXElcaSpcKVw9XChodG1sXClcY1woXGkqXClcKSckIiBlbmQ9Il5cejFcKDtcPSRcKVxAPSIgIGNvbnRhaW5lZCBjb250YWlucz1AaHRtbFRvcCxAU3BlbGwga2VlcGVuZCBleHRlbmQKLSAgc3luIHJlZ2lvbiAgcGhwTm93RG9jICBtYXRjaGdyb3VwPURlbGltaXRlciBzdGFydD0iXCg8PDxcKVxAPD0nXHooXChcSVxpKlwpXD1cKHNxbFwpXGNcKFxpKlwpXCknJCIgZW5kPSJeXHoxXCg7XD0kXClcQD0iIGNvbnRhaW5lZCBjb250YWlucz1Ac3FsVG9wLEBTcGVsbCBrZWVwZW5kIGV4dGVuZAotICBzeW4gcmVnaW9uICBwaHBOb3dEb2MgIG1hdGNoZ3JvdXA9RGVsaW1pdGVyIHN0YXJ0PSJcKDw8PFwpXEA8PSdceihcKFxJXGkqXClcPVwoamF2YXNjcmlwdFwpXGNcKFxpKlwpXCknJCIgZW5kPSJeXHoxXCg7XD0kXClcQD0iICBjb250YWluZWQgY29udGFpbnM9QGh0bWxKYXZhc2NyaXB0LEBTcGVsbCBrZWVwZW5kIGV4dGVuZAotICBzeW4gY2FzZSBpZ25vcmUKLWVuZGlmCitzeW4gcmVnaW9uICBwaHBOb3dEb2MgIG1hdGNoZ3JvdXA9RGVsaW1pdGVyIHN0YXJ0PSJcKDw8PFwpXEA8PSdceihcKFxJXGkqXClcPVwoaHRtbFwpXGNcKFxpKlwpXCknJCIgZW5kPSJeXHoxXCg7XD0kXClcQD0iICBjb250YWluZWQgY29udGFpbnM9QGh0bWxUb3AsQFNwZWxsIGtlZXBlbmQgZXh0ZW5kCitzeW4gcmVnaW9uICBwaHBOb3dEb2MgIG1hdGNoZ3JvdXA9RGVsaW1pdGVyIHN0YXJ0PSJcKDw8PFwpXEA8PSdceihcKFxJXGkqXClcPVwoc3FsXClcY1woXGkqXClcKSckIiBlbmQ9Il5cejFcKDtcPSRcKVxAPSIgY29udGFpbmVkIGNvbnRhaW5zPUBzcWxUb3AsQFNwZWxsIGtlZXBlbmQgZXh0ZW5kCitzeW4gcmVnaW9uICBwaHBOb3dEb2MgIG1hdGNoZ3JvdXA9RGVsaW1pdGVyIHN0YXJ0PSJcKDw8PFwpXEA8PSdceihcKFxJXGkqXClcPVwoamF2YXNjcmlwdFwpXGNcKFxpKlwpXCknJCIgZW5kPSJeXHoxXCg7XD0kXClcQD0iICBjb250YWluZWQgY29udGFpbnM9QGh0bWxKYXZhc2NyaXB0LEBTcGVsbCBrZWVwZW5kIGV4dGVuZAorc3luIGNhc2UgaWdub3JlCiAKICIgUGFyZW50CiBpZiBleGlzdHMoInBocF9wYXJlbnRfZXJyb3JfY2xvc2UiKSB8fCBleGlzdHMoInBocF9wYXJlbnRfZXJyb3Jfb3BlbiIpCkBAIC02MjEsODIgKzU5Nyw3NCBAQAogc3ludGF4IG1hdGNoICBwaHBEb2NUb2RvICAiQFwodG9kb1x8Zml4bWVcfHh4eFwpXChcc1wrXClcPyIgY29udGFpbmVkaW49cGhwQ29tbWVudAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9waHBfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfcGhwX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgICBwaHBDb25zdGFudCAgQ29uc3RhbnQKLSAgSGlMaW5rICAgcGhwQ29yZUNvbnN0YW50ICBDb25zdGFudAotICBIaUxpbmsgICBwaHBDb21tZW50IENvbW1lbnQKLSAgSGlMaW5rICAgcGhwRG9jVGFncyBQcmVQcm9jCi0gIEhpTGluayAgIHBocERvY0N1c3RvbVRhZ3MgVHlwZQotICBIaUxpbmsgICBwaHBFeGNlcHRpb24gRXhjZXB0aW9uCi0gIEhpTGluayAgIHBocEJvb2xlYW4gQm9vbGVhbgotICBIaUxpbmsgICBwaHBTdG9yYWdlQ2xhc3MgIFN0b3JhZ2VDbGFzcwotICBIaUxpbmsgICBwaHBTQ0tleXdvcmQgU3RvcmFnZUNsYXNzCi0gIEhpTGluayAgIHBocEZDS2V5d29yZCBEZWZpbmUKLSAgSGlMaW5rICAgcGhwU3RydWN0dXJlIFN0cnVjdHVyZQotICBIaUxpbmsgICBwaHBTdHJpbmdTaW5nbGUgIFN0cmluZwotICBIaUxpbmsgICBwaHBTdHJpbmdEb3VibGUgIFN0cmluZwotICBIaUxpbmsgICBwaHBCYWNrdGljayAgU3RyaW5nCi0gIEhpTGluayAgIHBocE51bWJlciAgTnVtYmVyCi0gIEhpTGluayAgIHBocEZsb2F0IEZsb2F0Ci0gIEhpTGluayAgIHBocE1ldGhvZHMgRnVuY3Rpb24KLSAgSGlMaW5rICAgcGhwRnVuY3Rpb25zIEZ1bmN0aW9uCi0gIEhpTGluayAgIHBocEJhc2VsaWIgRnVuY3Rpb24KLSAgSGlMaW5rICAgcGhwUmVwZWF0ICBSZXBlYXQKLSAgSGlMaW5rICAgcGhwQ29uZGl0aW9uYWwgQ29uZGl0aW9uYWwKLSAgSGlMaW5rICAgcGhwTGFiZWwgTGFiZWwKLSAgSGlMaW5rICAgcGhwU3RhdGVtZW50IFN0YXRlbWVudAotICBIaUxpbmsgICBwaHBLZXl3b3JkIFN0YXRlbWVudAotICBIaUxpbmsgICBwaHBUeXBlICBUeXBlCi0gIEhpTGluayAgIHBocEluY2x1ZGUgSW5jbHVkZQotICBIaUxpbmsgICBwaHBEZWZpbmUgIERlZmluZQotICBIaUxpbmsgICBwaHBCYWNrc2xhc2hTZXF1ZW5jZXMgU3BlY2lhbENoYXIKLSAgSGlMaW5rICAgcGhwQmFja3NsYXNoRG91YmxlUXVvdGUgU3BlY2lhbENoYXIKLSAgSGlMaW5rICAgcGhwQmFja3NsYXNoU2luZ2xlUXVvdGUgU3BlY2lhbENoYXIKLSAgSGlMaW5rICAgcGhwUGFyZW50ICBEZWxpbWl0ZXIKLSAgSGlMaW5rICAgcGhwQnJhY2tldHMgIERlbGltaXRlcgotICBIaUxpbmsgICBwaHBJZGVudGlmaWVyQ29uc3QgRGVsaW1pdGVyCi0gIEhpTGluayAgIHBocFBhcmVudEVycm9yIEVycm9yCi0gIEhpTGluayAgIHBocE9jdGFsRXJyb3IgIEVycm9yCi0gIEhpTGluayAgIHBocEludGVycFNpbXBsZUVycm9yIEVycm9yCi0gIEhpTGluayAgIHBocEludGVycEJvZ3VzRG9sbGFyQ3VybGV5IEVycm9yCi0gIEhpTGluayAgIHBocEludGVycERvbGxhckN1cmx5MSBFcnJvcgotICBIaUxpbmsgICBwaHBJbnRlcnBEb2xsYXJDdXJseTIgRXJyb3IKLSAgSGlMaW5rICAgcGhwSW50ZXJwU2ltcGxlQnJhY2tldHNJbm5lciBTdHJpbmcKLSAgSGlMaW5rICAgcGhwSW50ZXJwU2ltcGxlQ3VybHkgRGVsaW1pdGVyCi0gIEhpTGluayAgIHBocEludGVycFZhcm5hbWUgSWRlbnRpZmllcgotICBIaUxpbmsgICBwaHBUb2RvICBUb2RvCi0gIEhpTGluayAgIHBocERvY1RvZG8gVG9kbwotICBIaUxpbmsgICBwaHBNZW1iZXJTZWxlY3RvciAgU3RydWN0dXJlCi0gIGlmIGV4aXN0cygicGhwX29sZFN0eWxlIikKLSAgaGkgIHBocEludFZhciBndWlmZz1SZWQgY3Rlcm1mZz1EYXJrUmVkCi0gIGhpICBwaHBFbnZWYXIgZ3VpZmc9UmVkIGN0ZXJtZmc9RGFya1JlZAotICBoaSAgcGhwT3BlcmF0b3IgZ3VpZmc9U2VhR3JlZW4gY3Rlcm1mZz1EYXJrR3JlZW4KLSAgaGkgIHBocFZhclNlbGVjdG9yIGd1aWZnPVNlYUdyZWVuIGN0ZXJtZmc9RGFya0dyZWVuCi0gIGhpICBwaHBSZWxhdGlvbiBndWlmZz1TZWFHcmVlbiBjdGVybWZnPURhcmtHcmVlbgotICBoaSAgcGhwSWRlbnRpZmllciBndWlmZz1EYXJrR3JheSBjdGVybWZnPUJyb3duCi0gIGhpICBwaHBJZGVudGlmaWVyU2ltcGx5IGd1aWZnPURhcmtHcmF5IGN0ZXJtZmc9QnJvd24KLSAgZWxzZQotICBIaUxpbmsgICBwaHBJbnRWYXIgSWRlbnRpZmllcgotICBIaUxpbmsgICBwaHBFbnZWYXIgSWRlbnRpZmllcgotICBIaUxpbmsgICBwaHBPcGVyYXRvciBPcGVyYXRvcgotICBIaUxpbmsgICBwaHBWYXJTZWxlY3RvciAgT3BlcmF0b3IKLSAgSGlMaW5rICAgcGhwUmVsYXRpb24gT3BlcmF0b3IKLSAgSGlMaW5rICAgcGhwSWRlbnRpZmllciBJZGVudGlmaWVyCi0gIEhpTGluayAgIHBocElkZW50aWZpZXJTaW1wbHkgSWRlbnRpZmllcgotICBlbmRpZgotCi0gIGRlbGNvbW1hbmQgSGlMaW5rCitIaUxpbmsgICBwaHBDb25zdGFudCAgQ29uc3RhbnQKK0hpTGluayAgIHBocENvcmVDb25zdGFudCAgQ29uc3RhbnQKK0hpTGluayAgIHBocENvbW1lbnQgQ29tbWVudAorSGlMaW5rICAgcGhwRG9jVGFncyBQcmVQcm9jCitIaUxpbmsgICBwaHBEb2NDdXN0b21UYWdzIFR5cGUKK0hpTGluayAgIHBocEV4Y2VwdGlvbiBFeGNlcHRpb24KK0hpTGluayAgIHBocEJvb2xlYW4gQm9vbGVhbgorSGlMaW5rICAgcGhwU3RvcmFnZUNsYXNzICBTdG9yYWdlQ2xhc3MKK0hpTGluayAgIHBocFNDS2V5d29yZCBTdG9yYWdlQ2xhc3MKK0hpTGluayAgIHBocEZDS2V5d29yZCBEZWZpbmUKK0hpTGluayAgIHBocFN0cnVjdHVyZSBTdHJ1Y3R1cmUKK0hpTGluayAgIHBocFN0cmluZ1NpbmdsZSAgU3RyaW5nCitIaUxpbmsgICBwaHBTdHJpbmdEb3VibGUgIFN0cmluZworSGlMaW5rICAgcGhwQmFja3RpY2sgIFN0cmluZworSGlMaW5rICAgcGhwTnVtYmVyICBOdW1iZXIKK0hpTGluayAgIHBocEZsb2F0IEZsb2F0CitIaUxpbmsgICBwaHBNZXRob2RzIEZ1bmN0aW9uCitIaUxpbmsgICBwaHBGdW5jdGlvbnMgRnVuY3Rpb24KK0hpTGluayAgIHBocEJhc2VsaWIgRnVuY3Rpb24KK0hpTGluayAgIHBocFJlcGVhdCAgUmVwZWF0CitIaUxpbmsgICBwaHBDb25kaXRpb25hbCBDb25kaXRpb25hbAorSGlMaW5rICAgcGhwTGFiZWwgTGFiZWwKK0hpTGluayAgIHBocFN0YXRlbWVudCBTdGF0ZW1lbnQKK0hpTGluayAgIHBocEtleXdvcmQgU3RhdGVtZW50CitIaUxpbmsgICBwaHBUeXBlICBUeXBlCitIaUxpbmsgICBwaHBJbmNsdWRlIEluY2x1ZGUKK0hpTGluayAgIHBocERlZmluZSAgRGVmaW5lCitIaUxpbmsgICBwaHBCYWNrc2xhc2hTZXF1ZW5jZXMgU3BlY2lhbENoYXIKK0hpTGluayAgIHBocEJhY2tzbGFzaERvdWJsZVF1b3RlIFNwZWNpYWxDaGFyCitIaUxpbmsgICBwaHBCYWNrc2xhc2hTaW5nbGVRdW90ZSBTcGVjaWFsQ2hhcgorSGlMaW5rICAgcGhwUGFyZW50ICBEZWxpbWl0ZXIKK0hpTGluayAgIHBocEJyYWNrZXRzICBEZWxpbWl0ZXIKK0hpTGluayAgIHBocElkZW50aWZpZXJDb25zdCBEZWxpbWl0ZXIKK0hpTGluayAgIHBocFBhcmVudEVycm9yIEVycm9yCitIaUxpbmsgICBwaHBPY3RhbEVycm9yICBFcnJvcgorSGlMaW5rICAgcGhwSW50ZXJwU2ltcGxlRXJyb3IgRXJyb3IKK0hpTGluayAgIHBocEludGVycEJvZ3VzRG9sbGFyQ3VybGV5IEVycm9yCitIaUxpbmsgICBwaHBJbnRlcnBEb2xsYXJDdXJseTEgRXJyb3IKK0hpTGluayAgIHBocEludGVycERvbGxhckN1cmx5MiBFcnJvcgorSGlMaW5rICAgcGhwSW50ZXJwU2ltcGxlQnJhY2tldHNJbm5lciBTdHJpbmcKK0hpTGluayAgIHBocEludGVycFNpbXBsZUN1cmx5IERlbGltaXRlcgorSGlMaW5rICAgcGhwSW50ZXJwVmFybmFtZSBJZGVudGlmaWVyCitIaUxpbmsgICBwaHBUb2RvICBUb2RvCitIaUxpbmsgICBwaHBEb2NUb2RvIFRvZG8KK0hpTGluayAgIHBocE1lbWJlclNlbGVjdG9yICBTdHJ1Y3R1cmUKK2lmIGV4aXN0cygicGhwX29sZFN0eWxlIikKK2hpICBwaHBJbnRWYXIgZ3VpZmc9UmVkIGN0ZXJtZmc9RGFya1JlZAoraGkgIHBocEVudlZhciBndWlmZz1SZWQgY3Rlcm1mZz1EYXJrUmVkCitoaSAgcGhwT3BlcmF0b3IgZ3VpZmc9U2VhR3JlZW4gY3Rlcm1mZz1EYXJrR3JlZW4KK2hpICBwaHBWYXJTZWxlY3RvciBndWlmZz1TZWFHcmVlbiBjdGVybWZnPURhcmtHcmVlbgoraGkgIHBocFJlbGF0aW9uIGd1aWZnPVNlYUdyZWVuIGN0ZXJtZmc9RGFya0dyZWVuCitoaSAgcGhwSWRlbnRpZmllciBndWlmZz1EYXJrR3JheSBjdGVybWZnPUJyb3duCitoaSAgcGhwSWRlbnRpZmllclNpbXBseSBndWlmZz1EYXJrR3JheSBjdGVybWZnPUJyb3duCitlbHNlCitIaUxpbmsgICBwaHBJbnRWYXIgSWRlbnRpZmllcgorSGlMaW5rICAgcGhwRW52VmFyIElkZW50aWZpZXIKK0hpTGluayAgIHBocE9wZXJhdG9yIE9wZXJhdG9yCitIaUxpbmsgICBwaHBWYXJTZWxlY3RvciAgT3BlcmF0b3IKK0hpTGluayAgIHBocFJlbGF0aW9uIE9wZXJhdG9yCitIaUxpbmsgICBwaHBJZGVudGlmaWVyIElkZW50aWZpZXIKK0hpTGluayAgIHBocElkZW50aWZpZXJTaW1wbHkgSWRlbnRpZmllcgogZW5kaWYKIAorZGVsY29tbWFuZCBIaUxpbmsKKwogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicGhwIgogCiBpZiBtYWluX3N5bnRheCA9PSAncGhwJwpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcGljLnZpbSBiL3J1bnRpbWUvc3ludGF4L3BpYy52aW0KaW5kZXggYWRjOTY0ZS4uYjk4OTg0ZSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcGljLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9waWMudmltCkBAIC01LDExICs1LDggQEAKICIgVVJMOgkJaHR0cDovL2dhbGViLmV0Zi5iZy5hYy55dS9+YWxleGEvdmltL3N5bnRheC9waWMudmltCiAiIFJldmlzaW9uOiAgICAgMS4wMQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtOTEsMzYgKzg4LDI4IEBACiAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfcGljMTZmODRfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfcGljMTZmODRfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBwaWNUb2RvCQlUb2RvCi0gIEhpTGluayBwaWNDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBwaWNEaXJlY3RpdmUJCVN0YXRlbWVudAotICBIaUxpbmsgcGljTGFiZWwJCUxhYmVsCi0gIEhpTGluayBwaWNTdHJpbmcJCVN0cmluZworSGlMaW5rIHBpY1RvZG8JCVRvZG8KK0hpTGluayBwaWNDb21tZW50CQlDb21tZW50CitIaUxpbmsgcGljRGlyZWN0aXZlCQlTdGF0ZW1lbnQKK0hpTGluayBwaWNMYWJlbAkJTGFiZWwKK0hpTGluayBwaWNTdHJpbmcJCVN0cmluZwogCi0gIkhpTGluayBwaWNPcGNvZGUJCUtleXdvcmQKLSAiSGlMaW5rIHBpY1JlZ2lzdGVyCQlTdHJ1Y3R1cmUKLSAiSGlMaW5rIHBpY1JlZ2lzdGVyUGFydAlTcGVjaWFsCisiSGlMaW5rIHBpY09wY29kZQkJS2V5d29yZAorIkhpTGluayBwaWNSZWdpc3RlcgkJU3RydWN0dXJlCisiSGlMaW5rIHBpY1JlZ2lzdGVyUGFydAlTcGVjaWFsCiAKLSAgSGlMaW5rIHBpY0FTQ0lJCQlTdHJpbmcKLSAgSGlMaW5rIHBpY0JpbmFyeQkJTnVtYmVyCi0gIEhpTGluayBwaWNEZWNpbWFsCQlOdW1iZXIKLSAgSGlMaW5rIHBpY0hleGFkZWNpbWFsCQlOdW1iZXIKLSAgSGlMaW5rIHBpY09jdGFsCQlOdW1iZXIKK0hpTGluayBwaWNBU0NJSQkJU3RyaW5nCitIaUxpbmsgcGljQmluYXJ5CQlOdW1iZXIKK0hpTGluayBwaWNEZWNpbWFsCQlOdW1iZXIKK0hpTGluayBwaWNIZXhhZGVjaW1hbAkJTnVtYmVyCitIaUxpbmsgcGljT2N0YWwJCU51bWJlcgogCi0gIEhpTGluayBwaWNJZGVudGlmaWVyCQlJZGVudGlmaWVyCitIaUxpbmsgcGljSWRlbnRpZmllcgkJSWRlbnRpZmllcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicGljIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9waWtlLnZpbSBiL3J1bnRpbWUvc3ludGF4L3Bpa2UudmltCmluZGV4IGVmYmFmZDUuLmRjZjMyMTEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Bpa2UudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3Bpa2UudmltCkBAIC0zLDExICszLDggQEAKICIgTWFpbnRhaW5lcjoJRnJhbmNlc2NvIENoZW1vbGxpIDxraW5raWVAa2FtZS51c3IuZHNpLnVuaW1pLml0PgogIiBMYXN0IENoYW5nZToJMjAwMSBNYXkgMTAKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTEwNCw1MSArMTAxLDQzIEBACiBzeW4gc3luYyBjY29tbWVudCBwaWtlQ29tbWVudCBtaW5saW5lcz0xMAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9waWtlX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3Bpa2Vfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBwaWtlTGFiZWwJCUxhYmVsCi0gIEhpTGluayBwaWtlVXNlckxhYmVsCQlMYWJlbAotICBIaUxpbmsgcGlrZUNvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCi0gIEhpTGluayBwaWtlUmVwZWF0CQlSZXBlYXQKLSAgSGlMaW5rIHBpa2VDaGFyYWN0ZXIJCUNoYXJhY3RlcgotICBIaUxpbmsgcGlrZVNwZWNpYWxDaGFyYWN0ZXIgcGlrZVNwZWNpYWwKLSAgSGlMaW5rIHBpa2VOdW1iZXIJCU51bWJlcgotICBIaUxpbmsgcGlrZUZsb2F0CQlGbG9hdAotICBIaUxpbmsgcGlrZU9jdGFsRXJyb3IJCXBpa2VFcnJvcgotICBIaUxpbmsgcGlrZVBhcmVuRXJyb3IJCXBpa2VFcnJvcgotICBIaUxpbmsgcGlrZUluUGFyZW4JCXBpa2VFcnJvcgotICBIaUxpbmsgcGlrZUNvbW1lbnRFcnJvcglwaWtlRXJyb3IKLSAgSGlMaW5rIHBpa2VPcGVyYXRvcgkJT3BlcmF0b3IKLSAgSGlMaW5rIHBpa2VJbmNsdWRlCQlJbmNsdWRlCi0gIEhpTGluayBwaWtlUHJlUHJvYwkJUHJlUHJvYwotICBIaUxpbmsgcGlrZURlZmluZQkJTWFjcm8KLSAgSGlMaW5rIHBpa2VJbmNsdWRlZAkJcGlrZVN0cmluZwotICBIaUxpbmsgcGlrZUVycm9yCQlFcnJvcgotICBIaUxpbmsgcGlrZVN0YXRlbWVudAkJU3RhdGVtZW50Ci0gIEhpTGluayBwaWtlUHJlQ29uZGl0CQlQcmVDb25kaXQKLSAgSGlMaW5rIHBpa2VUeXBlCQlUeXBlCi0gIEhpTGluayBwaWtlQ29tbWVudEVycm9yCXBpa2VFcnJvcgotICBIaUxpbmsgcGlrZUNvbW1lbnRTdHJpbmcJcGlrZVN0cmluZwotICBIaUxpbmsgcGlrZUNvbW1lbnQyU3RyaW5nCXBpa2VTdHJpbmcKLSAgSGlMaW5rIHBpa2VDb21tZW50U2tpcAlwaWtlQ29tbWVudAotICBIaUxpbmsgcGlrZVN0cmluZwkJU3RyaW5nCi0gIEhpTGluayBwaWtlQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgcGlrZVNwZWNpYWwJCVNwZWNpYWxDaGFyCi0gIEhpTGluayBwaWtlVG9kbwkJVG9kbwotICBIaUxpbmsgcGlrZUV4Y2VwdGlvbgkJcGlrZVN0YXRlbWVudAotICBIaUxpbmsgcGlrZUNvbXBvdW5kVHlwZQlDb25zdGFudAotICAiSGlMaW5rIHBpa2VJZGVudGlmaWVyCUlkZW50aWZpZXIKK0hpTGluayBwaWtlTGFiZWwJCUxhYmVsCitIaUxpbmsgcGlrZVVzZXJMYWJlbAkJTGFiZWwKK0hpTGluayBwaWtlQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKK0hpTGluayBwaWtlUmVwZWF0CQlSZXBlYXQKK0hpTGluayBwaWtlQ2hhcmFjdGVyCQlDaGFyYWN0ZXIKK0hpTGluayBwaWtlU3BlY2lhbENoYXJhY3RlciBwaWtlU3BlY2lhbAorSGlMaW5rIHBpa2VOdW1iZXIJCU51bWJlcgorSGlMaW5rIHBpa2VGbG9hdAkJRmxvYXQKK0hpTGluayBwaWtlT2N0YWxFcnJvcgkJcGlrZUVycm9yCitIaUxpbmsgcGlrZVBhcmVuRXJyb3IJCXBpa2VFcnJvcgorSGlMaW5rIHBpa2VJblBhcmVuCQlwaWtlRXJyb3IKK0hpTGluayBwaWtlQ29tbWVudEVycm9yCXBpa2VFcnJvcgorSGlMaW5rIHBpa2VPcGVyYXRvcgkJT3BlcmF0b3IKK0hpTGluayBwaWtlSW5jbHVkZQkJSW5jbHVkZQorSGlMaW5rIHBpa2VQcmVQcm9jCQlQcmVQcm9jCitIaUxpbmsgcGlrZURlZmluZQkJTWFjcm8KK0hpTGluayBwaWtlSW5jbHVkZWQJCXBpa2VTdHJpbmcKK0hpTGluayBwaWtlRXJyb3IJCUVycm9yCitIaUxpbmsgcGlrZVN0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsgcGlrZVByZUNvbmRpdAkJUHJlQ29uZGl0CitIaUxpbmsgcGlrZVR5cGUJCVR5cGUKK0hpTGluayBwaWtlQ29tbWVudEVycm9yCXBpa2VFcnJvcgorSGlMaW5rIHBpa2VDb21tZW50U3RyaW5nCXBpa2VTdHJpbmcKK0hpTGluayBwaWtlQ29tbWVudDJTdHJpbmcJcGlrZVN0cmluZworSGlMaW5rIHBpa2VDb21tZW50U2tpcAlwaWtlQ29tbWVudAorSGlMaW5rIHBpa2VTdHJpbmcJCVN0cmluZworSGlMaW5rIHBpa2VDb21tZW50CQlDb21tZW50CitIaUxpbmsgcGlrZVNwZWNpYWwJCVNwZWNpYWxDaGFyCitIaUxpbmsgcGlrZVRvZG8JCVRvZG8KK0hpTGluayBwaWtlRXhjZXB0aW9uCQlwaWtlU3RhdGVtZW50CitIaUxpbmsgcGlrZUNvbXBvdW5kVHlwZQlDb25zdGFudAorIkhpTGluayBwaWtlSWRlbnRpZmllcglJZGVudGlmaWVyCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJwaWtlIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9waWxyYy52aW0gYi9ydW50aW1lL3N5bnRheC9waWxyYy52aW0KaW5kZXggODZkNTYxMS4uYzFkMzI4OCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcGlscmMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3BpbHJjLnZpbQpAQCAtNCwxMCArNCw4IEBACiAiIExhc3QgY2hhbmdlOgkyMDAzIE1heSAxMQogIiBBdmFpbGFibGUgb246CWh0dHA6Ly93d3cuc2NoYXUuY29tL3BpbHJjdmltL3BpbHJjLnZpbQogCi0iIFJlbW92ZSBhbnkgb2xkIHN5bnRheAotaWYgdmVyc2lvbiA8IDYwMAotCXN5biBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKIAlmaW5pc2gKIGVuZGlmCiAKQEAgLTExOSwzMCArMTE3LDIyIEBACiAKIHN5biBzeW5jIGNjb21tZW50IHBpbHJjQ29tbWVudAogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfcGlscmNfc3ludGF4X2luaXRzIikKLQlpZiB2ZXJzaW9uIDwgNTA4Ci0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0JZWxzZQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLQllbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLQlsZXQgZGlkX3BpbHJjX3N5bnRheF9pbml0cyA9IDEKKyIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nCitIaUxpbmsgcGlscmNLZXl3b3JkCQlTdGF0ZW1lbnQKK0hpTGluayBwaWxyY1R5cGUJCVR5cGUKK0hpTGluayBwaWxyY0Vycm9yCQlFcnJvcgorSGlMaW5rIHBpbHJjQ291bnRyeQkJU3BlY2lhbENoYXIKK0hpTGluayBwaWxyY0xhbmd1YWdlCQlTcGVjaWFsQ2hhcgorSGlMaW5rIHBpbHJjU3RyaW5nCQlTcGVjaWFsQ2hhcgorSGlMaW5rIHBpbHJjTnVtYmVyCQlOdW1iZXIKK0hpTGluayBwaWxyY0NvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBwaWxyY0NvbnN0YW50CQlDb25zdGFudAorSGlMaW5rIHBpbHJjRnVuY3Rpb24JCUZ1bmN0aW9uCitIaUxpbmsgcGlscmNJbmNsdWRlCQlTcGVjaWFsQ2hhcgorSGlMaW5rIHBpbHJjSWRlbnRpZmllcgkJTnVtYmVyCiAKLQkiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZwotCUhpTGluayBwaWxyY0tleXdvcmQJCVN0YXRlbWVudAotCUhpTGluayBwaWxyY1R5cGUJCVR5cGUKLQlIaUxpbmsgcGlscmNFcnJvcgkJRXJyb3IKLQlIaUxpbmsgcGlscmNDb3VudHJ5CQlTcGVjaWFsQ2hhcgotCUhpTGluayBwaWxyY0xhbmd1YWdlCQlTcGVjaWFsQ2hhcgotCUhpTGluayBwaWxyY1N0cmluZwkJU3BlY2lhbENoYXIKLQlIaUxpbmsgcGlscmNOdW1iZXIJCU51bWJlcgotCUhpTGluayBwaWxyY0NvbW1lbnQJCUNvbW1lbnQKLQlIaUxpbmsgcGlscmNDb25zdGFudAkJQ29uc3RhbnQKLQlIaUxpbmsgcGlscmNGdW5jdGlvbgkJRnVuY3Rpb24KLQlIaUxpbmsgcGlscmNJbmNsdWRlCQlTcGVjaWFsQ2hhcgotCUhpTGluayBwaWxyY0lkZW50aWZpZXIJCU51bWJlcgotCi0JZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJwaWxyYyIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3BpbmUudmltIGIvcnVudGltZS9zeW50YXgvcGluZS52aW0KaW5kZXggNGM2NGI5Yi4uZTQxZGQ4NyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcGluZS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcGluZS52aW0KQEAgLTMsMTkgKzMsMTIgQEAKICIgTWFpbnRhaW5lcjoJRGF2aWQgUGFzY29lIDxwYXNjb2VkakBzcGFtY29wLm5ldD4KICIgTGFzdCBDaGFuZ2U6CVRodSBGZWIgMjcgMTA6MTg6NDggV1NUIDIwMDMsIHVwZGF0ZSBmb3IgcGluZSA0LjUzCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCi1pZiB2ZXJzaW9uID49IDYwMAotICBzZXRsb2NhbCBpc2tleXdvcmQ9QCw0OC01NyxfLDEyOC0xNjcsMjI0LTIzNSwtCi1lbHNlCi0gIHNldCBpc2tleXdvcmQ9QCw0OC01NyxfLDEyOC0xNjcsMjI0LTIzNSwtCi1lbmRpZgorc2V0bG9jYWwgaXNrZXl3b3JkPUAsNDgtNTcsXywxMjgtMTY3LDIyNC0yMzUsLQogCiBzeW4ga2V5d29yZCBwaW5lQ29uZmlnIGFkZHJib29rLXNvcnQtcnVsZQogc3luIGtleXdvcmQgcGluZUNvbmZpZyBhZGRyZXNzLWJvb2sKQEAgLTM1MSwyMSArMzQ0LDEzIEBACiBzeW4gbWF0Y2ggIHBpbmVDb21tZW50ICAiXiMuKiQiCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3BpbmVfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfcGluZV9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHBpbmVDb25maWcJVHlwZQotICBIaUxpbmsgcGluZUNvbW1lbnQJQ29tbWVudAotICBIaUxpbmsgcGluZU9wdGlvbglNYWNybwotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK0hpTGluayBwaW5lQ29uZmlnCVR5cGUKK0hpTGluayBwaW5lQ29tbWVudAlDb21tZW50CitIaUxpbmsgcGluZU9wdGlvbglNYWNybworZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicGluZSIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcGxpLnZpbSBiL3J1bnRpbWUvc3ludGF4L3BsaS52aW0KaW5kZXggZjhkN2U1MS4uOWM3NGY5YiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcGxpLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9wbGkudmltCkBAIC0zLDkgKzMsOCBAQAogIiB1c2luZyBrZXl3b3JkcyBmcm9tIGh0dHA6Ly93d3cua2Vkbm9zLmNvbS9wbGkvZG9jcy9yZWZlcmVuY2VfbWFudWFsLzYyOTFwcm9fY29udGVudHMuaHRtbAogIiAgICAyMDEyLTExLTEzIEFsYW4gVGhvbXBzb24KIAotaWYgdmVyc2lvbiA8IDYwMAotICAgIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgICBmaW5pc2gKIGVuZGlmCiAKQEAgLTIyMiw1NyArMjIxLDQ4IEBACiBzeW4gc3luYyBtaW5saW5lcz0xMCBtYXhsaW5lcz0xMDAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LnggYW5kIGVhcmxpZXIsIG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5LgotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyLCBvbmx5IHdoZW4gYW5kIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZwotIiB5ZXQuCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfcGwxX3N5bl9pbml0cyIpCi0gICAgaWYgdmVyc2lvbiA8IDUwOAotICAgICAgICBsZXQgZGlkX3BsMV9zeW5faW5pdHMgPSAxCi0gICAgICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gICAgZWxzZQotICAgICAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgICBlbmRpZgorIiBPbmx5IHdoZW4gYW5kIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQuCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAgIEhpTGluayBwbDFBdHRyaWJ1dGUgICAgICAgTWFjcm8KLSAgICBIaUxpbmsgcGwxQmxvY2tFcnJvciAgICAgIEVycm9yCi0gICAgSGlMaW5rIHBsMUJvb2xlYW5MaXRlcmFsICBCb29sZWFuCi0gICAgSGlMaW5rIHBsMUNoYXJMaXRlcmFsICAgICBDaGFyYWN0ZXIKLSAgICBIaUxpbmsgcGwxQ29tbWVudCAgICAgICAgIENvbW1lbnQKLSAgICBIaUxpbmsgcGwxQ29tbWVudEwgICAgICAgIENvbW1lbnQKLSAgICBIaUxpbmsgcGwxQ29uZGl0aW9uYWwgICAgIENvbmRpdGlvbmFsCi0gICAgSGlMaW5rIHBsMUVycm9yICAgICAgICAgICBFcnJvcgotICAgIEhpTGluayBwbDFFcnJJbkJyYWNrZXQgICAgRXJyb3IKLSAgICBIaUxpbmsgcGwxRXJySW5CbG9jayAgICAgIEVycm9yCi0gICAgSGlMaW5rIHBsMUVyckluUGFyZW4gICAgICBFcnJvcgotICAgIEhpTGluayBwbDFFeGNlcHRpb24gICAgICAgRnVuY3Rpb24KLSAgICBIaUxpbmsgcGwxRmxvYXRMaXRlcmFsICAgIEZsb2F0Ci0gICAgSGlMaW5rIHBsMUZ1bmN0aW9uICAgICAgICBGdW5jdGlvbgotICAgIEhpTGluayBwbDFHYXJiYWdlICAgICAgICAgRXJyb3IKLSAgICBIaUxpbmsgcGwxSG9zdElkZW50aWZpZXIgIExhYmVsCi0gICAgSGlMaW5rIHBsMUlkZW50aWZpZXIgICAgICBOb3JtYWwKLSAgICBIaUxpbmsgcGwxSW50TGl0ZXJhbCAgICAgIE51bWJlcgotICAgIEhpTGluayBwbDFPcGVyYXRvciAgICAgICAgT3BlcmF0b3IKLSAgICBIaUxpbmsgcGwxUGFyZW4gICAgICAgICAgIE5vcm1hbAotICAgIEhpTGluayBwbDFQYXJlbkVycm9yICAgICAgRXJyb3IKLSAgICBIaUxpbmsgcGwxU3BhY2VFcnJvciAgICAgIEVycm9yCi0gICAgSGlMaW5rIHBsMVBzZXVkbyAgICAgICAgICBQcmVQcm9jCi0gICAgSGlMaW5rIHBsMVByZVByb2MgICAgICAgICBQcmVQcm9jCi0gICAgSGlMaW5rIHBsMVByZVByb2NTeW0gICAgICBQcmVQcm9jCi0gICAgSGlMaW5rIHBsMUtleXdvcmQgICAgICAgICBLZXl3b3JkCi0gICAgSGlMaW5rIHBsMU90aGVyICAgICAgICAgICBLZXl3b3JkCi0gICAgSGlMaW5rIHBsMVJlcGVhdCAgICAgICAgICBSZXBlYXQKLSAgICBIaUxpbmsgcGwxU3RhdGVtZW50ICAgICAgIEtleXdvcmQKLSAgICBIaUxpbmsgcGwxU3RvcmFnZSAgICAgICAgIFN0b3JhZ2VDbGFzcwotICAgIEhpTGluayBwbDFTdHJpbmdFcnJvciAgICAgRXJyb3IKLSAgICBIaUxpbmsgcGwxU3RyaW5nTGl0ZXJhbCAgIFN0cmluZwotICAgIEhpTGluayBwbDFDb21tZW50U3RyaW5nICAgU3RyaW5nCi0gICAgSGlMaW5rIHBsMUNvbW1lbnQyU3RyaW5nICBTdHJpbmcKLSAgICBIaUxpbmsgcGwxU3ltYm9sICAgICAgICAgIE5vcm1hbAotICAgIEhpTGluayBwbDFUcmlnZ2VyICAgICAgICAgRnVuY3Rpb24KLSAgICBIaUxpbmsgcGwxVHlwZUF0dHJpYnV0ZSAgIFN0b3JhZ2VDbGFzcwotICAgIEhpTGluayBwbDFUb2RvICAgICAgICAgICAgVG9kbworSGlMaW5rIHBsMUF0dHJpYnV0ZSAgICAgICBNYWNybworSGlMaW5rIHBsMUJsb2NrRXJyb3IgICAgICBFcnJvcgorSGlMaW5rIHBsMUJvb2xlYW5MaXRlcmFsICBCb29sZWFuCitIaUxpbmsgcGwxQ2hhckxpdGVyYWwgICAgIENoYXJhY3RlcgorSGlMaW5rIHBsMUNvbW1lbnQgICAgICAgICBDb21tZW50CitIaUxpbmsgcGwxQ29tbWVudEwgICAgICAgIENvbW1lbnQKK0hpTGluayBwbDFDb25kaXRpb25hbCAgICAgQ29uZGl0aW9uYWwKK0hpTGluayBwbDFFcnJvciAgICAgICAgICAgRXJyb3IKK0hpTGluayBwbDFFcnJJbkJyYWNrZXQgICAgRXJyb3IKK0hpTGluayBwbDFFcnJJbkJsb2NrICAgICAgRXJyb3IKK0hpTGluayBwbDFFcnJJblBhcmVuICAgICAgRXJyb3IKK0hpTGluayBwbDFFeGNlcHRpb24gICAgICAgRnVuY3Rpb24KK0hpTGluayBwbDFGbG9hdExpdGVyYWwgICAgRmxvYXQKK0hpTGluayBwbDFGdW5jdGlvbiAgICAgICAgRnVuY3Rpb24KK0hpTGluayBwbDFHYXJiYWdlICAgICAgICAgRXJyb3IKK0hpTGluayBwbDFIb3N0SWRlbnRpZmllciAgTGFiZWwKK0hpTGluayBwbDFJZGVudGlmaWVyICAgICAgTm9ybWFsCitIaUxpbmsgcGwxSW50TGl0ZXJhbCAgICAgIE51bWJlcgorSGlMaW5rIHBsMU9wZXJhdG9yICAgICAgICBPcGVyYXRvcgorSGlMaW5rIHBsMVBhcmVuICAgICAgICAgICBOb3JtYWwKK0hpTGluayBwbDFQYXJlbkVycm9yICAgICAgRXJyb3IKK0hpTGluayBwbDFTcGFjZUVycm9yICAgICAgRXJyb3IKK0hpTGluayBwbDFQc2V1ZG8gICAgICAgICAgUHJlUHJvYworSGlMaW5rIHBsMVByZVByb2MgICAgICAgICBQcmVQcm9jCitIaUxpbmsgcGwxUHJlUHJvY1N5bSAgICAgIFByZVByb2MKK0hpTGluayBwbDFLZXl3b3JkICAgICAgICAgS2V5d29yZAorSGlMaW5rIHBsMU90aGVyICAgICAgICAgICBLZXl3b3JkCitIaUxpbmsgcGwxUmVwZWF0ICAgICAgICAgIFJlcGVhdAorSGlMaW5rIHBsMVN0YXRlbWVudCAgICAgICBLZXl3b3JkCitIaUxpbmsgcGwxU3RvcmFnZSAgICAgICAgIFN0b3JhZ2VDbGFzcworSGlMaW5rIHBsMVN0cmluZ0Vycm9yICAgICBFcnJvcgorSGlMaW5rIHBsMVN0cmluZ0xpdGVyYWwgICBTdHJpbmcKK0hpTGluayBwbDFDb21tZW50U3RyaW5nICAgU3RyaW5nCitIaUxpbmsgcGwxQ29tbWVudDJTdHJpbmcgIFN0cmluZworSGlMaW5rIHBsMVN5bWJvbCAgICAgICAgICBOb3JtYWwKK0hpTGluayBwbDFUcmlnZ2VyICAgICAgICAgRnVuY3Rpb24KK0hpTGluayBwbDFUeXBlQXR0cmlidXRlICAgU3RvcmFnZUNsYXNzCitIaUxpbmsgcGwxVG9kbyAgICAgICAgICAgIFRvZG8KIAotICAgIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicGwxIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcGxtLnZpbSBiL3J1bnRpbWUvc3ludGF4L3BsbS52aW0KaW5kZXggYmY3YzMyZi4uZGU4MDZiMyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcGxtLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9wbG0udmltCkBAIC0zLDExICszLDggQEAKICIgTWFpbnRhaW5lcjoJUGhpbGlwcGUgQ291bG9uZ2VzIDxjcGhpbEBjcGhpbC5uZXQ+CiAiIExhc3QgY2hhbmdlOgkyMDAzIE1heSAxMQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTAzLDQzICsxMDAsMzUgQEAKIHN5biBzeW5jIGxpbmVzPTUwCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3BsbV9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9wbG1fc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgorIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgogIiAgSGlMaW5rIHBsbUxhYmVsCQkJTGFiZWwKICIgIEhpTGluayBwbG1Db25kaXRpb25hbAkJQ29uZGl0aW9uYWwKICIgIEhpTGluayBwbG1SZXBlYXQJCQlSZXBlYXQKLSAgSGlMaW5rIHBsbVRvZG8JCQlUb2RvCi0gIEhpTGluayBwbG1OdW1iZXIJCQlOdW1iZXIKLSAgSGlMaW5rIHBsbU9wZXJhdG9yCQkJT3BlcmF0b3IKLSAgSGlMaW5rIHBsbURlbGltaXRlcgkJCU9wZXJhdG9yCi0gICJIaUxpbmsgcGxtU2hvd1RhYgkJCUVycm9yCi0gICJIaUxpbmsgcGxtU2hvd1RhYmMJCQlFcnJvcgotICBIaUxpbmsgcGxtSWRlbnRpZmllcgkJCUlkZW50aWZpZXIKLSAgSGlMaW5rIHBsbUJ1aWx0SW4JCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHBsbTI4NkJ1aWx0SW4JCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHBsbTM4NkJ1aWx0SW4JCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHBsbTM4NncxNkJ1aWx0SW4JCVN0YXRlbWVudAotICBIaUxpbmsgcGxtUmVzZXJ2ZWQJCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHBsbTM4NlJlc2VydmVkCQkJU3RhdGVtZW50Ci0gIEhpTGluayBwbG1QcmVQcm9jCQkJUHJlUHJvYwotICBIaUxpbmsgcGxtQ29tbWVudEVycm9yCQlwbG1FcnJvcgotICBIaUxpbmsgcGxtQ29tbWVudFN0cmluZwkJcGxtU3RyaW5nCi0gIEhpTGluayBwbG1Db21tZW50MlN0cmluZwkJcGxtU3RyaW5nCi0gIEhpTGluayBwbG1Db21tZW50U2tpcAkJCXBsbUNvbW1lbnQKLSAgSGlMaW5rIHBsbVN0cmluZwkJCVN0cmluZwotICBIaUxpbmsgcGxtQ29tbWVudAkJCUNvbW1lbnQKK0hpTGluayBwbG1Ub2RvCQkJVG9kbworSGlMaW5rIHBsbU51bWJlcgkJCU51bWJlcgorSGlMaW5rIHBsbU9wZXJhdG9yCQkJT3BlcmF0b3IKK0hpTGluayBwbG1EZWxpbWl0ZXIJCQlPcGVyYXRvcgorIkhpTGluayBwbG1TaG93VGFiCQkJRXJyb3IKKyJIaUxpbmsgcGxtU2hvd1RhYmMJCQlFcnJvcgorSGlMaW5rIHBsbUlkZW50aWZpZXIJCQlJZGVudGlmaWVyCitIaUxpbmsgcGxtQnVpbHRJbgkJCVN0YXRlbWVudAorSGlMaW5rIHBsbTI4NkJ1aWx0SW4JCQlTdGF0ZW1lbnQKK0hpTGluayBwbG0zODZCdWlsdEluCQkJU3RhdGVtZW50CitIaUxpbmsgcGxtMzg2dzE2QnVpbHRJbgkJU3RhdGVtZW50CitIaUxpbmsgcGxtUmVzZXJ2ZWQJCQlTdGF0ZW1lbnQKK0hpTGluayBwbG0zODZSZXNlcnZlZAkJCVN0YXRlbWVudAorSGlMaW5rIHBsbVByZVByb2MJCQlQcmVQcm9jCitIaUxpbmsgcGxtQ29tbWVudEVycm9yCQlwbG1FcnJvcgorSGlMaW5rIHBsbUNvbW1lbnRTdHJpbmcJCXBsbVN0cmluZworSGlMaW5rIHBsbUNvbW1lbnQyU3RyaW5nCQlwbG1TdHJpbmcKK0hpTGluayBwbG1Db21tZW50U2tpcAkJCXBsbUNvbW1lbnQKK0hpTGluayBwbG1TdHJpbmcJCQlTdHJpbmcKK0hpTGluayBwbG1Db21tZW50CQkJQ29tbWVudAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicGxtIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9wbHAudmltIGIvcnVudGltZS9zeW50YXgvcGxwLnZpbQppbmRleCBmNTk3MDJkLi40OGRjNGIyIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9wbHAudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3BscC52aW0KQEAgLTcsMTEgKzcsOCBAQAogIiBBZGQgdG8gZmlsZXR5cGUudmltIHRoZSBmb2xsb3dpbmcgbGluZSAod2l0aG91dCBxdW90ZSBzaWduKToKICIgYXUgQnVmTmV3RmlsZSxCdWZSZWFkICoucGxwIHNldGYgcGxwCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xOSwxNCArMTYsOSBAQAogICBsZXQgbWFpbl9zeW50YXggPSAncGVybHNjcmlwdCcKIGVuZGlmCiAKLWlmIHZlcnNpb24gPCA2MDAKLSAgc28gPHNmaWxlPjpwOmgvaHRtbC52aW0KLSAgc3luIGluY2x1ZGUgQFBMUHBlcmwgPHNmaWxlPjpwOmgvcGVybC52aW0KLWVsc2UKLSAgcnVudGltZSEgc3ludGF4L2h0bWwudmltCi0gIHVubGV0IGI6Y3VycmVudF9zeW50YXgKLSAgc3luIGluY2x1ZGUgQFBMUHBlcmwgc3ludGF4L3BlcmwudmltCi1lbmRpZgorcnVudGltZSEgc3ludGF4L2h0bWwudmltCit1bmxldCBiOmN1cnJlbnRfc3ludGF4CitzeW4gaW5jbHVkZSBAUExQcGVybCBzeW50YXgvcGVybC52aW0KIAogc3luIGNsdXN0ZXIgaHRtbFByZXByb2MgYWRkPVBMUHBlcmxibG9jawogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9wbHNxbC52aW0gYi9ydW50aW1lL3N5bnRheC9wbHNxbC52aW0KaW5kZXggNmU1MTM2Ni4uMTczYzIyZiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcGxzcWwudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3Bsc3FsLnZpbQpAQCAtOSwxMSArOSw4IEBACiAiCSAgIEF1c3RpbiBaaWVnbGVyIChhdXN0aW4gYXQgaGFsb3N0YXR1ZSBkb3QgY2EpCiAiCQlBZGRlZCA4aSsgZmVhdHVyZXMuCiAiCi0iIEZvciB2ZXJzaW9uIDUueCwgY2xlYXIgYWxsIHN5bnRheCBpdGVtcy4KLSIgRm9yIHZlcnNpb24gNi54LCBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQuCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0yMjMsNTQgKzIyMCw0NiBAQAogc3luIHN5bmMgbWlubGluZXM9MTAgbWF4bGluZXM9MTAwCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS54IGFuZCBlYXJsaWVyLCBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeS4KLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlciwgb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQuCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfcGxzcWxfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfcGxzcWxfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQuCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgcGxzcWxBdHRyaWJ1dGUJCU1hY3JvCi0gIEhpTGluayBwbHNxbEJsb2NrRXJyb3IJRXJyb3IKLSAgSGlMaW5rIHBsc3FsQm9vbGVhbkxpdGVyYWwJQm9vbGVhbgotICBIaUxpbmsgcGxzcWxDaGFyTGl0ZXJhbAlDaGFyYWN0ZXIKLSAgSGlMaW5rIHBsc3FsQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgcGxzcWxDb21tZW50TAkJQ29tbWVudAotICBIaUxpbmsgcGxzcWxDb25kaXRpb25hbAlDb25kaXRpb25hbAotICBIaUxpbmsgcGxzcWxFcnJvcgkJRXJyb3IKLSAgSGlMaW5rIHBsc3FsRXJySW5CcmFja2V0CUVycm9yCi0gIEhpTGluayBwbHNxbEVyckluQmxvY2sJRXJyb3IKLSAgSGlMaW5rIHBsc3FsRXJySW5QYXJlbglFcnJvcgotICBIaUxpbmsgcGxzcWxFeGNlcHRpb24JCUZ1bmN0aW9uCi0gIEhpTGluayBwbHNxbEZsb2F0TGl0ZXJhbAlGbG9hdAotICBIaUxpbmsgcGxzcWxGdW5jdGlvbgkJRnVuY3Rpb24KLSAgSGlMaW5rIHBsc3FsR2FyYmFnZQkJRXJyb3IKLSAgSGlMaW5rIHBsc3FsSG9zdElkZW50aWZpZXIJTGFiZWwKLSAgSGlMaW5rIHBsc3FsSWRlbnRpZmllcglOb3JtYWwKLSAgSGlMaW5rIHBsc3FsSW50TGl0ZXJhbAlOdW1iZXIKLSAgSGlMaW5rIHBsc3FsT3BlcmF0b3IJCU9wZXJhdG9yCi0gIEhpTGluayBwbHNxbFBhcmVuCQlOb3JtYWwKLSAgSGlMaW5rIHBsc3FsUGFyZW5FcnJvcglFcnJvcgotICBIaUxpbmsgcGxzcWxTcGFjZUVycm9yCUVycm9yCi0gIEhpTGluayBwbHNxbFBzZXVkbwkJUHJlUHJvYwotICBIaUxpbmsgcGxzcWxLZXl3b3JkCQlLZXl3b3JkCi0gIEhpTGluayBwbHNxbFJlcGVhdAkJUmVwZWF0Ci0gIEhpTGluayBwbHNxbFN0b3JhZ2UJCVN0b3JhZ2VDbGFzcwotICBIaUxpbmsgcGxzcWxTUUxLZXl3b3JkCUZ1bmN0aW9uCi0gIEhpTGluayBwbHNxbFN0cmluZ0Vycm9yCUVycm9yCi0gIEhpTGluayBwbHNxbFN0cmluZ0xpdGVyYWwJU3RyaW5nCi0gIEhpTGluayBwbHNxbENvbW1lbnRTdHJpbmcJU3RyaW5nCi0gIEhpTGluayBwbHNxbENvbW1lbnQyU3RyaW5nCVN0cmluZwotICBIaUxpbmsgcGxzcWxTeW1ib2wJCU5vcm1hbAotICBIaUxpbmsgcGxzcWxUcmlnZ2VyCQlGdW5jdGlvbgotICBIaUxpbmsgcGxzcWxUeXBlQXR0cmlidXRlCVN0b3JhZ2VDbGFzcwotICBIaUxpbmsgcGxzcWxUb2RvCQlUb2RvCitIaUxpbmsgcGxzcWxBdHRyaWJ1dGUJCU1hY3JvCitIaUxpbmsgcGxzcWxCbG9ja0Vycm9yCUVycm9yCitIaUxpbmsgcGxzcWxCb29sZWFuTGl0ZXJhbAlCb29sZWFuCitIaUxpbmsgcGxzcWxDaGFyTGl0ZXJhbAlDaGFyYWN0ZXIKK0hpTGluayBwbHNxbENvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBwbHNxbENvbW1lbnRMCQlDb21tZW50CitIaUxpbmsgcGxzcWxDb25kaXRpb25hbAlDb25kaXRpb25hbAorSGlMaW5rIHBsc3FsRXJyb3IJCUVycm9yCitIaUxpbmsgcGxzcWxFcnJJbkJyYWNrZXQJRXJyb3IKK0hpTGluayBwbHNxbEVyckluQmxvY2sJRXJyb3IKK0hpTGluayBwbHNxbEVyckluUGFyZW4JRXJyb3IKK0hpTGluayBwbHNxbEV4Y2VwdGlvbgkJRnVuY3Rpb24KK0hpTGluayBwbHNxbEZsb2F0TGl0ZXJhbAlGbG9hdAorSGlMaW5rIHBsc3FsRnVuY3Rpb24JCUZ1bmN0aW9uCitIaUxpbmsgcGxzcWxHYXJiYWdlCQlFcnJvcgorSGlMaW5rIHBsc3FsSG9zdElkZW50aWZpZXIJTGFiZWwKK0hpTGluayBwbHNxbElkZW50aWZpZXIJTm9ybWFsCitIaUxpbmsgcGxzcWxJbnRMaXRlcmFsCU51bWJlcgorSGlMaW5rIHBsc3FsT3BlcmF0b3IJCU9wZXJhdG9yCitIaUxpbmsgcGxzcWxQYXJlbgkJTm9ybWFsCitIaUxpbmsgcGxzcWxQYXJlbkVycm9yCUVycm9yCitIaUxpbmsgcGxzcWxTcGFjZUVycm9yCUVycm9yCitIaUxpbmsgcGxzcWxQc2V1ZG8JCVByZVByb2MKK0hpTGluayBwbHNxbEtleXdvcmQJCUtleXdvcmQKK0hpTGluayBwbHNxbFJlcGVhdAkJUmVwZWF0CitIaUxpbmsgcGxzcWxTdG9yYWdlCQlTdG9yYWdlQ2xhc3MKK0hpTGluayBwbHNxbFNRTEtleXdvcmQJRnVuY3Rpb24KK0hpTGluayBwbHNxbFN0cmluZ0Vycm9yCUVycm9yCitIaUxpbmsgcGxzcWxTdHJpbmdMaXRlcmFsCVN0cmluZworSGlMaW5rIHBsc3FsQ29tbWVudFN0cmluZwlTdHJpbmcKK0hpTGluayBwbHNxbENvbW1lbnQyU3RyaW5nCVN0cmluZworSGlMaW5rIHBsc3FsU3ltYm9sCQlOb3JtYWwKK0hpTGluayBwbHNxbFRyaWdnZXIJCUZ1bmN0aW9uCitIaUxpbmsgcGxzcWxUeXBlQXR0cmlidXRlCVN0b3JhZ2VDbGFzcworSGlMaW5rIHBsc3FsVG9kbwkJVG9kbwogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicGxzcWwiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3BvLnZpbSBiL3J1bnRpbWUvc3ludGF4L3BvLnZpbQppbmRleCAyYWIxM2FjLi5mOTg4MTNjIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9wby52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcG8udmltCkBAIC02LDExICs2LDggQEAKICIgICAgICAgICAgICAgICBMZW9uYXJkbyBGb250ZW5lbGxlIChTcGVsbCBjaGVja2luZykKICIgICAgICAgICAgICAgICBOYW0gU3VuZ0h5dW4gPG5hbXNoQGtsZHAub3JnPiAoT3JpZ2luYWwgbWFpbnRhaW5lcikKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgczprZWVwY3BvPSAmY3BvCkBAIC04Miw2MSArNzksNTMgQEAKIHN5biBtYXRjaCBwb1ZhcmlhYmxlIGNvbnRhaW5lZCAiJVxkIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9wb19zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9wb19zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHBvQ29tbWVudFNvdXJjZXMgICAgUHJlUHJvYwotICBIaUxpbmsgcG9Db21tZW50CSAgICAgQ29tbWVudAotICBIaUxpbmsgcG9Db21tZW50QXV0b21hdGljICBDb21tZW50Ci0gIEhpTGluayBwb0NvbW1lbnRUcmFuc2xhdG9yIENvbW1lbnQKLSAgSGlMaW5rIHBvQ29tbWVudEZsYWdzICAgICAgU3BlY2lhbAotICBIaUxpbmsgcG9Db21tZW50RGlmZiAgICAgICBDb21tZW50Ci0gIEhpTGluayBwb0NvcHlyaWdodFVuc2V0ICAgIFRvZG8KLSAgSGlMaW5rIHBvRmxhZ0Z1enp5ICAgICAgICAgVG9kbwotICBIaUxpbmsgcG9EaWZmT2xkICAgICAgICAgICBUb2RvCi0gIEhpTGluayBwb0RpZmZOZXcgICAgICAgICAgU3BlY2lhbAotICBIaUxpbmsgcG9PYnNvbGV0ZSAgICAgICAgIENvbW1lbnQKK0hpTGluayBwb0NvbW1lbnRTb3VyY2VzICAgIFByZVByb2MKK0hpTGluayBwb0NvbW1lbnQJICAgICBDb21tZW50CitIaUxpbmsgcG9Db21tZW50QXV0b21hdGljICBDb21tZW50CitIaUxpbmsgcG9Db21tZW50VHJhbnNsYXRvciBDb21tZW50CitIaUxpbmsgcG9Db21tZW50RmxhZ3MgICAgICBTcGVjaWFsCitIaUxpbmsgcG9Db21tZW50RGlmZiAgICAgICBDb21tZW50CitIaUxpbmsgcG9Db3B5cmlnaHRVbnNldCAgICBUb2RvCitIaUxpbmsgcG9GbGFnRnV6enkgICAgICAgICBUb2RvCitIaUxpbmsgcG9EaWZmT2xkICAgICAgICAgICBUb2RvCitIaUxpbmsgcG9EaWZmTmV3ICAgICAgICAgIFNwZWNpYWwKK0hpTGluayBwb09ic29sZXRlICAgICAgICAgQ29tbWVudAogCi0gIEhpTGluayBwb1N0YXRlbWVudE1zZ2lkICAgU3RhdGVtZW50Ci0gIEhpTGluayBwb1N0YXRlbWVudE1zZ3N0ciAgU3RhdGVtZW50Ci0gIEhpTGluayBwb1N0YXRlbWVudE1zZ2lkcGx1cmFsICBTdGF0ZW1lbnQKLSAgSGlMaW5rIHBvU3RhdGVtZW50TXNnQ1R4dCBTdGF0ZW1lbnQKLSAgSGlMaW5rIHBvUGx1cmFsQ2FzZU4gICAgICBDb25zdGFudAorSGlMaW5rIHBvU3RhdGVtZW50TXNnaWQgICBTdGF0ZW1lbnQKK0hpTGluayBwb1N0YXRlbWVudE1zZ3N0ciAgU3RhdGVtZW50CitIaUxpbmsgcG9TdGF0ZW1lbnRNc2dpZHBsdXJhbCAgU3RhdGVtZW50CitIaUxpbmsgcG9TdGF0ZW1lbnRNc2dDVHh0IFN0YXRlbWVudAorSGlMaW5rIHBvUGx1cmFsQ2FzZU4gICAgICBDb25zdGFudAogCi0gIEhpTGluayBwb1N0cmluZ0NUeHQJICAgIENvbW1lbnQKLSAgSGlMaW5rIHBvU3RyaW5nSUQJICAgIFN0cmluZwotICBIaUxpbmsgcG9TdHJpbmdTVFIJICAgIFN0cmluZwotICBIaUxpbmsgcG9Db21tZW50S0RFICAgICAgIENvbW1lbnQKLSAgSGlMaW5rIHBvQ29tbWVudEtERUVycm9yICBFcnJvcgotICBIaUxpbmsgcG9QbHVyYWxLREUgICAgICAgIENvbW1lbnQKLSAgSGlMaW5rIHBvUGx1cmFsS0RFRXJyb3IgICBFcnJvcgotICBIaUxpbmsgcG9IZWFkZXJJdGVtICAgICAgIElkZW50aWZpZXIKLSAgSGlMaW5rIHBvSGVhZGVyVW5kZWZpbmVkICBUb2RvCi0gIEhpTGluayBwb0tERWRlc2t0b3BGaWxlICAgSWRlbnRpZmllcgorSGlMaW5rIHBvU3RyaW5nQ1R4dAkgICAgQ29tbWVudAorSGlMaW5rIHBvU3RyaW5nSUQJICAgIFN0cmluZworSGlMaW5rIHBvU3RyaW5nU1RSCSAgICBTdHJpbmcKK0hpTGluayBwb0NvbW1lbnRLREUgICAgICAgQ29tbWVudAorSGlMaW5rIHBvQ29tbWVudEtERUVycm9yICBFcnJvcgorSGlMaW5rIHBvUGx1cmFsS0RFICAgICAgICBDb21tZW50CitIaUxpbmsgcG9QbHVyYWxLREVFcnJvciAgIEVycm9yCitIaUxpbmsgcG9IZWFkZXJJdGVtICAgICAgIElkZW50aWZpZXIKK0hpTGluayBwb0hlYWRlclVuZGVmaW5lZCAgVG9kbworSGlMaW5rIHBvS0RFZGVza3RvcEZpbGUgICBJZGVudGlmaWVyCiAKLSAgSGlMaW5rIHBvSHRtbCAgICAgICAgICAgICAgSWRlbnRpZmllcgotICBIaUxpbmsgcG9IdG1sTm90ICAgICAgICAgICBTdHJpbmcKLSAgSGlMaW5rIHBvSHRtbFRyYW5zbGF0YWJsZXMgU3RyaW5nCi0gIEhpTGluayBwb0xpbmVCcmVhayAgICAgICAgIFN0cmluZworSGlMaW5rIHBvSHRtbCAgICAgICAgICAgICAgSWRlbnRpZmllcgorSGlMaW5rIHBvSHRtbE5vdCAgICAgICAgICAgU3RyaW5nCitIaUxpbmsgcG9IdG1sVHJhbnNsYXRhYmxlcyBTdHJpbmcKK0hpTGluayBwb0xpbmVCcmVhayAgICAgICAgIFN0cmluZwogCi0gIEhpTGluayBwb0Zvcm1hdAkgICAgcG9TcGVjaWFsCi0gIEhpTGluayBwb1NwZWNpYWwJICAgIFNwZWNpYWwKLSAgSGlMaW5rIHBvQWNjZWxlcmF0b3JJZCAgICBTcGVjaWFsCi0gIEhpTGluayBwb0FjY2VsZXJhdG9yU3RyICAgU3BlY2lhbAotICBIaUxpbmsgcG9WYXJpYWJsZSAgICAgICAgIFNwZWNpYWwKK0hpTGluayBwb0Zvcm1hdAkgICAgcG9TcGVjaWFsCitIaUxpbmsgcG9TcGVjaWFsCSAgICBTcGVjaWFsCitIaUxpbmsgcG9BY2NlbGVyYXRvcklkICAgIFNwZWNpYWwKK0hpTGluayBwb0FjY2VsZXJhdG9yU3RyICAgU3BlY2lhbAorSGlMaW5rIHBvVmFyaWFibGUgICAgICAgICBTcGVjaWFsCiAKLSAgSGlMaW5rIHBvTXNndW5pcUVycm9yICAgICAgICBTcGVjaWFsCi0gIEhpTGluayBwb01zZ3VuaXFFcnJvck1hcmtlcnMgQ29tbWVudAorSGlMaW5rIHBvTXNndW5pcUVycm9yICAgICAgICBTcGVjaWFsCitIaUxpbmsgcG9Nc2d1bmlxRXJyb3JNYXJrZXJzIENvbW1lbnQKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInBvIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9wb2QudmltIGIvcnVudGltZS9zeW50YXgvcG9kLnZpbQppbmRleCBiOWYyZTA4Li5jNTQ1MTQxIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9wb2QudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3BvZC52aW0KQEAgLTE5LDExICsxOSw4IEBACiAKICIgUmVtb3ZlIGFueSBvbGQgc3ludGF4IHN0dWZmIGhhbmdpbmcgYXJvdW5kICh0aGlzIGlzIHN1cHByZXNzZWQKICIgYXV0b21hdGljYWxseSBieSAiOnN5biBpbmNsdWRlIiBpZiBuZWNlc3NhcnkpLgotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTY3LDI4ICs2NCwyMCBAQAogc3luIG1hdGNoICBwb2RFc2NhcGUyCSJcZFwrPiJtZT1lLTEgY29udGFpbmVkIGNvbnRhaW5zPUBOb1NwZWxsCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3BvZF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9wb2Rfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBwb2RDb21tYW5kCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHBvZENtZFRleHQJCVN0cmluZwotICBIaUxpbmsgcG9kT3ZlckluZGVudAkJTnVtYmVyCi0gIEhpTGluayBwb2RGb3JLZXl3ZAkJSWRlbnRpZmllcgotICBIaUxpbmsgcG9kRm9ybWF0CQlJZGVudGlmaWVyCi0gIEhpTGluayBwb2RWZXJiYXRpbUxpbmUJUHJlUHJvYwotICBIaUxpbmsgcG9kU3BlY2lhbAkJSWRlbnRpZmllcgotICBIaUxpbmsgcG9kRXNjYXBlCQlTdHJpbmcKLSAgSGlMaW5rIHBvZEVzY2FwZTIJCU51bWJlcgorSGlMaW5rIHBvZENvbW1hbmQJCVN0YXRlbWVudAorSGlMaW5rIHBvZENtZFRleHQJCVN0cmluZworSGlMaW5rIHBvZE92ZXJJbmRlbnQJCU51bWJlcgorSGlMaW5rIHBvZEZvcktleXdkCQlJZGVudGlmaWVyCitIaUxpbmsgcG9kRm9ybWF0CQlJZGVudGlmaWVyCitIaUxpbmsgcG9kVmVyYmF0aW1MaW5lCVByZVByb2MKK0hpTGluayBwb2RTcGVjaWFsCQlJZGVudGlmaWVyCitIaUxpbmsgcG9kRXNjYXBlCQlTdHJpbmcKK0hpTGluayBwb2RFc2NhcGUyCQlOdW1iZXIKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGlmIGV4aXN0cygicGVybF9wb2Rfc3BlbGxjaGVja19oZWFkaW5ncyIpCiAgICIgU3BlbGwtY2hlY2sgaGVhZGluZ3MKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Bvc3RzY3IudmltIGIvcnVudGltZS9zeW50YXgvcG9zdHNjci52aW0KaW5kZXggZmRkZmU0Yy4uNWIwYjQ0MiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcG9zdHNjci52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcG9zdHNjci52aW0KQEAgLTEzLDExICsxMyw4IEBACiAiIHBvc3RzY3JfZW5jb2RpbmdzICAgICAgICAgICAgIC0gaGlnaGxpZ2h0IGVuY29kaW5nIG5hbWVzICh0aGVyZSBhcmUgYSBsb3QpCiAiIHBvc3RzY3JfYW5kb3Jub3RfYmluYXJ5ICAgICAgIC0gaGlnaGxpZ2h0IGFuZCwgb3IsIGFuZCBub3QgYXMgYmluYXJ5IG9wZXJhdG9ycyAobm90IGxvZ2ljYWwpCiAiCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMjUsMTEgKzIyLDcgQEAKIHN5biBjYXNlIG1hdGNoCiAKICIgS2V5d29yZCBjaGFyYWN0ZXJzIC0gYWxsIDctYml0IEFTQ0lJIGJhciBQUyBkZWxpbWl0ZXJzIGFuZCB3cwotaWYgdmVyc2lvbiA+PSA2MDAKLSAgc2V0bG9jYWwgaXNrZXl3b3JkPTMzLTEyNyxeKCxeKSxePCxePixeWyxeXSxeeyxefSxeLyxeJQotZWxzZQotICBzZXQgaXNrZXl3b3JkPTMzLTEyNyxeKCxeKSxePCxePixeWyxeXSxeeyxefSxeLyxeJQotZW5kaWYKK3NldGxvY2FsIGlza2V5d29yZD0zMy0xMjcsXigsXiksXjwsXj4sXlssXl0sXnssXn0sXi8sXiUKIAogIiBZZXIgdHJ1c3R5IG9sZCBUT0RPIGhpZ2hsZ2h0ZXIhCiBzeW4ga2V5d29yZCBwb3N0c2NyVG9kbyBjb250YWluZWQgIFRPRE8KQEAgLTczMCw2OCArNzIzLDYwIEBACiBlbmRpZiAiIEdob3N0U2NyaXB0IGhpZ2hsaWdodGluZwogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9wb3N0c2NyX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3Bvc3RzY3Jfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBwb3N0c2NyQ29tbWVudCAgICAgICAgIENvbW1lbnQKK0hpTGluayBwb3N0c2NyQ29tbWVudCAgICAgICAgIENvbW1lbnQKIAotICBIaUxpbmsgcG9zdHNjckNvbnN0YW50ICAgICAgICBDb25zdGFudAotICBIaUxpbmsgcG9zdHNjclN0cmluZyAgICAgICAgICBTdHJpbmcKLSAgSGlMaW5rIHBvc3RzY3JBU0NJSVN0cmluZyAgICAgcG9zdHNjclN0cmluZwotICBIaUxpbmsgcG9zdHNjckhleFN0cmluZyAgICAgICBwb3N0c2NyU3RyaW5nCi0gIEhpTGluayBwb3N0c2NyQVNDSUk4NVN0cmluZyAgIHBvc3RzY3JTdHJpbmcKLSAgSGlMaW5rIHBvc3RzY3JOdW1iZXIgICAgICAgICAgTnVtYmVyCi0gIEhpTGluayBwb3N0c2NySW50ZWdlciAgICAgICAgIHBvc3RzY3JOdW1iZXIKLSAgSGlMaW5rIHBvc3RzY3JIZXggICAgICAgICAgICAgcG9zdHNjck51bWJlcgotICBIaUxpbmsgcG9zdHNjclJhZGl4ICAgICAgICAgICBwb3N0c2NyTnVtYmVyCi0gIEhpTGluayBwb3N0c2NyRmxvYXQgICAgICAgICAgIEZsb2F0Ci0gIEhpTGluayBwb3N0c2NyQm9vbGVhbiAgICAgICAgIEJvb2xlYW4KK0hpTGluayBwb3N0c2NyQ29uc3RhbnQgICAgICAgIENvbnN0YW50CitIaUxpbmsgcG9zdHNjclN0cmluZyAgICAgICAgICBTdHJpbmcKK0hpTGluayBwb3N0c2NyQVNDSUlTdHJpbmcgICAgIHBvc3RzY3JTdHJpbmcKK0hpTGluayBwb3N0c2NySGV4U3RyaW5nICAgICAgIHBvc3RzY3JTdHJpbmcKK0hpTGluayBwb3N0c2NyQVNDSUk4NVN0cmluZyAgIHBvc3RzY3JTdHJpbmcKK0hpTGluayBwb3N0c2NyTnVtYmVyICAgICAgICAgIE51bWJlcgorSGlMaW5rIHBvc3RzY3JJbnRlZ2VyICAgICAgICAgcG9zdHNjck51bWJlcgorSGlMaW5rIHBvc3RzY3JIZXggICAgICAgICAgICAgcG9zdHNjck51bWJlcgorSGlMaW5rIHBvc3RzY3JSYWRpeCAgICAgICAgICAgcG9zdHNjck51bWJlcgorSGlMaW5rIHBvc3RzY3JGbG9hdCAgICAgICAgICAgRmxvYXQKK0hpTGluayBwb3N0c2NyQm9vbGVhbiAgICAgICAgIEJvb2xlYW4KIAotICBIaUxpbmsgcG9zdHNjcklkZW50aWZpZXIgICAgICBJZGVudGlmaWVyCi0gIEhpTGluayBwb3N0c2NyUHJvY2VkdXJlICAgICAgIEZ1bmN0aW9uCitIaUxpbmsgcG9zdHNjcklkZW50aWZpZXIgICAgICBJZGVudGlmaWVyCitIaUxpbmsgcG9zdHNjclByb2NlZHVyZSAgICAgICBGdW5jdGlvbgogCi0gIEhpTGluayBwb3N0c2NyTmFtZSAgICAgICAgICAgIFN0YXRlbWVudAotICBIaUxpbmsgcG9zdHNjckNvbmRpdGlvbmFsICAgICBDb25kaXRpb25hbAotICBIaUxpbmsgcG9zdHNjclJlcGVhdCAgICAgICAgICBSZXBlYXQKLSAgSGlMaW5rIHBvc3RzY3JMMlJlcGVhdCAgICAgICAgcG9zdHNjclJlcGVhdAotICBIaUxpbmsgcG9zdHNjck9wZXJhdG9yICAgICAgICBPcGVyYXRvcgotICBIaUxpbmsgcG9zdHNjckwxT3BlcmF0b3IgICAgICBwb3N0c2NyT3BlcmF0b3IKLSAgSGlMaW5rIHBvc3RzY3JMMk9wZXJhdG9yICAgICAgcG9zdHNjck9wZXJhdG9yCi0gIEhpTGluayBwb3N0c2NyTDNPcGVyYXRvciAgICAgIHBvc3RzY3JPcGVyYXRvcgotICBIaUxpbmsgcG9zdHNjck1hdGhPcGVyYXRvciAgICBwb3N0c2NyT3BlcmF0b3IKLSAgSGlMaW5rIHBvc3RzY3JMb2dpY2FsT3BlcmF0b3IgcG9zdHNjck9wZXJhdG9yCi0gIEhpTGluayBwb3N0c2NyQmluYXJ5T3BlcmF0b3IgIHBvc3RzY3JPcGVyYXRvcgorSGlMaW5rIHBvc3RzY3JOYW1lICAgICAgICAgICAgU3RhdGVtZW50CitIaUxpbmsgcG9zdHNjckNvbmRpdGlvbmFsICAgICBDb25kaXRpb25hbAorSGlMaW5rIHBvc3RzY3JSZXBlYXQgICAgICAgICAgUmVwZWF0CitIaUxpbmsgcG9zdHNjckwyUmVwZWF0ICAgICAgICBwb3N0c2NyUmVwZWF0CitIaUxpbmsgcG9zdHNjck9wZXJhdG9yICAgICAgICBPcGVyYXRvcgorSGlMaW5rIHBvc3RzY3JMMU9wZXJhdG9yICAgICAgcG9zdHNjck9wZXJhdG9yCitIaUxpbmsgcG9zdHNjckwyT3BlcmF0b3IgICAgICBwb3N0c2NyT3BlcmF0b3IKK0hpTGluayBwb3N0c2NyTDNPcGVyYXRvciAgICAgIHBvc3RzY3JPcGVyYXRvcgorSGlMaW5rIHBvc3RzY3JNYXRoT3BlcmF0b3IgICAgcG9zdHNjck9wZXJhdG9yCitIaUxpbmsgcG9zdHNjckxvZ2ljYWxPcGVyYXRvciBwb3N0c2NyT3BlcmF0b3IKK0hpTGluayBwb3N0c2NyQmluYXJ5T3BlcmF0b3IgIHBvc3RzY3JPcGVyYXRvcgogCi0gIEhpTGluayBwb3N0c2NyRFNDQ29tbWVudCAgICAgIFNwZWNpYWxDb21tZW50Ci0gIEhpTGluayBwb3N0c2NyU3BlY2lhbENoYXIgICAgIFNwZWNpYWxDaGFyCitIaUxpbmsgcG9zdHNjckRTQ0NvbW1lbnQgICAgICBTcGVjaWFsQ29tbWVudAorSGlMaW5rIHBvc3RzY3JTcGVjaWFsQ2hhciAgICAgU3BlY2lhbENoYXIKIAotICBIaUxpbmsgcG9zdHNjclRvZG8gICAgICAgICAgICBUb2RvCitIaUxpbmsgcG9zdHNjclRvZG8gICAgICAgICAgICBUb2RvCiAKLSAgSGlMaW5rIHBvc3RzY3JFcnJvciAgICAgICAgICAgRXJyb3IKLSAgSGlMaW5rIHBvc3RzY3JTcGVjaWFsQ2hhckVycm9yIHBvc3RzY3JFcnJvcgotICBIaUxpbmsgcG9zdHNjckFTQ0lJODVDaGFyRXJyb3IgcG9zdHNjckVycm9yCi0gIEhpTGluayBwb3N0c2NySGV4Q2hhckVycm9yICAgIHBvc3RzY3JFcnJvcgotICBIaUxpbmsgcG9zdHNjckFTQ0lJU3RyaW5nRXJyb3IgcG9zdHNjckVycm9yCi0gIEhpTGluayBwb3N0c2NySWRlbnRpZmllckVycm9yIHBvc3RzY3JFcnJvcgorSGlMaW5rIHBvc3RzY3JFcnJvciAgICAgICAgICAgRXJyb3IKK0hpTGluayBwb3N0c2NyU3BlY2lhbENoYXJFcnJvciBwb3N0c2NyRXJyb3IKK0hpTGluayBwb3N0c2NyQVNDSUk4NUNoYXJFcnJvciBwb3N0c2NyRXJyb3IKK0hpTGluayBwb3N0c2NySGV4Q2hhckVycm9yICAgIHBvc3RzY3JFcnJvcgorSGlMaW5rIHBvc3RzY3JBU0NJSVN0cmluZ0Vycm9yIHBvc3RzY3JFcnJvcgorSGlMaW5rIHBvc3RzY3JJZGVudGlmaWVyRXJyb3IgcG9zdHNjckVycm9yCiAKLSAgaWYgZXhpc3RzKCJwb3N0c2NyX2dob3N0c2NyaXB0IikKLSAgICBIaUxpbmsgcG9zdHNjckdTT3BlcmF0b3IgICAgICBwb3N0c2NyT3BlcmF0b3IKLSAgICBIaUxpbmsgcG9zdHNjckdTTWF0aE9wZXJhdG9yICBwb3N0c2NyTWF0aE9wZXJhdG9yCi0gIGVsc2UKLSAgICBIaUxpbmsgcG9zdHNjckdTT3BlcmF0b3IgICAgICBwb3N0c2NyRXJyb3IKLSAgICBIaUxpbmsgcG9zdHNjckdTTWF0aE9wZXJhdG9yICBwb3N0c2NyRXJyb3IKLSAgZW5kaWYKLQotICBkZWxjb21tYW5kIEhpTGluaworaWYgZXhpc3RzKCJwb3N0c2NyX2dob3N0c2NyaXB0IikKK0hpTGluayBwb3N0c2NyR1NPcGVyYXRvciAgICAgIHBvc3RzY3JPcGVyYXRvcgorSGlMaW5rIHBvc3RzY3JHU01hdGhPcGVyYXRvciAgcG9zdHNjck1hdGhPcGVyYXRvcgorZWxzZQorSGlMaW5rIHBvc3RzY3JHU09wZXJhdG9yICAgICAgcG9zdHNjckVycm9yCitIaUxpbmsgcG9zdHNjckdTTWF0aE9wZXJhdG9yICBwb3N0c2NyRXJyb3IKIGVuZGlmCiAKK2RlbGNvbW1hbmQgSGlMaW5rCisKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInBvc3RzY3IiCiAKICIgdmltOiB0cz04CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9wb3YudmltIGIvcnVudGltZS9zeW50YXgvcG92LnZpbQppbmRleCA0YzFmZDk2Li44NTk1YmNiIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9wb3YudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3Bvdi52aW0KQEAgLTUsMTQgKzUsOCBAQAogIiBSZXF1aXJlZCBWaW0gVmVyc2lvbjogNi4wCiAKICIgU2V0dXAKLWlmIHZlcnNpb24gPj0gNjAwCi0gICIgUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi0gIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCi0gICAgZmluaXNoCi0gIGVuZGlmCi1lbHNlCi0gICIgQ3JvYWsgd2hlbiBhbiBvbGQgVmltIGlzIHNvdXJjaW5nIHVzLgotICBlY2hvICJTb3JyeSwgYnV0IHRoaXMgc3ludGF4IGZpbGUgcmVsaWVzIG9uIFZpbSA2IGZlYXR1cmVzLiAgRWl0aGVyIHVwZ3JhZGUgVmltIG9yIHVzZSBhIHZlcnNpb24gb2YgIiAuIGV4cGFuZCgiPHNmaWxlPjp0OnIiKSAuICIgc3ludGF4IGZpbGUgYXBwcm9wcmlhdGUgZm9yIFZpbSAiIC4gdmVyc2lvbi8xMDAgLiAiLiIgLiB2ZXJzaW9uICUxMDAgLiAiLiIKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3BvdmluaS52aW0gYi9ydW50aW1lL3N5bnRheC9wb3ZpbmkudmltCmluZGV4IDcyNmZlMWYuLmFjMWY4NzggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3BvdmluaS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcG92aW5pLnZpbQpAQCAtNSwxNCArNSw4IEBACiAiIFJlcXVpcmVkIFZpbSBWZXJzaW9uOiA2LjAKIAogIiBTZXR1cAotaWYgdmVyc2lvbiA+PSA2MDAKLSAgIiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLSAgaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKLSAgICBmaW5pc2gKLSAgZW5kaWYKLWVsc2UKLSAgIiBDcm9hayB3aGVuIGFuIG9sZCBWaW0gaXMgc291cmNpbmcgdXMuCi0gIGVjaG8gIlNvcnJ5LCBidXQgdGhpcyBzeW50YXggZmlsZSByZWxpZXMgb24gVmltIDYgZmVhdHVyZXMuICBFaXRoZXIgdXBncmFkZSBWaW0gb3IgdXNlYSB2ZXJzaW9uIG9mICIgLiBleHBhbmQoIjxzZmlsZT46dDpyIikgLiAiIHN5bnRheCBmaWxlIGFwcHJvcHJpYXRlIGZvciBWaW0gIiAuIHZlcnNpb24vMTAwIC4gIi4iIC4gdmVyc2lvbiAlMTAwIC4gIi4iCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9wcGQudmltIGIvcnVudGltZS9zeW50YXgvcHBkLnZpbQppbmRleCAxOTJmNzBjLi4zMWQzODQxIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9wcGQudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3BwZC52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglCam9lcm4gSmFja2UgPGJqYWNrZUBzdXNlLmRlPgogIiBMYXN0IENoYW5nZToJMjAwMS0xMC0wNgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMjEsMjcgKzE4LDE5IEBACiBzeW4gbWF0Y2gJcHBkQ29udHJhaW50cwkiXipVSUNvbnN0cmFpbnRzOiIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfYWhkbF9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9haGRsX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAogCi0gIEhpTGluayBwcGRDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBwcGREZWZpbmUJCVN0YXRlbWVudAotICBIaUxpbmsgcHBkVUkJCQlGdW5jdGlvbgotICBIaUxpbmsgcHBkVUlHcm91cAkJRnVuY3Rpb24KLSAgSGlMaW5rIHBwZERlZgkJCVN0cmluZwotICBIaUxpbmsgcHBkR1VJVGV4dAkJVHlwZQotICBIaUxpbmsgcHBkQ29udHJhaW50cwkJU3BlY2lhbAorSGlMaW5rIHBwZENvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBwcGREZWZpbmUJCVN0YXRlbWVudAorSGlMaW5rIHBwZFVJCQkJRnVuY3Rpb24KK0hpTGluayBwcGRVSUdyb3VwCQlGdW5jdGlvbgorSGlMaW5rIHBwZERlZgkJCVN0cmluZworSGlMaW5rIHBwZEdVSVRleHQJCVR5cGUKK0hpTGluayBwcGRDb250cmFpbnRzCQlTcGVjaWFsCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJwcGQiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Bwd2l6LnZpbSBiL3J1bnRpbWUvc3ludGF4L3Bwd2l6LnZpbQppbmRleCBkM2Q3YjNhLi41OTliZjBiIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9wcHdpei52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcHB3aXoudmltCkBAIC02LDExICs2LDggQEAKICIgRmlsZW5hbWU6ICAgICBwcHdpei52aW0KIAogIiBSZW1vdmUgb2xkIHN5bnRheCBzdHVmZgotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTYzLDMzICs2MCwyNSBAQAogc3luIGNsdXN0ZXIgcHB3aXpBcmdWYWwgYWRkPXBwd2l6U3RyaW5nLHBwd2l6SW50ZWdlcgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9wcHdpel9zeW5faW5pdHMiKQotICAgIGlmIHZlcnNpb24gPCA1MDgKLQkJbGV0IGRpZF9wcHdpel9zeW5faW5pdHMgPSAxCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0JZWxzZQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgICBIaUxpbmsgcHB3aXpTcGVjaWFsICBTcGVjaWFsCi0gICAgSGlMaW5rIHBwd2l6RXF1YWwgICAgcHB3aXpTcGVjaWFsCi0gICAgSGlMaW5rIHBwd2l6T3BlcmF0b3IgcHB3aXpTcGVjaWFsCi0gICAgSGlMaW5rIHBwd2l6Q29tbWVudCAgQ29tbWVudAotICAgIEhpTGluayBwcHdpekRlZiAgICAgIFByZVByb2MKLSAgICBIaUxpbmsgcHB3aXpNYWNybyAgICBTdGF0ZW1lbnQKLSAgICBIaUxpbmsgcHB3aXpBcmcgICAgICBJZGVudGlmaWVyCi0gICAgSGlMaW5rIHBwd2l6U3RkVmFyICAgSWRlbnRpZmllcgotICAgIEhpTGluayBwcHdpelJleHhWYXIgIElkZW50aWZpZXIKLSAgICBIaUxpbmsgcHB3aXpTdHJpbmcgICBDb25zdGFudAotICAgIEhpTGluayBwcHdpekludGVnZXIgIENvbnN0YW50Ci0gICAgSGlMaW5rIHBwd2l6Q29udCAgICAgcHB3aXpTcGVjaWFsCi0gICAgSGlMaW5rIHBwd2l6RXJyb3IgICAgRXJyb3IKLSAgICBIaUxpbmsgcHB3aXpIVE1MICAgICBUeXBlCitIaUxpbmsgcHB3aXpTcGVjaWFsICBTcGVjaWFsCitIaUxpbmsgcHB3aXpFcXVhbCAgICBwcHdpelNwZWNpYWwKK0hpTGluayBwcHdpek9wZXJhdG9yIHBwd2l6U3BlY2lhbAorSGlMaW5rIHBwd2l6Q29tbWVudCAgQ29tbWVudAorSGlMaW5rIHBwd2l6RGVmICAgICAgUHJlUHJvYworSGlMaW5rIHBwd2l6TWFjcm8gICAgU3RhdGVtZW50CitIaUxpbmsgcHB3aXpBcmcgICAgICBJZGVudGlmaWVyCitIaUxpbmsgcHB3aXpTdGRWYXIgICBJZGVudGlmaWVyCitIaUxpbmsgcHB3aXpSZXh4VmFyICBJZGVudGlmaWVyCitIaUxpbmsgcHB3aXpTdHJpbmcgICBDb25zdGFudAorSGlMaW5rIHBwd2l6SW50ZWdlciAgQ29uc3RhbnQKK0hpTGluayBwcHdpekNvbnQgICAgIHBwd2l6U3BlY2lhbAorSGlMaW5rIHBwd2l6RXJyb3IgICAgRXJyb3IKK0hpTGluayBwcHdpekhUTUwgICAgIFR5cGUKIAotICAgIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicHB3aXoiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3ByZXNjcmliZS52aW0gYi9ydW50aW1lL3N5bnRheC9wcmVzY3JpYmUudmltCmluZGV4IGQ4OWVlMzUuLjA1ZjkxNjIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3ByZXNjcmliZS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcHJlc2NyaWJlLnZpbQpAQCAtNCwxMSArNCw4IEBACiAiIFVSTDogICAgICAgICAgaHR0cDovL3d3dy5oYW1wZnQuZGUvdmltL3N5bnRheC9wcmVzY3JpYmUudmltCiAiIExhc3QgQ2hhbmdlOgkyMDA1IE1hciAwNAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNDQsMjUgKzQxLDE3IEBACiBzeW4gcmVnaW9uICBwcmVzY3JpYmVDb21tZW50CXN0YXJ0PStDTU5UKyBlbmQ9KzsrCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3ByZXNjcmliZV9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9wcmVzY3JpYmVfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBwcmVzY3JpYmVTcGVjaWFsCQlQcmVQcm9jCi0gIEhpTGluayBwcmVzY3JpYmVTdGF0ZW1lbnQJCVN0YXRlbWVudAotICBIaUxpbmsgcHJlc2NyaWJlTnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIHByZXNjcmliZUNTRVRBcmcJCVN0cmluZwotICBIaUxpbmsgcHJlc2NyaWJlRlJQT0FyZwkJU3RyaW5nCi0gIEhpTGluayBwcmVzY3JpYmVDb21tZW50CQlDb21tZW50CitIaUxpbmsgcHJlc2NyaWJlU3BlY2lhbAkJUHJlUHJvYworSGlMaW5rIHByZXNjcmliZVN0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsgcHJlc2NyaWJlTnVtYmVyCQlOdW1iZXIKK0hpTGluayBwcmVzY3JpYmVDU0VUQXJnCQlTdHJpbmcKK0hpTGluayBwcmVzY3JpYmVGUlBPQXJnCQlTdHJpbmcKK0hpTGluayBwcmVzY3JpYmVDb21tZW50CQlDb21tZW50CiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJwcmVzY3JpYmUiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Byb2NtYWlsLnZpbSBiL3J1bnRpbWUvc3ludGF4L3Byb2NtYWlsLnZpbQppbmRleCBjMmZmYTM5Li45MjAyZGJmIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9wcm9jbWFpbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcHJvY21haWwudmltCkBAIC00LDExICs0LDggQEAKICIgTGFzdCBDaGFuZ2U6CTIwMDMgQXVnIDE0CiAiIEF1dGhvcjoJU29uaWEgSGVpbWFubgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMzMsMzQgKzMwLDI2IEBACiBzeW4gcmVnaW9uIHByb2NtYWlsUmVjaXBlIHN0YXJ0PSteXHMqOi4qJCsgZW5kPSteXHMqXCgkXHx9XCkrbWU9ZS0xIGNvbnRhaW5zPXByb2NtYWlsQ29tbWVudCxwcm9jbWFpbENvbmRpdGlvbixwcm9jbWFpbEFjdGlvbkZvbGRlcixwcm9jbWFpbEFjdGlvblZhcmlhYmxlLHByb2NtYWlsQWN0aW9uRm9yd2FyZCxwcm9jbWFpbEFjdGlvblBpcGUscHJvY21haWxBY3Rpb25OZXN0ZWQscHJvY21haWxWYXJEZWNsUmVnaW9uCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3Byb2NtYWlsX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3Byb2NtYWlsX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgcHJvY21haWxDb21tZW50IENvbW1lbnQKLSAgSGlMaW5rIHByb2NtYWlsVG9kbyAgICBUb2RvCitIaUxpbmsgcHJvY21haWxDb21tZW50IENvbW1lbnQKK0hpTGluayBwcm9jbWFpbFRvZG8gICAgVG9kbwogCi0gIEhpTGluayBwcm9jbWFpbFJlY2lwZSAgIFN0YXRlbWVudAotICAiSGlMaW5rIHByb2NtYWlsQ29uZGl0aW9uICAgU3RhdGVtZW50CitIaUxpbmsgcHJvY21haWxSZWNpcGUgICBTdGF0ZW1lbnQKKyJIaUxpbmsgcHJvY21haWxDb25kaXRpb24gICBTdGF0ZW1lbnQKIAotICBIaUxpbmsgcHJvY21haWxBY3Rpb25Gb2xkZXIJcHJvY21haWxBY3Rpb24KLSAgSGlMaW5rIHByb2NtYWlsQWN0aW9uVmFyaWFibGUgcHJvY21haWxBY3Rpb24KLSAgSGlMaW5rIHByb2NtYWlsQWN0aW9uRm9yd2FyZAlwcm9jbWFpbEFjdGlvbgotICBIaUxpbmsgcHJvY21haWxBY3Rpb25QaXBlCXByb2NtYWlsQWN0aW9uCi0gIEhpTGluayBwcm9jbWFpbEFjdGlvbgkJRnVuY3Rpb24KLSAgSGlMaW5rIHByb2NtYWlsVmFyCQlJZGVudGlmaWVyCi0gIEhpTGluayBwcm9jbWFpbFZhckRlY2wJSWRlbnRpZmllcgorSGlMaW5rIHByb2NtYWlsQWN0aW9uRm9sZGVyCXByb2NtYWlsQWN0aW9uCitIaUxpbmsgcHJvY21haWxBY3Rpb25WYXJpYWJsZSBwcm9jbWFpbEFjdGlvbgorSGlMaW5rIHByb2NtYWlsQWN0aW9uRm9yd2FyZAlwcm9jbWFpbEFjdGlvbgorSGlMaW5rIHByb2NtYWlsQWN0aW9uUGlwZQlwcm9jbWFpbEFjdGlvbgorSGlMaW5rIHByb2NtYWlsQWN0aW9uCQlGdW5jdGlvbgorSGlMaW5rIHByb2NtYWlsVmFyCQlJZGVudGlmaWVyCitIaUxpbmsgcHJvY21haWxWYXJEZWNsCUlkZW50aWZpZXIKIAotICBIaUxpbmsgcHJvY21haWxTdHJpbmcgU3RyaW5nCitIaUxpbmsgcHJvY21haWxTdHJpbmcgU3RyaW5nCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJwcm9jbWFpbCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcHJvZ3Jlc3MudmltIGIvcnVudGltZS9zeW50YXgvcHJvZ3Jlc3MudmltCmluZGV4IDg1YTU0YTYuLjlmZjUwNjkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Byb2dyZXNzLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9wcm9ncmVzcy52aW0KQEAgLTExLDIyICsxMSwxNSBAQAogIiBWZXJzaW9uOiAgICAgICAgICAgICAgMTMKICIgTGFzdCBDaGFuZ2U6CQlOb3YgMTEgMjAxMgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0Jc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogCWZpbmlzaAogZW5kaWYKIAogbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCiBzZXQgY3BvJnZpbQogCi1pZiB2ZXJzaW9uID49IDYwMAotICBzZXRsb2NhbCBpc2tleXdvcmQ9QCw0OC01NyxfLC0sISwjLCQsJQotZWxzZQotICBzZXQgaXNrZXl3b3JkPUAsNDgtNTcsXywtLCEsIywkLCUKLWVuZGlmCitzZXRsb2NhbCBpc2tleXdvcmQ9QCw0OC01NyxfLC0sISwjLCQsJQogCiAiIFRoZSBQcm9ncmVzcyBlZGl0b3IgZG9lc24ndCBjb3BlIHdpdGggdGFicyB2ZXJ5IHdlbGwuCiBzZXQgZXhwYW5kdGFiCkBAIC0yODIsNDQgKzI3NSwzNiBAQAogc3luIHN5bmMgbGluZXM9ODAwCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3Byb2dyZXNzX3N5bnRheF9pbml0cyIpCi0JaWYgdmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX3Byb2dyZXNzX3N5bnRheF9pbml0cyA9IDEKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLQllbHNlCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotCWVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotCSIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlci4KLQlIaUxpbmsgUHJvZ3Jlc3NCeXRlCQlOdW1iZXIKLQlIaUxpbmsgUHJvZ3Jlc3NDYXNlCQlSZXBlYXQKLQlIaUxpbmsgUHJvZ3Jlc3NDb21tZW50CQlDb21tZW50Ci0JSGlMaW5rIFByb2dyZXNzQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLQlIaUxpbmsgUHJvZ3Jlc3NEZWJ1ZwkJRGVidWcKLQlIaUxpbmsgUHJvZ3Jlc3NEbwkJUmVwZWF0Ci0JSGlMaW5rIFByb2dyZXNzRW5kRXJyb3IJCUVycm9yCi0JSGlMaW5rIFByb2dyZXNzRm9yCQlSZXBlYXQKLQlIaUxpbmsgUHJvZ3Jlc3NGdW5jdGlvbgkJUHJvY2VkdXJlCi0JSGlMaW5rIFByb2dyZXNzSWRlbnRpZmllcglJZGVudGlmaWVyCi0JSGlMaW5rIFByb2dyZXNzSW5jbHVkZQkJSW5jbHVkZQotCUhpTGluayBQcm9ncmVzc01hdHJpeERlbGltaXRlcglJZGVudGlmaWVyCi0JSGlMaW5rIFByb2dyZXNzTnVtYmVyCQlOdW1iZXIKLQlIaUxpbmsgUHJvZ3Jlc3NPcGVyYXRvcgkJT3BlcmF0b3IKLQlIaUxpbmsgUHJvZ3Jlc3NQcmVQcm9jCQlQcmVQcm9jCi0JSGlMaW5rIFByb2dyZXNzUHJvY2VkdXJlCVByb2NlZHVyZQotCUhpTGluayBQcm9ncmVzc1F1b3RlCQlEZWxpbWl0ZXIKLQlIaUxpbmsgUHJvZ3Jlc3NSZXBlYXQJCVJlcGVhdAotCUhpTGluayBQcm9ncmVzc1Jlc2VydmVkCQlTdGF0ZW1lbnQKLQlIaUxpbmsgUHJvZ3Jlc3NTcGFjZUVycm9yCUVycm9yCi0JSGlMaW5rIFByb2dyZXNzU3RyaW5nCQlTdHJpbmcKLQlIaUxpbmsgUHJvZ3Jlc3NUb2RvCQlUb2RvCi0JSGlMaW5rIFByb2dyZXNzVHlwZQkJU3RhdGVtZW50Ci0JSGlMaW5rIFByb2dyZXNzU2hvd1RhYgkJRXJyb3IKKyIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlci4KK0hpTGluayBQcm9ncmVzc0J5dGUJCU51bWJlcgorSGlMaW5rIFByb2dyZXNzQ2FzZQkJUmVwZWF0CitIaUxpbmsgUHJvZ3Jlc3NDb21tZW50CQlDb21tZW50CitIaUxpbmsgUHJvZ3Jlc3NDb25kaXRpb25hbAlDb25kaXRpb25hbAorSGlMaW5rIFByb2dyZXNzRGVidWcJCURlYnVnCitIaUxpbmsgUHJvZ3Jlc3NEbwkJUmVwZWF0CitIaUxpbmsgUHJvZ3Jlc3NFbmRFcnJvcgkJRXJyb3IKK0hpTGluayBQcm9ncmVzc0ZvcgkJUmVwZWF0CitIaUxpbmsgUHJvZ3Jlc3NGdW5jdGlvbgkJUHJvY2VkdXJlCitIaUxpbmsgUHJvZ3Jlc3NJZGVudGlmaWVyCUlkZW50aWZpZXIKK0hpTGluayBQcm9ncmVzc0luY2x1ZGUJCUluY2x1ZGUKK0hpTGluayBQcm9ncmVzc01hdHJpeERlbGltaXRlcglJZGVudGlmaWVyCitIaUxpbmsgUHJvZ3Jlc3NOdW1iZXIJCU51bWJlcgorSGlMaW5rIFByb2dyZXNzT3BlcmF0b3IJCU9wZXJhdG9yCitIaUxpbmsgUHJvZ3Jlc3NQcmVQcm9jCQlQcmVQcm9jCitIaUxpbmsgUHJvZ3Jlc3NQcm9jZWR1cmUJUHJvY2VkdXJlCitIaUxpbmsgUHJvZ3Jlc3NRdW90ZQkJRGVsaW1pdGVyCitIaUxpbmsgUHJvZ3Jlc3NSZXBlYXQJCVJlcGVhdAorSGlMaW5rIFByb2dyZXNzUmVzZXJ2ZWQJCVN0YXRlbWVudAorSGlMaW5rIFByb2dyZXNzU3BhY2VFcnJvcglFcnJvcgorSGlMaW5rIFByb2dyZXNzU3RyaW5nCQlTdHJpbmcKK0hpTGluayBQcm9ncmVzc1RvZG8JCVRvZG8KK0hpTGluayBQcm9ncmVzc1R5cGUJCVN0YXRlbWVudAorSGlMaW5rIFByb2dyZXNzU2hvd1RhYgkJRXJyb3IKIAotCWRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicHJvZ3Jlc3MiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Byb2xvZy52aW0gYi9ydW50aW1lL3N5bnRheC9wcm9sb2cudmltCmluZGV4IGY1ZjBlNjcuLjIxMzEzMDggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Byb2xvZy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcHJvbG9nLnZpbQpAQCAtOCwxMCArOCw4IEBACiAiIElmIHRoZSAicHJvbG9nX2hpZ2hsaWdodGluZ19jbGVhbiIgdmFyaWFibGUgZXhpc3RzLCBpdCBpcyByYXRoZXIgc3BhcnNlLgogIiBPdGhlcndpc2UgeW91IGdldCBtb3JlIGhpZ2hsaWdodGluZy4KIAotIiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC03OCw0NiArNzYsMzggQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9wcm9sb2dfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfcHJvbG9nX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAiIFRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSAgSGlMaW5rIHByb2xvZ0NvbW1lbnQgICAgICAgICAgQ29tbWVudAotICBIaUxpbmsgcHJvbG9nQ0NvbW1lbnQgICAgICAgICBDb21tZW50Ci0gIEhpTGluayBwcm9sb2dDaGFyQ29kZSAgICAgICAgIFNwZWNpYWwKKyIgVGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgorSGlMaW5rIHByb2xvZ0NvbW1lbnQgICAgICAgICAgQ29tbWVudAorSGlMaW5rIHByb2xvZ0NDb21tZW50ICAgICAgICAgQ29tbWVudAorSGlMaW5rIHByb2xvZ0NoYXJDb2RlICAgICAgICAgU3BlY2lhbAogCi0gIGlmIGV4aXN0cyAoInByb2xvZ19oaWdobGlnaHRpbmdfY2xlYW4iKQoraWYgZXhpc3RzICgicHJvbG9nX2hpZ2hsaWdodGluZ19jbGVhbiIpCiAKLSAgICBIaUxpbmsgcHJvbG9nS2V5d29yZCAgICAgICAgU3RhdGVtZW50Ci0gICAgSGlMaW5rIHByb2xvZ0NsYXVzZUhlYWQgICAgIFN0YXRlbWVudAotICAgIEhpTGluayBwcm9sb2dDbGF1c2UgTm9ybWFsCitIaUxpbmsgcHJvbG9nS2V5d29yZCAgICAgICAgU3RhdGVtZW50CitIaUxpbmsgcHJvbG9nQ2xhdXNlSGVhZCAgICAgU3RhdGVtZW50CitIaUxpbmsgcHJvbG9nQ2xhdXNlIE5vcm1hbAogCi0gIGVsc2UKK2Vsc2UKIAotICAgIEhpTGluayBwcm9sb2dLZXl3b3JkICAgICAgICBLZXl3b3JkCi0gICAgSGlMaW5rIHByb2xvZ0NsYXVzZUhlYWQgICAgIENvbnN0YW50Ci0gICAgSGlMaW5rIHByb2xvZ0NsYXVzZSBOb3JtYWwKLSAgICBIaUxpbmsgcHJvbG9nUXVlc3Rpb24gICAgICAgUHJlUHJvYwotICAgIEhpTGluayBwcm9sb2dTcGVjaWFsQ2hhcmFjdGVyIFNwZWNpYWwKLSAgICBIaUxpbmsgcHJvbG9nTnVtYmVyICAgICAgICAgTnVtYmVyCi0gICAgSGlMaW5rIHByb2xvZ0FzSXMgICAgICAgICAgIE5vcm1hbAotICAgIEhpTGluayBwcm9sb2dDb21tZW50RXJyb3IgICBFcnJvcgotICAgIEhpTGluayBwcm9sb2dBdG9tICAgICAgICAgICBTdHJpbmcKLSAgICBIaUxpbmsgcHJvbG9nU3RyaW5nICAgICAgICAgU3RyaW5nCi0gICAgSGlMaW5rIHByb2xvZ09wZXJhdG9yICAgICAgIE9wZXJhdG9yCitIaUxpbmsgcHJvbG9nS2V5d29yZCAgICAgICAgS2V5d29yZAorSGlMaW5rIHByb2xvZ0NsYXVzZUhlYWQgICAgIENvbnN0YW50CitIaUxpbmsgcHJvbG9nQ2xhdXNlIE5vcm1hbAorSGlMaW5rIHByb2xvZ1F1ZXN0aW9uICAgICAgIFByZVByb2MKK0hpTGluayBwcm9sb2dTcGVjaWFsQ2hhcmFjdGVyIFNwZWNpYWwKK0hpTGluayBwcm9sb2dOdW1iZXIgICAgICAgICBOdW1iZXIKK0hpTGluayBwcm9sb2dBc0lzICAgICAgICAgICBOb3JtYWwKK0hpTGluayBwcm9sb2dDb21tZW50RXJyb3IgICBFcnJvcgorSGlMaW5rIHByb2xvZ0F0b20gICAgICAgICAgIFN0cmluZworSGlMaW5rIHByb2xvZ1N0cmluZyAgICAgICAgIFN0cmluZworSGlMaW5rIHByb2xvZ09wZXJhdG9yICAgICAgIE9wZXJhdG9yCiAKLSAgZW5kaWYKLQotICBkZWxjb21tYW5kIEhpTGluawogZW5kaWYKIAorZGVsY29tbWFuZCBIaUxpbmsKKwogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicHJvbG9nIgogCiAiIHZpbTogdHM9OApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcHJvbWVsYS52aW0gYi9ydW50aW1lL3N5bnRheC9wcm9tZWxhLnZpbQppbmRleCBlODEyYmMyLi5hZGQ0NTE0IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9wcm9tZWxhLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9wcm9tZWxhLnZpbQpAQCAtNSwxMSArNSw4IEBACiAiIExhc3QgQ2hhbmdlOgkJVGh1IEF1ZyA3IDIxOjIyOjQ4IENFU1QgMjAwOAogIiBWZXJzaW9uOgkJCTAuNQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcHJvdG8udmltIGIvcnVudGltZS9zeW50YXgvcHJvdG8udmltCmluZGV4IDRkNmE3N2UuLjQ2MTVlMGMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Byb3RvLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9wcm90by52aW0KQEAgLTIyLDkgKzIyLDggQEAKICIKICIgaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL3Byb3RvYnVmLwogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9wc2YudmltIGIvcnVudGltZS9zeW50YXgvcHNmLnZpbQppbmRleCAyYjM3NmY5Li5lMDU5ZmY5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9wc2YudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3BzZi52aW0KQEAgLTQsMTAgKzQsOCBAQAogIiBNYWludGFpbmVyOglSZXggQmFyemVlIDxyZXhfYmFyemVlQGhwLmNvbT4KICIgTGFzdCBjaGFuZ2U6CTI1IEFwciAyMDAxCiAKLWlmIHZlcnNpb24gPCA2MDAKLSAgIiBSZW1vdmUgYW55IG9sZCBzeW50YXggc3R1ZmYgaGFuZ2luZyBhcm91bmQKLSAgc3luIGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTczLDI3ICs3MSwxOSBAQAogCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3BzZl9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9wc2Zfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBwc2ZPYmplY3QgICAgICAgU3RhdGVtZW50Ci0gIEhpTGluayBwc2ZBdHRyaWIgICAgICAgVHlwZQotICBIaUxpbmsgcHNmUXVvdFN0cmluZyAgIFN0cmluZwotICBIaUxpbmsgcHNmT2JqVGFnICAgICAgIElkZW50aWZpZXIKLSAgSGlMaW5rIHBzZkF0dEFiYnJldiAgICBQcmVQcm9jCi0gIEhpTGluayBwc2ZPYmpUYWdzICAgICAgSWRlbnRpZmllcgorSGlMaW5rIHBzZk9iamVjdCAgICAgICBTdGF0ZW1lbnQKK0hpTGluayBwc2ZBdHRyaWIgICAgICAgVHlwZQorSGlMaW5rIHBzZlF1b3RTdHJpbmcgICBTdHJpbmcKK0hpTGluayBwc2ZPYmpUYWcgICAgICAgSWRlbnRpZmllcgorSGlMaW5rIHBzZkF0dEFiYnJldiAgICBQcmVQcm9jCitIaUxpbmsgcHNmT2JqVGFncyAgICAgIElkZW50aWZpZXIKIAotICBIaUxpbmsgcHNmQ29tbWVudCAgICAgIENvbW1lbnQKK0hpTGluayBwc2ZDb21tZW50ICAgICAgQ29tbWVudAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogIiBMb25nIGRlc2NyaXB0aW9ucyBhbmQgY29weXJpZ2h0cyBjb25mdXNlIHRoZSBzeW50YXggaGlnaGxpZ2h0aW5nLCBzbwogIiBmb3JjZSB2aW0gdG8gYmFja3VwIGF0IGxlYXN0IDEwMCBsaW5lcyBiZWZvcmUgdGhlIHRvcCB2aXNpYmxlIGxpbmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3B0Y2FwLnZpbSBiL3J1bnRpbWUvc3ludGF4L3B0Y2FwLnZpbQppbmRleCA0NTU5MGNmLi42ZDNjNDYwIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9wdGNhcC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcHRjYXAudmltCkBAIC00LDExICs0LDggQEAKICIgVVJMOgkJaHR0cDovL2ZvbGsudWlvLm5vL2hha29ucmsvdmltL3N5bnRheC9wdGNhcC52aW0KICIgTGFzdCBDaGFuZ2U6CTIwMDEgTWF5IDE1CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3luIGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICAgIGZpbmlzaAogZW5kaWYKIApAQCAtNzMsMzQgKzcwLDI3IEBACiBzeW4gcmVnaW9uIHB0Y2FwU3RyaW5nCSAgICBtYXRjaGdyb3VwPXB0Y2FwT3BlcmF0b3Igc3RhcnQ9Ij0iIHNraXA9IlteXFxdXChcXFxcXCkqXFw6IiBtYXRjaGdyb3VwPXB0Y2FwRGVsaW1pdGVyIGVuZD0iOiJtZT1lLTEgbWF0Y2hncm91cD1OT05FIGVuZD0iW15cXF1cKFxcXFxcKSpbXlxcXSQiIGVuZD0iXiQiIGNvbnRhaW5zPXB0Y2FwRXNjYXBlZENoYXIscHRjYXBMaW5lQ29udCBrZWVwZW5kIGNvbnRhaW5lZAogc3luIHJlZ2lvbiBwdGNhcENvbW1lbnQJICAgIHN0YXJ0PSJeXHMqIyIgZW5kPSIkIiBjb250YWlucz1wdGNhcExlYWRCbGFuawogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfcHRjYXBfc3ludGF4X2luaXRzIikKLSAgICBpZiB2ZXJzaW9uIDwgNTA4Ci0JbGV0IGRpZF9wdGNhcF9zeW50YXhfaW5pdHMgPSAxCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgICBlbHNlCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gICAgZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICAgSGlMaW5rIHB0Y2FwQ29tbWVudAkJQ29tbWVudAotICAgIEhpTGluayBwdGNhcERlbGltaXRlcglEZWxpbWl0ZXIKLSAgICAiIFRoZSBoaWdobGlnaHRpbmcgb2YgInB0Y2FwRW50cnkiIHNob3VsZCBhbHdheXMgYmUgb3ZlcnJpZGRlbiBieQotICAgICIgaXRzIGNvbnRlbnRzLCBzbyBJIHVzZSBUb2RvIGhpZ2hsaWdodGluZyB0byBpbmRpY2F0ZSB0aGF0IHRoZXJlCi0gICAgIiBpcyB3b3JrIHRvIGJlIGRvbmUgd2l0aCB0aGUgc3ludGF4IGZpbGUgaWYgeW91IGNhbiBzZWUgaXQgOi0pCi0gICAgSGlMaW5rIHB0Y2FwRW50cnkJCVRvZG8KLSAgICBIaUxpbmsgcHRjYXBFcnJvcgkJRXJyb3IKLSAgICBIaUxpbmsgcHRjYXBFc2NhcGVkQ2hhcglTcGVjaWFsQ2hhcgotICAgIEhpTGluayBwdGNhcEZpZWxkCQlUeXBlCi0gICAgSGlMaW5rIHB0Y2FwTGVhZEJsYW5rCU5PTkUKLSAgICBIaUxpbmsgcHRjYXBMaW5lQ29udAlTcGVjaWFsCi0gICAgSGlMaW5rIHB0Y2FwTmFtZXMJCUxhYmVsCi0gICAgSGlMaW5rIHB0Y2FwTnVtYmVyCQlOT05FCi0gICAgSGlMaW5rIHB0Y2FwTnVtYmVyRXJyb3IJRXJyb3IKLSAgICBIaUxpbmsgcHRjYXBPcGVyYXRvcglPcGVyYXRvcgotICAgIEhpTGluayBwdGNhcFNwZWNpYWxDYXAJVHlwZQotICAgIEhpTGluayBwdGNhcFN0cmluZwkJTk9ORQorSGlMaW5rIHB0Y2FwQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHB0Y2FwRGVsaW1pdGVyCURlbGltaXRlcgorIiBUaGUgaGlnaGxpZ2h0aW5nIG9mICJwdGNhcEVudHJ5IiBzaG91bGQgYWx3YXlzIGJlIG92ZXJyaWRkZW4gYnkKKyIgaXRzIGNvbnRlbnRzLCBzbyBJIHVzZSBUb2RvIGhpZ2hsaWdodGluZyB0byBpbmRpY2F0ZSB0aGF0IHRoZXJlCisiIGlzIHdvcmsgdG8gYmUgZG9uZSB3aXRoIHRoZSBzeW50YXggZmlsZSBpZiB5b3UgY2FuIHNlZSBpdCA6LSkKK0hpTGluayBwdGNhcEVudHJ5CQlUb2RvCitIaUxpbmsgcHRjYXBFcnJvcgkJRXJyb3IKK0hpTGluayBwdGNhcEVzY2FwZWRDaGFyCVNwZWNpYWxDaGFyCitIaUxpbmsgcHRjYXBGaWVsZAkJVHlwZQorSGlMaW5rIHB0Y2FwTGVhZEJsYW5rCU5PTkUKK0hpTGluayBwdGNhcExpbmVDb250CVNwZWNpYWwKK0hpTGluayBwdGNhcE5hbWVzCQlMYWJlbAorSGlMaW5rIHB0Y2FwTnVtYmVyCQlOT05FCitIaUxpbmsgcHRjYXBOdW1iZXJFcnJvcglFcnJvcgorSGlMaW5rIHB0Y2FwT3BlcmF0b3IJT3BlcmF0b3IKK0hpTGluayBwdGNhcFNwZWNpYWxDYXAJVHlwZQorSGlMaW5rIHB0Y2FwU3RyaW5nCQlOT05FCiAKLSAgICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInB0Y2FwIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9wdXJpZnlsb2cudmltIGIvcnVudGltZS9zeW50YXgvcHVyaWZ5bG9nLnZpbQppbmRleCA4YmNmYjRiLi5iNTZjYTZhIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9wdXJpZnlsb2cudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3B1cmlmeWxvZy52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglHYXV0YW0gSC4gTXVkdW51cmkgPGdtdWR1bnVyQGluZm9ybWF0aWNhLmNvbT4KICIgTGFzdCBDaGFuZ2U6CTIwMDMgTWF5IDExCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC01Nyw2MiArNTQsNTQgQEAKIHN5biBtYXRjaCBwdXJpZnlMb2daUFcgIl5aUFc6LiokIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9wdXJpZnlMb2dfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfcHVyaWZ5TG9nX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotCUhpTGluayBwdXJpZnlMb2dGSVUgcHVyaWZ5TG9nSW5mb3JtYXRpb25hbAotCUhpTGluayBwdXJpZnlMb2dNQUYgcHVyaWZ5TG9nSW5mb3JtYXRpb25hbAotCUhpTGluayBwdXJpZnlMb2dNSVUgcHVyaWZ5TG9nSW5mb3JtYXRpb25hbAotCUhpTGluayBwdXJpZnlMb2dTSUcgcHVyaWZ5TG9nSW5mb3JtYXRpb25hbAotCUhpTGluayBwdXJpZnlMb2dXUEYgcHVyaWZ5TG9nSW5mb3JtYXRpb25hbAotCUhpTGluayBwdXJpZnlMb2dXUE0gcHVyaWZ5TG9nSW5mb3JtYXRpb25hbAotCUhpTGluayBwdXJpZnlMb2dXUE4gcHVyaWZ5TG9nSW5mb3JtYXRpb25hbAotCUhpTGluayBwdXJpZnlMb2dXUFIgcHVyaWZ5TG9nSW5mb3JtYXRpb25hbAotCUhpTGluayBwdXJpZnlMb2dXUFcgcHVyaWZ5TG9nSW5mb3JtYXRpb25hbAotCUhpTGluayBwdXJpZnlMb2dXUFggcHVyaWZ5TG9nSW5mb3JtYXRpb25hbAorSGlMaW5rIHB1cmlmeUxvZ0ZJVSBwdXJpZnlMb2dJbmZvcm1hdGlvbmFsCitIaUxpbmsgcHVyaWZ5TG9nTUFGIHB1cmlmeUxvZ0luZm9ybWF0aW9uYWwKK0hpTGluayBwdXJpZnlMb2dNSVUgcHVyaWZ5TG9nSW5mb3JtYXRpb25hbAorSGlMaW5rIHB1cmlmeUxvZ1NJRyBwdXJpZnlMb2dJbmZvcm1hdGlvbmFsCitIaUxpbmsgcHVyaWZ5TG9nV1BGIHB1cmlmeUxvZ0luZm9ybWF0aW9uYWwKK0hpTGluayBwdXJpZnlMb2dXUE0gcHVyaWZ5TG9nSW5mb3JtYXRpb25hbAorSGlMaW5rIHB1cmlmeUxvZ1dQTiBwdXJpZnlMb2dJbmZvcm1hdGlvbmFsCitIaUxpbmsgcHVyaWZ5TG9nV1BSIHB1cmlmeUxvZ0luZm9ybWF0aW9uYWwKK0hpTGluayBwdXJpZnlMb2dXUFcgcHVyaWZ5TG9nSW5mb3JtYXRpb25hbAorSGlMaW5rIHB1cmlmeUxvZ1dQWCBwdXJpZnlMb2dJbmZvcm1hdGlvbmFsCiAKLQlIaUxpbmsgcHVyaWZ5TG9nQUJSIHB1cmlmeUxvZ1dhcm5pbmcKLQlIaUxpbmsgcHVyaWZ5TG9nQlNSIHB1cmlmeUxvZ1dhcm5pbmcKLQlIaUxpbmsgcHVyaWZ5TG9nQlNXIHB1cmlmeUxvZ1dhcm5pbmcKLQlIaUxpbmsgcHVyaWZ5TG9nRk1SIHB1cmlmeUxvZ1dhcm5pbmcKLQlIaUxpbmsgcHVyaWZ5TG9nTUxLIHB1cmlmeUxvZ1dhcm5pbmcKLQlIaUxpbmsgcHVyaWZ5TG9nTVNFIHB1cmlmeUxvZ1dhcm5pbmcKLQlIaUxpbmsgcHVyaWZ5TG9nUEFSIHB1cmlmeUxvZ1dhcm5pbmcKLQlIaUxpbmsgcHVyaWZ5TG9nUExLIHB1cmlmeUxvZ1dhcm5pbmcKLQlIaUxpbmsgcHVyaWZ5TG9nU0JSIHB1cmlmeUxvZ1dhcm5pbmcKLQlIaUxpbmsgcHVyaWZ5TG9nU09GIHB1cmlmeUxvZ1dhcm5pbmcKLQlIaUxpbmsgcHVyaWZ5TG9nVU1DIHB1cmlmeUxvZ1dhcm5pbmcKLQlIaUxpbmsgcHVyaWZ5TG9nVU1SIHB1cmlmeUxvZ1dhcm5pbmcKK0hpTGluayBwdXJpZnlMb2dBQlIgcHVyaWZ5TG9nV2FybmluZworSGlMaW5rIHB1cmlmeUxvZ0JTUiBwdXJpZnlMb2dXYXJuaW5nCitIaUxpbmsgcHVyaWZ5TG9nQlNXIHB1cmlmeUxvZ1dhcm5pbmcKK0hpTGluayBwdXJpZnlMb2dGTVIgcHVyaWZ5TG9nV2FybmluZworSGlMaW5rIHB1cmlmeUxvZ01MSyBwdXJpZnlMb2dXYXJuaW5nCitIaUxpbmsgcHVyaWZ5TG9nTVNFIHB1cmlmeUxvZ1dhcm5pbmcKK0hpTGluayBwdXJpZnlMb2dQQVIgcHVyaWZ5TG9nV2FybmluZworSGlMaW5rIHB1cmlmeUxvZ1BMSyBwdXJpZnlMb2dXYXJuaW5nCitIaUxpbmsgcHVyaWZ5TG9nU0JSIHB1cmlmeUxvZ1dhcm5pbmcKK0hpTGluayBwdXJpZnlMb2dTT0YgcHVyaWZ5TG9nV2FybmluZworSGlMaW5rIHB1cmlmeUxvZ1VNQyBwdXJpZnlMb2dXYXJuaW5nCitIaUxpbmsgcHVyaWZ5TG9nVU1SIHB1cmlmeUxvZ1dhcm5pbmcKIAotCUhpTGluayBwdXJpZnlMb2dBQlcgcHVyaWZ5TG9nQ29ycnVwdGluZwotCUhpTGluayBwdXJpZnlMb2dCUksgcHVyaWZ5TG9nQ29ycnVwdGluZwotCUhpTGluayBwdXJpZnlMb2dGTVcgcHVyaWZ5TG9nQ29ycnVwdGluZwotCUhpTGluayBwdXJpZnlMb2dGTkggcHVyaWZ5TG9nQ29ycnVwdGluZwotCUhpTGluayBwdXJpZnlMb2dGVU0gcHVyaWZ5TG9nQ29ycnVwdGluZwotCUhpTGluayBwdXJpZnlMb2dNUkUgcHVyaWZ5TG9nQ29ycnVwdGluZwotCUhpTGluayBwdXJpZnlMb2dTQlcgcHVyaWZ5TG9nQ29ycnVwdGluZworSGlMaW5rIHB1cmlmeUxvZ0FCVyBwdXJpZnlMb2dDb3JydXB0aW5nCitIaUxpbmsgcHVyaWZ5TG9nQlJLIHB1cmlmeUxvZ0NvcnJ1cHRpbmcKK0hpTGluayBwdXJpZnlMb2dGTVcgcHVyaWZ5TG9nQ29ycnVwdGluZworSGlMaW5rIHB1cmlmeUxvZ0ZOSCBwdXJpZnlMb2dDb3JydXB0aW5nCitIaUxpbmsgcHVyaWZ5TG9nRlVNIHB1cmlmeUxvZ0NvcnJ1cHRpbmcKK0hpTGluayBwdXJpZnlMb2dNUkUgcHVyaWZ5TG9nQ29ycnVwdGluZworSGlMaW5rIHB1cmlmeUxvZ1NCVyBwdXJpZnlMb2dDb3JydXB0aW5nCiAKLQlIaUxpbmsgcHVyaWZ5TG9nQ09SIHB1cmlmeUxvZ0ZhdGFsCi0JSGlMaW5rIHB1cmlmeUxvZ05QUiBwdXJpZnlMb2dGYXRhbAotCUhpTGluayBwdXJpZnlMb2dOUFcgcHVyaWZ5TG9nRmF0YWwKLQlIaUxpbmsgcHVyaWZ5TG9nWlBSIHB1cmlmeUxvZ0ZhdGFsCi0JSGlMaW5rIHB1cmlmeUxvZ1pQVyBwdXJpZnlMb2dGYXRhbAorSGlMaW5rIHB1cmlmeUxvZ0NPUiBwdXJpZnlMb2dGYXRhbAorSGlMaW5rIHB1cmlmeUxvZ05QUiBwdXJpZnlMb2dGYXRhbAorSGlMaW5rIHB1cmlmeUxvZ05QVyBwdXJpZnlMb2dGYXRhbAorSGlMaW5rIHB1cmlmeUxvZ1pQUiBwdXJpZnlMb2dGYXRhbAorSGlMaW5rIHB1cmlmeUxvZ1pQVyBwdXJpZnlMb2dGYXRhbAogCi0JSGlMaW5rIHB1cmlmeUxvZ0hlYWRlcgkJQ29tbWVudAotCUhpTGluayBwdXJpZnlMb2dJbmZvcm1hdGlvbmFsCVByZVByb2MKLQlIaUxpbmsgcHVyaWZ5TG9nV2FybmluZwkJVHlwZQotCUhpTGluayBwdXJpZnlMb2dDb3JydXB0aW5nCUVycm9yCi0JSGlMaW5rIHB1cmlmeUxvZ0ZhdGFsCQlFcnJvcgorSGlMaW5rIHB1cmlmeUxvZ0hlYWRlcgkJQ29tbWVudAorSGlMaW5rIHB1cmlmeUxvZ0luZm9ybWF0aW9uYWwJUHJlUHJvYworSGlMaW5rIHB1cmlmeUxvZ1dhcm5pbmcJCVR5cGUKK0hpTGluayBwdXJpZnlMb2dDb3JydXB0aW5nCUVycm9yCitIaUxpbmsgcHVyaWZ5TG9nRmF0YWwJCUVycm9yCiAKLQlkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInB1cmlmeWxvZyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcHlyZXgudmltIGIvcnVudGltZS9zeW50YXgvcHlyZXgudmltCmluZGV4IDdkYzliOTUuLmNkNzQzZGYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3B5cmV4LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9weXJleC52aW0KQEAgLTQsMjEgKzQsMTQgQEAKICIgVVJMOgkJaHR0cDovL21hcmNvYmFyaS5hbHRlcnZpc3RhLm9yZy9weXJleF92aW0uaHRtbAogIiBMYXN0IENoYW5nZToJMjAwOSBOb3YgMDkKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKICIgUmVhZCB0aGUgUHl0aG9uIHN5bnRheCB0byBzdGFydCB3aXRoCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNvIDxzZmlsZT46cDpoL3B5dGhvbi52aW0KLWVsc2UKLSAgcnVudGltZSEgc3ludGF4L3B5dGhvbi52aW0KLSAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9weXRob24udmltCit1bmxldCBiOmN1cnJlbnRfc3ludGF4CiAKICIgUHlyZXggZXh0ZW50aW9ucwogc3luIGtleXdvcmQgcHlyZXhTdGF0ZW1lbnQgICAgICBjZGVmIHR5cGVkZWYgY3R5cGVkZWYgc2l6ZW9mCkBAIC00NCwyNCArMzcsMTcgQEAKIHN5biBtYXRjaCAgIHB5cmV4Rm9yRnJvbSAgICAgICAgIlwoZm9yW146XSpcKVxAPD1mcm9tIgogCiAiIERlZmF1bHQgaGlnaGxpZ2h0aW5nCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfcHlyZXhfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfcHlyZXhfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKLSAgSGlMaW5rIHB5cmV4U3RhdGVtZW50CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHB5cmV4VHlwZQkJVHlwZQotICBIaUxpbmsgcHlyZXhTdHJ1Y3R1cmUJCVN0cnVjdHVyZQotICBIaUxpbmsgcHlyZXhJbmNsdWRlCQlQcmVDb25kaXQKLSAgSGlMaW5rIHB5cmV4QWNjZXNzCQlweXJleFN0YXRlbWVudAotICBpZiBleGlzdHMoInB5dGhvbl9oaWdobGlnaHRfYnVpbHRpbnMiKSB8fCBleGlzdHMoInB5cmV4X2hpZ2hsaWdodF9idWlsdGlucyIpCi0gICAgICBIaUxpbmsgcHlyZXhCdWlsdGluCUZ1bmN0aW9uCi0gIGVuZGlmCi0gIEhpTGluayBweXJleEZvckZyb20JCVN0YXRlbWVudAotCi0gIGRlbGNvbW1hbmQgSGlMaW5rCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KK0hpTGluayBweXJleFN0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsgcHlyZXhUeXBlCQlUeXBlCitIaUxpbmsgcHlyZXhTdHJ1Y3R1cmUJCVN0cnVjdHVyZQorSGlMaW5rIHB5cmV4SW5jbHVkZQkJUHJlQ29uZGl0CitIaUxpbmsgcHlyZXhBY2Nlc3MJCXB5cmV4U3RhdGVtZW50CitpZiBleGlzdHMoInB5dGhvbl9oaWdobGlnaHRfYnVpbHRpbnMiKSB8fCBleGlzdHMoInB5cmV4X2hpZ2hsaWdodF9idWlsdGlucyIpCitIaUxpbmsgcHlyZXhCdWlsdGluCUZ1bmN0aW9uCiBlbmRpZgorSGlMaW5rIHB5cmV4Rm9yRnJvbQkJU3RhdGVtZW50CisKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInB5cmV4IgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcHl0aG9uLnZpbSBiL3J1bnRpbWUvc3ludGF4L3B5dGhvbi52aW0KaW5kZXggNTk2NzVjMy4uMTk1MTY4MCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcHl0aG9uLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9weXRob24udmltCkBAIC0zNiwxMSArMzYsOCBAQAogIiAgIGxldCBweXRob25faGlnaGxpZ2h0X2FsbCA9IDEKICIKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMuCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkLgotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQuCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTI5Miw1MSArMjg5LDQ0IEBACiAiIFN5bmMgYXQgdGhlIGJlZ2lubmluZyBvZiBjbGFzcywgZnVuY3Rpb24sIG9yIG1ldGhvZCBkZWZpbml0aW9uLgogc3luIHN5bmMgbWF0Y2ggcHl0aG9uU3luYyBncm91cGhlcmUgTk9ORSAiXlxzKlwlKGRlZlx8Y2xhc3NcKVxzXCtcaFx3KlxzKigiCiAKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9weXRob25fc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8PSA1MDgKLSAgICBsZXQgZGlkX3B5dGhvbl9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgIiBUaGUgZGVmYXVsdCBoaWdobGlnaHQgbGlua3MuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlci4KLSAgSGlMaW5rIHB5dGhvblN0YXRlbWVudAlTdGF0ZW1lbnQKLSAgSGlMaW5rIHB5dGhvbkNvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCi0gIEhpTGluayBweXRob25SZXBlYXQJCVJlcGVhdAotICBIaUxpbmsgcHl0aG9uT3BlcmF0b3IJCU9wZXJhdG9yCi0gIEhpTGluayBweXRob25FeGNlcHRpb24JRXhjZXB0aW9uCi0gIEhpTGluayBweXRob25JbmNsdWRlCQlJbmNsdWRlCi0gIEhpTGluayBweXRob25Bc3luYwkJU3RhdGVtZW50Ci0gIEhpTGluayBweXRob25EZWNvcmF0b3IJRGVmaW5lCi0gIEhpTGluayBweXRob25EZWNvcmF0b3JOYW1lCUZ1bmN0aW9uCi0gIEhpTGluayBweXRob25GdW5jdGlvbgkJRnVuY3Rpb24KLSAgSGlMaW5rIHB5dGhvbkNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIHB5dGhvblRvZG8JCVRvZG8KLSAgSGlMaW5rIHB5dGhvblN0cmluZwkJU3RyaW5nCi0gIEhpTGluayBweXRob25SYXdTdHJpbmcJU3RyaW5nCi0gIEhpTGluayBweXRob25RdW90ZXMJCVN0cmluZwotICBIaUxpbmsgcHl0aG9uVHJpcGxlUXVvdGVzCXB5dGhvblF1b3RlcwotICBIaUxpbmsgcHl0aG9uRXNjYXBlCQlTcGVjaWFsCi0gIGlmICFleGlzdHMoInB5dGhvbl9ub19udW1iZXJfaGlnaGxpZ2h0IikKLSAgICBIaUxpbmsgcHl0aG9uTnVtYmVyCQlOdW1iZXIKLSAgZW5kaWYKLSAgaWYgIWV4aXN0cygicHl0aG9uX25vX2J1aWx0aW5faGlnaGxpZ2h0IikKLSAgICBIaUxpbmsgcHl0aG9uQnVpbHRpbglGdW5jdGlvbgotICBlbmRpZgotICBpZiAhZXhpc3RzKCJweXRob25fbm9fZXhjZXB0aW9uX2hpZ2hsaWdodCIpCi0gICAgSGlMaW5rIHB5dGhvbkV4Y2VwdGlvbnMJU3RydWN0dXJlCi0gIGVuZGlmCi0gIGlmIGV4aXN0cygicHl0aG9uX3NwYWNlX2Vycm9yX2hpZ2hsaWdodCIpCi0gICAgSGlMaW5rIHB5dGhvblNwYWNlRXJyb3IJRXJyb3IKLSAgZW5kaWYKLSAgaWYgIWV4aXN0cygicHl0aG9uX25vX2RvY3Rlc3RfaGlnaGxpZ2h0IikKLSAgICBIaUxpbmsgcHl0aG9uRG9jdGVzdAlTcGVjaWFsCi0gICAgSGlMaW5rIHB5dGhvbkRvY3Rlc3RWYWx1ZQlEZWZpbmUKLSAgZW5kaWYKLQotICBkZWxjb21tYW5kIEhpTGluaworIiBUaGUgZGVmYXVsdCBoaWdobGlnaHQgbGlua3MuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlci4KK0hpTGluayBweXRob25TdGF0ZW1lbnQJU3RhdGVtZW50CitIaUxpbmsgcHl0aG9uQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKK0hpTGluayBweXRob25SZXBlYXQJCVJlcGVhdAorSGlMaW5rIHB5dGhvbk9wZXJhdG9yCQlPcGVyYXRvcgorSGlMaW5rIHB5dGhvbkV4Y2VwdGlvbglFeGNlcHRpb24KK0hpTGluayBweXRob25JbmNsdWRlCQlJbmNsdWRlCitIaUxpbmsgcHl0aG9uQXN5bmMJCVN0YXRlbWVudAorSGlMaW5rIHB5dGhvbkRlY29yYXRvcglEZWZpbmUKK0hpTGluayBweXRob25EZWNvcmF0b3JOYW1lCUZ1bmN0aW9uCitIaUxpbmsgcHl0aG9uRnVuY3Rpb24JCUZ1bmN0aW9uCitIaUxpbmsgcHl0aG9uQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHB5dGhvblRvZG8JCVRvZG8KK0hpTGluayBweXRob25TdHJpbmcJCVN0cmluZworSGlMaW5rIHB5dGhvblJhd1N0cmluZwlTdHJpbmcKK0hpTGluayBweXRob25RdW90ZXMJCVN0cmluZworSGlMaW5rIHB5dGhvblRyaXBsZVF1b3RlcwlweXRob25RdW90ZXMKK0hpTGluayBweXRob25Fc2NhcGUJCVNwZWNpYWwKK2lmICFleGlzdHMoInB5dGhvbl9ub19udW1iZXJfaGlnaGxpZ2h0IikKKyAgSGlMaW5rIHB5dGhvbk51bWJlcgkJTnVtYmVyCiBlbmRpZgoraWYgIWV4aXN0cygicHl0aG9uX25vX2J1aWx0aW5faGlnaGxpZ2h0IikKKyAgSGlMaW5rIHB5dGhvbkJ1aWx0aW4JRnVuY3Rpb24KK2VuZGlmCitpZiAhZXhpc3RzKCJweXRob25fbm9fZXhjZXB0aW9uX2hpZ2hsaWdodCIpCisgIEhpTGluayBweXRob25FeGNlcHRpb25zCVN0cnVjdHVyZQorZW5kaWYKK2lmIGV4aXN0cygicHl0aG9uX3NwYWNlX2Vycm9yX2hpZ2hsaWdodCIpCisgIEhpTGluayBweXRob25TcGFjZUVycm9yCUVycm9yCitlbmRpZgoraWYgIWV4aXN0cygicHl0aG9uX25vX2RvY3Rlc3RfaGlnaGxpZ2h0IikKKyAgSGlMaW5rIHB5dGhvbkRvY3Rlc3QJU3BlY2lhbAorICBIaUxpbmsgcHl0aG9uRG9jdGVzdFZhbHVlCURlZmluZQorZW5kaWYKKworZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicHl0aG9uIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9yYWRpYW5jZS52aW0gYi9ydW50aW1lL3N5bnRheC9yYWRpYW5jZS52aW0KaW5kZXggNDYxYjcwOC4uMTM0NzkyYSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcmFkaWFuY2UudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3JhZGlhbmNlLnZpbQpAQCAtMTgsMjAgKzE4LDEzIEBACiAiIGNvbW1lbnRzLCBleHRlcm5hbCBjb21tYW5kIG5hbWVzIGFuZCB0aGUgbnVsbC1tb2RpZmllciAidm9pZCIuCiAKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKICIgYWxsIHByaW50aW5nIGNoYXJhY3RlcnMgZXhjZXB0ICcjJyBhbmQgJyEnIGFyZSB2YWxpZCBpbiBuYW1lcy4KLWlmIHZlcnNpb24gPj0gNjAwCi0gIHNldGxvY2FsIGlza2V5d29yZD1cIiwkLX4KLWVsc2UKLSAgc2V0IGlza2V5d29yZD1cIiwkLX4KLWVuZGlmCitzZXRsb2NhbCBpc2tleXdvcmQ9XCIsJC1+CiAKICIgVGhlIG51bGwtbW9kaWZpZXIKIHN5biBrZXl3b3JkIHJhZGlhbmNlS2V5d29yZCB2b2lkCkBAIC0xMzAsMjkgKzEyMywyMSBAQAogc3luIG1hdGNoIHJhZGlhbmNlQ29tbWVudCAiIy4qJCIgY29udGFpbnM9cmFkaWFuY2VUb2RvCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3JhZGlhbmNlX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3JhZGlhbmNlX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCi0gIEhpTGluayByYWRpYW5jZUtleXdvcmQJS2V5d29yZAotICBIaUxpbmsgcmFkaWFuY2VFeHRyYVR5cGUJVHlwZQotICBIaUxpbmsgcmFkaWFuY2VTdXJmVHlwZQlUeXBlCi0gIEhpTGluayByYWRpYW5jZUxpZ2h0VHlwZQlUeXBlCi0gIEhpTGluayByYWRpYW5jZU1hdFR5cGUJVHlwZQotICBIaUxpbmsgcmFkaWFuY2VQYXRUeXBlCVR5cGUKLSAgSGlMaW5rIHJhZGlhbmNlVGV4VHlwZQlUeXBlCi0gIEhpTGluayByYWRpYW5jZU1peFR5cGUJVHlwZQotICBIaUxpbmsgcmFkaWFuY2VDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIHJhZGlhbmNlQ29tbWFuZAlGdW5jdGlvbgotICBIaUxpbmsgcmFkaWFuY2VJRAkJU3RyaW5nCi0gIEhpTGluayByYWRpYW5jZVRvZG8JCVRvZG8KLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KK0hpTGluayByYWRpYW5jZUtleXdvcmQJS2V5d29yZAorSGlMaW5rIHJhZGlhbmNlRXh0cmFUeXBlCVR5cGUKK0hpTGluayByYWRpYW5jZVN1cmZUeXBlCVR5cGUKK0hpTGluayByYWRpYW5jZUxpZ2h0VHlwZQlUeXBlCitIaUxpbmsgcmFkaWFuY2VNYXRUeXBlCVR5cGUKK0hpTGluayByYWRpYW5jZVBhdFR5cGUJVHlwZQorSGlMaW5rIHJhZGlhbmNlVGV4VHlwZQlUeXBlCitIaUxpbmsgcmFkaWFuY2VNaXhUeXBlCVR5cGUKK0hpTGluayByYWRpYW5jZUNvbW1lbnQJQ29tbWVudAorSGlMaW5rIHJhZGlhbmNlQ29tbWFuZAlGdW5jdGlvbgorSGlMaW5rIHJhZGlhbmNlSUQJCVN0cmluZworSGlMaW5rIHJhZGlhbmNlVG9kbwkJVG9kbworZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicmFkaWFuY2UiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3JhdHBvaXNvbi52aW0gYi9ydW50aW1lL3N5bnRheC9yYXRwb2lzb24udmltCmluZGV4IDlmYzU5YmUuLjMwY2YzNjkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3JhdHBvaXNvbi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcmF0cG9pc29uLnZpbQpAQCAtNSwxMSArNSw4IEBACiAiIExhc3QgQ2hhbmdlOgkyMDExIEFwciAxMQogIiBQcmV2aW91cyBNYWludGFpbmVyOglEb3VnIEtlYXJucyA8ZGprZWEyQGd1cy5nc2NpdC5tb25hc2guZWR1LmF1PgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMjQ3LDMzICsyNDQsMjUgQEAKIHN5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzd2luZG93c1x6ZVxzKiQiCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3JhdHBvaXNvbl9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9yYXRwb2lzb25fc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayByYXRwb2lzb25Cb29sZWFuQXJnCUJvb2xlYW4KLSAgSGlMaW5rIHJhdHBvaXNvbkNvbW1hbmRBcmcJS2V5d29yZAotICBIaUxpbmsgcmF0cG9pc29uQ29tbWVudAlDb21tZW50Ci0gIEhpTGluayByYXRwb2lzb25EZWZDb21tYW5kCUlkZW50aWZpZXIKLSAgSGlMaW5rIHJhdHBvaXNvbkdyYXZpdHlBcmcJQ29uc3RhbnQKLSAgSGlMaW5rIHJhdHBvaXNvbktleVNlcUFyZwlTcGVjaWFsCi0gIEhpTGluayByYXRwb2lzb25OdW1iZXJBcmcJTnVtYmVyCi0gIEhpTGluayByYXRwb2lzb25TZXRBcmcJS2V5d29yZAotICBIaUxpbmsgcmF0cG9pc29uU3RyaW5nQ29tbWFuZAlJZGVudGlmaWVyCi0gIEhpTGluayByYXRwb2lzb25Ub2RvCQlUb2RvCi0gIEhpTGluayByYXRwb2lzb25Wb2lkQ29tbWFuZAlJZGVudGlmaWVyCi0gIEhpTGluayByYXRwb2lzb25XaW5GbXRBcmcJU3BlY2lhbAotICBIaUxpbmsgcmF0cG9pc29uV2luTmFtZUFyZwlDb25zdGFudAotICBIaUxpbmsgcmF0cG9pc29uV2luTGlzdEFyZwlDb25zdGFudAorSGlMaW5rIHJhdHBvaXNvbkJvb2xlYW5BcmcJQm9vbGVhbgorSGlMaW5rIHJhdHBvaXNvbkNvbW1hbmRBcmcJS2V5d29yZAorSGlMaW5rIHJhdHBvaXNvbkNvbW1lbnQJQ29tbWVudAorSGlMaW5rIHJhdHBvaXNvbkRlZkNvbW1hbmQJSWRlbnRpZmllcgorSGlMaW5rIHJhdHBvaXNvbkdyYXZpdHlBcmcJQ29uc3RhbnQKK0hpTGluayByYXRwb2lzb25LZXlTZXFBcmcJU3BlY2lhbAorSGlMaW5rIHJhdHBvaXNvbk51bWJlckFyZwlOdW1iZXIKK0hpTGluayByYXRwb2lzb25TZXRBcmcJS2V5d29yZAorSGlMaW5rIHJhdHBvaXNvblN0cmluZ0NvbW1hbmQJSWRlbnRpZmllcgorSGlMaW5rIHJhdHBvaXNvblRvZG8JCVRvZG8KK0hpTGluayByYXRwb2lzb25Wb2lkQ29tbWFuZAlJZGVudGlmaWVyCitIaUxpbmsgcmF0cG9pc29uV2luRm10QXJnCVNwZWNpYWwKK0hpTGluayByYXRwb2lzb25XaW5OYW1lQXJnCUNvbnN0YW50CitIaUxpbmsgcmF0cG9pc29uV2luTGlzdEFyZwlDb25zdGFudAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicmF0cG9pc29uIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9yYy52aW0gYi9ydW50aW1lL3N5bnRheC9yYy52aW0KaW5kZXggYTJkNTgyNC4uMTM5MDBiMyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcmMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3JjLnZpbQpAQCAtOCwxMSArOCw4IEBACiAKICIgVGhpcyBmaWxlIGlzIGJhc2VkIG9uIHRoZSBjLnZpbQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTQ4LDU1ICsxNDUsNDcgQEAKIHN5biBzeW5jIGNjb21tZW50IHJjQ29tbWVudCBtaW5saW5lcz0xMAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9yY19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9yY19zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHJjQ2hhcmFjdGVyCUNoYXJhY3RlcgotICBIaUxpbmsgcmNTcGVjaWFsQ2hhcmFjdGVyIHJjU3BlY2lhbAotICBIaUxpbmsgcmNOdW1iZXIJTnVtYmVyCi0gIEhpTGluayByY0Zsb2F0CUZsb2F0Ci0gIEhpTGluayByY09jdGFsRXJyb3IJcmNFcnJvcgotICBIaUxpbmsgcmNQYXJlbkVycm9yCXJjRXJyb3IKLSAgSGlMaW5rIHJjSW5QYXJlbglyY0Vycm9yCi0gIEhpTGluayByY0NvbW1lbnRFcnJvcglyY0Vycm9yCi0gIEhpTGluayByY0luY2x1ZGUJSW5jbHVkZQotICBIaUxpbmsgcmNQcmVQcm9jCVByZVByb2MKLSAgSGlMaW5rIHJjRGVmaW5lCU1hY3JvCi0gIEhpTGluayByY0luY2x1ZGVkCXJjU3RyaW5nCi0gIEhpTGluayByY0Vycm9yCUVycm9yCi0gIEhpTGluayByY1ByZUNvbmRpdAlQcmVDb25kaXQKLSAgSGlMaW5rIHJjQ29tbWVudFN0cmluZyByY1N0cmluZwotICBIaUxpbmsgcmNDb21tZW50MlN0cmluZyByY1N0cmluZwotICBIaUxpbmsgcmNDb21tZW50U2tpcAlyY0NvbW1lbnQKLSAgSGlMaW5rIHJjU3RyaW5nCVN0cmluZwotICBIaUxpbmsgcmNDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIHJjU3BlY2lhbAlTcGVjaWFsQ2hhcgotICBIaUxpbmsgcmNUb2RvCVRvZG8KK0hpTGluayByY0NoYXJhY3RlcglDaGFyYWN0ZXIKK0hpTGluayByY1NwZWNpYWxDaGFyYWN0ZXIgcmNTcGVjaWFsCitIaUxpbmsgcmNOdW1iZXIJTnVtYmVyCitIaUxpbmsgcmNGbG9hdAlGbG9hdAorSGlMaW5rIHJjT2N0YWxFcnJvcglyY0Vycm9yCitIaUxpbmsgcmNQYXJlbkVycm9yCXJjRXJyb3IKK0hpTGluayByY0luUGFyZW4JcmNFcnJvcgorSGlMaW5rIHJjQ29tbWVudEVycm9yCXJjRXJyb3IKK0hpTGluayByY0luY2x1ZGUJSW5jbHVkZQorSGlMaW5rIHJjUHJlUHJvYwlQcmVQcm9jCitIaUxpbmsgcmNEZWZpbmUJTWFjcm8KK0hpTGluayByY0luY2x1ZGVkCXJjU3RyaW5nCitIaUxpbmsgcmNFcnJvcglFcnJvcgorSGlMaW5rIHJjUHJlQ29uZGl0CVByZUNvbmRpdAorSGlMaW5rIHJjQ29tbWVudFN0cmluZyByY1N0cmluZworSGlMaW5rIHJjQ29tbWVudDJTdHJpbmcgcmNTdHJpbmcKK0hpTGluayByY0NvbW1lbnRTa2lwCXJjQ29tbWVudAorSGlMaW5rIHJjU3RyaW5nCVN0cmluZworSGlMaW5rIHJjQ29tbWVudAlDb21tZW50CitIaUxpbmsgcmNTcGVjaWFsCVNwZWNpYWxDaGFyCitIaUxpbmsgcmNUb2RvCVRvZG8KIAotICBIaUxpbmsgcmNBdHRyaWJ1dGUJcmNDb21tb25BdHRyaWJ1dGUKLSAgSGlMaW5rIHJjU3RkSWQJcmNTdGF0ZW1lbnQKLSAgSGlMaW5rIHJjU3RhdGVtZW50CVN0YXRlbWVudAorSGlMaW5rIHJjQXR0cmlidXRlCXJjQ29tbW9uQXR0cmlidXRlCitIaUxpbmsgcmNTdGRJZAlyY1N0YXRlbWVudAorSGlMaW5rIHJjU3RhdGVtZW50CVN0YXRlbWVudAogCi0gICIgRGVmYXVsdCBjb2xvciBvdmVycmlkZXMKLSAgaGkgZGVmIHJjTGFuZ3VhZ2UJdGVybT1yZXZlcnNlIGN0ZXJtYmc9UmVkIGN0ZXJtZmc9WWVsbG93IGd1aWJnPVJlZCBndWlmZz1ZZWxsb3cKLSAgaGkgZGVmIHJjTWFpbk9iamVjdAl0ZXJtPXVuZGVybGluZSBjdGVybWZnPUJsdWUgZ3VpZmc9Qmx1ZQotICBoaSBkZWYgcmNTdWJPYmplY3QJY3Rlcm1mZz1HcmVlbiBndWlmZz1HcmVlbgotICBoaSBkZWYgcmNDYXB0aW9uUGFyYW0JdGVybT11bmRlcmxpbmUgY3Rlcm1mZz1EYXJrR3JlZW4gZ3VpZmc9R3JlZW4KLSAgaGkgZGVmIHJjUGFyYW0JY3Rlcm1mZz1EYXJrR3JlZW4gZ3VpZmc9RGFya0dyZWVuCi0gIGhpIGRlZiByY1N0YXRlbWVudAljdGVybWZnPURhcmtHcmVlbiBndWlmZz1EYXJrR3JlZW4KLSAgaGkgZGVmIHJjQ29tbW9uQXR0cmlidXRlCWN0ZXJtZmc9QnJvd24gZ3VpZmc9QnJvd24KKyIgRGVmYXVsdCBjb2xvciBvdmVycmlkZXMKK2hpIGRlZiByY0xhbmd1YWdlCXRlcm09cmV2ZXJzZSBjdGVybWJnPVJlZCBjdGVybWZnPVllbGxvdyBndWliZz1SZWQgZ3VpZmc9WWVsbG93CitoaSBkZWYgcmNNYWluT2JqZWN0CXRlcm09dW5kZXJsaW5lIGN0ZXJtZmc9Qmx1ZSBndWlmZz1CbHVlCitoaSBkZWYgcmNTdWJPYmplY3QJY3Rlcm1mZz1HcmVlbiBndWlmZz1HcmVlbgoraGkgZGVmIHJjQ2FwdGlvblBhcmFtCXRlcm09dW5kZXJsaW5lIGN0ZXJtZmc9RGFya0dyZWVuIGd1aWZnPUdyZWVuCitoaSBkZWYgcmNQYXJhbQljdGVybWZnPURhcmtHcmVlbiBndWlmZz1EYXJrR3JlZW4KK2hpIGRlZiByY1N0YXRlbWVudAljdGVybWZnPURhcmtHcmVlbiBndWlmZz1EYXJrR3JlZW4KK2hpIGRlZiByY0NvbW1vbkF0dHJpYnV0ZQljdGVybWZnPUJyb3duIGd1aWZnPUJyb3duCiAKLSAgIkhpTGluayByY0lkZW50aWZpZXIJSWRlbnRpZmllcgorIkhpTGluayByY0lkZW50aWZpZXIJSWRlbnRpZmllcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicmMiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Jjcy52aW0gYi9ydW50aW1lL3N5bnRheC9yY3MudmltCmluZGV4IGU0NWQ1ZmQuLjVmYTY2YzQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Jjcy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcmNzLnZpbQpAQCAtOSwxMSArOSw4IEBACiAiIE9wdGlvbnM6CiAiICAgcmNzX2ZvbGRpbmcgPSAxICAgRm9yIGZvbGRpbmcgc3RyaW5ncwogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcy4KLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQuCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZC4KK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNTIsMjUgKzQ5LDE3IEBACiBlbmRpZgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkuCi0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0LgotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3Jjc19zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDw9IDUwOAotICAgIGxldCBkaWRfcmNzX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0LgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHJjc0tleXdvcmQgICAgIEtleXdvcmQKLSAgSGlMaW5rIHJjc051bWJlciAgICAgIElkZW50aWZpZXIKLSAgSGlMaW5rIHJjc1N0cmluZyAgICAgIFN0cmluZwotICBIaUxpbmsgcmNzVGV4dFN0ciAgICAgU3RyaW5nCi0gIEhpTGluayByY3NTcGVjaWFsICAgICBTcGVjaWFsCi0gIEhpTGluayByY3NEaWZmTGluZXMgICBTcGVjaWFsCi0gIEhpTGluayByY3NFT0ZFcnJvciAgICBFcnJvcgorSGlMaW5rIHJjc0tleXdvcmQgICAgIEtleXdvcmQKK0hpTGluayByY3NOdW1iZXIgICAgICBJZGVudGlmaWVyCitIaUxpbmsgcmNzU3RyaW5nICAgICAgU3RyaW5nCitIaUxpbmsgcmNzVGV4dFN0ciAgICAgU3RyaW5nCitIaUxpbmsgcmNzU3BlY2lhbCAgICAgU3BlY2lhbAorSGlMaW5rIHJjc0RpZmZMaW5lcyAgIFNwZWNpYWwKK0hpTGluayByY3NFT0ZFcnJvciAgICBFcnJvcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicmNzIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcmNzbG9nLnZpbSBiL3J1bnRpbWUvc3ludGF4L3Jjc2xvZy52aW0KaW5kZXggYWNhY2ZhMS4uODQ1MTg1MiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcmNzbG9nLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9yY3Nsb2cudmltCkBAIC0zLDExICszLDggQEAKICIgTWFpbnRhaW5lcjoJSm9lIEthcnRoYXVzZXIgPGpvZUBmcmVlYnNkLm9yZz4KICIgTGFzdCBDaGFuZ2U6CTIwMDEgTWF5IDA5CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xNiwyMiArMTMsMTQgQEAKIHN5biBtYXRjaCByY3Nsb2dEYXRlCQkiXmRhdGU6IC4qJCIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfcmNzbG9nX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3Jjc2xvZ19zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHJjc2xvZ0ZpbGUJCVR5cGUKLSAgSGlMaW5rIHJjc2xvZ1JldmlzaW9uCUNvbnN0YW50Ci0gIEhpTGluayByY3Nsb2dEYXRlCQlJZGVudGlmaWVyCitIaUxpbmsgcmNzbG9nRmlsZQkJVHlwZQorSGlMaW5rIHJjc2xvZ1JldmlzaW9uCUNvbnN0YW50CitIaUxpbmsgcmNzbG9nRGF0ZQkJSWRlbnRpZmllcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicmNzbG9nIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9yZWJvbC52aW0gYi9ydW50aW1lL3N5bnRheC9yZWJvbC52aW0KaW5kZXggZTYzOTU3NS4uOWMzNjdiMCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcmVib2wudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3JlYm9sLnZpbQpAQCAtNiwxMSArNiw4IEBACiAiIFVSTDoJCWh0dHA6Ly93d3cuZWFuZGVtLmNvLnVrL21ydy92aW0KICIKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTE4LDExICsxNSw3IEBACiBzeW4gY2FzZSBpZ25vcmUKIAogIiBBcyBwZXIgY3VycmVudCB1c2VycyBkb2N1bWVudGF0aW9uCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNldCBpc2s9QCw0OC01Nyw/LCEsLiwnLCssLSwqLCYsXHwsPSxfLH4KLWVsc2UKLSAgc2V0bG9jYWwgaXNrPUAsNDgtNTcsPywhLC4sJywrLC0sKiwmLFx8LD0sXyx+Ci1lbmRpZgorc2V0bG9jYWwgaXNrPUAsNDgtNTcsPywhLC4sJywrLC0sKiwmLFx8LD0sXyx+CiAKICIgWWVyIFRPRE8gaGlnaGxpZ2h0ZXIKIHN5biBrZXl3b3JkCXJlYm9sVG9kbwljb250YWluZWQgVE9ETwpAQCAtMTQ1LDY1ICsxMzgsNTcgQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9yZWJvbF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9yZWJvbF9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHJlYm9sVG9kbyAgICAgVG9kbworSGlMaW5rIHJlYm9sVG9kbyAgICAgVG9kbwogCi0gIEhpTGluayByZWJvbFN0YXRlbWVudCBTdGF0ZW1lbnQKLSAgSGlMaW5rIHJlYm9sTGFiZWwJTGFiZWwKLSAgSGlMaW5rIHJlYm9sQ29uZGl0aW9uYWwgQ29uZGl0aW9uYWwKLSAgSGlMaW5rIHJlYm9sUmVwZWF0CVJlcGVhdAorSGlMaW5rIHJlYm9sU3RhdGVtZW50IFN0YXRlbWVudAorSGlMaW5rIHJlYm9sTGFiZWwJTGFiZWwKK0hpTGluayByZWJvbENvbmRpdGlvbmFsIENvbmRpdGlvbmFsCitIaUxpbmsgcmVib2xSZXBlYXQJUmVwZWF0CiAKLSAgSGlMaW5rIHJlYm9sT3BlcmF0b3IJT3BlcmF0b3IKLSAgSGlMaW5rIHJlYm9sTG9naWNPcGVyYXRvciByZWJvbE9wZXJhdG9yCi0gIEhpTGluayByZWJvbExvZ2ljRnVuY3Rpb24gcmVib2xMb2dpY09wZXJhdG9yCi0gIEhpTGluayByZWJvbE1hdGhPcGVyYXRvciByZWJvbE9wZXJhdG9yCi0gIEhpTGluayByZWJvbE1hdGhGdW5jdGlvbiByZWJvbE1hdGhPcGVyYXRvcgotICBIaUxpbmsgcmVib2xCaW5hcnlPcGVyYXRvciByZWJvbE9wZXJhdG9yCi0gIEhpTGluayByZWJvbEJpbmFyeUZ1bmN0aW9uIHJlYm9sQmluYXJ5T3BlcmF0b3IKK0hpTGluayByZWJvbE9wZXJhdG9yCU9wZXJhdG9yCitIaUxpbmsgcmVib2xMb2dpY09wZXJhdG9yIHJlYm9sT3BlcmF0b3IKK0hpTGluayByZWJvbExvZ2ljRnVuY3Rpb24gcmVib2xMb2dpY09wZXJhdG9yCitIaUxpbmsgcmVib2xNYXRoT3BlcmF0b3IgcmVib2xPcGVyYXRvcgorSGlMaW5rIHJlYm9sTWF0aEZ1bmN0aW9uIHJlYm9sTWF0aE9wZXJhdG9yCitIaUxpbmsgcmVib2xCaW5hcnlPcGVyYXRvciByZWJvbE9wZXJhdG9yCitIaUxpbmsgcmVib2xCaW5hcnlGdW5jdGlvbiByZWJvbEJpbmFyeU9wZXJhdG9yCiAKLSAgSGlMaW5rIHJlYm9sVHlwZSAgICAgVHlwZQotICBIaUxpbmsgcmVib2xUeXBlRnVuY3Rpb24gcmVib2xPcGVyYXRvcgorSGlMaW5rIHJlYm9sVHlwZSAgICAgVHlwZQorSGlMaW5rIHJlYm9sVHlwZUZ1bmN0aW9uIHJlYm9sT3BlcmF0b3IKIAotICBIaUxpbmsgcmVib2xXb3JkICAgICBJZGVudGlmaWVyCi0gIEhpTGluayByZWJvbFdvcmRQYXRoIHJlYm9sV29yZAotICBIaUxpbmsgcmVib2xGdW5jdGlvbglGdW5jdGlvbgorSGlMaW5rIHJlYm9sV29yZCAgICAgSWRlbnRpZmllcgorSGlMaW5rIHJlYm9sV29yZFBhdGggcmVib2xXb3JkCitIaUxpbmsgcmVib2xGdW5jdGlvbglGdW5jdGlvbgogCi0gIEhpTGluayByZWJvbENoYXJhY3RlciBDaGFyYWN0ZXIKLSAgSGlMaW5rIHJlYm9sU3BlY2lhbENoYXJhY3RlciBTcGVjaWFsQ2hhcgotICBIaUxpbmsgcmVib2xTdHJpbmcJU3RyaW5nCitIaUxpbmsgcmVib2xDaGFyYWN0ZXIgQ2hhcmFjdGVyCitIaUxpbmsgcmVib2xTcGVjaWFsQ2hhcmFjdGVyIFNwZWNpYWxDaGFyCitIaUxpbmsgcmVib2xTdHJpbmcJU3RyaW5nCiAKLSAgSGlMaW5rIHJlYm9sTnVtYmVyICAgTnVtYmVyCi0gIEhpTGluayByZWJvbEludGVnZXIgIHJlYm9sTnVtYmVyCi0gIEhpTGluayByZWJvbERlY2ltYWwgIHJlYm9sTnVtYmVyCi0gIEhpTGluayByZWJvbFRpbWUgICAgIHJlYm9sTnVtYmVyCi0gIEhpTGluayByZWJvbERhdGUgICAgIHJlYm9sTnVtYmVyCi0gIEhpTGluayByZWJvbE1vbmV5ICAgIHJlYm9sTnVtYmVyCi0gIEhpTGluayByZWJvbEJpbmFyeSAgIHJlYm9sTnVtYmVyCi0gIEhpTGluayByZWJvbEVtYWlsICAgIHJlYm9sU3RyaW5nCi0gIEhpTGluayByZWJvbEZpbGUgICAgIHJlYm9sU3RyaW5nCi0gIEhpTGluayByZWJvbFVSTCAgICAgIHJlYm9sU3RyaW5nCi0gIEhpTGluayByZWJvbElzc3VlICAgIHJlYm9sTnVtYmVyCi0gIEhpTGluayByZWJvbFR1cGxlICAgIHJlYm9sTnVtYmVyCi0gIEhpTGluayByZWJvbEZsb2F0ICAgIEZsb2F0Ci0gIEhpTGluayByZWJvbEJvb2xlYW4gIEJvb2xlYW4KK0hpTGluayByZWJvbE51bWJlciAgIE51bWJlcgorSGlMaW5rIHJlYm9sSW50ZWdlciAgcmVib2xOdW1iZXIKK0hpTGluayByZWJvbERlY2ltYWwgIHJlYm9sTnVtYmVyCitIaUxpbmsgcmVib2xUaW1lICAgICByZWJvbE51bWJlcgorSGlMaW5rIHJlYm9sRGF0ZSAgICAgcmVib2xOdW1iZXIKK0hpTGluayByZWJvbE1vbmV5ICAgIHJlYm9sTnVtYmVyCitIaUxpbmsgcmVib2xCaW5hcnkgICByZWJvbE51bWJlcgorSGlMaW5rIHJlYm9sRW1haWwgICAgcmVib2xTdHJpbmcKK0hpTGluayByZWJvbEZpbGUgICAgIHJlYm9sU3RyaW5nCitIaUxpbmsgcmVib2xVUkwgICAgICByZWJvbFN0cmluZworSGlMaW5rIHJlYm9sSXNzdWUgICAgcmVib2xOdW1iZXIKK0hpTGluayByZWJvbFR1cGxlICAgIHJlYm9sTnVtYmVyCitIaUxpbmsgcmVib2xGbG9hdCAgICBGbG9hdAorSGlMaW5rIHJlYm9sQm9vbGVhbiAgQm9vbGVhbgogCi0gIEhpTGluayByZWJvbENvbnN0YW50IENvbnN0YW50CitIaUxpbmsgcmVib2xDb25zdGFudCBDb25zdGFudAogCi0gIEhpTGluayByZWJvbENvbW1lbnQJQ29tbWVudAorSGlMaW5rIHJlYm9sQ29tbWVudAlDb21tZW50CiAKLSAgSGlMaW5rIHJlYm9sRXJyb3IJRXJyb3IKK0hpTGluayByZWJvbEVycm9yCUVycm9yCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBpZiBleGlzdHMoIm15X3JlYm9sX2ZpbGUiKQogICBpZiBmaWxlX3JlYWRhYmxlKGV4cGFuZChteV9yZWJvbF9maWxlKSkKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3JlZGlmLnZpbSBiL3J1bnRpbWUvc3ludGF4L3JlZGlmLnZpbQppbmRleCAxYjgzYzA3Li45ZmE5MDY0IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9yZWRpZi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcmVkaWYudmltCkBAIC03LDEwICs3LDggQEAKICIgRmlsZSBFeHRlbnNpb246ICAgIHJkZgogIiBOb3RlOiAgICAgICAgICAgICAgVGhlIFJlRElGIGZvcm1hdCBpcyB1c2VkIGJ5IFJlUEVjLgogCi0iIFRvIGJlIGNvbXBhdGlibGUgd2l0aCBWaW0gNS44IHVzZToKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3JlZ2lzdHJ5LnZpbSBiL3J1bnRpbWUvc3ludGF4L3JlZ2lzdHJ5LnZpbQppbmRleCA0NTI0MjQ3Li42NTJiNjA5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9yZWdpc3RyeS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcmVnaXN0cnkudmltCkBAIC02LDExICs2LDggQEAKICIJCUluY2x1ZGVkIHBhdGNoIGZyb20gQWxleGFuZGVyIEEuIFVsaXRpbgogCiAiIGNsZWFyIGFueSB1bndhbnRlZCBzeW50YXggZGVmcwotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTg1LDI5ICs4MiwyMiBAQAogIiBEd29yZCAoMzIgYml0cykKIHN5biBtYXRjaCByZWdpc3RyeUR3b3JkCQkiZHdvcmQ6WzAtOWEtZkEtRl1cezh9JCIgY29udGFpbnM9cmVnaXN0cnlTcGVjaWFsCiAKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9yZWdpc3RyeV9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9yZWdpc3RyeV9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKICIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiAgQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKLSAgIEhpTGluayByZWdpc3RyeUNvbW1lbnQJQ29tbWVudAotICAgSGlMaW5rIHJlZ2lzdHJ5SGVhZAkJQ29uc3RhbnQKLSAgIEhpTGluayByZWdpc3RyeUhLRVkJCUNvbnN0YW50Ci0gICBIaUxpbmsgcmVnaXN0cnlQYXRoCQlTcGVjaWFsCi0gICBIaUxpbmsgcmVnaXN0cnlSZW1vdmUJUHJlUHJvYwotICAgSGlMaW5rIHJlZ2lzdHJ5R1VJRAkJSWRlbnRpZmllcgotICAgSGlMaW5rIHJlZ2lzdHJ5U3BlY2lhbAlTcGVjaWFsCi0gICBIaUxpbmsgcmVnaXN0cnlTdWJLZXkJVHlwZQotICAgSGlMaW5rIHJlZ2lzdHJ5U3RyaW5nCVN0cmluZwotICAgSGlMaW5rIHJlZ2lzdHJ5SGV4CQlOdW1iZXIKLSAgIEhpTGluayByZWdpc3RyeUR3b3JkCQlOdW1iZXIKK0hpTGluayByZWdpc3RyeUNvbW1lbnQJQ29tbWVudAorSGlMaW5rIHJlZ2lzdHJ5SGVhZAkJQ29uc3RhbnQKK0hpTGluayByZWdpc3RyeUhLRVkJCUNvbnN0YW50CitIaUxpbmsgcmVnaXN0cnlQYXRoCQlTcGVjaWFsCitIaUxpbmsgcmVnaXN0cnlSZW1vdmUJUHJlUHJvYworSGlMaW5rIHJlZ2lzdHJ5R1VJRAkJSWRlbnRpZmllcgorSGlMaW5rIHJlZ2lzdHJ5U3BlY2lhbAlTcGVjaWFsCitIaUxpbmsgcmVnaXN0cnlTdWJLZXkJVHlwZQorSGlMaW5rIHJlZ2lzdHJ5U3RyaW5nCVN0cmluZworSGlMaW5rIHJlZ2lzdHJ5SGV4CQlOdW1iZXIKK0hpTGluayByZWdpc3RyeUR3b3JkCQlOdW1iZXIKIAotICAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInJlZ2lzdHJ5IgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcmVtaW5kLnZpbSBiL3J1bnRpbWUvc3ludGF4L3JlbWluZC52aW0KaW5kZXggOTgwNjRlMC4uOGU0ZTU1NCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcmVtaW5kLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9yZW1pbmQudmltCkBAIC0xMyw5ICsxMyw4IEBACiAiIHZlcnNpb24gMC43OiB1cGRhdGVkIGVtYWlsIGFuZCBsaW5rCiAiIHZlcnNpb24gMC42OiBhZGRlZCBUSFJPVUdIIGtleXdvcmQgKGNvdXJ0ZXN5IG9mIEJlbiBPcmNoYXJkKQogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC00OCwzNSArNDcsMjggQEAKIHN5biBtYXRjaCByZW1pbmRXYXJuaW5nCQlkaXNwbGF5IGV4Y2x1ZGVubCAiXFNcc1wrJCJtcz1zKzEKIAogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfcmVtaW5kX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3JlbWluZF9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHJlbWluZENvbW1hbmRzCQlGdW5jdGlvbgotICBIaUxpbmsgcmVtaW5kRXhwaXJ5CQlSZXBlYXQKLSAgSGlMaW5rIHJlbWluZFRhZwkJTGFiZWwKLSAgSGlMaW5rIHJlbWluZFRpbWVkCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHJlbWluZE1vdmUJCVN0YXRlbWVudAotICBIaUxpbmsgcmVtaW5kU3BlY2lhbAkJSW5jbHVkZQotICBIaUxpbmsgcmVtaW5kUnVuCQlGdW5jdGlvbgotICBIaUxpbmsgcmVtaW5kQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIHJlbWluZENvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIHJlbWluZFRpbWVzCQlTdHJpbmcKLSAgSGlMaW5rIHJlbWluZFN0cmluZwkJU3RyaW5nCi0gIEhpTGluayByZW1pbmREZWJ1ZwkJRGVidWcKLSAgSGlMaW5rIHJlbWluZFZhcgkJSWRlbnRpZmllcgotICBIaUxpbmsgcmVtaW5kU3Vic3QJCUNvbnN0YW50Ci0gIEhpTGluayByZW1pbmRBZHZhbmNlTnVtYmVyCU51bWJlcgotICBIaUxpbmsgcmVtaW5kRGF0ZVNlcGFyYXRvcnMJQ29tbWVudAotICBIaUxpbmsgcmVtaW5kRGF0ZXMJCVN0cmluZwotICBIaUxpbmsgcmVtaW5kV2FybmluZwkJRXJyb3IKK0hpTGluayByZW1pbmRDb21tYW5kcwkJRnVuY3Rpb24KK0hpTGluayByZW1pbmRFeHBpcnkJCVJlcGVhdAorSGlMaW5rIHJlbWluZFRhZwkJTGFiZWwKK0hpTGluayByZW1pbmRUaW1lZAkJU3RhdGVtZW50CitIaUxpbmsgcmVtaW5kTW92ZQkJU3RhdGVtZW50CitIaUxpbmsgcmVtaW5kU3BlY2lhbAkJSW5jbHVkZQorSGlMaW5rIHJlbWluZFJ1bgkJRnVuY3Rpb24KK0hpTGluayByZW1pbmRDb25kaXRpb25hbAlDb25kaXRpb25hbAorSGlMaW5rIHJlbWluZENvbW1lbnQJCUNvbW1lbnQKK0hpTGluayByZW1pbmRUaW1lcwkJU3RyaW5nCitIaUxpbmsgcmVtaW5kU3RyaW5nCQlTdHJpbmcKK0hpTGluayByZW1pbmREZWJ1ZwkJRGVidWcKK0hpTGluayByZW1pbmRWYXIJCUlkZW50aWZpZXIKK0hpTGluayByZW1pbmRTdWJzdAkJQ29uc3RhbnQKK0hpTGluayByZW1pbmRBZHZhbmNlTnVtYmVyCU51bWJlcgorSGlMaW5rIHJlbWluZERhdGVTZXBhcmF0b3JzCUNvbW1lbnQKK0hpTGluayByZW1pbmREYXRlcwkJU3RyaW5nCitIaUxpbmsgcmVtaW5kV2FybmluZwkJRXJyb3IKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInJlbWluZCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcmVzb2x2LnZpbSBiL3J1bnRpbWUvc3ludGF4L3Jlc29sdi52aW0KaW5kZXggMDZkNjg4NS4uMTc0NGU2NiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcmVzb2x2LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9yZXNvbHYudmltCkBAIC05LDkgKzksOCBAQAogIiAgIERhdmlkIE5lY2FzIChZZXRpKSA8eWV0aUBwaHlzaWNzLm11bmkuY3o+CiAiICAgU3RlZmFubyBaYWNjaGlyb2xpIDx6YWNrQGRlYmlhbi5vcmc+CiAKLWlmIHZlcnNpb24gPCA2MDAKLQlzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAJZmluaXNoCiBlbmRpZgogCkBAIC01MCwzOCArNDksMzEgQEAKICIgQWRkaXRpb25hbCBlcnJvcnMKIHN5biBtYXRjaCByZXNvbHZFcnJvciAvXnNlYXJjaCAuXHsyNTcsfS8KIAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2NvbmZpZ19zeW50YXhfaW5pdHMiKQotCWlmIHZlcnNpb24gPCA1MDgKLQkJbGV0IGRpZF9jb25maWdfc3ludGF4X2luaXRzID0gMQotCQljb21tYW5kISAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLQllbHNlCi0JCWNvbW1hbmQhIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLQllbmRpZgorY29tbWFuZCEgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0JSGlMaW5rIHJlc29sdklQIE51bWJlcgotCUhpTGluayByZXNvbHZJUE5ldG1hc2sgTnVtYmVyCi0JSGlMaW5rIHJlc29sdkhvc3RuYW1lIFN0cmluZwotCUhpTGluayByZXNvbHZPcHRpb24gU3RyaW5nCitIaUxpbmsgcmVzb2x2SVAgTnVtYmVyCitIaUxpbmsgcmVzb2x2SVBOZXRtYXNrIE51bWJlcgorSGlMaW5rIHJlc29sdkhvc3RuYW1lIFN0cmluZworSGlMaW5rIHJlc29sdk9wdGlvbiBTdHJpbmcKIAotCUhpTGluayByZXNvbHZJUE5hbWVzZXJ2ZXIgTnVtYmVyCi0JSGlMaW5rIHJlc29sdkhvc3RuYW1lU2VhcmNoIFN0cmluZwotCUhpTGluayByZXNvbHZJUE5ldG1hc2tTb3J0TGlzdCBOdW1iZXIKK0hpTGluayByZXNvbHZJUE5hbWVzZXJ2ZXIgTnVtYmVyCitIaUxpbmsgcmVzb2x2SG9zdG5hbWVTZWFyY2ggU3RyaW5nCitIaUxpbmsgcmVzb2x2SVBOZXRtYXNrU29ydExpc3QgTnVtYmVyCiAKLQlIaUxpbmsgcmVzb2x2TmFtZVNlcnZlciBJZGVudGlmaWVyCi0JSGlMaW5rIHJlc29sdkx3c2VydmVyIElkZW50aWZpZXIKLQlIaUxpbmsgcmVzb2x2RG9tYWluIElkZW50aWZpZXIKLQlIaUxpbmsgcmVzb2x2U2VhcmNoIElkZW50aWZpZXIKLQlIaUxpbmsgcmVzb2x2U29ydExpc3QgSWRlbnRpZmllcgotCUhpTGluayByZXNvbHZPcHRpb25zIElkZW50aWZpZXIKK0hpTGluayByZXNvbHZOYW1lU2VydmVyIElkZW50aWZpZXIKK0hpTGluayByZXNvbHZMd3NlcnZlciBJZGVudGlmaWVyCitIaUxpbmsgcmVzb2x2RG9tYWluIElkZW50aWZpZXIKK0hpTGluayByZXNvbHZTZWFyY2ggSWRlbnRpZmllcgorSGlMaW5rIHJlc29sdlNvcnRMaXN0IElkZW50aWZpZXIKK0hpTGluayByZXNvbHZPcHRpb25zIElkZW50aWZpZXIKIAotCUhpTGluayByZXNvbHZDb21tZW50IENvbW1lbnQKLQlIaUxpbmsgcmVzb2x2T3BlcmF0b3IgT3BlcmF0b3IKLQlIaUxpbmsgcmVzb2x2RXJyb3IgRXJyb3IKLQlIaUxpbmsgcmVzb2x2SVBFcnJvciBFcnJvcgotCUhpTGluayByZXNvbHZJUFNwZWNpYWwgU3BlY2lhbAorSGlMaW5rIHJlc29sdkNvbW1lbnQgQ29tbWVudAorSGlMaW5rIHJlc29sdk9wZXJhdG9yIE9wZXJhdG9yCitIaUxpbmsgcmVzb2x2RXJyb3IgRXJyb3IKK0hpTGluayByZXNvbHZJUEVycm9yIEVycm9yCitIaUxpbmsgcmVzb2x2SVBTcGVjaWFsIFNwZWNpYWwKIAotCWRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicmVzb2x2IgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9yZXZhLnZpbSBiL3J1bnRpbWUvc3ludGF4L3JldmEudmltCmluZGV4IDAzZGZjOWQuLmY2MDU5OTIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3JldmEudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3JldmEudmltCkBAIC03LDEzICs3LDggQEAKICIgRmlsZXR5cGVzOgkqLnJmICouZnJ0CiAiIE5PVEU6IAlZb3Ugc2hvdWxkIGFsc28gaGF2ZSB0aGUgZnRwbHVnaW4vcmV2YS52aW0gZmlsZSB0byBzZXQgJ2lzaycKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMgYW5kIGRvbid0IGxvYWQKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi0gIGVjaG8gIlJldmEgc3ludGF4IGZpbGUgcmVxdWlyZXMgdmVyc2lvbiA2LjAgb3IgbGF0ZXIgb2YgdmltISIKLSAgZmluaXNoCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICAgZmluaXNoCiBlbmRpZgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9yZXh4LnZpbSBiL3J1bnRpbWUvc3ludGF4L3JleHgudmltCmluZGV4IGVmNjk4YTUuLmIyMmFmOTMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3JleHgudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3JleHgudmltCkBAIC02LDExICs2LDggQEAKICIgU3BlY2lhbCBUaGFua3MgdG8gRGFuIFNoYXJwIDxkd3NoYXJwQGhvdG1haWwuY29tPiBhbmQgUm9ueSBHLiBGbGF0c2NoZXIKICIgPFJvbnkuRmxhdHNjaGVyQHd1LXdpZW4uYWMuYXQ+IGZvciBjb21tZW50cyBhbmQgYWRkaXRpb25zCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0yNDQsODcgKzI0MSw3OSBAQAogZXhlYyAic3luIHN5bmMgZnJvbXN0YXJ0IgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9yZXh4X3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3JleHhfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICIgbWFrZSBiaW5hcnkgYW5kIGhleCBzdHJpbmdzIHN0YW5kIG91dAotICBoaSByZXh4U3RyaW5nQ29uc3RhbnQgdGVybT1ib2xkLHVuZGVybGluZSBjdGVybWZnPTUgY3Rlcm09Ym9sZCBndWlmZz1kYXJrTWFnZW50YSBndWk9Ym9sZAorIiBtYWtlIGJpbmFyeSBhbmQgaGV4IHN0cmluZ3Mgc3RhbmQgb3V0CitoaSByZXh4U3RyaW5nQ29uc3RhbnQgdGVybT1ib2xkLHVuZGVybGluZSBjdGVybWZnPTUgY3Rlcm09Ym9sZCBndWlmZz1kYXJrTWFnZW50YSBndWk9Ym9sZAogCi0gIEhpTGluayByZXh4TGFiZWwyCQlGdW5jdGlvbgotICBIaUxpbmsgZG9Mb29wU2VsZWN0TGFiZWxSZWdpb24JcmV4eEtleXdvcmQKLSAgSGlMaW5rIGVuZEl0ZXJhdGVMZWF2ZUxhYmVsUmVnaW9uCXJleHhLZXl3b3JkCi0gIEhpTGluayByZXh4TG9vcEtleXdvcmRzCXJleHhLZXl3b3JkICIgVG9kbworSGlMaW5rIHJleHhMYWJlbDIJCUZ1bmN0aW9uCitIaUxpbmsgZG9Mb29wU2VsZWN0TGFiZWxSZWdpb24JcmV4eEtleXdvcmQKK0hpTGluayBlbmRJdGVyYXRlTGVhdmVMYWJlbFJlZ2lvbglyZXh4S2V5d29yZAorSGlMaW5rIHJleHhMb29wS2V5d29yZHMJcmV4eEtleXdvcmQgIiBUb2RvCiAKLSAgSGlMaW5rIHJleHhOdW1iZXIJCU5vcm1hbCAiRGlmZkNoYW5nZQorSGlMaW5rIHJleHhOdW1iZXIJCU5vcm1hbCAiRGlmZkNoYW5nZQogIiAgSGlMaW5rIHJleHhJZGVudGlmaWVyCQlEaWZmQ2hhbmdlCiAKLSAgSGlMaW5rIHJleHhSZWd1bGFyQ2FsbFNpZ25hbAlTdGF0ZW1lbnQKLSAgSGlMaW5rIHJleHhFeGNlcHRpb25IYW5kbGluZwlTdGF0ZW1lbnQKK0hpTGluayByZXh4UmVndWxhckNhbGxTaWduYWwJU3RhdGVtZW50CitIaUxpbmsgcmV4eEV4Y2VwdGlvbkhhbmRsaW5nCVN0YXRlbWVudAogCi0gIEhpTGluayByZXh4TGFiZWwJCUZ1bmN0aW9uCi0gIEhpTGluayByZXh4Q2hhcmFjdGVyCQlDaGFyYWN0ZXIKLSAgSGlMaW5rIHJleHhQYXJlbkVycm9yCQlyZXh4RXJyb3IKLSAgSGlMaW5rIHJleHhJblBhcmVuCQlyZXh4RXJyb3IKLSAgSGlMaW5rIHJleHhDb21tZW50RXJyb3IJcmV4eEVycm9yCi0gIEhpTGluayByZXh4RXJyb3IJCUVycm9yCi0gIEhpTGluayByZXh4S2V5d29yZAkJU3RhdGVtZW50Ci0gIEhpTGluayByZXh4S2V5d29yZFN0YXRlbWVudHMJU3RhdGVtZW50CitIaUxpbmsgcmV4eExhYmVsCQlGdW5jdGlvbgorSGlMaW5rIHJleHhDaGFyYWN0ZXIJCUNoYXJhY3RlcgorSGlMaW5rIHJleHhQYXJlbkVycm9yCQlyZXh4RXJyb3IKK0hpTGluayByZXh4SW5QYXJlbgkJcmV4eEVycm9yCitIaUxpbmsgcmV4eENvbW1lbnRFcnJvcglyZXh4RXJyb3IKK0hpTGluayByZXh4RXJyb3IJCUVycm9yCitIaUxpbmsgcmV4eEtleXdvcmQJCVN0YXRlbWVudAorSGlMaW5rIHJleHhLZXl3b3JkU3RhdGVtZW50cwlTdGF0ZW1lbnQKIAotICBIaUxpbmsgcmV4eEZ1bmN0aW9uCQlGdW5jdGlvbgotICBIaUxpbmsgcmV4eFN0cmluZwkJU3RyaW5nCi0gIEhpTGluayByZXh4Q29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgcmV4eFRvZG8JCVRvZG8KLSAgSGlMaW5rIHJleHhTcGVjaWFsVmFyaWFibGUJU3BlY2lhbAotICBIaUxpbmsgcmV4eENvbmRpdGlvbmFsCXJleHhLZXl3b3JkCitIaUxpbmsgcmV4eEZ1bmN0aW9uCQlGdW5jdGlvbgorSGlMaW5rIHJleHhTdHJpbmcJCVN0cmluZworSGlMaW5rIHJleHhDb21tZW50CQlDb21tZW50CitIaUxpbmsgcmV4eFRvZG8JCVRvZG8KK0hpTGluayByZXh4U3BlY2lhbFZhcmlhYmxlCVNwZWNpYWwKK0hpTGluayByZXh4Q29uZGl0aW9uYWwJcmV4eEtleXdvcmQKIAotICBIaUxpbmsgcmV4eE9wZXJhdG9yCQlPcGVyYXRvcgotICBIaUxpbmsgcmV4eE1lc3NhZ2VPcGVyYXRvcglyZXh4T3BlcmF0b3IKLSAgSGlMaW5rIHJleHhMaW5lQ29tbWVudAlDb21tZW50CitIaUxpbmsgcmV4eE9wZXJhdG9yCQlPcGVyYXRvcgorSGlMaW5rIHJleHhNZXNzYWdlT3BlcmF0b3IJcmV4eE9wZXJhdG9yCitIaUxpbmsgcmV4eExpbmVDb21tZW50CUNvbW1lbnQKIAotICBIaUxpbmsgcmV4eExpbmVDb250aW51ZQlXaWxkTWVudQorSGlMaW5rIHJleHhMaW5lQ29udGludWUJV2lsZE1lbnUKIAotICBIaUxpbmsgcmV4eERpcmVjdGl2ZQkJcmV4eEtleXdvcmQKLSAgSGlMaW5rIHJleHhDbGFzc0RpcmVjdGl2ZQlUeXBlCi0gIEhpTGluayByZXh4TWV0aG9kRGlyZWN0aXZlCXJleHhGdW5jdGlvbgotICBIaUxpbmsgcmV4eEF0dHJpYnV0ZURpcmVjdGl2ZQlyZXh4RnVuY3Rpb24KLSAgSGlMaW5rIHJleHhSZXF1aXJlc0RpcmVjdGl2ZQlJbmNsdWRlCi0gIEhpTGluayByZXh4Um91dGluZURpcmVjdGl2ZQlyZXh4RnVuY3Rpb24KK0hpTGluayByZXh4RGlyZWN0aXZlCQlyZXh4S2V5d29yZAorSGlMaW5rIHJleHhDbGFzc0RpcmVjdGl2ZQlUeXBlCitIaUxpbmsgcmV4eE1ldGhvZERpcmVjdGl2ZQlyZXh4RnVuY3Rpb24KK0hpTGluayByZXh4QXR0cmlidXRlRGlyZWN0aXZlCXJleHhGdW5jdGlvbgorSGlMaW5rIHJleHhSZXF1aXJlc0RpcmVjdGl2ZQlJbmNsdWRlCitIaUxpbmsgcmV4eFJvdXRpbmVEaXJlY3RpdmUJcmV4eEZ1bmN0aW9uCiAKICIgcmdmLCAyMDEyLTA5LTA5Ci0gIEhpTGluayByZXh4T3B0aW9uc0RpcmVjdGl2ZQlyZXh4RnVuY3Rpb24KLSAgSGlMaW5rIHJleHhPcHRpb25zRGlyZWN0aXZlMiAgcmV4eE9wdGlvbnNEaXJlY3RpdmUKLSAgSGlMaW5rIHJleHhPcHRpb25zRGlyZWN0aXZlMyAgTm9ybWFsICIgcmV4eE9wdGlvbnNEaXJlY3RpdmUKK0hpTGluayByZXh4T3B0aW9uc0RpcmVjdGl2ZQlyZXh4RnVuY3Rpb24KK0hpTGluayByZXh4T3B0aW9uc0RpcmVjdGl2ZTIgIHJleHhPcHRpb25zRGlyZWN0aXZlCitIaUxpbmsgcmV4eE9wdGlvbnNEaXJlY3RpdmUzICBOb3JtYWwgIiByZXh4T3B0aW9uc0RpcmVjdGl2ZQogCi0gIEhpTGluayByZXh4Q29uc3RhbnREaXJlY3RpdmUJcmV4eEZ1bmN0aW9uCitIaUxpbmsgcmV4eENvbnN0YW50RGlyZWN0aXZlCXJleHhGdW5jdGlvbgogCi0gIEhpTGluayByZXh4Q29uc3QJCUNvbnN0YW50Ci0gIEhpTGluayByZXh4VHlwZVNwZWNpZmllcglUeXBlCi0gIEhpTGluayByZXh4QnVpbHRpbkNsYXNzCXJleHhUeXBlU3BlY2lmaWVyCitIaUxpbmsgcmV4eENvbnN0CQlDb25zdGFudAorSGlMaW5rIHJleHhUeXBlU3BlY2lmaWVyCVR5cGUKK0hpTGluayByZXh4QnVpbHRpbkNsYXNzCXJleHhUeXBlU3BlY2lmaWVyCiAKLSAgSGlMaW5rIHJleHhFbnZpcm9ubWVudFN5bWJvbCAgcmV4eENvbnN0Ci0gIEhpTGluayByZXh4TWVzc2FnZQkJcmV4eEZ1bmN0aW9uCitIaUxpbmsgcmV4eEVudmlyb25tZW50U3ltYm9sICByZXh4Q29uc3QKK0hpTGluayByZXh4TWVzc2FnZQkJcmV4eEZ1bmN0aW9uCiAKLSAgSGlMaW5rIHJleHhQYXJzZSAgICAgICAgICAgICAgcmV4eEtleXdvcmQKLSAgSGlMaW5rIHJleHhQYXJzZTIgICAgICAgICAgICAgcmV4eFBhcnNlCitIaUxpbmsgcmV4eFBhcnNlICAgICAgICAgICAgICByZXh4S2V5d29yZAorSGlMaW5rIHJleHhQYXJzZTIgICAgICAgICAgICAgcmV4eFBhcnNlCiAKLSAgSGlMaW5rIHJleHhHdWFyZCAgICAgICAgICAgICAgcmV4eEtleXdvcmQKLSAgSGlMaW5rIHJleHhUcmFjZSAgICAgICAgICAgICAgcmV4eEtleXdvcmQKK0hpTGluayByZXh4R3VhcmQgICAgICAgICAgICAgIHJleHhLZXl3b3JkCitIaUxpbmsgcmV4eFRyYWNlICAgICAgICAgICAgICByZXh4S2V5d29yZAogCi0gIEhpTGluayByZXh4UmFpc2UgICAgICAgICAgICAgIHJleHhLZXl3b3JkCi0gIEhpTGluayByZXh4UmFpc2UyICAgICAgICAgICAgIHJleHhSYWlzZQorSGlMaW5rIHJleHhSYWlzZSAgICAgICAgICAgICAgcmV4eEtleXdvcmQKK0hpTGluayByZXh4UmFpc2UyICAgICAgICAgICAgIHJleHhSYWlzZQogCi0gIEhpTGluayByZXh4Rm9yd2FyZCAgICAgICAgICAgIHJleHhLZXl3b3JkCi0gIEhpTGluayByZXh4Rm9yd2FyZDIgICAgICAgICAgIHJleHhGb3J3YXJkCitIaUxpbmsgcmV4eEZvcndhcmQgICAgICAgICAgICByZXh4S2V5d29yZAorSGlMaW5rIHJleHhGb3J3YXJkMiAgICAgICAgICAgcmV4eEZvcndhcmQKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInJleHgiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3JpYi52aW0gYi9ydW50aW1lL3N5bnRheC9yaWIudmltCmluZGV4IDZiOWYyYjAuLjNkMjIzNWYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3JpYi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcmliLnZpbQpAQCAtNCwxMCArNCw4IEBACiAiIExhc3QgQ2hhbmdlOgkyMDAzIE1heSAxMQogIgogCi0iIFJlbW92ZSBhbnkgb2xkIHN5bnRheCBzdHVmZiBoYW5naW5nIGFyb3VuZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW4gY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNDYsMjYgKzQ0LDE5IEBACiBzeW4gbWF0Y2gJcmliRmxvYXQJICBkaXNwbGF5IGNvbnRhaW5lZCAiWy1dXD1cZFwrZVstK11cZFwrXD4iCiBzeW4gY2FzZSBtYXRjaAogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfcmliX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3JpYl9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHJpYlN0cnVjdHVyZQkJU3RydWN0dXJlCi0gIEhpTGluayByaWJDb21tYW5kCQlTdGF0ZW1lbnQKK0hpTGluayByaWJTdHJ1Y3R1cmUJCVN0cnVjdHVyZQorSGlMaW5rIHJpYkNvbW1hbmQJCVN0YXRlbWVudAogCi0gIEhpTGluayByaWJTdHJ1Y3R1cmVDb21tZW50CVNwZWNpYWxDb21tZW50Ci0gIEhpTGluayByaWJMaW5lQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHJpYlN0cnVjdHVyZUNvbW1lbnQJU3BlY2lhbENvbW1lbnQKK0hpTGluayByaWJMaW5lQ29tbWVudAkJQ29tbWVudAogCi0gIEhpTGluayByaWJTdHJpbmcJCVN0cmluZwotICBIaUxpbmsgcmliTnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIHJpYkZsb2F0CQlGbG9hdAorSGlMaW5rIHJpYlN0cmluZwkJU3RyaW5nCitIaUxpbmsgcmliTnVtYmVyCQlOdW1iZXIKK0hpTGluayByaWJGbG9hdAkJRmxvYXQKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kCitkZWxjb21tYW5kIEhpTGluawogCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInJpYiIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3JvYm90cy52aW0gYi9ydW50aW1lL3N5bnRheC9yb2JvdHMudmltCmluZGV4IDA2NjYyOGIuLjIzYmU4ZDIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3JvYm90cy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcm9ib3RzLnZpbQpAQCAtNSwxMSArNSw4IEBACiAiIFVSTDogaHR0cDovL3d3dy5tZ2dlbi5jb20vdmltL3N5bnRheC9yb2JvdHMuemlwCiAiIExhc3QgY2hhbmdlOgkyMDAxIE1heSAwOQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICAgIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgICBmaW5pc2gKIGVuZGlmCiAKQEAgLTQxLDI2ICszOCwxOSBAQAogc3luIG1hdGNoICByb2JvdHNNYWlsCQkiXFMqQFxTKiIKIHN5biByZWdpb24gcm9ib3RzU3RyaW5nCQlzdGFydD0rTFw9Iisgc2tpcD0rXFxcXFx8XFwiKyBlbmQ9KyIrCiAKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9yb2Jvc19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9yb2JvdHNfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayByb2JvdHNDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayByb2JvdHNBZ2VudAkJVHlwZQotICBIaUxpbmsgcm9ib3RzRGlzYWxsb3cJCVN0YXRlbWVudAotICBIaUxpbmsgcm9ib3RzTGluZQkJU3BlY2lhbAotICBIaUxpbmsgcm9ib3RzU3RhcgkJT3BlcmF0b3IKLSAgSGlMaW5rIHJvYm90c0RlbGltaXRlcglEZWxpbWl0ZXIKLSAgSGlMaW5rIHJvYm90c1VybAkJU3RyaW5nCi0gIEhpTGluayByb2JvdHNNYWlsCQlTdHJpbmcKLSAgSGlMaW5rIHJvYm90c1N0cmluZwkJU3RyaW5nCitIaUxpbmsgcm9ib3RzQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHJvYm90c0FnZW50CQlUeXBlCitIaUxpbmsgcm9ib3RzRGlzYWxsb3cJCVN0YXRlbWVudAorSGlMaW5rIHJvYm90c0xpbmUJCVNwZWNpYWwKK0hpTGluayByb2JvdHNTdGFyCQlPcGVyYXRvcgorSGlMaW5rIHJvYm90c0RlbGltaXRlcglEZWxpbWl0ZXIKK0hpTGluayByb2JvdHNVcmwJCVN0cmluZworSGlMaW5rIHJvYm90c01haWwJCVN0cmluZworSGlMaW5rIHJvYm90c1N0cmluZwkJU3RyaW5nCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInJvYm90cyIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3JwY2dlbi52aW0gYi9ydW50aW1lL3N5bnRheC9ycGNnZW4udmltCmluZGV4IDg1MDM2ZGMuLmVlNGNjM2YgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3JwY2dlbi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcnBjZ2VuLnZpbQpAQCAtMTAsMTEgKzEwLDcgQEAKIGVuZGlmCiAKICIgUmVhZCB0aGUgQyBzeW50YXggdG8gc3RhcnQgd2l0aAotaWYgdmVyc2lvbiA8IDYwMAotICBzb3VyY2UgPHNmaWxlPjpwOmgvYy52aW0KLWVsc2UKLSAgcnVudGltZSEgc3ludGF4L2MudmltCi1lbmRpZgorcnVudGltZSEgc3ludGF4L2MudmltCiAKIHN5biBrZXl3b3JkIHJwY1Byb2dyYW0JcHJvZ3JhbQkJCQlza2lwbmwgc2tpcHdoaXRlIG5leHRncm91cD1ycGNQcm9nTmFtZQogc3luIG1hdGNoICAgcnBjUHJvZ05hbWUJY29udGFpbmVkCSJcPFxpXEkqXD4iCXNraXBubCBza2lwd2hpdGUgbmV4dGdyb3VwPXJwY1Byb2dab25lCkBAIC0yOCwzMSArMjQsMjMgQEAKIHN5biBtYXRjaCAgIHJwY1Bhc3NUaHJ1CQkJIl5ccyolLiokIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9ycGNnZW5fc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfcnBjZ2VuX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgcnBjUHJvZ05hbWUJcnBjTmFtZQotICBIaUxpbmsgcnBjUHJvZ3JhbQlycGNTdGF0ZW1lbnQKLSAgSGlMaW5rIHJwY1ZlcnNOYW1lCXJwY05hbWUKLSAgSGlMaW5rIHJwY1ZlcnNpb24JcnBjU3RhdGVtZW50CitIaUxpbmsgcnBjUHJvZ05hbWUJcnBjTmFtZQorSGlMaW5rIHJwY1Byb2dyYW0JcnBjU3RhdGVtZW50CitIaUxpbmsgcnBjVmVyc05hbWUJcnBjTmFtZQorSGlMaW5rIHJwY1ZlcnNpb24JcnBjU3RhdGVtZW50CiAKLSAgSGlMaW5rIHJwY0RlY2wJY1R5cGUKLSAgSGlMaW5rIHJwY1Bhc3NUaHJ1CWNDb21tZW50CitIaUxpbmsgcnBjRGVjbAljVHlwZQorSGlMaW5rIHJwY1Bhc3NUaHJ1CWNDb21tZW50CiAKLSAgSGlMaW5rIHJwY05hbWUJU3BlY2lhbAotICBIaUxpbmsgcnBjUHJvY05tYnIJRGVsaW1pdGVyCi0gIEhpTGluayBycGNQcm9nTm1ickVycglFcnJvcgotICBIaUxpbmsgcnBjU3RhdGVtZW50CVN0YXRlbWVudAorSGlMaW5rIHJwY05hbWUJU3BlY2lhbAorSGlMaW5rIHJwY1Byb2NObWJyCURlbGltaXRlcgorSGlMaW5rIHJwY1Byb2dObWJyRXJyCUVycm9yCitIaUxpbmsgcnBjU3RhdGVtZW50CVN0YXRlbWVudAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicnBjZ2VuIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9ycGwudmltIGIvcnVudGltZS9zeW50YXgvcnBsLnZpbQppbmRleCA2NDU3ODAzLi5kMmJmZmJhIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9ycGwudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3JwbC52aW0KQEAgLTYsMTEgKzYsOCBAQAogIiBVUkw6CQlodHRwOi8vd3d3Lm1ha2FsaXMuZnIvfmJlcnRyYW5kL3JwbDIvZG93bmxvYWQvdmltL2luZGVudC9ycGwudmltCiAiIENyZWRpdHM6CU5vdGhpbmcKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTQxNyw3NyArNDE0LDY5IEBACiBzeW50YXggbWF0Y2ggcnBsVGFiICJcdCIgIHRyYW5zcGFyZW50CiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3JwbF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9ycGxfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpZ2hsaWdodCBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGlnaGxpZ2h0IGRlZmF1bHQgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpZ2hsaWdodCBkZWZhdWx0IGxpbmsgPGFyZ3M+CiAKLSAgIiBUaGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCisiIFRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KIAotICBIaUxpbmsgcnBsQ29udHJvbAkJU3RhdGVtZW50Ci0gIEhpTGluayBycGxTdGF0ZW1lbnQJCVN0YXRlbWVudAotICBIaUxpbmsgcnBsQWxnQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIHJwbENvbmRpdGlvbmFsCQlSZXBlYXQKLSAgSGlMaW5rIHJwbENvbmRpdGlvbmFsRXJyb3IJRXJyb3IKLSAgSGlMaW5rIHJwbFJlcGVhdAkJUmVwZWF0Ci0gIEhpTGluayBycGxDeWNsZQkJUmVwZWF0Ci0gIEhpTGluayBycGxVbnRpbAkJUmVwZWF0Ci0gIEhpTGluayBycGxJbnRyaW5zaWMJCVNwZWNpYWwKLSAgSGlMaW5rIHJwbFN0b3JhZ2UJCVN0b3JhZ2VDbGFzcwotICBIaUxpbmsgcnBsU3RvcmFnZUV4cHIJCVN0b3JhZ2VDbGFzcwotICBIaUxpbmsgcnBsU3RvcmFnZUVycm9yCUVycm9yCi0gIEhpTGluayBycGxSZWFkV3JpdGUJCXJwbEludHJpbnNpYworSGlMaW5rIHJwbENvbnRyb2wJCVN0YXRlbWVudAorSGlMaW5rIHJwbFN0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsgcnBsQWxnQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKK0hpTGluayBycGxDb25kaXRpb25hbAkJUmVwZWF0CitIaUxpbmsgcnBsQ29uZGl0aW9uYWxFcnJvcglFcnJvcgorSGlMaW5rIHJwbFJlcGVhdAkJUmVwZWF0CitIaUxpbmsgcnBsQ3ljbGUJCVJlcGVhdAorSGlMaW5rIHJwbFVudGlsCQlSZXBlYXQKK0hpTGluayBycGxJbnRyaW5zaWMJCVNwZWNpYWwKK0hpTGluayBycGxTdG9yYWdlCQlTdG9yYWdlQ2xhc3MKK0hpTGluayBycGxTdG9yYWdlRXhwcgkJU3RvcmFnZUNsYXNzCitIaUxpbmsgcnBsU3RvcmFnZUVycm9yCUVycm9yCitIaUxpbmsgcnBsUmVhZFdyaXRlCQlycGxJbnRyaW5zaWMKIAotICBIaUxpbmsgcnBsT3BlcmF0b3IJCU9wZXJhdG9yCitIaUxpbmsgcnBsT3BlcmF0b3IJCU9wZXJhdG9yCiAKLSAgSGlMaW5rIHJwbExpc3QJCVNwZWNpYWwKLSAgSGlMaW5rIHJwbEFycmF5CQlTcGVjaWFsCi0gIEhpTGluayBycGxDb25zdGFudAkJSWRlbnRpZmllcgotICBIaUxpbmsgcnBsRXhwcgkJVHlwZQorSGlMaW5rIHJwbExpc3QJCVNwZWNpYWwKK0hpTGluayBycGxBcnJheQkJU3BlY2lhbAorSGlMaW5rIHJwbENvbnN0YW50CQlJZGVudGlmaWVyCitIaUxpbmsgcnBsRXhwcgkJVHlwZQogCi0gIEhpTGluayBycGxTdHJpbmcJCVN0cmluZwotICBIaUxpbmsgcnBsU3RyaW5nR3VpbGxlcwlTdHJpbmcKLSAgSGlMaW5rIHJwbFN0cmluZ0FudGlzbGFzaAlTdHJpbmcKK0hpTGluayBycGxTdHJpbmcJCVN0cmluZworSGlMaW5rIHJwbFN0cmluZ0d1aWxsZXMJU3RyaW5nCitIaUxpbmsgcnBsU3RyaW5nQW50aXNsYXNoCVN0cmluZwogCi0gIEhpTGluayBycGxCaW5hcnkJCUJvb2xlYW4KLSAgSGlMaW5rIHJwbE9jdGFsCQlCb29sZWFuCi0gIEhpTGluayBycGxEZWNpbWFsCQlCb29sZWFuCi0gIEhpTGluayBycGxIZXhhZGVjaW1hbAkJQm9vbGVhbgotICBIaUxpbmsgcnBsSW50ZWdlcgkJTnVtYmVyCi0gIEhpTGluayBycGxGbG9hdAkJRmxvYXQKLSAgSGlMaW5rIHJwbENvbXBsZXgJCUZsb2F0Ci0gIEhpTGluayBycGxCb29sZWFuCQlJZGVudGlmaWVyCitIaUxpbmsgcnBsQmluYXJ5CQlCb29sZWFuCitIaUxpbmsgcnBsT2N0YWwJCUJvb2xlYW4KK0hpTGluayBycGxEZWNpbWFsCQlCb29sZWFuCitIaUxpbmsgcnBsSGV4YWRlY2ltYWwJCUJvb2xlYW4KK0hpTGluayBycGxJbnRlZ2VyCQlOdW1iZXIKK0hpTGluayBycGxGbG9hdAkJRmxvYXQKK0hpTGluayBycGxDb21wbGV4CQlGbG9hdAorSGlMaW5rIHJwbEJvb2xlYW4JCUlkZW50aWZpZXIKIAotICBIaUxpbmsgcnBsT2Jzb2xldGUJCVRvZG8KK0hpTGluayBycGxPYnNvbGV0ZQkJVG9kbwogCi0gIEhpTGluayBycGxQcmVDb25kaXQJCVByZUNvbmRpdAotICBIaUxpbmsgcnBsSW5jbHVkZQkJSW5jbHVkZQotICBIaUxpbmsgcnBsSW5jbHVkZWQJCXJwbFN0cmluZwotICBIaUxpbmsgcnBsSW5jbHVkZQkJSW5jbHVkZQotICBIaUxpbmsgcnBsRXhlY1BhdGgJCUluY2x1ZGUKLSAgSGlMaW5rIHJwbFByZVByb2MJCVByZVByb2MKLSAgSGlMaW5rIHJwbENvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIHJwbENvbW1lbnRMaW5lCQlDb21tZW50Ci0gIEhpTGluayBycGxDb21tZW50U3RyaW5nCUNvbW1lbnQKLSAgSGlMaW5rIHJwbFN1YkRlbGltaXRvcglycGxTdG9yYWdlCi0gIEhpTGluayBycGxDb21tZW50RXJyb3IJRXJyb3IKLSAgSGlMaW5rIHJwbFBhcmVuRXJyb3IJCUVycm9yCi0gIEhpTGluayBycGxTdWJFcnJvcgkJRXJyb3IKLSAgSGlMaW5rIHJwbEFycmF5RXJyb3IJCUVycm9yCi0gIEhpTGluayBycGxMaXN0RXJyb3IJCUVycm9yCi0gIEhpTGluayBycGxUYWIJCQlFcnJvcgotICBIaUxpbmsgcnBsQmluYXJ5RXJyb3IJCUVycm9yCi0gIEhpTGluayBycGxPY3RhbEVycm9yCQlFcnJvcgotICBIaUxpbmsgcnBsRGVjaW1hbEVycm9yCUVycm9yCi0gIEhpTGluayBycGxIZXhhZGVjaW1hbEVycm9yCUVycm9yCitIaUxpbmsgcnBsUHJlQ29uZGl0CQlQcmVDb25kaXQKK0hpTGluayBycGxJbmNsdWRlCQlJbmNsdWRlCitIaUxpbmsgcnBsSW5jbHVkZWQJCXJwbFN0cmluZworSGlMaW5rIHJwbEluY2x1ZGUJCUluY2x1ZGUKK0hpTGluayBycGxFeGVjUGF0aAkJSW5jbHVkZQorSGlMaW5rIHJwbFByZVByb2MJCVByZVByb2MKK0hpTGluayBycGxDb21tZW50CQlDb21tZW50CitIaUxpbmsgcnBsQ29tbWVudExpbmUJCUNvbW1lbnQKK0hpTGluayBycGxDb21tZW50U3RyaW5nCUNvbW1lbnQKK0hpTGluayBycGxTdWJEZWxpbWl0b3IJcnBsU3RvcmFnZQorSGlMaW5rIHJwbENvbW1lbnRFcnJvcglFcnJvcgorSGlMaW5rIHJwbFBhcmVuRXJyb3IJCUVycm9yCitIaUxpbmsgcnBsU3ViRXJyb3IJCUVycm9yCitIaUxpbmsgcnBsQXJyYXlFcnJvcgkJRXJyb3IKK0hpTGluayBycGxMaXN0RXJyb3IJCUVycm9yCitIaUxpbmsgcnBsVGFiCQkJRXJyb3IKK0hpTGluayBycGxCaW5hcnlFcnJvcgkJRXJyb3IKK0hpTGluayBycGxPY3RhbEVycm9yCQlFcnJvcgorSGlMaW5rIHJwbERlY2ltYWxFcnJvcglFcnJvcgorSGlMaW5rIHJwbEhleGFkZWNpbWFsRXJyb3IJRXJyb3IKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInJwbCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcnRmLnZpbSBiL3J1bnRpbWUvc3ludGF4L3J0Zi52aW0KaW5kZXggOGY1ZWE3MS4uMGM2M2U4ZCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcnRmLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9ydGYudmltCkBAIC0xMywxMSArMTMsOCBAQAogCiAiIFRPRE86IHJlbmRlciB1bmRlcmxpbmUsIGl0YWxpYywgYm9sZAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNTIsMzUgKzQ5LDI3IEBACiBzeW4gbWF0Y2ggcnRmRm9vdE5vdGUgIlsjJEsrXXtcXGZvb3Rub3RlLip9IiBjb250YWlucz1ydGZDb250cm9sV29yZCxydGZOZXdDb250cm9sV29yZAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9ydGZfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfcnRmX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAogCi0gICBIaUxpbmsgcnRmQ29udHJvbFdvcmQJCVN0YXRlbWVudAotICAgSGlMaW5rIHJ0Zk5ld0NvbnRyb2xXb3JkCVNwZWNpYWwKLSAgIEhpTGluayBydGZDb250cm9sU3ltYm9sCUNvbnN0YW50Ci0gICBIaUxpbmsgcnRmQ2hhcmFjdGVyCQlDaGFyYWN0ZXIKLSAgIEhpTGluayBydGZVbmljb2RlQ2hhcmFjdGVyCVNwZWNpYWxDaGFyCi0gICBIaUxpbmsgcnRmRm9vdE5vdGUJCUNvbW1lbnQKK0hpTGluayBydGZDb250cm9sV29yZAkJU3RhdGVtZW50CitIaUxpbmsgcnRmTmV3Q29udHJvbFdvcmQJU3BlY2lhbAorSGlMaW5rIHJ0ZkNvbnRyb2xTeW1ib2wJQ29uc3RhbnQKK0hpTGluayBydGZDaGFyYWN0ZXIJCUNoYXJhY3RlcgorSGlMaW5rIHJ0ZlVuaWNvZGVDaGFyYWN0ZXIJU3BlY2lhbENoYXIKK0hpTGluayBydGZGb290Tm90ZQkJQ29tbWVudAogCi0gICAiIERlZmluZSBjb2xvcnMgZm9yIHRoZSBzeW50YXggZmlsZQotICAgaGkgcnRmUmVkCSAgICAgIHRlcm09dW5kZXJsaW5lIGN0ZXJtPXVuZGVybGluZSBjdGVybWZnPURhcmtSZWQgZ3VpPXVuZGVybGluZSBndWlmZz1EYXJrUmVkCi0gICBoaSBydGZHcmVlbgkgICAgICB0ZXJtPXVuZGVybGluZSBjdGVybT11bmRlcmxpbmUgY3Rlcm1mZz1EYXJrR3JlZW4gZ3VpPXVuZGVybGluZSBndWlmZz1EYXJrR3JlZW4KLSAgIGhpIHJ0ZkJsdWUJICAgICAgdGVybT11bmRlcmxpbmUgY3Rlcm09dW5kZXJsaW5lIGN0ZXJtZmc9RGFya0JsdWUgZ3VpPXVuZGVybGluZSBndWlmZz1EYXJrQmx1ZQorIiBEZWZpbmUgY29sb3JzIGZvciB0aGUgc3ludGF4IGZpbGUKK2hpIHJ0ZlJlZAkgICAgICB0ZXJtPXVuZGVybGluZSBjdGVybT11bmRlcmxpbmUgY3Rlcm1mZz1EYXJrUmVkIGd1aT11bmRlcmxpbmUgZ3VpZmc9RGFya1JlZAoraGkgcnRmR3JlZW4JICAgICAgdGVybT11bmRlcmxpbmUgY3Rlcm09dW5kZXJsaW5lIGN0ZXJtZmc9RGFya0dyZWVuIGd1aT11bmRlcmxpbmUgZ3VpZmc9RGFya0dyZWVuCitoaSBydGZCbHVlCSAgICAgIHRlcm09dW5kZXJsaW5lIGN0ZXJtPXVuZGVybGluZSBjdGVybWZnPURhcmtCbHVlIGd1aT11bmRlcmxpbmUgZ3VpZmc9RGFya0JsdWUKIAotICAgSGlMaW5rIHJ0ZlJlZAlydGZSZWQKLSAgIEhpTGluayBydGZHcmVlbglydGZHcmVlbgotICAgSGlMaW5rIHJ0ZkJsdWUJcnRmQmx1ZQorSGlMaW5rIHJ0ZlJlZAlydGZSZWQKK0hpTGluayBydGZHcmVlbglydGZHcmVlbgorSGlMaW5rIHJ0ZkJsdWUJcnRmQmx1ZQogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJydGYiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9ydWJ5LnZpbSBiL3J1bnRpbWUvc3ludGF4L3J1YnkudmltCmluZGV4IDI4ZjU1M2QuLmNhN2Y1MWIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3J1YnkudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3J1YnkudmltCkBAIC05LDE2ICs5LDQ1IEBACiAiIFRoYW5rcyB0byBwZXJsLnZpbSBhdXRob3JzLCBhbmQgdG8gUmVpbWVyIEJlaHJlbmRzLiA6LSkgKE1OKQogIiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKKyIgUHJlbHVkZSB7e3sxCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKKyIgdGhpcyBmaWxlIHVzZXMgbGluZSBjb250aW51YXRpb25zCitsZXQgczpjcG9fc2F2ID0gJmNwbworc2V0IGNwbyZ2aW0KKworIiBGb2xkaW5nIENvbmZpZyB7e3sxCiBpZiBoYXMoImZvbGRpbmciKSAmJiBleGlzdHMoInJ1YnlfZm9sZCIpCiAgIHNldGxvY2FsIGZvbGRtZXRob2Q9c3ludGF4CiBlbmRpZgogCitsZXQgczpmb2xkYWJsZV9ncm91cHMgPSBzcGxpdCgKKyAgICAgIFwJICBnZXQoCisgICAgICBcCSAgICBiOiwKKyAgICAgIFwJICAgICdydWJ5X2ZvbGRhYmxlX2dyb3VwcycsCisgICAgICBcCSAgICBnZXQoZzosICdydWJ5X2ZvbGRhYmxlX2dyb3VwcycsICdBTEwnKQorICAgICAgXAkgICkKKyAgICAgIFwJKQorCitmdW5jdGlvbiEgczpmb2xkYWJsZSguLi4pIGFib3J0CisgIGlmIGluZGV4KHM6Zm9sZGFibGVfZ3JvdXBzLCAnQUxMJykgPiAtMQorICAgIHJldHVybiAxCisgIGVuZGlmCisKKyAgZm9yIGw6aSBpbiBhOjAwMAorICAgIGlmIGluZGV4KHM6Zm9sZGFibGVfZ3JvdXBzLCBsOmkpID4gLTEKKyAgICAgIHJldHVybiAxCisgICAgZW5kaWYKKyAgZW5kZm9yCisKKyAgcmV0dXJuIDAKK2VuZGZ1bmN0aW9uICIgfX19CisKIHN5biBjbHVzdGVyIHJ1YnlOb3RUb3AgY29udGFpbnM9QHJ1YnlFeHRlbmRlZFN0cmluZ1NwZWNpYWwsQHJ1YnlSZWdleHBTcGVjaWFsLEBydWJ5RGVjbGFyYXRpb24scnVieUNvbmRpdGlvbmFsLHJ1YnlFeGNlcHRpb25hbCxydWJ5TWV0aG9kRXhjZXB0aW9uYWwscnVieVRvZG8KIAorIiBXaGl0ZXNwYWNlIEVycm9ycyB7e3sxCiBpZiBleGlzdHMoInJ1Ynlfc3BhY2VfZXJyb3JzIikKICAgaWYgIWV4aXN0cygicnVieV9ub190cmFpbF9zcGFjZV9lcnJvciIpCiAgICAgc3luIG1hdGNoIHJ1YnlTcGFjZUVycm9yIGRpc3BsYXkgZXhjbHVkZW5sICJcc1wrJCIKQEAgLTI4LDE0ICs1NywxNCBAQAogICBlbmRpZgogZW5kaWYKIAotIiBPcGVyYXRvcnMKKyIgT3BlcmF0b3JzIHt7ezEKIGlmIGV4aXN0cygicnVieV9vcGVyYXRvcnMiKQotICBzeW4gbWF0Y2ggIHJ1YnlPcGVyYXRvciAiW34hXiZ8Ki8lKy1dXHxcJShjbGFzc1xzKlwpXEA8ITw8XHw8PT5cfDw9XHxcJSg8XHxcPGNsYXNzXHNcK1x1XHcqXHMqXClcQDwhPFtePF1cQD1cfD09PVx8PT1cfD1cflx8Pj5cfD49XHw9XEA8IT5cfFwqXCpcfFwuXC5cLlx8XC5cLlx8OjoiCisgIHN5biBtYXRjaCAgcnVieU9wZXJhdG9yICJbfiFefCovJSstXVx8JlwuXEAhXHxcJShjbGFzc1xzKlwpXEA8ITw8XHw8PT5cfDw9XHxcJSg8XHxcPGNsYXNzXHNcK1x1XHcqXHMqXClcQDwhPFtePF1cQD1cfD09PVx8PT1cfD1cflx8Pj5cfD49XHw9XEAxPCE+XHxcKlwqXHxcLlwuXC5cfFwuXC5cfDo6IgogICBzeW4gbWF0Y2ggIHJ1YnlPcGVyYXRvciAiLT5cfC09XHwvPVx8XCpcKj1cfFwqPVx8JiY9XHwmPVx8JiZcfHx8PVx8fD1cfHx8XHwlPVx8Kz1cfCFcflx8IT0iCi0gIHN5biByZWdpb24gcnVieUJyYWNrZXRPcGVyYXRvciBtYXRjaGdyb3VwPXJ1YnlPcGVyYXRvciBzdGFydD0iXCUoXHdbPyFdXD1cfFtdfSldXClcQDw9XFtccyoiIGVuZD0iXHMqXSIgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wCisgIHN5biByZWdpb24gcnVieUJyYWNrZXRPcGVyYXRvciBtYXRjaGdyb3VwPXJ1YnlPcGVyYXRvciBzdGFydD0iXCUoXHdbPyFdXD1cfFtdfSldXClcQDI8PVxbXHMqIiBlbmQ9IlxzKl0iIGNvbnRhaW5zPUFMTEJVVCxAcnVieU5vdFRvcAogZW5kaWYKIAotIiBFeHByZXNzaW9uIFN1YnN0aXR1dGlvbiBhbmQgQmFja3NsYXNoIE5vdGF0aW9uCisiIEV4cHJlc3Npb24gU3Vic3RpdHV0aW9uIGFuZCBCYWNrc2xhc2ggTm90YXRpb24ge3t7MQogc3luIG1hdGNoIHJ1YnlTdHJpbmdFc2NhcGUgIlxcXFxcfFxcW2FiZWZucnN0dl1cfFxcXG9cezEsM31cfFxceFx4XHsxLDJ9IgkJCQkJCSAgICBjb250YWluZWQgZGlzcGxheQogc3luIG1hdGNoIHJ1YnlTdHJpbmdFc2NhcGUgIlwlKFxcTS1cXEMtXHxcXEMtXFxNLVx8XFxNLVxcY1x8XFxjXFxNLVx8XFxjXHxcXEMtXHxcXE0tXClcJShcXFxvXHsxLDN9XHxcXHhceFx7MSwyfVx8XFxcPVxTXCkiIGNvbnRhaW5lZCBkaXNwbGF5CiBzeW4gbWF0Y2ggcnVieVF1b3RlRXNjYXBlICAiXFxbXFwnXSIJCQkJCQkJCQkJCSAgICBjb250YWluZWQgZGlzcGxheQpAQCAtNDUsMTggKzc0LDE5IEBACiBzeW4gbWF0Y2ggIHJ1YnlJbnRlcnBvbGF0aW9uRGVsaW1pdGVyICIjXHplXCUoXCRcfEBAXD1cKVx3XCsiIGRpc3BsYXkgY29udGFpbmVkCiBzeW4gbWF0Y2ggIHJ1YnlJbnRlcnBvbGF0aW9uCSAgICAgICIjXCRcJSgtXHdcfFxXXCkiICAgICAgIGRpc3BsYXkgY29udGFpbmVkIGNvbnRhaW5zPXJ1YnlJbnRlcnBvbGF0aW9uRGVsaW1pdGVyLHJ1YnlQcmVkZWZpbmVkVmFyaWFibGUscnVieUludmFsaWRWYXJpYWJsZQogc3luIG1hdGNoICBydWJ5SW50ZXJwb2xhdGlvbkRlbGltaXRlciAiI1x6ZVwkXCUoLVx3XHxcV1wpIiAgICBkaXNwbGF5IGNvbnRhaW5lZAotc3luIHJlZ2lvbiBydWJ5Tm9JbnRlcnBvbGF0aW9uCSAgICAgIHN0YXJ0PSJcXCN7IiBlbmQ9In0iICAgICAgICAgICAgY29udGFpbmVkCitzeW4gcmVnaW9uIHJ1YnlOb0ludGVycG9sYXRpb24JICAgICAgc3RhcnQ9IlxcI3siIGVuZD0ifSIJICAgICAgY29udGFpbmVkCiBzeW4gbWF0Y2ggIHJ1YnlOb0ludGVycG9sYXRpb24JICAgICAgIlxcI3siCQkgICAgICBkaXNwbGF5IGNvbnRhaW5lZAogc3luIG1hdGNoICBydWJ5Tm9JbnRlcnBvbGF0aW9uCSAgICAgICJcXCNcJShcJFx8QEBcPVwpXHdcKyIgIGRpc3BsYXkgY29udGFpbmVkCiBzeW4gbWF0Y2ggIHJ1YnlOb0ludGVycG9sYXRpb24JICAgICAgIlxcI1wkXFciCQkgICAgICBkaXNwbGF5IGNvbnRhaW5lZAogCi1zeW4gbWF0Y2ggcnVieURlbGltRXNjYXBlCSJcXFsoPHtcWyk+fVxdXSIgdHJhbnNwYXJlbnQgZGlzcGxheSBjb250YWluZWQgY29udGFpbnM9Tk9ORQorc3luIG1hdGNoIHJ1YnlEZWxpbWl0ZXJFc2NhcGUJIlxcWyg8e1xbKT59XF1dIiB0cmFuc3BhcmVudCBkaXNwbGF5IGNvbnRhaW5lZCBjb250YWlucz1OT05FCiAKIHN5biByZWdpb24gcnVieU5lc3RlZFBhcmVudGhlc2VzICAgIHN0YXJ0PSIoIiAgc2tpcD0iXFxcXFx8XFwpIiAgbWF0Y2hncm91cD1ydWJ5U3RyaW5nIGVuZD0iKSIJdHJhbnNwYXJlbnQgY29udGFpbmVkCiBzeW4gcmVnaW9uIHJ1YnlOZXN0ZWRDdXJseUJyYWNlcyAgICBzdGFydD0ieyIgIHNraXA9IlxcXFxcfFxcfSIgIG1hdGNoZ3JvdXA9cnVieVN0cmluZyBlbmQ9In0iCXRyYW5zcGFyZW50IGNvbnRhaW5lZAogc3luIHJlZ2lvbiBydWJ5TmVzdGVkQW5nbGVCcmFja2V0cyAgc3RhcnQ9IjwiICBza2lwPSJcXFxcXHxcXD4iICBtYXRjaGdyb3VwPXJ1YnlTdHJpbmcgZW5kPSI+Igl0cmFuc3BhcmVudCBjb250YWluZWQKIHN5biByZWdpb24gcnVieU5lc3RlZFNxdWFyZUJyYWNrZXRzIHN0YXJ0PSJcWyIgc2tpcD0iXFxcXFx8XFxcXSIgbWF0Y2hncm91cD1ydWJ5U3RyaW5nIGVuZD0iXF0iCXRyYW5zcGFyZW50IGNvbnRhaW5lZAogCisiIFJlZ3VsYXIgRXhwcmVzc2lvbiBNZXRhY2hhcmFjdGVycyB7e3sxCiAiIFRoZXNlIGFyZSBtb3N0bHkgT25pZ3VydW1hIHJlYWR5CiBzeW4gcmVnaW9uIHJ1YnlSZWdleHBDb21tZW50CW1hdGNoZ3JvdXA9cnVieVJlZ2V4cFNwZWNpYWwgICBzdGFydD0iKD8jIgkJCQkJCQkJICBza2lwPSJcXCkiICBlbmQ9IikiICBjb250YWluZWQKIHN5biByZWdpb24gcnVieVJlZ2V4cFBhcmVucwltYXRjaGdyb3VwPXJ1YnlSZWdleHBTcGVjaWFsICAgc3RhcnQ9IihcKD86XHw/PFw9Wz0hXVx8Pz5cfD88W2Etel9dXHcqPlx8P1tpbXhdKi1baW14XSo6XD1cfFwlKD8jXClcQCFcKSIgc2tpcD0iXFwpIiAgZW5kPSIpIiAgY29udGFpbmVkIHRyYW5zcGFyZW50IGNvbnRhaW5zPUBydWJ5UmVnZXhwU3BlY2lhbApAQCAtNzksMzYgKzEwOSw0MCBAQAogc3luIGNsdXN0ZXIgcnVieUV4dGVuZGVkU3RyaW5nU3BlY2lhbCBjb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwscnVieU5lc3RlZFBhcmVudGhlc2VzLHJ1YnlOZXN0ZWRDdXJseUJyYWNlcyxydWJ5TmVzdGVkQW5nbGVCcmFja2V0cyxydWJ5TmVzdGVkU3F1YXJlQnJhY2tldHMKIHN5biBjbHVzdGVyIHJ1YnlSZWdleHBTcGVjaWFsCSAgICAgIGNvbnRhaW5zPXJ1YnlJbnRlcnBvbGF0aW9uLHJ1YnlOb0ludGVycG9sYXRpb24scnVieVN0cmluZ0VzY2FwZSxydWJ5UmVnZXhwU3BlY2lhbCxydWJ5UmVnZXhwRXNjYXBlLHJ1YnlSZWdleHBCcmFja2V0cyxydWJ5UmVnZXhwQ2hhckNsYXNzLHJ1YnlSZWdleHBEb3QscnVieVJlZ2V4cFF1YW50aWZpZXIscnVieVJlZ2V4cEFuY2hvcixydWJ5UmVnZXhwUGFyZW5zLHJ1YnlSZWdleHBDb21tZW50CiAKLSIgTnVtYmVycyBhbmQgQVNDSUkgQ29kZXMKLXN5biBtYXRjaCBydWJ5QVNDSUlDb2RlCSJcJShcd1x8W119KVwiJy9dXClcQDwhXCUoP1wlKFxcTS1cXEMtXHxcXEMtXFxNLVx8XFxNLVxcY1x8XFxjXFxNLVx8XFxjXHxcXEMtXHxcXE0tXClcPVwlKFxcXG9cezEsM31cfFxceFx4XHsxLDJ9XHxcXFw9XFNcKVwpIgotc3luIG1hdGNoIHJ1YnlJbnRlZ2VyCSJcJShcJShcd1x8W119KVwiJ11ccypcKVxAPCEtXClcPVw8MFt4WF1ceFwrXCUoX1x4XCtcKSpcPiIJCQkJCQkJCWRpc3BsYXkKLXN5biBtYXRjaCBydWJ5SW50ZWdlcgkiXCUoXCUoXHdcfFtdfSlcIiddXHMqXClcQDwhLVwpXD1cPFwlKDBbZERdXClcPVwlKDBcfFsxLTldXGQqXCUoX1xkXCtcKSpcKVw+IgkJCQkJCWRpc3BsYXkKLXN5biBtYXRjaCBydWJ5SW50ZWdlcgkiXCUoXCUoXHdcfFtdfSlcIiddXHMqXClcQDwhLVwpXD1cPDBbb09dXD1cb1wrXCUoX1xvXCtcKSpcPiIJCQkJCQkJCWRpc3BsYXkKLXN5biBtYXRjaCBydWJ5SW50ZWdlcgkiXCUoXCUoXHdcfFtdfSlcIiddXHMqXClcQDwhLVwpXD1cPDBbYkJdWzAxXVwrXCUoX1swMV1cK1wpKlw+IgkJCQkJCQkJZGlzcGxheQotc3luIG1hdGNoIHJ1YnlGbG9hdAkiXCUoXCUoXHdcfFtdfSlcIiddXHMqXClcQDwhLVwpXD1cPFwlKDBcfFsxLTldXGQqXCUoX1xkXCtcKSpcKVwuXGRcK1wlKF9cZFwrXCkqXD4iCQkJCQlkaXNwbGF5Ci1zeW4gbWF0Y2ggcnVieUZsb2F0CSJcJShcJShcd1x8W119KVwiJ11ccypcKVxAPCEtXClcPVw8XCUoMFx8WzEtOV1cZCpcJShfXGRcK1wpKlwpXCUoXC5cZFwrXCUoX1xkXCtcKSpcKVw9XCUoW2VFXVstK11cPVxkXCtcJShfXGRcK1wpKlwpXD4iCWRpc3BsYXkKKyIgTnVtYmVycyBhbmQgQVNDSUkgQ29kZXMge3t7MQorc3luIG1hdGNoIHJ1YnlBU0NJSUNvZGUgIlwlKFx3XHxbXX0pXCInL11cKVxAMTwhXCUoP1wlKFxcTS1cXEMtXHxcXEMtXFxNLVx8XFxNLVxcY1x8XFxjXFxNLVx8XFxjXHxcXEMtXHxcXE0tXClcPVwlKFxcXG9cezEsM31cfFxceFx4XHsxLDJ9XHxcXFw9XFNcKVwpIgorc3luIG1hdGNoIHJ1YnlJbnRlZ2VyCSJcJShcJShcd1x8W119KVwiJ11ccypcKVxAPCEtXClcPVw8MFt4WF1ceFwrXCUoX1x4XCtcKSpyXD1pXD1cPiIJCQkJCQkJCWRpc3BsYXkKK3N5biBtYXRjaCBydWJ5SW50ZWdlcgkiXCUoXCUoXHdcfFtdfSlcIiddXHMqXClcQDwhLVwpXD1cPFwlKDBbZERdXClcPVwlKDBcfFsxLTldXGQqXCUoX1xkXCtcKSpcKXJcPWlcPVw+IgkJCQkJCWRpc3BsYXkKK3N5biBtYXRjaCBydWJ5SW50ZWdlcgkiXCUoXCUoXHdcfFtdfSlcIiddXHMqXClcQDwhLVwpXD1cPDBbb09dXD1cb1wrXCUoX1xvXCtcKSpyXD1pXD1cPiIJCQkJCQkJCWRpc3BsYXkKK3N5biBtYXRjaCBydWJ5SW50ZWdlcgkiXCUoXCUoXHdcfFtdfSlcIiddXHMqXClcQDwhLVwpXD1cPDBbYkJdWzAxXVwrXCUoX1swMV1cK1wpKnJcPWlcPVw+IgkJCQkJCQkJZGlzcGxheQorc3luIG1hdGNoIHJ1YnlGbG9hdAkiXCUoXCUoXHdcfFtdfSlcIiddXHMqXClcQDwhLVwpXD1cPFwlKDBcfFsxLTldXGQqXCUoX1xkXCtcKSpcKVwuXGRcK1wlKF9cZFwrXCkqclw9aVw9XD4iCQkJCQlkaXNwbGF5CitzeW4gbWF0Y2ggcnVieUZsb2F0CSJcJShcJShcd1x8W119KVwiJ11ccypcKVxAPCEtXClcPVw8XCUoMFx8WzEtOV1cZCpcJShfXGRcK1wpKlwpXCUoXC5cZFwrXCUoX1xkXCtcKSpcKVw9XCUoW2VFXVstK11cPVxkXCtcJShfXGRcK1wpKlwpclw9aVw9XD4iCWRpc3BsYXkKIAotIiBJZGVudGlmaWVycworIiBJZGVudGlmaWVycyB7e3sxCiBzeW4gbWF0Y2ggcnVieUxvY2FsVmFyaWFibGVPck1ldGhvZCAiXDxbX1s6bG93ZXI6XV1bX1s6YWxudW06XV0qWz8hPV1cPSIgY29udGFpbnM9Tk9ORSBkaXNwbGF5IHRyYW5zcGFyZW50CiBzeW4gbWF0Y2ggcnVieUJsb2NrQXJndW1lbnQJICAgICImW19bOmxvd2VyOl1dW19bOmFsbnVtOl1dIgkJIGNvbnRhaW5zPU5PTkUgZGlzcGxheSB0cmFuc3BhcmVudAogCi1zeW4gbWF0Y2ggIHJ1YnlDb25zdGFudAkJIlwlKFwlKFsuQCRdXEA8IVwuXClcQDwhXDxcfDo6XClcX3MqXHpzXHVcdypcJShcPlx8OjpcKVxAPVwlKFxzKihcKVxAISIKK3N5biBtYXRjaCAgcnVieUNvbnN0YW50CQkiXCUoXCUoXlx8W14uXVwpXC5ccypcKVxAPCFcPFx1XCUoXHdcfFteXHgwMC1ceDdGXVwpKlw+XCUoXHMqKFwpXEAhIgogc3luIG1hdGNoICBydWJ5Q2xhc3NWYXJpYWJsZQkiQEBcJShcaFx8W15ceDAwLVx4N0ZdXClcJShcd1x8W15ceDAwLVx4N0ZdXCkqIiBkaXNwbGF5Ci1zeW4gbWF0Y2ggIHJ1YnlJbnN0YW5jZVZhcmlhYmxlICJAXCUoXGhcfFteXHgwMC1ceDdGXVwpXCUoXHdcfFteXHgwMC1ceDdGXVwpKiIgIGRpc3BsYXkKK3N5biBtYXRjaCAgcnVieUluc3RhbmNlVmFyaWFibGUgIkBcJShcaFx8W15ceDAwLVx4N0ZdXClcJShcd1x8W15ceDAwLVx4N0ZdXCkqIglkaXNwbGF5CiBzeW4gbWF0Y2ggIHJ1YnlHbG9iYWxWYXJpYWJsZQkiJFwlKFwlKFxoXHxbXlx4MDAtXHg3Rl1cKVwlKFx3XHxbXlx4MDAtXHg3Rl1cKSpcfC0uXCkiCi1zeW4gbWF0Y2ggIHJ1YnlTeW1ib2wJCSJbXX0pXCInOl1cQDwhOlwlKFxeXHxcflx8PDxcfDw9Plx8PD1cfDxcfD09PVx8Wz0hXT1cfFs9IV1cflx8IVx8Pj5cfD49XHw+XHx8XHwtQFx8LVx8L1x8XFtdPVx8XFtdXHxcKlwqXHxcKlx8Jlx8JVx8K0BcfCtcfGBcKSIKLXN5biBtYXRjaCAgcnVieVN5bWJvbAkJIltdfSlcIic6XVxAPCE6XCRcJSgtLlx8W2B+PD0+Xyw7OiE/Ly4nIkAkKlwmKzBdXCkiCi1zeW4gbWF0Y2ggIHJ1YnlTeW1ib2wJCSJbXX0pXCInOl1cQDwhOlwlKFwkXHxAQFw9XClcPVwlKFxoXHxbXlx4MDAtXHg3Rl1cKVwlKFx3XHxbXlx4MDAtXHg3Rl1cKSoiCi1zeW4gbWF0Y2ggIHJ1YnlTeW1ib2wJCSJbXX0pXCInOl1cQDwhOlwlKFxoXHxbXlx4MDAtXHg3Rl1cKVwlKFx3XHxbXlx4MDAtXHg3Rl1cKSpcJShbPyE9XT5cQCFcKVw9Igotc3luIG1hdGNoICBydWJ5U3ltYm9sCQkiXCUoW3soLF1cX3MqXClcQDw9XGxcdypbIT9dXD06OlxAISJoZT1lLTEKLXN5biBtYXRjaCAgcnVieVN5bWJvbAkJIltdfSlcIic6XVxAPCFcJShcaFx8W15ceDAwLVx4N0ZdXClcJShcd1x8W15ceDAwLVx4N0ZdXCkqWyE/XVw9OlxzXEA9ImhlPWUtMQotc3luIG1hdGNoICBydWJ5U3ltYm9sCQkiXCUoW3soLF1cX3MqXClcQDw9W1s6c3BhY2U6XSx7XVxsXHcqWyE/XVw9OjpcQCEiaHM9cysxLGhlPWUtMQotc3luIG1hdGNoICBydWJ5U3ltYm9sCQkiW1s6c3BhY2U6XSx7XVwlKFxoXHxbXlx4MDAtXHg3Rl1cKVwlKFx3XHxbXlx4MDAtXHg3Rl1cKSpbIT9dXD06XHNcQD0iaHM9cysxLGhlPWUtMQotc3luIHJlZ2lvbiBydWJ5U3ltYm9sCQlzdGFydD0iW119KVwiJzpdXEA8ITonIiAgZW5kPSInIiAgc2tpcD0iXFxcXFx8XFwnIiAgY29udGFpbnM9cnVieVF1b3RlRXNjYXBlIGZvbGQKLXN5biByZWdpb24gcnVieVN5bWJvbAkJc3RhcnQ9IltdfSlcIic6XVxAPCE6XCIiIGVuZD0iXCIiIHNraXA9IlxcXFxcfFxcXCIiIGNvbnRhaW5zPUBydWJ5U3RyaW5nU3BlY2lhbCBmb2xkCitzeW4gbWF0Y2ggIHJ1YnlTeW1ib2wJCSJbXX0pXCInOl1cQDE8ITpcJShcXlx8XH5AXHxcflx8PDxcfDw9Plx8PD1cfDxcfD09PVx8Wz0hXT1cfFs9IV1cflx8IUBcfCFcfD4+XHw+PVx8Plx8fFx8LUBcfC1cfC9cfFxbXT1cfFxbXVx8XCpcKlx8XCpcfCZcfCVcfCtAXHwrXHxgXCkiCitzeW4gbWF0Y2ggIHJ1YnlTeW1ib2wJCSJbXX0pXCInOl1cQDE8ITpcJFwlKC0uXHxbYH48PT5fLDs6IT8vLiciQCQqXCYrMF1cKSIKK3N5biBtYXRjaCAgcnVieVN5bWJvbAkJIltdfSlcIic6XVxAMTwhOlwlKFwkXHxAQFw9XClcPVwlKFxoXHxbXlx4MDAtXHg3Rl1cKVwlKFx3XHxbXlx4MDAtXHg3Rl1cKSoiCitzeW4gbWF0Y2ggIHJ1YnlTeW1ib2wJCSJbXX0pXCInOl1cQDE8ITpcJShcaFx8W15ceDAwLVx4N0ZdXClcJShcd1x8W15ceDAwLVx4N0ZdXCkqXCUoWz8hPV0+XEAhXClcPSIKKworaWYgczpmb2xkYWJsZSgnOicpCisgIHN5biByZWdpb24gcnVieVN5bWJvbAkJc3RhcnQ9IltdfSlcIic6XVxAMTwhOiciICBlbmQ9IiciICBza2lwPSJcXFxcXHxcXCciICBjb250YWlucz1ydWJ5UXVvdGVFc2NhcGUgZm9sZAorICBzeW4gcmVnaW9uIHJ1YnlTeW1ib2wJCXN0YXJ0PSJbXX0pXCInOl1cQDE8ITpcIiIgZW5kPSJcIiIgc2tpcD0iXFxcXFx8XFxcIiIgY29udGFpbnM9QHJ1YnlTdHJpbmdTcGVjaWFsIGZvbGQKK2Vsc2UKKyAgc3luIHJlZ2lvbiBydWJ5U3ltYm9sCQlzdGFydD0iW119KVwiJzpdXEAxPCE6JyIgIGVuZD0iJyIgIHNraXA9IlxcXFxcfFxcJyIgIGNvbnRhaW5zPXJ1YnlRdW90ZUVzY2FwZQorICBzeW4gcmVnaW9uIHJ1YnlTeW1ib2wJCXN0YXJ0PSJbXX0pXCInOl1cQDE8ITpcIiIgZW5kPSJcIiIgc2tpcD0iXFxcXFx8XFxcIiIgY29udGFpbnM9QHJ1YnlTdHJpbmdTcGVjaWFsCitlbmRpZgorCitzeW4gbWF0Y2ggIHJ1YnlDYXBpdGFsaXplZE1ldGhvZAkiXCUoXCUoXlx8W14uXVwpXC5ccypcKVxAPCFcPFx1XCUoXHdcfFteXHgwMC1ceDdGXVwpKlw+XCUoXHMqKFwpKlxzKihcQD0iCiAKIHN5biBtYXRjaCAgcnVieUJsb2NrUGFyYW1ldGVyCSAgIlwlKFxoXHxbXlx4MDAtXHg3Rl1cKVwlKFx3XHxbXlx4MDAtXHg3Rl1cKSoiIGNvbnRhaW5lZAotc3luIHJlZ2lvbiBydWJ5QmxvY2tQYXJhbWV0ZXJMaXN0IHN0YXJ0PSJcJShcJShcPGRvXD5cfHtcKVxzKlwpXEA8PXwiIGVuZD0ifCIgb25lbGluZSBkaXNwbGF5IGNvbnRhaW5zPXJ1YnlCbG9ja1BhcmFtZXRlcgorc3luIHJlZ2lvbiBydWJ5QmxvY2tQYXJhbWV0ZXJMaXN0IHN0YXJ0PSJcJShcJShcPGRvXD5cfHtcKVxfcypcKVxAMzI8PXwiIGVuZD0ifCIgb25lbGluZSBkaXNwbGF5IGNvbnRhaW5zPXJ1YnlCbG9ja1BhcmFtZXRlcgogCiBzeW4gbWF0Y2ggcnVieUludmFsaWRWYXJpYWJsZQkgIiRbXiBBLVphLXpfLV0iCiBzeW4gbWF0Y2ggcnVieVByZWRlZmluZWRWYXJpYWJsZSAjJFshJCYiJyorLC4vMDo7PD0+P0BcYH5dIwpAQCAtMTE3LDkzICsxNTEsMTg3IEBACiBzeW4gbWF0Y2ggcnVieVByZWRlZmluZWRWYXJpYWJsZSAiJC1bMEZJS2FkaWxwdnddXD4iCQkJCQkJCQkJICAgZGlzcGxheQogc3luIG1hdGNoIHJ1YnlQcmVkZWZpbmVkVmFyaWFibGUgIiRcJShkZWZlcnJcfGRlZm91dFx8c3RkZXJyXHxzdGRpblx8c3Rkb3V0XClcPiIJCQkJCSAgIGRpc3BsYXkKIHN5biBtYXRjaCBydWJ5UHJlZGVmaW5lZFZhcmlhYmxlICIkXCUoREVCVUdcfEZJTEVOQU1FXHxLQ09ERVx8TE9BREVEX0ZFQVRVUkVTXHxMT0FEX1BBVEhcfFBST0dSQU1fTkFNRVx8U0FGRVx8VkVSQk9TRVwpXD4iIGRpc3BsYXkKLXN5biBtYXRjaCBydWJ5UHJlZGVmaW5lZENvbnN0YW50ICJcJShcJShcLlxAPCFcLlwpXEA8IVx8OjpcKVxfcypcenNcJShNYXRjaGluZ0RhdGFcfEFSR0ZcfEFSR1ZcfEVOVlwpXD5cJShccyooXClcQCEiCi1zeW4gbWF0Y2ggcnVieVByZWRlZmluZWRDb25zdGFudCAiXCUoXCUoXC5cQDwhXC5cKVxAPCFcfDo6XClcX3MqXHpzXCUoREFUQVx8RkFMU0VcfE5JTFwpXD5cJShccyooXClcQCEiCi1zeW4gbWF0Y2ggcnVieVByZWRlZmluZWRDb25zdGFudCAiXCUoXCUoXC5cQDwhXC5cKVxAPCFcfDo6XClcX3MqXHpzXCUoU1RERVJSXHxTVERJTlx8U1RET1VUXHxUT1BMRVZFTF9CSU5ESU5HXHxUUlVFXClcPlwlKFxzKihcKVxAISIKLXN5biBtYXRjaCBydWJ5UHJlZGVmaW5lZENvbnN0YW50ICJcJShcJShcLlxAPCFcLlwpXEA8IVx8OjpcKVxfcypcenNcJShSVUJZX1wlKFZFUlNJT05cfFJFTEVBU0VfREFURVx8UExBVEZPUk1cfFBBVENITEVWRUxcfFJFVklTSU9OXHxERVNDUklQVElPTlx8Q09QWVJJR0hUXHxFTkdJTkVcKVwpXD5cJShccyooXClcQCEiCitzeW4gbWF0Y2ggcnVieVByZWRlZmluZWRDb25zdGFudCAiXCUoXCUoXlx8W14uXVwpXC5ccypcKVxAPCFcPFwlKEFSR0ZcfEFSR1ZcfEVOVlx8REFUQVx8RkFMU0VcfE5JTFx8U1RERVJSXHxTVERJTlx8U1RET1VUXHxUT1BMRVZFTF9CSU5ESU5HXHxUUlVFXClcPlwlKFxzKihcKVxAISIKK3N5biBtYXRjaCBydWJ5UHJlZGVmaW5lZENvbnN0YW50ICJcJShcJSheXHxbXi5dXClcLlxzKlwpXEA8IVw8XCUoUlVCWV9cJShWRVJTSU9OXHxSRUxFQVNFX0RBVEVcfFBMQVRGT1JNXHxQQVRDSExFVkVMXHxSRVZJU0lPTlx8REVTQ1JJUFRJT05cfENPUFlSSUdIVFx8RU5HSU5FXClcKVw+XCUoXHMqKFwpXEAhIgogCi0iIE5vcm1hbCBSZWd1bGFyIEV4cHJlc3Npb24KLXN5biByZWdpb24gcnVieVJlZ2V4cCBtYXRjaGdyb3VwPXJ1YnlSZWdleHBEZWxpbWl0ZXIgc3RhcnQ9IlwlKFwlKF5cfFw8XCUoYW5kXHxvclx8d2hpbGVcfHVudGlsXHx1bmxlc3NcfGlmXHxlbHNpZlx8d2hlblx8bm90XHx0aGVuXHxlbHNlXClcfFs7XH49IXwmKCxbPD4/OiorLV1cKVxzKlwpXEA8PS8iIGVuZD0iL1tpb214bmV1c10qIiBza2lwPSJcXFxcXHxcXC8iIGNvbnRhaW5zPUBydWJ5UmVnZXhwU3BlY2lhbCBmb2xkCi1zeW4gcmVnaW9uIHJ1YnlSZWdleHAgbWF0Y2hncm91cD1ydWJ5UmVnZXhwRGVsaW1pdGVyIHN0YXJ0PSJcJShcaFxrKlxzXCtcKVxAPD0vWyBcdD1dXEAhIiBlbmQ9Ii9baW9teG5ldXNdKiIgc2tpcD0iXFxcXFx8XFwvIiBjb250YWlucz1AcnVieVJlZ2V4cFNwZWNpYWwgZm9sZAorIiBOb3JtYWwgUmVndWxhciBFeHByZXNzaW9uIHt7ezEKK2lmIHM6Zm9sZGFibGUoJy8nKQorICBzeW4gcmVnaW9uIHJ1YnlSZWdleHAgbWF0Y2hncm91cD1ydWJ5UmVnZXhwRGVsaW1pdGVyIHN0YXJ0PSJcJShcJSheXHxcPFwlKGFuZFx8b3JcfHdoaWxlXHx1bnRpbFx8dW5sZXNzXHxpZlx8ZWxzaWZcfHdoZW5cfG5vdFx8dGhlblx8ZWxzZVwpXHxbO1x+PSF8Jigse1s8Pj86KistXVwpXHMqXClcQDw9LyIgZW5kPSIvW2lvbXhuZXVzXSoiIHNraXA9IlxcXFxcfFxcLyIgY29udGFpbnM9QHJ1YnlSZWdleHBTcGVjaWFsIGZvbGQKKyAgc3luIHJlZ2lvbiBydWJ5UmVnZXhwIG1hdGNoZ3JvdXA9cnVieVJlZ2V4cERlbGltaXRlciBzdGFydD0iXCUoXGhcaypcc1wrXClcQDw9L1sgXHQ9XVxAISIgZW5kPSIvW2lvbXhuZXVzXSoiIHNraXA9IlxcXFxcfFxcLyIgY29udGFpbnM9QHJ1YnlSZWdleHBTcGVjaWFsIGZvbGQKK2Vsc2UKKyAgc3luIHJlZ2lvbiBydWJ5UmVnZXhwIG1hdGNoZ3JvdXA9cnVieVJlZ2V4cERlbGltaXRlciBzdGFydD0iXCUoXCUoXlx8XDxcJShhbmRcfG9yXHx3aGlsZVx8dW50aWxcfHVubGVzc1x8aWZcfGVsc2lmXHx3aGVuXHxub3RcfHRoZW5cfGVsc2VcKVx8Wztcfj0hfCYoLHtbPD4/OiorLV1cKVxzKlwpXEA8PS8iIGVuZD0iL1tpb214bmV1c10qIiBza2lwPSJcXFxcXHxcXC8iIGNvbnRhaW5zPUBydWJ5UmVnZXhwU3BlY2lhbAorICBzeW4gcmVnaW9uIHJ1YnlSZWdleHAgbWF0Y2hncm91cD1ydWJ5UmVnZXhwRGVsaW1pdGVyIHN0YXJ0PSJcJShcaFxrKlxzXCtcKVxAPD0vWyBcdD1dXEAhIiBlbmQ9Ii9baW9teG5ldXNdKiIgc2tpcD0iXFxcXFx8XFwvIiBjb250YWlucz1AcnVieVJlZ2V4cFNwZWNpYWwKK2VuZGlmCiAKLSIgR2VuZXJhbGl6ZWQgUmVndWxhciBFeHByZXNzaW9uCi1zeW4gcmVnaW9uIHJ1YnlSZWdleHAgbWF0Y2hncm91cD1ydWJ5UmVnZXhwRGVsaW1pdGVyIHN0YXJ0PSIlclx6KFt+YCFAIyQlXiYqX1wtKz18XDo7IicsLj8gL11cKSIgZW5kPSJcejFbaW9teG5ldXNdKiIgc2tpcD0iXFxcXFx8XFxcejEiIGNvbnRhaW5zPUBydWJ5UmVnZXhwU3BlY2lhbCBmb2xkCi1zeW4gcmVnaW9uIHJ1YnlSZWdleHAgbWF0Y2hncm91cD1ydWJ5UmVnZXhwRGVsaW1pdGVyIHN0YXJ0PSIlcnsiCQkJCSBlbmQ9In1baW9teG5ldXNdKiIgICBza2lwPSJcXFxcXHxcXH0iCSBjb250YWlucz1AcnVieVJlZ2V4cFNwZWNpYWwgZm9sZAotc3luIHJlZ2lvbiBydWJ5UmVnZXhwIG1hdGNoZ3JvdXA9cnVieVJlZ2V4cERlbGltaXRlciBzdGFydD0iJXI8IgkJCQkgZW5kPSI+W2lvbXhuZXVzXSoiICAgc2tpcD0iXFxcXFx8XFw+IgkgY29udGFpbnM9QHJ1YnlSZWdleHBTcGVjaWFsLHJ1YnlOZXN0ZWRBbmdsZUJyYWNrZXRzLHJ1YnlEZWxpbUVzY2FwZSBmb2xkCi1zeW4gcmVnaW9uIHJ1YnlSZWdleHAgbWF0Y2hncm91cD1ydWJ5UmVnZXhwRGVsaW1pdGVyIHN0YXJ0PSIlclxbIgkJCQkgZW5kPSJcXVtpb214bmV1c10qIiAgc2tpcD0iXFxcXFx8XFxcXSIJIGNvbnRhaW5zPUBydWJ5UmVnZXhwU3BlY2lhbCBmb2xkCi1zeW4gcmVnaW9uIHJ1YnlSZWdleHAgbWF0Y2hncm91cD1ydWJ5UmVnZXhwRGVsaW1pdGVyIHN0YXJ0PSIlcigiCQkJCSBlbmQ9IilbaW9teG5ldXNdKiIgICBza2lwPSJcXFxcXHxcXCkiCSBjb250YWlucz1AcnVieVJlZ2V4cFNwZWNpYWwgZm9sZAorIiBHZW5lcmFsaXplZCBSZWd1bGFyIEV4cHJlc3Npb24ge3t7MQoraWYgczpmb2xkYWJsZSgnJScpCisgIHN5biByZWdpb24gcnVieVJlZ2V4cCBtYXRjaGdyb3VwPXJ1YnlSZWdleHBEZWxpbWl0ZXIgc3RhcnQ9IiVyXHooW35gIUAjJCVeJipfXC0rPXxcOjsiJywuPy9dXCkiIGVuZD0iXHoxW2lvbXhuZXVzXSoiIHNraXA9IlxcXFxcfFxcXHoxIiBjb250YWlucz1AcnVieVJlZ2V4cFNwZWNpYWwgZm9sZAorICBzeW4gcmVnaW9uIHJ1YnlSZWdleHAgbWF0Y2hncm91cD1ydWJ5UmVnZXhwRGVsaW1pdGVyIHN0YXJ0PSIlcnsiCQkJCWVuZD0ifVtpb214bmV1c10qIiAgIHNraXA9IlxcXFxcfFxcfSIJIGNvbnRhaW5zPUBydWJ5UmVnZXhwU3BlY2lhbCBmb2xkCisgIHN5biByZWdpb24gcnVieVJlZ2V4cCBtYXRjaGdyb3VwPXJ1YnlSZWdleHBEZWxpbWl0ZXIgc3RhcnQ9IiVyPCIJCQkJZW5kPSI+W2lvbXhuZXVzXSoiICAgc2tpcD0iXFxcXFx8XFw+IgkgY29udGFpbnM9QHJ1YnlSZWdleHBTcGVjaWFsLHJ1YnlOZXN0ZWRBbmdsZUJyYWNrZXRzLHJ1YnlEZWxpbWl0ZXJFc2NhcGUgZm9sZAorICBzeW4gcmVnaW9uIHJ1YnlSZWdleHAgbWF0Y2hncm91cD1ydWJ5UmVnZXhwRGVsaW1pdGVyIHN0YXJ0PSIlclxbIgkJCQllbmQ9IlxdW2lvbXhuZXVzXSoiICBza2lwPSJcXFxcXHxcXFxdIgkgY29udGFpbnM9QHJ1YnlSZWdleHBTcGVjaWFsIGZvbGQKKyAgc3luIHJlZ2lvbiBydWJ5UmVnZXhwIG1hdGNoZ3JvdXA9cnVieVJlZ2V4cERlbGltaXRlciBzdGFydD0iJXIoIgkJCQllbmQ9IilbaW9teG5ldXNdKiIgICBza2lwPSJcXFxcXHxcXCkiCSBjb250YWlucz1AcnVieVJlZ2V4cFNwZWNpYWwgZm9sZAorICBzeW4gcmVnaW9uIHJ1YnlSZWdleHAgbWF0Y2hncm91cD1ydWJ5UmVnZXhwRGVsaW1pdGVyIHN0YXJ0PSIlclx6KFxzXCkiCQkJCWVuZD0iXHoxW2lvbXhuZXVzXSoiIHNraXA9IlxcXFxcfFxcXHoxIiBjb250YWlucz1AcnVieVJlZ2V4cFNwZWNpYWwgZm9sZAorZWxzZQorICBzeW4gcmVnaW9uIHJ1YnlSZWdleHAgbWF0Y2hncm91cD1ydWJ5UmVnZXhwRGVsaW1pdGVyIHN0YXJ0PSIlclx6KFt+YCFAIyQlXiYqX1wtKz18XDo7IicsLj8vXVwpIiBlbmQ9Ilx6MVtpb214bmV1c10qIiBza2lwPSJcXFxcXHxcXFx6MSIgY29udGFpbnM9QHJ1YnlSZWdleHBTcGVjaWFsCisgIHN5biByZWdpb24gcnVieVJlZ2V4cCBtYXRjaGdyb3VwPXJ1YnlSZWdleHBEZWxpbWl0ZXIgc3RhcnQ9IiVyeyIJCQkJZW5kPSJ9W2lvbXhuZXVzXSoiICAgc2tpcD0iXFxcXFx8XFx9IgkgY29udGFpbnM9QHJ1YnlSZWdleHBTcGVjaWFsCisgIHN5biByZWdpb24gcnVieVJlZ2V4cCBtYXRjaGdyb3VwPXJ1YnlSZWdleHBEZWxpbWl0ZXIgc3RhcnQ9IiVyPCIJCQkJZW5kPSI+W2lvbXhuZXVzXSoiICAgc2tpcD0iXFxcXFx8XFw+IgkgY29udGFpbnM9QHJ1YnlSZWdleHBTcGVjaWFsLHJ1YnlOZXN0ZWRBbmdsZUJyYWNrZXRzLHJ1YnlEZWxpbWl0ZXJFc2NhcGUKKyAgc3luIHJlZ2lvbiBydWJ5UmVnZXhwIG1hdGNoZ3JvdXA9cnVieVJlZ2V4cERlbGltaXRlciBzdGFydD0iJXJcWyIJCQkJZW5kPSJcXVtpb214bmV1c10qIiAgc2tpcD0iXFxcXFx8XFxcXSIJIGNvbnRhaW5zPUBydWJ5UmVnZXhwU3BlY2lhbAorICBzeW4gcmVnaW9uIHJ1YnlSZWdleHAgbWF0Y2hncm91cD1ydWJ5UmVnZXhwRGVsaW1pdGVyIHN0YXJ0PSIlcigiCQkJCWVuZD0iKVtpb214bmV1c10qIiAgIHNraXA9IlxcXFxcfFxcKSIJIGNvbnRhaW5zPUBydWJ5UmVnZXhwU3BlY2lhbAorICBzeW4gcmVnaW9uIHJ1YnlSZWdleHAgbWF0Y2hncm91cD1ydWJ5UmVnZXhwRGVsaW1pdGVyIHN0YXJ0PSIlclx6KFxzXCkiCQkJCWVuZD0iXHoxW2lvbXhuZXVzXSoiIHNraXA9IlxcXFxcfFxcXHoxIiBjb250YWlucz1AcnVieVJlZ2V4cFNwZWNpYWwKK2VuZGlmCiAKLSIgTm9ybWFsIFN0cmluZyBhbmQgU2hlbGwgQ29tbWFuZCBPdXRwdXQKLXN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IlwiIiBlbmQ9IlwiIiBza2lwPSJcXFxcXHxcXFwiIiBjb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwsQFNwZWxsIGZvbGQKLXN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiciCWVuZD0iJyIgIHNraXA9IlxcXFxcfFxcJyIgIGNvbnRhaW5zPXJ1YnlRdW90ZUVzY2FwZSxAU3BlbGwgICAgZm9sZAotc3luIHJlZ2lvbiBydWJ5U3RyaW5nIG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBzdGFydD0iYCIJZW5kPSJgIiAgc2tpcD0iXFxcXFx8XFxgIiAgY29udGFpbnM9QHJ1YnlTdHJpbmdTcGVjaWFsIGZvbGQKKyIgTm9ybWFsIFN0cmluZyB7e3sxCitsZXQgczpzcGVsbF9jbHVzdGVyID0gZXhpc3RzKCdydWJ5X3NwZWxsY2hlY2tfc3RyaW5ncycpID8gJyxAU3BlbGwnIDogJycKK2V4ZSAnc3luIHJlZ2lvbiBydWJ5U3RyaW5nIG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBzdGFydD0iXCIiIGVuZD0iXCIiIHNraXA9IlxcXFxcfFxcXCIiICcgLgorICAgICAgXCAoczpmb2xkYWJsZSgnJScpID8gJ2ZvbGQnIDogJycpIC4gJyBjb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwnIC4gczpzcGVsbF9jbHVzdGVyCitleGUgJ3N5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IicnIiBlbmQ9IicnIiBza2lwPSJcXFxcXHxcXCcnIiAnIC4KKyAgICAgIFwgKHM6Zm9sZGFibGUoJyUnKSA/ICdmb2xkJyA6ICcnKSAuICcgY29udGFpbnM9cnVieVF1b3RlRXNjYXBlJwkgLiBzOnNwZWxsX2NsdXN0ZXIKIAotIiBHZW5lcmFsaXplZCBTaW5nbGUgUXVvdGVkIFN0cmluZywgU3ltYm9sIGFuZCBBcnJheSBvZiBTdHJpbmdzCi1zeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSIlW3F3aV1ceihbfmAhQCMkJV4mKl9cLSs9fFw6OyInLC4/L11cKSIgZW5kPSJcejEiIHNraXA9IlxcXFxcfFxcXHoxIiBmb2xkCi1zeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSIlW3F3aV17IgkJCQkgICBlbmQ9In0iICAgc2tpcD0iXFxcXFx8XFx9Iglmb2xkIGNvbnRhaW5zPXJ1YnlOZXN0ZWRDdXJseUJyYWNlcyxydWJ5RGVsaW1Fc2NhcGUKLXN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVbcXdpXTwiCQkJCSAgIGVuZD0iPiIgICBza2lwPSJcXFxcXHxcXD4iCWZvbGQgY29udGFpbnM9cnVieU5lc3RlZEFuZ2xlQnJhY2tldHMscnVieURlbGltRXNjYXBlCi1zeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSIlW3F3aV1cWyIJCQkJICAgZW5kPSJcXSIgIHNraXA9IlxcXFxcfFxcXF0iCWZvbGQgY29udGFpbnM9cnVieU5lc3RlZFNxdWFyZUJyYWNrZXRzLHJ1YnlEZWxpbUVzY2FwZQotc3luIHJlZ2lvbiBydWJ5U3RyaW5nIG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBzdGFydD0iJVtxd2ldKCIJCQkJICAgZW5kPSIpIiAgIHNraXA9IlxcXFxcfFxcKSIJZm9sZCBjb250YWlucz1ydWJ5TmVzdGVkUGFyZW50aGVzZXMscnVieURlbGltRXNjYXBlCi1zeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSIlcSAiCQkJCSAgIGVuZD0iICIgICBza2lwPSJcXFxcXHxcXCkiCWZvbGQKLXN5biByZWdpb24gcnVieVN5bWJvbCBtYXRjaGdyb3VwPXJ1YnlTeW1ib2xEZWxpbWl0ZXIgc3RhcnQ9IiVzXHooW35gIUAjJCVeJipfXC0rPXxcOjsiJywuPyAvXVwpIiAgIGVuZD0iXHoxIiBza2lwPSJcXFxcXHxcXFx6MSIgZm9sZAotc3luIHJlZ2lvbiBydWJ5U3ltYm9sIG1hdGNoZ3JvdXA9cnVieVN5bWJvbERlbGltaXRlciBzdGFydD0iJXN7IgkJCQkgICBlbmQ9In0iICAgc2tpcD0iXFxcXFx8XFx9Iglmb2xkIGNvbnRhaW5zPXJ1YnlOZXN0ZWRDdXJseUJyYWNlcyxydWJ5RGVsaW1Fc2NhcGUKLXN5biByZWdpb24gcnVieVN5bWJvbCBtYXRjaGdyb3VwPXJ1YnlTeW1ib2xEZWxpbWl0ZXIgc3RhcnQ9IiVzPCIJCQkJICAgZW5kPSI+IiAgIHNraXA9IlxcXFxcfFxcPiIJZm9sZCBjb250YWlucz1ydWJ5TmVzdGVkQW5nbGVCcmFja2V0cyxydWJ5RGVsaW1Fc2NhcGUKLXN5biByZWdpb24gcnVieVN5bWJvbCBtYXRjaGdyb3VwPXJ1YnlTeW1ib2xEZWxpbWl0ZXIgc3RhcnQ9IiVzXFsiCQkJCSAgIGVuZD0iXF0iICBza2lwPSJcXFxcXHxcXFxdIglmb2xkIGNvbnRhaW5zPXJ1YnlOZXN0ZWRTcXVhcmVCcmFja2V0cyxydWJ5RGVsaW1Fc2NhcGUKLXN5biByZWdpb24gcnVieVN5bWJvbCBtYXRjaGdyb3VwPXJ1YnlTeW1ib2xEZWxpbWl0ZXIgc3RhcnQ9IiVzKCIJCQkJICAgZW5kPSIpIiAgIHNraXA9IlxcXFxcfFxcKSIJZm9sZCBjb250YWlucz1ydWJ5TmVzdGVkUGFyZW50aGVzZXMscnVieURlbGltRXNjYXBlCisiIFNoZWxsIENvbW1hbmQgT3V0cHV0IHt7ezEKK2lmIHM6Zm9sZGFibGUoJyUnKQorICBzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSJgIiBlbmQ9ImAiIHNraXA9IlxcXFxcfFxcYCIgY29udGFpbnM9QHJ1YnlTdHJpbmdTcGVjaWFsIGZvbGQKK2Vsc2UKKyAgc3luIHJlZ2lvbiBydWJ5U3RyaW5nIG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBzdGFydD0iYCIgZW5kPSJgIiBza2lwPSJcXFxcXHxcXGAiIGNvbnRhaW5zPUBydWJ5U3RyaW5nU3BlY2lhbAorZW5kaWYKIAotIiBHZW5lcmFsaXplZCBEb3VibGUgUXVvdGVkIFN0cmluZyBhbmQgQXJyYXkgb2YgU3RyaW5ncyBhbmQgU2hlbGwgQ29tbWFuZCBPdXRwdXQKKyIgR2VuZXJhbGl6ZWQgU2luZ2xlIFF1b3RlZCBTdHJpbmcsIFN5bWJvbCBhbmQgQXJyYXkgb2YgU3RyaW5ncyB7e3sxCitpZiBzOmZvbGRhYmxlKCclJykKKyAgc3luIHJlZ2lvbiBydWJ5U3RyaW5nIG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBzdGFydD0iJVtxd11ceihbfmAhQCMkJV4mKl9cLSs9fFw6OyInLC4/L11cKSIgZW5kPSJcejEiIHNraXA9IlxcXFxcfFxcXHoxIiBmb2xkCisgIHN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVbcXddeyIJCQkJICAgICBlbmQ9In0iICAgc2tpcD0iXFxcXFx8XFx9IgkgIGZvbGQgY29udGFpbnM9cnVieU5lc3RlZEN1cmx5QnJhY2VzLHJ1YnlEZWxpbWl0ZXJFc2NhcGUKKyAgc3luIHJlZ2lvbiBydWJ5U3RyaW5nIG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBzdGFydD0iJVtxd108IgkJCQkgICAgIGVuZD0iPiIgICBza2lwPSJcXFxcXHxcXD4iCSAgZm9sZCBjb250YWlucz1ydWJ5TmVzdGVkQW5nbGVCcmFja2V0cyxydWJ5RGVsaW1pdGVyRXNjYXBlCisgIHN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVbcXddXFsiCQkJCSAgICAgZW5kPSJcXSIgIHNraXA9IlxcXFxcfFxcXF0iICBmb2xkIGNvbnRhaW5zPXJ1YnlOZXN0ZWRTcXVhcmVCcmFja2V0cyxydWJ5RGVsaW1pdGVyRXNjYXBlCisgIHN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVbcXddKCIJCQkJICAgICBlbmQ9IikiICAgc2tpcD0iXFxcXFx8XFwpIgkgIGZvbGQgY29udGFpbnM9cnVieU5lc3RlZFBhcmVudGhlc2VzLHJ1YnlEZWxpbWl0ZXJFc2NhcGUKKyAgc3luIHJlZ2lvbiBydWJ5U3RyaW5nIG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBzdGFydD0iJXFceihcc1wpIgkJCSAgICAgZW5kPSJcejEiIHNraXA9IlxcXFxcfFxcXHoxIiBmb2xkCisgIHN5biByZWdpb24gcnVieVN5bWJvbCBtYXRjaGdyb3VwPXJ1YnlTeW1ib2xEZWxpbWl0ZXIgc3RhcnQ9IiVzXHooW35gIUAjJCVeJipfXC0rPXxcOjsiJywuPy9dXCkiICAgIGVuZD0iXHoxIiBza2lwPSJcXFxcXHxcXFx6MSIgZm9sZAorICBzeW4gcmVnaW9uIHJ1YnlTeW1ib2wgbWF0Y2hncm91cD1ydWJ5U3ltYm9sRGVsaW1pdGVyIHN0YXJ0PSIlc3siCQkJCSAgICAgZW5kPSJ9IiAgIHNraXA9IlxcXFxcfFxcfSIJICBmb2xkIGNvbnRhaW5zPXJ1YnlOZXN0ZWRDdXJseUJyYWNlcyxydWJ5RGVsaW1pdGVyRXNjYXBlCisgIHN5biByZWdpb24gcnVieVN5bWJvbCBtYXRjaGdyb3VwPXJ1YnlTeW1ib2xEZWxpbWl0ZXIgc3RhcnQ9IiVzPCIJCQkJICAgICBlbmQ9Ij4iICAgc2tpcD0iXFxcXFx8XFw+IgkgIGZvbGQgY29udGFpbnM9cnVieU5lc3RlZEFuZ2xlQnJhY2tldHMscnVieURlbGltaXRlckVzY2FwZQorICBzeW4gcmVnaW9uIHJ1YnlTeW1ib2wgbWF0Y2hncm91cD1ydWJ5U3ltYm9sRGVsaW1pdGVyIHN0YXJ0PSIlc1xbIgkJCQkgICAgIGVuZD0iXF0iICBza2lwPSJcXFxcXHxcXFxdIiAgZm9sZCBjb250YWlucz1ydWJ5TmVzdGVkU3F1YXJlQnJhY2tldHMscnVieURlbGltaXRlckVzY2FwZQorICBzeW4gcmVnaW9uIHJ1YnlTeW1ib2wgbWF0Y2hncm91cD1ydWJ5U3ltYm9sRGVsaW1pdGVyIHN0YXJ0PSIlcygiCQkJCSAgICAgZW5kPSIpIiAgIHNraXA9IlxcXFxcfFxcKSIJICBmb2xkIGNvbnRhaW5zPXJ1YnlOZXN0ZWRQYXJlbnRoZXNlcyxydWJ5RGVsaW1pdGVyRXNjYXBlCisgIHN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVzXHooXHNcKSIJCQkgICAgIGVuZD0iXHoxIiBza2lwPSJcXFxcXHxcXFx6MSIgZm9sZAorZWxzZQorICBzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSIlW3F3XVx6KFt+YCFAIyQlXiYqX1wtKz18XDo7IicsLj8vXVwpIiBlbmQ9Ilx6MSIgc2tpcD0iXFxcXFx8XFxcejEiCisgIHN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVbcXddeyIJCQkJICAgICBlbmQ9In0iICAgc2tpcD0iXFxcXFx8XFx9IgkgIGNvbnRhaW5zPXJ1YnlOZXN0ZWRDdXJseUJyYWNlcyxydWJ5RGVsaW1pdGVyRXNjYXBlCisgIHN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVbcXddPCIJCQkJICAgICBlbmQ9Ij4iICAgc2tpcD0iXFxcXFx8XFw+IgkgIGNvbnRhaW5zPXJ1YnlOZXN0ZWRBbmdsZUJyYWNrZXRzLHJ1YnlEZWxpbWl0ZXJFc2NhcGUKKyAgc3luIHJlZ2lvbiBydWJ5U3RyaW5nIG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBzdGFydD0iJVtxd11cWyIJCQkJICAgICBlbmQ9IlxdIiAgc2tpcD0iXFxcXFx8XFxcXSIgIGNvbnRhaW5zPXJ1YnlOZXN0ZWRTcXVhcmVCcmFja2V0cyxydWJ5RGVsaW1pdGVyRXNjYXBlCisgIHN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVbcXddKCIJCQkJICAgICBlbmQ9IikiICAgc2tpcD0iXFxcXFx8XFwpIgkgIGNvbnRhaW5zPXJ1YnlOZXN0ZWRQYXJlbnRoZXNlcyxydWJ5RGVsaW1pdGVyRXNjYXBlCisgIHN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVxXHooXHNcKSIJCQkgICAgIGVuZD0iXHoxIiBza2lwPSJcXFxcXHxcXFx6MSIKKyAgc3luIHJlZ2lvbiBydWJ5U3ltYm9sIG1hdGNoZ3JvdXA9cnVieVN5bWJvbERlbGltaXRlciBzdGFydD0iJXNceihbfmAhQCMkJV4mKl9cLSs9fFw6OyInLC4/L11cKSIgICAgZW5kPSJcejEiIHNraXA9IlxcXFxcfFxcXHoxIgorICBzeW4gcmVnaW9uIHJ1YnlTeW1ib2wgbWF0Y2hncm91cD1ydWJ5U3ltYm9sRGVsaW1pdGVyIHN0YXJ0PSIlc3siCQkJCSAgICAgZW5kPSJ9IiAgIHNraXA9IlxcXFxcfFxcfSIJICBjb250YWlucz1ydWJ5TmVzdGVkQ3VybHlCcmFjZXMscnVieURlbGltaXRlckVzY2FwZQorICBzeW4gcmVnaW9uIHJ1YnlTeW1ib2wgbWF0Y2hncm91cD1ydWJ5U3ltYm9sRGVsaW1pdGVyIHN0YXJ0PSIlczwiCQkJCSAgICAgZW5kPSI+IiAgIHNraXA9IlxcXFxcfFxcPiIJICBjb250YWlucz1ydWJ5TmVzdGVkQW5nbGVCcmFja2V0cyxydWJ5RGVsaW1pdGVyRXNjYXBlCisgIHN5biByZWdpb24gcnVieVN5bWJvbCBtYXRjaGdyb3VwPXJ1YnlTeW1ib2xEZWxpbWl0ZXIgc3RhcnQ9IiVzXFsiCQkJCSAgICAgZW5kPSJcXSIgIHNraXA9IlxcXFxcfFxcXF0iICBjb250YWlucz1ydWJ5TmVzdGVkU3F1YXJlQnJhY2tldHMscnVieURlbGltaXRlckVzY2FwZQorICBzeW4gcmVnaW9uIHJ1YnlTeW1ib2wgbWF0Y2hncm91cD1ydWJ5U3ltYm9sRGVsaW1pdGVyIHN0YXJ0PSIlcygiCQkJCSAgICAgZW5kPSIpIiAgIHNraXA9IlxcXFxcfFxcKSIJICBjb250YWlucz1ydWJ5TmVzdGVkUGFyZW50aGVzZXMscnVieURlbGltaXRlckVzY2FwZQorICBzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSIlc1x6KFxzXCkiCQkJICAgICBlbmQ9Ilx6MSIgc2tpcD0iXFxcXFx8XFxcejEiCitlbmRpZgorCisiIEdlbmVyYWxpemVkIERvdWJsZSBRdW90ZWQgU3RyaW5nIGFuZCBBcnJheSBvZiBTdHJpbmdzIGFuZCBTaGVsbCBDb21tYW5kIE91dHB1dCB7e3sxCiAiIE5vdGU6ICU9IGlzIG5vdCBtYXRjaGVkIGhlcmUgYXMgdGhlIGJlZ2lubmluZyBvZiBhIGRvdWJsZSBxdW90ZWQgc3RyaW5nCi1zeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSIlXHooW35gIUAjJCVeJipfXC0rfFw6OyInLC4/L11cKSIJICAgIGVuZD0iXHoxIiBza2lwPSJcXFxcXHxcXFx6MSIgY29udGFpbnM9QHJ1YnlTdHJpbmdTcGVjaWFsIGZvbGQKLXN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVbUVdJeF1ceihbfmAhQCMkJV4mKl9cLSs9fFw6OyInLC4/L11cKSIgZW5kPSJcejEiIHNraXA9IlxcXFxcfFxcXHoxIiBjb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwgZm9sZAotc3luIHJlZ2lvbiBydWJ5U3RyaW5nIG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBzdGFydD0iJVtRV0l4XVw9eyIJCQkJICAgIGVuZD0ifSIgICBza2lwPSJcXFxcXHxcXH0iCSBjb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwscnVieU5lc3RlZEN1cmx5QnJhY2VzLHJ1YnlEZWxpbUVzY2FwZSAgICBmb2xkCi1zeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSIlW1FXSXhdXD08IgkJCQkgICAgZW5kPSI+IiAgIHNraXA9IlxcXFxcfFxcPiIJIGNvbnRhaW5zPUBydWJ5U3RyaW5nU3BlY2lhbCxydWJ5TmVzdGVkQW5nbGVCcmFja2V0cyxydWJ5RGVsaW1Fc2NhcGUgIGZvbGQKLXN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVbUVdJeF1cPVxbIgkJCQkgICAgZW5kPSJcXSIgIHNraXA9IlxcXFxcfFxcXF0iCSBjb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwscnVieU5lc3RlZFNxdWFyZUJyYWNrZXRzLHJ1YnlEZWxpbUVzY2FwZSBmb2xkCi1zeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSIlW1FXSXhdXD0oIgkJCQkgICAgZW5kPSIpIiAgIHNraXA9IlxcXFxcfFxcKSIJIGNvbnRhaW5zPUBydWJ5U3RyaW5nU3BlY2lhbCxydWJ5TmVzdGVkUGFyZW50aGVzZXMscnVieURlbGltRXNjYXBlICAgIGZvbGQKLXN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVbUXhdICIJCQkJICAgIGVuZD0iICIgICBza2lwPSJcXFxcXHxcXCkiICAgY29udGFpbnM9QHJ1YnlTdHJpbmdTcGVjaWFsIGZvbGQKK2lmIHM6Zm9sZGFibGUoJyUnKQorICBzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSIlXHooW35gIUAjJCVeJipfXC0rfFw6OyInLC4/L11cKSIJICAgICAgZW5kPSJcejEiIHNraXA9IlxcXFxcfFxcXHoxIiBjb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwgZm9sZAorICBzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSIlW1FXeF1ceihbfmAhQCMkJV4mKl9cLSs9fFw6OyInLC4/L11cKSIgZW5kPSJcejEiIHNraXA9IlxcXFxcfFxcXHoxIiBjb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwgZm9sZAorICBzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSIlW1FXeF1cPXsiCQkJICAgICAgZW5kPSJ9Iglza2lwPSJcXFxcXHxcXH0iICAgY29udGFpbnM9QHJ1YnlTdHJpbmdTcGVjaWFsLHJ1YnlOZXN0ZWRDdXJseUJyYWNlcyxydWJ5RGVsaW1pdGVyRXNjYXBlICAgIGZvbGQKKyAgc3luIHJlZ2lvbiBydWJ5U3RyaW5nIG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBzdGFydD0iJVtRV3hdXD08IgkJCSAgICAgIGVuZD0iPiIJc2tpcD0iXFxcXFx8XFw+IiAgIGNvbnRhaW5zPUBydWJ5U3RyaW5nU3BlY2lhbCxydWJ5TmVzdGVkQW5nbGVCcmFja2V0cyxydWJ5RGVsaW1pdGVyRXNjYXBlICBmb2xkCisgIHN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVbUVd4XVw9XFsiCQkJICAgICAgZW5kPSJcXSIJc2tpcD0iXFxcXFx8XFxcXSIgIGNvbnRhaW5zPUBydWJ5U3RyaW5nU3BlY2lhbCxydWJ5TmVzdGVkU3F1YXJlQnJhY2tldHMscnVieURlbGltaXRlckVzY2FwZSBmb2xkCisgIHN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVbUVd4XVw9KCIJCQkgICAgICBlbmQ9IikiCXNraXA9IlxcXFxcfFxcKSIgICBjb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwscnVieU5lc3RlZFBhcmVudGhlc2VzLHJ1YnlEZWxpbWl0ZXJFc2NhcGUgICAgZm9sZAorICBzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSIlW1F4XVx6KFxzXCkiCQkJICAgICAgZW5kPSJcejEiIHNraXA9IlxcXFxcfFxcXHoxIiBjb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwgZm9sZAorZWxzZQorICBzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSIlXHooW35gIUAjJCVeJipfXC0rfFw6OyInLC4/L11cKSIJICAgICAgZW5kPSJcejEiIHNraXA9IlxcXFxcfFxcXHoxIiBjb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwKKyAgc3luIHJlZ2lvbiBydWJ5U3RyaW5nIG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBzdGFydD0iJVtRV3hdXHooW35gIUAjJCVeJipfXC0rPXxcOjsiJywuPy9dXCkiIGVuZD0iXHoxIiBza2lwPSJcXFxcXHxcXFx6MSIgY29udGFpbnM9QHJ1YnlTdHJpbmdTcGVjaWFsCisgIHN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVbUVd4XVw9eyIJCQkgICAgICBlbmQ9In0iCXNraXA9IlxcXFxcfFxcfSIgICBjb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwscnVieU5lc3RlZEN1cmx5QnJhY2VzLHJ1YnlEZWxpbWl0ZXJFc2NhcGUKKyAgc3luIHJlZ2lvbiBydWJ5U3RyaW5nIG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBzdGFydD0iJVtRV3hdXD08IgkJCSAgICAgIGVuZD0iPiIJc2tpcD0iXFxcXFx8XFw+IiAgIGNvbnRhaW5zPUBydWJ5U3RyaW5nU3BlY2lhbCxydWJ5TmVzdGVkQW5nbGVCcmFja2V0cyxydWJ5RGVsaW1pdGVyRXNjYXBlCisgIHN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVbUVd4XVw9XFsiCQkJICAgICAgZW5kPSJcXSIJc2tpcD0iXFxcXFx8XFxcXSIgIGNvbnRhaW5zPUBydWJ5U3RyaW5nU3BlY2lhbCxydWJ5TmVzdGVkU3F1YXJlQnJhY2tldHMscnVieURlbGltaXRlckVzY2FwZQorICBzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSIlW1FXeF1cPSgiCQkJICAgICAgZW5kPSIpIglza2lwPSJcXFxcXHxcXCkiICAgY29udGFpbnM9QHJ1YnlTdHJpbmdTcGVjaWFsLHJ1YnlOZXN0ZWRQYXJlbnRoZXNlcyxydWJ5RGVsaW1pdGVyRXNjYXBlCisgIHN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVbUXhdXHooXHNcKSIJCQkgICAgICBlbmQ9Ilx6MSIgc2tpcD0iXFxcXFx8XFxcejEiIGNvbnRhaW5zPUBydWJ5U3RyaW5nU3BlY2lhbAorZW5kaWYKIAotIiBIZXJlIERvY3VtZW50Ci1zeW4gcmVnaW9uIHJ1YnlIZXJlZG9jU3RhcnQgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PStcJShcJShjbGFzc1xzKlx8XCUoW119KSInLl1cfDo6XClcKVxfcypcfFx3XClcQDwhPDwtXD1cenNcJShcJShcaFx8W15ceDAwLVx4N0ZdXClcJShcd1x8W15ceDAwLVx4N0ZdXCkqXCkrCSBlbmQ9KyQrIG9uZWxpbmUgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wCi1zeW4gcmVnaW9uIHJ1YnlIZXJlZG9jU3RhcnQgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PStcJShcJShjbGFzc1xzKlx8XCUoW119KSInLl1cfDo6XClcKVxfcypcfFx3XClcQDwhPDwtXD1cenMiXCUoW14iXSpcKSIrIGVuZD0rJCsgb25lbGluZSBjb250YWlucz1BTExCVVQsQHJ1YnlOb3RUb3AKLXN5biByZWdpb24gcnVieUhlcmVkb2NTdGFydCBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9K1wlKFwlKGNsYXNzXHMqXHxcJShbXX0pIicuXVx8OjpcKVwpXF9zKlx8XHdcKVxAPCE8PC1cPVx6cydcJShbXiddKlwpJysgZW5kPSskKyBvbmVsaW5lIGNvbnRhaW5zPUFMTEJVVCxAcnVieU5vdFRvcAotc3luIHJlZ2lvbiBydWJ5SGVyZWRvY1N0YXJ0IG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBzdGFydD0rXCUoXCUoY2xhc3NccypcfFwlKFtdfSkiJy5dXHw6OlwpXClcX3MqXHxcd1wpXEA8ITw8LVw9XHpzYFwlKFteYF0qXClgKyBlbmQ9KyQrIG9uZWxpbmUgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wCisiIEFycmF5IG9mIFN5bWJvbHMge3t7MQoraWYgczpmb2xkYWJsZSgnJScpCisgICIgQXJyYXkgb2YgU3ltYm9scworICBzeW4gcmVnaW9uIHJ1YnlTeW1ib2wgbWF0Y2hncm91cD1ydWJ5U3ltYm9sRGVsaW1pdGVyIHN0YXJ0PSIlaVx6KFt+YCFAIyQlXiYqX1wtKz18XDo7IicsLj8vXVwpIiBlbmQ9Ilx6MSIgc2tpcD0iXFxcXFx8XFxcejEiCWZvbGQKKyAgc3luIHJlZ2lvbiBydWJ5U3ltYm9sIG1hdGNoZ3JvdXA9cnVieVN5bWJvbERlbGltaXRlciBzdGFydD0iJWl7IgkJCQkgIGVuZD0ifSIgICBza2lwPSJcXFxcXHxcXH0iCWZvbGQgY29udGFpbnM9cnVieU5lc3RlZEN1cmx5QnJhY2VzLHJ1YnlEZWxpbWl0ZXJFc2NhcGUKKyAgc3luIHJlZ2lvbiBydWJ5U3ltYm9sIG1hdGNoZ3JvdXA9cnVieVN5bWJvbERlbGltaXRlciBzdGFydD0iJWk8IgkJCQkgIGVuZD0iPiIgICBza2lwPSJcXFxcXHxcXD4iCWZvbGQgY29udGFpbnM9cnVieU5lc3RlZEFuZ2xlQnJhY2tldHMscnVieURlbGltaXRlckVzY2FwZQorICBzeW4gcmVnaW9uIHJ1YnlTeW1ib2wgbWF0Y2hncm91cD1ydWJ5U3ltYm9sRGVsaW1pdGVyIHN0YXJ0PSIlaVxbIgkJCQkgIGVuZD0iXF0iICBza2lwPSJcXFxcXHxcXFxdIglmb2xkIGNvbnRhaW5zPXJ1YnlOZXN0ZWRTcXVhcmVCcmFja2V0cyxydWJ5RGVsaW1pdGVyRXNjYXBlCisgIHN5biByZWdpb24gcnVieVN5bWJvbCBtYXRjaGdyb3VwPXJ1YnlTeW1ib2xEZWxpbWl0ZXIgc3RhcnQ9IiVpKCIJCQkJICBlbmQ9IikiICAgc2tpcD0iXFxcXFx8XFwpIglmb2xkIGNvbnRhaW5zPXJ1YnlOZXN0ZWRQYXJlbnRoZXNlcyxydWJ5RGVsaW1pdGVyRXNjYXBlCiAKLXN5biByZWdpb24gcnVieVN0cmluZyBzdGFydD0rXCUoXCUoY2xhc3NcfDo6XClcX3MqXHxcJShbXX0pIicuXVwpXHNcfFx3XClcQDwhPDxceihcJShcaFx8W15ceDAwLVx4N0ZdXClcJShcd1x8W15ceDAwLVx4N0ZdXCkqXClcemVcJSguKjw8LVw9WydgIl1cPVxoXClcQCEraHM9cysyCW1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBlbmQ9K15cejEkKyBjb250YWlucz1ydWJ5SGVyZWRvY1N0YXJ0LHJ1YnlIZXJlZG9jLEBydWJ5U3RyaW5nU3BlY2lhbCBmb2xkIGtlZXBlbmQKLXN5biByZWdpb24gcnVieVN0cmluZyBzdGFydD0rXCUoXCUoY2xhc3NcfDo6XClcX3MqXHxcJShbXX0pIicuXVwpXHNcfFx3XClcQDwhPDwiXHooW14iXSpcKSJcemVcJSguKjw8LVw9WydgIl1cPVxoXClcQCEraHM9cysyCW1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBlbmQ9K15cejEkKyBjb250YWlucz1ydWJ5SGVyZWRvY1N0YXJ0LHJ1YnlIZXJlZG9jLEBydWJ5U3RyaW5nU3BlY2lhbCBmb2xkIGtlZXBlbmQKLXN5biByZWdpb24gcnVieVN0cmluZyBzdGFydD0rXCUoXCUoY2xhc3NcfDo6XClcX3MqXHxcJShbXX0pIicuXVwpXHNcfFx3XClcQDwhPDwnXHooW14nXSpcKSdcemVcJSguKjw8LVw9WydgIl1cPVxoXClcQCEraHM9cysyCW1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBlbmQ9K15cejEkKyBjb250YWlucz1ydWJ5SGVyZWRvY1N0YXJ0LHJ1YnlIZXJlZG9jCQkJZm9sZCBrZWVwZW5kCi1zeW4gcmVnaW9uIHJ1YnlTdHJpbmcgc3RhcnQ9K1wlKFwlKGNsYXNzXHw6OlwpXF9zKlx8XCUoW119KSInLl1cKVxzXHxcd1wpXEA8ITw8YFx6KFteYF0qXClgXHplXCUoLio8PC1cPVsnYCJdXD1caFwpXEAhK2hzPXMrMgltYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgZW5kPSteXHoxJCsgY29udGFpbnM9cnVieUhlcmVkb2NTdGFydCxydWJ5SGVyZWRvYyxAcnVieVN0cmluZ1NwZWNpYWwgZm9sZCBrZWVwZW5kCisgICIgQXJyYXkgb2YgaW50ZXJwb2xhdGVkIFN5bWJvbHMKKyAgc3luIHJlZ2lvbiBydWJ5U3ltYm9sIG1hdGNoZ3JvdXA9cnVieVN5bWJvbERlbGltaXRlciBzdGFydD0iJUlceihbfmAhQCMkJV4mKl9cLSs9fFw6OyInLC4/L11cKSIgZW5kPSJcejEiIHNraXA9IlxcXFxcfFxcXHoxIgljb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwgZm9sZAorICBzeW4gcmVnaW9uIHJ1YnlTeW1ib2wgbWF0Y2hncm91cD1ydWJ5U3ltYm9sRGVsaW1pdGVyIHN0YXJ0PSIlSXsiCQkJCSAgZW5kPSJ9IiAgIHNraXA9IlxcXFxcfFxcfSIJY29udGFpbnM9QHJ1YnlTdHJpbmdTcGVjaWFsLHJ1YnlOZXN0ZWRDdXJseUJyYWNlcyxydWJ5RGVsaW1pdGVyRXNjYXBlICAgIGZvbGQKKyAgc3luIHJlZ2lvbiBydWJ5U3ltYm9sIG1hdGNoZ3JvdXA9cnVieVN5bWJvbERlbGltaXRlciBzdGFydD0iJUk8IgkJCQkgIGVuZD0iPiIgICBza2lwPSJcXFxcXHxcXD4iCWNvbnRhaW5zPUBydWJ5U3RyaW5nU3BlY2lhbCxydWJ5TmVzdGVkQW5nbGVCcmFja2V0cyxydWJ5RGVsaW1pdGVyRXNjYXBlICBmb2xkCisgIHN5biByZWdpb24gcnVieVN5bWJvbCBtYXRjaGdyb3VwPXJ1YnlTeW1ib2xEZWxpbWl0ZXIgc3RhcnQ9IiVJXFsiCQkJCSAgZW5kPSJcXSIgIHNraXA9IlxcXFxcfFxcXF0iCWNvbnRhaW5zPUBydWJ5U3RyaW5nU3BlY2lhbCxydWJ5TmVzdGVkU3F1YXJlQnJhY2tldHMscnVieURlbGltaXRlckVzY2FwZSBmb2xkCisgIHN5biByZWdpb24gcnVieVN5bWJvbCBtYXRjaGdyb3VwPXJ1YnlTeW1ib2xEZWxpbWl0ZXIgc3RhcnQ9IiVJKCIJCQkJICBlbmQ9IikiICAgc2tpcD0iXFxcXFx8XFwpIgljb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwscnVieU5lc3RlZFBhcmVudGhlc2VzLHJ1YnlEZWxpbWl0ZXJFc2NhcGUgICAgZm9sZAorZWxzZQorICAiIEFycmF5IG9mIFN5bWJvbHMKKyAgc3luIHJlZ2lvbiBydWJ5U3ltYm9sIG1hdGNoZ3JvdXA9cnVieVN5bWJvbERlbGltaXRlciBzdGFydD0iJWlceihbfmAhQCMkJV4mKl9cLSs9fFw6OyInLC4/L11cKSIgZW5kPSJcejEiIHNraXA9IlxcXFxcfFxcXHoxIgorICBzeW4gcmVnaW9uIHJ1YnlTeW1ib2wgbWF0Y2hncm91cD1ydWJ5U3ltYm9sRGVsaW1pdGVyIHN0YXJ0PSIlaXsiCQkJCSAgZW5kPSJ9IiAgIHNraXA9IlxcXFxcfFxcfSIJY29udGFpbnM9cnVieU5lc3RlZEN1cmx5QnJhY2VzLHJ1YnlEZWxpbWl0ZXJFc2NhcGUKKyAgc3luIHJlZ2lvbiBydWJ5U3ltYm9sIG1hdGNoZ3JvdXA9cnVieVN5bWJvbERlbGltaXRlciBzdGFydD0iJWk8IgkJCQkgIGVuZD0iPiIgICBza2lwPSJcXFxcXHxcXD4iCWNvbnRhaW5zPXJ1YnlOZXN0ZWRBbmdsZUJyYWNrZXRzLHJ1YnlEZWxpbWl0ZXJFc2NhcGUKKyAgc3luIHJlZ2lvbiBydWJ5U3ltYm9sIG1hdGNoZ3JvdXA9cnVieVN5bWJvbERlbGltaXRlciBzdGFydD0iJWlcWyIJCQkJICBlbmQ9IlxdIiAgc2tpcD0iXFxcXFx8XFxcXSIJY29udGFpbnM9cnVieU5lc3RlZFNxdWFyZUJyYWNrZXRzLHJ1YnlEZWxpbWl0ZXJFc2NhcGUKKyAgc3luIHJlZ2lvbiBydWJ5U3ltYm9sIG1hdGNoZ3JvdXA9cnVieVN5bWJvbERlbGltaXRlciBzdGFydD0iJWkoIgkJCQkgIGVuZD0iKSIgICBza2lwPSJcXFxcXHxcXCkiCWNvbnRhaW5zPXJ1YnlOZXN0ZWRQYXJlbnRoZXNlcyxydWJ5RGVsaW1pdGVyRXNjYXBlCiAKLXN5biByZWdpb24gcnVieVN0cmluZyBzdGFydD0rXCUoXCUoY2xhc3NcfDo6XClcX3MqXHxcJShbXX0pLl1cKVxzXHxcd1wpXEA8ITw8LVx6KFwlKFxoXHxbXlx4MDAtXHg3Rl1cKVwlKFx3XHxbXlx4MDAtXHg3Rl1cKSpcKVx6ZVwlKC4qPDwtXD1bJ2AiXVw9XGhcKVxAIStocz1zKzMgICAgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIGVuZD0rXlxzKlx6c1x6MSQrIGNvbnRhaW5zPXJ1YnlIZXJlZG9jU3RhcnQsQHJ1YnlTdHJpbmdTcGVjaWFsIGZvbGQga2VlcGVuZAotc3luIHJlZ2lvbiBydWJ5U3RyaW5nIHN0YXJ0PStcJShcJShjbGFzc1x8OjpcKVxfcypcfFwlKFtdfSkuXVwpXHNcfFx3XClcQDwhPDwtIlx6KFteIl0qXCkiXHplXCUoLio8PC1cPVsnYCJdXD1caFwpXEAhK2hzPXMrMyAgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIGVuZD0rXlxzKlx6c1x6MSQrIGNvbnRhaW5zPXJ1YnlIZXJlZG9jU3RhcnQsQHJ1YnlTdHJpbmdTcGVjaWFsIGZvbGQga2VlcGVuZAotc3luIHJlZ2lvbiBydWJ5U3RyaW5nIHN0YXJ0PStcJShcJShjbGFzc1x8OjpcKVxfcypcfFwlKFtdfSkuXVwpXHNcfFx3XClcQDwhPDwtJ1x6KFteJ10qXCknXHplXCUoLio8PC1cPVsnYCJdXD1caFwpXEAhK2hzPXMrMyAgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIGVuZD0rXlxzKlx6c1x6MSQrIGNvbnRhaW5zPXJ1YnlIZXJlZG9jU3RhcnQJCSAgICAgZm9sZCBrZWVwZW5kCi1zeW4gcmVnaW9uIHJ1YnlTdHJpbmcgc3RhcnQ9K1wlKFwlKGNsYXNzXHw6OlwpXF9zKlx8XCUoW119KS5dXClcc1x8XHdcKVxAPCE8PC1gXHooW15gXSpcKWBcemVcJSguKjw8LVw9WydgIl1cPVxoXClcQCEraHM9cyszICBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgZW5kPSteXHMqXHpzXHoxJCsgY29udGFpbnM9cnVieUhlcmVkb2NTdGFydCxAcnVieVN0cmluZ1NwZWNpYWwgZm9sZCBrZWVwZW5kCisgICIgQXJyYXkgb2YgaW50ZXJwb2xhdGVkIFN5bWJvbHMKKyAgc3luIHJlZ2lvbiBydWJ5U3ltYm9sIG1hdGNoZ3JvdXA9cnVieVN5bWJvbERlbGltaXRlciBzdGFydD0iJUlceihbfmAhQCMkJV4mKl9cLSs9fFw6OyInLC4/L11cKSIgZW5kPSJcejEiIHNraXA9IlxcXFxcfFxcXHoxIgljb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwKKyAgc3luIHJlZ2lvbiBydWJ5U3ltYm9sIG1hdGNoZ3JvdXA9cnVieVN5bWJvbERlbGltaXRlciBzdGFydD0iJUl7IgkJCQkgIGVuZD0ifSIgICBza2lwPSJcXFxcXHxcXH0iCWNvbnRhaW5zPUBydWJ5U3RyaW5nU3BlY2lhbCxydWJ5TmVzdGVkQ3VybHlCcmFjZXMscnVieURlbGltaXRlckVzY2FwZQorICBzeW4gcmVnaW9uIHJ1YnlTeW1ib2wgbWF0Y2hncm91cD1ydWJ5U3ltYm9sRGVsaW1pdGVyIHN0YXJ0PSIlSTwiCQkJCSAgZW5kPSI+IiAgIHNraXA9IlxcXFxcfFxcPiIJY29udGFpbnM9QHJ1YnlTdHJpbmdTcGVjaWFsLHJ1YnlOZXN0ZWRBbmdsZUJyYWNrZXRzLHJ1YnlEZWxpbWl0ZXJFc2NhcGUKKyAgc3luIHJlZ2lvbiBydWJ5U3ltYm9sIG1hdGNoZ3JvdXA9cnVieVN5bWJvbERlbGltaXRlciBzdGFydD0iJUlcWyIJCQkJICBlbmQ9IlxdIiAgc2tpcD0iXFxcXFx8XFxcXSIJY29udGFpbnM9QHJ1YnlTdHJpbmdTcGVjaWFsLHJ1YnlOZXN0ZWRTcXVhcmVCcmFja2V0cyxydWJ5RGVsaW1pdGVyRXNjYXBlCisgIHN5biByZWdpb24gcnVieVN5bWJvbCBtYXRjaGdyb3VwPXJ1YnlTeW1ib2xEZWxpbWl0ZXIgc3RhcnQ9IiVJKCIJCQkJICBlbmQ9IikiICAgc2tpcD0iXFxcXFx8XFwpIgljb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwscnVieU5lc3RlZFBhcmVudGhlc2VzLHJ1YnlEZWxpbWl0ZXJFc2NhcGUKK2VuZGlmCiAKKyIgSGVyZSBEb2N1bWVudCB7e3sxCitzeW4gcmVnaW9uIHJ1YnlIZXJlZG9jU3RhcnQgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PStcJShcJShjbGFzc1xzKlx8XCUoW119KSInLl1cfDo6XClcKVxfcypcfFx3XClcQDwhPDxbLX5dXD1cenNcJShcJShcaFx8W15ceDAwLVx4N0ZdXClcJShcd1x8W15ceDAwLVx4N0ZdXCkqXCkrCSBlbmQ9KyQrIG9uZWxpbmUgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wCitzeW4gcmVnaW9uIHJ1YnlIZXJlZG9jU3RhcnQgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PStcJShcJShjbGFzc1xzKlx8XCUoW119KSInLl1cfDo6XClcKVxfcypcfFx3XClcQDwhPDxbLX5dXD1cenMiXCUoW14iXSpcKSIrIGVuZD0rJCsgb25lbGluZSBjb250YWlucz1BTExCVVQsQHJ1YnlOb3RUb3AKK3N5biByZWdpb24gcnVieUhlcmVkb2NTdGFydCBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9K1wlKFwlKGNsYXNzXHMqXHxcJShbXX0pIicuXVx8OjpcKVwpXF9zKlx8XHdcKVxAPCE8PFstfl1cPVx6cydcJShbXiddKlwpJysgZW5kPSskKyBvbmVsaW5lIGNvbnRhaW5zPUFMTEJVVCxAcnVieU5vdFRvcAorc3luIHJlZ2lvbiBydWJ5SGVyZWRvY1N0YXJ0IG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBzdGFydD0rXCUoXCUoY2xhc3NccypcfFwlKFtdfSkiJy5dXHw6OlwpXClcX3MqXHxcd1wpXEA8ITw8Wy1+XVw9XHpzYFwlKFteYF0qXClgKyBlbmQ9KyQrIG9uZWxpbmUgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wCisKK2lmIHM6Zm9sZGFibGUoJzw8JykKKyAgc3luIHJlZ2lvbiBydWJ5U3RyaW5nIHN0YXJ0PStcJShcJShjbGFzc1x8OjpcKVxfcypcfFwlKFtdfSkiJy5dXClcc1x8XHdcKVxAPCE8PFx6KFwlKFxoXHxbXlx4MDAtXHg3Rl1cKVwlKFx3XHxbXlx4MDAtXHg3Rl1cKSpcKVx6ZVwlKC4qPDxbLX5dXD1bJ2AiXVw9XGhcKVxAIStocz1zKzIJbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIGVuZD0rXlx6MSQrIGNvbnRhaW5zPXJ1YnlIZXJlZG9jU3RhcnQscnVieUhlcmVkb2MsQHJ1YnlTdHJpbmdTcGVjaWFsIGZvbGQga2VlcGVuZAorICBzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgc3RhcnQ9K1wlKFwlKGNsYXNzXHw6OlwpXF9zKlx8XCUoW119KSInLl1cKVxzXHxcd1wpXEA8ITw8Ilx6KFteIl0qXCkiXHplXCUoLio8PFstfl1cPVsnYCJdXD1caFwpXEAhK2hzPXMrMgltYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgZW5kPSteXHoxJCsgY29udGFpbnM9cnVieUhlcmVkb2NTdGFydCxydWJ5SGVyZWRvYyxAcnVieVN0cmluZ1NwZWNpYWwgZm9sZCBrZWVwZW5kCisgIHN5biByZWdpb24gcnVieVN0cmluZyBzdGFydD0rXCUoXCUoY2xhc3NcfDo6XClcX3MqXHxcJShbXX0pIicuXVwpXHNcfFx3XClcQDwhPDwnXHooW14nXSpcKSdcemVcJSguKjw8Wy1+XVw9WydgIl1cPVxoXClcQCEraHM9cysyCW1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBlbmQ9K15cejEkKyBjb250YWlucz1ydWJ5SGVyZWRvY1N0YXJ0LHJ1YnlIZXJlZG9jCQkgICAgZm9sZCBrZWVwZW5kCisgIHN5biByZWdpb24gcnVieVN0cmluZyBzdGFydD0rXCUoXCUoY2xhc3NcfDo6XClcX3MqXHxcJShbXX0pIicuXVwpXHNcfFx3XClcQDwhPDxgXHooW15gXSpcKWBcemVcJSguKjw8Wy1+XVw9WydgIl1cPVxoXClcQCEraHM9cysyCW1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBlbmQ9K15cejEkKyBjb250YWlucz1ydWJ5SGVyZWRvY1N0YXJ0LHJ1YnlIZXJlZG9jLEBydWJ5U3RyaW5nU3BlY2lhbCBmb2xkIGtlZXBlbmQKKworICBzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgc3RhcnQ9K1wlKFwlKGNsYXNzXHw6OlwpXF9zKlx8XCUoW119KS5dXClcc1x8XHdcKVxAPCE8PFstfl1ceihcJShcaFx8W15ceDAwLVx4N0ZdXClcJShcd1x8W15ceDAwLVx4N0ZdXCkqXClcemVcJSguKjw8Wy1+XVw9WydgIl1cPVxoXClcQCEraHM9cyszICAgIG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBlbmQ9K15ccypcenNcejEkKyBjb250YWlucz1ydWJ5SGVyZWRvY1N0YXJ0LEBydWJ5U3RyaW5nU3BlY2lhbCBmb2xkIGtlZXBlbmQKKyAgc3luIHJlZ2lvbiBydWJ5U3RyaW5nIHN0YXJ0PStcJShcJShjbGFzc1x8OjpcKVxfcypcfFwlKFtdfSkuXVwpXHNcfFx3XClcQDwhPDxbLX5dIlx6KFteIl0qXCkiXHplXCUoLio8PFstfl1cPVsnYCJdXD1caFwpXEAhK2hzPXMrMyAgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIGVuZD0rXlxzKlx6c1x6MSQrIGNvbnRhaW5zPXJ1YnlIZXJlZG9jU3RhcnQsQHJ1YnlTdHJpbmdTcGVjaWFsIGZvbGQga2VlcGVuZAorICBzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgc3RhcnQ9K1wlKFwlKGNsYXNzXHw6OlwpXF9zKlx8XCUoW119KS5dXClcc1x8XHdcKVxAPCE8PFstfl0nXHooW14nXSpcKSdcemVcJSguKjw8Wy1+XVw9WydgIl1cPVxoXClcQCEraHM9cyszICBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgZW5kPSteXHMqXHpzXHoxJCsgY29udGFpbnM9cnVieUhlcmVkb2NTdGFydAkJICAgIGZvbGQga2VlcGVuZAorICBzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgc3RhcnQ9K1wlKFwlKGNsYXNzXHw6OlwpXF9zKlx8XCUoW119KS5dXClcc1x8XHdcKVxAPCE8PFstfl1gXHooW15gXSpcKWBcemVcJSguKjw8Wy1+XVw9WydgIl1cPVxoXClcQCEraHM9cyszICBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgZW5kPSteXHMqXHpzXHoxJCsgY29udGFpbnM9cnVieUhlcmVkb2NTdGFydCxAcnVieVN0cmluZ1NwZWNpYWwgZm9sZCBrZWVwZW5kCitlbHNlCisgIHN5biByZWdpb24gcnVieVN0cmluZyBzdGFydD0rXCUoXCUoY2xhc3NcfDo6XClcX3MqXHxcJShbXX0pIicuXVwpXHNcfFx3XClcQDwhPDxceihcJShcaFx8W15ceDAwLVx4N0ZdXClcJShcd1x8W15ceDAwLVx4N0ZdXCkqXClcemVcJSguKjw8Wy1+XVw9WydgIl1cPVxoXClcQCEraHM9cysyCW1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBlbmQ9K15cejEkKyBjb250YWlucz1ydWJ5SGVyZWRvY1N0YXJ0LHJ1YnlIZXJlZG9jLEBydWJ5U3RyaW5nU3BlY2lhbCBrZWVwZW5kCisgIHN5biByZWdpb24gcnVieVN0cmluZyBzdGFydD0rXCUoXCUoY2xhc3NcfDo6XClcX3MqXHxcJShbXX0pIicuXVwpXHNcfFx3XClcQDwhPDwiXHooW14iXSpcKSJcemVcJSguKjw8Wy1+XVw9WydgIl1cPVxoXClcQCEraHM9cysyCW1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBlbmQ9K15cejEkKyBjb250YWlucz1ydWJ5SGVyZWRvY1N0YXJ0LHJ1YnlIZXJlZG9jLEBydWJ5U3RyaW5nU3BlY2lhbCBrZWVwZW5kCisgIHN5biByZWdpb24gcnVieVN0cmluZyBzdGFydD0rXCUoXCUoY2xhc3NcfDo6XClcX3MqXHxcJShbXX0pIicuXVwpXHNcfFx3XClcQDwhPDwnXHooW14nXSpcKSdcemVcJSguKjw8Wy1+XVw9WydgIl1cPVxoXClcQCEraHM9cysyCW1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBlbmQ9K15cejEkKyBjb250YWlucz1ydWJ5SGVyZWRvY1N0YXJ0LHJ1YnlIZXJlZG9jCQkgICAga2VlcGVuZAorICBzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgc3RhcnQ9K1wlKFwlKGNsYXNzXHw6OlwpXF9zKlx8XCUoW119KSInLl1cKVxzXHxcd1wpXEA8ITw8YFx6KFteYF0qXClgXHplXCUoLio8PFstfl1cPVsnYCJdXD1caFwpXEAhK2hzPXMrMgltYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgZW5kPSteXHoxJCsgY29udGFpbnM9cnVieUhlcmVkb2NTdGFydCxydWJ5SGVyZWRvYyxAcnVieVN0cmluZ1NwZWNpYWwga2VlcGVuZAorCisgIHN5biByZWdpb24gcnVieVN0cmluZyBzdGFydD0rXCUoXCUoY2xhc3NcfDo6XClcX3MqXHxcJShbXX0pLl1cKVxzXHxcd1wpXEA8ITw8Wy1+XVx6KFwlKFxoXHxbXlx4MDAtXHg3Rl1cKVwlKFx3XHxbXlx4MDAtXHg3Rl1cKSpcKVx6ZVwlKC4qPDxbLX5dXD1bJ2AiXVw9XGhcKVxAIStocz1zKzMgICAgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIGVuZD0rXlxzKlx6c1x6MSQrIGNvbnRhaW5zPXJ1YnlIZXJlZG9jU3RhcnQsQHJ1YnlTdHJpbmdTcGVjaWFsIGtlZXBlbmQKKyAgc3luIHJlZ2lvbiBydWJ5U3RyaW5nIHN0YXJ0PStcJShcJShjbGFzc1x8OjpcKVxfcypcfFwlKFtdfSkuXVwpXHNcfFx3XClcQDwhPDxbLX5dIlx6KFteIl0qXCkiXHplXCUoLio8PFstfl1cPVsnYCJdXD1caFwpXEAhK2hzPXMrMyAgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIGVuZD0rXlxzKlx6c1x6MSQrIGNvbnRhaW5zPXJ1YnlIZXJlZG9jU3RhcnQsQHJ1YnlTdHJpbmdTcGVjaWFsIGtlZXBlbmQKKyAgc3luIHJlZ2lvbiBydWJ5U3RyaW5nIHN0YXJ0PStcJShcJShjbGFzc1x8OjpcKVxfcypcfFwlKFtdfSkuXVwpXHNcfFx3XClcQDwhPDxbLX5dJ1x6KFteJ10qXCknXHplXCUoLio8PFstfl1cPVsnYCJdXD1caFwpXEAhK2hzPXMrMyAgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIGVuZD0rXlxzKlx6c1x6MSQrIGNvbnRhaW5zPXJ1YnlIZXJlZG9jU3RhcnQJCSAgICBrZWVwZW5kCisgIHN5biByZWdpb24gcnVieVN0cmluZyBzdGFydD0rXCUoXCUoY2xhc3NcfDo6XClcX3MqXHxcJShbXX0pLl1cKVxzXHxcd1wpXEA8ITw8Wy1+XWBceihbXmBdKlwpYFx6ZVwlKC4qPDxbLX5dXD1bJ2AiXVw9XGhcKVxAIStocz1zKzMgIG1hdGNoZ3JvdXA9cnVieVN0cmluZ0RlbGltaXRlciBlbmQ9K15ccypcenNcejEkKyBjb250YWlucz1ydWJ5SGVyZWRvY1N0YXJ0LEBydWJ5U3RyaW5nU3BlY2lhbCBrZWVwZW5kCitlbmRpZgorCisiIGVSdWJ5IENvbmZpZyB7e3sxCiBpZiBleGlzdHMoJ21haW5fc3ludGF4JykgJiYgbWFpbl9zeW50YXggPT0gJ2VydWJ5JwogICBsZXQgYjpydWJ5X25vX2V4cGVuc2l2ZSA9IDEKIGVuZAogCisiIE1vZHVsZSwgQ2xhc3MsIE1ldGhvZCBhbmQgQWxpYXMgRGVjbGFyYXRpb25zIHt7ezEKIHN5biBtYXRjaCAgcnVieUFsaWFzRGVjbGFyYXRpb24gICAgIlteWzpzcGFjZTpdOyMuKCldXCsiIGNvbnRhaW5lZCBjb250YWlucz1ydWJ5U3ltYm9sLHJ1YnlHbG9iYWxWYXJpYWJsZSxydWJ5UHJlZGVmaW5lZFZhcmlhYmxlIG5leHRncm91cD1ydWJ5QWxpYXNEZWNsYXJhdGlvbjIgc2tpcHdoaXRlCiBzeW4gbWF0Y2ggIHJ1YnlBbGlhc0RlY2xhcmF0aW9uMiAgICJbXls6c3BhY2U6XTsjLigpXVwrIiBjb250YWluZWQgY29udGFpbnM9cnVieVN5bWJvbCxydWJ5R2xvYmFsVmFyaWFibGUscnVieVByZWRlZmluZWRWYXJpYWJsZQogc3luIG1hdGNoICBydWJ5TWV0aG9kRGVjbGFyYXRpb24gICAiW15bOnNwYWNlOl07IyhdXCsiCSBjb250YWluZWQgY29udGFpbnM9cnVieUNvbnN0YW50LHJ1YnlCb29sZWFuLHJ1YnlQc2V1ZG9WYXJpYWJsZSxydWJ5SW5zdGFuY2VWYXJpYWJsZSxydWJ5Q2xhc3NWYXJpYWJsZSxydWJ5R2xvYmFsVmFyaWFibGUKIHN5biBtYXRjaCAgcnVieUNsYXNzRGVjbGFyYXRpb24gICAgIlteWzpzcGFjZTpdOyM8XVwrIgkgY29udGFpbmVkIGNvbnRhaW5zPXJ1YnlDb25zdGFudCxydWJ5T3BlcmF0b3IKIHN5biBtYXRjaCAgcnVieU1vZHVsZURlY2xhcmF0aW9uICAgIlteWzpzcGFjZTpdOyM8XVwrIgkgY29udGFpbmVkIGNvbnRhaW5zPXJ1YnlDb25zdGFudCxydWJ5T3BlcmF0b3IKIHN5biBtYXRjaCAgcnVieUZ1bmN0aW9uICJcPFtfWzphbHBoYTpdXVtfWzphbG51bTpdXSpbPyE9XVw9W1s6YWxudW06XV8uOj8hPV1cQCEiIGNvbnRhaW5lZCBjb250YWluZWRpbj1ydWJ5TWV0aG9kRGVjbGFyYXRpb24KLXN5biBtYXRjaCAgcnVieUZ1bmN0aW9uICJcJShcc1x8XlwpXEA8PVtfWzphbHBoYTpdXVtfWzphbG51bTpdXSpbPyE9XVw9XCUoXHNcfCRcKVxAPSIgY29udGFpbmVkIGNvbnRhaW5lZGluPXJ1YnlBbGlhc0RlY2xhcmF0aW9uLHJ1YnlBbGlhc0RlY2xhcmF0aW9uMgotc3luIG1hdGNoICBydWJ5RnVuY3Rpb24gIlwlKFtbOnNwYWNlOl0uXVx8XlwpXEA8PVwlKFxbXF09XD1cfFwqXCpcfFsrLV1AXD1cfFsqLyV8Jl5+XVx8PDxcfD4+XHxbPD5dPVw9XHw8PT5cfD09PVx8Wz0hXT1cfFs9IV1cflx8IVx8YFwpXCUoW1s6c3BhY2U6XTsjKF1cfCRcKVxAPSIgY29udGFpbmVkIGNvbnRhaW5lZGluPXJ1YnlBbGlhc0RlY2xhcmF0aW9uLHJ1YnlBbGlhc0RlY2xhcmF0aW9uMixydWJ5TWV0aG9kRGVjbGFyYXRpb24KK3N5biBtYXRjaCAgcnVieUZ1bmN0aW9uICJcJShcc1x8XlwpXEAxPD1bX1s6YWxwaGE6XV1bX1s6YWxudW06XV0qWz8hPV1cPVwlKFxzXHwkXClcQD0iIGNvbnRhaW5lZCBjb250YWluZWRpbj1ydWJ5QWxpYXNEZWNsYXJhdGlvbixydWJ5QWxpYXNEZWNsYXJhdGlvbjIKK3N5biBtYXRjaCAgcnVieUZ1bmN0aW9uICJcJShbWzpzcGFjZTpdLl1cfF5cKVxAMjw9XCUoXFtcXT1cPVx8XCpcKlx8Wy0rIX5dQFw9XHxbKi8lfCZefl1cfDw8XHw+Plx8Wzw+XT1cPVx8PD0+XHw9PT1cfFs9IV09XHxbPSFdXH5cfCFcfGBcKVwlKFtbOnNwYWNlOl07IyhdXHwkXClcQD0iIGNvbnRhaW5lZCBjb250YWluZWRpbj1ydWJ5QWxpYXNEZWNsYXJhdGlvbixydWJ5QWxpYXNEZWNsYXJhdGlvbjIscnVieU1ldGhvZERlY2xhcmF0aW9uCiAKIHN5biBjbHVzdGVyIHJ1YnlEZWNsYXJhdGlvbiBjb250YWlucz1ydWJ5QWxpYXNEZWNsYXJhdGlvbixydWJ5QWxpYXNEZWNsYXJhdGlvbjIscnVieU1ldGhvZERlY2xhcmF0aW9uLHJ1YnlNb2R1bGVEZWNsYXJhdGlvbixydWJ5Q2xhc3NEZWNsYXJhdGlvbixydWJ5RnVuY3Rpb24scnVieUJsb2NrUGFyYW1ldGVyCiAKLSIgS2V5d29yZHMKKyIgS2V5d29yZHMge3t7MQogIiBOb3RlOiB0aGUgZm9sbG93aW5nIGtleXdvcmRzIGhhdmUgYWxyZWFkeSBiZWVuIGRlZmluZWQ6CiAiIGJlZ2luIGNhc2UgY2xhc3MgZGVmIGRvIGVuZCBmb3IgaWYgbW9kdWxlIHVubGVzcyB1bnRpbCB3aGlsZQogc3luIG1hdGNoICAgcnVieUNvbnRyb2wJICAgICAgICJcPFwlKGFuZFx8YnJlYWtcfGluXHxuZXh0XHxub3RcfG9yXHxyZWRvXHxyZXNjdWVcfHJldHJ5XHxyZXR1cm5cKVw+Wz8hXVxAISIKIHN5biBtYXRjaCAgIHJ1YnlPcGVyYXRvciAgICAgICAiXDxkZWZpbmVkPyIgZGlzcGxheQogc3luIG1hdGNoICAgcnVieUtleXdvcmQJICAgICAgICJcPFwlKHN1cGVyXHx5aWVsZFwpXD5bPyFdXEAhIgogc3luIG1hdGNoICAgcnVieUJvb2xlYW4JICAgICAgICJcPFwlKHRydWVcfGZhbHNlXClcPls/IV1cQCEiCi1zeW4gbWF0Y2ggICBydWJ5UHNldWRvVmFyaWFibGUgIlw8XCUobmlsXHxzZWxmXHxfX0VOQ09ESU5HX19cfF9fRklMRV9fXHxfX0xJTkVfX1x8X19jYWxsZWVfX1x8X19tZXRob2RfX1wpXD5bPyFdXEAhIiAiIFRPRE86IHJlb3JnYW5pc2UKK3N5biBtYXRjaCAgIHJ1YnlQc2V1ZG9WYXJpYWJsZSAiXDxcJShuaWxcfHNlbGZcfF9fRU5DT0RJTkdfX1x8X19kaXJfX1x8X19GSUxFX19cfF9fTElORV9fXHxfX2NhbGxlZV9fXHxfX21ldGhvZF9fXClcPls/IV1cQCEiICIgVE9ETzogcmVvcmdhbmlzZQogc3luIG1hdGNoICAgcnVieUJlZ2luRW5kICAgICAgICJcPFwlKEJFR0lOXHxFTkRcKVw+Wz8hXVxAISIKIAotIiBFeHBlbnNpdmUgTW9kZSAtIG1hdGNoICdlbmQnIHdpdGggdGhlIGFwcHJvcHJpYXRlIG9wZW5pbmcga2V5d29yZCBmb3Igc3ludGF4Ci0iIGJhc2VkIGZvbGRpbmcgYW5kIHNwZWNpYWwgaGlnaGxpZ2h0aW5nIG9mIG1vZHVsZS9jbGFzcy9tZXRob2QgZGVmaW5pdGlvbnMKKyIgRXhwZW5zaXZlIE1vZGUge3t7MQorIiBNYXRjaCAnZW5kJyB3aXRoIHRoZSBhcHByb3ByaWF0ZSBvcGVuaW5nIGtleXdvcmQgZm9yIHN5bnRheCBiYXNlZCBmb2xkaW5nCisiIGFuZCBzcGVjaWFsIGhpZ2hsaWdodGluZyBvZiBtb2R1bGUvY2xhc3MvbWV0aG9kIGRlZmluaXRpb25zCiBpZiAhZXhpc3RzKCJiOnJ1Ynlfbm9fZXhwZW5zaXZlIikgJiYgIWV4aXN0cygicnVieV9ub19leHBlbnNpdmUiKQogICBzeW4gbWF0Y2ggIHJ1YnlEZWZpbmUgIlw8YWxpYXNcPiIgIG5leHRncm91cD1ydWJ5QWxpYXNEZWNsYXJhdGlvbiAgc2tpcHdoaXRlIHNraXBubAogICBzeW4gbWF0Y2ggIHJ1YnlEZWZpbmUgIlw8ZGVmXD4iICAgIG5leHRncm91cD1ydWJ5TWV0aG9kRGVjbGFyYXRpb24gc2tpcHdoaXRlIHNraXBubApAQCAtMjExLDIzICszMzksNjYgQEAKICAgc3luIG1hdGNoICBydWJ5Q2xhc3MJIlw8Y2xhc3NcPiIgIG5leHRncm91cD1ydWJ5Q2xhc3NEZWNsYXJhdGlvbiAgc2tpcHdoaXRlIHNraXBubAogICBzeW4gbWF0Y2ggIHJ1YnlNb2R1bGUgIlw8bW9kdWxlXD4iIG5leHRncm91cD1ydWJ5TW9kdWxlRGVjbGFyYXRpb24gc2tpcHdoaXRlIHNraXBubAogCi0gIHN5biByZWdpb24gcnVieU1ldGhvZEJsb2NrIHN0YXJ0PSJcPGRlZlw+IgltYXRjaGdyb3VwPXJ1YnlEZWZpbmUgZW5kPSJcJShcPGRlZlxfc1wrXClcQDwhXDxlbmRcPiIgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wIGZvbGQKLSAgc3luIHJlZ2lvbiBydWJ5QmxvY2sJICAgICBzdGFydD0iXDxjbGFzc1w+IgltYXRjaGdyb3VwPXJ1YnlDbGFzcyAgZW5kPSJcPGVuZFw+IgkJICAgICAgIGNvbnRhaW5zPUFMTEJVVCxAcnVieU5vdFRvcCBmb2xkCi0gIHN5biByZWdpb24gcnVieUJsb2NrCSAgICAgc3RhcnQ9Ilw8bW9kdWxlXD4iIG1hdGNoZ3JvdXA9cnVieU1vZHVsZSBlbmQ9Ilw8ZW5kXD4iCQkgICAgICAgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wIGZvbGQKKyAgaWYgczpmb2xkYWJsZSgnZGVmJykKKyAgICBzeW4gcmVnaW9uIHJ1YnlNZXRob2RCbG9jayBzdGFydD0iXDxkZWZcPiIJbWF0Y2hncm91cD1ydWJ5RGVmaW5lIGVuZD0iXCUoXDxkZWZcX3NcK1wpXEA8IVw8ZW5kXD4iIGNvbnRhaW5zPUFMTEJVVCxAcnVieU5vdFRvcCBmb2xkCisgIGVsc2UKKyAgICBzeW4gcmVnaW9uIHJ1YnlNZXRob2RCbG9jayBzdGFydD0iXDxkZWZcPiIJbWF0Y2hncm91cD1ydWJ5RGVmaW5lIGVuZD0iXCUoXDxkZWZcX3NcK1wpXEA8IVw8ZW5kXD4iIGNvbnRhaW5zPUFMTEJVVCxAcnVieU5vdFRvcAorICBlbmRpZgorCisgIGlmIHM6Zm9sZGFibGUoJ2NsYXNzJykKKyAgICBzeW4gcmVnaW9uIHJ1YnlCbG9jayBzdGFydD0iXDxjbGFzc1w+IgltYXRjaGdyb3VwPXJ1YnlDbGFzcyBlbmQ9Ilw8ZW5kXD4iIGNvbnRhaW5zPUFMTEJVVCxAcnVieU5vdFRvcCBmb2xkCisgIGVsc2UKKyAgICBzeW4gcmVnaW9uIHJ1YnlCbG9jayBzdGFydD0iXDxjbGFzc1w+IgltYXRjaGdyb3VwPXJ1YnlDbGFzcyBlbmQ9Ilw8ZW5kXD4iIGNvbnRhaW5zPUFMTEJVVCxAcnVieU5vdFRvcAorICBlbmRpZgorCisgIGlmIHM6Zm9sZGFibGUoJ21vZHVsZScpCisgICAgc3luIHJlZ2lvbiBydWJ5QmxvY2sgc3RhcnQ9Ilw8bW9kdWxlXD4iIG1hdGNoZ3JvdXA9cnVieU1vZHVsZSBlbmQ9Ilw8ZW5kXD4iIGNvbnRhaW5zPUFMTEJVVCxAcnVieU5vdFRvcCBmb2xkCisgIGVsc2UKKyAgICBzeW4gcmVnaW9uIHJ1YnlCbG9jayBzdGFydD0iXDxtb2R1bGVcPiIgbWF0Y2hncm91cD1ydWJ5TW9kdWxlIGVuZD0iXDxlbmRcPiIgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wCisgIGVuZGlmCiAKICAgIiBtb2RpZmllcnMKLSAgc3luIG1hdGNoIHJ1YnlDb25kaXRpb25hbE1vZGlmaWVyICJcPFwlKGlmXHx1bmxlc3NcKVw+IiAgICBkaXNwbGF5Ci0gIHN5biBtYXRjaCBydWJ5UmVwZWF0TW9kaWZpZXIJICAgICAiXDxcJSh3aGlsZVx8dW50aWxcKVw+IiBkaXNwbGF5CisgIHN5biBtYXRjaCBydWJ5TGluZUNvbnRpbnVhdGlvbiAgICAiXFwkIiBuZXh0Z3JvdXA9cnVieUNvbmRpdGlvbmFsTW9kaWZpZXIscnVieVJlcGVhdE1vZGlmaWVyIHNraXB3aGl0ZSBza2lwbmwKKyAgc3luIG1hdGNoIHJ1YnlDb25kaXRpb25hbE1vZGlmaWVyICJcPFwlKGlmXHx1bmxlc3NcKVw+IgorICBzeW4gbWF0Y2ggcnVieVJlcGVhdE1vZGlmaWVyCSAgICAiXDxcJSh3aGlsZVx8dW50aWxcKVw+IgogCi0gIHN5biByZWdpb24gcnVieURvQmxvY2sgICAgICBtYXRjaGdyb3VwPXJ1YnlDb250cm9sIHN0YXJ0PSJcPGRvXD4iIGVuZD0iXDxlbmRcPiIgICAgICAgICAgICAgICAgIGNvbnRhaW5zPUFMTEJVVCxAcnVieU5vdFRvcCBmb2xkCisgIGlmIHM6Zm9sZGFibGUoJ2RvJykKKyAgICBzeW4gcmVnaW9uIHJ1YnlEb0Jsb2NrIG1hdGNoZ3JvdXA9cnVieUNvbnRyb2wgc3RhcnQ9Ilw8ZG9cPiIgZW5kPSJcPGVuZFw+IiBjb250YWlucz1BTExCVVQsQHJ1YnlOb3RUb3AgZm9sZAorICBlbHNlCisgICAgc3luIHJlZ2lvbiBydWJ5RG9CbG9jayBtYXRjaGdyb3VwPXJ1YnlDb250cm9sIHN0YXJ0PSJcPGRvXD4iIGVuZD0iXDxlbmRcPiIgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wCisgIGVuZGlmCisKICAgIiBjdXJseSBicmFja2V0IGJsb2NrIG9yIGhhc2ggbGl0ZXJhbAotICBzeW4gcmVnaW9uIHJ1YnlDdXJseUJsb2NrCW1hdGNoZ3JvdXA9cnVieUN1cmx5QmxvY2tEZWxpbWl0ZXIgIHN0YXJ0PSJ7IiBlbmQ9In0iCQkJCWNvbnRhaW5zPUFMTEJVVCxAcnVieU5vdFRvcCBmb2xkCi0gIHN5biByZWdpb24gcnVieUFycmF5TGl0ZXJhbAltYXRjaGdyb3VwPXJ1YnlBcnJheURlbGltaXRlcgkgICAgc3RhcnQ9IlwlKFx3XHxbXF19KV1cKVxAPCFcWyIgZW5kPSJdIgljb250YWlucz1BTExCVVQsQHJ1YnlOb3RUb3AgZm9sZAorICBpZiBzOmZvbGRhYmxlKCd7JykKKyAgICBzeW4gcmVnaW9uIHJ1YnlDdXJseUJsb2NrIG1hdGNoZ3JvdXA9cnVieUN1cmx5QmxvY2tEZWxpbWl0ZXIgc3RhcnQ9InsiIGVuZD0ifSIgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wIGZvbGQKKyAgZWxzZQorICAgIHN5biByZWdpb24gcnVieUN1cmx5QmxvY2sgbWF0Y2hncm91cD1ydWJ5Q3VybHlCbG9ja0RlbGltaXRlciBzdGFydD0ieyIgZW5kPSJ9IiBjb250YWlucz1BTExCVVQsQHJ1YnlOb3RUb3AKKyAgZW5kaWYKKworICBpZiBzOmZvbGRhYmxlKCdbJykKKyAgICBzeW4gcmVnaW9uIHJ1YnlBcnJheUxpdGVyYWwJbWF0Y2hncm91cD1ydWJ5QXJyYXlEZWxpbWl0ZXIgc3RhcnQ9IlwlKFx3XHxbXF19KV1cKVxAPCFcWyIgZW5kPSJdIiBjb250YWlucz1BTExCVVQsQHJ1YnlOb3RUb3AgZm9sZAorICBlbHNlCisgICAgc3luIHJlZ2lvbiBydWJ5QXJyYXlMaXRlcmFsCW1hdGNoZ3JvdXA9cnVieUFycmF5RGVsaW1pdGVyIHN0YXJ0PSJcJShcd1x8W1xdfSldXClcQDwhXFsiIGVuZD0iXSIgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wCisgIGVuZGlmCiAKICAgIiBzdGF0ZW1lbnRzIHdpdGhvdXQgJ2RvJwotICBzeW4gcmVnaW9uIHJ1YnlCbG9ja0V4cHJlc3Npb24gICAgICAgbWF0Y2hncm91cD1ydWJ5Q29udHJvbAkgIHN0YXJ0PSJcPGJlZ2luXD4iIGVuZD0iXDxlbmRcPiIgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wIGZvbGQKLSAgc3luIHJlZ2lvbiBydWJ5Q2FzZUV4cHJlc3Npb24JICAgICAgIG1hdGNoZ3JvdXA9cnVieUNvbmRpdGlvbmFsIHN0YXJ0PSJcPGNhc2VcPiIgIGVuZD0iXDxlbmRcPiIgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wIGZvbGQKLSAgc3luIHJlZ2lvbiBydWJ5Q29uZGl0aW9uYWxFeHByZXNzaW9uIG1hdGNoZ3JvdXA9cnVieUNvbmRpdGlvbmFsIHN0YXJ0PSJcJShcJSheXHxcLlwuXC5cPVx8W3s6LDsoWzw+flwqLyUmXnwrPS1dXHxcJShcPFtfWzpsb3dlcjpdXVtfWzphbG51bTpdXSpcKVxAPCFbPyFdXClccypcKVxAPD1cJShpZlx8dW5sZXNzXClcPiIgZW5kPSJcJShcJShcJShcLlxAPCFcLlwpXHw6OlwpXHMqXClcQDwhXDxlbmRcPiIgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wIGZvbGQKKyAgaWYgczpmb2xkYWJsZSgnYmVnaW4nKQorICAgIHN5biByZWdpb24gcnVieUJsb2NrRXhwcmVzc2lvbiBtYXRjaGdyb3VwPXJ1YnlDb250cm9sIHN0YXJ0PSJcPGJlZ2luXD4iIGVuZD0iXDxlbmRcPiIgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wIGZvbGQKKyAgZWxzZQorICAgIHN5biByZWdpb24gcnVieUJsb2NrRXhwcmVzc2lvbiBtYXRjaGdyb3VwPXJ1YnlDb250cm9sIHN0YXJ0PSJcPGJlZ2luXD4iIGVuZD0iXDxlbmRcPiIgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wCisgIGVuZGlmCisKKyAgaWYgczpmb2xkYWJsZSgnY2FzZScpCisgICAgc3luIHJlZ2lvbiBydWJ5Q2FzZUV4cHJlc3Npb24gbWF0Y2hncm91cD1ydWJ5Q29uZGl0aW9uYWwgc3RhcnQ9Ilw8Y2FzZVw+IiBlbmQ9Ilw8ZW5kXD4iIGNvbnRhaW5zPUFMTEJVVCxAcnVieU5vdFRvcCBmb2xkCisgIGVsc2UKKyAgICBzeW4gcmVnaW9uIHJ1YnlDYXNlRXhwcmVzc2lvbiBtYXRjaGdyb3VwPXJ1YnlDb25kaXRpb25hbCBzdGFydD0iXDxjYXNlXD4iIGVuZD0iXDxlbmRcPiIgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wCisgIGVuZGlmCisKKyAgaWYgczpmb2xkYWJsZSgnaWYnKQorICAgIHN5biByZWdpb24gcnVieUNvbmRpdGlvbmFsRXhwcmVzc2lvbiBtYXRjaGdyb3VwPXJ1YnlDb25kaXRpb25hbCBzdGFydD0iXCUoXCUoXlx8XC5cLlwuXD1cfFt7Oiw7KFs8Pn5cKiUmXnwrPS1dXHxcJShcPFtfWzpsb3dlcjpdXVtfWzphbG51bTpdXSpcKVxAPCFbPyFdXClccypcKVxAPD1cJShpZlx8dW5sZXNzXClcPiIgZW5kPSJcJShcJShcJShcLlxAMTwhXC5cKVx8OjpcKVxzKlwpXEA8IVw8ZW5kXD4iIGNvbnRhaW5zPUFMTEJVVCxAcnVieU5vdFRvcCBmb2xkCisgIGVsc2UKKyAgICBzeW4gcmVnaW9uIHJ1YnlDb25kaXRpb25hbEV4cHJlc3Npb24gbWF0Y2hncm91cD1ydWJ5Q29uZGl0aW9uYWwgc3RhcnQ9IlwlKFwlKF5cfFwuXC5cLlw9XHxbezosOyhbPD5+XColJl58Kz0tXVx8XCUoXDxbX1s6bG93ZXI6XV1bX1s6YWxudW06XV0qXClcQDwhWz8hXVwpXHMqXClcQDw9XCUoaWZcfHVubGVzc1wpXD4iIGVuZD0iXCUoXCUoXCUoXC5cQDE8IVwuXClcfDo6XClccypcKVxAPCFcPGVuZFw+IiBjb250YWlucz1BTExCVVQsQHJ1YnlOb3RUb3AKKyAgZW5kaWYKIAogICBzeW4gbWF0Y2ggcnVieUNvbmRpdGlvbmFsICJcPFwlKHRoZW5cfGVsc2VcfHdoZW5cKVw+Wz8hXVxAISIJY29udGFpbmVkIGNvbnRhaW5lZGluPXJ1YnlDYXNlRXhwcmVzc2lvbgogICBzeW4gbWF0Y2ggcnVieUNvbmRpdGlvbmFsICJcPFwlKHRoZW5cfGVsc2VcfGVsc2lmXClcPls/IV1cQCEiIGNvbnRhaW5lZCBjb250YWluZWRpbj1ydWJ5Q29uZGl0aW9uYWxFeHByZXNzaW9uCkBAIC0yMzcsNyArNDA4LDEyIEBACiAKICAgIiBzdGF0ZW1lbnRzIHdpdGggb3B0aW9uYWwgJ2RvJwogICBzeW4gcmVnaW9uIHJ1YnlPcHRpb25hbERvTGluZSAgIG1hdGNoZ3JvdXA9cnVieVJlcGVhdCBzdGFydD0iXDxmb3JcPls/IV1cQCEiIHN0YXJ0PSJcJShcJSheXHxcLlwuXC5cPVx8W3s6LDsoWzw+flwqLyUmXnwrLV1cfFwlKFw8W19bOmxvd2VyOl1dW19bOmFsbnVtOl1dKlwpXEA8IVshPT9dXClccypcKVxAPD1cPFwlKHVudGlsXHx3aGlsZVwpXD4iIG1hdGNoZ3JvdXA9cnVieU9wdGlvbmFsRG8gZW5kPSJcJShcPGRvXD5cKSIgZW5kPSJcemVcJSg7XHwkXCkiIG9uZWxpbmUgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wCi0gIHN5biByZWdpb24gcnVieVJlcGVhdEV4cHJlc3Npb24gc3RhcnQ9Ilw8Zm9yXD5bPyFdXEAhIiBzdGFydD0iXCUoXCUoXlx8XC5cLlwuXD1cfFt7Oiw7KFs8Pn5cKi8lJl58Ky1dXHxcJShcPFtfWzpsb3dlcjpdXVtfWzphbG51bTpdXSpcKVxAPCFbIT0/XVwpXHMqXClcQDw9XDxcJSh1bnRpbFx8d2hpbGVcKVw+IiBtYXRjaGdyb3VwPXJ1YnlSZXBlYXQgZW5kPSJcPGVuZFw+IiBjb250YWlucz1BTExCVVQsQHJ1YnlOb3RUb3AgbmV4dGdyb3VwPXJ1YnlPcHRpb25hbERvTGluZSBmb2xkCisKKyAgaWYgczpmb2xkYWJsZSgnZm9yJykKKyAgICBzeW4gcmVnaW9uIHJ1YnlSZXBlYXRFeHByZXNzaW9uIHN0YXJ0PSJcPGZvclw+Wz8hXVxAISIgc3RhcnQ9IlwlKFwlKF5cfFwuXC5cLlw9XHxbezosOyhbPD5+XCovJSZefCstXVx8XCUoXDxbX1s6bG93ZXI6XV1bX1s6YWxudW06XV0qXClcQDwhWyE9P11cKVxzKlwpXEA8PVw8XCUodW50aWxcfHdoaWxlXClcPiIgbWF0Y2hncm91cD1ydWJ5UmVwZWF0IGVuZD0iXDxlbmRcPiIgY29udGFpbnM9QUxMQlVULEBydWJ5Tm90VG9wIG5leHRncm91cD1ydWJ5T3B0aW9uYWxEb0xpbmUgZm9sZAorICBlbHNlCisgICAgc3luIHJlZ2lvbiBydWJ5UmVwZWF0RXhwcmVzc2lvbiBzdGFydD0iXDxmb3JcPls/IV1cQCEiIHN0YXJ0PSJcJShcJSheXHxcLlwuXC5cPVx8W3s6LDsoWzw+flwqLyUmXnwrLV1cfFwlKFw8W19bOmxvd2VyOl1dW19bOmFsbnVtOl1dKlwpXEA8IVshPT9dXClccypcKVxAPD1cPFwlKHVudGlsXHx3aGlsZVwpXD4iIG1hdGNoZ3JvdXA9cnVieVJlcGVhdCBlbmQ9Ilw8ZW5kXD4iIGNvbnRhaW5zPUFMTEJVVCxAcnVieU5vdFRvcCBuZXh0Z3JvdXA9cnVieU9wdGlvbmFsRG9MaW5lCisgIGVuZGlmCiAKICAgaWYgIWV4aXN0cygicnVieV9taW5saW5lcyIpCiAgICAgbGV0IHJ1YnlfbWlubGluZXMgPSA1MDAKQEAgLTI1Miw3ICs0MjgsNyBAQAogICBzeW4gbWF0Y2ggcnVieUtleXdvcmQgIlw8XCUoYWxpYXNcfHVuZGVmXClcPls/IV1cQCEiCiBlbmRpZgogCi0iIFNwZWNpYWwgTWV0aG9kcworIiBTcGVjaWFsIE1ldGhvZHMge3t7MQogaWYgIWV4aXN0cygicnVieV9ub19zcGVjaWFsX21ldGhvZHMiKQogICBzeW4ga2V5d29yZCBydWJ5QWNjZXNzICAgIHB1YmxpYyBwcm90ZWN0ZWQgcHJpdmF0ZSBwdWJsaWNfY2xhc3NfbWV0aG9kIHByaXZhdGVfY2xhc3NfbWV0aG9kIHB1YmxpY19jb25zdGFudCBwcml2YXRlX2NvbnN0YW50IG1vZHVsZV9mdW5jdGlvbgogICAiIGF0dHIgaXMgYSBjb21tb24gdmFyaWFibGUgbmFtZQpAQCAtMjYzLDQwICs0MzksNDAgQEAKICAgc3luIGtleXdvcmQgcnVieUV4Y2VwdGlvbiByYWlzZSBmYWlsIGNhdGNoIHRocm93CiAgICIgZmFsc2UgcG9zaXRpdmUgd2l0aCAnaW5jbHVkZT8nCiAgIHN5biBtYXRjaCAgIHJ1YnlJbmNsdWRlICAgIlw8aW5jbHVkZVw+Wz8hXVxAISIKLSAgc3luIGtleXdvcmQgcnVieUluY2x1ZGUgICBhdXRvbG9hZCBleHRlbmQgbG9hZCBwcmVwZW5kIHJlcXVpcmUgcmVxdWlyZV9yZWxhdGl2ZQorICBzeW4ga2V5d29yZCBydWJ5SW5jbHVkZSAgIGF1dG9sb2FkIGV4dGVuZCBsb2FkIHByZXBlbmQgcmVmaW5lIHJlcXVpcmUgcmVxdWlyZV9yZWxhdGl2ZSB1c2luZwogICBzeW4ga2V5d29yZCBydWJ5S2V5d29yZCAgIGNhbGxjYyBjYWxsZXIgbGFtYmRhIHByb2MKIGVuZGlmCiAKLSIgQ29tbWVudHMgYW5kIERvY3VtZW50YXRpb24KKyIgQ29tbWVudHMgYW5kIERvY3VtZW50YXRpb24ge3t7MQogc3luIG1hdGNoICAgcnVieVNoYXJwQmFuZyAiXCVeIyEuKiIgZGlzcGxheQotc3luIGtleXdvcmQgcnVieVRvZG8JICBGSVhNRSBOT1RFIFRPRE8gT1BUSU1JWkUgWFhYIHRvZG8gY29udGFpbmVkCitzeW4ga2V5d29yZCBydWJ5VG9kbwkgIEZJWE1FIE5PVEUgVE9ETyBPUFRJTUlaRSBIQUNLIFJFVklFVyBYWFggdG9kbyBjb250YWluZWQKIHN5biBtYXRjaCAgIHJ1YnlDb21tZW50ICAgIiMuKiIgY29udGFpbnM9cnVieVNoYXJwQmFuZyxydWJ5U3BhY2VFcnJvcixydWJ5VG9kbyxAU3BlbGwKLWlmICFleGlzdHMoInJ1Ynlfbm9fY29tbWVudF9mb2xkIikKLSAgc3luIHJlZ2lvbiBydWJ5TXVsdGlsaW5lQ29tbWVudCBzdGFydD0iXCUoXCUoXlxzKiMuKlxuXClcQDwhXCUoXlxzKiMuKlxuXClcKVwlKFwoXlxzKiMuKlxuXClcezEsfVwpXEA9IiBlbmQ9IlwlKF5ccyojLipcblwpXEA8PVwlKF5ccyojLipcblwpXCUoXlxzKiNcKVxAISIgY29udGFpbnM9cnVieUNvbW1lbnQgdHJhbnNwYXJlbnQgZm9sZCBrZWVwZW5kCitpZiAhZXhpc3RzKCJydWJ5X25vX2NvbW1lbnRfZm9sZCIpICYmIHM6Zm9sZGFibGUoJyMnKQorICBzeW4gcmVnaW9uIHJ1YnlNdWx0aWxpbmVDb21tZW50IHN0YXJ0PSJeXHMqIy4qXG5cJSheXHMqI1wpXEA9IiBlbmQ9Il5ccyojLipcblwlKF5ccyojXClcQCEiIGNvbnRhaW5zPXJ1YnlDb21tZW50IHRyYW5zcGFyZW50IGZvbGQga2VlcGVuZAogICBzeW4gcmVnaW9uIHJ1YnlEb2N1bWVudGF0aW9uCSAgc3RhcnQ9Il49YmVnaW5cemVcJShccy4qXClcPSQiIGVuZD0iXj1lbmRcJShccy4qXClcPSQiIGNvbnRhaW5zPXJ1YnlTcGFjZUVycm9yLHJ1YnlUb2RvLEBTcGVsbCBmb2xkCiBlbHNlCiAgIHN5biByZWdpb24gcnVieURvY3VtZW50YXRpb24JICBzdGFydD0iXj1iZWdpblxzKiQiIGVuZD0iXj1lbmRccyokIiBjb250YWlucz1ydWJ5U3BhY2VFcnJvcixydWJ5VG9kbyxAU3BlbGwKIGVuZGlmCiAKKyIgS2V5d29yZCBOb2JibGluZyB7e3sxCiAiIE5vdGU6IHRoaXMgaXMgYSBoYWNrIHRvIHByZXZlbnQgJ2tleXdvcmRzJyBiZWluZyBoaWdobGlnaHRlZCBhcyBzdWNoIHdoZW4gY2FsbGVkIGFzIG1ldGhvZHMgd2l0aCBhbiBleHBsaWNpdCByZWNlaXZlcgotc3luIG1hdGNoIHJ1YnlLZXl3b3JkQXNNZXRob2QgIlwlKFwlKFwuXEA8IVwuXClcfDo6XClcX3MqXCUoYWxpYXNcfGFuZFx8YmVnaW5cfGJyZWFrXHxjYXNlXHxjbGFzc1x8ZGVmXHxkZWZpbmVkXHxkb1x8ZWxzZVwpXD4iCQkgIHRyYW5zcGFyZW50IGNvbnRhaW5zPU5PTkUKLXN5biBtYXRjaCBydWJ5S2V5d29yZEFzTWV0aG9kICJcJShcJShcLlxAPCFcLlwpXHw6OlwpXF9zKlwlKGVsc2lmXHxlbmRcfGVuc3VyZVx8ZmFsc2VcfGZvclx8aWZcfGluXHxtb2R1bGVcfG5leHRcfG5pbFwpXD4iCQkgIHRyYW5zcGFyZW50IGNvbnRhaW5zPU5PTkUKLXN5biBtYXRjaCBydWJ5S2V5d29yZEFzTWV0aG9kICJcJShcJShcLlxAPCFcLlwpXHw6OlwpXF9zKlwlKG5vdFx8b3JcfHJlZG9cfHJlc2N1ZVx8cmV0cnlcfHJldHVyblx8c2VsZlx8c3VwZXJcfHRoZW5cfHRydWVcKVw+IgkJICB0cmFuc3BhcmVudCBjb250YWlucz1OT05FCi1zeW4gbWF0Y2ggcnVieUtleXdvcmRBc01ldGhvZCAiXCUoXCUoXC5cQDwhXC5cKVx8OjpcKVxfcypcJSh1bmRlZlx8dW5sZXNzXHx1bnRpbFx8d2hlblx8d2hpbGVcfHlpZWxkXHxCRUdJTlx8RU5EXHxfX0ZJTEVfX1x8X19MSU5FX19cKVw+IiB0cmFuc3BhcmVudCBjb250YWlucz1OT05FCitzeW4gbWF0Y2ggcnVieUtleXdvcmRBc01ldGhvZCAiXCUoXCUoXC5cQDE8IVwuXClcfDo6XClcX3MqXCUoW19bOmxvd2VyOl1dW19bOmFsbnVtOl1dKlx8XDxcJShCRUdJTlx8RU5EXClcPlwpIiB0cmFuc3BhcmVudCBjb250YWlucz1OT05FCitzeW4gbWF0Y2ggcnVieUtleXdvcmRBc01ldGhvZCAiXChkZWZpbmVkP1x8ZXhpdCFcKVxAIVw8W19bOmxvd2VyOl1dW19bOmFsbnVtOl1dKls/IV0iCQkJICAgICAgIHRyYW5zcGFyZW50IGNvbnRhaW5zPU5PTkUKIAotc3luIG1hdGNoIHJ1YnlLZXl3b3JkQXNNZXRob2QgIlw8XCUoYWxpYXNcfGJlZ2luXHxjYXNlXHxjbGFzc1x8ZGVmXHxkb1x8ZW5kXClbPyFdIiB0cmFuc3BhcmVudCBjb250YWlucz1OT05FCi1zeW4gbWF0Y2ggcnVieUtleXdvcmRBc01ldGhvZCAiXDxcJShpZlx8bW9kdWxlXHx1bmRlZlx8dW5sZXNzXHx1bnRpbFx8d2hpbGVcKVs/IV0iIHRyYW5zcGFyZW50IGNvbnRhaW5zPU5PTkUKKyIgTW9yZSBTeW1ib2xzIHt7ezEKK3N5biBtYXRjaCAgcnVieVN5bWJvbAkJIlwlKFt7KCxdXF9zKlwpXHpzXGxcdypbIT9dXD06OlxAISJoZT1lLTEKK3N5biBtYXRjaCAgcnVieVN5bWJvbAkJIltdfSlcIic6XVxAMTwhXCUoXGhcfFteXHgwMC1ceDdGXVwpXCUoXHdcfFteXHgwMC1ceDdGXVwpKlshP11cPTpbWzpzcGFjZTpdLF1cQD0iaGU9ZS0xCitzeW4gbWF0Y2ggIHJ1YnlTeW1ib2wJCSJcJShbeygsXVxfcypcKVx6c1tbOnNwYWNlOl0se11cbFx3KlshP11cPTo6XEAhImhzPXMrMSxoZT1lLTEKK3N5biBtYXRjaCAgcnVieVN5bWJvbAkJIltbOnNwYWNlOl0seyhdXCUoXGhcfFteXHgwMC1ceDdGXVwpXCUoXHdcfFteXHgwMC1ceDdGXVwpKlshP11cPTpbWzpzcGFjZTpdLF1cQD0iaHM9cysxLGhlPWUtMQogCi1zeW4gbWF0Y2ggcnVieUtleXdvcmRBc01ldGhvZCAiXCUoXCUoXC5cQDwhXC5cKVx8OjpcKVxfcypcJShhYm9ydFx8YXRfZXhpdFx8YXR0clx8YXR0cl9hY2Nlc3Nvclx8YXR0cl9yZWFkZXJcKVw+Igl0cmFuc3BhcmVudCBjb250YWlucz1OT05FCi1zeW4gbWF0Y2ggcnVieUtleXdvcmRBc01ldGhvZCAiXCUoXCUoXC5cQDwhXC5cKVx8OjpcKVxfcypcJShhdHRyX3dyaXRlclx8YXV0b2xvYWRcfGNhbGxjY1x8Y2F0Y2hcfGNhbGxlclwpXD4iCQl0cmFuc3BhcmVudCBjb250YWlucz1OT05FCi1zeW4gbWF0Y2ggcnVieUtleXdvcmRBc01ldGhvZCAiXCUoXCUoXC5cQDwhXC5cKVx8OjpcKVxfcypcJShldmFsXHxjbGFzc19ldmFsXHxpbnN0YW5jZV9ldmFsXHxtb2R1bGVfZXZhbFx8ZXhpdFwpXD4iCXRyYW5zcGFyZW50IGNvbnRhaW5zPU5PTkUKLXN5biBtYXRjaCBydWJ5S2V5d29yZEFzTWV0aG9kICJcJShcJShcLlxAPCFcLlwpXHw6OlwpXF9zKlwlKGV4dGVuZFx8ZmFpbFx8Zm9ya1x8aW5jbHVkZVx8bGFtYmRhXClcPiIJCQl0cmFuc3BhcmVudCBjb250YWlucz1OT05FCi1zeW4gbWF0Y2ggcnVieUtleXdvcmRBc01ldGhvZCAiXCUoXCUoXC5cQDwhXC5cKVx8OjpcKVxfcypcJShsb2FkXHxsb29wXHxwcmVwZW5kXHxwcml2YXRlXHxwcm9jXHxwcm90ZWN0ZWRcKVw+IgkJdHJhbnNwYXJlbnQgY29udGFpbnM9Tk9ORQotc3luIG1hdGNoIHJ1YnlLZXl3b3JkQXNNZXRob2QgIlwlKFwlKFwuXEA8IVwuXClcfDo6XClcX3MqXCUocHVibGljXHxyZXF1aXJlXHxyZXF1aXJlX3JlbGF0aXZlXHxyYWlzZVx8dGhyb3dcfHRyYXBcKVw+Igl0cmFuc3BhcmVudCBjb250YWlucz1OT05FCisiIF9fRU5EX18gRGlyZWN0aXZlIHt7ezEKK2lmIHM6Zm9sZGFibGUoJ19fRU5EX18nKQorICBzeW4gcmVnaW9uIHJ1YnlEYXRhIG1hdGNoZ3JvdXA9cnVieURhdGFEaXJlY3RpdmUgc3RhcnQ9Il5fX0VORF9fJCIgZW5kPSJcJSQiIGZvbGQKK2Vsc2UKKyAgc3luIHJlZ2lvbiBydWJ5RGF0YSBtYXRjaGdyb3VwPXJ1YnlEYXRhRGlyZWN0aXZlIHN0YXJ0PSJeX19FTkRfXyQiIGVuZD0iXCUkIgorZW5kaWYKIAotIiBfX0VORF9fIERpcmVjdGl2ZQotc3luIHJlZ2lvbiBydWJ5RGF0YSBtYXRjaGdyb3VwPXJ1YnlEYXRhRGlyZWN0aXZlIHN0YXJ0PSJeX19FTkRfXyQiIGVuZD0iXCUkIiBmb2xkCi0KKyIgRGVmYXVsdCBIaWdobGlnaHRpbmcge3t7MQogaGkgZGVmIGxpbmsgcnVieUNsYXNzCQkJcnVieURlZmluZQogaGkgZGVmIGxpbmsgcnVieU1vZHVsZQkJCXJ1YnlEZWZpbmUKIGhpIGRlZiBsaW5rIHJ1YnlNZXRob2RFeGNlcHRpb25hbAlydWJ5RGVmaW5lCkBAIC0zMzYsNiArNTEyLDcgQEAKIGhpIGRlZiBsaW5rIHJ1YnlBdHRyaWJ1dGUJCVN0YXRlbWVudAogaGkgZGVmIGxpbmsgcnVieUV2YWwJCQlTdGF0ZW1lbnQKIGhpIGRlZiBsaW5rIHJ1YnlQc2V1ZG9WYXJpYWJsZQkJQ29uc3RhbnQKK2hpIGRlZiBsaW5rIHJ1YnlDYXBpdGFsaXplZE1ldGhvZAlydWJ5TG9jYWxWYXJpYWJsZU9yTWV0aG9kCiAKIGhpIGRlZiBsaW5rIHJ1YnlDb21tZW50CQkJQ29tbWVudAogaGkgZGVmIGxpbmsgcnVieURhdGEJCQlDb21tZW50CkBAIC0zNDksNyArNTI2LDcgQEAKIGhpIGRlZiBsaW5rIHJ1YnlOb0ludGVycG9sYXRpb24JCXJ1YnlTdHJpbmcKIGhpIGRlZiBsaW5rIHJ1YnlTaGFycEJhbmcJCVByZVByb2MKIGhpIGRlZiBsaW5rIHJ1YnlSZWdleHBEZWxpbWl0ZXIJCXJ1YnlTdHJpbmdEZWxpbWl0ZXIKLWhpIGRlZiBsaW5rIHJ1YnlTeW1ib2xEZWxpbWl0ZXIJCXJ1YnlTdHJpbmdEZWxpbWl0ZXIKK2hpIGRlZiBsaW5rIHJ1YnlTeW1ib2xEZWxpbWl0ZXIJCXJ1YnlTeW1ib2wKIGhpIGRlZiBsaW5rIHJ1YnlTdHJpbmdEZWxpbWl0ZXIJCURlbGltaXRlcgogaGkgZGVmIGxpbmsgcnVieUhlcmVkb2MJCQlydWJ5U3RyaW5nCiBoaSBkZWYgbGluayBydWJ5U3RyaW5nCQkJU3RyaW5nCkBAIC0zNjYsNiArNTQzLDEwIEBACiBoaSBkZWYgbGluayBydWJ5RXJyb3IJCQlFcnJvcgogaGkgZGVmIGxpbmsgcnVieVNwYWNlRXJyb3IJCXJ1YnlFcnJvcgogCisiIFBvc3RzY3JpcHQge3t7MQogbGV0IGI6Y3VycmVudF9zeW50YXggPSAicnVieSIKIAotIiB2aW06IG5vd3JhcCBzdz0yIHN0cz0yIHRzPTggbm9ldDoKK2xldCAmY3BvID0gczpjcG9fc2F2Cit1bmxldCEgczpjcG9fc2F2CisKKyIgdmltOiBub3dyYXAgc3c9MiBzdHM9MiB0cz04IG5vZXQgZmRtPW1hcmtlcjoKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NhbWJhLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NhbWJhLnZpbQppbmRleCBkYWU0MDQwLi43MzRmOGIyIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zYW1iYS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2FtYmEudmltCkBAIC04LDExICs4LDggQEAKICIKICIgRG9uJ3QgZm9yZ2V0IHRvIHJ1biB5b3VyIGNvbmZpZyBmaWxlIHRocm91Z2ggdGVzdHBhcm0oMSkhCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xMDcsMjQgKzEwNCwxNiBAQAogc3luIGtleXdvcmQgc2FtYmFLZXl3b3JkIGNvbnRhaW5lZCBzdG9yZSB1bmtub3duIHVud3JpdGVhYmxlCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3NhbWJhX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3NhbWJhX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCi0gIEhpTGluayBzYW1iYVBhcmFtZXRlciBOb3JtYWwKLSAgSGlMaW5rIHNhbWJhS2V5d29yZCAgIFR5cGUKLSAgSGlMaW5rIHNhbWJhU2VjdGlvbiAgIFN0YXRlbWVudAotICBIaUxpbmsgc2FtYmFNYWNybyAgICAgUHJlUHJvYwotICBIaUxpbmsgc2FtYmFDb21tZW50ICAgQ29tbWVudAotICBIaUxpbmsgc2FtYmFDb250aW51ZSAgT3BlcmF0b3IKLSAgSGlMaW5rIHNhbWJhQm9vbGVhbiAgIENvbnN0YW50Ci0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CitIaUxpbmsgc2FtYmFQYXJhbWV0ZXIgTm9ybWFsCitIaUxpbmsgc2FtYmFLZXl3b3JkICAgVHlwZQorSGlMaW5rIHNhbWJhU2VjdGlvbiAgIFN0YXRlbWVudAorSGlMaW5rIHNhbWJhTWFjcm8gICAgIFByZVByb2MKK0hpTGluayBzYW1iYUNvbW1lbnQgICBDb21tZW50CitIaUxpbmsgc2FtYmFDb250aW51ZSAgT3BlcmF0b3IKK0hpTGluayBzYW1iYUJvb2xlYW4gICBDb25zdGFudAorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic2FtYmEiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Nhcy52aW0gYi9ydW50aW1lL3N5bnRheC9zYXMudmltCmluZGV4IGRjNzBlMWYuLmE5OTUwMTEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Nhcy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2FzLnZpbQpAQCAtMTIsMTEgKzEyLDggQEAKICIJCUF0dGVtcHRlZCB0byBtYXRjaCBTQVMgZGVmYXVsdCBzeW50YXggY29sb3JzOwogIgkJQ2hhbmdlZCBzeW5jaW5nIHNvIGl0IGRvZXNuJ3QgbG9zZSBjb2xvcnMgb24gbGFyZ2UgYmxvY2tzOwogIgkJTXVjaCB0aGFua3MgdG8gQm9iIEhlY2tlbCBmb3Iga25vd2xlZGdlYWJsZSB0d2Vha2luZy4KLSIgIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiAgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiICBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICBmaW5pc2gKIGVuZGlmCiAKQEAgLTUyLDExICs0OSw3IEBACiAiIFRoYW5rcyB0byByb25hbGQgaPZsbHdhcnRoIGZvciB0aGlzIGZpeCB0byBhbiBpbnRyYS12ZXJzaW9uaW5nCiAiIHByb2JsZW0gd2l0aCB0aGlzIGxpdHRsZSBmZWF0dXJlCiAKLWlmIHZlcnNpb24gPCA2MDAKLSAgIHN5biByZWdpb24gc2FzTWFjcm9WYXIJc3RhcnQ9IlwmIiBza2lwPSJbXyZdIiBlbmQ9IlxXImhlPWUtMQotZWxzZQkJICIgZm9yIHRoZSBvbGRlciBWaW0ncyBqdXN0IGRvIGl0IHRoZWlyIHdheSAuLi4KLSAgIHN5biByZWdpb24gc2FzTWFjcm9WYXIJc3RhcnQ9IiYiIHNraXA9IltfJl0iIGVuZD0iXFciaGU9ZS0xCi1lbmRpZgorc3luIHJlZ2lvbiBzYXNNYWNyb1ZhcglzdGFydD0iJiIgc2tpcD0iW18mXSIgZW5kPSJcVyJoZT1lLTEKIAogCiAiIEkgZG9udCB0aGluayBzcGVjaWZpYyBQUk9DcyBuZWVkIHRvIGJlIGxpc3RlZCBpZiB1c2UgdGhpcyBsaW5lIChCb2IgSGVja2VsKS4KQEAgLTIxOCw2MiArMjExLDU0IEBACiAiIEVuZCBvZiBTQVMgRnVuY3Rpb25zCiAKICIgIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iICBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iICBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorIiAgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKIAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3Nhc19zeW50YXhfaW5pdHMiKQotICAgaWYgdmVyc2lvbiA8IDUwOAotICAgICAgbGV0IGRpZF9zYXNfc3ludGF4X2luaXRzID0gMQotICAgICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgIGVsc2UKLSAgICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICAgZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICAiIERlZmF1bHQgc2FzIGVuaGFuY2VkIGVkaXRvciBjb2xvciBzeW50YXgKLQloaSBzQ29tbWVudAl0ZXJtPWJvbGQgY3Rlcm09Tk9ORSBjdGVybWZnPUdyZWVuIGN0ZXJtYmc9QmxhY2sgZ3VpPU5PTkUgZ3VpZmc9RGFya0dyZWVuIGd1aWJnPVdoaXRlCi0JaGkgc0NhcmQJdGVybT1ib2xkIGN0ZXJtPU5PTkUgY3Rlcm1mZz1CbGFjayBjdGVybWJnPVllbGxvdyBndWk9Tk9ORSBndWlmZz1CbGFjayBndWliZz1MaWdodFllbGxvdwotCWhpIHNEYXRlX1RpbWUJdGVybT1OT05FIGN0ZXJtPWJvbGQgY3Rlcm1mZz1HcmVlbiBjdGVybWJnPUJsYWNrIGd1aT1ib2xkIGd1aWZnPVNlYUdyZWVuIGd1aWJnPVdoaXRlCi0JaGkgc0tleXdvcmQJdGVybT1OT05FIGN0ZXJtPU5PTkUgY3Rlcm1mZz1CbHVlICBjdGVybWJnPUJsYWNrIGd1aT1OT05FIGd1aWZnPUJsdWUgZ3VpYmc9V2hpdGUKLQloaSBzRm10SW5mbXQJdGVybT1OT05FIGN0ZXJtPU5PTkUgY3Rlcm1mZz1MaWdodEdyZWVuIGN0ZXJtYmc9QmxhY2sgZ3VpPU5PTkUgZ3VpZmc9U2VhR3JlZW4gZ3VpYmc9V2hpdGUKLQloaSBzU3RyaW5nCXRlcm09Tk9ORSBjdGVybT1OT05FIGN0ZXJtZmc9TWFnZW50YSBjdGVybWJnPUJsYWNrIGd1aT1OT05FIGd1aWZnPVB1cnBsZSBndWliZz1XaGl0ZQotCWhpIHNUZXh0CXRlcm09Tk9ORSBjdGVybT1OT05FIGN0ZXJtZmc9V2hpdGUgY3Rlcm1iZz1CbGFjayBndWk9Ym9sZCBndWlmZz1CbGFjayBndWliZz1XaGl0ZQotCWhpIHNOdW1iZXIJdGVybT1OT05FIGN0ZXJtPWJvbGQgY3Rlcm1mZz1HcmVlbiBjdGVybWJnPUJsYWNrIGd1aT1ib2xkIGd1aWZnPVNlYUdyZWVuIGd1aWJnPVdoaXRlCi0JaGkgc1Byb2MJdGVybT1OT05FIGN0ZXJtPWJvbGQgY3Rlcm1mZz1CbHVlIGN0ZXJtYmc9QmxhY2sgZ3VpPWJvbGQgZ3VpZmc9TmF2eSBndWliZz1XaGl0ZQotCWhpIHNTZWN0aW9uCXRlcm09Tk9ORSBjdGVybT1ib2xkIGN0ZXJtZmc9Qmx1ZSBjdGVybWJnPUJsYWNrIGd1aT1ib2xkIGd1aWZnPU5hdnkgZ3VpYmc9V2hpdGUKLQloaSBtRGVmaW5lCXRlcm09Tk9ORSBjdGVybT1ib2xkIGN0ZXJtZmc9V2hpdGUgY3Rlcm1iZz1CbGFjayBndWk9Ym9sZCBndWlmZz1CbGFjayBndWliZz1XaGl0ZQotCWhpIG1LZXl3b3JkCXRlcm09Tk9ORSBjdGVybT1OT05FIGN0ZXJtZmc9Qmx1ZSBjdGVybWJnPUJsYWNrIGd1aT1OT05FIGd1aWZnPUJsdWUgZ3VpYmc9V2hpdGUKLQloaSBtUmVmZXJlbmNlCXRlcm09Tk9ORSBjdGVybT1ib2xkIGN0ZXJtZmc9V2hpdGUgY3Rlcm1iZz1CbGFjayBndWk9Ym9sZCBndWlmZz1CbHVlIGd1aWJnPVdoaXRlCi0JaGkgbVNlY3Rpb24JdGVybT1OT05FIGN0ZXJtPU5PTkUgY3Rlcm1mZz1CbHVlIGN0ZXJtYmc9QmxhY2sgZ3VpPWJvbGQgZ3VpZmc9TmF2eSBndWliZz1XaGl0ZQotCWhpIG1UZXh0CXRlcm09Tk9ORSBjdGVybT1OT05FIGN0ZXJtZmc9V2hpdGUgY3Rlcm1iZz1CbGFjayBndWk9Ym9sZCBndWlmZz1CbGFjayBndWliZz1XaGl0ZQorIiBEZWZhdWx0IHNhcyBlbmhhbmNlZCBlZGl0b3IgY29sb3Igc3ludGF4CitoaSBzQ29tbWVudAl0ZXJtPWJvbGQgY3Rlcm09Tk9ORSBjdGVybWZnPUdyZWVuIGN0ZXJtYmc9QmxhY2sgZ3VpPU5PTkUgZ3VpZmc9RGFya0dyZWVuIGd1aWJnPVdoaXRlCitoaSBzQ2FyZAl0ZXJtPWJvbGQgY3Rlcm09Tk9ORSBjdGVybWZnPUJsYWNrIGN0ZXJtYmc9WWVsbG93IGd1aT1OT05FIGd1aWZnPUJsYWNrIGd1aWJnPUxpZ2h0WWVsbG93CitoaSBzRGF0ZV9UaW1lCXRlcm09Tk9ORSBjdGVybT1ib2xkIGN0ZXJtZmc9R3JlZW4gY3Rlcm1iZz1CbGFjayBndWk9Ym9sZCBndWlmZz1TZWFHcmVlbiBndWliZz1XaGl0ZQoraGkgc0tleXdvcmQJdGVybT1OT05FIGN0ZXJtPU5PTkUgY3Rlcm1mZz1CbHVlICBjdGVybWJnPUJsYWNrIGd1aT1OT05FIGd1aWZnPUJsdWUgZ3VpYmc9V2hpdGUKK2hpIHNGbXRJbmZtdAl0ZXJtPU5PTkUgY3Rlcm09Tk9ORSBjdGVybWZnPUxpZ2h0R3JlZW4gY3Rlcm1iZz1CbGFjayBndWk9Tk9ORSBndWlmZz1TZWFHcmVlbiBndWliZz1XaGl0ZQoraGkgc1N0cmluZwl0ZXJtPU5PTkUgY3Rlcm09Tk9ORSBjdGVybWZnPU1hZ2VudGEgY3Rlcm1iZz1CbGFjayBndWk9Tk9ORSBndWlmZz1QdXJwbGUgZ3VpYmc9V2hpdGUKK2hpIHNUZXh0CXRlcm09Tk9ORSBjdGVybT1OT05FIGN0ZXJtZmc9V2hpdGUgY3Rlcm1iZz1CbGFjayBndWk9Ym9sZCBndWlmZz1CbGFjayBndWliZz1XaGl0ZQoraGkgc051bWJlcgl0ZXJtPU5PTkUgY3Rlcm09Ym9sZCBjdGVybWZnPUdyZWVuIGN0ZXJtYmc9QmxhY2sgZ3VpPWJvbGQgZ3VpZmc9U2VhR3JlZW4gZ3VpYmc9V2hpdGUKK2hpIHNQcm9jCXRlcm09Tk9ORSBjdGVybT1ib2xkIGN0ZXJtZmc9Qmx1ZSBjdGVybWJnPUJsYWNrIGd1aT1ib2xkIGd1aWZnPU5hdnkgZ3VpYmc9V2hpdGUKK2hpIHNTZWN0aW9uCXRlcm09Tk9ORSBjdGVybT1ib2xkIGN0ZXJtZmc9Qmx1ZSBjdGVybWJnPUJsYWNrIGd1aT1ib2xkIGd1aWZnPU5hdnkgZ3VpYmc9V2hpdGUKK2hpIG1EZWZpbmUJdGVybT1OT05FIGN0ZXJtPWJvbGQgY3Rlcm1mZz1XaGl0ZSBjdGVybWJnPUJsYWNrIGd1aT1ib2xkIGd1aWZnPUJsYWNrIGd1aWJnPVdoaXRlCitoaSBtS2V5d29yZAl0ZXJtPU5PTkUgY3Rlcm09Tk9ORSBjdGVybWZnPUJsdWUgY3Rlcm1iZz1CbGFjayBndWk9Tk9ORSBndWlmZz1CbHVlIGd1aWJnPVdoaXRlCitoaSBtUmVmZXJlbmNlCXRlcm09Tk9ORSBjdGVybT1ib2xkIGN0ZXJtZmc9V2hpdGUgY3Rlcm1iZz1CbGFjayBndWk9Ym9sZCBndWlmZz1CbHVlIGd1aWJnPVdoaXRlCitoaSBtU2VjdGlvbgl0ZXJtPU5PTkUgY3Rlcm09Tk9ORSBjdGVybWZnPUJsdWUgY3Rlcm1iZz1CbGFjayBndWk9Ym9sZCBndWlmZz1OYXZ5IGd1aWJnPVdoaXRlCitoaSBtVGV4dAl0ZXJtPU5PTkUgY3Rlcm09Tk9ORSBjdGVybWZnPVdoaXRlIGN0ZXJtYmc9QmxhY2sgZ3VpPWJvbGQgZ3VpZmc9QmxhY2sgZ3VpYmc9V2hpdGUKIAogIiBDb2xvcnMgdGhhdCBjbG9zZWx5IG1hdGNoIFNBUyBsb2cgY29sb3JzIGZvciBkZWZhdWx0IGNvbG9yIHNjaGVtZQotCWhpIGxFcnJvcgl0ZXJtPU5PTkUgY3Rlcm09Tk9ORSBjdGVybWZnPVJlZCBjdGVybWJnPUJsYWNrIGd1aT1ub25lIGd1aWZnPVJlZCBndWliZz1XaGl0ZQotCWhpIGxXYXJuaW5nCXRlcm09Tk9ORSBjdGVybT1OT05FIGN0ZXJtZmc9R3JlZW4gY3Rlcm1iZz1CbGFjayBndWk9bm9uZSBndWlmZz1HcmVlbiBndWliZz1XaGl0ZQotCWhpIGxOb3RlCXRlcm09Tk9ORSBjdGVybT1OT05FIGN0ZXJtZmc9Q3lhbiBjdGVybWJnPUJsYWNrIGd1aT1ub25lIGd1aWZnPUJsdWUgZ3VpYmc9V2hpdGUKK2hpIGxFcnJvcgl0ZXJtPU5PTkUgY3Rlcm09Tk9ORSBjdGVybWZnPVJlZCBjdGVybWJnPUJsYWNrIGd1aT1ub25lIGd1aWZnPVJlZCBndWliZz1XaGl0ZQoraGkgbFdhcm5pbmcJdGVybT1OT05FIGN0ZXJtPU5PTkUgY3Rlcm1mZz1HcmVlbiBjdGVybWJnPUJsYWNrIGd1aT1ub25lIGd1aWZnPUdyZWVuIGd1aWJnPVdoaXRlCitoaSBsTm90ZQl0ZXJtPU5PTkUgY3Rlcm09Tk9ORSBjdGVybWZnPUN5YW4gY3Rlcm1iZz1CbGFjayBndWk9bm9uZSBndWlmZz1CbHVlIGd1aWJnPVdoaXRlCiAKIAotICAgIiBTcGVjaWFsIGhpbGlnaHRpbmcgZm9yIHRoZSBTQVMgcHJvYyBzZWN0aW9uCisiIFNwZWNpYWwgaGlsaWdodGluZyBmb3IgdGhlIFNBUyBwcm9jIHNlY3Rpb24KIAotCUhpTGluawlzYXNDb21tZW50CXNDb21tZW50Ci0JSGlMaW5rCXNhc0NvbmRpdGlvbmFsCXNLZXl3b3JkCi0JSGlMaW5rCXNhc1N0ZXAJCXNTZWN0aW9uCi0JSGlMaW5rCXNhc0Z1bmN0aW9uCXNLZXl3b3JkCi0JSGlMaW5rCXNhc01hY3JvCW1LZXl3b3JkCi0JSGlMaW5rCXNhc01hY3JvVmFyCU5vblRleHQKLQlIaUxpbmsJc2FzTnVtYmVyCXNOdW1iZXIKLQlIaUxpbmsJc2FzU3RhdGVtZW50CXNLZXl3b3JkCi0JSGlMaW5rCXNhc1N0cmluZwlzU3RyaW5nCi0JSGlMaW5rCXNhc1Byb2MJCXNQcm9jCi0gICAiIChCb2IgSGVja2VsKQotCUhpTGluawlzYXNUb2RvCQlUb2RvCi0JSGlMaW5rCXNhc0Vyck1zZwlsRXJyb3IKLQlIaUxpbmsJc2FzV2Fybk1zZwlsV2FybmluZwotCUhpTGluawlzYXNMb2dNc2cJbE5vdGUKLQlIaUxpbmsJc2FzQ2FyZHMJc0NhcmQKLSAgIiAoQm9iIEhlY2tlbCkKLQlIaUxpbmsJc2FzVW5kZXJzY29yZQlQcmVQcm9jCi0JZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitIaUxpbmsJc2FzQ29tbWVudAlzQ29tbWVudAorSGlMaW5rCXNhc0NvbmRpdGlvbmFsCXNLZXl3b3JkCitIaUxpbmsJc2FzU3RlcAkJc1NlY3Rpb24KK0hpTGluawlzYXNGdW5jdGlvbglzS2V5d29yZAorSGlMaW5rCXNhc01hY3JvCW1LZXl3b3JkCitIaUxpbmsJc2FzTWFjcm9WYXIJTm9uVGV4dAorSGlMaW5rCXNhc051bWJlcglzTnVtYmVyCitIaUxpbmsJc2FzU3RhdGVtZW50CXNLZXl3b3JkCitIaUxpbmsJc2FzU3RyaW5nCXNTdHJpbmcKK0hpTGluawlzYXNQcm9jCQlzUHJvYworIiAoQm9iIEhlY2tlbCkKK0hpTGluawlzYXNUb2RvCQlUb2RvCitIaUxpbmsJc2FzRXJyTXNnCWxFcnJvcgorSGlMaW5rCXNhc1dhcm5Nc2cJbFdhcm5pbmcKK0hpTGluawlzYXNMb2dNc2cJbE5vdGUKK0hpTGluawlzYXNDYXJkcwlzQ2FyZAorIiAoQm9iIEhlY2tlbCkKK0hpTGluawlzYXNVbmRlcnNjb3JlCVByZVByb2MKK2RlbGNvbW1hbmQgSGlMaW5rCiAKICIgU3luY3Jvbml6ZSBmcm9tIGJlZ2lubmluZyB0byBrZWVwIGxhcmdlIGJsb2NrcyBmcm9tIGxvc2luZwogIiBzeW50YXggY29sb3Jpbmcgd2hpbGUgbW92aW5nIHRocm91Z2ggY29kZS4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Nhc3MudmltIGIvcnVudGltZS9zeW50YXgvc2Fzcy52aW0KaW5kZXggMmVhMDcyMi4uZDA3NWM4NyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc2Fzcy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2Fzcy52aW0KQEAgLTIsNyArMiw3IEBACiAiIExhbmd1YWdlOglTYXNzCiAiIE1haW50YWluZXI6CVRpbSBQb3BlIDx2aW1OT1NQQU1AdHBvcGUub3JnPgogIiBGaWxlbmFtZXM6CSouc2FzcwotIiBMYXN0IENoYW5nZToJMjAxMyBNYXkgMzAKKyIgTGFzdCBDaGFuZ2U6CTIwMTYgQXVnIDI5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApAQCAtMTMsNyArMTMsNyBAQAogc3luIGNhc2UgaWdub3JlCiAKIHN5biBjbHVzdGVyIHNhc3NDc3NQcm9wZXJ0aWVzIGNvbnRhaW5zPWNzc0ZvbnRQcm9wLGNzc0ZvbnREZXNjcmlwdG9yUHJvcCxjc3NDb2xvclByb3AsY3NzVGV4dFByb3AsY3NzQm94UHJvcCxjc3NHZW5lcmF0ZWRDb250ZW50UHJvcCxjc3NQYWdpbmdQcm9wLGNzc1VJUHJvcCxjc3NSZW5kZXJQcm9wLGNzc0F1cmFsUHJvcCxjc3NUYWJsZVByb3AKLXN5biBjbHVzdGVyIHNhc3NDc3NBdHRyaWJ1dGVzIGNvbnRhaW5zPWNzcy4qQXR0cixzY3NzQ29tbWVudCxjc3NWYWx1ZS4qLGNzc0NvbG9yLGNzc1VSTCxzYXNzRGVmYXVsdCxjc3NJbXBvcnRhbnQsY3NzRXJyb3IsY3NzU3RyaW5nUSxjc3NTdHJpbmdRUSxjc3NGdW5jdGlvbixjc3NVbmljb2RlRXNjYXBlLGNzc1JlbmRlclByb3AKK3N5biBjbHVzdGVyIHNhc3NDc3NBdHRyaWJ1dGVzIGNvbnRhaW5zPWNzcy4qQXR0cixzYXNzRW5kT2ZMaW5lQ29tbWVudCxzY3NzQ29tbWVudCxjc3NWYWx1ZS4qLGNzc0NvbG9yLGNzc1VSTCxzYXNzRGVmYXVsdCxjc3NJbXBvcnRhbnQsY3NzRXJyb3IsY3NzU3RyaW5nUSxjc3NTdHJpbmdRUSxjc3NGdW5jdGlvbixjc3NVbmljb2RlRXNjYXBlLGNzc1JlbmRlclByb3AKIAogc3luIHJlZ2lvbiBzYXNzRGVmaW5pdGlvbiBtYXRjaGdyb3VwPWNzc0JyYWNlcyBzdGFydD0ieyIgZW5kPSJ9IiBjb250YWlucz1UT1AKIApAQCAtNTgsNiArNTgsOSBAQAogIiBUT0RPOiBBdHRyaWJ1dGUgbmFtZXNwYWNlcwogIiBUT0RPOiBBcml0aG1ldGljIChpbmNsdWRpbmcgc3RyaW5ncyBhbmQgY29uY2F0ZW5hdGlvbikKIAorc3luIHJlZ2lvbiBzYXNzTWVkaWFRdWVyeSBtYXRjaGdyb3VwPXNhc3NNZWRpYSBzdGFydD0iQG1lZGlhIiBlbmQ9Ilt7fTtdXEA9XHwkIiBjb250YWlucz1zYXNzTWVkaWFPcGVyYXRvcnMKK3N5biBrZXl3b3JkIHNhc3NNZWRpYU9wZXJhdG9ycyBhbmQgbm90IG9ubHkgY29udGFpbmVkCitzeW4gcmVnaW9uIHNhc3NDaGFyc2V0IHN0YXJ0PSJAY2hhcnNldCIgZW5kPSI7XHwkIiBjb250YWlucz1zY3NzQ29tbWVudCxjc3NTdHJpbmdRLGNzc1N0cmluZ1FRLGNzc1VSTCxjc3NVbmljb2RlRXNjYXBlLGNzc01lZGlhVHlwZQogc3luIHJlZ2lvbiBzYXNzSW5jbHVkZSBzdGFydD0iQGltcG9ydCIgZW5kPSI7XHwkIiBjb250YWlucz1zY3NzQ29tbWVudCxjc3NTdHJpbmdRLGNzc1N0cmluZ1FRLGNzc1VSTCxjc3NVbmljb2RlRXNjYXBlLGNzc01lZGlhVHlwZQogc3luIHJlZ2lvbiBzYXNzRGVidWdMaW5lIGVuZD0iO1x8JCIgbWF0Y2hncm91cD1zYXNzRGVidWcgc3RhcnQ9IkBkZWJ1Z1w+IiBjb250YWlucz1Ac2Fzc0Nzc0F0dHJpYnV0ZXMsc2Fzc1ZhcmlhYmxlLHNhc3NGdW5jdGlvbgogc3luIHJlZ2lvbiBzYXNzV2FybkxpbmUgZW5kPSI7XHwkIiBtYXRjaGdyb3VwPXNhc3NXYXJuIHN0YXJ0PSJAd2Fyblw+IiBjb250YWlucz1Ac2Fzc0Nzc0F0dHJpYnV0ZXMsc2Fzc1ZhcmlhYmxlLHNhc3NGdW5jdGlvbgpAQCAtNjcsNyArNzAsOSBAQAogc3luIGtleXdvcmQgc2Fzc1RvZG8gICAgICAgIEZJWE1FIE5PVEUgVE9ETyBPUFRJTUlaRSBYWFggY29udGFpbmVkCiBzeW4gcmVnaW9uICBzYXNzQ29tbWVudCAgICAgc3RhcnQ9Il5ceihccypcKS8vIiAgZW5kPSJeXCUoXHoxIFwpXEAhIiBjb250YWlucz1zYXNzVG9kbyxAU3BlbGwKIHN5biByZWdpb24gIHNhc3NDc3NDb21tZW50ICBzdGFydD0iXlx6KFxzKlwpL1wqIiBlbmQ9Il5cJShcejEgXClcQCEiIGNvbnRhaW5zPXNhc3NUb2RvLEBTcGVsbAorc3luIG1hdGNoICAgc2Fzc0VuZE9mTGluZUNvbW1lbnQgIi8vLioiIGNvbnRhaW5zPXNhc3NDb21tZW50LHNhc3NUb2RvLEBTcGVsbAogCitoaSBkZWYgbGluayBzYXNzRW5kT2ZMaW5lQ29tbWVudCAgICAgICAgc2Fzc0NvbW1lbnQKIGhpIGRlZiBsaW5rIHNhc3NDc3NDb21tZW50ICAgICAgICAgICAgICBzYXNzQ29tbWVudAogaGkgZGVmIGxpbmsgc2Fzc0NvbW1lbnQgICAgICAgICAgICAgICAgIENvbW1lbnQKIGhpIGRlZiBsaW5rIHNhc3NEZWZhdWx0ICAgICAgICAgICAgICAgICBjc3NJbXBvcnRhbnQKQEAgLTgwLDYgKzg1LDkgQEAKIGhpIGRlZiBsaW5rIHNhc3NGdW5jdGlvbkRlY2wgICAgICAgICAgICBQcmVQcm9jCiBoaSBkZWYgbGluayBzYXNzUmV0dXJuICAgICAgICAgICAgICAgICAgUHJlUHJvYwogaGkgZGVmIGxpbmsgc2Fzc1RvZG8gICAgICAgICAgICAgICAgICAgIFRvZG8KK2hpIGRlZiBsaW5rIHNhc3NDaGFyc2V0ICAgICAgICAgICAgICAgICBQcmVQcm9jCitoaSBkZWYgbGluayBzYXNzTWVkaWEgICAgICAgICAgICAgICAgICAgUHJlUHJvYworaGkgZGVmIGxpbmsgc2Fzc01lZGlhT3BlcmF0b3JzICAgICAgICAgIFByZVByb2MKIGhpIGRlZiBsaW5rIHNhc3NJbmNsdWRlICAgICAgICAgICAgICAgICBJbmNsdWRlCiBoaSBkZWYgbGluayBzYXNzRGVidWcgICAgICAgICAgICAgICAgICAgc2Fzc0NvbnRyb2wKIGhpIGRlZiBsaW5rIHNhc3NXYXJuICAgICAgICAgICAgICAgICAgICBzYXNzQ29udHJvbApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc2F0aGVyLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NhdGhlci52aW0KaW5kZXggNzU5NTkxYi4uMWI4NGVkOCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc2F0aGVyLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zYXRoZXIudmltCkBAIC05LDExICs5LDggQEAKICIgSG9tZXBhZ2U6IGh0dHA6Ly93d3cuaWNzaS5iZXJrZWxleS5lZHUvfnNhdGhlcgogIiBTYXRoZXIgZmlsZXMgdXNlIC5zYSBhcyBzdWZmaXgKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTYxLDQ0ICs1OCwzNiBAQAogc3luIHN5bmMgY2NvbW1lbnQgc2F0aGVyQ29tbWVudAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zYXRoZXJfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfc2F0aGVyX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgc2F0aGVyQnJhbmNoCQlzYXRoZXJTdGF0ZW1lbnQKLSAgSGlMaW5rIHNhdGhlckxhYmVsCQlzYXRoZXJTdGF0ZW1lbnQKLSAgSGlMaW5rIHNhdGhlckNvbmRpdGlvbmFsCXNhdGhlclN0YXRlbWVudAotICBIaUxpbmsgc2F0aGVyU3luY2hyb25pemUJc2F0aGVyU3RhdGVtZW50Ci0gIEhpTGluayBzYXRoZXJSZXBlYXQJCXNhdGhlclN0YXRlbWVudAotICBIaUxpbmsgc2F0aGVyRXhjZXB0aW9ucwlzYXRoZXJTdGF0ZW1lbnQKLSAgSGlMaW5rIHNhdGhlclN0b3JhZ2VDbGFzcwlzYXRoZXJEZWNsYXJhdGl2ZQotICBIaUxpbmsgc2F0aGVyTWV0aG9kRGVjbAlzYXRoZXJEZWNsYXJhdGl2ZQotICBIaUxpbmsgc2F0aGVyQ2xhc3NEZWNsCXNhdGhlckRlY2xhcmF0aXZlCi0gIEhpTGluayBzYXRoZXJTY29wZURlY2wJc2F0aGVyRGVjbGFyYXRpdmUKLSAgSGlMaW5rIHNhdGhlckJvb2xWYWx1ZQlzYXRoZXJWYWx1ZQotICBIaUxpbmsgc2F0aGVyU3BlY2lhbAkJc2F0aGVyVmFsdWUKLSAgSGlMaW5rIHNhdGhlclN0cmluZwkJc2F0aGVyVmFsdWUKLSAgSGlMaW5rIHNhdGhlckNoYXJhY3RlcglzYXRoZXJWYWx1ZQotICBIaUxpbmsgc2F0aGVyU3BlY2lhbENoYXJhY3RlciBzYXRoZXJWYWx1ZQotICBIaUxpbmsgc2F0aGVyTnVtYmVyCQlzYXRoZXJWYWx1ZQotICBIaUxpbmsgc2F0aGVyU3RhdGVtZW50CVN0YXRlbWVudAotICBIaUxpbmsgc2F0aGVyT3BlcmF0b3IJCVN0YXRlbWVudAotICBIaUxpbmsgc2F0aGVyQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgc2F0aGVyVHlwZQkJVHlwZQotICBIaUxpbmsgc2F0aGVyVmFsdWUJCVN0cmluZwotICBIaUxpbmsgc2F0aGVyU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIHNhdGhlclNwZWNpYWwJCVN0cmluZwotICBIaUxpbmsgc2F0aGVyQ2hhcmFjdGVyCVN0cmluZwotICBIaUxpbmsgc2F0aGVyRGVjbGFyYXRpdmUJVHlwZQotICBIaUxpbmsgc2F0aGVyRXh0ZXJuYWwJCVByZUNvbmRpdAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK0hpTGluayBzYXRoZXJCcmFuY2gJCXNhdGhlclN0YXRlbWVudAorSGlMaW5rIHNhdGhlckxhYmVsCQlzYXRoZXJTdGF0ZW1lbnQKK0hpTGluayBzYXRoZXJDb25kaXRpb25hbAlzYXRoZXJTdGF0ZW1lbnQKK0hpTGluayBzYXRoZXJTeW5jaHJvbml6ZQlzYXRoZXJTdGF0ZW1lbnQKK0hpTGluayBzYXRoZXJSZXBlYXQJCXNhdGhlclN0YXRlbWVudAorSGlMaW5rIHNhdGhlckV4Y2VwdGlvbnMJc2F0aGVyU3RhdGVtZW50CitIaUxpbmsgc2F0aGVyU3RvcmFnZUNsYXNzCXNhdGhlckRlY2xhcmF0aXZlCitIaUxpbmsgc2F0aGVyTWV0aG9kRGVjbAlzYXRoZXJEZWNsYXJhdGl2ZQorSGlMaW5rIHNhdGhlckNsYXNzRGVjbAlzYXRoZXJEZWNsYXJhdGl2ZQorSGlMaW5rIHNhdGhlclNjb3BlRGVjbAlzYXRoZXJEZWNsYXJhdGl2ZQorSGlMaW5rIHNhdGhlckJvb2xWYWx1ZQlzYXRoZXJWYWx1ZQorSGlMaW5rIHNhdGhlclNwZWNpYWwJCXNhdGhlclZhbHVlCitIaUxpbmsgc2F0aGVyU3RyaW5nCQlzYXRoZXJWYWx1ZQorSGlMaW5rIHNhdGhlckNoYXJhY3RlcglzYXRoZXJWYWx1ZQorSGlMaW5rIHNhdGhlclNwZWNpYWxDaGFyYWN0ZXIgc2F0aGVyVmFsdWUKK0hpTGluayBzYXRoZXJOdW1iZXIJCXNhdGhlclZhbHVlCitIaUxpbmsgc2F0aGVyU3RhdGVtZW50CVN0YXRlbWVudAorSGlMaW5rIHNhdGhlck9wZXJhdG9yCQlTdGF0ZW1lbnQKK0hpTGluayBzYXRoZXJDb21tZW50CQlDb21tZW50CitIaUxpbmsgc2F0aGVyVHlwZQkJVHlwZQorSGlMaW5rIHNhdGhlclZhbHVlCQlTdHJpbmcKK0hpTGluayBzYXRoZXJTdHJpbmcJCVN0cmluZworSGlMaW5rIHNhdGhlclNwZWNpYWwJCVN0cmluZworSGlMaW5rIHNhdGhlckNoYXJhY3RlcglTdHJpbmcKK0hpTGluayBzYXRoZXJEZWNsYXJhdGl2ZQlUeXBlCitIaUxpbmsgc2F0aGVyRXh0ZXJuYWwJCVByZUNvbmRpdAorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic2F0aGVyIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zY2FsYS52aW0gYi9ydW50aW1lL3N5bnRheC9zY2FsYS52aW0KaW5kZXggYjA0YWYzYi4uNzc3OWM0MyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc2NhbGEudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NjYWxhLnZpbQpAQCAtNyw5ICs3LDggQEAKICIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBpZiAhZXhpc3RzKCdtYWluX3N5bnRheCcpCi0gIGlmIHZlcnNpb24gPCA2MDAKLSAgICBzeW50YXggY2xlYXIKLSAgZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisgICIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCisgIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICAgZmluaXNoCiAgIGVuZGlmCiAgIGxldCBtYWluX3N5bnRheCA9ICdzY2FsYScKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NjaGVtZS52aW0gYi9ydW50aW1lL3N5bnRheC9zY2hlbWUudmltCmluZGV4IGM1OWUwOWMuLmFjNTBlYWQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NjaGVtZS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2NoZW1lLnZpbQpAQCAtMTQsMTEgKzE0LDggQEAKIAogIiBJbml0aWFsaXppbmc6CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC02NCwxMSArNjEsNyBAQAogCiAiIFI1UlMgU2NoZW1lIEZ1bmN0aW9ucyBhbmQgU3ludGF4OgogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNldCBpc2tleXdvcmQ9MzMsMzUtMzksNDItNTgsNjAtOTAsOTQsOTUsOTctMTIyLDEyNixfCi1lbHNlCi0gIHNldGxvY2FsIGlza2V5d29yZD0zMywzNS0zOSw0Mi01OCw2MC05MCw5NCw5NSw5Ny0xMjIsMTI2LF8KLWVuZGlmCitzZXRsb2NhbCBpc2tleXdvcmQ9MzMsMzUtMzksNDItNTgsNjAtOTAsOTQsOTUsOTctMTIyLDEyNixfCiAKIHN5biBrZXl3b3JkIHNjaGVtZVN5bnRheCBsYW1iZGEgYW5kIG9yIGlmIGNvbmQgY2FzZSBkZWZpbmUgbGV0IGxldCogbGV0cmVjCiBzeW4ga2V5d29yZCBzY2hlbWVTeW50YXggYmVnaW4gZG8gZGVsYXkgc2V0ISBlbHNlID0+CkBAIC0zMDYsMzggKzI5OSwzMCBAQAogIiAuLi4gaS5lLiBzeW5jaHJvbml6ZSBvbiBhIGxpbmUgdGhhdCBzdGFydHMgYXQgdGhlIGxlZnQgbWFyZ2luCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3NjaGVtZV9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9zY2hlbWVfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBzY2hlbWVTeW50YXgJCVN0YXRlbWVudAotICBIaUxpbmsgc2NoZW1lRnVuYwkJRnVuY3Rpb24KK0hpTGluayBzY2hlbWVTeW50YXgJCVN0YXRlbWVudAorSGlMaW5rIHNjaGVtZUZ1bmMJCUZ1bmN0aW9uCiAKLSAgSGlMaW5rIHNjaGVtZVN0cmluZwkJU3RyaW5nCi0gIEhpTGluayBzY2hlbWVDaGFyYWN0ZXIJQ2hhcmFjdGVyCi0gIEhpTGluayBzY2hlbWVOdW1iZXIJCU51bWJlcgotICBIaUxpbmsgc2NoZW1lQm9vbGVhbgkJQm9vbGVhbgorSGlMaW5rIHNjaGVtZVN0cmluZwkJU3RyaW5nCitIaUxpbmsgc2NoZW1lQ2hhcmFjdGVyCUNoYXJhY3RlcgorSGlMaW5rIHNjaGVtZU51bWJlcgkJTnVtYmVyCitIaUxpbmsgc2NoZW1lQm9vbGVhbgkJQm9vbGVhbgogCi0gIEhpTGluayBzY2hlbWVEZWxpbWl0ZXIJRGVsaW1pdGVyCi0gIEhpTGluayBzY2hlbWVDb25zdGFudAkJQ29uc3RhbnQKK0hpTGluayBzY2hlbWVEZWxpbWl0ZXIJRGVsaW1pdGVyCitIaUxpbmsgc2NoZW1lQ29uc3RhbnQJCUNvbnN0YW50CiAKLSAgSGlMaW5rIHNjaGVtZUNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIHNjaGVtZU11bHRpbGluZUNvbW1lbnQJQ29tbWVudAotICBIaUxpbmsgc2NoZW1lRXJyb3IJCUVycm9yCitIaUxpbmsgc2NoZW1lQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHNjaGVtZU11bHRpbGluZUNvbW1lbnQJQ29tbWVudAorSGlMaW5rIHNjaGVtZUVycm9yCQlFcnJvcgogCi0gIEhpTGluayBzY2hlbWVFeHRTeW50YXgJVHlwZQotICBIaUxpbmsgc2NoZW1lRXh0RnVuYwkJUHJlUHJvYworSGlMaW5rIHNjaGVtZUV4dFN5bnRheAlUeXBlCitIaUxpbmsgc2NoZW1lRXh0RnVuYwkJUHJlUHJvYwogCi0gIEhpTGluayBzY2hlbWVMYW5nCQlQcmVQcm9jCitIaUxpbmsgc2NoZW1lTGFuZwkJUHJlUHJvYwogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic2NoZW1lIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zY2lsYWIudmltIGIvcnVudGltZS9zeW50YXgvc2NpbGFiLnZpbQppbmRleCAxYmZjMDAzLi5iZWU0MDA3IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zY2lsYWIudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NjaWxhYi52aW0KQEAgLTksMTEgKzksOCBAQAogIgogCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC02Niw0OSArNjMsNDEgQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zY2lsYWJfc3ludGF4X2luaXRzIikKLQlpZiB2ZXJzaW9uIDwgNTA4Ci0JCWxldCBkaWRfc2NpbGFiX3N5bnRheF9pbml0cyA9IDEKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLQllbHNlCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotCWVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotCUhpTGluawlzY2lsYWJTdGF0ZW1lbnQJCQkJU3RhdGVtZW50Ci0JSGlMaW5rCXNjaWxhYkZ1bmN0aW9uCQkJCUtleXdvcmQKLQlIaUxpbmsJc2NpbGFiUHJlZGljYXRlCQkJCUtleXdvcmQKLQlIaUxpbmsJc2NpbGFiS2V5d29yZAkJCQlLZXl3b3JkCi0JSGlMaW5rCXNjaWxhYkRlYnVnCQkJCQlEZWJ1ZwotCUhpTGluawlzY2lsYWJSZXBlYXQJCQkJUmVwZWF0Ci0JSGlMaW5rCXNjaWxhYkNvbmRpdGlvbmFsCQkJQ29uZGl0aW9uYWwKLQlIaUxpbmsJc2NpbGFiTXVsdGlwbGV4CQkJCUNvbmRpdGlvbmFsCitIaUxpbmsJc2NpbGFiU3RhdGVtZW50CQkJCVN0YXRlbWVudAorSGlMaW5rCXNjaWxhYkZ1bmN0aW9uCQkJCUtleXdvcmQKK0hpTGluawlzY2lsYWJQcmVkaWNhdGUJCQkJS2V5d29yZAorSGlMaW5rCXNjaWxhYktleXdvcmQJCQkJS2V5d29yZAorSGlMaW5rCXNjaWxhYkRlYnVnCQkJCQlEZWJ1ZworSGlMaW5rCXNjaWxhYlJlcGVhdAkJCQlSZXBlYXQKK0hpTGluawlzY2lsYWJDb25kaXRpb25hbAkJCUNvbmRpdGlvbmFsCitIaUxpbmsJc2NpbGFiTXVsdGlwbGV4CQkJCUNvbmRpdGlvbmFsCiAKLQlIaUxpbmsJc2NpbGFiQ29uc3RhbnQJCQkJQ29uc3RhbnQKLQlIaUxpbmsJc2NpbGFiQm9vbGVhbgkJCQlCb29sZWFuCitIaUxpbmsJc2NpbGFiQ29uc3RhbnQJCQkJQ29uc3RhbnQKK0hpTGluawlzY2lsYWJCb29sZWFuCQkJCUJvb2xlYW4KIAotCUhpTGluawlzY2lsYWJEZWxpbWl0ZXIJCQkJRGVsaW1pdGVyCi0JSGlMaW5rCXNjaWxhYk1saXN0QWNjZXNzCQkJRGVsaW1pdGVyCi0JSGlMaW5rCXNjaWxhYkNvbXBhcmlzb24JCQlPcGVyYXRvcgotCUhpTGluawlzY2lsYWJMb2dpY2FsCQkJCU9wZXJhdG9yCi0JSGlMaW5rCXNjaWxhYkFzc2lnbm1lbnQJCQlPcGVyYXRvcgotCUhpTGluawlzY2lsYWJBcml0aG1ldGljCQkJT3BlcmF0b3IKLQlIaUxpbmsJc2NpbGFiUmFuZ2UJCQkJCU9wZXJhdG9yCi0JSGlMaW5rCXNjaWxhYkxpbmVDb250aW51YXRpb24JCVVuZGVybGluZWQKLQlIaUxpbmsJc2NpbGFiVHJhbnNwb3NpdGlvbgkJCU9wZXJhdG9yCitIaUxpbmsJc2NpbGFiRGVsaW1pdGVyCQkJCURlbGltaXRlcgorSGlMaW5rCXNjaWxhYk1saXN0QWNjZXNzCQkJRGVsaW1pdGVyCitIaUxpbmsJc2NpbGFiQ29tcGFyaXNvbgkJCU9wZXJhdG9yCitIaUxpbmsJc2NpbGFiTG9naWNhbAkJCQlPcGVyYXRvcgorSGlMaW5rCXNjaWxhYkFzc2lnbm1lbnQJCQlPcGVyYXRvcgorSGlMaW5rCXNjaWxhYkFyaXRobWV0aWMJCQlPcGVyYXRvcgorSGlMaW5rCXNjaWxhYlJhbmdlCQkJCQlPcGVyYXRvcgorSGlMaW5rCXNjaWxhYkxpbmVDb250aW51YXRpb24JCVVuZGVybGluZWQKK0hpTGluawlzY2lsYWJUcmFuc3Bvc2l0aW9uCQkJT3BlcmF0b3IKIAotCUhpTGluawlzY2lsYWJUb2RvCQkJCQlUb2RvCi0JSGlMaW5rCXNjaWxhYkNvbW1lbnQJCQkJQ29tbWVudAorSGlMaW5rCXNjaWxhYlRvZG8JCQkJCVRvZG8KK0hpTGluawlzY2lsYWJDb21tZW50CQkJCUNvbW1lbnQKIAotCUhpTGluawlzY2lsYWJOdW1iZXIJCQkJTnVtYmVyCi0JSGlMaW5rCXNjaWxhYlN0cmluZwkJCQlTdHJpbmcKK0hpTGluawlzY2lsYWJOdW1iZXIJCQkJTnVtYmVyCitIaUxpbmsJc2NpbGFiU3RyaW5nCQkJCVN0cmluZwogCi0JSGlMaW5rCXNjaWxhYklkZW50aWZpZXIJCQlJZGVudGlmaWVyCi0JSGlMaW5rCXNjaWxhYk92ZXJsb2FkCQkJCVNwZWNpYWwKK0hpTGluawlzY2lsYWJJZGVudGlmaWVyCQkJSWRlbnRpZmllcgorSGlMaW5rCXNjaWxhYk92ZXJsb2FkCQkJCVNwZWNpYWwKIAotCWRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic2NpbGFiIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zZC52aW0gYi9ydW50aW1lL3N5bnRheC9zZC52aW0KaW5kZXggN2ZhMGUwNC4uMDE1YzFmMCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc2QudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NkLnZpbQpAQCAtNSw5ICs1LDggQEAKICIgVVJMOiBodHRwOi8vbmV0c3R1ZGVudC5wb2xpdG8uaXQvdmltX3N5bnRheC8KICIgTGFzdCBDaGFuZ2U6IDIwMTIgRmViIDAzIGJ5IFRoaWxvIFNpeAogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICAgICAgIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgICAgICAgZmluaXNoCiBlbmRpZgogCkBAIC01MSwyOSArNTAsMjIgQEAKIHN5biBrZXl3b3JkIHNkRGVsaW1pdGVyIFNUUkVBTSBTVFJFQU1fRU5ECiBzeW4gbWF0Y2ggc2RFcnJvciAvXnNlYXJjaCAuXHsyNTcsfS8KIAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX2NvbmZpZ19zeW50YXhfaW5pdHMiKQotICAgICAgICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgICAgICAgICAgICAgbGV0IGRpZF9jb25maWdfc3ludGF4X2luaXRzID0gMQotICAgICAgICAgICAgICAgIGNvbW1hbmQhIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgY29tbWFuZCEgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICAgICAgICBlbmRpZgorY29tbWFuZCEgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICAgICAgIEhpTGluayBzZElQIE51bWJlcgotCQkgIEhpTGluayBzZEhvc3RuYW1lIFR5cGUKLSAgICAgICAgSGlMaW5rIHNkRW5jb2RpbmcgSWRlbnRpZmllcgotICAgICAgICBIaUxpbmsgc2RDb2RpbmcgSWRlbnRpZmllcgotICAgICAgICBIaUxpbmsgc2RTb3VyY2UgSWRlbnRpZmllcgotICAgICAgICBIaUxpbmsgc2RDb21tZW50IENvbW1lbnQKLSAgICAgICAgSGlMaW5rIHNkSVBFcnJvciBFcnJvcgotICAgICAgICBIaUxpbmsgc2RFcnJvciBFcnJvcgotICAgICAgICBIaUxpbmsgc2RTdGF0ZW1lbnQgU3RhdGVtZW50Ci0gICAgICAgIEhpTGluayBzZElQU3BlY2lhbCBTcGVjaWFsCi0gICAgICAgIEhpTGluayBzZFNwZWNpYWwgU3BlY2lhbAotCQkgIEhpTGluayBzZERlbGltaXRlciBEZWxpbWl0ZXIKK0hpTGluayBzZElQIE51bWJlcgorSGlMaW5rIHNkSG9zdG5hbWUgVHlwZQorSGlMaW5rIHNkRW5jb2RpbmcgSWRlbnRpZmllcgorSGlMaW5rIHNkQ29kaW5nIElkZW50aWZpZXIKK0hpTGluayBzZFNvdXJjZSBJZGVudGlmaWVyCitIaUxpbmsgc2RDb21tZW50IENvbW1lbnQKK0hpTGluayBzZElQRXJyb3IgRXJyb3IKK0hpTGluayBzZEVycm9yIEVycm9yCitIaUxpbmsgc2RTdGF0ZW1lbnQgU3RhdGVtZW50CitIaUxpbmsgc2RJUFNwZWNpYWwgU3BlY2lhbAorSGlMaW5rIHNkU3BlY2lhbCBTcGVjaWFsCitIaUxpbmsgc2REZWxpbWl0ZXIgRGVsaW1pdGVyCiAKLSAgICAgICAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJzZCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc2RsLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NkbC52aW0KaW5kZXggYjUyNGI3Mi4uNTEwODZkYSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc2RsLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zZGwudmltCkBAIC0zLDExICszLDggQEAKICIgTWFpbnRhaW5lcjoJTWljaGFlbCBQaWVmZWwgPGVudHd1cmZAcGllZmVsLmRlPgogIiBMYXN0IENoYW5nZToJMiBNYXkgMjAwMQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICAgIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgICBmaW5pc2gKIGVuZGlmCiAKQEAgLTEyOSwzOCArMTI2LDI5IEBACiBzeW4gc3luYyBjY29tbWVudCBzZGxDb21tZW50CiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3NkbF9zeW5faW5pdHMiKQotICAgIGlmIHZlcnNpb24gPCA1MDgKLQlsZXQgZGlkX3NkbF9zeW5faW5pdHMgPSAxCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLQljb21tYW5kIC1uYXJncz0rIEhpICAgICBoaSA8YXJncz4KLSAgICBlbHNlCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0JY29tbWFuZCAtbmFyZ3M9KyBIaSAgICAgaGkgZGVmIDxhcmdzPgotICAgIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KK2NvbW1hbmQgLW5hcmdzPSsgSGkgICAgIGhpIGRlZiA8YXJncz4KIAotICAgIEhpTGluayAgc2RsRXhjZXB0aW9uCUxhYmVsCi0gICAgSGlMaW5rICBzZGxDb25kaXRpb25hbAlzZGxTdGF0ZW1lbnQKLSAgICBIaUxpbmsgIHNkbFZpcnR1YWwJCXNkbFN0YXRlbWVudAotICAgIEhpTGluayAgc2RsRXhwb3J0ZWQJCXNkbEZsYWcKLSAgICBIaUxpbmsgIHNkbENvbW1lbnRFcnJvcglzZGxFcnJvcgotICAgIEhpTGluayAgc2RsT3BlcmF0b3IJCU9wZXJhdG9yCi0gICAgSGlMaW5rICBzZGxTdHJ1Y3R1cmUJc2RsVHlwZQotICAgIEhpCSAgICBzZGxTdGF0ZW1lbnQJdGVybT1ib2xkIGN0ZXJtZmc9NCBndWlmZz1CbHVlCi0gICAgSGkJICAgIHNkbEZsYWcJCXRlcm09Ym9sZCBjdGVybWZnPTQgZ3VpZmc9Qmx1ZSBndWk9aXRhbGljCi0gICAgSGkJICAgIHNkbE5ld1N0YXRlCQl0ZXJtPWl0YWxpYyBjdGVybWZnPTIgZ3VpZmc9TWFnZW50YSBndWk9dW5kZXJsaW5lCi0gICAgSGkJICAgIHNkbElucHV0CQl0ZXJtPWJvbGQgZ3VpZmc9UmVkCi0gICAgSGlMaW5rICBzZGxUeXBlCQlUeXBlCi0gICAgSGlMaW5rICBzZGxTdHJpbmcJCVN0cmluZwotICAgIEhpTGluayAgc2RsQ29tbWVudAkJQ29tbWVudAotICAgIEhpTGluayAgc2RsU3BlY2lhbAkJU3BlY2lhbAotICAgIEhpTGluayAgc2RsRXJyb3IJCUVycm9yCitIaUxpbmsgIHNkbEV4Y2VwdGlvbglMYWJlbAorSGlMaW5rICBzZGxDb25kaXRpb25hbAlzZGxTdGF0ZW1lbnQKK0hpTGluayAgc2RsVmlydHVhbAkJc2RsU3RhdGVtZW50CitIaUxpbmsgIHNkbEV4cG9ydGVkCQlzZGxGbGFnCitIaUxpbmsgIHNkbENvbW1lbnRFcnJvcglzZGxFcnJvcgorSGlMaW5rICBzZGxPcGVyYXRvcgkJT3BlcmF0b3IKK0hpTGluayAgc2RsU3RydWN0dXJlCXNkbFR5cGUKK0hpCSAgICBzZGxTdGF0ZW1lbnQJdGVybT1ib2xkIGN0ZXJtZmc9NCBndWlmZz1CbHVlCitIaQkgICAgc2RsRmxhZwkJdGVybT1ib2xkIGN0ZXJtZmc9NCBndWlmZz1CbHVlIGd1aT1pdGFsaWMKK0hpCSAgICBzZGxOZXdTdGF0ZQkJdGVybT1pdGFsaWMgY3Rlcm1mZz0yIGd1aWZnPU1hZ2VudGEgZ3VpPXVuZGVybGluZQorSGkJICAgIHNkbElucHV0CQl0ZXJtPWJvbGQgZ3VpZmc9UmVkCitIaUxpbmsgIHNkbFR5cGUJCVR5cGUKK0hpTGluayAgc2RsU3RyaW5nCQlTdHJpbmcKK0hpTGluayAgc2RsQ29tbWVudAkJQ29tbWVudAorSGlMaW5rICBzZGxTcGVjaWFsCQlTcGVjaWFsCitIaUxpbmsgIHNkbEVycm9yCQlFcnJvcgogCi0gICAgZGVsY29tbWFuZCBIaUxpbmsKLSAgICBkZWxjb21tYW5kIEhpCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKK2RlbGNvbW1hbmQgSGkKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic2RsIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zZWQudmltIGIvcnVudGltZS9zeW50YXgvc2VkLnZpbQppbmRleCA0MmFkNmQ4Li4xM2UwMTY1IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zZWQudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NlZC52aW0KQEAgLTQsMTEgKzQsOCBAQAogIiBVUkw6CQlodHRwOi8vZm9say51aW8ubm8vaGFrb25yay92aW0vc3ludGF4L3NlZC52aW0KICIgTGFzdCBDaGFuZ2U6CTIwMTAgTWF5IDI5CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3luIGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICAgIGZpbmlzaAogZW5kaWYKIApAQCAtNzUsNDUgKzcyLDM4IEBACiAiICh5KSBkb2VzIG5vdCBhbGxvdyBhbnkgZmxhZ3MuICBUbyBzYXZlIG1lbW9yeSwgSSBpZ25vcmUgdGhpcyBwcm9ibGVtLgogc3luIG1hdGNoIHNlZFNUCSJbc3ldIiBuZXh0Z3JvdXA9c2VkUmVnZXhwXGRcKwogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc2VkX3N5bnRheF9pbml0cyIpCi0gICAgaWYgdmVyc2lvbiA8IDUwOAotCWxldCBkaWRfc2VkX3N5bnRheF9pbml0cyA9IDEKLQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICAgIGVsc2UKLQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgICBlbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgICBIaUxpbmsgc2VkQWRkcmVzcwkJTWFjcm8KLSAgICBIaUxpbmsgc2VkQUNJCQlOT05FCi0gICAgSGlMaW5rIHNlZEJyYW5jaAkJTGFiZWwKLSAgICBIaUxpbmsgc2VkQ29tbWVudAkJQ29tbWVudAotICAgIEhpTGluayBzZWREZWxldGUJCUZ1bmN0aW9uCi0gICAgSGlMaW5rIHNlZEVycm9yCQlFcnJvcgotICAgIEhpTGluayBzZWRGbGFnCQlUeXBlCi0gICAgSGlMaW5rIHNlZEZsYWd3cml0ZQkJQ29uc3RhbnQKLSAgICBIaUxpbmsgc2VkRnVuY3Rpb24JCUZ1bmN0aW9uCi0gICAgSGlMaW5rIHNlZExhYmVsCQlMYWJlbAotICAgIEhpTGluayBzZWRMaW5lQ29udAkJU3BlY2lhbAotICAgIEhpTGluayBzZWRQdXRIb2xkc3BjCUZ1bmN0aW9uCi0gICAgSGlMaW5rIHNlZFJlcGxhY2VNZXRhCVNwZWNpYWwKLSAgICBIaUxpbmsgc2VkUmVnZXhwTWV0YQlTcGVjaWFsCi0gICAgSGlMaW5rIHNlZFJXCQlDb25zdGFudAotICAgIEhpTGluayBzZWRTZW1pY29sb24JCVNwZWNpYWwKLSAgICBIaUxpbmsgc2VkU1QJCUZ1bmN0aW9uCi0gICAgSGlMaW5rIHNlZFNwZWNpYWwJCVNwZWNpYWwKLSAgICBIaUxpbmsgc2VkV2hpdGVzcGFjZQlOT05FCi0gICAgaWYgZXhpc3RzKCJoaWdobGlnaHRfc2VkdGFicyIpCi0JSGlMaW5rIHNlZFRhYgkJVG9kbwotICAgIGVuZGlmCi0gICAgbGV0IF9fc2VkX2kgPSBjaGFyMm5yKCIgIikgIiBBU0NJSTogMzIsIEVCQ0RJQzogNjQKLSAgICB3aGlsZSBfX3NlZF9pIDw9IF9fc2VkX2xhc3QKLQlleGUgIkhpTGluayBzZWRSZWdleHAiLl9fc2VkX2kJCSJNYWNybyIKLQlleGUgIkhpTGluayBzZWRSZXBsYWNlbWVudCIuX19zZWRfaQkiTk9ORSIKLQlsZXQgX19zZWRfaSA9IF9fc2VkX2kgKyAxCi0gICAgZW5kd2hpbGUKLQotICAgIGRlbGNvbW1hbmQgSGlMaW5rCitIaUxpbmsgc2VkQWRkcmVzcwkJTWFjcm8KK0hpTGluayBzZWRBQ0kJCU5PTkUKK0hpTGluayBzZWRCcmFuY2gJCUxhYmVsCitIaUxpbmsgc2VkQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHNlZERlbGV0ZQkJRnVuY3Rpb24KK0hpTGluayBzZWRFcnJvcgkJRXJyb3IKK0hpTGluayBzZWRGbGFnCQlUeXBlCitIaUxpbmsgc2VkRmxhZ3dyaXRlCQlDb25zdGFudAorSGlMaW5rIHNlZEZ1bmN0aW9uCQlGdW5jdGlvbgorSGlMaW5rIHNlZExhYmVsCQlMYWJlbAorSGlMaW5rIHNlZExpbmVDb250CQlTcGVjaWFsCitIaUxpbmsgc2VkUHV0SG9sZHNwYwlGdW5jdGlvbgorSGlMaW5rIHNlZFJlcGxhY2VNZXRhCVNwZWNpYWwKK0hpTGluayBzZWRSZWdleHBNZXRhCVNwZWNpYWwKK0hpTGluayBzZWRSVwkJQ29uc3RhbnQKK0hpTGluayBzZWRTZW1pY29sb24JCVNwZWNpYWwKK0hpTGluayBzZWRTVAkJRnVuY3Rpb24KK0hpTGluayBzZWRTcGVjaWFsCQlTcGVjaWFsCitIaUxpbmsgc2VkV2hpdGVzcGFjZQlOT05FCitpZiBleGlzdHMoImhpZ2hsaWdodF9zZWR0YWJzIikKK0hpTGluayBzZWRUYWIJCVRvZG8KIGVuZGlmCitsZXQgX19zZWRfaSA9IGNoYXIybnIoIiAiKSAiIEFTQ0lJOiAzMiwgRUJDRElDOiA2NAord2hpbGUgX19zZWRfaSA8PSBfX3NlZF9sYXN0CitleGUgIkhpTGluayBzZWRSZWdleHAiLl9fc2VkX2kJCSJNYWNybyIKK2V4ZSAiSGlMaW5rIHNlZFJlcGxhY2VtZW50Ii5fX3NlZF9pCSJOT05FIgorbGV0IF9fc2VkX2kgPSBfX3NlZF9pICsgMQorZW5kd2hpbGUKKworZGVsY29tbWFuZCBIaUxpbmsKIAogdW5sZXQgX19zZWRfaSBfX3NlZF9sYXN0IF9fc2VkX2RlbGltaXRlciBfX3NlZF9tZXRhY2hhcmFjdGVycwogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zZW5kcHIudmltIGIvcnVudGltZS9zeW50YXgvc2VuZHByLnZpbQppbmRleCA2Y2Y5Mzk1Li4yZTA3ODAyIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zZW5kcHIudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NlbmRwci52aW0KQEAgLTUsMTEgKzUsOCBAQAogIgogIiBodHRwOi8vcmFpc2RvcmYubmV0L2ZpbGVzL21pc2Mvc2VuZC1wci52aW0KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NnbWwudmltIGIvcnVudGltZS9zeW50YXgvc2dtbC52aW0KaW5kZXggYzBjMzY0My4uZDYwMDQwYyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc2dtbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2dtbC52aW0KQEAgLTUsMTEgKzUsOCBAQAogIiBGaWxlbmFtZXM6CSouc2dtbCwqLnNnbQogIiAkSWQ6IHNnbWwudmltLHYgMS4xIDIwMDQvMDYvMTMgMTc6NTI6NTcgdmltYm9zcyBFeHAgJAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc2dtbGRlY2wudmltIGIvcnVudGltZS9zeW50YXgvc2dtbGRlY2wudmltCmluZGV4IDEzNTUxYjIuLjFiZjFiNDkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NnbWxkZWNsLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zZ21sZGVjbC52aW0KQEAgLTUsMTEgKzUsOCBAQAogIiBZb3UgY2FuIG1vZGlmeSBhbmQgbWFpbnRhaW4gdGhpcyBmaWxlLCBpbiBvdGhlciBjYXNlIHNlbmQgY29tbWVudHMKICIgdGhlIG1haW50YWluZXIgZW1haWwgYWRkcmVzcy4KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgczprZWVwY3BvPSAmY3BvCkBAIC01MiwzMCArNDksMjIgQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zZ21sZGVjbF9zeW50YXhfaW5pdCIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3NnbWxkZWNsX3N5bnRheF9pbml0ID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICAgICBIaUxpbmsJc2dtbGRlY2xEZWNsS2V5cwlLZXl3b3JkCi0gICAgICBIaUxpbmsJc2dtbGRlY2xUeXBlcwkJVHlwZQotICAgICAgSGlMaW5rCXNnbWxkZWNsQ29uc3QJCUNvbnN0YW50Ci0gICAgICBIaUxpbmsJc2dtbGRlY2xOQ29uc3QJCUNvbnN0YW50Ci0gICAgICBIaUxpbmsJc2dtbGRlY2xTdHJpbmcJCVN0cmluZwotICAgICAgSGlMaW5rCXNnbWxkZWNsRGVjbEJsb2NrCU5vcm1hbAotICAgICAgSGlMaW5rCXNnbWxkZWNsQm9vbAkJQm9vbGVhbgotICAgICAgSGlMaW5rCXNnbWxkZWNsU3BlY2lhbAkJU3BlY2lhbAotICAgICAgSGlMaW5rCXNnbWxkZWNsQ29tbWVudAkJQ29tbWVudAotICAgICAgSGlMaW5rCXNnbWxkZWNsU3RhdGVtCQlTdGF0ZW1lbnQKLQkgIEhpTGluawlzZ21sZGVjbFZhcmlhYmxlcwlUeXBlCitIaUxpbmsJc2dtbGRlY2xEZWNsS2V5cwlLZXl3b3JkCitIaUxpbmsJc2dtbGRlY2xUeXBlcwkJVHlwZQorSGlMaW5rCXNnbWxkZWNsQ29uc3QJCUNvbnN0YW50CitIaUxpbmsJc2dtbGRlY2xOQ29uc3QJCUNvbnN0YW50CitIaUxpbmsJc2dtbGRlY2xTdHJpbmcJCVN0cmluZworSGlMaW5rCXNnbWxkZWNsRGVjbEJsb2NrCU5vcm1hbAorSGlMaW5rCXNnbWxkZWNsQm9vbAkJQm9vbGVhbgorSGlMaW5rCXNnbWxkZWNsU3BlY2lhbAkJU3BlY2lhbAorSGlMaW5rCXNnbWxkZWNsQ29tbWVudAkJQ29tbWVudAorSGlMaW5rCXNnbWxkZWNsU3RhdGVtCQlTdGF0ZW1lbnQKK0hpTGluawlzZ21sZGVjbFZhcmlhYmxlcwlUeXBlCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJzZ21sZGVjbCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc2dtbGxueC52aW0gYi9ydW50aW1lL3N5bnRheC9zZ21sbG54LnZpbQppbmRleCAyODIyNGY2Li43ZmQ2MzNkIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zZ21sbG54LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zZ21sbG54LnZpbQpAQCAtMywxMSArMyw4IEBACiAiIE1haW50YWluZXI6CVN1bmdIeXVuIE5hbSA8Z293ZW9sQGdtYWlsLmNvbT4KICIgTGFzdCBDaGFuZ2U6CTIwMTMgTWF5IDEzCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0zNiwzMSArMzMsMjMgQEAKIHN5biByZWdpb24gc2dtbGxueERvY1R5cGUgc3RhcnQ9KzwhZG9jdHlwZSsgZW5kPSs+KwogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zZ21sbG54X3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3NnbWxsbnhfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBzZ21sbG54VGFnMgkgICAgRnVuY3Rpb24KLSAgSGlMaW5rIHNnbWxsbnhUYWdOMgkgICAgRnVuY3Rpb24KLSAgSGlMaW5rIHNnbWxsbnhUYWcJICAgIFNwZWNpYWwKLSAgSGlMaW5rIHNnbWxsbnhFbmRUYWcJICAgIFNwZWNpYWwKLSAgSGlMaW5rIHNnbWxsbnhQYXJlbgkgICAgU3BlY2lhbAotICBIaUxpbmsgc2dtbGxueEVudGl0eQkgICAgVHlwZQotICBIaUxpbmsgc2dtbGxueERvY0VudAkgICAgVHlwZQotICBIaUxpbmsgc2dtbGxueFRhZ05hbWUJICAgIFN0YXRlbWVudAotICBIaUxpbmsgc2dtbGxueENvbW1lbnQJICAgIENvbW1lbnQKLSAgSGlMaW5rIHNnbWxsbnhTcGVjaWFsCSAgICBTcGVjaWFsCi0gIEhpTGluayBzZ21sbG54RG9jVHlwZQkgICAgUHJlUHJvYwotICBIaUxpbmsgc2dtbGxueFRhZ0Vycm9yICAgIEVycm9yCitIaUxpbmsgc2dtbGxueFRhZzIJICAgIEZ1bmN0aW9uCitIaUxpbmsgc2dtbGxueFRhZ04yCSAgICBGdW5jdGlvbgorSGlMaW5rIHNnbWxsbnhUYWcJICAgIFNwZWNpYWwKK0hpTGluayBzZ21sbG54RW5kVGFnCSAgICBTcGVjaWFsCitIaUxpbmsgc2dtbGxueFBhcmVuCSAgICBTcGVjaWFsCitIaUxpbmsgc2dtbGxueEVudGl0eQkgICAgVHlwZQorSGlMaW5rIHNnbWxsbnhEb2NFbnQJICAgIFR5cGUKK0hpTGluayBzZ21sbG54VGFnTmFtZQkgICAgU3RhdGVtZW50CitIaUxpbmsgc2dtbGxueENvbW1lbnQJICAgIENvbW1lbnQKK0hpTGluayBzZ21sbG54U3BlY2lhbAkgICAgU3BlY2lhbAorSGlMaW5rIHNnbWxsbnhEb2NUeXBlCSAgICBQcmVQcm9jCitIaUxpbmsgc2dtbGxueFRhZ0Vycm9yICAgIEVycm9yCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJzZ21sbG54IgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zaC52aW0gYi9ydW50aW1lL3N5bnRheC9zaC52aW0KaW5kZXggZWY5MGViZS4uMzFjN2IwNSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc2gudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NoLnZpbQpAQCAtOCwxMSArOCw4IEBACiAiIEZvciBvcHRpb25zIGFuZCBzZXR0aW5ncywgcGxlYXNlIHVzZTogICAgICA6aGVscCBmdC1zaC1zeW50YXgKICIgVGhpcyBmaWxlIGluY2x1ZGVzIG1hbnkgaWRlYXMgZnJvbSBFcmljIEJydW5ldCAoZXJpYy5icnVuZXRAZW5zLmZyKQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcyB7e3sxCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2OnZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NpY2FkLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NpY2FkLnZpbQppbmRleCA3ZTMyNDUxLi4wNGY4NzBkIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zaWNhZC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2ljYWQudmltCkBAIC00LDI4ICs0LDE3IEBACiAiIExhc3QgQ2hhbmdlOiAgMjAwMyBNYXkgMTEKICIgVVJMOgkJaHR0cDovL2xtYXJrLm1neC5odTo4MS9kb3dubG9hZC92aW0vc2ljYWQudmltCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCiAiIHVzZSBTUUwgaGlnaGxpZ2h0aW5nIGFmdGVyICdzcWwnIGNvbW1hbmQKLWlmIHZlcnNpb24gPj0gNjAwCi0gIHN5biBpbmNsdWRlIEBTUUwgc3ludGF4L3NxbC52aW0KLWVsc2UKLSAgc3luIGluY2x1ZGUgQFNRTCA8c2ZpbGU+OnA6aC9zcWwudmltCi1lbmRpZgorc3luIGluY2x1ZGUgQFNRTCBzeW50YXgvc3FsLnZpbQogdW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiAiIHNwYWNlcyBhcmUgdXNlZCBpbiAoYXV0bylpbmRlbnRzIHNpbmNlIHNpY2FkIGhhdGVzIHRhYnVsYXRvciBjaGFyYWN0ZXJzCi1pZiB2ZXJzaW9uID49IDYwMAotICBzZXRsb2NhbCBleHBhbmR0YWIKLWVsc2UKLSAgc2V0IGV4cGFuZHRhYgotZW5kaWYKK3NldGxvY2FsIGV4cGFuZHRhYgogCiAiIGlnbm9yZSBjYXNlCiBzeW4gY2FzZSBpZ25vcmUKQEAgLTM2OSw0NCArMzU4LDM0IEBACiBzeW4ga2V5d29yZCBzaWNhZFN0YXRlbWVudCB6cGFycCB6cGFycG4gendpbmtwIHp3aW5rcG4KIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc2ljYWRfc3ludGF4X2luaXRzIikKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3NpY2FkX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCi0KLSAgSGlMaW5rIHNpY2FkTGFiZWwgUHJlUHJvYwotICBIaUxpbmsgc2ljYWRMYWJlbDEgc2ljYWRMYWJlbAotICBIaUxpbmsgc2ljYWRMYWJlbDIgc2ljYWRMYWJlbAotICBIaUxpbmsgc2ljYWRDb25kaXRpb25hbCBDb25kaXRpb25hbAotICBIaUxpbmsgc2ljYWRCb29sZWFuIEJvb2xlYW4KLSAgSGlMaW5rIHNpY2FkTnVtYmVyIE51bWJlcgotICBIaUxpbmsgc2ljYWRGbG9hdCBGbG9hdAotICBIaUxpbmsgc2ljYWRPcGVyYXRvciBPcGVyYXRvcgotICBIaUxpbmsgc2ljYWRTdGF0ZW1lbnQgU3RhdGVtZW50Ci0gIEhpTGluayBzaWNhZFBhcmFtZXRlciBzaWNhZFN0YXRlbWVudAotICBIaUxpbmsgc2ljYWRHb3RvIHNpY2FkU3RhdGVtZW50Ci0gIEhpTGluayBzaWNhZExpbmVDb250IHNpY2FkU3RhdGVtZW50Ci0gIEhpTGluayBzaWNhZFN0cmluZyBTdHJpbmcKLSAgSGlMaW5rIHNpY2FkQ29tbWVudCBDb21tZW50Ci0gIEhpTGluayBzaWNhZFNwZWNpYWwgU3BlY2lhbAotICBIaUxpbmsgc2ljYWRJZGVudGlmaWVyIFR5cGUKK0hpTGluayBzaWNhZExhYmVsIFByZVByb2MKK0hpTGluayBzaWNhZExhYmVsMSBzaWNhZExhYmVsCitIaUxpbmsgc2ljYWRMYWJlbDIgc2ljYWRMYWJlbAorSGlMaW5rIHNpY2FkQ29uZGl0aW9uYWwgQ29uZGl0aW9uYWwKK0hpTGluayBzaWNhZEJvb2xlYW4gQm9vbGVhbgorSGlMaW5rIHNpY2FkTnVtYmVyIE51bWJlcgorSGlMaW5rIHNpY2FkRmxvYXQgRmxvYXQKK0hpTGluayBzaWNhZE9wZXJhdG9yIE9wZXJhdG9yCitIaUxpbmsgc2ljYWRTdGF0ZW1lbnQgU3RhdGVtZW50CitIaUxpbmsgc2ljYWRQYXJhbWV0ZXIgc2ljYWRTdGF0ZW1lbnQKK0hpTGluayBzaWNhZEdvdG8gc2ljYWRTdGF0ZW1lbnQKK0hpTGluayBzaWNhZExpbmVDb250IHNpY2FkU3RhdGVtZW50CitIaUxpbmsgc2ljYWRTdHJpbmcgU3RyaW5nCitIaUxpbmsgc2ljYWRDb21tZW50IENvbW1lbnQKK0hpTGluayBzaWNhZFNwZWNpYWwgU3BlY2lhbAorSGlMaW5rIHNpY2FkSWRlbnRpZmllciBUeXBlCiAiICBIaUxpbmsgc2ljYWRJZGVudGlmaWVyIElkZW50aWZpZXIKLSAgSGlMaW5rIHNpY2FkRXJyb3IgRXJyb3IKLSAgSGlMaW5rIHNpY2FkUGFyZW5FcnJvciBzaWNhZEVycm9yCi0gIEhpTGluayBzaWNhZEFwb3N0cm9waGVFcnJvciBzaWNhZEVycm9yCi0gIEhpTGluayBzaWNhZFN0cmluZ0Vycm9yIHNpY2FkRXJyb3IKLSAgSGlMaW5rIHNpY2FkQ29tbWVudEVycm9yIHNpY2FkRXJyb3IKK0hpTGluayBzaWNhZEVycm9yIEVycm9yCitIaUxpbmsgc2ljYWRQYXJlbkVycm9yIHNpY2FkRXJyb3IKK0hpTGluayBzaWNhZEFwb3N0cm9waGVFcnJvciBzaWNhZEVycm9yCitIaUxpbmsgc2ljYWRTdHJpbmdFcnJvciBzaWNhZEVycm9yCitIaUxpbmsgc2ljYWRDb21tZW50RXJyb3Igc2ljYWRFcnJvcgogIiAgSGlMaW5rIHNxbFN0YXRlbWVudCBTcGVjaWFsICAiIG1vZGlmaWVkIGhpZ2hsaWdodCBncm91cCBpbiBzcWwudmltCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLQotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNpY2FkIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zaW11bGEudmltIGIvcnVudGltZS9zeW50YXgvc2ltdWxhLnZpbQppbmRleCBlOTUyZWUyLi5lYjNmOGExIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zaW11bGEudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NpbXVsYS52aW0KQEAgLTQsMTEgKzQsOCBAQAogIiBVUkw6CQlodHRwOi8vZm9say51aW8ubm8vaGFrb25yay92aW0vc3ludGF4L3NpbXVsYS52aW0KICIgTGFzdCBDaGFuZ2U6CTIwMDEgTWF5IDE1CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3luIGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICAgIGZpbmlzaAogZW5kaWYKIApAQCAtNTgsNDIgKzU1LDM1IEBACiAiIFJlYWwgc3RhcnRpbmcgd2l0aCBhIGAuJywgb3B0aW9uYWwgZXhwb25lbnQKIHN5biBtYXRjaAlzaW11bGFSZWFsCQkiLVw9XC5cZFwrXCgmJlw9WystXVw9XGRcK1wpXD1cPiIKIAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3NpbXVsYV9zeW50YXhfaW5pdHMiKQotICAgIGlmIHZlcnNpb24gPCA1MDgKLQlsZXQgZGlkX3NpbXVsYV9zeW50YXhfaW5pdHMgPSAxCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgICBlbHNlCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gICAgZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICAgSGlMaW5rIHNpbXVsYUFzc2lnbmVkCQlJZGVudGlmaWVyCi0gICAgSGlMaW5rIHNpbXVsYUJvb2xlYW4JCUJvb2xlYW4KLSAgICBIaUxpbmsgc2ltdWxhQ2hhcmFjdGVyCQlDaGFyYWN0ZXIKLSAgICBIaUxpbmsgc2ltdWxhQ2hhckVycm9yCQlFcnJvcgotICAgIEhpTGluayBzaW11bGFDb21tZW50CQlDb21tZW50Ci0gICAgSGlMaW5rIHNpbXVsYUNvbXBvdW5kCQlTdGF0ZW1lbnQKLSAgICBIaUxpbmsgc2ltdWxhQ29uZGl0aW9uYWwJCUNvbmRpdGlvbmFsCi0gICAgSGlMaW5rIHNpbXVsYUNvbnN0YW50CQlDb25zdGFudAotICAgIEhpTGluayBzaW11bGFGdW5jdGlvbgkJRnVuY3Rpb24KLSAgICBIaUxpbmsgc2ltdWxhTnVtYmVyCQkJTnVtYmVyCi0gICAgSGlMaW5rIHNpbXVsYU9wZXJhdG9yCQlPcGVyYXRvcgotICAgIEhpTGluayBzaW11bGFSZWFsCQkJRmxvYXQKLSAgICBIaUxpbmsgc2ltdWxhUmVmZXJlbmNlVHlwZQkJVHlwZQotICAgIEhpTGluayBzaW11bGFSZXBlYXQJCQlSZXBlYXQKLSAgICBIaUxpbmsgc2ltdWxhUmVzZXJ2ZWQJCUVycm9yCi0gICAgSGlMaW5rIHNpbXVsYVNlbWljb2xvbgkJU3RhdGVtZW50Ci0gICAgSGlMaW5rIHNpbXVsYVNwZWNpYWwJCVNwZWNpYWwKLSAgICBIaUxpbmsgc2ltdWxhU3BlY2lhbENoYXIJCVNwZWNpYWxDaGFyCi0gICAgSGlMaW5rIHNpbXVsYVNwZWNpYWxDaGFyRXJyCQlFcnJvcgotICAgIEhpTGluayBzaW11bGFTdGF0ZW1lbnQJCVN0YXRlbWVudAotICAgIEhpTGluayBzaW11bGFTdG9yYWdlQ2xhc3MJCVN0b3JhZ2VDbGFzcwotICAgIEhpTGluayBzaW11bGFTdHJpbmcJCQlTdHJpbmcKLSAgICBIaUxpbmsgc2ltdWxhU3RydWN0dXJlCQlTdHJ1Y3R1cmUKLSAgICBIaUxpbmsgc2ltdWxhVG9kbwkJCVRvZG8KLSAgICBIaUxpbmsgc2ltdWxhVHlwZQkJCVR5cGUKK0hpTGluayBzaW11bGFBc3NpZ25lZAkJSWRlbnRpZmllcgorSGlMaW5rIHNpbXVsYUJvb2xlYW4JCUJvb2xlYW4KK0hpTGluayBzaW11bGFDaGFyYWN0ZXIJCUNoYXJhY3RlcgorSGlMaW5rIHNpbXVsYUNoYXJFcnJvcgkJRXJyb3IKK0hpTGluayBzaW11bGFDb21tZW50CQlDb21tZW50CitIaUxpbmsgc2ltdWxhQ29tcG91bmQJCVN0YXRlbWVudAorSGlMaW5rIHNpbXVsYUNvbmRpdGlvbmFsCQlDb25kaXRpb25hbAorSGlMaW5rIHNpbXVsYUNvbnN0YW50CQlDb25zdGFudAorSGlMaW5rIHNpbXVsYUZ1bmN0aW9uCQlGdW5jdGlvbgorSGlMaW5rIHNpbXVsYU51bWJlcgkJCU51bWJlcgorSGlMaW5rIHNpbXVsYU9wZXJhdG9yCQlPcGVyYXRvcgorSGlMaW5rIHNpbXVsYVJlYWwJCQlGbG9hdAorSGlMaW5rIHNpbXVsYVJlZmVyZW5jZVR5cGUJCVR5cGUKK0hpTGluayBzaW11bGFSZXBlYXQJCQlSZXBlYXQKK0hpTGluayBzaW11bGFSZXNlcnZlZAkJRXJyb3IKK0hpTGluayBzaW11bGFTZW1pY29sb24JCVN0YXRlbWVudAorSGlMaW5rIHNpbXVsYVNwZWNpYWwJCVNwZWNpYWwKK0hpTGluayBzaW11bGFTcGVjaWFsQ2hhcgkJU3BlY2lhbENoYXIKK0hpTGluayBzaW11bGFTcGVjaWFsQ2hhckVycgkJRXJyb3IKK0hpTGluayBzaW11bGFTdGF0ZW1lbnQJCVN0YXRlbWVudAorSGlMaW5rIHNpbXVsYVN0b3JhZ2VDbGFzcwkJU3RvcmFnZUNsYXNzCitIaUxpbmsgc2ltdWxhU3RyaW5nCQkJU3RyaW5nCitIaUxpbmsgc2ltdWxhU3RydWN0dXJlCQlTdHJ1Y3R1cmUKK0hpTGluayBzaW11bGFUb2RvCQkJVG9kbworSGlMaW5rIHNpbXVsYVR5cGUJCQlUeXBlCiAKLSAgICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNpbXVsYSIKICIgdmltOiBzdHM9NCBzdz00IHRzPTgKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NpbmRhLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NpbmRhLnZpbQppbmRleCAyYmRlMjY3Li5lZjA5MjllIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zaW5kYS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2luZGEudmltCkBAIC04LDExICs4LDggQEAKIAogCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0zMiwxMSArMjksNyBAQAogbGV0IGZvcnRyYW5fZnJlZV9zb3VyY2U9MQogCiAiIExvYWQgRk9SVFJBTiBzeW50YXggZmlsZQotaWYgdmVyc2lvbiA8IDYwMAotICBzb3VyY2UgPHNmaWxlPjpwOmgvZm9ydHJhbi52aW0KLWVsc2UKLSAgcnVudGltZSEgc3ludGF4L2ZvcnRyYW4udmltCi1lbmRpZgorcnVudGltZSEgc3ludGF4L2ZvcnRyYW4udmltCiB1bmxldCBiOmN1cnJlbnRfc3ludGF4CiAKIApAQCAtMTA2LDM5ICs5OSwzMSBAQAogCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZwotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc2luZGFfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfc2luZGFfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBzaW5kYU1hY3JvCQlNYWNybwotICBIaUxpbmsgc2luZGFPcHRpb25zCQlTcGVjaWFsCi0gIEhpTGluayBzaW5kYVJvdXRpbmUJCVR5cGUKLSAgSGlMaW5rIHNpbmRhQ29udHJvbAkJU3BlY2lhbAotICBIaUxpbmsgc2luZGFTdWJSb3V0aW5lCUZ1bmN0aW9uCi0gIEhpTGluayBzaW5kYUlkZW50aWZpZXIJSWRlbnRpZmllcgorSGlMaW5rIHNpbmRhTWFjcm8JCU1hY3JvCitIaUxpbmsgc2luZGFPcHRpb25zCQlTcGVjaWFsCitIaUxpbmsgc2luZGFSb3V0aW5lCQlUeXBlCitIaUxpbmsgc2luZGFDb250cm9sCQlTcGVjaWFsCitIaUxpbmsgc2luZGFTdWJSb3V0aW5lCUZ1bmN0aW9uCitIaUxpbmsgc2luZGFJZGVudGlmaWVyCUlkZW50aWZpZXIKIAotICBIaUxpbmsgc2luZGFGb3J0cmFuCQlQcmVQcm9jCi0gIEhpTGluayBzaW5kYU1vdHJhbgkJUHJlUHJvYworSGlMaW5rIHNpbmRhRm9ydHJhbgkJUHJlUHJvYworSGlMaW5rIHNpbmRhTW90cmFuCQlQcmVQcm9jCiAKLSAgSGlMaW5rIHNpbmRhQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgc2luZGFIZWFkZXIJCVR5cGVkZWYKLSAgSGlMaW5rIHNpbmRhSW5jbHVkZUZpbGUJVHlwZQotICBIaUxpbmsgc2luZGFJbnRlZ2VyCQlOdW1iZXIKLSAgSGlMaW5rIHNpbmRhRmxvYXQJCUZsb2F0Ci0gIEhpTGluayBzaW5kYVNjaWVudGlmaWMJRmxvYXQKK0hpTGluayBzaW5kYUNvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBzaW5kYUhlYWRlcgkJVHlwZWRlZgorSGlMaW5rIHNpbmRhSW5jbHVkZUZpbGUJVHlwZQorSGlMaW5rIHNpbmRhSW50ZWdlcgkJTnVtYmVyCitIaUxpbmsgc2luZGFGbG9hdAkJRmxvYXQKK0hpTGluayBzaW5kYVNjaWVudGlmaWMJRmxvYXQKIAotICBIaUxpbmsgc2luZGFFbmREYXRhCQlNYWNybworSGlMaW5rIHNpbmRhRW5kRGF0YQkJTWFjcm8KIAotICBIaUxpbmsgc2luZGFUb2RvCQlUb2RvCitIaUxpbmsgc2luZGFUb2RvCQlUb2RvCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNpbmRhIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc2luZGFjbXAudmltIGIvcnVudGltZS9zeW50YXgvc2luZGFjbXAudmltCmluZGV4IDg3YjQ4MzQuLjI4YzNjZGMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NpbmRhY21wLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zaW5kYWNtcC52aW0KQEAgLTgsMTEgKzgsOCBAQAogCiAKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTQ1LDI4ICs0MiwyMCBAQAogCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZwotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc2luZGFjbXBfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfc2luZGFjbXBfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBzaW5kYWNtcFRpdGxlCQkgICAgIFR5cGUKLSAgSGlMaW5rIHNpbmRhY21wVW5pdAkJICAgICBQcmVQcm9jCitIaUxpbmsgc2luZGFjbXBUaXRsZQkJICAgICBUeXBlCitIaUxpbmsgc2luZGFjbXBVbml0CQkgICAgIFByZVByb2MKIAotICBIaUxpbmsgc2luZGFjbXBMYWJlbAkJICAgICBTdGF0ZW1lbnQKK0hpTGluayBzaW5kYWNtcExhYmVsCQkgICAgIFN0YXRlbWVudAogCi0gIEhpTGluayBzaW5kYWNtcEhlYWRlcgkJICAgICBzaW5kYUhlYWRlcgorSGlMaW5rIHNpbmRhY21wSGVhZGVyCQkgICAgIHNpbmRhSGVhZGVyCiAKLSAgSGlMaW5rIHNpbmRhY21wSW50ZWdlcgkgICAgIE51bWJlcgotICBIaUxpbmsgc2luZGFjbXBGbG9hdAkJICAgICBTcGVjaWFsCitIaUxpbmsgc2luZGFjbXBJbnRlZ2VyCSAgICAgTnVtYmVyCitIaUxpbmsgc2luZGFjbXBGbG9hdAkJICAgICBTcGVjaWFsCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNpbmRhY21wIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc2luZGFvdXQudmltIGIvcnVudGltZS9zeW50YXgvc2luZGFvdXQudmltCmluZGV4IGI1NTdlMDEuLmI0ZmIxNzcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NpbmRhb3V0LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zaW5kYW91dC52aW0KQEAgLTgsMTEgKzgsOCBAQAogCiAKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTI0LDExICsyMSw3IEBACiAKIAogIiBMb2FkIFNJTkRBIHN5bnRheCBmaWxlCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNvdXJjZSA8c2ZpbGU+OnA6aC9zaW5kYS52aW0KLWVsc2UKLSAgcnVudGltZSEgc3ludGF4L3NpbmRhLnZpbQotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9zaW5kYS52aW0KIHVubGV0IGI6Y3VycmVudF9zeW50YXgKIAogCkBAIC02NiwzMyArNTksMjUgQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcKLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3NpbmRhb3V0X3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3NpbmRhb3V0X3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBoaSBzaW5kYUhlYWRlckRlbGltICBjdGVybWZnPUJsYWNrIGN0ZXJtYmc9R3JlZW4JICAgICAgIGd1aWZnPUJsYWNrIGd1aWJnPUdyZWVuCitoaSBzaW5kYUhlYWRlckRlbGltICBjdGVybWZnPUJsYWNrIGN0ZXJtYmc9R3JlZW4JICAgICAgIGd1aWZnPUJsYWNrIGd1aWJnPUdyZWVuCiAKLSAgSGlMaW5rIHNpbmRhb3V0UG9zCQkgICAgIFN0YXRlbWVudAotICBIaUxpbmsgc2luZGFvdXROZWcJCSAgICAgUHJlUHJvYwotICBIaUxpbmsgc2luZGFvdXRUaXRsZQkJICAgICBUeXBlCi0gIEhpTGluayBzaW5kYW91dEZpbGUJCSAgICAgc2luZGFJbmNsdWRlRmlsZQotICBIaUxpbmsgc2luZGFvdXRJbnRlZ2VyCSAgICAgc2luZGFJbnRlZ2VyCitIaUxpbmsgc2luZGFvdXRQb3MJCSAgICAgU3RhdGVtZW50CitIaUxpbmsgc2luZGFvdXROZWcJCSAgICAgUHJlUHJvYworSGlMaW5rIHNpbmRhb3V0VGl0bGUJCSAgICAgVHlwZQorSGlMaW5rIHNpbmRhb3V0RmlsZQkJICAgICBzaW5kYUluY2x1ZGVGaWxlCitIaUxpbmsgc2luZGFvdXRJbnRlZ2VyCSAgICAgc2luZGFJbnRlZ2VyCiAKLSAgSGlMaW5rIHNpbmRhb3V0U2VjdGlvbkRlbGltCSAgICAgIERlbGltaXRlcgotICBIaUxpbmsgc2luZGFvdXRTZWN0aW9uVGl0bGUJICAgICBFeGNlcHRpb24KLSAgSGlMaW5rIHNpbmRhb3V0SGVhZGVyRGVsaW0JICAgICBTcGVjaWFsQ29tbWVudAotICBIaUxpbmsgc2luZGFvdXRMYWJlbAkJICAgICBJZGVudGlmaWVyCitIaUxpbmsgc2luZGFvdXRTZWN0aW9uRGVsaW0JICAgICAgRGVsaW1pdGVyCitIaUxpbmsgc2luZGFvdXRTZWN0aW9uVGl0bGUJICAgICBFeGNlcHRpb24KK0hpTGluayBzaW5kYW91dEhlYWRlckRlbGltCSAgICAgU3BlY2lhbENvbW1lbnQKK0hpTGluayBzaW5kYW91dExhYmVsCQkgICAgIElkZW50aWZpZXIKIAotICBIaUxpbmsgc2luZGFvdXRFcnJvcgkJICAgICBFcnJvcgorSGlMaW5rIHNpbmRhb3V0RXJyb3IJCSAgICAgRXJyb3IKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic2luZGFvdXQiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zaXN1LnZpbSBiL3J1bnRpbWUvc3ludGF4L3Npc3UudmltCmluZGV4IDBlMGYyZGIuLjgzZDJhMTcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Npc3UudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3Npc3UudmltCkBAIC02LDExICs2LDkgQEAKICIgICAgICA8aHR0cDovL2dpdC5zaXN1ZG9jLm9yZy9naXR3ZWIvP3A9Y29kZS9zaXN1LmdpdDthPWJsb2JfcGxhaW47Zj1kYXRhL3Npc3UvY29uZi9lZGl0b3Itc3ludGF4LWV0Yy92aW0vc3ludGF4L3Npc3UudmltO2hiPUhFQUQ+CiAiKG9yaWdpbmFsbHkgbG9va2VkIGF0IFJ1YnkgVmltIGJ5IE1pcmtvIE5hc2F0bykKIAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAotZWxzZQogZW5kaWYKIGxldCBzOmNwb19zYXZlID0gJmNwbwogc2V0IGNwbyZ2aW0KZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NraWxsLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NraWxsLnZpbQppbmRleCA4Yjk2MDQ0Li5mMzJkNWVlIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9za2lsbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2tpbGwudmltCkBAIC05LDExICs5LDggQEAKICIJCQkJZGF0YWJhc2UuIFRoaXMgZmlsZSBhbHNvIGRlZmluZXMgc3ludGF4IGhpZ2hsaWdodGluZyBmb3IKICIJCQkJY2VydGFpbiBEZXNpZ24gRnJhbWV3b3JrIElJIGludGVyZmFjZSBmdW5jdGlvbnMuCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC01MjUsMzcgKzUyMiwyOSBAQAogc3luIHN5bmMgY2NvbW1lbnQgc2tpbGxDb21tZW50IG1pbmxpbmVzPTEwCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3NraWxsX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3NraWxsX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotCUhpTGluayBza2lsbGNkZkZ1bmN0aW9ucwlGdW5jdGlvbgotCUhpTGluayBza2lsbGdlRnVuY3Rpb25zCQlGdW5jdGlvbgotCUhpTGluayBza2lsbGhpRnVuY3Rpb25zCQlGdW5jdGlvbgotCUhpTGluayBza2lsbGxlRnVuY3Rpb25zCQlGdW5jdGlvbgotCUhpTGluayBza2lsbGRiZWZGdW5jdGlvbnMJRnVuY3Rpb24KLQlIaUxpbmsgc2tpbGxkZEZ1bmN0aW9ucwkJRnVuY3Rpb24KLQlIaUxpbmsgc2tpbGxwY0Z1bmN0aW9ucwkJRnVuY3Rpb24KLQlIaUxpbmsgc2tpbGx0ZWNoRnVuY3Rpb25zCUZ1bmN0aW9uCi0JSGlMaW5rIHNraWxsQ29uc3RhbnRzCQlDb25zdGFudAotCUhpTGluayBza2lsbEZ1bmN0aW9uCQlGdW5jdGlvbgotCUhpTGluayBza2lsbEtleXdvcmRzCQlTdGF0ZW1lbnQKLQlIaUxpbmsgc2tpbGxDb25kaXRpb25hbAkJQ29uZGl0aW9uYWwKLQlIaUxpbmsgc2tpbGxSZXBlYXQJCQlSZXBlYXQKLQlIaUxpbmsgc2tpbGxTdHJpbmcJCQlTdHJpbmcKLQlIaUxpbmsgc2tpbGxUb2RvCQkJVG9kbwotCUhpTGluayBza2lsbE5vdGUJCQlUb2RvCi0JSGlMaW5rIHNraWxsQ29tbWVudAkJCUNvbW1lbnQKLQlIaUxpbmsgc2tpbGxDb21tZW50RXJyb3IJRXJyb3IKK0hpTGluayBza2lsbGNkZkZ1bmN0aW9ucwlGdW5jdGlvbgorSGlMaW5rIHNraWxsZ2VGdW5jdGlvbnMJCUZ1bmN0aW9uCitIaUxpbmsgc2tpbGxoaUZ1bmN0aW9ucwkJRnVuY3Rpb24KK0hpTGluayBza2lsbGxlRnVuY3Rpb25zCQlGdW5jdGlvbgorSGlMaW5rIHNraWxsZGJlZkZ1bmN0aW9ucwlGdW5jdGlvbgorSGlMaW5rIHNraWxsZGRGdW5jdGlvbnMJCUZ1bmN0aW9uCitIaUxpbmsgc2tpbGxwY0Z1bmN0aW9ucwkJRnVuY3Rpb24KK0hpTGluayBza2lsbHRlY2hGdW5jdGlvbnMJRnVuY3Rpb24KK0hpTGluayBza2lsbENvbnN0YW50cwkJQ29uc3RhbnQKK0hpTGluayBza2lsbEZ1bmN0aW9uCQlGdW5jdGlvbgorSGlMaW5rIHNraWxsS2V5d29yZHMJCVN0YXRlbWVudAorSGlMaW5rIHNraWxsQ29uZGl0aW9uYWwJCUNvbmRpdGlvbmFsCitIaUxpbmsgc2tpbGxSZXBlYXQJCQlSZXBlYXQKK0hpTGluayBza2lsbFN0cmluZwkJCVN0cmluZworSGlMaW5rIHNraWxsVG9kbwkJCVRvZG8KK0hpTGluayBza2lsbE5vdGUJCQlUb2RvCitIaUxpbmsgc2tpbGxDb21tZW50CQkJQ29tbWVudAorSGlMaW5rIHNraWxsQ29tbWVudEVycm9yCUVycm9yCiAKLQlkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNraWxsIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zbC52aW0gYi9ydW50aW1lL3N5bnRheC9zbC52aW0KaW5kZXggZmEzYmNhMC4uYTQwZDQzZSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc2wudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NsLnZpbQpAQCAtMywxMSArMyw4IEBACiAiIE1haW50YWluZXI6CURhbiBQaXBvbmkgPGRhbkB0YW5lbG9ybi5kZW1vbi5jby51az4KICIgTGFzdCBDaGFuZ2U6CTIwMDEgTWF5IDA5CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC03NSw0NSArNzIsMzcgQEAKIHN5biBzeW5jIGNjb21tZW50IHNsQ29tbWVudCBtaW5saW5lcz0xMAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zbF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9zbF9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHNsTGFiZWwJTGFiZWwKLSAgSGlMaW5rIHNsVXNlckxhYmVsCUxhYmVsCi0gIEhpTGluayBzbENvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCi0gIEhpTGluayBzbFJlcGVhdAlSZXBlYXQKLSAgSGlMaW5rIHNsQ2hhcmFjdGVyCUNoYXJhY3RlcgotICBIaUxpbmsgc2xTcGVjaWFsQ2hhcmFjdGVyIHNsU3BlY2lhbAotICBIaUxpbmsgc2xOdW1iZXIJTnVtYmVyCi0gIEhpTGluayBzbEZsb2F0CUZsb2F0Ci0gIEhpTGluayBzbFBhcmVuRXJyb3IJc2xFcnJvcgotICBIaUxpbmsgc2xJblBhcmVuCXNsRXJyb3IKLSAgSGlMaW5rIHNsQ29tbWVudEVycm9yCXNsRXJyb3IKLSAgSGlMaW5rIHNsT3BlcmF0b3IJT3BlcmF0b3IKLSAgSGlMaW5rIHNsU3RvcmFnZUNsYXNzCVN0b3JhZ2VDbGFzcwotICBIaUxpbmsgc2xFcnJvcglFcnJvcgotICBIaUxpbmsgc2xTdGF0ZW1lbnQJU3RhdGVtZW50Ci0gIEhpTGluayBzbFR5cGUJCVR5cGUKLSAgSGlMaW5rIHNsQ29tbWVudEVycm9yCXNsRXJyb3IKLSAgSGlMaW5rIHNsQ29tbWVudFN0cmluZyBzbFN0cmluZwotICBIaUxpbmsgc2xDb21tZW50MlN0cmluZyBzbFN0cmluZwotICBIaUxpbmsgc2xDb21tZW50U2tpcAlzbENvbW1lbnQKLSAgSGlMaW5rIHNsU3RyaW5nCVN0cmluZwotICBIaUxpbmsgc2xDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIHNsU3BlY2lhbAlTcGVjaWFsQ2hhcgotICBIaUxpbmsgc2xUb2RvCVRvZG8KLSAgSGlMaW5rIHNsVmFyaWFibGUJSWRlbnRpZmllcgotICAiSGlMaW5rIHNsSWRlbnRpZmllcglJZGVudGlmaWVyCitIaUxpbmsgc2xMYWJlbAlMYWJlbAorSGlMaW5rIHNsVXNlckxhYmVsCUxhYmVsCitIaUxpbmsgc2xDb25kaXRpb25hbAlDb25kaXRpb25hbAorSGlMaW5rIHNsUmVwZWF0CVJlcGVhdAorSGlMaW5rIHNsQ2hhcmFjdGVyCUNoYXJhY3RlcgorSGlMaW5rIHNsU3BlY2lhbENoYXJhY3RlciBzbFNwZWNpYWwKK0hpTGluayBzbE51bWJlcglOdW1iZXIKK0hpTGluayBzbEZsb2F0CUZsb2F0CitIaUxpbmsgc2xQYXJlbkVycm9yCXNsRXJyb3IKK0hpTGluayBzbEluUGFyZW4Jc2xFcnJvcgorSGlMaW5rIHNsQ29tbWVudEVycm9yCXNsRXJyb3IKK0hpTGluayBzbE9wZXJhdG9yCU9wZXJhdG9yCitIaUxpbmsgc2xTdG9yYWdlQ2xhc3MJU3RvcmFnZUNsYXNzCitIaUxpbmsgc2xFcnJvcglFcnJvcgorSGlMaW5rIHNsU3RhdGVtZW50CVN0YXRlbWVudAorSGlMaW5rIHNsVHlwZQkJVHlwZQorSGlMaW5rIHNsQ29tbWVudEVycm9yCXNsRXJyb3IKK0hpTGluayBzbENvbW1lbnRTdHJpbmcgc2xTdHJpbmcKK0hpTGluayBzbENvbW1lbnQyU3RyaW5nIHNsU3RyaW5nCitIaUxpbmsgc2xDb21tZW50U2tpcAlzbENvbW1lbnQKK0hpTGluayBzbFN0cmluZwlTdHJpbmcKK0hpTGluayBzbENvbW1lbnQJQ29tbWVudAorSGlMaW5rIHNsU3BlY2lhbAlTcGVjaWFsQ2hhcgorSGlMaW5rIHNsVG9kbwlUb2RvCitIaUxpbmsgc2xWYXJpYWJsZQlJZGVudGlmaWVyCisiSGlMaW5rIHNsSWRlbnRpZmllcglJZGVudGlmaWVyCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJzbCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc2xhbmcudmltIGIvcnVudGltZS9zeW50YXgvc2xhbmcudmltCmluZGV4IDlmYTg5YjQuLjkzOGU4ZDUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NsYW5nLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zbGFuZy52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglKYW4gSGxhdmFjZWsgPGxhaHZha0BtYXRoLm9oaW8tc3RhdGUuZWR1PgogIiBMYXN0IENoYW5nZToJOTgwMjE2CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC01NSw0NyArNTIsMzkgQEAKIHN5biByZWdpb24gc2xhbmdQcmVDb25kaXQgc3RhcnQ9Il5ccyojXHMqXChpZmRlZlw+XHxpZm5kZWZcPlx8aWZ0cnVlXD5cfGlmbmZhbHNlXD5cfGlmZmFsc2VcPlx8aWZudHJ1ZVw+XHxpZlwkXHxpZm5cJFx8XHxlbGlmXD5cfGVsc2VcPlx8ZW5kaWZcPlwpIiBza2lwPSJcXCQiIGVuZD0iJCIgY29udGFpbnM9Y0NvbW1lbnQsc2xhbmdTdHJpbmcsc2xhbmdDaGFyYWN0ZXIsc2xhbmdOdW1iZXIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc2xhbmdfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfc2xhbmdfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBzbGFuZ0RlZmluaXRpb24JVHlwZQotICBIaUxpbmsgc2xhbmdCbG9jawkJc2xhbmdEZWZpbml0aW9uCi0gIEhpTGluayBzbGFuZ0xhYmVsCQlMYWJlbAotICBIaUxpbmsgc2xhbmdDb25kaXRpb25hbAlDb25kaXRpb25hbAotICBIaUxpbmsgc2xhbmdSZXBlYXQJCVJlcGVhdAotICBIaUxpbmsgc2xhbmdDaGFyYWN0ZXIJQ2hhcmFjdGVyCi0gIEhpTGluayBzbGFuZ0Zsb2F0CQlGbG9hdAotICBIaUxpbmsgc2xhbmdJbWFnaW5hcnkJRmxvYXQKLSAgSGlMaW5rIHNsYW5nRGVjaW1hbAkJc2xhbmdOdW1iZXIKLSAgSGlMaW5rIHNsYW5nT2N0YWwJCXNsYW5nTnVtYmVyCi0gIEhpTGluayBzbGFuZ0hleAkJc2xhbmdOdW1iZXIKLSAgSGlMaW5rIHNsYW5nTnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIHNsYW5nUGFyZW5FcnJvcglFcnJvcgotICBIaUxpbmsgc2xhbmdPY3RhbEVycm9yCUVycm9yCi0gIEhpTGluayBzbGFuZ09wZXJhdG9yCQlPcGVyYXRvcgotICBIaUxpbmsgc2xhbmdTdHJ1Y3R1cmUJU3RydWN0dXJlCi0gIEhpTGluayBzbGFuZ0luY2x1ZGUJCUluY2x1ZGUKLSAgSGlMaW5rIHNsYW5nUHJlQ29uZGl0CVByZUNvbmRpdAotICBIaUxpbmsgc2xhbmdFcnJvcgkJRXJyb3IKLSAgSGlMaW5rIHNsYW5nU3RhdGVtZW50CVN0YXRlbWVudAotICBIaUxpbmsgc2xhbmdUeXBlCQlUeXBlCi0gIEhpTGluayBzbGFuZ1N0cmluZwkJU3RyaW5nCi0gIEhpTGluayBzbGFuZ0NvbnN0YW50CQlDb25zdGFudAotICBIaUxpbmsgc2xhbmdSYW5nZUFycmF5CXNsYW5nQ29uc3RhbnQKLSAgSGlMaW5rIHNsYW5nQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgc2xhbmdTcGVjaWFsCQlTcGVjaWFsQ2hhcgotICBIaUxpbmsgc2xhbmdUb2RvCQlUb2RvCi0gIEhpTGluayBzbGFuZ0RlbGltCQlEZWxpbWl0ZXIKK0hpTGluayBzbGFuZ0RlZmluaXRpb24JVHlwZQorSGlMaW5rIHNsYW5nQmxvY2sJCXNsYW5nRGVmaW5pdGlvbgorSGlMaW5rIHNsYW5nTGFiZWwJCUxhYmVsCitIaUxpbmsgc2xhbmdDb25kaXRpb25hbAlDb25kaXRpb25hbAorSGlMaW5rIHNsYW5nUmVwZWF0CQlSZXBlYXQKK0hpTGluayBzbGFuZ0NoYXJhY3RlcglDaGFyYWN0ZXIKK0hpTGluayBzbGFuZ0Zsb2F0CQlGbG9hdAorSGlMaW5rIHNsYW5nSW1hZ2luYXJ5CUZsb2F0CitIaUxpbmsgc2xhbmdEZWNpbWFsCQlzbGFuZ051bWJlcgorSGlMaW5rIHNsYW5nT2N0YWwJCXNsYW5nTnVtYmVyCitIaUxpbmsgc2xhbmdIZXgJCXNsYW5nTnVtYmVyCitIaUxpbmsgc2xhbmdOdW1iZXIJCU51bWJlcgorSGlMaW5rIHNsYW5nUGFyZW5FcnJvcglFcnJvcgorSGlMaW5rIHNsYW5nT2N0YWxFcnJvcglFcnJvcgorSGlMaW5rIHNsYW5nT3BlcmF0b3IJCU9wZXJhdG9yCitIaUxpbmsgc2xhbmdTdHJ1Y3R1cmUJU3RydWN0dXJlCitIaUxpbmsgc2xhbmdJbmNsdWRlCQlJbmNsdWRlCitIaUxpbmsgc2xhbmdQcmVDb25kaXQJUHJlQ29uZGl0CitIaUxpbmsgc2xhbmdFcnJvcgkJRXJyb3IKK0hpTGluayBzbGFuZ1N0YXRlbWVudAlTdGF0ZW1lbnQKK0hpTGluayBzbGFuZ1R5cGUJCVR5cGUKK0hpTGluayBzbGFuZ1N0cmluZwkJU3RyaW5nCitIaUxpbmsgc2xhbmdDb25zdGFudAkJQ29uc3RhbnQKK0hpTGluayBzbGFuZ1JhbmdlQXJyYXkJc2xhbmdDb25zdGFudAorSGlMaW5rIHNsYW5nQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHNsYW5nU3BlY2lhbAkJU3BlY2lhbENoYXIKK0hpTGluayBzbGFuZ1RvZG8JCVRvZG8KK0hpTGluayBzbGFuZ0RlbGltCQlEZWxpbWl0ZXIKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNsYW5nIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zbGljZS52aW0gYi9ydW50aW1lL3N5bnRheC9zbGljZS52aW0KaW5kZXggNGUyZjlhOC4uMjAyYWVlNyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc2xpY2UudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NsaWNlLnZpbQpAQCAtMywxMSArMyw4IEBACiAiIE1haW50YWluZXI6CU1vcmVsIEJvZGluIDxzbGljZTA2QG55bS5odXNoLmNvbT4KICIgTGFzdCBDaGFuZ2U6CTIwMDUgRGVjIDAzCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC01OCwzMyArNTUsMjUgQEAKIHN5biBzeW5jIGNjb21tZW50IHNsaWNlQ29tbWVudAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zbGljZV9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9zbGljZV9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHNsaWNlQ29tbWVudAlDb21tZW50Ci0gIEhpTGluayBzbGljZUNvbnN0cnVjdAlLZXl3b3JkCi0gIEhpTGluayBzbGljZVR5cGUJVHlwZQotICBIaUxpbmsgc2xpY2VTdHJpbmcJU3RyaW5nCi0gIEhpTGluayBzbGljZUluY2x1ZGVkCVN0cmluZwotICBIaUxpbmsgc2xpY2VRdWFsaWZpZXIJS2V5d29yZAotICBIaUxpbmsgc2xpY2VJbmNsdWRlCUluY2x1ZGUKLSAgSGlMaW5rIHNsaWNlR3VhcmQJUHJlUHJvYwotICBIaUxpbmsgc2xpY2VCb29sZWFuCUJvb2xlYW4KLSAgSGlMaW5rIHNsaWNlRmxvYXQJTnVtYmVyCi0gIEhpTGluayBzbGljZU51bWJlcglOdW1iZXIKLSAgSGlMaW5rIHNsaWNlT2N0YWwJTnVtYmVyCi0gIEhpTGluayBzbGljZU9jdGFsWmVybwlTcGVjaWFsCi0gIEhpTGluayBzbGljZU51bWJlckVycm9yIFNwZWNpYWwKK0hpTGluayBzbGljZUNvbW1lbnQJQ29tbWVudAorSGlMaW5rIHNsaWNlQ29uc3RydWN0CUtleXdvcmQKK0hpTGluayBzbGljZVR5cGUJVHlwZQorSGlMaW5rIHNsaWNlU3RyaW5nCVN0cmluZworSGlMaW5rIHNsaWNlSW5jbHVkZWQJU3RyaW5nCitIaUxpbmsgc2xpY2VRdWFsaWZpZXIJS2V5d29yZAorSGlMaW5rIHNsaWNlSW5jbHVkZQlJbmNsdWRlCitIaUxpbmsgc2xpY2VHdWFyZAlQcmVQcm9jCitIaUxpbmsgc2xpY2VCb29sZWFuCUJvb2xlYW4KK0hpTGluayBzbGljZUZsb2F0CU51bWJlcgorSGlMaW5rIHNsaWNlTnVtYmVyCU51bWJlcgorSGlMaW5rIHNsaWNlT2N0YWwJTnVtYmVyCitIaUxpbmsgc2xpY2VPY3RhbFplcm8JU3BlY2lhbAorSGlMaW5rIHNsaWNlTnVtYmVyRXJyb3IgU3BlY2lhbAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic2xpY2UiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Nscm5yYy52aW0gYi9ydW50aW1lL3N5bnRheC9zbHJucmMudmltCmluZGV4IDAzOGI2MmUuLmE1NTQzOWEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Nscm5yYy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2xybnJjLnZpbQpAQCAtMywxMSArMyw4IEBACiAiIE1haW50YWluZXI6CVByZWJlbiAnUGVwcGUnIEd1bGRiZXJnIDxwZXBwZS12aW1Ad2llbGRlcnMub3JnPgogIiBMYXN0IENoYW5nZToJMjMgQXByaWwgMjAwNgogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTUwLDQ0ICsxNDcsMzYgQEAKIHN5biBtYXRjaCAgIHNscm5yY1Vuc2V0a2V5CSdeXHMqdW5zZXRrZXlcc1wrXCgiXClcPVwoYXJ0aWNsZVx8Z3JvdXBcfHJlYWRsaW5lXClcPlwxJyBza2lwd2hpdGUgbmV4dGdyb3VwPXNscm5yY0tleSBjb250YWlucz1zbHJucmNTZXRrZXlPYmpcKFN0clwpXD0KIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc2xybnJjX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3Nscm5yY19zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHNscm5yY1RvZG8JCVRvZG8KLSAgSGlMaW5rIHNscm5yY1NwYWNlRXJyb3IJRXJyb3IKLSAgSGlMaW5rIHNscm5yY051bWJlcgkJTnVtYmVyCi0gIEhpTGluayBzbHJucmNTcGVjS2V5CQlTcGVjaWFsQ2hhcgotICBIaUxpbmsgc2xybnJjS2V5CQlTdHJpbmcKLSAgSGlMaW5rIHNscm5yY1NwZWNDaGFyCQlTcGVjaWFsQ2hhcgotICBIaUxpbmsgc2xybnJjU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIHNscm5TbGFuZ1ByZUNvbmRpdAlTcGVjaWFsCi0gIEhpTGluayBzbHJucmNDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBzbHJucmNWYXJJbnQJCUlkZW50aWZpZXIKLSAgSGlMaW5rIHNscm5yY1ZhclN0cgkJSWRlbnRpZmllcgotICBIaUxpbmsgc2xybnJjQ21kCQlzbHJucmNTZXQKLSAgSGlMaW5rIHNscm5yY1NldAkJT3BlcmF0b3IKLSAgSGlMaW5rIHNscm5yY0NvbG9yCQlLZXl3b3JkCi0gIEhpTGluayBzbHJucmNDb2xvck9iagkJSWRlbnRpZmllcgotICBIaUxpbmsgc2xybnJjQ29sb3JWYWwJCVN0cmluZwotICBIaUxpbmsgc2xybnJjTW9ubwkJS2V5d29yZAotICBIaUxpbmsgc2xybnJjTW9ub09iagkJSWRlbnRpZmllcgotICBIaUxpbmsgc2xybnJjTW9ub1ZhbAkJU3RyaW5nCi0gIEhpTGluayBzbHJucmNGdW5BcnQJCU1hY3JvCi0gIEhpTGluayBzbHJucmNGdW5Hcm91cAkJTWFjcm8KLSAgSGlMaW5rIHNscm5yY0Z1blJlYWQJCU1hY3JvCi0gIEhpTGluayBzbHJucmNTZXRrZXlPYmoJSWRlbnRpZmllcgotICBIaUxpbmsgc2xybnJjU2V0a2V5CQlLZXl3b3JkCi0gIEhpTGluayBzbHJucmNVbnNldGtleQkJc2xybnJjU2V0a2V5CitIaUxpbmsgc2xybnJjVG9kbwkJVG9kbworSGlMaW5rIHNscm5yY1NwYWNlRXJyb3IJRXJyb3IKK0hpTGluayBzbHJucmNOdW1iZXIJCU51bWJlcgorSGlMaW5rIHNscm5yY1NwZWNLZXkJCVNwZWNpYWxDaGFyCitIaUxpbmsgc2xybnJjS2V5CQlTdHJpbmcKK0hpTGluayBzbHJucmNTcGVjQ2hhcgkJU3BlY2lhbENoYXIKK0hpTGluayBzbHJucmNTdHJpbmcJCVN0cmluZworSGlMaW5rIHNscm5TbGFuZ1ByZUNvbmRpdAlTcGVjaWFsCitIaUxpbmsgc2xybnJjQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHNscm5yY1ZhckludAkJSWRlbnRpZmllcgorSGlMaW5rIHNscm5yY1ZhclN0cgkJSWRlbnRpZmllcgorSGlMaW5rIHNscm5yY0NtZAkJc2xybnJjU2V0CitIaUxpbmsgc2xybnJjU2V0CQlPcGVyYXRvcgorSGlMaW5rIHNscm5yY0NvbG9yCQlLZXl3b3JkCitIaUxpbmsgc2xybnJjQ29sb3JPYmoJCUlkZW50aWZpZXIKK0hpTGluayBzbHJucmNDb2xvclZhbAkJU3RyaW5nCitIaUxpbmsgc2xybnJjTW9ubwkJS2V5d29yZAorSGlMaW5rIHNscm5yY01vbm9PYmoJCUlkZW50aWZpZXIKK0hpTGluayBzbHJucmNNb25vVmFsCQlTdHJpbmcKK0hpTGluayBzbHJucmNGdW5BcnQJCU1hY3JvCitIaUxpbmsgc2xybnJjRnVuR3JvdXAJCU1hY3JvCitIaUxpbmsgc2xybnJjRnVuUmVhZAkJTWFjcm8KK0hpTGluayBzbHJucmNTZXRrZXlPYmoJSWRlbnRpZmllcgorSGlMaW5rIHNscm5yY1NldGtleQkJS2V5d29yZAorSGlMaW5rIHNscm5yY1Vuc2V0a2V5CQlzbHJucmNTZXRrZXkKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNscm5yYyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc2xybnNjLnZpbSBiL3J1bnRpbWUvc3ludGF4L3Nscm5zYy52aW0KaW5kZXggODM4YWY2YS4uYTVkZmE1NSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc2xybnNjLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zbHJuc2MudmltCkBAIC0zLDIwICszLDEzIEBACiAiIE1haW50YWluZXI6CVByZWJlbiAnUGVwcGUnIEd1bGRiZXJnIDxwZXBwZUB3aWVsZGVycy5vcmc+CiAiIExhc3QgQ2hhbmdlOgk4IE9jdCAyMDA0CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCiAiIGNoYXJhY3RlcnMgaW4gbmV3c2dyb3VwIG5hbWVzCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNldCBpc2s9QCw0OC01NywuLC0sXywrCi1lbHNlCi0gIHNldGxvY2FsIGlzaz1ALDQ4LTU3LC4sLSxfLCsKLWVuZGlmCitzZXRsb2NhbCBpc2s9QCw0OC01NywuLC0sXywrCiAKIHN5biBtYXRjaCBzbHJuc2NDb21tZW50CQkiJS4qJCIKIHN5biBtYXRjaCBzbHJuc2NTZWN0aW9uQ29tCSIuXS4qImxjPTIKQEAgLTUxLDM0ICs0NCwyNiBAQAogc3luIG1hdGNoIHNscm5TY29yZUxpbmUJCSJeXHMqU2NvcmU6Olw9XHNcKz1cPVstK11cPVxkXCtccypcKCUuKlwpXD0kIiBza2lwZW1wdHkgbmV4dGdyb3VwPXNscm5zY1Njb3JlSXRlbSBjb250YWlucz1zbHJuc2NTY29yZSxzbHJuc2NEZWxpbSxzbHJuc2NPcGVyLHNscm5zY051bWJlcixzbHJuc2NTY29yZUlkZW50CiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3Nscm5zY19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9zbHJuc2Nfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBzbHJuc2NDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBzbHJuc2NTZWN0aW9uQ29tCXNscm5zY0NvbW1lbnQKLSAgSGlMaW5rIHNscm5zY0dyb3VwCQlTdHJpbmcKLSAgSGlMaW5rIHNscm5zY051bWJlcgkJTnVtYmVyCi0gIEhpTGluayBzbHJuc2NEYXRlCQlTcGVjaWFsCi0gIEhpTGluayBzbHJuc2NEZWxpbQkJRGVsaW1pdGVyCi0gIEhpTGluayBzbHJuc2NDb21tYQkJU3BlY2lhbENoYXIKLSAgSGlMaW5rIHNscm5zY09wZXIJCVNwZWNpYWxDaGFyCi0gIEhpTGluayBzbHJuc2NFc2MJCVN0cmluZwotICBIaUxpbmsgc2xybnNjU2VjdGlvblN0ZAlUeXBlCi0gIEhpTGluayBzbHJuc2NTZWN0aW9uTm90CURlbGltaXRlcgotICBIaUxpbmsgc2xybnNjSXRlbQkJU3RhdGVtZW50Ci0gIEhpTGluayBzbHJuc2NTY29yZQkJS2V5d29yZAotICBIaUxpbmsgc2xybnNjU2NvcmVJZGVudAlJZGVudGlmaWVyCi0gIEhpTGluayBzbHJuc2NJbmNsdWRlCQlLZXl3b3JkCitIaUxpbmsgc2xybnNjQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHNscm5zY1NlY3Rpb25Db20Jc2xybnNjQ29tbWVudAorSGlMaW5rIHNscm5zY0dyb3VwCQlTdHJpbmcKK0hpTGluayBzbHJuc2NOdW1iZXIJCU51bWJlcgorSGlMaW5rIHNscm5zY0RhdGUJCVNwZWNpYWwKK0hpTGluayBzbHJuc2NEZWxpbQkJRGVsaW1pdGVyCitIaUxpbmsgc2xybnNjQ29tbWEJCVNwZWNpYWxDaGFyCitIaUxpbmsgc2xybnNjT3BlcgkJU3BlY2lhbENoYXIKK0hpTGluayBzbHJuc2NFc2MJCVN0cmluZworSGlMaW5rIHNscm5zY1NlY3Rpb25TdGQJVHlwZQorSGlMaW5rIHNscm5zY1NlY3Rpb25Ob3QJRGVsaW1pdGVyCitIaUxpbmsgc2xybnNjSXRlbQkJU3RhdGVtZW50CitIaUxpbmsgc2xybnNjU2NvcmUJCUtleXdvcmQKK0hpTGluayBzbHJuc2NTY29yZUlkZW50CUlkZW50aWZpZXIKK0hpTGluayBzbHJuc2NJbmNsdWRlCQlLZXl3b3JkCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJzbHJuc2MiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NtLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NtLnZpbQppbmRleCA4ZmRjMTRiLi4zM2E2NzcyIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zbS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc20udmltCkBAIC01NiwzNiArNTYsMjggQEAKIHN5biByZWdpb24gc21DbGF1c2UJbWF0Y2hncm91cD1EZWxpbWl0ZXIgc3RhcnQ9IlwkPy4iIG1hdGNoZ3JvdXA9RGVsaW1pdGVyIGVuZD0iXCRcLiIgY29udGFpbnM9c21FbHNlLHNtQ2xhdXNlLHNtVmFyLHNtQ2xhdXNlQ29udAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zbWlsX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3NtaWxfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBzbUNsYXVzZQlTcGVjaWFsCi0gIEhpTGluayBzbUNsYXVzZUVycm9yCUVycm9yCi0gIEhpTGluayBzbUNvbW1lbnQJQ29tbWVudAotICBIaUxpbmsgc21EZWZpbmUJU3RhdGVtZW50Ci0gIEhpTGluayBzbUVsc2UJCURlbGltaXRlcgotICBIaUxpbmsgc21IZWFkZXIJU3RhdGVtZW50Ci0gIEhpTGluayBzbUhlYWRlclNlcAlTdHJpbmcKLSAgSGlMaW5rIHNtTWVzZwkJU3BlY2lhbAotICBIaUxpbmsgc21QcmVjZWRlbmNlCU51bWJlcgotICBIaUxpbmsgc21SZXdyaXRlCVN0YXRlbWVudAotICBIaUxpbmsgc21SZXdyaXRlQ29tbWVudAlDb21tZW50Ci0gIEhpTGluayBzbVJld3JpdGVMaHNUb2tlbglTdHJpbmcKLSAgSGlMaW5rIHNtUmV3cml0ZUxoc1VzZXIJU3RhdGVtZW50Ci0gIEhpTGluayBzbVJld3JpdGVSaHNUb2tlbglTdHJpbmcKLSAgSGlMaW5rIHNtUnVsZXNldAlQcmVwcm9jCi0gIEhpTGluayBzbVRydXN0ZWQJU3BlY2lhbAotICBIaUxpbmsgc21WYXIJCVN0cmluZworSGlMaW5rIHNtQ2xhdXNlCVNwZWNpYWwKK0hpTGluayBzbUNsYXVzZUVycm9yCUVycm9yCitIaUxpbmsgc21Db21tZW50CUNvbW1lbnQKK0hpTGluayBzbURlZmluZQlTdGF0ZW1lbnQKK0hpTGluayBzbUVsc2UJCURlbGltaXRlcgorSGlMaW5rIHNtSGVhZGVyCVN0YXRlbWVudAorSGlMaW5rIHNtSGVhZGVyU2VwCVN0cmluZworSGlMaW5rIHNtTWVzZwkJU3BlY2lhbAorSGlMaW5rIHNtUHJlY2VkZW5jZQlOdW1iZXIKK0hpTGluayBzbVJld3JpdGUJU3RhdGVtZW50CitIaUxpbmsgc21SZXdyaXRlQ29tbWVudAlDb21tZW50CitIaUxpbmsgc21SZXdyaXRlTGhzVG9rZW4JU3RyaW5nCitIaUxpbmsgc21SZXdyaXRlTGhzVXNlcglTdGF0ZW1lbnQKK0hpTGluayBzbVJld3JpdGVSaHNUb2tlbglTdHJpbmcKK0hpTGluayBzbVJ1bGVzZXQJUHJlcHJvYworSGlMaW5rIHNtVHJ1c3RlZAlTcGVjaWFsCitIaUxpbmsgc21WYXIJCVN0cmluZwogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic20iCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NtYXJ0eS52aW0gYi9ydW50aW1lL3N5bnRheC9zbWFydHkudmltCmluZGV4IDZkZGEzNjYuLmFiOGU4NWQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NtYXJ0eS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc21hcnR5LnZpbQpAQCAtOCwxMSArOCwxMCBAQAogIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKICIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKIGlmICFleGlzdHMoIm1haW5fc3ludGF4IikKLSAgaWYgdmVyc2lvbiA8IDYwMAotICAgIHN5bnRheCBjbGVhcgotICBlbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKLSAgZmluaXNoCi1lbmRpZgorICAiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAorICBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorICAgIGZpbmlzaAorICBlbmRpZgogICBsZXQgbWFpbl9zeW50YXggPSAnc21hcnR5JwogZW5kaWYKIApAQCAtNTcsMjUgKzU2LDE4IEBACiAgIHN5biByZWdpb24gaHRtbExpbmsgc3RhcnQ9IjxhXD5cX1tePl0qXDxocmVmXD4iIGVuZD0iPC9hPiJtZT1lLTQgY29udGFpbnM9QFNwZWxsLGh0bWxUYWcsaHRtbEVuZFRhZyxodG1sU3BlY2lhbENoYXIsaHRtbFByZVByb2MsaHRtbENvbW1lbnQsamF2YVNjcmlwdCxAaHRtbFByZXByb2Msc21hcnR5Wm9uZQogCiAKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zbWFydHlfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfc21hcnR5X3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgc21hcnR5VGFnTmFtZSBJZGVudGlmaWVyCi0gIEhpTGluayBzbWFydHlQcm9wZXJ0eSBDb25zdGFudAotICAiIGlmIHlvdSB3YW50IHRoZSB0ZXh0IGluc2lkZSB0aGUgYnJhY2VzIHRvIGJlIGNvbG9yZWQsIHRoZW4KLSAgIiByZW1vdmUgdGhlIGNvbW1lbnQgaW4gZnJvbSBvZiB0aGUgbmV4dCBzdGF0ZW1lbnQKLSAgIkhpTGluayBzbWFydHlab25lIEluY2x1ZGUKLSAgSGlMaW5rIHNtYXJ0eUluRnVuYyBGdW5jdGlvbgotICBIaUxpbmsgc21hcnR5QmxvY2sgQ29uc3RhbnQKLSAgSGlMaW5rIHNtYXJ0eURvdCBTcGVjaWFsQ2hhcgotICBIaUxpbmsgc21hcnR5TW9kaWZpZXIgRnVuY3Rpb24KLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitIaUxpbmsgc21hcnR5VGFnTmFtZSBJZGVudGlmaWVyCitIaUxpbmsgc21hcnR5UHJvcGVydHkgQ29uc3RhbnQKKyIgaWYgeW91IHdhbnQgdGhlIHRleHQgaW5zaWRlIHRoZSBicmFjZXMgdG8gYmUgY29sb3JlZCwgdGhlbgorIiByZW1vdmUgdGhlIGNvbW1lbnQgaW4gZnJvbSBvZiB0aGUgbmV4dCBzdGF0ZW1lbnQKKyJIaUxpbmsgc21hcnR5Wm9uZSBJbmNsdWRlCitIaUxpbmsgc21hcnR5SW5GdW5jIEZ1bmN0aW9uCitIaUxpbmsgc21hcnR5QmxvY2sgQ29uc3RhbnQKK0hpTGluayBzbWFydHlEb3QgU3BlY2lhbENoYXIKK0hpTGluayBzbWFydHlNb2RpZmllciBGdW5jdGlvbgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic21hcnR5IgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zbWNsLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NtY2wudmltCmluZGV4IGQ5YWZiYTYuLmE1YmFhNDcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NtY2wudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NtY2wudmltCkBAIC0xMCw5ICsxMCw4IEBACiAiCQljaGVjayBmb3IgJ2I6Y3VycmVudF9zeW50YXgnLCByZW1vdmVkICdkaWRfc21jbF9zeW50YXhfaW5pdHMnCiAiIDI2YXByMjAwNgljaGFuZ2VkICdzdGF0YV9zbWNsJyB0byAnc21jbCcKIAotaWYgdmVyc2lvbiA8IDYwMAotCXN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKIAlmaW5pc2gKIGVuZGlmCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NtaWwudmltIGIvcnVudGltZS9zeW50YXgvc21pbC52aW0KaW5kZXggNmI1YTAwMi4uODQ4MjYzMiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc21pbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc21pbC52aW0KQEAgLTcsMTEgKzcsOCBAQAogIiBUbyBsZWFybiBtb3JlIGFib3V0IFNNSUwsIHBsZWFzZSByZWZlciB0byBodHRwOi8vd3d3LnczLm9yZy9BdWRpb1ZpZGVvLwogIiBhbmQgdG8gaHR0cDovL3d3dy5oZWxpby5vcmcvcHJvZHVjdHMvc21pbC90dXRvcmlhbC8KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTExNSwzOCArMTEyLDMwIEBACiBzeW4gcmVnaW9uIHNtaWxDb21tZW50CQkgICAgICBzdGFydD0rPCFET0NUWVBFKyBrZWVwZW5kIGVuZD0rPisKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc21pbF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9zbWlsX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgc21pbFRhZwkJCUZ1bmN0aW9uCi0gIEhpTGluayBzbWlsRW5kVGFnCQkJSWRlbnRpZmllcgotICBIaUxpbmsgc21pbEFyZwkJCVR5cGUKLSAgSGlMaW5rIHNtaWxUYWdOYW1lCQkJc21pbFN0YXRlbWVudAotICBIaUxpbmsgc21pbFNwZWNpYWxUYWdOYW1lCQlFeGNlcHRpb24KLSAgSGlMaW5rIHNtaWxWYWx1ZQkJCVZhbHVlCi0gIEhpTGluayBzbWlsU3BlY2lhbENoYXIJCVNwZWNpYWwKK0hpTGluayBzbWlsVGFnCQkJRnVuY3Rpb24KK0hpTGluayBzbWlsRW5kVGFnCQkJSWRlbnRpZmllcgorSGlMaW5rIHNtaWxBcmcJCQlUeXBlCitIaUxpbmsgc21pbFRhZ05hbWUJCQlzbWlsU3RhdGVtZW50CitIaUxpbmsgc21pbFNwZWNpYWxUYWdOYW1lCQlFeGNlcHRpb24KK0hpTGluayBzbWlsVmFsdWUJCQlWYWx1ZQorSGlMaW5rIHNtaWxTcGVjaWFsQ2hhcgkJU3BlY2lhbAogCi0gIEhpTGluayBzbWlsU3BlY2lhbAkJCVNwZWNpYWwKLSAgSGlMaW5rIHNtaWxTcGVjaWFsQ2hhcgkJU3BlY2lhbAotICBIaUxpbmsgc21pbFN0cmluZwkJCVN0cmluZwotICBIaUxpbmsgc21pbFN0YXRlbWVudAkJCVN0YXRlbWVudAotICBIaUxpbmsgc21pbENvbW1lbnQJCQlDb21tZW50Ci0gIEhpTGluayBzbWlsQ29tbWVudFBhcnQJCUNvbW1lbnQKLSAgSGlMaW5rIHNtaWxQcmVQcm9jCQkJUHJlUHJvYwotICBIaUxpbmsgc21pbFZhbHVlCQkJU3RyaW5nCi0gIEhpTGluayBzbWlsQ29tbWVudEVycm9yCQlzbWlsRXJyb3IKLSAgSGlMaW5rIHNtaWxUYWdFcnJvcgkJCXNtaWxFcnJvcgotICBIaUxpbmsgc21pbEVycm9yCQkJRXJyb3IKK0hpTGluayBzbWlsU3BlY2lhbAkJCVNwZWNpYWwKK0hpTGluayBzbWlsU3BlY2lhbENoYXIJCVNwZWNpYWwKK0hpTGluayBzbWlsU3RyaW5nCQkJU3RyaW5nCitIaUxpbmsgc21pbFN0YXRlbWVudAkJCVN0YXRlbWVudAorSGlMaW5rIHNtaWxDb21tZW50CQkJQ29tbWVudAorSGlMaW5rIHNtaWxDb21tZW50UGFydAkJQ29tbWVudAorSGlMaW5rIHNtaWxQcmVQcm9jCQkJUHJlUHJvYworSGlMaW5rIHNtaWxWYWx1ZQkJCVN0cmluZworSGlMaW5rIHNtaWxDb21tZW50RXJyb3IJCXNtaWxFcnJvcgorSGlMaW5rIHNtaWxUYWdFcnJvcgkJCXNtaWxFcnJvcgorSGlMaW5rIHNtaWxFcnJvcgkJCUVycm9yCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJzbWlsIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zbWl0aC52aW0gYi9ydW50aW1lL3N5bnRheC9zbWl0aC52aW0KaW5kZXggZTA1Y2U2OS4uODI0Mjk2OSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc21pdGgudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NtaXRoLnZpbQpAQCAtMywxMSArMyw4IEBACiAiIE1haW50YWluZXI6CVJhZmFsIE0uIFN1bGVqbWFuIDxybXNAcG9jenRhLm9uZXQucGw+CiAiIExhc3QgQ2hhbmdlOgkyMS4wNy4yMDAwCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0yOCwyNCArMjUsMTYgQEAKIHN5biBjYXNlIG1hdGNoCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3NtaXRoX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3NtaXRoX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgc21pdGhSZWdpc3RlcglJZGVudGlmaWVyCi0gIEhpTGluayBzbWl0aEtleXdvcmQJS2V5d29yZAotCUhpTGluayBzbWl0aENvbW1lbnQgQ29tbWVudAotCUhpTGluayBzbWl0aFN0cmluZyBTdHJpbmcKLSAgSGlMaW5rIHNtaXRoTnVtYmVyCU51bWJlcgorSGlMaW5rIHNtaXRoUmVnaXN0ZXIJSWRlbnRpZmllcgorSGlMaW5rIHNtaXRoS2V5d29yZAlLZXl3b3JkCitIaUxpbmsgc21pdGhDb21tZW50IENvbW1lbnQKK0hpTGluayBzbWl0aFN0cmluZyBTdHJpbmcKK0hpTGluayBzbWl0aE51bWJlcglOdW1iZXIKIAotCWRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic21pdGgiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NtbC52aW0gYi9ydW50aW1lL3N5bnRheC9zbWwudmltCmluZGV4IGFhN2Q2NGEuLjAxZDQ5NGQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NtbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc21sLnZpbQpAQCAtOCwxMSArOCw4IEBACiAiICAgICAgICAgICAgICAgMjAwMiBKdW4gMDIgLSBGaXhlZCBzbWFsbCB0eXBvICAoTU0pCiAiICAgICAgICAgICAgICAgMjAwMSBOb3YgMjAgLSBGaXhlZCBzbWFsbCBoaWdobGlnaHRpbmcgYnVnIHdpdGggbW9kdWxlcyAoTU0pCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xNjgsNjIgKzE2NSw1NCBAQAogc3luIHN5bmMgbWF0Y2ggc21sU2lnU3luYyAgICAgZ3JvdXB0aGVyZSBzbWxTaWcgICAgICJcPGVuZFw+IgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zbWxfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfc21sX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgc21sQnJhY2VFcnIJIEVycm9yCi0gIEhpTGluayBzbWxCcmFja0VycgkgRXJyb3IKLSAgSGlMaW5rIHNtbFBhcmVuRXJyCSBFcnJvcgorSGlMaW5rIHNtbEJyYWNlRXJyCSBFcnJvcgorSGlMaW5rIHNtbEJyYWNrRXJyCSBFcnJvcgorSGlMaW5rIHNtbFBhcmVuRXJyCSBFcnJvcgogCi0gIEhpTGluayBzbWxDb21tZW50RXJyCSBFcnJvcgorSGlMaW5rIHNtbENvbW1lbnRFcnIJIEVycm9yCiAKLSAgSGlMaW5rIHNtbEVuZEVycgkgRXJyb3IKLSAgSGlMaW5rIHNtbFRoZW5FcnIJIEVycm9yCitIaUxpbmsgc21sRW5kRXJyCSBFcnJvcgorSGlMaW5rIHNtbFRoZW5FcnIJIEVycm9yCiAKLSAgSGlMaW5rIHNtbENoYXJFcnIJIEVycm9yCitIaUxpbmsgc21sQ2hhckVycgkgRXJyb3IKIAotICBIaUxpbmsgc21sQ29tbWVudAkgQ29tbWVudAorSGlMaW5rIHNtbENvbW1lbnQJIENvbW1lbnQKIAotICBIaUxpbmsgc21sTW9kUGF0aAkgSW5jbHVkZQotICBIaUxpbmsgc21sTW9kdWxlCSBJbmNsdWRlCi0gIEhpTGluayBzbWxNb2RQYXJhbTEJIEluY2x1ZGUKLSAgSGlMaW5rIHNtbE1vZFR5cGUJIEluY2x1ZGUKLSAgSGlMaW5rIHNtbE1QUmVzdHIzCSBJbmNsdWRlCi0gIEhpTGluayBzbWxGdWxsTW9kCSBJbmNsdWRlCi0gIEhpTGluayBzbWxNb2RUeXBlUmVzdHIgSW5jbHVkZQotICBIaUxpbmsgc21sV2l0aAkgSW5jbHVkZQotICBIaUxpbmsgc21sTVREZWYJIEluY2x1ZGUKK0hpTGluayBzbWxNb2RQYXRoCSBJbmNsdWRlCitIaUxpbmsgc21sTW9kdWxlCSBJbmNsdWRlCitIaUxpbmsgc21sTW9kUGFyYW0xCSBJbmNsdWRlCitIaUxpbmsgc21sTW9kVHlwZQkgSW5jbHVkZQorSGlMaW5rIHNtbE1QUmVzdHIzCSBJbmNsdWRlCitIaUxpbmsgc21sRnVsbE1vZAkgSW5jbHVkZQorSGlMaW5rIHNtbE1vZFR5cGVSZXN0ciBJbmNsdWRlCitIaUxpbmsgc21sV2l0aAkgSW5jbHVkZQorSGlMaW5rIHNtbE1URGVmCSBJbmNsdWRlCiAKLSAgSGlMaW5rIHNtbENvbnN0cnVjdG9yICBDb25zdGFudAorSGlMaW5rIHNtbENvbnN0cnVjdG9yICBDb25zdGFudAogCi0gIEhpTGluayBzbWxNb2RQcmVSSFMJIEtleXdvcmQKLSAgSGlMaW5rIHNtbE1QUmVzdHIyCSBLZXl3b3JkCi0gIEhpTGluayBzbWxLZXl3b3JkCSBLZXl3b3JkCi0gIEhpTGluayBzbWxGdW5EZWYJIEtleXdvcmQKLSAgSGlMaW5rIHNtbFJlZkFzc2lnbgkgS2V5d29yZAotICBIaUxpbmsgc21sS2V5Q2hhcgkgS2V5d29yZAotICBIaUxpbmsgc21sQW55VmFyCSBLZXl3b3JkCi0gIEhpTGluayBzbWxUb3BTdG9wCSBLZXl3b3JkCi0gIEhpTGluayBzbWxPcGVyYXRvcgkgS2V5d29yZAorSGlMaW5rIHNtbE1vZFByZVJIUwkgS2V5d29yZAorSGlMaW5rIHNtbE1QUmVzdHIyCSBLZXl3b3JkCitIaUxpbmsgc21sS2V5d29yZAkgS2V5d29yZAorSGlMaW5rIHNtbEZ1bkRlZgkgS2V5d29yZAorSGlMaW5rIHNtbFJlZkFzc2lnbgkgS2V5d29yZAorSGlMaW5rIHNtbEtleUNoYXIJIEtleXdvcmQKK0hpTGluayBzbWxBbnlWYXIJIEtleXdvcmQKK0hpTGluayBzbWxUb3BTdG9wCSBLZXl3b3JkCitIaUxpbmsgc21sT3BlcmF0b3IJIEtleXdvcmQKIAotICBIaUxpbmsgc21sQm9vbGVhbgkgQm9vbGVhbgotICBIaUxpbmsgc21sQ2hhcmFjdGVyCSBDaGFyYWN0ZXIKLSAgSGlMaW5rIHNtbE51bWJlcgkgTnVtYmVyCi0gIEhpTGluayBzbWxSZWFsCSBGbG9hdAotICBIaUxpbmsgc21sU3RyaW5nCSBTdHJpbmcKLSAgSGlMaW5rIHNtbFR5cGUJIFR5cGUKLSAgSGlMaW5rIHNtbFRvZG8JIFRvZG8KLSAgSGlMaW5rIHNtbEVuY2wJIEtleXdvcmQKK0hpTGluayBzbWxCb29sZWFuCSBCb29sZWFuCitIaUxpbmsgc21sQ2hhcmFjdGVyCSBDaGFyYWN0ZXIKK0hpTGluayBzbWxOdW1iZXIJIE51bWJlcgorSGlMaW5rIHNtbFJlYWwJIEZsb2F0CitIaUxpbmsgc21sU3RyaW5nCSBTdHJpbmcKK0hpTGluayBzbWxUeXBlCSBUeXBlCitIaUxpbmsgc21sVG9kbwkgVG9kbworSGlMaW5rIHNtbEVuY2wJIEtleXdvcmQKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNtbCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc25uc25ldC52aW0gYi9ydW50aW1lL3N5bnRheC9zbm5zbmV0LnZpbQppbmRleCA2YjI0ZGU1Li5jNzM4OTFlIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zbm5zbmV0LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zbm5zbmV0LnZpbQpAQCAtOCw5ICs4LDggQEAKICIgU05OUyBodHRwOi8vd3d3LXJhLmluZm9ybWF0aWsudW5pLXR1ZWJpbmdlbi5kZS9TTk5TLwogIiBpcyBhIHNpbXVsYXRvciBmb3IgbmV1cmFsIG5ldHdvcmtzLgogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC01NCwyMyArNTMsMTYgQEAKIHN5biBtYXRjaAlzbm5zbmV0Q29tbWVudAkiIy4qJCIgY29udGFpbnM9c25uc25ldFRvZG8KIHN5biBrZXl3b3JkCXNubnNuZXRUb2RvCVRPRE8gWFhYIEZJWE1FIGNvbnRhaW5lZAogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc25uc25ldF9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9zbm5zbmV0X3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgc25uc25ldFR5cGUJCVR5cGUKLSAgSGlMaW5rIHNubnNuZXRDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBzbm5zbmV0TnVtYmVycwkJTnVtYmVyCi0gIEhpTGluayBzbm5zbmV0U2VjdGlvbgkJU3RhdGVtZW50Ci0gIEhpTGluayBzbm5zbmV0VGl0bGUJCUxhYmVsCi0gIEhpTGluayBzbm5zbmV0VG9kbwkJVG9kbworSGlMaW5rIHNubnNuZXRUeXBlCQlUeXBlCitIaUxpbmsgc25uc25ldENvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBzbm5zbmV0TnVtYmVycwkJTnVtYmVyCitIaUxpbmsgc25uc25ldFNlY3Rpb24JCVN0YXRlbWVudAorSGlMaW5rIHNubnNuZXRUaXRsZQkJTGFiZWwKK0hpTGluayBzbm5zbmV0VG9kbwkJVG9kbwogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic25uc25ldCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc25uc3BhdC52aW0gYi9ydW50aW1lL3N5bnRheC9zbm5zcGF0LnZpbQppbmRleCA1YmZhNDhlLi5mZmM0Y2FlIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zbm5zcGF0LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zbm5zcGF0LnZpbQpAQCAtOCw5ICs4LDggQEAKICIgU05OUyBodHRwOi8vd3d3LXJhLmluZm9ybWF0aWsudW5pLXR1ZWJpbmdlbi5kZS9TTk5TLwogIiBpcyBhIHNpbXVsYXRvciBmb3IgbmV1cmFsIG5ldHdvcmtzLgogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC00NCwyNiArNDMsMTkgQEAKIHN5biBtYXRjaAlzbm5zcGF0Q29tbWVudAkiIy4qJCIgY29udGFpbnM9c25uc3BhdFRvZG8KIHN5biBrZXl3b3JkCXNubnNwYXRUb2RvCVRPRE8gWFhYIEZJWE1FIGNvbnRhaW5lZAogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc25uc3BhdF9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9zbm5zcGF0X3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgc25uc3BhdEdlbgkJU3RhdGVtZW50Ci0gIEhpTGluayBzbm5zcGF0SGVhZGVyCQlFcnJvcgotICBIaUxpbmsgc25uc3BhdE5vSGVhZGVyCURlZmluZQotICBIaUxpbmsgc25uc3BhdE51bWJlcnMJCU51bWJlcgotICBIaUxpbmsgc25uc3BhdENvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIHNubnNwYXRFcnJvcgkJRXJyb3IKLSAgSGlMaW5rIHNubnNwYXRUb2RvCQlUb2RvCi0gIEhpTGluayBzbm5zcGF0QWNjZXB0ZWQJTk9ORQotICBIaUxpbmsgc25uc3BhdEJyYWMJCU5PTkUKK0hpTGluayBzbm5zcGF0R2VuCQlTdGF0ZW1lbnQKK0hpTGluayBzbm5zcGF0SGVhZGVyCQlFcnJvcgorSGlMaW5rIHNubnNwYXROb0hlYWRlcglEZWZpbmUKK0hpTGluayBzbm5zcGF0TnVtYmVycwkJTnVtYmVyCitIaUxpbmsgc25uc3BhdENvbW1lbnQJCUNvbW1lbnQKK0hpTGluayBzbm5zcGF0RXJyb3IJCUVycm9yCitIaUxpbmsgc25uc3BhdFRvZG8JCVRvZG8KK0hpTGluayBzbm5zcGF0QWNjZXB0ZWQJTk9ORQorSGlMaW5rIHNubnNwYXRCcmFjCQlOT05FCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJzbm5zcGF0IgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zbm5zcmVzLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NubnNyZXMudmltCmluZGV4IDRjMWQ1OTYuLjJkMjc5MTYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NubnNyZXMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NubnNyZXMudmltCkBAIC04LDkgKzgsOCBAQAogIiBTTk5TIGh0dHA6Ly93d3ctcmEuaW5mb3JtYXRpay51bmktdHVlYmluZ2VuLmRlL1NOTlMvCiAiIGlzIGEgc2ltdWxhdG9yIGZvciBuZXVyYWwgbmV0d29ya3MuCiAKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTM3LDIzICszNiwxNiBAQAogc3luIG1hdGNoCXNubnNyZXNDb21tZW50CSIjLiokIiBjb250YWlucz1zbm5zcmVzVG9kbwogc3luIGtleXdvcmQJc25uc3Jlc1RvZG8JVE9ETyBYWFggRklYTUUgY29udGFpbmVkCiAKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zbm5zcmVzX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3NubnNyZXNfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBzbm5zcmVzR2VuCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHNubnNyZXNIZWFkZXIJCVN0YXRlbWVudAotICBIaUxpbmsgc25uc3Jlc05vSGVhZGVyCURlZmluZQotICBIaUxpbmsgc25uc3Jlc051bWJlcnMJCU51bWJlcgotICBIaUxpbmsgc25uc3Jlc0NvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIHNubnNyZXNUb2RvCQlUb2RvCitIaUxpbmsgc25uc3Jlc0dlbgkJU3RhdGVtZW50CitIaUxpbmsgc25uc3Jlc0hlYWRlcgkJU3RhdGVtZW50CitIaUxpbmsgc25uc3Jlc05vSGVhZGVyCURlZmluZQorSGlMaW5rIHNubnNyZXNOdW1iZXJzCQlOdW1iZXIKK0hpTGluayBzbm5zcmVzQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHNubnNyZXNUb2RvCQlUb2RvCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJzbm5zcmVzIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zbm9ib2w0LnZpbSBiL3J1bnRpbWUvc3ludGF4L3Nub2JvbDQudmltCmluZGV4IDA3ZWI2M2QuLjY5MWFjZGUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Nub2JvbDQudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3Nub2JvbDQudmltCkBAIC0xMCwxMSArMTAsOCBAQAogIiAtIG9uZSBjaGFyYWN0ZXIgbGFiZWxzIHdlcmVuJ3QgZGlzcGxheWVkIGNvcnJlY3RseS4KICIgLSBub25leGlzdGVudCBTbm9ib2w0IGtleXdvcmRzIGRpc3BsYXllZCBhcyBlcnJvcnMuCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC03OSw0NyArNzYsMzkgQEAKICIgc3luIG1hdGNoICAgICAgIHNub2JvbDRDb21tZW50ICAgICAgIl5cI1whLiokIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zbm9ib2w0X3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3Nub2JvbDRfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBzbm9ib2w0Q29uc3RhbnQgICAgICAgIENvbnN0YW50Ci0gIEhpTGluayBzbm9ib2w0TGFiZWwgICAgICAgICAgIExhYmVsCi0gIEhpTGluayBzbm9ib2w0R290byAgICAgICAgICAgIFJlcGVhdAotICBIaUxpbmsgc25vYm9sNENvbmRpdGlvbmFsICAgICBDb25kaXRpb25hbAotICBIaUxpbmsgc25vYm9sNFJlcGVhdCAgICAgICAgICBSZXBlYXQKLSAgSGlMaW5rIHNub2JvbDROdW1iZXIgICAgICAgICAgTnVtYmVyCi0gIEhpTGluayBzbm9ib2w0RXJyb3IgICAgICAgICAgIEVycm9yCi0gIEhpTGluayBzbm9ib2w0U3RhdGVtZW50ICAgICAgIFByZVByb2MKLSAgSGlMaW5rIHNub2JvbDRCb2d1c1N0YXRlbWVudCAgc25vYm9sNEVycm9yCi0gIEhpTGluayBzbm9ib2w0U3RyaW5nICAgICAgICAgIFN0cmluZwotICBIaUxpbmsgc25vYm9sNENvbW1lbnQgICAgICAgICBDb21tZW50Ci0gIEhpTGluayBzbm9ib2w0U3BlY2lhbCAgICAgICAgIFNwZWNpYWwKLSAgSGlMaW5rIHNub2JvbDRUb2RvICAgICAgICAgICAgVG9kbwotICBIaUxpbmsgc25vYm9sNEtleXdvcmQgICAgICAgICBLZXl3b3JkCi0gIEhpTGluayBzbm9ib2w0RnVuY3Rpb24gICAgICAgIEZ1bmN0aW9uCi0gIEhpTGluayBzbm9ib2w0TWF0aHNPcGVyYXRvciAgIE9wZXJhdG9yCi0gIEhpTGluayBzbm9ib2w0UGFyZW5FcnJvciAgICAgIHNub2JvbDRFcnJvcgotICBIaUxpbmsgc25vYm9sNEVyckluUGFyZW4gICAgICBzbm9ib2w0RXJyb3IKLSAgSGlMaW5rIHNub2JvbDRFcnJJbkJyYWNrZXQgICAgc25vYm9sNEVycm9yCi0gIEhpTGluayBzbm9ib2w0U3lzVmFyICAgICAgICAgIEtleXdvcmQKLSAgSGlMaW5rIHNub2JvbDRCb2d1c1N5c1ZhciAgICAgc25vYm9sNEVycm9yCi0gIGlmIGV4aXN0cygic25vYm9sNF9zdHJpY3RfbW9kZSIpCi0gICAgSGlMaW5rIHNub2JvbDRFeHRTeXNWYXIgICAgICAgV2FybmluZ01zZwotICAgIEhpTGluayBzbm9ib2w0RXh0S2V5d29yZCAgICAgIFdhcm5pbmdNc2cKLSAgZWxzZQotICAgIEhpTGluayBzbm9ib2w0RXh0U3lzVmFyICAgICAgIHNub2JvbDRTeXNWYXIKLSAgICBIaUxpbmsgc25vYm9sNEV4dEtleXdvcmQgICAgICBzbm9ib2w0S2V5d29yZAotICBlbmRpZgotCi0gIGRlbGNvbW1hbmQgSGlMaW5rCitIaUxpbmsgc25vYm9sNENvbnN0YW50ICAgICAgICBDb25zdGFudAorSGlMaW5rIHNub2JvbDRMYWJlbCAgICAgICAgICAgTGFiZWwKK0hpTGluayBzbm9ib2w0R290byAgICAgICAgICAgIFJlcGVhdAorSGlMaW5rIHNub2JvbDRDb25kaXRpb25hbCAgICAgQ29uZGl0aW9uYWwKK0hpTGluayBzbm9ib2w0UmVwZWF0ICAgICAgICAgIFJlcGVhdAorSGlMaW5rIHNub2JvbDROdW1iZXIgICAgICAgICAgTnVtYmVyCitIaUxpbmsgc25vYm9sNEVycm9yICAgICAgICAgICBFcnJvcgorSGlMaW5rIHNub2JvbDRTdGF0ZW1lbnQgICAgICAgUHJlUHJvYworSGlMaW5rIHNub2JvbDRCb2d1c1N0YXRlbWVudCAgc25vYm9sNEVycm9yCitIaUxpbmsgc25vYm9sNFN0cmluZyAgICAgICAgICBTdHJpbmcKK0hpTGluayBzbm9ib2w0Q29tbWVudCAgICAgICAgIENvbW1lbnQKK0hpTGluayBzbm9ib2w0U3BlY2lhbCAgICAgICAgIFNwZWNpYWwKK0hpTGluayBzbm9ib2w0VG9kbyAgICAgICAgICAgIFRvZG8KK0hpTGluayBzbm9ib2w0S2V5d29yZCAgICAgICAgIEtleXdvcmQKK0hpTGluayBzbm9ib2w0RnVuY3Rpb24gICAgICAgIEZ1bmN0aW9uCitIaUxpbmsgc25vYm9sNE1hdGhzT3BlcmF0b3IgICBPcGVyYXRvcgorSGlMaW5rIHNub2JvbDRQYXJlbkVycm9yICAgICAgc25vYm9sNEVycm9yCitIaUxpbmsgc25vYm9sNEVyckluUGFyZW4gICAgICBzbm9ib2w0RXJyb3IKK0hpTGluayBzbm9ib2w0RXJySW5CcmFja2V0ICAgIHNub2JvbDRFcnJvcgorSGlMaW5rIHNub2JvbDRTeXNWYXIgICAgICAgICAgS2V5d29yZAorSGlMaW5rIHNub2JvbDRCb2d1c1N5c1ZhciAgICAgc25vYm9sNEVycm9yCitpZiBleGlzdHMoInNub2JvbDRfc3RyaWN0X21vZGUiKQorSGlMaW5rIHNub2JvbDRFeHRTeXNWYXIgICAgICAgV2FybmluZ01zZworSGlMaW5rIHNub2JvbDRFeHRLZXl3b3JkICAgICAgV2FybmluZ01zZworZWxzZQorSGlMaW5rIHNub2JvbDRFeHRTeXNWYXIgICAgICAgc25vYm9sNFN5c1ZhcgorSGlMaW5rIHNub2JvbDRFeHRLZXl3b3JkICAgICAgc25vYm9sNEtleXdvcmQKIGVuZGlmCiAKK2RlbGNvbW1hbmQgSGlMaW5rCisKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNub2JvbDQiCiAiIHZpbTogdHM9OApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc3BlYy52aW0gYi9ydW50aW1lL3N5bnRheC9zcGVjLnZpbQppbmRleCA5OTUyYmQyLi5lZGZkZjQzIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zcGVjLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zcGVjLnZpbQpAQCAtNSwxMSArNSw4IEBACiAiIEZvcm1lciBNYWludGFpbmVyOiAgRG9ub3ZhbiBSZWJiZWNoaSBlbGZsb3JkQHBhbml4LmNvbSAodW50aWwgTWFyY2ggMjAxNCkKICIgTGFzdCBDaGFuZ2U6IFNhdCBBcHIgOSAxNTozMCAyMDE2IEZpbGlwIFN6eW1hxYRza2kKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTE1OSw3OCArMTU2LDcwIEBACiBzeW4gc3luYyBtYXRjaCBzaENhc2VFc2FjU3luYyBncm91cHRoZXJlIHNoQ2FzZUVzYWMgIlw8ZXNhY1w+IgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zcGVjX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3NwZWNfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICJtYWluIHR5cGVzIGNvbG9yIGRlZmluaXRpb25zCi0gIEhpTGluayBzcGVjU2VjdGlvbgkJCVN0cnVjdHVyZQotICBIaUxpbmsgc3BlY1NlY3Rpb25NYWNybwkJTWFjcm8KLSAgSGlMaW5rIHNwZWNXV1dsaW5rCQkJUHJlUHJvYwotICBIaUxpbmsgc3BlY09wdHMJCQlPcGVyYXRvcgorIm1haW4gdHlwZXMgY29sb3IgZGVmaW5pdGlvbnMKK0hpTGluayBzcGVjU2VjdGlvbgkJCVN0cnVjdHVyZQorSGlMaW5rIHNwZWNTZWN0aW9uTWFjcm8JCU1hY3JvCitIaUxpbmsgc3BlY1dXV2xpbmsJCQlQcmVQcm9jCitIaUxpbmsgc3BlY09wdHMJCQlPcGVyYXRvcgogCi0gICJ5ZXMsIGl0J3MgdWdseSwgYnV0IHdoaXRlIGlzIHNvb28gY29vbAotICBpZiAmYmFja2dyb3VuZCA9PSAiZGFyayIKLSAgICBoaSBkZWYgc3BlY0dsb2JhbE1hY3JvCQljdGVybWZnPXdoaXRlCi0gIGVsc2UKLSAgICBIaUxpbmsgc3BlY0dsb2JhbE1hY3JvCQlJZGVudGlmaWVyCi0gIGVuZGlmCi0KLSAgInNoIGNvbG9ycwotICBIaUxpbmsgc2hDb21tZW50CQkJQ29tbWVudAotICBIaUxpbmsgc2hJZgkJCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHNoT3BlcmF0b3IJCQlTcGVjaWFsCi0gIEhpTGluayBzaFF1b3RlMQkJCVN0cmluZwotICBIaUxpbmsgc2hRdW90ZTIJCQlTdHJpbmcKLSAgSGlMaW5rIHNoUXVvdGVEZWxpbQkJCVN0YXRlbWVudAotCi0gICJzcGVjIGNvbG9ycwotICBIaUxpbmsgc3BlY0Jsb2NrCQkJRnVuY3Rpb24KLSAgSGlMaW5rIHNwZWNDb2xvbgkJCVNwZWNpYWwKLSAgSGlMaW5rIHNwZWNDb21tYW5kCQkJU3RhdGVtZW50Ci0gIEhpTGluayBzcGVjQ29tbWFuZE9wdHMJCXNwZWNPcHRzCi0gIEhpTGluayBzcGVjQ29tbWFuZFNwZWNpYWwJCVNwZWNpYWwKLSAgSGlMaW5rIHNwZWNDb21tZW50CQkJQ29tbWVudAotICBIaUxpbmsgc3BlY0NvbmZpZ3VyZQkJCXNwZWNDb21tYW5kCi0gIEhpTGluayBzcGVjRGF0ZQkJCVN0cmluZwotICBIaUxpbmsgc3BlY0Rlc2NyaXB0aW9uT3B0cwkJc3BlY09wdHMKLSAgSGlMaW5rIHNwZWNFbWFpbAkJCXNwZWNXV1dsaW5rCi0gIEhpTGluayBzcGVjRXJyb3IJCQlFcnJvcgotICBIaUxpbmsgc3BlY0ZpbGVzRGlyZWN0aXZlCQlzcGVjU2VjdGlvbk1hY3JvCi0gIEhpTGluayBzcGVjRmlsZXNPcHRzCQkJc3BlY09wdHMKLSAgSGlMaW5rIHNwZWNMaWNlbnNlCQkJU3RyaW5nCi0gIEhpTGluayBzcGVjTWFjcm9OYW1lTG9jYWwJCXNwZWNHbG9iYWxNYWNybwotICBIaUxpbmsgc3BlY01hY3JvTmFtZU90aGVyCQlzcGVjR2xvYmFsTWFjcm8KLSAgSGlMaW5rIHNwZWNNYW5wYWdlRmlsZQkJTk9ORQotICBIaUxpbmsgc3BlY01vbnRoCQkJc3BlY0RhdGUKLSAgSGlMaW5rIHNwZWNOb051bWJlckhpbGl0ZQkJTk9ORQotICBIaUxpbmsgc3BlY051bWJlcgkJCU51bWJlcgotICBIaUxpbmsgc3BlY1BhY2thZ2VPcHRzCQlzcGVjT3B0cwotICBIaUxpbmsgc3BlY1BlcmNlbnQJCQlTcGVjaWFsCi0gIEhpTGluayBzcGVjU3BlY2lhbENoYXIJCVNwZWNpYWwKLSAgSGlMaW5rIHNwZWNTcGVjaWFsVmFyaWFibGVzCQlzcGVjR2xvYmFsTWFjcm8KLSAgSGlMaW5rIHNwZWNTcGVjaWFsVmFyaWFibGVzTmFtZXMJc3BlY0dsb2JhbE1hY3JvCi0gIEhpTGluayBzcGVjVGFyQ29tbWFuZAkJCXNwZWNDb21tYW5kCi0gIEhpTGluayBzcGVjVVJMCQkJc3BlY1dXV2xpbmsKLSAgSGlMaW5rIHNwZWNVUkxNYWNybwkJCXNwZWNXV1dsaW5rCi0gIEhpTGluayBzcGVjVmFyaWFibGVzCQkJSWRlbnRpZmllcgotICBIaUxpbmsgc3BlY1dlZWtkYXkJCQlzcGVjRGF0ZQotICBIaUxpbmsgc3BlY0xpc3RlZEZpbGVzQmluCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHNwZWNMaXN0ZWRGaWxlc0RvYwkJU3RhdGVtZW50Ci0gIEhpTGluayBzcGVjTGlzdGVkRmlsZXNFdGMJCVN0YXRlbWVudAotICBIaUxpbmsgc3BlY0xpc3RlZEZpbGVzTGliCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHNwZWNMaXN0ZWRGaWxlc1ByZWZpeAkJU3RhdGVtZW50Ci0gIEhpTGluayBzcGVjTGlzdGVkRmlsZXNTaGFyZQkJU3RhdGVtZW50Ci0KLSAgZGVsY29tbWFuZCBIaUxpbmsKKyJ5ZXMsIGl0J3MgdWdseSwgYnV0IHdoaXRlIGlzIHNvb28gY29vbAoraWYgJmJhY2tncm91bmQgPT0gImRhcmsiCitoaSBkZWYgc3BlY0dsb2JhbE1hY3JvCQljdGVybWZnPXdoaXRlCitlbHNlCitIaUxpbmsgc3BlY0dsb2JhbE1hY3JvCQlJZGVudGlmaWVyCiBlbmRpZgogCisic2ggY29sb3JzCitIaUxpbmsgc2hDb21tZW50CQkJQ29tbWVudAorSGlMaW5rIHNoSWYJCQkJU3RhdGVtZW50CitIaUxpbmsgc2hPcGVyYXRvcgkJCVNwZWNpYWwKK0hpTGluayBzaFF1b3RlMQkJCVN0cmluZworSGlMaW5rIHNoUXVvdGUyCQkJU3RyaW5nCitIaUxpbmsgc2hRdW90ZURlbGltCQkJU3RhdGVtZW50CisKKyJzcGVjIGNvbG9ycworSGlMaW5rIHNwZWNCbG9jawkJCUZ1bmN0aW9uCitIaUxpbmsgc3BlY0NvbG9uCQkJU3BlY2lhbAorSGlMaW5rIHNwZWNDb21tYW5kCQkJU3RhdGVtZW50CitIaUxpbmsgc3BlY0NvbW1hbmRPcHRzCQlzcGVjT3B0cworSGlMaW5rIHNwZWNDb21tYW5kU3BlY2lhbAkJU3BlY2lhbAorSGlMaW5rIHNwZWNDb21tZW50CQkJQ29tbWVudAorSGlMaW5rIHNwZWNDb25maWd1cmUJCQlzcGVjQ29tbWFuZAorSGlMaW5rIHNwZWNEYXRlCQkJU3RyaW5nCitIaUxpbmsgc3BlY0Rlc2NyaXB0aW9uT3B0cwkJc3BlY09wdHMKK0hpTGluayBzcGVjRW1haWwJCQlzcGVjV1dXbGluaworSGlMaW5rIHNwZWNFcnJvcgkJCUVycm9yCitIaUxpbmsgc3BlY0ZpbGVzRGlyZWN0aXZlCQlzcGVjU2VjdGlvbk1hY3JvCitIaUxpbmsgc3BlY0ZpbGVzT3B0cwkJCXNwZWNPcHRzCitIaUxpbmsgc3BlY0xpY2Vuc2UJCQlTdHJpbmcKK0hpTGluayBzcGVjTWFjcm9OYW1lTG9jYWwJCXNwZWNHbG9iYWxNYWNybworSGlMaW5rIHNwZWNNYWNyb05hbWVPdGhlcgkJc3BlY0dsb2JhbE1hY3JvCitIaUxpbmsgc3BlY01hbnBhZ2VGaWxlCQlOT05FCitIaUxpbmsgc3BlY01vbnRoCQkJc3BlY0RhdGUKK0hpTGluayBzcGVjTm9OdW1iZXJIaWxpdGUJCU5PTkUKK0hpTGluayBzcGVjTnVtYmVyCQkJTnVtYmVyCitIaUxpbmsgc3BlY1BhY2thZ2VPcHRzCQlzcGVjT3B0cworSGlMaW5rIHNwZWNQZXJjZW50CQkJU3BlY2lhbAorSGlMaW5rIHNwZWNTcGVjaWFsQ2hhcgkJU3BlY2lhbAorSGlMaW5rIHNwZWNTcGVjaWFsVmFyaWFibGVzCQlzcGVjR2xvYmFsTWFjcm8KK0hpTGluayBzcGVjU3BlY2lhbFZhcmlhYmxlc05hbWVzCXNwZWNHbG9iYWxNYWNybworSGlMaW5rIHNwZWNUYXJDb21tYW5kCQkJc3BlY0NvbW1hbmQKK0hpTGluayBzcGVjVVJMCQkJc3BlY1dXV2xpbmsKK0hpTGluayBzcGVjVVJMTWFjcm8JCQlzcGVjV1dXbGluaworSGlMaW5rIHNwZWNWYXJpYWJsZXMJCQlJZGVudGlmaWVyCitIaUxpbmsgc3BlY1dlZWtkYXkJCQlzcGVjRGF0ZQorSGlMaW5rIHNwZWNMaXN0ZWRGaWxlc0JpbgkJU3RhdGVtZW50CitIaUxpbmsgc3BlY0xpc3RlZEZpbGVzRG9jCQlTdGF0ZW1lbnQKK0hpTGluayBzcGVjTGlzdGVkRmlsZXNFdGMJCVN0YXRlbWVudAorSGlMaW5rIHNwZWNMaXN0ZWRGaWxlc0xpYgkJU3RhdGVtZW50CitIaUxpbmsgc3BlY0xpc3RlZEZpbGVzUHJlZml4CQlTdGF0ZW1lbnQKK0hpTGluayBzcGVjTGlzdGVkRmlsZXNTaGFyZQkJU3RhdGVtZW50CisKK2RlbGNvbW1hbmQgSGlMaW5rCisKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNwZWMiCiAKICIgdmltOiB0cz04CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zcGVjbWFuLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NwZWNtYW4udmltCmluZGV4IDNmYjc3YTIuLmM0MjZjOTkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NwZWNtYW4udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NwZWNtYW4udmltCkBAIC0xMCwxMSArMTAsOCBAQAogIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiAiIFJlbW92ZSBhbnkgb2xkIHN5bnRheCBzdHVmZiBoYW5naW5nIGFyb3VuZAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTEzNyw0NiArMTM0LDM4IEBACiBzeW4gc3luYyBsaW5lcz01MAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zcGVjbWFuX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3NwZWNtYW5fc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKLSAgIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgotCUhpTGluawlzcGVjbWFuQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLQlIaUxpbmsJc3BlY21hbkNvbnN0cmFpbnQJQ29uZGl0aW9uYWwKLQlIaUxpbmsJc3BlY21hblJlcGVhdAkJUmVwZWF0Ci0JSGlMaW5rCXNwZWNtYW5TdHJpbmcJCVN0cmluZwotCUhpTGluawlzcGVjbWFuQ29tbWVudAkJQ29tbWVudAotCUhpTGluawlzcGVjbWFuQ29uc3RhbnQJCU1hY3JvCi0JSGlMaW5rCXNwZWNtYW5OdW1iZXIJCU51bWJlcgotCUhpTGluawlzcGVjbWFuQ29tcGFyZQkJT3BlcmF0b3IKLQlIaUxpbmsJc3BlY21hbk9wZXJhdG9yCQlPcGVyYXRvcgotCUhpTGluawlzcGVjbWFuTG9naWNhbAkJT3BlcmF0b3IKLQlIaUxpbmsJc3BlY21hblN0YXRlbWVudAlTdGF0ZW1lbnQKLQlIaUxpbmsJc3BlY21hbkhETAkJU3BlY2lhbENoYXIKLQlIaUxpbmsJc3BlY21hbk1ldGhvZAkJRnVuY3Rpb24KLQlIaUxpbmsJc3BlY21hbkluY2x1ZGUJCUluY2x1ZGUKLQlIaUxpbmsJc3BlY21hblN0cnVjdHVyZQlTdHJ1Y3R1cmUKLQlIaUxpbmsJc3BlY21hbkJvb2xlYW4JCUJvb2xlYW4KLQlIaUxpbmsJc3BlY21hbkZTTQkJTGFiZWwKLQlIaUxpbmsJc3BlY21hblNwZWNpYWwJCVNwZWNpYWwKLQlIaUxpbmsJc3BlY21hblR5cGUJCVR5cGUKLQlIaUxpbmsJc3BlY21hblRlbXBvcmFsCQlUeXBlCi0JSGlMaW5rCXNwZWNtYW5GaWxlCQlJbmNsdWRlCi0JSGlMaW5rCXNwZWNtYW5QcmVDb25kaXQJSW5jbHVkZQotCUhpTGluawlzcGVjbWFuRGVmaW5lCQlUeXBlZGVmCi0JSGlMaW5rCXNwZWNtYW5MYWJlbAkJTGFiZWwKLQlIaUxpbmsJc3BlY21hblBhY2tpbmcJCWtleXdvcmQKLQlIaUxpbmsJc3BlY21hblRvZG8JCVRvZG8KLQlIaUxpbmsJc3BlY21hblBhcmVuRXJyb3IJRXJyb3IKLQlIaUxpbmsJc3BlY21hbkVyckluUGFyZW4JRXJyb3IKLQlIaUxpbmsJc3BlY21hbkVyckluQnJhY2tldAlFcnJvcgotCWRlbGNvbW1hbmQJSGlMaW5rCi1lbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CisiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyCitIaUxpbmsJc3BlY21hbkNvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCitIaUxpbmsJc3BlY21hbkNvbnN0cmFpbnQJQ29uZGl0aW9uYWwKK0hpTGluawlzcGVjbWFuUmVwZWF0CQlSZXBlYXQKK0hpTGluawlzcGVjbWFuU3RyaW5nCQlTdHJpbmcKK0hpTGluawlzcGVjbWFuQ29tbWVudAkJQ29tbWVudAorSGlMaW5rCXNwZWNtYW5Db25zdGFudAkJTWFjcm8KK0hpTGluawlzcGVjbWFuTnVtYmVyCQlOdW1iZXIKK0hpTGluawlzcGVjbWFuQ29tcGFyZQkJT3BlcmF0b3IKK0hpTGluawlzcGVjbWFuT3BlcmF0b3IJCU9wZXJhdG9yCitIaUxpbmsJc3BlY21hbkxvZ2ljYWwJCU9wZXJhdG9yCitIaUxpbmsJc3BlY21hblN0YXRlbWVudAlTdGF0ZW1lbnQKK0hpTGluawlzcGVjbWFuSERMCQlTcGVjaWFsQ2hhcgorSGlMaW5rCXNwZWNtYW5NZXRob2QJCUZ1bmN0aW9uCitIaUxpbmsJc3BlY21hbkluY2x1ZGUJCUluY2x1ZGUKK0hpTGluawlzcGVjbWFuU3RydWN0dXJlCVN0cnVjdHVyZQorSGlMaW5rCXNwZWNtYW5Cb29sZWFuCQlCb29sZWFuCitIaUxpbmsJc3BlY21hbkZTTQkJTGFiZWwKK0hpTGluawlzcGVjbWFuU3BlY2lhbAkJU3BlY2lhbAorSGlMaW5rCXNwZWNtYW5UeXBlCQlUeXBlCitIaUxpbmsJc3BlY21hblRlbXBvcmFsCQlUeXBlCitIaUxpbmsJc3BlY21hbkZpbGUJCUluY2x1ZGUKK0hpTGluawlzcGVjbWFuUHJlQ29uZGl0CUluY2x1ZGUKK0hpTGluawlzcGVjbWFuRGVmaW5lCQlUeXBlZGVmCitIaUxpbmsJc3BlY21hbkxhYmVsCQlMYWJlbAorSGlMaW5rCXNwZWNtYW5QYWNraW5nCQlrZXl3b3JkCitIaUxpbmsJc3BlY21hblRvZG8JCVRvZG8KK0hpTGluawlzcGVjbWFuUGFyZW5FcnJvcglFcnJvcgorSGlMaW5rCXNwZWNtYW5FcnJJblBhcmVuCUVycm9yCitIaUxpbmsJc3BlY21hbkVyckluQnJhY2tldAlFcnJvcgorZGVsY29tbWFuZAlIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic3BlY21hbiIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NwaWNlLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NwaWNlLnZpbQppbmRleCAyMDBlMWFhLi41N2ZmMDVmIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zcGljZS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc3BpY2UudmltCkBAIC03LDExICs3LDggQEAKICIgVGhpcyBpcyBiYXNlZCBvbiBzaC52aW0gYnkgTGVubmFydCBTY2h1bHR6CiAiIGJ1dCBncmVhdGx5IHNpbXBsaWZpZWQKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTUzLDI4ICs1MCwyMCBAQAogc3luIHN5bmMgbWlubGluZXM9NTAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc3BpY2Vfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfc3BpY2Vfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBzcGljZVRvZG8JCVRvZG8KLSAgSGlMaW5rIHNwaWNlV3JhcExpbmVPcGVyYXRvcglzcGljZU9wZXJhdG9yCi0gIEhpTGluayBzcGljZVNpbmdsZXF1b3RlCXNwaWNlRXhwcgotICBIaUxpbmsgc3BpY2VFeHByCQlGdW5jdGlvbgotICBIaUxpbmsgc3BpY2VQYXJlbkVycm9yCUVycm9yCi0gIEhpTGluayBzcGljZVN0YXRlbWVudAkJU3RhdGVtZW50Ci0gIEhpTGluayBzcGljZU51bWJlcgkJTnVtYmVyCi0gIEhpTGluayBzcGljZUNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIHNwaWNlT3BlcmF0b3IJCU9wZXJhdG9yCitIaUxpbmsgc3BpY2VUb2RvCQlUb2RvCitIaUxpbmsgc3BpY2VXcmFwTGluZU9wZXJhdG9yCXNwaWNlT3BlcmF0b3IKK0hpTGluayBzcGljZVNpbmdsZXF1b3RlCXNwaWNlRXhwcgorSGlMaW5rIHNwaWNlRXhwcgkJRnVuY3Rpb24KK0hpTGluayBzcGljZVBhcmVuRXJyb3IJRXJyb3IKK0hpTGluayBzcGljZVN0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsgc3BpY2VOdW1iZXIJCU51bWJlcgorSGlMaW5rIHNwaWNlQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHNwaWNlT3BlcmF0b3IJCU9wZXJhdG9yCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJzcGljZSIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc3BsaW50LnZpbSBiL3J1bnRpbWUvc3ludGF4L3NwbGludC52aW0KaW5kZXggZGMwOWQ4Yi4uMTRmODRhOCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc3BsaW50LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zcGxpbnQudmltCkBAIC0xNSwyMCArMTUsMTMgQEAKICIJCWluIHlvdXIgdmltcmMgZmlsZSBvciBmaWxldHlwZS52aW0KIAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIAogIiBSZWFkIHRoZSBDIHN5bnRheCB0byBzdGFydCB3aXRoCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNvIDxzZmlsZT46cDpoL2MudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9jLnZpbQotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9jLnZpbQogCiAKICIgRklYTUU6IHVzZXMgYW5kIGNoYW5nZXMgc2V2ZXJhbCBjbHVzdGVycyBkZWZpbmVkIGluIGMudmltCkBAIC0xOTksNjEgKzE5Miw1MyBAQAogc3luIGNsdXN0ZXIJY011bHRpR3JvdXAJYWRkPUBzcGxpbnRBbGxTdHVmZgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zcGxpbnRfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfc3BsaW50X3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgc3BsaW50U2hvcnRBbm4JCXNwbGludEFubm90YXRpb24KLSAgSGlMaW5rIHNwbGludEFubm90YXRpb24JQ29tbWVudAotICBIaUxpbmsgc3BsaW50QW5uRXJyb3IJCXNwbGludEVycm9yCi0gIEhpTGluayBzcGxpbnRBbm5FcnJvcjIJc3BsaW50RXJyb3IKLSAgSGlMaW5rIHNwbGludEZsYWcJCVNwZWNpYWxDb21tZW50Ci0gIEhpTGluayBzcGxpbnRHbG9iYWxGbGFnCXNwbGludEVycm9yCi0gIEhpTGluayBzcGxpbnRTcGVjaWFsQW5ub3QJc3BsaW50QW5uS2V5Ci0gIEhpTGluayBzcGxpbnRTdGF0ZUFubm90CXNwbGludEFubktleQotICBIaUxpbmsgc3BsaW50U3BlY1RhZwkJc3BsaW50QW5uS2V5Ci0gIEhpTGluayBzcGxpbnRNb2RpZmllcwkJc3BsaW50QW5uS2V5Ci0gIEhpTGluayBzcGxpbnRSZXF1aXJlcwkJc3BsaW50QW5uS2V5Ci0gIEhpTGluayBzcGxpbnRHbG9iYWxzCQlzcGxpbnRBbm5LZXkKLSAgSGlMaW5rIHNwbGludEdsb2JpdGVtCQlDb25zdGFudAotICBIaUxpbmsgc3BsaW50R2xvYmFubm90CXNwbGludEFubktleQotICBIaUxpbmsgc3BsaW50V2FybmluZwkJc3BsaW50QW5uS2V5Ci0gIEhpTGluayBzcGxpbnRNb2RpdGVtCQlDb25zdGFudAotICBIaUxpbmsgc3BsaW50SXRlcgkJc3BsaW50QW5uS2V5Ci0gIEhpTGluayBzcGxpbnRDb25zdAkJc3BsaW50QW5uS2V5Ci0gIEhpTGluayBzcGxpbnRBbHQJCXNwbGludEFubktleQotICBIaUxpbmsgc3BsaW50VHlwZQkJc3BsaW50QW5uS2V5Ci0gIEhpTGluayBzcGxpbnRHbG9iYWxUeXBlCXNwbGludEFubktleQotICBIaUxpbmsgc3BsaW50TWVtTWdtCQlzcGxpbnRBbm5LZXkKLSAgSGlMaW5rIHNwbGludEFsaWFzCQlzcGxpbnRBbm5LZXkKLSAgSGlMaW5rIHNwbGludEV4cG9zdXJlCQlzcGxpbnRBbm5LZXkKLSAgSGlMaW5rIHNwbGludERlZlN0YXRlCQlzcGxpbnRBbm5LZXkKLSAgSGlMaW5rIHNwbGludEdsb2JTdGF0ZQlzcGxpbnRBbm5LZXkKLSAgSGlMaW5rIHNwbGludE51bGxTdGF0ZQlzcGxpbnRBbm5LZXkKLSAgSGlMaW5rIHNwbGludE51bGxQcmVkCQlzcGxpbnRBbm5LZXkKLSAgSGlMaW5rIHNwbGludEV4aXQJCXNwbGludEFubktleQotICBIaUxpbmsgc3BsaW50RXhlYwkJc3BsaW50QW5uS2V5Ci0gIEhpTGluayBzcGxpbnRTZWYJCXNwbGludEFubktleQotICBIaUxpbmsgc3BsaW50RGVjbAkJc3BsaW50QW5uS2V5Ci0gIEhpTGluayBzcGxpbnRDYXNlCQlzcGxpbnRBbm5LZXkKLSAgSGlMaW5rIHNwbGludEJyZWFrCQlzcGxpbnRBbm5LZXkKLSAgSGlMaW5rIHNwbGludFVucmVhY2gJCXNwbGludEFubktleQotICBIaUxpbmsgc3BsaW50U3BlY0Z1bmMJCXNwbGludEFubktleQotICBIaUxpbmsgc3BsaW50RXJyU3VwcAkJc3BsaW50QW5uS2V5Ci0gIEhpTGluayBzcGxpbnRUeXBlQWNjCQlzcGxpbnRBbm5LZXkKLSAgSGlMaW5rIHNwbGludE1hY3JvCQlzcGxpbnRBbm5LZXkKLSAgSGlMaW5rIHNwbGludFNwZWNUeXBlCQlzcGxpbnRBbm5LZXkKLSAgSGlMaW5rIHNwbGludEFubktleQkJVHlwZQotICBIaUxpbmsgc3BsaW50RXJyb3IJCUVycm9yCitIaUxpbmsgc3BsaW50U2hvcnRBbm4JCXNwbGludEFubm90YXRpb24KK0hpTGluayBzcGxpbnRBbm5vdGF0aW9uCUNvbW1lbnQKK0hpTGluayBzcGxpbnRBbm5FcnJvcgkJc3BsaW50RXJyb3IKK0hpTGluayBzcGxpbnRBbm5FcnJvcjIJc3BsaW50RXJyb3IKK0hpTGluayBzcGxpbnRGbGFnCQlTcGVjaWFsQ29tbWVudAorSGlMaW5rIHNwbGludEdsb2JhbEZsYWcJc3BsaW50RXJyb3IKK0hpTGluayBzcGxpbnRTcGVjaWFsQW5ub3QJc3BsaW50QW5uS2V5CitIaUxpbmsgc3BsaW50U3RhdGVBbm5vdAlzcGxpbnRBbm5LZXkKK0hpTGluayBzcGxpbnRTcGVjVGFnCQlzcGxpbnRBbm5LZXkKK0hpTGluayBzcGxpbnRNb2RpZmllcwkJc3BsaW50QW5uS2V5CitIaUxpbmsgc3BsaW50UmVxdWlyZXMJCXNwbGludEFubktleQorSGlMaW5rIHNwbGludEdsb2JhbHMJCXNwbGludEFubktleQorSGlMaW5rIHNwbGludEdsb2JpdGVtCQlDb25zdGFudAorSGlMaW5rIHNwbGludEdsb2Jhbm5vdAlzcGxpbnRBbm5LZXkKK0hpTGluayBzcGxpbnRXYXJuaW5nCQlzcGxpbnRBbm5LZXkKK0hpTGluayBzcGxpbnRNb2RpdGVtCQlDb25zdGFudAorSGlMaW5rIHNwbGludEl0ZXIJCXNwbGludEFubktleQorSGlMaW5rIHNwbGludENvbnN0CQlzcGxpbnRBbm5LZXkKK0hpTGluayBzcGxpbnRBbHQJCXNwbGludEFubktleQorSGlMaW5rIHNwbGludFR5cGUJCXNwbGludEFubktleQorSGlMaW5rIHNwbGludEdsb2JhbFR5cGUJc3BsaW50QW5uS2V5CitIaUxpbmsgc3BsaW50TWVtTWdtCQlzcGxpbnRBbm5LZXkKK0hpTGluayBzcGxpbnRBbGlhcwkJc3BsaW50QW5uS2V5CitIaUxpbmsgc3BsaW50RXhwb3N1cmUJCXNwbGludEFubktleQorSGlMaW5rIHNwbGludERlZlN0YXRlCQlzcGxpbnRBbm5LZXkKK0hpTGluayBzcGxpbnRHbG9iU3RhdGUJc3BsaW50QW5uS2V5CitIaUxpbmsgc3BsaW50TnVsbFN0YXRlCXNwbGludEFubktleQorSGlMaW5rIHNwbGludE51bGxQcmVkCQlzcGxpbnRBbm5LZXkKK0hpTGluayBzcGxpbnRFeGl0CQlzcGxpbnRBbm5LZXkKK0hpTGluayBzcGxpbnRFeGVjCQlzcGxpbnRBbm5LZXkKK0hpTGluayBzcGxpbnRTZWYJCXNwbGludEFubktleQorSGlMaW5rIHNwbGludERlY2wJCXNwbGludEFubktleQorSGlMaW5rIHNwbGludENhc2UJCXNwbGludEFubktleQorSGlMaW5rIHNwbGludEJyZWFrCQlzcGxpbnRBbm5LZXkKK0hpTGluayBzcGxpbnRVbnJlYWNoCQlzcGxpbnRBbm5LZXkKK0hpTGluayBzcGxpbnRTcGVjRnVuYwkJc3BsaW50QW5uS2V5CitIaUxpbmsgc3BsaW50RXJyU3VwcAkJc3BsaW50QW5uS2V5CitIaUxpbmsgc3BsaW50VHlwZUFjYwkJc3BsaW50QW5uS2V5CitIaUxpbmsgc3BsaW50TWFjcm8JCXNwbGludEFubktleQorSGlMaW5rIHNwbGludFNwZWNUeXBlCQlzcGxpbnRBbm5LZXkKK0hpTGluayBzcGxpbnRBbm5LZXkJCVR5cGUKK0hpTGluayBzcGxpbnRFcnJvcgkJRXJyb3IKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNwbGludCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc3B1cC52aW0gYi9ydW50aW1lL3N5bnRheC9zcHVwLnZpbQppbmRleCAwN2U5NzA4Li5hMDcyNjI5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zcHVwLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zcHVwLnZpbQpAQCAtMTcsMTEgKzE3LDggQEAKICIgSWYgeW91IGVuY291bnRlciBwcm9ibGVtcyBvciBoYXZlIHF1ZXN0aW9ucyBvciBzdWdnZXN0aW9ucywgbWFpbCBtZQogCiAiIFJlbW92ZSBvbGQgc3ludGF4IHN0dWZmCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICAgIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgICBmaW5pc2gKIGVuZGlmCiAKQEAgLTIwNiw3NCArMjAzLDY2IEBACiBzeW4gc3luYyBtYXRjaCBzcHVwU3luY1VuaXQgICAgICAgZ3JvdXBoZXJlIHNwdXBVbml0ICAgICAgICJeVU5JVCIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc3B1cF9zeW5faW5pdHMiKQotICAgIGlmIHZlcnNpb24gPCA1MDgKLQlsZXQgZGlkX3NwdXBfc3luX2luaXRzID0gMQotCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gICAgZWxzZQotCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICAgIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAgIEhpTGluayBzcHVwQ2RpCSAgICBzcHVwU2VjdGlvbgotICAgIEhpTGluayBzcHVwQ29uZGl0aW9ucyAgIHNwdXBTZWN0aW9uCi0gICAgSGlMaW5rIHNwdXBEZWNsYXJlCSAgICBzcHVwU2VjdGlvbgotICAgIEhpTGluayBzcHVwRXN0aW1hdGlvbiAgIHNwdXBTZWN0aW9uCi0gICAgSGlMaW5rIHNwdXBFeHRlcm5hbAkgICAgc3B1cFNlY3Rpb24KLSAgICBIaUxpbmsgc3B1cEZsb3dzaGVldCAgICBzcHVwU2VjdGlvbgotICAgIEhpTGluayBzcHVwRnVuY3Rpb24JICAgIHNwdXBTZWN0aW9uCi0gICAgSGlMaW5rIHNwdXBHbG9iYWwJICAgIHNwdXBTZWN0aW9uCi0gICAgSGlMaW5rIHNwdXBIb21vdG9weQkgICAgc3B1cFNlY3Rpb24KLSAgICBIaUxpbmsgc3B1cE1hY3JvCSAgICBzcHVwU2VjdGlvbgotICAgIEhpTGluayBzcHVwTW9kZWwJICAgIHNwdXBTZWN0aW9uCi0gICAgSGlMaW5rIHNwdXBPcGVyYXRpb24gICAgc3B1cFNlY3Rpb24KLSAgICBIaUxpbmsgc3B1cE9wdGlvbnMJICAgIHNwdXBTZWN0aW9uCi0gICAgSGlMaW5rIHNwdXBQcm9jZWR1cmUgICAgc3B1cFNlY3Rpb24KLSAgICBIaUxpbmsgc3B1cFByb2ZpbGVzCSAgICBzcHVwU2VjdGlvbgotICAgIEhpTGluayBzcHVwUmVwb3J0CSAgICBzcHVwU2VjdGlvbgotICAgIEhpTGluayBzcHVwVGl0bGUJICAgIHNwdXBDb25zdGFudCAgIiB0aGlzIGlzIGNvcnJlY3QsIHRydWx5IDspCi0gICAgSGlMaW5rIHNwdXBVbml0CSAgICBzcHVwU2VjdGlvbgorSGlMaW5rIHNwdXBDZGkJICAgIHNwdXBTZWN0aW9uCitIaUxpbmsgc3B1cENvbmRpdGlvbnMgICBzcHVwU2VjdGlvbgorSGlMaW5rIHNwdXBEZWNsYXJlCSAgICBzcHVwU2VjdGlvbgorSGlMaW5rIHNwdXBFc3RpbWF0aW9uICAgc3B1cFNlY3Rpb24KK0hpTGluayBzcHVwRXh0ZXJuYWwJICAgIHNwdXBTZWN0aW9uCitIaUxpbmsgc3B1cEZsb3dzaGVldCAgICBzcHVwU2VjdGlvbgorSGlMaW5rIHNwdXBGdW5jdGlvbgkgICAgc3B1cFNlY3Rpb24KK0hpTGluayBzcHVwR2xvYmFsCSAgICBzcHVwU2VjdGlvbgorSGlMaW5rIHNwdXBIb21vdG9weQkgICAgc3B1cFNlY3Rpb24KK0hpTGluayBzcHVwTWFjcm8JICAgIHNwdXBTZWN0aW9uCitIaUxpbmsgc3B1cE1vZGVsCSAgICBzcHVwU2VjdGlvbgorSGlMaW5rIHNwdXBPcGVyYXRpb24gICAgc3B1cFNlY3Rpb24KK0hpTGluayBzcHVwT3B0aW9ucwkgICAgc3B1cFNlY3Rpb24KK0hpTGluayBzcHVwUHJvY2VkdXJlICAgIHNwdXBTZWN0aW9uCitIaUxpbmsgc3B1cFByb2ZpbGVzCSAgICBzcHVwU2VjdGlvbgorSGlMaW5rIHNwdXBSZXBvcnQJICAgIHNwdXBTZWN0aW9uCitIaUxpbmsgc3B1cFRpdGxlCSAgICBzcHVwQ29uc3RhbnQgICIgdGhpcyBpcyBjb3JyZWN0LCB0cnVseSA7KQorSGlMaW5rIHNwdXBVbml0CSAgICBzcHVwU2VjdGlvbgogCi0gICAgSGlMaW5rIHNwdXBDZGlTdWJzCSAgICAgIHNwdXBTdWJzCi0gICAgSGlMaW5rIHNwdXBDb25kaXRpb25zU3VicyBzcHVwU3VicwotICAgIEhpTGluayBzcHVwRGVjbGFyZVN1YnMgICAgc3B1cFN1YnMKLSAgICBIaUxpbmsgc3B1cEVzdGltYXRpb25TdWJzIHNwdXBTdWJzCi0gICAgSGlMaW5rIHNwdXBFeHRlcm5hbFN1YnMgICBzcHVwU3VicwotICAgIEhpTGluayBzcHVwRmxvd3NoZWV0U3VicyAgc3B1cFN1YnMKLSAgICBIaUxpbmsgc3B1cEZ1bmN0aW9uU3VicyAgIHNwdXBTdWJzCi0gICAgSGlMaW5rIHNwdXBIb21vdG9weVN1YnMgICBzcHVwU3VicwotICAgIEhpTGluayBzcHVwTWFjcm9TdWJzICAgICAgc3B1cFN1YnMKLSAgICBIaUxpbmsgc3B1cE1vZGVsU3VicyAgICAgIHNwdXBTdWJzCi0gICAgSGlMaW5rIHNwdXBPcGVyYXRpb25TdWJzICBzcHVwU3VicwotICAgIEhpTGluayBzcHVwT3B0aW9uc1N1YnMgICAgc3B1cFN1YnMKLSAgICBIaUxpbmsgc3B1cFByb2NlZHVyZVN1YnMgIHNwdXBTdWJzCi0gICAgSGlMaW5rIHNwdXBSZXBvcnRTdWJzICAgICBzcHVwU3VicwotICAgIEhpTGluayBzcHVwVW5pdFN1YnMJICAgICAgc3B1cFN1YnMKK0hpTGluayBzcHVwQ2RpU3VicwkgICAgICBzcHVwU3VicworSGlMaW5rIHNwdXBDb25kaXRpb25zU3VicyBzcHVwU3VicworSGlMaW5rIHNwdXBEZWNsYXJlU3VicyAgICBzcHVwU3VicworSGlMaW5rIHNwdXBFc3RpbWF0aW9uU3VicyBzcHVwU3VicworSGlMaW5rIHNwdXBFeHRlcm5hbFN1YnMgICBzcHVwU3VicworSGlMaW5rIHNwdXBGbG93c2hlZXRTdWJzICBzcHVwU3VicworSGlMaW5rIHNwdXBGdW5jdGlvblN1YnMgICBzcHVwU3VicworSGlMaW5rIHNwdXBIb21vdG9weVN1YnMgICBzcHVwU3VicworSGlMaW5rIHNwdXBNYWNyb1N1YnMgICAgICBzcHVwU3VicworSGlMaW5rIHNwdXBNb2RlbFN1YnMgICAgICBzcHVwU3VicworSGlMaW5rIHNwdXBPcGVyYXRpb25TdWJzICBzcHVwU3VicworSGlMaW5rIHNwdXBPcHRpb25zU3VicyAgICBzcHVwU3VicworSGlMaW5rIHNwdXBQcm9jZWR1cmVTdWJzICBzcHVwU3VicworSGlMaW5rIHNwdXBSZXBvcnRTdWJzICAgICBzcHVwU3VicworSGlMaW5rIHNwdXBVbml0U3VicwkgICAgICBzcHVwU3VicwogCi0gICAgSGlMaW5rIHNwdXBDb2RlCSAgICAgICBOb3JtYWwKLSAgICBIaUxpbmsgc3B1cENvbW1lbnQJICAgICAgIENvbW1lbnQKLSAgICBIaUxpbmsgc3B1cENvbW1lbnQyCSAgICAgICBzcHVwQ29tbWVudAotICAgIEhpTGluayBzcHVwQ29uZGl0aW9uYWwgICAgIFN0YXRlbWVudAotICAgIEhpTGluayBzcHVwQ29uc3RhbnQJICAgICAgIENvbnN0YW50Ci0gICAgSGlMaW5rIHNwdXBFcnJvcgkgICAgICAgRXJyb3IKLSAgICBIaUxpbmsgc3B1cEhlbHAJICAgICAgIE5vcm1hbAotICAgIEhpTGluayBzcHVwSWRlbnRpZmllciAgICAgIElkZW50aWZpZXIKLSAgICBIaUxpbmsgc3B1cE51bWJlcgkgICAgICAgQ29uc3RhbnQKLSAgICBIaUxpbmsgc3B1cE9wZXJhdG9yCSAgICAgICBTcGVjaWFsCi0gICAgSGlMaW5rIHNwdXBPcGVuQnJhY2UgICAgICAgc3B1cEVycm9yCi0gICAgSGlMaW5rIHNwdXBTZWN0aW9uCSAgICAgICBTdGF0ZW1lbnQKLSAgICBIaUxpbmsgc3B1cFNwZWNpYWwJICAgICAgIHNwdXBUZXh0cHJvY0dlbmVyaWMKLSAgICBIaUxpbmsgc3B1cFN0cmVhbXMJICAgICAgIFR5cGUKLSAgICBIaUxpbmsgc3B1cFN0cmluZwkgICAgICAgQ29uc3RhbnQKLSAgICBIaUxpbmsgc3B1cFN1YnMJICAgICAgIFN0YXRlbWVudAotICAgIEhpTGluayBzcHVwU3ltYm9sCSAgICAgICBTcGVjaWFsCi0gICAgSGlMaW5rIHNwdXBUZXh0cHJvY0Vycm9yICAgTm9ybWFsCi0gICAgSGlMaW5rIHNwdXBUZXh0cHJvY0dlbmVyaWMgUHJlUHJvYwotICAgIEhpTGluayBzcHVwVHlwZXMJICAgICAgIFR5cGUKK0hpTGluayBzcHVwQ29kZQkgICAgICAgTm9ybWFsCitIaUxpbmsgc3B1cENvbW1lbnQJICAgICAgIENvbW1lbnQKK0hpTGluayBzcHVwQ29tbWVudDIJICAgICAgIHNwdXBDb21tZW50CitIaUxpbmsgc3B1cENvbmRpdGlvbmFsICAgICBTdGF0ZW1lbnQKK0hpTGluayBzcHVwQ29uc3RhbnQJICAgICAgIENvbnN0YW50CitIaUxpbmsgc3B1cEVycm9yCSAgICAgICBFcnJvcgorSGlMaW5rIHNwdXBIZWxwCSAgICAgICBOb3JtYWwKK0hpTGluayBzcHVwSWRlbnRpZmllciAgICAgIElkZW50aWZpZXIKK0hpTGluayBzcHVwTnVtYmVyCSAgICAgICBDb25zdGFudAorSGlMaW5rIHNwdXBPcGVyYXRvcgkgICAgICAgU3BlY2lhbAorSGlMaW5rIHNwdXBPcGVuQnJhY2UgICAgICAgc3B1cEVycm9yCitIaUxpbmsgc3B1cFNlY3Rpb24JICAgICAgIFN0YXRlbWVudAorSGlMaW5rIHNwdXBTcGVjaWFsCSAgICAgICBzcHVwVGV4dHByb2NHZW5lcmljCitIaUxpbmsgc3B1cFN0cmVhbXMJICAgICAgIFR5cGUKK0hpTGluayBzcHVwU3RyaW5nCSAgICAgICBDb25zdGFudAorSGlMaW5rIHNwdXBTdWJzCSAgICAgICBTdGF0ZW1lbnQKK0hpTGluayBzcHVwU3ltYm9sCSAgICAgICBTcGVjaWFsCitIaUxpbmsgc3B1cFRleHRwcm9jRXJyb3IgICBOb3JtYWwKK0hpTGluayBzcHVwVGV4dHByb2NHZW5lcmljIFByZVByb2MKK0hpTGluayBzcHVwVHlwZXMJICAgICAgIFR5cGUKIAotICAgIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic3B1cCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc3B5Y2UudmltIGIvcnVudGltZS9zeW50YXgvc3B5Y2UudmltCmluZGV4IGU3NmNiMWEuLjE2OWRlMTkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NweWNlLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zcHljZS52aW0KQEAgLTQsMTEgKzQsOCBAQAogIiBVUkw6CQkgICAgIGh0dHA6Ly9zcHljZS5zb3VyY2Vmb3JnZS5uZXQKICIgTGFzdCBDaGFuZ2U6IDIwMDkgTm92IDExCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0yMCwxMyArMTcsOSBAQAogIiBSZWFkIHRoZSBIVE1MIHN5bnRheCB0byBzdGFydCB3aXRoCiBsZXQgYjpkaWRfaW5kZW50ID0gMQkgICAgICIgZG9uJ3QgcGVyZm9ybSBIVE1MIGluZGVudGF0aW9uIQogbGV0IGh0bWxfbm9fcmVuZGVyaW5nID0gMSAgICAiIGRvIG5vdCByZW5kZXIgPGI+LDxpPiwgZXRjLi4uCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNvIDxzZmlsZT46cDpoL2h0bWwudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9odG1sLnZpbQotICB1bmxldCBiOmN1cnJlbnRfc3ludGF4Ci0gIHN5bnRheCBzcGVsbCBkZWZhdWx0ICAiIGFkZGVkIGJ5IEJyYW0KLWVuZGlmCitydW50aW1lISBzeW50YXgvaHRtbC52aW0KK3VubGV0IGI6Y3VycmVudF9zeW50YXgKK3N5bnRheCBzcGVsbCBkZWZhdWx0ICAiIGFkZGVkIGJ5IEJyYW0KIAogIiBpbmNsdWRlIHB5dGhvbgogc3luIGluY2x1ZGUgQFB5dGhvbiA8c2ZpbGU+OnA6aC9weXRob24udmltCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zcWwudmltIGIvcnVudGltZS9zeW50YXgvc3FsLnZpbQppbmRleCA3YmEyMGYzLi42ZGUzZjRhIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zcWwudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NxbC52aW0KQEAgLTEwLDExICsxMCw4IEBACiAiICAgICAgICAgICAgICBJZiB0aGUgYWJvdmUgZXhpc3QsIGl0IHdpbGwgc291cmNlIHRoZSB0eXBlIHNwZWNpZmllZC4KICIgICAgICAgICAgICAgIElmIG5vbmUgZXhpc3QsIGl0IHdpbGwgc291cmNlIHRoZSBkZWZhdWx0IHNxbC52aW0gZmlsZS4KICIKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICAgIGZpbmlzaAogZW5kaWYKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc3FsYW55d2hlcmUudmltIGIvcnVudGltZS9zeW50YXgvc3FsYW55d2hlcmUudmltCmluZGV4IDA1YjA1YzkuLmU5MWE5OWQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NxbGFueXdoZXJlLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zcWxhbnl3aGVyZS52aW0KQEAgLTEyLDExICsxMiw4IEBACiAiICAgICAgICAgICAgICBVcGRhdGVkIHRvIEFkYXB0aXZlIFNlcnZlciBBbnl3aGVyZSAgOS4wLjEKICIgICAgICAgICAgICAgIFVwZGF0ZWQgdG8gQWRhcHRpdmUgU2VydmVyIEFueXdoZXJlICA5LjAuMAogIgotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICAgZmluaXNoCiBlbmRpZgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zcWxmb3Jtcy52aW0gYi9ydW50aW1lL3N5bnRheC9zcWxmb3Jtcy52aW0KaW5kZXggMDU1YjJhZS4uMzU4MzQ5YyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc3FsZm9ybXMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NxbGZvcm1zLnZpbQpAQCAtNywyMSArNywxNCBAQAogIgogIiBUT0RPIEZpbmQgYSBuZXcgbWFpbnRhaW5lciB3aG8ga25vd3MgU1FMKkZvcm1zLgogCi0gICAgIiBGb3IgdmVyc2lvbiA1LngsIGNsZWFyIGFsbCBzeW50YXggaXRlbXMuCi0gICAgIiBGb3IgdmVyc2lvbiA2LngsIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZC4KLWlmIHZlcnNpb24gPCA2MDAKLSAgICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICAgZmluaXNoCiBlbmRpZgogCiBzeW50YXggY2FzZSBpZ25vcmUKIAotaWYgdmVyc2lvbiA+PSA2MDAKLSAgc2V0bG9jYWwgaXNrZXl3b3JkPWEteixBLVosNDgtNTcsXywuLC0sPgotZWxzZQotICBzZXQgaXNrZXl3b3JkPWEteixBLVosNDgtNTcsXywuLC0sPgotZW5kaWYKK3NldGxvY2FsIGlza2V5d29yZD1hLXosQS1aLDQ4LTU3LF8sLiwtLD4KIAogCiAgICAgIiBUaGUgU1FMIHJlc2VydmVkIHdvcmRzLCBkZWZpbmVkIGFzIGtleXdvcmRzLgpAQCAtMTM4LDMwICsxMzEsMjMgQEAKIAogc3ludGF4IHN5bmMgY2NvbW1lbnQgc3FsQ29tbWVudAogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc3FsZm9ybXNfc3luX2luaXRzIikKLSAgICBpZiB2ZXJzaW9uIDwgNTA4Ci0JbGV0IGRpZF9zcWxmb3Jtc19zeW5faW5pdHMgPSAxCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgICBlbHNlCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gICAgZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICAgSGlMaW5rIHNxbENvbW1lbnQgQ29tbWVudAotICAgIEhpTGluayBzcWxLZXl3b3JkIFN0YXRlbWVudAotICAgIEhpTGluayBzcWxOdW1iZXIgTnVtYmVyCi0gICAgSGlMaW5rIHNxbE9wZXJhdG9yIFN0YXRlbWVudAotICAgIEhpTGluayBzcWxQcm9jZWR1cmUgU3RhdGVtZW50Ci0gICAgSGlMaW5rIHNxbEZ1bmN0aW9uIFN0YXRlbWVudAotICAgIEhpTGluayBzcWxTeXN0ZW0gSWRlbnRpZmllcgotICAgIEhpTGluayBzcWxTcGVjaWFsIFNwZWNpYWwKLSAgICBIaUxpbmsgc3FsU3RhdGVtZW50IFN0YXRlbWVudAotICAgIEhpTGluayBzcWxTdHJpbmcgU3RyaW5nCi0gICAgSGlMaW5rIHNxbFR5cGUgVHlwZQotICAgIEhpTGluayBzcWxDb2RlcyBJZGVudGlmaWVyCi0gICAgSGlMaW5rIHNxbFRyaWdnZXJzIFByZVByb2MKK0hpTGluayBzcWxDb21tZW50IENvbW1lbnQKK0hpTGluayBzcWxLZXl3b3JkIFN0YXRlbWVudAorSGlMaW5rIHNxbE51bWJlciBOdW1iZXIKK0hpTGluayBzcWxPcGVyYXRvciBTdGF0ZW1lbnQKK0hpTGluayBzcWxQcm9jZWR1cmUgU3RhdGVtZW50CitIaUxpbmsgc3FsRnVuY3Rpb24gU3RhdGVtZW50CitIaUxpbmsgc3FsU3lzdGVtIElkZW50aWZpZXIKK0hpTGluayBzcWxTcGVjaWFsIFNwZWNpYWwKK0hpTGluayBzcWxTdGF0ZW1lbnQgU3RhdGVtZW50CitIaUxpbmsgc3FsU3RyaW5nIFN0cmluZworSGlMaW5rIHNxbFR5cGUgVHlwZQorSGlMaW5rIHNxbENvZGVzIElkZW50aWZpZXIKK0hpTGluayBzcWxUcmlnZ2VycyBQcmVQcm9jCiAKLSAgICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNxbGZvcm1zIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zcWxoYW5hLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NxbGhhbmEudmltCmluZGV4IDE0MTBlOTkuLjJlMzM0YmIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NxbGhhbmEudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NxbGhhbmEudmltCkBAIC03LDExICs3LDggQEAKIAogIiBEZXNjcmlwdGlvbjogVXBkYXRlZCB0byBTQVAgSEFOQSBTUDQKICIKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICAgIGZpbmlzaAogZW5kaWYKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc3FsaW5mb3JtaXgudmltIGIvcnVudGltZS9zeW50YXgvc3FsaW5mb3JtaXgudmltCmluZGV4IGI0ZDAyMzYuLjIwYTg4YWMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NxbGluZm9ybWl4LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zcWxpbmZvcm1peC52aW0KQEAgLTQsMTEgKzQsOCBAQAogIiBNYWludGFpbmVyOglEZWFuIEhpbGwgPGRoaWxsQGhvdG1haWwuY29tPgogIiBMYXN0IENoYW5nZToJMjAwNCBBdWcgMzAKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTE1NCw0MyArMTUxLDM1IEBACiAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc3FsX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3NxbF9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKIAotICAiID09PSBDb21tZW50IHN5bnRheCBncm91cCA9PT0KLSAgSGlMaW5rIHNxbENvbW1lbnQJQ29tbWVudAorIiA9PT0gQ29tbWVudCBzeW50YXggZ3JvdXAgPT09CitIaUxpbmsgc3FsQ29tbWVudAlDb21tZW50CiAKLSAgIiA9PT0gQ29uc3RhbnQgc3ludGF4IGdyb3VwID09PQotICBIaUxpbmsgc3FsTnVtYmVyCU51bWJlcgotICBIaUxpbmsgc3FsQm9vbGVhbglCb29sZWFuCi0gIEhpTGluayBzcWxTdHJpbmcJU3RyaW5nCisiID09PSBDb25zdGFudCBzeW50YXggZ3JvdXAgPT09CitIaUxpbmsgc3FsTnVtYmVyCU51bWJlcgorSGlMaW5rIHNxbEJvb2xlYW4JQm9vbGVhbgorSGlMaW5rIHNxbFN0cmluZwlTdHJpbmcKIAotICAiID09PSBTdGF0bWVudCBzeW50YXggZ3JvdXAgPT09Ci0gIEhpTGluayBzcWxTdGF0ZW1lbnQJU3RhdGVtZW50Ci0gIEhpTGluayBzcWxDb25kaXRpb25hbAlDb25kaXRpb25hbAotICBIaUxpbmsgc3FsUmVwZWF0CQlSZXBlYXQKLSAgSGlMaW5rIHNxbEtleXdvcmQJCUtleXdvcmQKLSAgSGlMaW5rIHNxbE9wZXJhdG9yCU9wZXJhdG9yCi0gIEhpTGluayBzcWxFeGNlcHRpb24JRXhjZXB0aW9uCisiID09PSBTdGF0bWVudCBzeW50YXggZ3JvdXAgPT09CitIaUxpbmsgc3FsU3RhdGVtZW50CVN0YXRlbWVudAorSGlMaW5rIHNxbENvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCitIaUxpbmsgc3FsUmVwZWF0CQlSZXBlYXQKK0hpTGluayBzcWxLZXl3b3JkCQlLZXl3b3JkCitIaUxpbmsgc3FsT3BlcmF0b3IJT3BlcmF0b3IKK0hpTGluayBzcWxFeGNlcHRpb24JRXhjZXB0aW9uCiAKLSAgIiA9PT0gSWRlbnRpZmllciBzeW50YXggZ3JvdXAgPT09Ci0gIEhpTGluayBzcWxGdW5jdGlvbglGdW5jdGlvbgorIiA9PT0gSWRlbnRpZmllciBzeW50YXggZ3JvdXAgPT09CitIaUxpbmsgc3FsRnVuY3Rpb24JRnVuY3Rpb24KIAotICAiID09PSBUeXBlIHN5bnRheCBncm91cCA9PT0KLSAgSGlMaW5rIHNxbFR5cGUJVHlwZQorIiA9PT0gVHlwZSBzeW50YXggZ3JvdXAgPT09CitIaUxpbmsgc3FsVHlwZQlUeXBlCiAKLSAgIiA9PT0gVG9kbyBzeW50YXggZ3JvdXAgPT09Ci0gIEhpTGluayBzcWxUb2RvCVRvZG8KKyIgPT09IFRvZG8gc3ludGF4IGdyb3VwID09PQorSGlMaW5rIHNxbFRvZG8JVG9kbwogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic3FsaW5mb3JtaXgiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zcWxqLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NxbGoudmltCmluZGV4IDUxMzk4ZWYuLmVhOGQ3ZWMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NxbGoudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NxbGoudmltCkBAIC04LDEwICs4LDggQEAKIAogIiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgKi5zcWxqIHNvICRWSU0vc3ludGF4L3NxbGoudmltCiAKLSIgUmVtb3ZlIGFueSBvbGQgc3ludGF4IHN0dWZmIGhhbmdpbmcgYXJvdW5kCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICBmaW5pc2gKIGVuZGlmCiAKQEAgLTc2LDI3ICs3NCwyMCBAQAogCiBzeW4gc3luYyBjY29tbWVudCBzcWxqQ29tbWVudAogCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc3Fsal9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9zcWxqX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kISAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQhIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKK2NvbW1hbmQhIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIuCi0gIEhpTGluayBzcWxqQ29tbWVudAlDb21tZW50Ci0gIEhpTGluayBzcWxqS2V5d29yZAlzcWxqU3BlY2lhbAotICBIaUxpbmsgc3Fsak51bWJlcglOdW1iZXIKLSAgSGlMaW5rIHNxbGpPcGVyYXRvcglzcWxqU3RhdGVtZW50Ci0gIEhpTGluayBzcWxqU3BlY2lhbAlTcGVjaWFsCi0gIEhpTGluayBzcWxqU3RhdGVtZW50CVN0YXRlbWVudAotICBIaUxpbmsgc3FsalN0cmluZwlTdHJpbmcKLSAgSGlMaW5rIHNxbGpUeXBlCVR5cGUKLSAgSGlMaW5rIHNxbGpQcmUJUHJlUHJvYworIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyLgorSGlMaW5rIHNxbGpDb21tZW50CUNvbW1lbnQKK0hpTGluayBzcWxqS2V5d29yZAlzcWxqU3BlY2lhbAorSGlMaW5rIHNxbGpOdW1iZXIJTnVtYmVyCitIaUxpbmsgc3Fsak9wZXJhdG9yCXNxbGpTdGF0ZW1lbnQKK0hpTGluayBzcWxqU3BlY2lhbAlTcGVjaWFsCitIaUxpbmsgc3FsalN0YXRlbWVudAlTdGF0ZW1lbnQKK0hpTGluayBzcWxqU3RyaW5nCVN0cmluZworSGlMaW5rIHNxbGpUeXBlCVR5cGUKK0hpTGluayBzcWxqUHJlCVByZVByb2MKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNxbGoiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Nxci52aW0gYi9ydW50aW1lL3N5bnRheC9zcXIudmltCmluZGV4IDhjOWU3YjQuLjdlNzM0NDMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Nxci52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc3FyLnZpbQpAQCAtMTYsMTkgKzE2LDEyIEBACiAiICAgIGh0dHA6Ly9sYW56YXJvdHRhLnRyaXBvZC5jb20vdmltLmh0bWwKICIgICAgamVmZmxhbnphcm90dGEgYXQgeWFob28gZG90IGNvbQogCi0iIEZvciB2ZXJzaW9uIDUueCwgY2xlYXIgYWxsIHN5bnRheCBpdGVtcy4KLSIgRm9yIHZlcnNpb24gNi54LCBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQuCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCi1pZiB2ZXJzaW9uID49IDYwMAotICBzZXRsb2NhbCBpc2tleXdvcmQ9QCw0OC01NyxfLC0sIywkLHssfQotZWxzZQotICBzZXQgaXNrZXl3b3JkPUAsNDgtNTcsXywtLCMsJCx7LH0KLWVuZGlmCitzZXRsb2NhbCBpc2tleXdvcmQ9QCw0OC01NyxfLC0sIywkLHssfQogCiBzeW4gY2FzZSBpZ25vcmUKIApAQCAtMjIwLDc1ICsyMTMsNTEgQEAKIHN5biBrZXl3b3JkCXNxclRvZG8JCVRPRE8gRklYTUUgWFhYIERFQlVHIE5PVEUgIyMjCiBzeW4gbWF0Y2gJc3FyVG9kbwkJLz8/Py8KIAotaWYgdmVyc2lvbiA+PSA2MDAKLSAgIiBTZWUgYWxzbyB0aGUgc3FyU3RyaW5nIHNlY3Rpb24gYWJvdmUgZm9yIGhhbmRsaW5nIG9mICEgY2hhcmFjdGVycwotICAiIGluc2lkZSBvZiBzdHJpbmdzLiAgKFRob3NlIHBhdHRlcm5zIG92ZXJyaWRlIHRoZSBvbmVzIGJlbG93LikKLSAgc3luIG1hdGNoCXNxckNvbW1lbnQJLyFcQDwhIVwoW14hPV0uKlx8JFwpLyBjb250YWlucz1zcXJUb2RvCi0gICIJCQkJICB0aGUgISBjYW4ndCBiZSBwcmVjZWRlZCBieSBhbm90aGVyICEsCi0gICIJCQkJICBhbmQgbXVzdCBiZSBmb2xsb3dlZCBieSBhdCBsZWFzdCBvbmUKLSAgIgkJCQkgIGNoYXJhY3RlciBvdGhlciB0aGFuICEgb3IgPSwgb3IgaW1tZWRpYXRlbHkKLSAgIgkJCQkgIGJ5IHRoZSBlbmQtb2YtbGluZQotICBzeW4gbWF0Y2gJc3FyQ29tbWVudAkvXiE9LiovIGNvbnRhaW5zPXNxclRvZG8KLSAgc3luIG1hdGNoCXNxckNvbW1lbnQJL14hIS4qLyBjb250YWlucz1zcXJUb2RvCi0gIHN5biBtYXRjaAlzcXJFcnJvcgkvXlxzXCtcenMhPS4qLwotICAiCQkJCSAgaXQncyBhbiBlcnJvciB0byBoYXZlICIhPSIgcHJlY2VkZWQgYnkKLSAgIgkJCQkgIGp1c3Qgd2hpdGVzcGFjZSBvbiB0aGUgbGluZSAoIiE9IgotICAiCQkJCSAgcHJlY2VkZWQgYnkgbm9uLXdoaXRlc3BhY2UgaXMgdHJlYXRlZAotICAiCQkJCSAgYXMgbmVpdGhlciBhIGNvbW1lbnQgbm9yIGFuIGVycm9yLCBzaW5jZQotICAiCQkJCSAgaXQgaXMgb2Z0ZW4gY29ycmVjdCwgaS5lLgotICAiCQkJCSAgICBpZiAjY291bnQgIT0gNwotICBzeW4gbWF0Y2gJc3FyRXJyb3IJLy5cK1x6cyEhLiovCi0gICIJCQkJICBhICIhISIgYW55d2hlcmUgYnV0IGF0IHRoZSBiZWdpbm5pbmcgb2YKLSAgIgkJCQkgIHRoZSBsaW5lIGlzIGFsd2F5cyBhbiBlcnJvcgotZWxzZSAiRm9yIHZlcnNpb25zIGJlZm9yZSA2LjAsIHNhbWUgaWRlYSBhcyBhYm92ZSBidXQgd2UgYXJlIGxpbWl0ZWQKLSAgICAgInRvIHNpbXBsZSBwYXR0ZXJucyBvbmx5LiAgQWxzbywgdGhlIHNxclN0cmluZyBwYXR0ZXJucyBhYm92ZQotICAgICAiZG9uJ3Qgc2VlbSB0byB0YWtlIHByZWNlZGVuY2UgaW4gdjUgYXMgdGhleSBkbyBpbiB2Niwgc28KLSAgICAgIndlIHNwbGl0IHRoZSBsYXN0IHJ1bGUgdG8gaWdub3JlIGNvbW1lbnRzIGZvdW5kIGluc2lkZSBvZgotICAgICAic3RyaW5nIGxpdGVyYWxzLgotICBzeW4gbWF0Y2gJc3FyQ29tbWVudAkvIVwoW14hPV0uKlx8JFwpLyBjb250YWlucz1zcXJUb2RvCi0gIHN5biBtYXRjaAlzcXJDb21tZW50CS9eIT0uKi8gY29udGFpbnM9c3FyVG9kbwotICBzeW4gbWF0Y2gJc3FyQ29tbWVudAkvXiEhLiovIGNvbnRhaW5zPXNxclRvZG8KLSAgc3luIG1hdGNoCXNxckVycm9yCS9eXHNcKyE9LiovCi0gIHN5biBtYXRjaAlzcXJFcnJvcgkvXlteJyFdXCshIS8KLSAgIgkJCQlmbGFnICEhIG9uIGxpbmVzIHRoYXQgZG9uJ3QgaGF2ZSAhIG9yICcKLSAgc3luIG1hdGNoCXNxckVycm9yCS9eXChbXiEnXSonW14nXSonW14hJ10qXClcKyEhLwotICAiCQkJCWZsYWcgISEgZm91bmQgYWZ0ZXIgbWF0Y2hlZCAnICcgY2hhcnMKLSAgIgkJCQkodGhhdCBhcmVuJ3QgYWxzbyBjb21tZW50ZWQpCi1lbmRpZgorIiBTZWUgYWxzbyB0aGUgc3FyU3RyaW5nIHNlY3Rpb24gYWJvdmUgZm9yIGhhbmRsaW5nIG9mICEgY2hhcmFjdGVycworIiBpbnNpZGUgb2Ygc3RyaW5ncy4gIChUaG9zZSBwYXR0ZXJucyBvdmVycmlkZSB0aGUgb25lcyBiZWxvdy4pCitzeW4gbWF0Y2gJc3FyQ29tbWVudAkvIVxAPCEhXChbXiE9XS4qXHwkXCkvIGNvbnRhaW5zPXNxclRvZG8KKyIJCQkJICB0aGUgISBjYW4ndCBiZSBwcmVjZWRlZCBieSBhbm90aGVyICEsCisiCQkJCSAgYW5kIG11c3QgYmUgZm9sbG93ZWQgYnkgYXQgbGVhc3Qgb25lCisiCQkJCSAgY2hhcmFjdGVyIG90aGVyIHRoYW4gISBvciA9LCBvciBpbW1lZGlhdGVseQorIgkJCQkgIGJ5IHRoZSBlbmQtb2YtbGluZQorc3luIG1hdGNoCXNxckNvbW1lbnQJL14hPS4qLyBjb250YWlucz1zcXJUb2RvCitzeW4gbWF0Y2gJc3FyQ29tbWVudAkvXiEhLiovIGNvbnRhaW5zPXNxclRvZG8KK3N5biBtYXRjaAlzcXJFcnJvcgkvXlxzXCtcenMhPS4qLworIgkJCQkgIGl0J3MgYW4gZXJyb3IgdG8gaGF2ZSAiIT0iIHByZWNlZGVkIGJ5CisiCQkJCSAganVzdCB3aGl0ZXNwYWNlIG9uIHRoZSBsaW5lICgiIT0iCisiCQkJCSAgcHJlY2VkZWQgYnkgbm9uLXdoaXRlc3BhY2UgaXMgdHJlYXRlZAorIgkJCQkgIGFzIG5laXRoZXIgYSBjb21tZW50IG5vciBhbiBlcnJvciwgc2luY2UKKyIJCQkJICBpdCBpcyBvZnRlbiBjb3JyZWN0LCBpLmUuCisiCQkJCSAgICBpZiAjY291bnQgIT0gNworc3luIG1hdGNoCXNxckVycm9yCS8uXCtcenMhIS4qLworIgkJCQkgIGEgIiEhIiBhbnl3aGVyZSBidXQgYXQgdGhlIGJlZ2lubmluZyBvZgorIgkJCQkgIHRoZSBsaW5lIGlzIGFsd2F5cyBhbiBlcnJvcgogCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyLCBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeS4KLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlciwgb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQuCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc3FyX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3Nxcl9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldC4KK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBzcXJTZWN0aW9uIFN0YXRlbWVudAotICBIaUxpbmsgc3FyUGFyYWdyYXBoIFN0YXRlbWVudAotICBIaUxpbmsgc3FyUmVzZXJ2ZWQgU3RhdGVtZW50Ci0gIEhpTGluayBzcXJQYXJhbWV0ZXIgU3RhdGVtZW50Ci0gIEhpTGluayBzcXJQcmVQcm9jIFByZVByb2MKLSAgSGlMaW5rIHNxclN1YnN0VmFyIFByZVByb2MKLSAgSGlMaW5rIHNxckNvbW1hbmQgU3RhdGVtZW50Ci0gIEhpTGluayBzcXJQYXJhbSBUeXBlCi0gIEhpTGluayBzcXJGdW5jdGlvbiBTcGVjaWFsCitIaUxpbmsgc3FyU2VjdGlvbiBTdGF0ZW1lbnQKK0hpTGluayBzcXJQYXJhZ3JhcGggU3RhdGVtZW50CitIaUxpbmsgc3FyUmVzZXJ2ZWQgU3RhdGVtZW50CitIaUxpbmsgc3FyUGFyYW1ldGVyIFN0YXRlbWVudAorSGlMaW5rIHNxclByZVByb2MgUHJlUHJvYworSGlMaW5rIHNxclN1YnN0VmFyIFByZVByb2MKK0hpTGluayBzcXJDb21tYW5kIFN0YXRlbWVudAorSGlMaW5rIHNxclBhcmFtIFR5cGUKK0hpTGluayBzcXJGdW5jdGlvbiBTcGVjaWFsCiAKLSAgSGlMaW5rIHNxclN0cmluZyBTdHJpbmcKLSAgSGlMaW5rIHNxclN0ck9wZW4gVG9kbwotICBIaUxpbmsgc3FyTnVtYmVyIE51bWJlcgotICBIaUxpbmsgc3FyVmFyaWFibGUgSWRlbnRpZmllcgorSGlMaW5rIHNxclN0cmluZyBTdHJpbmcKK0hpTGluayBzcXJTdHJPcGVuIFRvZG8KK0hpTGluayBzcXJOdW1iZXIgTnVtYmVyCitIaUxpbmsgc3FyVmFyaWFibGUgSWRlbnRpZmllcgogCi0gIEhpTGluayBzcXJDb21tZW50IENvbW1lbnQKLSAgSGlMaW5rIHNxclRvZG8gVG9kbwotICBIaUxpbmsgc3FyRXJyb3IgRXJyb3IKK0hpTGluayBzcXJDb21tZW50IENvbW1lbnQKK0hpTGluayBzcXJUb2RvIFRvZG8KK0hpTGluayBzcXJFcnJvciBFcnJvcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic3FyIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zcXVpZC52aW0gYi9ydW50aW1lL3N5bnRheC9zcXVpZC52aW0KaW5kZXggYTg0NjJiYi4uZWUyYjg1NCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc3F1aWQudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NxdWlkLnZpbQpAQCAtNywxMSArNyw4IEBACiAiICAgICAgICAgICAgICAgTWljaGFlbCBEb3R6bGVyIDxNaWNoYWVsLkRvdHpsZXJAbGVvbmkuY29tPgogCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xMjMsMzAgKzEyMCwyMiBAQAogc3luIHN5bmMgbWlubGluZXM9MwogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9zcXVpZF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9zcXVpZF9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHNxdWlkVG9kbwlUb2RvCi0gIEhpTGluayBzcXVpZENvbW1lbnQJQ29tbWVudAotICBIaUxpbmsgc3F1aWRUYWcJU3BlY2lhbAotICBIaUxpbmsgc3F1aWRDb25mCUtleXdvcmQKLSAgSGlMaW5rIHNxdWlkT3B0CUNvbnN0YW50Ci0gIEhpTGluayBzcXVpZEFjdGlvbglTdHJpbmcKLSAgSGlMaW5rIHNxdWlkTnVtYmVyCU51bWJlcgotICBIaUxpbmsgc3F1aWRJUAlOdW1iZXIKLSAgSGlMaW5rIHNxdWlkQWNsCUtleXdvcmQKLSAgSGlMaW5rIHNxdWlkU3RyCVN0cmluZwotICBIaUxpbmsgc3F1aWRSZWdleE9wdAlTcGVjaWFsCitIaUxpbmsgc3F1aWRUb2RvCVRvZG8KK0hpTGluayBzcXVpZENvbW1lbnQJQ29tbWVudAorSGlMaW5rIHNxdWlkVGFnCVNwZWNpYWwKK0hpTGluayBzcXVpZENvbmYJS2V5d29yZAorSGlMaW5rIHNxdWlkT3B0CUNvbnN0YW50CitIaUxpbmsgc3F1aWRBY3Rpb24JU3RyaW5nCitIaUxpbmsgc3F1aWROdW1iZXIJTnVtYmVyCitIaUxpbmsgc3F1aWRJUAlOdW1iZXIKK0hpTGluayBzcXVpZEFjbAlLZXl3b3JkCitIaUxpbmsgc3F1aWRTdHIJU3RyaW5nCitIaUxpbmsgc3F1aWRSZWdleE9wdAlTcGVjaWFsCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJzcXVpZCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc3JlYy52aW0gYi9ydW50aW1lL3N5bnRheC9zcmVjLnZpbQppbmRleCAxOWI2ZDk3Li44MzRjZWM3IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zcmVjLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zcmVjLnZpbQpAQCAtMjQsMTEgKzI0LDggQEAKICIgU3RhdGVzIGluIHBhcmVudGhlc2VzIGluIHRoZSB1cHBlciBmb3JtYXQgZGVzY3JpcHRpb24gaW5kaWNhdGUgdGhhdCB0aGV5CiAiIHNob3VsZCBub3QgYXBwZWFyIGluIGEgdmFsaWQgZmlsZS4KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTYzLDMzICs2MCwyNSBAQAogc3luIG1hdGNoIHNyZWNDaGVja3N1bSAiWzAtOWEtZkEtRl1cezJ9JCIgY29udGFpbmVkCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3NyZWNfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfc3JlY19zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyCi0gIEhpTGluayBzcmVjUmVjU3RhcnQgICAgICAgICAgICBzcmVjUmVjVHlwZQotICBIaUxpbmsgc3JlY1JlY1R5cGVVbmtub3duICAgICAgc3JlY1JlY1R5cGUKLSAgSGlMaW5rIHNyZWNSZWNUeXBlICAgICAgICAgICAgIFdhcm5pbmdNc2cKLSAgSGlMaW5rIHNyZWNCeXRlQ291bnQgICAgICAgICAgIENvbnN0YW50Ci0gIGhpIGRlZiBzcmVjQWRkcmVzc0ZpZWxkVW5rbm93biB0ZXJtPWl0YWxpYyBjdGVybT1pdGFsaWMgZ3VpPWl0YWxpYwotICBIaUxpbmsgc3JlY05vQWRkcmVzcyAgICAgICAgICAgRGlmZkFkZAotICBIaUxpbmsgc3JlY0RhdGFBZGRyZXNzICAgICAgICAgQ29tbWVudAotICBIaUxpbmsgc3JlY1JlY0NvdW50ICAgICAgICAgICAgc3JlY05vQWRkcmVzcwotICBIaUxpbmsgc3JlY1N0YXJ0QWRkcmVzcyAgICAgICAgc3JlY0RhdGFBZGRyZXNzCi0gIGhpIGRlZiBzcmVjRGF0YU9kZCAgICAgICAgICAgICB0ZXJtPWJvbGQgY3Rlcm09Ym9sZCBndWk9Ym9sZAotICBoaSBkZWYgc3JlY0RhdGFFdmVuICAgICAgICAgICAgdGVybT1OT05FIGN0ZXJtPU5PTkUgZ3VpPU5PTkUKLSAgSGlMaW5rIHNyZWNEYXRhVW5leHBlY3RlZCAgICAgIEVycm9yCi0gIEhpTGluayBzcmVjQ2hlY2tzdW0gICAgICAgICAgICBEaWZmQ2hhbmdlCisiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKK0hpTGluayBzcmVjUmVjU3RhcnQgICAgICAgICAgICBzcmVjUmVjVHlwZQorSGlMaW5rIHNyZWNSZWNUeXBlVW5rbm93biAgICAgIHNyZWNSZWNUeXBlCitIaUxpbmsgc3JlY1JlY1R5cGUgICAgICAgICAgICAgV2FybmluZ01zZworSGlMaW5rIHNyZWNCeXRlQ291bnQgICAgICAgICAgIENvbnN0YW50CitoaSBkZWYgc3JlY0FkZHJlc3NGaWVsZFVua25vd24gdGVybT1pdGFsaWMgY3Rlcm09aXRhbGljIGd1aT1pdGFsaWMKK0hpTGluayBzcmVjTm9BZGRyZXNzICAgICAgICAgICBEaWZmQWRkCitIaUxpbmsgc3JlY0RhdGFBZGRyZXNzICAgICAgICAgQ29tbWVudAorSGlMaW5rIHNyZWNSZWNDb3VudCAgICAgICAgICAgIHNyZWNOb0FkZHJlc3MKK0hpTGluayBzcmVjU3RhcnRBZGRyZXNzICAgICAgICBzcmVjRGF0YUFkZHJlc3MKK2hpIGRlZiBzcmVjRGF0YU9kZCAgICAgICAgICAgICB0ZXJtPWJvbGQgY3Rlcm09Ym9sZCBndWk9Ym9sZAoraGkgZGVmIHNyZWNEYXRhRXZlbiAgICAgICAgICAgIHRlcm09Tk9ORSBjdGVybT1OT05FIGd1aT1OT05FCitIaUxpbmsgc3JlY0RhdGFVbmV4cGVjdGVkICAgICAgRXJyb3IKK0hpTGluayBzcmVjQ2hlY2tzdW0gICAgICAgICAgICBEaWZmQ2hhbmdlCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJzcmVjIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zc2hjb25maWcudmltIGIvcnVudGltZS9zeW50YXgvc3NoY29uZmlnLnZpbQppbmRleCAzMDJkMDczLi4wNTFiMmY5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zc2hjb25maWcudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NzaGNvbmZpZy52aW0KQEAgLTEwLDE5ICsxMCwxMiBAQAogIgogCiAiIFNldHVwCi1pZiB2ZXJzaW9uID49IDYwMAotICBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQotICAgIGZpbmlzaAotICBlbmRpZgotZWxzZQotICBzeW50YXggY2xlYXIKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorICBmaW5pc2gKIGVuZGlmCiAKLWlmIHZlcnNpb24gPj0gNjAwCi0gIHNldGxvY2FsIGlza2V5d29yZD1fLC0sYS16LEEtWiw0OC01NwotZWxzZQotICBzZXQgaXNrZXl3b3JkPV8sLSxhLXosQS1aLDQ4LTU3Ci1lbmRpZgorc2V0bG9jYWwgaXNrZXl3b3JkPV8sLSxhLXosQS1aLDQ4LTU3CiAKIAogIiBjYXNlIG9uCkBAIC0yMzMsNDAgKzIyNiwzMyBAQAogc3luIGtleXdvcmQgc3NoY29uZmlnS2V5d29yZCBYQXV0aExvY2F0aW9uCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZwotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3NzaGNvbmZpZ19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF9zc2hjb25maWdfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBzc2hjb25maWdDb21tZW50ICAgICAgICBDb21tZW50Ci0gIEhpTGluayBzc2hjb25maWdUb2RvICAgICAgICAgICBUb2RvCi0gIEhpTGluayBzc2hjb25maWdIb3N0UG9ydCAgICAgICBzc2hjb25maWdDb25zdGFudAotICBIaUxpbmsgc3NoY29uZmlnTnVtYmVyICAgICAgICAgc3NoY29uZmlnQ29uc3RhbnQKLSAgSGlMaW5rIHNzaGNvbmZpZ0NvbnN0YW50ICAgICAgIENvbnN0YW50Ci0gIEhpTGluayBzc2hjb25maWdZZXNObyAgICAgICAgICBzc2hjb25maWdFbnVtCi0gIEhpTGluayBzc2hjb25maWdDaXBoZXIgICAgICAgICBzc2hjb25maWdFbnVtCi0gIEhpTGluayBzc2hjb25maWdDaXBoZXJzCSBzc2hjb25maWdFbnVtCi0gIEhpTGluayBzc2hjb25maWdNQUMgICAgICAgICAgICBzc2hjb25maWdFbnVtCi0gIEhpTGluayBzc2hjb25maWdIb3N0S2V5QWxnbyAgICBzc2hjb25maWdFbnVtCi0gIEhpTGluayBzc2hjb25maWdMb2dMZXZlbCAgICAgICBzc2hjb25maWdFbnVtCi0gIEhpTGluayBzc2hjb25maWdTeXNMb2dGYWNpbGl0eSBzc2hjb25maWdFbnVtCi0gIEhpTGluayBzc2hjb25maWdBZGRyZXNzRmFtaWx5ICBzc2hjb25maWdFbnVtCi0gIEhpTGluayBzc2hjb25maWdJUFFvUwkJIHNzaGNvbmZpZ0VudW0KLSAgSGlMaW5rIHNzaGNvbmZpZ0tiZEludGVyYWN0aXZlIHNzaGNvbmZpZ0VudW0KLSAgSGlMaW5rIHNzaGNvbmZpZ0tleEFsZ28JIHNzaGNvbmZpZ0VudW0KLSAgSGlMaW5rIHNzaGNvbmZpZ1R1bm5lbAkgc3NoY29uZmlnRW51bQotICBIaUxpbmsgc3NoY29uZmlnUHJlZmVycmVkQXV0aCAgc3NoY29uZmlnRW51bQotICBIaUxpbmsgc3NoY29uZmlnVmFyICAgICAgICAgICAgc3NoY29uZmlnRW51bQotICBIaUxpbmsgc3NoY29uZmlnRW51bSAgICAgICAgICAgSWRlbnRpZmllcgotICBIaUxpbmsgc3NoY29uZmlnU3BlY2lhbCAgICAgICAgU3BlY2lhbAotICBIaUxpbmsgc3NoY29uZmlnS2V5d29yZCAgICAgICAgS2V5d29yZAotICBIaUxpbmsgc3NoY29uZmlnSG9zdFNlY3QgICAgICAgVHlwZQotICBIaUxpbmsgc3NoY29uZmlnTWF0Y2ggICAgICAgICAgVHlwZQotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK0hpTGluayBzc2hjb25maWdDb21tZW50ICAgICAgICBDb21tZW50CitIaUxpbmsgc3NoY29uZmlnVG9kbyAgICAgICAgICAgVG9kbworSGlMaW5rIHNzaGNvbmZpZ0hvc3RQb3J0ICAgICAgIHNzaGNvbmZpZ0NvbnN0YW50CitIaUxpbmsgc3NoY29uZmlnTnVtYmVyICAgICAgICAgc3NoY29uZmlnQ29uc3RhbnQKK0hpTGluayBzc2hjb25maWdDb25zdGFudCAgICAgICBDb25zdGFudAorSGlMaW5rIHNzaGNvbmZpZ1llc05vICAgICAgICAgIHNzaGNvbmZpZ0VudW0KK0hpTGluayBzc2hjb25maWdDaXBoZXIgICAgICAgICBzc2hjb25maWdFbnVtCitIaUxpbmsgc3NoY29uZmlnQ2lwaGVycwkgc3NoY29uZmlnRW51bQorSGlMaW5rIHNzaGNvbmZpZ01BQyAgICAgICAgICAgIHNzaGNvbmZpZ0VudW0KK0hpTGluayBzc2hjb25maWdIb3N0S2V5QWxnbyAgICBzc2hjb25maWdFbnVtCitIaUxpbmsgc3NoY29uZmlnTG9nTGV2ZWwgICAgICAgc3NoY29uZmlnRW51bQorSGlMaW5rIHNzaGNvbmZpZ1N5c0xvZ0ZhY2lsaXR5IHNzaGNvbmZpZ0VudW0KK0hpTGluayBzc2hjb25maWdBZGRyZXNzRmFtaWx5ICBzc2hjb25maWdFbnVtCitIaUxpbmsgc3NoY29uZmlnSVBRb1MJCSBzc2hjb25maWdFbnVtCitIaUxpbmsgc3NoY29uZmlnS2JkSW50ZXJhY3RpdmUgc3NoY29uZmlnRW51bQorSGlMaW5rIHNzaGNvbmZpZ0tleEFsZ28JIHNzaGNvbmZpZ0VudW0KK0hpTGluayBzc2hjb25maWdUdW5uZWwJIHNzaGNvbmZpZ0VudW0KK0hpTGluayBzc2hjb25maWdQcmVmZXJyZWRBdXRoICBzc2hjb25maWdFbnVtCitIaUxpbmsgc3NoY29uZmlnVmFyICAgICAgICAgICAgc3NoY29uZmlnRW51bQorSGlMaW5rIHNzaGNvbmZpZ0VudW0gICAgICAgICAgIElkZW50aWZpZXIKK0hpTGluayBzc2hjb25maWdTcGVjaWFsICAgICAgICBTcGVjaWFsCitIaUxpbmsgc3NoY29uZmlnS2V5d29yZCAgICAgICAgS2V5d29yZAorSGlMaW5rIHNzaGNvbmZpZ0hvc3RTZWN0ICAgICAgIFR5cGUKK0hpTGluayBzc2hjb25maWdNYXRjaCAgICAgICAgICBUeXBlCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJzc2hjb25maWciCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NzaGRjb25maWcudmltIGIvcnVudGltZS9zeW50YXgvc3NoZGNvbmZpZy52aW0KaW5kZXggNmI3Yjk4ZC4uMjhiOGFjYSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc3NoZGNvbmZpZy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc3NoZGNvbmZpZy52aW0KQEAgLTExLDE5ICsxMSwxMiBAQAogIgogCiAiIFNldHVwCi1pZiB2ZXJzaW9uID49IDYwMAotICBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQotICAgIGZpbmlzaAotICBlbmRpZgotZWxzZQotICBzeW50YXggY2xlYXIKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorICBmaW5pc2gKIGVuZGlmCiAKLWlmIHZlcnNpb24gPj0gNjAwCi0gIHNldGxvY2FsIGlza2V5d29yZD1fLC0sYS16LEEtWiw0OC01NwotZWxzZQotICBzZXQgaXNrZXl3b3JkPV8sLSxhLXosQS1aLDQ4LTU3Ci1lbmRpZgorc2V0bG9jYWwgaXNrZXl3b3JkPV8sLSxhLXosQS1aLDQ4LTU3CiAKIAogIiBjYXNlIG9uCkBAIC0yMzksNDMgKzIzMiwzNiBAQAogCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZwotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3NzaGRjb25maWdfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfc3NoZGNvbmZpZ19zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHNzaGRjb25maWdDb21tZW50ICAgICAgICAgICAgICBDb21tZW50Ci0gIEhpTGluayBzc2hkY29uZmlnVG9kbyAgICAgICAgICAgICAgICAgVG9kbwotICBIaUxpbmsgc3NoZGNvbmZpZ0hvc3RQb3J0ICAgICAgICAgICAgIHNzaGRjb25maWdDb25zdGFudAotICBIaUxpbmsgc3NoZGNvbmZpZ1RpbWUgICAgICAgICAgICAgICAgIHNzaGRjb25maWdDb25zdGFudAotICBIaUxpbmsgc3NoZGNvbmZpZ051bWJlciAgICAgICAgICAgICAgIHNzaGRjb25maWdDb25zdGFudAotICBIaUxpbmsgc3NoZGNvbmZpZ0NvbnN0YW50ICAgICAgICAgICAgIENvbnN0YW50Ci0gIEhpTGluayBzc2hkY29uZmlnWWVzTm8gICAgICAgICAgICAgICAgc3NoZGNvbmZpZ0VudW0KLSAgSGlMaW5rIHNzaGRjb25maWdBZGRyZXNzRmFtaWx5ICAgICAgICBzc2hkY29uZmlnRW51bQotICBIaUxpbmsgc3NoZGNvbmZpZ1ByaXZpbGVnZVNlcGFyYXRpb24gIHNzaGRjb25maWdFbnVtCi0gIEhpTGluayBzc2hkY29uZmlnVGNwRm9yd2FyZGluZyAgICAgICAgc3NoZGNvbmZpZ0VudW0KLSAgSGlMaW5rIHNzaGRjb25maWdSb290TG9naW4gICAgICAgICAgICBzc2hkY29uZmlnRW51bQotICBIaUxpbmsgc3NoZGNvbmZpZ0NpcGhlcnMgICAgICAgICAgICAgIHNzaGRjb25maWdFbnVtCi0gIEhpTGluayBzc2hkY29uZmlnTUFDICAgICAgICAgICAgICAgICAgc3NoZGNvbmZpZ0VudW0KLSAgSGlMaW5rIHNzaGRjb25maWdIb3N0S2V5QWxnbyAgICAgICAgICBzc2hkY29uZmlnRW51bQotICBIaUxpbmsgc3NoZGNvbmZpZ1Jvb3RMb2dpbiAgICAgICAgICAgIHNzaGRjb25maWdFbnVtCi0gIEhpTGluayBzc2hkY29uZmlnTG9nTGV2ZWwgICAgICAgICAgICAgc3NoZGNvbmZpZ0VudW0KLSAgSGlMaW5rIHNzaGRjb25maWdTeXNMb2dGYWNpbGl0eSAgICAgICBzc2hkY29uZmlnRW51bQotICBIaUxpbmsgc3NoZGNvbmZpZ1ZhciAgICAgICAgICAgICAgICAgIHNzaGRjb25maWdFbnVtCi0gIEhpTGluayBzc2hkY29uZmlnQ29tcHJlc3Npb24gICAgICAgICAgc3NoZGNvbmZpZ0VudW0KLSAgSGlMaW5rIHNzaGRjb25maWdJUFFvUyAgICAgICAgICAgICAgICBzc2hkY29uZmlnRW51bQotICBIaUxpbmsgc3NoZGNvbmZpZ0tleEFsZ28gICAgICAgICAgICAgIHNzaGRjb25maWdFbnVtCi0gIEhpTGluayBzc2hkY29uZmlnVHVubmVsICAgICAgICAgICAgICAgc3NoZGNvbmZpZ0VudW0KLSAgSGlMaW5rIHNzaGRjb25maWdTdWJzeXN0ZW0gICAgICAgICAgICBzc2hkY29uZmlnRW51bQotICBIaUxpbmsgc3NoZGNvbmZpZ0VudW0gICAgICAgICAgICAgICAgIEZ1bmN0aW9uCi0gIEhpTGluayBzc2hkY29uZmlnU3BlY2lhbCAgICAgICAgICAgICAgU3BlY2lhbAotICBIaUxpbmsgc3NoZGNvbmZpZ0tleXdvcmQgICAgICAgICAgICAgIEtleXdvcmQKLSAgSGlMaW5rIHNzaGRjb25maWdNYXRjaCAgICAgICAgICAgICAgICBUeXBlCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorSGlMaW5rIHNzaGRjb25maWdDb21tZW50ICAgICAgICAgICAgICBDb21tZW50CitIaUxpbmsgc3NoZGNvbmZpZ1RvZG8gICAgICAgICAgICAgICAgIFRvZG8KK0hpTGluayBzc2hkY29uZmlnSG9zdFBvcnQgICAgICAgICAgICAgc3NoZGNvbmZpZ0NvbnN0YW50CitIaUxpbmsgc3NoZGNvbmZpZ1RpbWUgICAgICAgICAgICAgICAgIHNzaGRjb25maWdDb25zdGFudAorSGlMaW5rIHNzaGRjb25maWdOdW1iZXIgICAgICAgICAgICAgICBzc2hkY29uZmlnQ29uc3RhbnQKK0hpTGluayBzc2hkY29uZmlnQ29uc3RhbnQgICAgICAgICAgICAgQ29uc3RhbnQKK0hpTGluayBzc2hkY29uZmlnWWVzTm8gICAgICAgICAgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnQWRkcmVzc0ZhbWlseSAgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnUHJpdmlsZWdlU2VwYXJhdGlvbiAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnVGNwRm9yd2FyZGluZyAgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnUm9vdExvZ2luICAgICAgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnQ2lwaGVycyAgICAgICAgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnTUFDICAgICAgICAgICAgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnSG9zdEtleUFsZ28gICAgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnUm9vdExvZ2luICAgICAgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnTG9nTGV2ZWwgICAgICAgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnU3lzTG9nRmFjaWxpdHkgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnVmFyICAgICAgICAgICAgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnQ29tcHJlc3Npb24gICAgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnSVBRb1MgICAgICAgICAgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnS2V4QWxnbyAgICAgICAgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnVHVubmVsICAgICAgICAgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnU3Vic3lzdGVtICAgICAgICAgICAgc3NoZGNvbmZpZ0VudW0KK0hpTGluayBzc2hkY29uZmlnRW51bSAgICAgICAgICAgICAgICAgRnVuY3Rpb24KK0hpTGluayBzc2hkY29uZmlnU3BlY2lhbCAgICAgICAgICAgICAgU3BlY2lhbAorSGlMaW5rIHNzaGRjb25maWdLZXl3b3JkICAgICAgICAgICAgICBLZXl3b3JkCitIaUxpbmsgc3NoZGNvbmZpZ01hdGNoICAgICAgICAgICAgICAgIFR5cGUKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInNzaGRjb25maWciCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3N0LnZpbSBiL3J1bnRpbWUvc3ludGF4L3N0LnZpbQppbmRleCA0N2FhMDdkLi4xMDcxY2FhIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zdC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc3QudmltCkBAIC0zLDExICszLDggQEAKICIgTWFpbnRhaW5lcjoJQXJuZHQgSGVzc2UgPGhlc3NlQHNlbGYuZGU+CiAiIExhc3QgQ2hhbmdlOgkyMDEyIEZlYiAxMiBieSBUaGlsbyBTaXgKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTc3LDMwICs3NCwyMiBAQAogc3luIHN5bmMgbWlubGluZXM9NTAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc3Rfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfc3Rfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayBzdEtleXdvcmQJCVN0YXRlbWVudAotICBIaUxpbmsgc3RNZXRob2QJCVN0YXRlbWVudAotICBIaUxpbmsgc3RDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayBzdENoYXJhY3RlcgkJQ29uc3RhbnQKLSAgSGlMaW5rIHN0U3RyaW5nCQlDb25zdGFudAotICBIaUxpbmsgc3RTeW1ib2wJCVNwZWNpYWwKLSAgSGlMaW5rIHN0TnVtYmVyCQlUeXBlCi0gIEhpTGluayBzdEZsb2F0CQlUeXBlCi0gIEhpTGluayBzdEVycm9yCQlFcnJvcgotICBIaUxpbmsgc3RMb2NhbFZhcmlhYmxlcwlJZGVudGlmaWVyCi0gIEhpTGluayBzdEJsb2NrVmFyaWFibGUJSWRlbnRpZmllcgorSGlMaW5rIHN0S2V5d29yZAkJU3RhdGVtZW50CitIaUxpbmsgc3RNZXRob2QJCVN0YXRlbWVudAorSGlMaW5rIHN0Q29tbWVudAkJQ29tbWVudAorSGlMaW5rIHN0Q2hhcmFjdGVyCQlDb25zdGFudAorSGlMaW5rIHN0U3RyaW5nCQlDb25zdGFudAorSGlMaW5rIHN0U3ltYm9sCQlTcGVjaWFsCitIaUxpbmsgc3ROdW1iZXIJCVR5cGUKK0hpTGluayBzdEZsb2F0CQlUeXBlCitIaUxpbmsgc3RFcnJvcgkJRXJyb3IKK0hpTGluayBzdExvY2FsVmFyaWFibGVzCUlkZW50aWZpZXIKK0hpTGluayBzdEJsb2NrVmFyaWFibGUJSWRlbnRpZmllcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic3QiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3N0YXRhLnZpbSBiL3J1bnRpbWUvc3ludGF4L3N0YXRhLnZpbQppbmRleCBlMWYxOWM4Li4yOWY1MDUyIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zdGF0YS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc3RhdGEudmltCkBAIC0xMiw5ICsxMiw4IEBACiAiIDI2YXByMjAwNglmaXhlZCBicmFjZSBjb25mdXNpb24gaW4gc3RhdGFFcnJJblBhcmVuIGFuZCBzdGF0YUVyckluQnJhY2tldAogIgkJZml4ZWQgcGFyZW4vYnJhY2tldCBjb25mdXNpb24gaW4gc3RhdGFGdW5jR3JvdXAKIAotaWYgdmVyc2lvbiA8IDYwMAotCXN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKIAlmaW5pc2gKIGVuZGlmCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3N0cC52aW0gYi9ydW50aW1lL3N5bnRheC9zdHAudmltCmluZGV4IGY0ZjBmM2IuLmZiZDY1OTYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3N0cC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc3RwLnZpbQpAQCAtNCwxMSArNCw4IEBACiAiCSAgVVJMOiBodHRwOi8vbGFuemFyb3R0YS50cmlwb2QuY29tL3ZpbS9zeW50YXgvc3RwLnZpbS56aXAKICIgTGFzdCBDaGFuZ2U6IE1hcmNoIDA1LCAyMDAyCiAKLSIgRm9yIHZlcnNpb24gNS54LCBjbGVhciBhbGwgc3ludGF4IGl0ZW1zLgotIiBGb3IgdmVyc2lvbiA2LngsIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZC4KLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTEzMSwzNiArMTI4LDI4IEBACiBzeW4gc3luYyBtaW5saW5lcz0xMCBtYXhsaW5lcz0xMDAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LnggYW5kIGVhcmxpZXIsIG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5LgotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyLCBvbmx5IHdoZW4gYW5kIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQuCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc3RwX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3N0cF9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW5kIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQuCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgc3RwQ29uZGl0aW9uYWwgQ29uZGl0aW9uYWwKLSAgSGlMaW5rIHN0cENvbW1lbnQgQ29tbWVudAotICBIaUxpbmsgc3RwS2V5d29yZCBLZXl3b3JkCi0gIEhpTGluayBzdHBOdW1iZXIgTnVtYmVyCi0gIEhpTGluayBzdHBPcGVyYXRvciBPcGVyYXRvcgotICBIaUxpbmsgc3RwU3BlY2lhbCBTcGVjaWFsCi0gIEhpTGluayBzdHBTdGF0ZW1lbnQgU3RhdGVtZW50Ci0gIEhpTGluayBzdHBTdHJpbmcgU3RyaW5nCi0gIEhpTGluayBzdHBTdHJpbmdFcnJvciBFcnJvcgotICBIaUxpbmsgc3RwVHlwZSBUeXBlCi0gIEhpTGluayBzdHBUb2RvIFRvZG8KLSAgSGlMaW5rIHN0cEZ1bmN0aW9uIEZ1bmN0aW9uCi0gIEhpTGluayBzdHBHbG9iYWxzIE1hY3JvCi0gIEhpTGluayBzdHBQYXJlbiBOb3JtYWwKLSAgSGlMaW5rIHN0cFBhcmVuRXJyb3IgRXJyb3IKLSAgSGlMaW5rIHN0cFNRTEtleXdvcmQgRnVuY3Rpb24KLSAgSGlMaW5rIHN0cFJlcGVhdCBSZXBlYXQKK0hpTGluayBzdHBDb25kaXRpb25hbCBDb25kaXRpb25hbAorSGlMaW5rIHN0cENvbW1lbnQgQ29tbWVudAorSGlMaW5rIHN0cEtleXdvcmQgS2V5d29yZAorSGlMaW5rIHN0cE51bWJlciBOdW1iZXIKK0hpTGluayBzdHBPcGVyYXRvciBPcGVyYXRvcgorSGlMaW5rIHN0cFNwZWNpYWwgU3BlY2lhbAorSGlMaW5rIHN0cFN0YXRlbWVudCBTdGF0ZW1lbnQKK0hpTGluayBzdHBTdHJpbmcgU3RyaW5nCitIaUxpbmsgc3RwU3RyaW5nRXJyb3IgRXJyb3IKK0hpTGluayBzdHBUeXBlIFR5cGUKK0hpTGluayBzdHBUb2RvIFRvZG8KK0hpTGluayBzdHBGdW5jdGlvbiBGdW5jdGlvbgorSGlMaW5rIHN0cEdsb2JhbHMgTWFjcm8KK0hpTGluayBzdHBQYXJlbiBOb3JtYWwKK0hpTGluayBzdHBQYXJlbkVycm9yIEVycm9yCitIaUxpbmsgc3RwU1FMS2V5d29yZCBGdW5jdGlvbgorSGlMaW5rIHN0cFJlcGVhdCBSZXBlYXQKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInN0cCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc3RyYWNlLnZpbSBiL3J1bnRpbWUvc3ludGF4L3N0cmFjZS52aW0KaW5kZXggMGY2ODZmZC4uNDViNzAwNyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc3RyYWNlLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zdHJhY2UudmltCkBAIC01LDEyICs1LDkgQEAKICIgTGFzdCBDaGFuZ2U6IDIwMTUtMDEtMTYKIAogIiBTZXR1cAotaWYgdmVyc2lvbiA+PSA2MDAKLQlpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQotCQlmaW5pc2gKLQllbmRpZgotZWxzZQotCXN5bnRheCBjbGVhcgorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisJZmluaXNoCiBlbmRpZgogCiBzeW4gY2FzZSBtYXRjaApAQCAtMzUsMzEgKzMyLDI0IEBACiBzeW4gcmVnaW9uIHN0cmFjZUNvbW1lbnQgc3RhcnQ9Ii9cKiIgZW5kPSJcKi8iIG9uZWxpbmUKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc3RyYWNlX3N5bnRheF9pbml0cyIpCi0JaWYgdmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX3N0cmFjZV9zeW50YXhfaW5pdHMgPSAxCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0JZWxzZQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLQllbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLQlIaUxpbmsgc3RyYWNlQ29tbWVudCBDb21tZW50Ci0JSGlMaW5rIHN0cmFjZVZlcmJvc2VkIENvbW1lbnQKLQlIaUxpbmsgc3RyYWNlUElEIFByZVByb2MKLQlIaUxpbmsgc3RyYWNlTnVtYmVyIE51bWJlcgotCUhpTGluayBzdHJhY2VOdW1iZXJSSFMgVHlwZQotCUhpTGluayBzdHJhY2VPdGhlclJIUyBUeXBlCi0JSGlMaW5rIHN0cmFjZVN0cmluZyBTdHJpbmcKLQlIaUxpbmsgc3RyYWNlQ29uc3RhbnQgRnVuY3Rpb24KLQlIaUxpbmsgc3RyYWNlRXF1YWxzIFR5cGUKLQlIaUxpbmsgc3RyYWNlU3lzQ2FsbEVtYmVkIHN0cmFjZVN5c0NhbGwKLQlIaUxpbmsgc3RyYWNlU3lzQ2FsbCBTdGF0ZW1lbnQKLQlIaUxpbmsgc3RyYWNlUGFyZW50aGVzaXMgU3RhdGVtZW50Ci0JSGlMaW5rIHN0cmFjZU9wZXJhdG9yIE5vcm1hbAotCUhpTGluayBzdHJhY2VTcGVjaWFsQ2hhciBTcGVjaWFsCi0JSGlMaW5rIHN0cmFjZU90aGVyUElEIFByZVByb2MKK0hpTGluayBzdHJhY2VDb21tZW50IENvbW1lbnQKK0hpTGluayBzdHJhY2VWZXJib3NlZCBDb21tZW50CitIaUxpbmsgc3RyYWNlUElEIFByZVByb2MKK0hpTGluayBzdHJhY2VOdW1iZXIgTnVtYmVyCitIaUxpbmsgc3RyYWNlTnVtYmVyUkhTIFR5cGUKK0hpTGluayBzdHJhY2VPdGhlclJIUyBUeXBlCitIaUxpbmsgc3RyYWNlU3RyaW5nIFN0cmluZworSGlMaW5rIHN0cmFjZUNvbnN0YW50IEZ1bmN0aW9uCitIaUxpbmsgc3RyYWNlRXF1YWxzIFR5cGUKK0hpTGluayBzdHJhY2VTeXNDYWxsRW1iZWQgc3RyYWNlU3lzQ2FsbAorSGlMaW5rIHN0cmFjZVN5c0NhbGwgU3RhdGVtZW50CitIaUxpbmsgc3RyYWNlUGFyZW50aGVzaXMgU3RhdGVtZW50CitIaUxpbmsgc3RyYWNlT3BlcmF0b3IgTm9ybWFsCitIaUxpbmsgc3RyYWNlU3BlY2lhbENoYXIgU3BlY2lhbAorSGlMaW5rIHN0cmFjZU90aGVyUElEIFByZVByb2MKIAotCWRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic3RyYWNlIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc3ZuLnZpbSBiL3J1bnRpbWUvc3ludGF4L3N2bi52aW0KaW5kZXggNjUzNmQ2ZC4uOGI4Mzc1MyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc3ZuLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zdm4udmltCkBAIC0xNSwxMSArMTUsOCBAQAogIiAgIE15ayBUYXlsb3IKICIgICBTdGVmYW5vIFphY2NoaXJvbGkKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMuCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkLgotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQuCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTQyLDI4ICszOSwyMCBAQAogc3luIHN5bmMgbWF0Y2ggc3ZuU3luYyAgZ3JvdXBoZXJlIHN2blJlZ2lvbiAiXi0tLiotLSQibWU9cy0xCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeS4KLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQuCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc3ZuX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPD0gNTA4Ci0gICAgbGV0IGRpZF9zdm5fc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQuCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgc3ZuU3VtbWFyeSAgICAgS2V5d29yZAotICBIaUxpbmsgc3ZuQmxhbmsgICAgICAgRXJyb3IKK0hpTGluayBzdm5TdW1tYXJ5ICAgICBLZXl3b3JkCitIaUxpbmsgc3ZuQmxhbmsgICAgICAgRXJyb3IKIAotICBIaUxpbmsgc3ZuUmVnaW9uICAgICAgQ29tbWVudAotICBIaUxpbmsgc3ZuRGVsaW1pdGVyICAgTm9uVGV4dAotICBIaUxpbmsgc3ZuUmVtb3ZlZCAgICAgQ29uc3RhbnQKLSAgSGlMaW5rIHN2bkFkZGVkICAgICAgIElkZW50aWZpZXIKLSAgSGlMaW5rIHN2bk1vZGlmaWVkICAgIFNwZWNpYWwKLSAgSGlMaW5rIHN2blByb3BlcnR5ICAgIFNwZWNpYWwKLSAgSGlMaW5rIHN2blJlbmFtZWQgICAgIFNwZWNpYWwKK0hpTGluayBzdm5SZWdpb24gICAgICBDb21tZW50CitIaUxpbmsgc3ZuRGVsaW1pdGVyICAgTm9uVGV4dAorSGlMaW5rIHN2blJlbW92ZWQgICAgIENvbnN0YW50CitIaUxpbmsgc3ZuQWRkZWQgICAgICAgSWRlbnRpZmllcgorSGlMaW5rIHN2bk1vZGlmaWVkICAgIFNwZWNpYWwKK0hpTGluayBzdm5Qcm9wZXJ0eSAgICBTcGVjaWFsCitIaUxpbmsgc3ZuUmVuYW1lZCAgICAgU3BlY2lhbAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic3ZuIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc3lzdGVtdmVyaWxvZy52aW0gYi9ydW50aW1lL3N5bnRheC9zeXN0ZW12ZXJpbG9nLnZpbQppbmRleCA1YmYyOTM1Li45NDA3NGJkIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zeXN0ZW12ZXJpbG9nLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zeXN0ZW12ZXJpbG9nLnZpbQpAQCAtMywyMSArMywxNCBAQAogIiBNYWludGFpbmVyOiAga29jaGEgPGtvY2hhLmxzaWZyb250ZW5kQGdtYWlsLmNvbT4KICIgTGFzdCBDaGFuZ2U6IDEyLUF1Zy0yMDEzLiAKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICAgZmluaXNoCiBlbmRpZgogCiAiIFJlYWQgaW4gVmVyaWxvZyBzeW50YXggZmlsZXMKLWlmIHZlcnNpb24gPCA2MDAKLSAgICBzbyA8c2ZpbGU+OnA6aC92ZXJpbG9nLnZpbQotZWxzZQotICAgIHJ1bnRpbWUhIHN5bnRheC92ZXJpbG9nLnZpbQotICAgIHVubGV0IGI6Y3VycmVudF9zeW50YXgKLWVuZGlmCitydW50aW1lISBzeW50YXgvdmVyaWxvZy52aW0KK3VubGV0IGI6Y3VycmVudF9zeW50YXgKIAogIiBJRUVFMTgwMC0yMDA1CiBzeW4ga2V5d29yZCBzeXN0ZW12ZXJpbG9nU3RhdGVtZW50ICAgYWx3YXlzX2NvbWIgYWx3YXlzX2ZmIGFsd2F5c19sYXRjaApAQCAtNzYsMjUgKzY5LDE4IEBACiBzeW4ga2V5d29yZCBzeXN0ZW12ZXJpbG9nU3RhdGVtZW50ICAgaW50ZXJjb25uZWN0IHNvZnQgbmV0dHlwZQogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfc3lzdGVtdmVyaWxvZ19zeW5faW5pdHMiKQotICAgaWYgdmVyc2lvbiA8IDUwOAotICAgICAgbGV0IGRpZF9zeXN0ZW12ZXJpbG9nX3N5bl9pbml0cyA9IDEKLSAgICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gICBlbHNlCi0gICAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgIGVuZGlmCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAgIiBUaGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0gICBIaUxpbmsgc3lzdGVtdmVyaWxvZ1N0YXRlbWVudCAgICAgICBTdGF0ZW1lbnQKLSAgIEhpTGluayBzeXN0ZW12ZXJpbG9nVHlwZURlZiAgICAgICAgIFR5cGVEZWYKLSAgIEhpTGluayBzeXN0ZW12ZXJpbG9nQ29uZGl0aW9uYWwgICAgIENvbmRpdGlvbmFsCi0gICBIaUxpbmsgc3lzdGVtdmVyaWxvZ1JlcGVhdCAgICAgICAgICBSZXBlYXQKLSAgIEhpTGluayBzeXN0ZW12ZXJpbG9nTGFiZWwgICAgICAgICAgIExhYmVsCi0gICBIaUxpbmsgc3lzdGVtdmVyaWxvZ0dsb2JhbCAgICAgICAgICBEZWZpbmUKLSAgIEhpTGluayBzeXN0ZW12ZXJpbG9nTnVtYmVyICAgICAgICAgIE51bWJlcgorIiBUaGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCitIaUxpbmsgc3lzdGVtdmVyaWxvZ1N0YXRlbWVudCAgICAgICBTdGF0ZW1lbnQKK0hpTGluayBzeXN0ZW12ZXJpbG9nVHlwZURlZiAgICAgICAgIFR5cGVEZWYKK0hpTGluayBzeXN0ZW12ZXJpbG9nQ29uZGl0aW9uYWwgICAgIENvbmRpdGlvbmFsCitIaUxpbmsgc3lzdGVtdmVyaWxvZ1JlcGVhdCAgICAgICAgICBSZXBlYXQKK0hpTGluayBzeXN0ZW12ZXJpbG9nTGFiZWwgICAgICAgICAgIExhYmVsCitIaUxpbmsgc3lzdGVtdmVyaWxvZ0dsb2JhbCAgICAgICAgICBEZWZpbmUKK0hpTGluayBzeXN0ZW12ZXJpbG9nTnVtYmVyICAgICAgICAgIE51bWJlcgogCi0gICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInN5c3RlbXZlcmlsb2ciCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3RhZHMudmltIGIvcnVudGltZS9zeW50YXgvdGFkcy52aW0KaW5kZXggMjYwZmYzNi4uMGY2M2JlYSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvdGFkcy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdGFkcy52aW0KQEAgLTEzLDExICsxMyw4IEBACiAiIEFjdHVhbGx5LCBzaG91bGQgY3Z0c3RyIGV0Yy4gYmUgZnVuY3Rpb25zPyEgKGNoYW5nZSB0YWRzRnVuY3Rpb24pCiAiIE1ha2UgZ2xvYmFsIGV0Yy4gaW50byBJZGVudGlmaWVycywgc2luY2Ugd2UgZG9uJ3QgaGF2ZSByZWd1bGFyIHZhcmlhYmxlcz8KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTEyMiw1NyArMTE5LDQ5IEBACiBleGVjdXRlICJzeW4gc3luYyBtYXhsaW5lcz0iIC4gdGFkc19zeW5jX2Rpc3QKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfdGFkc19zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF90YWRzX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyCi0gIEhpTGluayB0YWRzRnVuY3Rpb25EZWYgRnVuY3Rpb24KLSAgSGlMaW5rIHRhZHNGdW5jdGlvbiAgU3RydWN0dXJlCi0gIEhpTGluayB0YWRzQ2xhc3MgICAgIFN0cnVjdHVyZQotICBIaUxpbmsgdGFkc0NsYXNzRGVmICBJZGVudGlmaWVyCi0gIEhpTGluayB0YWRzT2JqZWN0RGVmIElkZW50aWZpZXIKKyIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiAgQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKK0hpTGluayB0YWRzRnVuY3Rpb25EZWYgRnVuY3Rpb24KK0hpTGluayB0YWRzRnVuY3Rpb24gIFN0cnVjdHVyZQorSGlMaW5rIHRhZHNDbGFzcyAgICAgU3RydWN0dXJlCitIaUxpbmsgdGFkc0NsYXNzRGVmICBJZGVudGlmaWVyCitIaUxpbmsgdGFkc09iamVjdERlZiBJZGVudGlmaWVyCiAiIG5vIGhpZ2hsaWdodCBmb3IgdGFkc0VtYmVkZGVkLCBzbyBpdCBwcmludHMgYXMgbm9ybWFsIHRleHQgdy9pbiB0aGUgc3RyaW5nCiAKLSAgSGlMaW5rIHRhZHNPcGVyYXRvcglPcGVyYXRvcgotICBIaUxpbmsgdGFkc1N0cnVjdHVyZQlTdHJ1Y3R1cmUKLSAgSGlMaW5rIHRhZHNUb2RvCVRvZG8KLSAgSGlMaW5rIHRhZHNMYWJlbAlMYWJlbAotICBIaUxpbmsgdGFkc0NvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCi0gIEhpTGluayB0YWRzUmVwZWF0CVJlcGVhdAotICBIaUxpbmsgdGFkc0V4Y2VwdGlvbglFeGNlcHRpb24KLSAgSGlMaW5rIHRhZHNTdGF0ZW1lbnQJU3RhdGVtZW50Ci0gIEhpTGluayB0YWRzU3RvcmFnZUNsYXNzCVN0b3JhZ2VDbGFzcwotICBIaUxpbmsgdGFkc0tleVdvcmQgICBLZXl3b3JkCi0gIEhpTGluayB0YWRzU3BlY2lhbAlTcGVjaWFsQ2hhcgotICBIaUxpbmsgdGFkc051bWJlcglOdW1iZXIKLSAgSGlMaW5rIHRhZHNCb29sZWFuCUJvb2xlYW4KLSAgSGlMaW5rIHRhZHNEb3VibGVTdHJpbmcJdGFkc1N0cmluZwotICBIaUxpbmsgdGFkc1NpbmdsZVN0cmluZwl0YWRzU3RyaW5nCitIaUxpbmsgdGFkc09wZXJhdG9yCU9wZXJhdG9yCitIaUxpbmsgdGFkc1N0cnVjdHVyZQlTdHJ1Y3R1cmUKK0hpTGluayB0YWRzVG9kbwlUb2RvCitIaUxpbmsgdGFkc0xhYmVsCUxhYmVsCitIaUxpbmsgdGFkc0NvbmRpdGlvbmFsCUNvbmRpdGlvbmFsCitIaUxpbmsgdGFkc1JlcGVhdAlSZXBlYXQKK0hpTGluayB0YWRzRXhjZXB0aW9uCUV4Y2VwdGlvbgorSGlMaW5rIHRhZHNTdGF0ZW1lbnQJU3RhdGVtZW50CitIaUxpbmsgdGFkc1N0b3JhZ2VDbGFzcwlTdG9yYWdlQ2xhc3MKK0hpTGluayB0YWRzS2V5V29yZCAgIEtleXdvcmQKK0hpTGluayB0YWRzU3BlY2lhbAlTcGVjaWFsQ2hhcgorSGlMaW5rIHRhZHNOdW1iZXIJTnVtYmVyCitIaUxpbmsgdGFkc0Jvb2xlYW4JQm9vbGVhbgorSGlMaW5rIHRhZHNEb3VibGVTdHJpbmcJdGFkc1N0cmluZworSGlMaW5rIHRhZHNTaW5nbGVTdHJpbmcJdGFkc1N0cmluZwogCi0gIEhpTGluayB0YWRzT2N0YWxFcnJvcgl0YWRzRXJyb3IKLSAgSGlMaW5rIHRhZHNDb21tZW50RXJyb3IJdGFkc0Vycm9yCi0gIEhpTGluayB0YWRzQnJhY2VFcnJvcgl0YWRzRXJyb3IKLSAgSGlMaW5rIHRhZHNJbkJyYWNlCXRhZHNFcnJvcgotICBIaUxpbmsgdGFkc0Vycm9yCUVycm9yCitIaUxpbmsgdGFkc09jdGFsRXJyb3IJdGFkc0Vycm9yCitIaUxpbmsgdGFkc0NvbW1lbnRFcnJvcgl0YWRzRXJyb3IKK0hpTGluayB0YWRzQnJhY2VFcnJvcgl0YWRzRXJyb3IKK0hpTGluayB0YWRzSW5CcmFjZQl0YWRzRXJyb3IKK0hpTGluayB0YWRzRXJyb3IJRXJyb3IKIAotICBIaUxpbmsgdGFkc0luY2x1ZGUJSW5jbHVkZQotICBIaUxpbmsgdGFkc1ByZVByb2MJUHJlUHJvYwotICBIaUxpbmsgdGFkc0RlZmluZQlNYWNybwotICBIaUxpbmsgdGFkc0luY2x1ZGVkCXRhZHNTdHJpbmcKLSAgSGlMaW5rIHRhZHNQcmVDb25kaXQJUHJlQ29uZGl0CitIaUxpbmsgdGFkc0luY2x1ZGUJSW5jbHVkZQorSGlMaW5rIHRhZHNQcmVQcm9jCVByZVByb2MKK0hpTGluayB0YWRzRGVmaW5lCU1hY3JvCitIaUxpbmsgdGFkc0luY2x1ZGVkCXRhZHNTdHJpbmcKK0hpTGluayB0YWRzUHJlQ29uZGl0CVByZUNvbmRpdAogCi0gIEhpTGluayB0YWRzU3RyaW5nCVN0cmluZwotICBIaUxpbmsgdGFkc0NvbW1lbnQJQ29tbWVudAorSGlMaW5rIHRhZHNTdHJpbmcJU3RyaW5nCitIaUxpbmsgdGFkc0NvbW1lbnQJQ29tbWVudAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ0YWRzIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdGFncy52aW0gYi9ydW50aW1lL3N5bnRheC90YWdzLnZpbQppbmRleCBjODZmMTdhLi5hNzA0NGMwIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC90YWdzLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC90YWdzLnZpbQpAQCAtNCwxMSArNCw4IEBACiAiIFZlcnNpb246CQk0CiAiIFVSTDoJaHR0cDovL3d3dy5kcmNoaXAub3JnL2FzdHJvbmF1dC92aW0vaW5kZXguaHRtbCNTWU5UQVhfVEFHUwogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMjIsMjUgKzE5LDE3IEBACiBzeW4gbWF0Y2gJdGFnRmllbGQJY29udGFpbmVkICJbYS16XSo6IgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF9kcmNoaXBfdGFnc19pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX2RyY2hpcF90YWdzX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayB0YWdCYXNlRmlsZQlQcmVQcm9jCi0gIEhpTGluayB0YWdDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIHRhZ0RlbGltCURlbGltaXRlcgotICBIaUxpbmsgdGFnRmllbGQJTnVtYmVyCi0gIEhpTGluayB0YWdOYW1lCUlkZW50aWZpZXIKLSAgSGlMaW5rIHRhZ1BhdGgJUHJlUHJvYworSGlMaW5rIHRhZ0Jhc2VGaWxlCVByZVByb2MKK0hpTGluayB0YWdDb21tZW50CUNvbW1lbnQKK0hpTGluayB0YWdEZWxpbQlEZWxpbWl0ZXIKK0hpTGluayB0YWdGaWVsZAlOdW1iZXIKK0hpTGluayB0YWdOYW1lCUlkZW50aWZpZXIKK0hpTGluayB0YWdQYXRoCVByZVByb2MKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInRhZ3MiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Rhay52aW0gYi9ydW50aW1lL3N5bnRheC90YWsudmltCmluZGV4IDIwMTg2ZGIuLmIzNjNlYTMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Rhay52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdGFrLnZpbQpAQCAtOCwxMSArOCw4IEBACiAKIAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMzIsMTEgKzI5LDcgQEAKIGxldCBmb3J0cmFuX2ZyZWVfc291cmNlPTEKIAogIiBMb2FkIEZPUlRSQU4gc3ludGF4IGZpbGUKLWlmIHZlcnNpb24gPCA2MDAKLSAgc291cmNlIDxzZmlsZT46cDpoL2ZvcnRyYW4udmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9mb3J0cmFuLnZpbQotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9mb3J0cmFuLnZpbQogdW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiAKQEAgLTk1LDQwICs4OCwzMiBAQAogCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZwotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfdGFrX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3Rha19zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHRha01hY3JvCQlNYWNybwotICBIaUxpbmsgdGFrT3B0aW9ucwkJU3BlY2lhbAotICBIaUxpbmsgdGFrUm91dGluZQkJVHlwZQotICBIaUxpbmsgdGFrQ29udHJvbAkJU3BlY2lhbAotICBIaUxpbmsgdGFrU29saWRzCQlTcGVjaWFsCi0gIEhpTGluayB0YWtTb2xpZHNBcmcJCVN0YXRlbWVudAotICBIaUxpbmsgdGFrSWRlbnRpZmllcgkJSWRlbnRpZmllcgorSGlMaW5rIHRha01hY3JvCQlNYWNybworSGlMaW5rIHRha09wdGlvbnMJCVNwZWNpYWwKK0hpTGluayB0YWtSb3V0aW5lCQlUeXBlCitIaUxpbmsgdGFrQ29udHJvbAkJU3BlY2lhbAorSGlMaW5rIHRha1NvbGlkcwkJU3BlY2lhbAorSGlMaW5rIHRha1NvbGlkc0FyZwkJU3RhdGVtZW50CitIaUxpbmsgdGFrSWRlbnRpZmllcgkJSWRlbnRpZmllcgogCi0gIEhpTGluayB0YWtGb3J0cmFuCQlQcmVQcm9jCi0gIEhpTGluayB0YWtNb3RyYW4JCVByZVByb2MKK0hpTGluayB0YWtGb3J0cmFuCQlQcmVQcm9jCitIaUxpbmsgdGFrTW90cmFuCQlQcmVQcm9jCiAKLSAgSGlMaW5rIHRha0NvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIHRha0hlYWRlcgkJVHlwZWRlZgotICBIaUxpbmsgdGFrSW5jbHVkZUZpbGUJCVR5cGUKLSAgSGlMaW5rIHRha0ludGVnZXIJCU51bWJlcgotICBIaUxpbmsgdGFrRmxvYXQJCUZsb2F0Ci0gIEhpTGluayB0YWtTY2llbnRpZmljCQlGbG9hdAorSGlMaW5rIHRha0NvbW1lbnQJCUNvbW1lbnQKK0hpTGluayB0YWtIZWFkZXIJCVR5cGVkZWYKK0hpTGluayB0YWtJbmNsdWRlRmlsZQkJVHlwZQorSGlMaW5rIHRha0ludGVnZXIJCU51bWJlcgorSGlMaW5rIHRha0Zsb2F0CQlGbG9hdAorSGlMaW5rIHRha1NjaWVudGlmaWMJCUZsb2F0CiAKLSAgSGlMaW5rIHRha0VuZERhdGEJCU1hY3JvCitIaUxpbmsgdGFrRW5kRGF0YQkJTWFjcm8KIAotICBIaUxpbmsgdGFrVG9kbwkJVG9kbworSGlMaW5rIHRha1RvZG8JCVRvZG8KIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAidGFrIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdGFrY21wLnZpbSBiL3J1bnRpbWUvc3ludGF4L3Rha2NtcC52aW0KaW5kZXggYTk0NjA5Yi4uNmZhZGRjMiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvdGFrY21wLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC90YWtjbXAudmltCkBAIC04LDExICs4LDggQEAKIAogCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC01MSwzMCArNDgsMjIgQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcKLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3Rha2NtcF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF90YWtjbXBfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayB0YWtjbXBUaXRsZQkJICAgVHlwZQotICBIaUxpbmsgdGFrY21wVW5pdAkJICAgUHJlUHJvYworSGlMaW5rIHRha2NtcFRpdGxlCQkgICBUeXBlCitIaUxpbmsgdGFrY21wVW5pdAkJICAgUHJlUHJvYwogCi0gIEhpTGluayB0YWtjbXBMYWJlbAkJICAgU3RhdGVtZW50CitIaUxpbmsgdGFrY21wTGFiZWwJCSAgIFN0YXRlbWVudAogCi0gIEhpTGluayB0YWtjbXBIZWFkZXIJCSAgIHRha0hlYWRlcgorSGlMaW5rIHRha2NtcEhlYWRlcgkJICAgdGFrSGVhZGVyCiAKLSAgSGlMaW5rIHRha2NtcERhdGUJCSAgIElkZW50aWZpZXIKLSAgSGlMaW5rIHRha2NtcFRpbWUJCSAgIElkZW50aWZpZXIKLSAgSGlMaW5rIHRha2NtcEludGVnZXIJCSAgIE51bWJlcgotICBIaUxpbmsgdGFrY21wRmxvYXQJCSAgIFNwZWNpYWwKK0hpTGluayB0YWtjbXBEYXRlCQkgICBJZGVudGlmaWVyCitIaUxpbmsgdGFrY21wVGltZQkJICAgSWRlbnRpZmllcgorSGlMaW5rIHRha2NtcEludGVnZXIJCSAgIE51bWJlcgorSGlMaW5rIHRha2NtcEZsb2F0CQkgICBTcGVjaWFsCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInRha2NtcCIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Rha291dC52aW0gYi9ydW50aW1lL3N5bnRheC90YWtvdXQudmltCmluZGV4IDc3NDM1MzkuLmVkNjlmZjAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Rha291dC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdGFrb3V0LnZpbQpAQCAtOCwxMSArOCw4IEBACiAKIAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMjQsMTEgKzIxLDcgQEAKIAogCiAiIExvYWQgVEFLIHN5bnRheCBmaWxlCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNvdXJjZSA8c2ZpbGU+OnA6aC90YWsudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC90YWsudmltCi1lbmRpZgorcnVudGltZSEgc3ludGF4L3Rhay52aW0KIHVubGV0IGI6Y3VycmVudF9zeW50YXgKIAogCkBAIC03MCwzMSArNjMsMjMgQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcKLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3Rha291dF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF90YWtvdXRfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayB0YWtvdXRQb3MJCSAgIFN0YXRlbWVudAotICBIaUxpbmsgdGFrb3V0TmVnCQkgICBQcmVQcm9jCi0gIEhpTGluayB0YWtvdXRUaXRsZQkJICAgVHlwZQotICBIaUxpbmsgdGFrb3V0RmlsZQkJICAgdGFrSW5jbHVkZUZpbGUKLSAgSGlMaW5rIHRha291dEludGVnZXIJCSAgIHRha0ludGVnZXIKK0hpTGluayB0YWtvdXRQb3MJCSAgIFN0YXRlbWVudAorSGlMaW5rIHRha291dE5lZwkJICAgUHJlUHJvYworSGlMaW5rIHRha291dFRpdGxlCQkgICBUeXBlCitIaUxpbmsgdGFrb3V0RmlsZQkJICAgdGFrSW5jbHVkZUZpbGUKK0hpTGluayB0YWtvdXRJbnRlZ2VyCQkgICB0YWtJbnRlZ2VyCiAKLSAgSGlMaW5rIHRha291dFNlY3Rpb25EZWxpbQkgICAgRGVsaW1pdGVyCi0gIEhpTGluayB0YWtvdXRTZWN0aW9uVGl0bGUJICAgRXhjZXB0aW9uCi0gIEhpTGluayB0YWtvdXRIZWFkZXJEZWxpbQkgICBTcGVjaWFsQ29tbWVudAotICBIaUxpbmsgdGFrb3V0TGFiZWwJCSAgIElkZW50aWZpZXIKK0hpTGluayB0YWtvdXRTZWN0aW9uRGVsaW0JICAgIERlbGltaXRlcgorSGlMaW5rIHRha291dFNlY3Rpb25UaXRsZQkgICBFeGNlcHRpb24KK0hpTGluayB0YWtvdXRIZWFkZXJEZWxpbQkgICBTcGVjaWFsQ29tbWVudAorSGlMaW5rIHRha291dExhYmVsCQkgICBJZGVudGlmaWVyCiAKLSAgSGlMaW5rIHRha291dEVycm9yCQkgICBFcnJvcgorSGlMaW5rIHRha291dEVycm9yCQkgICBFcnJvcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ0YWtvdXQiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC90YXNrZGF0YS52aW0gYi9ydW50aW1lL3N5bnRheC90YXNrZGF0YS52aW0KaW5kZXggYjM3YzcwYy4uNjNhODI4NCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvdGFza2RhdGEudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3Rhc2tkYXRhLnZpbQpAQCAtNCwxMSArNCw4IEBACiAiIFVwZGF0ZWQ6CVdlZCBKdWwgIDggMTk6NDY6MjAgRURUIDIwMDkKIAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcy4KLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQuCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZC4KK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBzOmtlZXBjcG89ICZjcG8KZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Rhc2tlZGl0LnZpbSBiL3J1bnRpbWUvc3ludGF4L3Rhc2tlZGl0LnZpbQppbmRleCAxNzAxNTNjLi5kMzNjYTc4IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC90YXNrZWRpdC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdGFza2VkaXQudmltCkBAIC00LDExICs0LDggQEAKICIgVXBkYXRlZDoJV2VkIEp1bCAgOCAxOTo0NjozMiBFRFQgMjAwOQogCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zLgotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZC4KLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkLgoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogbGV0IHM6a2VlcGNwbz0gJmNwbwpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdGFzbS52aW0gYi9ydW50aW1lL3N5bnRheC90YXNtLnZpbQppbmRleCAyZjg1NTk2Li45OTVlOGI0IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC90YXNtLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC90YXNtLnZpbQpAQCAtMywxMSArMyw4IEBACiAiIE1haW50YW5lcjogRm9vTG1hbiBvZiBVbml0ZWQgRm9yY2UgPGZvb2xtYW5AYmlnZm9vdC5jb20+CiAiIExhc3QgQ2hhbmdlOiAyMDEyIEZlYiAwMyBieSBUaGlsbyBTaXgKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTk1LDMyICs5MiwyNCBAQAogc3luIG1hdGNoIHRhc21CaW4gIlw8WzAxXVwrQlw+IgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF90YXNtX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3Rhc21fc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayB0YXNtU3RyaW5nIFN0cmluZwotICBIaUxpbmsgdGFzbURlYyBOdW1iZXIKLSAgSGlMaW5rIHRhc21IZXggTnVtYmVyCi0gIEhpTGluayB0YXNtT2N0IE51bWJlcgotICBIaUxpbmsgdGFzbUJpbiBOdW1iZXIKLSAgSGlMaW5rIHRhc21JbnN0cnVjdGlvbiBLZXl3b3JkCi0gIEhpTGluayB0YXNtQ29wcm9jSW5zdHIgS2V5d29yZAotICBIaUxpbmsgdGFzbU1NWEluc3QJS2V5d29yZAotICBIaUxpbmsgdGFzbURpcmVjdGl2ZSBQcmVQcm9jCi0gIEhpTGluayB0YXNtUmVnaXN0ZXIgSWRlbnRpZmllcgotICBIaUxpbmsgdGFzbVByb2N0eXBlIFByZVByb2MKLSAgSGlMaW5rIHRhc21Db21tZW50IENvbW1lbnQKLSAgSGlMaW5rIHRhc21MYWJlbCBMYWJlbAorSGlMaW5rIHRhc21TdHJpbmcgU3RyaW5nCitIaUxpbmsgdGFzbURlYyBOdW1iZXIKK0hpTGluayB0YXNtSGV4IE51bWJlcgorSGlMaW5rIHRhc21PY3QgTnVtYmVyCitIaUxpbmsgdGFzbUJpbiBOdW1iZXIKK0hpTGluayB0YXNtSW5zdHJ1Y3Rpb24gS2V5d29yZAorSGlMaW5rIHRhc21Db3Byb2NJbnN0ciBLZXl3b3JkCitIaUxpbmsgdGFzbU1NWEluc3QJS2V5d29yZAorSGlMaW5rIHRhc21EaXJlY3RpdmUgUHJlUHJvYworSGlMaW5rIHRhc21SZWdpc3RlciBJZGVudGlmaWVyCitIaUxpbmsgdGFzbVByb2N0eXBlIFByZVByb2MKK0hpTGluayB0YXNtQ29tbWVudCBDb21tZW50CitIaUxpbmsgdGFzbUxhYmVsIExhYmVsCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZXRfc3ludGF4ID0gInRhc20iCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3RjbC52aW0gYi9ydW50aW1lL3N5bnRheC90Y2wudmltCmluZGV4IDNjNTk4MjYuLjc3OGIxNjQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3RjbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdGNsLnZpbQpAQCAtMTAsMTEgKzEwLDggQEAKICIgVmVyc2lvbjoJMS4xNAogIiBVUkw6CQlodHRwOi8vYml0YnVja2V0Lm9yZy90YXlsb3JfdmVuYWJsZS9tZXRhc3ludGF4L3NyYy90aXAvQ29uZmlnL3ZpbS9zeW50YXgvdGNsLnZpbQogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMjM4LDQ5ICsyMzUsNDEgQEAKICJzeW4gc3luYyBjY29tbWVudCB0Y2xDb21tZW50CiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3RjbF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF90Y2xfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayB0Y2x0a1N3aXRjaAkJU3BlY2lhbAotICBIaUxpbmsgdGNsRXhwYW5kCQlTcGVjaWFsCi0gIEhpTGluayB0Y2xMYWJlbAkJTGFiZWwKLSAgSGlMaW5rIHRjbENvbmRpdGlvbmFsCQlDb25kaXRpb25hbAotICBIaUxpbmsgdGNsUmVwZWF0CQlSZXBlYXQKLSAgSGlMaW5rIHRjbE51bWJlcgkJTnVtYmVyCi0gIEhpTGluayB0Y2xFcnJvcgkJRXJyb3IKLSAgSGlMaW5rIHRjbENvbW1hbmQJCVN0YXRlbWVudAotICBIaUxpbmsgdGNsUHJvY0NvbW1hbmQJCVR5cGUKLSAgSGlMaW5rIHRjbFN0cmluZwkJU3RyaW5nCi0gIEhpTGluayB0Y2xDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayB0Y2xTcGVjaWFsCQlTcGVjaWFsCi0gIEhpTGluayB0Y2xUb2RvCQlUb2RvCi0gICIgQmVsb3cgaGVyZSBhcmUgdGhlIGNvbW1hbmRzIGFuZCB0aGVpciBvcHRpb25zLgotICBIaUxpbmsgdGNsdGtDb21tYW5kQ29sb3IJU3RhdGVtZW50Ci0gIEhpTGluayB0Y2x0a1dpZGdldENvbG9yCVN0cnVjdHVyZQotICBIaUxpbmsgdGNsTGluZUNvbnRpbnVlCVdhcm5pbmdNc2cKK0hpTGluayB0Y2x0a1N3aXRjaAkJU3BlY2lhbAorSGlMaW5rIHRjbEV4cGFuZAkJU3BlY2lhbAorSGlMaW5rIHRjbExhYmVsCQlMYWJlbAorSGlMaW5rIHRjbENvbmRpdGlvbmFsCQlDb25kaXRpb25hbAorSGlMaW5rIHRjbFJlcGVhdAkJUmVwZWF0CitIaUxpbmsgdGNsTnVtYmVyCQlOdW1iZXIKK0hpTGluayB0Y2xFcnJvcgkJRXJyb3IKK0hpTGluayB0Y2xDb21tYW5kCQlTdGF0ZW1lbnQKK0hpTGluayB0Y2xQcm9jQ29tbWFuZAkJVHlwZQorSGlMaW5rIHRjbFN0cmluZwkJU3RyaW5nCitIaUxpbmsgdGNsQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHRjbFNwZWNpYWwJCVNwZWNpYWwKK0hpTGluayB0Y2xUb2RvCQlUb2RvCisiIEJlbG93IGhlcmUgYXJlIHRoZSBjb21tYW5kcyBhbmQgdGhlaXIgb3B0aW9ucy4KK0hpTGluayB0Y2x0a0NvbW1hbmRDb2xvcglTdGF0ZW1lbnQKK0hpTGluayB0Y2x0a1dpZGdldENvbG9yCVN0cnVjdHVyZQorSGlMaW5rIHRjbExpbmVDb250aW51ZQlXYXJuaW5nTXNnCiBpZiBleGlzdHMoJ2c6dGNsX3dhcm5fY29udGludWF0aW9uJykKLSAgSGlMaW5rIHRjbE5vdExpbmVDb250aW51ZQlFcnJvck1zZworSGlMaW5rIHRjbE5vdExpbmVDb250aW51ZQlFcnJvck1zZwogZW5kaWYKLSAgSGlMaW5rIHRjbHRrU3RyaW5nU3dpdGNoCVNwZWNpYWwKLSAgSGlMaW5rIHRjbHRrQXJyYXlTd2l0Y2gJU3BlY2lhbAotICBIaUxpbmsgdGNsdGtMc29ydFN3aXRjaAlTcGVjaWFsCi0gIEhpTGluayB0Y2x0a1BhY2tTd2l0Y2gJU3BlY2lhbAotICBIaUxpbmsgdGNsdGtQYWNrQ29uZlN3aXRjaAlTcGVjaWFsCi0gIEhpTGluayB0Y2x0a01hdGhzCQlTcGVjaWFsCi0gIEhpTGluayB0Y2x0a05hbWVzcGFjZVN3aXRjaAlTcGVjaWFsCi0gIEhpTGluayB0Y2x0a1dpZGdldFN3aXRjaAlTcGVjaWFsCi0gIEhpTGluayB0Y2x0a1BhY2tDb25mQ29sb3IJSWRlbnRpZmllcgotICBIaUxpbmsgdGNsVmFyUmVmCQlJZGVudGlmaWVyCitIaUxpbmsgdGNsdGtTdHJpbmdTd2l0Y2gJU3BlY2lhbAorSGlMaW5rIHRjbHRrQXJyYXlTd2l0Y2gJU3BlY2lhbAorSGlMaW5rIHRjbHRrTHNvcnRTd2l0Y2gJU3BlY2lhbAorSGlMaW5rIHRjbHRrUGFja1N3aXRjaAlTcGVjaWFsCitIaUxpbmsgdGNsdGtQYWNrQ29uZlN3aXRjaAlTcGVjaWFsCitIaUxpbmsgdGNsdGtNYXRocwkJU3BlY2lhbAorSGlMaW5rIHRjbHRrTmFtZXNwYWNlU3dpdGNoCVNwZWNpYWwKK0hpTGluayB0Y2x0a1dpZGdldFN3aXRjaAlTcGVjaWFsCitIaUxpbmsgdGNsdGtQYWNrQ29uZkNvbG9yCUlkZW50aWZpZXIKK0hpTGluayB0Y2xWYXJSZWYJCUlkZW50aWZpZXIKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInRjbCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdGV4LnZpbSBiL3J1bnRpbWUvc3ludGF4L3RleC52aW0KaW5kZXggYzA5ODJkOC4uNmNiMjdlYSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvdGV4LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC90ZXgudmltCkBAIC00MCwxMSArNDAsOCBAQAogIiAgICAgIHVzaW5nIGNvbmNlYWwgbW9kZSAgICAgICA6aGVscCB0ZXgtY29uY2VhbAogCiAiIFZlcnNpb24gQ2xlYXJzOiB7e3sxCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBzOmtlZXBjcG89ICZjcG8KQEAgLTU0LDE0ICs1MSw4IEBACiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuIHt7ezEKICIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQogIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3RleF9zeW50YXhfaW5pdHMiKQotIGxldCBkaWRfdGV4X3N5bnRheF9pbml0cyA9IDEKLSBpZiB2ZXJzaW9uIDwgNTA4Ci0gIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gZWxzZQotICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSBlbmRpZgotZW5kaWYKK2xldCBkaWRfdGV4X3N5bnRheF9pbml0cyA9IDEKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCiAiIGJ5IGRlZmF1bHQsIGVuYWJsZSBhbGwgcmVnaW9uLWJhc2VkIGhpZ2hsaWdodGluZwogbGV0IHM6dGV4X2Zhc3Q9ICJiY21NcHJzU3ZWIgpAQCAtNTk4LDI3ICs1ODksMTcgQEAKICAgIHN5biByZWdpb24gdGV4Wm9uZQkJc3RhcnQ9IlxcYmVnaW57W3ZWXWVyYmF0aW19IgkJZW5kPSJcXGVuZHtbdlZdZXJiYXRpbX1cfCVzdG9wem9uZVw+Igljb250YWlucz1AU3BlbGwKICAgICIgbGlzdGluZ3MgcGFja2FnZToKICAgIHN5biByZWdpb24gdGV4Wm9uZQkJc3RhcnQ9IlxcYmVnaW57bHN0bGlzdGluZ30iCQllbmQ9IlxcZW5ke2xzdGxpc3Rpbmd9XHwlc3RvcHpvbmVcPiIJY29udGFpbnM9QFNwZWxsCi0gICBpZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3luIHJlZ2lvbiB0ZXhab25lCQlzdGFydD0iXFx2ZXJiXCpcPWAiCQkJZW5kPSJgXHwlc3RvcHpvbmVcPiIJCQljb250YWlucz1AU3BlbGwKLSAgICBzeW4gcmVnaW9uIHRleFpvbmUJCXN0YXJ0PSJcXHZlcmJcKlw9IyIJCQllbmQ9IiNcfCVzdG9wem9uZVw+IgkJCWNvbnRhaW5zPUBTcGVsbAorICAgaWYgYjp0ZXhfc3R5bGlzaAorICAgIHN5biByZWdpb24gdGV4Wm9uZQkJc3RhcnQ9IlxcdmVyYlwqXD1ceihbXlx0YS16QS1aQF1cKSIJZW5kPSJcejFcfCVzdG9wem9uZVw+IgkJCWNvbnRhaW5zPUBTcGVsbAogICAgZWxzZQotICAgICBpZiBiOnRleF9zdHlsaXNoCi0gICAgICBzeW4gcmVnaW9uIHRleFpvbmUJCXN0YXJ0PSJcXHZlcmJcKlw9XHooW15cdGEtekEtWkBdXCkiCWVuZD0iXHoxXHwlc3RvcHpvbmVcPiIJCQljb250YWlucz1AU3BlbGwKLSAgICAgZWxzZQotICAgICAgc3luIHJlZ2lvbiB0ZXhab25lCQlzdGFydD0iXFx2ZXJiXCpcPVx6KFteXHRhLXpBLVpdXCkiCWVuZD0iXHoxXHwlc3RvcHpvbmVcPiIJCQljb250YWlucz1AU3BlbGwKLSAgICAgZW5kaWYKKyAgICBzeW4gcmVnaW9uIHRleFpvbmUJCXN0YXJ0PSJcXHZlcmJcKlw9XHooW15cdGEtekEtWl1cKSIJZW5kPSJcejFcfCVzdG9wem9uZVw+IgkJCWNvbnRhaW5zPUBTcGVsbAogICAgZW5kaWYKICAgZWxzZQogICAgc3luIHJlZ2lvbiB0ZXhab25lCQlzdGFydD0iXFxiZWdpbntbdlZdZXJiYXRpbX0iCQllbmQ9IlxcZW5ke1t2Vl1lcmJhdGltfVx8JXN0b3B6b25lXD4iCi0gICBpZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3luIHJlZ2lvbiB0ZXhab25lCQlzdGFydD0iXFx2ZXJiXCpcPWAiCQkJZW5kPSJgXHwlc3RvcHpvbmVcPiIKLSAgICBzeW4gcmVnaW9uIHRleFpvbmUJCXN0YXJ0PSJcXHZlcmJcKlw9IyIJCQllbmQ9IiNcfCVzdG9wem9uZVw+IgorICAgaWYgYjp0ZXhfc3R5bGlzaAorICAgICBzeW4gcmVnaW9uIHRleFpvbmUJCXN0YXJ0PSJcXHZlcmJcKlw9XHooW15cdGEtekEtWkBdXCkiCWVuZD0iXHoxXHwlc3RvcHpvbmVcPiIKICAgIGVsc2UKLSAgICAgaWYgYjp0ZXhfc3R5bGlzaAotICAgICAgIHN5biByZWdpb24gdGV4Wm9uZQkJc3RhcnQ9IlxcdmVyYlwqXD1ceihbXlx0YS16QS1aQF1cKSIJZW5kPSJcejFcfCVzdG9wem9uZVw+IgotICAgICBlbHNlCi0gICAgICAgc3luIHJlZ2lvbiB0ZXhab25lCQlzdGFydD0iXFx2ZXJiXCpcPVx6KFteXHRhLXpBLVpdXCkiCWVuZD0iXHoxXHwlc3RvcHpvbmVcPiIKLSAgICAgZW5kaWYKKyAgICAgc3luIHJlZ2lvbiB0ZXhab25lCQlzdGFydD0iXFx2ZXJiXCpcPVx6KFteXHRhLXpBLVpdXCkiCWVuZD0iXHoxXHwlc3RvcHpvbmVcPiIKICAgIGVuZGlmCiAgIGVuZGlmCiBlbmRpZgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdGV4aW5mby52aW0gYi9ydW50aW1lL3N5bnRheC90ZXhpbmZvLnZpbQppbmRleCAxMzRmYzY3Li5lYzM1M2JiIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC90ZXhpbmZvLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC90ZXhpbmZvLnZpbQpAQCAtOSwxMCArOSw4IEBACiAiIHNpbmNlIEAgY2FuIGhhdmUgc3BlY2lhbCBtZWFuaW5ncywgZXZlcnl0aGluZyBpcyAnbWF0Y2gnLWVkIGFuZCAncmVnaW9uJy1lZAogIiAoaW5jbHVkaW5nIEAgaW4gJ2lza2V5d29yZCcgb3B0aW9uIGhhcyB1bmV4cGVjdGVkIGVmZmVjdHMpCiAKLSIgUmVtb3ZlIGFueSBvbGQgc3ludGF4IHN0dWZmIGhhbmdpbmcgYXJvdW5kLCBpZiBuZWVkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3luIGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTM1Niw0OCArMzU0LDM5IEBACiAiPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAiIGhpZ2hsaWdodGluZwogCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF90ZXhpbmZvX3N5bl9pbml0cyIpCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF90ZXhpbmZvX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCitIaUxpbmsgdGV4aW5mb1NwZWNpYWxDaGFyCVNwZWNpYWwKK0hpTGluayB0ZXhpbmZvSEZTcGVjaWFsQ2hhcglTcGVjaWFsCiAKLSAgSGlMaW5rIHRleGluZm9TcGVjaWFsQ2hhcglTcGVjaWFsCi0gIEhpTGluayB0ZXhpbmZvSEZTcGVjaWFsQ2hhcglTcGVjaWFsCi0KLSAgSGlMaW5rIHRleGluZm9FcnJvcgkJRXJyb3IKLSAgSGlMaW5rIHRleGluZm9JZGVudAkJSWRlbnRpZmllcgotICBIaUxpbmsgdGV4aW5mb0Fzc2lnbm1lbnQJSWRlbnRpZmllcgotICBIaUxpbmsgdGV4aW5mb1NpbmdsZVBhcglJZGVudGlmaWVyCi0gIEhpTGluayB0ZXhpbmZvSW5kZXhQYXIJSWRlbnRpZmllcgotICBIaUxpbmsgdGV4aW5mb1NJUGFyCQlJZGVudGlmaWVyCi0gIEhpTGluayB0ZXhpbmZvRElFUGFyCQlJZGVudGlmaWVyCi0gIEhpTGluayB0ZXhpbmZvVGV4Q21kCQlQcmVQcm9jCitIaUxpbmsgdGV4aW5mb0Vycm9yCQlFcnJvcgorSGlMaW5rIHRleGluZm9JZGVudAkJSWRlbnRpZmllcgorSGlMaW5rIHRleGluZm9Bc3NpZ25tZW50CUlkZW50aWZpZXIKK0hpTGluayB0ZXhpbmZvU2luZ2xlUGFyCUlkZW50aWZpZXIKK0hpTGluayB0ZXhpbmZvSW5kZXhQYXIJSWRlbnRpZmllcgorSGlMaW5rIHRleGluZm9TSVBhcgkJSWRlbnRpZmllcgorSGlMaW5rIHRleGluZm9ESUVQYXIJCUlkZW50aWZpZXIKK0hpTGluayB0ZXhpbmZvVGV4Q21kCQlQcmVQcm9jCiAKIAotICBIaUxpbmsgdGV4aW5mb0F0Q21kCQlTdGF0ZW1lbnQJIkAtY29tbWFuZAotICBIaUxpbmsgdGV4aW5mb1BybUF0Q21kCVN0cmluZwkJIkAtY29tbWFuZCBpbiBvbmUgbGluZSB3aXRoIHVua25vd24gbnIuIG9mIHBhcmFtZXRlcnMKLQkJCQkJCSJpcyBTdHJpbmcgYmVjYXVzZSBpcyBmb3VuZCBhcyBhIHJlZ2lvbiBhbmQgaXMgJ21hdGNoZ3JvdXAnLWVkCi0JCQkJCQkidG8gdGV4aW5mb0F0Q21kCi0gIEhpTGluayB0ZXhpbmZvQnJjUHJtQXRDbWQJU3RyaW5nCQkiQC1jb21tYW5kIHdpdGggcGFyYW1ldGVyKHMpIGluIGJyYWNlcyAoe30pCi0JCQkJCQkiaXMgU3RyaW5nIGJlY2F1c2UgaXMgZm91bmQgYXMgYSByZWdpb24gYW5kIGlzICdtYXRjaGdyb3VwJy1lZCB0byB0ZXhpbmZvQXRDbWQKLSAgSGlMaW5rIHRleGluZm9NbHRsbkF0Q21kRkxpbmUgIHRleGluZm9BdENtZAkicmVwZWF0ZWQgZW1iZWRkZWQgRmlyc3QgbGluZXMgaW4gQC1jb21tYW5kcwotICBIaUxpbmsgdGV4aW5mb01sdGxuQXRDbWQJU3RyaW5nCQkiQC1jb21tYW5kIGluIG11bHRpcGxlIGxpbmVzCi0JCQkJCQkiaXMgU3RyaW5nIGJlY2F1c2UgaXMgZm91bmQgYXMgYSByZWdpb24gYW5kIGlzICdtYXRjaGdyb3VwJy1lZCB0byB0ZXhpbmZvQXRDbWQKLSAgSGlMaW5rIHRleGluZm9NbHRsbjJBdENtZAlQcmVQcm9jCQkiQC1jb21tYW5kIGluIG11bHRpcGxlIGxpbmVzIChzYW1lIGFzIHRleGluZm9NbHRsbkF0Q21kLCBqdXN0IHdpdGggb3RoZXIgY29sb3JzKQotICBIaUxpbmsgdGV4aW5mb01sdGxuRE1BdENtZAlQcmVQcm9jCQkiQC1jb21tYW5kIGluIG11bHRpcGxlIGxpbmVzIChzYW1lIGFzIHRleGluZm9NbHRsbkF0Q21kLCBqdXN0IHdpdGggb3RoZXIgY29sb3JzOyB1c2VkIGZvciBAZGV0YWlsbWVudSwgd2hpY2ggY2FuIGJlIGluY2x1ZGVkIGluIEBtZW51KQotICBIaUxpbmsgdGV4aW5mb01sdGxuTkF0Q21kCU5vcm1hbAkJIkAtY29tbWFuZCBpbiBtdWx0aXBsZSBsaW5lcyAoc2FtZSBhcyB0ZXhpbmZvTWx0bG5BdENtZCwganVzdCB3aXRoIG90aGVyIGNvbG9ycykKLSAgSGlMaW5rIHRleGluZm9UaGlzQXRDbWQJU3RhdGVtZW50CSJALWNvbW1hbmQgdXNlZCBpbiBoZWFkZXJzIGFuZCBmb290ZXJzIChAdGhpcy4uLiBzZXJpZXMpCitIaUxpbmsgdGV4aW5mb0F0Q21kCQlTdGF0ZW1lbnQJIkAtY29tbWFuZAorSGlMaW5rIHRleGluZm9Qcm1BdENtZAlTdHJpbmcJCSJALWNvbW1hbmQgaW4gb25lIGxpbmUgd2l0aCB1bmtub3duIG5yLiBvZiBwYXJhbWV0ZXJzCisJCQkJCSAgICAgICJpcyBTdHJpbmcgYmVjYXVzZSBpcyBmb3VuZCBhcyBhIHJlZ2lvbiBhbmQgaXMgJ21hdGNoZ3JvdXAnLWVkCisJCQkJCSAgICAgICJ0byB0ZXhpbmZvQXRDbWQKK0hpTGluayB0ZXhpbmZvQnJjUHJtQXRDbWQJU3RyaW5nCQkiQC1jb21tYW5kIHdpdGggcGFyYW1ldGVyKHMpIGluIGJyYWNlcyAoe30pCisJCQkJCSAgICAgICJpcyBTdHJpbmcgYmVjYXVzZSBpcyBmb3VuZCBhcyBhIHJlZ2lvbiBhbmQgaXMgJ21hdGNoZ3JvdXAnLWVkIHRvIHRleGluZm9BdENtZAorSGlMaW5rIHRleGluZm9NbHRsbkF0Q21kRkxpbmUgIHRleGluZm9BdENtZAkicmVwZWF0ZWQgZW1iZWRkZWQgRmlyc3QgbGluZXMgaW4gQC1jb21tYW5kcworSGlMaW5rIHRleGluZm9NbHRsbkF0Q21kCVN0cmluZwkJIkAtY29tbWFuZCBpbiBtdWx0aXBsZSBsaW5lcworCQkJCQkgICAgICAiaXMgU3RyaW5nIGJlY2F1c2UgaXMgZm91bmQgYXMgYSByZWdpb24gYW5kIGlzICdtYXRjaGdyb3VwJy1lZCB0byB0ZXhpbmZvQXRDbWQKK0hpTGluayB0ZXhpbmZvTWx0bG4yQXRDbWQJUHJlUHJvYwkJIkAtY29tbWFuZCBpbiBtdWx0aXBsZSBsaW5lcyAoc2FtZSBhcyB0ZXhpbmZvTWx0bG5BdENtZCwganVzdCB3aXRoIG90aGVyIGNvbG9ycykKK0hpTGluayB0ZXhpbmZvTWx0bG5ETUF0Q21kCVByZVByb2MJCSJALWNvbW1hbmQgaW4gbXVsdGlwbGUgbGluZXMgKHNhbWUgYXMgdGV4aW5mb01sdGxuQXRDbWQsIGp1c3Qgd2l0aCBvdGhlciBjb2xvcnM7IHVzZWQgZm9yIEBkZXRhaWxtZW51LCB3aGljaCBjYW4gYmUgaW5jbHVkZWQgaW4gQG1lbnUpCitIaUxpbmsgdGV4aW5mb01sdGxuTkF0Q21kCU5vcm1hbAkJIkAtY29tbWFuZCBpbiBtdWx0aXBsZSBsaW5lcyAoc2FtZSBhcyB0ZXhpbmZvTWx0bG5BdENtZCwganVzdCB3aXRoIG90aGVyIGNvbG9ycykKK0hpTGluayB0ZXhpbmZvVGhpc0F0Q21kCVN0YXRlbWVudAkiQC1jb21tYW5kIHVzZWQgaW4gaGVhZGVycyBhbmQgZm9vdGVycyAoQHRoaXMuLi4gc2VyaWVzKQogCi0gIEhpTGluayB0ZXhpbmZvQ29tbWVudAlDb21tZW50CitIaUxpbmsgdGV4aW5mb0NvbW1lbnQJQ29tbWVudAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ0ZXhpbmZvIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdGV4bWYudmltIGIvcnVudGltZS9zeW50YXgvdGV4bWYudmltCmluZGV4IDdiOTExNjguLjRjM2NjZjggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3RleG1mLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC90ZXhtZi52aW0KQEAgLTYsMTIgKzYsOSBAQAogIiBVUkw6IGh0dHA6Ly9waHlzaWNzLm11bmkuY3ovfnlldGkvZG93bmxvYWQvc3ludGF4L3RleG1mLnZpbQogCiAiIFNldHVwCi1pZiB2ZXJzaW9uID49IDYwMAotICBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQotICAgIGZpbmlzaAotICBlbmRpZgotZWxzZQotICBzeW50YXggY2xlYXIKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorICBmaW5pc2gKIGVuZGlmCiAKIHN5biBjYXNlIG1hdGNoCkBAIC00NSw0MiArNDIsMzUgQEAKIHN5biBtYXRjaCB0ZXhtZkJyYWNlRXJyb3IgIn0iCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZwotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3RleG1mX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3RleG1mX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCitjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgdGV4bWZDb21tZW50IENvbW1lbnQKLSAgSGlMaW5rIHRleG1mVG9kbyBUb2RvCitIaUxpbmsgdGV4bWZDb21tZW50IENvbW1lbnQKK0hpTGluayB0ZXhtZlRvZG8gVG9kbwogCi0gIEhpTGluayB0ZXhtZlBhc3NlZFBhcmFtZXRlciB0ZXhtZlZhcmlhYmxlCi0gIEhpTGluayB0ZXhtZlZhcmlhYmxlIElkZW50aWZpZXIKK0hpTGluayB0ZXhtZlBhc3NlZFBhcmFtZXRlciB0ZXhtZlZhcmlhYmxlCitIaUxpbmsgdGV4bWZWYXJpYWJsZSBJZGVudGlmaWVyCiAKLSAgSGlMaW5rIHRleG1mTnVtYmVyIE51bWJlcgotICBIaUxpbmsgdGV4bWZTdHJpbmcgU3RyaW5nCitIaUxpbmsgdGV4bWZOdW1iZXIgTnVtYmVyCitIaUxpbmsgdGV4bWZTdHJpbmcgU3RyaW5nCiAKLSAgSGlMaW5rIHRleG1mTEhTU3RhcnQgdGV4bWZMSFMKLSAgSGlMaW5rIHRleG1mTEhTVmFyaWFibGUgdGV4bWZMSFMKLSAgSGlMaW5rIHRleG1mTEhTRG90IHRleG1mTEhTCi0gIEhpTGluayB0ZXhtZkxIUyBUeXBlCitIaUxpbmsgdGV4bWZMSFNTdGFydCB0ZXhtZkxIUworSGlMaW5rIHRleG1mTEhTVmFyaWFibGUgdGV4bWZMSFMKK0hpTGluayB0ZXhtZkxIU0RvdCB0ZXhtZkxIUworSGlMaW5rIHRleG1mTEhTIFR5cGUKIAotICBIaUxpbmsgdGV4bWZFcXVhbHMgTm9ybWFsCitIaUxpbmsgdGV4bWZFcXVhbHMgTm9ybWFsCiAKLSAgSGlMaW5rIHRleG1mQnJhY2VCcmFjZSB0ZXhtZkRlbGltaXRlcgotICBIaUxpbmsgdGV4bWZDb21tYSB0ZXhtZkRlbGltaXRlcgotICBIaUxpbmsgdGV4bWZDb2xvbnMgdGV4bWZEZWxpbWl0ZXIKLSAgSGlMaW5rIHRleG1mRGVsaW1pdGVyIFByZXByb2MKK0hpTGluayB0ZXhtZkJyYWNlQnJhY2UgdGV4bWZEZWxpbWl0ZXIKK0hpTGluayB0ZXhtZkNvbW1hIHRleG1mRGVsaW1pdGVyCitIaUxpbmsgdGV4bWZDb2xvbnMgdGV4bWZEZWxpbWl0ZXIKK0hpTGluayB0ZXhtZkRlbGltaXRlciBQcmVwcm9jCiAKLSAgSGlMaW5rIHRleG1mRG91YmxlRXhjbGFtIFN0YXRlbWVudAotICBIaUxpbmsgdGV4bWZTcGVjaWFsIFNwZWNpYWwKK0hpTGluayB0ZXhtZkRvdWJsZUV4Y2xhbSBTdGF0ZW1lbnQKK0hpTGluayB0ZXhtZlNwZWNpYWwgU3BlY2lhbAogCi0gIEhpTGluayB0ZXhtZkJyYWNlRXJyb3IgdGV4bWZFcnJvcgotICBIaUxpbmsgdGV4bWZFcnJvciBFcnJvcgorSGlMaW5rIHRleG1mQnJhY2VFcnJvciB0ZXhtZkVycm9yCitIaUxpbmsgdGV4bWZFcnJvciBFcnJvcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAidGV4bWYiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC90Zi52aW0gYi9ydW50aW1lL3N5bnRheC90Zi52aW0KaW5kZXggMmE5YTk5OS4uOWRlOTNkYSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvdGYudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3RmLnZpbQpAQCAtOSwxMSArOSw4IEBACiAKICIgUmVtb3ZlIGFueSBvbGQgc3ludGF4IHN0dWZmIGhhbmdpbmcgYXJvdW5kCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xNjEsNDQgKzE1OCwzNiBAQAogZW5kaWYKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfdGZfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfdGZfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayB0ZkNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIHRmU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIHRmTnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIHRmRmxvYXQJCUZsb2F0Ci0gIEhpTGluayB0ZklkZW50aWZpZXIJCUlkZW50aWZpZXIKLSAgSGlMaW5rIHRmVmFyCQkJSWRlbnRpZmllcgotICBIaUxpbmsgdGZXb3JsZAkJSWRlbnRpZmllcgotICBIaUxpbmsgdGZSZWFkb25seQkJSWRlbnRpZmllcgotICBIaUxpbmsgdGZIb29rCQlJZGVudGlmaWVyCi0gIEhpTGluayB0ZkZ1bmN0aW9ucwkJRnVuY3Rpb24KLSAgSGlMaW5rIHRmUmVwZWF0CQlSZXBlYXQKLSAgSGlMaW5rIHRmQ29uZGl0aW9uYWwJCUNvbmRpdGlvbmFsCi0gIEhpTGluayB0ZkxhYmVsCQlMYWJlbAotICBIaUxpbmsgdGZTdGF0ZW1lbnQJCVN0YXRlbWVudAotICBIaUxpbmsgdGZUeXBlCQlUeXBlCi0gIEhpTGluayB0ZkluY2x1ZGUJCUluY2x1ZGUKLSAgSGlMaW5rIHRmRGVmaW5lCQlEZWZpbmUKLSAgSGlMaW5rIHRmU3BlY2lhbENoYXIJCVNwZWNpYWxDaGFyCi0gIEhpTGluayB0ZlNwZWNpYWxDaGFyRXNjCVNwZWNpYWxDaGFyCi0gIEhpTGluayB0ZlBhcmVudEVycm9yCQlFcnJvcgotICBIaUxpbmsgdGZUb2RvCQlUb2RvCi0gIEhpTGluayB0ZkVuZENvbW1hbmQJCURlbGltaXRlcgotICBIaUxpbmsgdGZKb2luTGluZXMJCURlbGltaXRlcgotICBIaUxpbmsgdGZPcGVyYXRvcgkJT3BlcmF0b3IKLSAgSGlMaW5rIHRmUmVsYXRpb24JCU9wZXJhdG9yCitIaUxpbmsgdGZDb21tZW50CQlDb21tZW50CitIaUxpbmsgdGZTdHJpbmcJCVN0cmluZworSGlMaW5rIHRmTnVtYmVyCQlOdW1iZXIKK0hpTGluayB0ZkZsb2F0CQlGbG9hdAorSGlMaW5rIHRmSWRlbnRpZmllcgkJSWRlbnRpZmllcgorSGlMaW5rIHRmVmFyCQkJSWRlbnRpZmllcgorSGlMaW5rIHRmV29ybGQJCUlkZW50aWZpZXIKK0hpTGluayB0ZlJlYWRvbmx5CQlJZGVudGlmaWVyCitIaUxpbmsgdGZIb29rCQlJZGVudGlmaWVyCitIaUxpbmsgdGZGdW5jdGlvbnMJCUZ1bmN0aW9uCitIaUxpbmsgdGZSZXBlYXQJCVJlcGVhdAorSGlMaW5rIHRmQ29uZGl0aW9uYWwJCUNvbmRpdGlvbmFsCitIaUxpbmsgdGZMYWJlbAkJTGFiZWwKK0hpTGluayB0ZlN0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsgdGZUeXBlCQlUeXBlCitIaUxpbmsgdGZJbmNsdWRlCQlJbmNsdWRlCitIaUxpbmsgdGZEZWZpbmUJCURlZmluZQorSGlMaW5rIHRmU3BlY2lhbENoYXIJCVNwZWNpYWxDaGFyCitIaUxpbmsgdGZTcGVjaWFsQ2hhckVzYwlTcGVjaWFsQ2hhcgorSGlMaW5rIHRmUGFyZW50RXJyb3IJCUVycm9yCitIaUxpbmsgdGZUb2RvCQlUb2RvCitIaUxpbmsgdGZFbmRDb21tYW5kCQlEZWxpbWl0ZXIKK0hpTGluayB0ZkpvaW5MaW5lcwkJRGVsaW1pdGVyCitIaUxpbmsgdGZPcGVyYXRvcgkJT3BlcmF0b3IKK0hpTGluayB0ZlJlbGF0aW9uCQlPcGVyYXRvcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAidGYiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3RsaS52aW0gYi9ydW50aW1lL3N5bnRheC90bGkudmltCmluZGV4IDU2ODVhNmMuLmUwZTE5YWIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3RsaS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdGxpLnZpbQpAQCAtNCwxMSArNCw4IEBACiAiIExhc3QgQ2hhbmdlOgkyMDAxIE1heSAxMAogIiBWZXJzaW9uOiAgICAgIDEuMAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNDQsMjcgKzQxLDE5IEBACiBzeW4gY2FzZSBtYXRjaAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF90bGlfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfdGxpX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgdGxpTnVtYmVyCU51bWJlcgotICBIaUxpbmsgdGxpU3RyaW5nCVN0cmluZwotICBIaUxpbmsgdGxpQ29tbWVudAlDb21tZW50Ci0gIEhpTGluayB0bGlTcGVjaWFsCVNwZWNpYWxDaGFyCi0gIEhpTGluayB0bGlJZGVudGlmaWVyIElkZW50aWZpZXIKLSAgSGlMaW5rIHRsaU9iamVjdCAgICAgU3RhdGVtZW50Ci0gIEhpTGluayB0bGlGaWVsZCAgICAgIFR5cGUKLSAgSGlMaW5rIHRsaVN0eWxlICAgICAgUHJlUHJvYworSGlMaW5rIHRsaU51bWJlcglOdW1iZXIKK0hpTGluayB0bGlTdHJpbmcJU3RyaW5nCitIaUxpbmsgdGxpQ29tbWVudAlDb21tZW50CitIaUxpbmsgdGxpU3BlY2lhbAlTcGVjaWFsQ2hhcgorSGlMaW5rIHRsaUlkZW50aWZpZXIgSWRlbnRpZmllcgorSGlMaW5rIHRsaU9iamVjdCAgICAgU3RhdGVtZW50CitIaUxpbmsgdGxpRmllbGQgICAgICBUeXBlCitIaUxpbmsgdGxpU3R5bGUgICAgICBQcmVQcm9jCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ0bGkiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3RwcC52aW0gYi9ydW50aW1lL3N5bnRheC90cHAudmltCmluZGV4IDA1MGEyYmEuLmIxZWEzNWYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3RwcC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdHBwLnZpbQpAQCAtMTcsMTEgKzE3LDggQEAKICIgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgZmlsZS4KICIgU1BBTSBpcyBfTk9UXyB3ZWxjb21lIC0gYmUgcmVhZHkgdG8gYmUgcmVwb3J0ZWQhCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC01MSwxMSArNDgsNyBAQAogCiBpZiBtYWluX3N5bnRheCAhPSAnc2gnCiAgICIgc2hlbGwgY29tbWFuZAotICBpZiB2ZXJzaW9uIDwgNjAwCi0gICAgc3luIGluY2x1ZGUgQHRwcFNoRXhlYyA8c2ZpbGU+OnA6aC9zaC52aW0KLSAgZWxzZQotICAgIHN5biBpbmNsdWRlIEB0cHBTaEV4ZWMgc3ludGF4L3NoLnZpbQotICBlbmRpZgorICBzeW4gaW5jbHVkZSBAdHBwU2hFeGVjIHN5bnRheC9zaC52aW0KICAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiAgIHN5biByZWdpb24gc2hFeGVjIG1hdGNoZ3JvdXA9dHBwUGFnZUxvY2FsT3B0aW9uS2V5IHN0YXJ0PSdeLS1leGVjIConIGtlZXBlbmQgZW5kPSckJyBjb250YWlucz1AdHBwU2hFeGVjCkBAIC02NSwzNSArNTgsMjcgQEAKIHN5biBtYXRjaCB0cHBDb21tZW50ICJeLS0jIy4qJCIKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfdHBwX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3RwcF9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHRwcEFic3RyYWN0T3B0aW9uS2V5CQlTcGVjaWFsCi0gIEhpTGluayB0cHBQYWdlTG9jYWxPcHRpb25LZXkJCUtleXdvcmQKLSAgSGlMaW5rIHRwcFBhZ2VMb2NhbFN3aXRjaEtleQkJS2V5d29yZAotICBIaUxpbmsgdHBwQ29sb3JPcHRpb25LZXkJCUtleXdvcmQKLSAgSGlMaW5rIHRwcFRpbWVPcHRpb25LZXkJCUNvbW1lbnQKLSAgSGlMaW5rIHRwcE5ld1BhZ2VPcHRpb25LZXkJCVByZVByb2MKLSAgSGlMaW5rIHRwcFN0cmluZwkJCVN0cmluZwotICBIaUxpbmsgdHBwQ29sb3IJCQlTdHJpbmcKLSAgSGlMaW5rIHRwcFRpbWUJCQlOdW1iZXIKLSAgSGlMaW5rIHRwcENvbW1lbnQJCQlDb21tZW50Ci0gIEhpTGluayB0cHBBYnN0cmFjdE9wdGlvbgkJRXJyb3IKLSAgSGlMaW5rIHRwcFBhZ2VMb2NhbE9wdGlvbgkJRXJyb3IKLSAgSGlMaW5rIHRwcFBhZ2VMb2NhbFN3aXRjaAkJRXJyb3IKLSAgSGlMaW5rIHRwcENvbG9yT3B0aW9uCQkJRXJyb3IKLSAgSGlMaW5rIHRwcE5ld1BhZ2VPcHRpb24JCUVycm9yCi0gIEhpTGluayB0cHBUaW1lT3B0aW9uCQkJRXJyb3IKK0hpTGluayB0cHBBYnN0cmFjdE9wdGlvbktleQkJU3BlY2lhbAorSGlMaW5rIHRwcFBhZ2VMb2NhbE9wdGlvbktleQkJS2V5d29yZAorSGlMaW5rIHRwcFBhZ2VMb2NhbFN3aXRjaEtleQkJS2V5d29yZAorSGlMaW5rIHRwcENvbG9yT3B0aW9uS2V5CQlLZXl3b3JkCitIaUxpbmsgdHBwVGltZU9wdGlvbktleQkJQ29tbWVudAorSGlMaW5rIHRwcE5ld1BhZ2VPcHRpb25LZXkJCVByZVByb2MKK0hpTGluayB0cHBTdHJpbmcJCQlTdHJpbmcKK0hpTGluayB0cHBDb2xvcgkJCVN0cmluZworSGlMaW5rIHRwcFRpbWUJCQlOdW1iZXIKK0hpTGluayB0cHBDb21tZW50CQkJQ29tbWVudAorSGlMaW5rIHRwcEFic3RyYWN0T3B0aW9uCQlFcnJvcgorSGlMaW5rIHRwcFBhZ2VMb2NhbE9wdGlvbgkJRXJyb3IKK0hpTGluayB0cHBQYWdlTG9jYWxTd2l0Y2gJCUVycm9yCitIaUxpbmsgdHBwQ29sb3JPcHRpb24JCQlFcnJvcgorSGlMaW5rIHRwcE5ld1BhZ2VPcHRpb24JCUVycm9yCitIaUxpbmsgdHBwVGltZU9wdGlvbgkJCUVycm9yCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ0cHAiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3RyYXN5cy52aW0gYi9ydW50aW1lL3N5bnRheC90cmFzeXMudmltCmluZGV4IGNmZWNjMWMuLjFlN2Y3NWMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3RyYXN5cy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdHJhc3lzLnZpbQpAQCAtOCwxMSArOCw4IEBACiAKIAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMjEsMTEgKzE4LDcgQEAKIGxldCBmb3J0cmFuX2ZyZWVfc291cmNlPTEKIAogIiBMb2FkIEZPUlRSQU4gc3ludGF4IGZpbGUKLWlmIHZlcnNpb24gPCA2MDAKLSAgc291cmNlIDxzZmlsZT46cDpoL2ZvcnRyYW4udmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9mb3J0cmFuLnZpbQotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9mb3J0cmFuLnZpbQogdW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiAKQEAgLTEzNiw0MCArMTI5LDMyIEBACiAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF90cmFzeXNfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfdHJhc3lzX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgdHJhc3lzT3B0aW9ucwkJU3BlY2lhbAotICBIaUxpbmsgdHJhc3lzU3VyZmFjZQkJU3BlY2lhbAotICBIaUxpbmsgdHJhc3lzU3VyZmFjZVR5cGUJQ29uc3RhbnQKLSAgSGlMaW5rIHRyYXN5c1N1cmZhY2VBcmdzCUNvbnN0YW50Ci0gIEhpTGluayB0cmFzeXNBcmdzCQlDb25zdGFudAotICBIaUxpbmsgdHJhc3lzT3BlcmF0aW9ucwlTdGF0ZW1lbnQKLSAgSGlMaW5rIHRyYXN5c1N1YlJvdXRpbmUJU3RhdGVtZW50Ci0gIEhpTGluayB0cmFzc3lQcmNzclNlZ20JUHJlUHJvYwotICBIaUxpbmsgdHJhc3lzSWRlbnRpZmllcglJZGVudGlmaWVyCi0gIEhpTGluayB0cmFzeXNDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayB0cmFzeXNIZWFkZXIJCVR5cGVkZWYKLSAgSGlMaW5rIHRyYXN5c01hY3JvCQlNYWNybwotICBIaUxpbmsgdHJhc3lzSW50ZWdlcgkJTnVtYmVyCi0gIEhpTGluayB0cmFzeXNGbG9hdAkJRmxvYXQKLSAgSGlMaW5rIHRyYXN5c1NjaWVudGlmaWMJRmxvYXQKK0hpTGluayB0cmFzeXNPcHRpb25zCQlTcGVjaWFsCitIaUxpbmsgdHJhc3lzU3VyZmFjZQkJU3BlY2lhbAorSGlMaW5rIHRyYXN5c1N1cmZhY2VUeXBlCUNvbnN0YW50CitIaUxpbmsgdHJhc3lzU3VyZmFjZUFyZ3MJQ29uc3RhbnQKK0hpTGluayB0cmFzeXNBcmdzCQlDb25zdGFudAorSGlMaW5rIHRyYXN5c09wZXJhdGlvbnMJU3RhdGVtZW50CitIaUxpbmsgdHJhc3lzU3ViUm91dGluZQlTdGF0ZW1lbnQKK0hpTGluayB0cmFzc3lQcmNzclNlZ20JUHJlUHJvYworSGlMaW5rIHRyYXN5c0lkZW50aWZpZXIJSWRlbnRpZmllcgorSGlMaW5rIHRyYXN5c0NvbW1lbnQJCUNvbW1lbnQKK0hpTGluayB0cmFzeXNIZWFkZXIJCVR5cGVkZWYKK0hpTGluayB0cmFzeXNNYWNybwkJTWFjcm8KK0hpTGluayB0cmFzeXNJbnRlZ2VyCQlOdW1iZXIKK0hpTGluayB0cmFzeXNGbG9hdAkJRmxvYXQKK0hpTGluayB0cmFzeXNTY2llbnRpZmljCUZsb2F0CiAKLSAgSGlMaW5rIHRyYXN5c0JsYW5rCQlTcGVjaWFsQ2hhcgorSGlMaW5rIHRyYXN5c0JsYW5rCQlTcGVjaWFsQ2hhcgogCi0gIEhpTGluayB0cmFzeXNFbmREYXRhCQlNYWNybworSGlMaW5rIHRyYXN5c0VuZERhdGEJCU1hY3JvCiAKLSAgSGlMaW5rIHRyYXN5c1RvZG8JCVRvZG8KK0hpTGluayB0cmFzeXNUb2RvCQlUb2RvCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInRyYXN5cyIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3RydXN0ZWVzLnZpbSBiL3J1bnRpbWUvc3ludGF4L3RydXN0ZWVzLnZpbQppbmRleCA0YmM4ODc0Li42YzU4ZDM5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC90cnVzdGVlcy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdHJ1c3RlZXMudmltCkBAIC0zLDkgKzMsOCBAQAogIiBNYWludGFpbmVyOiAgIE5pbWEgVGFsZWJpIDxuaW1hQGl0Lm5ldC5hdT4KICIgTGFzdCBDaGFuZ2U6ICAyMDA1LTEwLTEyCiAKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3RzYWx0LnZpbSBiL3J1bnRpbWUvc3ludGF4L3RzYWx0LnZpbQppbmRleCA4ODdkNmI3Li43YmNjZGUwIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC90c2FsdC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdHNhbHQudmltCkBAIC00LDExICs0LDggQEAKICIgTGFzdCBDaGFuZ2U6CTIwMTIgRmViIDAzIGJ5IFRoaWxvIFNpeAogIiBWZXJzaW9uIEluZm86IEAoIyl0c2FsdC52aW0JMS41CTk3LzEyLzE2IDA4OjExOjE1CiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xNzEsNDYgKzE2OCwzOCBAQAogCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3RzYWx0X3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3RzYWx0X3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotCUhpTGluayB0c2FsdEZ1bmN0aW9uCQlTdGF0ZW1lbnQKLQlIaUxpbmsgdHNhbHRTeXNWYXIJCVR5cGUKLQkiSGlMaW5rIHRzYWx0TGliRnVuYwkJVXNlckRlZkZ1bmMKLQkiSGlMaW5rIHRzYWx0Q29uc3RhbnRzCQlUeXBlCi0JIkhpTGluayB0c2FsdEZ1bmNBcmcJCVR5cGUKLQkiSGlMaW5rIHRzYWx0T3BlcmF0b3IJCU9wZXJhdG9yCi0JIkhpTGluayB0c2FsdExhYmVsCQlMYWJlbAotCSJIaUxpbmsgdHNhbHRVc2VyTGFiZWwJCUxhYmVsCi0JSGlMaW5rIHRzYWx0Q29uZGl0aW9uYWwJCUNvbmRpdGlvbmFsCi0JSGlMaW5rIHRzYWx0UmVwZWF0CQlSZXBlYXQKLQlIaUxpbmsgdHNhbHRDaGFyYWN0ZXIJCVNwZWNpYWxDaGFyCi0JSGlMaW5rIHRzYWx0U3BlY2lhbENoYXJhY3RlcglTcGVjaWFsQ2hhcgotCUhpTGluayB0c2FsdE51bWJlcgkJTnVtYmVyCi0JSGlMaW5rIHRzYWx0RmxvYXQJCUZsb2F0Ci0JSGlMaW5rIHRzYWx0Q29tbWVudEVycm9yCXRzYWx0RXJyb3IKLQlIaUxpbmsgdHNhbHRJbmNsdWRlCQlJbmNsdWRlCi0JSGlMaW5rIHRzYWx0UHJlUHJvYwkJUHJlUHJvYwotCUhpTGluayB0c2FsdERlZmluZQkJTWFjcm8KLQlIaUxpbmsgdHNhbHRJbmNsdWRlZAkJdHNhbHRTdHJpbmcKLQlIaUxpbmsgdHNhbHRFcnJvcgkJRXJyb3IKLQlIaUxpbmsgdHNhbHRTdGF0ZW1lbnQJCVN0YXRlbWVudAotCUhpTGluayB0c2FsdFByZUNvbmRpdAkJUHJlQ29uZGl0Ci0JSGlMaW5rIHRzYWx0VHlwZQkJVHlwZQotCUhpTGluayB0c2FsdFN0cmluZwkJU3RyaW5nCi0JSGlMaW5rIHRzYWx0Q29tbWVudAkJQ29tbWVudAotCUhpTGluayB0c2FsdFNwZWNpYWwJCVNwZWNpYWwKLQlIaUxpbmsgdHNhbHRUb2RvCQlUb2RvCitIaUxpbmsgdHNhbHRGdW5jdGlvbgkJU3RhdGVtZW50CitIaUxpbmsgdHNhbHRTeXNWYXIJCVR5cGUKKyJIaUxpbmsgdHNhbHRMaWJGdW5jCQlVc2VyRGVmRnVuYworIkhpTGluayB0c2FsdENvbnN0YW50cwkJVHlwZQorIkhpTGluayB0c2FsdEZ1bmNBcmcJCVR5cGUKKyJIaUxpbmsgdHNhbHRPcGVyYXRvcgkJT3BlcmF0b3IKKyJIaUxpbmsgdHNhbHRMYWJlbAkJTGFiZWwKKyJIaUxpbmsgdHNhbHRVc2VyTGFiZWwJCUxhYmVsCitIaUxpbmsgdHNhbHRDb25kaXRpb25hbAkJQ29uZGl0aW9uYWwKK0hpTGluayB0c2FsdFJlcGVhdAkJUmVwZWF0CitIaUxpbmsgdHNhbHRDaGFyYWN0ZXIJCVNwZWNpYWxDaGFyCitIaUxpbmsgdHNhbHRTcGVjaWFsQ2hhcmFjdGVyCVNwZWNpYWxDaGFyCitIaUxpbmsgdHNhbHROdW1iZXIJCU51bWJlcgorSGlMaW5rIHRzYWx0RmxvYXQJCUZsb2F0CitIaUxpbmsgdHNhbHRDb21tZW50RXJyb3IJdHNhbHRFcnJvcgorSGlMaW5rIHRzYWx0SW5jbHVkZQkJSW5jbHVkZQorSGlMaW5rIHRzYWx0UHJlUHJvYwkJUHJlUHJvYworSGlMaW5rIHRzYWx0RGVmaW5lCQlNYWNybworSGlMaW5rIHRzYWx0SW5jbHVkZWQJCXRzYWx0U3RyaW5nCitIaUxpbmsgdHNhbHRFcnJvcgkJRXJyb3IKK0hpTGluayB0c2FsdFN0YXRlbWVudAkJU3RhdGVtZW50CitIaUxpbmsgdHNhbHRQcmVDb25kaXQJCVByZUNvbmRpdAorSGlMaW5rIHRzYWx0VHlwZQkJVHlwZQorSGlMaW5rIHRzYWx0U3RyaW5nCQlTdHJpbmcKK0hpTGluayB0c2FsdENvbW1lbnQJCUNvbW1lbnQKK0hpTGluayB0c2FsdFNwZWNpYWwJCVNwZWNpYWwKK0hpTGluayB0c2FsdFRvZG8JCVRvZG8KIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInRzYWx0IgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC90c3NjbC52aW0gYi9ydW50aW1lL3N5bnRheC90c3NjbC52aW0KaW5kZXggM2ZjMThjNi4uMzJjYThkNCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvdHNzY2wudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3Rzc2NsLnZpbQpAQCAtOCwxMSArOCw4IEBACiAKIAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTc5LDM3ICsxNzYsMjkgQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcKLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3Rzc2NsX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3Rzc2NsX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgdHNzY2xDb21tYW5kCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHRzc2NsS2V5d29yZAkJU3BlY2lhbAotICBIaUxpbmsgdHNzY2xFbmQJCU1hY3JvCi0gIEhpTGluayB0c3NjbFVuaXRzCQlTcGVjaWFsCitIaUxpbmsgdHNzY2xDb21tYW5kCQlTdGF0ZW1lbnQKK0hpTGluayB0c3NjbEtleXdvcmQJCVNwZWNpYWwKK0hpTGluayB0c3NjbEVuZAkJTWFjcm8KK0hpTGluayB0c3NjbFVuaXRzCQlTcGVjaWFsCiAKLSAgSGlMaW5rIHRzc2NsQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgdHNzY2xEaXJlY3RpdmUJCVN0YXRlbWVudAotICBIaUxpbmsgdHNzY2xDb25kaXRpb25hbAlDb25kaXRpb25hbAotICBIaUxpbmsgdHNzY2xDb250Q2hhcgkJTWFjcm8KLSAgSGlMaW5rIHRzc2NsUXVhbGlmaWVyCQlUeXBlZGVmCi0gIEhpTGluayB0c3NjbFN5bWJvbAkJSWRlbnRpZmllcgotICBIaUxpbmsgdHNzY2xTeW1ib2wyCQlTeW1ib2wKLSAgSGlMaW5rIHRzc2NsU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIHRzc2NsT3BlcgkJT3BlcmF0b3IKK0hpTGluayB0c3NjbENvbW1lbnQJCUNvbW1lbnQKK0hpTGluayB0c3NjbERpcmVjdGl2ZQkJU3RhdGVtZW50CitIaUxpbmsgdHNzY2xDb25kaXRpb25hbAlDb25kaXRpb25hbAorSGlMaW5rIHRzc2NsQ29udENoYXIJCU1hY3JvCitIaUxpbmsgdHNzY2xRdWFsaWZpZXIJCVR5cGVkZWYKK0hpTGluayB0c3NjbFN5bWJvbAkJSWRlbnRpZmllcgorSGlMaW5rIHRzc2NsU3ltYm9sMgkJU3ltYm9sCitIaUxpbmsgdHNzY2xTdHJpbmcJCVN0cmluZworSGlMaW5rIHRzc2NsT3BlcgkJT3BlcmF0b3IKIAotICBIaUxpbmsgdHNzY2xJbnRlZ2VyCQlOdW1iZXIKLSAgSGlMaW5rIHRzc2NsRmxvYXQJCU51bWJlcgotICBIaUxpbmsgdHNzY2xTY2llbnRpZmljCU51bWJlcgorSGlMaW5rIHRzc2NsSW50ZWdlcgkJTnVtYmVyCitIaUxpbmsgdHNzY2xGbG9hdAkJTnVtYmVyCitIaUxpbmsgdHNzY2xTY2llbnRpZmljCU51bWJlcgogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ0c3NjbCIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Rzc2dtLnZpbSBiL3J1bnRpbWUvc3ludGF4L3Rzc2dtLnZpbQppbmRleCBiODE4MmQ0Li5jNTc1MzQ3IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC90c3NnbS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdHNzZ20udmltCkBAIC04LDExICs4LDggQEAKIAogCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC03NSwzNSArNzIsMjcgQEAKIAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcKLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3Rzc2dtX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3Rzc2dtX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgdHNzZ21QYXJhbQkJU3RhdGVtZW50Ci0gIEhpTGluayB0c3NnbVN1cmZUeXBlCQlUeXBlCi0gIEhpTGluayB0c3NnbUFyZ3MJCVNwZWNpYWwKLSAgSGlMaW5rIHRzc2dtRGVsaW0JCVR5cGVkZWYKLSAgSGlMaW5rIHRzc2dtRW5kCQlNYWNybwotICBIaUxpbmsgdHNzZ21Vbml0cwkJU3BlY2lhbAorSGlMaW5rIHRzc2dtUGFyYW0JCVN0YXRlbWVudAorSGlMaW5rIHRzc2dtU3VyZlR5cGUJCVR5cGUKK0hpTGluayB0c3NnbUFyZ3MJCVNwZWNpYWwKK0hpTGluayB0c3NnbURlbGltCQlUeXBlZGVmCitIaUxpbmsgdHNzZ21FbmQJCU1hY3JvCitIaUxpbmsgdHNzZ21Vbml0cwkJU3BlY2lhbAogCi0gIEhpTGluayB0c3NnbURlZmF1bHQJCVNwZWNpYWxDb21tZW50Ci0gIEhpTGluayB0c3NnbUNvbW1lbnQJCVN0YXRlbWVudAotICBIaUxpbmsgdHNzZ21Db21tZW50U3RyaW5nCUNvbW1lbnQKLSAgSGlMaW5rIHRzc2dtU3VyZklkZW50CQlJZGVudGlmaWVyCi0gIEhpTGluayB0c3NnbVN0cmluZwkJRGVsaW1pdGVyCitIaUxpbmsgdHNzZ21EZWZhdWx0CQlTcGVjaWFsQ29tbWVudAorSGlMaW5rIHRzc2dtQ29tbWVudAkJU3RhdGVtZW50CitIaUxpbmsgdHNzZ21Db21tZW50U3RyaW5nCUNvbW1lbnQKK0hpTGluayB0c3NnbVN1cmZJZGVudAkJSWRlbnRpZmllcgorSGlMaW5rIHRzc2dtU3RyaW5nCQlEZWxpbWl0ZXIKIAotICBIaUxpbmsgdHNzZ21JbnRlZ2VyCQlOdW1iZXIKLSAgSGlMaW5rIHRzc2dtRmxvYXQJCUZsb2F0Ci0gIEhpTGluayB0c3NnbVNjaWVudGlmaWMJRmxvYXQKK0hpTGluayB0c3NnbUludGVnZXIJCU51bWJlcgorSGlMaW5rIHRzc2dtRmxvYXQJCUZsb2F0CitIaUxpbmsgdHNzZ21TY2llbnRpZmljCUZsb2F0CiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInRzc2dtIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdHNzb3AudmltIGIvcnVudGltZS9zeW50YXgvdHNzb3AudmltCmluZGV4IGQ0MTZkZjAuLmY4ZmFkYWIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Rzc29wLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC90c3NvcC52aW0KQEAgLTgsMTEgKzgsOCBAQAogCiAKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTU2LDMwICs1MywyMiBAQAogCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZwotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfdHNzb3Bfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfdHNzb3Bfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayB0c3NvcFBhcmFtCQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHRzc29wUHJvcAkJSWRlbnRpZmllcgotICBIaUxpbmsgdHNzb3BBcmdzCQlTcGVjaWFsCitIaUxpbmsgdHNzb3BQYXJhbQkJU3RhdGVtZW50CitIaUxpbmsgdHNzb3BQcm9wCQlJZGVudGlmaWVyCitIaUxpbmsgdHNzb3BBcmdzCQlTcGVjaWFsCiAKLSAgSGlMaW5rIHRzc29wQ29tbWVudAkJU3RhdGVtZW50Ci0gIEhpTGluayB0c3NvcENvbW1lbnRTdHJpbmcJQ29tbWVudAotICBIaUxpbmsgdHNzb3BQcm9wTmFtZQkJVHlwZWRlZgorSGlMaW5rIHRzc29wQ29tbWVudAkJU3RhdGVtZW50CitIaUxpbmsgdHNzb3BDb21tZW50U3RyaW5nCUNvbW1lbnQKK0hpTGluayB0c3NvcFByb3BOYW1lCQlUeXBlZGVmCiAKLSAgSGlMaW5rIHRzc29wSW50ZWdlcgkJTnVtYmVyCi0gIEhpTGluayB0c3NvcEZsb2F0CQlGbG9hdAotICBIaUxpbmsgdHNzb3BTY2llbnRpZmljCUZsb2F0CitIaUxpbmsgdHNzb3BJbnRlZ2VyCQlOdW1iZXIKK0hpTGluayB0c3NvcEZsb2F0CQlGbG9hdAorSGlMaW5rIHRzc29wU2NpZW50aWZpYwlGbG9hdAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ0c3NvcCIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3VjLnZpbSBiL3J1bnRpbWUvc3ludGF4L3VjLnZpbQppbmRleCA3ZWFiMWQ0Li5lMTI4Y2JmIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC91Yy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdWMudmltCkBAIC03LDExICs3LDggQEAKIAogIiBQbGVhc2UgY2hlY2sgOmhlbHAgdWMudmltIGZvciBjb21tZW50cyBvbiBzb21lIG9mIHRoZSBvcHRpb25zIGF2YWlsYWJsZS4KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTExMCw2NCArMTA3LDU2IEBACiBleGVjICJzeW4gc3luYyBjY29tbWVudCB1Y0NvbW1lbnQgbWlubGluZXM9IiAuIHVjX21pbmxpbmVzCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3VjX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3VjX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgdWNGdW5jRGVmCQkJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIHVjRXZlbnREZWYJCQlDb25kaXRpb25hbAotICBIaUxpbmsgdWNCcmFjZXMJCQlGdW5jdGlvbgotICBIaUxpbmsgdWNCcmFuY2gJCQlDb25kaXRpb25hbAotICBIaUxpbmsgdWNMYWJlbAkJCUxhYmVsCi0gIEhpTGluayB1Y1VzZXJMYWJlbAkJCUxhYmVsCi0gIEhpTGluayB1Y0NvbmRpdGlvbmFsCQkJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIHVjUmVwZWF0CQkJUmVwZWF0Ci0gIEhpTGluayB1Y1N0b3JhZ2VDbGFzcwkJCVN0b3JhZ2VDbGFzcwotICBIaUxpbmsgdWNNZXRob2REZWNsCQkJdWNTdG9yYWdlQ2xhc3MKLSAgSGlMaW5rIHVjQ2xhc3NEZWNsCQkJdWNTdG9yYWdlQ2xhc3MKLSAgSGlMaW5rIHVjU2NvcGVEZWNsCQkJdWNTdG9yYWdlQ2xhc3MKLSAgSGlMaW5rIHVjQm9vbGVhbgkJCUJvb2xlYW4KLSAgSGlMaW5rIHVjU3BlY2lhbAkJCVNwZWNpYWwKLSAgSGlMaW5rIHVjU3BlY2lhbEVycm9yCQkJRXJyb3IKLSAgSGlMaW5rIHVjU3BlY2lhbENoYXJFcnJvcgkJRXJyb3IKLSAgSGlMaW5rIHVjU3RyaW5nCQkJU3RyaW5nCi0gIEhpTGluayB1Y0NoYXJhY3RlcgkJCUNoYXJhY3RlcgotICBIaUxpbmsgdWNTcGVjaWFsQ2hhcgkJCVNwZWNpYWxDaGFyCi0gIEhpTGluayB1Y051bWJlcgkJCU51bWJlcgotICBIaUxpbmsgdWNFcnJvcgkJCUVycm9yCi0gIEhpTGluayB1Y1N0cmluZ0Vycm9yCQkJRXJyb3IKLSAgSGlMaW5rIHVjU3RhdGVtZW50CQkJU3RhdGVtZW50Ci0gIEhpTGluayB1Y09wZXJhdG9yCQkJT3BlcmF0b3IKLSAgSGlMaW5rIHVjT3ZlckxvYWRlZAkJCU9wZXJhdG9yCi0gIEhpTGluayB1Y0NvbW1lbnQJCQlDb21tZW50Ci0gIEhpTGluayB1Y0RvY0NvbW1lbnQJCQlDb21tZW50Ci0gIEhpTGluayB1Y0xpbmVDb21tZW50CQkJQ29tbWVudAotICBIaUxpbmsgdWNDb25zdGFudAkJCXVjQm9vbGVhbgotICBIaUxpbmsgdWNUeXBlZGVmCQkJVHlwZWRlZgotICBIaUxpbmsgdWNUb2RvCQkJCVRvZG8KK0hpTGluayB1Y0Z1bmNEZWYJCQlDb25kaXRpb25hbAorSGlMaW5rIHVjRXZlbnREZWYJCQlDb25kaXRpb25hbAorSGlMaW5rIHVjQnJhY2VzCQkJRnVuY3Rpb24KK0hpTGluayB1Y0JyYW5jaAkJCUNvbmRpdGlvbmFsCitIaUxpbmsgdWNMYWJlbAkJCUxhYmVsCitIaUxpbmsgdWNVc2VyTGFiZWwJCQlMYWJlbAorSGlMaW5rIHVjQ29uZGl0aW9uYWwJCQlDb25kaXRpb25hbAorSGlMaW5rIHVjUmVwZWF0CQkJUmVwZWF0CitIaUxpbmsgdWNTdG9yYWdlQ2xhc3MJCQlTdG9yYWdlQ2xhc3MKK0hpTGluayB1Y01ldGhvZERlY2wJCQl1Y1N0b3JhZ2VDbGFzcworSGlMaW5rIHVjQ2xhc3NEZWNsCQkJdWNTdG9yYWdlQ2xhc3MKK0hpTGluayB1Y1Njb3BlRGVjbAkJCXVjU3RvcmFnZUNsYXNzCitIaUxpbmsgdWNCb29sZWFuCQkJQm9vbGVhbgorSGlMaW5rIHVjU3BlY2lhbAkJCVNwZWNpYWwKK0hpTGluayB1Y1NwZWNpYWxFcnJvcgkJCUVycm9yCitIaUxpbmsgdWNTcGVjaWFsQ2hhckVycm9yCQlFcnJvcgorSGlMaW5rIHVjU3RyaW5nCQkJU3RyaW5nCitIaUxpbmsgdWNDaGFyYWN0ZXIJCQlDaGFyYWN0ZXIKK0hpTGluayB1Y1NwZWNpYWxDaGFyCQkJU3BlY2lhbENoYXIKK0hpTGluayB1Y051bWJlcgkJCU51bWJlcgorSGlMaW5rIHVjRXJyb3IJCQlFcnJvcgorSGlMaW5rIHVjU3RyaW5nRXJyb3IJCQlFcnJvcgorSGlMaW5rIHVjU3RhdGVtZW50CQkJU3RhdGVtZW50CitIaUxpbmsgdWNPcGVyYXRvcgkJCU9wZXJhdG9yCitIaUxpbmsgdWNPdmVyTG9hZGVkCQkJT3BlcmF0b3IKK0hpTGluayB1Y0NvbW1lbnQJCQlDb21tZW50CitIaUxpbmsgdWNEb2NDb21tZW50CQkJQ29tbWVudAorSGlMaW5rIHVjTGluZUNvbW1lbnQJCQlDb21tZW50CitIaUxpbmsgdWNDb25zdGFudAkJCXVjQm9vbGVhbgorSGlMaW5rIHVjVHlwZWRlZgkJCVR5cGVkZWYKK0hpTGluayB1Y1RvZG8JCQkJVG9kbwogCi0gIEhpTGluayB1Y0NvbW1lbnRUaXRsZQkJCVNwZWNpYWxDb21tZW50Ci0gIEhpTGluayB1Y0RvY1RhZ3MJCQlTcGVjaWFsCi0gIEhpTGluayB1Y0RvY1BhcmFtCQkJRnVuY3Rpb24KLSAgSGlMaW5rIHVjQ29tbWVudFN0YXIJCQl1Y0NvbW1lbnQKK0hpTGluayB1Y0NvbW1lbnRUaXRsZQkJCVNwZWNpYWxDb21tZW50CitIaUxpbmsgdWNEb2NUYWdzCQkJU3BlY2lhbAorSGlMaW5rIHVjRG9jUGFyYW0JCQlGdW5jdGlvbgorSGlMaW5rIHVjQ29tbWVudFN0YXIJCQl1Y0NvbW1lbnQKIAotICBIaUxpbmsgdWNUeXBlCQkJCVR5cGUKLSAgSGlMaW5rIHVjRXh0ZXJuYWwJCQlJbmNsdWRlCitIaUxpbmsgdWNUeXBlCQkJCVR5cGUKK0hpTGluayB1Y0V4dGVybmFsCQkJSW5jbHVkZQogCi0gIEhpTGluayB1Y0NsYXNzS2V5cwkJCUNvbmRpdGlvbmFsCi0gIEhpTGluayB1Y0NsYXNzTGFiZWwJCQlDb25kaXRpb25hbAorSGlMaW5rIHVjQ2xhc3NLZXlzCQkJQ29uZGl0aW9uYWwKK0hpTGluayB1Y0NsYXNzTGFiZWwJCQlDb25kaXRpb25hbAogCi0gIEhpTGluayBodG1sQ29tbWVudAkJCVNwZWNpYWwKLSAgSGlMaW5rIGh0bWxDb21tZW50UGFydAkJU3BlY2lhbAorSGlMaW5rIGh0bWxDb21tZW50CQkJU3BlY2lhbAorSGlMaW5rIGh0bWxDb21tZW50UGFydAkJU3BlY2lhbAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAidWMiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3VpbC52aW0gYi9ydW50aW1lL3N5bnRheC91aWwudmltCmluZGV4IGI1NDIxYmMuLjY4OWIxODcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3VpbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdWlsLnZpbQpAQCAtNCwxMCArNCw4IEBACiAiIExhc3QgQ2hhbmdlOgkyMDEzIE1heSAyMwogIiBVUkw6CQlodHRwOi8vZ290dC1nZWhhYnQuZGUvODAwX3dlcl93aXJfc2luZC90aG9tYXMvSG9tZXBhZ2UvQ29tcHV0ZXIvdmltL3N5bnRheC91aWwudmltCiAKLSIgUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtNDcsMzcgKzQ1LDI5IEBACiBzeW4gc3luYyBjY29tbWVudCB1aWxDb21tZW50CiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3VpbF9zeW5faW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF91aWxfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICIgVGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotICBIaUxpbmsgdWlsQ2hhcmFjdGVyCQl1aWxTdHJpbmcKLSAgSGlMaW5rIHVpbFNwZWNpYWxDaGFyYWN0ZXIJdWlsU3BlY2lhbAotICBIaUxpbmsgdWlsTnVtYmVyCQl1aWxTdHJpbmcKLSAgSGlMaW5rIHVpbENvbW1lbnRFcnJvcgl1aWxFcnJvcgotICBIaUxpbmsgdWlsSW5jbHVkZQkJdWlsUHJlQ29uZGl0Ci0gIEhpTGluayB1aWxEZWZpbmUJCXVpbFByZUNvbmRpdAotICBIaUxpbmsgdWlsSW5jbHVkZWQJCXVpbFN0cmluZwotICBIaUxpbmsgdWlsU3BlY2lhbEZ1bmN0aW9uCXVpbFJlc3NvdXJjZQotICBIaUxpbmsgdWlsUmVzc291cmNlCQlJZGVudGlmaWVyCi0gIEhpTGluayB1aWxTcGVjaWFsU3RhdGVtZW50CUtleXdvcmQKLSAgSGlMaW5rIHVpbEVycm9yCQlFcnJvcgotICBIaUxpbmsgdWlsUHJlQ29uZGl0CQlQcmVDb25kaXQKLSAgSGlMaW5rIHVpbFR5cGUJCVR5cGUKLSAgSGlMaW5rIHVpbFN0cmluZwkJU3RyaW5nCi0gIEhpTGluayB1aWxDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayB1aWxTcGVjaWFsCQlTcGVjaWFsCi0gIEhpTGluayB1aWxUb2RvCQlUb2RvCisiIFRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KK0hpTGluayB1aWxDaGFyYWN0ZXIJCXVpbFN0cmluZworSGlMaW5rIHVpbFNwZWNpYWxDaGFyYWN0ZXIJdWlsU3BlY2lhbAorSGlMaW5rIHVpbE51bWJlcgkJdWlsU3RyaW5nCitIaUxpbmsgdWlsQ29tbWVudEVycm9yCXVpbEVycm9yCitIaUxpbmsgdWlsSW5jbHVkZQkJdWlsUHJlQ29uZGl0CitIaUxpbmsgdWlsRGVmaW5lCQl1aWxQcmVDb25kaXQKK0hpTGluayB1aWxJbmNsdWRlZAkJdWlsU3RyaW5nCitIaUxpbmsgdWlsU3BlY2lhbEZ1bmN0aW9uCXVpbFJlc3NvdXJjZQorSGlMaW5rIHVpbFJlc3NvdXJjZQkJSWRlbnRpZmllcgorSGlMaW5rIHVpbFNwZWNpYWxTdGF0ZW1lbnQJS2V5d29yZAorSGlMaW5rIHVpbEVycm9yCQlFcnJvcgorSGlMaW5rIHVpbFByZUNvbmRpdAkJUHJlQ29uZGl0CitIaUxpbmsgdWlsVHlwZQkJVHlwZQorSGlMaW5rIHVpbFN0cmluZwkJU3RyaW5nCitIaUxpbmsgdWlsQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHVpbFNwZWNpYWwJCVNwZWNpYWwKK0hpTGluayB1aWxUb2RvCQlUb2RvCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInVpbCIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Vwc3RhcnQudmltIGIvcnVudGltZS9zeW50YXgvdXBzdGFydC52aW0KaW5kZXggYjNmMmI5ZS4uMTQwY2QxNyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvdXBzdGFydC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdXBzdGFydC52aW0KQEAgLTEwLDkgKzEwLDggQEAKICIgSXQgaXMgaW5zcGlyZWQgYnkgdGhlIGluaXRuZyBzeW50YXggZmlsZSBhbmQgaW5jbHVkZXMgc2gudmltIHRvIGRvIHRoZQogIiBoaWdobGlnaHRpbmcgb2Ygc2NyaXB0IGJsb2Nrcy4KIAotaWYgdmVyc2lvbiA8IDYwMAotCXN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKIAlmaW5pc2gKIGVuZGlmCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3ZiLnZpbSBiL3J1bnRpbWUvc3ludGF4L3ZiLnZpbQppbmRleCAwYzA1YjM1Li4yNGM5NGZkIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC92Yi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdmIudmltCkBAIC0xMSwxMSArMTEsOCBAQAogIiBWSU0gYW5kIFZJTS1ERVYgbWFpbGluZyBsaXN0cy4gIEl0IGlzIGJ5IG5vIG1lYW5zIGNvbXBsZXRlLgogIiBTZW5kIGNvbW1lbnRzLCBzdWdnZXN0aW9ucyBhbmQgcmVxdWVzdHMgdG8gdGhlIG1haW50YWluZXIuCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0Jc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogCWZpbmlzaAogZW5kaWYKIApAQCAtMzM4LDQwICszMzUsMzIgQEAKIHN5biBtYXRjaCAgIHZiVHlwZVNwZWNpZmllciAgIiNbYS16QS1aMC05XSJtZT1lLTEKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfdmJfc3ludGF4X2luaXRzIikKLQlpZiB2ZXJzaW9uIDwgNTA4Ci0JCWxldCBkaWRfdmJfc3ludGF4X2luaXRzID0gMQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotCWVsc2UKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0JZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0JSGlMaW5rIHZiQm9vbGVhbgkJQm9vbGVhbgotCUhpTGluayB2YkxpbmVOdW1iZXIJCUNvbW1lbnQKLQlIaUxpbmsgdmJDb21tZW50CQlDb21tZW50Ci0JSGlMaW5rIHZiQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLQlIaUxpbmsgdmJDb25zdAkJCUNvbnN0YW50Ci0JSGlMaW5rIHZiRGVmaW5lCQkJQ29uc3RhbnQKLQlIaUxpbmsgdmJFcnJvcgkJCUVycm9yCi0JSGlMaW5rIHZiRnVuY3Rpb24JCUlkZW50aWZpZXIKLQlIaUxpbmsgdmJJZGVudGlmaWVyCQlJZGVudGlmaWVyCi0JSGlMaW5rIHZiTnVtYmVyCQkJTnVtYmVyCi0JSGlMaW5rIHZiRmxvYXQJCQlGbG9hdAotCUhpTGluayB2Yk1ldGhvZHMJCVByZVByb2MKLQlIaUxpbmsgdmJPcGVyYXRvcgkJT3BlcmF0b3IKLQlIaUxpbmsgdmJSZXBlYXQJCQlSZXBlYXQKLQlIaUxpbmsgdmJTdHJpbmcJCQlTdHJpbmcKLQlIaUxpbmsgdmJTdGF0ZW1lbnQJCVN0YXRlbWVudAotCUhpTGluayB2YktleXdvcmQJCVN0YXRlbWVudAotCUhpTGluayB2YkV2ZW50cwkJCVNwZWNpYWwKLQlIaUxpbmsgdmJUb2RvCQkJVG9kbwotCUhpTGluayB2YlR5cGVzCQkJVHlwZQotCUhpTGluayB2YlR5cGVTcGVjaWZpZXIJVHlwZQorSGlMaW5rIHZiQm9vbGVhbgkJQm9vbGVhbgorSGlMaW5rIHZiTGluZU51bWJlcgkJQ29tbWVudAorSGlMaW5rIHZiQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHZiQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKK0hpTGluayB2YkNvbnN0CQkJQ29uc3RhbnQKK0hpTGluayB2YkRlZmluZQkJCUNvbnN0YW50CitIaUxpbmsgdmJFcnJvcgkJCUVycm9yCitIaUxpbmsgdmJGdW5jdGlvbgkJSWRlbnRpZmllcgorSGlMaW5rIHZiSWRlbnRpZmllcgkJSWRlbnRpZmllcgorSGlMaW5rIHZiTnVtYmVyCQkJTnVtYmVyCitIaUxpbmsgdmJGbG9hdAkJCUZsb2F0CitIaUxpbmsgdmJNZXRob2RzCQlQcmVQcm9jCitIaUxpbmsgdmJPcGVyYXRvcgkJT3BlcmF0b3IKK0hpTGluayB2YlJlcGVhdAkJCVJlcGVhdAorSGlMaW5rIHZiU3RyaW5nCQkJU3RyaW5nCitIaUxpbmsgdmJTdGF0ZW1lbnQJCVN0YXRlbWVudAorSGlMaW5rIHZiS2V5d29yZAkJU3RhdGVtZW50CitIaUxpbmsgdmJFdmVudHMJCQlTcGVjaWFsCitIaUxpbmsgdmJUb2RvCQkJVG9kbworSGlMaW5rIHZiVHlwZXMJCQlUeXBlCitIaUxpbmsgdmJUeXBlU3BlY2lmaWVyCVR5cGUKIAotCWRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAidmIiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3ZlcmEudmltIGIvcnVudGltZS9zeW50YXgvdmVyYS52aW0KaW5kZXggYjhlMjVjZi4uNzk1MmM5NCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvdmVyYS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdmVyYS52aW0KQEAgLTEwLDExICsxMCw4IEBACiAKICIgKGNoYW5nZSB0aGUgdmFsdWUgZm9yIGd1aWJnIHRvIGFueSBjb2xvciB5b3UgbGlrZSkKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTI4Nyw3NCArMjg0LDY2IEBACiBleGVjICJzeW4gc3luYyBjY29tbWVudCB2ZXJhQ29tbWVudCBtaW5saW5lcz0iIC4gYjp2ZXJhX21pbmxpbmVzCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3ZlcmFfc3luX2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfdmVyYV9zeW5faW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHZlcmFDbGFzcwkJSWRlbnRpZmllcgotICBIaUxpbmsgdmVyYU9iamVjdAkJSWRlbnRpZmllcgotICBIaUxpbmsgdmVyYVVzZXJNZXRob2QJCUZ1bmN0aW9uCi0gIEhpTGluayB2ZXJhVGFzawkJS2V5d29yZAotICBIaUxpbmsgdmVyYU1vZGlmaWVyCQlUYWcKLSAgSGlMaW5rIHZlcmFEZXByZWNhdGVkCQl2ZXJhRXJyb3IKLSAgSGlMaW5rIHZlcmFNZXRob2RzCQlTdGF0ZW1lbnQKLSAgIiBIaUxpbmsgdmVyYUludGVyZmFjZQkJTGFiZWwKLSAgSGlMaW5rIHZlcmFJbnRlcmZhY2UJCUZ1bmN0aW9uCitIaUxpbmsgdmVyYUNsYXNzCQlJZGVudGlmaWVyCitIaUxpbmsgdmVyYU9iamVjdAkJSWRlbnRpZmllcgorSGlMaW5rIHZlcmFVc2VyTWV0aG9kCQlGdW5jdGlvbgorSGlMaW5rIHZlcmFUYXNrCQlLZXl3b3JkCitIaUxpbmsgdmVyYU1vZGlmaWVyCQlUYWcKK0hpTGluayB2ZXJhRGVwcmVjYXRlZAkJdmVyYUVycm9yCitIaUxpbmsgdmVyYU1ldGhvZHMJCVN0YXRlbWVudAorIiBIaUxpbmsgdmVyYUludGVyZmFjZQkJTGFiZWwKK0hpTGluayB2ZXJhSW50ZXJmYWNlCQlGdW5jdGlvbgogCi0gIEhpTGluayB2ZXJhRm9ybWF0CQl2ZXJhU3BlY2lhbAotICBIaUxpbmsgdmVyYUNwcFN0cmluZwkJdmVyYVN0cmluZwotICBIaUxpbmsgdmVyYUNvbW1lbnRMCQl2ZXJhQ29tbWVudAotICBIaUxpbmsgdmVyYUNvbW1lbnRTdGFydAkJdmVyYUNvbW1lbnQKLSAgSGlMaW5rIHZlcmFMYWJlbAkJCUxhYmVsCi0gIEhpTGluayB2ZXJhVXNlckxhYmVsCQlMYWJlbAotICBIaUxpbmsgdmVyYUNvbmRpdGlvbmFsCQlDb25kaXRpb25hbAotICBIaUxpbmsgdmVyYVJlcGVhdAkJUmVwZWF0Ci0gIEhpTGluayB2ZXJhQ2hhcmFjdGVyCQlDaGFyYWN0ZXIKLSAgSGlMaW5rIHZlcmFTcGVjaWFsQ2hhcmFjdGVyCXZlcmFTcGVjaWFsCi0gIEhpTGluayB2ZXJhTnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIHZlcmFPY3RhbAkJCU51bWJlcgotICBIaUxpbmsgdmVyYU9jdGFsWmVybwkJUHJlUHJvYwkgIiBsaW5rIHRoaXMgdG8gRXJyb3IgaWYgeW91IHdhbnQKLSAgSGlMaW5rIHZlcmFGbG9hdAkJCUZsb2F0Ci0gIEhpTGluayB2ZXJhT2N0YWxFcnJvcgkJdmVyYUVycm9yCi0gIEhpTGluayB2ZXJhUGFyZW5FcnJvcgkJdmVyYUVycm9yCi0gIEhpTGluayB2ZXJhRXJySW5QYXJlbgkJdmVyYUVycm9yCi0gIEhpTGluayB2ZXJhRXJySW5CcmFja2V0CQl2ZXJhRXJyb3IKLSAgSGlMaW5rIHZlcmFDb21tZW50RXJyb3IJCXZlcmFFcnJvcgotICBIaUxpbmsgdmVyYUNvbW1lbnRTdGFydEVycm9yCXZlcmFFcnJvcgotICBIaUxpbmsgdmVyYVNwYWNlRXJyb3IgICAgICAgICBTcGFjZUVycm9yCi0gIEhpTGluayB2ZXJhU3BlY2lhbEVycm9yCQl2ZXJhRXJyb3IKLSAgSGlMaW5rIHZlcmFPcGVyYXRvcgkJT3BlcmF0b3IKLSAgSGlMaW5rIHZlcmFTdHJ1Y3R1cmUJCVN0cnVjdHVyZQotICBIaUxpbmsgdmVyYUluY2x1ZGUJCUluY2x1ZGUKLSAgSGlMaW5rIHZlcmFQcmVQcm9jCQlQcmVQcm9jCi0gIEhpTGluayB2ZXJhRGVmaW5lCQlNYWNybwotICBIaUxpbmsgdmVyYUluY2x1ZGVkCQl2ZXJhU3RyaW5nCi0gIEhpTGluayB2ZXJhRXJyb3IJCQlFcnJvcgotICBIaUxpbmsgdmVyYVN0YXRlbWVudAkJU3RhdGVtZW50Ci0gIEhpTGluayB2ZXJhUHJlQ29uZGl0CQlQcmVDb25kaXQKLSAgSGlMaW5rIHZlcmFUeXBlCQkJVHlwZQotICAiIEhpTGluayB2ZXJhQ29uc3RhbnQJCUNvbnN0YW50Ci0gIEhpTGluayB2ZXJhQ29uc3RhbnQJCUtleXdvcmQKLSAgSGlMaW5rIHZlcmFVc2VyQ29uc3RhbnQJCUNvbnN0YW50Ci0gIEhpTGluayB2ZXJhQ29tbWVudFN0cmluZwkJdmVyYVN0cmluZwotICBIaUxpbmsgdmVyYUNvbW1lbnQyU3RyaW5nCXZlcmFTdHJpbmcKLSAgSGlMaW5rIHZlcmFDb21tZW50U2tpcAkJdmVyYUNvbW1lbnQKLSAgSGlMaW5rIHZlcmFTdHJpbmcJCVN0cmluZwotICBIaUxpbmsgdmVyYUNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIHZlcmFTcGVjaWFsCQlTcGVjaWFsQ2hhcgotICBIaUxpbmsgdmVyYVRvZG8JCQlUb2RvCi0gIEhpTGluayB2ZXJhQ3BwU2tpcAkJdmVyYUNwcE91dAotICBIaUxpbmsgdmVyYUNwcE91dDIJCXZlcmFDcHBPdXQKLSAgSGlMaW5rIHZlcmFDcHBPdXQJCUNvbW1lbnQKK0hpTGluayB2ZXJhRm9ybWF0CQl2ZXJhU3BlY2lhbAorSGlMaW5rIHZlcmFDcHBTdHJpbmcJCXZlcmFTdHJpbmcKK0hpTGluayB2ZXJhQ29tbWVudEwJCXZlcmFDb21tZW50CitIaUxpbmsgdmVyYUNvbW1lbnRTdGFydAkJdmVyYUNvbW1lbnQKK0hpTGluayB2ZXJhTGFiZWwJCQlMYWJlbAorSGlMaW5rIHZlcmFVc2VyTGFiZWwJCUxhYmVsCitIaUxpbmsgdmVyYUNvbmRpdGlvbmFsCQlDb25kaXRpb25hbAorSGlMaW5rIHZlcmFSZXBlYXQJCVJlcGVhdAorSGlMaW5rIHZlcmFDaGFyYWN0ZXIJCUNoYXJhY3RlcgorSGlMaW5rIHZlcmFTcGVjaWFsQ2hhcmFjdGVyCXZlcmFTcGVjaWFsCitIaUxpbmsgdmVyYU51bWJlcgkJTnVtYmVyCitIaUxpbmsgdmVyYU9jdGFsCQkJTnVtYmVyCitIaUxpbmsgdmVyYU9jdGFsWmVybwkJUHJlUHJvYwkgIiBsaW5rIHRoaXMgdG8gRXJyb3IgaWYgeW91IHdhbnQKK0hpTGluayB2ZXJhRmxvYXQJCQlGbG9hdAorSGlMaW5rIHZlcmFPY3RhbEVycm9yCQl2ZXJhRXJyb3IKK0hpTGluayB2ZXJhUGFyZW5FcnJvcgkJdmVyYUVycm9yCitIaUxpbmsgdmVyYUVyckluUGFyZW4JCXZlcmFFcnJvcgorSGlMaW5rIHZlcmFFcnJJbkJyYWNrZXQJCXZlcmFFcnJvcgorSGlMaW5rIHZlcmFDb21tZW50RXJyb3IJCXZlcmFFcnJvcgorSGlMaW5rIHZlcmFDb21tZW50U3RhcnRFcnJvcgl2ZXJhRXJyb3IKK0hpTGluayB2ZXJhU3BhY2VFcnJvciAgICAgICAgIFNwYWNlRXJyb3IKK0hpTGluayB2ZXJhU3BlY2lhbEVycm9yCQl2ZXJhRXJyb3IKK0hpTGluayB2ZXJhT3BlcmF0b3IJCU9wZXJhdG9yCitIaUxpbmsgdmVyYVN0cnVjdHVyZQkJU3RydWN0dXJlCitIaUxpbmsgdmVyYUluY2x1ZGUJCUluY2x1ZGUKK0hpTGluayB2ZXJhUHJlUHJvYwkJUHJlUHJvYworSGlMaW5rIHZlcmFEZWZpbmUJCU1hY3JvCitIaUxpbmsgdmVyYUluY2x1ZGVkCQl2ZXJhU3RyaW5nCitIaUxpbmsgdmVyYUVycm9yCQkJRXJyb3IKK0hpTGluayB2ZXJhU3RhdGVtZW50CQlTdGF0ZW1lbnQKK0hpTGluayB2ZXJhUHJlQ29uZGl0CQlQcmVDb25kaXQKK0hpTGluayB2ZXJhVHlwZQkJCVR5cGUKKyIgSGlMaW5rIHZlcmFDb25zdGFudAkJQ29uc3RhbnQKK0hpTGluayB2ZXJhQ29uc3RhbnQJCUtleXdvcmQKK0hpTGluayB2ZXJhVXNlckNvbnN0YW50CQlDb25zdGFudAorSGlMaW5rIHZlcmFDb21tZW50U3RyaW5nCQl2ZXJhU3RyaW5nCitIaUxpbmsgdmVyYUNvbW1lbnQyU3RyaW5nCXZlcmFTdHJpbmcKK0hpTGluayB2ZXJhQ29tbWVudFNraXAJCXZlcmFDb21tZW50CitIaUxpbmsgdmVyYVN0cmluZwkJU3RyaW5nCitIaUxpbmsgdmVyYUNvbW1lbnQJCUNvbW1lbnQKK0hpTGluayB2ZXJhU3BlY2lhbAkJU3BlY2lhbENoYXIKK0hpTGluayB2ZXJhVG9kbwkJCVRvZG8KK0hpTGluayB2ZXJhQ3BwU2tpcAkJdmVyYUNwcE91dAorSGlMaW5rIHZlcmFDcHBPdXQyCQl2ZXJhQ3BwT3V0CitIaUxpbmsgdmVyYUNwcE91dAkJQ29tbWVudAogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAidmVyYSIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdmVyaWxvZy52aW0gYi9ydW50aW1lL3N5bnRheC92ZXJpbG9nLnZpbQppbmRleCBmNGQyMWQwLi40Yjc1NzBhIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC92ZXJpbG9nLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC92ZXJpbG9nLnZpbQpAQCAtMywyMiArMywxNSBAQAogIiBNYWludGFpbmVyOglNdW4gSm9obCA8TXVuLkpvaGxAZW11bGV4LmNvbT4KICIgTGFzdCBVcGRhdGU6ICBXZWQgSnVsIDIwIDE2OjA0OjE5IFBEVCAyMDExCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICBmaW5pc2gKIGVuZGlmCiAKICIgU2V0IHRoZSBsb2NhbCB2YWx1ZSBvZiB0aGUgJ2lza2V5d29yZCcgb3B0aW9uLgogIiBOT1RFOiAnPycgd2FzIGFkZGVkIHNvIHRoYXQgdmVyaWxvZ051bWJlciB3b3VsZCBiZSBwcm9jZXNzZWQgY29ycmVjdGx5IHdoZW4KICIgICAgICAgJz8nIGlzIHRoZSBsYXN0IGNoYXJhY3RlciBvZiB0aGUgbnVtYmVyLgotaWYgdmVyc2lvbiA+PSA2MDAKLSAgIHNldGxvY2FsIGlza2V5d29yZD1ALDQ4LTU3LDYzLF8sMTkyLTI1NQotZWxzZQotICAgc2V0IGlza2V5d29yZD1ALDQ4LTU3LDYzLF8sMTkyLTI1NQotZW5kaWYKK3NldGxvY2FsIGlza2V5d29yZD1ALDQ4LTU3LDYzLF8sMTkyLTI1NQogCiAiIEEgYnVuY2ggb2YgdXNlZnVsIFZlcmlsb2cga2V5d29yZHMKIApAQCAtMTAyLDM0ICs5NSwyNiBAQAogc3luIHN5bmMgbWlubGluZXM9NTAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfdmVyaWxvZ19zeW5faW5pdHMiKQotICAgaWYgdmVyc2lvbiA8IDUwOAotICAgICAgbGV0IGRpZF92ZXJpbG9nX3N5bl9pbml0cyA9IDEKLSAgICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gICBlbHNlCi0gICAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAgIiBUaGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0gICBIaUxpbmsgdmVyaWxvZ0NoYXJhY3RlciAgICAgICBDaGFyYWN0ZXIKLSAgIEhpTGluayB2ZXJpbG9nQ29uZGl0aW9uYWwgICAgIENvbmRpdGlvbmFsCi0gICBIaUxpbmsgdmVyaWxvZ1JlcGVhdCAgICAgICAgICBSZXBlYXQKLSAgIEhpTGluayB2ZXJpbG9nU3RyaW5nICAgICAgICAgIFN0cmluZwotICAgSGlMaW5rIHZlcmlsb2dUb2RvICAgICAgICAgICAgVG9kbwotICAgSGlMaW5rIHZlcmlsb2dDb21tZW50ICAgICAgICAgQ29tbWVudAotICAgSGlMaW5rIHZlcmlsb2dDb25zdGFudCAgICAgICAgQ29uc3RhbnQKLSAgIEhpTGluayB2ZXJpbG9nTGFiZWwgICAgICAgICAgIExhYmVsCi0gICBIaUxpbmsgdmVyaWxvZ051bWJlciAgICAgICAgICBOdW1iZXIKLSAgIEhpTGluayB2ZXJpbG9nT3BlcmF0b3IgICAgICAgIFNwZWNpYWwKLSAgIEhpTGluayB2ZXJpbG9nU3RhdGVtZW50ICAgICAgIFN0YXRlbWVudAotICAgSGlMaW5rIHZlcmlsb2dHbG9iYWwgICAgICAgICAgRGVmaW5lCi0gICBIaUxpbmsgdmVyaWxvZ0RpcmVjdGl2ZSAgICAgICBTcGVjaWFsQ29tbWVudAotICAgSGlMaW5rIHZlcmlsb2dFc2NhcGUJCSBTcGVjaWFsCisiIFRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KK0hpTGluayB2ZXJpbG9nQ2hhcmFjdGVyICAgICAgIENoYXJhY3RlcgorSGlMaW5rIHZlcmlsb2dDb25kaXRpb25hbCAgICAgQ29uZGl0aW9uYWwKK0hpTGluayB2ZXJpbG9nUmVwZWF0ICAgICAgICAgIFJlcGVhdAorSGlMaW5rIHZlcmlsb2dTdHJpbmcgICAgICAgICAgU3RyaW5nCitIaUxpbmsgdmVyaWxvZ1RvZG8gICAgICAgICAgICBUb2RvCitIaUxpbmsgdmVyaWxvZ0NvbW1lbnQgICAgICAgICBDb21tZW50CitIaUxpbmsgdmVyaWxvZ0NvbnN0YW50ICAgICAgICBDb25zdGFudAorSGlMaW5rIHZlcmlsb2dMYWJlbCAgICAgICAgICAgTGFiZWwKK0hpTGluayB2ZXJpbG9nTnVtYmVyICAgICAgICAgIE51bWJlcgorSGlMaW5rIHZlcmlsb2dPcGVyYXRvciAgICAgICAgU3BlY2lhbAorSGlMaW5rIHZlcmlsb2dTdGF0ZW1lbnQgICAgICAgU3RhdGVtZW50CitIaUxpbmsgdmVyaWxvZ0dsb2JhbCAgICAgICAgICBEZWZpbmUKK0hpTGluayB2ZXJpbG9nRGlyZWN0aXZlICAgICAgIFNwZWNpYWxDb21tZW50CitIaUxpbmsgdmVyaWxvZ0VzY2FwZQkJIFNwZWNpYWwKIAotICAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ2ZXJpbG9nIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC92ZXJpbG9nYW1zLnZpbSBiL3J1bnRpbWUvc3ludGF4L3Zlcmlsb2dhbXMudmltCmluZGV4IGQxNmU0YmYuLjNlMjM2MDkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Zlcmlsb2dhbXMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3Zlcmlsb2dhbXMudmltCkBAIC05LDIwICs5LDEzIEBACiAiICAgICAgICAgICAgICBNaW5vciByZXNlcnZlZCBrZXl3b3JkIHVwZGF0ZXMuCiAiIExhc3QgVXBkYXRlOiBUaHVyc2RheSBTZXB0ZW1iZXIgMTUgMTU6MzY6MDMgQ1NUIDIwMDUgCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgICBmaW5pc2gKIGVuZGlmCiAKICIgU2V0IHRoZSBsb2NhbCB2YWx1ZSBvZiB0aGUgJ2lza2V5d29yZCcgb3B0aW9uCi1pZiB2ZXJzaW9uID49IDYwMAotICAgc2V0bG9jYWwgaXNrZXl3b3JkPUAsNDgtNTcsXywxOTItMjU1Ci1lbHNlCi0gICBzZXQgaXNrZXl3b3JkPUAsNDgtNTcsXywxOTItMjU1Ci1lbmRpZgorc2V0bG9jYWwgaXNrZXl3b3JkPUAsNDgtNTcsXywxOTItMjU1CiAKICIgQW5uZXggQi4xICdBbGwga2V5d29yZHMnCiBzeW4ga2V5d29yZCB2ZXJpbG9nYW1zU3RhdGVtZW50IGFib3ZlIGFicyBhYnNkZWxheSBhY29zIGFjb3NoIGFjX3N0aW0KQEAgLTExMywzNiArMTA2LDI4IEBACiBzeW4gc3luYyBsaW5lcz01MAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF92ZXJpbG9nYW1zX3N5bl9pbml0cyIpCi0gICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgICBsZXQgZGlkX3Zlcmlsb2dhbXNfc3luX2luaXRzID0gMQotICAgICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgIGVsc2UKLSAgICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICAiIFRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSAgIEhpTGluayB2ZXJpbG9nYW1zQ2hhcmFjdGVyICAgIENoYXJhY3RlcgotICAgSGlMaW5rIHZlcmlsb2dhbXNDb25kaXRpb25hbCAgQ29uZGl0aW9uYWwKLSAgIEhpTGluayB2ZXJpbG9nYW1zUmVwZWF0ICAgICAgIFJlcGVhdAotICAgSGlMaW5rIHZlcmlsb2dhbXNTdHJpbmcgICAgICAgU3RyaW5nCi0gICBIaUxpbmsgdmVyaWxvZ2Ftc1RvZG8gICAgICAgICBUb2RvCi0gICBIaUxpbmsgdmVyaWxvZ2Ftc0NvbW1lbnQgICAgICBDb21tZW50Ci0gICBIaUxpbmsgdmVyaWxvZ2Ftc0NvbnN0YW50ICAgICBDb25zdGFudAotICAgSGlMaW5rIHZlcmlsb2dhbXNMYWJlbCAgICAgICAgTGFiZWwKLSAgIEhpTGluayB2ZXJpbG9nYW1zTnVtYmVyICAgICAgIE51bWJlcgotICAgSGlMaW5rIHZlcmlsb2dhbXNPcGVyYXRvciAgICAgU3BlY2lhbAotICAgSGlMaW5rIHZlcmlsb2dhbXNTdGF0ZW1lbnQgICAgU3RhdGVtZW50Ci0gICBIaUxpbmsgdmVyaWxvZ2Ftc0dsb2JhbCAgICAgICBEZWZpbmUKLSAgIEhpTGluayB2ZXJpbG9nYW1zRGlyZWN0aXZlICAgIFNwZWNpYWxDb21tZW50Ci0gICBIaUxpbmsgdmVyaWxvZ2Ftc0VzY2FwZSAgICAgICBTcGVjaWFsCi0gICBIaUxpbmsgdmVyaWxvZ2Ftc1R5cGUgICAgICAgICBUeXBlCi0gICBIaUxpbmsgdmVyaWxvZ2Ftc1N5c3Rhc2sgICAgICBGdW5jdGlvbgorIiBUaGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCitIaUxpbmsgdmVyaWxvZ2Ftc0NoYXJhY3RlciAgICBDaGFyYWN0ZXIKK0hpTGluayB2ZXJpbG9nYW1zQ29uZGl0aW9uYWwgIENvbmRpdGlvbmFsCitIaUxpbmsgdmVyaWxvZ2Ftc1JlcGVhdCAgICAgICBSZXBlYXQKK0hpTGluayB2ZXJpbG9nYW1zU3RyaW5nICAgICAgIFN0cmluZworSGlMaW5rIHZlcmlsb2dhbXNUb2RvICAgICAgICAgVG9kbworSGlMaW5rIHZlcmlsb2dhbXNDb21tZW50ICAgICAgQ29tbWVudAorSGlMaW5rIHZlcmlsb2dhbXNDb25zdGFudCAgICAgQ29uc3RhbnQKK0hpTGluayB2ZXJpbG9nYW1zTGFiZWwgICAgICAgIExhYmVsCitIaUxpbmsgdmVyaWxvZ2Ftc051bWJlciAgICAgICBOdW1iZXIKK0hpTGluayB2ZXJpbG9nYW1zT3BlcmF0b3IgICAgIFNwZWNpYWwKK0hpTGluayB2ZXJpbG9nYW1zU3RhdGVtZW50ICAgIFN0YXRlbWVudAorSGlMaW5rIHZlcmlsb2dhbXNHbG9iYWwgICAgICAgRGVmaW5lCitIaUxpbmsgdmVyaWxvZ2Ftc0RpcmVjdGl2ZSAgICBTcGVjaWFsQ29tbWVudAorSGlMaW5rIHZlcmlsb2dhbXNFc2NhcGUgICAgICAgU3BlY2lhbAorSGlMaW5rIHZlcmlsb2dhbXNUeXBlICAgICAgICAgVHlwZQorSGlMaW5rIHZlcmlsb2dhbXNTeXN0YXNrICAgICAgRnVuY3Rpb24KIAotICAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ2ZXJpbG9nYW1zIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC92aGRsLnZpbSBiL3J1bnRpbWUvc3ludGF4L3ZoZGwudmltCmluZGV4IDMyNTAzODIuLjRhNTQyMTYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3ZoZGwudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3ZoZGwudmltCkBAIC01LDkgKzUsOCBAQAogIiBDcmVkaXRzOgkJU3RlcGhhbiBIZWdlbCA8c3RlcGhhbi5oZWdlbEBzbmMuc2llbWVucy5jb20uY24+CiAiIExhc3QgQ2hhbmdlZDoJCTIwMTYgTWFyIDA1IGJ5IERhbmllbCBLaG8KIAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMjM0LDM1ICsyMzMsMjcgQEAKIHN5biBzeW5jCW1pbmxpbmVzPTYwMAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF92aGRsX3N5bnRheF9pbml0cyIpCi0gICAgaWYgdmVyc2lvbiA8IDUwOAotCWxldCBkaWRfdmhkbF9zeW50YXhfaW5pdHMgPSAxCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgICBlbHNlCi0JY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gICAgZW5kaWYKLSAgICAKLSAgICBIaUxpbmsJdmhkbFNwZWNpYWwJU3BlY2lhbAotICAgIEhpTGluawl2aGRsU3RhdGVtZW50ICAgU3RhdGVtZW50Ci0gICAgSGlMaW5rCXZoZGxDaGFyYWN0ZXIgICBDaGFyYWN0ZXIKLSAgICBIaUxpbmsJdmhkbFN0cmluZwlTdHJpbmcKLSAgICBIaUxpbmsJdmhkbFZlY3RvcglOdW1iZXIKLSAgICBIaUxpbmsJdmhkbEJvb2xlYW4JTnVtYmVyCi0gICAgSGlMaW5rCXZoZGxUb2RvCVRvZG8KLSAgICBIaUxpbmsJdmhkbEZpeG1lCUZpeG1lCi0gICAgSGlMaW5rCXZoZGxDb21tZW50CUNvbW1lbnQKLSAgICBIaUxpbmsJdmhkbE51bWJlcglOdW1iZXIKLSAgICBIaUxpbmsJdmhkbFRpbWUJTnVtYmVyCi0gICAgSGlMaW5rCXZoZGxUeXBlCVR5cGUKLSAgICBIaUxpbmsJdmhkbE9wZXJhdG9yICAgIE9wZXJhdG9yCi0gICAgSGlMaW5rCXZoZGxFcnJvcglFcnJvcgotICAgIEhpTGluawl2aGRsQXR0cmlidXRlICAgU3BlY2lhbAotICAgIEhpTGluawl2aGRsUHJlUHJvYwlQcmVQcm9jCi0gICAgCi0gICAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KKworSGlMaW5rCXZoZGxTcGVjaWFsCVNwZWNpYWwKK0hpTGluawl2aGRsU3RhdGVtZW50ICAgU3RhdGVtZW50CitIaUxpbmsJdmhkbENoYXJhY3RlciAgIENoYXJhY3RlcgorSGlMaW5rCXZoZGxTdHJpbmcJU3RyaW5nCitIaUxpbmsJdmhkbFZlY3RvcglOdW1iZXIKK0hpTGluawl2aGRsQm9vbGVhbglOdW1iZXIKK0hpTGluawl2aGRsVG9kbwlUb2RvCitIaUxpbmsJdmhkbEZpeG1lCUZpeG1lCitIaUxpbmsJdmhkbENvbW1lbnQJQ29tbWVudAorSGlMaW5rCXZoZGxOdW1iZXIJTnVtYmVyCitIaUxpbmsJdmhkbFRpbWUJTnVtYmVyCitIaUxpbmsJdmhkbFR5cGUJVHlwZQorSGlMaW5rCXZoZGxPcGVyYXRvciAgICBPcGVyYXRvcgorSGlMaW5rCXZoZGxFcnJvcglFcnJvcgorSGlMaW5rCXZoZGxBdHRyaWJ1dGUgICBTcGVjaWFsCitIaUxpbmsJdmhkbFByZVByb2MJUHJlUHJvYworCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ2aGRsIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC92aXJhdGEudmltIGIvcnVudGltZS9zeW50YXgvdmlyYXRhLnZpbQppbmRleCBlNTk3YjhlLi4zMDIzZjEzIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC92aXJhdGEudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3ZpcmF0YS52aW0KQEAgLTEzLDEwICsxMyw4IEBACiAKIAogIiBTZXR1cCBTeW50YXg6Ci1pZiB2ZXJzaW9uIDwgNjAwCi0gICIgIENsZWFyIG9sZCBzeW50YXggc2V0dGluZ3MKLSAgc3luIGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAiICBWaXJhdGEgc3ludGF4IGlzIGNhc2UgaW5zZW5zaXRpdmUgKG1vc3RseSkKQEAgLTE1Niw2MyArMTU0LDU1IEBACiAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXIgIDogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF92aXJhdGFfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfdmlyYXRhX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICAiIFN1YiBMaW5rczoKLSAgSGlMaW5rIHZpcmF0YURlZlN1YnN0RXJyb3IJdmlyYXRhUHJlUHJvY0Vycm9yCi0gIEhpTGluayB2aXJhdGFEZWZTdWJzdAkJdmlyYXRhUHJlUHJvYwotICBIaUxpbmsgdmlyYXRhSW5BbHRlcgkJdmlyYXRhT3BlcmF0b3IKLSAgSGlMaW5rIHZpcmF0YUluRXhlYwkJdmlyYXRhT3BlcmF0b3IKLSAgSGlMaW5rIHZpcmF0YUluRXhwb3J0CQl2aXJhdGFPcGVyYXRvcgotICBIaUxpbmsgdmlyYXRhSW5JbXBvcnQJCXZpcmF0YU9wZXJhdG9yCi0gIEhpTGluayB2aXJhdGFJbkluc3RhbmNlCXZpcmF0YU9wZXJhdG9yCi0gIEhpTGluayB2aXJhdGFJbk1ha2UJCXZpcmF0YU9wZXJhdG9yCi0gIEhpTGluayB2aXJhdGFJbk1vZHVsZQkJdmlyYXRhT3BlcmF0b3IKLSAgSGlMaW5rIHZpcmF0YUluUHJvY2Vzcwl2aXJhdGFPcGVyYXRvcgotICBIaUxpbmsgdmlyYXRhSW5NYWNBZGRyCXZpcmF0YUhleE51bWJlcgorIiBTdWIgTGlua3M6CitIaUxpbmsgdmlyYXRhRGVmU3Vic3RFcnJvcgl2aXJhdGFQcmVQcm9jRXJyb3IKK0hpTGluayB2aXJhdGFEZWZTdWJzdAkJdmlyYXRhUHJlUHJvYworSGlMaW5rIHZpcmF0YUluQWx0ZXIJCXZpcmF0YU9wZXJhdG9yCitIaUxpbmsgdmlyYXRhSW5FeGVjCQl2aXJhdGFPcGVyYXRvcgorSGlMaW5rIHZpcmF0YUluRXhwb3J0CQl2aXJhdGFPcGVyYXRvcgorSGlMaW5rIHZpcmF0YUluSW1wb3J0CQl2aXJhdGFPcGVyYXRvcgorSGlMaW5rIHZpcmF0YUluSW5zdGFuY2UJdmlyYXRhT3BlcmF0b3IKK0hpTGluayB2aXJhdGFJbk1ha2UJCXZpcmF0YU9wZXJhdG9yCitIaUxpbmsgdmlyYXRhSW5Nb2R1bGUJCXZpcmF0YU9wZXJhdG9yCitIaUxpbmsgdmlyYXRhSW5Qcm9jZXNzCXZpcmF0YU9wZXJhdG9yCitIaUxpbmsgdmlyYXRhSW5NYWNBZGRyCXZpcmF0YUhleE51bWJlcgogCi0gICIgQ29tbWVudCBHcm91cDoKLSAgSGlMaW5rIHZpcmF0YUNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIHZpcmF0YVNwY2xDb21tZW50CVNwZWNpYWxDb21tZW50Ci0gIEhpTGluayB2aXJhdGFJbkNvbW1lbnRUb2RvCVRvZG8KKyIgQ29tbWVudCBHcm91cDoKK0hpTGluayB2aXJhdGFDb21tZW50CQlDb21tZW50CitIaUxpbmsgdmlyYXRhU3BjbENvbW1lbnQJU3BlY2lhbENvbW1lbnQKK0hpTGluayB2aXJhdGFJbkNvbW1lbnRUb2RvCVRvZG8KIAotICAiIENvbnN0YW50IEdyb3VwOgotICBIaUxpbmsgdmlyYXRhU3RyaW5nCQlTdHJpbmcKLSAgSGlMaW5rIHZpcmF0YVN0cmluZ0Vycm9yCUVycm9yCi0gIEhpTGluayB2aXJhdGFDaGFyYWN0ZXIJQ2hhcmFjdGVyCi0gIEhpTGluayB2aXJhdGFTcGNsQ2hhcgkJU3BlY2lhbAotICBIaUxpbmsgdmlyYXRhRGVjTnVtYmVyCU51bWJlcgotICBIaUxpbmsgdmlyYXRhSGV4TnVtYmVyCU51bWJlcgotICBIaUxpbmsgdmlyYXRhU2l6ZU51bWJlcglOdW1iZXIKLSAgSGlMaW5rIHZpcmF0YU51bWJlckVycm9yCUVycm9yCisiIENvbnN0YW50IEdyb3VwOgorSGlMaW5rIHZpcmF0YVN0cmluZwkJU3RyaW5nCitIaUxpbmsgdmlyYXRhU3RyaW5nRXJyb3IJRXJyb3IKK0hpTGluayB2aXJhdGFDaGFyYWN0ZXIJQ2hhcmFjdGVyCitIaUxpbmsgdmlyYXRhU3BjbENoYXIJCVNwZWNpYWwKK0hpTGluayB2aXJhdGFEZWNOdW1iZXIJTnVtYmVyCitIaUxpbmsgdmlyYXRhSGV4TnVtYmVyCU51bWJlcgorSGlMaW5rIHZpcmF0YVNpemVOdW1iZXIJTnVtYmVyCitIaUxpbmsgdmlyYXRhTnVtYmVyRXJyb3IJRXJyb3IKIAotICAiIElkZW50aWZpZXIgR3JvdXA6Ci0gIEhpTGluayB2aXJhdGFJZGVudEVycm9yCUVycm9yCisiIElkZW50aWZpZXIgR3JvdXA6CitIaUxpbmsgdmlyYXRhSWRlbnRFcnJvcglFcnJvcgogCi0gICIgUHJlUHJvYyBHcm91cDoKLSAgSGlMaW5rIHZpcmF0YVByZVByb2MJCVByZVByb2MKLSAgSGlMaW5rIHZpcmF0YURlZmluZQkJRGVmaW5lCi0gIEhpTGluayB2aXJhdGFJbmNsdWRlCQlJbmNsdWRlCi0gIEhpTGluayB2aXJhdGFQcmVDb25kaXQJUHJlQ29uZGl0Ci0gIEhpTGluayB2aXJhdGFQcmVQcm9jRXJyb3IJRXJyb3IKLSAgSGlMaW5rIHZpcmF0YVByZVByb2NXYXJuCVRvZG8KKyIgUHJlUHJvYyBHcm91cDoKK0hpTGluayB2aXJhdGFQcmVQcm9jCQlQcmVQcm9jCitIaUxpbmsgdmlyYXRhRGVmaW5lCQlEZWZpbmUKK0hpTGluayB2aXJhdGFJbmNsdWRlCQlJbmNsdWRlCitIaUxpbmsgdmlyYXRhUHJlQ29uZGl0CVByZUNvbmRpdAorSGlMaW5rIHZpcmF0YVByZVByb2NFcnJvcglFcnJvcgorSGlMaW5rIHZpcmF0YVByZVByb2NXYXJuCVRvZG8KIAotICAiIERpcmVjdGl2ZSBHcm91cDoKLSAgSGlMaW5rIHZpcmF0YVN0YXRlbWVudAlTdGF0ZW1lbnQKLSAgSGlMaW5rIHZpcmF0YUNmZ1N0YXRlbWVudAlTdGF0ZW1lbnQKLSAgSGlMaW5rIHZpcmF0YU9wZXJhdG9yCQlPcGVyYXRvcgotICBIaUxpbmsgdmlyYXRhRGlyZWN0aXZlCUtleXdvcmQKKyIgRGlyZWN0aXZlIEdyb3VwOgorSGlMaW5rIHZpcmF0YVN0YXRlbWVudAlTdGF0ZW1lbnQKK0hpTGluayB2aXJhdGFDZmdTdGF0ZW1lbnQJU3RhdGVtZW50CitIaUxpbmsgdmlyYXRhT3BlcmF0b3IJCU9wZXJhdG9yCitIaUxpbmsgdmlyYXRhRGlyZWN0aXZlCUtleXdvcmQKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInZpcmF0YSIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdm1hc20udmltIGIvcnVudGltZS9zeW50YXgvdm1hc20udmltCmluZGV4IDg1ZDA0NDEuLmE0YjcxMjIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3ZtYXNtLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC92bWFzbS52aW0KQEAgLTYsMTEgKzYsOCBAQAogIiBUaGlzIGlzIGluY29tcGxldGUuIEZlZWwgZnJlZSB0byBjb250cmlidXRlLi4uCiAiCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xOTYsNTUgKzE5Myw0NyBAQAogc3luIGNhc2UgbWF0Y2gKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbWFjcm9fc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfbWFjcm9fc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gICIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiAgQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKLSAgIiBDb21tZW50IENvbnN0YW50IEVycm9yIElkZW50aWZpZXIgUHJlUHJvYyBTcGVjaWFsIFN0YXRlbWVudCBUb2RvIFR5cGUKLSAgIgotICAiIENvbnN0YW50CQlCb29sZWFuIENoYXJhY3RlciBOdW1iZXIgU3RyaW5nCi0gICIgSWRlbnRpZmllcgkJRnVuY3Rpb24KLSAgIiBQcmVQcm9jCQlEZWZpbmUgSW5jbHVkZSBNYWNybyBQcmVDb25kaXQKLSAgIiBTcGVjaWFsCQlEZWJ1ZyBEZWxpbWl0ZXIgU3BlY2lhbENoYXIgU3BlY2lhbENvbW1lbnQgVGFnCi0gICIgU3RhdGVtZW50CQlDb25kaXRpb25hbCBFeGNlcHRpb24gS2V5d29yZCBMYWJlbCBPcGVyYXRvciBSZXBlYXQKLSAgIiBUeXBlCQlTdG9yYWdlQ2xhc3MgU3RydWN0dXJlIFR5cGVkZWYKKyIgVGhlIGRlZmF1bHQgbWV0aG9kcyBmb3IgaGlnaGxpZ2h0aW5nLiAgQ2FuIGJlIG92ZXJyaWRkZW4gbGF0ZXIKKyIgQ29tbWVudCBDb25zdGFudCBFcnJvciBJZGVudGlmaWVyIFByZVByb2MgU3BlY2lhbCBTdGF0ZW1lbnQgVG9kbyBUeXBlCisiCisiIENvbnN0YW50CQlCb29sZWFuIENoYXJhY3RlciBOdW1iZXIgU3RyaW5nCisiIElkZW50aWZpZXIJCUZ1bmN0aW9uCisiIFByZVByb2MJCURlZmluZSBJbmNsdWRlIE1hY3JvIFByZUNvbmRpdAorIiBTcGVjaWFsCQlEZWJ1ZyBEZWxpbWl0ZXIgU3BlY2lhbENoYXIgU3BlY2lhbENvbW1lbnQgVGFnCisiIFN0YXRlbWVudAkJQ29uZGl0aW9uYWwgRXhjZXB0aW9uIEtleXdvcmQgTGFiZWwgT3BlcmF0b3IgUmVwZWF0CisiIFR5cGUJCVN0b3JhZ2VDbGFzcyBTdHJ1Y3R1cmUgVHlwZWRlZgogCi0gIEhpTGluayB2bWFzbUNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIHZtYXNtVG9kbwkJVG9kbworSGlMaW5rIHZtYXNtQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHZtYXNtVG9kbwkJVG9kbwogCi0gIEhpTGluayB2bWFzbWhleE51bWJlcgkJTnVtYmVyCQkiIENvbnN0YW50Ci0gIEhpTGluayB2bWFzbW9jdE51bWJlcgkJTnVtYmVyCQkiIENvbnN0YW50Ci0gIEhpTGluayB2bWFzbWJpbk51bWJlcgkJTnVtYmVyCQkiIENvbnN0YW50Ci0gIEhpTGluayB2bWFzbWRlY051bWJlcgkJTnVtYmVyCQkiIENvbnN0YW50Ci0gIEhpTGluayB2bWFzbWZsb2F0TnVtYmVyCU51bWJlcgkJIiBDb25zdGFudAorSGlMaW5rIHZtYXNtaGV4TnVtYmVyCQlOdW1iZXIJCSIgQ29uc3RhbnQKK0hpTGluayB2bWFzbW9jdE51bWJlcgkJTnVtYmVyCQkiIENvbnN0YW50CitIaUxpbmsgdm1hc21iaW5OdW1iZXIJCU51bWJlcgkJIiBDb25zdGFudAorSGlMaW5rIHZtYXNtZGVjTnVtYmVyCQlOdW1iZXIJCSIgQ29uc3RhbnQKK0hpTGluayB2bWFzbWZsb2F0TnVtYmVyCU51bWJlcgkJIiBDb25zdGFudAogCiAiICBIaUxpbmsgdm1hc21TdHJpbmcJCVN0cmluZwkJIiBDb25zdGFudAogCi0gIEhpTGluayB2bWFzbVJlZwkJSWRlbnRpZmllcgotICBIaUxpbmsgdm1hc21PcGVyYXRvcgkJSWRlbnRpZmllcgorSGlMaW5rIHZtYXNtUmVnCQlJZGVudGlmaWVyCitIaUxpbmsgdm1hc21PcGVyYXRvcgkJSWRlbnRpZmllcgogCi0gIEhpTGluayB2bWFzbUluY2x1ZGUJCUluY2x1ZGUJCSIgUHJlUHJvYwotICBIaUxpbmsgdm1hc21NYWNybwkJTWFjcm8JCSIgUHJlUHJvYwotICAiIEhpTGluayB2bWFzbU1hY3JvUGFyYW0JS2V5d29yZAkJIiBTdGF0ZW1lbnQKK0hpTGluayB2bWFzbUluY2x1ZGUJCUluY2x1ZGUJCSIgUHJlUHJvYworSGlMaW5rIHZtYXNtTWFjcm8JCU1hY3JvCQkiIFByZVByb2MKKyIgSGlMaW5rIHZtYXNtTWFjcm9QYXJhbQlLZXl3b3JkCQkiIFN0YXRlbWVudAogCi0gIEhpTGluayB2bWFzbURpcmVjdGl2ZQkJU3BlY2lhbAotICBIaUxpbmsgdm1hc21QcmVDb25kCQlTcGVjaWFsCitIaUxpbmsgdm1hc21EaXJlY3RpdmUJCVNwZWNpYWwKK0hpTGluayB2bWFzbVByZUNvbmQJCVNwZWNpYWwKIAogCi0gIEhpTGluayB2bWFzbU9wY29kZQkJU3RhdGVtZW50Ci0gIEhpTGluayB2bWFzbUNvbmQJCUNvbmRpdGlvbmFsCSIgU3RhdGVtZW50Ci0gIEhpTGluayB2bWFzbVJlcGVhdAkJUmVwZWF0CQkiIFN0YXRlbWVudAorSGlMaW5rIHZtYXNtT3Bjb2RlCQlTdGF0ZW1lbnQKK0hpTGluayB2bWFzbUNvbmQJCUNvbmRpdGlvbmFsCSIgU3RhdGVtZW50CitIaUxpbmsgdm1hc21SZXBlYXQJCVJlcGVhdAkJIiBTdGF0ZW1lbnQKIAotICBIaUxpbmsgdm1hc21MYWJlbAkJVHlwZQotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK0hpTGluayB2bWFzbUxhYmVsCQlUeXBlCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ2bWFzbSIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdnJtbC52aW0gYi9ydW50aW1lL3N5bnRheC92cm1sLnZpbQppbmRleCA0NDgxNGFhLi41MzBiZWNiIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC92cm1sLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC92cm1sLnZpbQpAQCAtNSwxMSArNSw4IEBACiAiIEZvcm1lciBNYWludGFpbmVyOiAgICBHcmVnb3J5IFNlaWRtYW4gPGdzc2xpc3QrdmltQGFudGhyb3BvaGVkcm9uLm5ldD4KICIgTGFzdCBjaGFuZ2U6CSAgIDIwMDYgTWF5IDAzCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xNjgsMTEgKzE2NSw5IEBACiAKIHN5biBrZXl3b3JkIFZSTUxSb3V0ZXMJICAgICAgIGNvbnRhaW5lZCBST1VURSBUTwogCi1pZiB2ZXJzaW9uID49IDUwMgogImNvbnRhaW5tZW50IQotICBzeW4gaW5jbHVkZSBAanNjcmlwdCAkVklNUlVOVElNRS9zeW50YXgvamF2YXNjcmlwdC52aW0KLSAgc3luIHJlZ2lvbiBWUk1MalNjcmlwdFN0cmluZyBjb250YWluZWQgc3RhcnQ9KyJcKFwoamF2YXNjcmlwdFwpXHxcKHZybWxzY3JpcHRcKVx8XChlY21hc2NyaXB0XClcKTorbXM9ZSsxIHNraXA9K1xcXFxcfFxcIisgZW5kPSsiK21lPWUtMSBjb250YWlucz1AanNjcmlwdAotZW5kaWYKK3N5biBpbmNsdWRlIEBqc2NyaXB0ICRWSU1SVU5USU1FL3N5bnRheC9qYXZhc2NyaXB0LnZpbQorc3luIHJlZ2lvbiBWUk1MalNjcmlwdFN0cmluZyBjb250YWluZWQgc3RhcnQ9KyJcKFwoamF2YXNjcmlwdFwpXHxcKHZybWxzY3JpcHRcKVx8XChlY21hc2NyaXB0XClcKTorbXM9ZSsxIHNraXA9K1xcXFxcfFxcIisgZW5kPSsiK21lPWUtMSBjb250YWlucz1AanNjcmlwdAogCiAiIG1hdGNoIGRlZmluaXRpb25zLgogc3luIG1hdGNoICAgVlJNTFNwZWNpYWwJCSAgY29udGFpbmVkICJcXFswLTldWzAtOV1bMC05XVx8XFwuIgpAQCAtMTkyLDQ3ICsxODcsMzcgQEAKIHN5biBrZXl3b3JkIFZSTUxJbnN0YW5jZXMgICAgICBjb250YWluZWQgREVGIFVTRQogc3luIHN5bmMgbWlubGluZXM9MQogCi1pZiB2ZXJzaW9uID49IDYwMAogIkZPTERTIQotICBzeW4gc3luYyBmcm9tc3RhcnQKLSAgInNldGxvY2FsIGZvbGRtZXRob2Q9c3ludGF4Ci0gIHN5biByZWdpb24gYnJhY2VGb2xkIHN0YXJ0PSJ7IiBlbmQ9In0iIHRyYW5zcGFyZW50IGZvbGQgY29udGFpbnM9VE9QCi0gIHN5biByZWdpb24gYnJhY2tldEZvbGQgc3RhcnQ9IlxbIiBlbmQ9Il0iIHRyYW5zcGFyZW50IGZvbGQgY29udGFpbnM9VE9QCi0gIHN5biByZWdpb24gVlJNTFN0cmluZyBzdGFydD0rIisgc2tpcD0rXFxcXFx8XFwiKyBlbmQ9KyIrIGZvbGQgY29udGFpbnM9VlJNTFNwZWNpYWwsVlJNTGpTY3JpcHRTdHJpbmcKLWVuZGlmCitzeW4gc3luYyBmcm9tc3RhcnQKKyJzZXRsb2NhbCBmb2xkbWV0aG9kPXN5bnRheAorc3luIHJlZ2lvbiBicmFjZUZvbGQgc3RhcnQ9InsiIGVuZD0ifSIgdHJhbnNwYXJlbnQgZm9sZCBjb250YWlucz1UT1AKK3N5biByZWdpb24gYnJhY2tldEZvbGQgc3RhcnQ9IlxbIiBlbmQ9Il0iIHRyYW5zcGFyZW50IGZvbGQgY29udGFpbnM9VE9QCitzeW4gcmVnaW9uIFZSTUxTdHJpbmcgc3RhcnQ9KyIrIHNraXA9K1xcXFxcfFxcIisgZW5kPSsiKyBmb2xkIGNvbnRhaW5zPVZSTUxTcGVjaWFsLFZSTUxqU2NyaXB0U3RyaW5nCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX1ZSTUxfc3ludGF4X2luaXRzIikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfVlJNTF9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIFZSTUxDaGFyYWN0ZXIgIFZSTUxTdHJpbmcKLSAgSGlMaW5rIFZSTUxTcGVjaWFsQ2hhcmFjdGVyIFZSTUxTcGVjaWFsCi0gIEhpTGluayBWUk1MTnVtYmVyICAgICBWUk1MU3RyaW5nCi0gIEhpTGluayBWUk1MVmFsdWVzICAgICBWUk1MU3RyaW5nCi0gIEhpTGluayBWUk1MU3RyaW5nICAgICBTdHJpbmcKLSAgSGlMaW5rIFZSTUxTcGVjaWFsICAgIFNwZWNpYWwKLSAgSGlMaW5rIFZSTUxDb21tZW50ICAgIENvbW1lbnQKLSAgSGlMaW5rIFZSTUxOb2RlcyAgICAgIFN0YXRlbWVudAotICBIaUxpbmsgVlJNTEZpZWxkcyAgICAgVHlwZQotICBIaUxpbmsgVlJNTEV2ZW50cyAgICAgVHlwZQotICBIaUxpbmsgVlJNTGZUeXBlcyAgICAgTGluZU5yCitIaUxpbmsgVlJNTENoYXJhY3RlciAgVlJNTFN0cmluZworSGlMaW5rIFZSTUxTcGVjaWFsQ2hhcmFjdGVyIFZSTUxTcGVjaWFsCitIaUxpbmsgVlJNTE51bWJlciAgICAgVlJNTFN0cmluZworSGlMaW5rIFZSTUxWYWx1ZXMgICAgIFZSTUxTdHJpbmcKK0hpTGluayBWUk1MU3RyaW5nICAgICBTdHJpbmcKK0hpTGluayBWUk1MU3BlY2lhbCAgICBTcGVjaWFsCitIaUxpbmsgVlJNTENvbW1lbnQgICAgQ29tbWVudAorSGlMaW5rIFZSTUxOb2RlcyAgICAgIFN0YXRlbWVudAorSGlMaW5rIFZSTUxGaWVsZHMgICAgIFR5cGUKK0hpTGluayBWUk1MRXZlbnRzICAgICBUeXBlCitIaUxpbmsgVlJNTGZUeXBlcyAgICAgTGluZU5yCiAiICBoaSAgICAgVlJNTGZUeXBlcyAgICAgY3Rlcm1mZz02IGd1aWZnPUJyb3duCi0gIEhpTGluayBWUk1MSW5zdGFuY2VzICBQcmVDb25kaXQKLSAgSGlMaW5rIFZSTUxSb3V0ZXMgICAgIFByZUNvbmRpdAotICBIaUxpbmsgVlJNTFByb3RvcyAgICAgUHJlUHJvYwotICBIaUxpbmsgVlJNTFJvdXRlTm9kZSAgSWRlbnRpZmllcgotICBIaUxpbmsgVlJNTEluc3ROYW1lICAgSWRlbnRpZmllcgotICBIaUxpbmsgVlJNTFR5cGVzICAgICAgSWRlbnRpZmllcgorSGlMaW5rIFZSTUxJbnN0YW5jZXMgIFByZUNvbmRpdAorSGlMaW5rIFZSTUxSb3V0ZXMgICAgIFByZUNvbmRpdAorSGlMaW5rIFZSTUxQcm90b3MgICAgIFByZVByb2MKK0hpTGluayBWUk1MUm91dGVOb2RlICBJZGVudGlmaWVyCitIaUxpbmsgVlJNTEluc3ROYW1lICAgSWRlbnRpZmllcgorSGlMaW5rIFZSTUxUeXBlcyAgICAgIElkZW50aWZpZXIKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInZybWwiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Zyb29tLnZpbSBiL3J1bnRpbWUvc3ludGF4L3Zyb29tLnZpbQppbmRleCAwY2Q2Y2NjLi4wNTA5ZTMwIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC92cm9vbS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdnJvb20udmltCkBAIC0zLDExICszLDggQEAKICIgTWFpbnRhaW5lcjoJRGF2aWQgQmFybmV0dCAoaHR0cHM6Ly9naXRodWIuY29tL2dvb2dsZS92aW0tZnQtdnJvb20pCiAiIExhc3QgQ2hhbmdlOgkyMDE0IEp1bCAyMwogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcy4KLSIgRm9yIHZlcnNpb24gNi54IGFuZCBsYXRlcjogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkLgotaWYgdjp2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygnYjpjdXJyZW50X3N5bnRheCcpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCdiOmN1cnJlbnRfc3ludGF4JykKICAgZmluaXNoCiBlbmRpZgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC92c2VqY2wudmltIGIvcnVudGltZS9zeW50YXgvdnNlamNsLnZpbQppbmRleCBmNGYwMGM2Li41YTEwNmMyIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC92c2VqY2wudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3ZzZWpjbC52aW0KQEAgLTQsMTEgKzQsOCBAQAogIiBVUkw6CiAiIExhc3QgY2hhbmdlOiAyMDAxIE1heSAxMAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMjMsMjYgKzIwLDE4IEBACiBzeW4gbWF0Y2ggdnNlamNsUGFybXMgLyguXHstfSkvIGNvbnRhaW5lZAogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF92c2VqY2xfc3ludGF4IikKLSAgaWYgdmVyc2lvbiA8IDUwOAotICAgIGxldCBkaWRfdnNlamNsX3N5bnRheCA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgdnNlamNsQ29tbWVudAkJQ29tbWVudAotICBIaUxpbmsgdnNlamNsRmllbGQJCVR5cGUKLSAgSGlMaW5rIHZzZWpjbEtleXdvcmQJCVN0YXRlbWVudAotICBIaUxpbmsgdnNlamNsT2JqZWN0CQlDb25zdGFudAotICBIaUxpbmsgdnNlamNsU3RyaW5nCQlDb25zdGFudAotICBIaUxpbmsgdnNlamNsTWlzYwkJCVNwZWNpYWwKLSAgSGlMaW5rIHZzZWpjbFBhcm1zCQlDb25zdGFudAorSGlMaW5rIHZzZWpjbENvbW1lbnQJCUNvbW1lbnQKK0hpTGluayB2c2VqY2xGaWVsZAkJVHlwZQorSGlMaW5rIHZzZWpjbEtleXdvcmQJCVN0YXRlbWVudAorSGlMaW5rIHZzZWpjbE9iamVjdAkJQ29uc3RhbnQKK0hpTGluayB2c2VqY2xTdHJpbmcJCUNvbnN0YW50CitIaUxpbmsgdnNlamNsTWlzYwkJCVNwZWNpYWwKK0hpTGluayB2c2VqY2xQYXJtcwkJQ29uc3RhbnQKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInZzZWpjbCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvd2RpZmYudmltIGIvcnVudGltZS9zeW50YXgvd2RpZmYudmltCmluZGV4IDljZDA2MTEuLmJkYzdiZTcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3dkaWZmLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC93ZGlmZi52aW0KQEAgLTksMTEgKzksOCBAQAogIiBTUEFNIGlzIF9OT1RfIHdlbGNvbWUgLSBiZSByZWFkeSB0byBiZSByZXBvcnRlZCEKIAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW4gY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMjMsMjEgKzIwLDEyIEBACiAKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfd2RpZmZfc3luX2luaXRzIikKLSAgbGV0IGRpZF93ZGlmZl9zeW5faW5pdHMgPSAxCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3dkaWZmX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgd2RpZmZPbGQgICAgICAgU3BlY2lhbAotICBIaUxpbmsgd2RpZmZOZXcgICAgICAgSWRlbnRpZmllcgorSGlMaW5rIHdkaWZmT2xkICAgICAgIFNwZWNpYWwKK0hpTGluayB3ZGlmZk5ldyAgICAgICBJZGVudGlmaWVyCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ3ZGlmZiIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3dlYi52aW0gYi9ydW50aW1lL3N5bnRheC93ZWIudmltCmluZGV4IGY3YTdmZGYuLjU0ZWViZGEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3dlYi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvd2ViLnZpbQpAQCAtOCwxMSArOCw4IEBACiAiIHRoZSBzdGFuZGFyZCBXRUIgZGlzdHJpYnV0aW9uLCBhdmFpbGFibGUgZm9yIGFub255bW91cyBmdHAgYXQKICIgZnRwOi8vbGFicmVhLnN0YW5mb3JkLmVkdS9wdWIvdGV4L3dlYi8uCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0yMCwxMiArMTcsOCBAQAogIiB3ZSBiYXNlIHRoaXMgc3ludGF4IGZpbGUgb24gdGhlIG1vZGVybiBzdXBlcnNldCwgQ1dFQi4gIE5vdGU6IFRoaXMgc2hvcnRjdXQKICIgbWF5IGludHJvZHVjZSBzb21lIGlsbGVnYWwgY29uc3RydWN0cywgZS5nLiwgQ1dFQidzICJAYyIgZG9lcyBfbm90XyBzdGFydCBhCiAiIGNvZGUgc2VjdGlvbiBpbiBXRUIuICBBbnl3YXksIEknbSBub3QgYSBXRUIgcHJvZ3JhbW1lci4KLWlmIHZlcnNpb24gPCA2MDAKLSAgc291cmNlIDxzZmlsZT46cDpoL2N3ZWIudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9jd2ViLnZpbQotICB1bmxldCBiOmN1cnJlbnRfc3ludGF4Ci1lbmRpZgorcnVudGltZSEgc3ludGF4L2N3ZWIudmltCit1bmxldCBiOmN1cnJlbnRfc3ludGF4CiAKICIgUmVwbGFjZSBDL0MrKyBzeW50YXggYnkgUGFzY2FsIHN5bnRheC4KIHN5bnRheCBpbmNsdWRlIEB3ZWJJbmNsdWRlZEMgPHNmaWxlPjpwOmgvcGFzY2FsLnZpbQpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvd2VibWFjcm8udmltIGIvcnVudGltZS9zeW50YXgvd2VibWFjcm8udmltCmluZGV4IDNiODYzZjcuLjJjMzJmNTMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3dlYm1hY3JvLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC93ZWJtYWNyby52aW0KQEAgLTExLDIxICsxMSwxNiBAQAogIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKICIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKIGlmICFleGlzdHMoIm1haW5fc3ludGF4IikKLSAgaWYgdmVyc2lvbiA8IDYwMAotICAgIHN5bnRheCBjbGVhcgotICBlbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyAgIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKKyAgaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgICBmaW5pc2gKICAgZW5kaWYKICAgbGV0IG1haW5fc3ludGF4ID0gJ3dlYm1hY3JvJwogZW5kaWYKIAogCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNvdXJjZSA8c2ZpbGU+OnA6aC9odG1sLnZpbQotZWxzZQotICBydW50aW1lISBzeW50YXgvaHRtbC52aW0KLSAgdW5sZXQgYjpjdXJyZW50X3N5bnRheAotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9odG1sLnZpbQordW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiBzeW4gY2x1c3RlciBodG1sUHJlUHJvYyBhZGQ9d2VibWFjcm9JZix3ZWJtYWNyb1VzZSx3ZWJtYWNyb0JyYWNlcyx3ZWJtYWNyb1BhcnNlLHdlYm1hY3JvSW5jbHVkZSx3ZWJtYWNyb1NldCx3ZWJtYWNyb0ZvcmVhY2gsd2VibWFjcm9Db21tZW50CiAKQEAgLTQ5LDMxICs0NCwyMyBAQAogc3luIG1hdGNoIHdlYm1hY3JvSGFzaCAiWyN7fVwkXSIgY29udGFpbmVkCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3dlYm1hY3JvX3N5bl9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3dlYm1hY3JvX3N5bl9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgd2VibWFjcm9Db21tZW50IENvbW1lbnRUaXRsZQotICBIaUxpbmsgd2VibWFjcm9WYXJpYWJsZSBQcmVQcm9jCi0gIEhpTGluayB3ZWJtYWNyb0lmIHdlYm1hY3JvU3RhdGVtZW50Ci0gIEhpTGluayB3ZWJtYWNyb0ZvcmVhY2ggd2VibWFjcm9TdGF0ZW1lbnQKLSAgSGlMaW5rIHdlYm1hY3JvU2V0IHdlYm1hY3JvU3RhdGVtZW50Ci0gIEhpTGluayB3ZWJtYWNyb0luY2x1ZGUgd2VibWFjcm9TdGF0ZW1lbnQKLSAgSGlMaW5rIHdlYm1hY3JvUGFyc2Ugd2VibWFjcm9TdGF0ZW1lbnQKLSAgSGlMaW5rIHdlYm1hY3JvU3RhdGVtZW50IEZ1bmN0aW9uCi0gIEhpTGluayB3ZWJtYWNyb051bWJlciBOdW1iZXIKLSAgSGlMaW5rIHdlYm1hY3JvQm9vbGVhbiBCb29sZWFuCi0gIEhpTGluayB3ZWJtYWNyb1NwZWNpYWwgU3BlY2lhbAotICBIaUxpbmsgd2VibWFjcm9TdHJpbmcgU3RyaW5nCi0gIEhpTGluayB3ZWJtYWNyb0JyYWNlc0Vycm9yIEVycm9yCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorSGlMaW5rIHdlYm1hY3JvQ29tbWVudCBDb21tZW50VGl0bGUKK0hpTGluayB3ZWJtYWNyb1ZhcmlhYmxlIFByZVByb2MKK0hpTGluayB3ZWJtYWNyb0lmIHdlYm1hY3JvU3RhdGVtZW50CitIaUxpbmsgd2VibWFjcm9Gb3JlYWNoIHdlYm1hY3JvU3RhdGVtZW50CitIaUxpbmsgd2VibWFjcm9TZXQgd2VibWFjcm9TdGF0ZW1lbnQKK0hpTGluayB3ZWJtYWNyb0luY2x1ZGUgd2VibWFjcm9TdGF0ZW1lbnQKK0hpTGluayB3ZWJtYWNyb1BhcnNlIHdlYm1hY3JvU3RhdGVtZW50CitIaUxpbmsgd2VibWFjcm9TdGF0ZW1lbnQgRnVuY3Rpb24KK0hpTGluayB3ZWJtYWNyb051bWJlciBOdW1iZXIKK0hpTGluayB3ZWJtYWNyb0Jvb2xlYW4gQm9vbGVhbgorSGlMaW5rIHdlYm1hY3JvU3BlY2lhbCBTcGVjaWFsCitIaUxpbmsgd2VibWFjcm9TdHJpbmcgU3RyaW5nCitIaUxpbmsgd2VibWFjcm9CcmFjZXNFcnJvciBFcnJvcgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAid2VibWFjcm8iCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3dpbmJhdGNoLnZpbSBiL3J1bnRpbWUvc3ludGF4L3dpbmJhdGNoLnZpbQppbmRleCBhZWEyY2RlLi5lNzg3YTVkIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC93aW5iYXRjaC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvd2luYmF0Y2gudmltCkBAIC00LDExICs0LDggQEAKICIgVVJMOgkJaHR0cDovL3d3dy5tZ2dlbi5jb20vdmltL3N5bnRheC93aW5iYXRjaC56aXAKICIgTGFzdCBjaGFuZ2U6CTIwMDEgTWF5IDEwCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xNTgsMjkgKzE1NSwyMSBAQAogc3luIGtleXdvcmQgd2luYmF0Y2hJbXBsaWNpdCB4c2VuZG1lc3NhZ2UgeHZlcmlmeWNjYXJkIHlpZWxkCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3dpbmJhdGNoX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3dpbmJhdGNoX3N5bnRheF9pbml0cyA9IDEKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBlbHNlCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KIAotICBIaUxpbmsgd2luYmF0Y2hMYWJlbAkJUHJlUHJvYwotICBIaUxpbmsgd2luYmF0Y2hDdGwJCU9wZXJhdG9yCi0gIEhpTGluayB3aW5iYXRjaFN0YXRlbWVudAlTdGF0ZW1lbnQKLSAgSGlMaW5rIHdpbmJhdGNoVG9kbwkJVG9kbwotICBIaUxpbmsgd2luYmF0Y2hTdHJpbmcJCVN0cmluZwotICBIaUxpbmsgd2luYmF0Y2hWYXIJCVR5cGUKLSAgSGlMaW5rIHdpbmJhdGNoQ29tbWVudAlDb21tZW50Ci0gIEhpTGluayB3aW5iYXRjaEltcGxpY2l0CVNwZWNpYWwKLSAgSGlMaW5rIHdpbmJhdGNoTnVtYmVyCQlOdW1iZXIKLSAgSGlMaW5rIHdpbmJhdGNoQ29uc3RhbnQJU3RvcmFnZUNsYXNzCitIaUxpbmsgd2luYmF0Y2hMYWJlbAkJUHJlUHJvYworSGlMaW5rIHdpbmJhdGNoQ3RsCQlPcGVyYXRvcgorSGlMaW5rIHdpbmJhdGNoU3RhdGVtZW50CVN0YXRlbWVudAorSGlMaW5rIHdpbmJhdGNoVG9kbwkJVG9kbworSGlMaW5rIHdpbmJhdGNoU3RyaW5nCQlTdHJpbmcKK0hpTGluayB3aW5iYXRjaFZhcgkJVHlwZQorSGlMaW5rIHdpbmJhdGNoQ29tbWVudAlDb21tZW50CitIaUxpbmsgd2luYmF0Y2hJbXBsaWNpdAlTcGVjaWFsCitIaUxpbmsgd2luYmF0Y2hOdW1iZXIJCU51bWJlcgorSGlMaW5rIHdpbmJhdGNoQ29uc3RhbnQJU3RvcmFnZUNsYXNzCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ3aW5iYXRjaCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvd21sLnZpbSBiL3J1bnRpbWUvc3ludGF4L3dtbC52aW0KaW5kZXggNTk1NzkzMC4uYjkxNjlkMCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvd21sLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC93bWwudmltCkBAIC0xNiwyMSArMTYsMTQgQEAKICIgIHZpbS1wYWNrYWdlIGFyb3VuZCB5b3VyIGNvcm5lciA6KQogCiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5biBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCiAKICIgQSBsb3Qgb2YgdGhlIHdlYiBzdHVmZiBsb29rcyBsaWtlIEhUTUwgc28gd2UgbG9hZCB0aGF0IGZpcnN0Ci1pZiB2ZXJzaW9uIDwgNjAwCi0gIHNvIDxzZmlsZT46cDpoL2h0bWwudmltCi1lbHNlCi0gIHJ1bnRpbWUhIHN5bnRheC9odG1sLnZpbQotZW5kaWYKK3J1bnRpbWUhIHN5bnRheC9odG1sLnZpbQogdW5sZXQgYjpjdXJyZW50X3N5bnRheAogCiBpZiAhZXhpc3RzKCJtYWluX3N5bnRheCIpCkBAIC0xMDgsMTEgKzEwMSw3IEBACiAiIFRoZSBwZXJsIGluY2x1ZGUgc3R1ZmYKIGlmIG1haW5fc3ludGF4ICE9ICdwZXJsJwogICAiIFBlcmwgc2NyaXB0Ci0gIGlmIHZlcnNpb24gPCA2MDAKLSAgICBzeW4gaW5jbHVkZSBAd21sUGVybFNjcmlwdCA8c2ZpbGU+OnA6aC9wZXJsLnZpbQotICBlbHNlCi0gICAgc3luIGluY2x1ZGUgQHdtbFBlcmxTY3JpcHQgc3ludGF4L3BlcmwudmltCi0gIGVuZGlmCisgIHN5biBpbmNsdWRlIEB3bWxQZXJsU2NyaXB0IHN5bnRheC9wZXJsLnZpbQogICB1bmxldCBiOmN1cnJlbnRfc3ludGF4CiAKICAgc3luIHJlZ2lvbiBwZXJsU2NyaXB0ICAgc3RhcnQ9KzxwZXJsPisga2VlcGVuZCBlbmQ9KzwvcGVybD4rIGNvbnRhaW5zPUB3bWxQZXJsU2NyaXB0LHdtbFBlcmxUYWcKQEAgLTE0MCwzMyArMTI5LDI0IEBACiBlbmRpZgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF93bWxfc3luX2luaXRzIikKLSAgbGV0IGRpZF93bWxfc3luX2luaXRzID0gMQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF93bWxfc3luX2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gIEhpTGluayB3bWxOZXh0TGluZQlTcGVjaWFsCi0gIEhpTGluayB3bWxVc2UJCUluY2x1ZGUKLSAgSGlMaW5rIHdtbFVzZWQJU3RyaW5nCi0gIEhpTGluayB3bWxCb2R5CVNwZWNpYWwKLSAgSGlMaW5rIHdtbERpdmVydGVkCUxhYmVsCi0gIEhpTGluayB3bWxEaXZlcnQJRGVsaW1pdGVyCi0gIEhpTGluayB3bWxEaXZlcnRFbmQJRGVsaW1pdGVyCi0gIEhpTGluayB3bWxMb2NhdGlvbklkCUxhYmVsCi0gIEhpTGluayB3bWxMb2NhdGlvbglEZWxpbWl0ZXIKK0hpTGluayB3bWxOZXh0TGluZQlTcGVjaWFsCitIaUxpbmsgd21sVXNlCQlJbmNsdWRlCitIaUxpbmsgd21sVXNlZAlTdHJpbmcKK0hpTGluayB3bWxCb2R5CVNwZWNpYWwKK0hpTGluayB3bWxEaXZlcnRlZAlMYWJlbAorSGlMaW5rIHdtbERpdmVydAlEZWxpbWl0ZXIKK0hpTGluayB3bWxEaXZlcnRFbmQJRGVsaW1pdGVyCitIaUxpbmsgd21sTG9jYXRpb25JZAlMYWJlbAorSGlMaW5rIHdtbExvY2F0aW9uCURlbGltaXRlcgogIiBIaUxpbmsgd21sTG9jYXRpb25lZAlEZWxpbWl0ZXIKLSAgSGlMaW5rIHdtbERlZmluZU5hbWUJU3RyaW5nCi0gIEhpTGluayB3bWxDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIHdtbEluY2x1ZGUJSW5jbHVkZQotICBIaUxpbmsgd21sU2hhcnBCYW5nCVByZVByb2MKK0hpTGluayB3bWxEZWZpbmVOYW1lCVN0cmluZworSGlMaW5rIHdtbENvbW1lbnQJQ29tbWVudAorSGlMaW5rIHdtbEluY2x1ZGUJSW5jbHVkZQorSGlMaW5rIHdtbFNoYXJwQmFuZwlQcmVQcm9jCiAKLSAgZGVsY29tbWFuZCBIaUxpbmsKLWVuZGlmCitkZWxjb21tYW5kIEhpTGluawogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJ3bWwiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC93c21sLnZpbSBiL3J1bnRpbWUvc3ludGF4L3dzbWwudmltCmluZGV4IDJhOTJhMGQuLmYyZmJiZjIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3dzbWwudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3dzbWwudmltCkBAIC00LDEwICs0LDggQEAKICIgVVJMOgkJbm9uZQogIiBMYXN0IENoYW5nZTogIDIwMDYgQXByIDMwCiAKLSIgUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC03OCw0NSArNzYsMzcgQEAKIHN5biBjbHVzdGVyIHdzbWxUb3AgYWRkPXdzbWxTdHJpbmcsd3NtbENoYXJhY3Rlcix3c21sTnVtYmVyLHdzbWxTcGVjaWFsLHdzbWxTdHJpbmdFcnJvcgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iICIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiAiIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci0gaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3dzbWxfc3luX2luaXRzIikKLSAgIGlmIHZlcnNpb24gPCA1MDgKLSAgICAgICBsZXQgZGlkX3dzbWxfc3luX2luaXRzID0gMQotICAgICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gICBlbHNlCi0gICAgICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0gICBlbmRpZiAgICAgICAgICAgICAgCi0gICBIaUxpbmsgd3NtbEhlYWRlcgkJCVR5cGVEZWYKLSAgIEhpTGluayB3c21sTmFtZXNwYWNlCQkJVHlwZURlZgotICAgSGlMaW5rIHdzbWxPbnRvbG9neQkJCVN0YXRlbWVudAotICAgSGlMaW5rIHdzbWxBeGlvbQkJCVR5cGVEZWYKLSAgIEhpTGluayB3c21sU2VydmljZQkJCVR5cGVEZWYKLSAgIEhpTGluayB3c21sTkZQCQkJVHlwZURlZgotICAgSGlMaW5rIHdzbWxUb3BMZXZlbAkJCVR5cGVEZWYKLSAgIEhpTGluayB3c21sTWVkaWF0aW9uCQkJVHlwZURlZiAKLSAgIEhpTGluayB3c21sQmVoYXZpb3JhbAkJVHlwZURlZgotICAgSGlMaW5rIHdzbWxDaG9yZW9ncmFwaHlQcmkJCVR5cGVEZWYKLSAgIEhpTGluayB3c21sQ2hvcmVvZ3JhcGh5U2VjCQlPcGVyYXRvcgotICAgSGlMaW5rIHdzbWxDaG9yZW9ncmFwaHlUZXIJCVNwZWNpYWwKLSAgIEhpTGluayB3c21sU3RyaW5nCQkJU3RyaW5nCi0gICBIaUxpbmsgd3NtbElkZW50aWZpZXIJCU5vcm1hbCAKLSAgIEhpTGluayB3c21sU3FOYW1lICAgICAgICAgICAgICAgICAgICAgTm9ybWFsCi0gICBIaUxpbmsgd3NtbFZhcmlhYmxlCQkJRGVmaW5lCi0gICBIaUxpbmsgd3NtbEtleXdvcmRzSW5zaWRlTEVzCQlPcGVyYXRvcgotICAgSGlMaW5rIHdzbWxPcGVyYXRvcgkJCU9wZXJhdG9yCi0gICBIaUxpbmsgd3NtbEJyYWNlCQkJT3BlcmF0b3IKLSAgIEhpTGluayB3c21sQ2hhcmFjdGVyCQkJQ2hhcmFjdGVyCi0gICBIaUxpbmsgd3NtbE51bWJlcgkJCU51bWJlcgotICAgSGlMaW5rIHdzbWxEYXRhVHlwZXMJCQlTcGVjaWFsCi0gICBIaUxpbmsgd3NtbENvbW1lbnQJCQlDb21tZW50Ci0gICBIaUxpbmsgd3NtbERvY0NvbW1lbnQJCUNvbW1lbnQKLSAgIEhpTGluayB3c21sTGluZUNvbW1lbnQJCUNvbW1lbnQKLSAgIEhpTGluayB3c21sVG9kbwkJCVRvZG8KLSAgIEhpTGluayB3c21sRml4TWUJCQlFcnJvcgotICAgSGlMaW5rIHdzbWxDb21tZW50VGl0bGUJCVNwZWNpYWxDb21tZW50Ci0gICBIaUxpbmsgd3NtbENvbW1lbnRTdGFyCQl3c21sQ29tbWVudAotIGVuZGlmCisiIE9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Citjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KK0hpTGluayB3c21sSGVhZGVyCQkJVHlwZURlZgorSGlMaW5rIHdzbWxOYW1lc3BhY2UJCQlUeXBlRGVmCitIaUxpbmsgd3NtbE9udG9sb2d5CQkJU3RhdGVtZW50CitIaUxpbmsgd3NtbEF4aW9tCQkJVHlwZURlZgorSGlMaW5rIHdzbWxTZXJ2aWNlCQkJVHlwZURlZgorSGlMaW5rIHdzbWxORlAJCQlUeXBlRGVmCitIaUxpbmsgd3NtbFRvcExldmVsCQkJVHlwZURlZgorSGlMaW5rIHdzbWxNZWRpYXRpb24JCQlUeXBlRGVmIAorSGlMaW5rIHdzbWxCZWhhdmlvcmFsCQlUeXBlRGVmCitIaUxpbmsgd3NtbENob3Jlb2dyYXBoeVByaQkJVHlwZURlZgorSGlMaW5rIHdzbWxDaG9yZW9ncmFwaHlTZWMJCU9wZXJhdG9yCitIaUxpbmsgd3NtbENob3Jlb2dyYXBoeVRlcgkJU3BlY2lhbAorSGlMaW5rIHdzbWxTdHJpbmcJCQlTdHJpbmcKK0hpTGluayB3c21sSWRlbnRpZmllcgkJTm9ybWFsIAorSGlMaW5rIHdzbWxTcU5hbWUgICAgICAgICAgICAgICAgICAgICBOb3JtYWwKK0hpTGluayB3c21sVmFyaWFibGUJCQlEZWZpbmUKK0hpTGluayB3c21sS2V5d29yZHNJbnNpZGVMRXMJCU9wZXJhdG9yCitIaUxpbmsgd3NtbE9wZXJhdG9yCQkJT3BlcmF0b3IKK0hpTGluayB3c21sQnJhY2UJCQlPcGVyYXRvcgorSGlMaW5rIHdzbWxDaGFyYWN0ZXIJCQlDaGFyYWN0ZXIKK0hpTGluayB3c21sTnVtYmVyCQkJTnVtYmVyCitIaUxpbmsgd3NtbERhdGFUeXBlcwkJCVNwZWNpYWwKK0hpTGluayB3c21sQ29tbWVudAkJCUNvbW1lbnQKK0hpTGluayB3c21sRG9jQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHdzbWxMaW5lQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHdzbWxUb2RvCQkJVG9kbworSGlMaW5rIHdzbWxGaXhNZQkJCUVycm9yCitIaUxpbmsgd3NtbENvbW1lbnRUaXRsZQkJU3BlY2lhbENvbW1lbnQKK0hpTGluayB3c21sQ29tbWVudFN0YXIJCXdzbWxDb21tZW50CiAKIGRlbGNvbW1hbmQgSGlMaW5rCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3hkZWZhdWx0cy52aW0gYi9ydW50aW1lL3N5bnRheC94ZGVmYXVsdHMudmltCmluZGV4IDVlMzg5NTIuLjFkZmNjMzQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3hkZWZhdWx0cy52aW0KKysrIGIvcnVudGltZS9zeW50YXgveGRlZmF1bHRzLnZpbQpAQCAtMTAsMTEgKzEwLDggQEAKICIgICB4cmRiIG1hbnVhbCBwYWdlCiAiICAgeHJkYiBzb3VyY2U6IGZ0cDovL2Z0cC54Lm9yZy9wdWIvUjYuNC94Yy9wcm9ncmFtcy94cmRiL3hyZGIuYwogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMTA5LDM2ICsxMDYsMjggQEAKIHN5biBrZXl3b3JkIHhkZWZhdWx0c1N5bWJvbCBjb250YWluZWQgWV9SRVNPTFVUSU9OCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3hkZWZhdWx0c19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF94ZGVmYXVsdHNfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKLSAgSGlMaW5rIHhkZWZhdWx0c0xhYmVsCQlUeXBlCi0gIEhpTGluayB4ZGVmYXVsdHNWYWx1ZQkJQ29uc3RhbnQKLSAgSGlMaW5rIHhkZWZhdWx0c0NvbW1lbnQJQ29tbWVudAotICBIaUxpbmsgeGRlZmF1bHRzQ29tbWVudEgJeGRlZmF1bHRzQ29tbWVudAotICBIaUxpbmsgeGRlZmF1bHRzUHJlUHJvYwlQcmVQcm9jCi0gIEhpTGluayB4ZGVmYXVsdHNJbmNsdWRlCXhkZWZhdWx0c1ByZVByb2MKLSAgSGlMaW5rIHhkZWZhdWx0c0NwcFNraXAJeGRlZmF1bHRzQ3BwT3V0Ci0gIEhpTGluayB4ZGVmYXVsdHNDcHBPdXQyCXhkZWZhdWx0c0NwcE91dAotICBIaUxpbmsgeGRlZmF1bHRzQ3BwT3V0CUNvbW1lbnQKLSAgSGlMaW5rIHhkZWZhdWx0c0luY2x1ZGVkCVN0cmluZwotICBIaUxpbmsgeGRlZmF1bHRzRGVmaW5lCU1hY3JvCi0gIEhpTGluayB4ZGVmYXVsdHNTeW1ib2wJU3RhdGVtZW50Ci0gIEhpTGluayB4ZGVmYXVsdHNTcGVjaWFsCVN0YXRlbWVudAotICBIaUxpbmsgeGRlZmF1bHRzRXJyb3JMaW5lCUVycm9yCi0gIEhpTGluayB4ZGVmYXVsdHNDb21tZW50RXJyb3IJRXJyb3IKLSAgSGlMaW5rIHhkZWZhdWx0c1B1bmN0CQlOb3JtYWwKLSAgSGlMaW5rIHhkZWZhdWx0c0xpbmVFbmQJU3BlY2lhbAotICBIaUxpbmsgeGRlZmF1bHRzVG9kbwkJVG9kbworIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CitIaUxpbmsgeGRlZmF1bHRzTGFiZWwJCVR5cGUKK0hpTGluayB4ZGVmYXVsdHNWYWx1ZQkJQ29uc3RhbnQKK0hpTGluayB4ZGVmYXVsdHNDb21tZW50CUNvbW1lbnQKK0hpTGluayB4ZGVmYXVsdHNDb21tZW50SAl4ZGVmYXVsdHNDb21tZW50CitIaUxpbmsgeGRlZmF1bHRzUHJlUHJvYwlQcmVQcm9jCitIaUxpbmsgeGRlZmF1bHRzSW5jbHVkZQl4ZGVmYXVsdHNQcmVQcm9jCitIaUxpbmsgeGRlZmF1bHRzQ3BwU2tpcAl4ZGVmYXVsdHNDcHBPdXQKK0hpTGluayB4ZGVmYXVsdHNDcHBPdXQyCXhkZWZhdWx0c0NwcE91dAorSGlMaW5rIHhkZWZhdWx0c0NwcE91dAlDb21tZW50CitIaUxpbmsgeGRlZmF1bHRzSW5jbHVkZWQJU3RyaW5nCitIaUxpbmsgeGRlZmF1bHRzRGVmaW5lCU1hY3JvCitIaUxpbmsgeGRlZmF1bHRzU3ltYm9sCVN0YXRlbWVudAorSGlMaW5rIHhkZWZhdWx0c1NwZWNpYWwJU3RhdGVtZW50CitIaUxpbmsgeGRlZmF1bHRzRXJyb3JMaW5lCUVycm9yCitIaUxpbmsgeGRlZmF1bHRzQ29tbWVudEVycm9yCUVycm9yCitIaUxpbmsgeGRlZmF1bHRzUHVuY3QJCU5vcm1hbAorSGlMaW5rIHhkZWZhdWx0c0xpbmVFbmQJU3BlY2lhbAorSGlMaW5rIHhkZWZhdWx0c1RvZG8JCVRvZG8KIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInhkZWZhdWx0cyIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgveGY4NmNvbmYudmltIGIvcnVudGltZS9zeW50YXgveGY4NmNvbmYudmltCmluZGV4IDYyNzg0ZDIuLjU0NWVkYTcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3hmODZjb25mLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC94Zjg2Y29uZi52aW0KQEAgLTEwLDEyICsxMCw4IEBACiAiCQkJCQkJCSB0byBmb3JjZSBYRnJlZTg2IDMueCBvciA0LnggWEY4NkNvbmZpZyBzeW50YXgKIAogIiBTZXR1cAotaWYgdmVyc2lvbiA+PSA2MDAKLQlpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQotCQlmaW5pc2gKLQllbmRpZgotZWxzZQotCWVjaG8gIlNvcnJ5LCBidXQgdGhpcyBzeW50YXggZmlsZSByZWxpZXMgb24gVmltIDYgZmVhdHVyZXMuCSBFaXRoZXIgdXBncmFkZSBWaW0gb3IgdXNlYSB2ZXJzaW9uIG9mICIgLiBleHBhbmQoIjxzZmlsZT46dDpyIikgLiAiIHN5bnRheCBmaWxlIGFwcHJvcHJpYXRlIGZvciBWaW0gIiAuIHZlcnNpb24vMTAwIC4gIi4iIC4gdmVyc2lvbiAlMTAwIC4gIi4iCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKIAlmaW5pc2gKIGVuZGlmCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3hrYi52aW0gYi9ydW50aW1lL3N5bnRheC94a2IudmltCmluZGV4IGZmOWJmZDAuLmVmYjdkNjYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3hrYi52aW0KKysrIGIvcnVudGltZS9zeW50YXgveGtiLnZpbQpAQCAtNiwxMiArNiw5IEBACiAiIFVSTDogaHR0cDovL3RyaWZpYy5hdGguY3gvRnRwL3ZpbS9zeW50YXgveGtiLnZpbQogCiAiIFNldHVwCi1pZiB2ZXJzaW9uID49IDYwMAotCWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCi0JCWZpbmlzaAotCWVuZGlmCi1lbHNlCi0Jc3ludGF4IGNsZWFyCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKwlmaW5pc2gKIGVuZGlmCiAKIHN5biBjYXNlIG1hdGNoCkBAIC01MCw0MiArNDcsMzUgQEAKIHN5biBrZXl3b3JkIHhrYlNlY3QgYWxwaGFudW1lcmljX2tleXMgYWx0ZXJuYXRlX2dyb3VwIGZ1bmN0aW9uX2tleXMga2V5cGFkX2tleXMgbW9kaWZpZXJfa2V5cyB4a2JfY29tcGF0aWJpbGl0eSB4a2JfZ2VvbWV0cnkgeGtiX2tleWNvZGVzIHhrYl9rZXltYXAgeGtiX3NlbWFudGljcyB4a2Jfc3ltYm9scyB4a2JfdHlwZXMKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nCi1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfeGtiX3N5bnRheF9pbml0cyIpCi0JaWYgdmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX3hrYl9zeW50YXhfaW5pdHMgPSAxCi0JCWNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0JZWxzZQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLQllbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLQlIaUxpbmsgeGtiTW9kaWYgeGtiUHJlcHJvYwotCUhpTGluayB4a2JUTW9kaWYgeGtiUHJlcHJvYwotCUhpTGluayB4a2JQcmVwcm9jIFByZXByb2MKK0hpTGluayB4a2JNb2RpZiB4a2JQcmVwcm9jCitIaUxpbmsgeGtiVE1vZGlmIHhrYlByZXByb2MKK0hpTGluayB4a2JQcmVwcm9jIFByZXByb2MKIAotCUhpTGluayB4a2JJZGVudGlmaWVyIEtleXdvcmQKLQlIaUxpbmsgeGtiRnVuY3Rpb24gRnVuY3Rpb24KLQlIaUxpbmsgeGtiU2VjdCBUeXBlCi0JSGlMaW5rIHhrYlBoeXNpY2FsS2V5IElkZW50aWZpZXIKLQlIaUxpbmsgeGtiS2V5d29yZCBLZXl3b3JkCitIaUxpbmsgeGtiSWRlbnRpZmllciBLZXl3b3JkCitIaUxpbmsgeGtiRnVuY3Rpb24gRnVuY3Rpb24KK0hpTGluayB4a2JTZWN0IFR5cGUKK0hpTGluayB4a2JQaHlzaWNhbEtleSBJZGVudGlmaWVyCitIaUxpbmsgeGtiS2V5d29yZCBLZXl3b3JkCiAKLQlIaUxpbmsgeGtiQ29tbWVudCBDb21tZW50Ci0JSGlMaW5rIHhrYlRvZG8gVG9kbworSGlMaW5rIHhrYkNvbW1lbnQgQ29tbWVudAorSGlMaW5rIHhrYlRvZG8gVG9kbwogCi0JSGlMaW5rIHhrYkNvbnN0YW50IENvbnN0YW50Ci0JSGlMaW5rIHhrYlN0cmluZyBTdHJpbmcKK0hpTGluayB4a2JDb25zdGFudCBDb25zdGFudAorSGlMaW5rIHhrYlN0cmluZyBTdHJpbmcKIAotCUhpTGluayB4a2JTcGVjaWFsQ2hhciB4a2JTcGVjaWFsCi0JSGlMaW5rIHhrYlNwZWNpYWwgU3BlY2lhbAorSGlMaW5rIHhrYlNwZWNpYWxDaGFyIHhrYlNwZWNpYWwKK0hpTGluayB4a2JTcGVjaWFsIFNwZWNpYWwKIAotCUhpTGluayB4a2JQYXJlbkVycm9yIHhrYkJhbGFuY2luZ0Vycm9yCi0JSGlMaW5rIHhrYkJyYWNlRXJyb3IgeGtiQmFsYW5jaW5nRXJyb3IKLQlIaUxpbmsgeGtiQnJha2V0RXJyb3IgeGtiQmFsYW5jaW5nRXJyb3IKLQlIaUxpbmsgeGtiQmFsYW5jaW5nRXJyb3IgeGtiRXJyb3IKLQlIaUxpbmsgeGtiQ29tbWVudFN0YXJ0RXJyb3IgeGtiQ29tbWVudEVycm9yCi0JSGlMaW5rIHhrYkNvbW1lbnRFcnJvciB4a2JFcnJvcgotCUhpTGluayB4a2JFcnJvciBFcnJvcgorSGlMaW5rIHhrYlBhcmVuRXJyb3IgeGtiQmFsYW5jaW5nRXJyb3IKK0hpTGluayB4a2JCcmFjZUVycm9yIHhrYkJhbGFuY2luZ0Vycm9yCitIaUxpbmsgeGtiQnJha2V0RXJyb3IgeGtiQmFsYW5jaW5nRXJyb3IKK0hpTGluayB4a2JCYWxhbmNpbmdFcnJvciB4a2JFcnJvcgorSGlMaW5rIHhrYkNvbW1lbnRTdGFydEVycm9yIHhrYkNvbW1lbnRFcnJvcgorSGlMaW5rIHhrYkNvbW1lbnRFcnJvciB4a2JFcnJvcgorSGlMaW5rIHhrYkVycm9yIEVycm9yCiAKLQlkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInhrYiIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3htYXRoLnZpbSBiL3J1bnRpbWUvc3ludGF4L3htYXRoLnZpbQppbmRleCA1NDM0ZjkyLi5hODFhZGY1IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC94bWF0aC52aW0KKysrIGIvcnVudGltZS9zeW50YXgveG1hdGgudmltCkBAIC01LDExICs1LDggQEAKICIgVmVyc2lvbjoJNwogIiBVUkw6CWh0dHA6Ly93d3cuZHJjaGlwLm9yZy9hc3Ryb25hdXQvdmltL2luZGV4Lmh0bWwjU1lOVEFYX1hNQVRICiAKLSIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCi0iIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCi1pZiB2ZXJzaW9uIDwgNjAwCi0gIHN5bnRheCBjbGVhcgotZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisiIHF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAoraWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCiBlbmRpZgogCkBAIC0xOTQsNDIgKzE5MSwzNCBAQAogc3luIHN5bmMgbWF0Y2ggeG1hdGhTeW5jQ29tbWVudAlncm91cHRoZXJlIE5PTkUgIn0jIgogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF94bWF0aF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF94bWF0aF9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHhtYXRoQnJhY2VFcnJvcgl4bWF0aEVycm9yCi0gIEhpTGluayB4bWF0aENtZAl4bWF0aFN0YXRlbWVudAotICBIaUxpbmsgeG1hdGhDb21tZW50QmxvY2sJeG1hdGhDb21tZW50Ci0gIEhpTGluayB4bWF0aEN1cmx5RXJyb3IJeG1hdGhFcnJvcgotICBIaUxpbmsgeG1hdGhGdW5jQ21kCXhtYXRoU3RhdGVtZW50Ci0gIEhpTGluayB4bWF0aFBhcmVuRXJyb3IJeG1hdGhFcnJvcgorSGlMaW5rIHhtYXRoQnJhY2VFcnJvcgl4bWF0aEVycm9yCitIaUxpbmsgeG1hdGhDbWQJeG1hdGhTdGF0ZW1lbnQKK0hpTGluayB4bWF0aENvbW1lbnRCbG9jawl4bWF0aENvbW1lbnQKK0hpTGluayB4bWF0aEN1cmx5RXJyb3IJeG1hdGhFcnJvcgorSGlMaW5rIHhtYXRoRnVuY0NtZAl4bWF0aFN0YXRlbWVudAorSGlMaW5rIHhtYXRoUGFyZW5FcnJvcgl4bWF0aEVycm9yCiAKLSAgIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgotICBIaUxpbmsgeG1hdGhDaGFyYWN0ZXIJQ2hhcmFjdGVyCi0gIEhpTGluayB4bWF0aENvbW1hCURlbGltaXRlcgotICBIaUxpbmsgeG1hdGhDb21tZW50CUNvbW1lbnQKLSAgSGlMaW5rIHhtYXRoQ29tbWVudEJsb2NrCUNvbW1lbnQKLSAgSGlMaW5rIHhtYXRoQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLSAgSGlMaW5rIHhtYXRoRXJyb3IJRXJyb3IKLSAgSGlMaW5rIHhtYXRoRnVuYwlGdW5jdGlvbgotICBIaUxpbmsgeG1hdGhMYWJlbAlQcmVQcm9jCi0gIEhpTGluayB4bWF0aE51bWJlcglOdW1iZXIKLSAgSGlMaW5rIHhtYXRoUmVwZWF0CVJlcGVhdAotICBIaUxpbmsgeG1hdGhTcGVjaWFsCVR5cGUKLSAgSGlMaW5rIHhtYXRoU3BlY2lhbENoYXIJU3BlY2lhbENoYXIKLSAgSGlMaW5rIHhtYXRoU3RhdGVtZW50CVN0YXRlbWVudAotICBIaUxpbmsgeG1hdGhTdHJpbmcJU3RyaW5nCi0gIEhpTGluayB4bWF0aFRvZG8JVG9kbworIiBUaGUgZGVmYXVsdCBtZXRob2RzIGZvciBoaWdobGlnaHRpbmcuICBDYW4gYmUgb3ZlcnJpZGRlbiBsYXRlcgorSGlMaW5rIHhtYXRoQ2hhcmFjdGVyCUNoYXJhY3RlcgorSGlMaW5rIHhtYXRoQ29tbWEJRGVsaW1pdGVyCitIaUxpbmsgeG1hdGhDb21tZW50CUNvbW1lbnQKK0hpTGluayB4bWF0aENvbW1lbnRCbG9jawlDb21tZW50CitIaUxpbmsgeG1hdGhDb25kaXRpb25hbAlDb25kaXRpb25hbAorSGlMaW5rIHhtYXRoRXJyb3IJRXJyb3IKK0hpTGluayB4bWF0aEZ1bmMJRnVuY3Rpb24KK0hpTGluayB4bWF0aExhYmVsCVByZVByb2MKK0hpTGluayB4bWF0aE51bWJlcglOdW1iZXIKK0hpTGluayB4bWF0aFJlcGVhdAlSZXBlYXQKK0hpTGluayB4bWF0aFNwZWNpYWwJVHlwZQorSGlMaW5rIHhtYXRoU3BlY2lhbENoYXIJU3BlY2lhbENoYXIKK0hpTGluayB4bWF0aFN0YXRlbWVudAlTdGF0ZW1lbnQKK0hpTGluayB4bWF0aFN0cmluZwlTdHJpbmcKK0hpTGluayB4bWF0aFRvZG8JVG9kbwogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAieG1hdGgiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3hwbS52aW0gYi9ydW50aW1lL3N5bnRheC94cG0udmltCmluZGV4IDNjYmMxYjUuLjhjYzkyYTEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3hwbS52aW0KKysrIGIvcnVudGltZS9zeW50YXgveHBtLnZpbQpAQCAtNCwxMSArNCw4IEBACiAiIExhc3QgQ2hhbmdlOgkyMDA4IE1heSAyOAogIiBWZXJzaW9uOgk1LjRuLjEKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTEyNiwyNCArMTIzLDE2IEBACiBlbmRpZgkJIiBoYXMoImd1aV9ydW5uaW5nIikKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfeHBtX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3hwbV9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHhwbVR5cGUJCVR5cGUKLSAgSGlMaW5rIHhwbVN0b3JhZ2VDbGFzcwlTdG9yYWdlQ2xhc3MKLSAgSGlMaW5rIHhwbVRvZG8JCVRvZG8KLSAgSGlMaW5rIHhwbUNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIHhwbVBpeGVsU3RyaW5nCVN0cmluZworSGlMaW5rIHhwbVR5cGUJCVR5cGUKK0hpTGluayB4cG1TdG9yYWdlQ2xhc3MJU3RvcmFnZUNsYXNzCitIaUxpbmsgeHBtVG9kbwkJVG9kbworSGlMaW5rIHhwbUNvbW1lbnQJCUNvbW1lbnQKK0hpTGluayB4cG1QaXhlbFN0cmluZwlTdHJpbmcKIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInhwbSIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgveHBtMi52aW0gYi9ydW50aW1lL3N5bnRheC94cG0yLnZpbQppbmRleCA3NGIzYzY2Li45MDhmMzkxIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC94cG0yLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC94cG0yLnZpbQpAQCAtNywxMSArNyw4IEBACiAiCiAiIE1hZGUgZnJvbSB4cG0udmltIGJ5IFJvbmFsZCBTY2hpbGQgPHJzQHNjdXR1bS5kZT4KIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTIzLDEzICsyMCw4IEBACiBzeW4gbWF0Y2ggICB4cG0yQ29tbWVudAkJIlwhLiokIiAgY29udGFpbnM9QFNwZWxsLHhwbTJUb2RvCiAKIAotaWYgdmVyc2lvbiA8IDUwOAotICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotICBjb21tYW5kIC1uYXJncz0rIEhpIGhpIDxhcmdzPgotZWxzZQotICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgY29tbWFuZCAtbmFyZ3M9KyBIaSBoaSBkZWYgPGFyZ3M+Ci1lbmRpZgorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Citjb21tYW5kIC1uYXJncz0rIEhpIGhpIGRlZiA8YXJncz4KIAogaWYgaGFzKCJndWlfcnVubmluZyIpCiAKQEAgLTE0NCwyMCArMTM2LDE0IEBACiBlbmRpZgkJIiBoYXMoImd1aV9ydW5uaW5nIikKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfeHBtMl9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF94cG0yX3N5bnRheF9pbml0cyA9IDEKLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKKyIgVGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgorSGlMaW5rIHhwbTJUeXBlCQlUeXBlCitIaUxpbmsgeHBtMlN0b3JhZ2VDbGFzcwlTdG9yYWdlQ2xhc3MKK0hpTGluayB4cG0yVG9kbwkJVG9kbworSGlMaW5rIHhwbTJDb21tZW50CQlDb21tZW50CitIaUxpbmsgeHBtMlBpeGVsU3RyaW5nCVN0cmluZwogCi0gICIgVGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotICBIaUxpbmsgeHBtMlR5cGUJCVR5cGUKLSAgSGlMaW5rIHhwbTJTdG9yYWdlQ2xhc3MJU3RvcmFnZUNsYXNzCi0gIEhpTGluayB4cG0yVG9kbwkJVG9kbwotICBIaUxpbmsgeHBtMkNvbW1lbnQJCUNvbW1lbnQKLSAgSGlMaW5rIHhwbTJQaXhlbFN0cmluZwlTdHJpbmcKLWVuZGlmCiBkZWxjb21tYW5kIEhpTGluawogZGVsY29tbWFuZCBIaQogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC94cy52aW0gYi9ydW50aW1lL3N5bnRheC94cy52aW0KaW5kZXggNmZkMGE0Ni4uOWE5MTQwZiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgveHMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3hzLnZpbQpAQCAtNSwyMCArNSwxMyBAQAogIiBQcmV2aW91czogICAgVmluY2VudCBQaXQgPHBlcmxAcHJvZnZpbmNlLmNvbT4KICIgTGFzdCBDaGFuZ2U6IDIwMTMtMDUtMTIKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKICIgUmVhZCB0aGUgQyBzeW50YXggdG8gc3RhcnQgd2l0aAotaWYgdmVyc2lvbiA8IDYwMAotICBzb3VyY2UgPHNmaWxlPjpwOmgvYy52aW0KLWVsc2UKLSAgcnVudGltZSEgc3ludGF4L2MudmltCi1lbmRpZgorcnVudGltZSEgc3ludGF4L2MudmltCiAKIGxldCB4c19zdXBlcnNlZGVkID0gMSAiIG1hcmsgQyBmdW5jdGlvbnMgc3VwZXJzZWRlZCBieSBQZXJsIHJlcGxhY2VtZW50cwogbGV0IHhzX25vdF9jb3JlICAgPSAxICIgbWFyayBwcml2YXRlIGNvcmUgZnVuY3Rpb25zCkBAIC0zMjQ5LDI5ICszMjQyLDIxIEBACiBzeW4ga2V5d29yZCB4c01hY3JvIHhpdl9pdiB4dXZfdXYgeXlzdHlwZQogCiAiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCi0iIEZvciB2ZXJzaW9uIDUuNyBhbmQgZWFybGllcjogb25seSB3aGVuIG5vdCBkb25lIGFscmVhZHkKLSIgRm9yIHZlcnNpb24gNS44IGFuZCBsYXRlcjogb25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKLWlmIHZlcnNpb24gPj0gNTA4IHx8ICFleGlzdHMoImRpZF94c19zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF94c19zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHhzUHJpdmF0ZSAgICBFcnJvcgotICBIaUxpbmsgeHNTdXBlcnNlZGVkIEVycm9yCi0gIEhpTGluayB4c1R5cGUgICAgICAgVHlwZQotICBIaUxpbmsgeHNTdHJpbmcgICAgIFN0cmluZwotICBIaUxpbmsgeHNDb25zdGFudCAgIENvbnN0YW50Ci0gIEhpTGluayB4c0V4Y2VwdGlvbiAgRXhjZXB0aW9uCi0gIEhpTGluayB4c0tleXdvcmQgICAgS2V5d29yZAotICBIaUxpbmsgeHNGdW5jdGlvbiAgIEZ1bmN0aW9uCi0gIEhpTGluayB4c1ZhcmlhYmxlICAgSWRlbnRpZmllcgotICBIaUxpbmsgeHNNYWNybyAgICAgIE1hY3JvCitIaUxpbmsgeHNQcml2YXRlICAgIEVycm9yCitIaUxpbmsgeHNTdXBlcnNlZGVkIEVycm9yCitIaUxpbmsgeHNUeXBlICAgICAgIFR5cGUKK0hpTGluayB4c1N0cmluZyAgICAgU3RyaW5nCitIaUxpbmsgeHNDb25zdGFudCAgIENvbnN0YW50CitIaUxpbmsgeHNFeGNlcHRpb24gIEV4Y2VwdGlvbgorSGlMaW5rIHhzS2V5d29yZCAgICBLZXl3b3JkCitIaUxpbmsgeHNGdW5jdGlvbiAgIEZ1bmN0aW9uCitIaUxpbmsgeHNWYXJpYWJsZSAgIElkZW50aWZpZXIKK0hpTGluayB4c01hY3JvICAgICAgTWFjcm8KIAotICBkZWxjb21tYW5kIEhpTGluawotZW5kaWYKK2RlbGNvbW1hbmQgSGlMaW5rCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gInhzIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC94eGQudmltIGIvcnVudGltZS9zeW50YXgveHhkLnZpbQppbmRleCBiMmIxZTQ0Li4xMTQ1ZWJjIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC94eGQudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3h4ZC52aW0KQEAgLTYsMTEgKzYsOCBAQAogIiBOb3RlczoJCXVzZSA6aGVscCB4eGQgICB0byBzZWUgaG93IHRvIGludm9rZSBpdAogIiBVUkw6CWh0dHA6Ly93d3cuZHJjaGlwLm9yZy9hc3Ryb25hdXQvdmltL2luZGV4Lmh0bWwjU1lOVEFYX1hYRAogCi0iIEZvciB2ZXJzaW9uIDUueDogQ2xlYXIgYWxsIHN5bnRheCBpdGVtcwotIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZAotaWYgdmVyc2lvbiA8IDYwMAotICBzeW50YXggY2xlYXIKLWVsc2VpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQorIiBxdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIApAQCAtMjAsMjIgKzE3LDE0IEBACiBzeW4gbWF0Y2ggeHhkRG90CWNvbnRhaW5lZAkiWy5ccl0iCiAKICIgRGVmaW5lIHRoZSBkZWZhdWx0IGhpZ2hsaWdodGluZy4KLSIgRm9yIHZlcnNpb24gNS43IGFuZCBlYXJsaWVyOiBvbmx5IHdoZW4gbm90IGRvbmUgYWxyZWFkeQotIiBGb3IgdmVyc2lvbiA1LjggYW5kIGxhdGVyOiBvbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAotaWYgdmVyc2lvbiA+PSA1MDggfHwgIWV4aXN0cygiZGlkX3h4ZF9zeW50YXhfaW5pdHMiKQotICBpZiB2ZXJzaW9uIDwgNTA4Ci0gICAgbGV0IGRpZF94eGRfc3ludGF4X2luaXRzID0gMQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGxpbmsgPGFyZ3M+Ci0gIGVsc2UKLSAgICBjb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBkZWYgbGluayA8YXJncz4KLSAgZW5kaWYKKyIgT25seSB3aGVuIGFuIGl0ZW0gZG9lc24ndCBoYXZlIGhpZ2hsaWdodGluZyB5ZXQKK2NvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgogCi0gSGlMaW5rIHh4ZEFkZHJlc3MJQ29uc3RhbnQKLSBIaUxpbmsgeHhkU2VwCQlJZGVudGlmaWVyCi0gSGlMaW5rIHh4ZEFzY2lpCVN0YXRlbWVudAorSGlMaW5rIHh4ZEFkZHJlc3MJQ29uc3RhbnQKK0hpTGluayB4eGRTZXAJCUlkZW50aWZpZXIKK0hpTGluayB4eGRBc2NpaQlTdGF0ZW1lbnQKIAotIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAieHhkIgogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC95YWNjLnZpbSBiL3J1bnRpbWUvc3ludGF4L3lhY2MudmltCmluZGV4IGM2NTEwOWUuLjg3MzZiYWYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3lhY2MudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3lhY2MudmltCkBAIC0xMCw5ICsxMCw2IEBACiAKICIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAiIHRoaXMgdmVyc2lvbiBvZiBzeW50YXgveWFjYy52aW0gcmVxdWlyZXMgNi4wIG9yIGxhdGVyCi1pZiB2ZXJzaW9uIDwgNjAwCi0gZmluaXNoCi1lbmRpZgogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICBzeW50YXggY2xlYXIKIGVuZGlmCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC96OGEudmltIGIvcnVudGltZS9zeW50YXgvejhhLnZpbQppbmRleCBhM2E4YTJiLi4wNTRmNjM5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC96OGEudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3o4YS52aW0KQEAgLTMsMTEgKzMsOCBAQAogIiBNYWludGFpbmVyOglNaWxhbiBQaWt1bGEgPHd3d0Bmb3JuYXguZWxmLnN0dWJhLnNrPgogIiBMYXN0IENoYW5nZToJMjAwMyBNYXkgMTEKIAotIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKLSIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKLWlmIHZlcnNpb24gPCA2MDAKLSAgc3ludGF4IGNsZWFyCi1lbHNlaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKKyIgcXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCitpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKIGVuZGlmCiAKQEAgLTg1LDMwICs4MiwyMiBAQAogc3luIGNhc2UgbWF0Y2gKIAogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgotIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5Ci0iIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0Ci1pZiB2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfejhhX3N5bnRheF9pbml0cyIpCi0gIGlmIHZlcnNpb24gPCA1MDgKLSAgICBsZXQgZGlkX3o4YV9zeW50YXhfaW5pdHMgPSAxCi0gICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KLSAgZWxzZQotICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgotICBlbmRpZgorIiBPbmx5IHdoZW4gYW4gaXRlbSBkb2Vzbid0IGhhdmUgaGlnaGxpZ2h0aW5nIHlldAorY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+CiAKLSAgSGlMaW5rIHo4YVNlY3Rpb24JCVNwZWNpYWwKLSAgSGlMaW5rIHo4YUxhYmVsCQlMYWJlbAotICBIaUxpbmsgejhhU3BlY2lhbExhYmVsCUxhYmVsCi0gIEhpTGluayB6OGFDb21tZW50CQlDb21tZW50Ci0gIEhpTGluayB6OGFJbnN0cnVjdGlvbglTdGF0ZW1lbnQKLSAgSGlMaW5rIHo4YVNwZWNJbnN0CQlTdGF0ZW1lbnQKLSAgSGlMaW5rIHo4YUluY2x1ZGUJCUluY2x1ZGUKLSAgSGlMaW5rIHo4YVByZUNvbmRpdAkJUHJlQ29uZGl0Ci0gIEhpTGluayB6OGFQcmVQcm9jCQlQcmVQcm9jCi0gIEhpTGluayB6OGFOdW1iZXIJCU51bWJlcgotICBIaUxpbmsgejhhU3RyaW5nCQlTdHJpbmcKK0hpTGluayB6OGFTZWN0aW9uCQlTcGVjaWFsCitIaUxpbmsgejhhTGFiZWwJCUxhYmVsCitIaUxpbmsgejhhU3BlY2lhbExhYmVsCUxhYmVsCitIaUxpbmsgejhhQ29tbWVudAkJQ29tbWVudAorSGlMaW5rIHo4YUluc3RydWN0aW9uCVN0YXRlbWVudAorSGlMaW5rIHo4YVNwZWNJbnN0CQlTdGF0ZW1lbnQKK0hpTGluayB6OGFJbmNsdWRlCQlJbmNsdWRlCitIaUxpbmsgejhhUHJlQ29uZGl0CQlQcmVDb25kaXQKK0hpTGluayB6OGFQcmVQcm9jCQlQcmVQcm9jCitIaUxpbmsgejhhTnVtYmVyCQlOdW1iZXIKK0hpTGluayB6OGFTdHJpbmcJCVN0cmluZwogCi0gIGRlbGNvbW1hbmQgSGlMaW5rCi1lbmRpZgorZGVsY29tbWFuZCBIaUxpbmsKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAiejhhIgogIiB2aW06IHRzPTgK