ZGlmZiAtLWdpdCBhL3J1bnRpbWUvYXV0b2xvYWQvbmV0cncudmltIGIvcnVudGltZS9hdXRvbG9hZC9uZXRydy52aW0KaW5kZXggNjIyMTI5NC4uOGJkNTk3YSAxMDA2NDQKLS0tIGEvcnVudGltZS9hdXRvbG9hZC9uZXRydy52aW0KKysrIGIvcnVudGltZS9hdXRvbG9hZC9uZXRydy52aW0KQEAgLTEsNyArMSw3IEBACiAiIG5ldHJ3LnZpbTogSGFuZGxlcyBmaWxlIHRyYW5zZmVyIGFuZCByZW1vdGUgZGlyZWN0b3J5IGxpc3RpbmcgYWNyb3NzCiAiICAgICAgICAgICAgQVVUT0xPQUQgU0VDVElPTgotIiBEYXRlOgkJSnVsIDEyLCAyMDA4Ci0iIFZlcnNpb246CTEyNworIiBEYXRlOgkJQXVnIDAxLCAyMDA4CisiIFZlcnNpb246CTEzMQogIiBNYWludGFpbmVyOglDaGFybGVzIEUgQ2FtcGJlbGwsIEpyIDxOZHJPY2hpcEBTY2FtcGJlbGxQZmFtaWx5LkFiaXpNLU5PU1BBTT4KICIgR2V0TGF0ZXN0VmltU2NyaXB0czogMTA3NSAxIDpBdXRvSW5zdGFsbDogbmV0cncudmltCiAiIENvcHlyaWdodDogICAgQ29weXJpZ2h0IChDKSAxOTk5LTIwMDggQ2hhcmxlcyBFLiBDYW1wYmVsbCwgSnIuIHt7ezEKQEAgLTI3LDcgKzI3LDcgQEAKICBsZXQgczpXQVJOSU5HID0gMQogIGxldCBzOkVSUk9SICAgPSAyCiBlbmRpZgotbGV0IGc6bG9hZGVkX25ldHJ3ID0gInYxMjciCitsZXQgZzpsb2FkZWRfbmV0cncgPSAidjEzMSIKIAogIiBzYW5pdHkgY2hlY2tzCiBpZiB2OnZlcnNpb24gPCA3MDAKQEAgLTc2LDcgKzc2LDEzIEBACiAgIGxldCBnOm5ldHJ3X2Z0cF9jbWQJPSAiZnRwIgogZW5kaWYKIGlmICFleGlzdHMoImc6bmV0cndfaHR0cF9jbWQiKQotIGlmIGV4ZWN1dGFibGUoImN1cmwiKQorIGlmIGV4ZWN1dGFibGUoImVsaW5rcyIpCisgIGxldCBnOm5ldHJ3X2h0dHBfY21kID0gImVsaW5rcyIKKyAgbGV0IGc6bmV0cndfaHR0cF94Y21kPSAiLWR1bXAgPiIKKyBlbHNlaWYgZXhlY3V0YWJsZSgibGlua3MiKQorICBsZXQgZzpuZXRyd19odHRwX2NtZCA9ICJsaW5rcyIKKyAgbGV0IGc6bmV0cndfaHR0cF94Y21kPSAiLWR1bXAgPiIKKyBlbHNlaWYgZXhlY3V0YWJsZSgiY3VybCIpCiAgIGxldCBnOm5ldHJ3X2h0dHBfY21kCT0gImN1cmwgLW8iCiAgZWxzZWlmIGV4ZWN1dGFibGUoIndnZXQiKQogICBsZXQgZzpuZXRyd19odHRwX2NtZAk9ICJ3Z2V0IC1xIC1PIgpAQCAtMzU5LDYgKzM2NSw3IEBACiBpZiAhZXhpc3RzKCJnOm5ldHJ3X3RtcGZpbGVfZXNjYXBlIikKICBsZXQgZzpuZXRyd190bXBmaWxlX2VzY2FwZT0gJyAmOycKIGVuZGlmCitsZXQgczpuZXRyd19tYXBfZXNjYXBlID0gIjx8XG5cclxcXDxDLVY+XCIiCiAKICIgQnVmRW50ZXIgZXZlbnQgaWdub3JlZCBieSBkZWNobyB3aGVuIGZvbGxvd2luZyB2YXJpYWJsZSBpcyB0cnVlCiAiICBIYXMgYSBzaWRlIGVmZmVjdCB0aGF0IGRvYXUgQnVmUmVhZFBvc3QgZG9lc24ndCB3b3JrLCBzbwpAQCAtNzEyLDE1ICs3MTksMTYgQEAKICIgICAgIGNhbGwgRGVjaG8oInJlYWQgdmlhIGZ0cCsubmV0cmMgKG1ldGhvZCAjMikiKQogICAgICBsZXQgbmV0cndfZm5hbWU9IGI6bmV0cndfZm5hbWUKICAgICAgY2FsbCBzOlNhdmVCdWZWYXJzKCl8bmV3fGNhbGwgczpSZXN0b3JlQnVmVmFycygpCisgICAgIGxldCBmaWx0YnVmPSBidWZucigiJSIpCiAgICAgIHNldGxvY2FsIGZmPXVuaXgKLSAgICAgZXhlICJwdXQgPSciLmc6bmV0cndfZnRwbW9kZS4iJyIKLSIgICAgIGNhbGwgRGVjaG8oImZpbHRlciBpbnB1dDogIi5nZXRsaW5lKCcuJykpCisgICAgIHB1dCA9ZzpuZXRyd19mdHBtb2RlCisiICAgICBjYWxsIERlY2hvKCJmaWx0ZXIgaW5wdXQ6ICIuZ2V0bGluZShsaW5lKCIkIikpKQogICAgICBpZiBleGlzdHMoImc6bmV0cndfZnRwZXh0cmFjbWQiKQotICAgICAgZXhlICJwdXQgPSciLmc6bmV0cndfZnRwZXh0cmFjbWQuIiciCi0iICAgICAgY2FsbCBEZWNobygiZmlsdGVyIGlucHV0OiAiLmdldGxpbmUoJy4nKSkKKyAgICAgIHB1dCA9ZzpuZXRyd19mdHBleHRyYWNtZAorIiAgICAgIGNhbGwgRGVjaG8oImZpbHRlciBpbnB1dDogIi5nZXRsaW5lKGxpbmUoIiQiKSkpCiAgICAgIGVuZGlmCi0gICAgIGV4ZSAicHV0ID0nIi4nZ2V0IFwiJy5uZXRyd19mbmFtZS4nXCIgJy50bXBmaWxlLiInIgotIiAgICAgY2FsbCBEZWNobygiZmlsdGVyIGlucHV0OiAiLmdldGxpbmUoJy4nKSkKKyAgICAgY2FsbCBzZXRsaW5lKGxpbmUoIiQiKSsxLCdnZXQgIicubmV0cndfZm5hbWUuJyIgJy50bXBmaWxlKQorIiAgICAgY2FsbCBEZWNobygiZmlsdGVyIGlucHV0OiAiLmdldGxpbmUobGluZSgiJCIpKSkKICAgICAgaWYgZXhpc3RzKCJnOm5ldHJ3X3BvcnQiKSAmJiBnOm5ldHJ3X3BvcnQgIT0gIiIKICIgICAgICBjYWxsIERlY2hvKCJleGVjdXRpbmc6ICUhIi5nOm5ldHJ3X2Z0cF9jbWQuIiAtaSAiLnNoZWxsZXNjYXBlKGc6bmV0cndfbWFjaGluZS4iICIuZzpuZXRyd19wb3J0LDEpKQogICAgICAgZXhlIHM6bmV0cndfc2lsZW50eGZlci4iJSEiLmc6bmV0cndfZnRwX2NtZC4iIC1pICIuc2hlbGxlc2NhcGUoZzpuZXRyd19tYWNoaW5lLiIgIi5nOm5ldHJ3X3BvcnQsMSkKQEAgLTc0Niw2ICs3NTQsNyBAQAogIiAgICBjYWxsIERlY2hvKCJyZWFkIHZpYSBmdHArbWlwZiAobWV0aG9kICMzKSIpCiAgICAgbGV0IG5ldHJ3X2ZuYW1lPSBlc2NhcGUoYjpuZXRyd19mbmFtZSxnOm5ldHJ3X2ZuYW1lX2VzY2FwZSkKICAgICBjYWxsIHM6U2F2ZUJ1ZlZhcnMoKXxuZXd8Y2FsbCBzOlJlc3RvcmVCdWZWYXJzKCkKKyAgICBsZXQgZmlsdGJ1Zj0gYnVmbnIoIiUiKQogICAgIHNldGxvY2FsIGZmPXVuaXgKICAgICBpZiBleGlzdHMoImc6bmV0cndfcG9ydCIpICYmIGc6bmV0cndfcG9ydCAhPSAiIgogICAgICBwdXQgPSdvcGVuICcuZzpuZXRyd19tYWNoaW5lLicgJy5nOm5ldHJ3X3BvcnQKQEAgLTc3MCw3ICs3NzksNyBAQAogIiAgICAgY2FsbCBEZWNobygiZmlsdGVyIGlucHV0OiAiLmdldGxpbmUoJy4nKSkKICAgICBlbmRpZgogICAgIGlmIGV4aXN0cygiZzpuZXRyd19mdHBleHRyYWNtZCIpCi0gICAgIGV4ZSAicHV0ID0nIi5nOm5ldHJ3X2Z0cGV4dHJhY21kLiInIgorICAgICBwdXQgPWc6bmV0cndfZnRwZXh0cmFjbWQKICIgICAgIGNhbGwgRGVjaG8oImZpbHRlciBpbnB1dDogIi5nZXRsaW5lKCcuJykpCiAgICAgZW5kaWYKICAgICBwdXQgPSdnZXQgXCInLm5ldHJ3X2ZuYW1lLidcIiAnLnRtcGZpbGUKQEAgLTgyMCwxNSArODI5LDIwIEBACiAgICAgIHJldHVybgogICAgIGVuZGlmCiAKLSAgICBpZiBtYXRjaChiOm5ldHJ3X2ZuYW1lLCIjIikgPT0gLTEKLSAgICAgIiB1c2luZyBnOm5ldHJ3X2h0dHBfY21kICh1c3VhbGx5IHdnZXQgb3IgY3VybCkKKyAgICBpZiBtYXRjaChiOm5ldHJ3X2ZuYW1lLCIjIikgPT0gLTEgfHwgZXhpc3RzKCJnOm5ldHJ3X2h0dHBfeGNtZCIpCisgICAgICIgdXNpbmcgZzpuZXRyd19odHRwX2NtZCAodXN1YWxseSBlbGlua3MsIGxpbmtzLCBjdXJsLCB3Z2V0LCBvciBmZXRjaCkKICIgICAgIGNhbGwgRGVjaG8oJ3VzaW5nICcuZzpuZXRyd19odHRwX2NtZC4nICgjIG5vdCBpbiBiOm5ldHJ3X2ZuYW1lPCcuYjpuZXRyd19mbmFtZS4iPikiKQotIiAgICAgY2FsbCBEZWNobygiZXhlICIuczpuZXRyd19zaWxlbnR4ZmVyLiIhIi5nOm5ldHJ3X2h0dHBfY21kLiIgIi5zaGVsbGVzY2FwZSh0bXBmaWxlLDEpLiIgIi5zaGVsbGVzY2FwZSgiaHR0cDovLyIuZzpuZXRyd19tYWNoaW5lLm5ldHJ3X2ZuYW1lLDEpKQotICAgICBleGUgczpuZXRyd19zaWxlbnR4ZmVyLiIhIi5nOm5ldHJ3X2h0dHBfY21kLiIgIi5zaGVsbGVzY2FwZSh0bXBmaWxlLDEpLiIgIi5zaGVsbGVzY2FwZSgiaHR0cDovLyIuZzpuZXRyd19tYWNoaW5lLmI6bmV0cndfZm5hbWUsMSkKKyAgICAgaWYgZXhpc3RzKCJnOm5ldHJ3X2h0dHBfeGNtZCIpCisiICAgICAgY2FsbCBEZWNobygiZXhlICIuczpuZXRyd19zaWxlbnR4ZmVyLiIhIi5nOm5ldHJ3X2h0dHBfY21kLiIgIi5zaGVsbGVzY2FwZSgiaHR0cDovLyIuZzpuZXRyd19tYWNoaW5lLmI6bmV0cndfZm5hbWUsMSkuIiAiLmc6bmV0cndfaHR0cF94Y21kLiIgIi5zaGVsbGVzY2FwZSh0bXBmaWxlLDEpKQorICAgICAgZXhlIHM6bmV0cndfc2lsZW50eGZlci4iISIuZzpuZXRyd19odHRwX2NtZC4iICIuc2hlbGxlc2NhcGUoImh0dHA6Ly8iLmc6bmV0cndfbWFjaGluZS5iOm5ldHJ3X2ZuYW1lLDEpLiIgIi5nOm5ldHJ3X2h0dHBfeGNtZC4iICIuc2hlbGxlc2NhcGUodG1wZmlsZSwxKQorICAgICBlbHNlCisiICAgICAgY2FsbCBEZWNobygiZXhlICIuczpuZXRyd19zaWxlbnR4ZmVyLiIhIi5nOm5ldHJ3X2h0dHBfY21kLiIgIi5zaGVsbGVzY2FwZSh0bXBmaWxlLDEpLiIgIi5zaGVsbGVzY2FwZSgiaHR0cDovLyIuZzpuZXRyd19tYWNoaW5lLmI6bmV0cndfZm5hbWUsMSkpCisgICAgICBleGUgczpuZXRyd19zaWxlbnR4ZmVyLiIhIi5nOm5ldHJ3X2h0dHBfY21kLiIgIi5zaGVsbGVzY2FwZSh0bXBmaWxlLDEpLiIgIi5zaGVsbGVzY2FwZSgiaHR0cDovLyIuZzpuZXRyd19tYWNoaW5lLmI6bmV0cndfZm5hbWUsMSkKKyAgICAgZW5kaWYKICAgICAgbGV0IHJlc3VsdCA9IHM6TmV0cndHZXRGaWxlKHJlYWRjbWQsIHRtcGZpbGUsIGI6bmV0cndfbWV0aG9kKQogCiAgICAgZWxzZQotICAgICAiIHdnZXQvY3VybCBwbHVzIGEganVtcCB0byBhbiBpbi1wYWdlIG1hcmtlciAoaWUuIGh0dHA6Ly9hYmMvZGVmLmh0bWwjYU1hcmtlcikKKyAgICAgIiB3Z2V0L2N1cmwvZmV0Y2ggcGx1cyBhIGp1bXAgdG8gYW4gaW4tcGFnZSBtYXJrZXIgKGllLiBodHRwOi8vYWJjL2RlZi5odG1sI2FNYXJrZXIpCiAiICAgICBjYWxsIERlY2hvKCgid2dldC9jdXJsIHBsdXMganVtcCAoIyBpbiBiOm5ldHJ3X2ZuYW1lPCIuYjpuZXRyd19mbmFtZS4iPikiKQogICAgICBsZXQgbmV0cndfaHRtbD0gc3Vic3RpdHV0ZShiOm5ldHJ3X2ZuYW1lLCIjLiokIiwiIiwiIikKICAgICAgbGV0IG5ldHJ3X3RhZyA9IHN1YnN0aXR1dGUoYjpuZXRyd19mbmFtZSwiXi4qIyIsIiIsIiIpCkBAIC0xMDg0LDE0ICsxMDk4LDE0IEBACiAgICAgbmV3CiAiICAgIGNhbGwgRGVjaG8oImZpbHRlciBpbnB1dCB3aW5kb3cjIi53aW5ucigpKQogICAgIHNldGxvY2FsIGZmPXVuaXgKLSAgICBleGUgInB1dCA9JyIuZzpuZXRyd19mdHBtb2RlLiInIgotIiAgICBjYWxsIERlY2hvKCJmaWx0ZXIgaW5wdXQ6ICIuZ2V0bGluZSgnLicpKQorICAgIHB1dCA9ZzpuZXRyd19mdHBtb2RlCisiICAgIGNhbGwgRGVjaG8oImZpbHRlciBpbnB1dDogIi5nZXRsaW5lKCckJykpCiAgICAgaWYgZXhpc3RzKCJnOm5ldHJ3X2Z0cGV4dHJhY21kIikKLSAgICAgZXhlICJwdXQgPSciLmc6bmV0cndfZnRwZXh0cmFjbWQuIiciCi0iICAgICBjYWxsIERlY2hvKCJmaWx0ZXIgaW5wdXQ6ICIuZ2V0bGluZSgnLicpKQorICAgICBwdXQgPWc6bmV0cndfZnRwZXh0cmFjbWQKKyIgICAgIGNhbGwgRGVjaG8oImZpbHRlciBpbnB1dDogIi5nZXRsaW5lKCIkIikpCiAgICAgZW5kaWYKLSAgICBleGUgInB1dCA9JyIuJ3B1dCBcIicudG1wZmlsZS4nXCIgXCInLm5ldHJ3X2ZuYW1lLidcIicuIiciCi0iICAgIGNhbGwgRGVjaG8oImZpbHRlciBpbnB1dDogIi5nZXRsaW5lKCcuJykpCisgICAgY2FsbCBzZXRsaW5lKGxpbmUoIiQiKSsxLCdwdXQgIicudG1wZmlsZS4nIiAiJy5uZXRyd19mbmFtZS4nIicpCisiICAgIGNhbGwgRGVjaG8oImZpbHRlciBpbnB1dDogIi5nZXRsaW5lKCIkIikpCiAgICAgaWYgZXhpc3RzKCJnOm5ldHJ3X3BvcnQiKSAmJiBnOm5ldHJ3X3BvcnQgIT0gIiIKICIgICAgIGNhbGwgRGVjaG8oImV4ZWN1dGluZzogJSEiLmc6bmV0cndfZnRwX2NtZC4iIC1pICIuc2hlbGxlc2NhcGUoZzpuZXRyd19tYWNoaW5lLDEpLiIgIi5zaGVsbGVzY2FwZShnOm5ldHJ3X3BvcnQsMSkpCiAgICAgIGV4ZSBzOm5ldHJ3X3NpbGVudHhmZXIuIiUhIi5nOm5ldHJ3X2Z0cF9jbWQuIiAtaSAiLnNoZWxsZXNjYXBlKGc6bmV0cndfbWFjaGluZSwxKS4iICIuc2hlbGxlc2NhcGUoZzpuZXRyd19wb3J0LDEpCkBAIC0xMjc2LDEwICsxMjkwLDExIEBACiAgICBsZXQgaT0gMQogICAgd2hpbGUgaSA8PSBhOjAKICAgICBjYWxsIG5ldHJ3I05ldFJlYWQoMyxhOntpfSkKLSIgICAgY2FsbCBEZWNobygiczpuZXRyZWFkX3RtcGZpbGU8Ii5zOm5ldHJ3X3RtcGZpbGUuIj4iKQorIiAgICBjYWxsIERlY2hvKCIobmV0cncjTmV0U291cmNlKSBzOm5ldHJlYWRfdG1wZmlsZTwiLnM6bmV0cndfdG1wZmlsZS4iPiIpCiAgICAgaWYgczpGaWxlUmVhZGFibGUoczpuZXRyd190bXBmaWxlKQotIiAgICAgY2FsbCBEZWNobygiZXhlIHNvICIuczpuZXRyd190bXBmaWxlKQotICAgICBleGUgInNvICIuczpuZXRyd190bXBmaWxlCisiICAgICBjYWxsIERlY2hvKCIobmV0cncjTmV0U291cmNlKSBleGUgc28gIi5mbmFtZWVzY2FwZShzOm5ldHJ3X3RtcGZpbGUpKQorICAgICBleGUgInNvICIuZm5hbWVlc2NhcGUoczpuZXRyd190bXBmaWxlKQorIiAgICAgY2FsbCBEZWNobygiKG5ldHJ3I05ldFNvdXJjZSkgZGVsZXRlKCIuczpuZXRyd190bXBmaWxlLiIpIikKICAgICAgY2FsbCBkZWxldGUoczpuZXRyd190bXBmaWxlKQogICAgICB1bmxldCBzOm5ldHJ3X3RtcGZpbGUKICAgICBlbHNlCkBAIC0xNjU0LDYgKzE2NjksNyBAQAogZnVuISBzOkJyb3dzZXJNYXBzKGlzbG9jYWwpCiAiICBjYWxsIERmdW5jKCJzOkJyb3dzZXJNYXBzKGlzbG9jYWw9Ii5hOmlzbG9jYWwuIikgYjpuZXRyd19jdXJkaXI8Ii5iOm5ldHJ3X2N1cmRpci4iPiIpCiAgIGlmIGE6aXNsb2NhbAorIiAgIGNhbGwgRGVjaG8oIm1ha2UgbG9jYWwgbWFwcyIpCiAgICBubm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiA8Y3I+CTpjYWxsIG5ldHJ3I0xvY2FsQnJvd3NlQ2hlY2soPFNJRD5OZXRyd0Jyb3dzZUNoZ0RpcigxLDxTSUQ+TmV0cndHZXRXb3JkKCkpKTxjcj4KICAgIG5ub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IC0JCTpleGUgIm5vcm0hIDAiPGJhcj5jYWxsIG5ldHJ3I0xvY2FsQnJvd3NlQ2hlY2soPFNJRD5OZXRyd0Jyb3dzZUNoZ0RpcigxLCcuLi8nKSk8Y3I+CiAgICBubm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiBhCQk6Y2FsbCA8U0lEPk5ldHJ3SGlkZSgxKTxjcj4KQEAgLTE3MDksMjMgKzE3MjUsMjUgQEAKICAgIGlmIHM6ZGlkc3RhcnN0YXIgfHwgIW1hcGNoZWNrKCI8cy11cD4iLCJuIikKICAgICBubm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiA8cy11cD4JOlBleHBsb3JlPGNyPgogICAgZW5kaWYKKyAgIGxldCBtYXBzYWZlY3VyZGlyID0gZXNjYXBlKGI6bmV0cndfY3VyZGlyLCBzOm5ldHJ3X21hcF9lc2NhcGUpCiAgICBpZiBnOm5ldHJ3X21vdXNlbWFwcyA9PSAxCiAgICAgbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gPGxlZnRtb3VzZT4gICA8bGVmdG1vdXNlPjpjYWxsIDxTSUQ+TmV0cndMZWZ0bW91c2UoMSk8Y3I+CiAgICAgbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gPG1pZGRsZW1vdXNlPiA8bGVmdG1vdXNlPjpjYWxsIDxTSUQ+TmV0cndQcmV2V2luT3BlbigxKTxjcj4KICAgICBubm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiA8cy1sZWZ0bW91c2U+IDxsZWZ0bW91c2U+OmNhbGwgPFNJRD5OZXRyd01hcmtGaWxlKDEsPFNJRD5OZXRyd0dldFdvcmQoKSk8Y3I+Ci0gICAgZXhlICdubm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiA8cmlnaHRtb3VzZT4gIDxsZWZ0bW91c2U+OmNhbGwgPFNJRD5OZXRyd0xvY2FsUm0oIicuYjpuZXRyd19jdXJkaXIuJyIpPGNyPicKLSAgICBleGUgJ3Zub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IDxyaWdodG1vdXNlPiAgPGxlZnRtb3VzZT46Y2FsbCA8U0lEPk5ldHJ3TG9jYWxSbSgiJy5iOm5ldHJ3X2N1cmRpci4nIik8Y3I+JworICAgIGV4ZSAnbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gPHJpZ2h0bW91c2U+ICA8bGVmdG1vdXNlPjpjYWxsIDxTSUQ+TmV0cndMb2NhbFJtKCInLm1hcHNhZmVjdXJkaXIuJyIpPGNyPicKKyAgICBleGUgJ3Zub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IDxyaWdodG1vdXNlPiAgPGxlZnRtb3VzZT46Y2FsbCA8U0lEPk5ldHJ3TG9jYWxSbSgiJy5tYXBzYWZlY3VyZGlyLiciKTxjcj4nCiAgICBlbmRpZgotICAgZXhlICdubm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiA8ZGVsPgk6Y2FsbCA8U0lEPk5ldHJ3TG9jYWxSbSgiJy5iOm5ldHJ3X2N1cmRpci4nIik8Y3I+JwotICAgZXhlICd2bm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiA8ZGVsPgk6Y2FsbCA8U0lEPk5ldHJ3TG9jYWxSbSgiJy5iOm5ldHJ3X2N1cmRpci4nIik8Y3I+JwotICAgZXhlICdubm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiBECQk6Y2FsbCA8U0lEPk5ldHJ3TG9jYWxSbSgiJy5iOm5ldHJ3X2N1cmRpci4nIik8Y3I+JwotICAgZXhlICd2bm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiBECQk6Y2FsbCA8U0lEPk5ldHJ3TG9jYWxSbSgiJy5iOm5ldHJ3X2N1cmRpci4nIik8Y3I+JwotICAgZXhlICdubm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiBSCQk6Y2FsbCA8U0lEPk5ldHJ3TG9jYWxSZW5hbWUoIicuYjpuZXRyd19jdXJkaXIuJyIpPGNyPicKLSAgIGV4ZSAndm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gUgkJOmNhbGwgPFNJRD5OZXRyd0xvY2FsUmVuYW1lKCInLmI6bmV0cndfY3VyZGlyLiciKTxjcj4nCisgICBleGUgJ25ub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IDxkZWw+CTpjYWxsIDxTSUQ+TmV0cndMb2NhbFJtKCInLm1hcHNhZmVjdXJkaXIuJyIpPGNyPicKKyAgIGV4ZSAndm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gPGRlbD4JOmNhbGwgPFNJRD5OZXRyd0xvY2FsUm0oIicubWFwc2FmZWN1cmRpci4nIik8Y3I+JworICAgZXhlICdubm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiBECQk6Y2FsbCA8U0lEPk5ldHJ3TG9jYWxSbSgiJy5tYXBzYWZlY3VyZGlyLiciKTxjcj4nCisgICBleGUgJ3Zub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IEQJCTpjYWxsIDxTSUQ+TmV0cndMb2NhbFJtKCInLm1hcHNhZmVjdXJkaXIuJyIpPGNyPicKKyAgIGV4ZSAnbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gUgkJOmNhbGwgPFNJRD5OZXRyd0xvY2FsUmVuYW1lKCInLm1hcHNhZmVjdXJkaXIuJyIpPGNyPicKKyAgIGV4ZSAndm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gUgkJOmNhbGwgPFNJRD5OZXRyd0xvY2FsUmVuYW1lKCInLm1hcHNhZmVjdXJkaXIuJyIpPGNyPicKICAgIGV4ZSAnbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gPExlYWRlcj5tCTpjYWxsIDxTSUQ+TmV0cndNYWtlRGlyKCIiKTxjcj4nCiAgICBubm9yZW1hcCA8YnVmZmVyPiA8RjE+CQk6aGUgbmV0cnctcXVpY2toZWxwPGNyPgogCiAgIGVsc2UgIiByZW1vdGUKKyIgICBjYWxsIERlY2hvKCJtYWtlIHJlbW90ZSBtYXBzIikKICAgIGNhbGwgczpSZW1vdGVQYXRoQW5hbHlzaXMoYjpuZXRyd19jdXJkaXIpCiAgICBubm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiA8Y3I+CTpjYWxsIDxTSUQ+TmV0cndCcm93c2UoMCw8U0lEPk5ldHJ3QnJvd3NlQ2hnRGlyKDAsPFNJRD5OZXRyd0dldFdvcmQoKSkpPGNyPgogICAgbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gPGMtbD4JOmNhbGwgPFNJRD5OZXRyd1JlZnJlc2goMCw8U0lEPk5ldHJ3QnJvd3NlQ2hnRGlyKDAsJy4vJykpPGNyPgpAQCAtMTc3NCwyMSArMTc5MiwyNSBAQAogICAgaWYgIWhhc21hcHRvKCc8UGx1Zz5OZXRyd1JlZnJlc2gnKQogICAgIG5tYXAgPGJ1ZmZlcj4gPGMtbD4gPFBsdWc+TmV0cndSZWZyZXNoCiAgICBlbmRpZgorCisgICBsZXQgbWFwc2FmZXBhdGggICAgID0gZXNjYXBlKHM6cGF0aCwgczpuZXRyd19tYXBfZXNjYXBlKQorICAgbGV0IG1hcHNhZmV1c2VybWFjaCA9IGVzY2FwZShzOnVzZXIuczptYWNoaW5lLCBzOm5ldHJ3X21hcF9lc2NhcGUpCisKICAgIG5ub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IDxQbHVnPk5ldHJ3UmVmcmVzaAkJOmNhbGwgPFNJRD5OZXRyd1JlZnJlc2goMCw8U0lEPk5ldHJ3QnJvd3NlQ2hnRGlyKDAsJy4vJykpPGNyPgogICAgaWYgZzpuZXRyd19tb3VzZW1hcHMgPT0gMQogICAgIG5ub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IDxsZWZ0bW91c2U+ICAgPGxlZnRtb3VzZT46Y2FsbCA8U0lEPk5ldHJ3TGVmdG1vdXNlKDApPGNyPgogICAgIG5ub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IDxtaWRkbGVtb3VzZT4gPGxlZnRtb3VzZT46Y2FsbCA8U0lEPk5ldHJ3UHJldldpbk9wZW4oMCk8Y3I+CiAgICAgbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gPHMtbGVmdG1vdXNlPiA8bGVmdG1vdXNlPjpjYWxsIDxTSUQ+TmV0cndNYXJrRmlsZSgwLDxTSUQ+TmV0cndHZXRXb3JkKCkpPGNyPgotICAgIGV4ZSAnbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gPHJpZ2h0bW91c2U+IDxsZWZ0bW91c2U+OmNhbGwgPFNJRD5OZXRyd1JlbW90ZVJtKCInLnM6dXNlci5zOm1hY2hpbmUuJyIsIicuczpwYXRoLiciKTxjcj4nCi0gICAgZXhlICd2bm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiA8cmlnaHRtb3VzZT4gPGxlZnRtb3VzZT46Y2FsbCA8U0lEPk5ldHJ3UmVtb3RlUm0oIicuczp1c2VyLnM6bWFjaGluZS4nIiwiJy5zOnBhdGguJyIpPGNyPicKKyAgICBleGUgJ25ub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IDxyaWdodG1vdXNlPiA8bGVmdG1vdXNlPjpjYWxsIDxTSUQ+TmV0cndSZW1vdGVSbSgiJy5tYXBzYWZldXNlcm1hY2guJyIsIicubWFwc2FmZXBhdGguJyIpPGNyPicKKyAgICBleGUgJ3Zub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IDxyaWdodG1vdXNlPiA8bGVmdG1vdXNlPjpjYWxsIDxTSUQ+TmV0cndSZW1vdGVSbSgiJy5tYXBzYWZldXNlcm1hY2guJyIsIicubWFwc2FmZXBhdGguJyIpPGNyPicKICAgIGVuZGlmCi0gICBleGUgJ25ub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IDxkZWw+CTpjYWxsIDxTSUQ+TmV0cndSZW1vdGVSbSgiJy5zOnVzZXIuczptYWNoaW5lLiciLCInLnM6cGF0aC4nIik8Y3I+JwotICAgZXhlICd2bm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiA8ZGVsPgk6Y2FsbCA8U0lEPk5ldHJ3UmVtb3RlUm0oIicuczp1c2VyLnM6bWFjaGluZS4nIiwiJy5zOnBhdGguJyIpPGNyPicKLSAgIGV4ZSAnbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gZAk6Y2FsbCA8U0lEPk5ldHJ3TWFrZURpcigiJy5zOnVzZXIuczptYWNoaW5lLiciKTxjcj4nCi0gICBleGUgJ25ub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IEQJOmNhbGwgPFNJRD5OZXRyd1JlbW90ZVJtKCInLnM6dXNlci5zOm1hY2hpbmUuJyIsIicuczpwYXRoLiciKTxjcj4nCi0gICBleGUgJ3Zub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IEQJOmNhbGwgPFNJRD5OZXRyd1JlbW90ZVJtKCInLnM6dXNlci5zOm1hY2hpbmUuJyIsIicuczpwYXRoLiciKTxjcj4nCi0gICBleGUgJ25ub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IFIJOmNhbGwgPFNJRD5OZXRyd1JlbW90ZVJlbmFtZSgiJy5zOnVzZXIuczptYWNoaW5lLiciLCInLnM6cGF0aC4nIik8Y3I+JwotICAgZXhlICd2bm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiBSCTpjYWxsIDxTSUQ+TmV0cndSZW1vdGVSZW5hbWUoIicuczp1c2VyLnM6bWFjaGluZS4nIiwiJy5zOnBhdGguJyIpPGNyPicKKyAgIGV4ZSAnbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gPGRlbD4JOmNhbGwgPFNJRD5OZXRyd1JlbW90ZVJtKCInLm1hcHNhZmV1c2VybWFjaC4nIiwiJy5tYXBzYWZlcGF0aC4nIik8Y3I+JworICAgZXhlICd2bm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiA8ZGVsPgk6Y2FsbCA8U0lEPk5ldHJ3UmVtb3RlUm0oIicubWFwc2FmZXVzZXJtYWNoLiciLCInLm1hcHNhZmVwYXRoLiciKTxjcj4nCisgICBleGUgJ25ub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IGQJOmNhbGwgPFNJRD5OZXRyd01ha2VEaXIoIicubWFwc2FmZXVzZXJtYWNoLiciKTxjcj4nCisgICBleGUgJ25ub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IEQJOmNhbGwgPFNJRD5OZXRyd1JlbW90ZVJtKCInLm1hcHNhZmV1c2VybWFjaC4nIiwiJy5tYXBzYWZlcGF0aC4nIik8Y3I+JworICAgZXhlICd2bm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiBECTpjYWxsIDxTSUQ+TmV0cndSZW1vdGVSbSgiJy5tYXBzYWZldXNlcm1hY2guJyIsIicubWFwc2FmZXBhdGguJyIpPGNyPicKKyAgIGV4ZSAnbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gUgk6Y2FsbCA8U0lEPk5ldHJ3UmVtb3RlUmVuYW1lKCInLm1hcHNhZmV1c2VybWFjaC4nIiwiJy5tYXBzYWZlcGF0aC4nIik8Y3I+JworICAgZXhlICd2bm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiBSCTpjYWxsIDxTSUQ+TmV0cndSZW1vdGVSZW5hbWUoIicubWFwc2FmZXVzZXJtYWNoLiciLCInLm1hcHNhZmVwYXRoLiciKTxjcj4nCiAgICBubm9yZW1hcCA8YnVmZmVyPiA8RjE+CQkJOmhlIG5ldHJ3LXF1aWNraGVscDxjcj4KICAgZW5kaWYKICAgY2FsbCBzOlNldFJleERpcihhOmlzbG9jYWwsYjpuZXRyd19jdXJkaXIpCkBAIC0xODQyLDcgKzE4NjQsNyBAQAogICAgIiBjaGFuZ2UgdG8gdGhlIGJvb2ttYXJrZWQgZGlyZWN0b3J5CiAiICAgY2FsbCBEZWNobygiKHVzZXI6IDxCPikgY2hhbmdlIHRvIHRoZSBib29rbWFya2VkIGRpcmVjdG9yeSIpCiAgICBpZiBleGlzdHMoImc6TkVUUldfQk9PS01BUktESVJfe3Y6Y291bnR9IikKLSAgICBleGUgImUgIi5nOk5FVFJXX0JPT0tNQVJLRElSX3t2OmNvdW50fQorICAgIGV4ZSAiZSAiLmZuYW1lZXNjYXBlKGc6TkVUUldfQk9PS01BUktESVJfe3Y6Y291bnR9KQogICAgZWxzZQogICAgIGVjaG9tc2cgIlNvcnJ5LCBib29rbWFyayMiLnY6Y291bnQuIiBkb2Vzbid0IGV4aXN0ISIKICAgIGVuZGlmCkBAIC0yMzQwLDggKzIzNjIsOCBAQAogIiAgICBsZXQgdjplcnJtc2c9ICIiICIgRGVjaG8KICAgICBsZXQgZXNjZGlybmFtZT0gZm5hbWVlc2NhcGUoZGlybmFtZSkKICIgICAgY2FsbCBEZWNobygiICBlcnJtc2c8Ii52OmVycm1zZy4iPiBidWZucigiLmVzY2Rpcm5hbWUuIik9Ii5idWZucihlc2NkaXJuYW1lKS4iPCIuYnVmbmFtZShidWZucihlc2NkaXJuYW1lKSkuIj4iKQotIiAgICBjYWxsIERlY2hvKCcgIGV4ZSBzaWxlbnQhIGtlZXBhbHQgZmlsZSAnLmZuYW1lZXNjYXBlKGVzY2Rpcm5hbWUpKQotICAgIGV4ZSAnc2lsZW50ISBrZWVwYWx0IGZpbGUgJy5mbmFtZWVzY2FwZShlc2NkaXJuYW1lKQorIiAgICBjYWxsIERlY2hvKCcgIGV4ZSBzaWxlbnQhIGtlZXBhbHQgZmlsZSAnLmVzY2Rpcm5hbWUpCisgICAgZXhlICdzaWxlbnQhIGtlZXBhbHQgZmlsZSAnLmVzY2Rpcm5hbWUKICIgICAgY2FsbCBEZWNobygiICBlcnJtc2c8Ii52OmVycm1zZy4iPiBidWZucigiLmVzY2Rpcm5hbWUuIik9Ii5idWZucihlc2NkaXJuYW1lKS4iPCIuYnVmbmFtZShidWZucihlc2NkaXJuYW1lKSkuIj4iKQogICAgZW5kaWYKICIgICBjYWxsIERlY2hvKCIgIG5hbWVkIGVuZXcgYnVmZmVyIyIuYnVmbnIoIiUiKS4iPCIuYnVmbmFtZSgiJSIpLiI+IikKQEAgLTMyNzMsNyArMzI5NSw3IEBACiAgICAgIGlmIHN0YXJwYXQgPT0gMQogICAgICAgIiBzdGFycGF0PTE6IEV4cGxvcmUgKi8vcGF0dGVybiAgKGN1cnJlbnQgZGlyZWN0b3J5IG9ubHkgc2VhcmNoIGZvciBmaWxlcyBjb250YWluaW5nIHBhdHRlcm4pCiAiICAgICAgY2FsbCBEZWNobygic3RhcnBhdD0iLnN0YXJwYXQuIjogYnVpbGQgKi8vcGF0dGVybiBsaXN0IikKLSAgICAgIGV4ZSAidmltZ3JlcCAvIi5wYXR0ZXJuLiIvZ2ogIi5iOm5ldHJ3X2N1cmRpci4iLyoiCisgICAgICBleGUgInZpbWdyZXAgLyIucGF0dGVybi4iL2dqICIuZm5hbWVlc2NhcGUoYjpuZXRyd19jdXJkaXIpLiIvKiIKICAgICAgIGxldCB3Om5ldHJ3X2V4cGxvcmVfbGlzdCA9IG1hcChnZXRxZmxpc3QoKSwnYnVmbmFtZSh2OnZhbC5idWZuciknKQogICAgICAgaWYgJmhscyB8IGxldCBrZWVwcmVnc2xhc2g9IHM6RXhwbG9yZVBhdEhscyhwYXR0ZXJuKSB8IGVuZGlmCiAKQEAgLTM3MDcsNiArMzcyOSwxNCBAQAogIiAgICAgICAgICAgICAgICAgIG9mIHdoYXRldmVyIG1heSBoYXBwZW4gdG8gYmUgdW5kZXIgdGhlIGN1cnNvciBhdCB0aGF0CiAiICAgICAgICAgICAgICAgICAgbW9tZW50LiAgV2hlbiB0aGUgbW91c2UgYW5kIGd1aSBhcmUgYXZhaWxhYmxlLAogIiAgICAgICAgICAgICAgICAgIHNoaWZ0LWxlZnRtb3VzZSBtYXkgYWxzbyBiZSB1c2VkIHRvIG1hcmsgZmlsZXMuCisiCisiICBDcmVhdGVzIHR3byBsaXN0cworIiAgICBzOm5ldHJ3bWFya2ZpbGVsaXN0ICAgIC0tIGhvbGRzIGNvbXBsZXRlIHBhdGhzIHRvIGFsbCBtYXJrZWQgZmlsZXMKKyIgICAgczpuZXRyd21hcmtmaWxlbGlzdF8jICAtLSBob2xkcyBsaXN0IG9mIG1hcmtlZCBmaWxlcyBpbiBjdXJyZW50LWJ1ZmZlcidzIGRpcmVjdG9yeSAoIz09YnVmbnIoKSkKKyIKKyIgIENyZWF0ZXMgYSBtYXJrZWQgZmlsZSBtYXRjaCBzdHJpbmcKKyIgICAgczpuZXRyd21hcmZpbGVtdGNoXyMgICAtLSB1c2VkIHdpdGggMm1hdGNoIHRvIGRpc3BsYXkgbWFya2VkIGZpbGVzCisiCiBmdW4hIHM6TmV0cndNYXJrRmlsZShpc2xvY2FsLGZuYW1lKQogIiAgY2FsbCBEZnVuYygiczpOZXRyd01hcmtGaWxlKGlzbG9jYWw9Ii5hOmlzbG9jYWwuIiBmbmFtZTwiLmE6Zm5hbWUuIj4pIikKICAgbGV0IGN1cmJ1Zm5yPSBidWZucigiJSIpCkBAIC0zODI2LDcgKzM4NTYsNyBAQAogICAgICAgICBsZXQgZm5hbWU9IHNoZWxsZXNjYXBlKHM6Q29tcG9zZVBhdGgoY3VyZGlyLGZuYW1lKSkKICAgICAgICBlbmRpZgogICAgICAgZWxzZQotICAgICAgIGxldCBmbmFtZT0gc2hlbGxlc2NhcGUoYjpuZXRyd19jdXJkaXIuZm5hbWUpCisgICAgICAgbGV0IGZuYW1lPSBzaGVsbGVzY2FwZShiOm5ldHJ3X2N1cmRpci5mbmFtZSwxKQogICAgICAgZW5kaWYKICAgICAgIGlmIGV4ZWN1dGFibGUoZXhlKQogICAgICAgIGlmIGE6aXNsb2NhbApAQCAtMzg4Niw3ICszOTE2LDcgQEAKICAgaWYgICAgICBhOmlzbG9jYWwgJiYgIHM6bmV0cndtZnRndF9pc2xvY2FsCiAgICAiIENvcHkgbWFya2VkIGZpbGVzLCBsb2NhbCBkaXJlY3RvcnkgdG8gbG9jYWwgZGlyZWN0b3J5CiAiICAgY2FsbCBEZWNobygiY29weSBmcm9tIGxvY2FsIHRvIGxvY2FsIikKLSAgIGxldCBhcmdzPSBqb2luKG1hcChjb3B5KHM6bmV0cndtYXJrZmlsZWxpc3Rfe2J1Zm5yKCclJyl9KSwiYjpuZXRyd19jdXJkaXIuXCIvXCIuc2hlbGxlc2NhcGUodjp2YWwpIikpCisgICBsZXQgYXJncz0gam9pbihtYXAoZGVlcGNvcHkoczpuZXRyd21hcmtmaWxlbGlzdF97YnVmbnIoJyUnKX0pLCJzaGVsbGVzY2FwZShiOm5ldHJ3X2N1cmRpci5cIi9cIi52OnZhbCkiKSkKICIgICBjYWxsIERlY2hvKCJzeXN0ZW0oIi5nOm5ldHJ3X2xvY2FsY29weWNtZC4iICIuYXJncy4iICIuc2hlbGxlc2NhcGUoczpuZXRyd21mdGd0KS4iKSIpCiAgICBjYWxsIHN5c3RlbShzOldpblBhdGgoZzpuZXRyd19sb2NhbGNvcHljbWQpLiIgIi5hcmdzLiIgIi5zaGVsbGVzY2FwZShzOm5ldHJ3bWZ0Z3QpKQogCkBAIC0zOTE0LDcgKzM5NDQsNyBAQAogICAgaWYgaXNkaXJlY3RvcnkodG1wZGlyKQogICAgIGV4ZSAia2VlcGp1bXBzIGxjZCAiLmZuYW1lZXNjYXBlKHRtcGRpcikKICAgICBjYWxsIG5ldHJ3I05ldHJ3T2J0YWluKGE6aXNsb2NhbCxzOm5ldHJ3bWFya2ZpbGVsaXN0X3tidWZucignJScpfSx0bXBkaXIpCi0gICAgbGV0IGxvY2FsZmlsZXM9IG1hcChjb3B5KHM6bmV0cndtYXJrZmlsZWxpc3Rfe2J1Zm5yKCclJyl9KSwnc3Vic3RpdHV0ZSh2OnZhbCwiXi4qLyIsIiIsIiIpJykKKyAgICBsZXQgbG9jYWxmaWxlcz0gbWFwKGRlZXBjb3B5KHM6bmV0cndtYXJrZmlsZWxpc3Rfe2J1Zm5yKCclJyl9KSwnc3Vic3RpdHV0ZSh2OnZhbCwiXi4qLyIsIiIsIiIpJykKICAgICBjYWxsIHM6TmV0cndVcGxvYWQobG9jYWxmaWxlcyxzOm5ldHJ3bWZ0Z3QpCiAgICAgaWYgZ2V0Y3dkKCkgPT0gdG1wZGlyCiAgICAgIGZvciBmbmFtZSBpbiBzOm5ldHJ3bWFya2ZpbGVsaXN0X3tidWZucignJScpfQpAQCAtMzk1NywyNCArMzk4NywyMSBAQAogZnVuISBzOk5ldHJ3TWFya0ZpbGVEaWZmKGlzbG9jYWwpCiAiICBjYWxsIERmdW5jKCJzOk5ldHJ3TWFya0ZpbGVEaWZmKGlzbG9jYWw9Ii5hOmlzbG9jYWwuIikgYjpuZXRyd19jdXJkaXI8Ii5iOm5ldHJ3X2N1cmRpci4iPiIpCiAgIGxldCBjdXJidWZucj0gYnVmbnIoIiUiKQotICBpZiBleGlzdHMoInM6bmV0cndtYXJrZmlsZWxpc3Rfe2N1cmJ1Zm5yfSIpCiAKKyAgaWYgZXhpc3RzKCJzOm5ldHJ3bWFya2ZpbGVsaXN0X3tjdXJidWZucn0iKQogICAgbGV0IGNudCAgICA9IDAKICAgIGxldCBjdXJkaXIgPSBiOm5ldHJ3X2N1cmRpcgogICAgZm9yIGZuYW1lIGluIHM6bmV0cndtYXJrZmlsZWxpc3QKICAgICBsZXQgY250PSBjbnQgKyAxCi0gICAgaWYgIWE6aXNsb2NhbAotICAgICBsZXQgZm5hbWU9IGN1cmRpci5mbmFtZQotICAgIGVuZGlmCiAgICAgaWYgY250ID09IDEKLSIgICAgIGNhbGwgRGVjaG8oImRpZmZ0aGlzOiAiLmZuYW1lKQotICAgICBleGUgImUgIi5mbmFtZQorIiAgICAgY2FsbCBEZWNobygiZGlmZnRoaXM6IGZuYW1lPCIuZm5hbWUuIj4iKQorICAgICBleGUgImUgIi5mbmFtZWVzY2FwZShmbmFtZSkKICAgICAgZGlmZnRoaXMKICAgICBlbHNlaWYgY250ID09IDIgfHwgY250ID09IDMKICAgICAgdnNwbGl0CiAgICAgIHdpbmNtZCBsCiAiICAgICBjYWxsIERlY2hvKCJkaWZmdGhpczogIi5mbmFtZSkKLSAgICAgZXhlICJlICIuZm5hbWUKKyAgICAgZXhlICJlICIuZm5hbWVlc2NhcGUoZm5hbWUpCiAgICAgIGRpZmZ0aGlzCiAgICAgZWxzZQogICAgICBicmVhawpAQCAtMzk4Miw2ICs0MDA5LDcgQEAKICAgIGVuZGZvcgogICAgY2FsbCBzOk5ldHJ3VW5tYXJrTGlzdChjdXJidWZucixjdXJkaXIpCiAgIGVuZGlmCisKICIgIGNhbGwgRHJldCgiczpOZXRyd01hcmtGaWxlRGlmZiIpCiBlbmRmdW4KIApAQCAtMzk5NSwxNyArNDAyMyw3IEBACiAgIGxldCBjdXJidWZuciA9IGJ1Zm5yKCIlIikKICAgaWYgZXhpc3RzKCJzOm5ldHJ3bWFya2ZpbGVsaXN0X3tjdXJidWZucn0iKQogICAgY2FsbCBzOlNldFJleERpcihhOmlzbG9jYWwsY3VyZGlyKQotICAgaWYgYTppc2xvY2FsICYmIGc6bmV0cndfa2VlcGRpcgotICAgICIgdXNlIGNvbXBsZXRlIHBhdGhzIGlmIGl0cyBsb2NhbCBhbmQga2VlcGRpciBlbmFibGVkCi0gICAgbGV0IGZsaXN0PSAiIgotICAgIGZvciBmbmFtZSBpbiBzOm5ldHJ3bWFya2ZpbGVsaXN0Ci0iICAgICBsZXQgZmxpc3Q9IGZsaXN0LiIgIi5zOkNvbXBvc2VQYXRoKGN1cmRpcixmbmFtZSkKLSAgICAgbGV0IGZsaXN0PSBmbGlzdC4iICIuZm5hbWUKLSAgICBlbmRmb3IKLSAgIGVsc2UKLSIgICAgbGV0IGZsaXN0PSBzdWJzdGl0dXRlKGVzY2FwZShqb2luKHM6bmV0cndtYXJrZmlsZWxpc3Rfe2N1cmJ1Zm5yfSwiXHQiKSwnICcpLCJcdCIsJyAnLCdnJykKLSAgICBsZXQgZmxpc3Q9IHN1YnN0aXR1dGUoZXNjYXBlKGpvaW4oczpuZXRyd21hcmtmaWxlbGlzdCwiXHQiKSwnICcpLCJcdCIsJyAnLCdnJykKLSAgIGVuZGlmCisgICBsZXQgZmxpc3Q9IGpvaW4obWFwKGRlZXBjb3B5KHM6bmV0cndtYXJrZmlsZWxpc3QpLCAiZm5hbWVlc2NhcGUodjp2YWwpIikpCiAgICAiIHVubWFyayBtYXJrZWRmaWxlIGxpc3QKICIgICBjYWxsIHM6TmV0cndVbm1hcmtMaXN0KGN1cmJ1Zm5yLGN1cmRpcikKICAgIGNhbGwgczpOZXRyd1VubWFya0FsbCgpCkBAIC00MTM4LDE3ICs0MTU2LDExIEBACiBmdW4hIHM6TmV0cndNYXJrRmlsZUdyZXAoaXNsb2NhbCkKICIgIGNhbGwgRGZ1bmMoInM6TmV0cndNYXJrRmlsZUdyZXAoaXNsb2NhbD0iLmE6aXNsb2NhbC4iKSIpCiAgIGxldCBzdnBvcyAgICA9IG5ldHJ3I05ldHJ3U2F2ZVBvc24oKQotICBsZXQgY3VyZGlyICAgPSBiOm5ldHJ3X2N1cmRpcgogICBsZXQgY3VyYnVmbnIgPSBidWZucigiJSIpCiAKICAgaWYgZXhpc3RzKCJzOm5ldHJ3bWFya2ZpbGVsaXN0IikKICIgIGNhbGwgRGVjaG8oInM6bmV0cndtYXJrZmlsZWxpc3QiLnN0cmluZyhzOm5ldHJ3bWFya2ZpbGVsaXN0KS4iPiIpCi0gICBsZXQgbmV0cndtYXJrZmlsZWxpc3Q9ICIiCi0gICBmb3IgZm5hbWUgaW4gczpuZXRyd21hcmtmaWxlbGlzdAotIiAgICBjYWxsIERlY2hvKCJmbmFtZTwiLmZuYW1lLiI+IikKLSAgICBsZXQgZm5hbWUgICAgICAgICAgICAgPSBlc2NhcGUoc3Vic3RpdHV0ZShmbmFtZSwiW1wiJ10iLCIiLCJnIiksIiAiKQotICAgIGxldCBuZXRyd21hcmtmaWxlbGlzdCA9IG5ldHJ3bWFya2ZpbGVsaXN0LiIgIi5mbmFtZQotICAgZW5kZm9yCisgICBsZXQgbmV0cndtYXJrZmlsZWxpc3Q9IGpvaW4obWFwKGRlZXBjb3B5KHM6bmV0cndtYXJrZmlsZWxpc3QpLCAiZm5hbWVlc2NhcGUodjp2YWwpIikpCiAgICBjYWxsIHM6TmV0cndVbm1hcmtBbGwoKQogCiAgICAiIGFzayB1c2VyIGZvciBwYXR0ZXJuCkBAIC00Mjk1LDcgKzQzMDcsNyBAQAogICAgIDFzcGxpdAogICAgICIgdGhlIGF1dG9jbWRzIHdpbGwgaGFuZGxlIGJvdGggbG9jYWwgYW5kIHJlbW90ZSBmaWxlcwogIiAgICBjYWxsIERlY2hvKCJleGUgc2lsZW50IGUgIi5lc2NhcGUoZm5hbWUsJyAnKSkKLSAgICBleGUgInNpbGVudCBlICIuZXNjYXBlKGZuYW1lLCcgJykKKyAgICBleGUgInNpbGVudCBlICIuZm5hbWVlc2NhcGUoZm5hbWUpCiAiICAgIGNhbGwgRGVjaG8oImhhcmRjb3B5IikKICAgICBoYXJkY29weQogICAgIHEKQEAgLTQ0MTksMjEgKzQ0MzEsMTEgQEAKIAogICBpZiBleGlzdHMoInM6bmV0cndtYXJrZmlsZWxpc3QiKQogIiAgIGNhbGwgRGVjaG8oInM6bmV0cndtYXJrZmlsZWxpc3QiLnN0cmluZyhzOm5ldHJ3bWFya2ZpbGVsaXN0KS4iPiIpCi0gICBpZiBhOmlzbG9jYWwgJiYgZzpuZXRyd19rZWVwZGlyCi0gICAgbGV0IG5ldHJ3bWFya2ZpbGVsaXN0PSAiIgotICAgIGZvciBmbmFtZSBpbiBzOm5ldHJ3bWFya2ZpbGVsaXN0Ci0iICAgICBsZXQgbmV0cndtYXJrZmlsZWxpc3Q9IG5ldHJ3bWFya2ZpbGVsaXN0LiIgIi5zOkNvbXBvc2VQYXRoKGN1cmRpcixmbmFtZSkKLSAgICAgbGV0IG5ldHJ3bWFya2ZpbGVsaXN0PSBuZXRyd21hcmtmaWxlbGlzdC4iICIuZm5hbWUKLSAgICBlbmRmb3IKLSAgIGVsc2UKLSAgICBsZXQgbmV0cndtYXJrZmlsZWxpc3Q9IHN0cmluZyhzOm5ldHJ3bWFya2ZpbGVsaXN0KQotICAgIGxldCBuZXRyd21hcmtmaWxlbGlzdD0gc3Vic3RpdHV0ZShuZXRyd21hcmtmaWxlbGlzdCwnW1tcXSxdJywnJywnZycpCi0gICBlbmRpZgorICAgbGV0IG5ldHJ3bWFya2ZpbGVsaXN0PSBqb2luKG1hcChkZWVwY29weShzOm5ldHJ3bWFya2ZpbGVsaXN0KSwgInNoZWxsZXNjYXBlKHY6dmFsLCIuIWE6aXNsb2NhbC4iKSIpKQogICAgY2FsbCBzOk5ldHJ3VW5tYXJrQWxsKCkKIAogICAgaWYgYTppc2xvY2FsCiAgICAgaWYgZXhlY3V0YWJsZShnOm5ldHJ3X2N0YWdzKQotICAgICBjYWxsIG1hcChuZXRyd21hcmtmaWxlbGlzdCwic2hlbGxlc2NhcGUodjp2YWwpIikKICIgICAgIGNhbGwgRGVjaG8oImNhbGwgc3lzdGVtKCIuZzpuZXRyd19jdGFncy4iICIubmV0cndtYXJrZmlsZWxpc3QuIikiKQogICAgICBjYWxsIHN5c3RlbShnOm5ldHJ3X2N0YWdzLiIgIi5uZXRyd21hcmtmaWxlbGlzdCkKICAgICBlbHNlCkBAIC00NDQ3LDcgKzQ0NDksNyBAQAogICAgIGUgdGFncwogICAgIGxldCBwYXRoPSBzdWJzdGl0dXRlKGN1cmRpciwnXlwoLipcKS9bXi9dKiQnLCdcMS8nLCcnKQogIiAgICBjYWxsIERlY2hvKCJjdXJkaXI8Ii5jdXJkaXIuIj4gcGF0aDwiLnBhdGguIj4iKQotICAgIGV4ZSAnJXMvXHRcKFxTXCtcKVx0L1x0Jy5lc2NhcGUocGF0aCwnLycpLidcMVx0L2UnCisgICAgZXhlICclcy9cdFwoXFNcK1wpXHQvXHQnLmVzY2FwZShwYXRoLCIvXG5cclxcIikuJ1wxXHQvZScKICAgICB3cSEKICAgIGVuZGlmCiAgICAybWF0Y2ggbm9uZQpAQCAtNDc3MSw3ICs0NzczLDcgQEAKICAgICAgZW5kZm9yCiAgICAgZWxzZQogICAgICAiIHRyYW5zZmVyIGZpbGVzIHdpdGggb25lIGNvbW1hbmQKLSAgICAgbGV0IGZpbGVsaXN0PSBqb2luKG1hcChjb3B5KGZuYW1lKSwic2hlbGxlc2NhcGUodjp2YWwpIikpCisgICAgIGxldCBmaWxlbGlzdD0gam9pbihtYXAoZGVlcGNvcHkoZm5hbWUpLCJzaGVsbGVzY2FwZSh2OnZhbCkiKSkKICIgICAgIGNhbGwgRGVjaG8oInN5c3RlbSgiLmc6bmV0cndfbG9jYWxjb3B5Y21kLiIgIi5maWxlbGlzdC4iICIuc2hlbGxlc2NhcGUodG9wYXRoKS4iKSIpCiAgICAgIGNhbGwgc3lzdGVtKGc6bmV0cndfbG9jYWxjb3B5Y21kLiIgIi5maWxlbGlzdC4iICIuc2hlbGxlc2NhcGUodG9wYXRoKSkKICAgICBlbmRpZgpAQCAtNDgwMSw3ICs0ODAzLDcgQEAKICAgICBlbHNlCiAgICAgIGxldCBwYXRoPSAiIgogICAgIGVuZGlmCi0gICAgbGV0IGZpbGVsaXN0PSBqb2luKG1hcChjb3B5KGZuYW1lbGlzdCksJ3NoZWxsZXNjYXBlKGc6bmV0cndfbWFjaGluZS4iOiIucGF0aC52OnZhbCwxKSknKSkKKyAgICBsZXQgZmlsZWxpc3Q9IGpvaW4obWFwKGRlZXBjb3B5KGZuYW1lbGlzdCksJ3NoZWxsZXNjYXBlKGc6bmV0cndfbWFjaGluZS4iOiIucGF0aC52OnZhbCwxKScpKQogIiAgICBjYWxsIERlY2hvKCJleGUgIi5zOm5ldHJ3X3NpbGVudHhmZXIuIiEiLmc6bmV0cndfc2NwX2NtZC5zaGVsbGVzY2FwZSh1c2Vwb3J0LDEpLiIgIi5maWxlbGlzdC4iICIuc2hlbGxlc2NhcGUodGd0ZGlyLDEpKQogICAgIGV4ZSBzOm5ldHJ3X3NpbGVudHhmZXIuIiEiLmc6bmV0cndfc2NwX2NtZC5zaGVsbGVzY2FwZSh1c2Vwb3J0LDEpLiIgIi5maWxlbGlzdC4iICIuc2hlbGxlc2NhcGUodGd0ZGlyLDEpCiAKQEAgLTQ4MTIsNyArNDgxNCw3IEBACiAgICAgIGxldCB0bXBidWZucj0gYnVmbnIoIiUiKQogICAgICBzZXRsb2NhbCBmZj11bml4CiAgICAgIGlmIGV4aXN0cygiZzpuZXRyd19mdHBtb2RlIikgJiYgZzpuZXRyd19mdHBtb2RlICE9ICIiCi0gICAgICBleGUgInB1dCA9JyIuZzpuZXRyd19mdHBtb2RlLiInIgorICAgICAgcHV0ID1nOm5ldHJ3X2Z0cG1vZGUKICIgICAgICBjYWxsIERlY2hvKCJmaWx0ZXIgaW5wdXQ6ICIuZ2V0bGluZSgnJCcpKQogICAgICBlbmRpZgogCkBAIC00ODIyLDcgKzQ4MjQsNyBAQAogICAgICBlbmRpZgogCiAgICAgIGlmIGV4aXN0cygiZzpuZXRyd19mdHBleHRyYWNtZCIpCi0gICAgICBleGUgInB1dCA9JyIuZzpuZXRyd19mdHBleHRyYWNtZC4iJyIKKyAgICAgIHB1dCA9ZzpuZXRyd19mdHBleHRyYWNtZAogIiAgICAgIGNhbGwgRGVjaG8oImZpbHRlciBpbnB1dDogIi5nZXRsaW5lKCckJykpCiAgICAgIGVuZGlmCiAgICAgIGZvciBmbmFtZSBpbiBmbmFtZWxpc3QKQEAgLTQ4ODAsMTIgKzQ4ODIsMTIgQEAKICAgICBlbmRpZgogCiAgICAgaWYgZXhpc3RzKCJnOm5ldHJ3X2Z0cGV4dHJhY21kIikKLSAgICAgZXhlICJwdXQgPSciLmc6bmV0cndfZnRwZXh0cmFjbWQuIiciCisgICAgIHB1dCA9ZzpuZXRyd19mdHBleHRyYWNtZAogIiAgICAgY2FsbCBEZWNobygiZmlsdGVyIGlucHV0OiAiLmdldGxpbmUoJyQnKSkKICAgICBlbmRpZgogCiAgICAgaWYgZXhpc3RzKCJnOm5ldHJ3X2Z0cGV4dHJhY21kIikKLSAgICAgZXhlICJwdXQgPSciLmc6bmV0cndfZnRwZXh0cmFjbWQuIiciCisgICAgIHB1dCA9ZzpuZXRyd19mdHBleHRyYWNtZAogIiAgICAgY2FsbCBEZWNobygiZmlsdGVyIGlucHV0OiAiLmdldGxpbmUoJyQnKSkKICAgICBlbmRpZgogICAgIGZvciBmbmFtZSBpbiBmbmFtZWxpc3QKQEAgLTUwNTMsMTUgKzUwNTUsMTMgQEAKICAgICIgaGFuZGxlIHVwbG9hZGluZyBhIHNpbmdsZSBmaWxlIHVzaW5nIE5ldFdyaXRlCiAiICAgY2FsbCBEZWNobygiaGFuZGxlIHVwbG9hZGluZyBhIHNpbmdsZSBmaWxlIHZpYSBOZXRXcml0ZSIpCiAgICAxc3BsaXQKLSAgIGxldCBlZm5hbWU9IGVzY2FwZShhOmZuYW1lLGc6bmV0cndfZm5hbWVfZXNjYXBlKQotIiAgIGNhbGwgRGVjaG8oImV4ZSBlICIuZWZuYW1lKQotICAgZXhlICJlICIuZWZuYW1lCisiICAgY2FsbCBEZWNobygiZXhlIGUgIi5mbmFtZWVzY2FwZShhOmZuYW1lKSkKKyAgIGV4ZSAiZSAiLmZuYW1lZXNjYXBlKGE6Zm5hbWUpCiAiICAgY2FsbCBEZWNobygibm93IGxvY2FsbHkgZWRpdGluZzwiLmV4cGFuZCgiJSIpLiI+LCBoYXMgIi5saW5lKCIkIikuIiBsaW5lcyIpCiAgICBpZiBhOnRndCA9fiAnLyQnCiAgICAgbGV0IHdmbmFtZT0gc3Vic3RpdHV0ZShhOmZuYW1lLCdeLiovJywnJywnJykKLSAgICBsZXQgd2ZuYW1lPSBlc2NhcGUoYTp0Z3Qud2ZuYW1lLGc6bmV0cndfZm5hbWVfZXNjYXBlKQogIiAgICBjYWxsIERlY2hvKCJleGUgdyEgIi5mbmFtZWVzY2FwZSh3Zm5hbWUpKQotICAgIGV4ZSAidyEgIi5mbmFtZWVzY2FwZSh3Zm5hbWUpCisgICAgZXhlICJ3ISAiLmZuYW1lZXNjYXBlKGE6dGd0LndmbmFtZSkKICAgIGVsc2UKICIgICAgY2FsbCBEZWNobygid3JpdGluZyBsb2NhbC0+cmVtb3RlOiBleGUgdyAiLmZuYW1lZXNjYXBlKGE6dGd0KSkKICAgICBleGUgIncgIi5mbmFtZWVzY2FwZShhOnRndCkKQEAgLTUwNzUsOCArNTA3NSw4IEBACiAgICBsZXQgY3VyZGlyPSBnZXRjd2QoKQogICAgaWYgYTp0Z3QgPX4gJ15zY3A6JwogICAgIGV4ZSAia2VlcGp1bXBzIHNpbGVudCBsY2QgIi5mbmFtZWVzY2FwZShmcm9tZGlyKQotICAgIGxldCBmaWxlbGlzdD0gY29weShzOm5ldHJ3bWFya2ZpbGVsaXN0X3tidWZucignJScpfSkKLSAgICBsZXQgYXJncyAgICA9IGpvaW4obWFwKGZpbGVsaXN0LCJzaGVsbGVzY2FwZSh2OnZhbCkiKSkKKyAgICBsZXQgZmlsZWxpc3Q9IGRlZXBjb3B5KHM6bmV0cndtYXJrZmlsZWxpc3Rfe2J1Zm5yKCclJyl9KQorICAgIGxldCBhcmdzICAgID0gam9pbihtYXAoZmlsZWxpc3QsInNoZWxsZXNjYXBlKHY6dmFsLCAxKSIpKQogICAgIGlmIGV4aXN0cygiZzpuZXRyd19wb3J0IikgJiYgZzpuZXRyd19wb3J0ICE9ICIiCiAgICAgIGxldCB1c2Vwb3J0PSAiICIuZzpuZXRyd19zY3Bwb3J0LiIgIi5nOm5ldHJ3X3BvcnQKICAgICBlbHNlCkBAIC01MDk3LDExICs1MDk3LDExIEBACiAgICAgIHNpbGVudCBrZWVwanVtcHMgbmV3CiAiICAgICBjYWxsIERlY2hvKCJmaWx0ZXIgaW5wdXQgd2luZG93IyIud2lubnIoKSkKIAotICAgICBleGUgInB1dCA9JyIuZzpuZXRyd19mdHBtb2RlLiInIgorICAgICBwdXQgPWc6bmV0cndfZnRwbW9kZQogIiAgICAgY2FsbCBEZWNobygiZmlsdGVyIGlucHV0OiAiLmdldGxpbmUoJyQnKSkKIAogICAgICBpZiBleGlzdHMoImc6bmV0cndfZnRwZXh0cmFjbWQiKQotICAgICAgZXhlICJwdXQgPSciLmc6bmV0cndfZnRwZXh0cmFjbWQuIiciCisgICAgICBwdXQgPWc6bmV0cndfZnRwZXh0cmFjbWQKICIgICAgICBjYWxsIERlY2hvKCJmaWx0ZXIgaW5wdXQ6ICIuZ2V0bGluZSgnJCcpKQogICAgICBlbmRpZgogCkBAIC01MTY2LDcgKzUxNjYsNyBAQAogICAgICBlbmRpZgogCiAgICAgIGlmIGV4aXN0cygiZzpuZXRyd19mdHBleHRyYWNtZCIpCi0gICAgICBleGUgInB1dCA9JyIuZzpuZXRyd19mdHBleHRyYWNtZC4iJyIKKyAgICAgIHB1dCA9ZzpuZXRyd19mdHBleHRyYWNtZAogIiAgICAgIGNhbGwgRGVjaG8oImZpbHRlciBpbnB1dDogIi5nZXRsaW5lKCckJykpCiAgICAgIGVuZGlmCiAKQEAgLTUyMTAsNyArNTIxMCw3IEBACiAgIGNhbGwgczpOZXRyd1NhZmVPcHRpb25zKCkKICAgaWYgaGFzKCJxdWlja2ZpeCIpCiAgICBpZiAhaXNkaXJlY3RvcnkoYTpwYXRoKQotICAgIGV4ZSAoZzpuZXRyd19wcmV2aWV3PyAidmVydCAiIDogIiIpLiJwZWRpdCAiLmVzY2FwZShhOnBhdGgsZzpuZXRyd19mbmFtZV9lc2NhcGUpCisgICAgZXhlIChnOm5ldHJ3X3ByZXZpZXc/ICJ2ZXJ0ICIgOiAiIikuInBlZGl0ICIuZm5hbWVlc2NhcGUoYTpwYXRoKQogICAgZWxzZWlmICFleGlzdHMoImc6bmV0cndfcXVpZXQiKQogICAgIGNhbGwgbmV0cncjRXJyb3JNc2coczpXQVJOSU5HLCJzb3JyeSwgY2Fubm90IHByZXZpZXcgYSBkaXJlY3Rvcnkgc3VjaCBhcyA8Ii5hOnBhdGguIj4iLDM4KQogICAgZW5kaWYKQEAgLTYwMjcsOCArNjAyNyw4IEBACiAgICBsZXQgbGlzdGNtZD0gczpNYWtlU3NoQ21kKGc6bmV0cndfbGlzdF9jbWQpCiAiICAgY2FsbCBEZWNobygibGlzdGNtZDwiLmxpc3RjbWQuIj4gKHVzaW5nIGc6bmV0cndfbGlzdF9jbWQpIikKICAgIGlmIGc6bmV0cndfc2NwX2NtZCA9fiAnXnBzY3AnCi0iICAgIGNhbGwgRGVjaG8oIjE6IGV4ZSBzaWxlbnQgciEgIi5saXN0Y21kLnM6cGF0aCkKLSAgICBleGUgInNpbGVudCByISAiLmxpc3RjbWQuczpwYXRoCisiICAgIGNhbGwgRGVjaG8oIjE6IGV4ZSBzaWxlbnQgciEgIi5zaGVsbGVzY2FwZShsaXN0Y21kLnM6cGF0aCwgMSkpCisgICAgZXhlICJzaWxlbnQgciEgIi5saXN0Y21kLnNoZWxsZXNjYXBlKHM6cGF0aCwgMSkKICAgICAiIHJlbW92ZSBydWJiaXNoIGFuZCBhZGp1c3QgbGlzdGluZyBmb3JtYXQgb2YgJ3BzY3AnIHRvICdzc2ggbHMgLUZMYScgbGlrZQogICAgIGcvXkxpc3RpbmcgZGlyZWN0b3J5L2QKICAgICBnL15kWy1yd3hdWy1yd3hdWy1yd3hdL3MrJCsvK2UKQEAgLTYyODYsNyArNjI4Niw3IEBACiAgICAgcHV0ID0nY2QgXCInLmE6cGF0aC4nXCInCiAgICBlbmRpZgogICAgaWYgZXhpc3RzKCJnOm5ldHJ3X2Z0cGV4dHJhY21kIikKLSAgICBleGUgInB1dCA9JyIuZzpuZXRyd19mdHBleHRyYWNtZC4iJyIKKyAgICBwdXQgPWc6bmV0cndfZnRwZXh0cmFjbWQKICIgICAgY2FsbCBEZWNobygiZmlsdGVyIGlucHV0OiAiLmdldGxpbmUoJy4nKSkKICAgIGVuZGlmCiAgICBjYWxsIHNldGxpbmUobGluZSgiJCIpKzEsYTpsaXN0Y21kKQpAQCAtNjMyMCw3ICs2MzIwLDcgQEAKICAgICBwdXQgPSdjZCBcIicuYTpwYXRoLidcIicKICAgIGVuZGlmCiAgICBpZiBleGlzdHMoImc6bmV0cndfZnRwZXh0cmFjbWQiKQotICAgIGV4ZSAicHV0ID0nIi5nOm5ldHJ3X2Z0cGV4dHJhY21kLiInIgorICAgIHB1dCA9ZzpuZXRyd19mdHBleHRyYWNtZAogIiAgICBjYWxsIERlY2hvKCJmaWx0ZXIgaW5wdXQ6ICIuZ2V0bGluZSgnLicpKQogICAgZW5kaWYKICAgIGNhbGwgc2V0bGluZShsaW5lKCIkIikrMSxhOmxpc3RjbWQpCkBAIC02NjY5LDcgKzY2NjksNyBAQAogICAgaWYgYnVmd2lubnIoaWJ1ZikgPT0gLTEgJiYgaW5kZXgoYnVmdGFibGlzdCxpYnVmKSA9PSAtMQogICAgICIgd2lwZSBvdXQgYW55IG5vbi1kaXNwbGF5aW5nIG5ldHJ3IGJ1ZmZlcgogIiAgICBjYWxsIERlY2hvKCJ3aXBpbmcgIGJ1ZiMiLmlidWYsIjwiLmJ1Zm5hbWUoaWJ1ZikuIj4iKQotICAgIGV4ZSAic2lsZW50ISBiZCAiLmlidWYKKyAgICBleGUgInNpbGVudCEgYmQgIi5mbmFtZWVzY2FwZShpYnVmKQogICAgIGNhbGwgcmVtb3ZlKHM6bmV0cndfYnJvd3NlbGlzdCxpYmwpCiAiICAgIGNhbGwgRGVjaG8oImJyb3dzZWxpc3Q9Ii5zdHJpbmcoczpuZXRyd19icm93c2VsaXN0KSkKICAgICBjb250aW51ZQpAQCAtNjg2MCw3ICs2ODYwLDcgQEAKICAgICAgIGxldCBuZXduYW1lID0gc3Vic3RpdHV0ZShvbGRuYW1lLHN1YmZyb20sc3VidG8sJycpCiAgICAgIGVuZGlmCiAgICAgZW5kaWYKLSAgICBsZXQgcmV0PSByZW5hbWUob2xkbmFtZSxuZXduYW1lKQorICAgIGNhbGwgcmVuYW1lKG9sZG5hbWUsbmV3bmFtZSkKICAgIGVuZGZvcgogICAgMm1hdGNoIG5vbmUKICAgIHVubGV0IHM6bmV0cndtYXJrZmlsZWxpc3Rfe2J1Zm5yKCIlIil9CkBAIC02ODkxLDcgKzY4OTEsNyBAQAogICAgIGxldCBuZXduYW1lPSBpbnB1dCgiTW92aW5nICIub2xkbmFtZS4iIHRvIDogIixzdWJzdGl0dXRlKG9sZG5hbWUsJy8qJCcsJycsJ2UnKSkKICAgICBjYWxsIGlucHV0cmVzdG9yZSgpCiAKLSAgICBsZXQgcmV0PSByZW5hbWUob2xkbmFtZSxuZXduYW1lKQorICAgIGNhbGwgcmVuYW1lKG9sZG5hbWUsbmV3bmFtZSkKICIgICBjYWxsIERlY2hvKCJyZW5hbWluZyA8Ii5vbGRuYW1lLiI+IHRvIDwiLm5ld25hbWUuIj4iKQogCiAgICAgbGV0IGN0cj0gY3RyICsgMQpAQCAtNzU3MCwyMiArNzU3MCwyNCBAQAogIiAgY2FsbCBEZnVuYygiczpTZXRSZXhEaXIoaXNsb2NhbD0iLmE6aXNsb2NhbC4iIGRpcm5hbWU8Ii5hOmRpcm5hbWUuIj4pIikKICAgIiBzZXQgdXAgUmV4IGFuZCBsZWZ0bW91c2UtZG91YmxlLWNsaWNrCiAgIGlmIGE6aXNsb2NhbAotICAgZXhlICdjb20hIFJleHBsb3JlIGNhbGwgczpOZXRyd1JleHBsb3JlKDEsIicuYTpkaXJuYW1lLiciKScKKyAgIGV4ZSAnY29tISBSZXhwbG9yZSBjYWxsIHM6TmV0cndSZXhwbG9yZSgxLCInLmVzY2FwZShhOmRpcm5hbWUsJyJcJykuJyIpJwogICAgaWYgZzpuZXRyd19yZXRtYXAKICAgICBzaWxlbnQhIHVubWFwIDwyLWxlZnRtb3VzZT4KICAgICBpZiAhaGFzbWFwdG8oIjxQbHVnPk5ldHJ3UmV0dXJuIikKICAgICAgbm1hcCA8dW5pcXVlPiA8c2lsZW50PiA8Mi1sZWZ0bW91c2U+CTxQbHVnPk5ldHJ3UmV0dXJuCiAgICAgZW5kaWYKLSAgICBleGUgJ25ub3JlbWFwIDxzaWxlbnQ+IDxQbHVnPk5ldHJ3UmV0dXJuIDpjYWxsIDxTSUQ+TmV0cndSZXhwbG9yZSgxLCInLmE6ZGlybmFtZS4nIik8Y3I+JworICAgIGxldCBkaXIgPSBlc2NhcGUoYTpkaXJuYW1lLCBzOm5ldHJ3X21hcF9lc2NhcGUpCisgICAgZXhlICdubm9yZW1hcCA8c2lsZW50PiA8UGx1Zz5OZXRyd1JldHVybiA6Y2FsbCA8U0lEPk5ldHJ3UmV4cGxvcmUoMSwiJy5kaXIuJyIpPGNyPicKICAgIGVuZGlmCiAgIGVsc2UKLSAgIGV4ZSAnY29tISBSZXhwbG9yZSBjYWxsIHM6TmV0cndSZXhwbG9yZSgwLCInLmE6ZGlybmFtZS4nIiknCisgICBleGUgJ2NvbSEgUmV4cGxvcmUgY2FsbCBzOk5ldHJ3UmV4cGxvcmUoMCwiJy5lc2NhcGUoYTpkaXJuYW1lLCciXCcpLiciKScKICAgIGlmIGc6bmV0cndfcmV0bWFwCiAgICAgc2lsZW50ISB1bm1hcCA8Mi1sZWZ0bW91c2U+CiAgICAgaWYgIWhhc21hcHRvKCI8UGx1Zz5OZXRyd1JldHVybiIpCiAgICAgIG5tYXAgPHVuaXF1ZT4gPHNpbGVudD4gPDItbGVmdG1vdXNlPgk8UGx1Zz5OZXRyd1JldHVybgogICAgIGVuZGlmCi0gICAgZXhlICdubm9yZW1hcCA8c2lsZW50PiA8UGx1Zz5OZXRyd1JldHVybiA6Y2FsbCA8U0lEPk5ldHJ3UmV4cGxvcmUoMCwiJy5hOmRpcm5hbWUuJyIpPGNyPicKKyAgICBsZXQgZGlyID0gZXNjYXBlKGE6ZGlybmFtZSwgczpuZXRyd19tYXBfZXNjYXBlKQorICAgIGV4ZSAnbm5vcmVtYXAgPHNpbGVudD4gPFBsdWc+TmV0cndSZXR1cm4gOmNhbGwgPFNJRD5OZXRyd1JleHBsb3JlKDAsIicuZGlyLiciKTxjcj4nCiAgICBlbmRpZgogICBlbmRpZgogIiAgY2FsbCBEcmV0KCJzOlNldFJleERpciIpCmRpZmYgLS1naXQgYS9ydW50aW1lL2F1dG9sb2FkL3Rhci52aW0gYi9ydW50aW1lL2F1dG9sb2FkL3Rhci52aW0KaW5kZXggYjE1MjlkNi4uZmMxNjhlOCAxMDA2NDQKLS0tIGEvcnVudGltZS9hdXRvbG9hZC90YXIudmltCisrKyBiL3J1bnRpbWUvYXV0b2xvYWQvdGFyLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgdGFyLnZpbTogSGFuZGxlcyBicm93c2luZyB0YXJmaWxlcwogIiAgICAgICAgICAgIEFVVE9MT0FEIFBPUlRJT04KLSIgRGF0ZToJCQlKdWwgMTIsIDIwMDgKLSIgVmVyc2lvbjoJCTE5ICsgY2hhbmdlcyBieSBCcmFtCisiIERhdGU6CQkJSnVsIDMwLCAyMDA4CisiIFZlcnNpb246CQkyMAogIiBNYWludGFpbmVyOglDaGFybGVzIEUgQ2FtcGJlbGwsIEpyIDxOZHJPY2hpcEBTY2FtcGJlbGxQZmFtaWx5LkFiaXpNLU5PU1BBTT4KICIgTGljZW5zZToJCVZpbSBMaWNlbnNlICAoc2VlIHZpbSdzIDpoZWxwIGxpY2Vuc2UpCiAiCkBAIC0yNCw3ICsyNCw3IEBACiBpZiAmY3AgfHwgZXhpc3RzKCJnOmxvYWRlZF90YXIiKSB8fCB2OnZlcnNpb24gPCA3MDAKICBmaW5pc2gKIGVuZGlmCi1sZXQgZzpsb2FkZWRfdGFyPSAidjE5K2IiCitsZXQgZzpsb2FkZWRfdGFyPSAidjIwIgogImNhbGwgRGVjaG8oImxvYWRpbmcgYXV0b2xvYWQvdGFyLnZpbSIpCiBpZiB2OnZlcnNpb24gPCA3MDEgfHwgKHY6dmVyc2lvbiA9PSA3MDEgJiYgIWhhcygicGF0Y2gyOTkiKSkKICBlY2hvZXJyICIoYXV0b2xvYWQvdGFyLnZpbSkgbmVlZCB2aW0gdjcuMSB3aXRoIHBhdGNobGV2ZWwgMjk5IgpkaWZmIC0tZ2l0IGEvcnVudGltZS9hdXRvbG9hZC92aW1iYWxsLnZpbSBiL3J1bnRpbWUvYXV0b2xvYWQvdmltYmFsbC52aW0KaW5kZXggZDY5YzY0NS4uNGY2MjkyYiAxMDA2NDQKLS0tIGEvcnVudGltZS9hdXRvbG9hZC92aW1iYWxsLnZpbQorKysgYi9ydW50aW1lL2F1dG9sb2FkL3ZpbWJhbGwudmltCkBAIC0xLDcgKzEsNyBAQAogIiB2aW1iYWxsLnZpbSA6IGNvbnN0cnVjdCBhIGZpbGUgY29udGFpbmluZyBib3RoIHBhdGhzIGFuZCBmaWxlcwogIiBBdXRob3I6CUNoYXJsZXMgRS4gQ2FtcGJlbGwsIEpyLgotIiBEYXRlOgkJSnVuIDA1LCAyMDA4Ci0iIFZlcnNpb246CTI3CisiIERhdGU6CQlKdWwgMzAsIDIwMDgKKyIgVmVyc2lvbjoJMjkKICIgR2V0TGF0ZXN0VmltU2NyaXB0czogMTUwMiAxIDpBdXRvSW5zdGFsbDogdmltYmFsbC52aW0KICIgQ29weXJpZ2h0OiAoYykgMjAwNC0yMDA4IGJ5IENoYXJsZXMgRS4gQ2FtcGJlbGwsIEpyLgogIiAgICAgICAgICAgIFRoZSBWSU0gTElDRU5TRSBhcHBsaWVzIHRvIFZpbWJhbGwudmltLCBhbmQgVmltYmFsbC50eHQKQEAgLTE1LDcgKzE1LDcgQEAKICBmaW5pc2gKIGVuZGlmCiBsZXQgczprZWVwY3BvICAgICAgICA9ICZjcG8KLWxldCBnOmxvYWRlZF92aW1iYWxsID0gInYyNyIKK2xldCBnOmxvYWRlZF92aW1iYWxsID0gInYyOSIKIHNldCBjcG8mdmltCiAiRGVjaG9UYWJPbgogCkBAIC0xNjksOSArMTY5LDggQEAKICAgIGNhbGwgc2V0bGluZShsYXN0bGluZSsxLDApCiAKICAgICIgd3JpdGUgdGhlIGZpbGUgZnJvbSB0aGUgdGFiCi0gICBsZXQgc3ZmaWxlcGF0aD0gczpQYXRoKHN2ZmlsZSwnJykKLSIgICBjYWxsIERlY2hvKCJleGUgJHIgIi5mbmFtZWVzY2FwZShzdmZpbGVwYXRoKSkKLSAgIGV4ZSAiJHIgIi5mbmFtZWVzY2FwZShzdmZpbGVwYXRoKQorIiAgIGNhbGwgRGVjaG8oImV4ZSAkciAiLmZuYW1lZXNjYXBlKHN2ZmlsZSkpCisgICBleGUgIiRyICIuZm5hbWVlc2NhcGUoc3ZmaWxlKQogCiAgICBjYWxsIHNldGxpbmUobGFzdGxpbmUrMSxsaW5lKCIkIikgLSBsYXN0bGluZSAtIDEpCiAiICAgY2FsbCBEZWNobygibGFzdGxpbmU9Ii5sYXN0bGluZS4iIGxpbmUkPSIubGluZSgiJCIpKQpAQCAtMTg2LDEzICsxODUsMTEgQEAKICAgY2FsbCBzOkNoZ0RpcihjdXJkaXIpCiAgIHNldGxvY2FsIGZmPXVuaXgKICAgaWYgYTp3cml0ZWxldmVsCi0gICBsZXQgdmJuYW1lcGF0aD0gczpQYXRoKHZibmFtZSwnJykKLSIgICBjYWxsIERlY2hvKCJleGUgdyEgIi5mbmFtZWVzY2FwZSh2Ym5hbWVwYXRoKSkKLSAgIGV4ZSAidyEgIi5mbmFtZWVzY2FwZSh2Ym5hbWVwYXRoKQorIiAgIGNhbGwgRGVjaG8oImV4ZSB3ISAiLmZuYW1lZXNjYXBlKHZibmFtZSkpCisgICBleGUgInchICIuZm5hbWVlc2NhcGUodmJuYW1lKQogICBlbHNlCi0gICBsZXQgdmJuYW1lcGF0aD0gczpQYXRoKHZibmFtZSwnJykKLSIgICBjYWxsIERlY2hvKCJleGUgdyAiLmZuYW1lZXNjYXBlKHZibmFtZXBhdGgpKQotICAgZXhlICJ3ICIuZm5hbWVlc2NhcGUodmJuYW1lcGF0aCkKKyIgICBjYWxsIERlY2hvKCJleGUgdyAiLmZuYW1lZXNjYXBlKHZibmFtZSkpCisgICBleGUgIncgIi5mbmFtZWVzY2FwZSh2Ym5hbWUpCiAgIGVuZGlmCiAiICBjYWxsIERlY2hvKCJWaW1iYWxsPCIudmJuYW1lLiI+IGNyZWF0ZWQiKQogICBlY2hvICJWaW1iYWxsPCIudmJuYW1lLiI+IGNyZWF0ZWQiCkBAIC0yMTUsOCArMjEyLDggQEAKIGZ1biEgdmltYmFsbCNWaW1iYWxsKHJlYWxseSwuLi4pCiAiICBjYWxsIERmdW5jKCJ2aW1iYWxsI1ZpbWJhbGwocmVhbGx5PSIuYTpyZWFsbHkuIikgYTowPSIuYTowKQogCi0gIGlmIHY6dmVyc2lvbiA8IDcwMSB8fCAodjp2ZXJzaW9uID09IDcwMSAmJiAhaGFzKCJwYXRjaDI5OSIpKQotICAgZWNob2VyciAiVGhpcyB2ZXJzaW9uIG9mIHZpbWJhbGwgcmVxdWlyZXMgdmltIDcuMSB3aXRoIHBhdGNoIDI5OSIKKyAgaWYgdjp2ZXJzaW9uIDwgNzAxIHx8ICh2OnZlcnNpb24gPT0gNzAxICYmICFleGlzdHMoJypmbmFtZWVzY2FwZScpKQorICAgZWNob2VyciAieW91ciB2aW0gaXMgbWlzc2luZyB0aGUgZm5hbWVlc2NhcGUoKSBmdW5jdGlvbiIKICIgICBjYWxsIERyZXQoInZpbWJhbGwjVmltYmFsbCA6IG5lZWRzIDcuMSB3aXRoIHBhdGNoIDI5OSIpCiAgICByZXR1cm4KICAgZW5kaWYKQEAgLTMzOCw3ICszMzUsNyBAQAogCiAgICAiIHdyaXRlIHRhYiB0byBmaWxlCiAgICBpZiBhOnJlYWxseQotICAgIGxldCBmbmFtZXBhdGg9IHM6UGF0aChob21lLiIvIi5mbmFtZSwnJykKKyAgICBsZXQgZm5hbWVwYXRoPSBob21lLiIvIi5mbmFtZQogIiAgICBjYWxsIERlY2hvKCJleGUgdyEgIi5mbmFtZWVzY2FwZShmbmFtZXBhdGgpKQogCWV4ZSAic2lsZW50IHchICIuZm5hbWVlc2NhcGUoZm5hbWVwYXRoKQogICAgIGVjaG8gIndyb3RlICIuZm5hbWVwYXRoCkBAIC0zNjQsOSArMzYxLDkgQEAKICAgIiBzZXQgdXAgaGVscAogIiAgY2FsbCBEZWNobygiYWJvdXQgdG8gc2V0IHVwIGhlbHA6IGRpZGhlbHA8Ii5kaWRoZWxwLiI+IikKICAgaWYgZGlkaGVscCAhPSAiIgotICAgbGV0IGh0cGF0aD0gczpQYXRoKGhvbWUuIi8iLmRpZGhlbHAsIiIpCisgICBsZXQgaHRwYXRoPSBob21lLiIvIi5kaWRoZWxwCiAiICAgY2FsbCBEZWNobygiZXhlIGhlbHB0YWdzICIuaHRwYXRoKQotICAgZXhlICJoZWxwdGFncyAiLmh0cGF0aAorICAgZXhlICJoZWxwdGFncyAiLmZuYW1lZXNjYXBlKGh0cGF0aCkKICAgIGVjaG8gImRpZCBoZWxwdGFncyIKICAgZW5kaWYKIApAQCAtNTc4LDI3ICs1NzUsNiBAQAogZW5kZnVuCiAKICIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0iIHM6UGF0aDogcHJlcGVuZCBhbmQgYXBwZW5kIHF1b3RlcyBhbmQgZG8gZXNjYXBpbmcge3t7MgotZnVuISBzOlBhdGgoY21kLHF1b3RlKQotIiAgY2FsbCBEZnVuYygiUGF0aChjbWQ8Ii5hOmNtZC4iPiBxdW90ZTwiLmE6cXVvdGUuIj4pIHZpbWJhbGxfcGF0aF9lc2NhcGU8Ii5nOnZpbWJhbGxfcGF0aF9lc2NhcGUuIj4iKQotICBpZiAoaGFzKCJ3aW4zMiIpIHx8IGhhcygid2luOTUiKSB8fCBoYXMoIndpbjY0IikgfHwgaGFzKCJ3aW4xNiIpKQotIiAgIGxldCBjbWRwYXRoPSBhOnF1b3RlLnN1YnN0aXR1dGUoYTpjbWQsJy8nLCdcXCcsJ2cnKS5hOnF1b3RlCi0gICBsZXQgY21kcGF0aD0gYTpxdW90ZS5zdWJzdGl0dXRlKGE6Y21kLCdcXCcsJy8nLCdnJykuYTpxdW90ZQotIiAgIGNhbGwgRGVjaG8oImNtZHBhdGg8Ii5jbWRwYXRoLiI+ICh3aW4zMiBtb2QpIikKLSAgZWxzZQotICAgbGV0IGNtZHBhdGg9IGE6cXVvdGUuYTpjbWQuYTpxdW90ZQotIiAgIGNhbGwgRGVjaG8oImNtZHBhdGg8Ii5jbWRwYXRoLiI+IChub3Qtd2luMzIgbW9kKSIpCi0gIGVuZGlmCi0gIGlmIGE6cXVvdGUgPT0gIiIgJiYgZzp2aW1iYWxsX3BhdGhfZXNjYXBlICF+ICcgJwotICAgbGV0IGNtZHBhdGg9IGVzY2FwZShjbWRwYXRoLCcgJykKLSIgICBjYWxsIERlY2hvKCJjbWRwYXRoPCIuY21kcGF0aC4iPiAoZW1wdHkgcXVvdGUgY2FzZSkiKQotICBlbmRpZgotICBsZXQgY21kcGF0aD0gZXNjYXBlKGNtZHBhdGgsZzp2aW1iYWxsX3BhdGhfZXNjYXBlKQotIiAgY2FsbCBEcmV0KCJQYXRoIDwiLmNtZHBhdGguIj4iKQotICByZXR1cm4gY21kcGF0aAotZW5kZnVuCi0KLSIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAiIHM6UmVjb3JkSW5WYXI6IHJlY29yZCBhIHVuLXZpbWJhbGwgY29tbWFuZCBpbiB0aGUgLlZpbWJhbGxSZWNvcmQgZmlsZSB7e3syCiBmdW4hIHM6UmVjb3JkSW5WYXIoaG9tZSxjbWQpCiAiICBjYWxsIERmdW5jKCJSZWNvcmRJblZhcihob21lPCIuYTpob21lLiI+IGNtZDwiLmE6Y21kLiI+KSIpCkBAIC03MTksMTQgKzY5NSwxNCBAQAogICAgbGV0IHM6YWNka2VlcCA9ICZhY2QKICAgZW5kaWYKICAgbGV0IHM6ZWlrZWVwICA9ICZlaQotICBsZXQgczpmZW5rZWVwID0gJmZlbgorICBsZXQgczpmZW5rZWVwID0gJmw6ZmVuCiAgIGxldCBzOmhpZGtlZXAgPSAmaGlkZGVuCiAgIGxldCBzOmlja2VlcCAgPSAmaWMKICAgbGV0IHM6bHprZWVwICA9ICZsegogICBsZXQgczpwbWtlZXAgID0gJnBtCiAgIGxldCBzOnJlcGtlZXAgPSAmcmVwb3J0CiAgIGxldCBzOnZla2VlcCAgPSAmdmUKLSAgbGV0IHM6ZmZrZWVwICA9ICZmZgorICBsZXQgczpmZmtlZXAgID0gJmw6ZmYKICAgaWYgZXhpc3RzKCImYWNkIikKICAgIHNldGxvY2FsIGVpPWFsbCB2ZT1hbGwgbm9hY2Qgbm9mZW4gbm9pYyByZXBvcnQ9OTk5IG5vaGlkIGJ0PSBtYSBseiBwbT0gZmY9dW5peAogICBlbHNlCkBAIC03NDUsNyArNzIxLDcgQEAKICAgaWYgZXhpc3RzKCImYWNkIikKICAgIGxldCAmYWNkICAgPSBzOmFjZGtlZXAKICAgZW5kaWYKLSAgbGV0ICZmZW4gICAgPSBzOmZlbmtlZXAKKyAgbGV0ICZsOmZlbiAgPSBzOmZlbmtlZXAKICAgbGV0ICZoaWRkZW4gPSBzOmhpZGtlZXAKICAgbGV0ICZpYyAgICAgPSBzOmlja2VlcAogICBsZXQgJmx6ICAgICA9IHM6bHprZWVwCkBAIC03NTMsNyArNzI5LDcgQEAKICAgbGV0ICZyZXBvcnQgPSBzOnJlcGtlZXAKICAgbGV0ICZ2ZSAgICAgPSBzOnZla2VlcAogICBsZXQgJmVpICAgICA9IHM6ZWlrZWVwCi0gIGxldCAmZmYgICAgID0gczpmZmtlZXAKKyAgbGV0ICZsOmZmICAgPSBzOmZma2VlcAogICBpZiBzOm1ha2VlcFswXSAhPSAwCiAgICAiIHJlc3RvcmUgbWFyayBhCiAiICAgY2FsbCBEZWNobygicmVzdG9yZSBtYXJrLWE6IG1ha2VlcD0iLnN0cmluZyhtYWtlZXApKQpkaWZmIC0tZ2l0IGEvcnVudGltZS9hdXRvbG9hZC96aXAudmltIGIvcnVudGltZS9hdXRvbG9hZC96aXAudmltCmluZGV4IGIzNWE0MTEuLmFmNTY5NDQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvYXV0b2xvYWQvemlwLnZpbQorKysgYi9ydW50aW1lL2F1dG9sb2FkL3ppcC52aW0KQEAgLTEsNyArMSw3IEBACiAiIHppcC52aW06IEhhbmRsZXMgYnJvd3NpbmcgemlwZmlsZXMKICIgICAgICAgICAgICBBVVRPTE9BRCBQT1JUSU9OCi0iIERhdGU6CQlKdWwgMTIsIDIwMDgKLSIgVmVyc2lvbjoJMjEgKG1vZGlmaWVkIGJ5IEJyYW0pCisiIERhdGU6CQlKdWwgMzAsIDIwMDgKKyIgVmVyc2lvbjoJMjIKICIgTWFpbnRhaW5lcjoJQ2hhcmxlcyBFIENhbXBiZWxsLCBKciA8TmRyT2NoaXBAU2NhbXBiZWxsUGZhbWlseS5BYml6TS1OT1NQQU0+CiAiIExpY2Vuc2U6CVZpbSBMaWNlbnNlICAoc2VlIHZpbSdzIDpoZWxwIGxpY2Vuc2UpCiAiIENvcHlyaWdodDogICAgQ29weXJpZ2h0IChDKSAyMDA1LTIwMDggQ2hhcmxlcyBFLiBDYW1wYmVsbCwgSnIuIHt7ezEKQEAgLTIyLDcgKzIyLDcgQEAKICBmaW5pc2gKIGVuZGlmCiAKLWxldCBnOmxvYWRlZF96aXAgICAgID0gInYyMStiIgorbGV0IGc6bG9hZGVkX3ppcCAgICAgPSAidjIyIgogbGV0IHM6emlwZmlsZV9lc2NhcGUgPSAnID8mO1wnCiBsZXQgczpFUlJPUiAgICAgICAgICA9IDIKIGxldCBzOldBUk5JTkcgICAgICAgID0gMQpAQCAtNTgsNiArNTgsMTIgQEAKICAgc2V0IHJlcG9ydD0xMAogCiAgICIgc2FuaXR5IGNoZWNrcworICBpZiAhZXhpc3RzKCIqZm5hbWVlc2NhcGUiKQorICAgaWYgJnZlcmJvc2UgPiAxCisgICAgZWNob2VyciAidGhlIHppcCBwbHVnaW4gaXMgbm90IGF2YWlsYWJsZSAoeW91ciB2aW0gZG9lbnMndCBzdXBwb3J0IGZuYW1lZXNjYXBlKCkpIgorICAgZW5kaWYKKyAgIHJldHVybgorICBlbmRpZgogICBpZiAhZXhlY3V0YWJsZShnOnppcF91bnppcGNtZCkKICAgIHJlZHJhdyEKICAgIGVjaG9obCBFcnJvciB8IGVjaG8gIioqKmVycm9yKioqICh6aXAjQnJvd3NlKSB1bnppcCBub3QgYXZhaWxhYmxlIG9uIHlvdXIgc3lzdGVtIgpAQCAtOTksOCArMTA1LDggQEAKICAgMGQKICAgJAogCi0iICBjYWxsIERlY2hvKCJleGUgc2lsZW50IHIhICIuZzp6aXBfdW56aXBjbWQuIiAtbCAiLnM6RXNjYXBlKGE6emlwZmlsZSwxKSkKLSAgZXhlICJzaWxlbnQgciEgIi5nOnppcF91bnppcGNtZC4iIC1sICIuczpFc2NhcGUoYTp6aXBmaWxlLDEpCisiICBjYWxsIERlY2hvKCJleGUgc2lsZW50IHIhICIuZzp6aXBfdW56aXBjbWQuIiAtbCAtLSAiLnM6RXNjYXBlKGE6emlwZmlsZSwxKSkKKyAgZXhlICJzaWxlbnQgciEgIi5nOnppcF91bnppcGNtZC4iIC1sIC0tICIuczpFc2NhcGUoYTp6aXBmaWxlLDEpCiAgIGlmIHY6c2hlbGxfZXJyb3IgIT0gMAogICAgcmVkcmF3IQogICAgZWNob2hsIFdhcm5pbmdNc2cgfCBlY2hvICIqKip3YXJuaW5nKioqICh6aXAjQnJvd3NlKSAiLmZuYW1lZXNjYXBlKGE6emlwZmlsZSkuIiBpcyBub3QgYSB6aXAgZmlsZSIgfCBlY2hvaGwgTm9uZQpAQCAtMTkzLDggKzE5OSw4IEBACiAiICBjYWxsIERlY2hvKCJ6aXBmaWxlPCIuemlwZmlsZS4iPiIpCiAiICBjYWxsIERlY2hvKCJmbmFtZSAgPCIuZm5hbWUuIj4iKQogCi0iICBjYWxsIERlY2hvKCJleGUgciEgIi5nOnppcF91bnppcGNtZC4iIC1wICIuczpFc2NhcGUoemlwZmlsZSwxKS4iICIuczpFc2NhcGUoZm5hbWUsMSkpCi0gIGV4ZSAic2lsZW50IHIhICIuZzp6aXBfdW56aXBjbWQuIiAtcCAiLnM6RXNjYXBlKHppcGZpbGUsMSkuIiAiLnM6RXNjYXBlKGZuYW1lLDEpCisiICBjYWxsIERlY2hvKCJleGUgciEgIi5nOnppcF91bnppcGNtZC4iIC1wIC0tICIuczpFc2NhcGUoemlwZmlsZSwxKS4iICIuczpFc2NhcGUoZm5hbWUsMSkpCisgIGV4ZSAic2lsZW50IHIhICIuZzp6aXBfdW56aXBjbWQuIiAtcCAtLSAiLnM6RXNjYXBlKHppcGZpbGUsMSkuIiAiLnM6RXNjYXBlKGZuYW1lLDEpCiAKICAgIiBjbGVhbnVwCiAgIDBkCkBAIC0yODYsOCArMjkyLDggQEAKICAgICBsZXQgZm5hbWUgPSBzdWJzdGl0dXRlKGZuYW1lLCAnWycsICdbW10nLCAnZycpCiAgIGVuZGlmCiAKLSIgIGNhbGwgRGVjaG8oZzp6aXBfemlwY21kLiIgLXUgIi5zOkVzY2FwZSh6aXBmaWxlLDApLiIgIi5zOkVzY2FwZShmbmFtZSwwKSkKLSAgY2FsbCBzeXN0ZW0oZzp6aXBfemlwY21kLiIgLXUgIi5zOkVzY2FwZSh6aXBmaWxlLDApLiIgIi5zOkVzY2FwZShmbmFtZSwwKSkKKyIgIGNhbGwgRGVjaG8oZzp6aXBfemlwY21kLiIgLXUgIi5zOkVzY2FwZShmbmFtZW1vZGlmeSh6aXBmaWxlLCI6cCIpLDApLiIgIi5zOkVzY2FwZShmbmFtZSwwKSkKKyAgY2FsbCBzeXN0ZW0oZzp6aXBfemlwY21kLiIgLXUgIi5zOkVzY2FwZShmbmFtZW1vZGlmeSh6aXBmaWxlLCI6cCIpLDApLiIgIi5zOkVzY2FwZShmbmFtZSwwKSkKICAgaWYgdjpzaGVsbF9lcnJvciAhPSAwCiAgICByZWRyYXchCiAgICBlY2hvaGwgRXJyb3IgfCBlY2hvICIqKiplcnJvcioqKiAoemlwI1dyaXRlKSBzb3JyeSwgdW5hYmxlIHRvIHVwZGF0ZSAiLnppcGZpbGUuIiB3aXRoICIuZm5hbWUgfCBlY2hvaGwgTm9uZQpAQCAtMzQyLDkgKzM0OCw4IEBACiBmdW4hIHM6Q2hnRGlyKG5ld2RpcixlcnJsdmwsZXJybXNnKQogIiAgY2FsbCBEZnVuYygiQ2hnRGlyKG5ld2RpcjwiLmE6bmV3ZGlyLiI+IGVycmx2bD0iLmE6ZXJybHZsLiIgIGVycm1zZzwiLmE6ZXJybXNnLiI+KSIpCiAKLQogICB0cnkKLSAgIGV4ZSAiY2QgIi5mbmFtZWVzY2FwZShuZXdkaXIpCisgICBleGUgImNkICIuZm5hbWVlc2NhcGUoYTpuZXdkaXIpCiAgIGNhdGNoIC9eVmltXCUoKFxhXCspXClcPTpFMzQ0LwogICAgcmVkcmF3IQogICAgaWYgYTplcnJsdmwgPT0gczpOT1RFCmRpZmYgLS1naXQgYS9ydW50aW1lL2NvbG9ycy9kYXJrYmx1ZS52aW0gYi9ydW50aW1lL2NvbG9ycy9kYXJrYmx1ZS52aW0KaW5kZXggYzE4MDBlYS4uNDExNzEyMiAxMDA2NDQKLS0tIGEvcnVudGltZS9jb2xvcnMvZGFya2JsdWUudmltCisrKyBiL3J1bnRpbWUvY29sb3JzL2RhcmtibHVlLnZpbQpAQCAtMSw2ICsxLDYgQEAKICIgVmltIGNvbG9yIGZpbGUKICIgTWFpbnRhaW5lcjoJQm9oZGFuIFZsYXN5dWsgPGJvaGRhbkB2c3R1LmVkdS51YT4KLSIgTGFzdCBDaGFuZ2U6CTIwMDYgQXByIDMwCisiIExhc3QgQ2hhbmdlOgkyMDA4IEp1bCAxOAogCiAiIGRhcmtibHVlIC0tIGZvciB0aG9zZSB3aG8gcHJlZmVyIGRhcmsgYmFja2dyb3VuZAogIiBbbm90ZTogbG9va3MgYml0IHVnbGllciB3aXRoIGNvbWUgdGVybWluYWwgcGFsZXR0ZXMsCkBAIC01OCwzICs1OCw5IEBACiBoaSB0eXBlCQljdGVybWZnPWdyZWVuIGd1aWZnPSM2MGZmNjAgZ3VpPW5vbmUgY3Rlcm09bm9uZQogaGkgVW5kZXJsaW5lZAljdGVybT11bmRlcmxpbmUgdGVybT11bmRlcmxpbmUKIGhpIElnbm9yZQlndWlmZz1iZyBjdGVybWZnPWJnCisKKyIgc3VnZ2VzdGVkIGJ5IHRpZ21vaWQsIDIwMDggSnVsIDE4CitoaSBQbWVudSBndWlmZz0jYzBjMGMwIGd1aWJnPSM0MDQwODAKK2hpIFBtZW51U2VsIGd1aWZnPSNjMGMwYzAgZ3VpYmc9IzIwNTBkMAoraGkgUG1lbnVTYmFyIGd1aWZnPWJsdWUgZ3VpYmc9ZGFya2dyYXkKK2hpIFBtZW51VGh1bWIgZ3VpZmc9I2MwYzBjMApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvTWFrZWZpbGUgYi9ydW50aW1lL2RvYy9NYWtlZmlsZQppbmRleCAzYTI4OWQ3Li4yZjY5NzUwIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9NYWtlZmlsZQorKysgYi9ydW50aW1lL2RvYy9NYWtlZmlsZQpAQCAtMjg3LDYgKzI4NywxMSBAQAogCXZpbWRpZmYtaXQuVVRGLTguMSBcCiAJdmltdHV0b3ItaXQuVVRGLTguMSBcCiAJeHhkLWl0LlVURi04LjEgXAorCXZpbS1wbC5VVEYtOC4xIFwKKwlldmltLXBsLlVURi04LjEgXAorCXZpbWRpZmYtcGwuVVRGLTguMSBcCisJdmltdHV0b3ItcGwuVVRGLTguMSBcCisJeHhkLXBsLlVURi04LjEgXAogCXZpbS1ydS5VVEYtOC4xIFwKIAlldmltLXJ1LlVURi04LjEgXAogCXZpbWRpZmYtcnUuVVRGLTguMSBcCkBAIC0yOTYsNyArMzAxLDcgQEAKIC5TVUZGSVhFUzoKIC5TVUZGSVhFUzogLmMgLm8gLnR4dCAuaHRtbAogCi1hbGw6IHRhZ3MgdmltLm1hbiB2aW1kaWZmLm1hbiB2aW10dXRvci5tYW4geHhkLm1hbiAkKENPTlZFUlRFRCkKK2FsbDogdGFncyB2aW0ubWFuIGV2aW0ubWFuIHZpbWRpZmYubWFuIHZpbXR1dG9yLm1hbiB4eGQubWFuICQoQ09OVkVSVEVEKQogCiAjIFVzZSBWaW0gdG8gZ2VuZXJhdGUgdGhlIHRhZ3MgZmlsZS4gIENhbiBvbmx5IGJlIHVzZWQgd2hlbiBWaW0gaGFzIGJlZW4KICMgY29tcGlsZWQgYW5kIGluc3RhbGxlZC4gIFN1cHBvcnRzIG11bHRpcGxlIGxhbmd1YWdlcy4KQEAgLTMxNCw2ICszMTksOSBAQAogdmltLm1hbjogdmltLjEKIAlucm9mZiAtbWFuIHZpbS4xIHwgc2VkIC1lIHMvLggvL2cgPiB2aW0ubWFuCiAKK2V2aW0ubWFuOiBldmltLjEKKwlucm9mZiAtbWFuIGV2aW0uMSB8IHNlZCAtZSBzLy4ILy9nID4gZXZpbS5tYW4KKwogdmltZGlmZi5tYW46IHZpbWRpZmYuMQogCW5yb2ZmIC1tYW4gdmltZGlmZi4xIHwgc2VkIC1lIHMvLggvL2cgPiB2aW1kaWZmLm1hbgogCkBAIC00NDUsNiArNDUzLDIxIEBACiB4eGQtaXQuVVRGLTguMTogeHhkLWl0LjEKIAlpY29udiAtZiBsYXRpbjEgLXQgdXRmLTggJDwgPiRACiAKK3ZpbS1wbC5VVEYtOC4xOiB2aW0tcGwuMQorCWljb252IC1mIGxhdGluMiAtdCB1dGYtOCAkPCA+JEAKKworZXZpbS1wbC5VVEYtOC4xOiBldmltLXBsLjEKKwlpY29udiAtZiBsYXRpbjIgLXQgdXRmLTggJDwgPiRACisKK3ZpbWRpZmYtcGwuVVRGLTguMTogdmltZGlmZi1wbC4xCisJaWNvbnYgLWYgbGF0aW4yIC10IHV0Zi04ICQ8ID4kQAorCit2aW10dXRvci1wbC5VVEYtOC4xOiB2aW10dXRvci1wbC4xCisJaWNvbnYgLWYgbGF0aW4yIC10IHV0Zi04ICQ8ID4kQAorCit4eGQtcGwuVVRGLTguMTogeHhkLXBsLjEKKwlpY29udiAtZiBsYXRpbjIgLXQgdXRmLTggJDwgPiRACisKIHZpbS1ydS5VVEYtOC4xOiB2aW0tcnUuMQogCWljb252IC1mIEtPSTgtUiAtdCB1dGYtOCAkPCA+JEAKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvYXJhYmljLnR4dCBiL3J1bnRpbWUvZG9jL2FyYWJpYy50eHQKaW5kZXggZGM4ZTliMS4uMTY0NzY0YyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvYXJhYmljLnR4dAorKysgYi9ydW50aW1lL2RvYy9hcmFiaWMudHh0CkBAIC0xLDQgKzEsNCBAQAotKmFyYWJpYy50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDUgTWFyIDI5CisqYXJhYmljLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNSBNYXIgMjkKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwJICBieSBOYWRpbSBTaGFpa2xpCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9hdXRvY21kLnR4dCBiL3J1bnRpbWUvZG9jL2F1dG9jbWQudHh0CmluZGV4IGU4OTJmNGMuLjI3MWRkNWMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2F1dG9jbWQudHh0CisrKyBiL3J1bnRpbWUvZG9jL2F1dG9jbWQudHh0CkBAIC0xLDQgKzEsNCBAQAotKmF1dG9jbWQudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDI3CisqYXV0b2NtZC50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjcKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2NoYW5nZS50eHQgYi9ydW50aW1lL2RvYy9jaGFuZ2UudHh0CmluZGV4IDY1YWY1ZmMuLmUzOGNjMjQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2NoYW5nZS50eHQKKysrIGIvcnVudGltZS9kb2MvY2hhbmdlLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpjaGFuZ2UudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA4IEp1bCAwOQorKmNoYW5nZS50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVsIDI0CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0xNTYxLDEwICsxNTYxLDEyIEBACiAKIAkJCVdpdGggW25dIHNvcnRpbmcgaXMgZG9uZSBvbiB0aGUgZmlyc3QgZGVjaW1hbCBudW1iZXIKIAkJCWluIHRoZSBsaW5lIChhZnRlciBvciBpbnNpZGUgYSB7cGF0dGVybn0gbWF0Y2gpLgorCQkJT25lIGxlYWRpbmcgJy0nIGlzIGluY2x1ZGVkIGluIHRoZSBudW1iZXIuCiAKIAkJCVdpdGggW3hdIHNvcnRpbmcgaXMgZG9uZSBvbiB0aGUgZmlyc3QgaGV4YWRlY2ltYWwKIAkJCW51bWJlciBpbiB0aGUgbGluZSAoYWZ0ZXIgb3IgaW5zaWRlIGEge3BhdHRlcm59CiAJCQltYXRjaCkuICBBIGxlYWRpbmcgIjB4IiBvciAiMFgiIGlzIGlnbm9yZWQuCisJCQlPbmUgbGVhZGluZyAnLScgaXMgaW5jbHVkZWQgaW4gdGhlIG51bWJlci4KIAogCQkJV2l0aCBbb10gc29ydGluZyBpcyBkb25lIG9uIHRoZSBmaXJzdCBvY3RhbCBudW1iZXIgaW4KIAkJCXRoZSBsaW5lIChhZnRlciBvciBpbnNpZGUgYSB7cGF0dGVybn0gbWF0Y2gpLgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvY21kbGluZS50eHQgYi9ydW50aW1lL2RvYy9jbWRsaW5lLnR4dAppbmRleCA4ZjU3N2M4Li42NmE4ZGUzIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9jbWRsaW5lLnR4dAorKysgYi9ydW50aW1lL2RvYy9jbWRsaW5lLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpjbWRsaW5lLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA4IEp1bCAxMQorKmNtZGxpbmUudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVsIDI5CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC05OSwxOSArOTksMjAgQEAKIAkJY3Vyc29yIHRvIGVuZCBvZiBjb21tYW5kLWxpbmUKIAogCQkJCQkJCSpjXzxMZWZ0TW91c2U+KgotPExlZnRNb3VzZT4JY3Vyc29yIHRvIHBvc2l0aW9uIG9mIG1vdXNlIGNsaWNrLgorPExlZnRNb3VzZT4JTW92ZSB0aGUgY3Vyc29yIHRvIHRoZSBwb3NpdGlvbiBvZiB0aGUgbW91c2UgY2xpY2suCiAKIENUUkwtSAkJCQkJCQkqY188QlM+KiAqY19DVFJMLUgqCi08QlM+CQlkZWxldGUgdGhlIGNoYXJhY3RlciBpbiBmcm9udCBvZiB0aGUgY3Vyc29yIChzZWUgfDpmaXhkZWx8IGlmCis8QlM+CQlEZWxldGUgdGhlIGNoYXJhY3RlciBpbiBmcm9udCBvZiB0aGUgY3Vyc29yIChzZWUgfDpmaXhkZWx8IGlmCiAJCXlvdXIgPEJTPiBrZXkgZG9lcyBub3QgZG8gd2hhdCB5b3Ugd2FudCkuCiAJCQkJCQkJKmNfPERlbD4qCi08RGVsPgkJZGVsZXRlIHRoZSBjaGFyYWN0ZXIgdW5kZXIgdGhlIGN1cnNvciAoYXQgZW5kIG9mIGxpbmU6Cis8RGVsPgkJRGVsZXRlIHRoZSBjaGFyYWN0ZXIgdW5kZXIgdGhlIGN1cnNvciAoYXQgZW5kIG9mIGxpbmU6CiAJCWNoYXJhY3RlciBiZWZvcmUgdGhlIGN1cnNvcikgKHNlZSB8OmZpeGRlbHwgaWYgeW91ciA8RGVsPgogCQlrZXkgZG9lcyBub3QgZG8gd2hhdCB5b3Ugd2FudCkuCiAJCQkJCQkJKmNfQ1RSTC1XKgotQ1RSTC1XCQlkZWxldGUgdGhlIHdvcmQgYmVmb3JlIHRoZSBjdXJzb3IKK0NUUkwtVwkJRGVsZXRlIHRoZSB8d29yZHwgYmVmb3JlIHRoZSBjdXJzb3IuICBUaGlzIGRlcGVuZHMgb24gdGhlCisJCSdpc2tleXdvcmQnIG9wdGlvbi4KIAkJCQkJCQkqY19DVFJMLVUqCi1DVFJMLVUJCXJlbW92ZSBhbGwgY2hhcmFjdGVycyBiZXR3ZWVuIHRoZSBjdXJzb3IgcG9zaXRpb24gYW5kCitDVFJMLVUJCVJlbW92ZSBhbGwgY2hhcmFjdGVycyBiZXR3ZWVuIHRoZSBjdXJzb3IgcG9zaXRpb24gYW5kCiAJCXRoZSBiZWdpbm5pbmcgb2YgdGhlIGxpbmUuICBQcmV2aW91cyB2ZXJzaW9ucyBvZiB2aW0KIAkJZGVsZXRlZCBhbGwgY2hhcmFjdGVycyBvbiB0aGUgbGluZS4gIElmIHRoYXQgaXMgdGhlCiAJCXByZWZlcnJlZCBiZWhhdmlvciwgYWRkIHRoZSBmb2xsb3dpbmcgdG8geW91ciAudmltcmM6ID4KQEAgLTk5Nyw3ICs5OTgsNyBAQAogSWYgeW91IHdvdWxkIGxpa2UgdG8gZXhlY3V0ZSB0aGUgY29tbWFuZCB1bmRlciB0aGUgY3Vyc29yIGFuZCB0aGVuIGhhdmUgdGhlCiBjb21tYW5kLWxpbmUgd2luZG93IG9wZW4gYWdhaW4sIHlvdSBtYXkgZmluZCB0aGlzIG1hcHBpbmcgdXNlZnVsOiA+CiAKLQk6bWFwIDxGNT4gPENSPnE6CisJOmF1dG9jbWQgQ21kd2luRW50ZXIgKiBtYXAgPGJ1ZmZlcj4gPEY1PiA8Q1I+cToKIAogCiBWQVJJT1VTCkBAIC0xMDQ0LDkgKzEwNDUsOSBAQAogc3BlY2lmaWNhbGx5IGZvciB0aGUgY29tbWFuZC1saW5lIHdpbmRvdy4gIEJlIGNhcmVmdWwgbm90IHRvIGNhdXNlIHNpZGUKIGVmZmVjdHMhCiBFeGFtcGxlOiA+Ci0JOmF1IENtZHdpbkVudGVyIDogIGxldCBiOmNwdF9zYXZlID0gJmNwdCB8IHNldCBjcHQ9dgorCTphdSBDbWR3aW5FbnRlciA6ICBsZXQgYjpjcHRfc2F2ZSA9ICZjcHQgfCBzZXQgY3B0PS4KIAk6YXUgQ21kd2luTGVhdmUgOiAgbGV0ICZjcHQgPSBiOmNwdF9zYXZlCi1UaGlzIHNldHMgJ2NvbXBsZXRlJyB0byB1c2UgY29tbWFuZC1saW5lIGNvbXBsZXRpb24gaW4gSW5zZXJ0IG1vZGUgZm9yIENUUkwtTi4KK1RoaXMgc2V0cyAnY29tcGxldGUnIHRvIHVzZSBjb21wbGV0aW9uIGluIHRoZSBjdXJyZW50IHdpbmRvdyBmb3IgfGlfQ1RSTC1OfC4KIEFub3RoZXIgZXhhbXBsZTogPgogCTphdSBDbWR3aW5FbnRlciBbLz9dICBzdGFydGluc2VydAogVGhpcyB3aWxsIG1ha2UgVmltIHN0YXJ0IGluIEluc2VydCBtb2RlIGluIHRoZSBjb21tYW5kLWxpbmUgd2luZG93LgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvZGVidWcudHh0IGIvcnVudGltZS9kb2MvZGVidWcudHh0CmluZGV4IDFlYjIwYWYuLmFhYzU4OWYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2RlYnVnLnR4dAorKysgYi9ydW50aW1lL2RvYy9kZWJ1Zy50eHQKQEAgLTEsNCArMSw0IEBACi0qZGVidWcudHh0KiAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNiBNYXkgMDEKKypkZWJ1Zy50eHQqICAgICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA2IE1heSAwMQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvZGVidWdnZXIudHh0IGIvcnVudGltZS9kb2MvZGVidWdnZXIudHh0CmluZGV4IGVhOTg1OGEuLmRmYjMwMmQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2RlYnVnZ2VyLnR4dAorKysgYi9ydW50aW1lL2RvYy9kZWJ1Z2dlci50eHQKQEAgLTEsNCArMSw0IEBACi0qZGVidWdnZXIudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNSBNYXIgMjkKKypkZWJ1Z2dlci50eHQqICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA1IE1hciAyOQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBHb3Jkb24gUHJpZXVyCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9kZXZlbG9wLnR4dCBiL3J1bnRpbWUvZG9jL2RldmVsb3AudHh0CmluZGV4IDg1YmYxYzUuLmQxOGI5NTQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2RldmVsb3AudHh0CisrKyBiL3J1bnRpbWUvZG9jL2RldmVsb3AudHh0CkBAIC0xLDQgKzEsNCBAQAotKmRldmVsb3AudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDcgTWF5IDExCisqZGV2ZWxvcC50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNyBNYXkgMTEKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2RpZmYudHh0IGIvcnVudGltZS9kb2MvZGlmZi50eHQKaW5kZXggMzc5ZjZhNi4uMjE3N2M1NiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvZGlmZi50eHQKKysrIGIvcnVudGltZS9kb2MvZGlmZi50eHQKQEAgLTEsMTIgKzEsMTIgQEAKLSpkaWZmLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA2IE9jdCAwMgorKmRpZmYudHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVsIDIxCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCiAKIAogCQkJCSpkaWZmKiAqdmltZGlmZiogKmd2aW1kaWZmKiAqZGlmZi1tb2RlKgotVGhpcyBmaWxlIGRlc2NyaWJlcyB0aGUgK2RpZmYgZmVhdHVyZTogU2hvd2luZyBkaWZmZXJlbmNlcyBiZXR3ZWVuIHR3byBvcgotdGhyZWUgdmVyc2lvbnMgb2YgdGhlIHNhbWUgZmlsZS4KK1RoaXMgZmlsZSBkZXNjcmliZXMgdGhlICtkaWZmIGZlYXR1cmU6IFNob3dpbmcgZGlmZmVyZW5jZXMgYmV0d2VlbiB0d28sCit0aHJlZSBvciBmb3VyIHZlcnNpb25zIG9mIHRoZSBzYW1lIGZpbGUuCiAKIFRoZSBiYXNpY3MgYXJlIGV4cGxhaW5lZCBpbiBzZWN0aW9uIHwwOC43fCBvZiB0aGUgdXNlciBtYW51YWwuCiAKQEAgLTQ5LDcgKzQ5LDcgQEAKIHVzaW5nIHRoZSB8LU98IGFyZ3VtZW50LiAgVGhpcyB1c2VzIHZlcnRpY2FsIHNwbGl0cy4gIElmIHlvdSBwcmVmZXIgaG9yaXpvbnRhbAogc3BsaXRzIGFkZCB0aGUgfC1vfCBhcmd1bWVudDogPgogCi0JdmltZGlmZiAtbyBmaWxlMSBmaWxlMiBbZmlsZTNdCisJdmltZGlmZiAtbyBmaWxlMSBmaWxlMiBbZmlsZTMgW2ZpbGU0XV0KIAogSWYgeW91IGFsd2F5cyBwcmVmZXIgaG9yaXpvbnRhbCBzcGxpdHMgaW5jbHVkZSAiaG9yaXpvbnRhbCIgaW4gJ2RpZmZvcHQnLgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9kaWdyYXBoLnR4dCBiL3J1bnRpbWUvZG9jL2RpZ3JhcGgudHh0CmluZGV4IGIxNTY1MWQuLjdjYzI1NTggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2RpZ3JhcGgudHh0CisrKyBiL3J1bnRpbWUvZG9jL2RpZ3JhcGgudHh0CkBAIC0xLDQgKzEsNCBAQAotKmRpZ3JhcGgudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDcgU2VwIDEwCisqZGlncmFwaC50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBKdWwgMTcKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTUzLDcgKzUzLDkgQEAKIFRoZSBkZWNpbWFsIG51bWJlciBub3JtYWxseSBpcyB0aGUgVW5pY29kZSBudW1iZXIgb2YgdGhlIGNoYXJhY3Rlci4gIE5vdGUgdGhhdAogdGhlIG1lYW5pbmcgZG9lc24ndCBjaGFuZ2Ugd2hlbiAnZW5jb2RpbmcnIGNoYW5nZXMuICBUaGUgY2hhcmFjdGVyIHdpbGwgYmUKIGNvbnZlcnRlZCBmcm9tIFVuaWNvZGUgdG8gJ2VuY29kaW5nJyB3aGVuIG5lZWRlZC4gIFRoaXMgZG9lcyByZXF1aXJlIHRoZQotY29udmVyc2lvbiB0byBiZSBhdmFpbGFibGUsIGl0IG1pZ2h0IGZhaWwuCitjb252ZXJzaW9uIHRvIGJlIGF2YWlsYWJsZSwgaXQgbWlnaHQgZmFpbC4gIEZvciB0aGUgTlVMIGNoYXJhY3RlciB5b3Ugd2lsbCBzZWUKKyIxMCIuICBUaGF0J3MgYmVjYXVzZSBOVUwgY2hhcmFjdGVycyBhcmUgaW50ZXJuYWxseSByZXByZXNlbnRlZCB3aXRoIGEgTkwKK2NoYXJhY3Rlci4gIFdoZW4geW91IHdyaXRlIHRoZSBmaWxlIGl0IHdpbGwgYmVjb21lIGEgTlVMIGNoYXJhY3Rlci4KIAogV2hlbiBWaW0gd2FzIGNvbXBpbGVkIHdpdGhvdXQgdGhlICttdWx0aV9ieXRlIGZlYXR1cmUsIHlvdSBuZWVkIHRvIHNwZWNpZnkgdGhlCiBjaGFyYWN0ZXIgaW4gdGhlIGVuY29kaW5nIGdpdmVuIHdpdGggJ2VuY29kaW5nJy4gIFlvdSBtaWdodCB3YW50IHRvIHVzZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvZWRpdGluZy50eHQgYi9ydW50aW1lL2RvYy9lZGl0aW5nLnR4dAppbmRleCA2NWExMTM0Li4wNWE5ZTE0IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9lZGl0aW5nLnR4dAorKysgYi9ydW50aW1lL2RvYy9lZGl0aW5nLnR4dApAQCAtMSw0ICsxLDQgQEAKLSplZGl0aW5nLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA4IEp1bCAwNQorKmVkaXRpbmcudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVsIDA1CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9ldmFsLnR4dCBiL3J1bnRpbWUvZG9jL2V2YWwudHh0CmluZGV4IDIwZmEzNjEuLmZmZTVlYTkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2V2YWwudHh0CisrKyBiL3J1bnRpbWUvZG9jL2V2YWwudHh0CkBAIC0xLDQgKzEsNCBAQAotKmV2YWwudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA4IEp1bCAwOQorKmV2YWwudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IEp1bCAxNgogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC05NjcsMTEgKzk2NywxNiBAQAogCTMuCQllbXB0eSB7TX0KIAkxZTQwCQltaXNzaW5nIC57TX0KIAorCQkJCQkJCSpmbG9hdC1waSogKmZsb2F0LWUqCitBIGZldyB1c2VmdWwgdmFsdWVzIHRvIGNvcHkmcGFzdGU6ID4KKwk6bGV0IHBpID0gMy4xNDE1OTI2NTM1OQorCTpsZXQgZSAgPSAyLjcxODI4MTgyODQ2CisKIFJhdGlvbmFsZToKIEJlZm9yZSBmbG9hdGluZyBwb2ludCB3YXMgaW50cm9kdWNlZCwgdGhlIHRleHQgIjEyMy40NTYiIHdhcyBpbnRlcnByZXRlZCBhcwogdGhlIHR3byBudW1iZXJzICIxMjMiIGFuZCAiNDU2IiwgYm90aCBjb252ZXJ0ZWQgdG8gYSBzdHJpbmcgYW5kIGNvbmNhdGVuYXRlZCwKIHJlc3VsdGluZyBpbiB0aGUgc3RyaW5nICIxMjM0NTYiLiAgU2luY2UgdGhpcyB3YXMgY29uc2lkZXJlZCBwb2ludGxlc3MsIGFuZCB3ZQotY291bGQgbm90IGZpbmQgaXQgYWN0dWFsbHkgYmVpbmcgdXNlZCBpbiBWaW0gc2NyaXB0cywgdGhpcyBiYWNrd2FyZHMKK2NvdWxkIG5vdCBmaW5kIGl0IGludGVudGlvbmFsbHkgYmVpbmcgdXNlZCBpbiBWaW0gc2NyaXB0cywgdGhpcyBiYWNrd2FyZHMKIGluY29tcGF0aWJpbGl0eSB3YXMgYWNjZXB0ZWQgaW4gZmF2b3Igb2YgYmVpbmcgYWJsZSB0byB1c2UgdGhlIG5vcm1hbCBub3RhdGlvbgogZm9yIGZsb2F0aW5nIHBvaW50IG51bWJlcnMuCiAKQEAgLTQ5NjMsOSArNDk2OCwxNiBAQAogCQlhbmQgcmVwbGFjZSBhbGwgIiciIHdpdGggIidcJyciLgogCQlXaGVuIHRoZSB7c3BlY2lhbH0gYXJndW1lbnQgaXMgcHJlc2VudCBhbmQgaXQncyBhIG5vbi16ZXJvCiAJCU51bWJlciBvciBhIG5vbi1lbXB0eSBTdHJpbmcgKHxub24temVyby1hcmd8KSwgdGhlbiBzcGVjaWFsCi0JCWl0ZW1zIHN1Y2ggYXMgIiUiLCAiIyIgYW5kICI8Y3dvcmQ+IiB3aWxsIGJlIHByZWNlZGVkIGJ5IGEKLQkJYmFja3NsYXNoLiAgVGhpcyBiYWNrc2xhc2ggd2lsbCBiZSByZW1vdmVkIGFnYWluIGJ5IHRoZSB8OiF8CisJCWl0ZW1zIHN1Y2ggYXMgIiEiLCAiJSIsICIjIiBhbmQgIjxjd29yZD4iIHdpbGwgYmUgcHJlY2VkZWQgYnkKKwkJYSBiYWNrc2xhc2guICBUaGlzIGJhY2tzbGFzaCB3aWxsIGJlIHJlbW92ZWQgYWdhaW4gYnkgdGhlIHw6IXwKIAkJY29tbWFuZC4KKwkJVGhlICIhIiBjaGFyYWN0ZXIgd2lsbCBiZSBlc2NhcGVkIChhZ2FpbiB3aXRoIGEgfG5vbi16ZXJvLWFyZ3wKKwkJe3NwZWNpYWx9KSB3aGVuICdzaGVsbCcgY29udGFpbnMgImNzaCIgaW4gdGhlIHRhaWwuICBUaGF0IGlzCisJCWJlY2F1c2UgZm9yIGNzaCBhbmQgdGNzaCAiISIgaXMgdXNlZCBmb3IgaGlzdG9yeSByZXBsYWNlbWVudAorCQlldmVuIHdoZW4gaW5zaWRlIHNpbmdsZSBxdW90ZXMuCisJCVRoZSA8Tkw+IGNoYXJhY3RlciBpcyBhbHNvIGVzY2FwZWQuICBXaXRoIGEgfG5vbi16ZXJvLWFyZ3wKKwkJe3NwZWNpYWx9IGFuZCAnc2hlbGwnIGNvbnRhaW5pbmcgImNzaCIgaW4gdGhlIHRhaWwgaXQncworCQllc2NhcGVkIGEgc2Vjb25kIHRpbWUuCiAJCUV4YW1wbGUgb2YgdXNlIHdpdGggYSB8OiF8IGNvbW1hbmQ6ID4KIAkJICAgIDpleGUgJyFkaXIgJyAuIHNoZWxsZXNjYXBlKGV4cGFuZCgnPGNmaWxlPicpLCAxKQogPAkJVGhpcyByZXN1bHRzIGluIGEgZGlyZWN0b3J5IGxpc3RpbmcgZm9yIHRoZSBmaWxlIHVuZGVyIHRoZQpAQCAtNTkxOCw3ICs1OTMwLDcgQEAKIEEgZnVuY3Rpb24gbG9jYWwgdG8gYSBzY3JpcHQgbXVzdCBzdGFydCB3aXRoICJzOiIuICBBIGxvY2FsIHNjcmlwdCBmdW5jdGlvbgogY2FuIG9ubHkgYmUgY2FsbGVkIGZyb20gd2l0aGluIHRoZSBzY3JpcHQgYW5kIGZyb20gZnVuY3Rpb25zLCB1c2VyIGNvbW1hbmRzCiBhbmQgYXV0b2NvbW1hbmRzIGRlZmluZWQgaW4gdGhlIHNjcmlwdC4gIEl0IGlzIGFsc28gcG9zc2libGUgdG8gY2FsbCB0aGUKLWZ1bmN0aW9uIGZyb20gYSBtYXBwaW5ncyBkZWZpbmVkIGluIHRoZSBzY3JpcHQsIGJ1dCB0aGVuIHw8U0lEPnwgbXVzdCBiZSB1c2VkCitmdW5jdGlvbiBmcm9tIGEgbWFwcGluZyBkZWZpbmVkIGluIHRoZSBzY3JpcHQsIGJ1dCB0aGVuIHw8U0lEPnwgbXVzdCBiZSB1c2VkCiBpbnN0ZWFkIG9mICJzOiIgd2hlbiB0aGUgbWFwcGluZyBpcyBleHBhbmRlZCBvdXRzaWRlIG9mIHRoZSBzY3JpcHQuCiAKIAkJCQkJKjpmdSogKjpmdW5jdGlvbiogKkUxMjgqICpFMTI5KiAqRTEyMyoKQEAgLTYwMjgsNyArNjA0MCw3IEBACiB0aGF0ICJhOjEiIGlzIHRoZSBzYW1lIGFzICJhOjAwMFswXSIuCiAJCQkJCQkJCSpFNzQyKgogVGhlIGE6IHNjb3BlIGFuZCB0aGUgdmFyaWFibGVzIGluIGl0IGNhbm5vdCBiZSBjaGFuZ2VkLCB0aGV5IGFyZSBmaXhlZC4KLUhvd2V2ZXIsIGlmIGEgfExpc3R8IG9yIHxEaWN0aW9uYXJ5fCBpcyB1c2VkLCB5b3UgY2FuIGNoYW5nZXMgdGhlaXIgY29udGVudHMuCitIb3dldmVyLCBpZiBhIHxMaXN0fCBvciB8RGljdGlvbmFyeXwgaXMgdXNlZCwgeW91IGNhbiBjaGFuZ2UgdGhlaXIgY29udGVudHMuCiBUaHVzIHlvdSBjYW4gcGFzcyBhIHxMaXN0fCB0byBhIGZ1bmN0aW9uIGFuZCBoYXZlIHRoZSBmdW5jdGlvbiBhZGQgYW4gaXRlbSB0bwogaXQuICBJZiB5b3Ugd2FudCB0byBtYWtlIHN1cmUgdGhlIGZ1bmN0aW9uIGNhbm5vdCBjaGFuZ2UgYSB8TGlzdHwgb3IKIHxEaWN0aW9uYXJ5fCB1c2UgfDpsb2NrdmFyfC4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2ZhcnNpLnR4dCBiL3J1bnRpbWUvZG9jL2ZhcnNpLnR4dAppbmRleCA1YTQyZTQzLi5mMDQ0ZTBmIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9mYXJzaS50eHQKKysrIGIvcnVudGltZS9kb2MvZmFyc2kudHh0CkBAIC0xLDQgKzEsNCBAQAotKmZhcnNpLnR4dCogICAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDUgTWFyIDI5CisqZmFyc2kudHh0KiAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNSBNYXIgMjkKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgTW9ydGF6YSBHaGFzc2FiIFNoaXJhbgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvZmlsZXR5cGUudHh0IGIvcnVudGltZS9kb2MvZmlsZXR5cGUudHh0CmluZGV4IDRiZmY0MmQuLjRiNWFjOWUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2ZpbGV0eXBlLnR4dAorKysgYi9ydW50aW1lL2RvYy9maWxldHlwZS50eHQKQEAgLTEsNCArMSw0IEBACi0qZmlsZXR5cGUudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjcKKypmaWxldHlwZS50eHQqICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IEp1bCAxNQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtNDgyLDYgKzQ4MiwyOSBAQAogCQkJVGhlIGRlZmF1bHQgaXMgJ15ccyokJyB3aGljaCBmaW5kcyBsaW5lcyB0aGF0IGNvbnRhaW4KIAkJCW9ubHkgd2hpdGVzcGFjZSBvciBhcmUgY29tcGxldGVseSBlbXB0eS4KIAorYjpjaGFuZ2Vsb2dfbmFtZQkJCQkJKmI6Y2hhbmdlbG9nX25hbWUqCisJCQlOYW1lIG9mIHRoZSBDaGFuZ2VMb2cgZmlsZSB0byBsb29rIGZvci4KKwkJCVRoZSBkZWZhdWx0IGlzICdDaGFuZ2VMb2cnLgorCitiOmNoYW5nZWxvZ19wYXRoCisJCQlQYXRoIG9mIHRoZSBDaGFuZ2VMb2cgdG8gdXNlIGZvciB0aGUgY3VycmVudCBidWZmZXIuCisJCQlUaGUgZGVmYXVsdCBpcyBlbXB0eSwgdGh1cyBsb29raW5nIGZvciBhIGZpbGUgbmFtZWQKKwkJCXxiOmNoYW5nZWxvZ19uYW1lfCBpbiB0aGUgc2FtZSBkaXJlY3RvcnkgYXMgdGhlCisJCQljdXJyZW50IGJ1ZmZlci4gIElmIG5vdCBmb3VuZCwgdGhlIHBhcmVudCBkaXJlY3Rvcnkgb2YKKwkJCXRoZSBjdXJyZW50IGJ1ZmZlciBpcyBzZWFyY2hlZC4gIFRoaXMgY29udGludWVzCisJCQlyZWN1cnNpdmVseSB1bnRpbCBhIGZpbGUgaXMgZm91bmQgb3IgdGhlcmUgYXJlIG5vIG1vcmUKKwkJCXBhcmVudCBkaXJlY3RvcmllcyB0byBzZWFyY2guCisKK2I6Y2hhbmdlbG9nX2VudHJ5X3ByZWZpeAorCQkJTmFtZSBvZiBhIGZ1bmN0aW9uIHRvIGNhbGwgdG8gZ2VuZXJhdGUgYSBwcmVmaXggdG8gYQorCQkJbmV3IGVudHJ5LiAgVGhpcyBmdW5jdGlvbiB0YWtlcyBubyBhcmd1bWVudHMgYW5kCisJCQlzaG91bGQgcmV0dXJuIGEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIHByZWZpeC4KKwkJCVJldHVybmluZyBhbiBlbXB0eSBwcmVmaXggaXMgZmluZS4KKwkJCVRoZSBkZWZhdWx0IGdlbmVyYXRlcyB0aGUgc2hvcnRlc3QgcGF0aCBiZXR3ZWVuIHRoZQorCQkJQ2hhbmdlTG9nJ3MgcGF0aG5hbWUgYW5kIHRoZSBjdXJyZW50IGJ1ZmZlcnMgcGF0aG5hbWUuCisJCQlJbiB0aGUgZnV0dXJlLCBpdCB3aWxsIGFsc28gYmUgcG9zc2libGUgdG8gdXNlIG90aGVyCisJCQl2YXJpYWJsZSBjb250ZXh0cyBmb3IgdGhpcyB2YXJpYWJsZSwgZm9yIGV4YW1wbGUsIGc6LgorCiBUaGUgQ2hhbmdlbG9nIGVudHJpZXMgYXJlIGluc2VydGVkIHdoZXJlIHRoZXkgYWRkIHRoZSBsZWFzdCBhbW91bnQgb2YgdGV4dC4KIEFmdGVyIGZpZ3VyaW5nIG91dCB0aGUgY3VycmVudCBkYXRlIGFuZCB1c2VyLCB0aGUgZmlsZSBpcyBzZWFyY2hlZCBmb3IgYW4KIGVudHJ5IGJlZ2lubmluZyB3aXRoIHRoZSBjdXJyZW50IGRhdGUgYW5kIHVzZXIgYW5kIGlmIGZvdW5kIGFkZHMgYW5vdGhlciBpdGVtCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9mb2xkLnR4dCBiL3J1bnRpbWUvZG9jL2ZvbGQudHh0CmluZGV4IDhhOGQ4MDAuLmY0YWE3OTkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2ZvbGQudHh0CisrKyBiL3J1bnRpbWUvZG9jL2ZvbGQudHh0CkBAIC0xLDQgKzEsNCBAQAotKmZvbGQudHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDcgTWF5IDExCisqZm9sZC50eHQqICAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNyBNYXkgMTEKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2Z0X2FkYS50eHQgYi9ydW50aW1lL2RvYy9mdF9hZGEudHh0CmluZGV4IDYyMWQ1ODMuLjkyZDE0MzMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2Z0X2FkYS50eHQKKysrIGIvcnVudGltZS9kb2MvZnRfYWRhLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpmdF9hZGEudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAyMQorKmZ0X2FkYS50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDIxCiAKIAogCQkgICAgQURBIEZJTEUgVFlQRSBQTFVHLUlOUyBSRUZFUkVOQ0UgTUFOVUFMfgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvZnRfc3FsLnR4dCBiL3J1bnRpbWUvZG9jL2Z0X3NxbC50eHQKaW5kZXggOGQyMzZhMS4uMzhiNWI1OCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvZnRfc3FsLnR4dAorKysgYi9ydW50aW1lL2RvYy9mdF9zcWwudHh0CkBAIC0xLDQgKzEsNCBAQAotKmZ0X3NxbC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IFdlZCBBcHIgMjYgMjAwNiAzOjA1OjMzIFBNCisqZnRfc3FsLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogV2VkIEFwciAyNiAyMDA2IDM6MDU6MzMgUE0KIAogYnkgRGF2aWQgRmlzaGJ1cm4KIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvZ3VpLnR4dCBiL3J1bnRpbWUvZG9jL2d1aS50eHQKaW5kZXggNTgxMjNiMS4uYzNiODRjMCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvZ3VpLnR4dAorKysgYi9ydW50aW1lL2RvYy9ndWkudHh0CkBAIC0xLDQgKzEsNCBAQAotKmd1aS50eHQqICAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDE0CisqZ3VpLnR4dCogICAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMTQKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2d1aV93MTYudHh0IGIvcnVudGltZS9kb2MvZ3VpX3cxNi50eHQKaW5kZXggZGIxZjgzMS4uZTc1NDE2YSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvZ3VpX3cxNi50eHQKKysrIGIvcnVudGltZS9kb2MvZ3VpX3cxNi50eHQKQEAgLTEsNCArMSw0IEBACi0qZ3VpX3cxNi50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNSBNYXIgMjkKKypndWlfdzE2LnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA1IE1hciAyOQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvZ3VpX3czMi50eHQgYi9ydW50aW1lL2RvYy9ndWlfdzMyLnR4dAppbmRleCA4NWI5MTBmLi5lZDQyMTIyIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9ndWlfdzMyLnR4dAorKysgYi9ydW50aW1lL2RvYy9ndWlfdzMyLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpndWlfdzMyLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA3IEF1ZyAzMAorKmd1aV93MzIudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDcgQXVnIDMwCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9ndWlfeDExLnR4dCBiL3J1bnRpbWUvZG9jL2d1aV94MTEudHh0CmluZGV4IGZmODQ4NTYuLmQzM2Y1NmIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2d1aV94MTEudHh0CisrKyBiL3J1bnRpbWUvZG9jL2d1aV94MTEudHh0CkBAIC0xLDQgKzEsNCBAQAotKmd1aV94MTEudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDcgRGVjIDA5CisqZ3VpX3gxMS50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNyBEZWMgMDkKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2hhbmd1bGluLnR4dCBiL3J1bnRpbWUvZG9jL2hhbmd1bGluLnR4dAppbmRleCAyOWE4MjhhLi5jNzQzZmM2IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9oYW5ndWxpbi50eHQKKysrIGIvcnVudGltZS9kb2MvaGFuZ3VsaW4udHh0CkBAIC0xLDQgKzEsNCBAQAotKmhhbmd1bGluLnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDAyCisqaGFuZ3VsaW4udHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMDIKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQ2hpLURlb2sgSHdhbmcgYW5kIFN1bmctSHl1biBOYW0KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2hlYnJldy50eHQgYi9ydW50aW1lL2RvYy9oZWJyZXcudHh0CmluZGV4IGQyOGMzM2QuLmM5YjE0MWYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2hlYnJldy50eHQKKysrIGIvcnVudGltZS9kb2MvaGVicmV3LnR4dApAQCAtMSw0ICsxLDQgQEAKLSpoZWJyZXcudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA3IEp1biAxNAorKmhlYnJldy50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDcgSnVuIDE0CiAKIAogCSAgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IFJvbiBBYXJvbiAoYW5kIEF2bmVyIExvdHRlbSkKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2hlbHAudHh0IGIvcnVudGltZS9kb2MvaGVscC50eHQKaW5kZXggZTgxZGQzYS4uZGIzZjFiNiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvaGVscC50eHQKKysrIGIvcnVudGltZS9kb2MvaGVscC50eHQKQEAgLTEsNCArMSw0IEBACi0qaGVscC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDIxCisqaGVscC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVsIDIxCiAKIAkJCVZJTSAtIG1haW4gaGVscCBmaWxlCiAJCQkJCQkJCQkgawpAQCAtMTI2LDcgKzEyNiw3IEBACiB8dGFicGFnZS50eHR8CWNvbW1hbmRzIGZvciB1c2luZyBtdWx0aXBsZSB0YWIgcGFnZXMKIHxzeW50YXgudHh0fAlzeW50YXggaGlnaGxpZ2h0aW5nCiB8c3BlbGwudHh0fAlzcGVsbCBjaGVja2luZwotfGRpZmYudHh0fAl3b3JraW5nIHdpdGggdHdvIG9yIHRocmVlIHZlcnNpb25zIG9mIHRoZSBzYW1lIGZpbGUKK3xkaWZmLnR4dHwJd29ya2luZyB3aXRoIHR3byB0byBmb3VyIHZlcnNpb25zIG9mIHRoZSBzYW1lIGZpbGUKIHxhdXRvY21kLnR4dHwJYXV0b21hdGljYWxseSBleGVjdXRpbmcgY29tbWFuZHMgb24gYW4gZXZlbnQKIHxmaWxldHlwZS50eHR8CXNldHRpbmdzIGRvbmUgc3BlY2lmaWNhbGx5IGZvciBhIHR5cGUgb2YgZmlsZQogfGV2YWwudHh0fAlleHByZXNzaW9uIGV2YWx1YXRpb24sIGNvbmRpdGlvbmFsIGNvbW1hbmRzCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9ob3d0by50eHQgYi9ydW50aW1lL2RvYy9ob3d0by50eHQKaW5kZXggZmJhZDdiZS4uM2UyYmYyNSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvaG93dG8udHh0CisrKyBiL3J1bnRpbWUvZG9jL2hvd3RvLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpob3d0by50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDAyCisqaG93dG8udHh0KglGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAwMgogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9pZl9jc2NvcC50eHQgYi9ydW50aW1lL2RvYy9pZl9jc2NvcC50eHQKaW5kZXggOTdiYjRiMS4uMjkwZTJmMiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvaWZfY3Njb3AudHh0CisrKyBiL3J1bnRpbWUvZG9jL2lmX2NzY29wLnR4dApAQCAtMSw0ICsxLDQgQEAKLSppZl9jc2NvcC50eHQqICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA1IE1hciAyOQorKmlmX2NzY29wLnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDUgTWFyIDI5CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEFuZHkgS2FobgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvaWZfbXpzY2gudHh0IGIvcnVudGltZS9kb2MvaWZfbXpzY2gudHh0CmluZGV4IDU1OWM0MzkuLjg0ZTkwZGQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2lmX216c2NoLnR4dAorKysgYi9ydW50aW1lL2RvYy9pZl9tenNjaC50eHQKQEAgLTEsNCArMSw0IEBACi0qaWZfbXpzY2gudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjgKKyppZl9tenNjaC50eHQqICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAyOAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBTZXJnZXkgS2hvcmV2CmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9pZl9vbGUudHh0IGIvcnVudGltZS9kb2MvaWZfb2xlLnR4dAppbmRleCBkMWEzMDYzLi42YTMxZDNhIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9pZl9vbGUudHh0CisrKyBiL3J1bnRpbWUvZG9jL2lmX29sZS50eHQKQEAgLTEsNCArMSw0IEBACi0qaWZfb2xlLnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNyBNYXkgMTAKKyppZl9vbGUudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA3IE1heSAxMAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBQYXVsIE1vb3JlCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9pZl9wZXJsLnR4dCBiL3J1bnRpbWUvZG9jL2lmX3BlcmwudHh0CmluZGV4IDk3ZTk5YjkuLmFhOWNkMjUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2lmX3BlcmwudHh0CisrKyBiL3J1bnRpbWUvZG9jL2lmX3BlcmwudHh0CkBAIC0xLDQgKzEsNCBAQAotKmlmX3BlcmwudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDYgTWFyIDA2CisqaWZfcGVybC50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNiBNYXIgMDYKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgU3ZlbiBWZXJkb29sYWVnZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvaWZfcHl0aC50eHQgYi9ydW50aW1lL2RvYy9pZl9weXRoLnR4dAppbmRleCBlZmRjMzdlLi5iYzQ1NWUyIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9pZl9weXRoLnR4dAorKysgYi9ydW50aW1lL2RvYy9pZl9weXRoLnR4dApAQCAtMSw0ICsxLDQgQEAKLSppZl9weXRoLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAzMAorKmlmX3B5dGgudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDMwCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IFBhdWwgTW9vcmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2lmX3J1YnkudHh0IGIvcnVudGltZS9kb2MvaWZfcnVieS50eHQKaW5kZXggNmRlMWYxMC4uODM2Y2I4NSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvaWZfcnVieS50eHQKKysrIGIvcnVudGltZS9kb2MvaWZfcnVieS50eHQKQEAgLTEsNCArMSw0IEBACi0qaWZfcnVieS50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMzAKKyppZl9ydWJ5LnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAzMAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBTaHVnbyBNYWVkYQpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvaWZfc25pZmYudHh0IGIvcnVudGltZS9kb2MvaWZfc25pZmYudHh0CmluZGV4IDMxMjljMTQuLmM1ZTI5OTYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2lmX3NuaWZmLnR4dAorKysgYi9ydW50aW1lL2RvYy9pZl9zbmlmZi50eHQKQEAgLTEsNCArMSw0IEBACi0qaWZfc25pZmYudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA1IE1hciAyOQorKmlmX3NuaWZmLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNSBNYXIgMjkKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2lmX3RjbC50eHQgYi9ydW50aW1lL2RvYy9pZl90Y2wudHh0CmluZGV4IGE5ZjVhZjcuLjIyM2QzNjUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2lmX3RjbC50eHQKKysrIGIvcnVudGltZS9kb2MvaWZfdGNsLnR4dApAQCAtMSw0ICsxLDQgQEAKLSppZl90Y2wudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAyNgorKmlmX3RjbC50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDI2CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEluZ28gV2lsa2VuCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9pbmRlbnQudHh0IGIvcnVudGltZS9kb2MvaW5kZW50LnR4dAppbmRleCA1NDJlMDNkLi5mZmQzNjZkIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9pbmRlbnQudHh0CisrKyBiL3J1bnRpbWUvZG9jL2luZGVudC50eHQKQEAgLTEsNCArMSw0IEBACi0qaW5kZW50LnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMzAKKyppbmRlbnQudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IEp1bCAzMAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtNTg0LDggKzU4NCw4IEBACiBQWVRIT04JCQkJCQkJKmZ0LXB5dGhvbi1pbmRlbnQqCiAKIFRoZSBhbW91bnQgb2YgaW5kZW50IGNhbiBiZSBzZXQgZm9yIHRoZSBmb2xsb3dpbmcgc2l0dWF0aW9ucy4gIFRoZSBleGFtcGxlcwotZ2l2ZW4gYXJlIGRlIHRoZSBkZWZhdWx0cy4gIE5vdGUgdGhhdCB0aGUgdmFyaWFibGVzIGFyZSBzZXQgdG8gYW4gZXhwcmVzc2lvbiwKLXNvIHRoYXQgeW91IGNhbiBjaGFuZ2UgdGhlIHZhbHVlIG9mICdzaGlmdHdpZHRoJyBsYXRlci4KK2dpdmVuIGFyZSB0aGUgZGVmYXVsdHMuICBOb3RlIHRoYXQgdGhlIHZhcmlhYmxlcyBhcmUgc2V0IHRvIGFuIGV4cHJlc3Npb24sIHNvCit0aGF0IHlvdSBjYW4gY2hhbmdlIHRoZSB2YWx1ZSBvZiAnc2hpZnR3aWR0aCcgbGF0ZXIuCiAKIEluZGVudCBhZnRlciBhbiBvcGVuIHBhcmVuOiA+CiAJbGV0IGc6cHlpbmRlbnRfb3Blbl9wYXJlbiA9ICcmc3cgKiAyJwpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvaW5kZXgudHh0IGIvcnVudGltZS9kb2MvaW5kZXgudHh0CmluZGV4IDM1ZjUwNDQuLjczMWE2MDcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2luZGV4LnR4dAorKysgYi9ydW50aW1lL2RvYy9pbmRleC50eHQKQEAgLTEsNCArMSw0IEBACi0qaW5kZXgudHh0KiAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBNYXkgMDQKKyppbmRleC50eHQqICAgICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IE1heSAwNAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvaW5zZXJ0LnR4dCBiL3J1bnRpbWUvZG9jL2luc2VydC50eHQKaW5kZXggNjc1MmJhNi4uNTFmMDY1NyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvaW5zZXJ0LnR4dAorKysgYi9ydW50aW1lL2RvYy9pbnNlcnQudHh0CkBAIC0xLDQgKzEsNCBAQAotKmluc2VydC50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDIxCisqaW5zZXJ0LnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjEKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL2ludHJvLnR4dCBiL3J1bnRpbWUvZG9jL2ludHJvLnR4dAppbmRleCBhYzc1MGVlLi45YTI3Y2NlIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9pbnRyby50eHQKKysrIGIvcnVudGltZS9kb2MvaW50cm8udHh0CkBAIC0xLDQgKzEsNCBAQAotKmludHJvLnR4dCogICAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDI0CisqaW50cm8udHh0KiAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjQKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL21hcC50eHQgYi9ydW50aW1lL2RvYy9tYXAudHh0CmluZGV4IDEzMWUxYmQuLjA2ZWFhNGYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL21hcC50eHQKKysrIGIvcnVudGltZS9kb2MvbWFwLnR4dApAQCAtMSw0ICsxLDQgQEAKLSptYXAudHh0KiAgICAgICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA4IEp1bCAwOQorKm1hcC50eHQqICAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVsIDA5CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9tYnl0ZS50eHQgYi9ydW50aW1lL2RvYy9tYnl0ZS50eHQKaW5kZXggNjA0NDVkMS4uNjYzM2ZiZSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvbWJ5dGUudHh0CisrKyBiL3J1bnRpbWUvZG9jL21ieXRlLnR4dApAQCAtMSw0ICsxLDQgQEAKLSptYnl0ZS50eHQqICAgICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAyMQorKm1ieXRlLnR4dCogICAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDIxCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMCSAgYnkgQnJhbSBNb29sZW5hYXIgZXQgYWwuCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9tZXNzYWdlLnR4dCBiL3J1bnRpbWUvZG9jL21lc3NhZ2UudHh0CmluZGV4IDQ3MzFhNzEuLmNkOTU4ODkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL21lc3NhZ2UudHh0CisrKyBiL3J1bnRpbWUvZG9jL21lc3NhZ2UudHh0CkBAIC0xLDQgKzEsNCBAQAotKm1lc3NhZ2UudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDcgQXVnIDE5CisqbWVzc2FnZS50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNyBBdWcgMTkKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL21sYW5nLnR4dCBiL3J1bnRpbWUvZG9jL21sYW5nLnR4dAppbmRleCBkMjE0YzI3Li5iOGNlM2NjIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9tbGFuZy50eHQKKysrIGIvcnVudGltZS9kb2MvbWxhbmcudHh0CkBAIC0xLDQgKzEsNCBAQAotKm1sYW5nLnR4dCogICAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDA4CisqbWxhbmcudHh0KiAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMDgKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL21vdGlvbi50eHQgYi9ydW50aW1lL2RvYy9tb3Rpb24udHh0CmluZGV4IGMxYjhkMzguLjliOGNkMGIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL21vdGlvbi50eHQKKysrIGIvcnVudGltZS9kb2MvbW90aW9uLnR4dApAQCAtMSw0ICsxLDQgQEAKLSptb3Rpb24udHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA4IE1heSAwMgorKm1vdGlvbi50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggQXVnIDAzCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC04NTEsMTYgKzg1MSwxNiBAQAogd2FzIG1hZGUgeWV0IGluIHRoZSBjdXJyZW50IGZpbGUuCiAKIAkJCQkJCQkqJzwqICpgPCoKLSc8ICBgPAkJCVRvIHRoZSBmaXJzdCBjaGFyYWN0ZXIgb2YgdGhlIGxhc3Qgc2VsZWN0ZWQgVmlzdWFsCi0JCQlhcmVhIGluIHRoZSBjdXJyZW50IGJ1ZmZlci4gIEZvciBibG9jayBtb2RlIGl0IG1heQotCQkJYWxzbyBiZSB0aGUgbGFzdCBjaGFyYWN0ZXIgaW4gdGhlIGZpcnN0IGxpbmUgKHRvIGJlCi0JCQlhYmxlIHRvIGRlZmluZSB0aGUgYmxvY2spLiAge25vdCBpbiBWaX0uCisnPCAgYDwJCQlUbyB0aGUgZmlyc3QgbGluZSBvciBjaGFyYWN0ZXIgb2YgdGhlIGxhc3Qgc2VsZWN0ZWQKKwkJCVZpc3VhbCBhcmVhIGluIHRoZSBjdXJyZW50IGJ1ZmZlci4gIEZvciBibG9jayBtb2RlIGl0CisJCQltYXkgYWxzbyBiZSB0aGUgbGFzdCBjaGFyYWN0ZXIgaW4gdGhlIGZpcnN0IGxpbmUgKHRvCisJCQliZSBhYmxlIHRvIGRlZmluZSB0aGUgYmxvY2spLiAge25vdCBpbiBWaX0uCiAKIAkJCQkJCQkqJz4qICpgPioKLSc+ICBgPgkJCVRvIHRoZSBsYXN0IGNoYXJhY3RlciBvZiB0aGUgbGFzdCBzZWxlY3RlZCBWaXN1YWwKLQkJCWFyZWEgaW4gdGhlIGN1cnJlbnQgYnVmZmVyLiAgRm9yIGJsb2NrIG1vZGUgaXQgbWF5Ci0JCQlhbHNvIGJlIHRoZSBmaXJzdCBjaGFyYWN0ZXIgb2YgdGhlIGxhc3QgbGluZSAodG8gYmUKLQkJCWFibGUgdG8gZGVmaW5lIHRoZSBibG9jaykuICBOb3RlIHRoYXQgJ3NlbGVjdGlvbicKKyc+ICBgPgkJCVRvIHRoZSBsYXN0IGxpbmUgb3IgY2hhcmFjdGVyIG9mIHRoZSBsYXN0IHNlbGVjdGVkCisJCQlWaXN1YWwgYXJlYSBpbiB0aGUgY3VycmVudCBidWZmZXIuICBGb3IgYmxvY2sgbW9kZSBpdAorCQkJbWF5IGFsc28gYmUgdGhlIGZpcnN0IGNoYXJhY3RlciBvZiB0aGUgbGFzdCBsaW5lICh0bworCQkJYmUgYWJsZSB0byBkZWZpbmUgdGhlIGJsb2NrKS4gIE5vdGUgdGhhdCAnc2VsZWN0aW9uJwogCQkJYXBwbGllcywgdGhlIHBvc2l0aW9uIG1heSBiZSBqdXN0IGFmdGVyIHRoZSBWaXN1YWwKIAkJCWFyZWEuICB7bm90IGluIFZpfS4KIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvbmV0YmVhbnMudHh0IGIvcnVudGltZS9kb2MvbmV0YmVhbnMudHh0CmluZGV4IGI4MDc0YzcuLjAxMjY2YTcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL25ldGJlYW5zLnR4dAorKysgYi9ydW50aW1lL2RvYy9uZXRiZWFucy50eHQKQEAgLTEsNCArMSw0IEBACi0qbmV0YmVhbnMudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjgKKypuZXRiZWFucy50eHQqICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAyOAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBHb3Jkb24gUHJpZXVyIGV0IGFsLgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQgYi9ydW50aW1lL2RvYy9vcHRpb25zLnR4dAppbmRleCAyMmMwNDE5Li4xMzAyZjE2IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9vcHRpb25zLnR4dAorKysgYi9ydW50aW1lL2RvYy9vcHRpb25zLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpvcHRpb25zLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBKdWwgMDUKKypvcHRpb25zLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBBdWcgMDYKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwJICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtMjI5Miw2ICsyMjkyLDggQEAKIAkgIG9yICJcXCIsIHRoZSBzd2FwIGZpbGUgbmFtZSB3aWxsIGJlIGJ1aWx0IGZyb20gdGhlIGNvbXBsZXRlIHBhdGggdG8KIAkgIHRoZSBmaWxlIHdpdGggYWxsIHBhdGggc2VwYXJhdG9ycyBzdWJzdGl0dXRlZCB0byBwZXJjZW50ICclJyBzaWducy4KIAkgIFRoaXMgd2lsbCBlbnN1cmUgZmlsZSBuYW1lIHVuaXF1ZW5lc3MgaW4gdGhlIHByZXNlcnZlIGRpcmVjdG9yeS4KKwkgIE9uIFdpbjMyLCB3aGVuIGEgc2VwYXJhdGluZyBjb21tYSBpcyBmb2xsb3dpbmcsIHlvdSBtdXN0IHVzZSAiLy8iLAorCSAgc2luY2UgIlxcIiB3aWxsIGluY2x1ZGUgdGhlIGNvbW1hIGluIHRoZSBmaWxlIG5hbWUuCiAJLSBTcGFjZXMgYWZ0ZXIgdGhlIGNvbW1hIGFyZSBpZ25vcmVkLCBvdGhlciBzcGFjZXMgYXJlIGNvbnNpZGVyZWQgcGFydAogCSAgb2YgdGhlIGRpcmVjdG9yeSBuYW1lLiAgVG8gaGF2ZSBhIHNwYWNlIGF0IHRoZSBzdGFydCBvZiBhIGRpcmVjdG9yeQogCSAgbmFtZSwgcHJlY2VkZSBpdCB3aXRoIGEgYmFja3NsYXNoLgpAQCAtNDg5OCw3ICs0OTAwLDcgQEAKIAluYW1lLCBkYXRlc3RhbXAgYW5kIHBlcm1pc3Npb25zLiAgVGhpcyBvcHRpb24gY29udGFpbnMgdGhlIGV4dHJhCiAJaW5mb3JtYXRpb24sIHRoZSBuYXR1cmUgb2Ygd2hpY2ggd2lsbCB2YXJ5IGJldHdlZW4gc3lzdGVtcy4KIAlUaGUgdmFsdWUgb2YgdGhpcyBvcHRpb24gaXMgdXN1YWxseSBzZXQgd2hlbiB0aGUgZmlsZSBpcyBsb2FkZWQsIGFuZAotCXVzZSB0byBzZXQgdGhlIGZpbGUgdHlwZSB3aGVuIGZpbGUgaXMgd3JpdHRlbi4KKwlpcyB1c2VkIHRvIHNldCB0aGUgb3BlcmF0aW5nIHN5c3RlbSBmaWxlIHR5cGUgd2hlbiBmaWxlIGlzIHdyaXR0ZW4uCiAJSXQgY2FuIGFmZmVjdCB0aGUgcGF0dGVybiBtYXRjaGluZyBvZiB0aGUgYXV0b21hdGljIGNvbW1hbmRzLgogCXxhdXRvY21kLW9zZmlsZXR5cGVzfAogCkBAIC02MzA2LDE1ICs2MzA4LDE1IEBACiAJICAgICAgZGlyZWN0b3J5LgogCUYgUyAgIEZ1bGwgcGF0aCB0byB0aGUgZmlsZSBpbiB0aGUgYnVmZmVyLgogCXQgUyAgIEZpbGUgbmFtZSAodGFpbCkgb2YgZmlsZSBpbiB0aGUgYnVmZmVyLgotCW0gRiAgIE1vZGlmaWVkIGZsYWcsIHRleHQgaXMgIiBbK10iOyAiIFstXSIgaWYgJ21vZGlmaWFibGUnIGlzIG9mZi4KKwltIEYgICBNb2RpZmllZCBmbGFnLCB0ZXh0IGlzICJbK10iOyAiWy1dIiBpZiAnbW9kaWZpYWJsZScgaXMgb2ZmLgogCU0gRiAgIE1vZGlmaWVkIGZsYWcsIHRleHQgaXMgIiwrIiBvciAiLC0iLgotCXIgRiAgIFJlYWRvbmx5IGZsYWcsIHRleHQgaXMgIiBbUk9dIi4KKwlyIEYgICBSZWFkb25seSBmbGFnLCB0ZXh0IGlzICJbUk9dIi4KIAlSIEYgICBSZWFkb25seSBmbGFnLCB0ZXh0IGlzICIsUk8iLgotCWggRiAgIEhlbHAgYnVmZmVyIGZsYWcsIHRleHQgaXMgIiBbaGVscF0iLgorCWggRiAgIEhlbHAgYnVmZmVyIGZsYWcsIHRleHQgaXMgIltoZWxwXSIuCiAJSCBGICAgSGVscCBidWZmZXIgZmxhZywgdGV4dCBpcyAiLEhMUCIuCi0JdyBGICAgUHJldmlldyB3aW5kb3cgZmxhZywgdGV4dCBpcyAiIFtQcmV2aWV3XSIuCisJdyBGICAgUHJldmlldyB3aW5kb3cgZmxhZywgdGV4dCBpcyAiW1ByZXZpZXddIi4KIAlXIEYgICBQcmV2aWV3IHdpbmRvdyBmbGFnLCB0ZXh0IGlzICIsUFJWIi4KLQl5IEYgICBUeXBlIG9mIGZpbGUgaW4gdGhlIGJ1ZmZlciwgZS5nLiwgIiBbdmltXSIuICBTZWUgJ2ZpbGV0eXBlJy4KKwl5IEYgICBUeXBlIG9mIGZpbGUgaW4gdGhlIGJ1ZmZlciwgZS5nLiwgIlt2aW1dIi4gIFNlZSAnZmlsZXR5cGUnLgogCVkgRiAgIFR5cGUgb2YgZmlsZSBpbiB0aGUgYnVmZmVyLCBlLmcuLCAiLFZJTSIuICBTZWUgJ2ZpbGV0eXBlJy4KIAkgICAgICB7bm90IGF2YWlsYWJsZSB3aGVuIGNvbXBpbGVkIHdpdGhvdXQgfCthdXRvY21kfCBmZWF0dXJlfQogCWsgUyAgIFZhbHVlIG9mICJiOmtleW1hcF9uYW1lIiBvciAna2V5bWFwJyB3aGVuIHw6bG1hcHwgbWFwcGluZ3MgYXJlCkBAIC02MzYxLDE0ICs2MzYzLDkgQEAKIAkgICAgICB0byBTdGF0dXNMaW5lTkMgZm9yIHRoZSBzdGF0dXNsaW5lIG9mIG5vbi1jdXJyZW50IHdpbmRvd3MuCiAJICAgICAgVGhlIG51bWJlciBOIG11c3QgYmUgYmV0d2VlbiAxIGFuZCA5LiAgU2VlIHxobC1Vc2VyMS4uOXwKIAotCURpc3BsYXkgb2YgZmxhZ3MgYXJlIGNvbnRyb2xsZWQgYnkgdGhlIGZvbGxvd2luZyBoZXVyaXN0aWM6Ci0JSWYgYSBmbGFnIHRleHQgc3RhcnRzIHdpdGggY29tbWEgaXQgaXMgYXNzdW1lZCB0aGF0IGl0IHdhbnRzIHRvCi0Jc2VwYXJhdGUgaXRzZWxmIGZyb20gYW55dGhpbmcgYnV0IHByZWNlZGluZyBwbGFpbnRleHQuICBJZiBpdCBzdGFydHMKLQl3aXRoIGEgc3BhY2UgaXQgaXMgYXNzdW1lZCB0aGF0IGl0IHdhbnRzIHRvIHNlcGFyYXRlIGl0c2VsZiBmcm9tCi0JYW55dGhpbmcgYnV0IG90aGVyIGZsYWdzLiAgVGhhdCBpczogQSBsZWFkaW5nIGNvbW1hIGlzIHJlbW92ZWQgaWYgdGhlCi0JcHJlY2VkaW5nIGNoYXJhY3RlciBzdGVtcyBmcm9tIHBsYWludGV4dC4gIEEgbGVhZGluZyBzcGFjZSBpcyByZW1vdmVkCi0JaWYgdGhlIHByZWNlZGluZyBjaGFyYWN0ZXIgc3RlbXMgZnJvbSBhbm90aGVyIGFjdGl2ZSBmbGFnLiAgVGhpcyB3aWxsCi0JbWFrZSBhIG5pY2UgZGlzcGxheSB3aGVuIGZsYWdzIGFyZSB1c2VkIGxpa2UgaW4gdGhlIGV4YW1wbGVzIGJlbG93LgorCVdoZW4gZGlzcGxheWluZyBhIGZsYWcsIFZpbSByZW1vdmVzIHRoZSBsZWFkaW5nIGNvbW1hLCBpZiBhbnksIHdoZW4KKwl0aGF0IGZsYWcgY29tZXMgcmlnaHQgYWZ0ZXIgcGxhaW50ZXh0LiAgVGhpcyB3aWxsIG1ha2UgYSBuaWNlIGRpc3BsYXkKKwl3aGVuIGZsYWdzIGFyZSB1c2VkIGxpa2UgaW4gdGhlIGV4YW1wbGVzIGJlbG93LgogCiAJV2hlbiBhbGwgaXRlbXMgaW4gYSBncm91cCBiZWNvbWVzIGFuIGVtcHR5IHN0cmluZyAoaS5lLiBmbGFncyB0aGF0IGFyZQogCW5vdCBzZXQpIGFuZCBhIG1pbndpZCBpcyBub3Qgc2V0IGZvciB0aGUgZ3JvdXAsIHRoZSB3aG9sZSBncm91cCB3aWxsCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9vc18zOTAudHh0IGIvcnVudGltZS9kb2Mvb3NfMzkwLnR4dAppbmRleCA1OTA3NGE2Li4wYjBlODM2IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9vc18zOTAudHh0CisrKyBiL3J1bnRpbWUvZG9jL29zXzM5MC50eHQKQEAgLTEsNCArMSw0IEBACi0qb3NfMzkwLnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNSBNYXIgMjkKKypvc18zOTAudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA1IE1hciAyOQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IFJhbGYgU2NoYW5kbApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2Mvb3NfYW1pZ2EudHh0IGIvcnVudGltZS9kb2Mvb3NfYW1pZ2EudHh0CmluZGV4IDFlMjExMjEuLjdlMjYyYmYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL29zX2FtaWdhLnR4dAorKysgYi9ydW50aW1lL2RvYy9vc19hbWlnYS50eHQKQEAgLTEsNCArMSw0IEBACi0qb3NfYW1pZ2EudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNSBNYXIgMjkKKypvc19hbWlnYS50eHQqICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA1IE1hciAyOQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2Mvb3NfYmVvcy50eHQgYi9ydW50aW1lL2RvYy9vc19iZW9zLnR4dAppbmRleCBjN2JiZjM3Li5lNWY1NGI4IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9vc19iZW9zLnR4dAorKysgYi9ydW50aW1lL2RvYy9vc19iZW9zLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpvc19iZW9zLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNSBNYXIgMjkKKypvc19iZW9zLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNSBNYXIgMjkKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL29zX2Rvcy50eHQgYi9ydW50aW1lL2RvYy9vc19kb3MudHh0CmluZGV4IGU0Y2ZiNzAuLjA4NWIyOTUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL29zX2Rvcy50eHQKKysrIGIvcnVudGltZS9kb2Mvb3NfZG9zLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpvc19kb3MudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA2IE1hciAzMAorKm9zX2Rvcy50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDYgTWFyIDMwCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9vc19tYWMudHh0IGIvcnVudGltZS9kb2Mvb3NfbWFjLnR4dAppbmRleCA2OGRiY2ZiLi41NTIxYTkzIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9vc19tYWMudHh0CisrKyBiL3J1bnRpbWUvZG9jL29zX21hYy50eHQKQEAgLTEsNCArMSw0IEBACi0qb3NfbWFjLnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMzAKKypvc19tYWMudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAzMAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhciBldCBhbC4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL29zX21pbnQudHh0IGIvcnVudGltZS9kb2Mvb3NfbWludC50eHQKaW5kZXggMWFmZDMzNS4uZTUyOTg4NyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2Mvb3NfbWludC50eHQKKysrIGIvcnVudGltZS9kb2Mvb3NfbWludC50eHQKQEAgLTEsNCArMSw0IEBACi0qb3NfbWludC50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNSBNYXIgMjkKKypvc19taW50LnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA1IE1hciAyOQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBKZW5zIE0uIEZlbGRlcmhvZmYKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL29zX21zZG9zLnR4dCBiL3J1bnRpbWUvZG9jL29zX21zZG9zLnR4dAppbmRleCBhOWZkN2JlLi4xY2IzODAzIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9vc19tc2Rvcy50eHQKKysrIGIvcnVudGltZS9kb2Mvb3NfbXNkb3MudHh0CkBAIC0xLDQgKzEsNCBAQAotKm9zX21zZG9zLnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDUgTWFyIDI5Cisqb3NfbXNkb3MudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNSBNYXIgMjkKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL29zX29zMi50eHQgYi9ydW50aW1lL2RvYy9vc19vczIudHh0CmluZGV4IGZiYWU1ZjkuLjA3MjkyMmEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL29zX29zMi50eHQKKysrIGIvcnVudGltZS9kb2Mvb3Nfb3MyLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpvc19vczIudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA3IEFwciAyMgorKm9zX29zMi50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDcgQXByIDIyCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IFBhdWwgU2xvb3RtYW4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL29zX3FueC50eHQgYi9ydW50aW1lL2RvYy9vc19xbngudHh0CmluZGV4IGMxOTlhOTcuLjNiNTBhY2UgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL29zX3FueC50eHQKKysrIGIvcnVudGltZS9kb2Mvb3NfcW54LnR4dApAQCAtMSw0ICsxLDQgQEAKLSpvc19xbngudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA1IE1hciAyOQorKm9zX3FueC50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDUgTWFyIDI5CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEp1bGlhbiBLaW5yYWlkCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9vc19yaXNjLnR4dCBiL3J1bnRpbWUvZG9jL29zX3Jpc2MudHh0CmluZGV4IGU3ZmI4MDYuLmE1NDU3NmUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL29zX3Jpc2MudHh0CisrKyBiL3J1bnRpbWUvZG9jL29zX3Jpc2MudHh0CkBAIC0xLDQgKzEsNCBAQAotKm9zX3Jpc2MudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDI4Cisqb3NfcmlzYy50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjgKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgVGhvbWFzIExlb25hcmQKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL29zX3VuaXgudHh0IGIvcnVudGltZS9kb2Mvb3NfdW5peC50eHQKaW5kZXggMDM2ZjU5Ny4uNzQwNzEyZSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2Mvb3NfdW5peC50eHQKKysrIGIvcnVudGltZS9kb2Mvb3NfdW5peC50eHQKQEAgLTEsNCArMSw0IEBACi0qb3NfdW5peC50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNSBNYXIgMjkKKypvc191bml4LnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA1IE1hciAyOQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2Mvb3Nfdm1zLnR4dCBiL3J1bnRpbWUvZG9jL29zX3Ztcy50eHQKaW5kZXggOGI5NjkyOS4uOGZkNjcxMiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2Mvb3Nfdm1zLnR4dAorKysgYi9ydW50aW1lL2RvYy9vc192bXMudHh0CkBAIC0xLDQgKzEsNCBAQAotKm9zX3Ztcy50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDYgTm92IDE4Cisqb3Nfdm1zLnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNiBOb3YgMTgKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL29zX3dpbjMyLnR4dCBiL3J1bnRpbWUvZG9jL29zX3dpbjMyLnR4dAppbmRleCA3M2Q1NWU5Li45MjM5MmMxIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9vc193aW4zMi50eHQKKysrIGIvcnVudGltZS9kb2Mvb3Nfd2luMzIudHh0CkBAIC0xLDQgKzEsNCBAQAotKm9zX3dpbjMyLnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggTWF5IDAyCisqb3Nfd2luMzIudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBNYXkgMDIKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgR2VvcmdlIFJlaWxseQpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvcGF0dGVybi50eHQgYi9ydW50aW1lL2RvYy9wYXR0ZXJuLnR4dAppbmRleCBhZTYwYjgzLi5kNDhkOWYxIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9wYXR0ZXJuLnR4dAorKysgYi9ydW50aW1lL2RvYy9wYXR0ZXJuLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpwYXR0ZXJuLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAyMQorKnBhdHRlcm4udHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVsIDE2CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0xMTIyLDcgKzExMjIsNyBAQAogCiAJCQkJCQkqQ1ItdXNlZC1mb3ItTkwqCiBXaGVuICdmaWxlZm9ybWF0JyBpcyAibWFjIiwgPE5MPiBjaGFyYWN0ZXJzIGluIHRoZSBmaWxlIGFyZSBzdG9yZWQgYXMgPENSPgotY2hhcmFjdGVycyBpbnRlcm5hbGx5LiAgSW4gdGhlIGRpc3BsYXkgdGhleSBhcmUgc2hvd24gYXMgIl5NIi4gIE90aGVyd2lzZSB0aGlzCitjaGFyYWN0ZXJzIGludGVybmFsbHkuICBJbiB0aGUgdGV4dCB0aGV5IGFyZSBzaG93biBhcyAiXkoiLiAgT3RoZXJ3aXNlIHRoaXMKIHdvcmtzIHNpbWlsYXIgdG8gdGhlIHVzYWdlIG9mIDxOTD4gZm9yIGEgPE51bD4uCiAKIFdoZW4gd29ya2luZyB3aXRoIGV4cHJlc3Npb24gZXZhbHVhdGlvbiwgYSA8Tkw+IGNoYXJhY3RlciBpbiB0aGUgcGF0dGVybgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvcGlfZ2V0c2NyaXB0LnR4dCBiL3J1bnRpbWUvZG9jL3BpX2dldHNjcmlwdC50eHQKaW5kZXggMmQ3ZWRiOC4uZGMwYjJmZiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvcGlfZ2V0c2NyaXB0LnR4dAorKysgYi9ydW50aW1lL2RvYy9waV9nZXRzY3JpcHQudHh0CkBAIC0xLDQgKzEsNCBAQAotKnBpX2dldHNjcmlwdC50eHQqICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAyOQorKnBpX2dldHNjcmlwdC50eHQqICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAyOQogPgogCQlHRVRTQ1JJUFQgUkVGRVJFTkNFIE1BTlVBTCAgYnkgQ2hhcmxlcyBFLiBDYW1wYmVsbCwgSnIuCiA8CmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9waV9nemlwLnR4dCBiL3J1bnRpbWUvZG9jL3BpX2d6aXAudHh0CmluZGV4IGU5ZTIyNGIuLjRmMjAxMjQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3BpX2d6aXAudHh0CisrKyBiL3J1bnRpbWUvZG9jL3BpX2d6aXAudHh0CkBAIC0xLDQgKzEsNCBAQAotKnBpX2d6aXAudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDIgT2N0IDI5CisqcGlfZ3ppcC50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwMiBPY3QgMjkKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3BpX25ldHJ3LnR4dCBiL3J1bnRpbWUvZG9jL3BpX25ldHJ3LnR4dAppbmRleCA3ZTBjNTk3Li4xODc5ZGQ4IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9waV9uZXRydy50eHQKKysrIGIvcnVudGltZS9kb2MvcGlfbmV0cncudHh0CkBAIC0xLDQgKzEsNCBAQAotKnBpX25ldHJ3LnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVsIDEzCisqcGlfbmV0cncudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBBdWcgMDEKIAogCSAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCSAgICBORVRSVyBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IENoYXJsZXMgRS4gQ2FtcGJlbGwsIEpyLgpAQCAtMTQzNywyMSArMTQzNyw1NiBAQAogZm9yIHNldHRpbmcgdXAgbm8tcGFzc3dvcmQgc3NoIGFuZCBzY3AgYW5kIGRpc2N1c3NlcyBhc3NvY2lhdGVkIHNlY3VyaXR5CiBpc3N1ZXMuICBJdCB1c2VkIHRvIGJlIGF2YWlsYWJsZSBhdCBodHRwOi8vaGFja3Mub3JlaWxseS5jb20vcHViL2gvNjYgLAogYnV0IGFwcGFyZW50bHkgdGhhdCBhZGRyZXNzIGlzIG5vdyBiZWluZyByZWRpcmVjdGVkIHRvIHNvbWUgImhhY2t6aW5lIi4KLUknbGwgYXR0ZW1wdCBhIHN1bW1hcnk6CitJJ2xsIGF0dGVtcHQgYSBzdW1tYXJ5IGJhc2VkIG9uIHRoYXQgYXJ0aWNsZSBhbmQgb24gYSBjb21tdW5pY2F0aW9uIGZyb20KK0JlbiBTY2htaWR0OgogCi0JMS4gR2VuZXJhdGUgYSBwdWJsaWMvcHJpdmF0ZSBrZXkgcGFpciBvbiB0aGUgc3NoIHNlcnZlcjoKLQkgICBzc2gta2V5Z2VuIC10IHJzYQotCSAgIChzYXZpbmcgdGhlIGZpbGUgaW4gfi8uc3NoL2lkX3JzYSBpcyBvaykKLQkyLiBKdXN0IGhpdCB0aGUgPENSPiB3aGVuIGFza2VkIGZvciBwYXNzcGhyYXNlICh0d2ljZSkuCi0JMy4gVGhpcyBjcmVhdGVzIHR3byBmaWxlczoKLQkgICAgIH4vLnNzaC9pZF9yc2EKLQkgICAgIH4vLnNzaC9pZF9yc2EucHViCi0JNC4gT24gdGhlIGNsaWVudDoKLQkgICAgY2QKLQkgICAgbWtkaXIgLnNzaAotCSAgICBjaG1vZCAwNzAwIC5zc2gKLQkgICAgc2NwIHtzZXJ2ZXJob3N0bmFtZX06LnNzaC9pZF9yc2EucHViIC4KLQkgICAgY2F0IGlkX3JzYS5wdWIgPj4gLnNzaC9hdXRob3JpemVkX2tleXMyCisJMS4gR2VuZXJhdGUgYSBwdWJsaWMvcHJpdmF0ZSBrZXkgcGFpciBvbiB0aGUgbG9jYWwgbWFjaGluZQorCSAgIChzc2ggY2xpZW50KTogPgorCQlzc2gta2V5Z2VuIC10IHJzYQorCQkoc2F2aW5nIHRoZSBmaWxlIGluIH4vLnNzaC9pZF9yc2EgYXMgcHJvbXB0ZWQpCis8CisJMi4gSnVzdCBoaXQgdGhlIDxDUj4gd2hlbiBhc2tlZCBmb3IgcGFzc3BocmFzZSAodHdpY2UpIGZvciBubworCSAgIHBhc3NwaHJhc2UuICBJZiB5b3UgZG8gdXNlIGEgcGFzc3BocmFzZSwgeW91IHdpbGwgYWxzbyBuZWVkIHRvIHVzZQorCSAgIHNzaC1hZ2VudCBzbyB5b3Ugb25seSBoYXZlIHRvIHR5cGUgdGhlIHBhc3NwaHJhc2Ugb25jZSBwZXIgc2Vzc2lvbi4KKwkgICBJZiB5b3UgZG9uJ3QgdXNlIGEgcGFzc3BocmFzZSwgc2ltcGx5IGxvZ2dpbmcgb250byB5b3VyIGxvY2FsCisJICAgY29tcHV0ZXIgb3IgZ2V0dGluZyBhY2Nlc3MgdG8gdGhlIGtleWZpbGUgaW4gYW55IHdheSB3aWxsIHN1ZmZpY2UKKwkgICB0byBhY2Nlc3MgYW55IHNzaCBzZXJ2ZXJzIHdoaWNoIGhhdmUgdGhhdCBrZXkgYXV0aG9yaXplZCBmb3IgbG9naW4uCisKKwkzLiBUaGlzIGNyZWF0ZXMgdHdvIGZpbGVzOiA+CisJCX4vLnNzaC9pZF9yc2EKKwkJfi8uc3NoL2lkX3JzYS5wdWIKKzwKKwk0LiBPbiB0aGUgdGFyZ2V0IG1hY2hpbmUgKHNzaCBzZXJ2ZXIpOiA+CisJCWNkCisJCW1rZGlyIC1wIC5zc2gKKwkJY2htb2QgMDcwMCAuc3NoCis8CisJNS4gT24geW91ciBsb2NhbCBtYWNoaW5lIChzc2ggY2xpZW50KTogKG9uZSBsaW5lKSA+CisJCXNzaCB7c2VydmVyaG9zdG5hbWV9CisJCSAgY2F0ICc+PicgJ34vLnNzaC9hdXRob3JpemVkX2tleXMyJyA8IH4vLnNzaC9pZF9yc2EucHViCis8CisJICAgb3IsIGZvciBPcGVuU1NILCAob25lIGxpbmUpID4KKwkJc3NoIHtzZXJ2ZXJob3N0bmFtZX0KKwkJICBjYXQgJz4+JyAnfi8uc3NoL2F1dGhvcml6ZWRfa2V5cycgPCB+Ly5zc2gvaWRfcnNhLnB1YgorPAorWW91IGNhbiB0ZXN0IGl0IG91dCB3aXRoID4KKwlzc2gge3NlcnZlcmhvc3RuYW1lfQorYW5kIHlvdSBzaG91bGQgYmUgbG9nIG9udG8gdGhlIHNlcnZlciBtYWNoaW5lIHdpdGhvdXQgZnVydGhlciBuZWVkIHRvIHR5cGUKK2FueXRoaW5nLgorCitJZiB5b3UgZGVjaWRlZCB0byB1c2UgYSBwYXNzcGhyYXNlLCBkbzogPgorCXNzaC1hZ2VudCAkU0hFTEwKKwlzc2gtYWRkCisJc3NoIHtzZXJ2ZXJob3N0bmFtZX0KK1lvdSB3aWxsIGJlIHByb21wdGVkIGZvciB5b3VyIGtleSBwYXNzcGhyYXNlIHdoZW4geW91IHVzZSBzc2gtYWRkLCBidXQgbm90CitzdWJzZXF1ZW50bHkgd2hlbiB5b3UgdXNlIHNzaC4gIEZvciB1c2Ugd2l0aCB2aW0sIHlvdSBjYW4gdXNlID4KKwlzc2gtYWdlbnQgdmltCithbmQsIHdoZW4gbmV4dCB3aXRoaW4gdmltLCB1c2UgPgorCTohc3NoLWFkZAorQWx0ZXJuYXRpdmVseSwgeW91IGNhbiBhcHBseSBzc2gtYWdlbnQgdG8gdGhlIHRlcm1pbmFsIHlvdSdyZSBwbGFubmluZyBvbgorcnVubmluZyB2aW0gaW46ID4KKwlzc2gtYWdlbnQgeHRlcm0gJgorYW5kIGRvIHNzaC1hZGQgd2hlbmV2ZXIgeW91IG5lZWQuCiAKIEZvciBXaW5kb3dzLCBmb2xrcyBvbiB0aGUgdmltIG1haWxpbmcgbGlzdCBoYXZlIG1lbnRpb25lZCB0aGF0IFBhZ2VhbnQgaGVscHMKIHdpdGggYXZvaWRpbmcgdGhlIGNvbnN0YW50IG5lZWQgdG8gZW50ZXIgdGhlIHBhc3N3b3JkLgpAQCAtMTYyOCw2ICsxNjYzLDEzIEBACiAJICAgIChTZWUgfG5ldHJ3LW1mfCBhbmQgfG5ldHJ3LW1yfCBmb3IgaG93IHRvIG1hcmsgZmlsZXMpCiAJCSAgICAgICh1c2VzIHRoZSBnbG9iYWwgbWFya2VkIGZpbGUgbGlzdCkKIAorCVdBUk5JTkc6IG1vdmluZyBmaWxlcyBpcyBtb3JlIGRhbmdlcm91cyB0aGFuIGNvcHlpbmcgdGhlbS4KKwlBIGZpbGUgYmVpbmcgbW92ZWQgaXMgZmlyc3QgY29waWVkIGFuZCB0aGVuIGRlbGV0ZWQ7IGlmIHRoZQorCWNvcHkgb3BlcmF0aW9uIGZhaWxzIGFuZCB0aGUgZGVsZXRlIHN1Y2NlZWRzLCB5b3Ugd2lsbCBsb3NlCisJdGhlIGZpbGUuICBFaXRoZXIgdHJ5IHRoaW5ncyBvdXQgd2l0aCB1bmltcG9ydGFudCBmaWxlcworCWZpcnN0IG9yIGRvIHRoZSBjb3B5IGFuZCB0aGVuIGRlbGV0ZSB5b3Vyc2VsZiB1c2luZyBtYyBhbmQgRC4KKwlVc2UgYXQgeW91ciBvd24gcmlzayEKKwogU2VsZWN0IGEgdGFyZ2V0IGRpcmVjdG9yeSB3aXRoIG1UICh8bmV0cnctbXR8KS4gIFRoZW4gY2hhbmdlIGRpcmVjdG9yeSwKIHNlbGVjdCBmaWxlKHMpIChzZWUgfG5ldHJ3LW1mfCksIGFuZCBwcmVzcyAibW0iLgogCkBAIC0yMzg3LDYgKzI0MjksMTYgQEAKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogMTIuIEhpc3RvcnkJCQkJCQkqbmV0cnctaGlzdG9yeSoge3t7MQogCisJdjEzMDogSnVsIDMxLCAyMDA4ICogdHJ5aW5nIG91dCBlbGlua3MvbGlua3MgZm9yIGh0dHA6Ly9ob3N0LworCQkJICAgICByZXF1ZXN0cy4gIE9uZSBwcm9ibGVtOiBpbi1wYWdlIGxpbmtzCisJCQkgICAgIChzdWNoIGFzIHdpdGggLi4uI0xBQkVMKSBhcmUgbm90IHN1cHBvcnRlZAorCQkJICAgKiB2ZXJpZmllZCB0aGF0IEJyYW0ncyBtb2RpZmllZCBuZXRyd1BsdWdpbiB3b3JrcworCSAgICAgIEF1ZyAwMSwgMjAwOCAqIGZpeGVkIGEgYnVnOiB3aGVuIHNvdXJjaW5nIGEgZmlsZSB2aWEgZnRwLCB0aGUKKwkJCSAgICAgImZpbHRlciB3aW5kb3ciIHdhcyBsZWZ0IGJlaGluZC4KKwl2MTI5OiBKdWwgMzEsIDIwMDggKiBidWcgZm91bmQgaW4gbm9uLW1vdXNlIGVuYWJsZWQgdmltIGFuZCBzb21lCisJCQkgICAgIGxvY2FsIG1hcHMKKwl2MTI4OiBKdWwgMzAsIDIwMDggKiBtdWNoIHdvcmsgZG9uZSBpbiB1c2luZyBzaGVsbGVzY2FwZSgpIGFuZAorCQkJICAgICBmbmFtZWVzY2FwZSgpCiAJdjEyNjogSnVuIDMwLCAyMDA4ICogYWZ0ZXIgaGF2aW5nIGdvbmUgdG8gYSByZW1vdGUgZGlyZWN0b3J5LAogCSAgICAgICAgICAgICAgICAgICAgIDxmMT4gd2FzIG5vIGxvbmdlciB0YWtpbmcgb25lIHRvIHRoZSBjb3JyZWN0CiAJCQkgICAgIGVudHJ5IGluIHRoZSBoZWxwICh8bmV0cnctcXVpY2toZWxwfCkuICBGaXhlZC4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3BpX3BhcmVuLnR4dCBiL3J1bnRpbWUvZG9jL3BpX3BhcmVuLnR4dAppbmRleCBmYWE4ODliLi4zYTUzOWE5IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9waV9wYXJlbi50eHQKKysrIGIvcnVudGltZS9kb2MvcGlfcGFyZW4udHh0CkBAIC0xLDQgKzEsNCBAQAotKnBpX3BhcmVuLnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDE2CisqcGlfcGFyZW4udHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMTYKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3BpX3NwZWMudHh0IGIvcnVudGltZS9kb2MvcGlfc3BlYy50eHQKaW5kZXggZTVjYjNkYS4uODBlMTBhYSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvcGlfc3BlYy50eHQKKysrIGIvcnVudGltZS9kb2MvcGlfc3BlYy50eHQKQEAgLTEsNCArMSw0IEBACi0qcGlfc3BlYy50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjQKKypwaV9zcGVjLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyNAogCiBieSBHdXN0YXZvIE5pZW1leWVyIH4KIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvcGlfdGFyLnR4dCBiL3J1bnRpbWUvZG9jL3BpX3Rhci50eHQKaW5kZXggYzY5MjZjZC4uZTFlZjA5NyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvcGlfdGFyLnR4dAorKysgYi9ydW50aW1lL2RvYy9waV90YXIudHh0CkBAIC0xLDQgKzEsNCBAQAotKnBpX3Rhci50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVsIDEzCisqcGlfdGFyLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBKdWwgMTMKIAogCQkgICAgICAgKz09PT09PT09PT09PT09PT09PT09KwogCQkgICAgICAgfCBUYXIgRmlsZSBJbnRlcmZhY2UgfApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvcGlfdmltYmFsbC50eHQgYi9ydW50aW1lL2RvYy9waV92aW1iYWxsLnR4dAppbmRleCA3MjIwZDBlLi4yNThmMzA3IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9waV92aW1iYWxsLnR4dAorKysgYi9ydW50aW1lL2RvYy9waV92aW1iYWxsLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpwaV92aW1iYWxsLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMDUKKypwaV92aW1iYWxsLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBKdWwgMzAKIAogCQkJICAgICAgIC0tLS0tLS0tLS0tLS0tLS0KIAkJCSAgICAgICBWaW1iYWxsIEFyY2hpdmVyCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9waV96aXAudHh0IGIvcnVudGltZS9kb2MvcGlfemlwLnR4dAppbmRleCBkNGUzZjY3Li5iMjhkY2YwIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9waV96aXAudHh0CisrKyBiL3J1bnRpbWUvZG9jL3BpX3ppcC50eHQKQEAgLTEsNCArMSw0IEBACi0qcGlfemlwLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjkKKypwaV96aXAudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IEp1bCAzMAogCiAJCQkJKz09PT09PT09PT09PT09PT09PT09KwogCQkJCXwgWmlwIEZpbGUgSW50ZXJmYWNlIHwKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3ByaW50LnR4dCBiL3J1bnRpbWUvZG9jL3ByaW50LnR4dAppbmRleCBhZjFlMmMwLi40ZTkyZDc2IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9wcmludC50eHQKKysrIGIvcnVudGltZS9kb2MvcHJpbnQudHh0CkBAIC0xLDQgKzEsNCBAQAotKnByaW50LnR4dCogICAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggQXByIDMwCisqcHJpbnQudHh0KiAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBBcHIgMzAKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3F1aWNrZml4LnR4dCBiL3J1bnRpbWUvZG9jL3F1aWNrZml4LnR4dAppbmRleCA1YzQ4ZTY3Li43NWY1OWM0IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9xdWlja2ZpeC50eHQKKysrIGIvcnVudGltZS9kb2MvcXVpY2tmaXgudHh0CkBAIC0xLDQgKzEsNCBAQAotKnF1aWNrZml4LnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggTWFyIDE0CisqcXVpY2tmaXgudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBNYXIgMTQKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3F1aWNrcmVmLnR4dCBiL3J1bnRpbWUvZG9jL3F1aWNrcmVmLnR4dAppbmRleCAyMzBhMTEwLi5iOWE3ZWUzIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9xdWlja3JlZi50eHQKKysrIGIvcnVudGltZS9kb2MvcXVpY2tyZWYudHh0CkBAIC0xLDQgKzEsNCBAQAotKnF1aWNrcmVmLnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggSmFuIDIyCisqcXVpY2tyZWYudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBKYW4gMjIKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3F1b3Rlcy50eHQgYi9ydW50aW1lL2RvYy9xdW90ZXMudHh0CmluZGV4IGFmODc0NTEuLjcxZTgyZDIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3F1b3Rlcy50eHQKKysrIGIvcnVudGltZS9kb2MvcXVvdGVzLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpxdW90ZXMudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyNAorKnF1b3Rlcy50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDI0CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9yZWNvdmVyLnR4dCBiL3J1bnRpbWUvZG9jL3JlY292ZXIudHh0CmluZGV4IDc1ZjVkN2UuLjg3OWY1NmYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3JlY292ZXIudHh0CisrKyBiL3J1bnRpbWUvZG9jL3JlY292ZXIudHh0CkBAIC0xLDQgKzEsNCBAQAotKnJlY292ZXIudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDI0CisqcmVjb3Zlci50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjQKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3JlbW90ZS50eHQgYi9ydW50aW1lL2RvYy9yZW1vdGUudHh0CmluZGV4IGJiZjFjMTIuLjIwMzczOTggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3JlbW90ZS50eHQKKysrIGIvcnVudGltZS9kb2MvcmVtb3RlLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpyZW1vdGUudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA4IE1heSAyNAorKnJlbW90ZS50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggTWF5IDI0CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9yZXBlYXQudHh0IGIvcnVudGltZS9kb2MvcmVwZWF0LnR4dAppbmRleCA1NzdjMGRlLi5lOWMwMmM4IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9yZXBlYXQudHh0CisrKyBiL3J1bnRpbWUvZG9jL3JlcGVhdC50eHQKQEAgLTEsNCArMSw0IEBACi0qcmVwZWF0LnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNyBBdWcgMTIKKypyZXBlYXQudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA3IEF1ZyAxMgogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvcmlsZWZ0LnR4dCBiL3J1bnRpbWUvZG9jL3JpbGVmdC50eHQKaW5kZXggNDBmMDBiYy4uNWIyODhiOSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvcmlsZWZ0LnR4dAorKysgYi9ydW50aW1lL2RvYy9yaWxlZnQudHh0CkBAIC0xLDQgKzEsNCBAQAotKnJpbGVmdC50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDI0CisqcmlsZWZ0LnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjQKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQXZuZXIgTG90dGVtCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9ydXNzaWFuLnR4dCBiL3J1bnRpbWUvZG9jL3J1c3NpYW4udHh0CmluZGV4IDBiYTliZTcuLmI2Yjc5ODUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3J1c3NpYW4udHh0CisrKyBiL3J1bnRpbWUvZG9jL3J1c3NpYW4udHh0CkBAIC0xLDQgKzEsNCBAQAotKnJ1c3NpYW4udHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDI0CisqcnVzc2lhbi50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjQKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgVmFzc2lseSBSYWdvc2luCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9zY3JvbGwudHh0IGIvcnVudGltZS9kb2Mvc2Nyb2xsLnR4dAppbmRleCAxNDFlZWU2Li43MmE1OWFhIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9zY3JvbGwudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Njcm9sbC50eHQKQEAgLTEsNCArMSw0IEBACi0qc2Nyb2xsLnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNiBBdWcgMjcKKypzY3JvbGwudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA2IEF1ZyAyNwogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2Mvc2lnbi50eHQgYi9ydW50aW1lL2RvYy9zaWduLnR4dAppbmRleCA3ZTI5NTIwLi4yNmU2YWViIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9zaWduLnR4dAorKysgYi9ydW50aW1lL2RvYy9zaWduLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpzaWduLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyNAorKnNpZ24udHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDI0CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEdvcmRvbiBQcmlldXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3NwZWxsLnR4dCBiL3J1bnRpbWUvZG9jL3NwZWxsLnR4dAppbmRleCBlYTRkYTI1Li5iYzUyYTlhIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9zcGVsbC50eHQKKysrIGIvcnVudGltZS9kb2Mvc3BlbGwudHh0CkBAIC0xLDQgKzEsNCBAQAotKnNwZWxsLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjEKKypzcGVsbC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDIxCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMCSAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3Nwb25zb3IudHh0IGIvcnVudGltZS9kb2Mvc3BvbnNvci50eHQKaW5kZXggOWU2N2VjNC4uYzJhOTk5NCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2Mvc3BvbnNvci50eHQKKysrIGIvcnVudGltZS9kb2Mvc3BvbnNvci50eHQKQEAgLTEsNCArMSw0IEBACi0qc3BvbnNvci50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjEKKypzcG9uc29yLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAyMQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2Mvc3RhcnRpbmcudHh0IGIvcnVudGltZS9kb2Mvc3RhcnRpbmcudHh0CmluZGV4IGRmYjQwM2IuLmQyNTlhOWYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3N0YXJ0aW5nLnR4dAorKysgYi9ydW50aW1lL2RvYy9zdGFydGluZy50eHQKQEAgLTEsNCArMSw0IEBACi0qc3RhcnRpbmcudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjEKKypzdGFydGluZy50eHQqICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAyMQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2Mvc3ludGF4LnR4dCBiL3J1bnRpbWUvZG9jL3N5bnRheC50eHQKaW5kZXggODM5YWIzNC4uYzQ3NzljYiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2Mvc3ludGF4LnR4dAorKysgYi9ydW50aW1lL2RvYy9zeW50YXgudHh0CkBAIC0xLDQgKzEsNCBAQAotKnN5bnRheC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDIxCisqc3ludGF4LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBKdWwgMjIKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwJICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtODUyLDggKzg1Miw4IEBACiBET1hZR0VOCQkJCQkJKmRveHlnZW4udmltKiAqZG94eWdlbi1zeW50YXgqCiAKIERveHlnZW4gZ2VuZXJhdGVzIGNvZGUgZG9jdW1lbnRhdGlvbiB1c2luZyBhIHNwZWNpYWwgZG9jdW1lbnRhdGlvbiBmb3JtYXQKLShzaW1pbGFyIHRvIEphdmFkb2MpLiAgVGhpcyBzeW50YXggc2NyaXB0IGFkZHMgZG94eWdlbiBoaWdobGlnaHRpbmcgdG8gYywgY3BwCi1hbmQgaWRsIGZpbGVzLCBhbmQgc2hvdWxkIGFsc28gd29yayB3aXRoIGphdmEuCisoc2ltaWxhciB0byBKYXZhZG9jKS4gIFRoaXMgc3ludGF4IHNjcmlwdCBhZGRzIGRveHlnZW4gaGlnaGxpZ2h0aW5nIHRvIGMsIGNwcCwKK2lkbCBhbmQgcGhwIGZpbGVzLCBhbmQgc2hvdWxkIGFsc28gd29yayB3aXRoIGphdmEuCiAKIFRoZXJlIGFyZSBhIGZldyBvZiB3YXlzIHRvIHR1cm4gb24gZG94eWdlbiBmb3JtYXR0aW5nLiBJdCBjYW4gYmUgZG9uZQogZXhwbGljaXRseSBvciBpbiBhIG1vZGVsaW5lIGJ5IGFwcGVuZGluZyAnLmRveHlnZW4nIHRvIHRoZSBzeW50YXggb2YgdGhlIGZpbGUuCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy90YWJwYWdlLnR4dCBiL3J1bnRpbWUvZG9jL3RhYnBhZ2UudHh0CmluZGV4IDUxOGY5ODAuLjE2NmUyNmEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3RhYnBhZ2UudHh0CisrKyBiL3J1bnRpbWUvZG9jL3RhYnBhZ2UudHh0CkBAIC0xLDQgKzEsNCBAQAotKnRhYnBhZ2UudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDcgTWFyIDExCisqdGFicGFnZS50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNyBNYXIgMTEKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3RhZ3MgYi9ydW50aW1lL2RvYy90YWdzCmluZGV4IGI5NTVhYWYuLjdlMmVmOWEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3RhZ3MKKysrIGIvcnVudGltZS9kb2MvdGFncwpAQCAtNDYxNSw2ICs0NjE1LDcgQEAKIGF9CW1vdGlvbi50eHQJLyphfSoKIGIJbW90aW9uLnR4dAkvKmIqCiBiOmNoYW5nZWR0aWNrLXZhcmlhYmxlCWV2YWwudHh0CS8qYjpjaGFuZ2VkdGljay12YXJpYWJsZSoKK2I6Y2hhbmdlbG9nX25hbWUJZmlsZXR5cGUudHh0CS8qYjpjaGFuZ2Vsb2dfbmFtZSoKIGI6Y3VycmVudF9zeW50YXgtdmFyaWFibGUJc3ludGF4LnR4dAkvKmI6Y3VycmVudF9zeW50YXgtdmFyaWFibGUqCiBiOm5ldHJ3X2xhc3RmaWxlCXBpX25ldHJ3LnR4dAkvKmI6bmV0cndfbGFzdGZpbGUqCiBiOnZhcglldmFsLnR4dAkvKmI6dmFyKgpAQCAtNTMyOSw2ICs1MzMwLDggQEAKIGZpeGVkLTcuMQl2ZXJzaW9uNy50eHQJLypmaXhlZC03LjEqCiBmaXhlZC03LjIJdmVyc2lvbjcudHh0CS8qZml4ZWQtNy4yKgogZmxleHdpa2kudmltCXN5bnRheC50eHQJLypmbGV4d2lraS52aW0qCitmbG9hdC1lCWV2YWwudHh0CS8qZmxvYXQtZSoKK2Zsb2F0LXBpCWV2YWwudHh0CS8qZmxvYXQtcGkqCiBmbG9hdDJucigpCWV2YWwudHh0CS8qZmxvYXQybnIoKSoKIGZsb2F0aW5nLXBvaW50LWZvcm1hdAlldmFsLnR4dAkvKmZsb2F0aW5nLXBvaW50LWZvcm1hdCoKIGZsb2F0aW5nLXBvaW50LXByZWNpc2lvbglldmFsLnR4dAkvKmZsb2F0aW5nLXBvaW50LXByZWNpc2lvbioKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3RhZ3NyY2gudHh0IGIvcnVudGltZS9kb2MvdGFnc3JjaC50eHQKaW5kZXggOTUyYmI5Ni4uYzA4ZTYzMyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdGFnc3JjaC50eHQKKysrIGIvcnVudGltZS9kb2MvdGFnc3JjaC50eHQKQEAgLTEsNCArMSw0IEBACi0qdGFnc3JjaC50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjQKKyp0YWdzcmNoLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyNAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdGVybS50eHQgYi9ydW50aW1lL2RvYy90ZXJtLnR4dAppbmRleCBjZjk2MGJkLi41NzIzNWMwIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy90ZXJtLnR4dAorKysgYi9ydW50aW1lL2RvYy90ZXJtLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp0ZXJtLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAyMQorKnRlcm0udHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDIxCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy90aXBzLnR4dCBiL3J1bnRpbWUvZG9jL3RpcHMudHh0CmluZGV4IGZmZWVhMGYuLjJkZmUzNWQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3RpcHMudHh0CisrKyBiL3J1bnRpbWUvZG9jL3RpcHMudHh0CkBAIC0xLDQgKzEsNCBAQAotKnRpcHMudHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDYgSnVsIDI0CisqdGlwcy50eHQqICAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNiBKdWwgMjQKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3RvZG8udHh0IGIvcnVudGltZS9kb2MvdG9kby50eHQKaW5kZXggMDNlNDk4MS4uZGJhNGM4ZSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdG9kby50eHQKKysrIGIvcnVudGltZS9kb2MvdG9kby50eHQKQEAgLTEsNCArMSw0IEBACi0qdG9kby50eHQqICAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBKdWwgMTMKKyp0b2RvLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IEF1ZyAwNgogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0zMSwxMCArMzEsMTMgQEAKIC0tLS0tLS0tLS0tLS0tLS0tLS0tIEtub3duIGJ1Z3MgYW5kIGN1cnJlbnQgd29yayAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiAiOnBlZGl0ICUiIHdpdGggYSBCdWZSZWFkUHJlIGF1dG9jb21tYW5kIGNhdXNlcyB0aGUgY3Vyc29yIHRvIG1vdmUgdG8gdGhlCi1maXJzdCBsaW5lLiAoSW5nbyBLYXJrYXQsIDIwMDggSnVsIDEpCitmaXJzdCBsaW5lLiAoSW5nbyBLYXJrYXQsIDIwMDggSnVsIDEpICBJYW4gS2VsbGluZyBpcyB3b3JraW5nIG9uIHRoaXMuCiAKIEhhdmUgYSBsb29rIGF0IHBhdGNoIGZvciB1dGYtOCBsaW5lIGJyZWFraW5nLiAoWW9uZ3dlaSBXdSwgMjAwOCBNYXIgMSwgTWFyIDIzKQogCituZXRydzogZHJhZ2dpbmcgc3RhdHVzIGxpbmUgY2F1c2VzIHNlbGVjdGlvbiBvZiBlbnRyeS4gIFNob3VsZCBjaGVjayByb3cKK251bWJlciB0byBiZSBiZWxvdyBsYXN0IHZpc2libGUgbGluZS4KKwogUnVudGltZSBmaWxlcyBmb3IgQ2xvanVyZS4gKFRvcmFsZiBXaXR0bmVyLCAyMDA4IEp1biAyNSkKIAogUGF0Y2ggdG8gYWRkIGV4dHJhIGFyZ3VtZW50IHRvIGdsb2IoKSBhbmQgZ2xvYnBhdGgoKSB0byBpZ25vcmUgJ3dpbGRpZ25vcmUnLgpAQCAtNTIsNiArNTUsMTMgQEAKIGxhc3RzdGF0dXM9MiIsIENUUkwtRCBDVFJMLUggQ1RSTC1IIENUUkwtSC4gKEEuUG9saXR6LCAyMDA4IEFwcmlsIDEpCiBXb3JrcyBPSyB3aXRoIFZpbSBpbiBhbiB4dGVybS4KIAorV2hlbiB1c2luZyAiOmUgKytlbmM9Zm9vIGZpbGUiIGFuZCB0aGUgZmlsZSBpcyBhbHJlYWR5IGxvYWRlZCB3aXRoCisnZmlsZWVuY29kaW5nJyBzZXQgdG8gImJhciIsIHRoZW4gZG9fZWNtZCgpIHVzZXMgdGhhdCBidWZmZXIsIGV2ZW4gdGhvdWdoIHRoZQorZmlsZWVuY29kaW5nIGRpZmZlcnMuICBSZWxvYWQgdGhlIGJ1ZmZlciBpbiB0aGlzIHNpdHVhdGlvbj8gIE5lZWQgdG8gY2hlY2sgZm9yCit0aGUgYnVmZmVyIHRvIGJlIHVubW9kaWZpZWQuCitVbmZpbmlzaGVkIHBhdGNoIGJ5IElhbiBLZWxsaW5nLCAyMDA4IEp1bCAxMS4gIEZvbGxvd3VwIEp1bCAxNCwgbmVlZCB0byBoYXZlCithbm90aGVyIGxvb2sgYXQgaXQuCisKIEZpeCBmb3IgbWF0Y2hwYXJlbiBITCBkb2Vzbid0IHdvcmsuICBiZWVwLgogCiBXaW4zMjogYXNzb2NpYXRpbmcgYSB0eXBlIHdpdGggVmltIGRvZXNuJ3QgdGFrZSBjYXJlIG9mIHNwYWNlIGFmdGVyIGEKQEAgLTU5LDE3ICs2OSwyMiBAQAogCiBBZnRlciB1c2luZyA8VGFiPiBmb3IgY29tbWFuZCBsaW5lIGNvbXBsZXRpb24gYWZ0ZXIgIjp0YSBibGFoIiBhbmQgZ2V0dGluZyBFMzMKIChubyB0YWdzIGZpbGUpLCBmdXJ0aGVyIGVkaXRpbmcgdGhlIGNvbW1hbmQgdG8gZS5nLiwgIjplY2hvICdibGFoJyIsIHRoZQotY29tbWFuZCBpcyBub3QgZXhlY3V0ZWQuCitjb21tYW5kIGlzIG5vdCBleGVjdXRlZC4gIEZpeCBieSBJYW4gS2VsbGluZz8KIAogV2hlbiAnYm9tYicgaXMgY2hhbmdlZCB0aGUgd2luZG93IHRpdGxlIGlzIHVwZGF0ZWQgdG8gc2hvdy9oaWRlIGEgIisiLCBidXQgdGhlCiB0YWIgcGFnZSBsYWJlbCBpc24ndC4gKFBhdHJpY2sgVGV4aWVyLCAyMDA4IEp1biAyNCkKIAorIjpoZWxwIHMvfiIganVtcHMgdG8gKnMvXH4qLCB3aGlsZSAiOmhlbHAgcy9cfiIgZG9lc24ndCBmaW5kIGFueXRoaW5nLiAoVGltCitDaGFzZSkgIEZpeCBieSBJYW4gS2VsbGluZywgMjAwOCBKdWwgMTQuCisKIERlc3BpdGUgYWRkaW5nIHNhdmVfc3ViZXhwcigpIHRoaXMgc3RpbGwgZG9lc24ndCB3b3JrIHByb3Blcmx5OgogUmVnZXhwOiBtYXRjaGxpc3QoJzEyYTRhYWEnLCAnXlwoLlx7LX1cKVwoXCU1Y1xAPD1hXCtcKVwoLlwrXClcPycpCiBSZXR1cm5zIFsnMTJhNCcsICdhYWEnLCAnNGFhYSddLCBzaG91bGQgYmUgWycxMmE0JywgJ2FhYScsICcnXQogQmFja3JlZmVyZW5jZSBub3QgY2xlYXJlZCB3aGVuIHJldHJ5aW5nIGFmdGVyIFxAPD0gZmFpbHM/CiAoQnJldHQgU3RhaGxtYW4sIDIwMDggTWFyY2ggOCkKIAorUGF0Y2ggZm9yIDJodG1sLnZpbSB0byBhdm9pZCAiJmFtcDtuYnNwOyIuIChNYXJrdXMgSGVpZGVsYmVyZywgMjAwOCBKdWwgMTkpCisKIFdpbjMyOiByZW1vdGUgZWRpdGluZyBmYWlscyB3aGVuIHRoZSBjdXJyZW50IGRpcmVjdG9yeSBuYW1lIGNvbnRhaW5zICJbIi4KIChJdmFuIFRpc2hjaGVua28sIExpdSBZdWJhbykgIFN1Z2dlc3RlZCBwYXRjaCBieSBDaHJpcyBMdWJpbnNraTogQXZvaWQKIGVzY2FwaW5nIGNoYXJhY3RlcnMgd2hlcmUgdGhlIGJhY2tzbGFzaCBpcyBub3QgcmVtb3ZlZCBsYXRlci4gIEFza2VkIENocmlzIGZvcgpAQCAtMTExLDYgKzEyNiw5IEBACiBNYWM6IFBhdGNoIGZvciBjb25maWd1cmU6IHJlbW92ZSBhcmNoIGZyb20gcnVieSBsaW5rIGFyZ3MuIChLbmV6ZXZpYywgMjAwOAogTWFyIDUpICBBbHRlcm5hdGl2ZTogS2F6dWtpIFNha2Ftb3RvLCBNYXIgNy4KIAorTWFjOiB0cm91YmxlIGNvbXBpbGluZyB3aXRoIE1vdGlmLCByZXF1aXJlcyAtLWRpc2FibGUtZGFyd2luLiAoUmFmLCAyMDA4IEF1ZworMSkgIFJlcGx5IGJ5IEJlbiBTY2htaWR0LgorCiAiOmVtZW51IiB3b3JrcyB3aXRoIHRoZSB0cmFuc2xhdGVkIG1lbnUgbmFtZS4gIFNob3VsZCBhbHNvIHdvcmsgd2l0aCB0aGUKIHVudHJhbnNsYXRlZCBuYW1lLiAgV291bGQgbmVlZCB0byBzdG9yZSBib3RoIHRoZSBFbmdsaXNoIGFuZCB0aGUgdHJhbnNsYXRlZAogbmFtZS4gIFBhdGNoIGJ5IEJqb3JuIFdpbmNrbGVyLCAyMDA4IE1hciAzMC4KQEAgLTEyNSw4ICsxNDMsNiBAQAogUHJvYmxlbSB3aXRoICd0cycgc2V0IHRvIDkgYW5kICdzaG93YnJlYWsnIHRvICI+Pj4iLiAoTWF0dGhldyBXaW5uLCAyMDA3IE9jdAogMSkKIAotInZpbSAtTyBhYSBhYSIgZ2l2ZXMgb25seSBvbmUgd2luZG93LiAoWmRlbmVrIFNla2VyYSwgMjAwOCBBcHIgMTYpCi0KIEluY2x1ZGluZyBORkEgcmVnZXhwIGNvZGU6CiBVc2UgIlwlIz0gdG8gc2V0IHRoZSBlbmdpbmU6IDAgPSBhdXRvbWF0aWMsIDEgPSBiYWNrdHJhY2tpbmcsIDIgPSBuZXcuCiBVc2VmdWwgaW4gdGVzdHMuCkBAIC0xNTgsNiArMTc0LDEwIEBACiAnZm9sZGNvbHVtbicgaW4gbW9kZWxpbmUgYXBwbGllZCB0byB3cm9uZyB3aW5kb3cgd2hlbiB1c2luZyBhIHNlc3Npb24uIChUZWVtdQogTGlrb25lbiwgTWFyY2ggMTkpCiAKK1RoZSBkb2N1bWVudGF0aW9uIG1lbnRpb25zIHRoZSBwcmlvcml0eSBmb3IgIjoybWF0Y2giIGFuZCAiOjNtYXRjaCIsIGJ1dCBpdAorYXBwZWFycyB0aGUgbGFzdCBvbmUgd2lucy4gKEpvaG4gQmVja2V0dCwgMjAwOCBKdWwgMjIpICBDYXVzZWQgYnkgYWRkaW5nCittYXRjaGFkZCgpPyAgU3VnZ2VzdGVkIHBhdGNoIGJ5IEpvaG4sIDIwMDggSnVsIDI0LgorCiBSZXBsYWNlIGNjb21wbGV0ZS52aW0gYnkgY3BwY29tcGxldGUudmltIGZyb20gd3d3LnZpbS5vcmc/ICBzY3JpcHQgMTUyMAogYnkgVmlzc2FsZSBOZWFuZy4gIChNYXJ0aW4gU3R1YmVuc2Nocm90dCkKIEFza2VkIFZpc3NhbGUgdG8gbWFrZSB0aGUgc2NyaXB0cyBtb3JlIGZyaWVuZGx5IGZvciB0aGUgVmltIGRpc3RyaWJ1dGlvbi4KQEAgLTE2OCw4ICsxODgsOSBAQAogCiBNb3JlIEFtaWdhT1M0IHBhdGNoZXMuIChQZXRlciBCZW5ndHNzb24sIE5vdiA5KQogCi1FcnJvciB3aGVuIGNhbmNlbGxpbmcgY29tcGxldGlvbiBtZW51IGFuZCBhdXRvLWZvcm1hdHRpbmcuIChUaW0gV2ViZXIsIDIwMDgKLUFwciAxNykKK0luc2VydCBtb2RlIGNvbXBsZXRpb246IFdoZW4gZWRpdGluZyB0aGUgdGV4dCBhbmQgcHJlc3NpbmcgQ1RSTC1OIGFnYWluIGdvZXMKK2JhY2sgdG8gb3JpZ2luYWxseSBjb21wbGV0ZWQgdGV4dCwgZWRpdGVkIHRleHQgaXMgZ29uZS4gKFBlbmcgWXUsIDIwMDggSnVsIDI0KQorU3VnZ2VzdGlvbiBieSBCZW4gU2NobWlkdCwgMjAwOCBBdWcgNi4KIAogUHJvYmxlbSB3aXRoIGNvbXBvdW5kIHdvcmRzPyAgKEJlcnQsIDIwMDggTWF5IDYpCiBObyB3YXJuaW5nIGZvciB3aGVuIGZsYWdzIGFyZSBkZWZpbmVkIGFmdGVyIHRoZXkgYXJlIHVzZWQgaW4gYW4gYWZmaXguCkBAIC0xOTMsNiArMjE0LDkgQEAKIHNpemUgYW5kIHRoZW4gcmVkcmF3IHRoZSB0ZXh0LCBza2lwcGluZyB0aGUgY2hhcmFjdGVycyB1bmRlciB0aGUgcG9wdXAgbWVudS4KIFRoaXMgc2hvdWxkIGF2b2lkIGZsaWNrZXIuICBPdGhlciBzb2x1dGlvbiBieSBBLlBvbGl0eiwgMjAwNyBBdWcgMjIuCiAKK1doZW4gdGhlIHBvcHVwIG1lbnUgaXMgY2xvc2UgdG8gdGhlIGVkZ2Ugb2YgdGhlIHdpbmRvdyBpdCBpcyB0cnVuY2F0ZWQuICBQYXRjaAordG8gYW5jaG9yIHRoZSBwb3B1cCBtZW51IGluIGEgZGlmZmVyZW50IHdheS4gKEphbWVzIFZlZ2EsIDIwMDggSnVsIDMwKQorCiBTcGVsbCBjaGVja2luZzogQWRkIGEgd2F5IHRvIHNwZWNpZnkgcHVuY3R1YXRpb24gY2hhcmFjdGVycy4gIEFkZCB0aGUKIHN1cGVyc2NyaXB0IG51bWJlcnMgYnkgZGVmYXVsdDogMHgyMDcwLCAweGI5LCAweGIyLCAweGIzLCAweDIwNzQgLSAweDIwNzkuCiAKQEAgLTIwMCw5ICsyMjQsOSBAQAogYSB0cmFpbGluZyBOVUwuICAoSm9hY2hpbSBIb2ZtYW5uKSAgUGVyaGFwcyB0aGUgbGVuZ3RoIHNwZWNpZmllZCBmb3IgQ0ZfVEVYVAogaXNuJ3QgcmlnaHQ/CiAKLUNvbXBsZXRpb246IFNjYW5uaW5nIGZvciB0YWdzIGRvZXNuJ3QgY2hlY2sgZm9yIHR5cGVkIGtleSBub3cgYW5kIHRoZW4/Ci1IYW5ncyBmb3IgYWJvdXQgNSBzZWNvbmRzLiAgQXBwZWFycyB0byBiZSBjYXVzZWQgYnkgZmluZGluZyBpbmNsdWRlIGZpbGVzIHdpdGgKLSJmb28vKioiIGluICdwYXRoJy4gIChLYWxpc2lhaywgMjAwNiBKdWx5IDE1KQorQ29tbWFuZCBsaW5lIGNvbXBsZXRpb246IFNjYW5uaW5nIGZvciB0YWdzIGRvZXNuJ3QgY2hlY2sgZm9yIHR5cGVkIGtleSBub3cgYW5kCit0aGVuPyAgSGFuZ3MgZm9yIGFib3V0IDUgc2Vjb25kcy4gIEFwcGVhcnMgdG8gYmUgY2F1c2VkIGJ5IGZpbmRpbmcgaW5jbHVkZQorZmlsZXMgd2l0aCAiZm9vLyoqIiBpbiAncGF0aCcuICAoS2FsaXNpYWssIDIwMDYgSnVseSAxNSkKIEFkZGl0aW9uYWwgaW5mbzogV2hlbiB1c2luZyB0aGUgfHdpbGRjYXJkc3wgKiogZ2xvYmluZywgdmltIGhhbmdzCiBpbmRlZmluaXRlbHkgb24gbG90cyBvZiBkaXJlY3Rvcmllcy4gVGhlIHxmaWxlLXNlYXJjaGluZ3wgZ2xvYmluZywgbGlrZSBpbgogIjpzZXQgcGF0aD0vKioiIGRvZXMgbm90IGhhbmcgYXMgb2Z0ZW4gYXMgd2l0aCBnbG9iaW5nIHdpdGggfHdpbGRjYXJkc3wsIGxpa2UKQEAgLTI0Nyw2ICsyNzEsOSBAQAogCiBXaW4zMjogUGF0Y2ggZm9yIGNzY29wZSBleHRlcm5hbCBjb21tYW5kLiAoTWlrZSBXaWxsaWFtcywgMjAwNyBBdWcgNykKIAorIjpjc2NvcGUgZmluZCBmICBmaWxlbmFtZSIgZG9lc24ndCB3b3JrIGJlY2F1c2Ugb2YgdGhlIGV4dHJhIHNwYWNlLiAoRXRoYW4KK01hbGxvdmUpCisKIFdpbjMyOiBYUE0gc3VwcG9ydCBvbmx5IHdvcmtzIHdpdGggcGF0aCB3aXRob3V0IHNwYWNlcy4gIFBhdGNoIGJ5IE1hdGhpYXMKIE1pY2hhZWxpcywgMjAwNiBKdW4gOS4gIEFub3RoZXIgcGF0Y2ggZm9yIG1vcmUgcGF0aCBuYW1lcywgMjAwNiBNYXkgMzEuCiBOZXcgdmVyc2lvbjogaHR0cDovL21lbWJlcnMudGNuZXQuY2gvbWljaGFlbGlzL3ZpbS9wYXRjaGVzLnppcCAoYWxzbyBmb3Igb3RoZXIKQEAgLTI4MCw2ICszMDcsMTAgQEAKIAogV2luMzI6IHBhdGNoIGZvciBmdWxsc2NyZWVuIG1vZGUuIChMaXVzaGFvbGluLCAyMDA4IEFwcmlsIDE3KQogCitXaGVuIGZpbGUgYiBpcyBhIGxpbmsgdG8gZmlsZSBhIGFuZCBlZGl0aW5nIGIgdHdpY2UgeW91IGdldCB0aGUgY29ycmVjdAord2FybmluZyBmb3IgZXhpc3Rpbmcgc3dhcCBmaWxlLCBidXQgd2hlbiB0cnlpbmcgdG8gcmVjb3ZlciBpdCBkb2Vzbid0IGZpbmQgdGhlCitzd2FwZmlsZS4gKE1hdHQgV296bmlza2ksIDIwMDggQXVnIDUpCisKIFByZXNzaW5nIHRoZSAncGFzdGV0b2dnbGUnIGtleSBkb2Vzbid0IHVwZGF0ZSB0aGUgc3RhdHVzbGluZS4gKEphbiBDaHJpc3RvcGgKIEViZXJzYmFjaCwgMjAwOCBGZWIgMSkKIApAQCAtMzIxLDYgKzM1Miw4IEBACiBDaGVjayBvdGhlciBpbnRlcmZhY2VzIGZvciBjaGFuZ2luZyBjdXJidWYgaW4gYSB3cm9uZyB3YXkuICBQYXRjaCBsaWtlIGZvcgogaWZfcnVieS5jLgogCitQcm9ibGVtIHdpdGggY3Vyc29yY29sdW1uIGhpZ2hsaWdodGluZyBhbmQgZm9sZHMuIChKb2huIE11bGxpbiwgMjAwOCBKdWwgMTgpCisKIFNwZWxsIGNoZWNraW5nIGluIHBvcHVwIG1lbnU6IElmIHRoZSBvbmx5IHByb2JsZW0gaXMgdGhlIGNhc2Ugb2YgdGhlIGZpcnN0CiBjaGFyYWN0ZXIsIGRvbid0IG9mZmVyICJpZ25vcmUiIGFuZCAiYWRkIHRvIHdvcmQgbGlzdCIuCiAKQEAgLTM4MSwxMiArNDE0LDE5IEBACiAKIE1hYzogVXNpbmcgZ3ZpbTogbmV0cncgd2luZG93IGRpc2FwcGVhcnMuIChOaWNrIExvLCAyMDA2IEp1biAyMSkKIAorV2hlbiAnZmYnIGlzICJtYWMiIHRoZW4gImdhIiBvbiBhIF5KIHNob3dzIDB4MGQgaW5zdGVhZCBvZiAweDBhLiAgQ29tcGFyZSB3aXRoCit1c2luZyAiZ2EiIG9uIGEgTlVMIHdoZW4gJ2ZmJyBpcyAidW5peCIuIChBbmR5IFdva3VsYSwgMjAwOCBKdWwgMTYpCisKIEFkZCBhbiBvcHRpb24gdG8gc3BlY2lmeSB0aGUgY2hhcmFjdGVyIHRvIHVzZSB3aGVuIGEgZG91YmxlLXdpZHRoIGNoYXJhY3RlciBpcwogbW92ZWQgdG8gdGhlIG5leHQgbGluZS4gIERlZmF1bHQgJz4nLCBzZXQgdG8gYSBzcGFjZSB0byBibGFuayBpdCBvdXQuICBDaGVjawogdGhhdCBjaGFyIGlzIHNpbmdsZSB3aWR0aCB3aGVuIGl0J3Mgc2V0IChjb21wYXJlIHdpdGggJ2xpc3RjaGFycycpLgogCiBUaGUgZ2VuZXJhdGVkIHZpbS5iYXQgY2FuIGF2b2lkIHRoZSBsb29wIGZvciBOVC4gKENhcmwgWm1vbGEsIDIwMDYgU2VwIDMpCiAKK0luIGEgQyBmaWxlIHdpdGggc3BlbGwgY2hlY2tpbmcsIGluICIlIGludGVnZXIiICJudGVnZXIiIGlzIHNlZW4gYXMgYW4gZXJyb3IsCitidXQgIl1zIiBkb2Vzbid0IGZpbmQgaXQuICAibnRlZ2VyIiBieSBpdHNlbGYgaXMgZm91bmQuIChSYWxmIFdpbGRlbmh1ZXMsIDIwMDgKK0p1bCAyMikKKwogU2Vzc2lvbiBmaWxlIGNyZWF0aW9uOiAnYXV0b2NoZGlyJyBjYXVzZXMgdHJvdWJsZS4gIEtlZXAgaXQgb2ZmIHVudGlsIGFmdGVyCiBsb2FkaW5nIGFsbCBmaWxlcy4KIApAQCAtNDQzLDcgKzQ4Myw3IEBACiBtaWRkbGU/CiAKIFdoZW4gcnVubmluZyBpbnNpZGUgc2NyZWVuIGl0J3MgcG9zc2libGUgdG8ga2lsbCB0aGUgWCBzZXJ2ZXIgYW5kIHJlc3RhcnQgaXQKLSh1c2luZyBwdHkncyB0aGUgcHJvZ3JhbSBjYW4ga2VlcCBvbiBydW5uaW5nKS4gIFZpbSBkaWVzIGJlY2F1c2UgaXQgbG9vc2VzIHRoZQorKHVzaW5nIHB0eSdzIHRoZSBwcm9ncmFtIGNhbiBrZWVwIG9uIHJ1bm5pbmcpLiAgVmltIGRpZXMgYmVjYXVzZSBpdCBsb3NlcyB0aGUKIGNvbm5lY3Rpb24gdG8gdGhlIFggc2VydmVyLiAgQ2FuIFZpbSBzaW1wbHkgcXVpdCB1c2luZyB0aGUgWCBzZXJ2ZXIgaW5zdGVhZCBvZgogZHlpbmc/ICBBbHNvIHJlbGV2YW50IHdoZW4gcnVubmluZyBpbiBhIGNvbnNvbGUuCiAKQEAgLTQ2Myw5ICs1MDMsNiBAQAogCiBTeW50YXggSEwgZXJyb3IgY2F1c2VkIGJ5ICJjb250YWluZWRpbiIuIChQZXRlciBIb2RnZSwgMjAwNiBPY3QgNikKIAotIjpoZWxwIHMvfiIganVtcHMgdG8gKnMvXH4qLCB3aGlsZSAiOmhlbHAgcy9cfiIgZG9lc24ndCBmaW5kIGFueXRoaW5nLiAoVGltCi1DaGFzZSkKLQogQSBjdXN0b20gY29tcGxldGlvbiBmdW5jdGlvbiBpbiBhICI6Y29tbWFuZCIgY2Fubm90IGJlIGEgRnVuY3JlZi4gKEFuZHkKIFdva3VsYSwgMjAwNyBBdWcgMjUpCiAKQEAgLTQ4NywxMCArNTI0LDYgQEAKIEdUSzogd2hlbiB1c2luZyB0aGUgLWdlb20gYXJndW1lbnQgd2l0aCBhbiBvZmZzZXQgZnJvbSB0aGUgcmlnaHQgZWRnZSBhbmQgdGhlCiBzaXplIGlzIHNtYWxsZXIgdGhhbiB0aGUgZGVmYXVsdCwgdGhlIFZpbSB3aW5kb3cgaXMgbm90IHBvc2l0aW9uZWQgcHJvcGVybHkuCiAKLUdUSzogd2hlbiBlZGl0aW5nIGEgZGlyZWN0b3J5IHdpdGggdGhlIG5ldHJ3IHBsdWdpbiBpbiBhIHRlcm1pbmFsIGFuZCBkb2luZwotIjpndWkiIFZpbSBoYW5ncyBpbiBvYnRhaW5pbmcgdGhlIHNlbGVjdGlvbi4gIFdvcmthcm91bmQgcGF0Y2ggNy4xLjIwOSBpcyBhCi1oYWNrICh0aW1lb3V0IGFmdGVyIDMgc2Vjb25kcykuICBXaHkgZG9uJ3Qgd2UgZ2V0IHRoZSBzZWxlY3Rpb24gaGVyZT8KLQogQWZ0ZXIgc3RhcnRpbmcgVmltLCB1c2luZyAnMCB0byBqdW1wIHNvbWV3aGVyZSBpbiBhIGZpbGUsICI6c3AiIGRvZXNuJ3QgY2VudGVyCiB0aGUgY3Vyc29yIGxpbmUuICBJdCB3b3JrcyBPSyBhZnRlciBzb21lIG90aGVyIGNvbW1hbmRzLgogCkBAIC02MjYsNiArNjU5LDE2IEBACiAtICAgZ2V0dGFidmFyKCkgYW5kIHNldHRhYnZhcigpIGZ1bmN0aW9ucy4gKFllZ2FwcGFuIExha3NobWFuYW4sIDIwMDcgU2VwIDEzLAogICAgIDIwMDggSnVuIDEyKQogLSAgIHJlY29nbml6ZSBoZXggbnVtYmVycyBiZXR0ZXIuIChNYXJrIE1hbm5pbmcsIDIwMDYgU2VwIDEzKQorLSAgIEFkZCA8QWJickV4cGFuZD4ga2V5LCB0byBleHBhbmQgYW4gYWJicmV2aWF0aW9uIGluIGEgbWFwcGluZy4gKEthbmEKKyAgICBOYXRzdW5vLCAyMDA4IEp1bCAxNykKKy0gICBBZGQgJ3dzcGFyYScgb3B0aW9uLCBhbHNvIGFjY2VwdCBibGFuayBsaW5lcyBsaWtlIGVtcHR5IGxpbmVzIGZvciAieyIgYW5kCisgICAgIn0iLiAoTWFyayBMdW5kcXVpc3QsIDIwMDggSnVsIDE4KQorLSAgIFBhdGNoIHRvIGFkZCBDVFJMLVQgdG8gZGVsZXRlIHBhcnQgb2YgYSBwYXRoIG9uIGNtZGxpbmUuIChBZGVrLCAyMDA4IEp1bAorICAgIDIxKQorLSAgIEluc3RlYWQgb2YgY3JlYXRpbmcgYSBjb3B5IG9mIHRoZSB0dXRvciBpbiBhbGwgdGhlIHNoZWxsIHNjcmlwdHMsIGRvIGl0IGluCisgICAgdmltdHV0b3IudmltLiAoSmFuIE1pbmFyLCAyMDA4IEp1bCAyMCkKKy0gICBXaGVuIGZzeW5jKCkgZmFpbHMgdGhlcmUgaXMgbm8gaGludCBhYm91dCB3aGF0IHdlbnQgd3JvbmcuICBQYXRjaCBieSBCZW4KKyAgICBTY2htaWR0LCAyMDA4IEp1bCAyMi4KIAogCiBBd2FpdGluZyB1cGRhdGVkIHBhdGNoZXM6CkBAIC0xMjA0LDExICsxMjQ3LDYgQEAKICAgICB0aGUgOmNhdGNoIGNvbW1hbmRzIGFyZSBhbHdheXMgZXhlY3V0ZWQsIGFsc28gd2hlbiB0aGUgZmlsZSBpcyBlZGl0ZWQKICAgICBub3JtYWxseS4gIFNob3VsZCByZXNldCBkaWRfZW1zZyBhbmQgdW5kbyBzaWRlIGVmZmVjdHMuICBBbHNvIG1ha2Ugc3VyZQogICAgIHRoZSBBVFRFTlRJT04gbWVzc2FnZSBzaG93cyB1cC4gIFNlcnZhdGl1cyBCcmFuZHQgd29ya3Mgb24gdGhpcy4KLTkgICBXaGVuIHVzaW5nICI6ZSArK2VuYz1mb28gZmlsZSIgYW5kIHRoZSBmaWxlIGlzIGFscmVhZHkgbG9hZGVkIHdpdGgKLSAgICAnZmlsZWVuY29kaW5nJyBzZXQgdG8gImJhciIsIHRoZW4gZG9fZWNtZCgpIHVzZXMgdGhhdCBidWZmZXIsIGV2ZW4gdGhvdWdoCi0gICAgdGhlIGZpbGVlbmNvZGluZyBkaWZmZXJzLiAgUmVsb2FkIHRoZSBidWZmZXIgaW4gdGhpcyBzaXR1YXRpb24/ICBOZWVkIHRvCi0gICAgY2hlY2sgZm9yIHRoZSBidWZmZXIgdG8gYmUgdW5tb2RpZmllZC4KLSAgICBVbmZpbmlzaGVkIHBhdGNoIGJ5IElhbiBLZWxsaW5nLCAyMDA4IEp1bCAxMS4KIDggICAiOmcvLyIgZ2l2ZXMgIlBhdHRlcm4gbm90IGZvdW5kIGVycm9yIiB3aXRoIEU0ODYuICBTaG91bGQgbm90IHVzZSB0aGUKICAgICBlcnJvciBudW1iZXIsIGl0J3Mgbm90IGEgcmVndWxhciBlcnJvciBtZXNzYWdlLgogNyAgIFZpbXR1dG9yIGxlYXZlcyBlc2NhcGUgc2VxdWVuY2UgaW4gdGVybWluYWwuIFRoaXMgaXMgdGhlIHh0ZXJtIHJlc3BvbnNlIHRvCkBAIC0xMzA3LDcgKzEzNDUsNyBAQAogOSAgIFdoZW4gZWRpdGluZyBhIGZpbGUgd2l0aCAncmVhZG9ubHknIHNldCwgdGhlcmUgaXMgbm8gY2hlY2sgZm9yIGFuIGV4aXN0aW5nCiAgICAgc3dhcCBmaWxlLiAgVGhlbiB1c2luZyAiOndyaXRlIiAod2l0aG91dCBtYWtpbmcgYW55IGNoYW5nZXMpIGRvZXNuJ3QgZ2l2ZQogICAgIGEgd2FybmluZyBlaXRoZXIuICBTaG91bGQgY2hlY2sgZm9yIGFuIGV4aXN0aW5nIHN3YXAgZmlsZSB3aXRob3V0IGNyZWF0aW5nCi0gICAgb25lLiBVbmZpbmlzaGVkIHBhdGNoIGJ5IElhbiBLZWxsaW5nLCAyMDA4IEp1bHkgNy4KKyAgICBvbmUuIFVuZmluaXNoZWQgcGF0Y2ggYnkgSWFuIEtlbGxpbmcsIDIwMDggSnVseSAxNC4KIDcgICBXaGVuICdzaG93YnJlYWsnIGlzIHNldCwgdGhlIGFtb3VudCBvZiBzcGFjZSBhIFRhYiBvY2N1cGllcyBjaGFuZ2VzLgogICAgIFNob3VsZCB3b3JrIGxpa2UgJ3Nob3dicmVhaycgaXMgaW5zZXJ0ZWQgd2l0aG91dCBjaGFuZ2luZyB0aGUgVGFicy4KIDcgICBXaGVuICdtb3VzZWZvY3VzJyBpcyBzZXQgYW5kIHN3aXRjaGluZyB0byBhbm90aGVyIHdpbmRvdyB3aXRoIGEgdHlwZWQKQEAgLTE0NzcsNiArMTUxNSwxMyBAQAogLSAgIEdUSzogd2hlbiB1c2luZyB0aGUgcG9wdXAgbWVudSB3aXRoIHNwZWxsaW5nIHN1Z2dlc3Rpb25zIGFuZCByZWxlYXNpbmcgdGhlCiAgICAgcmlnaHQgbW91c2UgYnV0dG9uIGJlZm9yZSB0aGUgbWVudSBhcHBlYXJzIHNlbGVjdGluZyBhbiBpdGVtIHdpdGggdGhlCiAgICAgcmlnaHQgbW91c2UgYnV0dG9uIGhhcyBubyBlZmZlY3QuICBHVEsgZG9lcyBub3QgcHJvZHVjZSBhbiBldmVudCBmb3IgdGhpcy4KKy0gICBHVEsgMjogQ2Fubm90IHVzZSB0aGUgZmlsZSBzZWxlY3Rvci4gIFdoZW4gdXNpbmcgaXQgbWFueSB0aGluZ3MgYmVjb21lCisgICAgc2xvdy4gIFRoaXMgaXMgY2F1c2VkIGJ5IHNvbWUgY29kZSBpbiBHVEsgdGhhdCB3cml0ZXMKKyAgICB+Ly5yZWNlbnRseS11c2VkLnhiZWwgZXZlcnkgdGltZSBhbiBldmVudCBpcyBoYW5kbGVkLiAgSXQgYXNzdW1lcyB0aGUgbWFpbgorICAgIGxvb3AgaXMgbmV2ZXIgcXVpdCwgd2hpY2ggaXMgYSB3cm9uZyBhc3N1bXB0aW9uLiAgQWxzbywgaXQgb3ZlcndyaXRlcyB0aGUKKyAgICBmaWxlIHdpdGggZGlmZmVyZW50IGZpbGUgcGVybWlzc2lvbnMsIHdoaWNoIGlzIGEgcHJpdmFjeSBpc3N1ZS4gIFRoaXMKKyAgICBuZWVkcyB0byBiZSBmaXhlZCBpbiBHVEsuICBBIHNvbHV0aW9uIGluIFZpbSB3b3VsZCBiZSByZWFsbHkgY29tcGxpY2F0ZWQuCisgICAgKDIwMDggSnVsIDMxKQogLSAgIHh0ZXJtIHRpdGxlOiBUaGUgZm9sbG93aW5nIHNjZW5hcmlvIG1heSBvY2N1ciAoZXNwLiB3aGVuIHJ1bm5pbmcgdGhlIFZpbQogICAgIHRlc3Qgc2NyaXB0KTogVmltIDEgc2V0cyB0aGUgdGl0bGUgdG8gImZpbGUxIiwgdGhlbiByZXN0b3JlcyB0aGUgdGl0bGUgdG8KICAgICAieHRlcm0iIHdpdGggYW4gRVNDIHNlcXVlbmNlIHdoZW4gZXhpdGluZy4gIFZpbSAyIG9idGFpbnMgdGhlIG9sZCB0aXRsZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdWdhbmRhLnR4dCBiL3J1bnRpbWUvZG9jL3VnYW5kYS50eHQKaW5kZXggNjU1NzI1Zi4uZWQ4Yjk1NCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdWdhbmRhLnR4dAorKysgYi9ydW50aW1lL2RvYy91Z2FuZGEudHh0CkBAIC0xLDQgKzEsNCBAQAotKnVnYW5kYS50eHQqICAgIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDIxCisqdWdhbmRhLnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjEKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3VuZG8udHh0IGIvcnVudGltZS9kb2MvdW5kby50eHQKaW5kZXggNjk0MDEwMi4uZWI4N2RhYyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdW5kby50eHQKKysrIGIvcnVudGltZS9kb2MvdW5kby50eHQKQEAgLTEsNCArMSw0IEBACi0qdW5kby50eHQqICAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMzAKKyp1bmRvLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAzMAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdXNyXzAxLnR4dCBiL3J1bnRpbWUvZG9jL3Vzcl8wMS50eHQKaW5kZXggM2E1NmFiZS4uM2M0NTA3OSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdXNyXzAxLnR4dAorKysgYi9ydW50aW1lL2RvYy91c3JfMDEudHh0CkBAIC0xLDQgKzEsNCBAQAotKnVzcl8wMS50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggTWF5IDA3CisqdXNyXzAxLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBNYXkgMDcKIAogCQkgICAgIFZJTSBVU0VSIE1BTlVBTCAtIGJ5IEJyYW0gTW9vbGVuYWFyCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3Vzcl8wMi50eHQgYi9ydW50aW1lL2RvYy91c3JfMDIudHh0CmluZGV4IGY0N2M2M2UuLjVlNjYxM2UgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3Vzcl8wMi50eHQKKysrIGIvcnVudGltZS9kb2MvdXNyXzAyLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp1c3JfMDIudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA3IEZlYiAyOAorKnVzcl8wMi50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDcgRmViIDI4CiAKIAkJICAgICBWSU0gVVNFUiBNQU5VQUwgLSBieSBCcmFtIE1vb2xlbmFhcgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy91c3JfMDMudHh0IGIvcnVudGltZS9kb2MvdXNyXzAzLnR4dAppbmRleCA0N2QyNGQ0Li43NTE5MWUyIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy91c3JfMDMudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Vzcl8wMy50eHQKQEAgLTEsNCArMSw0IEBACi0qdXNyXzAzLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNiBKdW4gMjEKKyp1c3JfMDMudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA2IEp1biAyMQogCiAJCSAgICAgVklNIFVTRVIgTUFOVUFMIC0gYnkgQnJhbSBNb29sZW5hYXIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdXNyXzA0LnR4dCBiL3J1bnRpbWUvZG9jL3Vzcl8wNC50eHQKaW5kZXggZGQ2YTg0Yy4uMTllYmJhMCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdXNyXzA0LnR4dAorKysgYi9ydW50aW1lL2RvYy91c3JfMDQudHh0CkBAIC0xLDQgKzEsNCBAQAotKnVzcl8wNC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDYgSnVuIDIxCisqdXNyXzA0LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNiBKdW4gMjEKIAogCQkgICAgIFZJTSBVU0VSIE1BTlVBTCAtIGJ5IEJyYW0gTW9vbGVuYWFyCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3Vzcl8wNS50eHQgYi9ydW50aW1lL2RvYy91c3JfMDUudHh0CmluZGV4IDkzYzM0ZGUuLmY4MzJlYmIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3Vzcl8wNS50eHQKKysrIGIvcnVudGltZS9kb2MvdXNyXzA1LnR4dApAQCAtMSw0ICsxLDQgQEAKLSp1c3JfMDUudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA3IE1heSAxMQorKnVzcl8wNS50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDcgTWF5IDExCiAKIAkJICAgICBWSU0gVVNFUiBNQU5VQUwgLSBieSBCcmFtIE1vb2xlbmFhcgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy91c3JfMDYudHh0IGIvcnVudGltZS9kb2MvdXNyXzA2LnR4dAppbmRleCA4ZWUzMmM0Li4wZGFlYzU5IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy91c3JfMDYudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Vzcl8wNi50eHQKQEAgLTEsNCArMSw0IEBACi0qdXNyXzA2LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjQKKyp1c3JfMDYudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyNAogCiAJCSAgICAgVklNIFVTRVIgTUFOVUFMIC0gYnkgQnJhbSBNb29sZW5hYXIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdXNyXzA3LnR4dCBiL3J1bnRpbWUvZG9jL3Vzcl8wNy50eHQKaW5kZXggYWMyMTY0OS4uMjViODJjMyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdXNyXzA3LnR4dAorKysgYi9ydW50aW1lL2RvYy91c3JfMDcudHh0CkBAIC0xLDQgKzEsNCBAQAotKnVzcl8wNy50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDI0CisqdXNyXzA3LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjQKIAogCQkgICAgIFZJTSBVU0VSIE1BTlVBTCAtIGJ5IEJyYW0gTW9vbGVuYWFyCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3Vzcl8wOC50eHQgYi9ydW50aW1lL2RvYy91c3JfMDgudHh0CmluZGV4IDVjM2E5M2UuLjVjMjZmNTggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3Vzcl8wOC50eHQKKysrIGIvcnVudGltZS9kb2MvdXNyXzA4LnR4dApAQCAtMSw0ICsxLDQgQEAKLSp1c3JfMDgudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA2IEp1bCAxOAorKnVzcl8wOC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDYgSnVsIDE4CiAKIAkJICAgICBWSU0gVVNFUiBNQU5VQUwgLSBieSBCcmFtIE1vb2xlbmFhcgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy91c3JfMDkudHh0IGIvcnVudGltZS9kb2MvdXNyXzA5LnR4dAppbmRleCBkMmM2NTJlLi43M2I2MWM2IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy91c3JfMDkudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Vzcl8wOS50eHQKQEAgLTEsNCArMSw0IEBACi0qdXNyXzA5LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjQKKyp1c3JfMDkudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyNAogCiAJCSAgICAgVklNIFVTRVIgTUFOVUFMIC0gYnkgQnJhbSBNb29sZW5hYXIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdXNyXzEwLnR4dCBiL3J1bnRpbWUvZG9jL3Vzcl8xMC50eHQKaW5kZXggYjQxOTc2Zi4uNWZmMjAxMiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdXNyXzEwLnR4dAorKysgYi9ydW50aW1lL2RvYy91c3JfMTAudHh0CkBAIC0xLDQgKzEsNCBAQAotKnVzcl8xMC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDYgTm92IDA1CisqdXNyXzEwLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNiBOb3YgMDUKIAogCQkgICAgIFZJTSBVU0VSIE1BTlVBTCAtIGJ5IEJyYW0gTW9vbGVuYWFyCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3Vzcl8xMS50eHQgYi9ydW50aW1lL2RvYy91c3JfMTEudHh0CmluZGV4IGQyMzc0M2EuLjZhMWEwZGUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3Vzcl8xMS50eHQKKysrIGIvcnVudGltZS9kb2MvdXNyXzExLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp1c3JfMTEudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyNAorKnVzcl8xMS50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDI0CiAKIAkJICAgICBWSU0gVVNFUiBNQU5VQUwgLSBieSBCcmFtIE1vb2xlbmFhcgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy91c3JfMTIudHh0IGIvcnVudGltZS9kb2MvdXNyXzEyLnR4dAppbmRleCAzOTg4ZGU4Li40MzhiMzMwIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy91c3JfMTIudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Vzcl8xMi50eHQKQEAgLTEsNCArMSw0IEBACi0qdXNyXzEyLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNyBNYXkgMTEKKyp1c3JfMTIudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA3IE1heSAxMQogCiAJCSAgICAgVklNIFVTRVIgTUFOVUFMIC0gYnkgQnJhbSBNb29sZW5hYXIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdXNyXzIwLnR4dCBiL3J1bnRpbWUvZG9jL3Vzcl8yMC50eHQKaW5kZXggODY0NTU5Yy4uZmFiNzcxNCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdXNyXzIwLnR4dAorKysgYi9ydW50aW1lL2RvYy91c3JfMjAudHh0CkBAIC0xLDQgKzEsNCBAQAotKnVzcl8yMC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDI0CisqdXNyXzIwLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjQKIAogCQkgICAgIFZJTSBVU0VSIE1BTlVBTCAtIGJ5IEJyYW0gTW9vbGVuYWFyCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3Vzcl8yMS50eHQgYi9ydW50aW1lL2RvYy91c3JfMjEudHh0CmluZGV4IGIxNWU3ZjAuLmMwZjVjYzkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3Vzcl8yMS50eHQKKysrIGIvcnVudGltZS9kb2MvdXNyXzIxLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp1c3JfMjEudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA3IE1heSAwMQorKnVzcl8yMS50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDcgTWF5IDAxCiAKIAkJICAgICBWSU0gVVNFUiBNQU5VQUwgLSBieSBCcmFtIE1vb2xlbmFhcgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy91c3JfMjIudHh0IGIvcnVudGltZS9kb2MvdXNyXzIyLnR4dAppbmRleCBhNjQyYzU5Li42YjE5YjA0IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy91c3JfMjIudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Vzcl8yMi50eHQKQEAgLTEsNCArMSw0IEBACi0qdXNyXzIyLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNyBBdWcgMTQKKyp1c3JfMjIudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA3IEF1ZyAxNAogCiAJCSAgICAgVklNIFVTRVIgTUFOVUFMIC0gYnkgQnJhbSBNb29sZW5hYXIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdXNyXzIzLnR4dCBiL3J1bnRpbWUvZG9jL3Vzcl8yMy50eHQKaW5kZXggZWFkODcxMS4uMDE0MzQ4OCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdXNyXzIzLnR4dAorKysgYi9ydW50aW1lL2RvYy91c3JfMjMudHh0CkBAIC0xLDQgKzEsNCBAQAotKnVzcl8yMy50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDI0CisqdXNyXzIzLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjQKIAogCQkgICAgIFZJTSBVU0VSIE1BTlVBTCAtIGJ5IEJyYW0gTW9vbGVuYWFyCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3Vzcl8yNC50eHQgYi9ydW50aW1lL2RvYy91c3JfMjQudHh0CmluZGV4IGVhYjhhMzYuLjU5NzZjYjcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3Vzcl8yNC50eHQKKysrIGIvcnVudGltZS9kb2MvdXNyXzI0LnR4dApAQCAtMSw0ICsxLDQgQEAKLSp1c3JfMjQudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA2IEp1bCAyMworKnVzcl8yNC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDYgSnVsIDIzCiAKIAkJICAgICBWSU0gVVNFUiBNQU5VQUwgLSBieSBCcmFtIE1vb2xlbmFhcgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy91c3JfMjUudHh0IGIvcnVudGltZS9kb2MvdXNyXzI1LnR4dAppbmRleCAyMmRkZGRmLi41ZDE2N2E2IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy91c3JfMjUudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Vzcl8yNS50eHQKQEAgLTEsNCArMSw0IEBACi0qdXNyXzI1LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNyBNYXkgMTEKKyp1c3JfMjUudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA3IE1heSAxMQogCiAJCSAgICAgVklNIFVTRVIgTUFOVUFMIC0gYnkgQnJhbSBNb29sZW5hYXIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdXNyXzI2LnR4dCBiL3J1bnRpbWUvZG9jL3Vzcl8yNi50eHQKaW5kZXggYjgyNTJkZC4uOTZlMDRjMyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdXNyXzI2LnR4dAorKysgYi9ydW50aW1lL2RvYy91c3JfMjYudHh0CkBAIC0xLDQgKzEsNCBAQAotKnVzcl8yNi50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDI0CisqdXNyXzI2LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjQKIAogCQkgICAgIFZJTSBVU0VSIE1BTlVBTCAtIGJ5IEJyYW0gTW9vbGVuYWFyCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3Vzcl8yNy50eHQgYi9ydW50aW1lL2RvYy91c3JfMjcudHh0CmluZGV4IGQyZDBjYzQuLmY0YWE5MTQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3Vzcl8yNy50eHQKKysrIGIvcnVudGltZS9kb2MvdXNyXzI3LnR4dApAQCAtMSw0ICsxLDQgQEAKLSp1c3JfMjcudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA3IE5vdiAxMAorKnVzcl8yNy50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDcgTm92IDEwCiAKIAkJICAgICBWSU0gVVNFUiBNQU5VQUwgLSBieSBCcmFtIE1vb2xlbmFhcgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy91c3JfMjgudHh0IGIvcnVudGltZS9kb2MvdXNyXzI4LnR4dAppbmRleCAwNDVhZWY4Li5kYzczODhkIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy91c3JfMjgudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Vzcl8yOC50eHQKQEAgLTEsNCArMSw0IEBACi0qdXNyXzI4LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMTQKKyp1c3JfMjgudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAxNAogCiAJCSAgICAgVklNIFVTRVIgTUFOVUFMIC0gYnkgQnJhbSBNb29sZW5hYXIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdXNyXzI5LnR4dCBiL3J1bnRpbWUvZG9jL3Vzcl8yOS50eHQKaW5kZXggMjBmNzJlYS4uMDdjNGE0MyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdXNyXzI5LnR4dAorKysgYi9ydW50aW1lL2RvYy91c3JfMjkudHh0CkBAIC0xLDQgKzEsNCBAQAotKnVzcl8yOS50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVuIDI4CisqdXNyXzI5LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjgKIAogCQkgICAgIFZJTSBVU0VSIE1BTlVBTCAtIGJ5IEJyYW0gTW9vbGVuYWFyCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3Vzcl8zMC50eHQgYi9ydW50aW1lL2RvYy91c3JfMzAudHh0CmluZGV4IDUxZmZjZGYuLjE4YzYxMDggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3Vzcl8zMC50eHQKKysrIGIvcnVudGltZS9kb2MvdXNyXzMwLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp1c3JfMzAudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA3IE5vdiAxMAorKnVzcl8zMC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDcgTm92IDEwCiAKIAkJICAgICBWSU0gVVNFUiBNQU5VQUwgLSBieSBCcmFtIE1vb2xlbmFhcgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy91c3JfMzEudHh0IGIvcnVudGltZS9kb2MvdXNyXzMxLnR4dAppbmRleCA0MDMwODZmLi5mMDBhNzZjIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy91c3JfMzEudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Vzcl8zMS50eHQKQEAgLTEsNCArMSw0IEBACi0qdXNyXzMxLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNyBNYXkgMDgKKyp1c3JfMzEudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA3IE1heSAwOAogCiAJCSAgICAgVklNIFVTRVIgTUFOVUFMIC0gYnkgQnJhbSBNb29sZW5hYXIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdXNyXzMyLnR4dCBiL3J1bnRpbWUvZG9jL3Vzcl8zMi50eHQKaW5kZXggYjA0OTU0MC4uODUyYzdjOCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdXNyXzMyLnR4dAorKysgYi9ydW50aW1lL2RvYy91c3JfMzIudHh0CkBAIC0xLDQgKzEsNCBAQAotKnVzcl8zMi50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDMwCisqdXNyXzMyLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMzAKIAogCQkgICAgIFZJTSBVU0VSIE1BTlVBTCAtIGJ5IEJyYW0gTW9vbGVuYWFyCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3Vzcl80MC50eHQgYi9ydW50aW1lL2RvYy91c3JfNDAudHh0CmluZGV4IGNjOGFjYzEuLmUyMWQyZjkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3Vzcl80MC50eHQKKysrIGIvcnVudGltZS9kb2MvdXNyXzQwLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp1c3JfNDAudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA2IEp1biAyMQorKnVzcl80MC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDYgSnVuIDIxCiAKIAkJICAgICBWSU0gVVNFUiBNQU5VQUwgLSBieSBCcmFtIE1vb2xlbmFhcgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy91c3JfNDEudHh0IGIvcnVudGltZS9kb2MvdXNyXzQxLnR4dAppbmRleCAyNWU5MTFhLi4zNjczZGU0IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy91c3JfNDEudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Vzcl80MS50eHQKQEAgLTEsNCArMSw0IEBACi0qdXNyXzQxLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjEKKyp1c3JfNDEudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAyMQogCiAJCSAgICAgVklNIFVTRVIgTUFOVUFMIC0gYnkgQnJhbSBNb29sZW5hYXIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdXNyXzQyLnR4dCBiL3J1bnRpbWUvZG9jL3Vzcl80Mi50eHQKaW5kZXggYjhjNGVlYS4uNTA4MmJhOSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdXNyXzQyLnR4dAorKysgYi9ydW50aW1lL2RvYy91c3JfNDIudHh0CkBAIC0xLDQgKzEsNCBAQAotKnVzcl80Mi50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggTWF5IDA1CisqdXNyXzQyLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBNYXkgMDUKIAogCQkgICAgIFZJTSBVU0VSIE1BTlVBTCAtIGJ5IEJyYW0gTW9vbGVuYWFyCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3Vzcl80My50eHQgYi9ydW50aW1lL2RvYy91c3JfNDMudHh0CmluZGV4IGRiZjNiODYuLjFkZGJiMjYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3Vzcl80My50eHQKKysrIGIvcnVudGltZS9kb2MvdXNyXzQzLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp1c3JfNDMudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyNAorKnVzcl80My50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDI0CiAKIAkJICAgICBWSU0gVVNFUiBNQU5VQUwgLSBieSBCcmFtIE1vb2xlbmFhcgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy91c3JfNDQudHh0IGIvcnVudGltZS9kb2MvdXNyXzQ0LnR4dAppbmRleCAxOTE2NWQ0Li5kNDA5YmY1IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy91c3JfNDQudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Vzcl80NC50eHQKQEAgLTEsNCArMSw0IEBACi0qdXNyXzQ0LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjQKKyp1c3JfNDQudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyNAogCiAJCSAgICAgVklNIFVTRVIgTUFOVUFMIC0gYnkgQnJhbSBNb29sZW5hYXIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdXNyXzQ1LnR4dCBiL3J1bnRpbWUvZG9jL3Vzcl80NS50eHQKaW5kZXggNWY2YTE0Zi4uNWJlYTVkOCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdXNyXzQ1LnR4dAorKysgYi9ydW50aW1lL2RvYy91c3JfNDUudHh0CkBAIC0xLDQgKzEsNCBAQAotKnVzcl80NS50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggQXByIDMwCisqdXNyXzQ1LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBBcHIgMzAKIAogCQkgICAgIFZJTSBVU0VSIE1BTlVBTCAtIGJ5IEJyYW0gTW9vbGVuYWFyCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3Vzcl85MC50eHQgYi9ydW50aW1lL2RvYy91c3JfOTAudHh0CmluZGV4IDI0ZWZkYTIuLmYzMWFmNzMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3Vzcl85MC50eHQKKysrIGIvcnVudGltZS9kb2MvdXNyXzkwLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp1c3JfOTAudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyNAorKnVzcl85MC50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDI0CiAKIAkJICAgICBWSU0gVVNFUiBNQU5VQUwgLSBieSBCcmFtIE1vb2xlbmFhcgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy91c3JfdG9jLnR4dCBiL3J1bnRpbWUvZG9jL3Vzcl90b2MudHh0CmluZGV4IDc1ZjI5Y2UuLmQ0NzNkNDUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3Vzcl90b2MudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Vzcl90b2MudHh0CkBAIC0xLDQgKzEsNCBAQAotKnVzcl90b2MudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyNAorKnVzcl90b2MudHh0KglGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyNAogCiAJCSAgICAgVklNIFVTRVIgTUFOVUFMIC0gYnkgQnJhbSBNb29sZW5hYXIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdmFyaW91cy50eHQgYi9ydW50aW1lL2RvYy92YXJpb3VzLnR4dAppbmRleCBlOGY0ZGUxLi41MTYzYWRjIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy92YXJpb3VzLnR4dAorKysgYi9ydW50aW1lL2RvYy92YXJpb3VzLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp2YXJpb3VzLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAwOAorKnZhcmlvdXMudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggQXVnIDA2CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC02NDQsNyArNjQ0LDEyIEBACiAJCQkiOnRuZXh0IiBjb21tYW5kIGNhbiB0aGVuIGJlIHVzZWQgdG8ganVtcCB0byBvdGhlcgogCQkJbWF0Y2hlcywgInRzZWxlY3QiIHRvIGxpc3QgbWF0Y2hlcyBhbmQgY2hvb3NlIG9uZS4gPgogCQkJCTpoZWxwIGluZGV4fCA6dHNlIHouCi08CQkJVGhpcyBjb21tYW5kIGNhbiBiZSBmb2xsb3dlZCBieSAnfCcgYW5kIGFub3RoZXIKKzwJCQlXaGVuIHRoZXJlIGlzIG5vIGFyZ3VtZW50IHlvdSB3aWxsIHNlZSBtYXRjaGVzIGZvcgorCQkJImhlbHAiLCB0byBhdm9pZCBsaXN0aW5nIGFsbCBwb3NzaWJsZSBtYXRjaGVzICh0aGF0CisJCQl3b3VsZCBiZSB2ZXJ5IHNsb3cpLgorCQkJVGhlIG51bWJlciBvZiBtYXRjaGVzIGRpc3BsYXllZCBpcyBsaW1pdGVkIHRvIDMwMC4KKworCQkJVGhpcyBjb21tYW5kIGNhbiBiZSBmb2xsb3dlZCBieSAnfCcgYW5kIGFub3RoZXIKIAkJCWNvbW1hbmQsIGJ1dCB5b3UgZG9uJ3QgbmVlZCB0byBlc2NhcGUgdGhlICd8JyBpbnNpZGUgYQogCQkJaGVscCBjb21tYW5kLiAgU28gdGhlc2UgYm90aCB3b3JrOiA+CiAJCQkJOmhlbHAgfApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdmVyc2lvbjQudHh0IGIvcnVudGltZS9kb2MvdmVyc2lvbjQudHh0CmluZGV4IDVlYjYyNDEuLjliZGNhZmMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3ZlcnNpb240LnR4dAorKysgYi9ydW50aW1lL2RvYy92ZXJzaW9uNC50eHQKQEAgLTEsNCArMSw0IEBACi0qdmVyc2lvbjQudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjQKKyp2ZXJzaW9uNC50eHQqICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyNAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdmVyc2lvbjUudHh0IGIvcnVudGltZS9kb2MvdmVyc2lvbjUudHh0CmluZGV4IDgxMjA1NzcuLjc3OGRkMWEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3ZlcnNpb241LnR4dAorKysgYi9ydW50aW1lL2RvYy92ZXJzaW9uNS50eHQKQEAgLTEsNCArMSw0IEBACi0qdmVyc2lvbjUudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjgKKyp2ZXJzaW9uNS50eHQqICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAyOAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdmVyc2lvbjYudHh0IGIvcnVudGltZS9kb2MvdmVyc2lvbjYudHh0CmluZGV4IDBhYjRkMWQuLjVmN2M4YzggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3ZlcnNpb242LnR4dAorKysgYi9ydW50aW1lL2RvYy92ZXJzaW9uNi50eHQKQEAgLTEsNCArMSw0IEBACi0qdmVyc2lvbjYudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNyBNYXkgMTEKKyp2ZXJzaW9uNi50eHQqICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IEF1ZyAwNgogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtNTg5NCw3ICs1ODk0LDcgQEAKIAogUGF0Y2ggNi4xYi4wMjMKIFByb2JsZW06ICAgIE9uIE1TLVdpbmRvd3Mgc3lzdGVtKCkgbWF5IGNhdXNlIGNoZWNraW5nIHRpbWVzdGFtcHMsIGJlY2F1c2UgVmltCi0JICAgIGxvb3NlcyBhbmQgZ2FpbnMgaW5wdXQgZm9jdXMsIHdoaWxlIHRoaXMgZG9lc24ndCBoYXBwZW4gb24gVW5peC4KKwkgICAgbG9zZXMgYW5kIGdhaW5zIGlucHV0IGZvY3VzLCB3aGlsZSB0aGlzIGRvZXNuJ3QgaGFwcGVuIG9uIFVuaXguCiBTb2x1dGlvbjogICBEb24ndCBjaGVjayB0aW1lc3RhbXBzIHdoaWxlIHN5c3RlbSgpIGlzIGJ1c3kuCiBGaWxlczoJICAgIHNyYy9leF9jbWRzMi5jLCBzcmMvZmlsZWlvLmMsIHNyYy9nbG9iYWxzLmgsIHNyYy9taXNjMS5jCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3ZlcnNpb243LnR4dCBiL3J1bnRpbWUvZG9jL3ZlcnNpb243LnR4dAppbmRleCA3ZjQ1MGY0Li5iZWE0NmEzIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy92ZXJzaW9uNy50eHQKKysrIGIvcnVudGltZS9kb2MvdmVyc2lvbjcudHh0CkBAIC0xLDQgKzEsNCBAQAotKnZlcnNpb243LnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjJiLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVsIDEzCisqdmVyc2lvbjcudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMmMuICBMYXN0IGNoYW5nZTogMjAwOCBBdWcgMDYKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTQ3MjcsNiArNDcyNyw3IEBACiBPdGhlciBuZXcgcnVudGltZSBmaWxlczoKIAlFc3BlcmFudG8gbWVudXMgYW5kIG1lc3NhZ2UgdHJhbnNsYXRpb25zLiAoRG9taW5pcXVlIFBlbGxlKQogCUZpbm5pc2ggdHJhbnNsYXRpb24gb2YgbWVudXMgYW5kIG1lc3NhZ2VzLiAoRmxhbW1pZSBQaXJpbmVuKQorCUJyYXppbGlhbiBQb3J0dWdlc2UgbWVzc2FnZSB0cmFuc2xhdGlvbnMuIChFZHVhcmRvIERvYmF5KQogCiBBZGRlZCBmbG9hdGluZyBwb2ludCBzdXBwb3J0LiB8RmxvYXR8CiAKQEAgLTY4NDcsNyArNjg0OCw3IEBACiBTb2x1dGlvbjogICBEb24ndCB1c2UgVVRGX0NPTVBPU0lOR0xJS0UoKSBvbiBhbiBpbGxlZ2FsIGJ5dGUuICBJbgogCSAgICBtc2dfb3V0dHJhbnNfbGVuX2F0dHIoKSB1c2UgY2hhcjJjZWxscygpIGluc3RlYWQgb2YgcHRyMmNlbGxzKCkuCiAJICAgIEluIHV0Zl9wdHIyY2hhcigpIGRvbid0IGNoZWNrIHNlY29uZCBieXRlIHdoZW4gZmlyc3QgYnl0ZSBpcwotCSAgICBpbGxlZ2EuICAoRG9taW5pcXVlIFBlbGxlKQorCSAgICBpbGxlZ2FsLiAgKERvbWluaXF1ZSBQZWxsZSkKIEZpbGVzOgkgICAgc3JjL21ieXRlLmMsIHNyYy9tZXNzYWdlLmMKIAogUGF0Y2ggNy4yYS4wMTEKQEAgLTY5MTYsNyArNjkxNyw3IEBACiBTVFJNT1ZFKCkgaW5zdGVhZC4gKFJhbGYgV2lsZGVuaHVlcykKIAogTWFjOiBPbiBMZW9wYXJkIGd2aW0sIHdoZW4gdXNpbmcgdGhlIG1vdXNlIHdoZWVsIG5vdGhpbmcgd291bGQgaGFwcGVuIHVudGlsCi1hbm90aGVyIGV2ZW50IG9jY3VyZXMsIHN1Y2ggYXMgbW92aW5nIHRoZSBtb3VzZS4gIFRoZW4gdGhlIHJlY29yZGVkIHNjcm9sbGluZworYW5vdGhlciBldmVudCBvY2N1cnMsIHN1Y2ggYXMgbW92aW5nIHRoZSBtb3VzZS4gIFRoZW4gdGhlIHJlY29yZGVkIHNjcm9sbGluZwogd291bGQgdGFrZSBwbGFjZSBhbGwgYXQgb25jZS4gKEVja2VoYXJkIEJlcm5zKQogCiBTb2x1dGlvbiBmb3IgY3Vyc29yIGNvbG9yIG5vdCByZWZsZWN0aW5nIElNIHN0YXR1cyBmb3IgR1RLIDIuICBBZGQKQEAgLTY5MzYsNSArNjkzNywxNzkgQEAKIFRoZSAjaWZkZWYgZm9yIGluY2x1ZGluZyAidmltaW8uaCIgd2FzIGluY29uc2lzdGVudC4gIEluIGEgZmV3IGZpbGVzIGl0CiBkZXBlbmRlZCBvbiBNU1dJTiwgd2hpY2ggaXNuJ3QgZGVmaW5lZCB1bnRpbCBsYXRlci4KIAorUGF0Y2ggNy4yYi4wMDEKK1Byb2JsZW06ICAgIENvbXBpbGF0aW9uIHByb2JsZW06IG1iX2ZpeF9jb2woKSBtaXNzaW5nIHdpdGggbXVsdGktYnl0ZSBmZWF0dXJlCisJICAgIGJ1dCB3aXRob3V0IEdVSSBvciBjbGlwYm9hcmQuCitTb2x1dGlvbjogICBSZW1vdmUgI2lmZGVmLgorRmlsZXM6CSAgICBzcmMvbWJ5dGUuYworCitQYXRjaCA3LjJiLjAwMgorUHJvYmxlbTogICAgQ29tcGlsZXIgd2FybmluZ3MgZm9yIHNpZ25lZC91bnNpZ25lZCBtaXNtYXRjaC4KK1NvbHV0aW9uOiAgIEFkZCB0eXBlIGNhc3RzLgorRmlsZXM6CSAgICBzcmMvc2NyZWVuLmMKKworUGF0Y2ggNy4yYi4wMDMKK1Byb2JsZW06ICAgIFN0aWxsIGEgY29tcGlsYXRpb24gcHJvYmxlbSwgY2hlY2tfY29sKCkgYW5kIGNoZWNrX3JvdygpIG1pc3NpbmcuCitTb2x1dGlvbjogICBBZGQgRkVBVF9NQllURSB0byB0aGUgI2lmLgorRmlsZXM6CSAgICBzcmMvdWkuYworCitQYXRjaCA3LjJiLjAwNAorUHJvYmxlbTogICAgVHJ5aW5nIHRvIGZyZWUgbWVtb3J5IGZvciBhIHN0YXRpYyBzdHJpbmcgd2hlbiB1c2luZyAiOmhlbHBncmVwIi4KKwkgICAgKEdlb3JnZSBSZWlsbHkpCitTb2x1dGlvbjogICBTZXQgJ2NwbycgdG8gZW1wdHlfb3B0aW9uIGluc3RlYWQgb2YgYW4gZW1wdHkgc3RyaW5nLiAgQWxzbyBmb3IKKwkgICAgc2VhcmNocGFpcigpIGFuZCBzdWJzdGl0dXRlKCkuCitGaWxlczoJICAgIHNyYy9xdWlja2ZpeC5jLCBzcmMvZXZhbC5jCisKK1BhdGNoIDcuMmIuMDA1CitQcm9ibGVtOiAgICBUaGUgc3BlY2lhbCBjaGFyYWN0ZXIgIiEiIGlzbid0IGhhbmRsZWQgcHJvcGVybHkgaW4gc2hlbGxlc2NhcGUoKS4KKwkgICAgKEphbiBNaW5hcikKK1NvbHV0aW9uOiAgIEVzY2FwZSAiISIgd2hlbiB1c2luZyBhICJjc2giIGxpa2Ugc2hlbGwgYW5kIHdpdGgKKwkgICAgc2hlbGxlc2NhcGUocywgMSkuICBUd2ljZSBmb3IgYm90aC4gIEFsc28gZXNjYXBlIDxOTD4uCitGaWxlczoJICAgIHNyYy9taXNjMi5jCisKK1BhdGNoIDcuMmIuMDA2CitQcm9ibGVtOiAgICBSZWFkaW5nIHBhc3QgZW5kIG9mIHN0cmluZyB3aGVuIHJlYWRpbmcgaW5mbyBmcm9tIHRhZ3MgbGluZS4KK1NvbHV0aW9uOiAgIEJyZWFrIHRoZSBsb29wIHdoZW4gZW5jb3VudGVyaW5nIGEgTlVMLiAoRG9taW5pcXVlIFBlbGxlKQorRmlsZXM6CSAgICBzcmMvdGFnLmMKKworUGF0Y2ggNy4yYi4wMDcKK1Byb2JsZW06ICAgIFBhcnQgb2YgYSBtZXNzYWdlIGNhbm5vdCBiZSB0cmFuc2xhdGVkLgorU29sdXRpb246ICAgUHV0IF8oKSBhcm91bmQgdGhlIG1lc3NhZ2UuCitGaWxlczoJICAgIHNyYy9zZWFyY2guYworCitQYXRjaCA3LjJiLjAwOAorUHJvYmxlbTogICAgQSBmZXcgZmlsZXR5cGVzIGFyZSBub3QgZGV0ZWN0ZWQgb3Igbm90IGRldGVjdGVkIHByb3Blcmx5LgorU29sdXRpb246ICAgQWRkIGZpbGV0eXBlIGRldGVjdGlvbiBwYXR0ZXJucy4gKE5pa29sYWkgV2VpYnVsbCkKK0ZpbGVzOgkgICAgcnVudGltZS9maWxldHlwZS52aW0KKworUGF0Y2ggNy4yYi4wMDkKK1Byb2JsZW06ICAgIFJlYWRpbmcgcGFzdCBlbmQgb2Ygc2NyZWVuIGxpbmUuIChFcGljdXJ1cykKK1NvbHV0aW9uOiAgIEF2b2lkIGdvaW5nIHBhc3QgdGhlIHZhbHVlIG9mIENvbHVtbnMuCitGaWxlczoJICAgIHNyYy9zY3JlZW4uYworCitQYXRjaCA3LjJiLjAxMAorUHJvYmxlbTogICAgIjpta3Nlc3Npb24iIGRvZXNuJ3Qgd29yayBmb3IgIjptYXAgLCBmb28iLCAiOnN1bm1hcCAsIi4gKEV0aGFuCisJICAgIE1hbGxvdmUpCitTb2x1dGlvbjogICBDaGVjayBmb3IgIm54byIsICJuc28iIGFuZCBvdGhlciBzdHJhbmdlIG1hcHBpbmcgY29tYmluYXRpb25zLgorRmlsZXM6CSAgICBzcmMvZ2V0Y2hhci5jCisKK1BhdGNoIDcuMmIuMDExCitQcm9ibGVtOiAgICBDb25maWd1cmUgZm9yIFRDTCBlbmRzIHVwIHdpdGggaW5jbHVkZSBmaWxlIGluIGNvbXBpbGVyIGNvbW1hbmQuCisJICAgIChSaWNoYXJkIEhvZ2cpCitTb2x1dGlvbjogICBEZWxldGUgaXRlbXMgZnJvbSAkVENMX0RFRlMgdGhhdCBkbyBub3Qgc3RhcnQgd2l0aCBhIGRhc2guCitGaWxlczoJICAgIHNyYy9hdXRvL2NvbmZpZ3VyZSwgc3JjL2NvbmZpZ3VyZS5pbgorCitQYXRjaCA3LjJiLjAxMgorUHJvYmxlbTogICAgQnVpbGQgZmFpbHVyZSB3aXRoICttdWx0aV9ieXRlIGJ1dCB3aXRob3V0ICtkaWZmLgorU29sdXRpb246ICAgQWRkICNpZmRlZi4gKFBhdHJpY2sgVGV4aWVyKQorRmlsZXM6CSAgICBzcmMvbWFpbi5jCisKK1BhdGNoIDcuMmIuMDEzCitQcm9ibGVtOiAgICBCdWlsZCBmYWlscyB3aXRoIHRpbnkgZmVhdHVyZXMgYW5kIFBlcmwuIChEb21pbmlxdWUgUGVsbGUpCitTb2x1dGlvbjogICBEZWZpbmUgbWlzc2luZyBmdW5jdGlvbnMuICBBbHNvIHdoZW4gY29tcGlsaW5nIFB5dGhvbi4KK0ZpbGVzOgkgICAgc3JjL2lmX3BlcmwueHMsIHNyYy9pZl9weXRob24uYworCitQYXRjaCA3LjJiLjAxNAorUHJvYmxlbTogICAgQ29uZmlndXJlIHVzZXMgYW4gdW5zYWZlIHRlbXAgZmlsZSB0byBzdG9yZSBjb21tYW5kcy4KK1NvbHV0aW9uOiAgIENyZWF0ZSB0aGUgdGVtcCBmaWxlIGluIGxvY2FsIGRpcmVjdG9yeS4KK0ZpbGVzOgkgICAgc3JjL2F1dG8vY29uZmlndXJlLCBzcmMvY29uZmlndXJlLmluCisKK1BhdGNoIDcuMmIuMDE1CitQcm9ibGVtOiAgICBCdWlsZCBmYWlscyBvbiBNYWMgd2hlbiB1c2luZyBBYXAuCitTb2x1dGlvbjogICBGaXggdHlwbyBpbiBjb25maWd1cmUgc2NyaXB0LgorRmlsZXM6CSAgICBzcmMvYXV0by9jb25maWd1cmUsIHNyYy9jb25maWd1cmUuaW4KKworUGF0Y2ggNy4yYi4wMTYKK1Byb2JsZW06ICAgIEJ1aWxkIGZhaWxzIHdpdGggbm9ybWFsIGZlYXR1cmVzIGJ1dCB3aXRob3V0ICthdXRvY21kLgorU29sdXRpb246ICAgRml4ICNpZmRlZnMuIChJYW4gS2VsbGluZykKK0ZpbGVzOgkgICAgc3JjL2V2YWwuYywgc3JjL2V4X2NtZHMuYywgc3JjL3F1aWNrZml4LmMsIHNyYy9vcHRpb24uYywKKwkgICAgc3JjL2V4X2RvY21kLmMKKworUGF0Y2ggNy4yYi4wMTcKK1Byb2JsZW06ICAgICJ2aW0gLU8gZm9vIGZvbyIgcmVzdWx0cyBpbiBvbmx5IG9uZSB3aW5kb3cuICAoWmRlbmVrIFNla2VyYSkKK1NvbHV0aW9uOiAgIEhhbmRsZSByZXN1bHQgb2YgQVRURU5USU9OIHByb21wdCBwcm9wZXJseS4gKElhbiBLZWxsaW5nKQorRmlsZXM6CSAgICBzcmMvbWFpbi5jCisKK1BhdGNoIDcuMmIuMDE4CitQcm9ibGVtOiAgICBXaGVuIGRvaW5nIGNvbW1hbmQgbGluZSBjb21wbGV0aW9uIG9uIGEgZmlsZSBuYW1lIGZvciBhIGNzaC1saWtlCisJICAgIHNoZWxsIGFyZ3VtZW50IGEgJyEnIGNoYXJhY3RlciBpc24ndCBlc2NhcGVkIHByb3Blcmx5LgorU29sdXRpb246ICAgQWRkIGFub3RoZXIgYmFja3NsYXNoLgorRmlsZXM6CSAgICBzcmMvZXhfZ2V0bG4uYywgc3JjL21pc2MyLmMsIHNyYy9wcm90by9taXNjMi5wcm8sIHNyYy9zY3JlZW4uYworCitQYXRjaCA3LjJiLjAxOSAoZXh0cmEpCitQcm9ibGVtOiAgICBXaW4zMjogVmFyaW91cyBjb21waWxlciB3YXJuaW5ncy4KK1NvbHV0aW9uOiAgIFVzZSBfX3c2NCBhdHRyaWJ1dGUuICBDb21tZW50LW91dCB1bnVzZWQgcGFyYW1ldGVycy4gIEFkanVzdCBhIGZldworCSAgICAjaWZkZWZzLiAoR2VvcmdlIFJlaWxseSkKK0ZpbGVzOgkgICAgc3JjL2d1aV93NDguYywgc3JjL0d2aW1FeHQvZ3ZpbWV4dC5jcHAsIHNyYy9NYWtlX212Yy5tYWssCisJICAgIHNyYy9vc19tc3dpbi5jLCBzcmMvb3Nfd2luMzIuYywgc3JjL3ZpbS5oCisKK1BhdGNoIDcuMmIuMDIwCitQcm9ibGVtOiAgICAiOnNvcnQgbiIgZG9lc24ndCBoYW5kbGUgbmVnYXRpdmUgbnVtYmVycy4gKEphbWVzIFZlZ2EpCitTb2x1dGlvbjogICBJbmNsdWRlICctJyBpbiB0aGUgbnVtYmVyLgorRmlsZXM6CSAgICBzcmMvY2hhcnNldC5jLCBzcmMvZXhfY21kcy5jCisKK1BhdGNoIDcuMmIuMDIxCitQcm9ibGVtOiAgICBSZWxvYWRpbmcgZG9lc24ndCByZWFkIHRoZSBCT00gY29ycmVjdGx5LiAoU3RldmUgR2FyZG5lcikKK1NvbHV0aW9uOiAgIEFjY2VwdCB1dGYtOCBCT00gd2hlbiBzcGVjaWZpZWQgZmlsZSBlbmNvZGluZyBpcyB1dGYtOC4KK0ZpbGVzOgkgICAgc3JjL2ZpbGVpby5jCisKK1BhdGNoIDcuMmIuMDIyCitQcm9ibGVtOiAgICBXaGVuIHVzaW5nICI6bm9ybWFsIiB3aGlsZSB1cGRhdGluZyB0aGUgc3RhdHVzIGxpbmUgdGhlIGNvdW50IG9mCisJICAgIGFuIG9wZXJhdG9yIGlzIGxvc3QuIChEb21pbmlxdWUgUGVsbGUpCitTb2x1dGlvbjogICBTYXZlIGFuZCByZXN0b3JlICJvcGNvdW50Ii4KK0ZpbGVzOgkgICAgc3JjL2V4X2RvY21kLmMsIHNyYy9nbG9iYWxzLmgsIHNyYy9ub3JtYWwuYworCitQYXRjaCA3LjJiLjAyMworUHJvYmxlbTogICAgQ3Jhc2ggd2hlbiB1c2luZyB0aGUgcmVzdWx0IG9mIHN5bnN0YWNrKDAsMCkuIChNYXR0IFdvem5pc2tpKQorU29sdXRpb246ICAgQ2hlY2sgZm9yIHZfbGlzdCB0byBiZSBOVUxMIGluIGEgZmV3IG1vcmUgcGxhY2VzLgorRmlsZXM6CSAgICBzcmMvZXZhbC5jCisKK1BhdGNoIDcuMmIuMDI0CitQcm9ibGVtOiAgICBVc2luZyAiOmd1aSIgd2hpbGUgdGhlIG5ldHJ3IHBsdWdpbiBpcyBhY3RpdmUgY2F1c2VzIGEgZGVsYXkgaW4KKwkgICAgdXBkYXRpbmcgdGhlIGRpc3BsYXkuCitTb2x1dGlvbjogICBEb24ndCBjaGVjayBmb3IgdGVybWluYWwgY29kZXMgd2hlbiBzdGFydGluZyB0aGUgR1VJLgorRmlsZXM6CSAgICBzcmMvdGVybS5jCisKK1BhdGNoIDcuMmIuMDI1CitQcm9ibGVtOiAgICBXaGVuIHRoZSBDdXJzb3JIb2xkIGV2ZW50IHRyaWdnZXJzIGEgcGVuZGluZyBjb3VudCBpcyBsb3N0LgorCSAgICAoSnVlcmdlbiBLcmFlbWVyKQorU29sdXRpb246ICAgU2F2ZSB0aGUgY291bnRzIGFuZCByZXN0b3JlIHRoZW0uCitGaWxlczoJICAgIHNyYy9ub3JtYWwuYywgc3JjL3N0cnVjdHMuaAorCitQYXRjaCA3LjJiLjAyNgorUHJvYmxlbTogICAgVGhlIEdUSyAyIGZpbGUgY2hvb3NlciBjYXVzZXMgdGhlIH4vLnJlY2VudGx5LXVzZWQueGJlbCBmaWxlIHRvIGJlCisJICAgIHdyaXR0ZW4gb3ZlciBhbmQgb3ZlciBhZ2Fpbi4gIFRoaXMgbWF5IGNhdXNlIGEgc2lnbmlmaWNhbnQKKwkgICAgc2xvd2Rvd24uIChHdWlkbyBCZXJob2Vyc3RlcikKK1NvbHV0aW9uOiAgIERvbid0IHVzZSB0aGUgR1RLIDIgZmlsZSBjaG9vc2VyLgorRmlsZXM6CSAgICBzcmMvZ3VpX2d0ay5jCisKK1BhdGNoIDcuMmIuMDI3CitQcm9ibGVtOiAgICBNZW1vcnkgbGVhayBmb3IgUHl0aG9uLCBQZXJsLCBldGMuIHNjcmlwdCBjb21tYW5kIHdpdGggZW5kIG1hcmtlci4KK1NvbHV0aW9uOiAgIEZyZWUgdGhlIG1lbW9yeSBvZiB0aGUgZW5kIG1hcmtlci4gKEFuZHkgS2l0dG5lcikKK0ZpbGVzOgkgICAgc3JjL2V4X2dldGxuLmMKKworUGF0Y2ggNy4yYi4wMjgKK1Byb2JsZW06ICAgIFJlYWRpbmcgdW5pbml0aWFsaXplZCBtZW1vcnkgd2hlbiBkb2luZyAiOmd1aSAtZiIuIChEb21pbmlxdWUKKwkgICAgUGVsbGUpCitTb2x1dGlvbjogICBEb24ndCBwb3NpdGlvbiB0aGUgY3Vyc29yIHdoZW4gdGhlIHNjcmVlbiBzaXplIGlzIGludmFsaWQuCitGaWxlczoJICAgIHNyYy9ndWkuYworCitQYXRjaCA3LjJiLjAyOQorUHJvYmxlbTogICAgIjpoZWxwIGEiIGRvZXNuJ3QganVtcCB0byAiYSIgdGFnIGluIGRvY3MuIChUb255IE1lY2hlbHluY2spCitTb2x1dGlvbjogICBHZXQgYWxsIHRhZ3MgYW5kIHRocm93IGF3YXkgbW9yZSB0aGFuIFRBR19NQU5ZIGFmdGVyIHNvcnRpbmcuCisJICAgIFdoZW4gdGhlcmUgaXMgbm8gYXJndW1lbnQgZmluZCBtYXRjaGVzIGZvciAiaGVscCIgdG8gYXZvaWQgYSBsb25nCisJICAgIGRlbGF5LgorRmlsZXM6CSAgICBzcmMvZXhfY21kcy5jLCBzcmMvZXhfZ2V0bG4uYworCitQYXRjaCA3LjJiLjAzMAorUHJvYmxlbTogICAgV2hlbiBjaGFuZ2luZyB0aGUgdmFsdWUgb2YgdF9DbyBmcm9tIDggdG8gMTYgdGhlIFZpc3VhbAorCSAgICBoaWdobGlnaHRpbmcga2VlcHMgYm90aCByZXZlcnNlIGFuZCBhIGJhY2tncm91bmQgY29sb3IuCitTb2x1dGlvbjogICBSZW1vdmUgdGhlIGF0dHJpYnV0ZSB3aGVuIHNldHRpbmcgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0IGNvbG9yLgorCSAgICAoTWFya3VzIEhlaWRlbGJlcmcpCitGaWxlczoJICAgIHNyYy9zeW50YXguYworCitFcnJvciB3aGVuIGNhbmNlbGxpbmcgY29tcGxldGlvbiBtZW51IGFuZCBhdXRvLWZvcm1hdHRpbmcuIChmaXhlZCBieSBJYW4KK0tlbGxpbmcpCisKIAogIHZpbTp0dz03ODp0cz04OmZ0PWhlbHA6bm9ybDoKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3ZpX2RpZmYudHh0IGIvcnVudGltZS9kb2MvdmlfZGlmZi50eHQKaW5kZXggYmQ1ZGY2NC4uNDdjNTQ5NCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdmlfZGlmZi50eHQKKysrIGIvcnVudGltZS9kb2MvdmlfZGlmZi50eHQKQEAgLTEsNCArMSw0IEBACi0qdmlfZGlmZi50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwOCBKdW4gMjgKKyp2aV9kaWZmLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA4IEp1biAyOAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdmltLWZyLjEgYi9ydW50aW1lL2RvYy92aW0tZnIuMQppbmRleCA1ODQzNDQwLi4zYjQ5MzUxIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy92aW0tZnIuMQorKysgYi9ydW50aW1lL2RvYy92aW0tZnIuMQpAQCAtNTQ5LDcgKzU0OSw3IEBACiBTY3JpcHQgcG91ciBk6XRlY3RlciBsZSB0eXBlIGQndW4gZmljaGllciBkJ2FwcuhzIHNvbiBjb250ZW51LgogVm9pciAiOmhlbHAgJ2ZpbGV0eXBlJyIuCiAuVFAKLS91c3IvbG9jYWwvbGliL3ZpbS8qLnBzCisvdXNyL2xvY2FsL2xpYi92aW0vcHJpbnQvKi5wcwogRmljaGllcnMgdXRpbGlz6XMgcG91ciBsJ2ltcHJlc3Npb24gUG9zdFNjcmlwdC4KIC5QUAogUG91ciBkaXNwb3NlciBkJ2luZm9ybWF0aW9ucyBy6WNlbnRlcywgY29uc3VsdGVyIGxlIHNpdGUgSW50ZXJuZXQgZGUgVklNIDoKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3ZpbS1mci5VVEYtOC4xIGIvcnVudGltZS9kb2MvdmltLWZyLlVURi04LjEKaW5kZXggYWEyYzNjOS4uNmU3YjE4MyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdmltLWZyLlVURi04LjEKKysrIGIvcnVudGltZS9kb2MvdmltLWZyLlVURi04LjEKQEAgLTU0OSw3ICs1NDksNyBAQAogU2NyaXB0IHBvdXIgZMOpdGVjdGVyIGxlIHR5cGUgZCd1biBmaWNoaWVyIGQnYXByw6hzIHNvbiBjb250ZW51LgogVm9pciAiOmhlbHAgJ2ZpbGV0eXBlJyIuCiAuVFAKLS91c3IvbG9jYWwvbGliL3ZpbS8qLnBzCisvdXNyL2xvY2FsL2xpYi92aW0vcHJpbnQvKi5wcwogRmljaGllcnMgdXRpbGlzw6lzIHBvdXIgbCdpbXByZXNzaW9uIFBvc3RTY3JpcHQuCiAuUFAKIFBvdXIgZGlzcG9zZXIgZCdpbmZvcm1hdGlvbnMgcsOpY2VudGVzLCBjb25zdWx0ZXIgbGUgc2l0ZSBJbnRlcm5ldCBkZSBWSU0gOgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdmltLWl0LjEgYi9ydW50aW1lL2RvYy92aW0taXQuMQppbmRleCBkNzEyYWY0Li4xYTg5NjdmIDEwMDc1NQotLS0gYS9ydW50aW1lL2RvYy92aW0taXQuMQorKysgYi9ydW50aW1lL2RvYy92aW0taXQuMQpAQCAtNTM0LDcgKzUzNCw3IEBACiBTY3JpcHQgVmltIHBlciBkZXRlcm1pbmFyZSBpbCB0aXBvIGRpIHVuIGZpbGUgYSBwYXJ0aXJlIGRhbCBzdW8gY29udGVudXRvLgogVmVkZXJlICI6aGVscCAnZmlsZXR5cGUnIi4KIC5UUAotL3Vzci9sb2NhbC9saWIvdmltLyoucHMKKy91c3IvbG9jYWwvbGliL3ZpbS9wcmludC8qLnBzCiBGaWxlIHVzYXRpIHBlciBzdGFtcGEgUG9zdFNjcmlwdC4KIC5QUAogUGVyIGluZm9ybWF6aW9uaSBhZ2dpb3JuYXRlIFtpbiBpbmdsZXNlIFwtIE5kVF0gdmVkZXJlIGxhIGhvbWUgcGFnZSBkaSBWaW06CmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy92aW0taXQuVVRGLTguMSBiL3J1bnRpbWUvZG9jL3ZpbS1pdC5VVEYtOC4xCmluZGV4IGY0MTY5MWQuLmE3ZWE1ZjkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3ZpbS1pdC5VVEYtOC4xCisrKyBiL3J1bnRpbWUvZG9jL3ZpbS1pdC5VVEYtOC4xCkBAIC01MzQsNyArNTM0LDcgQEAKIFNjcmlwdCBWaW0gcGVyIGRldGVybWluYXJlIGlsIHRpcG8gZGkgdW4gZmlsZSBhIHBhcnRpcmUgZGFsIHN1byBjb250ZW51dG8uCiBWZWRlcmUgIjpoZWxwICdmaWxldHlwZSciLgogLlRQCi0vdXNyL2xvY2FsL2xpYi92aW0vKi5wcworL3Vzci9sb2NhbC9saWIvdmltL3ByaW50LyoucHMKIEZpbGUgdXNhdGkgcGVyIHN0YW1wYSBQb3N0U2NyaXB0LgogLlBQCiBQZXIgaW5mb3JtYXppb25pIGFnZ2lvcm5hdGUgW2luIGluZ2xlc2UgXC0gTmRUXSB2ZWRlcmUgbGEgaG9tZSBwYWdlIGRpIFZpbToKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3ZpbS1wbC4xIGIvcnVudGltZS9kb2MvdmltLXBsLjEKaW5kZXggMjVkZDc4Ni4uM2ZhMzRlMiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdmltLXBsLjEKKysrIGIvcnVudGltZS9kb2MvdmltLXBsLjEKQEAgLTUyMyw3ICs1MjMsNyBAQAogL3Vzci9sb2NhbC9saWIvdmltL3NjcmlwdHMudmltCiBTa3J5cHQgZG8gd3lrcnl3YW5pYSB0eXB1IHBsaWt1IHdlZLN1ZyBqZWdvIHphd2FydG+2Y2kuIFpvYmFjeiAiOmhlbHAgJ2ZpbGV0eXBlJyIuCiAuVFAKLS91c3IvbG9jYWwvbGliL3ZpbS8qLnBzCisvdXNyL2xvY2FsL2xpYi92aW0vcHJpbnQvKi5wcwogUGxpa3Ugdb95d2FuZSBkbyBkcnVrb3dhbmlhIFBvc3RTY3JpcHR1LgogLlBQCiBOYWq2d2llv3N6ZSB3aWFkb21vtmNpIG5hIHN0cm9uaWUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3ZpbS1wbC5VVEYtOC4xIGIvcnVudGltZS9kb2MvdmltLXBsLlVURi04LjEKaW5kZXggYWIxOWE1Mi4uMzY1ZGE1YSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdmltLXBsLlVURi04LjEKKysrIGIvcnVudGltZS9kb2MvdmltLXBsLlVURi04LjEKQEAgLTUyMyw3ICs1MjMsNyBAQAogL3Vzci9sb2NhbC9saWIvdmltL3NjcmlwdHMudmltCiBTa3J5cHQgZG8gd3lrcnl3YW5pYSB0eXB1IHBsaWt1IHdlZMWCdWcgamVnbyB6YXdhcnRvxZtjaS4gWm9iYWN6ICI6aGVscCAnZmlsZXR5cGUnIi4KIC5UUAotL3Vzci9sb2NhbC9saWIvdmltLyoucHMKKy91c3IvbG9jYWwvbGliL3ZpbS9wcmludC8qLnBzCiBQbGlrdSB1xbx5d2FuZSBkbyBkcnVrb3dhbmlhIFBvc3RTY3JpcHR1LgogLlBQCiBOYWrFm3dpZcW8c3plIHdpYWRvbW/Fm2NpIG5hIHN0cm9uaWUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3ZpbS1ydS4xIGIvcnVudGltZS9kb2MvdmltLXJ1LjEKaW5kZXggMTFlMzAxNy4uYmIyNTk3ZiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdmltLXJ1LjEKKysrIGIvcnVudGltZS9kb2MvdmltLXJ1LjEKQEAgLTQ1Miw3ICs0NTIsNyBAQAogL3Vzci9sb2NhbC9saWIvdmltL3NjcmlwdHMudmltCiDzw8XOwdLJyiDEzNEgz9DSxcTFzMXOydEg1MnQwSDGwcrMwSDQzyDTz8TF0tbJzc/N1S4g880uICI6aGVscCAnZmlsZXR5cGUnIi4KIC5UUAotL3Vzci9sb2NhbC9saWIvdmltLyoucHMKKy91c3IvbG9jYWwvbGliL3ZpbS9wcmludC8qLnBzCiDmwcrM2SDEzNEg0MXewdTJIFBvc3RTY3JpcHQuCiAuUFAKIOLPzMXFINPXxdbB0SDJzsbP0s3Bw8nRIC0tIM7BINPBytTFIFZJTToKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3ZpbS1ydS5VVEYtOC4xIGIvcnVudGltZS9kb2MvdmltLXJ1LlVURi04LjEKaW5kZXggYjRkODhlZC4uNzgxMjdhMSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdmltLXJ1LlVURi04LjEKKysrIGIvcnVudGltZS9kb2MvdmltLXJ1LlVURi04LjEKQEAgLTQ1Miw3ICs0NTIsNyBAQAogL3Vzci9sb2NhbC9saWIvdmltL3NjcmlwdHMudmltCiDQodGG0LXQvdCw0YDQuNC5INC00LvRjyDQvtC/0YDQtdC00LXQu9C10L3QuNGPINGC0LjQv9CwINGE0LDQudC70LAg0L/QviDRgdC+0LTQtdGA0LbQuNC80L7QvNGDLiDQodC8LiAiOmhlbHAgJ2ZpbGV0eXBlJyIuCiAuVFAKLS91c3IvbG9jYWwvbGliL3ZpbS8qLnBzCisvdXNyL2xvY2FsL2xpYi92aW0vcHJpbnQvKi5wcwog0KTQsNC50LvRiyDQtNC70Y8g0L/QtdGH0LDRgtC4IFBvc3RTY3JpcHQuCiAuUFAKINCR0L7Qu9C10LUg0YHQstC10LbQsNGPINC40L3RhNC+0YDQvNCw0YbQuNGPIC0tINC90LAg0YHQsNC50YLQtSBWSU06CmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy92aW0uMSBiL3J1bnRpbWUvZG9jL3ZpbS4xCmluZGV4IDRlOTBkYTIuLjgyMGNhYTIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3ZpbS4xCisrKyBiL3J1bnRpbWUvZG9jL3ZpbS4xCkBAIC0xODcsNyArMTg3LDcgQEAKIC5UUAogXC1kCiBTdGFydCBpbiBkaWZmIG1vZGUuCi1UaGVyZSBzaG91bGQgYmUgdHdvIG9yIHRocmVlIGZpbGUgbmFtZSBhcmd1bWVudHMuCitUaGVyZSBzaG91bGQgYmUgdHdvLCB0aHJlZSBvciBmb3VyIGZpbGUgbmFtZSBhcmd1bWVudHMuCiAuQiBWaW0KIHdpbGwgb3BlbiBhbGwgdGhlIGZpbGVzIGFuZCBzaG93IGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlbS4KIFdvcmtzIGxpa2UgdmltZGlmZigxKS4KQEAgLTUyMiw3ICs1MjIsNyBAQAogL3Vzci9sb2NhbC9saWIvdmltL3NjcmlwdHMudmltCiBTY3JpcHQgdG8gZGV0ZWN0IHRoZSB0eXBlIG9mIGEgZmlsZSBieSBpdHMgY29udGVudHMuICBTZWUgIjpoZWxwICdmaWxldHlwZSciLgogLlRQCi0vdXNyL2xvY2FsL2xpYi92aW0vKi5wcworL3Vzci9sb2NhbC9saWIvdmltL3ByaW50LyoucHMKIEZpbGVzIHVzZWQgZm9yIFBvc3RTY3JpcHQgcHJpbnRpbmcuCiAuUFAKIEZvciByZWNlbnQgaW5mbyByZWFkIHRoZSBWSU0gaG9tZSBwYWdlOgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdmltLm1hbiBiL3J1bnRpbWUvZG9jL3ZpbS5tYW4KaW5kZXggZmE1YzVjOC4uNWI5YjgzYyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdmltLm1hbgorKysgYi9ydW50aW1lL2RvYy92aW0ubWFuCkBAIC0xMzUsOSArMTM1LDkgQEAKICAgICAgICAgICAgICAgICAgICBWaW0gIGJlaGF2ZSAgbW9zdGx5ICBsaWtlICBWaSwgIGV2ZW4gIHRob3VnaCAgYSAudmltcmMgZmlsZQogICAgICAgICAgICAgICAgICAgIGV4aXN0cy4KIAotICAgICAgIC1kICAgICAgICAgIFN0YXJ0IGluIGRpZmYgbW9kZS4gIFRoZXJlIHNob3VsZCBiZSB0d28gb3IgdGhyZWUgZmlsZSBuYW1lCi0gICAgICAgICAgICAgICAgICAgYXJndW1lbnRzLiAgIFZpbSAgd2lsbCAgb3BlbiBhbGwgdGhlIGZpbGVzIGFuZCBzaG93IGRpZmZlci0KLSAgICAgICAgICAgICAgICAgICBlbmNlcyBiZXR3ZWVuIHRoZW0uICBXb3JrcyBsaWtlIHZpbWRpZmYoMSkuCisgICAgICAgLWQgICAgICAgICAgU3RhcnQgaW4gZGlmZiBtb2RlLiAgVGhlcmUgc2hvdWxkIGJlICB0d28sICB0aHJlZSAgb3IgIGZvdXIKKyAgICAgICAgICAgICAgICAgICBmaWxlICBuYW1lIGFyZ3VtZW50cy4gIFZpbSB3aWxsIG9wZW4gYWxsIHRoZSBmaWxlcyBhbmQgc2hvdworICAgICAgICAgICAgICAgICAgIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlbS4gIFdvcmtzIGxpa2UgdmltZGlmZigxKS4KIAogICAgICAgIC1kIHtkZXZpY2V9IE9wZW4ge2RldmljZX0gZm9yIHVzZSBhcyBhIHRlcm1pbmFsLiAgT25seSAgb24gIHRoZSAgQW1pZ2EuCiAgICAgICAgICAgICAgICAgICAgRXhhbXBsZTogIi1kIGNvbjoyMC8zMC82MDAvMTUwIi4KQEAgLTM5OCw3ICszOTgsNyBAQAogICAgICAgICAgICAgICAgICAgICAgIFNjcmlwdCB0byBkZXRlY3QgdGhlIHR5cGUgb2YgYSAgZmlsZSAgYnkgIGl0cyAgY29udGVudHMuCiAgICAgICAgICAgICAgICAgICAgICAgU2VlICI6aGVscCAnZmlsZXR5cGUnIi4KIAotICAgICAgIC91c3IvbG9jYWwvbGliL3ZpbS8qLnBzCisgICAgICAgL3Vzci9sb2NhbC9saWIvdmltL3ByaW50LyoucHMKICAgICAgICAgICAgICAgICAgICAgICBGaWxlcyB1c2VkIGZvciBQb3N0U2NyaXB0IHByaW50aW5nLgogCiAgICAgICAgRm9yIHJlY2VudCBpbmZvIHJlYWQgdGhlIFZJTSBob21lIHBhZ2U6CmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy92aW1kaWZmLjEgYi9ydW50aW1lL2RvYy92aW1kaWZmLjEKaW5kZXggOTBlZDhiOC4uYmVkMmIzMiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdmltZGlmZi4xCisrKyBiL3J1bnRpbWUvZG9jL3ZpbWRpZmYuMQpAQCAtMSwxNyArMSwxNyBAQAogLlRIIFZJTURJRkYgMSAiMjAwMSBNYXJjaCAzMCIKIC5TSCBOQU1FCi12aW1kaWZmIFwtIGVkaXQgdHdvIG9yIHRocmVlIHZlcnNpb25zIG9mIGEgZmlsZSB3aXRoIFZpbSBhbmQgc2hvdyBkaWZmZXJlbmNlcwordmltZGlmZiBcLSBlZGl0IHR3bywgdGhyZWUgb3IgZm91ciB2ZXJzaW9ucyBvZiBhIGZpbGUgd2l0aCBWaW0gYW5kIHNob3cgZGlmZmVyZW5jZXMKIC5TSCBTWU5PUFNJUwogLmJyCiAuQiB2aW1kaWZmCi1bb3B0aW9uc10gZmlsZTEgZmlsZTIgW2ZpbGUzXQorW29wdGlvbnNdIGZpbGUxIGZpbGUyIFtmaWxlMyBbZmlsZTRdXQogLlBQCiAuQiBndmltZGlmZgogLlNIIERFU0NSSVBUSU9OCiAuQiBWaW1kaWZmCiBzdGFydHMKIC5CIFZpbQotb24gdHdvIChvciB0aHJlZSkgZmlsZXMuCitvbiB0d28gKG9yIHRocmVlIG9yIGZvdXIpIGZpbGVzLgogRWFjaCBmaWxlIGdldHMgaXRzIG93biB3aW5kb3cuCiBUaGUgZGlmZmVyZW5jZXMgYmV0d2VlbiB0aGUgZmlsZXMgYXJlIGhpZ2hsaWdodGVkLgogVGhpcyBpcyBhIG5pY2Ugd2F5IHRvIGluc3BlY3QgY2hhbmdlcyBhbmQgdG8gbW92ZSBjaGFuZ2VzIGZyb20gb25lIHZlcnNpb24KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3ZpbWRpZmYubWFuIGIvcnVudGltZS9kb2MvdmltZGlmZi5tYW4KaW5kZXggNDFlZjQ3Zi4uOTEzYWMxMyAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdmltZGlmZi5tYW4KKysrIGIvcnVudGltZS9kb2MvdmltZGlmZi5tYW4KQEAgLTMsMTkgKzMsMTkgQEAKIAogCiBOQU1FCi0gICAgICAgdmltZGlmZiAgLSAgZWRpdCB0d28gb3IgdGhyZWUgdmVyc2lvbnMgb2YgYSBmaWxlIHdpdGggVmltIGFuZCBzaG93IGRpZi0KLSAgICAgICBmZXJlbmNlcworICAgICAgIHZpbWRpZmYgIC0gZWRpdCB0d28sIHRocmVlIG9yIGZvdXIgdmVyc2lvbnMgb2YgYSBmaWxlIHdpdGggVmltIGFuZCBzaG93CisgICAgICAgZGlmZmVyZW5jZXMKIAogU1lOT1BTSVMKLSAgICAgICB2aW1kaWZmIFtvcHRpb25zXSBmaWxlMSBmaWxlMiBbZmlsZTNdCisgICAgICAgdmltZGlmZiBbb3B0aW9uc10gZmlsZTEgZmlsZTIgW2ZpbGUzIFtmaWxlNF1dCiAKICAgICAgICBndmltZGlmZgogCiBERVNDUklQVElPTgotICAgICAgIFZpbWRpZmYgc3RhcnRzIFZpbSBvbiB0d28gKG9yIHRocmVlKSBmaWxlcy4gIEVhY2ggIGZpbGUgIGdldHMgIGl0cyAgb3duCi0gICAgICAgd2luZG93LiAgIFRoZSBkaWZmZXJlbmNlcyBiZXR3ZWVuIHRoZSBmaWxlcyBhcmUgaGlnaGxpZ2h0ZWQuICBUaGlzIGlzIGEKLSAgICAgICBuaWNlIHdheSB0byBpbnNwZWN0IGNoYW5nZXMgYW5kIHRvIG1vdmUgY2hhbmdlcyAgZnJvbSAgb25lICB2ZXJzaW9uICB0bwotICAgICAgIGFub3RoZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBmaWxlLgorICAgICAgIFZpbWRpZmYgc3RhcnRzIFZpbSBvbiB0d28gKG9yIHRocmVlIG9yIGZvdXIpIGZpbGVzLiAgRWFjaCBmaWxlIGdldHMgaXRzCisgICAgICAgb3duICB3aW5kb3cuICAgVGhlIGRpZmZlcmVuY2VzIGJldHdlZW4gdGhlIGZpbGVzIGFyZSBoaWdobGlnaHRlZC4gIFRoaXMKKyAgICAgICBpcyBhIG5pY2Ugd2F5IHRvIGluc3BlY3QgY2hhbmdlcyBhbmQgdG8gbW92ZSBjaGFuZ2VzIGZyb20gIG9uZSAgdmVyc2lvbgorICAgICAgIHRvIGFub3RoZXIgdmVyc2lvbiBvZiB0aGUgc2FtZSBmaWxlLgogCiAgICAgICAgU2VlIHZpbSgxKSBmb3IgZGV0YWlscyBhYm91dCBWaW0gaXRzZWxmLgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy92aXN1YWwudHh0IGIvcnVudGltZS9kb2MvdmlzdWFsLnR4dAppbmRleCBmY2E3MWYzLi42OTY4Zjc3IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy92aXN1YWwudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Zpc3VhbC50eHQKQEAgLTEsNCArMSw0IEBACi0qdmlzdWFsLnR4dCogICAgRm9yIFZpbSB2ZXJzaW9uIDcuMmIuICBMYXN0IGNoYW5nZTogMjAwNiBTZXAgMjYKKyp2aXN1YWwudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4yYy4gIExhc3QgY2hhbmdlOiAyMDA2IFNlcCAyNgogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2Mvd2luZG93cy50eHQgYi9ydW50aW1lL2RvYy93aW5kb3dzLnR4dAppbmRleCA0MGU5OGM0Li42MjkxNzcwIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy93aW5kb3dzLnR4dAorKysgYi9ydW50aW1lL2RvYy93aW5kb3dzLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp3aW5kb3dzLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA4IEp1bCAwNQorKndpbmRvd3MudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDggSnVsIDA1CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy93b3Jrc2hvcC50eHQgYi9ydW50aW1lL2RvYy93b3Jrc2hvcC50eHQKaW5kZXggZTY3Njg1Mi4uZGE1NmYyOCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2Mvd29ya3Nob3AudHh0CisrKyBiL3J1bnRpbWUvZG9jL3dvcmtzaG9wLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp3b3Jrc2hvcC50eHQqICBGb3IgVmltIHZlcnNpb24gNy4yYi4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyNAorKndvcmtzaG9wLnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjJjLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDI0CiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEdvcmRvbiBQcmlldXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZmlsZXR5cGUudmltIGIvcnVudGltZS9maWxldHlwZS52aW0KaW5kZXggMTdmN2E4MC4uYThlNjI2MSAxMDA2NDQKLS0tIGEvcnVudGltZS9maWxldHlwZS52aW0KKysrIGIvcnVudGltZS9maWxldHlwZS52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzdXBwb3J0IGZpbGUgdG8gZGV0ZWN0IGZpbGUgdHlwZXMKICIKICIgTWFpbnRhaW5lcjoJQnJhbSBNb29sZW5hYXIgPEJyYW1AdmltLm9yZz4KLSIgTGFzdCBDaGFuZ2U6CTIwMDggSnVsIDE3CisiIExhc3QgQ2hhbmdlOgkyMDA4IEF1ZyAwMwogCiAiIExpc3RlbiB2ZXJ5IGNhcmVmdWxseSwgSSB3aWxsIHNheSB0aGlzIG9ubHkgb25jZQogaWYgZXhpc3RzKCJkaWRfbG9hZF9maWxldHlwZXMiKQpAQCAtMjUsNyArMjUsNyBAQAogCVwgaWYgczpuYW1lICE9IHM6c2hvcnQgJiYgczpzaG9ydCAhPSAiIiB8CiAJXCAgIGV4ZSAiZG9hdSBmaWxldHlwZWRldGVjdCBCdWZSZWFkICIgLiBmbmFtZWVzY2FwZShzOnNob3J0KSB8CiAJXCBlbmRpZiB8Ci0JXCB1bmxldCBzOm5hbWUgczpzaG9ydAorCVwgdW5sZXQhIHM6bmFtZSBzOnNob3J0CiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgP1wrLmluCiAJXCBpZiBleHBhbmQoIjxhZmlsZT46dCIpICE9ICJjb25maWd1cmUuaW4iIHwKIAlcICAgZXhlICJkb2F1IGZpbGV0eXBlZGV0ZWN0IEJ1ZlJlYWQgIiAuIGZuYW1lZXNjYXBlKGV4cGFuZCgiPGFmaWxlPjpyIikpIHwKQEAgLTE4MSw3ICsxODEsNyBAQAogICAgIGVuZGlmCiAgIGVuZGlmCiAKLSAgZXhlICJzZXRmICIgLiBiOmFzbXN5bnRheAorICBleGUgInNldGYgIiAuIGZuYW1lZXNjYXBlKGI6YXNtc3ludGF4KQogZW5kZnVuYwogCiBmdW5jISBzOkZUYXNtc3ludGF4KCkKQEAgLTE4OSw4ICsxODksOSBAQAogICAiIGI6YXNtc3ludGF4IGFwcHJvcHJpYXRlbHkKICAgbGV0IGhlYWQgPSAiICIuZ2V0bGluZSgxKS4iICIuZ2V0bGluZSgyKS4iICIuZ2V0bGluZSgzKS4iICIuZ2V0bGluZSg0KS4KIAlcIiAiLmdldGxpbmUoNSkuIiAiCi0gIGlmIGhlYWQgPX4gJ1xzYXNtc3ludGF4PVxTXCtccycKLSAgICBsZXQgYjphc21zeW50YXggPSBzdWJzdGl0dXRlKGhlYWQsICcuKlxzYXNtc3ludGF4PVwoW2EtekEtWjAtOV1cK1wpXHMuKicsJ1wxJywgIiIpCisgIGxldCBtYXRjaCA9IG1hdGNoc3RyKGhlYWQsICdcc2FzbXN5bnRheD1cenNbYS16QS1aMC05XVwrXHplXHMnKQorICBpZiBtYXRjaCAhPSAnJworICAgIGxldCBiOmFzbXN5bnRheCA9IG1hdGNoCiAgIGVsc2VpZiAoKGhlYWQgPX4/ICdcLnRpdGxlJykgfHwgKGhlYWQgPX4/ICdcLmlkZW50JykgfHwgKGhlYWQgPX4/ICdcLm1hY3JvJykgfHwgKGhlYWQgPX4/ICdcLnN1YnRpdGxlJykgfHwgKGhlYWQgPX4/ICdcLmxpYnJhcnknKSkKICAgICBsZXQgYjphc21zeW50YXggPSAidm1hc20iCiAgIGVuZGlmCkBAIC02OTAsNiArNjkxLDkgQEAKIGVuZGlmCiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgICAqLmYsKi5mb3IsKi5mb3J0cmFuLCouZnBwLCouZnRuLCouZjc3LCouZjkwLCouZjk1ICBzZXRmIGZvcnRyYW4KIAorIiBGcmFtZXNjcmlwdAorYXUgQnVmTmV3RmlsZSxCdWZSZWFkICouZnNsCQkJc2V0ZiBmcmFtZXNjcmlwdAorCiAiIEZTdGFiCiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgZnN0YWIsbXRhYgkJc2V0ZiBmc3RhYgogCkBAIC0xMzQ3LDcgKzEzNTEsNyBAQAogICAgIGVsc2UKICAgICAgIGNhbGwgczpGVGFzbXN5bnRheCgpCiAgICAgICBpZiBleGlzdHMoImI6YXNtc3ludGF4IikKLQlleGUgInNldGYgIiAuIGI6YXNtc3ludGF4CisJZXhlICJzZXRmICIgLiBmbmFtZWVzY2FwZShiOmFzbXN5bnRheCkKICAgICAgIGVsc2UKIAlzZXRmIHBvdgogICAgICAgZW5kaWYKQEAgLTE3NTEsNiArMTc1NSw3IEBACiAiIFotU2hlbGwgc2NyaXB0CiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgLnpwcm9maWxlLC9ldGMvenByb2ZpbGUsLnpmYmZtYXJrcyAgc2V0ZiB6c2gKIGF1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCAuenNoKiwuemxvZyosLnpjb21wZHVtcCogIGNhbGwgczpTdGFyU2V0ZignenNoJykKK2F1IEJ1Zk5ld0ZpbGUsQnVmUmVhZCAqLnpzaCAJCQlzZXRmIHpzaAogCiAiIFNjaGVtZQogYXUgQnVmTmV3RmlsZSxCdWZSZWFkICouc2NtLCouc3MJCXNldGYgc2NoZW1lCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2EycHMudmltIGIvcnVudGltZS9mdHBsdWdpbi9hMnBzLnZpbQppbmRleCBhNTk2ZmM4Li42NjUzMzUxIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2EycHMudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vYTJwcy52aW0KQEAgLTEsMTQgKzEsMjAgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGEycHMoMSkgY29uZmlndXJhdGlvbiBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGluYzwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGluY2x1ZGU9XlxccypJbmNsdWRlOgogc2V0bG9jYWwgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vYWxzYWNvbmYudmltIGIvcnVudGltZS9mdHBsdWdpbi9hbHNhY29uZi52aW0KaW5kZXggMGVmNjk5MS4uNWQ3NjNjOCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9hbHNhY29uZi52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9hbHNhY29uZi52aW0KQEAgLTEsMTMgKzEsMTkgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGFsc2Fjb25mKDgpIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vYXJjaC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2FyY2gudmltCmluZGV4IDJkYTllNDAuLjcxZDgzMWUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vYXJjaC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9hcmNoLnZpbQpAQCAtMSwxMyArMSwxOSBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgR05VIEFyY2ggaW52ZW50b3J5IGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2F1dG9tYWtlLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vYXV0b21ha2UudmltCmluZGV4IGM0OGVhMTMuLjIwYjA2YWYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vYXV0b21ha2UudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vYXV0b21ha2UudmltCkBAIC0xLDEwICsxLDE2IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBBdXRvbWFrZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogcnVudGltZSEgZnRwbHVnaW4vbWFrZS52aW0gZnRwbHVnaW4vbWFrZV8qLnZpbSBmdHBsdWdpbi9tYWtlLyoudmltCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9iZGYudmltIGIvcnVudGltZS9mdHBsdWdpbi9iZGYudmltCmluZGV4IGEwMTBjMmMuLjEyMGM1ZGYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vYmRmLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2JkZi52aW0KQEAgLTEsMTQgKzEsMjAgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIEJERiBmb250IGRlZmluaXRpb24KICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz1iOkNPTU1FTlQgY29tbWVudHN0cmluZz1DT01NRU5UXCAlcwogc2V0bG9jYWwgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vY2FsZW5kYXIudmltIGIvcnVudGltZS9mdHBsdWdpbi9jYWxlbmRhci52aW0KaW5kZXggY2E1NjUxMS4uNmYxMTdlMyAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9jYWxlbmRhci52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9jYWxlbmRhci52aW0KQEAgLTEsMTQgKzEsMjAgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGNhbGVuZGFyKDEpIGlucHV0IGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgaW5jPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPXMxOi8qLG1iOiosZXg6Ki8gY29tbWVudHN0cmluZyYgaW5jbHVkZSYKIHNldGxvY2FsIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2NkcmRhb2NvbmYudmltIGIvcnVudGltZS9mdHBsdWdpbi9jZHJkYW9jb25mLnZpbQppbmRleCA4Njc5NmViLi41NTdmZDgyIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2NkcmRhb2NvbmYudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vY2RyZGFvY29uZi52aW0KQEAgLTEsNiArMSw2IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNy0wOS0xOAorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA3LTEyLTA0CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKQEAgLTE0LDUgKzE0LDUgQEAKIAogc2V0bG9jYWwgY29tbWVudHM9OiMgY29tbWVudHN0cmluZz0jXCAlcyBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCiAKLWxldCBzOmNwb19zYXZlID0gJmNwbwotc2V0IGNwbyZ2aW0KK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9jb25mLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vY29uZi52aW0KaW5kZXggOGUwYjdmOC4uMWIxMTBlNCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9jb25mLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2NvbmYudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBnZW5lcmljIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vY29udGV4dC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2NvbnRleHQudmltCmluZGV4IGM3NGJlMDcuLjFjN2Q2NzggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vY29udGV4dC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9jb250ZXh0LnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIENvblRlWHQgdHlwZXNldHRpbmcgZW5naW5lCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApAQCAtMjksOCArMjksNyBAQAogICBsZXQgYjptYXRjaF9za2lwID0gJ3I6XFxcQDwhXCUoXFxcXFwpKiUnCiAgIGxldCBiOm1hdGNoX3dvcmRzID0gJyg6KSxcWzpdLHs6fSxcXCg6XFwpLFxcXFs6XFxdLCcgLgogICAgICAgICBcICdcXHN0YXJ0XChcYVwrXCk6XFxzdG9wXDEnCi1lbmRpZiAiIGV4aXN0cygibG9hZGVkX21hdGNoaXQiKQotCitlbmRpZgogCiBsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKIHVubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vY3JtLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vY3JtLnZpbQppbmRleCA4ZWM0MmE5Li5lODZlNjgzIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2NybS52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9jcm0udmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBDUk0xMTQKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2Nzcy52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2Nzcy52aW0KaW5kZXggZDgwNTgyZS4uNDNkMWVkZiAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9jc3MudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vY3NzLnZpbQpAQCAtMSwxMyArMSwxNiBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgQ1NTCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA3LTA1LTA4CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGluYzwgZm88IG9mdTwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPXMxOi8qLG1iOiosZXg6Ki8gY29tbWVudHN0cmluZyYKQEAgLTE1LDMgKzE4LDYgQEAKIHNldGxvY2FsIG9tbmlmdW5jPWNzc2NvbXBsZXRlI0NvbXBsZXRlQ1NTCiAKIGxldCAmbDppbmNsdWRlID0gJ15ccypAaW1wb3J0XHNcK1wlKHVybChcKVw9JworCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vY3ZzcmMudmltIGIvcnVudGltZS9mdHBsdWdpbi9jdnNyYy52aW0KaW5kZXggMmE0OWY4ZC4uYzQxMDUzMDUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vY3ZzcmMudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vY3ZzcmMudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBjdnMoMSkgUkMgZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPSBjb21tZW50c3RyaW5nPSBmb3JtYXRvcHRpb25zLT10Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2Rlbnlob3N0cy52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2Rlbnlob3N0cy52aW0KaW5kZXggODY3OTZlYi4uNTU3ZmQ4MiAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9kZW55aG9zdHMudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vZGVueWhvc3RzLnZpbQpAQCAtMSw2ICsxLDYgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA3LTA5LTE4CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDctMTItMDQKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApAQCAtMTQsNSArMTQsNSBAQAogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKIAotbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCi1zZXQgY3BvJnZpbQorbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2RpY3Rjb25mLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vZGljdGNvbmYudmltCmluZGV4IDZlYmQ5NGEuLjY1OTA0NmMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vZGljdGNvbmYudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vZGljdGNvbmYudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBkaWN0KDEpIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vZGljdGRjb25mLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vZGljdGRjb25mLnZpbQppbmRleCBiZGE4NzgyLi5lZTczOGM1IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2RpY3RkY29uZi52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9kaWN0ZGNvbmYudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBkaWN0ZCg4KSBjb25maWd1cmF0aW9uIGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2RpcmNvbG9ycy52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2RpcmNvbG9ycy52aW0KaW5kZXggYmRiZWNjMC4uM2IzZDA0NiAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9kaXJjb2xvcnMudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vZGlyY29sb3JzLnZpbQpAQCAtMSwxMyArMSwxOSBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgZGlyY29sb3JzKDEpIGlucHV0IGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2Rvc2luaS52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2Rvc2luaS52aW0KaW5kZXggMzU0YjA5My4uNDYxNDAzYyAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9kb3NpbmkudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vZG9zaW5pLnZpbQpAQCAtMSwxMyArMSwxOSBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgQ29uZmlndXJhdGlvbiBGaWxlIChpbmkgZmlsZSkgZm9yIE1TRE9TL01TIFdpbmRvd3MKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDctMDgtMjMKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06OyBjb21tZW50c3RyaW5nPTtcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2R0ZC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2R0ZC52aW0KaW5kZXggOTkxMTE4Ny4uM2IxNWJkYSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9kdGQudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vZHRkLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOglkdGQKICIgTWFpbnRhaW5lcjoJRGFuIFNoYXJwIDxkd3NoYXJwIGF0IGhvdG1haWwgZG90IGNvbT4KLSIgTGFzdCBDaGFuZ2VkOiAyMDAzIFNlcCAyOQorIiBMYXN0IENoYW5nZWQ6IDMwIEp1biAyMDA4CiAiIFVSTDoJCWh0dHA6Ly9teXdlYnBhZ2UubmV0c2NhcGUuY29tL3NoYXJwcGVvcGxlL3ZpbS9mdHBsdWdpbgogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikgfCBmaW5pc2ggfCBlbmRpZgpAQCAtMTMsNiArMTMsMTIgQEAKIHNldCBjcG8tPUMKIAogc2V0bG9jYWwgY29tbWVudHN0cmluZz08IS0tJXMtLT4KK3NldGxvY2FsIGNvbW1lbnRzPXM6PCEtLSxtOlwgXCBcIFwgXCAsZTotLT4KKworc2V0bG9jYWwgZm9ybWF0b3B0aW9ucy09dAoraWYgIWV4aXN0cygiZzpmdF9kdGRfYXV0b2NvbW1lbnQiKSB8fCAoZzpmdF9kdGRfYXV0b2NvbW1lbnQgPT0gMSkKKyAgICBzZXRsb2NhbCBmb3JtYXRvcHRpb25zKz1jcm9xbAorZW5kaWYKIAogaWYgZXhpc3RzKCJsb2FkZWRfbWF0Y2hpdCIpCiAgICAgbGV0IGI6bWF0Y2hfd29yZHMgPSAnPCEtLTotLT4sPCE6PicKQEAgLTI2LDcgKzMyLDcgQEAKIGVuZGlmCiAKICIgVW5kbyB0aGUgc3R1ZmYgd2UgY2hhbmdlZC4KLWxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bG9jYWwgY29tbWVudHN0cmluZzwiIC4KK2xldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bG9jYWwgY29tbWVudHN0cmluZzwgY29tbWVudHM8IGZvcm1hdG9wdGlvbnM8IiAuCiAJCVwgICAgICIgfCB1bmxldCEgYjptYXRjaHdvcmRzIGI6YnJvd3NlZmlsdGVyIgogCiAiIFJlc3RvcmUgdGhlIHNhdmVkIGNvbXBhdGliaWxpdHkgb3B0aW9ucy4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vZWxpbmtzLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vZWxpbmtzLnZpbQppbmRleCBjN2MxMWY2Li43ZDkyNTc1IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2VsaW5rcy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9lbGlua3MudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBlbGlua3MoMSkgY29uZmlndXJhdGlvbiBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9OiMgY29tbWVudHN0cmluZz0jXCAlcyBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9ldGVybS52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2V0ZXJtLnZpbQppbmRleCBkZjViZjUwLi5lMDcyYzYzIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2V0ZXJtLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2V0ZXJtLnZpbQpAQCAtMSwxNCArMSwyMCBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgZXRlcm0oMSkgY29uZmlndXJhdGlvbiBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGluYzwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGluY2x1ZGU9XlxccyppbmNsdWRlCiBzZXRsb2NhbCBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9mZXRjaG1haWwudmltIGIvcnVudGltZS9mdHBsdWdpbi9mZXRjaG1haWwudmltCmluZGV4IDE3NGVkNDQuLmEwZDQ2NTAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vZmV0Y2htYWlsLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2ZldGNobWFpbC52aW0KQEAgLTEsMTMgKzEsMTkgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGZldGNobWFpbCgxKSBSQyBGaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9OiMgY29tbWVudHN0cmluZz0jXCAlcyBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9mcmFtZXNjcmlwdC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2ZyYW1lc2NyaXB0LnZpbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MDU0MDFhCi0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9mdHBsdWdpbi9mcmFtZXNjcmlwdC52aW0KQEAgLTAsMCArMSwzMCBAQAorIiBWaW0gZnRwbHVnaW4gZmlsZQorIiBMYW5ndWFnZTogICAgICAgICBGcmFtZVNjcmlwdAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0xOQorCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKK2lmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQorICBmaW5pc2gKK2VuZGlmCitsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCisKK2xldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IGluYzwgfCB1bmxldCEgYjptYXRjaHdvcmRzIgorCitzZXRsb2NhbCBjb21tZW50cz1zMTovKixtYjoqLGV4OiovLDovLyBjb21tZW50c3RyaW5nPS8qXCAlc1wgKi8KK3NldGxvY2FsIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKK3NldGxvY2FsIGluY2x1ZGU9Xlxccyo8I0luY2x1ZGUKKworaWYgZXhpc3RzKCJsb2FkZWRfbWF0Y2hpdCIpCisgIGxldCBzOm5vdF9lbmQgPSAnXGNcJShcPEVuZFwpXEA8IScKKyAgbGV0IGI6bWF0Y2hfd29yZHMgPQorICAgICAgICBcIHM6bm90X2VuZCAuICdcPElmXD46XGNcPEVsc2VJZlw+OlxjXDxFbHNlXD46XGNcPEVuZElmXD4sJyAuCisgICAgICAgIFwgczpub3RfZW5kIC4gJ1w8TG9vcFw+OlxjXDxFbmRMb29wXD4nIC4KKyAgICAgICAgXCBzOm5vdF9lbmQgLiAnXDxTdWJcPjpcY1w8RW5kU3ViXD4nCisgIHVubGV0IHM6bm90X2VuZAorZW5kaWYKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlIAordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9naXQudmltIGIvcnVudGltZS9mdHBsdWdpbi9naXQudmltCmluZGV4IGY4ZDMzMWYuLjlhYzFhYTEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vZ2l0LnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2dpdC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4KICIgTGFuZ3VhZ2U6CWdlbmVyaWMgZ2l0IG91dHB1dAogIiBNYWludGFpbmVyOglUaW0gUG9wZSA8dmltTk9TUEFNQHRwb3BlLmluZm8+Ci0iIExhc3QgQ2hhbmdlOgkyMDA4IEp1biAyMAorIiBMYXN0IENoYW5nZToJMjAwOCBKdWwgMzAKIAogIiBPbmx5IGRvIHRoaXMgd2hlbiBub3QgZG9uZSB5ZXQgZm9yIHRoaXMgYnVmZmVyCiBpZiAoZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpKQpAQCAtMjIsNyArMjIsNyBAQAogCiBpZiBleGlzdHMoJypzaGVsbGVzY2FwZScpICYmIGV4aXN0cygnYjpnaXRfZGlyJykgJiYgYjpnaXRfZGlyICE9ICcnCiAgICAgaWYgYjpnaXRfZGlyID1+IyAnL1wuZ2l0JCcgIiBOb3QgYSBiYXJlIHJlcG9zaXRvcnkKLSAgICAgICAgbGV0ICZsOnBhdGggPSBlc2NhcGUoZm5hbWVtb2RpZnkoYjpnaXRfZGlyLCc6dCcpLCdcLCAnKS4nLCcuJmw6cGF0aAorICAgICAgICBsZXQgJmw6cGF0aCA9IGVzY2FwZShmbmFtZW1vZGlmeShiOmdpdF9kaXIsJzpoJyksJ1wsICcpLicsJy4mbDpwYXRoCiAgICAgZW5kaWYKICAgICBsZXQgJmw6cGF0aCA9IGVzY2FwZShiOmdpdF9kaXIsJ1wsICcpLicsJy4mbDpwYXRoCiAgICAgbGV0ICZsOmtleXdvcmRwcmcgPSAnZ2l0IC0tZ2l0LWRpcj0nLnNoZWxsZXNjYXBlKGI6Z2l0X2RpcikuJyBzaG93JwpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9ncGcudmltIGIvcnVudGltZS9mdHBsdWdpbi9ncGcudmltCmluZGV4IGQ0YmVkMTQuLjVjYWExZjYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vZ3BnLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2dwZy52aW0KQEAgLTEsMTMgKzEsMTkgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGdwZygxKSBjb25maWd1cmF0aW9uIGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2dyb3VwLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vZ3JvdXAudmltCmluZGV4IDQ0N2JhMTguLmVlZjNjZDYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vZ3JvdXAudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vZ3JvdXAudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBncm91cCg1KSB1c2VyIGdyb3VwIGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz0gY29tbWVudHN0cmluZz0gZm9ybWF0b3B0aW9ucy09dGNyb3EgZm9ybWF0b3B0aW9ucys9bAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vZ3J1Yi52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2dydWIudmltCmluZGV4IDE2MmZjZDMuLjIxYzRlMzYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vZ3J1Yi52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9ncnViLnZpbQpAQCAtMSwxMyArMSwxOSBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgZ3J1Yig4KSBjb25maWd1cmF0aW9uIGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2hhc2tlbGwudmltIGIvcnVudGltZS9mdHBsdWdpbi9oYXNrZWxsLnZpbQppbmRleCBmNWEzYTgwLi4xNDRmOWY2IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2hhc2tlbGwudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vaGFza2VsbC52aW0KQEAgLTEsMTQgKzEsMjAgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIEhhc2tlbGwKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz1zMWZsOnstLG1iOi0sZXg6LX0sOi0tIGNvbW1lbnRzdHJpbmc9LS1cICVzCiBzZXRsb2NhbCBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9oZWxwLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vaGVscC52aW0KaW5kZXggNDZjODQ0Yy4uNWM2ZGFjOCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9oZWxwLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2hlbHAudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBWaW0gaGVscCBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgZm88IHR3PCIKIAogc2V0bG9jYWwgZm9ybWF0b3B0aW9ucys9dGNyb3FsIHRleHR3aWR0aD03OAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vaG9zdGNvbmYudmltIGIvcnVudGltZS9mdHBsdWdpbi9ob3N0Y29uZi52aW0KaW5kZXggODY3OTZlYi4uNTU3ZmQ4MiAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9ob3N0Y29uZi52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9ob3N0Y29uZi52aW0KQEAgLTEsNiArMSw2IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNy0wOS0xOAorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA3LTEyLTA0CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKQEAgLTE0LDUgKzE0LDUgQEAKIAogc2V0bG9jYWwgY29tbWVudHM9OiMgY29tbWVudHN0cmluZz0jXCAlcyBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCiAKLWxldCBzOmNwb19zYXZlID0gJmNwbwotc2V0IGNwbyZ2aW0KK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9ob3N0c2FjY2Vzcy52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2hvc3RzYWNjZXNzLnZpbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMmY1NWFjCi0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9mdHBsdWdpbi9ob3N0c2FjY2Vzcy52aW0KQEAgLTAsMCArMSwxOSBAQAorIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKKyIgTGFuZ3VhZ2U6ICAgICAgICAgaG9zdHNfYWNjZXNzKDUpIGNvbnRyb2wgZmlsZQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQorCitpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKKyAgZmluaXNoCitlbmRpZgorbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQorCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKK2xldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgorCitzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2h0bWwudmltIGIvcnVudGltZS9mdHBsdWdpbi9odG1sLnZpbQppbmRleCA0Nzk3ZjRiLi42Yzg2MDdkIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2h0bWwudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vaHRtbC52aW0KQEAgLTEyLDggKzEyLDE0IEBACiBsZXQgczpzYXZlX2NwbyA9ICZjcG8KIHNldCBjcG8tPUMKIAotc2V0bG9jYWwgY29tbWVudHN0cmluZz08IS0tJXMtLT4KIHNldGxvY2FsIG1hdGNocGFpcnMrPTw6Pgorc2V0bG9jYWwgY29tbWVudHN0cmluZz08IS0tJXMtLT4KK3NldGxvY2FsIGNvbW1lbnRzPXM6PCEtLSxtOlwgXCBcIFwgLGU6LS0+CisKK2lmIGV4aXN0cygiZzpmdF9odG1sX2F1dG9jb21tZW50IikgJiYgKGc6ZnRfaHRtbF9hdXRvY29tbWVudCA9PSAxKQorICAgIHNldGxvY2FsIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKK2VuZGlmCisKIAogaWYgZXhpc3RzKCcmb21uaWZ1bmMnKQogICAgICIgRGlzdGluZ3Vpc2ggYmV0d2VlbiBIVE1MIHZlcnNpb25zCkBAIC03Nyw3ICs4Myw3IEBACiBlbmRpZgogCiAiIFVuZG8gdGhlIHN0dWZmIHdlIGNoYW5nZWQuCi1sZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGxvY2FsIGNvbW1lbnRzdHJpbmc8IG1hdGNocGFpcnM8IG9tbmlmdW5jPCIKK2xldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bG9jYWwgY29tbWVudHN0cmluZzwgbWF0Y2hwYWlyczwgb21uaWZ1bmM8IGNvbW1lbnRzPCBmb3JtYXRvcHRpb25zPCIgLgogICAgIFwJIiB8IHVubGV0ISBiOm1hdGNoX2lnbm9yZWNhc2UgYjptYXRjaF9za2lwIGI6bWF0Y2hfd29yZHMgYjpicm93c2VmaWx0ZXIiCiAKICIgUmVzdG9yZSB0aGUgc2F2ZWQgY29tcGF0aWJpbGl0eSBvcHRpb25zLgpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9pbmRlbnQudmltIGIvcnVudGltZS9mdHBsdWdpbi9pbmRlbnQudmltCmluZGV4IDIwNDdiMWQuLjBlMTk1YjAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vaW5kZW50LnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2luZGVudC52aW0KQEAgLTEsMTQgKzEsMjAgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGluZGVudCgxKSBjb25maWd1cmF0aW9uIGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz1zMTovKixtYjoqLGV4OiovIGNvbW1lbnRzdHJpbmcmCiBzZXRsb2NhbCBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9rY29uZmlnLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4va2NvbmZpZy52aW0KaW5kZXggYmI5MzIxOC4uMWIxMGM4NiAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9rY29uZmlnLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2tjb25maWcudmltCkBAIC0xLDEyICsxLDE4IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xMAorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbGQudmltIGIvcnVudGltZS9mdHBsdWdpbi9sZC52aW0KaW5kZXggNTQ0ZmMwZC4uMzFjZTVjOSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9sZC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9sZC52aW0KQEAgLTEsMTQgKzEsMjAgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGxkKDEpIHNjcmlwdAogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBpbmM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9czE6LyosbWI6KixleDoqLyBjb21tZW50c3RyaW5nPS8qJXMqLyBpbmNsdWRlPV5cXHMqSU5DTFVERQogc2V0bG9jYWwgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbGZ0cC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2xmdHAudmltCmluZGV4IGU4MTY4NGMuLjllMmVlYjUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vbGZ0cC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9sZnRwLnZpbQpAQCAtMSwxMyArMSwxOSBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgbGZ0cCgxKSBjb25maWd1cmF0aW9uIGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2xpYmFvLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vbGliYW8udmltCmluZGV4IDg4NDViMTcuLjM4YmQzZGUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vbGliYW8udmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vbGliYW8udmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBsaWJhby5jb25mKDUpIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbGltaXRzLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vbGltaXRzLnZpbQppbmRleCA2YjE4YzgzLi5jZDViN2I1IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2xpbWl0cy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9saW1pdHMudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBsaW1pdHMoNSkgY29uZmlndXJhdGlvbiBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9OiMgY29tbWVudHN0cmluZz0jXCAlcyBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9sb2dpbmFjY2Vzcy52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2xvZ2luYWNjZXNzLnZpbQppbmRleCBjNWNiMWIxLi43YzQ0Zjk3IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2xvZ2luYWNjZXNzLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2xvZ2luYWNjZXNzLnZpbQpAQCAtMSwxMyArMSwxOSBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgbG9naW4uYWNjZXNzKDUpIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbG9naW5kZWZzLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vbG9naW5kZWZzLnZpbQppbmRleCA0MzE3NTVlLi42NjhkMDhhIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2xvZ2luZGVmcy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9sb2dpbmRlZnMudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBsb2dpbi5kZWZzKDUpIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbTQudmltIGIvcnVudGltZS9mdHBsdWdpbi9tNC52aW0KaW5kZXggODcwMjU4NC4uMGZmZTBhYyAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9tNC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9tNC52aW0KQEAgLTEsMTQgKzEsMjAgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIG00CiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9OiMsOmRubCBjb21tZW50c3RyaW5nPWRubFwgJXMKIHNldGxvY2FsIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL21haWxhbGlhc2VzLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vbWFpbGFsaWFzZXMudmltCmluZGV4IGY1MjU4M2YuLjFiMTBjODYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vbWFpbGFsaWFzZXMudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vbWFpbGFsaWFzZXMudmltCkBAIC0xLDEyICsxLDE4IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wMy0yNworIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbWFpbGNhcC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL21haWxjYXAudmltCmluZGV4IGRmNGU5OTQuLmY0YzhjMjMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vbWFpbGNhcC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9tYWlsY2FwLnZpbQpAQCAtMSwxMyArMSwxOSBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgTWFpbGNhcCBjb25maWd1cmF0aW9uIGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL21hbmNvbmYudmltIGIvcnVudGltZS9mdHBsdWdpbi9tYW5jb25mLnZpbQppbmRleCA2OWNmNmY1Li5hMjQ5YTk3IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL21hbmNvbmYudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vbWFuY29uZi52aW0KQEAgLTEsMTMgKzEsMTkgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIG1hbi5jb25mKDUpIC0gbWFuIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbWYudmltIGIvcnVudGltZS9mdHBsdWdpbi9tZi52aW0KaW5kZXggZTM1MWExMy4uZmQxZDNjZSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9tZi52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9tZi52aW0KQEAgLTEsMTQgKzEsMTkgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIE1ldGFGb250CiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9OiUgY29tbWVudHN0cmluZz0lXCAlcyBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCiAKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9tb2Rjb25mLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vbW9kY29uZi52aW0KaW5kZXggOTcxMDJhMS4uZjIwMGU5ZiAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9tb2Rjb25mLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL21vZGNvbmYudmltCkBAIC0xLDE0ICsxLDIwIEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBtb2R1bGVzLmNvbmYoNSkgY29uZmlndXJhdGlvbiBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGluYzwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGluY2x1ZGU9XlxccyppbmNsdWRlCiBzZXRsb2NhbCBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9tcC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL21wLnZpbQppbmRleCAzNzA5NzgyLi4zMTZmYTliIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL21wLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL21wLnZpbQpAQCAtMSwxMyArMSwxNiBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgTWV0YVBvc3QKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDctMDQKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06JSBjb21tZW50c3RyaW5nPSVcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKQEAgLTIwLDMgKzIzLDYgQEAKICAgICBnL15iZWdpbmZpZyhcZCopOyQvcy8vXD0nYmVnaW5maWcoJy5pLicpOycvIHwgbGV0IGkgPSBpICsgMQogICBlbmRmdW5jdGlvbgogZW5kaWYKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL21wbGF5ZXJjb25mLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vbXBsYXllcmNvbmYudmltCmluZGV4IGU0MTA2NjcuLjY1MDM0YTggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vbXBsYXllcmNvbmYudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vbXBsYXllcmNvbmYudmltCkBAIC0xLDE0ICsxLDIwIEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBtcGxheWVyKDEpIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBpbmM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9OiMgY29tbWVudHN0cmluZz0jXCAlcyBpbmNsdWRlPV5cXHMqaW5jbHVkZQogc2V0bG9jYWwgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbXV0dHJjLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vbXV0dHJjLnZpbQppbmRleCAxOGIwNmQ4Li5hMTA5ZTVkIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL211dHRyYy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9tdXR0cmMudmltCkBAIC04LDkgKzgsMTUgQEAKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBpbmM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9OiMgY29tbWVudHN0cmluZz0jXCAlcwogc2V0bG9jYWwgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAogCiBsZXQgJmw6aW5jbHVkZSA9ICdeXHMqc291cmNlXD4nCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9uYW5vcmMudmltIGIvcnVudGltZS9mdHBsdWdpbi9uYW5vcmMudmltCmluZGV4IDY3YTJhNDguLmJlMjBkMTIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vbmFub3JjLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL25hbm9yYy52aW0KQEAgLTEsMTMgKzEsMTkgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIG5hbm9yYyg1KSAtIEdOVSBuYW5vIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbmV0cmMudmltIGIvcnVudGltZS9mdHBsdWdpbi9uZXRyYy52aW0KaW5kZXggMGY5NDE3YS4uMTA1YTFkMyAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9uZXRyYy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9uZXRyYy52aW0KQEAgLTEsMTMgKzEsMTkgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIG5ldHJjKDUpIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPSBjb21tZW50c3RyaW5nPSBmb3JtYXRvcHRpb25zLT10Y3JvcSBmb3JtYXRvcHRpb25zKz1sCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9uc2lzLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vbnNpcy52aW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWNjMjYyMAotLS0gL2Rldi9udWxsCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vbnNpcy52aW0KQEAgLTAsMCArMSwyMiBAQAorIiBWaW0gZnRwbHVnaW4gZmlsZQorIiBMYW5ndWFnZTogICAgICAgICBOU0lTIHNjcmlwdAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQorCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKK2lmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQorICBmaW5pc2gKK2VuZGlmCitsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCisKK2xldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IGRlZjwgaW5jPCIKKworc2V0bG9jYWwgY29tbWVudHM9czE6LyosbWI6KixleDoqLyxiOiMsOjsgY29tbWVudHN0cmluZz07XCAlcworc2V0bG9jYWwgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorc2V0bG9jYWwgZGVmaW5lPV5cXHMqIWRlZmluZVxcJShcXCUodXRjXFwpXFw9ZGF0ZVxcfG1hdGhcXClcXD0KK3NldGxvY2FsIGluY2x1ZGU9XlxccyohaW5jbHVkZVxcJSgvTk9ORkFUQUxcXClcXD0KKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL29jYW1sLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vb2NhbWwudmltCmluZGV4IDUzNDMxYzkuLjdhY2Y0OTMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vb2NhbWwudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vb2NhbWwudmltCkBAIC01LDcgKzUsOCBAQAogIiAgICAgICAgICAgICAgU3RlZmFubyBaYWNjaGlyb2xpICA8emFja0Bib25vbmlhLml0PgogIiAgICAgICAgICAgICAgVmluY2VudCBBcmF2YW50aW5vcyA8Zmlyc3RuYW1lLm5hbWVAaW1hZy5mcj4KICIgVVJMOiAgICAgICAgIGh0dHA6Ly93d3cub2NhbWwuaW5mby92aW0vZnRwbHVnaW4vb2NhbWwudmltCi0iIExhc3QgQ2hhbmdlOiAyMDA3IFNlcCAwOSAtIEFkZGVkIC5hbm5vdCBzdXBwb3J0IGZvciBvY2FtbGJ1aWxkLCBweXRob24gbm90IAorIiBMYXN0IENoYW5nZTogMjAwOCBKdWwgMTcgLSBCdWdmaXggcmVsYXRlZCB0byBmbmFtZWVzY2FwZSAoVkEpCisiICAgICAgICAgICAgICAyMDA3IFNlcCAwOSAtIEFkZGVkIC5hbm5vdCBzdXBwb3J0IGZvciBvY2FtbGJ1aWxkLCBweXRob24gbm90IAogIiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZWVkZWQgYW55bW9yZSAoVkEpCiAiICAgICAgICAgICAgICAyMDA2IE1heSAwMSAtIEFkZGVkIC5hbm5vdCBzdXBwb3J0IGZvciBmaWxlLndoYXRldmVyZXh0IChTWikKICIJICAgICAgICAgICAgIDIwMDYgQXByIDExIC0gRml4ZWQgYW4gaW5pdGlhbGl6YXRpb24gYnVnOyBmaXhlZCBBU1MgYWJicmV2IChNTSkKQEAgLTE2LDYgKzE3LDE3IEBACiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luPTEKIAorIiBzb21lIG1hY3JvCitpZiBleGlzdHMoJypmbmFtZWVzY2FwZScpCisgIGZ1bmN0aW9uISBzOkZuYW1lZXNjYXBlKHMpCisgICAgcmV0dXJuIGZuYW1lZXNjYXBlKGE6cykKKyAgZW5kZnVuCitlbHNlCisgIGZ1bmN0aW9uISBzOkZuYW1lZXNjYXBlKHMpCisgICAgcmV0dXJuIGVzY2FwZShhOnMsIiBcdFxuKj9be2AkXFwlIydcInwhPCIpCisgIGVuZGZ1bgorZW5kaWYKKwogIiBFcnJvciBoYW5kbGluZyAtLSBoZWxwcyBtb3Zpbmcgd2hlcmUgdGhlIGNvbXBpbGVyIHdhbnRzIHlvdSB0byBnbwogbGV0IHM6Y3Bvc2V0PSZjcG9wdGlvbnMKIHNldCBjcG8tPUMKQEAgLTcxLDE0ICs4MywxNCBAQAogICBtYXAgPExvY2FsTGVhZGVyPlMgOmNhbGwgT0NhbWxfc3dpdGNoKDEpPENSPgogICBmdW4gT0NhbWxfc3dpdGNoKG5ld3dpbikKICAgICBpZiAobWF0Y2goYnVmbmFtZSgiIiksICJcXC5tbGkkIikgPj0gMCkKLSAgICAgIGxldCBmbmFtZSA9IHN1YnN0aXR1dGUoYnVmbmFtZSgiIiksICJcXC5tbGkkIiwgIi5tbCIsICIiKQorICAgICAgbGV0IGZuYW1lID0gczpGbmFtZWVzY2FwZShzdWJzdGl0dXRlKGJ1Zm5hbWUoIiIpLCAiXFwubWxpJCIsICIubWwiLCAiIikpCiAgICAgICBpZiAoYTpuZXd3aW4gPT0gMSkKICAgICAgICAgZXhlYyAibmV3ICIgLiBmbmFtZQogICAgICAgZWxzZQogICAgICAgICBleGVjICJhcmdlICIgLiBmbmFtZQogICAgICAgZW5kaWYKICAgICBlbHNlaWYgKG1hdGNoKGJ1Zm5hbWUoIiIpLCAiXFwubWwkIikgPj0gMCkKLSAgICAgIGxldCBmbmFtZSA9IGJ1Zm5hbWUoIiIpIC4gImkiCisgICAgICBsZXQgZm5hbWUgPSBzOkZuYW1lZXNjYXBlKGJ1Zm5hbWUoIiIpKSAuICJpIgogICAgICAgaWYgKGE6bmV3d2luID09IDEpCiAgICAgICAgIGV4ZWMgIm5ldyAiIC4gZm5hbWUKICAgICAgIGVsc2UKQEAgLTI2MCw2ICsyNzIsNyBAQAogICAiICAgICAgRm9yIHRoZSBtb21lbnQsIHRoZSBvbmx5IHBvc3NpYmxlIGtleXdvcmQgaXMgXCJ0eXBlXCIuIgogICAiID4+CiAKKwogIiAxLiBGaW5kaW5nIHRoZSBhbm5vdGF0aW9uIGZpbGUgZXZlbiBpZiB3ZSB1c2Ugb2NhbWxidWlsZAogCiAgICAgIiBJbjogIHR3byBzdHJpbmdzIHJlcHJlc2VudGluZyBwYXRocwpAQCAtMjg2LDE2ICsyOTksMTYgQEAKICAgZnVuY3Rpb24hIHM6TG9jYXRlX2Fubm90YXRpb24oKQogICAgIGlmICFiOmFubm90YXRpb25fZmlsZV9sb2NhdGVkCiAKLSAgICAgIHNpbGVudCBleGUgJ2NkJyBleHBhbmQoJyU6cDpoJykKKyAgICAgIHNpbGVudCBleGUgJ2NkJyBzOkZuYW1lZXNjYXBlKGV4cGFuZCgnJTpwOmgnKSkKIAotICAgICAgbGV0IGFubm90X2ZpbGVfbmFtZSA9IGV4cGFuZCgnJTpyJykuJy5hbm5vdCcKKyAgICAgIGxldCBhbm5vdF9maWxlX25hbWUgPSBzOkZuYW1lZXNjYXBlKGV4cGFuZCgnJTpyJykpLicuYW5ub3QnCiAKICAgICAgICIgMXN0IGNhc2UgOiB0aGUgYW5ub3QgZmlsZSBpcyBpbiB0aGUgc2FtZSBkaXJlY3RvcnkgYXMgdGhlIGJ1ZmZlciAobm8gb2NhbWxidWlsZCkKICAgICAgIGxldCBiOmFubm90X2ZpbGVfcGF0aCA9IGZpbmRmaWxlKGFubm90X2ZpbGVfbmFtZSwnLicpCiAgICAgICBpZiBiOmFubm90X2ZpbGVfcGF0aCAhPSAnJwogICAgICAgICBsZXQgYjphbm5vdF9maWxlX3BhdGggPSBnZXRjd2QoKS4nLycuYjphbm5vdF9maWxlX3BhdGgKICAgICAgICAgbGV0IGI6X2J1aWxkX3BhdGggPSAnJwotICAgICAgICBsZXQgYjpzb3VyY2VfZmlsZV9yZWxhdGl2ZV9wYXRoID0gZXhwYW5kKCclJykKKyAgICAgICAgbGV0IGI6c291cmNlX2ZpbGVfcmVsYXRpdmVfcGF0aCA9IHM6Rm5hbWVlc2NhcGUoZXhwYW5kKCclJykpCiAgICAgICBlbHNlCiAgICAgICAgICIgMm5kIGNhc2UgOiB0aGUgYnVmZmVyIGFuZCB0aGUgX2J1aWxkIGRpcmVjdG9yeSBhcmUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5CiAgICAgICAgICIgICAgICAuLgpAQCAtMzEwLDcgKzMyMyw3IEBACiAgICAgICAgICAgaWYgYjphbm5vdF9maWxlX3BhdGggIT0gJycKICAgICAgICAgICAgIGxldCBiOmFubm90X2ZpbGVfcGF0aCA9IGdldGN3ZCgpLicvJy5iOmFubm90X2ZpbGVfcGF0aAogICAgICAgICAgIGVuZGlmCi0gICAgICAgICAgbGV0IGI6c291cmNlX2ZpbGVfcmVsYXRpdmVfcGF0aCA9IGV4cGFuZCgnJScpCisgICAgICAgICAgbGV0IGI6c291cmNlX2ZpbGVfcmVsYXRpdmVfcGF0aCA9IHM6Rm5hbWVlc2NhcGUoZXhwYW5kKCclJykpCiAgICAgICAgIGVsc2UKICAgICAgICAgICAiIDNyZCBjYXNlIDogdGhlIF9idWlsZCBkaXJlY3RvcnkgaXMgaW4gYSBkaXJlY3RvcnkgaGlnaGVyIGluIHRoZSBmaWxlIGhpZXJhcmNoeSAKICAgICAgICAgICAiICAgICAgICAgICAgKGl0IGNhbid0IGJlIGRlZXBlciBieSBvY2FtbGJ1aWxkIHJlcXVpcmVtZW50cykKQEAgLTMyNSw5ICszMzgsOSBAQAogICAgICAgICAgIGxldCBiOl9idWlsZF9wYXRoID0gZmluZGRpcignX2J1aWxkJywnOycpCiAgICAgICAgICAgaWYgYjpfYnVpbGRfcGF0aCAhPSAnJwogICAgICAgICAgICAgbGV0IHByb2plY3RfcGF0aCAgICAgICAgICAgICAgICA9IHN1YnN0aXR1dGUoYjpfYnVpbGRfcGF0aCwnL19idWlsZCQnLCcnLCcnKQotICAgICAgICAgICAgbGV0IHBhdGhfcmVsYXRpdmVfdG9fcHJvamVjdCAgICA9IHN1YnN0aXR1dGUoZXhwYW5kKCclOnA6aCcpLHByb2plY3RfcGF0aC4nLycsJycsJycpCisgICAgICAgICAgICBsZXQgcGF0aF9yZWxhdGl2ZV90b19wcm9qZWN0ICAgID0gczpGbmFtZWVzY2FwZShzdWJzdGl0dXRlKGV4cGFuZCgnJTpwOmgnKSxwcm9qZWN0X3BhdGguJy8nLCcnLCcnKSkKICAgICAgICAgICAgIGxldCBiOmFubm90X2ZpbGVfcGF0aCAgICAgICAgICAgPSBmaW5kZmlsZShhbm5vdF9maWxlX25hbWUscHJvamVjdF9wYXRoLicvX2J1aWxkLycucGF0aF9yZWxhdGl2ZV90b19wcm9qZWN0KQotICAgICAgICAgICAgbGV0IGI6c291cmNlX2ZpbGVfcmVsYXRpdmVfcGF0aCA9IHN1YnN0aXR1dGUoZXhwYW5kKCclOnAnKSxwcm9qZWN0X3BhdGguJy8nLCcnLCcnKQorICAgICAgICAgICAgbGV0IGI6c291cmNlX2ZpbGVfcmVsYXRpdmVfcGF0aCA9IHM6Rm5hbWVlc2NhcGUoc3Vic3RpdHV0ZShleHBhbmQoJyU6cCcpLHByb2plY3RfcGF0aC4nLycsJycsJycpKQogICAgICAgICAgIGVsc2UKICAgICAgICAgICAgIGxldCBiOmFubm90X2ZpbGVfcGF0aCA9IGZpbmRmaWxlKGFubm90X2ZpbGVfbmFtZSwnKionKQogICAgICAgICAgICAgIjR0aCBjYXNlIDogd2hhdCBpZiB0aGUgdXNlciBkZWNpZGVkIHRvIGNoYW5nZSB0aGUgbmFtZSBvZiB0aGUgX2J1aWxkIGRpcmVjdG9yeSA/CkBAIC0zMzksNyArMzUyLDcgQEAKICAgICAgICAgICAgICAgICBsZXQgYjphbm5vdF9maWxlX3BhdGggPSBnZXRjd2QoKS4nLycuYjphbm5vdF9maWxlX3BhdGgKICAgICAgICAgICAgICAgICBsZXQgYjpfYnVpbGRfcGF0aCAgICAgPSBnZXRjd2QoKS4nLycuYjpfYnVpbGRfcGF0aAogICAgICAgICAgICAgICBlbmRpZgotICAgICAgICAgICAgICBsZXQgYjpzb3VyY2VfZmlsZV9yZWxhdGl2ZV9wYXRoID0gZXhwYW5kKCclJykKKyAgICAgICAgICAgICAgbGV0IGI6c291cmNlX2ZpbGVfcmVsYXRpdmVfcGF0aCA9IHM6Rm5hbWVlc2NhcGUoZXhwYW5kKCclJykpCiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICIgNGIuIGFuYXJjaHkgOiB0aGUgcmVuYW1lZCBfYnVpbGQgZGlyZWN0b3J5IG1heSBiZSBoaWdoZXIgaW4gdGhlIGhpZXJhcmNoeQogICAgICAgICAgICAgICAiIHRoaXMgd2lsbCB3b3JrIGlmIHRoZSBmaWxlIGZvciB3aGljaCB3ZSBhcmUgbG9va2luZyBhbm5vdGF0aW9ucyBoYXMgYSB1bmlxdWUgbmFtZSBpbiB0aGUgd2hvbGUgcHJvamVjdApAQCAtMzgwLDE2ICszOTMsMTYgQEAKICAgICAgIHNldCBoaWRkZW4KICAgICAgIGxldCBzOmN1cnJlbnRfYnVmID0gYnVmbmFtZSgnJScpCiAgICAgICBpZiBidWZsb2FkZWQoYjphbm5vdF9maWxlX3BhdGgpCi0gICAgICAgIHNpbGVudCBleGUgJ2tlZXBqIGtlZXBhbHQnICdidWZmZXInIGI6YW5ub3RfZmlsZV9wYXRoCisgICAgICAgIHNpbGVudCBleGUgJ2tlZXBqIGtlZXBhbHQnICdidWZmZXInIHM6Rm5hbWVlc2NhcGUoYjphbm5vdF9maWxlX3BhdGgpCiAgICAgICBlbHNlCi0gICAgICAgIHNpbGVudCBleGUgJ2tlZXBqIGtlZXBhbHQnICd2aWV3JyBiOmFubm90X2ZpbGVfcGF0aAorICAgICAgICBzaWxlbnQgZXhlICdrZWVwaiBrZWVwYWx0JyAndmlldycgczpGbmFtZWVzY2FwZShiOmFubm90X2ZpbGVfcGF0aCkKICAgICAgIGVuZGlmCiAgICAgZW5kZnVuCiAKICAgICAgICIgQWZ0ZXIgY2FsbDoKICAgICAgICIgICBUaGUgb3JpZ2luYWwgYnVmZmVyIGhhcyBiZWVuIHJlc3RvcmVkIGluIHRoZSBleGFjdCBzYW1lIHN0YXRlIGFzIGJlZm9yZS4KICAgICBmdW5jdGlvbiEgczpFeGl0X2Fubm90YXRpb25fYnVmZmVyKCkKLSAgICAgIHNpbGVudCBleGUgJ2tlZXBqIGtlZXBhbHQnICdidWZmZXInIHM6Y3VycmVudF9idWYKKyAgICAgIHNpbGVudCBleGUgJ2tlZXBqIGtlZXBhbHQnICdidWZmZXInIHM6Rm5hbWVlc2NhcGUoczpjdXJyZW50X2J1ZikKICAgICAgIGxldCAmbDpoaWRkZW4gPSBzOmN1cnJlbnRfaGlkZGVuCiAgICAgICBjYWxsIHNldHBvcygnLicsczpjdXJyZW50X3BvcykKICAgICBlbmRmdW4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vcGFtY29uZi52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3BhbWNvbmYudmltCmluZGV4IGNmOTcwN2EuLjk2ZDk2NDYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vcGFtY29uZi52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9wYW1jb25mLnZpbQpAQCAtMSwxMyArMSwxOSBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgcGFtKDgpIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vcGFzc3dkLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vcGFzc3dkLnZpbQppbmRleCAyMGYyYjdmLi41MDg4YzQzIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3Bhc3N3ZC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9wYXNzd2QudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBwYXNzd2QoNSkgcGFzc3dvcmQgZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPSBjb21tZW50c3RyaW5nPSBmb3JtYXRvcHRpb25zLT10Y3JvcSBmb3JtYXRvcHRpb25zKz1sCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9wZXJsLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vcGVybC52aW0KaW5kZXggM2YzZTU3MC4uMzc3MTAwNSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9wZXJsLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3BlcmwudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6CVBlcmwKICIgTWFpbnRhaW5lcjoJRGFuIFNoYXJwIDxkd3NoYXJwIGF0IGhvdG1haWwgZG90IGNvbT4KLSIgTGFzdCBDaGFuZ2U6ICAyMDA3IE5vdiAzMAorIiBMYXN0IENoYW5nZTogIDE3IEp1bCAyMDA4CiAiIFVSTDoJCWh0dHA6Ly9teXdlYnBhZ2UubmV0c2NhcGUuY29tL3NoYXJwcGVvcGxlL3ZpbS9mdHBsdWdpbgogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikgfCBmaW5pc2ggfCBlbmRpZgpAQCAtMTMsNiArMTMsNyBAQAogc2V0IGNwby09QwogCiBzZXRsb2NhbCBmb3JtYXRvcHRpb25zKz1jcnEKK3NldGxvY2FsIGtleXdvcmRwcmc9cGVybGRvY1wgLWYKIAogc2V0bG9jYWwgY29tbWVudHM9OiMKIHNldGxvY2FsIGNvbW1lbnRzdHJpbmc9IyVzCkBAIC02Myw3ICs2NCw3IEBACiAiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKICIgVW5kbyB0aGUgc3R1ZmYgd2UgY2hhbmdlZC4KLWxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bG9jYWwgZm88IGNvbTwgY21zPCBpbmM8IGluZXg8IGRlZjwgaXNmPCIgLgorbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsb2NhbCBmbzwgY29tPCBjbXM8IGluYzwgaW5leDwgZGVmPCBpc2Y8IGtwPCIgLgogCSAgICBcCSAgICAgICIgfCB1bmxldCEgYjpicm93c2VmaWx0ZXIiCiAKICIgUmVzdG9yZSB0aGUgc2F2ZWQgY29tcGF0aWJpbGl0eSBvcHRpb25zLgpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9waW5mby52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3BpbmZvLnZpbQppbmRleCA3ZjFlY2RmLi42ZWMxZjg3IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3BpbmZvLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3BpbmZvLnZpbQpAQCAtMSwxMyArMSwxOSBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgcGluZm8oMSkgY29uZmlndXJhdGlvbiBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9OiMgY29tbWVudHN0cmluZz0jXCAlcyBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9wcm9jbWFpbC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3Byb2NtYWlsLnZpbQppbmRleCBhOGRiNThlLi5jYzJjZWVkIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3Byb2NtYWlsLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3Byb2NtYWlsLnZpbQpAQCAtMSwxNSArMSwyMSBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgcHJvY21haWwoMSkgY29uZmlndXJhdGlvbiBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGluYzwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKIAogbGV0ICZsOmluY2x1ZGUgPSAnXlxzKklOQ0xVREVSQ1w+JworCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vcHJvbG9nLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vcHJvbG9nLnZpbQppbmRleCBjZjE5MWE5Li5jYWViNTc0IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3Byb2xvZy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9wcm9sb2cudmltCkBAIC0xLDE0ICsxLDIwIEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBQcm9sb2cKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz1zMTovKixtYjoqLGV4OiovLDolIGNvbW1lbnRzdHJpbmc9JVwgJXMKIHNldGxvY2FsIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3Byb3RvY29scy52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3Byb3RvY29scy52aW0KaW5kZXggYjM2NzliZC4uMjQ4NmZmOSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9wcm90b2NvbHMudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vcHJvdG9jb2xzLnZpbQpAQCAtMSwxMyArMSwxOSBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgcHJvdG9jb2xzKDUpIC0gSW50ZXJuZXQgcHJvdG9jb2xzIGRlZmluaXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vcXVha2UudmltIGIvcnVudGltZS9mdHBsdWdpbi9xdWFrZS52aW0KaW5kZXggMjVjNmU3ZS4uZjYyNjkzYiAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9xdWFrZS52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9xdWFrZS52aW0KQEAgLTEsMTMgKzEsMTkgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFF1YWtlWzEtM10gY29uZmlndXJhdGlvbiBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9Oi8vIGNvbW1lbnRzdHJpbmc9Ly9cICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3JhY2MudmltIGIvcnVudGltZS9mdHBsdWdpbi9yYWNjLnZpbQppbmRleCA3MmMxZTE0Li43ZmYyMmY4IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3JhY2MudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vcmFjYy52aW0KQEAgLTEsMTQgKzEsMjAgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFJhY2MgaW5wdXQgZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPXMxOi8qLG1iOiosZXg6Ki8sOiMgY29tbWVudHN0cmluZz0jXCAlcwogc2V0bG9jYWwgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vcmVhZGxpbmUudmltIGIvcnVudGltZS9mdHBsdWdpbi9yZWFkbGluZS52aW0KaW5kZXggOTY1NmM1Ny4uMGE0ZGJiNSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9yZWFkbGluZS52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9yZWFkbGluZS52aW0KQEAgLTEsMTMgKzEsMTkgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHJlYWRsaW5lKDMpIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vcm5jLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vcm5jLnZpbQppbmRleCBhNWQyMWZiLi4yYjhmZDUwIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3JuYy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9ybmMudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBSZWxheCBORyBjb21wYWN0IHN5bnRheAogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vcnN0LnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vcnN0LnZpbQppbmRleCA4ZmMyNWU5Li5iODcxY2YxIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3JzdC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9yc3QudmltCkBAIC0xLDE0ICsxLDIwIEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICByZVN0cnVjdHVyZWRUZXh0IGRvY3VtZW50YXRpb24gZm9ybWF0CiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGV0PCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPWZiOi4uIGNvbW1lbnRzdHJpbmc9Li5cICVzIGV4cGFuZHRhYgogc2V0bG9jYWwgZm9ybWF0b3B0aW9ucys9dGNyb3FsCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9zY3JlZW4udmltIGIvcnVudGltZS9mdHBsdWdpbi9zY3JlZW4udmltCmluZGV4IDkyY2U0NzUuLjk1YzM4NDkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vc2NyZWVuLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3NjcmVlbi52aW0KQEAgLTEsMTMgKzEsMTkgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHNjcmVlbigxKSBjb25maWd1cmF0aW9uIGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3NlbnNvcnMudmltIGIvcnVudGltZS9mdHBsdWdpbi9zZW5zb3JzLnZpbQppbmRleCBlMWY2NmZjLi44MTNkMTRjIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3NlbnNvcnMudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vc2Vuc29ycy52aW0KQEAgLTEsMTMgKzEsMTkgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHNlbnNvcnMuY29uZig1KSAtIGxpYnNlbnNvcnMgY29uZmlndXJhdGlvbiBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9OiMgY29tbWVudHN0cmluZz0jXCAlcyBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9zZXJ2aWNlcy52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3NlcnZpY2VzLnZpbQppbmRleCBkNjcwY2Q5Li5kMzQzNDllIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3NlcnZpY2VzLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3NlcnZpY2VzLnZpbQpAQCAtMSwxMyArMSwxOSBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgc2VydmljZXMoNSkgLSBJbnRlcm5ldCBuZXR3b3JrIHNlcnZpY2VzIGxpc3QKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3NldHNlcmlhbC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3NldHNlcmlhbC52aW0KaW5kZXggNGI0Nzk2Yi4uZjlkNTk0NSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9zZXRzZXJpYWwudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vc2V0c2VyaWFsLnZpbQpAQCAtMSwxMyArMSwxOSBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgc2V0c2VyaWFsKDgpIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vc2lldmUudmltIGIvcnVudGltZS9mdHBsdWdpbi9zaWV2ZS52aW0KaW5kZXggZDkwNmUxOS4uOWE4NzU5YyAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9zaWV2ZS52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9zaWV2ZS52aW0KQEAgLTEsMTQgKzEsMjAgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFNpZXZlIGZpbHRlcmluZyBsYW5ndWFnZSBpbnB1dCBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9czE6LyosbWI6KixleDoqLyw6IyBjb21tZW50c3RyaW5nPSNcICVzCiBzZXRsb2NhbCBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9zbHBjb25mLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vc2xwY29uZi52aW0KaW5kZXggOGM5MmE1NS4uMGM0NTY4OSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9zbHBjb25mLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3NscGNvbmYudmltCkBAIC0xLDE0ICsxLDIwIEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBSRkMgMjYxNCAtIEFuIEFQSSBmb3IgU2VydmljZSBMb2NhdGlvbiBjb25maWd1cmF0aW9uIGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06Iyw6OyBjb21tZW50c3RyaW5nPSNcICVzCiBzZXRsb2NhbCBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9zbHByZWcudmltIGIvcnVudGltZS9mdHBsdWdpbi9zbHByZWcudmltCmluZGV4IDA3ZTQyYzEuLmU5ZDUzM2UgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vc2xwcmVnLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3NscHJlZy52aW0KQEAgLTEsMTQgKzEsMjAgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFJGQyAyNjE0IC0gQW4gQVBJIGZvciBTZXJ2aWNlIExvY2F0aW9uIHJlZ2lzdHJhdGlvbiBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9OiMsOjsgY29tbWVudHN0cmluZz0jXCAlcwogc2V0bG9jYWwgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vc2xwc3BpLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vc2xwc3BpLnZpbQppbmRleCBkNmE2NzUxLi44ZDY0ZDQ3IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3NscHNwaS52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9zbHBzcGkudmltCkBAIC0xLDE0ICsxLDIwIEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBSRkMgMjYxNCAtIEFuIEFQSSBmb3IgU2VydmljZSBMb2NhdGlvbiBTUEkgZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojLDo7IGNvbW1lbnRzdHJpbmc9I1wgJXMKIHNldGxvY2FsIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3NzaGNvbmZpZy52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3NzaGNvbmZpZy52aW0KaW5kZXggMzU1MjY5Ni4uZjk0MGFmOSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9zc2hjb25maWcudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vc3NoY29uZmlnLnZpbQpAQCAtMSwxMyArMSwxOSBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgT3BlblNTSCBjbGllbnQgY29uZmlndXJhdGlvbiBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9OiMgY29tbWVudHN0cmluZz0jXCAlcyBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9zdWRvZXJzLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vc3Vkb2Vycy52aW0KaW5kZXggYTY5OGYwNC4uNTc1NjMwMiAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9zdWRvZXJzLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3N1ZG9lcnMudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBzdWRvZXJzKDUpIGNvbmZpZ3VyYXRpb24gZmlsZXMKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3N5c2N0bC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3N5c2N0bC52aW0KaW5kZXggNmIxYWM2Yy4uZmIxMDk4ZCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9zeXNjdGwudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vc3lzY3RsLnZpbQpAQCAtMSwxNCArMSwyMCBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgc3lzY3RsLmNvbmYoNSkgY29uZmlndXJhdGlvbiBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9OjssOiMgY29tbWVudHN0cmluZz0jXCAlcwogc2V0bG9jYWwgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vdGVybWluZm8udmltIGIvcnVudGltZS9mdHBsdWdpbi90ZXJtaW5mby52aW0KaW5kZXggYTQ3M2JjZC4uN2NlMzFkMSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi90ZXJtaW5mby52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi90ZXJtaW5mby52aW0KQEAgLTEsMTMgKzEsMTkgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHRlcm1pbmZvKDUpIGRlZmluaXRpb24KICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3VkZXZjb25mLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vdWRldmNvbmYudmltCmluZGV4IGMwYTA5ODIuLjYwNDJlMTQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vdWRldmNvbmYudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vdWRldmNvbmYudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICB1ZGV2KDgpIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vdWRldnBlcm0udmltIGIvcnVudGltZS9mdHBsdWdpbi91ZGV2cGVybS52aW0KaW5kZXggODI2MDJiMS4uZTdhZDMxZCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi91ZGV2cGVybS52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi91ZGV2cGVybS52aW0KQEAgLTEsMTMgKzEsMTkgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHVkZXYoOCkgcGVybWlzc2lvbnMgZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vdWRldnJ1bGVzLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vdWRldnJ1bGVzLnZpbQppbmRleCAzY2I0YzMzLi5iZThkNjQ2IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3VkZXZydWxlcy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi91ZGV2cnVsZXMudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICB1ZGV2KDgpIHJ1bGVzIGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3VwZGF0ZWRiLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vdXBkYXRlZGIudmltCmluZGV4IGRiMzVmZWUuLmY0ZTdiY2UgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vdXBkYXRlZGIudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vdXBkYXRlZGIudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICB1cGRhdGVkYi5jb25mKDUpIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPTojIGNvbW1lbnRzdHJpbmc9I1wgJXMgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4veGRlZmF1bHRzLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4veGRlZmF1bHRzLnZpbQppbmRleCBiNDQxZGZlLi5jZDg1MTgyIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3hkZWZhdWx0cy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi94ZGVmYXVsdHMudmltCkBAIC0xLDE0ICsxLDIwIEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBYIHJlc291cmNlcyBmaWxlcyBsaWtlIH4vLlhkZWZhdWx0cyAoeHJkYikKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgaW5jPCBmbzwiCiAKIHNldGxvY2FsIGNvbW1lbnRzPXMxOi8qLG1iOiosZXg6Ki8sOiEgY29tbWVudHN0cmluZyYgaW5jJgogc2V0bG9jYWwgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4veGY4NmNvbmYudmltIGIvcnVudGltZS9mdHBsdWdpbi94Zjg2Y29uZi52aW0KaW5kZXggMjllOWVhYy4uYWI3NTY5YSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi94Zjg2Y29uZi52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi94Zjg2Y29uZi52aW0KQEAgLTEsMTMgKzEsMTkgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFhGcmVlODYgQ29uZmlndXJhdGlvbiBGaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9OiMgY29tbWVudHN0cmluZz0jXCAlcyBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi94aW5ldGQudmltIGIvcnVudGltZS9mdHBsdWdpbi94aW5ldGQudmltCmluZGV4IGI2MmRlYzUuLmYyMDlhZjEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4veGluZXRkLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3hpbmV0ZC52aW0KQEAgLTEsMTQgKzEsMjAgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHhpbmV0ZC5jb25mKDUpIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBpbmM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9OiMgY29tbWVudHN0cmluZz0jXCAlcyBpbmNsdWRlPV5cXHMqaW5jbHVkZQogc2V0bG9jYWwgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4veG1sLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4veG1sLnZpbQppbmRleCA4Y2ZmNTM3Li41NWQ5ZWU2IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3htbC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi94bWwudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6CXhtbAogIiBNYWludGFpbmVyOglEYW4gU2hhcnAgPGR3c2hhcnAgYXQgaG90bWFpbCBkb3QgY29tPgotIiBMYXN0IENoYW5nZWQ6IDIwMDMgU2VwIDI5CisiIExhc3QgQ2hhbmdlZDogMzAgSnVuIDIwMDgKICIgVVJMOgkJaHR0cDovL215d2VicGFnZS5uZXRzY2FwZS5jb20vc2hhcnBwZW9wbGUvdmltL2Z0cGx1Z2luCiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKSB8IGZpbmlzaCB8IGVuZGlmCkBAIC0xMyw2ICsxMywxMyBAQAogc2V0IGNwby09QwogCiBzZXRsb2NhbCBjb21tZW50c3RyaW5nPTwhLS0lcy0tPgorc2V0bG9jYWwgY29tbWVudHM9czo8IS0tLG06XCBcIFwgXCBcICxlOi0tPgorCitzZXRsb2NhbCBmb3JtYXRvcHRpb25zLT10CitpZiAhZXhpc3RzKCJnOmZ0X3htbF9hdXRvY29tbWVudCIpIHx8IChnOmZ0X3htbF9hdXRvY29tbWVudCA9PSAxKQorICAgIHNldGxvY2FsIGZvcm1hdG9wdGlvbnMrPWNyb3FsCitlbmRpZgorCiAKICIgWE1MOiAgdGhhbmtzIHRvIEpvaGFubmVzIFplbGxuZXIgYW5kIEFrYmFyIElicmFoaW0KICIgLSBjYXNlIHNlbnNpdGl2ZQpAQCAtNDksNyArNTYsNyBAQAogZW5kaWYKIAogIiBVbmRvIHRoZSBzdHVmZiB3ZSBjaGFuZ2VkLgotbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsb2NhbCBjbXM8IiAuCitsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGxvY2FsIGNvbW1lbnRzdHJpbmc8IGNvbW1lbnRzPCBmb3JtYXRvcHRpb25zPCIgLgogCQlcICAgICAiIHwgdW5sZXQhIGI6bWF0Y2hfaWdub3JlY2FzZSBiOm1hdGNoX3dvcmRzIGI6YnJvd3NlZmlsdGVyIgogCiAiIFJlc3RvcmUgdGhlIHNhdmVkIGNvbXBhdGliaWxpdHkgb3B0aW9ucy4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4veG1vZG1hcC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3htb2RtYXAudmltCmluZGV4IGEwZDkxM2UuLjAyN2FlMDkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4veG1vZG1hcC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi94bW9kbWFwLnZpbQpAQCAtMSwxMyArMSwxOSBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgeG1vZG1hcCgxKSBkZWZpbml0aW9uIGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNy0wOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCiBlbmRpZgogbGV0IGI6ZGlkX2Z0cGx1Z2luID0gMQogCitsZXQgczpjcG9fc2F2ZSA9ICZjcG8KK3NldCBjcG8mdmltCisKIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGNtczwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06ISBjb21tZW50c3RyaW5nPSFcICVzIGZvcm1hdG9wdGlvbnMtPXQgZm9ybWF0b3B0aW9ucys9Y3JvcWwKKworbGV0ICZjcG8gPSBzOmNwb19zYXZlCit1bmxldCBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3lhbWwudmltIGIvcnVudGltZS9mdHBsdWdpbi95YW1sLnZpbQppbmRleCBhMjg5M2NkLi5iODg4MDNhIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3lhbWwudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4veWFtbC52aW0KQEAgLTEsMTQgKzEsMjAgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFlBTUwgKFlBTUwgQWluJ3QgTWFya3VwIExhbmd1YWdlKQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTA5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKIGVuZGlmCiBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCiAKK2xldCBzOmNwb19zYXZlID0gJmNwbworc2V0IGNwbyZ2aW0KKwogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGNvbTwgY21zPCBldDwgZm88IgogCiBzZXRsb2NhbCBjb21tZW50cz06IyBjb21tZW50c3RyaW5nPSNcICVzIGV4cGFuZHRhYgogc2V0bG9jYWwgZm9ybWF0b3B0aW9ucy09dCBmb3JtYXRvcHRpb25zKz1jcm9xbAorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4venNoLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4venNoLnZpbQppbmRleCBjOGY4MmE1Li5jNmRiNzgxIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3pzaC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi96c2gudmltCkBAIC0xLDEzICsxLDE5IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBac2ggc2hlbGwgc2NyaXB0CiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMDkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaAogZW5kaWYKIGxldCBiOmRpZF9mdHBsdWdpbiA9IDEKIAorbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGZvPCIKIAogc2V0bG9jYWwgY29tbWVudHM9OiMgY29tbWVudHN0cmluZz0jXCAlcyBmb3JtYXRvcHRpb25zLT10IGZvcm1hdG9wdGlvbnMrPWNyb3FsCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQordW5sZXQgczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvZHRkLnZpbSBiL3J1bnRpbWUvaW5kZW50L2R0ZC52aW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2MzNTExNgotLS0gL2Rldi9udWxsCisrKyBiL3J1bnRpbWUvaW5kZW50L2R0ZC52aW0KQEAgLTAsMCArMSwzMjUgQEAKKyIgVmltIGluZGVudCBmaWxlCisiIExhbmd1YWdlOgkgICAgRFREIChEb2N1bWVudCBUeXBlIERlZmluaXRpb24gZm9yIFhNTCkKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMTgKKworbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCitzZXRsb2NhbCBpbmRlbnRleHByPUdldERUREluZGVudCgpCitzZXRsb2NhbCBpbmRlbnRrZXlzPSFeRixvLE8sPgorc2V0bG9jYWwgbm9zbWFydGluZGVudAorCitpZiBleGlzdHMoIipHZXREVERJbmRlbnQiKQorICBmaW5pc2gKK2VuZGlmCisKKyIgVE9ETzogTmVlZHMgdG8gYmUgYWRqdXN0ZWQgdG8gc3RvcCBhdCBbLCA8LCBhbmQgXS4KK2xldCBzOnRva2VuX3BhdHRlcm4gPSAnXlteWzpzcGFjZTpdXVwrJworCitmdW5jdGlvbiBzOmxleDEoaW5wdXQsIHN0YXJ0LCAuLi4pCisgIGxldCBwYXR0ZXJuID0gYTowID4gMCA/IGE6MSA6IHM6dG9rZW5fcGF0dGVybgorICBsZXQgc3RhcnQgPSBtYXRjaGVuZChhOmlucHV0LCAnXlxfcyonLCBhOnN0YXJ0KQorICBpZiBzdGFydCA9PSAtMQorICAgIHJldHVybiBbIiIsIGE6c3RhcnRdCisgIGVuZGlmCisgIGxldCBlbmQgPSBtYXRjaGVuZChhOmlucHV0LCBwYXR0ZXJuLCBzdGFydCkKKyAgaWYgZW5kID09IC0xCisgICAgcmV0dXJuIFsiIiwgYTpzdGFydF0KKyAgZW5kaWYKKyAgbGV0IHRva2VuID0gc3RycGFydChhOmlucHV0LCBzdGFydCwgZW5kIC0gc3RhcnQpCisgIHJldHVybiBbdG9rZW4sIGVuZF0KK2VuZGZ1bmN0aW9uCisKK2Z1bmN0aW9uIHM6bGV4KGlucHV0LCBzdGFydCwgLi4uKQorICBsZXQgcGF0dGVybiA9IGE6MCA+IDAgPyBhOjEgOiBzOnRva2VuX3BhdHRlcm4KKyAgbGV0IGluZm8gPSBzOmxleDEoYTppbnB1dCwgYTpzdGFydCwgcGF0dGVybikKKyAgd2hpbGUgaW5mb1swXSA9PSAnLS0nCisgICAgbGV0IGluZm8gPSBzOmxleDEoYTppbnB1dCwgaW5mb1sxXSwgcGF0dGVybikKKyAgICB3aGlsZSBpbmZvWzBdICE9ICIiICYmIGluZm9bMF0gIT0gJy0tJworICAgICAgbGV0IGluZm8gPSBzOmxleDEoYTppbnB1dCwgaW5mb1sxXSwgcGF0dGVybikKKyAgICBlbmR3aGlsZQorICAgIGlmIGluZm9bMF0gPT0gIiIKKyAgICAgIHJldHVybiBpbmZvCisgICAgZW5kaWYKKyAgICBsZXQgaW5mbyA9IHM6bGV4MShhOmlucHV0LCBpbmZvWzFdLCBwYXR0ZXJuKQorICBlbmR3aGlsZQorICByZXR1cm4gaW5mbworZW5kZnVuY3Rpb24KKworZnVuY3Rpb24gczppbmRlbnRfdG9faW5uZXJtb3N0X3BhcmVudGhlc2VzKGxpbmUsIGVuZCkKKyAgbGV0IHRva2VuID0gJygnCisgIGxldCBlbmQgPSBhOmVuZAorICBsZXQgcGFyZW50aGVzZXMgPSBbZW5kIC0gMV0KKyAgd2hpbGUgdG9rZW4gIT0gIiIKKyAgICBsZXQgW3Rva2VuLCBlbmRdID0gczpsZXgoYTpsaW5lLCBlbmQsICdeXCUoWygpLHxdXHxbQS1aYS16MC05Xy1dXCtcKVs/KitdXD0nKQorICAgIGlmIHRva2VuWzBdID09ICcoJworICAgICAgY2FsbCBhZGQocGFyZW50aGVzZXMsIGVuZCAtIDEpCisgICAgZWxzZWlmIHRva2VuWzBdID09ICcpJworICAgICAgaWYgbGVuKHBhcmVudGhlc2VzKSA9PSAxCisgICAgICAgIHJldHVybiBbLTEsIGVuZF0KKyAgICAgIGVuZGlmCisgICAgICBjYWxsIHJlbW92ZShwYXJlbnRoZXNlcywgLTEpCisgICAgZW5kaWYKKyAgZW5kd2hpbGUKKyAgcmV0dXJuIFtwYXJlbnRoZXNlc1stMV0gLSBzdHJyaWR4KGE6bGluZSwgIlxuIiwgcGFyZW50aGVzZXNbLTFdKSwgZW5kXQorZW5kZnVuY3Rpb24KKworIiBUT0RPOiBMaW5lIGFuZCBlbmQgY291bGQgYmUgc2NyaXB0IGdsb2JhbCAodGhpbmsgT08gbWVtYmVycykuCitmdW5jdGlvbiBHZXREVERJbmRlbnQoKQorICBpZiB2OmxudW0gPT0gMQorICAgIHJldHVybiAwCisgIGVuZGlmCisgIAorICAiIEJlZ2luIGJ5IHNlYXJjaGluZyBiYWNrIGZvciBhIDwhIHRoYXQgaXNu4oCZdCBpbnNpZGUgYSBjb21tZW50LgorICAiIEZyb20gaGVyZSwgZGVwZW5kaW5nIG9uIHdoYXQgZm9sbG93cyBpbW1lZGlhdGVseSBhZnRlciwgcGFyc2UgdG8KKyAgIiB3aGVyZSB3ZeKAmXJlIGF0IHRvIGRldGVybWluZSB3aGF0IHRvIGRvLgorICBpZiBzZWFyY2goJzwhJywgJ2JjZVcnKSA9PSAwCisgICAgcmV0dXJuIGluZGVudCh2OmxudW0gLSAxKQorICBlbmRpZgorICBsZXQgbG51bSA9IGxpbmUoJy4nKQorICBsZXQgY29sID0gY29sKCcuJykKKyAgbGV0IGluZGVudCA9IGluZGVudCgnLicpCisgIGxldCBsaW5lID0gam9pbihnZXRsaW5lKGxudW0sIHY6bG51bSAtIDEpLCAiXG4iKQorCisgIGxldCBbZGVjbGFyYXRpb24sIGVuZF0gPSBzOmxleDEobGluZSwgY29sKQorICBpZiBkZWNsYXJhdGlvbiA9PSAiIgorICAgIHJldHVybiBpbmRlbnQgKyAmc3cKKyAgZWxzZWlmIGRlY2xhcmF0aW9uID09ICctLScKKyAgICAiIFdl4oCZcmUgbG9va2luZyBhdCBhIGNvbW1lbnQuICBOb3csIHNpbXBseSBkZXRlcm1pbmUgaWYgdGhlIGNvbW1lbnQgaXMKKyAgICAiIHRlcm1pbmF0ZWQgb3Igbm90LiAgSWYgaXQgaXNu4oCZdCwgbGV0IFZpbSB0YWtlIGNhcmUgb2YgdGhhdCB1c2luZworICAgICIgJ2NvbW1lbnRzJyBhbmQgJ2F1dG9pbmRlbnQnLiBPdGhlcndpc2UsIGluZGVudCB0byB0aGUgZmlyc3QgbGluZXMgbGV2ZWwuCisgICAgd2hpbGUgZGVjbGFyYXRpb24gIT0gIiIKKyAgICAgIGxldCBbZGVjbGFyYXRpb24sIGVuZF0gPSBzOmxleChsaW5lLCBlbmQpCisgICAgICBpZiBkZWNsYXJhdGlvbiA9PSAiLS0+IgorICAgICAgICByZXR1cm4gaW5kZW50CisgICAgICBlbmRpZgorICAgIGVuZHdoaWxlCisgICAgcmV0dXJuIC0xCisgIGVsc2VpZiBkZWNsYXJhdGlvbiA9PSAnRUxFTUVOVCcKKyAgICAiIENoZWNrIGZvciBlbGVtZW50IG5hbWUuICBJZiBub25lIGV4aXN0cywgaW5kZW50IG9uZSBsZXZlbC4KKyAgICBsZXQgW25hbWUsIGVuZF0gPSBzOmxleChsaW5lLCBlbmQpCisgICAgaWYgbmFtZSA9PSAiIgorICAgICAgcmV0dXJuIGluZGVudCArICZzdworICAgIGVuZGlmCisKKyAgICAiIENoZWNrIGZvciB0b2tlbiBmb2xsb3dpbmcgZWxlbWVudCBuYW1lLiAgVGhpcyBjYW4gYmUgYSBzcGVjaWZpY2F0aW9uIG9mCisgICAgIiB3aGV0aGVyIHRoZSBzdGFydCBvciBlbmQgdGFnIG1heSBiZSBvbWl0dGVkLiAgSWYgbm90aGluZyBpcyBmb3VuZCwgaW5kZW50CisgICAgIiBvbmUgbGV2ZWwuCisgICAgbGV0IFt0b2tlbiwgZW5kXSA9IHM6bGV4KGxpbmUsIGVuZCkKKyAgICBsZXQgbiA9IDAKKyAgICB3aGlsZSB0b2tlbiA9fiAnWy1PXScgJiYgbiA8IDIKKyAgICAgIGxldCBbdG9rZW4sIGVuZF0gPSBzOmxleChsaW5lLCBlbmQsICdeXCUoWy1PKF1cfEFOWVx8RU1QVFlcKScpCisgICAgICBsZXQgbiArPSAxCisgICAgZW5kd2hpbGUKKyAgICBpZiB0b2tlbiA9PSAiIgorICAgICAgcmV0dXJuIGluZGVudCArICZzdworICAgIGVuZGlmCisKKyAgICAiIE5leHQgY29tZXMgdGhlIGNvbnRlbnQgbW9kZWwuICBJZiB0aGUgdG9rZW4gd2XigJl2ZSBmb3VuZCBpc27igJl0IGEKKyAgICAiIHBhcmVudGhlc2lzIGl0IG11c3QgYmUgZWl0aGVyIEFOWSwgRU1QVFkgb3Igc29tZSByYW5kb20ganVuay4gIEVpdGhlcgorICAgICIgd2F5LCB3ZeKAmXJlIGRvbmUgaW5kZW50aW5nIHRoaXMgZWxlbWVudCwgc28gc2V0IGl0IHRvIHRoYXQgb2YgdGhlIGZpcnN0CisgICAgIiBsaW5lIHNvIHRoYXQgdGhlIHRlcm1pbmF0aW5nIOKAnD7igJ0gd2luZHMgdXAgaGF2aW5nIHRoZSBzYW1lIGluZGVudGlvbi4KKyAgICBpZiB0b2tlbiAhPSAnKCcKKyAgICAgIHJldHVybiBpbmRlbnQKKyAgICBlbmRpZgorCisgICAgIiBOb3cgZ28gdGhyb3VnaCB0aGUgY29udGVudCBtb2RlbC4gIFdlIG5lZWQgdG8ga2VlcCB0cmFjayBvZiB0aGUgbmVzdGluZworICAgICIgb2YgcGFyZW50aGVzZXMuICBBcyBzb29uIGFzIHdlIGhpdCAwIHdl4oCZcmUgZG9uZS4gIElmIHRoYXQgaGFwcGVucyB3ZSBtdXN0CisgICAgIiBoYXZlIGEgY29tcGxldGUgY29udGVudCBtb2RlbC4gIFRodXMgc2V0IGluZGVudGlvbiB0byBiZSB0aGUgc2FtZSBhcyB0aGF0CisgICAgIiBvZiB0aGUgZmlyc3QgbGluZSBzbyB0aGF0IHRoZSB0ZXJtaW5hdGluZyDigJw+4oCdIHdpbmRzIHVwIGhhdmluZyB0aGUgc2FtZQorICAgICIgaW5kZW50aW9uLiAgT3RoZXJ3aXNlLCB3ZeKAmWxsIGluZGVudCB0byB0aGUgaW5uZXJtb3N0IHBhcmVudGhlc2VzIG5vdCB5ZXQKKyAgICAiIG1hdGNoZWQuCisgICAgbGV0IFtpbmRlbnRfb2ZfaW5uZXJtb3N0LCBlbmRdID0gczppbmRlbnRfdG9faW5uZXJtb3N0X3BhcmVudGhlc2VzKGxpbmUsIGVuZCkKKyAgICBpZiBpbmRlbnRfb2ZfaW5uZXJtb3N0ICE9IC0xCisgICAgICByZXR1cm4gaW5kZW50X29mX2lubmVybW9zdAorICAgIGVuZGlmCisKKyAgICAiIEZpbmFsbHksIGxvb2sgZm9yIGFueSBhZGRpdGlvbnMgYW5kL29yIGV4Y2VwdGlvbnMgdG8gdGhlIGNvbnRlbnQgbW9kZWwuCisgICAgIiBUaGlzIGlzIGRlZmluZWQgYnkgYSDigJwr4oCdIG9yIOKAnC3igJ0gZm9sbG93ZWQgYnkgYW5vdGhlciBjb250ZW50IG1vZGVsCisgICAgIiBkZWNsYXJhdGlvbi4KKyAgICAiIFRPRE86IENhbiB0aGUg4oCcLeKAnSBiZSBzZXBhcmF0ZWQgYnkgd2hpdGVzcGFjZSBmcm9tIHRoZSDigJwo4oCdPworICAgIGxldCBzZWVuID0geyAnKygnOiAwLCAnLSgnOiAwIH0KKyAgICB3aGlsZSAxCisgICAgICBsZXQgW2FkZGl0aW9uc19leGNlcHRpb25zLCBlbmRdID0gczpsZXgobGluZSwgZW5kLCAnXlsrLV0oJykKKyAgICAgIGlmIGFkZGl0aW9uc19leGNlcHRpb25zICE9ICcrKCcgJiYgYWRkaXRpb25zX2V4Y2VwdGlvbnMgIT0gJy0oJworICAgICAgICBsZXQgW3Rva2VuLCBlbmRdID0gczpsZXgobGluZSwgZW5kKQorICAgICAgICBpZiB0b2tlbiA9PSAnPicKKyAgICAgICAgICByZXR1cm4gaW5kZW50CisgICAgICAgIGVuZGlmCisgICAgICAgICIgVE9ETzogU2hvdWxkIHVzZSBzOmxleCBoZXJlIG9uIGdldGxpbmUodjpsbnVtKSBhbmQgY2hlY2sgZm9yID4uCisgICAgICAgIHJldHVybiBnZXRsaW5lKHY6bG51bSkgPX4gJ15ccyo+JyB8fCBjb3VudCh2YWx1ZXMoc2VlbiksIDApID09IDAgPyBpbmRlbnQgOiAoaW5kZW50ICsgJnN3KQorICAgICAgZW5kaWYKKworICAgICAgIiBJZiB3ZeKAmXZlIHNlZW4gYW4gYWRkaXRpb24gb3IgZXhjZXB0aW9uIGFscmVhZHkgYW5kIHRoaXMgaXMgb2YgdGhlIHNhbWUKKyAgICAgICIga2luZCwgdGhlIHVzZXIgaXMgd3JpdGluZyBhIGJyb2tlbiBEVEQuICBUaW1lIHRvIGJhaWwuCisgICAgICBpZiBzZWVuW2FkZGl0aW9uc19leGNlcHRpb25zXQorICAgICAgICByZXR1cm4gaW5kZW50CisgICAgICBlbmRpZgorICAgICAgbGV0IHNlZW5bYWRkaXRpb25zX2V4Y2VwdGlvbnNdID0gMQorCisgICAgICBsZXQgW2luZGVudF9vZl9pbm5lcm1vc3QsIGVuZF0gPSBzOmluZGVudF90b19pbm5lcm1vc3RfcGFyZW50aGVzZXMobGluZSwgZW5kKQorICAgICAgaWYgaW5kZW50X29mX2lubmVybW9zdCAhPSAtMQorICAgICAgICByZXR1cm4gaW5kZW50X29mX2lubmVybW9zdAorICAgICAgZW5kaWYKKyAgICBlbmR3aGlsZQorICBlbHNlaWYgZGVjbGFyYXRpb24gPT0gJ0FUVExJU1QnCisgICAgIiBDaGVjayBmb3IgZWxlbWVudCBuYW1lLiAgSWYgbm9uZSBleGlzdHMsIGluZGVudCBvbmUgbGV2ZWwuCisgICAgbGV0IFtuYW1lLCBlbmRdID0gczpsZXgobGluZSwgZW5kKQorICAgIGlmIG5hbWUgPT0gIiIKKyAgICAgIHJldHVybiBpbmRlbnQgKyAmc3cKKyAgICBlbmRpZgorCisgICAgIiBDaGVjayBmb3IgYW55IG51bWJlciBvZiBhdHRyaWJ1dGVzLgorICAgIHdoaWxlIDEKKyAgICAgICIgQ2hlY2sgZm9yIGF0dHJpYnV0ZSBuYW1lLiAgSWYgbm9uZSBleGlzdHMsIGluZGVudCBvbmUgbGV2ZWwsIHVubGVzcyB0aGUKKyAgICAgICIgY3VycmVudCBsaW5lIGlzIGEgbG9uZSDigJw+4oCdLCBpbiB3aGljaCBjYXNlIHdlIGluZGVudCB0byB0aGUgc2FtZSBsZXZlbAorICAgICAgIiBhcyB0aGUgZmlyc3QgbGluZS4gIE90aGVyd2lzZSwgaWYgdGhlIGF0dHJpYnV0ZSBuYW1lIGlzIOKAnD7igJ0sIHdlIGhhdmUKKyAgICAgICIgYWN0dWFsbHkgaGl0IHRoZSBlbmQgb2YgdGhlIGF0dHJpYnV0ZSBsaXN0LCBpbiB3aGljaCBjYXNlIHdlIGluZGVudCB0bworICAgICAgIiB0aGUgc2FtZSBsZXZlbCBhcyB0aGUgZmlyc3QgbGluZS4KKyAgICAgIGxldCBbbmFtZSwgZW5kXSA9IHM6bGV4KGxpbmUsIGVuZCkKKyAgICAgIGlmIG5hbWUgPT0gIiIKKyAgICAgICAgIiBUT0RPOiBTaG91bGQgdXNlIHM6bGV4IGhlcmUgb24gZ2V0bGluZSh2OmxudW0pIGFuZCBjaGVjayBmb3IgPi4KKyAgICAgICAgcmV0dXJuIGdldGxpbmUodjpsbnVtKSA9fiAnXlxzKj4nID8gaW5kZW50IDogKGluZGVudCArICZzdykKKyAgICAgIGVsc2VpZiBuYW1lID09ICI+IgorICAgICAgICByZXR1cm4gaW5kZW50CisgICAgICBlbmRpZgorCisgICAgICAiIENoZWNrIGZvciBhdHRyaWJ1dGUgdmFsdWUgZGVjbGFyYXRpb24uICBJZiBub25lIGV4aXN0cywgaW5kZW50IHR3bworICAgICAgIiBsZXZlbHMuICBPdGhlcndpc2UsIGlmIGl04oCZcyBhbiBlbnVtZXJhdGVkIHZhbHVlLCBjaGVjayBmb3IgbmVzdGVkCisgICAgICAiIHBhcmVudGhlc2VzIGFuZCBpbmRlbnQgdG8gdGhlIGlubmVybW9zdCBvbmUgaWYgd2UgZG9u4oCZdCByZWFjaCB0aGUgZW5kCisgICAgICAiIG9mIHRoZSBsaXN0Yy4gIE90aGVyd2lzZSwganVzdCBjb250aW51ZSB3aXRoIGxvb2tpbmcgZm9yIHRoZSBkZWZhdWx0CisgICAgICAiIGF0dHJpYnV0ZSB2YWx1ZS4KKyAgICAgICIgVE9ETzogRG8gdmFsaWRhdGlvbiBvZiBrZXl3b3JkcworICAgICAgIiAoQ0RBVEF8Tk1UT0tFTnxOTVRPS0VOU3xJRHxJRFJFRnxJRFJFRlN8RU5USVRZfEVOVElUSUVTKT8KKyAgICAgIGxldCBbdmFsdWUsIGVuZF0gPSBzOmxleChsaW5lLCBlbmQsICdeXCUoKFx8W15bOnNwYWNlOl1dXCtcKScpCisgICAgICBpZiB2YWx1ZSA9PSAiIgorICAgICAgICByZXR1cm4gaW5kZW50ICsgJnN3ICogMgorICAgICAgZWxzZWlmIHZhbHVlID09ICdOT1RBVElPTicKKyAgICAgICAgIiBJZiB0aGlzIGlzIGEgZW51bWVyYXRlZCB2YWx1ZSBiYXNlZCBvbiBub3RhdGlvbnMsIHJlYWQgYW5vdGhlciB0b2tlbgorICAgICAgICAiIGZvciB0aGUgYWN0dWFsIHZhbHVlLiAgSWYgaXQgZG9lc27igJl0IGV4aXN0LCBpbmRlbnQgdGhyZWUgbGV2ZWxzLgorICAgICAgICAiIFRPRE86IElmIHZhbGlkYXRpbmcgYWNjb3JkaW5nIHRvIGFib3ZlLCB2YWx1ZSBtdXN0IGJlIGVxdWFsIHRvICcoJy4KKyAgICAgICAgbGV0IFt2YWx1ZSwgZW5kXSA9IHM6bGV4KGxpbmUsIGVuZCwgJ15cJSgoXHxbXls6c3BhY2U6XV1cK1wpJykKKyAgICAgICAgaWYgdmFsdWUgPT0gIiIKKyAgICAgICAgICByZXR1cm4gaW5kZW50ICsgJnN3ICogMworICAgICAgICBlbmRpZgorICAgICAgZW5kaWYKKworICAgICAgaWYgdmFsdWUgPT0gJygnCisgICAgICAgIGxldCBbaW5kZW50X29mX2lubmVybW9zdCwgZW5kXSA9IHM6aW5kZW50X3RvX2lubmVybW9zdF9wYXJlbnRoZXNlcyhsaW5lLCBlbmQpCisgICAgICAgIGlmIGluZGVudF9vZl9pbm5lcm1vc3QgIT0gLTEKKyAgICAgICAgICByZXR1cm4gaW5kZW50X29mX2lubmVybW9zdAorICAgICAgICBlbmRpZgorICAgICAgZW5kaWYKKworICAgICAgIiBGaW5hbGx5IGxvb2sgZm9yIHRoZSBhdHRyaWJ1dGXigJlzIGRlZmF1bHQgdmFsdWUuICBJZiBub24gZXhpc3RzLCBpbmRlbnQKKyAgICAgICIgdHdvIGxldmVscy4KKyAgICAgICIgVE9ETzogRG8gdmFsaWRhdGlvbiBvZiBrZXl3b3JkcyAoI1JFUVVJUkVEfCNJTVBMSUVEKT8KKyAgICAgIGxldCBbZGVmYXVsdCwgZW5kXSA9IHM6bGV4KGxpbmUsIGVuZCwgJ15cJSgiXF9bXiJdKiJcfFteWzpzcGFjZTpdXVwrXCknKQorICAgICAgaWYgZGVmYXVsdCA9PSAiIgorICAgICAgICByZXR1cm4gaW5kZW50ICsgJnN3ICogMgorICAgICAgZWxzZWlmIGRlZmF1bHQgPT0gJyNGSVhFRCcKKyAgICAgICAgIiBXZSBuZWVkIHRvIGxvb2sgZm9yIHRoZSBmaXhlZCB2YWx1ZS4gIElmIG5vbiBleGlzdHMsIGluZGVudCB0aHJlZQorICAgICAgICAiIGxldmVscy4KKyAgICAgICAgbGV0IFtkZWZhdWx0LCBlbmRdID0gczpsZXgobGluZSwgZW5kLCAnXiJcX1teIl0qIicpCisgICAgICAgIGlmIGRlZmF1bHQgPT0gIiIKKyAgICAgICAgICByZXR1cm4gaW5kZW50ICsgJnN3ICogMworICAgICAgICBlbmRpZgorICAgICAgZW5kaWYKKyAgICBlbmR3aGlsZQorICBlbHNlaWYgZGVjbGFyYXRpb24gPT0gJ0VOVElUWScKKyAgICAiIENoZWNrIGZvciBlbnRpdHkgbmFtZS4gIElmIG5vbmUgZXhpc3RzLCBpbmRlbnQgb25lIGxldmVsLiAgT3RoZXJ3aXNlLCBpZgorICAgICIgdGhlIG5hbWUgYWN0dWFsbHkgdHVybnMgb3V0IHRvIGJlIGEgcGVyY2VudCBzaWduLCDigJwl4oCdLCB0aGlzIGlzIGEKKyAgICAiIHBhcmFtZXRlciBlbnRpdHkuICBSZWFkIGFub3RoZXIgdG9rZW4gdG8gZGV0ZXJtaW5lIHRoZSBlbnRpdHkgbmFtZSBhbmQsCisgICAgIiBhZ2FpbiwgaWYgbm9uZSBleGlzdHMsIGluZGVudCBvbmUgbGV2ZWwuCisgICAgbGV0IFtuYW1lLCBlbmRdID0gczpsZXgobGluZSwgZW5kKQorICAgIGlmIG5hbWUgPT0gIiIKKyAgICAgIHJldHVybiBpbmRlbnQgKyAmc3cKKyAgICBlbHNlaWYgbmFtZSA9PSAnJScKKyAgICAgIGxldCBbbmFtZSwgZW5kXSA9IHM6bGV4KGxpbmUsIGVuZCkKKyAgICAgIGlmIG5hbWUgPT0gIiIKKyAgICAgICAgcmV0dXJuIGluZGVudCArICZzdworICAgICAgZW5kaWYKKyAgICBlbmRpZgorCisgICAgIiBOb3cgY2hlY2sgZm9yIHRoZSBlbnRpdHkgdmFsdWUuICBJZiBub25lIGV4aXN0cywgaW5kZW50IG9uZSBsZXZlbC4gIElmIGl0CisgICAgIiBkb2VzIGV4aXN0LCBpbmRlbnQgdG8gc2FtZSBsZXZlbCBhcyBmaXJzdCBsaW5lLCBhcyB3ZeKAmXJlIG5vdyBkb25lIHdpdGgKKyAgICAiIHRoaXMgZW50aXR5LgorICAgICIKKyAgICAiIFRoZSBlbnRpdHkgdmFsdWUgY2FuIGJlIGEgc3RyaW5nIGluIHNpbmdsZSBvciBkb3VibGUgcXVvdGVzIChubyBlc2NhcGVzCisgICAgIiB0byB3b3JyeSBhYm91dCwgYXMgZW50aXRpZXMgYXJlIHVzZWQgaW5zdGVhZCkuICBIb3dldmVyLCBpdCBjYW4gYWxzbyBiZQorICAgICIgdGhhdCB0aGlzIGlzIGFuIGV4dGVybmFsIHVucGFyc2VkIGVudGl0eS4gIEluIHRoYXQgY2FzZSB3ZSBoYXZlIHRvIGxvb2sKKyAgICAiIGZ1cnRoZXIgZm9yIChwb3NzaWJseSkgYSBwdWJsaWMgSUQgYW5kIGFuIFVSSSBmb2xsb3dlZCBieSB0aGUgTkRBVEEKKyAgICAiIGtleXdvcmQgYW5kIHRoZSBhY3R1YWwgbm90YXRpb24gbmFtZS4gIEZvciB0aGUgcHVibGljIElEIGFuZCBVUkksIGluZGVudAorICAgICIgdHdvIGxldmVscywgaWYgdGhleSBkb27igJl0IGV4aXN0LiAgSWYgdGhlIE5EQVRBIGtleXdvcmQgZG9lc27igJl0IGV4aXN0LAorICAgICIgaW5kZW50IG9uZSBsZXZlbC4gIE90aGVyd2lzZSwgaWYgdGhlIGFjdHVhbCBub3RhdGlvbiBuYW1lIGRvZXNu4oCZdCBleGlzdCwKKyAgICAiIGluZGVudCB0d28gbGV2ZWwuICBJZiBpdCBkb2VzLCBpbmRlbnQgdG8gc2FtZSBsZXZlbCBhcyBmaXJzdCBsaW5lLCBhcworICAgICIgd2XigJlyZSBub3cgZG9uZSB3aXRoIHRoaXMgZW50aXR5LgorICAgIGxldCBbdmFsdWUsIGVuZF0gPSBzOmxleChsaW5lLCBlbmQpCisgICAgaWYgdmFsdWUgPT0gIiIKKyAgICAgIHJldHVybiBpbmRlbnQgKyAmc3cKKyAgICBlbHNlaWYgdmFsdWUgPT0gJ1NZU1RFTScgfHwgdmFsdWUgPT0gJ1BVQkxJQycKKyAgICAgIGxldCBbcXVvdGVkX3N0cmluZywgZW5kXSA9IHM6bGV4KGxpbmUsIGVuZCwgJ1wlKCJbXiJdXCsiXHwnJ1teJyddXCsnJ1wpJykKKyAgICAgIGlmIHF1b3RlZF9zdHJpbmcgPT0gIiIKKyAgICAgICAgcmV0dXJuIGluZGVudCArICZzdyAqIDIKKyAgICAgIGVuZGlmCisKKyAgICAgIGlmIHZhbHVlID09ICdQVUJMSUMnCisgICAgICAgIGxldCBbcXVvdGVkX3N0cmluZywgZW5kXSA9IHM6bGV4KGxpbmUsIGVuZCwgJ1wlKCJbXiJdXCsiXHwnJ1teJyddXCsnJ1wpJykKKyAgICAgICAgaWYgcXVvdGVkX3N0cmluZyA9PSAiIgorICAgICAgICAgIHJldHVybiBpbmRlbnQgKyAmc3cgKiAyCisgICAgICAgIGVuZGlmCisgICAgICBlbmRpZgorCisgICAgICBsZXQgW25kYXRhLCBlbmRdID0gczpsZXgobGluZSwgZW5kKQorICAgICAgaWYgbmRhdGEgPT0gIiIKKyAgICAgICAgcmV0dXJuIGluZGVudCArICZzdworICAgICAgZW5kaWYKKworICAgICAgbGV0IFtuYW1lLCBlbmRdID0gczpsZXgobGluZSwgZW5kKQorICAgICAgcmV0dXJuIG5hbWUgPT0gIiIgPyAoaW5kZW50ICsgJnN3ICogMikgOiBpbmRlbnQKKyAgICBlbHNlCisgICAgICByZXR1cm4gaW5kZW50CisgICAgZW5kaWYKKyAgZWxzZWlmIGRlY2xhcmF0aW9uID09ICdOT1RBVElPTicKKyAgICAiIENoZWNrIGZvciBub3RhdGlvbiBuYW1lLiAgSWYgbm9uZSBleGlzdHMsIGluZGVudCBvbmUgbGV2ZWwuCisgICAgbGV0IFtuYW1lLCBlbmRdID0gczpsZXgobGluZSwgZW5kKQorICAgIGlmIG5hbWUgPT0gIiIKKyAgICAgIHJldHVybiBpbmRlbnQgKyAmc3cKKyAgICBlbmRpZgorCisgICAgIiBOb3cgY2hlY2sgZm9yIHRoZSBleHRlcm5hbCBJRC4gIElmIG5vbmUgZXhpc3RzLCBpbmRlbnQgb25lIGxldmVsLgorICAgIGxldCBbaWQsIGVuZF0gPSBzOmxleChsaW5lLCBlbmQpCisgICAgaWYgaWQgPT0gIiIKKyAgICAgIHJldHVybiBpbmRlbnQgKyAmc3cKKyAgICBlbHNlaWYgaWQgPT0gJ1NZU1RFTScgfHwgaWQgPT0gJ1BVQkxJQycKKyAgICAgIGxldCBbcXVvdGVkX3N0cmluZywgZW5kXSA9IHM6bGV4KGxpbmUsIGVuZCwgJ1wlKCJbXiJdXCsiXHwnJ1teJyddXCsnJ1wpJykKKyAgICAgIGlmIHF1b3RlZF9zdHJpbmcgPT0gIiIKKyAgICAgICAgcmV0dXJuIGluZGVudCArICZzdyAqIDIKKyAgICAgIGVuZGlmCisKKyAgICAgIGlmIGlkID09ICdQVUJMSUMnCisgICAgICAgIGxldCBbcXVvdGVkX3N0cmluZywgZW5kXSA9IHM6bGV4KGxpbmUsIGVuZCwgJ1wlKCJbXiJdXCsiXHwnJ1teJyddXCsnJ1x8PlwpJykKKyAgICAgICAgaWYgcXVvdGVkX3N0cmluZyA9PSAiIgorICAgICAgICAgICIgVE9ETzogU2hvdWxkIHVzZSBzOmxleCBoZXJlIG9uIGdldGxpbmUodjpsbnVtKSBhbmQgY2hlY2sgZm9yID4uCisgICAgICAgICAgcmV0dXJuIGdldGxpbmUodjpsbnVtKSA9fiAnXlxzKj4nID8gaW5kZW50IDogKGluZGVudCArICZzdyAqIDIpCisgICAgICAgIGVsc2VpZiBxdW90ZWRfc3RyaW5nID09ICc+JworICAgICAgICAgIHJldHVybiBpbmRlbnQKKyAgICAgICAgZW5kaWYKKyAgICAgIGVuZGlmCisgICAgZW5kaWYKKworICAgIHJldHVybiBpbmRlbnQKKyAgZW5kaWYKKworICAiIFRPRE86IFByb2Nlc3NpbmcgZGlyZWN0aXZlcyBjb3VsZCBiZSBpbmRlbnRlZCBJIHN1cHBvc2UuICBCdXQgcGVyaGFwcyBpdOKAmXMKKyAgIiBqdXN0IGFzIHdlbGwgdG8gbGV0IHRoZSB1c2VyIGRlY2lkZSBob3cgdG8gaW5kZW50IHRoZW0gKHBlcmhhcHMgZXh0ZW5kaW5nCisgICIgdGhpcyBmdW5jdGlvbiB0byBpbmNsdWRlIHByb3BlciBzdXBwb3J0IGZvciB3aGF0ZXZlciBwcm9jZXNzaW5nIGRpcmVjdGl2ZQorICAiIGxhbmd1YWdlIHRoZXkgd2FudCB0byB1c2UpLgorCisgICIgQ29uZGl0aW9uYWwgc2VjdGlvbnMgYXJlIHNpbXBseSBwYXNzZWQgYWxvbmcgdG8gbGV0IFZpbSBkZWNpZGUgd2hhdCB0byBkbworICAiIChhbmQgaGVuY2UgdGhlIHVzZXIpLgorICByZXR1cm4gLTEKK2VuZGZ1bmN0aW9uCisKK2xldCAmY3BvID0gczpjcG9fc2F2ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvZnJhbWVzY3JpcHQudmltIGIvcnVudGltZS9pbmRlbnQvZnJhbWVzY3JpcHQudmltCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQ5ZmY5MmEKLS0tIC9kZXYvbnVsbAorKysgYi9ydW50aW1lL2luZGVudC9mcmFtZXNjcmlwdC52aW0KQEAgLTAsMCArMSw0MSBAQAorIiBWaW0gaW5kZW50IGZpbGUKKyIgTGFuZ3VhZ2U6ICAgICAgICAgRnJhbWVTY3JpcHQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDctMTkKKworaWYgZXhpc3RzKCJiOmRpZF9pbmRlbnQiKQorICBmaW5pc2gKK2VuZGlmCitsZXQgYjpkaWRfaW5kZW50ID0gMQorCitzZXRsb2NhbCBpbmRlbnRleHByPUdldEZyYW1lU2NyaXB0SW5kZW50KCkKK3NldGxvY2FsIGluZGVudGtleXM9IV5GLG8sTywwPX5FbHNlLDA9fkVuZElmLDA9fkVuZExvb3AsMD1+RW5kU3ViCitzZXRsb2NhbCBub3NtYXJ0aW5kZW50CisKK2lmIGV4aXN0cygiKkdldEZyYW1lU2NyaXB0SW5kZW50IikKKyAgZmluaXNoCitlbmRpZgorCitmdW5jdGlvbiBHZXRGcmFtZVNjcmlwdEluZGVudCgpCisgIGxldCBsbnVtID0gcHJldm5vbmJsYW5rKHY6bG51bSAtIDEpCisKKyAgaWYgbG51bSA9PSAwCisgICAgcmV0dXJuIDAKKyAgZW5kaWYKKworICBpZiBnZXRsaW5lKHY6bG51bSkgPX4gJ15ccypcKicKKyAgICByZXR1cm4gY2luZGVudCh2OmxudW0pCisgIGVuZGlmCisKKyAgbGV0IGluZCA9IGluZGVudChsbnVtKQorCisgIGlmIGdldGxpbmUobG51bSkgPX4/ICdeXHMqXCUoSWZcfExvb3BcfFN1YlwpJworICAgIGxldCBpbmQgPSBpbmQgKyAmc3cKKyAgZW5kaWYKKworICBpZiBnZXRsaW5lKHY6bG51bSkgPX4/ICdeXHMqXCUoRWxzZVx8RW5kXCUoSWZcfExvb3BcfFN1YlwpXCknCisgICAgbGV0IGluZCA9IGluZCAtICZzdworICBlbmRpZgorCisgIHJldHVybiBpbmQKK2VuZGZ1bmN0aW9uCmRpZmYgLS1naXQgYS9ydW50aW1lL3BsdWdpbi9uZXRyd1BsdWdpbi52aW0gYi9ydW50aW1lL3BsdWdpbi9uZXRyd1BsdWdpbi52aW0KaW5kZXggZjg0YWFkYy4uMzZmNTc2YyAxMDA2NDQKLS0tIGEvcnVudGltZS9wbHVnaW4vbmV0cndQbHVnaW4udmltCisrKyBiL3J1bnRpbWUvcGx1Z2luL25ldHJ3UGx1Z2luLnZpbQpAQCAtMSw5ICsxLDkgQEAKICIgbmV0cndQbHVnaW4udmltOiBIYW5kbGVzIGZpbGUgdHJhbnNmZXIgYW5kIHJlbW90ZSBkaXJlY3RvcnkgbGlzdGluZyBhY3Jvc3MgYSBuZXR3b3JrCiAiICAgICAgICAgICAgUExVR0lOIFNFQ1RJT04KLSIgRGF0ZToJCUFwciAwNywgMjAwOAorIiBEYXRlOgkJQXVnIDAxLCAyMDA4CiAiIE1haW50YWluZXI6CUNoYXJsZXMgRSBDYW1wYmVsbCwgSnIgPE5kck9jaGlwQFNjYW1wYmVsbFBmYW1pbHkuQWJpek0tTk9TUEFNPgogIiBHZXRMYXRlc3RWaW1TY3JpcHRzOiAxMDc1IDEgOkF1dG9JbnN0YWxsOiBuZXRydy52aW0KLSIgQ29weXJpZ2h0OiAgICBDb3B5cmlnaHQgKEMpIDE5OTktMjAwNSBDaGFybGVzIEUuIENhbXBiZWxsLCBKci4ge3t7MQorIiBDb3B5cmlnaHQ6ICAgIENvcHlyaWdodCAoQykgMTk5OS0yMDA4IENoYXJsZXMgRS4gQ2FtcGJlbGwsIEpyLiB7e3sxCiAiICAgICAgICAgICAgICAgUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCB0byB1c2UgYW5kIGRpc3RyaWJ1dGUgdGhpcyBjb2RlLAogIiAgICAgICAgICAgICAgIHdpdGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBwcm92aWRlZCB0aGF0IHRoaXMgY29weXJpZ2h0CiAiICAgICAgICAgICAgICAgbm90aWNlIGlzIGNvcGllZCB3aXRoIGl0LiBMaWtlIGFueXRoaW5nIGVsc2UgdGhhdCdzIGZyZWUsCkBAIC0yMiw3ICsyMiw3IEBACiBpZiAmY3AgfHwgZXhpc3RzKCJnOmxvYWRlZF9uZXRyd1BsdWdpbiIpCiAgZmluaXNoCiBlbmRpZgotbGV0IGc6bG9hZGVkX25ldHJ3UGx1Z2luID0gInYxMjciCitsZXQgZzpsb2FkZWRfbmV0cndQbHVnaW4gPSAidjEzMSIKIGxldCBzOmtlZXBjcG8gICAgICAgICAgICA9ICZjcG8KIGlmIHY6dmVyc2lvbiA8IDcwMAogIGVjaG9obCBXYXJuaW5nTXNnIHwgZWNobyAiKioqbmV0cncqKiogeW91IG5lZWQgdmltIHZlcnNpb24gNy4wIGZvciB0aGlzIHZlcnNpb24gb2YgbmV0cnciIHwgZWNob2hsIE5vbmUKQEAgLTQ3LDE5ICs0NywxOSBAQAogYXVncm91cCBOZXR3b3JrCiAgYXUhCiAgaWYgaGFzKCJ3aW4zMiIpIHx8IGhhcygid2luOTUiKSB8fCBoYXMoIndpbjY0IikgfHwgaGFzKCJ3aW4xNiIpCi0gIGF1IEJ1ZlJlYWRDbWQgIGZpbGU6Ly8qCQlleGUgInNpbGVudCBkb2F1IEJ1ZlJlYWRQcmUgIi5uZXRydyNSRkMyMzk2KGV4cGFuZCgiPGFtYXRjaD4iKSl8ZXhlICdlICcuc3Vic3RpdHV0ZShuZXRydyNSRkMyMzk2KGV4cGFuZCgiPGFtYXRjaD4iKSksJ2ZpbGU6Ly9cKC4qXCknLCdcMScsIiIpfGV4ZSAiYndpcGUgIi5leHBhbmQoIjxhbWF0Y2g+Iil8ZXhlICJzaWxlbnQgZG9hdSBCdWZSZWFkUG9zdCAiLm5ldHJ3I1JGQzIzOTYoZXhwYW5kKCI8YW1hdGNoPiIpKQorICBhdSBCdWZSZWFkQ21kICBmaWxlOi8vKgkJZXhlICJzaWxlbnQgZG9hdSBCdWZSZWFkUHJlICIuZm5hbWVlc2NhcGUobmV0cncjUkZDMjM5NihleHBhbmQoIjxhbWF0Y2g+IikpKXxleGUgJ2UgJy5mbmFtZWVzY2FwZShzdWJzdGl0dXRlKG5ldHJ3I1JGQzIzOTYoZXhwYW5kKCI8YW1hdGNoPiIpKSwnZmlsZTovL1woLipcKScsJ1wxJywiIikpfGV4ZSAiYndpcGUgIi5mbmFtZWVzY2FwZShleHBhbmQoIjxhbWF0Y2g+IikpfGV4ZSAic2lsZW50IGRvYXUgQnVmUmVhZFBvc3QgIi5mbmFtZWVzY2FwZShuZXRydyNSRkMyMzk2KGV4cGFuZCgiPGFtYXRjaD4iKSkpCiAgZWxzZQotICBhdSBCdWZSZWFkQ21kICBmaWxlOi8vKgkJZXhlICJzaWxlbnQgZG9hdSBCdWZSZWFkUHJlICIubmV0cncjUkZDMjM5NihleHBhbmQoIjxhbWF0Y2g+IikpfGV4ZSAnZSAnLnN1YnN0aXR1dGUobmV0cncjUkZDMjM5NihleHBhbmQoIjxhbWF0Y2g+IikpLCdmaWxlOi8vXCguKlwpJywnXDEnLCIiKXxleGUgImJ3aXBlICIuZXhwYW5kKCI8YW1hdGNoPiIpfGV4ZSAic2lsZW50IGRvYXUgQnVmUmVhZFBvc3QgIi5uZXRydyNSRkMyMzk2KGV4cGFuZCgiPGFtYXRjaD4iKSkKLSAgYXUgQnVmUmVhZENtZCAgZmlsZTovL2xvY2FsaG9zdC8qCWV4ZSAic2lsZW50IGRvYXUgQnVmUmVhZFByZSAiLm5ldHJ3I1JGQzIzOTYoZXhwYW5kKCI8YW1hdGNoPiIpKXxleGUgJ2UgJy5zdWJzdGl0dXRlKG5ldHJ3I1JGQzIzOTYoZXhwYW5kKCI8YW1hdGNoPiIpKSwnZmlsZTovL2xvY2FsaG9zdC9cKC4qXCknLCdcMScsIiIpfGV4ZSAiYndpcGUgIi5zdWJzdGl0dXRlKGV4cGFuZCgiPGFtYXRjaD4iKSwnZmlsZTovL1woXGtcK0BcKVw9JywnJywnJyl8ZXhlICJzaWxlbnQgZG9hdSBCdWZSZWFkUG9zdCAiLm5ldHJ3I1JGQzIzOTYoZXhwYW5kKCI8YW1hdGNoPiIpKQorICBhdSBCdWZSZWFkQ21kICBmaWxlOi8vKgkJZXhlICJzaWxlbnQgZG9hdSBCdWZSZWFkUHJlICIuZm5hbWVlc2NhcGUobmV0cncjUkZDMjM5NihleHBhbmQoIjxhbWF0Y2g+IikpKXxleGUgJ2UgJy5mbmFtZWVzY2FwZShzdWJzdGl0dXRlKG5ldHJ3I1JGQzIzOTYoZXhwYW5kKCI8YW1hdGNoPiIpKSwnZmlsZTovL1woLipcKScsJ1wxJywiIikpfGV4ZSAiYndpcGUgIi5mbmFtZWVzY2FwZShleHBhbmQoIjxhbWF0Y2g+IikpfGV4ZSAic2lsZW50IGRvYXUgQnVmUmVhZFBvc3QgIi5mbmFtZWVzY2FwZShuZXRydyNSRkMyMzk2KGV4cGFuZCgiPGFtYXRjaD4iKSkpCisgIGF1IEJ1ZlJlYWRDbWQgIGZpbGU6Ly9sb2NhbGhvc3QvKglleGUgInNpbGVudCBkb2F1IEJ1ZlJlYWRQcmUgIi5mbmFtZWVzY2FwZShuZXRydyNSRkMyMzk2KGV4cGFuZCgiPGFtYXRjaD4iKSkpfGV4ZSAnZSAnLmZuYW1lZXNjYXBlKHN1YnN0aXR1dGUobmV0cncjUkZDMjM5NihleHBhbmQoIjxhbWF0Y2g+IikpLCdmaWxlOi8vbG9jYWxob3N0L1woLipcKScsJ1wxJywiIikpfGV4ZSAiYndpcGUgIi5mbmFtZWVzY2FwZShzdWJzdGl0dXRlKGV4cGFuZCgiPGFtYXRjaD4iKSwnZmlsZTovL1woXGtcK0BcKVw9JywnJywnJykpfGV4ZSAic2lsZW50IGRvYXUgQnVmUmVhZFBvc3QgIi5mbmFtZWVzY2FwZShuZXRydyNSRkMyMzk2KGV4cGFuZCgiPGFtYXRjaD4iKSkpCiAgZW5kaWYKLSBhdSBCdWZSZWFkQ21kICAgZnRwOi8vKixyY3A6Ly8qLHNjcDovLyosaHR0cDovLyosZGF2Oi8vKixkYXZzOi8vKixyc3luYzovLyosc2Z0cDovLyoJZXhlICJzaWxlbnQgZG9hdSBCdWZSZWFkUHJlICIuZXhwYW5kKCI8YW1hdGNoPiIpfGV4ZSAnMk5yZWFkICInLmV4cGFuZCgiPGFtYXRjaD4iKS4nIid8ZXhlICJzaWxlbnQgZG9hdSBCdWZSZWFkUG9zdCAiLmV4cGFuZCgiPGFtYXRjaD4iKQotIGF1IEZpbGVSZWFkQ21kICBmdHA6Ly8qLHJjcDovLyosc2NwOi8vKixodHRwOi8vKixkYXY6Ly8qLGRhdnM6Ly8qLHJzeW5jOi8vKixzZnRwOi8vKglleGUgInNpbGVudCBkb2F1IEZpbGVSZWFkUHJlICIuZXhwYW5kKCI8YW1hdGNoPiIpfGV4ZSAnTnJlYWQgIicgICAuZXhwYW5kKCI8YW1hdGNoPiIpLiciJ3xleGUgInNpbGVudCBkb2F1IEZpbGVSZWFkUG9zdCAiLmV4cGFuZCgiPGFtYXRjaD4iKQotIGF1IEJ1ZldyaXRlQ21kICBmdHA6Ly8qLHJjcDovLyosc2NwOi8vKixkYXY6Ly8qLGRhdnM6Ly8qLHJzeW5jOi8vKixzZnRwOi8vKgkJZXhlICJzaWxlbnQgZG9hdSBCdWZXcml0ZVByZSAiLmV4cGFuZCgiPGFtYXRjaD4iKXxleGUgJ053cml0ZSAiJyAuZXhwYW5kKCI8YW1hdGNoPiIpLiciJ3xleGUgInNpbGVudCBkb2F1IEJ1ZldyaXRlUG9zdCAiLmV4cGFuZCgiPGFtYXRjaD4iKQotIGF1IEZpbGVXcml0ZUNtZCBmdHA6Ly8qLHJjcDovLyosc2NwOi8vKixkYXY6Ly8qLGRhdnM6Ly8qLHJzeW5jOi8vKixzZnRwOi8vKgkJZXhlICJzaWxlbnQgZG9hdSBGaWxlV3JpdGVQcmUgIi5leHBhbmQoIjxhbWF0Y2g+Iil8ZXhlICInWywnXSIuJ053cml0ZSAiJyAuZXhwYW5kKCI8YW1hdGNoPiIpLiciJ3xleGUgInNpbGVudCBkb2F1IEZpbGVXcml0ZVBvc3QgIi5leHBhbmQoIjxhbWF0Y2g+IikKKyBhdSBCdWZSZWFkQ21kICAgZnRwOi8vKixyY3A6Ly8qLHNjcDovLyosaHR0cDovLyosZGF2Oi8vKixkYXZzOi8vKixyc3luYzovLyosc2Z0cDovLyoJZXhlICJzaWxlbnQgZG9hdSBCdWZSZWFkUHJlICIuZm5hbWVlc2NhcGUoZXhwYW5kKCI8YW1hdGNoPiIpKXxleGUgJzJOcmVhZCAnLmZuYW1lZXNjYXBlKGV4cGFuZCgiPGFtYXRjaD4iKSl8ZXhlICJzaWxlbnQgZG9hdSBCdWZSZWFkUG9zdCAiLmZuYW1lZXNjYXBlKGV4cGFuZCgiPGFtYXRjaD4iKSkKKyBhdSBGaWxlUmVhZENtZCAgZnRwOi8vKixyY3A6Ly8qLHNjcDovLyosaHR0cDovLyosZGF2Oi8vKixkYXZzOi8vKixyc3luYzovLyosc2Z0cDovLyoJZXhlICJzaWxlbnQgZG9hdSBGaWxlUmVhZFByZSAiLmZuYW1lZXNjYXBlKGV4cGFuZCgiPGFtYXRjaD4iKSl8ZXhlICdOcmVhZCAnLmZuYW1lZXNjYXBlKGV4cGFuZCgiPGFtYXRjaD4iKSl8ZXhlICJzaWxlbnQgZG9hdSBGaWxlUmVhZFBvc3QgIi5mbmFtZWVzY2FwZShleHBhbmQoIjxhbWF0Y2g+IikpCisgYXUgQnVmV3JpdGVDbWQgIGZ0cDovLyoscmNwOi8vKixzY3A6Ly8qLGRhdjovLyosZGF2czovLyoscnN5bmM6Ly8qLHNmdHA6Ly8qCQlleGUgInNpbGVudCBkb2F1IEJ1ZldyaXRlUHJlICIuZm5hbWVlc2NhcGUoZXhwYW5kKCI8YW1hdGNoPiIpKXxleGUgJ053cml0ZSAnLmZuYW1lZXNjYXBlKGV4cGFuZCgiPGFtYXRjaD4iKSl8ZXhlICJzaWxlbnQgZG9hdSBCdWZXcml0ZVBvc3QgIi5mbmFtZWVzY2FwZShleHBhbmQoIjxhbWF0Y2g+IikpCisgYXUgRmlsZVdyaXRlQ21kIGZ0cDovLyoscmNwOi8vKixzY3A6Ly8qLGRhdjovLyosZGF2czovLyoscnN5bmM6Ly8qLHNmdHA6Ly8qCQlleGUgInNpbGVudCBkb2F1IEZpbGVXcml0ZVByZSAiLmZuYW1lZXNjYXBlKGV4cGFuZCgiPGFtYXRjaD4iKSl8ZXhlICInWywnXSIuJ053cml0ZSAnLmZuYW1lZXNjYXBlKGV4cGFuZCgiPGFtYXRjaD4iKSl8ZXhlICJzaWxlbnQgZG9hdSBGaWxlV3JpdGVQb3N0ICIuZm5hbWVlc2NhcGUoZXhwYW5kKCI8YW1hdGNoPiIpKQogIHRyeQotICBhdSBTb3VyY2VDbWQgICAgZnRwOi8vKixyY3A6Ly8qLHNjcDovLyosaHR0cDovLyosZGF2Oi8vKixkYXZzOi8vKixyc3luYzovLyosc2Z0cDovLyoJZXhlICdOc291cmNlICInLmV4cGFuZCgiPGFtYXRjaD4iKS4nIicKKyAgYXUgU291cmNlQ21kICAgZnRwOi8vKixyY3A6Ly8qLHNjcDovLyosaHR0cDovLyosZGF2Oi8vKixkYXZzOi8vKixyc3luYzovLyosc2Z0cDovLyoJZXhlICdOc291cmNlICcuZm5hbWVlc2NhcGUoZXhwYW5kKCI8YW1hdGNoPiIpKQogIGNhdGNoIC9eVmltXCUoKFxhXCspXClcPTpFMjE2LwotICBhdSBTb3VyY2VQcmUgICAgZnRwOi8vKixyY3A6Ly8qLHNjcDovLyosaHR0cDovLyosZGF2Oi8vKixkYXZzOi8vKixyc3luYzovLyosc2Z0cDovLyoJZXhlICdOc291cmNlICInLmV4cGFuZCgiPGFtYXRjaD4iKS4nIicKKyAgYXUgU291cmNlUHJlICAgZnRwOi8vKixyY3A6Ly8qLHNjcDovLyosaHR0cDovLyosZGF2Oi8vKixkYXZzOi8vKixyc3luYzovLyosc2Z0cDovLyoJZXhlICdOc291cmNlICcuZm5hbWVlc2NhcGUoZXhwYW5kKCI8YW1hdGNoPiIpKQogIGVuZHRyeQogYXVncm91cCBFTkQKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9wbHVnaW4vdGFyUGx1Z2luLnZpbSBiL3J1bnRpbWUvcGx1Z2luL3RhclBsdWdpbi52aW0KaW5kZXggNDEyY2VlZC4uOWEyOGExMCAxMDA2NDQKLS0tIGEvcnVudGltZS9wbHVnaW4vdGFyUGx1Z2luLnZpbQorKysgYi9ydW50aW1lL3BsdWdpbi90YXJQbHVnaW4udmltCkBAIC0xNCw3ICsxNCw3IEBACiBpZiAmY3AgfHwgZXhpc3RzKCJnOmxvYWRlZF90YXJQbHVnaW4iKQogIGZpbmlzaAogZW5kaWYKLWxldCBnOmxvYWRlZF90YXJQbHVnaW4gPSAidjE5IgorbGV0IGc6bG9hZGVkX3RhclBsdWdpbiA9ICJ2MjAiCiBsZXQgczprZWVwY3BvICAgICAgICAgID0gJmNwbwogc2V0IGNwbyZ2aW0KIApkaWZmIC0tZ2l0IGEvcnVudGltZS9wbHVnaW4vdmltYmFsbFBsdWdpbi52aW0gYi9ydW50aW1lL3BsdWdpbi92aW1iYWxsUGx1Z2luLnZpbQppbmRleCA1MDJjODIxLi42MzBiYjlmIDEwMDY0NAotLS0gYS9ydW50aW1lL3BsdWdpbi92aW1iYWxsUGx1Z2luLnZpbQorKysgYi9ydW50aW1lL3BsdWdpbi92aW1iYWxsUGx1Z2luLnZpbQpAQCAtMTYsNyArMTYsNyBAQAogaWYgJmNwIHx8IGV4aXN0cygiZzpsb2FkZWRfdmltYmFsbFBsdWdpbiIpCiAgZmluaXNoCiBlbmRpZgotbGV0IGc6bG9hZGVkX3ZpbWJhbGxQbHVnaW4gPSAidjI3IgorbGV0IGc6bG9hZGVkX3ZpbWJhbGxQbHVnaW4gPSAidjI5IgogbGV0IHM6a2VlcGNwbyAgICAgICAgICAgICAgPSAmY3BvCiBzZXQgY3BvJnZpbQogCmRpZmYgLS1naXQgYS9ydW50aW1lL3BsdWdpbi96aXBQbHVnaW4udmltIGIvcnVudGltZS9wbHVnaW4vemlwUGx1Z2luLnZpbQppbmRleCBlMTk4YzY2Li5iODBlY2M2IDEwMDY0NAotLS0gYS9ydW50aW1lL3BsdWdpbi96aXBQbHVnaW4udmltCisrKyBiL3J1bnRpbWUvcGx1Z2luL3ppcFBsdWdpbi52aW0KQEAgLTIwLDE2ICsyMCw3IEBACiBpZiAmY3AgfHwgZXhpc3RzKCJnOmxvYWRlZF96aXBQbHVnaW4iKQogIGZpbmlzaAogZW5kaWYKLQotIiBEb24ndCB1c2UgdGhlIHBsdWdpbiBpZiBmbmFtZWVzY2FwZSgpIGlzIG5vdCBhdmFpbGFibGUKLWlmICFleGlzdHMoIipmbmFtZWVzY2FwZSIpCi0gIGlmICZ2ZXJib3NlID4gMQotICAgZWNob2VyciAiemlwUGx1Z2luIG5vdCBsb2FkZWQgYmVjYXVzZSBmbmFtZWVzY2FwZSgpIGlzIG5vdCBhdmFpbGFibGUiCi0gZW5kaWYKLSBmaW5pc2gKLWVuZGlmCi0KLWxldCBnOmxvYWRlZF96aXBQbHVnaW4gPSAidjIxK2IiCitsZXQgZzpsb2FkZWRfemlwUGx1Z2luID0gInYyMiIKIGxldCBzOmtlZXBjcG8gICAgICAgICAgPSAmY3BvCiBzZXQgY3BvJnZpbQogCmRpZmYgLS1naXQgYS9ydW50aW1lL3NjcmlwdHMudmltIGIvcnVudGltZS9zY3JpcHRzLnZpbQppbmRleCAyMDFjMzc1Li5hNTg2OTIwIDEwMDY0NAotLS0gYS9ydW50aW1lL3NjcmlwdHMudmltCisrKyBiL3J1bnRpbWUvc2NyaXB0cy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzdXBwb3J0IGZpbGUgdG8gZGV0ZWN0IGZpbGUgdHlwZXMgaW4gc2NyaXB0cwogIgogIiBNYWludGFpbmVyOglCcmFtIE1vb2xlbmFhciA8QnJhbUB2aW0ub3JnPgotIiBMYXN0IGNoYW5nZToJMjAwOCBKdW4gMzAKKyIgTGFzdCBjaGFuZ2U6CTIwMDggSnVsIDE3CiAKICIgVGhpcyBmaWxlIGlzIGNhbGxlZCBieSBhbiBhdXRvY29tbWFuZCBmb3IgZXZlcnkgZmlsZSB0aGF0IGhhcyBqdXN0IGJlZW4KICIgbG9hZGVkIGludG8gYSBidWZmZXIuICBJdCBjaGVja3MgaWYgdGhlIHR5cGUgb2YgZmlsZSBjYW4gYmUgcmVjb2duaXplZCBieQpAQCAtMjc2LDYgKzI3Niw3IEBACiAKICAgICAiIFN0cmFjZQogICBlbHNlaWYgczpsaW5lMSA9fiAnXlswLTldKiAqZXhlY3ZlKCcKKyAgZWxzZWlmIHM6bGluZTEgPX4gJ15cKFxbcGlkIFxkXCtcXSBcKVw9WzAtOTouXSogKmV4ZWN2ZSgnIHx8IHM6bGluZTEgPX4gJ15fX2xpYmNfc3RhcnRfbWFpbicKICAgICBzZXQgZnQ9c3RyYWNlCiAKICAgICAiIFZTRSBKQ0wKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3BlbGwvcHQvbWFpbi5hYXAgYi9ydW50aW1lL3NwZWxsL3B0L21haW4uYWFwCmluZGV4IDE3YmEyNGQuLmIyYWQ2NWIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3BlbGwvcHQvbWFpbi5hYXAKKysrIGIvcnVudGltZS9zcGVsbC9wdC9tYWluLmFhcApAQCAtMSw1ICsxLDUgQEAKICMgQWFwIHJlY2lwZSBmb3IgUG9ydHVndWVzZSBWaW0gc3BlbGwgZmlsZXMuCi0jCisjIFNlZSBmdHA6Ly9mdHAudmltLm9yZy9wdWIvdmltL3J1bnRpbWUvc3BlbGwvUkVBRE1FLnR4dAogCiAjIFVzZSBhIGZyZXNobHkgY29tcGlsZWQgVmltIGlmIGl0IGV4aXN0cy4KIEBpZiBvcy5wYXRoLmV4aXN0cygnLi4vLi4vLi4vc3JjL3ZpbScpOgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zcGVsbC9wdC9wdF9CUi5kaWZmIGIvcnVudGltZS9zcGVsbC9wdC9wdF9CUi5kaWZmCmluZGV4IDBiZDQ0ZTIuLmY0ODE0YWYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3BlbGwvcHQvcHRfQlIuZGlmZgorKysgYi9ydW50aW1lL3NwZWxsL3B0L3B0X0JSLmRpZmYKQEAgLTE0LDcgKzE0LDcgQEAKIC0tLSAxMywzMiAtLS0tCiAgIAogKyBOQU1FICAgIEJyYXppbGlhbiBQb3J0dWd1ZXNlCi0rIFZFUlNJT04gMjAwODAyMjFWCisrIFZFUlNJT04gMjAwOC0wNy0wN1YKICsgSE9NRQlodHRwOi8vd3d3LmJyb2ZmaWNlLm9yZy92ZXJvcnRvZ3JhZmljbwogKyBBVVRIT1IgIFJhaW11bmRvIFNhbnRvcyBNb3VyYQogKyBFTUFJTCAgIHJhaW11bmRvbW91cmEgQVQgb3Blbm9mZmljZSBET1Qgb3JnCmRpZmYgLS1naXQgYS9ydW50aW1lL3NwZWxsL3B0L3B0X1BULmRpZmYgYi9ydW50aW1lL3NwZWxsL3B0L3B0X1BULmRpZmYKaW5kZXggNGIwNDhlYi4uMzZhMTJhYyAxMDA2NDQKLS0tIGEvcnVudGltZS9zcGVsbC9wdC9wdF9QVC5kaWZmCisrKyBiL3J1bnRpbWUvc3BlbGwvcHQvcHRfUFQuZGlmZgpAQCAtMTAsNyArMTAsNyBAQAogICBTRVQgSVNPODg1OS0xCiAgIAogKyBOQU1FIEV1cm9wZWFuIFBvcnR1Z3Vlc2UKLSsgVkVSU0lPTiAyMDA4LTAzLTIwCisrIFZFUlNJT04gMjAwOC0wNy0wNQogKyBIT01FIGh0dHA6Ly9uYXR1cmEuZGkudW1pbmhvLnB0LwogKyBBVVRIT1IgUnVpIFZpbGVsYQogKyBFTUFJTCBydWl2aWxlbGEgQVQgZGkgRE9UIHVtaW5obyBET1QgcHQKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4LzJodG1sLnZpbSBiL3J1bnRpbWUvc3ludGF4LzJodG1sLnZpbQppbmRleCBiZDQwMTY2Li5lZTY2YmY2IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC8yaHRtbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvMmh0bWwudmltCkBAIC0xLDYgKzEsNiBAQAogIiBWaW0gc3ludGF4IHN1cHBvcnQgZmlsZQogIiBNYWludGFpbmVyOiBCcmFtIE1vb2xlbmFhciA8QnJhbUB2aW0ub3JnPgotIiBMYXN0IENoYW5nZTogMjAwNyBBdWcgMzEKKyIgTGFzdCBDaGFuZ2U6IDIwMDggSnVsIDE3CiAiCSAgICAgICAobW9kaWZpZWQgYnkgRGF2aWQgTmVcdntjfWFzIChZZXRpKSA8eWV0aUBwaHlzaWNzLm11bmkuY3o+KQogIgkgICAgICAgKFhIVE1MIHN1cHBvcnQgYnkgUGFuYWdpb3RpcyBJc3NhcmlzIDx0YWtpc0BsdW11bWJhLmx1Yy5hYy5iZT4pCiAiCSAgICAgICAobWFkZSB3MyBjb21wbGlhbnQgYnkgRWRkIEJhcnJldHQgPHZleHQwMUBnbWFpbC5jb20+KQpAQCAtMjM4LDcgKzIzOCw3IEBACiBsZXQgczpIdG1sRW5kbGluZSA9ICcnCiBpZiBleGlzdHMoImh0bWxfbm9fcHJlIikKICAgbGV0IHM6SHRtbEVuZGxpbmUgPSAnPGJyJyAuIHM6dGFnX2Nsb3NlCi0gICAgbGV0IHM6TGVhZGluZ1NwYWNlID0gJyZuYnNwOycKKyAgbGV0IHM6TGVhZGluZ1NwYWNlID0gJyZuYnNwOycKICAgbGV0IHM6SHRtbFNwYWNlID0gJ1wnIC4gczpMZWFkaW5nU3BhY2UKIGVuZGlmCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2F1dG9ob3RrZXkudmltIGIvcnVudGltZS9zeW50YXgvYXV0b2hvdGtleS52aW0KaW5kZXggYmJlZmQ2Zi4uNDJkNGNmZCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvYXV0b2hvdGtleS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYXV0b2hvdGtleS52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBBdXRvSG90a2V5IHNjcmlwdCBmaWxlCiAiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA3LTA2LTAxCisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDYtMjIKIAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCkBAIC0yNDYsNiArMjQ2LDE1IEBACiAgICAgICBcIHRydWUKICAgICAgIFwgZmFsc2UKIAorIiBUT0RPOiBTaG91bGRuJ3Qgd2UgbG9vayBmb3IgZzosIGI6LCAgdmFyaWFibGVzIGJlZm9yZSBkZWZhdWx0aW5nIHRvCisiIHNvbWV0aGluZz8KK2lmIGV4aXN0cygiZzphdXRvaG90a2V5X3N5bnRheF9zeW5jX21pbmxpbmVzIikKKyAgbGV0IGI6YXV0b2hvdGtleV9zeW50YXhfc3luY19taW5saW5lcyA9IGc6YXV0b2hvdGtleV9zeW50YXhfc3luY19taW5saW5lcworZWxzZQorICBsZXQgYjphdXRvaG90a2V5X3N5bnRheF9zeW5jX21pbmxpbmVzID0gNTAKK2VuZGlmCitleGVjICJzeW4gc3luYyBjY29tbWVudCBhdXRvaG90a2V5Q29tbWVudCBtaW5saW5lcz0iIC4gYjphdXRvaG90a2V5X3N5bnRheF9zeW5jX21pbmxpbmVzCisKIGhpIGRlZiBsaW5rIGF1dG9ob3RrZXlUb2RvICAgICAgICAgICAgICAgIFRvZG8KIGhpIGRlZiBsaW5rIGF1dG9ob3RrZXlDb21tZW50ICAgICAgICAgICAgIENvbW1lbnQKIGhpIGRlZiBsaW5rIGF1dG9ob3RrZXlDb21tZW50U3RhcnQgICAgICAgIGF1dG9ob3RrZXlDb21tZW50CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9ienIudmltIGIvcnVudGltZS9zeW50YXgvYnpyLnZpbQppbmRleCBhZmJhZTFhLi4yOTY4Zjc5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9ienIudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2J6ci52aW0KQEAgLTQsNyArNCw3IEBACiAiIFVSTDogICAgICAgICAgaHR0cDovL3d3dy5obGFicy5zcGIucnUvdmltL2J6ci52aW0KICIgUmV2aXNpb246ICAgICAkSWQkCiAiIEZpbGVuYW1lczogICAgYnpyX2xvZy4qCi0iIFZlcnNpb246ICAgICAgMS4wCisiIFZlcnNpb246ICAgICAgMS4xCiAKICIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zLgogIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZC4KQEAgLTE0LDcgKzE0LDcgQEAKICAgZmluaXNoCiBlbmRpZgogCi1zeW4gcmVnaW9uIGJ6clJlZ2lvbiAgIHN0YXJ0PSJeLVx7MTR9IFRoaXMgbGluZSBhbmQgdGhlIGZvbGxvd2luZyB3aWxsIGJlIGlnbm9yZWQgLVx7MTR9JCIgZW5kPSJcJSQiIGNvbnRhaW5zPUFMTAorc3luIHJlZ2lvbiBienJSZWdpb24gICBzdGFydD0iXi1cezE0fSBUaGlzIGxpbmUgYW5kIHRoZSBmb2xsb3dpbmcgd2lsbCBiZSBpZ25vcmVkIC1cezE0fSQiIGVuZD0iXCUkIiBjb250YWlucz1BTEwgY29udGFpbnM9QE5vU3BlbGwKIHN5biBtYXRjaCBienJSZW1vdmVkICAgIl5yZW1vdmVkOiQiIGNvbnRhaW5lZAogc3luIG1hdGNoIGJ6ckFkZGVkICAgICAiXmFkZGVkOiQiIGNvbnRhaW5lZAogc3luIG1hdGNoIGJ6clJlbmFtZWQgICAiXnJlbmFtZWQ6JCIgY29udGFpbmVkCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9kb3h5Z2VuLnZpbSBiL3J1bnRpbWUvc3ludGF4L2RveHlnZW4udmltCmluZGV4IDQ5MTZiNGQuLmZiNGQzY2MgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2RveHlnZW4udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2RveHlnZW4udmltCkBAIC0xLDExICsxLDExIEBACiAiIERveHlHZW4gc3ludGF4IGhpbGlnaHRpbmcgZXh0ZW5zaW9uIGZvciBjL2MrKy9pZGwvamF2YQotIiBMYW5ndWFnZTogICAgIGRveHlnZW4gb24gdG9wIG9mIGMsIGNwcCwgaWRsLCBqYXZhCisiIExhbmd1YWdlOiAgICAgZG94eWdlbiBvbiB0b3Agb2YgYywgY3BwLCBpZGwsIGphdmEsIHBocAogIiBNYWludGFpbmVyOiAgIE1pY2hhZWwgR2VkZGVzIDx2aW1tZXJAZnJvZy53aGVlbHljcmVlay5uZXQ+CiAiIEF1dGhvcjogICAgICAgTWljaGFlbCBHZWRkZXMKLSIgTGFzdCBDaGFuZ2U6ICBBcHJpbCAyMDA3Ci0iIFZlcnNpb246ICAgICAgMS4yMAorIiBMYXN0IENoYW5nZTogIEp1bHkgMjAwOAorIiBWZXJzaW9uOiAgICAgIDEuMjIKICIKLSIgQ29weXJpZ2h0IDIwMDQtMjAwNiBNaWNoYWVsIEdlZGRlcworIiBDb3B5cmlnaHQgMjAwNC0yMDA4IE1pY2hhZWwgR2VkZGVzCiAiIFBsZWFzZSBmZWVsIGZyZWUgdG8gdXNlLCBtb2RpZnkgJiBkaXN0cmlidXRlIGFsbCBvciBwYXJ0IG9mIHRoaXMgc2NyaXB0LAogIiBwcm92aWRpbmcgdGhpcyBjb3B5cmlnaHQgbWVzc2FnZSByZW1haW5zLgogIiBJIHdvdWxkIGFwcHJlY2lhdGUgYmVpbmcgYWNrbm93bGVkZ2VkIGluIGFueSBkZXJpdmVkIHNjcmlwdHMsIGFuZCB3b3VsZApAQCAtMzAsMTIgKzMwLDE0IEBACiAiIGFsc28gYmUgc2V0IHRvIGFueSBoaWdobGlnaHQgYXR0cmlidXRlLiBBbHRlcm5hdGl2ZWx5LCBhIGhpZ2hsaWdodCBmb3IgZG94eWdlbkNvZGVXb3JkCiAiIGNhbiBiZSB1c2VkIHRvIG92ZXJyaWRlIGl0LgogIgotIiBCeSBkZWZhdWx0LCBoaWdobGlnaHRpbmcgaXMgZG9uZSBhc3N1bW5nIHlvdSBoYXZlIHRoZSBKQVZBRE9DX0FVVE9CUklFRgorIiBCeSBkZWZhdWx0LCBoaWdobGlnaHRpbmcgaXMgZG9uZSBhc3N1bWluZyB5b3UgaGF2ZSB0aGUgSkFWQURPQ19BVVRPQlJJRUYKICIgc2V0dGluZyB0dXJuZWQgb24gaW4geW91ciBEb3h5Z2VuIGNvbmZpZ3VyYXRpb24uICBJZiB5b3UgZG9uJ3QsIHlvdQogIiBjYW4gc2V0IHRoZSB2YXJpYWJsZSBnOmRveHlnZW5famF2YWRvY19hdXRvYnJpZWYgdG8gMCB0byBoYXZlIHRoZQogIiBoaWdobGlnaHRpbmcgbW9yZSBhY2N1cmF0ZWx5IHJlZmxlY3QgdGhlIHdheSBEb3h5Z2VuIHdpbGwgaW50ZXJwcmV0IHlvdXIKICIgY29tbWVudHMuCiAiCisiIFN1cHBvcnQgZm9yIGNwcCwgYywgaWRsLCBkb3h5Z2VuIGFuZCBwaHAuCisiCiAiIFNwZWNpYWwgdGhhbmtzIHRvOiAgV3UgWW9uZ3dlaSwgVG9ieSBBbGxzb3BwCiAiCiAKQEAgLTU2LDEwICs1OCwxMCBAQAogICAiCiAKICAgIiBDL0MrKyBTdHlsZSBsaW5lIGNvbW1lbnRzCi0gIHN5biByZWdpb24gZG94eWdlbkNvbW1lbnQgc3RhcnQ9Ky9cKlwoXCovXClcQCFbKiFdKyAgZW5kPStcKi8rIGNvbnRhaW5zPWRveHlnZW5TeW5jU3RhcnQsZG94eWdlblN0YXJ0LGRveHlnZW5UT0RPIGtlZXBlbmQgZm9sZAotICBzeW4gcmVnaW9uIGRveHlnZW5Db21tZW50TCBzdGFydD0rLy9bLyFdPFxAISttZT1lLTEgZW5kPSskKyBjb250YWlucz1kb3h5Z2VuU3RhcnRMIGtlZXBlbmQgc2tpcHdoaXRlIHNraXBubCBuZXh0Z3JvdXA9ZG94eWdlbkNvbW1lbnQyIGZvbGQKLSAgc3luIHJlZ2lvbiBkb3h5Z2VuQ29tbWVudEwgc3RhcnQ9Ky8vWy8hXTwrbWU9ZS0yIGVuZD0rJCsgY29udGFpbnM9ZG94eWdlblN0YXJ0TCBrZWVwZW5kIHNraXB3aGl0ZSBza2lwbmwgZm9sZAotICBzeW4gcmVnaW9uIGRveHlnZW5Db21tZW50TCBzdGFydD0rLy9AXHplW3t9XSsgZW5kPSskKyBjb250YWlucz1kb3h5Z2VuR3JvdXBEZWZpbmUsZG94eWdlbkdyb3VwRGVmaW5lU3BlY2lhbCBmb2xkCisgIHN5biByZWdpb24gZG94eWdlbkNvbW1lbnQgc3RhcnQ9Ky9cKlwoXCovXClcQCFbKiFdKyAgZW5kPStcKi8rIGNvbnRhaW5zPWRveHlnZW5TeW5jU3RhcnQsZG94eWdlblN0YXJ0LGRveHlnZW5UT0RPIGtlZXBlbmQgZm9sZCBjb250YWluZWRpbj1waHBSZWdpb24KKyAgc3luIHJlZ2lvbiBkb3h5Z2VuQ29tbWVudEwgc3RhcnQ9Ky8vWy8hXTxcQCErbWU9ZS0xIGVuZD0rJCsgY29udGFpbnM9ZG94eWdlblN0YXJ0TCxAU3BlbGwga2VlcGVuZCBza2lwd2hpdGUgc2tpcG5sIG5leHRncm91cD1kb3h5Z2VuQ29tbWVudDIgZm9sZCBjb250YWluZWRpbj1waHBSZWdpb24KKyAgc3luIHJlZ2lvbiBkb3h5Z2VuQ29tbWVudEwgc3RhcnQ9Ky8vWy8hXTwrbWU9ZS0yIGVuZD0rJCsgY29udGFpbnM9ZG94eWdlblN0YXJ0TCxAU3BlbGwga2VlcGVuZCBza2lwd2hpdGUgc2tpcG5sIGZvbGQgY29udGFpbmVkaW49cGhwUmVnaW9uCisgIHN5biByZWdpb24gZG94eWdlbkNvbW1lbnRMIHN0YXJ0PSsvL0BcemVbe31dKyBlbmQ9KyQrIGNvbnRhaW5zPWRveHlnZW5Hcm91cERlZmluZSxkb3h5Z2VuR3JvdXBEZWZpbmVTcGVjaWFsLEBTcGVsbCBmb2xkIGNvbnRhaW5lZGluPXBocFJlZ2lvbgogCiAgICIgU2luZ2xlIGxpbmUgYnJpZWYgZm9sbG93ZWQgYnkgbXVsdGlsaW5lIGNvbW1lbnQuCiAgIHN5biByZWdpb24gZG94eWdlbkNvbW1lbnQyIHN0YXJ0PSsvXCpcKFwqL1wpXEAhWyohXSsgZW5kPStcKi8rIGNvbnRhaW5lZCBjb250YWlucz1kb3h5Z2VuU3luY1N0YXJ0Mixkb3h5Z2VuU3RhcnQyLGRveHlnZW5UT0RPIGtlZXBlbmQgZm9sZApAQCAtOTgsNyArMTAwLDcgQEAKICAgIiBUaGlzIGhlbHBzIHdpdGggc3luYy1pbmcgYXMgZm9yIHNvbWUgcmVhc29uLCBzeW5jaW5nIGJlaGF2ZXMgZGlmZmVyZW50bHkgdG8gYSBub3JtYWwgcmVnaW9uLCBhbmQgdGhlIHN0YXJ0IHBhdHRlcm4gZG9lcyBub3QgZ2V0IG1hdGNoZWQuCiAgIHN5biBtYXRjaCBkb3h5Z2VuU3luY1N0YXJ0ICtcemVbXiovXSsgY29udGFpbmVkIG5leHRncm91cD1kb3h5Z2VuQnJpZWYsZG94eWdlblByZXYsZG94eWdlblN0YXJ0U3BlY2lhbCxkb3h5Z2VuRmluZEJyaWVmU3BlY2lhbCxkb3h5Z2VuU3RhcnRTa2lwLGRveHlnZW5QYWdlIHNraXB3aGl0ZSBza2lwbmwKIAotICBzeW4gcmVnaW9uIGRveHlnZW5CcmllZkxpbmUgY29udGFpbmVkIHN0YXJ0PStcPFxrKyBlbmQ9K1woXG5ccypcKlw9XHMqXChbQFxcXVwoW25wY2JlYV1cPlx8ZW1cPlx8cmVmXD5cfGxpbmtcPlx8ZlwkXHxbJFxcJjw+I11cKVxAIVwpXHxccyokXClcQD0rIGNvbnRhaW5zPWRveHlnZW5Db250aW51ZUNvbW1lbnQsZG94eWdlbkZpbmRCcmllZlNwZWNpYWwsZG94eWdlblNtYWxsU3BlY2lhbCxAZG94eWdlbkh0bWxHcm91cCxkb3h5Z2VuVE9ETyxkb3h5Z2VuSHlwZXJMaW5rLGRveHlnZW5IYXNoTGluayAgc2tpcHdoaXRlIGtlZXBlbmQKKyAgc3luIHJlZ2lvbiBkb3h5Z2VuQnJpZWZMaW5lIGNvbnRhaW5lZCBzdGFydD0rXDxcaysgZW5kPStcKFxuXHMqXCpcPVxzKlwoW0BcXF1cKFtucGNiZWFdXD5cfGVtXD5cfHJlZlw+XHxsaW5rXD5cfGZcJFx8WyRcXCY8PiNdXClcQCFcKVx8XHMqJFwpXEA9KyBjb250YWlucz1kb3h5Z2VuQ29udGludWVDb21tZW50LGRveHlnZW5GaW5kQnJpZWZTcGVjaWFsLGRveHlnZW5TbWFsbFNwZWNpYWwsQGRveHlnZW5IdG1sR3JvdXAsZG94eWdlblRPRE8sZG94eWdlbkh5cGVyTGluayxkb3h5Z2VuSGFzaExpbmssQFNwZWxsICBza2lwd2hpdGUga2VlcGVuZAogCiAgICIgTWF0Y2ggYSAnPCcgZm9yIGFwcGx5aW5nIGEgY29tbWVudCB0byB0aGUgcHJldmlvdXMgZWxlbWVudC4KICAgc3luIG1hdGNoIGRveHlnZW5QcmV2ICs8KyBjb250YWluZWQgbmV4dGdyb3VwPWRveHlnZW5CcmllZixkb3h5Z2VuQm9keSxkb3h5Z2VuU3BlY2lhbCxkb3h5Z2VuU3RhcnRTa2lwIHNraXB3aGl0ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZm9ydGgudmltIGIvcnVudGltZS9zeW50YXgvZm9ydGgudmltCmluZGV4IGE2MWY3ZGIuLjg3MTNhNzIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2ZvcnRoLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9mb3J0aC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgRk9SVEgKICIgTWFpbnRhaW5lcjogIENocmlzdGlhbiBWLiBKLiBCcvxzc293IDxjdmpiQGN2amIuZGU+Ci0iIExhc3QgQ2hhbmdlOiBTYSAxNCBKdWwgMjAwNyAyMTozOTo1MyBDRVNUCisiIExhc3QgQ2hhbmdlOiBTYSAwOSBGZWIgMjAwOCAxMzoyNzoyOSBDRVQKICIgRmlsZW5hbWVzOiAgICouZnMsKi5mdAogIiBVUkw6CSAgICAgICBodHRwOi8vd3d3LmN2amIuZGUvY29tcC92aW0vZm9ydGgudmltCiAKQEAgLTEwLDkgKzEwLDE3IEBACiAiIFRoZSBsaXN0IG9mIGtleXdvcmRzIGlzIGluY29tcGxldGUsIGNvbXBhcmVkIHdpdGggdGhlIG9mZmljYWwgQU5TCiAiIHdvcmRsaXN0LiBJZiB5b3UgdXNlIHRoaXMgbGFuZ3VhZ2UsIHBsZWFzZSBpbXByb3ZlIGl0LCBhbmQgc2VuZCBtZQogIiB0aGUgcGF0Y2hlcy4KKyIKKyIgQmVmb3JlIHNlbmRpbmcgbWUgcGF0Y2hlcywgcGxlYXNlIGRvd25sb2FkIHRoZSBuZXdlc3QgdmVyc2lvbiBvZiB0aGlzIGZpbGUKKyIgZnJvbSBodHRwOi8vd3d3LmN2amIuZGUvY29tcC92aW0vZm9ydGgudmltIG9yIGh0dHA6Ly93d3cudmltLm9yZy8gKHNlYXJjaAorIiBmb3IgZm9ydGgudmltKS4KIAogIiBNYW55IFRoYW5rcyB0by4uLgogIgorIiAyMDA4LTAyLTA5OgorIiBTaGF3biBLLiBRdWlubiA8c2pxdWlubiBhdCBzcGVha2Vhc3kgZG90IG5ldD4gc2VuZCBhIGJpZyBwYXRjaCB3aXRoCisiIG5ldyB3b3JkcyBjb21tb25seSB1c2VkIGluIEZvcnRoIHByb2dyYW1zIG9yIGRlZmluZWQgYnkgR05VIEZvcnRoLgorIgogIiAyMDA3LTA3LTExOgogIiBCZW5qYW1pbiBLcmlsbCA8YmVuIGF0IGNvZGllcnQgZG90IG9yZz4gc2VuZCBtZSBhIHBhdGNoCiAiIHRvIGhpZ2hsaWdodCBzcGFjZSBlcnJvcnMuCkBAIC03OSw3ICs4Nyw3IEBACiBzeW4gbWF0Y2ggZm9ydGhUb2RvIGNvbnRhaW5lZCAnQ29weXJpZ2h0XChccyhbQ2NdKVwpXD1cKFxzWzAtOV1cezIsNH1cKVw9JwogCiAiIENoYXJhY3RlcnMgYWxsb3dlZCBpbiBrZXl3b3JkcwotIiBJIGRvbid0IGtub3cgaWYgMTI4LTI1NSBhcmUgYWxsb3dlZCBpbiBBTlMtRk9SSFQKKyIgSSBkb24ndCBrbm93IGlmIDEyOC0yNTUgYXJlIGFsbG93ZWQgaW4gQU5TLUZPUlRICiBpZiB2ZXJzaW9uID49IDYwMAogICAgIHNldGxvY2FsIGlza2V5d29yZD0hLEAsMzMtMzUsJSwkLDM4LTY0LEEtWiw5MS05NixhLXosMTIzLTEyNiwxMjgtMjU1CiBlbHNlCkBAIC0xMDAsMjEgKzEwOCwyNyBAQAogCiAiIGJhc2ljIG1hdGhlbWF0aWNhbCBhbmQgbG9naWNhbCBvcGVyYXRvcnMKIHN5biBrZXl3b3JkIGZvcnRoT3BlcmF0b3JzICsgLSAqIC8gTU9EIC9NT0QgTkVHQVRFIEFCUyBNSU4gTUFYCi1zeW4ga2V5d29yZCBmb3J0aE9wZXJhdG9ycyBBTkQgT1IgWE9SIE5PVCBJTlZFUlQgMiogMi8gMSsgMS0gMisgMi0gOCoKK3N5biBrZXl3b3JkIGZvcnRoT3BlcmF0b3JzIEFORCBPUiBYT1IgTk9UIExTSElGVCBSU0hJRlQgSU5WRVJUIDIqIDIvIDErCitzeW4ga2V5d29yZCBmb3J0aE9wZXJhdG9ycyAxLSAyKyAyLSA4KiBVTkRFUisKIHN5biBrZXl3b3JkIGZvcnRoT3BlcmF0b3JzIE0rICovICovTU9EIE0qIFVNKiBNKi8gVU0vTU9EIEZNL01PRCBTTS9SRU0KLXN5biBrZXl3b3JkIGZvcnRoT3BlcmF0b3JzIEQrIEQtIERORUdBVEUgREFCUyBETUlOIERNQVgKK3N5biBrZXl3b3JkIGZvcnRoT3BlcmF0b3JzIEQrIEQtIERORUdBVEUgREFCUyBETUlOIERNQVggRDIqIEQyLwogc3luIGtleXdvcmQgZm9ydGhPcGVyYXRvcnMgRisgRi0gRiogRi8gRk5FR0FURSBGQUJTIEZNQVggRk1JTiBGTE9PUiBGUk9VTkQKIHN5biBrZXl3b3JkIGZvcnRoT3BlcmF0b3JzIEYqKiBGU1FSVCBGRVhQIEZFWFBNMSBGTE4gRkxOUDEgRkxPRyBGQUxPRyBGU0lOCiBzeW4ga2V5d29yZCBmb3J0aE9wZXJhdG9ycyBGQ09TIEZTSU5DT1MgRlRBTiBGQVNJTiBGQUNPUyBGQVRBTiBGQVRBTjIgRlNJTkgKLXN5biBrZXl3b3JkIGZvcnRoT3BlcmF0b3JzIEZDT1NIIEZUQU5IIEZBU0lOSCBGQUNPU0ggRkFUQU5ICi1zeW4ga2V5d29yZCBmb3J0aE9wZXJhdG9ycyAwPCAwPD0gMDw+IDA9IDA+IDA+PSA8IDw9IDw+ID0gPiA+PQotc3luIGtleXdvcmQgZm9ydGhPcGVyYXRvcnMgP05FR0FURSA/RE5FR0FURQorc3luIGtleXdvcmQgZm9ydGhPcGVyYXRvcnMgRkNPU0ggRlRBTkggRkFTSU5IIEZBQ09TSCBGQVRBTkggRjIqIEYyLyAxL0YKK3N5biBrZXl3b3JkIGZvcnRoT3BlcmF0b3JzIEZ+UkVMIEZ+QUJTIEZ+CitzeW4ga2V5d29yZCBmb3J0aE9wZXJhdG9ycyAwPCAwPD0gMDw+IDA9IDA+IDA+PSA8IDw9IDw+ID0gPiA+PSBVPCBVPD0KK3N5biBrZXl3b3JkIGZvcnRoT3BlcmF0b3JzIFU+IFU+PSBEMDwgRDA8PSBEMDw+IEQwPSBEMD4gRDA+PSBEPCBEPD0gRDw+CitzeW4ga2V5d29yZCBmb3J0aE9wZXJhdG9ycyBEPSBEPiBEPj0gRFU8IERVPD0gRFU+IERVPj0gV0lUSElOID9ORUdBVEUKK3N5biBrZXl3b3JkIGZvcnRoT3BlcmF0b3JzID9ETkVHQVRFIAogCiAiIHN0YWNrIG1hbmlwdWxhdGlvbnMKIHN5biBrZXl3b3JkIGZvcnRoU3RhY2sgRFJPUCBOSVAgRFVQIE9WRVIgVFVDSyBTV0FQIFJPVCAtUk9UID9EVVAgUElDSyBST0xMCi1zeW4ga2V5d29yZCBmb3J0aFN0YWNrIDJEUk9QIDJOSVAgMkRVUCAyT1ZFUiAyVFVDSyAyU1dBUCAyUk9UCi1zeW4ga2V5d29yZCBmb3J0aFN0YWNrIDNEVVAgNERVUAorc3luIGtleXdvcmQgZm9ydGhTdGFjayAyRFJPUCAyTklQIDJEVVAgMk9WRVIgMlRVQ0sgMlNXQVAgMlJPVCAyLVJPVAorc3luIGtleXdvcmQgZm9ydGhTdGFjayAzRFVQIDREVVAgNURVUCAzRFJPUCA0RFJPUCA1RFJPUCA4RFJPUCA0U1dBUCA0Uk9UCitzeW4ga2V5d29yZCBmb3J0aFN0YWNrIDQtUk9UIDRUVUNLIDhTV0FQIDhEVVAKIHN5biBrZXl3b3JkIGZvcnRoUlN0YWNrID5SIFI+IFJAIFJEUk9QIDI+UiAyUj4gMlJAIDJSRFJPUAorc3luIGtleXdvcmQgZm9ydGhSc3RhY2sgND5SIDRSPiA0UkAgNFJEUk9QCiBzeW4ga2V5d29yZCBmb3J0aEZTdGFjayBGRFJPUCBGTklQIEZEVVAgRk9WRVIgRlRVQ0sgRlNXQVAgRlJPVAogCiAiIHN0YWNrIHBvaW50ZXIgbWFuaXB1bGF0aW9ucwpAQCAtMTM5LDI0ICsxNTMsNDAgQEAKIHN5biBrZXl3b3JkIGZvcnRoTG9vcCBVTkxPT1AgTEVBVkUgP0xFQVZFIEVYSVQgRE9ORSBGT1IgTkVYVAogCiAiIG5ldyB3b3Jkcworc3luIG1hdGNoIGZvcnRoQ2xhc3NEZWYgJ1w8OmNsYXNzXHMqW14gXHRdXCtcPicKK3N5biBtYXRjaCBmb3J0aE9iamVjdERlZiAnXDw6b2JqZWN0XHMqW14gXHRdXCtcPicKIHN5biBtYXRjaCBmb3J0aENvbG9uRGVmICdcPDptXD9ccypbXiBcdF1cK1w+Jwogc3luIGtleXdvcmQgZm9ydGhFbmRPZkNvbG9uRGVmIDsgO00gO20KLXN5biBrZXl3b3JkIGZvcnRoRGVmaW5lIENPTlNUQU5UIDJDT05TVEFOVCBGQ09OU1RBTlQgVkFSSUFCTEUgMlZBUklBQkxFIENSRUFURQotc3luIGtleXdvcmQgZm9ydGhEZWZpbmUgVVNFUiBWQUxVRSBUTyBERUZFUiBJUyBET0VTPiBJTU1FRElBVEUgQ09NUElMRS1PTkxZCi1zeW4ga2V5d29yZCBmb3J0aERlZmluZSBDT01QSUxFIFJFU1RSSUNUIElOVEVSUFJFVCBQT1NUUE9ORSBFWEVDVVRFIExJVEVSQUwKLXN5biBrZXl3b3JkIGZvcnRoRGVmaW5lIENSRUFURS1JTlRFUlBSRVQvQ09NUElMRSBJTlRFUlBSRVRBVElPTj4gPElOVEVSUFJFVEFUSU9OCi1zeW4ga2V5d29yZCBmb3J0aERlZmluZSBDT01QSUxBVElPTj4gPENPTVBJTEFUSU9OIF0gTEFTVFhUIENPTVAnIFBPU1RQT05FLAotc3luIGtleXdvcmQgZm9ydGhEZWZpbmUgRklORC1OQU1FIE5BTUU+SU5UIE5BTUU/SU5UIE5BTUU+Q09NUCBOQU1FPlNUUklORyBTVEFURQotc3luIGtleXdvcmQgZm9ydGhEZWZpbmUgQzsgQ1ZBUklBQkxFCitzeW4ga2V5d29yZCBmb3J0aEVuZE9mQ2xhc3NEZWYgO2NsYXNzCitzeW4ga2V5d29yZCBmb3J0aEVuZE9mT2JqZWN0RGVmIDtvYmplY3QKK3N5biBrZXl3b3JkIGZvcnRoRGVmaW5lIENPTlNUQU5UIDJDT05TVEFOVCBGQ09OU1RBTlQgVkFSSUFCTEUgMlZBUklBQkxFCitzeW4ga2V5d29yZCBmb3J0aERlZmluZSBGVkFSSUFCTEUgQ1JFQVRFIFVTRVIgVkFMVUUgVE8gREVGRVIgSVMgRE9FUz4gSU1NRURJQVRFCitzeW4ga2V5d29yZCBmb3J0aERlZmluZSBDT01QSUxFLU9OTFkgQ09NUElMRSBSRVNUUklDVCBJTlRFUlBSRVQgUE9TVFBPTkUgRVhFQ1VURQorc3luIGtleXdvcmQgZm9ydGhEZWZpbmUgTElURVJBTCBDUkVBVEUtSU5URVJQUkVUL0NPTVBJTEUgSU5URVJQUkVUQVRJT04+CitzeW4ga2V5d29yZCBmb3J0aERlZmluZSA8SU5URVJQUkVUQVRJT04gQ09NUElMQVRJT04+IDxDT01QSUxBVElPTiBdIExBU1RYVAorc3luIGtleXdvcmQgZm9ydGhEZWZpbmUgQ09NUCcgUE9TVFBPTkUsIEZJTkQtTkFNRSBOQU1FPklOVCBOQU1FP0lOVCBOQU1FPkNPTVAKK3N5biBrZXl3b3JkIGZvcnRoRGVmaW5lIE5BTUU+U1RSSU5HIFNUQVRFIEM7IENWQVJJQUJMRQorc3luIGtleXdvcmQgZm9ydGhEZWZpbmUgLCAyLCBGLCBDLCAKK3N5biBtYXRjaCBmb3J0aERlZmluZSAiXFtJRkRFRl0iCitzeW4gbWF0Y2ggZm9ydGhEZWZpbmUgIlxbSUZVTkRFRl0iCitzeW4gbWF0Y2ggZm9ydGhEZWZpbmUgIlxbVEhFTl0iCitzeW4gbWF0Y2ggZm9ydGhEZWZpbmUgIlxbRU5ESUZdIgorc3luIG1hdGNoIGZvcnRoRGVmaW5lICJcW0VMU0VdIgorc3luIG1hdGNoIGZvcnRoRGVmaW5lICJcWz9ET10iCitzeW4gbWF0Y2ggZm9ydGhEZWZpbmUgIlxbRE9dIgorc3luIG1hdGNoIGZvcnRoRGVmaW5lICJcW0xPT1BdIgorc3luIG1hdGNoIGZvcnRoRGVmaW5lICJcWytMT09QXSIKK3N5biBtYXRjaCBmb3J0aERlZmluZSAiXFtORVhUXSIKK3N5biBtYXRjaCBmb3J0aERlZmluZSAiXFtCRUdJTl0iCitzeW4gbWF0Y2ggZm9ydGhEZWZpbmUgIlxbVU5USUxdIgorc3luIG1hdGNoIGZvcnRoRGVmaW5lICJcW0FHQUlOXSIKK3N5biBtYXRjaCBmb3J0aERlZmluZSAiXFtXSElMRV0iCitzeW4gbWF0Y2ggZm9ydGhEZWZpbmUgIlxbUkVQRUFUXSIKIHN5biBtYXRjaCBmb3J0aERlZmluZSAiXFtDT01QJ10iCiBzeW4gbWF0Y2ggZm9ydGhEZWZpbmUgIiciCiBzeW4gbWF0Y2ggZm9ydGhEZWZpbmUgJ1w8XFtcPicKIHN5biBtYXRjaCBmb3J0aERlZmluZSAiXFsnXSIKIHN5biBtYXRjaCBmb3J0aERlZmluZSAnXFtDT01QSUxFXScKLXN5biBtYXRjaCBmb3J0aENsYXNzRGVmICdcPDpjbGFzc1xzKlteIFx0XVwrXD4nCi1zeW4gbWF0Y2ggZm9ydGhPYmplY3REZWYgJ1w8Om9iamVjdFxzKlteIFx0XVwrXD4nCi1zeW4ga2V5d29yZCBmb3J0aEVuZE9mQ2xhc3NEZWYgJztjbGFzcycKLXN5biBrZXl3b3JkIGZvcnRoRW5kT2ZPYmplY3REZWYgJztvYmplY3QnCiAKICIgZGVidWdnaW5nCiBzeW4ga2V5d29yZCBmb3J0aERlYnVnIFBSSU5UREVCVUdEQVRBIFBSSU5UREVCVUdMSU5FCkBAIC0xNzUsMjcgKzIwNSw0OCBAQAogc3luIHJlZ2lvbiBmb3J0aENoYXJPcHMgc3RhcnQ9Ky4iXHMrIHNraXA9K1xcIisgZW5kPSsiKwogCiAiIGNoYXItbnVtYmVyIGNvbnZlcnNpb24KLXN5biBrZXl3b3JkIGZvcnRoQ29udmVyc2lvbiA8IyAjICM+ICNTIChOVU1CRVIpIChOVU1CRVI/KSBDT05WRVJUIEQ+RiBEPlMgRElHSVQKLXN5biBrZXl3b3JkIGZvcnRoQ29udmVyc2lvbiBEUEwgRj5EIEhMRCBIT0xEIE5VTUJFUiBTPkQgU0lHTiA+TlVNQkVSCitzeW4ga2V5d29yZCBmb3J0aENvbnZlcnNpb24gPDwjIDwjICMgIz4gIz4+ICNTIChOVU1CRVIpIChOVU1CRVI/KSBDT05WRVJUIEQ+RiAKK3N5biBrZXl3b3JkIGZvcnRoQ29udmVyc2lvbiBEPlMgRElHSVQgRFBMIEY+RCBITEQgSE9MRCBOVU1CRVIgUz5EIFNJR04gPk5VTUJFUgorc3luIGtleXdvcmQgZm9ydGhDb252ZXJzaW9uIEY+UyBTPkYKIAogIiBpbnRlcnB0cmV0ZXIsIHdvcmRib29rLCBjb21waWxlcgogc3luIGtleXdvcmQgZm9ydGhGb3J0aCAoTE9DQUwpIEJZRSBDT0xEIEFCT1JUID5CT0RZID5ORVhUID5MSU5LIENGQSA+VklFVyBIRVJFCiBzeW4ga2V5d29yZCBmb3J0aEZvcnRoIFBBRCBXT1JEUyBWSUVXIFZJRVc+IE4+TElOSyBOQU1FPiBMSU5LPiBMPk5BTUUgRk9SR0VUCi1zeW4ga2V5d29yZCBmb3J0aEZvcnRoIEJPRFk+CitzeW4ga2V5d29yZCBmb3J0aEZvcnRoIEJPRFk+IEFTU0VSVCggQVNTRVJUMCggQVNTRVJUMSggQVNTRVJUMiggQVNTRVJUMyggKQogc3luIHJlZ2lvbiBmb3J0aEZvcnRoIHN0YXJ0PStBQk9SVCJccysgc2tpcD0rXFwiKyBlbmQ9KyIrCiAKICIgdm9jYWJ1bGFyaWVzCiBzeW4ga2V5d29yZCBmb3J0aFZvY3MgT05MWSBGT1JUSCBBTFNPIFJPT1QgU0VBTCBWT0NTIE9SREVSIENPTlRFWFQgI1ZPQ1MKIHN5biBrZXl3b3JkIGZvcnRoVm9jcyBWT0NBQlVMQVJZIERFRklOSVRJT05TCiAKKyIgRmlsZSBrZXl3b3Jkcworc3luIGtleXdvcmQgZm9ydGhGaWxlTW9kZSBSL08gUi9XIFcvTyBCSU4gCitzeW4ga2V5d29yZCBmb3J0aEZpbGVXb3JkcyBPUEVOLUZJTEUgQ1JFQVRFLUZJTEUgQ0xPU0UtRklMRSBERUxFVEUtRklMRQorc3luIGtleXdvcmQgZm9ydGhGaWxlV29yZHMgUkVOQU1FLUZJTEUgUkVBRC1GSUxFIFJFQUQtTElORSBLRVktRklMRQorc3luIGtleXdvcmQgZm9ydGhGaWxlV29yZHMgS0VZPy1GSUxFIFdSSVRFLUZJTEUgV1JJVEUtTElORSBFTUlULUZJTEUKK3N5biBrZXl3b3JkIGZvcnRoRmlsZVdvcmRzIEZMVVNILUZJTEUgRklMRS1TVEFUVVMgRklMRS1QT1NJVElPTgorc3luIGtleXdvcmQgZm9ydGhGaWxlV29yZHMgUkVQT1NJVElPTi1GSUxFIEZJTEUtU0laRSBSRVNJWkUtRklMRQorc3luIGtleXdvcmQgZm9ydGhGaWxlV29yZHMgU0xVUlAtRklMRSBTTFVSUC1GSUQgU1RESU4gU1RET1VUIFNUREVSUgorc3luIGtleXdvcmQgZm9ydGhCbG9ja3MgT1BFTi1CTE9DS1MgVVNFIExPQUQgLS0+IEJMT0NLLU9GRlNFVAorc3luIGtleXdvcmQgZm9ydGhCbG9ja3MgR0VULUJMT0NLLUZJRCBCTE9DSy1QT1NJVElPTiBMSVNUIFNDUiBCTE9DSworc3luIGtleXdvcmQgZm9ydGhCbG9ja3MgQlVGRVIgRU1QVFktQlVGRkVSUyBFTVBUWS1CVUZGRVIgVVBEQVRFIFVQREFURUQ/CitzeW4ga2V5d29yZCBmb3J0aEJsb2NrcyBTQVZFLUJVRkZFUlMgU0FWRS1CVUZGRVIgRkxVU0ggVEhSVSArTE9BRCArVEhSVQorc3luIGtleXdvcmQgZm9ydGhCbG9ja3MgQkxPQ0stSU5DTFVERUQKKwogIiBudW1iZXJzCiBzeW4ga2V5d29yZCBmb3J0aE1hdGggREVDSU1BTCBIRVggQkFTRQogc3luIG1hdGNoIGZvcnRoSW50ZWdlciAnXDwtXD1bMC05Ll0qWzAtOS5dXCtcPicKK3N5biBtYXRjaCBmb3J0aEludGVnZXIgJ1w8Ji1cPVswLTkuXSpbMC05Ll1cK1w+JwogIiByZWNvZ25pemUgaGV4IGFuZCBiaW5hcnkgbnVtYmVycywgdGhlICckJyBhbmQgJyUnIG5vdGF0aW9uIGlzIGZvciBnZm9ydGgKIHN5biBtYXRjaCBmb3J0aEludGVnZXIgJ1w8XCRceCpceFwrXD4nICIgKjEqIC0tLSBkb250J3QgbWVzcwogc3luIG1hdGNoIGZvcnRoSW50ZWdlciAnXDxceCpcZFx4Klw+JyAgIiAqMiogLS0tIHRoaXMgb3JkZXIhCiBzeW4gbWF0Y2ggZm9ydGhJbnRlZ2VyICdcPCVbMC0xXSpbMC0xXVwrXD4nCi1zeW4gbWF0Y2ggZm9ydGhGbG9hdCAnXDwtXD1cZCpbLl1cPVxkXCtbRWVdXGRcK1w+Jworc3luIG1hdGNoIGZvcnRoRmxvYXQgJ1w8LVw9XGQqWy5dXD1cZFwrW0RkRWVdXGRcK1w+Jworc3luIG1hdGNoIGZvcnRoRmxvYXQgJ1w8LVw9XGQqWy5dXD1cZFwrW0RkRWVdWy0rXVxkXCtcPicKKworIiBYWFggSWYgeW91IGZpbmQgdGhpcyBvdmVya2lsbCB5b3UgY2FuIHJlbW92ZSBpdC4gdGhpcyBoYXMgdG8gY29tZSBhZnRlciB0aGUKKyIgaGlnaGxpZ2h0aW5nIGZvciBudW1iZXJzIG90aGVyd2lzZSBpdCBoYXMgbm8gZWZmZWN0Lgorc3luIHJlZ2lvbiBmb3J0aENvbW1lbnQgc3RhcnQ9JzAgXFtpZlxdJyBlbmQ9J1xbZW5kaWZcXScgZW5kPSdcW3RoZW5cXScgY29udGFpbnM9Zm9ydGhUb2RvCiAKICIgU3RyaW5ncwogc3luIHJlZ2lvbiBmb3J0aFN0cmluZyBzdGFydD0rXC4qXCIrIGVuZD0rIisgZW5kPSskKwpAQCAtMjEyLDkgKzI2MywxNSBAQAogCiAiIEluY2x1ZGUgZmlsZXMKIHN5biBtYXRjaCBmb3J0aEluY2x1ZGUgJ15JTkNMVURFXHNcK1xrXCsnCitzeW4gbWF0Y2ggZm9ydGhJbmNsdWRlICdecmVxdWlyZVxzXCtca1wrJwogc3luIG1hdGNoIGZvcnRoSW5jbHVkZSAnXmZsb2FkXHNcKycKIHN5biBtYXRjaCBmb3J0aEluY2x1ZGUgJ15uZWVkc1xzXCsnCiAKKyIgTG9jYWxzIGRlZmluaXRpb25zCitzeW4gcmVnaW9uIGZvcnRoTG9jYWxzIHN0YXJ0PSd7XHMnIHN0YXJ0PSd7JCcgZW5kPSdcc30nIGVuZD0nXn0nCitzeW4gbWF0Y2ggZm9ydGhMb2NhbHMgJ3sgfScgIiBvdGhlcndpc2UsIGF0IGxlYXN0IHR3byBzcGFjZXMgYmV0d2Vlbgorc3luIHJlZ2lvbiBmb3J0aERlcHJlY2F0ZWQgc3RhcnQ9J2xvY2Fsc3wnIGVuZD0nfCcKKwogIiBEZWZpbmUgdGhlIGRlZmF1bHQgaGlnaGxpZ2h0aW5nLgogIiBGb3IgdmVyc2lvbiA1LjcgYW5kIGVhcmxpZXI6IG9ubHkgd2hlbiBub3QgZG9uZSBhbHJlYWR5CiAiIEZvciB2ZXJzaW9uIDUuOCBhbmQgbGF0ZXI6IG9ubHkgd2hlbiBhbiBpdGVtIGRvZXNuJ3QgaGF2ZSBoaWdobGlnaHRpbmcgeWV0CkBAIC0yNTcsNiArMzE0LDExIEBACiAgICAgSGlMaW5rIGZvcnRoT2JqZWN0RGVmIERlZmluZQogICAgIEhpTGluayBmb3J0aEVuZE9mT2JqZWN0RGVmIERlZmluZQogICAgIEhpTGluayBmb3J0aEluY2x1ZGUgSW5jbHVkZQorICAgIEhpTGluayBmb3J0aExvY2FscyBUeXBlICIgbm90aGluZyBlbHNlIHVzZXMgdHlwZSBhbmQgbG9jYWxzIG11c3Qgc3RhbmQgb3V0CisgICAgSGlMaW5rIGZvcnRoRGVwcmVjYXRlZCBFcnJvciAiIGlmIHlvdSBtdXN0LCBjaGFuZ2UgdG8gVHlwZQorICAgIEhpTGluayBmb3J0aEZpbGVNb2RlIEZ1bmN0aW9uCisgICAgSGlMaW5rIGZvcnRoRmlsZVdvcmRzIFN0YXRlbWVudAorICAgIEhpTGluayBmb3J0aEJsb2NrcyBTdGF0ZW1lbnQKICAgICBIaUxpbmsgZm9ydGhTcGFjZUVycm9yIEVycm9yCiAKICAgICBkZWxjb21tYW5kIEhpTGluawpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbWFpbGFsaWFzZXMudmltIGIvcnVudGltZS9zeW50YXgvbWFpbGFsaWFzZXMudmltCmluZGV4IGRlODVhMTcuLjc0MzA2OGYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L21haWxhbGlhc2VzLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tYWlsYWxpYXNlcy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBhbGlhc2VzKDUpIGxvY2FsIGFsaWFzIGRhdGFiYXNlIGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTAxLTE0CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDgtMDQtMTQKIAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCkBAIC0xOSw3ICsxOSw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIG5leHRncm91cD1tYWlsYWxpYXNlc05hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIG1haWxhbGlhc2VzQ29tbWVudAogCi1zeW4gbWF0Y2ggICBtYWlsYWxpYXNlc05hbWUgICAgICAgICBjb250YWluZWQgJ1swLTlBLVphLXpfLV1cKycKK3N5biBtYXRjaCAgIG1haWxhbGlhc2VzTmFtZSAgICAgICAgIGNvbnRhaW5lZCAnW1s6YWxudW06XVwuXy1dXCsnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIG5leHRncm91cD1tYWlsYWxpYXNlc0NvbG9uCiAKIHN5biByZWdpb24gIG1haWxhbGlhc2VzTmFtZSAgICAgICAgIGNvbnRhaW5lZCBvbmVsaW5lIHN0YXJ0PSsiKwpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbWFrZS52aW0gYi9ydW50aW1lL3N5bnRheC9tYWtlLnZpbQppbmRleCA1ZTcyZjRlLi5lOWQ3ZWU5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tYWtlLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tYWtlLnZpbQpAQCAtMiw3ICsyLDcgQEAKICIgTGFuZ3VhZ2U6CU1ha2VmaWxlCiAiIE1haW50YWluZXI6CUNsYXVkaW8gRmxlaW5lciA8Y2xhdWRpb0BmbGVpbmVyLmNvbT4KICIgVVJMOgkJaHR0cDovL3d3dy5mbGVpbmVyLmNvbS92aW0vc3ludGF4L21ha2UudmltCi0iIExhc3QgQ2hhbmdlOgkyMDA3IEFwciAzMAorIiBMYXN0IENoYW5nZToJMjAwOCBBdWcgMDQKIAogIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKICIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKQEAgLTYzLDcgKzYzLDcgQEAKIAogCiAiIFN0YXRlbWVudHMgLyBGdW5jdGlvbnMgKEdOVSBtYWtlKQotc3luIG1hdGNoIG1ha2VTdGF0ZW1lbnQgY29udGFpbmVkICIoXChzdWJzdFx8YWRkcHJlZml4XHxhZGRzdWZmaXhcfGJhc2VuYW1lXHxjYWxsXHxkaXJcfGVycm9yXHxldmFsXHxmaWx0ZXItb3V0XHxmaWx0ZXJcfGZpbmRzdHJpbmdcfGZpcnN0d29yZFx8Zm9yZWFjaFx8aWZcfGpvaW5cfG5vdGRpclx8b3JpZ2luXHxwYXRzdWJzdFx8c2hlbGxcfHNvcnRcfHN0cmlwXHxzdWZmaXhcfHdhcm5pbmdcfHdpbGRjYXJkXHx3b3JkXHx3b3JkbGlzdFx8d29yZHNcKVw+Im1zPXMrMQorc3luIG1hdGNoIG1ha2VTdGF0ZW1lbnQgY29udGFpbmVkICIoXChzdWJzdFx8YWJzcGF0aFx8YWRkcHJlZml4XHxhZGRzdWZmaXhcfGFuZFx8YmFzZW5hbWVcfGNhbGxcfGRpclx8ZXJyb3JcfGV2YWxcfGZpbHRlci1vdXRcfGZpbHRlclx8ZmluZHN0cmluZ1x8Zmlyc3R3b3JkXHxmbGF2b3JcfGZvcmVhY2hcfGlmXHxpbmZvXHxqb2luXHxsYXN0d29yZFx8bm90ZGlyXHxvclx8b3JpZ2luXHxwYXRzdWJzdFx8cmVhbHBhdGhcfHNoZWxsXHxzb3J0XHxzdHJpcFx8c3VmZml4XHx2YWx1ZVx8d2FybmluZ1x8d2lsZGNhcmRcfHdvcmRcfHdvcmRsaXN0XHx3b3Jkc1wpXD4ibXM9cysxCiAKICIgQ29tbWVudAogaWYgZXhpc3RzKCJtYWtlX21pY3Jvc29mdCIpCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9tb2Rjb25mLnZpbSBiL3J1bnRpbWUvc3ludGF4L21vZGNvbmYudmltCmluZGV4IGQ0ZTg4MjcuLjU0YjY1OTMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L21vZGNvbmYudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L21vZGNvbmYudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgbW9kdWxlcy5jb25mKDUpIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNy0wNi0xNworIiBMYXRlc3QgUmV2aXNpb246ICAyMDA3LTEwLTI1CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApAQCAtMjEsNyArMjEsNyBAQAogCiBzeW4ga2V5d29yZCBtb2Rjb25mUHJlUHJvYyAgICAgIGFsaWFzIGRlZmluZSBpbmNsdWRlIGtlZXAgcHJ1bmUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBwb3N0LWluc3RhbGwgcG9zdC1yZW1vdmUgcHJlLWluc3RhbGwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBwcmUtcmVtb3ZlIHBlcnNpc3RkaXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBwcmUtcmVtb3ZlIHBlcnNpc3RkaXIgYmxhY2tsaXN0CiAKIHN5biBrZXl3b3JkIG1vZGNvbmZLZXl3b3JkICAgICAgYWRkIGFib3ZlIGJlbG93IGluc3RhbGwgb3B0aW9ucyBwcm9iZSBwcm9iZWFsbAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHJlbW92ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbmF0dXJhbC52aW0gYi9ydW50aW1lL3N5bnRheC9uYXR1cmFsLnZpbQppbmRleCBmN2YxNDBmLi4yNjI4MTUxIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9uYXR1cmFsLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9uYXR1cmFsLnZpbQpAQCAtMSwyMDUgKzEsMjA5IEBACiAiIFZpbSBzeW50YXggZmlsZQogIgotIiBMYW5ndWFnZToJCU5BVFVSQUwKLSIgVmVyc2lvbjoJCTIuMC4yNi4xNwotIiBNYWludGFpbmVyOglNYXJrbyBMZWlwZXJ0IDx2aW1AbWxlaXBlcnQuZGU+Ci0iIExhc3QgQ2hhbmdlZDoJMjAwMi0wMi0yOCAwOTo1MDozNgotIiBTdXBwb3J0OgkJaHR0cDovL3d3dy53aW5jb25zb2xlLmRlL3ZpbS9zeW50YXguaHRtbAorIiBMYW5ndWFnZToJTkFUVVJBTAorIiBWZXJzaW9uOgkyLjEuMC4zCisiIE1haW50YWluZXI6CU1hcmtvIHZvbiBPcHBlbiA8bWFya29Adm9uLW9wcGVuLmNvbT4KKyIgTGFzdCBDaGFuZ2VkOgkyMDA4LTA3LTI5IDAxOjQwOjUyCisiIFN1cHBvcnQ6CWh0dHA6Ly93d3cudm9uLW9wcGVuLmNvbS8KIAogIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKICIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gdGhpcyBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKIGlmIHY6dmVyc2lvbiA8IDYwMAotCXN5bnRheCBjbGVhcgotCXNldCBpc2tleXdvcmQrPS0sKiwjLCssXywvCisgIHN5bnRheCBjbGVhcgorICBzZXQgaXNrZXl3b3JkKz0tLCosIywrLF8sLwogZWxzZWlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCi0JZmluaXNoCisgIGZpbmlzaAogZWxzZQotCXNldGxvY2FsIGlza2V5d29yZCs9LSwqLCMsKyxfLC8KKyAgc2V0bG9jYWwgaXNrZXl3b3JkKz0tLCosIywrLF8sLwogZW5kaWYKIAogIiBOQVRVUkFMIGlzIGNhc2UgaW5zZW5zaXRpdmUKIHN5bnRheCBjYXNlIGlnbm9yZQogCiAiIHByZXByb2Nlc3Nvcgotc3luIGtleXdvcmQgbmF0dXJhbEluY2x1ZGUJCWluY2x1ZGUgbmV4dGdyb3VwPW5hdHVyYWxPYmpOYW1lIHNraXB3aGl0ZQorc3luIGtleXdvcmQgbmF0dXJhbEluY2x1ZGUJaW5jbHVkZSBuZXh0Z3JvdXA9bmF0dXJhbE9iak5hbWUgc2tpcHdoaXRlCiAKICIgZGVmaW5lIGRhdGEKLXN5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCQlkZWZpbmUgZGF0YSBlbmQtZGVmaW5lCi1zeW4ga2V5d29yZCBuYXR1cmFsS2V5d29yZAkJaW5kZXBlbmRlbnQgZ2xvYmFsIHBhcmFtZXRlciBsb2NhbCByZWRlZmluZSB2aWV3Ci1zeW4ga2V5d29yZCBuYXR1cmFsS2V5d29yZAkJY29uc3RbYW50XSBpbml0IGluaXRpYWwKK3N5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCWRlZmluZSBkYXRhIGVuZC1kZWZpbmUKK3N5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCWluZGVwZW5kZW50IGdsb2JhbCBwYXJhbWV0ZXIgbG9jYWwgcmVkZWZpbmUgdmlldworc3luIGtleXdvcmQgbmF0dXJhbEtleXdvcmQJY29uc3RbYW50XSBpbml0IGluaXRpYWwKIAogIiBsb29wcwotc3luIGtleXdvcmQgbmF0dXJhbExvb3AJCQlyZWFkIGVuZC1yZWFkIGVuZC13b3JrIGZpbmQgZW5kLWZpbmQgaGlzdG9ncmFtIGVuZC1oaXN0b2dyYW0KLXN5biBrZXl3b3JkIG5hdHVyYWxMb29wCQkJZW5kLWFsbCBzb3J0IGVuZC1zb3J0IHNvcnRlZCBkZXNjZW5kaW5nIGFzY2VuZGluZwotc3luIGtleXdvcmQgbmF0dXJhbFJlcGVhdAkJcmVwZWF0IGVuZC1yZXBlYXQgd2hpbGUgdW50aWwgZm9yIHN0ZXAgZW5kLWZvcgotc3luIGtleXdvcmQgbmF0dXJhbEtleXdvcmQJCWluIGZpbGUgd2l0aCBmaWVsZCBzdGFydGluZyBmcm9tIGVuZGluZyBhdCB0aHJ1IGJ5IGlzbiB3aGVyZQotc3luIGtleXdvcmQgbmF0dXJhbEVycm9yCQlvbiBlcnJvciBlbmQtZXJyb3IKLXN5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCQlhY2NlcHQgcmVqZWN0IGVuZC1lbmRkYXRhIG51bWJlciB1bmlxdWUgcmV0YWluIGFzIHJlbGVhc2UKLXN5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCQlzdGFydCBlbmQtc3RhcnQgYnJlYWsgZW5kLWJyZWFrIHBoeXNpY2FsIHBhZ2UgdG9wIHNlcXVlbmNlCi1zeW4ga2V5d29yZCBuYXR1cmFsS2V5d29yZAkJZW5kLXRvcHBhZ2UgZW5kLWVuZHBhZ2UgZW5kLWVuZGZpbGUgYmVmb3JlIHByb2Nlc3NpbmcKLXN5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCQllbmQtYmVmb3JlCitzeW4ga2V5d29yZCBuYXR1cmFsTG9vcAkJcmVhZCBlbmQtcmVhZCBlbmQtd29yayBmaW5kIGVuZC1maW5kIGhpc3RvZ3JhbSBlbmQtaGlzdG9ncmFtCitzeW4ga2V5d29yZCBuYXR1cmFsTG9vcAkJZW5kLWFsbCBzb3J0IGVuZC1zb3J0IHNvcnRlZCBkZXNjZW5kaW5nIGFzY2VuZGluZworc3luIGtleXdvcmQgbmF0dXJhbFJlcGVhdAlyZXBlYXQgZW5kLXJlcGVhdCB3aGlsZSB1bnRpbCBmb3Igc3RlcCBlbmQtZm9yCitzeW4ga2V5d29yZCBuYXR1cmFsS2V5d29yZAlpbiBmaWxlIHdpdGggZmllbGQgc3RhcnRpbmcgZnJvbSBlbmRpbmcgYXQgdGhydSBieSBpc24gd2hlcmUKK3N5biBrZXl3b3JkIG5hdHVyYWxFcnJvcglvbiBlcnJvciBlbmQtZXJyb3IKK3N5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCWFjY2VwdCByZWplY3QgZW5kLWVuZGRhdGEgbnVtYmVyIHVuaXF1ZSByZXRhaW4gYXMgcmVsZWFzZQorc3luIGtleXdvcmQgbmF0dXJhbEtleXdvcmQJc3RhcnQgZW5kLXN0YXJ0IGJyZWFrIGVuZC1icmVhayBwaHlzaWNhbCBwYWdlIHRvcCBzZXF1ZW5jZQorc3luIGtleXdvcmQgbmF0dXJhbEtleXdvcmQJZW5kLXRvcHBhZ2UgZW5kLWVuZHBhZ2UgZW5kLWVuZGZpbGUgYmVmb3JlIHByb2Nlc3NpbmcKK3N5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCWVuZC1iZWZvcmUKIAogIiBjb25kaXRpb25hbHMKIHN5biBrZXl3b3JkIG5hdHVyYWxDb25kaXRpb25hbAlpZiB0aGVuIGVsc2UgZW5kLWlmIGVuZC1ub3JlYwogc3luIGtleXdvcmQgbmF0dXJhbENvbmRpdGlvbmFsCWRlY2lkZSBlbmQtZGVjaWRlIHZhbHVlIHdoZW4gY29uZGl0aW9uIG5vbmUgYW55CiAKICIgYXNzaWdubWVudCAvIGNhbGN1bGF0aW9uCi1zeW4ga2V5d29yZCBuYXR1cmFsS2V5d29yZAkJcmVzZXQgYXNzaWduIG1vdmUgbGVmdCByaWdodCBqdXN0aWZpZWQgY29tcHJlc3MgdG8gaW50byBlZGl0ZWQKLXN5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCQlhZGQgc3VidHJhY3QgbXVsdGlwbHkgZGl2aWRlIGNvbXB1dGUgbmFtZQotc3luIGtleXdvcmQgbmF0dXJhbEtleXdvcmQJCWFsbCBnaXZpbmcgcmVtYWluZGVyIHJvdW5kZWQgbGVhdmluZyBzcGFjZQotc3luIGtleXdvcmQgbmF0dXJhbEtleXdvcmQJCWV4YW1pbmUgZnVsbCByZXBsYWNlIGdpdmluZyBzZXBhcmF0ZSBkZWxpbWl0ZXIgbW9kaWZpZWQKLXN5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCQlzdXNwZW5kIGlkZW50aWNhbCBzdXBwcmVzcworc3luIGtleXdvcmQgbmF0dXJhbEtleXdvcmQJcmVzZXQgYXNzaWduIG1vdmUgbGVmdCByaWdodCBqdXN0aWZpZWQgY29tcHJlc3MgdG8gaW50byBlZGl0ZWQKK3N5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCWFkZCBzdWJ0cmFjdCBtdWx0aXBseSBkaXZpZGUgY29tcHV0ZSBuYW1lCitzeW4ga2V5d29yZCBuYXR1cmFsS2V5d29yZAlhbGwgZ2l2aW5nIHJlbWFpbmRlciByb3VuZGVkIGxlYXZpbmcgc3BhY2UgbnVtZXJpYworc3luIGtleXdvcmQgbmF0dXJhbEtleXdvcmQJZXhhbWluZSBmdWxsIHJlcGxhY2UgZ2l2aW5nIHNlcGFyYXRlIGRlbGltaXRlciBtb2RpZmllZAorc3luIGtleXdvcmQgbmF0dXJhbEtleXdvcmQJc3VzcGVuZCBpZGVudGljYWwgc3VwcHJlc3MKIAogIiBwcm9ncmFtIGZsb3cKLXN5biBrZXl3b3JkIG5hdHVyYWxGbG93CQkJY2FsbG5hdCBmZXRjaCByZXR1cm4gZW50ZXIgZXNjYXBlIGJvdHRvbSB0b3Agc3RhY2sgZm9ybWF0dGVkCi1zeW4ga2V5d29yZCBuYXR1cmFsRmxvdwkJCWNvbW1hbmQgY2FsbAotc3luIGtleXdvcmQgbmF0dXJhbGZsb3cJCQllbmQtc3Vicm91dGluZSByb3V0aW5lCitzeW4ga2V5d29yZCBuYXR1cmFsRmxvdwkJY2FsbG5hdCBmZXRjaCByZXR1cm4gZW50ZXIgZXNjYXBlIGJvdHRvbSB0b3Agc3RhY2sgZm9ybWF0dGVkCitzeW4ga2V5d29yZCBuYXR1cmFsRmxvdwkJY29tbWFuZCBjYWxsCitzeW4ga2V5d29yZCBuYXR1cmFsZmxvdwkJZW5kLXN1YnJvdXRpbmUgcm91dGluZQogCiAiIGZpbGUgb3BlcmF0aW9ucwotc3luIGtleXdvcmQgbmF0dXJhbEtleXdvcmQJCXVwZGF0ZSBzdG9yZSBnZXQgZGVsZXRlIGVuZCB0cmFuc2FjdGlvbiB3b3JrIG9uY2UgY2xvc2UKK3N5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCXVwZGF0ZSBzdG9yZSBnZXQgZGVsZXRlIGVuZCB0cmFuc2FjdGlvbiB3b3JrIG9uY2UgY2xvc2UKIAogIiBvdGhlciBrZXl3b3Jkcwotc3luIGtleXdvcmQgbmF0dXJhbEtleXdvcmQJCWZpcnN0IGV2ZXJ5IG9mIG5vIHJlY29yZFtzXSBmb3VuZCBpZ25vcmUgaW1tZWRpYXRlCi1zeW4ga2V5d29yZCBuYXR1cmFsS2V5d29yZAkJc2V0IHNldHRpbWUga2V5IGNvbnRyb2wgc3RvcCB0ZXJtaW5hdGUKK3N5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCWZpcnN0IGV2ZXJ5IG9mIG5vIHJlY29yZFtzXSBmb3VuZCBpZ25vcmUgaW1tZWRpYXRlCitzeW4ga2V5d29yZCBuYXR1cmFsS2V5d29yZAlzZXQgc2V0dGltZSBrZXkgY29udHJvbCBzdG9wIHRlcm1pbmF0ZQogCiAiIGluLS9vdXRwdXQKLXN5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCQl3cml0ZSBkaXNwbGF5IGlucHV0IHJlaW5wdXQgbm90aXRsZSBub2hkciBtYXAgbmV3cGFnZSBtYXJrCi1zeW4ga2V5d29yZCBuYXR1cmFsS2V5d29yZAkJYWxhcm0gdGV4dCBoZWxwIGVqZWN0IGluZGV4Ci1zeW4ga2V5d29yZCBuYXR1cmFsS2V5d29yZAkJZm9ybWF0IHByaW50ZXIgc2tpcCBsaW5lcworc3luIGtleXdvcmQgbmF0dXJhbEtleXdvcmQJd3JpdGUgZGlzcGxheSBpbnB1dCByZWlucHV0IG5vdGl0bGUgbm9oZHIgbWFwIG5ld3BhZ2UKK3N5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCWFsYXJtIHRleHQgaGVscCBlamVjdCBpbmRleCB3aW5kb3cgYmFzZSBzaXplCitzeW4ga2V5d29yZCBuYXR1cmFsS2V5d29yZAlmb3JtYXQgcHJpbnRlciBza2lwIGxpbmVzCiAKICIgZnVuY3Rpb25zCi1zeW4ga2V5d29yZCBuYXR1cmFsS2V5d29yZAkJYWJzIGF0biBjb3MgZXhwIGZyYWMgaW50IGxvZyBzZ24gc2luIHNxcnQgdGFuIHZhbCBvbGQKK3N5biBrZXl3b3JkIG5hdHVyYWxLZXl3b3JkCWFicyBhdG4gY29zIGV4cCBmcmFjIGludCBsb2cgc2duIHNpbiBzcXJ0IHRhbiB2YWwgb2xkCitzeW4ga2V5d29yZCBuYXR1cmFsS2V5d29yZAlwb3MKIAogIiByZXBvcnQgbW9kZSBrZXl3b3Jkcwogc3luIGtleXdvcmQgbmF0dXJhbFJNS2V5d29yZAlzYW1lIGxvb3Agb2J0YWluIGluZGV4ZWQgZG8gZG9lbmQKIAogIiBTdWJyb3V0aW5lIG5hbWUKLXN5biBrZXl3b3JkCW5hdHVyYWxGbG93CQkJcGVyZm9ybSBzdWJyb3V0aW5lIG5leHRncm91cD1uYXR1cmFsRnVuY3Rpb24gc2tpcHdoaXRlCi1zeW4gbWF0Y2gJbmF0dXJhbEZ1bmN0aW9uCQkiXDxbYS16XVstX2EtejAtOV0qXD4iCitzeW4ga2V5d29yZCBuYXR1cmFsRmxvdwkJcGVyZm9ybSBzdWJyb3V0aW5lIG5leHRncm91cD1uYXR1cmFsRnVuY3Rpb24gc2tpcHdoaXRlCitzeW4gbWF0Y2ggICBuYXR1cmFsRnVuY3Rpb24JIlw8W2Etel1bLV9hLXowLTldKlw+IgogCi1zeW4ga2V5d29yZAluYXR1cmFsRmxvdwkJCXVzaW5nIG5leHRncm91cD1uYXR1cmFsS2V5d29yZCxuYXR1cmFsT2JqTmFtZSBza2lwd2hpdGUKLXN5biBtYXRjaAluYXR1cmFsT2JqTmFtZQkJIlw8W2Etel1bLV9hLXowLTldXHssN31cPiIKK3N5biBrZXl3b3JkIG5hdHVyYWxGbG93CQl1c2luZyBuZXh0Z3JvdXA9bmF0dXJhbEtleXdvcmQsbmF0dXJhbE9iak5hbWUgc2tpcHdoaXRlCitzeW4gbWF0Y2ggICBuYXR1cmFsT2JqTmFtZQkiXDxbYS16XVstX2EtejAtOV1ceyw3fVw+IgogCiAiIExhYmVscwotc3luIG1hdGNoCW5hdHVyYWxMYWJlbAkJIlw8WysjYS16XVstXyNhLXowLTldKlwuIgotc3luIG1hdGNoCW5hdHVyYWxSZWYJCQkiXDxbKyNhLXpdWy1fI2EtejAtOV0qXD5cLlw8WysjYS16XVsqXVw9Wy1fI2EtejAtOV0qXD4iCitzeW4gbWF0Y2ggICBuYXR1cmFsTGFiZWwJIlw8WysjYS16XVstXyNhLXowLTldKlwuIgorc3luIG1hdGNoICAgbmF0dXJhbFJlZgkJIlw8WysjYS16XVstXyNhLXowLTldKlw+XC5cPFsrI2Etel1bKl1cPVstXyNhLXowLTldKlw+IgorCisiIG1hcmsga2V5d29yZCBzcGVjaWFsIGhhbmRsaW5nCitzeW4ga2V5d29yZCBuYXR1cmFsS2V5d29yZAltYXJrIG5leHRncm91cD1uYXR1cmFsTWFyayBza2lwd2hpdGUKK3N5biBtYXRjaCAgIG5hdHVyYWxNYXJrCQkiXDxcKlthLXpdWy1fIy5hLXowLTldKlw+IgogCiAiIFN5c3RlbSB2YXJpYWJsZXMKLXN5biBtYXRjaAluYXR1cmFsU3lzVmFyCQkiXDxcKlthLXpdWy1hLXowLTldKlw+Igorc3luIG1hdGNoICAgbmF0dXJhbFN5c1ZhcgkiXDxcKlthLXpdWy1hLXowLTldKlw+IgogCiAiaW50ZWdlciBudW1iZXIsIG9yIGZsb2F0aW5nIHBvaW50IG51bWJlciB3aXRob3V0IGEgZG90Lgotc3luIG1hdGNoCW5hdHVyYWxOdW1iZXIJCSJcPC1cPVxkXCtcPiIKK3N5biBtYXRjaCAgIG5hdHVyYWxOdW1iZXIJIlw8LVw9XGRcK1w+IgogImZsb2F0aW5nIHBvaW50IG51bWJlciwgd2l0aCBkb3QKLXN5biBtYXRjaAluYXR1cmFsTnVtYmVyCQkiXDwtXD1cZFwrXC5cZFwrXD4iCitzeW4gbWF0Y2ggICBuYXR1cmFsTnVtYmVyCSJcPC1cPVxkXCtcLlxkXCtcPiIKICJmbG9hdGluZyBwb2ludCBudW1iZXIsIHN0YXJ0aW5nIHdpdGggYSBkb3QKLXN5biBtYXRjaAluYXR1cmFsTnVtYmVyCQkiXC5cZFwrIgorc3luIG1hdGNoICAgbmF0dXJhbE51bWJlcgkiXC5cZFwrIgogCiAiIEZvcm1hdHMgaW4gd3JpdGUgc3RhdGVtZW50Ci1zeW4gbWF0Y2gJbmF0dXJhbEZvcm1hdAkJIlw8XGRcK1tUWF1cPiIKK3N5biBtYXRjaCAgIG5hdHVyYWxGb3JtYXQJIlw8XGRcK1tUWF1cPiIKIAogIiBTdHJpbmcgYW5kIENoYXJhY3RlciBjb250c3RhbnRzCi1zeW4gbWF0Y2gJbmF0dXJhbFN0cmluZwkJIkgnXHhcKyciCi1zeW4gcmVnaW9uICBuYXR1cmFsU3RyaW5nCQlzdGFydD0rIisgZW5kPSsiKwotc3luIHJlZ2lvbgluYXR1cmFsU3RyaW5nCQlzdGFydD0rJysgZW5kPSsnKworc3luIG1hdGNoICAgbmF0dXJhbFN0cmluZwkiSCdceFwrJyIKK3N5biByZWdpb24gIG5hdHVyYWxTdHJpbmcJc3RhcnQ9KyIrIGVuZD0rIisKK3N5biByZWdpb24gIG5hdHVyYWxTdHJpbmcJc3RhcnQ9KycrIGVuZD0rJysKIAogIiBUeXBlIGRlZmluaXRpb24KLXN5biBtYXRjaAluYXR1cmFsQXR0cmlidXRlCSJcPFstYS16XVthLXpdPVstYS16MC05X1wuLF1cK1w+Igotc3luIG1hdGNoCW5hdHVyYWxUeXBlCQkJY29udGFpbmVkICJcPFtBQklOUF1cZFwrXCgsXGRcK1wpXD1cPiIKLXN5biBtYXRjaAluYXR1cmFsVHlwZQkJCWNvbnRhaW5lZCAiXDxbQ0xdXD4iCitzeW4gbWF0Y2ggICBuYXR1cmFsQXR0cmlidXRlCSJcPFstYS16XVthLXpdPVstYS16MC05X1wuLF1cK1w+Igorc3luIG1hdGNoICAgbmF0dXJhbFR5cGUJCWNvbnRhaW5lZCAiXDxbQUJJTlBdXGRcK1woLFxkXCtcKVw9XD4iCitzeW4gbWF0Y2ggICBuYXR1cmFsVHlwZQkJY29udGFpbmVkICJcPFtDTF1cPiIKIAogIiAiVE9ETyIgLyBvdGhlciBjb21tZW50cwotc3luIGtleXdvcmQgbmF0dXJhbFRvZG8JCQljb250YWluZWQgdG9kbyB0ZXN0Ci1zeW4gbWF0Y2gJbmF0dXJhbENvbW1lbnRNYXJrCWNvbnRhaW5lZCAiW2Etel1bXiBcdC86fF0qXChcc1teIFx0LzonInxdXCtcKSo6XHMiaGU9ZS0xCitzeW4ga2V5d29yZCBuYXR1cmFsVG9kbwkJY29udGFpbmVkIHRvZG8gdGVzdAorc3luIG1hdGNoICAgbmF0dXJhbENvbW1lbnRNYXJrCWNvbnRhaW5lZCAiW2Etel1bXiBcdC86fF0qXChcc1teIFx0LzonInxdXCtcKSo6XHMiaGU9ZS0xCiAKICIgY29tbWVudHMKLXN5biByZWdpb24JbmF0dXJhbENvbW1lbnQJCXN0YXJ0PSIvXCoiIGVuZD0iJCIgY29udGFpbnM9bmF0dXJhbFRvZG8sbmF0dXJhbExpbmVSZWYsbmF0dXJhbENvbW1lbnRNYXJrCi1zeW4gcmVnaW9uCW5hdHVyYWxDb21tZW50CQlzdGFydD0iXlwqW1wgXCpdIiBlbmQ9IiQiIGNvbnRhaW5zPW5hdHVyYWxUb2RvLG5hdHVyYWxMaW5lUmVmLG5hdHVyYWxDb21tZW50TWFyawotc3luIHJlZ2lvbgluYXR1cmFsQ29tbWVudAkJc3RhcnQ9Il5cZFx7NH0gXCpbXCBcKl0ibGM9NSBlbmQ9IiQiIGNvbnRhaW5zPW5hdHVyYWxUb2RvLG5hdHVyYWxMaW5lUmVmLG5hdHVyYWxDb21tZW50TWFyawotc3luIG1hdGNoCW5hdHVyYWxDb21tZW50CQkiXiokIgotc3luIG1hdGNoCW5hdHVyYWxDb21tZW50CQkiXlxkXHs0fSBcKiQibGM9NQorc3luIHJlZ2lvbiAgbmF0dXJhbENvbW1lbnQJc3RhcnQ9Ii9cKiIgZW5kPSIkIiBjb250YWlucz1uYXR1cmFsVG9kbyxuYXR1cmFsTGluZVJlZixuYXR1cmFsQ29tbWVudE1hcmsKK3N5biByZWdpb24gIG5hdHVyYWxDb21tZW50CXN0YXJ0PSJeXCpbICpdIiBlbmQ9IiQiIGNvbnRhaW5zPW5hdHVyYWxUb2RvLG5hdHVyYWxMaW5lUmVmLG5hdHVyYWxDb21tZW50TWFyaworc3luIHJlZ2lvbiAgbmF0dXJhbENvbW1lbnQJc3RhcnQ9Il5cZFx7NH0gXCpbXCBcKl0ibGM9NSBlbmQ9IiQiIGNvbnRhaW5zPW5hdHVyYWxUb2RvLG5hdHVyYWxMaW5lUmVmLG5hdHVyYWxDb21tZW50TWFyaworc3luIG1hdGNoICAgbmF0dXJhbENvbW1lbnQJIl5cKiQiCitzeW4gbWF0Y2ggICBuYXR1cmFsQ29tbWVudAkiXlxkXHs0fSBcKiQibGM9NQogIiAvKiBpcyBsZWdhbCBzeW50YXggaW4gcGFyZW50aGVzZXMgZS5nLiAiI2lkZW50KGxhYmVsLi8qKSIKLXN5biByZWdpb24JbmF0dXJhbFBDb21tZW50CQljb250YWluZWQgc3RhcnQ9Ii9cKlxzKlteKSxdIiAgZW5kPSIkIiBjb250YWlucz1uYXR1cmFsVG9kbyxuYXR1cmFsTGluZVJlZixuYXR1cmFsQ29tbWVudE1hcmsKK3N5biByZWdpb24gIG5hdHVyYWxQQ29tbWVudAljb250YWluZWQgc3RhcnQ9Ii9cKlxzKlteKSxdIiAgZW5kPSIkIiBjb250YWlucz1uYXR1cmFsVG9kbyxuYXR1cmFsTGluZVJlZixuYXR1cmFsQ29tbWVudE1hcmsKIAogIiBvcGVyYXRvcnMKLXN5biBrZXl3b3JkCW5hdHVyYWxPcGVyYXRvcgkJYW5kIG9yIG5vdCBlcSBuZSBndCBsdCBnZSBsZSBtYXNrIHNjYW4KK3N5biBrZXl3b3JkIG5hdHVyYWxPcGVyYXRvcglhbmQgb3Igbm90IGVxIG5lIGd0IGx0IGdlIGxlIG1hc2sgc2NhbiBtb2RpZmllZAogCiAiIGNvbnN0YW50cwotc3luIGtleXdvcmQgbmF0dXJhbEJvb2xlYW4JCXRydWUgZmFsc2UKLQotc3luIG1hdGNoCW5hdHVyYWxMaW5lTm8JCSJeXGRcezR9Igorc3luIGtleXdvcmQgbmF0dXJhbEJvb2xlYW4JdHJ1ZSBmYWxzZQorc3luIG1hdGNoICAgbmF0dXJhbExpbmVObwkiXlxkXHs0fSIKIAogIiBpZGVudGlmaWVycwotc3luIG1hdGNoCW5hdHVyYWxJZGVudAkJIlw8WysjYS16XVstXyNhLXowLTldKlw+W15cLiddIm1lPWUtMQotc3luIG1hdGNoCW5hdHVyYWxJZGVudAkJIlw8WysjYS16XVstXyNhLXowLTldKiQiCi1zeW4gbWF0Y2gJbmF0dXJhbExlZ2FsSWRlbnQJIlsrI2Etel1bLV8jYS16MC05XSovWy1fI2EtejAtOV0qIgorc3luIG1hdGNoICAgbmF0dXJhbElkZW50CSJcPFsrI2Etel1bLV8jYS16MC05XSpcPlteXC4nXSJtZT1lLTEKK3N5biBtYXRjaCAgIG5hdHVyYWxJZGVudAkiXDxbKyNhLXpdWy1fI2EtejAtOV0qJCIKK3N5biBtYXRjaCAgIG5hdHVyYWxMZWdhbElkZW50CSJbKyNhLXpdWy1fI2EtejAtOV0qL1stXyNhLXowLTldKiIKIAogIiBwYXJlbnRoZXNlcwotc3luIHJlZ2lvbiAgbmF0dXJhbFBhcgkJCW1hdGNoZ3JvdXA9bmF0dXJhbFBhckd1aSBzdGFydD0iKCIgZW5kPSIpIiBjb250YWlucz1uYXR1cmFsTGFiZWwsbmF0dXJhbFJlZixuYXR1cmFsT3BlcmF0b3IsQG5hdHVyYWxDb25zdGFudCxuYXR1cmFsVHlwZSxuYXR1cmFsU3lzVmFyLG5hdHVyYWxQYXIsbmF0dXJhbExpbmVObyxuYXR1cmFsUENvbW1lbnQKLXN5biBtYXRjaAluYXR1cmFsTGluZVJlZgkJIihcZFx7NH0pIgorc3luIHJlZ2lvbiAgbmF0dXJhbFBhcgkJbWF0Y2hncm91cD1uYXR1cmFsUGFyR3VpIHN0YXJ0PSIoIiBlbmQ9IikiIGNvbnRhaW5zPW5hdHVyYWxMYWJlbCxuYXR1cmFsUmVmLG5hdHVyYWxPcGVyYXRvcixAbmF0dXJhbENvbnN0YW50LG5hdHVyYWxUeXBlLG5hdHVyYWxTeXNWYXIsbmF0dXJhbFBhcixuYXR1cmFsTGluZU5vLG5hdHVyYWxQQ29tbWVudAorc3luIG1hdGNoICAgbmF0dXJhbExpbmVSZWYJIihcZFx7NH0pIgogCiAiIGJ1aWxkIHN5bnRheCBncm91cHMKIHN5bnRheCBjbHVzdGVyIG5hdHVyYWxDb25zdGFudAljb250YWlucz1uYXR1cmFsU3RyaW5nLG5hdHVyYWxOdW1iZXIsbmF0dXJhbEF0dHJpYnV0ZSxuYXR1cmFsQm9vbGVhbgogCiAiIGZvbGRpbmcKIGlmIHY6dmVyc2lvbiA+PSA2MDAKLQlzZXQgZm9sZGlnbm9yZT0qCisgIHNldCBmb2xkaWdub3JlPSoKIGVuZGlmCiAKIAogaWYgdjp2ZXJzaW9uID49IDUwOCB8fCAhZXhpc3RzKCJkaWRfbmF0dXJhbF9zeW50YXhfaW5pdHMiKQotCWlmIHY6dmVyc2lvbiA8IDUwOAotCQlsZXQgZGlkX25hdHVyYWxfc3ludGF4X2luaXRzID0gMQotCQljb21tYW5kIC1uYXJncz0rIEhpTGluayBoaSBsaW5rIDxhcmdzPgotCWVsc2UKLQkJY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgZGVmIGxpbmsgPGFyZ3M+Ci0JZW5kaWYKLQkiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyCisgIGlmIHY6dmVyc2lvbiA8IDUwOAorICAgIGxldCBkaWRfbmF0dXJhbF9zeW50YXhfaW5pdHMgPSAxCisgICAgY29tbWFuZCAtbmFyZ3M9KyBIaUxpbmsgaGkgbGluayA8YXJncz4KKyAgZWxzZQorICAgIGNvbW1hbmQgLW5hcmdzPSsgSGlMaW5rIGhpIGRlZiBsaW5rIDxhcmdzPgorICBlbmRpZgorICAiIFRoZSBkZWZhdWx0IG1ldGhvZHMgZm9yIGhpZ2hsaWdodGluZy4gIENhbiBiZSBvdmVycmlkZGVuIGxhdGVyCiAKLQkiIENvbnN0YW50cwotCUhpTGluayBuYXR1cmFsRm9ybWF0CQlDb25zdGFudAotCUhpTGluayBuYXR1cmFsQXR0cmlidXRlCQlDb25zdGFudAotCUhpTGluayBuYXR1cmFsTnVtYmVyCQlOdW1iZXIKLQlIaUxpbmsgbmF0dXJhbFN0cmluZwkJU3RyaW5nCi0JSGlMaW5rIG5hdHVyYWxCb29sZWFuCQlCb29sZWFuCisgICIgQ29uc3RhbnRzCisgIEhpTGluayBuYXR1cmFsRm9ybWF0CQlDb25zdGFudAorICBIaUxpbmsgbmF0dXJhbEF0dHJpYnV0ZQlDb25zdGFudAorICBIaUxpbmsgbmF0dXJhbE51bWJlcgkJTnVtYmVyCisgIEhpTGluayBuYXR1cmFsU3RyaW5nCQlTdHJpbmcKKyAgSGlMaW5rIG5hdHVyYWxCb29sZWFuCQlCb29sZWFuCiAKLQkiIEFsbCBraW5kcyBvZiBrZXl3b3JkcwotCUhpTGluayBuYXR1cmFsQ29uZGl0aW9uYWwJQ29uZGl0aW9uYWwKLQlIaUxpbmsgbmF0dXJhbFJlcGVhdAkJUmVwZWF0Ci0JSGlMaW5rIG5hdHVyYWxMb29wCQkJUmVwZWF0Ci0JSGlMaW5rIG5hdHVyYWxGbG93CQkJS2V5d29yZAotCUhpTGluayBuYXR1cmFsRXJyb3IJCQlLZXl3b3JkCi0JSGlMaW5rIG5hdHVyYWxLZXl3b3JkCQlLZXl3b3JkCi0JSGlMaW5rIG5hdHVyYWxPcGVyYXRvcgkJT3BlcmF0b3IKLQlIaUxpbmsgbmF0dXJhbFBhckd1aQkJT3BlcmF0b3IKKyAgIiBBbGwga2luZHMgb2Yga2V5d29yZHMKKyAgSGlMaW5rIG5hdHVyYWxDb25kaXRpb25hbAlDb25kaXRpb25hbAorICBIaUxpbmsgbmF0dXJhbFJlcGVhdAkJUmVwZWF0CisgIEhpTGluayBuYXR1cmFsTG9vcAkJUmVwZWF0CisgIEhpTGluayBuYXR1cmFsRmxvdwkJS2V5d29yZAorICBIaUxpbmsgbmF0dXJhbEVycm9yCQlLZXl3b3JkCisgIEhpTGluayBuYXR1cmFsS2V5d29yZAkJS2V5d29yZAorICBIaUxpbmsgbmF0dXJhbE9wZXJhdG9yCU9wZXJhdG9yCisgIEhpTGluayBuYXR1cmFsUGFyR3VpCQlPcGVyYXRvcgogCi0JIiBMYWJlbHMKLQlIaUxpbmsgbmF0dXJhbExhYmVsCQkJTGFiZWwKLQlIaUxpbmsgbmF0dXJhbFJlZkxhYmVsCQlMYWJlbAorICAiIExhYmVscworICBIaUxpbmsgbmF0dXJhbExhYmVsCQlMYWJlbAorICBIaUxpbmsgbmF0dXJhbFJlZkxhYmVsCUxhYmVsCiAKLQkiIENvbW1lbnRzCi0JSGlMaW5rIG5hdHVyYWxQQ29tbWVudAkJQ29tbWVudAotCUhpTGluayBuYXR1cmFsQ29tbWVudAkJQ29tbWVudAotCUhpTGluayBuYXR1cmFsVG9kbwkJCVRvZG8KLQlIaUxpbmsgbmF0dXJhbENvbW1lbnRNYXJrCVByZVByb2MKKyAgIiBDb21tZW50cworICBIaUxpbmsgbmF0dXJhbFBDb21tZW50CUNvbW1lbnQKKyAgSGlMaW5rIG5hdHVyYWxDb21tZW50CQlDb21tZW50CisgIEhpTGluayBuYXR1cmFsVG9kbwkJVG9kbworICBIaUxpbmsgbmF0dXJhbENvbW1lbnRNYXJrCVByZVByb2MKIAotCUhpTGluayBuYXR1cmFsSW5jbHVkZQkJSW5jbHVkZQotCUhpTGluayBuYXR1cmFsU3lzVmFyCQlJZGVudGlmaWVyCi0JSGlMaW5rIG5hdHVyYWxMaW5lTm8JCUxpbmVOcgotCUhpTGluayBuYXR1cmFsTGluZVJlZgkJRXJyb3IKLQlIaUxpbmsgbmF0dXJhbFNwZWNpYWwJCVNwZWNpYWwKLQlIaUxpbmsgbmF0dXJhbENvbUtleQkJVG9kbworICBIaUxpbmsgbmF0dXJhbEluY2x1ZGUJCUluY2x1ZGUKKyAgSGlMaW5rIG5hdHVyYWxTeXNWYXIJCUlkZW50aWZpZXIKKyAgSGlMaW5rIG5hdHVyYWxMaW5lTm8JCUxpbmVOcgorICBIaUxpbmsgbmF0dXJhbExpbmVSZWYJCUVycm9yCisgIEhpTGluayBuYXR1cmFsU3BlY2lhbAkJU3BlY2lhbAorICBIaUxpbmsgbmF0dXJhbENvbUtleQkJVG9kbwogCi0JIiBpbGxlZ2FsIHRoaW5ncwotCUhpTGluayBuYXR1cmFsUk1LZXl3b3JkCQlFcnJvcgotCUhpTGluayBuYXR1cmFsTGVnYWxJZGVudAlFcnJvcgorICAiIGlsbGVnYWwgdGhpbmdzCisgIEhpTGluayBuYXR1cmFsUk1LZXl3b3JkCUVycm9yCisgIEhpTGluayBuYXR1cmFsTGVnYWxJZGVudAlFcnJvcgogCi0JSGlMaW5rIG5hdHVyYWxUeXBlCQkJVHlwZQotCUhpTGluayBuYXR1cmFsRnVuY3Rpb24JCUZ1bmN0aW9uCi0JSGlMaW5rIG5hdHVyYWxPYmpOYW1lCQlGdW5jdGlvbgorICBIaUxpbmsgbmF0dXJhbFR5cGUJCVR5cGUKKyAgSGlMaW5rIG5hdHVyYWxGdW5jdGlvbglGdW5jdGlvbgorICBIaUxpbmsgbmF0dXJhbE9iak5hbWUJCVByZVByb2MKIAotCWRlbGNvbW1hbmQgSGlMaW5rCisgIGRlbGNvbW1hbmQgSGlMaW5rCiBlbmRpZgogCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJuYXR1cmFsIgogCi0iIHZpbTpzZXQgdHM9NCBzdz00IG5vZXQgZnQ9dmltIGxpc3Q6CisiIHZpbTpzZXQgdHM9OCBzdz04IG5vZXQgZnQ9dmltOgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcmFjYy52aW0gYi9ydW50aW1lL3N5bnRheC9yYWNjLnZpbQppbmRleCA3OTViNjUyLi5kNDEyMjI3IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9yYWNjLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9yYWNjLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGRlZmF1bHQgZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBSYWNjIGlucHV0IGZpbGUKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDctMDkKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwOC0wNi0yMgogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKQEAgLTMxLDcgKzMxLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIG5leHRncm91cD1yYWNjUHJlY1Rva2VuLHJhY2NQcmVjU3RyaW5nIHNraXB3aGl0ZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc2tpcG5sCiAKLXN5biBtYXRjaCAgIHJhY2NQcmVjVG9rZW4gICBjb250YWluZWQgJ1w8XHVbQS1aMC05XSpcPicKK3N5biBtYXRjaCAgIHJhY2NQcmVjVG9rZW4gICBjb250YWluZWQgJ1w8XHVbQS1aMC05X10qXD4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBuZXh0Z3JvdXA9cmFjY1ByZWNUb2tlbixyYWNjUHJlY1N0cmluZyBza2lwd2hpdGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHNraXBubAogCkBAIC00OCw3ICs0OCw3IEBACiBzeW4ga2V5d29yZCByYWNjVG9rZW5EZWNsICAgY29udGFpbmVkIHRva2VuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBuZXh0Z3JvdXA9cmFjY1Rva2VuUiBza2lwd2hpdGUgc2tpcG5sCiAKLXN5biBtYXRjaCAgIHJhY2NUb2tlblIgICAgICBjb250YWluZWQgJ1w8XHVbQS1aMC05XSpcPicKK3N5biBtYXRjaCAgIHJhY2NUb2tlblIgICAgICBjb250YWluZWQgJ1w8XHVbQS1aMC05X10qXD4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBuZXh0Z3JvdXA9cmFjY1Rva2VuUiBza2lwd2hpdGUgc2tpcG5sCiAKIHN5biBrZXl3b3JkIHJhY2NFeHBlY3QgICAgICBjb250YWluZWQgZXhwZWN0CkBAIC02NywxMyArNjcsMTMgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGNvbnRhaW5zPXJhY2NDb21tZW50LHJhY2NDb252VG9rZW4gc2tpcHdoaXRlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBza2lwbmwKIAotc3luIG1hdGNoICAgcmFjY0NvbnZUb2tlbiAgIGNvbnRhaW5lZCAnXDxcdVtBLVowLTldKlw+Jworc3luIG1hdGNoICAgcmFjY0NvbnZUb2tlbiAgIGNvbnRhaW5lZCAnXDxcdVtBLVowLTlfXSpcPicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIG5leHRncm91cD1yYWNjU3RyaW5nIHNraXB3aGl0ZSBza2lwbmwKIAogc3luIGtleXdvcmQgcmFjY1N0YXJ0ICAgICAgIGNvbnRhaW5lZCBzdGFydAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgbmV4dGdyb3VwPXJhY2NUYXJnZXRTIHNraXB3aGl0ZSBza2lwbmwKIAotc3luIG1hdGNoICAgcmFjY1RhcmdldFMgICAgIGNvbnRhaW5lZCAnXDxcbFthLXowLTldKlw+Jworc3luIG1hdGNoICAgcmFjY1RhcmdldFMgICAgIGNvbnRhaW5lZCAnXDxcbFthLXowLTlfXSpcPicKIAogc3luIG1hdGNoICAgcmFjY1NwZWNpYWwgICAgIGNvbnRhaW5lZCAnXFxbIidcXF0nCiAKQEAgLTg3LDExICs4NywxMSBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgcmFjY051bWJlcixyYWNjVG9rZW4scmFjY1RhcmdldCxyYWNjRGVsaW1pdGVyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgcmFjY0FjdGlvbgogCi1zeW4gbWF0Y2ggICByYWNjVGFyZ2V0ICAgICAgY29udGFpbmVkICdcPFxsW2EtejAtOV0qXD4nCitzeW4gbWF0Y2ggICByYWNjVGFyZ2V0ICAgICAgY29udGFpbmVkICdcPFxsW2EtejAtOV9dKlw+JwogCiBzeW4gbWF0Y2ggICByYWNjRGVsaW1pdGVyICAgY29udGFpbmVkICdbOnxdJwogCi1zeW4gbWF0Y2ggICByYWNjVG9rZW4gICAgICAgY29udGFpbmVkICdcPFx1W0EtWjAtOV0qXD4nCitzeW4gbWF0Y2ggICByYWNjVG9rZW4gICAgICAgY29udGFpbmVkICdcPFx1W0EtWjAtOV9dKlw+JwogCiBzeW4gaW5jbHVkZSBAcmFjY1J1YnkgICAgICAgc3ludGF4L3J1YnkudmltCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Nhcy52aW0gYi9ydW50aW1lL3N5bnRheC9zYXMudmltCmluZGV4IDY4ZTg3ODguLjk3NmRjYTIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Nhcy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2FzLnZpbQpAQCAtMSw3ICsxLDExIEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZToJU0FTCiAiIE1haW50YWluZXI6CUphbWVzIEtpZGQgPGphbWVzLmtpZGRAY292YW5jZS5jb20+Ci0iIExhc3QgQ2hhbmdlOgkwMiBKdW4gMjAwMworIiBMYXN0IENoYW5nZTogIDE4IEp1bCAyMDA4IGJ5IFBhdWxvIFRhbmltb3RvIDxwdGFuaW1vdG9AZ21haWwuY29tPgorIiAgICAgICAgICAgICAgIEZpeGVkIGNvbW1lbnRzIHdpdGggKiB0YWtpbmcgbXVsdGlwbGUgbGluZXMuCisiICAgICAgICAgICAgICAgRml4ZWQgaGlnaGxpZ2h0aW5nIG9mIG1hY3JvIGtleXdvcmRzLgorIiAgICAgICAgICAgICAgIEFkZGVkIHdvcmRzIHRvIGNhc2VzIHRoYXQgZGlkbid0IGZpdCBhbnl3aGVyZS4KKyIgICAgICAgICAgICAgCTAyIEp1biAyMDAzCiAiCQlBZGRlZCBoaWdobGlnaHRpbmcgZm9yIGFkZGl0aW9uYWwga2V5d29yZHMgYW5kIHN1Y2g7CiAiCQlBdHRlbXB0ZWQgdG8gbWF0Y2ggU0FTIGRlZmF1bHQgc3ludGF4IGNvbG9yczsKICIJCUNoYW5nZWQgc3luY2luZyBzbyBpdCBkb2Vzbid0IGxvc2UgY29sb3JzIG9uIGxhcmdlIGJsb2NrczsKQEAgLTI1LDE4ICsyOSwxOCBAQAogCiBzeW4gbWF0Y2ggc2FzTnVtYmVyCSItXD1cPFxkKlwuXD1bMC05X11cPiIKIAorIiBCbG9jayBjb21tZW50CiBzeW4gcmVnaW9uIHNhc0NvbW1lbnQJc3RhcnQ9Ii9cKiIgIGVuZD0iXCovIiBjb250YWlucz1zYXNUb2RvCisKICIgSWdub3JlIG1pc2xlYWRpbmcgLy9KQ0wgU1lOVEFYLi4uIChCb2IgSGVja2VsKQogc3luIHJlZ2lvbiBzYXNDb21tZW50CXN0YXJ0PSJbXi9dW14vXS9cKiIgIGVuZD0iXCovIiBjb250YWlucz1zYXNUb2RvCiAKLSIgQWxsb3cgaGlnaGxpZ2h0aW5nIG9mIGVtYmVkZGVkIFRPRE9zIChCb2IgSGVja2VsKQotc3luIG1hdGNoIHNhc0NvbW1lbnQJIl5ccypcKi4qOyIgY29udGFpbnM9c2FzVG9kbworIiBQcmV2aW91cyBjb2RlIGZvciBjb21tZW50cyB3YXMgd3JpdHRlbiBieSBCb2IgSGVja2VsCisiIENvbW1lbnRzIHdpdGggKiBtYXkgdGFrZSBtdWx0aXBsZSBsaW5lcyAoUGF1bG8gVGFuaW1vdG8pCitzeW4gcmVnaW9uIHNhc0NvbW1lbnQgc3RhcnQ9IjtccypcKiJocz1zKzEgZW5kPSI7IiBjb250YWlucz1zYXNUb2RvCiAKLSIgQWxsb3cgaGlnaGxpZ2h0aW5nIG9mIGVtYmVkZGVkIFRPRE9zIChCb2IgSGVja2VsKQotc3luIG1hdGNoIHNhc0NvbW1lbnQJIjtccypcKi4qOyJocz1zKzEgY29udGFpbnM9c2FzVG9kbwotCi0iIEhhbmRsZSBtYWNybyBjb21tZW50cyB0b28gKEJvYiBIZWNrZWwpLgotc3luIG1hdGNoIHNhc0NvbW1lbnQJIl5ccyolKlwqLio7IiBjb250YWlucz1zYXNUb2RvCisiIENvbW1lbnRzIHdpdGggKiBzdGFydGluZyBhZnRlciBhIHNlbWljb2xvbiAoUGF1bG8gVGFuaW1vdG8pCitzeW4gcmVnaW9uIHNhc0NvbW1lbnQgc3RhcnQ9Il5ccypcKiIgZW5kPSI7IiBjb250YWlucz1zYXNUb2RvCiAKICIgVGhpcyBsaW5lIGRlZmluZXMgbWFjcm8gdmFyaWFibGVzIGluIGNvZGUuICBIaUxpbmsgYXQgZW5kIG9mIGZpbGUKICIgZGVmaW5lcyB0aGUgY29sb3Igc2NoZW1lLiBCZWdpbiByZWdpb24gd2l0aCBhbXBlcnNhbmQgYW5kIGVuZCB3aXRoCkBAIC04NCwyNCArODgsNzEgQEAKIHN5biBrZXl3b3JkIHNhc1N0YXRlbWVudAlSRVNFVCBSRVNUUklDVCBTRUxFQ1QgU0VUIFRBQkxFCiBzeW4ga2V5d29yZCBzYXNTdGF0ZW1lbnQJVU5JUVVFIFVQREFURSBWQUxJREFURSBWSUVXIFdIRVJFCiAKKyIgTWF0Y2ggZGVjbGFyYXRpb25zIGhhdmUgdG8gYXBwZWFyIG9uZSBwZXIgbGluZSAoUGF1bG8gVGFuaW1vdG8pCitzeW4gbWF0Y2ggc2FzU3RhdGVtZW50CSJGT09UTk9URVxkIgorc3luIG1hdGNoIHNhc1N0YXRlbWVudAkiVElUTEVcZCIKIAotc3luIG1hdGNoIHNhc1N0YXRlbWVudAkiRk9PVE5PVEVcZCIgIlRJVExFXGQiCi0KLXN5biBtYXRjaCBzYXNNYWNybwkiJUJRVU9URSIgIiVOUkJRVU9URSIgIiVDTVBSRVMiICIlUUNNUFJFUyIKLXN5biBtYXRjaCBzYXNNYWNybwkiJUNPTVBTVE9SIiAiJURBVEFUWVAiICIlRElTUExBWSIgIiVETyIKLXN5biBtYXRjaCBzYXNNYWNybwkiJUVMU0UiICIlRU5EIiAiJUVWQUwiICIlR0xPQkFMIgotc3luIG1hdGNoIHNhc01hY3JvCSIlR09UTyIgIiVJRiIgIiVJTkRFWCIgIiVJTlBVVCIKLXN5biBtYXRjaCBzYXNNYWNybwkiJUtFWURFRiIgIiVMQUJFTCIgIiVMRUZUIiAiJUxFTkdUSCIKLXN5biBtYXRjaCBzYXNNYWNybwkiJUxFVCIgIiVMT0NBTCIgIiVMT1dDQVNFIiAiJU1BQ1JPIgotc3luIG1hdGNoIHNhc01hY3JvCSIlTUVORCIgIiVOUkJRVU9URSIgIiVOUlFVT1RFIiAiJU5SU1RSIgotc3luIG1hdGNoIHNhc01hY3JvCSIlUFVUIiAiJVFDTVBSRVMiICIlUUxFRlQiICIlUUxPV0NBU0UiCi1zeW4gbWF0Y2ggc2FzTWFjcm8JIiVRU0NBTiIgIiVRU1VCU1RSIiAiJVFTWVNGVU5DIiAiJVFUUklNIgotc3luIG1hdGNoIHNhc01hY3JvCSIlUVVPVEUiICIlUVVQQ0FTRSIgIiVTQ0FOIiAiJVNUUiIKLXN5biBtYXRjaCBzYXNNYWNybwkiJVNVQlNUUiIgIiVTVVBFUlEiICIlU1lTQ0FMTCIgIiVTWVNFVkFMRiIKLXN5biBtYXRjaCBzYXNNYWNybwkiJVNZU0VYRUMiICIlU1lTRlVOQyIgIiVTWVNHRVQiICIlU1lTTFBVVCIKLXN5biBtYXRjaCBzYXNNYWNybwkiJVNZU1BST0QiICIlU1lTUkMiICIlU1lTUlBVVCIgIiVUSEVOIgotc3luIG1hdGNoIHNhc01hY3JvCSIlVE8iICIlVFJJTSIgIiVVTlFVT1RFIiAiJVVOVElMIgotc3luIG1hdGNoIHNhc01hY3JvCSIlVVBDQVNFIiAiJVZFUklGWSIgIiVXSElMRSIgIiVXSU5ET1ciCisiIE1hdGNoIGRlY2xhcmF0aW9ucyBoYXZlIHRvIGFwcGVhciBvbmUgcGVyIGxpbmUgKFBhdWxvIFRhbmltb3RvKQorc3luIG1hdGNoIHNhc01hY3JvICIlQlFVT1RFIgorc3luIG1hdGNoIHNhc01hY3JvICIlTlJCUVVPVEUiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVDTVBSRVMiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVRQ01QUkVTIgorc3luIG1hdGNoIHNhc01hY3JvICIlQ09NUFNUT1IiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVEQVRBVFlQIgorc3luIG1hdGNoIHNhc01hY3JvICIlRElTUExBWSIKK3N5biBtYXRjaCBzYXNNYWNybyAiJURPIgorc3luIG1hdGNoIHNhc01hY3JvICIlRUxTRSIKK3N5biBtYXRjaCBzYXNNYWNybyAiJUVORCIKK3N5biBtYXRjaCBzYXNNYWNybyAiJUVWQUwiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVHTE9CQUwiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVHT1RPIgorc3luIG1hdGNoIHNhc01hY3JvICIlSUYiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVJTkRFWCIKK3N5biBtYXRjaCBzYXNNYWNybyAiJUlOUFVUIgorc3luIG1hdGNoIHNhc01hY3JvICIlS0VZREVGIgorc3luIG1hdGNoIHNhc01hY3JvICIlTEFCRUwiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVMRUZUIgorc3luIG1hdGNoIHNhc01hY3JvICIlTEVOR1RIIgorc3luIG1hdGNoIHNhc01hY3JvICIlTEVUIgorc3luIG1hdGNoIHNhc01hY3JvICIlTE9DQUwiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVMT1dDQVNFIgorc3luIG1hdGNoIHNhc01hY3JvICIlTUFDUk8iCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVNRU5EIgorc3luIG1hdGNoIHNhc01hY3JvICIlTlJCUVVPVEUiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVOUlFVT1RFIgorc3luIG1hdGNoIHNhc01hY3JvICIlTlJTVFIiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVQVVQiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVRQ01QUkVTIgorc3luIG1hdGNoIHNhc01hY3JvICIlUUxFRlQiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVRTE9XQ0FTRSIKK3N5biBtYXRjaCBzYXNNYWNybyAiJVFTQ0FOIgorc3luIG1hdGNoIHNhc01hY3JvICIlUVNVQlNUUiIKK3N5biBtYXRjaCBzYXNNYWNybyAiJVFTWVNGVU5DIgorc3luIG1hdGNoIHNhc01hY3JvICIlUVRSSU0iCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVRVU9URSIKK3N5biBtYXRjaCBzYXNNYWNybyAiJVFVUENBU0UiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVTQ0FOIgorc3luIG1hdGNoIHNhc01hY3JvICIlU1RSIgorc3luIG1hdGNoIHNhc01hY3JvICIlU1VCU1RSIgorc3luIG1hdGNoIHNhc01hY3JvICIlU1VQRVJRIgorc3luIG1hdGNoIHNhc01hY3JvICIlU1lTQ0FMTCIKK3N5biBtYXRjaCBzYXNNYWNybyAiJVNZU0VWQUxGIgorc3luIG1hdGNoIHNhc01hY3JvICIlU1lTRVhFQyIKK3N5biBtYXRjaCBzYXNNYWNybyAiJVNZU0ZVTkMiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVTWVNHRVQiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVTWVNMUFVUIgorc3luIG1hdGNoIHNhc01hY3JvICIlU1lTUFJPRCIKK3N5biBtYXRjaCBzYXNNYWNybyAiJVNZU1JDIgorc3luIG1hdGNoIHNhc01hY3JvICIlU1lTUlBVVCIKK3N5biBtYXRjaCBzYXNNYWNybyAiJVRIRU4iCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVUTyIKK3N5biBtYXRjaCBzYXNNYWNybyAiJVRSSU0iCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVVTlFVT1RFIgorc3luIG1hdGNoIHNhc01hY3JvICIlVU5USUwiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVVUENBU0UiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVWRVJJRlkiCitzeW4gbWF0Y2ggc2FzTWFjcm8gIiVXSElMRSIKK3N5biBtYXRjaCBzYXNNYWNybyAiJVdJTkRPVyIKIAogIiBTQVMgRnVuY3Rpb25zCiAKQEAgLTE1OSwxMyArMjEwLDE3IEBACiBzeW4ga2V5d29yZCBzYXNUb2RvCVRPRE8gVEJEIEZJWE1FIGNvbnRhaW5lZAogCiAiIFRoZXNlIGRvbid0IGZpdCBhbnl3aGVyZSBlbHNlIChCb2IgSGVja2VsKS4KLXN5biBtYXRjaCBzYXNVbmRlcnNjb3JlCSJfTlVMTF8iCisiIEFkZGVkIG90aGVycyB0aGF0IHdlcmUgbWlzc2luZy4KK3N5biBtYXRjaCBzYXNVbmRlcnNjb3JlCSJfQUxMXyIKK3N5biBtYXRjaCBzYXNVbmRlcnNjb3JlICJfQVVUT01BVElDXyIKK3N5biBtYXRjaCBzYXNVbmRlcnNjb3JlCSJfQ0hBUkFDVEVSXyIKIHN5biBtYXRjaCBzYXNVbmRlcnNjb3JlCSJfSU5GSUxFXyIKIHN5biBtYXRjaCBzYXNVbmRlcnNjb3JlCSJfTl8iCi1zeW4gbWF0Y2ggc2FzVW5kZXJzY29yZQkiX1dFQk9VVF8iCitzeW4gbWF0Y2ggc2FzVW5kZXJzY29yZSAiX05BTUVfIgorc3luIG1hdGNoIHNhc1VuZGVyc2NvcmUJIl9OVUxMXyIKIHN5biBtYXRjaCBzYXNVbmRlcnNjb3JlCSJfTlVNRVJJQ18iCi1zeW4gbWF0Y2ggc2FzVW5kZXJzY29yZQkiX0NIQVJBQ1RFUl8iCi1zeW4gbWF0Y2ggc2FzVW5kZXJzY29yZQkiX0FMTF8iCitzeW4gbWF0Y2ggc2FzVW5kZXJzY29yZSAiX1VTRVJfIgorc3luIG1hdGNoIHNhc1VuZGVyc2NvcmUJIl9XRUJPVVRfIgogCiAiIEVuZCBvZiBTQVMgRnVuY3Rpb25zCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NoLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NoLnZpbQppbmRleCBjYjkyYmJkLi41ZmE4ZDkzIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zaC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2gudmltCkBAIC0yLDggKzIsOCBAQAogIiBMYW5ndWFnZToJCXNoZWxsIChzaCkgS29ybiBzaGVsbCAoa3NoKSBiYXNoIChzaCkKICIgTWFpbnRhaW5lcjoJCURyLiBDaGFybGVzIEUuIENhbXBiZWxsLCBKci4gIDxOZHJPY2hpcFNAUGNhbXBiZWxsQWZhbWlseS5NYml6PgogIiBQcmV2aW91cyBNYWludGFpbmVyOglMZW5uYXJ0IFNjaHVsdHogPExlbm5hcnQuU2NodWx0ekBlY213Zi5pbnQ+Ci0iIExhc3QgQ2hhbmdlOgkJSnVsIDAxLCAyMDA4Ci0iIFZlcnNpb246CQkxMDAKKyIgTGFzdCBDaGFuZ2U6CQlKdWwgMTEsIDIwMDgKKyIgVmVyc2lvbjoJCTEwMgogIiBVUkw6CQlodHRwOi8vbXlzaXRlLnZlcml6b24ubmV0L2FzdHJvbmF1dC92aW0vaW5kZXguaHRtbCN2aW1saW5rc19zeW50YXgKICIgRm9yIG9wdGlvbnMgYW5kIHNldHRpbmdzLCBwbGVhc2UgdXNlOiAgICAgIDpoZWxwIGZ0LXNoLXN5bnRheAogIiBUaGlzIGZpbGUgaW5jbHVkZXMgbWFueSBpZGVhcyBmcm9tIMlyaWMgQnJ1bmV0IChlcmljLmJydW5ldEBlbnMuZnIpCkBAIC00Miw5ICs0Miw2IEBACiAgIGVuZGlmCiBlbmRpZgogCi0iIGFkanVzdCBpc2tleXdvcmQgZm9yIHNoZWxsIGNoYXJhY3RlcnMKLSJzZXRsb2NhbCBpc2s9QCw0OC01NyxfLDE5Mi0yNTUsIywuLC8KLQogIiBzZXQgdXAgZGVmYXVsdCBnOnNoX2ZvbGRfZW5hYmxlZCB7e3sxCiBpZiAhZXhpc3RzKCJnOnNoX2ZvbGRfZW5hYmxlZCIpCiAgbGV0IGc6c2hfZm9sZF9lbmFibGVkPSAwCkBAIC0yNzUsNyArMjcyLDcgQEAKIGVuZGlmCiBzeW4gcmVnaW9uICBzaFNpbmdsZVF1b3RlCW1hdGNoZ3JvdXA9c2hPcGVyYXRvciBzdGFydD0rJysgZW5kPSsnKwkJY29udGFpbnM9c2hTdHJpbmdTcGVjaWFsLEBTcGVsbAogc3luIHJlZ2lvbiAgc2hEb3VibGVRdW90ZQltYXRjaGdyb3VwPXNoT3BlcmF0b3Igc3RhcnQ9KyIrIHNraXA9K1xcIisgZW5kPSsiKwljb250YWlucz1Ac2hEYmxRdW90ZUxpc3Qsc2hTdHJpbmdTcGVjaWFsLEBTcGVsbAotc3luIG1hdGNoICAgc2hTdHJpbmdTcGVjaWFsCSJbXls6cHJpbnQ6XV0iCWNvbnRhaW5lZAorc3luIG1hdGNoICAgc2hTdHJpbmdTcGVjaWFsCSJbXls6cHJpbnQ6XSBcdF0iCWNvbnRhaW5lZAogc3luIG1hdGNoICAgc2hTdHJpbmdTcGVjaWFsCSJcJShcXFxcXCkqXFxbXFwiJ2AkKCkjXSIKIHN5biBtYXRjaCAgIHNoU3BlY2lhbAkiW15cXF1cenNcJShcXFxcXCkqXFxbXFwiJ2AkKCkjXSIKIHN5biBtYXRjaCAgIHNoU3BlY2lhbAkiXlwlKFxcXFxcKSpcXFtcXCInYCQoKSNdIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc2lldmUudmltIGIvcnVudGltZS9zeW50YXgvc2lldmUudmltCmluZGV4IGY2NTFjYmQuLjRiYjQ0MTcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NpZXZlLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zaWV2ZS52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBTaWV2ZSBmaWx0ZXJpbmcgbGFuZ3VhZ2UgaW5wdXQgZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA3LTEwLTI1CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApAQCAtMzMsNyArMzMsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBub3Qgc2l6ZSB0cnVlCiBzeW4ga2V5d29yZCBzaWV2ZVByZVByb2MgICAgICByZXF1aXJlIHN0b3AKIHN5biBrZXl3b3JkIHNpZXZlQWN0aW9uICAgICAgIHJlamVjdCBmaWxlaW50byByZWRpcmVjdCBrZWVwIGRpc2NhcmQKLXN5biBtYXRjaCAgIHNpZXZlS2V5d29yZCAgICAgICdcPFxoXHcqXD4nCitzeW4ga2V5d29yZCBzaWV2ZUtleXdvcmQgICAgICB2YWNhdGlvbgogCiBzeW4gY2FzZSBtYXRjaAogCkBAIC00Niw3ICs0Niw3IEBACiBoaSBkZWYgbGluayBzaWV2ZUNvbmRpdGlvbmFsIENvbmRpdGlvbmFsCiBoaSBkZWYgbGluayBzaWV2ZVRlc3QgICAgICAgIEtleXdvcmQKIGhpIGRlZiBsaW5rIHNpZXZlUHJlUHJvYyAgICAgUHJlUHJvYwotaGkgZGVmIGxpbmsgc2lldmVBY3Rpb24gICAgICBLZXl3b3JkCitoaSBkZWYgbGluayBzaWV2ZUFjdGlvbiAgICAgIEZ1bmN0aW9uCiBoaSBkZWYgbGluayBzaWV2ZUtleXdvcmQgICAgIEtleXdvcmQKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic2lldmUiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zdm4udmltIGIvcnVudGltZS9zeW50YXgvc3ZuLnZpbQppbmRleCBkNjkxYmExLi5iYjRmNTk0IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zdm4udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3N2bi52aW0KQEAgLTQsMTAgKzQsMTEgQEAKICIgVVJMOiAgICAgICAgICBodHRwOi8vd3d3LmhsYWJzLnNwYi5ydS92aW0vc3ZuLnZpbQogIiBSZXZpc2lvbjogICAgICRJZCQKICIgRmlsZW5hbWVzOiAgICBzdm4tY29tbWl0Ki50bXAKLSIgVmVyc2lvbjogICAgICAxLjUKKyIgVmVyc2lvbjogICAgICAxLjYKIAogIiBDb250cmlidXRvcnM6CiAiICAgU3RlZmFubyBaYWNjaGlyb2xpCisiICAgQS4gUy4gQnVkZGVuCiAKICIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zLgogIiBGb3IgdmVyc2lvbiA2Lng6IFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZC4KQEAgLTE3LDcgKzE4LDcgQEAKICAgZmluaXNoCiBlbmRpZgogCi1zeW4gcmVnaW9uIHN2blJlZ2lvbiAgICBzdGFydD0iXi0tLiotLSQiIGVuZD0iXCUkIiBjb250YWlucz1BTEwKK3N5biByZWdpb24gc3ZuUmVnaW9uICAgIHN0YXJ0PSJeLS0uKi0tJCIgZW5kPSJcJSQiIGNvbnRhaW5zPUFMTCBjb250YWlucz1ATm9TcGVsbAogc3luIG1hdGNoIHN2blJlbW92ZWQgICAgIl5EICAgIC4qJCIgY29udGFpbmVkCiBzeW4gbWF0Y2ggc3ZuQWRkZWQgICAgICAiXkFbIE1dICAgLiokIiBjb250YWluZWQKIHN5biBtYXRjaCBzdm5Nb2RpZmllZCAgICJeTVsgTV0gICAuKiQiIGNvbnRhaW5lZApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdXBkYXRlZGIudmltIGIvcnVudGltZS9zeW50YXgvdXBkYXRlZGIudmltCmluZGV4IGRkOGU2ZjcuLjRmOTEyZDQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3VwZGF0ZWRiLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC91cGRhdGVkYi52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICB1cGRhdGVkYi5jb25mKDUpIGNvbmZpZ3VyYXRpb24gZmlsZQogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA3LTEwLTI1CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApAQCAtMTgsNyArMTgsNyBAQAogc3luIG1hdGNoICAgdXBkYXRlZGJCZWdpbiAgIGRpc3BsYXkgJ14nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBuZXh0Z3JvdXA9dXBkYXRlZGJOYW1lLHVwZGF0ZWRiQ29tbWVudCBza2lwd2hpdGUKIAotc3luIGtleXdvcmQgdXBkYXRlZGJOYW1lICAgIGNvbnRhaW5lZCBQUlVORUZTIFBSVU5FUEFUSFMKK3N5biBrZXl3b3JkIHVwZGF0ZWRiTmFtZSAgICBjb250YWluZWQgUFJVTkVGUyBQUlVORVBBVEhTIFBSVU5FX0JJTkRfTU9VTlRTCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBuZXh0Z3JvdXA9dXBkYXRlZGJOYW1lRXEKIAogc3luIG1hdGNoICAgdXBkYXRlZGJOYW1lRXEgIGNvbnRhaW5lZCBkaXNwbGF5ICc9JyBuZXh0Z3JvdXA9dXBkYXRlZGJWYWx1ZQpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdmltLnZpbSBiL3J1bnRpbWUvc3ludGF4L3ZpbS52aW0KaW5kZXggYzIyMGY5ZC4uNWJmY2Q2NiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvdmltLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC92aW0udmltCkBAIC0xLDggKzEsOCBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6CVZpbSA3LjIgc2NyaXB0CiAiIE1haW50YWluZXI6CURyLiBDaGFybGVzIEUuIENhbXBiZWxsLCBKci4gPE5kck9jaGlwU0BQY2FtcGJlbGxBZmFtaWx5Lk1iaXo+Ci0iIExhc3QgQ2hhbmdlOglKdWwgMTAsIDIwMDgKLSIgVmVyc2lvbjoJNy4yLTc5KworIiBMYXN0IENoYW5nZToJSnVseSAyOSwgMjAwOAorIiBWZXJzaW9uOgk3LjItODIKICIgQXV0b21hdGljYWxseSBnZW5lcmF0ZWQga2V5d29yZCBsaXN0czoge3t7MQogCiAiIFF1aXQgd2hlbiBhIHN5bnRheCBmaWxlIHdhcyBhbHJlYWR5IGxvYWRlZCB7e3syCkBAIC0xNiwxMSArMTYsMTEgQEAKIHN5biBjbHVzdGVyIHZpbUNvbW1lbnRHcm91cAljb250YWlucz12aW1Ub2RvLEBTcGVsbAogCiAiIHJlZ3VsYXIgdmltIGNvbW1hbmRzIHt7ezIKLXN5biBrZXl3b3JkIHZpbUNvbW1hbmQgY29udGFpbmVkCWFiW2JyZXZpYXRlXSBhcmdkW2VsZXRlXSBhcltnc10gYmRbZWxldGVdIGJuW2V4dF0gYnJlYWthW2RkXSBidWZkbyBjYVtiYnJldl0gY2FsW2xdIGNkIGNnZXRiW3VmZmVyXSBjaGRbaXJdIGNsb1tzZV0gY25mW2lsZV0gY29tY1tsZWFyXSBjb1tweV0gY3VuYVtiYnJldl0gZGVsZlt1bmN0aW9uXSBkaWZmcHVbdF0gZGlbc3BsYXldIGRzcFtsaXRdIGVbZGl0XSBlbmRmb1tyXSBlbmVbd10gZmlsZXMgZmlyW3N0XSBmb2xkZFtvb3Blbl0gZ3JbZXBdIGhlbHBnW3JlcF0gaWFiY1tsZWFyXSBpbm9yZWFbYmJyZXZdIGp1W21wc10gbGFkZGJbdWZmZXJdIGxhW3N0XSBsY2hbZGlyXSBsZXhbcHJdIGxnZXRlW3hwcl0gbGhbZWxwZ3JlcF0gbGxpW3N0XSBsbmV3W2VyXSBsTmZbaWxlXSBsb2Nrdlthcl0gbHBbcmV2aW91c10gbHZbaW1ncmVwXSBtYVtya10gbWtbZXhyY10gbWt2W2ltcmNdIG16W3NjaGVtZV0gTltleHRdIG51W21iZXJdIG9wdFtpb25zXSBwZXJsZFtvXSBwcFtvcF0gUFtyaW50XSBwcm9tcHRyW2VwbF0gcHRqW3VtcF0gcHRwW3JldmlvdXNdIHB3W2RdIHFbdWl0XSByZWRpW3JdIHJlZ1tpc3RlcnNdIHJld1tpbmRdIHJ1YnlkW29dIHNhbFtsXSBzYmFbbGxdIHNibltleHRdIHNiW3VmZmVyXSBzZXRmW2lsZXR5cGVdIHNmaXJbc3RdIHNpbVthbHRdIHNtW2FwXSBzbltleHRdIHNub3JbZW1hcF0gc29bdXJjZV0gc3BlbGxyW2VwYWxsXSBzcHJbZXZpb3VzXSBzdGFyW3RpbnNlcnRdIHN0b3BpW25zZXJ0XSBzdW5tZW51IHQgdGFiZVtkaXRdIHRhYm1bb3ZlXSB0YWJvW25seV0gdGFbZ10gdGNsZltpbGVdIHRqW3VtcF0gdG5bZXh0XSB0cltld2luZF0gdHVbbm1lbnVdIHVuZG9sW2lzdF0gdmVyYltvc2VdIHZpbVtncmVwXSB2bWFwY1tsZWFyXSB3aFtpbGVdIHdpbltzaXplXSB3cSB3dltpbWluZm9dIHhtW2FwXSBYTUxlbnQgeG5vcmVtZW51Ci1zeW4ga2V5d29yZCB2aW1Db21tYW5kIGNvbnRhaW5lZAlhYmNbbGVhcl0gYXJnZG8gYXJndVttZW50XSBiZWxbb3dyaWdodF0gYk5bZXh0XSBicmVha2RbZWxdIGJbdWZmZXJdIGNhYmNbbGVhcl0gY2F0W2NoXSBjZVtudGVyXSBjZ2V0ZVt4cHJdIGNoZVtja3BhdGhdIGNtYXBjW2xlYXJdIGNOZltpbGVdIGNvbXBbaWxlcl0gY3BmW2lsZV0gY3dbaW5kb3ddIGRlbG1bYXJrc10gZGlmZnNwbGl0IGRqW3VtcF0gZWFybGllciBlbFtzZV0gZW5kZlt1bmN0aW9uXSBleCBmaWxldHlwZSBmaXhbZGVsXSBmb2xkb1twZW5dIGdyZXBhW2RkXSBoZWxwdFthZ3NdIGlmIGlzW2VhcmNoXSBrIGxhZFtkZXhwcl0gbGF0ZXIgbGNsW29zZV0gbGZbaWxlXSBsZ1tldGZpbGVdIGxbaXN0XSBsbWFrW2VdIGxuZVt4dF0gbG5bb3JlbWFwXSBsb2xbZGVyXSBscltld2luZF0gbHZpbWdyZXBhW2RkXSBtYXJrcyBta3NbZXNzaW9uXSBtb2RbZV0gbmJrZXkgbm1hcGNbbGVhcl0gb21hcGNbbGVhcl0gcGNbbG9zZV0gcG9bcF0gcHJlW3NlcnZlXSBwcm9mZFtlbF0gcHNbZWFyY2hdIHB0bFthc3RdIHB0cltld2luZF0gcHlmW2lsZV0gcXVpdGFbbGxdIHJlZFtvXSByZXNbaXplXSByaVtnaHRdIHJ1YnlmW2lsZV0gc2FuW2Rib3hdIHNiZltpcnN0XSBzYk5bZXh0XSBzY3JpcHRlW25jb2RpbmddIHNldGdbbG9iYWxdIHNoW2VsbF0gc2xhW3N0XSBzbWFwY1tsZWFyXSBzTltleHRdIHNub3JlbWUgc3BlbGxkW3VtcF0gc3BlbGx1W25kb10gc3JlW3dpbmRdIHN0YXJ0cltlcGxhY2VdIHN0c1tlbGVjdF0gc3VzW3BlbmRdIHRhYiB0YWJmW2luZF0gdGFibmV3IHRhYnBbcmV2aW91c10gdGFncyB0ZVthcm9mZl0gdGxbYXN0XSB0TltleHRdIHRyeSB1bmFbYmJyZXZpYXRlXSB1bmhbaWRlXSB2ZVtyc2lvbl0gdmltZ3JlcGFbZGRdIHZuZVt3XSB3aW5jW21kXSB3bltleHRdIHdxYVtsbF0gWCB4bWFwY1tsZWFyXSBYTUxucyB4dW5tZQotc3luIGtleXdvcmQgdmltQ29tbWFuZCBjb250YWluZWQJYWJvW3ZlbGVmdF0gYXJnZVtkaXRdIGFzW2NpaV0gYmZbaXJzdF0gYm9bdHJpZ2h0XSBicmVha2xbaXN0XSBidWZmZXJzIGNhZGRiW3VmZmVyXSBjYlt1ZmZlcl0gY2V4W3ByXSBjZ1tldGZpbGVdIGNoZWNrdFtpbWVdIGNuZXdbZXJdIGNub3JlYVtiYnJldl0gY29uZltpcm1dIGNwW3JldmlvdXNdIGRlYnVnZ1tyZWVkeV0gZGlmZmdbZXRdIGRpZmZ0aGlzIGRsW2lzdF0gZWNob2VbcnJdIGVsc2VpW2ZdIGVuW2RpZl0gZXhpW3RdIGZpbmFbbGx5XSBmb1tsZF0gZm9yIGhhW3JkY29weV0gaGlkW2VdIGlqW3VtcF0gaXNwW2xpdF0ga2VlcGFsdCBsYWRkZltpbGVdIGxiW3VmZmVyXSBsZVtmdF0gbGZpcltzdF0gbGdyW2VwXSBsbCBsbVthcF0gbE5bZXh0XSBsb1thZHZpZXddIGxvcFtlbl0gbHMgbHdbaW5kb3ddIG1hdFtjaF0gbWtzcFtlbGxdIG1bb3ZlXSBuZXcgbm9oW2xzZWFyY2hdIG9uW2x5XSBwZWRbaXRdIHBvcHUgcHJldltpb3VzXSBwcm9mW2lsZV0gcHRhW2ddIHB0bltleHRdIHB0c1tlbGVjdF0gcHlbdGhvbl0gcltlYWRdIHJlZHJbYXddIHJldFthYl0gcmlnaHRiW2Vsb3ddIHJ1W250aW1lXSBzYVtyZ3VtZW50XSBzYmxbYXN0XSBzYnBbcmV2aW91c10gc2NyaXBbdG5hbWVzXSBzZXRsW29jYWxdIHNpZ24gc2xbZWVwXSBzbWUgc25pW2ZmXSBzbm9yZW1lbnUgc3BlW2xsZ29vZF0gc3BlbGx3W3JvbmddIHN0YVtnXSBzdGpbdW1wXSBzdW5baGlkZV0gc3ZbaWV3XSB0YWJjW2xvc2VdIHRhYmZpcltzdF0gdGFibltleHRdIHRhYnJbZXdpbmRdIHRjW2xdIHRmW2lyc3RdIHRtIHRvW3BsZWZ0XSB0c1tlbGVjdF0gdVtuZG9dIHVubG9bY2t2YXJdIHZlcnRbaWNhbF0gdmlbc3VhbF0gdnNbcGxpdF0gd2luZG8gd05bZXh0XSB3W3JpdGVdIHhhW2xsXSB4bWUgeG5bb3JlbWFwXSB4dW5tZW51Ci1zeW4ga2V5d29yZCB2aW1Db21tYW5kIGNvbnRhaW5lZAlhbFtsXSBhcmdnW2xvYmFsXSBiYWRbZF0gYmxbYXN0XSBicFtyZXZpb3VzXSBicltld2luZF0gYnVuW2xvYWRdIGNhZFtkZXhwcl0gY2MgY2ZbaWxlXSBjW2hhbmdlXSBjbGFbc3RdIGNuW2V4dF0gY29sW2Rlcl0gY29uW3RpbnVlXSBjcVt1aXRdIGRlbGNbb21tYW5kXSBkaWZmb2ZmIGRpZmZ1W3BkYXRlXSBkcltvcF0gZWNob21bc2ddIGVtW2VudV0gZW5kdFtyeV0gZXh1W3NhZ2VdIGZpbltkXSBmb2xkY1tsb3NlXSBmdVtuY3Rpb25dIGhbZWxwXSBoaXNbdG9yeV0gaWxbaXN0XSBpdW5hW2JicmV2XSBrZWVwalt1bXBzXSBsYW5bZ3VhZ2VdIGxjW2RdIGxlZnRhW2JvdmVdIGxnZXRiW3VmZmVyXSBsZ3JlcGFbZGRdIGxsYVtzdF0gbG1hcGNbbGVhcl0gbG5mW2lsZV0gbG9jW2ttYXJrc10gbHBmW2lsZV0gbHRbYWddIG1ha1tlXSBtZW51dFtyYW5zbGF0ZV0gbWt2aWVbd10gbXpmW2lsZV0gbltleHRdIG5vcmVhW2JicmV2XSBvW3Blbl0gcGVbcmxdIHBvcHVbcF0gcFtyaW50XSBwcm9tcHRmW2luZF0gcHRmW2lyc3RdIHB0TltleHRdIHB1W3RdIHFhW2xsXSByZWNbb3Zlcl0gcmVkcmF3c1t0YXR1c10gcmV0dVtybl0gcnViW3ldIHJ2W2ltaW5mb10gc2F2W2Vhc10gc2JtW29kaWZpZWRdIHNicltld2luZF0gc2VbdF0gc2ZbaW5kXSBzaWxbZW50XSBzbVthZ2ljXSBzbWVudSBzbm9bbWFnaWNdIHNvclt0XSBzcGVsbGlbbmZvXSBzcFtsaXRdIHN0YXJ0Z1tyZXBsYWNlXSBzdFtvcF0gc3VubWUgc3luY2JpbmQgdGFiZFtvXSB0YWJsW2FzdF0gdGFiTltleHRdIHRhYnMgdGNsZFtvXSB0aFtyb3ddIHRtW2VudV0gdHBbcmV2aW91c10gdHUgdW5kb2pbb2luXSB1cFtkYXRlXSB2aWVbd10gdml1W3NhZ2VdIHdhW2xsXSB3aW5wW29zXSB3cFtyZXZpb3VzXSB3c1t2ZXJiXSB4W2l0XSB4bWVudSB4bm9yZW1lIHlbYW5rXQotc3luIGtleXdvcmQgdmltQ29tbWFuZCBjb250YWluZWQJYXJnYVtkZF0gYXJnbFtvY2FsXSBiYVtsbF0gYm1bb2RpZmllZF0gYnJlYVtrXSBicm9bd3NlXSBid1tpcGVvdXRdIGNhZGRmW2lsZV0gY2NsW29zZV0gY2ZpcltzdF0gY2hhbmdlcyBjbFtpc3RdIGNOW2V4dF0gY29sb1tyc2NoZW1lXSBjb3BlW25dIGNyW2V3aW5kXSBkW2VsZXRlXSBkaWZmcGF0Y2ggZGlnW3JhcGhzXSBkc1tlYXJjaF0gZWNob24gZW1lbnUqIGVuZHdbaGlsZV0gZltpbGVdIGZpbmlbc2hdIGZvbGRkb2NbbG9zZWRdIGdvW3RvXSBoZWxwZltpbmRdIGlhW2JicmV2XSBpbWFwY1tsZWFyXSBqW29pbl0ga2VlW3BtYXJrc10gCitzeW4ga2V5d29yZCB2aW1Db21tYW5kIGNvbnRhaW5lZAlhYmNbbGVhcl0gYXJnZG8gYXJndVttZW50XSBiZWxbb3dyaWdodF0gYk5bZXh0XSBicmVha2RbZWxdIGJbdWZmZXJdIGNhZGRiW3VmZmVyXSBjYlt1ZmZlcl0gY2V4W3ByXSBjZ1tldGZpbGVdIGNoZWNrdFtpbWVdIGNuZXdbZXJdIGNvbFtkZXJdIGNvblt0aW51ZV0gY3FbdWl0XSBkZWxjW29tbWFuZF0gZGlmZm9mZiBkaWZmdVtwZGF0ZV0gZHJbb3BdIGVjaG9tW3NnXSBlbVtlbnVdIGVuZHRbcnldIGV4dVtzYWdlXSBmaW5bZF0gZm9sZGNbbG9zZV0gZnVbbmN0aW9uXSBoYVtyZGNvcHldIGhlbHB0W2Fnc10gaWYgaXNbZWFyY2hdIGp1W21wc10ga2VlW3BtYXJrc10gbGFuW2d1YWdlXSBsY1tkXSBsZWZ0YVtib3ZlXSBsZ2V0Ylt1ZmZlcl0gbGdyZXBhW2RkXSBsbGFbc3RdIGxtYXBjW2xlYXJdIGxuZltpbGVdIGxvY1trbWFya3NdIGxwZltpbGVdIGx0W2FnXSBtYWtbZV0gbWVudXRbcmFuc2xhdGVdIG1rdmllW3ddIG16ZltpbGVdIG5bZXh0XSBudVttYmVyXSBvcHRbaW9uc10gcGVybGRbb10gcHBbb3BdIFBbcmludF0gcHJvbXB0cltlcGxdIHB0alt1bXBdIHB0cFtyZXZpb3VzXSBwd1tkXSBxW3VpdF0gcmVkaVtyXSByZWdbaXN0ZXJzXSByZXdbaW5kXSBydWJ5ZFtvXSBzYWxbbF0gc2JhW2xsXSBzYm5bZXh0XSBzYlt1ZmZlcl0gc2V0ZltpbGV0eXBlXSBzZmlyW3N0XSBzaW1bYWx0XSBzbVthcF0gc25bZXh0XSBzbm9yW2VtYXBdIHNvW3VyY2VdIHNwZWxscltlcGFsbF0gc3ByW2V2aW91c10gc3Rhclt0aW5zZXJ0XSBzdG9waVtuc2VydF0gc3VubWVudSB0IHRhYmVbZGl0XSB0YWJtW292ZV0gdGFib1tubHldIHRhW2ddIHRjbGZbaWxlXSB0alt1bXBdIHRuW2V4dF0gdHJbZXdpbmRdIHR1W25tZW51XSB1bmRvbFtpc3RdIHZlcmJbb3NlXSB2aW1bZ3JlcF0gdm1hcGNbbGVhcl0gd2hbaWxlXSB3aW5bc2l6ZV0gd3Egd3ZbaW1pbmZvXSB4bVthcF0gWE1MZW50IHhub3JlbWVudQorc3luIGtleXdvcmQgdmltQ29tbWFuZCBjb250YWluZWQJYWJvW3ZlbGVmdF0gYXJnZVtkaXRdIGFzW2NpaV0gYmZbaXJzdF0gYm9bdHJpZ2h0XSBicmVha2xbaXN0XSBidWZmZXJzIGNhZFtkZXhwcl0gY2MgY2ZbaWxlXSBjW2hhbmdlXSBjbGFbc3RdIGNuW2V4dF0gY29sb1tyc2NoZW1lXSBjb3BlW25dIGNyW2V3aW5kXSBkW2VsZXRlXSBkaWZmcGF0Y2ggZGlnW3JhcGhzXSBkc1tlYXJjaF0gZWNob24gZW1lbnUqIGVuZHdbaGlsZV0gZltpbGVdIGZpbmlbc2hdIGZvbGRkb2NbbG9zZWRdIGdvW3RvXSBoW2VscF0gaGlkW2VdIGlqW3VtcF0gaXNwW2xpdF0gayBsYWRkYlt1ZmZlcl0gbGFbc3RdIGxjaFtkaXJdIGxleFtwcl0gbGdldGVbeHByXSBsaFtlbHBncmVwXSBsbGlbc3RdIGxuZXdbZXJdIGxOZltpbGVdIGxvY2t2W2FyXSBscFtyZXZpb3VzXSBsdltpbWdyZXBdIG1hW3JrXSBta1tleHJjXSBta3ZbaW1yY10gbXpbc2NoZW1lXSBOW2V4dF0gb21hcGNbbGVhcl0gcGNbbG9zZV0gcG9bcF0gcHJlW3NlcnZlXSBwcm9mZFtlbF0gcHNbZWFyY2hdIHB0bFthc3RdIHB0cltld2luZF0gcHlmW2lsZV0gcXVpdGFbbGxdIHJlZFtvXSByZXNbaXplXSByaVtnaHRdIHJ1YnlmW2lsZV0gc2FuW2Rib3hdIHNiZltpcnN0XSBzYk5bZXh0XSBzY3JpcHRlW25jb2RpbmddIHNldGdbbG9iYWxdIHNoW2VsbF0gc2xhW3N0XSBzbWFwY1tsZWFyXSBzTltleHRdIHNub3JlbWUgc3BlbGxkW3VtcF0gc3BlbGx1W25kb10gc3JlW3dpbmRdIHN0YXJ0cltlcGxhY2VdIHN0c1tlbGVjdF0gc3VzW3BlbmRdIHRhYiB0YWJmW2luZF0gdGFibmV3IHRhYnBbcmV2aW91c10gdGFncyB0ZVthcm9mZl0gdGxbYXN0XSB0TltleHRdIHRyeSB1bmFbYmJyZXZpYXRlXSB1bmhbaWRlXSB2ZVtyc2lvbl0gdmltZ3JlcGFbZGRdIHZuZVt3XSB3aW5jW21kXSB3bltleHRdIHdxYVtsbF0gWCB4bWFwY1tsZWFyXSBYTUxucyB4dW5tZQorc3luIGtleXdvcmQgdmltQ29tbWFuZCBjb250YWluZWQJYWxbbF0gYXJnZ1tsb2JhbF0gYmFkW2RdIGJsW2FzdF0gYnBbcmV2aW91c10gYnJbZXdpbmRdIGJ1bltsb2FkXSBjYWRkZltpbGVdIGNjbFtvc2VdIGNmaXJbc3RdIGNoYW5nZXMgY2xbaXN0XSBjTltleHRdIGNvbWNbbGVhcl0gY29bcHldIGN1bmFbYmJyZXZdIGRlbGZbdW5jdGlvbl0gZGlmZnB1W3RdIGRpW3NwbGF5XSBkc3BbbGl0XSBlW2RpdF0gZW5kZm9bcl0gZW5lW3ddIGZpbGVzIGZpcltzdF0gZm9sZGRbb29wZW5dIGdyW2VwXSBoZWxwZltpbmRdIGhpc1t0b3J5XSBpbFtpc3RdIGl1bmFbYmJyZXZdIGtlZXBhbHQgbGFkW2RleHByXSBsYXRlciBsY2xbb3NlXSBsZltpbGVdIGxnW2V0ZmlsZV0gbFtpc3RdIGxtYWtbZV0gbG5lW3h0XSBsbltvcmVtYXBdIGxvbFtkZXJdIGxyW2V3aW5kXSBsdmltZ3JlcGFbZGRdIG1hcmtzIG1rc1tlc3Npb25dIG1vZFtlXSBuYmtleSBubWFwY1tsZWFyXSBvbltseV0gcGVkW2l0XSBwb3B1IHByZXZbaW91c10gcHJvZltpbGVdIHB0YVtnXSBwdG5bZXh0XSBwdHNbZWxlY3RdIHB5W3Rob25dIHJbZWFkXSByZWRyW2F3XSByZXRbYWJdIHJpZ2h0YltlbG93XSBydVtudGltZV0gc2Fbcmd1bWVudF0gc2JsW2FzdF0gc2JwW3JldmlvdXNdIHNjcmlwW3RuYW1lc10gc2V0bFtvY2FsXSBzaWduIHNsW2VlcF0gc21lIHNuaVtmZl0gc25vcmVtZW51IHNwZVtsbGdvb2RdIHNwZWxsd1tyb25nXSBzdGFbZ10gc3RqW3VtcF0gc3VuW2hpZGVdIHN2W2lld10gdGFiY1tsb3NlXSB0YWJmaXJbc3RdIHRhYm5bZXh0XSB0YWJyW2V3aW5kXSB0Y1tsXSB0ZltpcnN0XSB0bSB0b1twbGVmdF0gdHNbZWxlY3RdIHVbbmRvXSB1bmxvW2NrdmFyXSB2ZXJ0W2ljYWxdIHZpW3N1YWxdIHZzW3BsaXRdIHdpbmRvIHdOW2V4dF0gd1tyaXRlXSB4YVtsbF0geG1lIHhuW29yZW1hcF0geHVubWVudQorc3luIGtleXdvcmQgdmltQ29tbWFuZCBjb250YWluZWQJYXJnYVtkZF0gYXJnbFtvY2FsXSBiYVtsbF0gYm1bb2RpZmllZF0gYnJlYVtrXSBicm9bd3NlXSBid1tpcGVvdXRdIGNhbFtsXSBjZCBjZ2V0Ylt1ZmZlcl0gY2hkW2lyXSBjbG9bc2VdIGNuZltpbGVdIGNvbXBbaWxlcl0gY3BmW2lsZV0gY3dbaW5kb3ddIGRlbG1bYXJrc10gZGlmZnNwbGl0IGRqW3VtcF0gZWFybGllciBlbFtzZV0gZW5kZlt1bmN0aW9uXSBleCBmaWxldHlwZSBmaXhbZGVsXSBmb2xkb1twZW5dIGdyZXBhW2RkXSBoZWxwZ1tyZXBdIGlhYmNbbGVhcl0gaW1hcGNbbGVhcl0galtvaW5dIGtlZXBqW3VtcHNdIGxhZGRmW2lsZV0gbGJbdWZmZXJdIGxlW2Z0XSBsZmlyW3N0XSBsZ3JbZXBdIGxsIGxtW2FwXSBsTltleHRdIGxvW2Fkdmlld10gbG9wW2VuXSBscyBsd1tpbmRvd10gbWF0W2NoXSBta3NwW2VsbF0gbVtvdmVdIG5ldyBub2hbbHNlYXJjaF0gb1twZW5dIHBlW3JsXSBwb3B1W3BdIHBbcmludF0gcHJvbXB0ZltpbmRdIHB0ZltpcnN0XSBwdE5bZXh0XSBwdVt0XSBxYVtsbF0gcmVjW292ZXJdIHJlZHJhd3NbdGF0dXNdIHJldHVbcm5dIHJ1Ylt5XSBydltpbWluZm9dIHNhdltlYXNdIHNibVtvZGlmaWVkXSBzYnJbZXdpbmRdIHNlW3RdIHNmW2luZF0gc2lsW2VudF0gc21bYWdpY10gc21lbnUgc25vW21hZ2ljXSBzb3JbdF0gc3BlbGxpW25mb10gc3BbbGl0XSBzdGFydGdbcmVwbGFjZV0gc3Rbb3BdIHN1bm1lIHN5bmNiaW5kIHRhYmRbb10gdGFibFthc3RdIHRhYk5bZXh0XSB0YWJzIHRjbGRbb10gdGhbcm93XSB0bVtlbnVdIHRwW3JldmlvdXNdIHR1IHVuZG9qW29pbl0gdXBbZGF0ZV0gdmllW3ddIHZpdVtzYWdlXSB3YVtsbF0gd2lucFtvc10gd3BbcmV2aW91c10gd3NbdmVyYl0geFtpdF0geG1lbnUgeG5vcmVtZSB5W2Fua10KK3N5biBrZXl3b3JkIHZpbUNvbW1hbmQgY29udGFpbmVkCWFyZ2RbZWxldGVdIGFyW2dzXSBiZFtlbGV0ZV0gYm5bZXh0XSBicmVha2FbZGRdIGJ1ZmRvIGNhYmNbbGVhcl0gY2F0W2NoXSBjZVtudGVyXSBjZ2V0ZVt4cHJdIGNoZVtja3BhdGhdIGNtYXBjW2xlYXJdIGNOZltpbGVdIGNvbmZbaXJtXSBjcFtyZXZpb3VzXSBkZWJ1Z2dbcmVlZHldIGRpZmZnW2V0XSBkaWZmdGhpcyBkbFtpc3RdIGVjaG9lW3JyXSBlbHNlaVtmXSBlbltkaWZdIGV4aVt0XSBmaW5hW2xseV0gZm9bbGRdIGZvciAKIHN5biBtYXRjaCAgIHZpbUNvbW1hbmQgY29udGFpbmVkCSJcPHpbLSteLj1dIgogCiAiIHZpbU9wdGlvbnMgYXJlIGNhdWdodCBvbmx5IHdoZW4gY29udGFpbmVkIGluIGEgdmltU2V0IHt7ezIKQEAgLTI5Miw2ICsyOTIsMTAgQEAKICIgPT09CiBzeW4ga2V5d29yZCB2aW1MZXQJbGV0CXVubFtldF0Jc2tpcHdoaXRlIG5leHRncm91cD12aW1WYXIKIAorIiBBYmJyZXZpYXRpb25zIHt7ezIKKyIgPT09PT09PT09PT09PQorc3luIGtleXdvcmQgdmltQWJiCWFiW2JyZXZpYXRlXSBjYVtiYnJldl0gaW5vcmVhW2JicmV2XSBjbm9yZWFbYmJyZXZdIG5vcmVhW2JicmV2XSBpYVtiYnJldl0gc2tpcHdoaXRlIG5leHRncm91cD12aW1NYXBNb2QsdmltTWFwTGhzCisKICIgQXV0b2NtZCB7e3syCiAiID09PT09PT0KIHN5biBtYXRjaCAgIHZpbUF1dG9FdmVudExpc3QJY29udGFpbmVkCSJcKCFcc1wrXClcPVwoXGFcKyxcKSpcYVwrIgljb250YWlucz12aW1BdXRvRXZlbnQgbmV4dGdyb3VwPXZpbUF1dG9DbWRTcGFjZQpAQCAtNjY0LDYgKzY2OCw3IEBACiAgaGkgZGVmIGxpbmsgdmltQnVmbnJXYXJuCXZpbVdhcm4KIGVuZGlmCiAKK2hpIGRlZiBsaW5rIHZpbUFiYgl2aW1Db21tYW5kCiBoaSBkZWYgbGluayB2aW1BZGRyZXNzCXZpbU1hcmsKIGhpIGRlZiBsaW5rIHZpbUF1Z3JvdXBLZXkJdmltQ29tbWFuZAogaGkgZGVmIGxpbmsgdmltQXV0b0NtZE9wdAl2aW1PcHRpb24KZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3lhbWwudmltIGIvcnVudGltZS9zeW50YXgveWFtbC52aW0KaW5kZXggYWJkYTNmOC4uOWViYWI3MCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgveWFtbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgveWFtbC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBZQU1MIChZQU1MIEFpbid0IE1hcmt1cCBMYW5ndWFnZSkKICIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDctMDYtMjcKKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKQEAgLTEwLDE0MCArMTAsNTMgQEAKIGxldCBzOmNwb19zYXZlID0gJmNwbwogc2V0IGNwbyZ2aW0KIAotc3luIGtleXdvcmQgeWFtbFRvZG8KLSAgICAgIFwgY29udGFpbmVkCi0gICAgICBcIFRPRE8KLSAgICAgIFwgRklYTUUKLSAgICAgIFwgWFhYCi0gICAgICBcIE5PVEUKK3N5biBrZXl3b3JkIHlhbWxUb2RvICAgICAgICAgICAgY29udGFpbmVkIFRPRE8gRklYTUUgWFhYIE5PVEUKIAotc3luIHJlZ2lvbiAgeWFtbENvbW1lbnQKLSAgICAgIFwgZGlzcGxheQotICAgICAgXCBvbmVsaW5lCi0gICAgICBcIHN0YXJ0PSclKF58cykjJwotICAgICAgXCBlbmQ9JyQnCi0gICAgICBcIGNvbnRhaW5zPXlhbWxUb2RvLEBTcGVsbAorc3luIHJlZ2lvbiAgeWFtbENvbW1lbnQgICAgICAgICBkaXNwbGF5IG9uZWxpbmUgc3RhcnQ9J1wlKF5cfFxzXCkjJyBlbmQ9JyQnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9eWFtbFRvZG8sQFNwZWxsCiAKLXN5biBtYXRjaCAgIHlhbWxOb2RlUHJvcGVydHkKLSAgICAgIFwgJyFcJSghW15cXF4lIFx0XVwrXHxbXiFdW146LyBcdF0qXCknCitzeW4gbWF0Y2ggICB5YW1sTm9kZVByb3BlcnR5ICAgICchXCUoIVteXFxeJSAgICAgXVwrXHxbXiFdW146LyAgIF0qXCknCiAKLXN5biBtYXRjaCAgIHlhbWxBbmNob3IKLSAgICAgIFwgJyYuKycKK3N5biBtYXRjaCAgIHlhbWxBbmNob3IgICAgICAgICAgJyYuXCsnCiAKLXN5biBtYXRjaCAgIHlhbWxBbGlhcwotICAgICAgXCAnKi4rJworc3luIG1hdGNoICAgeWFtbEFsaWFzICAgICAgICAgICAnXCouXCsnCiAKLXN5biBtYXRjaCAgIHlhbWxEZWxpbWl0ZXIKLSAgICAgIFwgJ1stLDpdJwotc3luIG1hdGNoICAgeWFtbEJsb2NrCi0gICAgICBcICdbW117fT58XScKLXN5biBtYXRjaCAgIHlhbWxPcGVyYXRvcgotICAgICAgXCAnWz8rLV0nCi1zeW4gbWF0Y2ggICB5YW1sS2V5Ci0gICAgICBcICd3KyhzK3crKSp6ZXMqOicKK3N5biBtYXRjaCAgIHlhbWxEZWxpbWl0ZXIgICAgICAgJ1stLDpdJworc3luIG1hdGNoICAgeWFtbEJsb2NrICAgICAgICAgICAnW1xbXF17fT58XScKK3N5biBtYXRjaCAgIHlhbWxPcGVyYXRvciAgICAgICAgJ1s/Ky1dJworc3luIG1hdGNoICAgeWFtbEtleSAgICAgICAgICAgICAnXHdcK1woXHNcK1x3XCtcKSpcemVccyo6JwogCi1zeW4gcmVnaW9uICB5YW1sU3RyaW5nCi0gICAgICBcIHN0YXJ0PSsiKwotICAgICAgXCBza2lwPStcIisKLSAgICAgIFwgZW5kPSsiKwotICAgICAgXCBjb250YWlucz15YW1sRXNjYXBlCi1zeW4gcmVnaW9uICB5YW1sU3RyaW5nCi0gICAgICBcIHN0YXJ0PSsnKwotICAgICAgXCBza2lwPSsnJysKLSAgICAgIFwgZW5kPSsnKwotICAgICAgXCBjb250YWlucz15YW1sU2luZ2xlRXNjYXBlCi1zeW4gbWF0Y2ggICB5YW1sRXNjYXBlCi0gICAgICBcIGNvbnRhaW5lZAotICAgICAgXCBkaXNwbGF5Ci0gICAgICBcICtcW1wiYWJlZm5ydHZeMF8gTkxQXSsKLXN5biBtYXRjaCAgIHlhbWxFc2NhcGUKLSAgICAgIFwgY29udGFpbmVkCi0gICAgICBcIGRpc3BsYXkKLSAgICAgIFwgJ1x4eHsyfScKLXN5biBtYXRjaCAgIHlhbWxFc2NhcGUKLSAgICAgIFwgY29udGFpbmVkCi0gICAgICBcIGRpc3BsYXkKLSAgICAgIFwgJ1x1eHs0fScKLXN5biBtYXRjaCAgIHlhbWxFc2NhcGUKLSAgICAgIFwgY29udGFpbmVkCi0gICAgICBcIGRpc3BsYXkKLSAgICAgIFwgJ1xVeHs4fScKLQorc3luIHJlZ2lvbiAgeWFtbFN0cmluZyAgICAgICAgICBzdGFydD0rIisgc2tpcD0rXFwiKyBlbmQ9KyIrCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9eWFtbEVzY2FwZQorc3luIHJlZ2lvbiAgeWFtbFN0cmluZyAgICAgICAgICBzdGFydD0rJysgc2tpcD0rJycrIGVuZD0rJysKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBjb250YWlucz15YW1sU2luZ2xlRXNjYXBlCitzeW4gbWF0Y2ggICB5YW1sRXNjYXBlICAgICAgICAgIGNvbnRhaW5lZCBkaXNwbGF5ICtcXFtcXCJhYmVmbnJ0dl4wXyBOTFBdKworc3luIG1hdGNoICAgeWFtbEVzY2FwZSAgICAgICAgICBjb250YWluZWQgZGlzcGxheSAnXFx4XHhcezJ9Jworc3luIG1hdGNoICAgeWFtbEVzY2FwZSAgICAgICAgICBjb250YWluZWQgZGlzcGxheSAnXFx1XHhcezR9Jworc3luIG1hdGNoICAgeWFtbEVzY2FwZSAgICAgICAgICBjb250YWluZWQgZGlzcGxheSAnXFxVXHhcezh9JwogIiBUT0RPOiBob3cgZG8gd2UgZ2V0IDB4ODUsIDB4MjAyOCwgYW5kIDB4MjAyOSBpbnRvIHRoaXM/Ci0iIFhYWDogRW0sIHdoYXQgaXMgZ29pbmcgb24gaGVyZT8gIFRoaXMgY2FuJ3QgYmUgcmlnaHQuICBMZWF2ZSBvdXQgdW50aWwgd2UKLSIgZmlndXJlIG91dCB3aGF0IHRoaXMgaXMgbWVhbnQgdG8gZG8uCi0ic3luIG1hdGNoICAgeWFtbEVzY2FwZQotIiAgICAgIFwgY29udGFpbmVkCi0iICAgICAgXCBkaXNwbGF5Ci0iICAgICAgXCAnXCUocm58W3JuXSknCi1zeW4gbWF0Y2ggICB5YW1sU2luZ2xlRXNjYXBlCi0gICAgICBcIGNvbnRhaW5lZAotICAgICAgXCBkaXNwbGF5Ci0gICAgICBcICsnJysKK3N5biBtYXRjaCAgIHlhbWxFc2NhcGUgICAgICAgICAgZGlzcGxheSAnXFxcJShcclxuXHxbXHJcbl1cKScKK3N5biBtYXRjaCAgIHlhbWxTaW5nbGVFc2NhcGUgICAgY29udGFpbmVkIGRpc3BsYXkgKycnKwogCiAiIFRPRE86IHNleGFnZWNpbWFsIGFuZCBmaXhlZCAoMjA6MzAuMTUgYW5kIDEsMjMwLjE1KQotc3luIG1hdGNoICAgeWFtbE51bWJlcgotICAgICAgXCBkaXNwbGF5Ci0gICAgICBcICdcPFsrLV1cPVxkXCtcJShcLlxkXCtcJShbZUVdWystXVw9XGRcK1wpXD1cKVw9Jwotc3luIG1hdGNoICAgeWFtbE51bWJlcgotICAgICAgXCBkaXNwbGF5Ci0gICAgICBcICcwbysnCi1zeW4gbWF0Y2ggICB5YW1sTnVtYmVyCi0gICAgICBcIGRpc3BsYXkKLSAgICAgIFwgJzB4eCsnCi1zeW4gbWF0Y2ggICB5YW1sTnVtYmVyCi0gICAgICBcIGRpc3BsYXkKLSAgICAgIFwgJyhbKy1dPVtpSV1uZiknCi1zeW4gbWF0Y2ggICB5YW1sTnVtYmVyCi0gICAgICBcIGRpc3BsYXkKLSAgICAgIFwgJyhOYU4pJworc3luIG1hdGNoICAgeWFtbE51bWJlciAgICAgICAgICBkaXNwbGF5CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgJ1w8WystXVw9XGRcK1wlKFwuXGRcK1wlKFtlRV1bKy1dXD1cZFwrXClcPVwpXD0nCitzeW4gbWF0Y2ggICB5YW1sTnVtYmVyICAgICAgICAgIGRpc3BsYXkgJzBcb1wrJworc3luIG1hdGNoICAgeWFtbE51bWJlciAgICAgICAgICBkaXNwbGF5ICcweFx4XCsnCitzeW4gbWF0Y2ggICB5YW1sTnVtYmVyICAgICAgICAgIGRpc3BsYXkgJyhbKy1dXD1baUldbmYpJworc3luIG1hdGNoICAgeWFtbE51bWJlciAgICAgICAgICBkaXNwbGF5ICcoTmFOKScKIAotc3luIG1hdGNoICAgeWFtbENvbnN0YW50Ci0gICAgICBcICc8W355bl0+Jwotc3luIGtleXdvcmQgeWFtbENvbnN0YW50Ci0gICAgICBcIHRydWUKLSAgICAgIFwgVHJ1ZQotICAgICAgXCBUUlVFCi0gICAgICBcIGZhbHNlCi0gICAgICBcIEZhbHNlCi0gICAgICBcIEZBTFNFCi1zeW4ga2V5d29yZCB5YW1sQ29uc3RhbnQKLSAgICAgIFwgeWVzCi0gICAgICBcIFllcwotICAgICAgXCBvbgotICAgICAgXCBPTgotICAgICAgXCBubwotICAgICAgXCBObwotICAgICAgXCBvZmYKLSAgICAgIFwgT0ZGCi1zeW4ga2V5d29yZCB5YW1sQ29uc3RhbnQKLSAgICAgIFwgbnVsbAotICAgICAgXCBOdWxsCi0gICAgICBcIE5VTEwKLSAgICAgIFwgbmlsCi0gICAgICBcIE5pbAotICAgICAgXCBOSUwKK3N5biBtYXRjaCAgIHlhbWxDb25zdGFudCAgICAgICAgJ1w8W355bl1cPicKK3N5biBrZXl3b3JkIHlhbWxDb25zdGFudCAgICAgICAgdHJ1ZSBUcnVlIFRSVUUgZmFsc2UgRmFsc2UgRkFMU0UKK3N5biBrZXl3b3JkIHlhbWxDb25zdGFudCAgICAgICAgeWVzIFllcyBvbiBPTiBubyBObyBvZmYgT0ZGCitzeW4ga2V5d29yZCB5YW1sQ29uc3RhbnQgICAgICAgIG51bGwgTnVsbCBOVUxMIG5pbCBOaWwgTklMCiAKLXN5biBtYXRjaCAgIHlhbWxUaW1lc3RhbXAKLSAgICAgIFwgJ1xkXGRcZFxkLVwlKDFbMC0yXVx8XGRcKS1cJSgzWzAtMl1cfDJcZFx8MVxkXHxcZFwpXCUoIFwlKFswMV1cZFx8MlswLTNdXCk6WzAtNV1cZDpbMC01XVxkLlxkXGQgWystXVwlKFswMV1cZFx8MlswLTNdXCk6WzAtNV1cZFx8dFwlKFswMV1cZFx8MlswLTNdXCk6WzAtNV1cZDpbMC01XVxkLlxkXGRbKy1dXCUoWzAxXVxkXHwyWzAtM11cKTpbMC01XVxkXHxUXCUoWzAxXVxkXHwyWzAtM11cKTpbMC01XVxkOlswLTVdXGQuXGRaXClcPScKK3N5biBtYXRjaCAgIHlhbWxUaW1lc3RhbXAgICAgICAgJ1xkXGRcZFxkLVwlKDFbMC0yXVx8XGRcKS1cJSgzWzAtMl1cfDJcZFx8MVxkXHxcZFwpXCUoIFwlKFswMV1cZFx8MlswLTNdXCk6WzAtNV1cZDpbMC01XVxkLlxkXGQgWystXVwlKFswMV1cZFx8MlswLTNdXCk6WzAtNV1cZFx8dFwlKFswMV1cZFx8MlswLTNdXCk6WzAtNV1cZDpbMC01XVxkLlxkXGRbKy1dXCUoWzAxXVxkXHwyWzAtM11cKTpbMC01XVxkXHxUXCUoWzAxXVxkXHwyWzAtM11cKTpbMC01XVxkOlswLTVdXGQuXGRaXClcPScKIAotc3luIHJlZ2lvbiAgeWFtbERvY3VtZW50SGVhZGVyCi0gICAgICBcIHN0YXJ0PSctLS0nCi0gICAgICBcIGVuZD0nJCcKLSAgICAgIFwgY29udGFpbnM9eWFtbERpcmVjdGl2ZQotc3luIG1hdGNoICAgeWFtbERvY3VtZW50RW5kCi0gICAgICBcICdcLlwuXC4nCitzeW4gcmVnaW9uICB5YW1sRG9jdW1lbnRIZWFkZXIgIHN0YXJ0PSctLS0nIGVuZD0nJCcgY29udGFpbnM9eWFtbERpcmVjdGl2ZQorc3luIG1hdGNoICAgeWFtbERvY3VtZW50RW5kICAgICAnXC5cLlwuJwogCi1zeW4gbWF0Y2ggICB5YW1sRGlyZWN0aXZlCi0gICAgICBcIGNvbnRhaW5lZAotICAgICAgXCAnJVteOl0rOi4rJwotCi1zeW4gbWF0Y2ggICB5YW1sSW5kZW50YXRpb24KLSAgICAgIFwgJ15zKicKLSAgICAgIFwgY29udGFpbnM9eWFtbEluZGVudGF0aW9uRXJyb3IKLQotc3luIG1hdGNoICAgeWFtbEluZGVudGF0aW9uRXJyb3IKLSAgICAgIFwgJ3QnCitzeW4gbWF0Y2ggICB5YW1sRGlyZWN0aXZlICAgICAgIGNvbnRhaW5lZCAnJVteOl1cKzouXCsnCiAKIGhpIGRlZiBsaW5rIHlhbWxUb2RvICAgICAgICAgICAgVG9kbwogaGkgZGVmIGxpbmsgeWFtbENvbW1lbnQgICAgICAgICBDb21tZW50CkBAIC0xNjMsNyArNzYsNiBAQAogaGkgZGVmIGxpbmsgeWFtbE51bWJlciAgICAgICAgICBOdW1iZXIKIGhpIGRlZiBsaW5rIHlhbWxDb25zdGFudCAgICAgICAgQ29uc3RhbnQKIGhpIGRlZiBsaW5rIHlhbWxUaW1lc3RhbXAgICAgICAgTnVtYmVyCi1oaSBkZWYgbGluayB5YW1sSW5kZW50YXRpb25FcnJvciAgRXJyb3IKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAieWFtbCIKIApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvenNoLnZpbSBiL3J1bnRpbWUvc3ludGF4L3pzaC52aW0KaW5kZXggZWIxOWViYS4uZWNkNmYwNSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvenNoLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC96c2gudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgWnNoIHNoZWxsIHNjcmlwdAogIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNy0wNi0xNworIiBMYXRlc3QgUmV2aXNpb246ICAyMDA4LTA3LTE3CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApAQCAtMzQsNyArMzQsOSBAQAogCiBzeW4ga2V5d29yZCB6c2hDb25kaXRpb25hbCAgICAgIGlmIHRoZW4gZWxpZiBlbHNlIGZpIGNhc2UgaW4gZXNhYyBzZWxlY3QKIAotc3luIGtleXdvcmQgenNoUmVwZWF0ICAgICAgICAgICBmb3Igd2hpbGUgdW50aWwgcmVwZWF0IGZvcmVhY2gKK3N5biBrZXl3b3JkIHpzaFJlcGVhdCAgICAgICAgICAgd2hpbGUgdW50aWwgcmVwZWF0CisKK3N5biBrZXl3b3JkIHpzaFJlcGVhdCAgICAgICAgICAgZm9yIGZvcmVhY2ggbmV4dGdyb3VwPXpzaFZhcmlhYmxlIHNraXB3aGl0ZQogCiBzeW4ga2V5d29yZCB6c2hFeGNlcHRpb24gICAgICAgIGFsd2F5cwogCkBAIC00OSwxOSArNTEsMzAgQEAKIHN5biBtYXRjaCAgIHpzaFJlZGlyICAgICAgICAgICAgJ1xkXD1cKD5cfD4+XHw+JlxzKlswLTlwLV1cPVx8Jj5cfD4+Jlx8Jj4+XClbfCFdXD0nCiBzeW4gbWF0Y2ggICB6c2hSZWRpciAgICAgICAgICAgICd8Jlw9JwogCi1zeW4gcmVnaW9uICB6c2hIZXJlRG9jICAgICAgICAgIG1hdGNoZ3JvdXA9enNoUmVkaXIgc3RhcnQ9Jzw8XHMqXHooXFMqXCknCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgZW5kPSdeXHoxXD4nIGNvbnRhaW5zPUB6c2hTdWJzdAotc3luIHJlZ2lvbiAgenNoSGVyZURvYyAgICAgICAgICBtYXRjaGdyb3VwPXpzaFJlZGlyIHN0YXJ0PSc8PC1ccypceihcUypcKScKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBlbmQ9J15ccypcejFcPicgY29udGFpbnM9QHpzaFN1YnN0CiBzeW4gcmVnaW9uICB6c2hIZXJlRG9jICAgICAgICAgIG1hdGNoZ3JvdXA9enNoUmVkaXIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0rPDxccypcKFsiJ11cKVx6KFxTKlwpXDErICBlbmQ9J15cejFcPicKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nPFxAPCE8PFxzKlx6KFtePF1cUypcKScKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBlbmQ9J15cejFcPicKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBjb250YWlucz1AenNoU3Vic3QKIHN5biByZWdpb24gIHpzaEhlcmVEb2MgICAgICAgICAgbWF0Y2hncm91cD16c2hSZWRpcgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHN0YXJ0PSs8PC1ccypcKFsiJ11cKVx6KFxTKlwpXDErCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc3RhcnQ9JzxcQDwhPDxccypcXFx6KFxTXCtcKScKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBlbmQ9J15cejFcPicKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBjb250YWlucz1AenNoU3Vic3QKK3N5biByZWdpb24gIHpzaEhlcmVEb2MgICAgICAgICAgbWF0Y2hncm91cD16c2hSZWRpcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHN0YXJ0PSc8XEA8ITw8LVxzKlxcXD1ceihcU1wrXCknCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgZW5kPSdeXHMqXHoxXD4nCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QHpzaFN1YnN0CitzeW4gcmVnaW9uICB6c2hIZXJlRG9jICAgICAgICAgIG1hdGNoZ3JvdXA9enNoUmVkaXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0rPFxAPCE8PFxzKlwoWyInXVwpXHooXFNcK1wpXDErIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGVuZD0nXlx6MVw+Jworc3luIHJlZ2lvbiAgenNoSGVyZURvYyAgICAgICAgICBtYXRjaGdyb3VwPXpzaFJlZGlyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc3RhcnQ9KzxcQDwhPDwtXHMqXChbIiddXClceihcU1wrXClcMSsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBlbmQ9J15ccypcejFcPicKIAotc3luIG1hdGNoICAgenNoVmFyaWFibGUgICAgICAgICAnXDxcaFx3Klx6ZStcPT0nCitzeW4gbWF0Y2ggICB6c2hWYXJpYWJsZSAgICAgICAgICdcPFxoXHcqJyBjb250YWluZWQKKworc3luIG1hdGNoICAgenNoVmFyaWFibGVEZWYgICAgICAnXDxcaFx3Klx6ZStcPT0nCiAiIFhYWDogaG93IHNhZmUgaXMgdGhpcz8KLXN5biByZWdpb24gIHpzaFZhcmlhYmxlICAgICAgICAgb25lbGluZQorc3luIHJlZ2lvbiAgenNoVmFyaWFibGVEZWYgICAgICBvbmVsaW5lCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc3RhcnQ9J1wkXEA8IVw8XGhcdypcWycgZW5kPSdcXVx6ZStcPT0nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QHpzaFN1YnN0CiAKQEAgLTg3LDcgKzEwMCw3IEBACiBpZiBzOnpzaF9zeW50YXhfdmFyaWFibGVzID1+ICdhbGwnCiAgIHN5biBtYXRjaCB6c2hEZXJlZiAgICAgICAgICAgICdcJFs9Xn5dKlsjK10qXGhcdypcPicKIGVsc2UKLSAgc3luIG1hdGNoIHpzaERlcmVmICAgICAgICAgICAgdHJhbnNwYXJlbnQgJ1wkWz1efl0qWyMrXSpcaFx3Klw+JworICBzeW4gbWF0Y2ggenNoRGVyZWYgICAgICAgICAgICB0cmFuc3BhcmVudCBjb250YWlucz1OT05FICdcJFs9Xn5dKlsjK10qXGhcdypcPicKIGVuZGlmCiAKIHN5biBtYXRjaCAgIHpzaENvbW1hbmRzICAgICAgICAgJ1wlKF5cfFxzXClbLjpdXHplXHMnCkBAIC0xMTksNiArMTMyLDcgQEAKIHN5biBtYXRjaCAgIHpzaE51bWJlciAgICAgICAgICAgJ1srLV1cPVxkXCsjWy0rXVw9XHdcK1w+Jwogc3luIG1hdGNoICAgenNoTnVtYmVyICAgICAgICAgICAnWystXVw9XGRcK1wuXGRcK1w+JwogCisiIFRPRE86ICRbLi4uXSBpcyB0aGUgc2FtZSBhcyAkKCguLi4pKSwgc28gYWRkIHRoYXQgYXMgd2VsbC4KIHN5biBjbHVzdGVyIHpzaFN1YnN0ICAgICAgICAgICAgY29udGFpbnM9enNoU3Vic3QsenNoT2xkU3Vic3QsenNoTWF0aFN1YnN0CiBzeW4gcmVnaW9uICB6c2hTdWJzdCAgICAgICAgICAgIG1hdGNoZ3JvdXA9enNoU3Vic3REZWxpbSB0cmFuc3BhcmVudAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHN0YXJ0PSdcJCgnIHNraXA9J1xcKScgZW5kPScpJyBjb250YWlucz1UT1AKQEAgLTEzMSwxMCArMTQ1LDE0IEBACiBzeW4gcmVnaW9uICB6c2hCcmFja2V0cyAgICAgICAgIGNvbnRhaW5lZCB0cmFuc3BhcmVudCBzdGFydD0neycgc2tpcD0nXFx9JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGVuZD0nfScKIHN5biByZWdpb24gIHpzaFN1YnN0ICAgICAgICAgICAgbWF0Y2hncm91cD16c2hTdWJzdERlbGltIHN0YXJ0PSdcJHsnIHNraXA9J1xcfScKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBlbmQ9J30nIGNvbnRhaW5zPUB6c2hTdWJzdCx6c2hCcmFja2V0cyx6c2hRdW90ZWQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBlbmQ9J30nIGNvbnRhaW5zPUB6c2hTdWJzdCx6c2hCcmFja2V0cyx6c2hRdW90ZWQsenNoU3RyaW5nCiBzeW4gcmVnaW9uICB6c2hPbGRTdWJzdCAgICAgICAgIG1hdGNoZ3JvdXA9enNoU3Vic3REZWxpbSBzdGFydD0rYCsgc2tpcD0rXFxgKwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGVuZD0rYCsgY29udGFpbnM9VE9QLHpzaE9sZFN1YnN0CiAKK3N5biBzeW5jICAgIG1pbmxpbmVzPTUwCitzeW4gc3luYyAgICBtYXRjaCB6c2hIZXJlRG9jU3luYyAgICBncm91cGhlcmUgICBOT05FICc8PC1cPVxzKlwlKFxcXD1cU1wrXHxcKFsiJ11cKVxTXCtcMVwpJworc3luIHN5bmMgICAgbWF0Y2ggenNoSGVyZURvY0VuZFN5bmMgZ3JvdXB0aGVyZSAgTk9ORSAnXlxzKkVPXGFcK1w+JworCiBoaSBkZWYgbGluayB6c2hUb2RvICAgICAgICAgICAgIFRvZG8KIGhpIGRlZiBsaW5rIHpzaENvbW1lbnQgICAgICAgICAgQ29tbWVudAogaGkgZGVmIGxpbmsgenNoUHJlUHJvYyAgICAgICAgICBQcmVQcm9jCkBAIC0xNjMsNiArMTgxLDcgQEAKICAgaGkgZGVmIGxpbmsgenNoUmVkaXIgICAgICAgICAgICBOb25lCiBlbmRpZgogaGkgZGVmIGxpbmsgenNoVmFyaWFibGUgICAgICAgICBOb25lCitoaSBkZWYgbGluayB6c2hWYXJpYWJsZURlZiAgICAgIHpzaFZhcmlhYmxlCiBoaSBkZWYgbGluayB6c2hEZXJlZmVyZW5jaW5nICAgIFByZVByb2MKIGlmIHM6enNoX3N5bnRheF92YXJpYWJsZXMgPX4gJ3Nob3J0XHxhbGwnCiAgIGhpIGRlZiBsaW5rIHpzaFNob3J0RGVyZWYgICAgIHpzaERlcmVmZXJlbmNpbmcKZGlmZiAtLWdpdCBhL3J1bnRpbWUvdG9vbHMvdmltbSBiL3J1bnRpbWUvdG9vbHMvdmltbQppbmRleCAwNDJjNGEwLi43Yjg0Y2IyIDEwMDc1NQotLS0gYS9ydW50aW1lL3Rvb2xzL3ZpbW0KKysrIGIvcnVudGltZS90b29scy92aW1tCkBAIC0xLDYgKzEsNiBAQAogIyEvYmluL3NoCiAjIGVuYWJsZSBERUMgbG9jYXRvciBpbnB1dCBtb2RlbCBvbiByZW1vdGUgdGVybWluYWwKLWVjaG8gICJcMDMzWzE7Mid6XDAzM1sxOzMne1xjIgorcHJpbnRmICAiXDAzM1sxOzInelwwMzNbMTszJ3tcYyIKIHZpbSAiJEAiCiAjIGRpc2FibGUgREVDIGxvY2F0b3IgaW5wdXQgbW9kZWwgb24gcmVtb3RlIHRlcm1pbmFsCi1lY2hvICAiXDAzM1syOzQne1wwMzNbMCd6XGMiCitwcmludGYgICJcMDMzWzI7NCd7XDAzM1swJ3pcYyIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvdG9vbHMvdmltc3BlbGwuc2ggYi9ydW50aW1lL3Rvb2xzL3ZpbXNwZWxsLnNoCmluZGV4IGI0MDViN2EuLmQzMzZmZTYgMTAwNzU1Ci0tLSBhL3J1bnRpbWUvdG9vbHMvdmltc3BlbGwuc2gKKysrIGIvcnVudGltZS90b29scy92aW1zcGVsbC5zaApAQCAtMTEsNiArMTEsNyBAQAogIwogIyBOZWlsIFNjaGVtZW5hdWVyIDxuYXNjaGVtZUB1Y2FsZ2FyeS5jYT4KICMgTWFyY2ggMTk5OQorIyB1cGRhdGVkIDIwMDggSnVsIDE3IGJ5IEJyYW0KICMKICMgU2FmZSBtZXRob2QgZm9yIHRoZSB0ZW1wIGZpbGUgYnkgSmF2aWVyIEZlcm7hbmRlei1TYW5ndWlub19QZfFhCiAKQEAgLTIyLDcgKzIzLDcgQEAKICMgY3JlYXRlIGEgZmlsZSBpbiB0aGUgc2FmZXN0IHdheSBwb3NzaWJsZS4KIGlmIHRlc3QgIiRPVVRGSUxFIiA9IG5vbmU7IHRoZW4KICAgICAgICAgT1VURklMRT0kdG1wL3ZpbXNwZWxsJCQKLQlbIC1lICRPVVRGSUxFIF0gJiYgeyBlY2hvICJDYW5ub3QgdXNlIHRlbXBvcmFyeSBmaWxlICRPVVRGSUxFLCBpdCBhbHJlYWR5IGV4aXN0cyE7IGV4aXQgMSA7IH0gCisJWyAtZSAkT1VURklMRSBdICYmIHsgZWNobyAiQ2Fubm90IHVzZSB0ZW1wb3JhcnkgZmlsZSAkT1VURklMRSwgaXQgYWxyZWFkeSBleGlzdHMhIjsgZXhpdCAxIDsgfSAKICAgICAgICAgKHVtYXNrIDA3NzsgdG91Y2ggJE9VVEZJTEUpCiBmaQogIyBOb3RlIHRoZSBjb3B5IG9mIHZpbXNwZWxsIGNhbm5vdCBiZSBkZWxldGVkIG9uIGV4aXQgc2luY2UgaXQgaXMKZGlmZiAtLWdpdCBhL3J1bnRpbWUvdHV0b3IvdHV0b3IudmltIGIvcnVudGltZS90dXRvci90dXRvci52aW0KaW5kZXggODFlNWExOS4uMTE1ODRkNSAxMDA2NDQKLS0tIGEvcnVudGltZS90dXRvci90dXRvci52aW0KKysrIGIvcnVudGltZS90dXRvci90dXRvci52aW0KQEAgLTEsOCArMSw5IEBACiAiIFZpbSB0dXRvciBzdXBwb3J0IGZpbGUKICIgQXV0aG9yOiBFZHVhcmRvIEYuIEFtYXRyaWEgPGVmZXJuYTFAcGxhdGVhLnBudGljLm1lYy5lcz4KLSIgTGFzdCBDaGFuZ2U6CTIwMDggSnVuIDIxCisiIE1haW50YWluZXI6IEJyYW0gTW9vbGVuYWFyCisiIExhc3QgQ2hhbmdlOgkyMDA4IEp1bCAyMQogCi0iIFRoaXMgc21hbGwgc291cmNlIGZpbGUgaXMgdXNlZCBmb3IgZGV0ZWN0aW5nIGlmIGEgdHJhbnNsYXRpb24gb2YgdGhlCisiIFRoaXMgVmltIHNjcmlwdCBpcyB1c2VkIGZvciBkZXRlY3RpbmcgaWYgYSB0cmFuc2xhdGlvbiBvZiB0aGUKICIgdHV0b3IgZmlsZSBleGlzdCwgaS5lLiwgYSB0dXRvci54eCBmaWxlLCB3aGVyZSB4eCBpcyB0aGUgbGFuZ3VhZ2UuCiAiIElmIHRoZSB0cmFuc2xhdGlvbiBkb2VzIG5vdCBleGlzdCwgb3Igbm8gZXh0ZW5zaW9uIGlzIGdpdmVuLAogIiBpdCBkZWZhdWx0cyB0byB0aGUgZW5nbGlzaCB2ZXJzaW9uLgpAQCAtMTYwLDcgKzE2MSw3IEBACiAKICIgSWYgJ2VuY29kaW5nJyBpcyB1dGYtOCBzOmV4dCBtdXN0IGVuZCBpbiB1dGYtOC4KIGlmICZlbmMgPT0gJ3V0Zi04JyAmJiBzOmV4dCAhfiAnXC51dGYtOCcKLSAgczpleHQgLj0gJy51dGYtOCcKKyAgbGV0IHM6ZXh0IC49ICcudXRmLTgnCiBlbmRpZgogCiAiIDIuIEJ1aWxkIHRoZSBuYW1lIG9mIHRoZSBmaWxlOgo=