ZGlmZiAtLWdpdCBhL3J1bnRpbWUvYXV0b2xvYWQvbmV0cncudmltIGIvcnVudGltZS9hdXRvbG9hZC9uZXRydy52aW0KaW5kZXggNzlhYmVjNS4uZjA3NjdhYiAxMDA2NDQKLS0tIGEvcnVudGltZS9hdXRvbG9hZC9uZXRydy52aW0KKysrIGIvcnVudGltZS9hdXRvbG9hZC9uZXRydy52aW0KQEAgLTEsNyArMSw3IEBACiAiIG5ldHJ3LnZpbTogSGFuZGxlcyBmaWxlIHRyYW5zZmVyIGFuZCByZW1vdGUgZGlyZWN0b3J5IGxpc3RpbmcgYWNyb3NzIGEgbmV0d29yawogIiAgICAgICAgICAgIEFVVE9MT0FEIFBPUlRJT04KLSIgRGF0ZToJCUFwciAxNCwgMjAwNgotIiBWZXJzaW9uOgk4OAorIiBEYXRlOgkJQXByIDIxLCAyMDA2CisiIFZlcnNpb246CTkxCiAiIE1haW50YWluZXI6CUNoYXJsZXMgRSBDYW1wYmVsbCwgSnIgPGRyY2hpcE5PU1BBTSBhdCBjYW1wYmVsbGZhbWlseSBkb3QgYml6PgogIiBHZXRMYXRlc3RWaW1TY3JpcHRzOiAxMDc1IDEgOkF1dG9JbnN0YWxsOiBuZXRydy52aW0KICIgQ29weXJpZ2h0OiAgICBDb3B5cmlnaHQgKEMpIDE5OTktMjAwNSBDaGFybGVzIEUuIENhbXBiZWxsLCBKci4ge3t7MQpAQCAtMjMsNyArMjMsNyBAQAogaWYgJmNwIHx8IGV4aXN0cygiZzpsb2FkZWRfbmV0cnciKQogICBmaW5pc2gKIGVuZGlmCi1sZXQgZzpsb2FkZWRfbmV0cncgPSAidjg4IgorbGV0IGc6bG9hZGVkX25ldHJ3ID0gInY5MSIKIGlmIHY6dmVyc2lvbiA8IDcwMAogIGVjaG9obCBXYXJuaW5nTXNnIHwgZWNobyAiKioqbmV0cncqKiogeW91IG5lZWQgdmltIHZlcnNpb24gNy4wIG9yIGxhdGVyIGZvciB2ZXJzaW9uICIuZzpsb2FkZWRfbmV0cncuIiBvZiBuZXRydyIgfCBlY2hvaGwgTm9uZQogIGZpbmlzaApAQCAtMzk2LDcgKzM5Niw3IEBACiAgICAgbGV0IGNob2ljZSA9IHN1YnN0aXR1dGUoY2hvaWNlLCdcXCcsJy8nLCdnZScpCiAiICAgIGNhbGwgRGVjaG8oImZpeGluZyB1cCB3aW5kb3dzIHVybCB0byA8Ii5jaG9pY2UuIj4gdG1wZmlsZTwiLnRtcGZpbGUpCiAKLSAgICBleGUgJ2xjZCAnIC4gZm5hbWVtb2RpZnkodG1wZmlsZSwnOmgnKQorICAgIGV4ZSAnY2QgJyAuIGZuYW1lbW9kaWZ5KHRtcGZpbGUsJzpoJykKICAgICBsZXQgdG1wZmlsZSA9IGZuYW1lbW9kaWZ5KHRtcGZpbGUsJzp0JykKICAgIGVuZGlmCiAKQEAgLTg5MCw3ICs4OTAsNyBAQAogICAgaWYgaGFzKCJ3aW4zMiIpIHx8IGhhcygid2luOTUiKSB8fCBoYXMoIndpbjY0IikgfHwgaGFzKCJ3aW4xNiIpCiAgICAgbGV0IGNob2ljZT0gc3Vic3RpdHV0ZShjaG9pY2UsJ1xcJywnLycsJ2dlJykKICAgICAiRVI6IHNlZSBOZXRSZWFkKCkKLSAgICBleGUgJ2xjZCAnIC4gZm5hbWVtb2RpZnkodG1wZmlsZSwnOmgnKQorICAgIGV4ZSAnY2QgJyAuIGZuYW1lbW9kaWZ5KHRtcGZpbGUsJzpoJykKICAgICBsZXQgdG1wZmlsZSA9IGZuYW1lbW9kaWZ5KHRtcGZpbGUsJzp0JykKICAgIGVuZGlmCiAKQEAgLTEyMzMsNiArMTIzMyw3IEBACiAiICAgY2FsbCBEZWNobygibmV3IHBhdGg8Ii5wYXRoLiI+IikKIAogICAgIiByZW1vdGUtcmVhZCB0aGUgcmVxdWVzdGVkIGZpbGUgaW50byBjdXJyZW50IGJ1ZmZlcgorICAgbWFyayAnCiAgICBrZWVwanVtcHMga2VlcGFsdCBlbmV3IQogICAgc2V0IG1hCiAiICAgY2FsbCBEZWNobygiZXhlIGZpbGUgIi5tZXRob2QuIjovLyIudXNlci5tYWNoaW5lLiIvIi5lc2NhcGUocGF0aCxzOm5ldHJ3X2NkX2VzY2FwZSkpCkBAIC0xMjU3LDYgKzEyNTgsNyBAQAogICBsZXQgYnVmbmFtZSAgID0gbWV0aG9kLic6Ly8nLnVzZXIubWFjaGluZS4nLycucGF0aAogICBsZXQgYnVmbmFtZW5yID0gYnVmbnIoYnVmbmFtZS4nJCcpCiAiICBjYWxsIERlY2hvKCJidWZuYW1lPCIuYnVmbmFtZS4iPiBidWZuYW1lbnI9Ii5idWZuYW1lbnIpCisgIG1hcmsgJwogICBpZiBidWZuYW1lbnIgIT0gLTEKICAgICIgYnVmZmVyIGFscmVhZHkgZXhpc3RzLCBzd2l0Y2ggdG8gaXQhCiAiICAgY2FsbCBEZWNobygiYnVmZmVyIGFscmVhZHkgZXhpc3RzLCBzd2l0Y2hpbmcgdG8gaXQiKQpAQCAtMTMyNCw3ICsxMzI2LDcgQEAKICAgc2V0bG9jYWwgbWEgbm9udSBub3dyYXAKIAogICAiIFNldCB1cCB0aGUgYmFubmVyCi0iICBjYWxsIERlY2hvKCJzZXQgdXAgdGhlIGJhbm5lcjogc29ydGJ5PCIuZzpuZXRyd19zb3J0X2J5LiI+IG1ldGhvZDwiLm1ldGhvZC4iPiIpCisiICBjYWxsIERlY2hvKCJzZXQgdXAgdGhlIGJhbm5lcjogc29ydGJ5PCIuZzpuZXRyd19zb3J0X2J5LiI+IG1ldGhvZDwiLm1ldGhvZC4iPiBkaXJlY3Rpb248Ii5nOm5ldHJ3X3NvcnRfZGlyZWN0aW9uLiI+IikKICAga2VlcGp1bXBzIHB1dCA9J1wiID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PScKICAga2VlcGp1bXBzIHB1dCA9J1wiIE5ldHJ3IFJlbW90ZSBEaXJlY3RvcnkgTGlzdGluZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChuZXRydyAnLmc6bG9hZGVkX25ldHJ3LicpJwogICBrZWVwanVtcHMgcHV0ID0nXCIgICAnLmJ1Zm5hbWUKQEAgLTIxNDgsMTAgKzIxNTAsMTAgQEAKICAgIGxldCBiOm5ldHJ3X2NwZj0gMAogICAgaWYgbGluZSgiJCIpID49IHc6bmV0cndfYmFubmVyY250CiAgICAgZXhlICdzaWxlbnQga2VlcGp1bXBzICcudzpuZXRyd19iYW5uZXJjbnQuJywkZy9eLi9pZiB2aXJ0Y29sKCIkIikgPiBiOm5ldHJ3X2NwZnxsZXQgYjpuZXRyd19jcGY9IHZpcnRjb2woIiQiKXxlbmRpZicKLSAgZWxzZQotIiAgIGNhbGwgRHJldCgiTmV0cndXaWRlTGlzdGluZyIpCi0gICByZXR1cm4KLSAgZW5kaWYKKyAgIGVsc2UKKyIgICAgY2FsbCBEcmV0KCJOZXRyd1dpZGVMaXN0aW5nIikKKyAgICByZXR1cm4KKyAgIGVuZGlmCiAiICAgY2FsbCBEZWNobygibWF4IGZpbGUgc3RybGVuKzE9Ii5iOm5ldHJ3X2NwZikKICAgIGxldCBiOm5ldHJ3X2NwZj0gYjpuZXRyd19jcGYgKyAxCiAKQEAgLTIxNjMsNyArMjE2NSw3IEBACiAiICAgY2FsbCBEZWNobygiZnBsPSAiLndpbndpZHRoKDApLiIvW2I6bmV0cndfY3BmPSIuYjpuZXRyd19jcGYuJ109Jy53Om5ldHJ3X2ZwbCkKIAogICAgIiBtYWtlIHdpZGUgZGlzcGxheQotICAgZXhlICdzaWxlbnQga2VlcGp1bXBzICcudzpuZXRyd19iYW5uZXJjbnQuJywkcy9eLiokL1w9cHJpbnRmKCIlLScuYjpuZXRyd19jcGYuJ3MiLHN1Ym1hdGNoKDApKS8nCisgICBleGUgJ3NpbGVudCBrZWVwanVtcHMgJy53Om5ldHJ3X2Jhbm5lcmNudC4nLCRzL14uKiQvXD1wcmludGYoIiUtJy5iOm5ldHJ3X2NwZi4ncyIsZXNjYXBlKHN1Ym1hdGNoKDApLCJcXCIpKS8nCiAgICBsZXQgZnBjICAgICAgICAgPSAobGluZSgiJCIpIC0gdzpuZXRyd19iYW5uZXJjbnQgKyB3Om5ldHJ3X2ZwbCkvdzpuZXRyd19mcGwKICAgIGxldCBuZXdjb2xzdGFydCA9IHc6bmV0cndfYmFubmVyY250ICsgZnBjCiAgICBsZXQgbmV3Y29sZW5kICAgPSBuZXdjb2xzdGFydCArIGZwYyAtIDEKQEAgLTIyNTIsMTEgKzIyNTQsMTUgQEAKICAgICBjYWxsIG1rZGlyKGZ1bGxuZXdkaXIsInAiKQogICAgZWxzZQogICAgIGxldCBuZXRyd19vcmlnZGlyPSBzOk5ldEdldGN3ZCgxKQotICAgIGV4ZSAnY2QgJy5iOm5ldHJ3X2N1cmRpcgotIiAgICBjYWxsIERlY2hvKCJuZXRyd19vcmlnZGlyPCIubmV0cndfb3JpZ2Rpci4iPiBiOm5ldHJ3X2N1cmRpcjwiLmI6bmV0cndfY3VyZGlyLiI+IikKKyAgICBleGUgJ2tlZXBqdW1wcyBjZCAnLmI6bmV0cndfY3VyZGlyCisiICAgIGNhbGwgRGVjaG8oIm5ldHJ3X29yaWdkaXI8Ii5uZXRyd19vcmlnZGlyLiI+OiBjZCBiOm5ldHJ3X2N1cmRpcjwiLmI6bmV0cndfY3VyZGlyLiI+IikKICIgICAgY2FsbCBEZWNobygiZXhlIHNpbGVudCEgISIuZzpuZXRyd19sb2NhbF9ta2Rpci4nICInLm5ld2Rpcm5hbWUuJyInKQogICAgIGV4ZSAic2lsZW50ISAhIi5nOm5ldHJ3X2xvY2FsX21rZGlyLicgIicubmV3ZGlybmFtZS4nIicKICAgICBpZiAhZzpuZXRyd19rZWVwZGlyIHwgZXhlICdrZWVwanVtcHMgY2QgJy5uZXRyd19vcmlnZGlyIHwgZW5kaWYKKyAgICBpZiAhZzpuZXRyd19rZWVwZGlyCisgICAgIGV4ZSAna2VlcGp1bXBzIGNkICcubmV0cndfb3JpZ2RpcgorIiAgICAgY2FsbCBEZWNobygibmV0cndfa2VlcGRpcj0iLmc6bmV0cndfa2VlcGRpci4iOiBjZCAiLm5ldHJ3X29yaWdkaXIpCisgICAgZW5kaWYKICAgIGVuZGlmCiAKICAgIGlmIHY6c2hlbGxfZXJyb3IgPT0gMApAQCAtMjc3MCw2ICsyNzc2LDExIEBACiAgIGVuZGlmCiAKICAgY2FsbCBzOk5ldE9wdGlvblNhdmUoKQorICBpZiB3OmFjZGtlZXAKKyAgIGV4ZSAnY2QgJy5lc2NhcGUoYTpkaXJuYW1lLHM6bmV0cndfY2RfZXNjYXBlKQorIiAgIGNhbGwgRGVjaG8oImNkICIuZXNjYXBlKGE6ZGlybmFtZSxzOm5ldHJ3X2NkX2VzY2FwZSkpCisiICAgY2FsbCBEZWNobygiZ2V0Y3dkPCIuZ2V0Y3dkKCkuIj4iKQorICBlbmRpZgogCiAgIGlmIHY6dmVyc2lvbiA8IDYwMwogICAgaWYgIWV4aXN0cygiZzpuZXRyd19xdWlldCIpCkBAIC0yODA3LDYgKzI4MTgsNyBAQAogICBlbmRpZgogCiAgICIgZ2V0IGNsZWFyZWQgYnVmZmVyCisgIG1hcmsgJwogICBpZiBidWZudW0gPCAwIHx8ICFidWZleGlzdHMoYnVmbnVtKQogICAga2VlcGp1bXBzIGtlZXBhbHQgZW5ldyEKICIgICBjYWxsIERlY2hvKCJlbmV3IGJ1ZmZlciIpCkBAIC0yODE1LDggKzI4MjcsOCBAQAogICAgaWYgZXhpc3RzKCJzOmxhc3Rfc29ydF9ieSIpICYmIGc6bmV0cndfc29ydF9ieSA9PSBzOmxhc3Rfc29ydF9ieQogICAgIGlmIGdldGxpbmUoMikgPX4gJ14iIE5ldHJ3IERpcmVjdG9yeSBMaXN0aW5nICcKICAgICAgaWYgIWc6bmV0cndfa2VlcGRpcgotIiAgICAgIGNhbGwgRGVjaG8oImNoYW5nZSBkaXJlY3Rvcnk6IGNkICIuYjpuZXRyd19jdXJkaXIpCiAgICAgICBleGUgJ2NkICcuZXNjYXBlKGI6bmV0cndfY3VyZGlyLHM6bmV0cndfY2RfZXNjYXBlKQorIiAgICAgIGNhbGwgRGVjaG8oIm5ldHJ3X2tlZXBkaXI9Ii5nOm5ldHJ3X2tlZXBkaXIuIjogY2QgIi5lc2NhcGUoYjpuZXRyd19jdXJkaXIsczpuZXRyd19jZF9lc2NhcGUpKQogICAgICBlbmRpZgogICAgICBjYWxsIHM6TmV0T3B0aW9uUmVzdG9yZSgpCiAiICAgICBjYWxsIERyZXQoIkRpckJyb3dzZSA6IHJldXNpbmcgYnVmZmVyIyIuYnVmbnVtLiI8Ii5hOmRpcm5hbWUuIj4iKQpAQCAtMjg0Nyw3ICsyODU5LDcgQEAKIAogICAiIG1ha2UgbmV0cncncyBpZGVhIG9mIHRoZSBjdXJyZW50IGRpcmVjdG9yeSB2aW0ncyBpZiB0aGUgdXNlciB3aXNoZXMKICAgaWYgIWc6bmV0cndfa2VlcGRpcgotIiAgIGNhbGwgRGVjaG8oImNoYW5nZSBkaXJlY3Rvcnk6IGNkICIuYjpuZXRyd19jdXJkaXIpCisiICAgY2FsbCBEZWNobygibmV0cndfa2VlcGRpcj0iLmc6bmV0cndfa2VlcGRpci4iOiBjZCAiLmVzY2FwZShiOm5ldHJ3X2N1cmRpcixzOm5ldHJ3X2NkX2VzY2FwZSkpCiAgICB0cnkKICAgICBleGUgJ2NkICcuZXNjYXBlKGI6bmV0cndfY3VyZGlyLHM6bmV0cndfY2RfZXNjYXBlKQogICAgY2F0Y2ggL15WaW1cJSgoXGFcKylcKVw9OkU0NzIvCkBAIC0yOTE2LDggKzI5MjgsMTIgQEAKICAgbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gdgkJOmNhbGwgPFNJRD5OZXRTcGxpdCgzKTxjcj4KICAgbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4geAkJOmNhbGwgbmV0cncjTmV0QnJvd3NlWCg8U0lEPkxvY2FsQnJvd3NlQ2hnRGlyKGI6bmV0cndfY3VyZGlyLDxTSUQ+TmV0R2V0V29yZCgpLDApLDApIjxjcj4KICAgbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gPDItbGVmdG1vdXNlPgk6Y2FsbCA8U0lEPkxvY2FsQnJvd3NlKDxTSUQ+TG9jYWxCcm93c2VDaGdEaXIoYjpuZXRyd19jdXJkaXIsPFNJRD5OZXRHZXRXb3JkKCkpKTxjcj4KLSAgbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gPHMtdXA+CTpQZXhwbG9yZTxjcj4KLSAgbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gPHMtZG93bj4JOk5leHBsb3JlPGNyPgorICBpZiBzOmRpZHN0YXJzdGFyIHx8ICFtYXBjaGVjaygiPHMtZG93bj4iLCJuIikKKyAgIG5ub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IDxzLWRvd24+CTpOZXhwbG9yZTxjcj4KKyAgZW5kaWYKKyAgaWYgczpkaWRzdGFyc3RhciB8fCAhbWFwY2hlY2soIjxzLXVwPiIsIm4iKQorICAgbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gPHMtdXA+CTpQZXhwbG9yZTxjcj4KKyAgZW5kaWYKICAgZXhlICdubm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiA8ZGVsPgk6Y2FsbCA8U0lEPkxvY2FsQnJvd3NlUm0oIicuYjpuZXRyd19jdXJkaXIuJyIpPGNyPicKICAgZXhlICd2bm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiA8ZGVsPgk6Y2FsbCA8U0lEPkxvY2FsQnJvd3NlUm0oIicuYjpuZXRyd19jdXJkaXIuJyIpPGNyPicKICAgZXhlICdubm9yZW1hcCA8YnVmZmVyPiA8c2lsZW50PiBECTpjYWxsIDxTSUQ+TG9jYWxCcm93c2VSbSgiJy5iOm5ldHJ3X2N1cmRpci4nIik8Y3I+JwpAQCAtMzA0MCw3ICszMDU2LDcgQEAKICIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAiICBMb2NhbEJyb3dzZUxpc3Q6IGRvZXMgdGhlIGpvYiBvZiAibHMiIGZvciBsb2NhbCBkaXJlY3RvcmllcyB7e3syCiBmdW4hIHM6TG9jYWxCcm93c2VMaXN0KCkKLSIgIGNhbGwgRGZ1bmMoIkxvY2FsQnJvd3NlTGlzdCgpIGI6bmV0cndfY3VyZGlyPCIuYjpuZXRyd19jdXJkaXIuIj4iKQorIiAgY2FsbCBEZnVuYygiTG9jYWxCcm93c2VMaXN0KCkgYjpuZXRyd19jdXJkaXI8Ii5iOm5ldHJ3X2N1cmRpci4iPiBzb3J0Ynk8Ii5nOm5ldHJ3X3NvcnRfYnkuIj4iKQogCiAgICIgZ2V0IHRoZSBsaXN0IG9mIGZpbGVzIGNvbnRhaW5lZCBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkKICAgbGV0IGRpcm5hbWUgICAgPSBlc2NhcGUoYjpuZXRyd19jdXJkaXIsczpuZXRyd19nbG9iX2VzY2FwZSkKQEAgLTMwNzAsNyArMzA4NiwxMSBAQAogIiAgY2FsbCBEZWNobygiZmlsZWxpc3Q8Ii5maWxlbGlzdC4iPiIpCiAgIGVuZGlmCiAgIGxldCBmaWxlbGlzdD0gc3Vic3RpdHV0ZShmaWxlbGlzdCwnXG5cezIsfScsJ1xuJywnZ2UnKQotICBsZXQgZmlsZWxpc3Q9IHN1YnN0aXR1dGUoZmlsZWxpc3QsJ1wnLCcvJywnZ2UnKQorICBpZiAoaGFzKCJ3aW4zMiIpIHx8IGhhcygid2luOTUiKSB8fCBoYXMoIndpbjY0IikgfHwgaGFzKCJ3aW4xNiIpKQorICAgbGV0IGZpbGVsaXN0PSBzdWJzdGl0dXRlKGZpbGVsaXN0LCdcJywnLycsJ2dlJykKKyAgZWxzZQorICAgbGV0IGZpbGVsaXN0PSBzdWJzdGl0dXRlKGZpbGVsaXN0LCdcJywnXFwnLCdnZScpCisgIGVuZGlmCiAKICIgIGNhbGwgRGVjaG8oImRpcm5hbWU8Ii5kaXJuYW1lLiI+IikKICIgIGNhbGwgRGVjaG8oImRpcm5hbWVsZW48Ii5kaXJuYW1lbGVuLiI+IikKQEAgLTM1MDMsNiArMzUyMywxMiBAQAogICBlbmRpZgogICBub3JtISAwCiAKKyAgaWYgYToxID1+ICdcKi8nCisgICAiIEV4cGxvcmUgKi9wYXR0ZXJuCisgICBsZXQgcGF0dGVybj0gc3Vic3RpdHV0ZShhOjEsJ15cKi9cKC4qXCkkJywnXDEnLCcnKQorIiAgIGNhbGwgRGVjaG8oIkV4cGxvcmUgKi8iLnBhdHRlcm4pCisgIGVuZGlmCisKICAgaWYgYToxID09ICIiICYmIGE6aW5keCA+PSAwCiAgICAiIEV4cGxvcmUgSGV4cGxvcmUgVmV4cGxvcmUgU2V4cGxvcmUKICIgICBjYWxsIERlY2hvKCJFeHBsb3JlIEhleHBsb3JlIFZleHBsb3JlIFNleHBsb3JlIikKQEAgLTM1MTYsMjYgKzM1NDIsNjEgQEAKICAgICBjYWxsIHM6TG9jYWxCcm93c2UobmV3ZGlyKQogICAgZW5kaWYKIAotICBlbHNlaWYgYToxID1+ICdcKlwqLycgfHwgYTppbmR4IDwgMAotICAgIiBOZXhwbG9yZSBQZXhwbG9yZSAtb3ItICBFeHBsb3JlICoqLy4uLgotIiAgIGNhbGwgRGVjaG8oIk5leHBsb3JlIFBleHBsb3JlIC1vci0gIEV4cGxvcmUgKiovLi4uIikKKyAgZWxzZWlmIGE6MSA9fiAnXlwqXCovJyB8fCBhOmluZHggPCAwIHx8IGE6MSA9fiAnXlwqLycKKyAgICIgTmV4cGxvcmUsIFBleHBsb3JlLCBFeHBsb3JlICoqLy4uLiAsIG9yIEV4cGxvcmUgKi9wYXR0ZXJuCisiICAgY2FsbCBEZWNobygiTmV4cGxvcmUsIFBleHBsb3JlLCA8cy1kb3duPiwgPHMtdXA+LCBFeHBsb3JlICIuYToxKQorICAgbGV0IHM6ZGlkc3RhcnN0YXI9IDEKKyAgIGlmIGV4aXN0cygiYjpuZXRyd19jdXJkaXIiKQorICAgIG5ub3JlbWFwIDxidWZmZXI+IDxzaWxlbnQ+IDxzLXVwPgk6UGV4cGxvcmU8Y3I+CisgICAgbm5vcmVtYXAgPGJ1ZmZlcj4gPHNpbGVudD4gPHMtZG93bj4JOk5leHBsb3JlPGNyPgorICAgZW5kaWYKIAogICAgaWYgaGFzKCJwYXRoX2V4dHJhIikKICAgICBpZiAhZXhpc3RzKCJ3Om5ldHJ3X2V4cGxvcmVfaW5keCIpCiAgICAgIGxldCB3Om5ldHJ3X2V4cGxvcmVfaW5keD0gMAogICAgIGVuZGlmCiAgICAgbGV0IGluZHggPSBhOmluZHgKKyIgICAgY2FsbCBEZWNobygiaW5wdXQgaW5keD0iLmluZHgpCisiCiAgICAgaWYgaW5keCA9PSAtMQorICAgICBpZiAhZXhpc3RzKCJ3Om5ldHJ3X2V4cGxvcmVfbGlzdCIpICIgc2FuaXR5IGNoZWNrCisgICAgICBlY2hvaGwgV2FybmluZ01zZyB8IGVjaG8gIioqKm5ldHJ3KioqIHVzaW5nIE5leHBsb3JlIG9yIDxzLWRvd24+IGltcHJvcGVybHk7IHNlZSBoZWxwIGZvciBuZXRydy1zdGFyc3RhciIgfCBlY2hvaGwgTm9uZQorICAgICAgY2FsbCBpbnB1dHNhdmUoKXxjYWxsIGlucHV0KCJQcmVzcyA8Y3I+IHRvIGNvbnRpbnVlIil8Y2FsbCBpbnB1dHJlc3RvcmUoKQorIiAgICAgIGNhbGwgRHJldCgiRXhwbG9yZSIpCisgICAgICByZXR1cm4KKyAgICAgZW5kaWYKICAgICAgbGV0IGluZHg9IHc6bmV0cndfZXhwbG9yZV9pbmR4ICsgMQorIiAgICAgY2FsbCBEZWNobygiaW5keD0gW3c6bmV0cndfZXhwbG9yZV9pbmR4PSIudzpuZXRyd19leHBsb3JlX2luZHguIl09Ii5pbmR4KQorCiAgICAgZWxzZWlmIGluZHggPT0gLTIKKyAgICAgaWYgIWV4aXN0cygidzpuZXRyd19leHBsb3JlX2xpc3QiKSAiIHNhbml0eSBjaGVjaworICAgICAgZWNob2hsIFdhcm5pbmdNc2cgfCBlY2hvICIqKipuZXRydyoqKiB1c2luZyBQZXhwbG9yZSBvciA8cy11cD4gaW1wcm9wZXJseTsgc2VlIGhlbHAgZm9yIG5ldHJ3LXN0YXJzdGFyIiB8IGVjaG9obCBOb25lCisgICAgICBjYWxsIGlucHV0c2F2ZSgpfGNhbGwgaW5wdXQoIlByZXNzIDxjcj4gdG8gY29udGludWUiKXxjYWxsIGlucHV0cmVzdG9yZSgpCisiICAgICAgY2FsbCBEcmV0KCJFeHBsb3JlIikKKyAgICAgIHJldHVybgorICAgICBlbmRpZgogICAgICBsZXQgaW5keD0gdzpuZXRyd19leHBsb3JlX2luZHggLSAxCisiICAgICBjYWxsIERlY2hvKCJpbmR4PSBbdzpuZXRyd19leHBsb3JlX2luZHg9Ii53Om5ldHJ3X2V4cGxvcmVfaW5keC4iXT0iLmluZHgpCisKICAgICBlbHNlCisgICAgICIgYnVpbGQgbGlzdCBvZiBmaWxlcyB0byBFeHBsb3JlIHdpdGggTmV4cGxvcmUvUGV4cGxvcmUKICAgICAgbGV0IHc6bmV0cndfZXhwbG9yZV9pbmR4ICAgID0gMAogICAgICBpZiAhZXhpc3RzKCJiOm5ldHJ3X2N1cmRpciIpCiAgICAgICBsZXQgYjpuZXRyd19jdXJkaXI9IGdldGN3ZCgpCiAgICAgIGVuZGlmCi0gICAgIGxldCB3Om5ldHJ3X2V4cGxvcmVfbGlzdCAgICA9IHNwbGl0KGV4cGFuZChiOm5ldHJ3X2N1cmRpci4iLyIuYToxKSwnXG4nKQorIiAgICAgY2FsbCBEZWNobygiYjpuZXRyd19jdXJkaXI8Ii5iOm5ldHJ3X2N1cmRpci4iPiIpCisgICAgIGlmIGV4aXN0cygicGF0dGVybiIpCisiICAgICAgY2FsbCBEZWNobygiYnVpbGRpbmcgbGlzdCBiYXNlZCBvbiBwYXR0ZXJuPCIucGF0dGVybi4iPiBjd2Q8Ii5nZXRjd2QoKS4iPiIpCisgICAgICBleGUgInZpbWdyZXAgLyIucGF0dGVybi4iL2dqICIuYjpuZXRyd19jdXJkaXIuIi8qIgorICAgICAgbGV0IHc6bmV0cndfZXhwbG9yZV9saXN0ID0gbWFwKGdldHFmbGlzdCgpLCdiOm5ldHJ3X2N1cmRpci5idWZuYW1lKHY6dmFsLmJ1Zm5yKScpCisgICAgIGVsc2UKKyIgICAgICBjYWxsIERlY2hvKCJidWlsZGluZyBsaXN0IGJhc2VkIG9uICIuYjpuZXRyd19jdXJkaXIuIi8iLmE6MSkKKyAgICAgIGxldCB3Om5ldHJ3X2V4cGxvcmVfbGlzdD0gc3BsaXQoZXhwYW5kKGI6bmV0cndfY3VyZGlyLiIvIi5hOjEpLCdcbicpCisgICAgIGVuZGlmCisKICAgICAgbGV0IHc6bmV0cndfZXhwbG9yZV9saXN0bGVuID0gbGVuKHc6bmV0cndfZXhwbG9yZV9saXN0KQorIiAgICAgY2FsbCBEZWNobygidzpuZXRyd19leHBsb3JlX2xpc3Q8Ii5zdHJpbmcodzpuZXRyd19leHBsb3JlX2xpc3QpLiI+IGxpc3RsZW49Ii53Om5ldHJ3X2V4cGxvcmVfbGlzdGxlbikKKwogICAgICBpZiB3Om5ldHJ3X2V4cGxvcmVfbGlzdGxlbiA9PSAxICYmIHc6bmV0cndfZXhwbG9yZV9saXN0WzBdID1+ICdcKlwqXC8nCiAgICAgICBlY2hvaGwgV2FybmluZ01zZyB8IGVjaG8gIioqKm5ldHJ3KioqIG5vIGZpbGVzIG1hdGNoZWQiIHwgZWNob2hsIE5vbmUKICAgICAgIGNhbGwgaW5wdXRzYXZlKCl8Y2FsbCBpbnB1dCgiUHJlc3MgPGNyPiB0byBjb250aW51ZSIpfGNhbGwgaW5wdXRyZXN0b3JlKCkKQEAgLTM5MjgsMTQgKzM5ODksOSBAQAogICBlbmRpZgogCiAgICIgR2V0IFRlbXBvcmFyeSBGaWxlbmFtZQotICBsZXQgdzphaWtlZXAgICA9ICZhaQotIiAgIiBuZXRydyBhbmQgdGhlIGFjZCBvcHRpb24gZG8gbm90IHdvcmsgdG9nZXRoZXIgcHJvcGVybHkKLSIgIGlmICZhY2QgJiYgKGhhcygibmV0YmVhbnNfaW50ZyIpIHx8IGhhcygic3VuX3dvcmtzaG9wIikpCi0iICAgc2V0IG5vYWNkCi0iICAgZWNob2hsIFdhcm5pbmcgfCBlY2hvbXNnICIqKip3YXJuaW5nKioqIGRpcmVjdG9yeSBicm93c2luZyBhbmQgdGhlIGFjZCBzZXR0aW5nIGFyZSBpbmNvbXBhdGlibGUiIHxlY2hvaGwgTm9uZQotIiAgZW5kaWYKLSAgbGV0IHc6Zm9rZWVwICAgID0gJmZvCisgIGxldCB3OmFjZGtlZXAgICA9ICZhY2QKICAgbGV0IHc6YWlrZWVwICAgID0gJmFpCisgIGxldCB3OmZva2VlcCAgICA9ICZmbwogICBsZXQgdzpjaWtlZXAgICAgPSAmY2kKICAgbGV0IHc6Y2lua2VlcCAgID0gJmNpbgogICBsZXQgdzpjaW5va2VlcCAgPSAmY2lubwpAQCAtMzk0Myw5ICszOTk5LDYgQEAKICAgbGV0IHc6Y3Bva2VlcCAgID0gJmNwbwogICBsZXQgdzpoaWRrZWVwICAgPSAmaGlkZGVuCiAgIGxldCB3Om1hZ2lja2VlcCA9ICZtYWdpYwotICBpZiAhZzpuZXRyd19rZWVwZGlyCi0gICBsZXQgdzpkaXJrZWVwICA9IGdldGN3ZCgpCi0gIGVuZGlmCiAgIGxldCB3Omdka2VlcCAgICA9ICZnZAogICBsZXQgdzpyZXBrZWVwICAgPSAmcmVwb3J0CiAgIGxldCB3OnNwZWxsa2VlcCA9ICZzcGVsbApAQCAtMzk1Myw3ICs0MDA2LDcgQEAKICAgc2V0bG9jYWwgY2lubyA9CiAgIHNldGxvY2FsIGNvbSAgPQogICBzZXRsb2NhbCBjcG8gLT1hQQotICBzZXRsb2NhbCBub2NpbiBub2FpIG5vY2kgbWFnaWMgbm9zcGVsbCBmbz1ucm9xbDIgbm9oaWQKKyAgc2V0bG9jYWwgbm9hY2Qgbm9jaW4gbm9haSBub2NpIG1hZ2ljIG5vc3BlbGwgZm89bnJvcWwyIG5vaGlkCiAgIHNldGxvY2FsIHR3ICAgPTAKICAgc2V0bG9jYWwgcmVwb3J0PTEwMDAwCiAgIGlmIGhhcygid2luMzIiKSAmJiAhaGFzKCJ3aW45NSIpCkBAIC0zOTc1LDE0ICs0MDI4LDEzIEBACiAgIGVuZGlmCiAgIHVubGV0IHc6bmV0b3B0aW9uc2F2ZQogCi0gIGlmIGV4aXN0cygidzphaWtlZXAiKXwgbGV0ICZhaT0gdzphaWtlZXB8ZW5kaWYKKyAgaWYgZXhpc3RzKCJ3OmFjZGtlZXAiKSAgfGxldCAmYWNkICAgID0gdzphY2RrZWVwICAgICB8dW5sZXQgdzphY2RrZWVwICB8ZW5kaWYKICAgaWYgZXhpc3RzKCJ3OmFpa2VlcCIpICAgfGxldCAmYWkgICAgID0gdzphaWtlZXAgICAgICB8dW5sZXQgdzphaWtlZXAgICB8ZW5kaWYKICAgaWYgZXhpc3RzKCJ3OmNpa2VlcCIpICAgfGxldCAmY2kgICAgID0gdzpjaWtlZXAgICAgICB8dW5sZXQgdzpjaWtlZXAgICB8ZW5kaWYKICAgaWYgZXhpc3RzKCJ3OmNpbmtlZXAiKSAgfGxldCAmY2luICAgID0gdzpjaW5rZWVwICAgICB8dW5sZXQgdzpjaW5rZWVwICB8ZW5kaWYKICAgaWYgZXhpc3RzKCJ3OmNpbm9rZWVwIikgfGxldCAmY2lubyAgID0gdzpjaW5va2VlcCAgICB8dW5sZXQgdzpjaW5va2VlcCB8ZW5kaWYKICAgaWYgZXhpc3RzKCJ3OmNvbWtlZXAiKSAgfGxldCAmY29tICAgID0gdzpjb21rZWVwICAgICB8dW5sZXQgdzpjb21rZWVwICB8ZW5kaWYKICAgaWYgZXhpc3RzKCJ3OmNwb2tlZXAiKSAgfGxldCAmY3BvICAgID0gdzpjcG9rZWVwICAgICB8dW5sZXQgdzpjcG9rZWVwICB8ZW5kaWYKLSAgaWYgZXhpc3RzKCJ3OmRpcmtlZXAiKSAgfGV4ZSAibGNkICIudzpkaXJrZWVwICAgICAgICB8dW5sZXQgdzpkaXJrZWVwICB8ZW5kaWYKICAgaWYgZXhpc3RzKCJ3OmZva2VlcCIpICAgfGxldCAmZm8gICAgID0gdzpmb2tlZXAgICAgICB8dW5sZXQgdzpmb2tlZXAgICB8ZW5kaWYKICAgaWYgZXhpc3RzKCJ3Omdka2VlcCIpICAgfGxldCAmZ2QgICAgID0gdzpnZGtlZXAgICAgICB8dW5sZXQgdzpnZGtlZXAgICB8ZW5kaWYKICAgaWYgZXhpc3RzKCJ3OmhpZGtlZXAiKSAgfGxldCAmaGlkZGVuID0gdzpoaWRrZWVwICAgICB8dW5sZXQgdzpoaWRrZWVwICB8ZW5kaWYKZGlmZiAtLWdpdCBhL3J1bnRpbWUvYXV0b2xvYWQvcGFzdGUudmltIGIvcnVudGltZS9hdXRvbG9hZC9wYXN0ZS52aW0KaW5kZXggNDM1YzVlNi4uYTYxY2VjNiAxMDA2NDQKLS0tIGEvcnVudGltZS9hdXRvbG9hZC9wYXN0ZS52aW0KKysrIGIvcnVudGltZS9hdXRvbG9hZC9wYXN0ZS52aW0KQEAgLTEsNiArMSw2IEBACiAiIFZpbSBzdXBwb3J0IGZpbGUgdG8gaGVscCB3aXRoIHBhc3RlIG1hcHBpbmdzIGFuZCBtZW51cwogIiBNYWludGFpbmVyOglCcmFtIE1vb2xlbmFhciA8QnJhbUB2aW0ub3JnPgotIiBMYXN0IENoYW5nZToJMjAwNiBNYXIgMDkKKyIgTGFzdCBDaGFuZ2U6CTIwMDYgQXByIDIxCiAKICIgRGVmaW5lIHRoZSBzdHJpbmcgdG8gdXNlIGZvciBpdGVtcyB0aGF0IGFyZSBwcmVzZW50IGJvdGggaW4gRWRpdCwgUG9wdXAgYW5kCiAiIFRvb2xiYXIgbWVudS4gIEFsc28gdXNlZCBpbiBtc3dpbi52aW0gYW5kIG1hY21hcC52aW0uCkBAIC0zMyw3ICszMywzIEBACiAgIGxldCBwYXN0ZSNwYXN0ZV9jbWRbJ3YnXSA9ICciLWM8RXNjPmdpeDxFc2M+JyAuIHBhc3RlI3Bhc3RlX2NtZFsnbiddIC4gJyJfeCcKICAgbGV0IHBhc3RlI3Bhc3RlX2NtZFsnaSddID0gJ3g8RXNjPicgLiBwYXN0ZSNwYXN0ZV9jbWRbJ24nXSAuICciX3MnCiBlbmRpZgotCi1pZiBoYXMoInZpcnR1YWxlZGl0IikKLWVsc2UKLWVuZGlmCmRpZmYgLS1naXQgYS9ydW50aW1lL2NvbG9ycy9kYXJrYmx1ZS52aW0gYi9ydW50aW1lL2NvbG9ycy9kYXJrYmx1ZS52aW0KaW5kZXggNGJmMDVkMC4uOTgxMmU5OCAxMDA2NDQKLS0tIGEvcnVudGltZS9jb2xvcnMvZGFya2JsdWUudmltCisrKyBiL3J1bnRpbWUvY29sb3JzL2RhcmtibHVlLnZpbQpAQCAtMSw2ICsxLDYgQEAKICIgVmltIGNvbG9yIGZpbGUKICIgTWFpbnRhaW5lcjoJQm9oZGFuIFZsYXN5dWsgPGJvaGRhbkB2c3R1LmVkdS51YT4KLSIgTGFzdCBDaGFuZ2U6CTIwMDUgTWFyIDI4CisiIExhc3QgQ2hhbmdlOgkyMDA2IEFwciAyMQogCiAiIGRhcmtibHVlIC0tIGZvciB0aG9zZSB3aG8gcHJlZmVyIGRhcmsgYmFja2dyb3VuZAogIiBbbm90ZTogbG9va3MgYml0IHVnbGllciB3aXRoIGNvbWUgdGVybWluYWwgcGFsZXR0ZXMsCkBAIC01OCw1ICs1OCwzIEBACiBoaSB0eXBlCQljdGVybWZnPWdyZWVuIGd1aWZnPSM2MGZmNjAgZ3VpPW5vbmUgY3Rlcm09bm9uZQogaGkgVW5kZXJsaW5lZAljdGVybT11bmRlcmxpbmUgdGVybT11bmRlcmxpbmUKIGhpIElnbm9yZQlndWlmZz1iZyBjdGVybWZnPWJnCi0KLQpkaWZmIC0tZ2l0IGEvcnVudGltZS9jb21waWxlci9iZGYudmltIGIvcnVudGltZS9jb21waWxlci9iZGYudmltCmluZGV4IGEzMGE5YjYuLmNhMzM3NzYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvY29tcGlsZXIvYmRmLnZpbQorKysgYi9ydW50aW1lL2NvbXBpbGVyL2JkZi52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBjb21waWxlciBmaWxlCiAiIENvbXBpbGVyOiAgICAgICAgIEJERiB0byBQQ0YgQ29udmVyc2lvbgotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDYtMjkKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJjdXJyZW50X2NvbXBpbGVyIikKICAgZmluaXNoCkBAIC0xMSw5ICsxMSw5IEBACiBsZXQgczpjcG9fc2F2ZSA9ICZjcG8KIHNldCBjcG8tPUMKIAotQ29tcGlsZXJTZXQgbWFrZXByZz1iZGZ0b3BjZlwgJCoKK3NldGxvY2FsIG1ha2Vwcmc9YmRmdG9wY2ZcICQqCiAKLUNvbXBpbGVyU2V0IGVycm9yZm9ybWF0PSVBQkRGXCAldHJyb3JcIG9uXCBsaW5lXCAlbDpcICVtLAorc2V0bG9jYWwgZXJyb3Jmb3JtYXQ9JUFCREZcICV0cnJvclwgb25cIGxpbmVcICVsOlwgJW0sCiAgICAgICBcJS1aJXBeLAogICAgICAgXCVDYmRmdG9wY2Y6XCBiZGZcIGlucHV0XFwsXCAlZlxcLFwgY29ycnVwdCwKICAgICAgIFwlLUclLiUjCmRpZmYgLS1naXQgYS9ydW50aW1lL2NvbXBpbGVyL2djYy52aW0gYi9ydW50aW1lL2NvbXBpbGVyL2djYy52aW0KaW5kZXggMTFmNzcxNC4uNjk5ZDE0ZiAxMDA2NDQKLS0tIGEvcnVudGltZS9jb21waWxlci9nY2MudmltCisrKyBiL3J1bnRpbWUvY29tcGlsZXIvZ2NjLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGNvbXBpbGVyIGZpbGUKICIgQ29tcGlsZXI6ICAgICAgICAgR05VIEMgQ29tcGlsZXIKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTI5CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiY3VycmVudF9jb21waWxlciIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9jb21waWxlci9yc3QudmltIGIvcnVudGltZS9jb21waWxlci9yc3QudmltCmluZGV4IGQwZmY4OGIuLjA3YzdkNDEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvY29tcGlsZXIvcnN0LnZpbQorKysgYi9ydW50aW1lL2NvbXBpbGVyL3JzdC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBjb21waWxlciBmaWxlCiAiIENvbXBpbGVyOiAgICAgICAgIHJlU3RydWN0dXJlZFRleHQgRG9jdW1lbnRhdGlvbiBGb3JtYXQKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTI5CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiY3VycmVudF9jb21waWxlciIpCiAgIGZpbmlzaApAQCAtMTEsNyArMTEsNyBAQAogbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCiBzZXQgY3BvLT1DCiAKLUNvbXBpbGVyU2V0IGVycm9yZm9ybWF0PQorc2V0bG9jYWwgZXJyb3Jmb3JtYXQ9CiAgICAgICBcJWY6JWw6XCAoJXRFQlVHLzApXCAlbSwKICAgICAgIFwlZjolbDpcICgldE5GTy8xKVwgJW0sCiAgICAgICBcJWY6JWw6XCAoJXRBUk5JTkcvMilcICVtLApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvZXZhbC50eHQgYi9ydW50aW1lL2RvYy9ldmFsLnR4dAppbmRleCA4MGEwYzFkLi40ZmZmOWQwIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9ldmFsLnR4dAorKysgYi9ydW50aW1lL2RvYy9ldmFsLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpldmFsLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy4wZS4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAxNQorKmV2YWwudHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjBlLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDIxCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0xMzY5LDkgKzEzNjksOSBAQAogCiAJCQkJCQkqdjpsbnVtKiAqbG51bS12YXJpYWJsZSoKIHY6bG51bQkJTGluZSBudW1iZXIgZm9yIHRoZSAnZm9sZGV4cHInIHxmb2xkLWV4cHJ8IGFuZCAnaW5kZW50ZXhwcicKLQkJZXhwcmVzc2lvbnMsIHRhYiBwYWdlIG51bWJlciBmb3IgJ2d1aXRhYmxhYmVsJy4gIE9ubHkgdmFsaWQKLQkJd2hpbGUgb25lIG9mIHRoZXNlIGV4cHJlc3Npb25zIGlzIGJlaW5nIGV2YWx1YXRlZC4gIFJlYWQtb25seQotCQl3aGVuIGluIHRoZSB8c2FuZGJveHwuCisJCWV4cHJlc3Npb25zLCB0YWIgcGFnZSBudW1iZXIgZm9yICdndWl0YWJsYWJlbCcgYW5kCisJCSdndWl0YWJ0b29sdGlwJy4gIE9ubHkgdmFsaWQgd2hpbGUgb25lIG9mIHRoZXNlIGV4cHJlc3Npb25zIGlzCisJCWJlaW5nIGV2YWx1YXRlZC4gIFJlYWQtb25seSB3aGVuIGluIHRoZSB8c2FuZGJveHwuCiAKIAkJCQkJKnY6cHJldmNvdW50KiAqcHJldmNvdW50LXZhcmlhYmxlKgogdjpwcmV2Y291bnQJVGhlIGNvdW50IGdpdmVuIGZvciB0aGUgbGFzdCBidXQgb25lIE5vcm1hbCBtb2RlIGNvbW1hbmQuCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9pbmRleC50eHQgYi9ydW50aW1lL2RvYy9pbmRleC50eHQKaW5kZXggOGZjM2NlZi4uNzdlYmVkOSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvaW5kZXgudHh0CisrKyBiL3J1bnRpbWUvZG9jL2luZGV4LnR4dApAQCAtNTUyLDYgKzU1Miw5IEBACiB8Q1RSTC1XX2d9fAlDVFJMLVcgZyB9CSAgIGRvIGEgfDpwdGp1bXB8IHRvIHRoZSB0YWcgdW5kZXIgdGhlIGN1cnNvcgogfENUUkwtV19nZnwJQ1RSTC1XIGcgZgkgICBlZGl0IGZpbGUgbmFtZSB1bmRlciB0aGUgY3Vyc29yIGluIGEgbmV3CiAJCQkJICAgdGFiIHBhZ2UKK3xDVFJMLVdfZ0Z8CUNUUkwtVyBnIEYJICAgZWRpdCBmaWxlIG5hbWUgdW5kZXIgdGhlIGN1cnNvciBpbiBhIG5ldworCQkJCSAgIHRhYiBwYWdlIGFuZCBqdW1wIHRvIHRoZSBsaW5lIG51bWJlcgorCQkJCSAgIGZvbGxvd2luZyB0aGUgZmlsZSBuYW1lLgogfENUUkwtV19ofAlDVFJMLVcgaAkgICBnbyB0byBOdGggbGVmdCB3aW5kb3cgKHN0b3AgYXQgZmlyc3Qgd2luZG93KQogfENUUkwtV19pfAlDVFJMLVcgaQkgICBzcGxpdCB3aW5kb3cgYW5kIGp1bXAgdG8gZGVjbGFyYXRpb24gb2YKIAkJCQkgICBpZGVudGlmaWVyIHVuZGVyIHRoZSBjdXJzb3IKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL21ieXRlLnR4dCBiL3J1bnRpbWUvZG9jL21ieXRlLnR4dAppbmRleCBiNjYwZDJjLi40NGNiZWE5IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9tYnl0ZS50eHQKKysrIGIvcnVudGltZS9kb2MvbWJ5dGUudHh0CkBAIC0xLDQgKzEsNCBAQAotKm1ieXRlLnR4dCogICAgIEZvciBWaW0gdmVyc2lvbiA3LjBlLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDAyCisqbWJ5dGUudHh0KiAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMGUuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjEKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwJICBieSBCcmFtIE1vb2xlbmFhciBldCBhbC4KQEAgLTEwMzUsNyArMTAzNSw3IEBACiAJOmhpZ2hsaWdodCBDdXJzb3IgZ3VpZmc9Tk9ORSBndWliZz1HcmVlbgogCTpoaWdobGlnaHQgbEN1cnNvciBndWlmZz1OT05FIGd1aWJnPUN5YW4KIDwKLQkJCSprZXltYXAtZmlsZS1mb3JtYXQqICo6bG9hZGsqICo6bG9hZGtleW1hcCogKkUxMDUqCisJCSprZXltYXAtZmlsZS1mb3JtYXQqICo6bG9hZGsqICo6bG9hZGtleW1hcCogKkUxMDUqICpFNzkxKgogVGhlIGtleW1hcCBmaWxlIGxvb2tzIHNvbWV0aGluZyBsaWtlIHRoaXM6ID4KIAogCSIgTWFpbnRhaW5lcjoJbmFtZSA8ZW1haWxAYWRkcmVzcz4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL29wdGlvbnMudHh0IGIvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKaW5kZXggYmVlZTExZC4uN2JiZDk2OSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKKysrIGIvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKQEAgLTEsNCArMSw0IEBACi0qb3B0aW9ucy50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjBlLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDIwCisqb3B0aW9ucy50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjBlLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDIxCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMCSAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTIwOTIsMTIgKzIwOTIsMTYgQEAKICdkZWJ1ZycJCQlzdHJpbmcJKGRlZmF1bHQgIiIpCiAJCQlnbG9iYWwKIAkJCXtub3QgaW4gVml9Ci0JV2hlbiBzZXQgdG8gIm1zZyIsIGVycm9yIG1lc3NhZ2VzIHRoYXQgd291bGQgb3RoZXJ3aXNlIGJlIG9taXR0ZWQgd2lsbAotCWJlIGdpdmVuIGFueXdheS4gIFRoaXMgaXMgdXNlZnVsIHdoZW4gZGVidWdnaW5nICdmb2xkZXhwcicsCi0JJ2Zvcm1hdGV4cHInIG9yICdpbmRlbnRleHByJy4KLQlXaGVuIHNldCB0byAiYmVlcCIsIGEgbWVzc2FnZSB3aWxsIGJlIGdpdmVuIHdoZW4gb3RoZXJ3aXNlIG9ubHkgYSBiZWVwCi0Jd291bGQgYmUgcHJvZHVjZWQuCisJVGhlc2UgdmFsdWVzIGNhbiBiZSB1c2VkOgorCW1zZwlFcnJvciBtZXNzYWdlcyB0aGF0IHdvdWxkIG90aGVyd2lzZSBiZSBvbWl0dGVkIHdpbGwgYmUgZ2l2ZW4KKwkJYW55d2F5LgorCXRocm93CUVycm9yIG1lc3NhZ2VzIHRoYXQgd291bGQgb3RoZXJ3aXNlIGJlIG9taXR0ZWQgd2lsbCBiZSBnaXZlbgorCQlhbnl3YXkgYW5kIGFsc28gdGhyb3cgYW4gZXhjZXB0aW9uIGFuZCBzZXQgfHY6ZXJybXNnfC4KKwliZWVwCUEgbWVzc2FnZSB3aWxsIGJlIGdpdmVuIHdoZW4gb3RoZXJ3aXNlIG9ubHkgYSBiZWVwIHdvdWxkIGJlCisJCXByb2R1Y2VkLgogCVRoZSB2YWx1ZXMgY2FuIGJlIGNvbWJpbmVkLCBzZXBhcmF0ZWQgYnkgYSBjb21tYS4KKwkibXNnIiBhbmQgInRocm93IiBhcmUgdXNlZnVsIGZvciBkZWJ1Z2dpbmcgJ2ZvbGRleHByJywgJ2Zvcm1hdGV4cHInIG9yCisJJ2luZGVudGV4cHInLgogCiAJCQkJCQkqJ2RlZmluZScqIConZGVmJyoKICdkZWZpbmUnICdkZWYnCQlzdHJpbmcJKGRlZmF1bHQgIl5ccyojXHMqZGVmaW5lIikKQEAgLTM0MDcsMTEgKzM0MTEsMjUgQEAKIAl8c2V0dGluZy1ndWl0YWJsYWJlbHwgZm9yIG1vcmUgaW5mby4KIAogCVRoZSBmb3JtYXQgb2YgdGhpcyBvcHRpb24gaXMgbGlrZSB0aGF0IG9mICdzdGF0dXNsaW5lJy4KKwknZ3VpdGFidG9vbHRpcCcgaXMgdXNlZCBmb3IgdGhlIHRvb2x0aXAsIHNlZSBiZWxvdy4KIAogCU9ubHkgdXNlZCB3aGVuIHRoZSBHVUkgdGFiIHBhZ2VzIGxpbmUgaXMgZGlzcGxheWVkLiAgJ2UnIG11c3QgYmUKIAlwcmVzZW50IGluICdndWlvcHRpb25zJy4gIEZvciB0aGUgbm9uLUdVSSB0YWIgcGFnZXMgbGluZSAndGFibGluZScgaXMKIAl1c2VkLgogCisJCQkJCQkqJ2d1aXRhYnRvb2x0aXAnKiAqJ2d0dCcqCisnZ3VpdGFidG9vbHRpcCcgJ2d0dCcJc3RyaW5nCShkZWZhdWx0IGVtcHR5KQorCQkJZ2xvYmFsCisJCQl7bm90IGluIFZpfQorCQkJe29ubHkgYXZhaWxhYmxlIHdoZW4gY29tcGlsZWQgd2l0aCBHVUkgZW5hYmxlZCBhbmQKKwkJCXdpdGggdGhlICt3aW5kb3dzIGZlYXR1cmV9CisJV2hlbiBub25lbXB0eSBkZXNjcmliZXMgdGhlIHRleHQgdG8gdXNlIGluIGEgdG9vbHRpcCBmb3IgdGhlIEdVSSB0YWIKKwlwYWdlcyBsaW5lLiAgV2hlbiBlbXB0eSBWaW0gd2lsbCB1c2UgYSBkZWZhdWx0IHRvb2x0aXAuCisJVGhpcyBvcHRpb24gaXMgb3RoZXJ3aXNlIGp1c3QgbGlrZSAnZ3VpdGFibGFiZWwnIGFib3ZlLgorCisJVGhlIHRvb2x0aXAgb25seSB3b3JrcyBmb3Igc29tZSBzeXN0ZW1zLgorCisKIAkJCQkJCSonaGVscGZpbGUnKiAqJ2hmJyoKICdoZWxwZmlsZScgJ2hmJwkJc3RyaW5nCShkZWZhdWx0IChNU0RPUykgICIkVklNUlVOVElNRVxkb2NcaGVscC50eHQiCiAJCQkJCSAob3RoZXJzKSAiJFZJTVJVTlRJTUUvZG9jL2hlbHAudHh0IikKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3BpX25ldHJ3LnR4dCBiL3J1bnRpbWUvZG9jL3BpX25ldHJ3LnR4dAppbmRleCA4Y2I4MDEwLi5lZTU5OTUzIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9waV9uZXRydy50eHQKKysrIGIvcnVudGltZS9kb2MvcGlfbmV0cncudHh0CkBAIC0xLDQgKzEsNCBAQAotKnBpX25ldHJ3LnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjBlLiAgTGFzdCBjaGFuZ2U6IEFwciAxMiwgMjAwNgorKnBpX25ldHJ3LnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjBlLiAgTGFzdCBjaGFuZ2U6IEFwciAyMSwgMjAwNgogCiAJCVZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IENoYXJsZXMgRS4gQ2FtcGJlbGwsIEpyLgogCkBAIC03ODIsNyArNzgyLDcgQEAKIAkJCQk9MCBrZWVwIHRoZSBjdXJyZW50IGRpcmVjdG9yeSB0aGUgc2FtZSBhcyB0aGUKIAkJCQkgICBicm93c2luZyBkaXJlY3RvcnkuCiAJCQkJVGhlIGN1cnJlbnQgYnJvd3NpbmcgZGlyZWN0b3J5IGlzIGNvbnRhaW5lZCBpbgotCQkJCWI6bmV0cndfY3VyZGlyCisJCQkJYjpuZXRyd19jdXJkaXIgKGFsc28gc2VlIHxuZXRydy1jfCkKIAogICAqZzpuZXRyd19saXN0X2NtZCoJCWNvbW1hbmQgZm9yIGxpc3RpbmcgcmVtb3RlIGRpcmVjdG9yaWVzCiAJCQkJIGRlZmF1bHQ6IChpZiBzc2ggaXMgZXhlY3V0YWJsZSkKQEAgLTkxOSwxNSArOTE5LDE2IEBACiBCeSBkZWZhdWx0LCB0aGVzZSBjb21tYW5kcyB1c2UgdGhlIGN1cnJlbnQgZmlsZSdzIGRpcmVjdG9yeS4gIEhvd2V2ZXIsIG9uZQogbWF5IGV4cGxpY2l0bHkgcHJvdmlkZSBhIGRpcmVjdG9yeSAocGF0aCkgdG8gdXNlLgogCi0oRm9sbG93aW5nIG5lZWRzIHY3LjAgb3IgbGF0ZXIpCQkJKm5ldHJ3LXN0YXJzdGFyKgotV2hlbiBFeHBsb3JlLCBTZXhwbG9yZSwgSGV4cGxvcmUsIG9yIFZleHBsb3JlIGFyZSB1c2VkIHdpdGggYSAqKiwKKwkJCQkJCQkqbmV0cnctc3RhcnN0YXIqCitXaGVuIEV4cGxvcmUsIFNleHBsb3JlLCBIZXhwbG9yZSwgb3IgVmV4cGxvcmUgYXJlIHVzZWQgd2l0aCBhICoqL2ZpbGVwYXQsCiBzdWNoIGFzOgogPgogCTpFeHBsb3JlICoqL2ZpbGVuYW1lX3BhdHRlcm4KIDwKLW5ldHJ3IHdpbGwgYXR0ZW1wdCB0byBmaW5kIGEgKHN1YilkaXJlY3Rvcnkgd2hpY2ggbWF0Y2hlcyB0aGUgZmlsZW5hbWUKLXBhdHRlcm4uICBJbnRlcm5hbGx5LCBpdCBwcm9kdWNlcyBhIGxpc3Qgb2YgZmlsZXMgd2hpY2ggbWF0Y2ggdGhlIHBhdHRlcm4KLWFuZCB0aGVpciBwYXRoczsgdG8gdGhhdCBleHRlbnQgaXQgcmVzZW1ibGVzIHRoZSBVbml4IG9wZXJhdGlvbjoKK25ldHJ3IHdpbGwgYXR0ZW1wdCB0byBmaW5kIGEgZmlsZSBpbiB0aGUgY3VycmVudCBkaXJlY3Rvcnkgb3IgYW55IHN1YmRpcmVjdG9yeQord2hpY2ggbWF0Y2hlcyB0aGUgZmlsZW5hbWUgcGF0dGVybi4gIEludGVybmFsbHksIGl0IHByb2R1Y2VzIGEgbGlzdCBvZiBmaWxlcword2hpY2ggbWF0Y2ggdGhlIHBhdHRlcm4gYW5kIHRoZWlyIHBhdGhzOyB0byB0aGF0IGV4dGVudCBpdCByZXNlbWJsZXMgdGhlIFVuaXgKK29wZXJhdGlvbjoKID4KIAlmaW5kICQocHdkKSAtbmFtZSAiJDEiIC1leGVjICJlY2hvIiAie30iICI7IiAyPiAvZGV2L251bGwKIDwKQEAgLTk1MSw2ICs5NTIsMTggQEAKIFRoZSBzdGF0dXMgbGluZSB3aWxsIHNob3csIG9uIHRoZSByaWdodCBoYW5kIHNpZGUgb2YgdGhlIHN0YXR1cyBsaW5lLCBhCiBtZXNzYWdlIGxpa2UgIk1hdGNoIDMgb2YgMjAiLgogCisJCQkJCQkJKm5ldHJ3LXN0YXJwYXQqCitXaGVuIEV4cGxvcmUsIFNleHBsb3JlLCBIZXhwbG9yZSwgb3IgVmV4cGxvcmUgYXJlIHVzZWQgd2l0aCBhICovcGF0dGVybiwKK3N1Y2ggYXM6Cis+CisJOkV4cGxvcmUgKi9wYXR0ZXJuCis8CituZXRydyB3aWxsIHVzZSB8OnZpbWdyZXB8IHRvIGZpbmQgZmlsZXMgd2hpY2ggY29udGFpbiB0aGUgZ2l2ZW4gcGF0dGVybi4KK0xpa2Ugd2hhdCBoYXBwZW5zIHdpdGggfG5ldHJ3LXN0YXJzdGFyfCwgYSBsaXN0IG9mIGZpbGVzIHdoaWNoIGNvbnRhaW4KK21hdGNoZXMgdG8gdGhlIGdpdmVuIHBhdHRlcm4gaXMgZ2VuZXJhdGVkLiAgVGhlIGN1cnNvciB3aWxsIHRoZW4ganVtcAordG8gdGhlIGZpcnN0IGZpbGUgd2l0aCB0aGUgZ2l2ZW4gcGF0dGVybjsgfDpOZXhwbG9yZXwsIHw6UGV4cGxvcmV8LCBhbmQKK3RoZSBzaGlmdGVkLWRvd24gYW5kIC11cCBhcnJvd3Mgd29yayB3aXRoIHRoZSBsaXN0IHRvIG1vdmUgdG8gdGhlIG5leHQKK29yIHByZXZpb3VzIGZpbGVzIGluIHRoYXQgbGlzdC4KIAogUkVGUkVTSElORyBUSEUgTElTVElORwkJCQkJKm5ldHJ3LWN0cmwtbCoKIApAQCAtMTI2MSwxNCArMTI3NCwxNiBAQAogCiBNQUtJTkcgVEhFIEJST1dTSU5HIERJUkVDVE9SWSBUSEUgQ1VSUkVOVCBESVJFQ1RPUlkJKm5ldHJ3LWMqICpuZXRydy1jdXJkaXIqCiAKLUJ5IGRlZmF1bHQsIGc6bmV0cndfa2VlcGRpciBpcyAxLiAgVGhpcyBzZXR0aW5nIG1lYW5zIHRoYXQgdGhlIGN1cnJlbnQKK0J5IGRlZmF1bHQsIHxnOm5ldHJ3X2tlZXBkaXJ8IGlzIDEuICBUaGlzIHNldHRpbmcgbWVhbnMgdGhhdCB0aGUgY3VycmVudAogZGlyZWN0b3J5IHdpbGwgbm90IHRyYWNrIHRoZSBicm93c2luZyBkaXJlY3RvcnkuICBIb3dldmVyLCBzZXR0aW5nCi1nOm5ldHJ3X2tlZXBkaXIgdG8gMCAoc2F5LCBpbiB5b3VyIDwudmltcmM+KSB3aWxsIHRlbGwgbmV0cncgdG8gaGF2ZSB0aGUKLWN1cnJlbnRseSBicm93c2VkIGRpcmVjdG9yeSBiZSB0aGUgY3VycmVudCBkaXJlY3RvcnkuCitnOm5ldHJ3X2tlZXBkaXIgdG8gMCAoc2F5LCBpbiB5b3VyIDwudmltcmM+KSB3aWxsIHRlbGwgbmV0cncgdG8gbWFrZSB0aGUKK2N1cnJlbnRseSBicm93c2VkIGRpcmVjdG9yeSBhbHNvIGJlIHRoZSBjdXJyZW50IGRpcmVjdG9yeS4KIAotV2l0aCB0aGUgZGVmYXVsdCBzZXR0aW5nIGZvciBnOm5ldHJ3X2tlZXBkaXIsIGluIG9yZGVyIHRvIG1ha2UgdGhlIHR3bwotZGlyZWN0b3JpZXMgdGhlIHNhbWUsIHVzZSB0aGUgImMiIG1hcCAoanVzdCB0eXBlIGMpLiAgVGhhdCBtYXAgd2lsbCBzZXQgdGhlCi1jdXJyZW50IGRpcmVjdG9yeSB0byB0aGUgY3VycmVudCBicm93c2luZyBkaXJlY3RvcnkuCitIb3dldmVyLCB3aXRoIHRoZSBkZWZhdWx0IHNldHRpbmcgZm9yIGc6bmV0cndfa2VlcGRpciBvZiAxIHdoZXJlIG5ldHJ3CittYWludGFpbnMgaXRzIG93biBzZXBhcmF0ZSBub3Rpb24gb2YgdGhlIGN1cnJlbnQgZGlyZWN0b3J5LCBpbiBvcmRlciB0byBtYWtlCit0aGUgdHdvIGRpcmVjdG9yaWVzIHRoZSBzYW1lLCB1c2UgdGhlICJjIiBtYXAgKGp1c3QgdHlwZSBjKS4gIFRoYXQgbWFwIHdpbGwKK3NldCBWaW0ncyBub3Rpb24gb2YgdGhlIGN1cnJlbnQgZGlyZWN0b3J5IHRvIHRoZSBuZXRydydzIGN1cnJlbnQgYnJvd3NpbmcKK2RpcmVjdG9yeS4KIAogCiBCT09LTUFSS0lORyBBIERJUkVDVE9SWQkJKm5ldHJ3LWIqICpuZXRydy1ib29rbWFyayogKm5ldHJ3LWJvb2ttYXJrcyoKQEAgLTE0NDcsNiArMTQ2MiwxNyBAQAogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAxMS4gSGlzdG9yeQkJCQkJCSpuZXRydy1oaXN0b3J5KiB7e3sxCiAKKwl2OTE6ICogOkV4cGxvcmUgKi9wYXR0ZXJuIGltcGxlbWVudGVkCisJICAgICAqIHwnYWNkJ3wgb3B0aW9uIGJ5cGFzc2VkCisJdjkwOiAqIG1hcmsgJywgYXMgc3VnZ2VzdGVkIGJ5IFllZ2FwcGFuIExha3NobWFuYW4sIHVzZWQgdG8gaGVscAorCSAgICAgICBndWFyYW50ZWUgZW50cnkgaW50byB0aGUganVtcCBsaXN0IHdoZW4gYXBwcm9wcmlhdGUuCisJICAgICAqIDxzLWRvd24+IGFuZCA8cy11cD4gYXJlIG5vIGxvbmdlciBkZWZpbmVkIHVudGlsIGEKKwkgICAgICAgOkV4cGxvcmUgKiovcGF0dGVybiAgaXMgdXNlZCAoaWYgdGhlIHVzZXIgYWxyZWFkeSBoYXMgYSBtYXAKKwkgICAgICAgZm9yIHRoZW0pLiAgVGhleSB3aWxsIGJlIGRlZmluZWQgZm9yIG5ldyBicm93c2VyIHdpbmRvd3MKKwkgICAgICAgZnJvbSB0aGF0IHBvaW50IGZvcndhcmQuCisJdjg5OiAqIEEgPHMtZG93bj4sIDxzLXVwPiwgOk5leHBsb3JlLCBvciBhIDpQZXhwbG9yZSB3aXRob3V0IGhhdmluZworCSAgICAgICBmaXJzdCBkb25lIGFuIDpFeHBsb3JlICoqL3BhdHRlcm4gKHNlZSB8bmV0cnctc3RhcnN0YXJ8KSBjYXVzZWQKKwkgICAgICAgYSBsb3Qgb2YgdW5oZWxwZnVsIGVycm9yIG1lc3NhZ2VzIHRvIGFwcGVhcgogCXY4ODogKiBtb3ZlZCBEckNoaXAuTmV0cncgbWVudSB0byBOZXRydy4gIE5vdyBoYXMgcHJpb3JpdHkgODAgYnkKIAkgICAgICAgZGVmYXVsdC4gIGc6TmV0cndUb3BMdmxNZW51ID09ICJOZXRydyIgYW5kIGNhbiBiZSBjaGFuZ2VkCiAJICAgICAgIGJ5IHRoZSB1c2VyIHRvIHN1aXQuICBUaGUgcHJpb3JpdHkgaXMgZzpOZXRyd01lbnVQcmlvcml0eS4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3ByaW50LnR4dCBiL3J1bnRpbWUvZG9jL3ByaW50LnR4dAppbmRleCA1NDQxMmRhLi5iMTAxNTdkIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9wcmludC50eHQKKysrIGIvcnVudGltZS9kb2MvcHJpbnQudHh0CkBAIC0xLDQgKzEsNCBAQAotKnByaW50LnR4dCogICAgIEZvciBWaW0gdmVyc2lvbiA3LjBlLiAgTGFzdCBjaGFuZ2U6IDIwMDUgQXByIDAxCisqcHJpbnQudHh0KiAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMGUuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjEKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTI4Nyw3ICsyODcsNyBAQAogCiAgIGlmIGI6IGlzIG1pc3NpbmcsIHRoZW4gdXNlIHI6CiAgIGlmIGk6IGlzIG1pc3NpbmcsIHRoZW4gdXNlIHI6Ci0gIGlmIG86IGlzIG1pc3NpbmcsIHRoZW4gdXNlIGk6CisgIGlmIG86IGlzIG1pc3NpbmcsIHRoZW4gdXNlIGI6CiAKIFNvbWUgQ0pLIGZvbnRzIGRvIG5vdCBjb250YWluIGNoYXJhY3RlcnMgZm9yIGNvZGVzIGluIHRoZSBBU0NJSSBjb2RlIHJhbmdlLgogQWxzbywgc29tZSBjaGFyYWN0ZXJzIGluIHRoZSBDSksgQVNDSUkgY29kZSByYW5nZXMgZGlmZmVyIGluIGEgZmV3IGNvZGUgcG9pbnRzCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9xdWlja3JlZi50eHQgYi9ydW50aW1lL2RvYy9xdWlja3JlZi50eHQKaW5kZXggOGNlZmVhZi4uNzg3MjExOSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvcXVpY2tyZWYudHh0CisrKyBiL3J1bnRpbWUvZG9jL3F1aWNrcmVmLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpxdWlja3JlZi50eHQqICBGb3IgVmltIHZlcnNpb24gNy4wZS4gIExhc3QgY2hhbmdlOiAyMDA2IE1hciAyMworKnF1aWNrcmVmLnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjBlLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDIxCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC03MDcsNiArNzA3LDcgQEAKICdndWlvcHRpb25zJyAgICAgICdnbycgICAgICBHVUk6IFdoaWNoIGNvbXBvbmVudHMgYW5kIG9wdGlvbnMgYXJlIHVzZWQKICdndWlwdHknICAgICAgICAgICAgICAgICAgICBHVUk6IHRyeSB0byB1c2UgYSBwc2V1ZG8tdHR5IGZvciAiOiEiIGNvbW1hbmRzCiAnZ3VpdGFibGFiZWwnICAgICAnZ3RsJyAgICAgR1VJOiBjdXN0b20gbGFiZWwgZm9yIGEgdGFiIHBhZ2UKKydndWl0YWJ0b29sdGlwJyAgICdndHQnICAgICBHVUk6IGN1c3RvbSB0b29sdGlwIGZvciBhIHRhYiBwYWdlCiAnaGVscGZpbGUnICAgICAgICAnaGYnICAgICAgZnVsbCBwYXRoIG5hbWUgb2YgdGhlIG1haW4gaGVscCBmaWxlCiAnaGVscGhlaWdodCcgICAgICAnaGgnICAgICAgbWluaW11bSBoZWlnaHQgb2YgYSBuZXcgaGVscCB3aW5kb3cKICdoZWxwbGFuZycgICAgICAgICdobGcnICAgICBwcmVmZXJyZWQgaGVscCBsYW5ndWFnZXMKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3Nwb25zb3IudHh0IGIvcnVudGltZS9kb2Mvc3BvbnNvci50eHQKaW5kZXggZmU3YWIyNy4uMmY5MDkwZCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2Mvc3BvbnNvci50eHQKKysrIGIvcnVudGltZS9kb2Mvc3BvbnNvci50eHQKQEAgLTEsNCArMSw0IEBACi0qc3BvbnNvci50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMGUuICBMYXN0IGNoYW5nZTogMjAwNiBNYXIgMjkKKypzcG9uc29yLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4wZS4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyMQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtMjAyLDggKzIwMiw4IEBACiAKIFRoYXQgZGVwZW5kcyBvbiB5b3VyIGNvdW50cnkuICBUaGUgZG9uYXRpb25zIHRvIGhlbHAgdGhlIGNoaWxkcmVuIGluIHxVZ2FuZGF8CiBhcmUgdGF4IGRlZHVjdGlibGUgaW4gSG9sbGFuZCwgR2VybWFueSwgQ2FuYWRhIGFuZCBpbiB0aGUgVVNBLiAgU2VlIHRoZSBJQ0NGCi13ZWJzaXRlIGh0dHA6Ly93d3cuaWNjZi5ubC9kb25hdGUuaHRtbC4gIFlvdSBtdXN0IHNlbmQgYW4gZS1tYWlsIHRvIEJyYW0gdG8KLWxldCBoaW0ga25vdyB0aGF0IHRoZSBkb25hdGlvbiBpcyBkb25lIGJlY2F1c2Ugb2YgdGhlIHVzZSBvZiBWaW0uCit3ZWJzaXRlIGh0dHA6Ly9pY2NmLWhvbGxhbmQub3JnL2RvbmF0ZS5odG1sLiAgWW91IG11c3Qgc2VuZCBhbiBlLW1haWwgdG8gQnJhbQordG8gbGV0IGhpbSBrbm93IHRoYXQgdGhlIGRvbmF0aW9uIGlzIGRvbmUgYmVjYXVzZSBvZiB0aGUgdXNlIG9mIFZpbS4KIAogCiBDYW4geW91IHNlbmQgbWUgYSBiaWxsPwpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdGFicGFnZS50eHQgYi9ydW50aW1lL2RvYy90YWJwYWdlLnR4dAppbmRleCA1NjZjODAyLi5mOGQxMjIzIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy90YWJwYWdlLnR4dAorKysgYi9ydW50aW1lL2RvYy90YWJwYWdlLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp0YWJwYWdlLnR4dCogICBGb3IgVmltIHZlcnNpb24gNy4wZS4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAxMworKnRhYnBhZ2UudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjBlLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDIxCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC04Miw2ICs4Miw5IEBACiBDVFJMLVcgZ2YJT3BlbiBhIG5ldyB0YWIgcGFnZSBhbmQgZWRpdCB0aGUgZmlsZSBuYW1lIHVuZGVyIHRoZSBjdXJzb3IuCiAJCVNlZSB8Q1RSTC1XX2dmfC4KIAorQ1RSTC1XIGdGCU9wZW4gYSBuZXcgdGFiIHBhZ2UgYW5kIGVkaXQgdGhlIGZpbGUgbmFtZSB1bmRlciB0aGUgY3Vyc29yCisJCWFuZCBqdW1wIHRvIHRoZSBsaW5lIG51bWJlciBmb2xsb3dpbmcgdGhlIGZpbGUgbmFtZS4KKwkJU2VlIHxDVFJMLVdfZ0Z8LgogCiBDTE9TSU5HIEEgVEFCIFBBR0U6CiAKQEAgLTMwNiwyMSArMzA5LDI1IEBACiBzcGVjaWZpZXMgdGhlIHdob2xlIHRhYiBwYWdlcyBsaW5lIGF0IG9uY2UsICdndWl0YWJsYWJlbCcgaXMgdXNlZCBmb3IgZWFjaAogbGFiZWwgc2VwYXJhdGVseS4KIAorJ2d1aXRhYnRvb2x0aXAnIGlzIHZlcnkgc2ltaWxhciBhbmQgaXMgdXNlZCBmb3IgdGhlIHRvb2x0aXAgb2YgdGhlIHNhbWUgbGFiZWwuCitUaGlzIG9ubHkgYXBwZWFycyB3aGVuIHRoZSBtb3VzZSBwb2ludGVyIGhvdmVycyBvdmVyIHRoZSBsYWJlbCwgdGh1cyBpdAordXN1YWxseSBpcyBsb25nZXIuICBPbmx5IHN1cHBvcnRlZCBvbiBzb21lIHN5c3RlbXMgdGhvdWdoLgorCiBTZWUgdGhlICdzdGF0dXNsaW5lJyBvcHRpb24gZm9yIHRoZSBmb3JtYXQgb2YgdGhlIHZhbHVlLgogCiBUaGUgIiVOIiBpdGVtIGNhbiBiZSB1c2VkIGZvciB0aGUgY3VycmVudCB0YWIgcGFnZSBudW1iZXIuICBUaGUgfHY6bG51bXwKLXZhcmlhYmxlIGlzIGFsc28gc2V0IHRvIHRoaXMgbnVtYmVyIHdoZW4gJ2d1aXRhYmxhYmVsJyBpcyBldmFsdWF0ZWQuCit2YXJpYWJsZSBpcyBhbHNvIHNldCB0byB0aGlzIG51bWJlciB3aGVuIHRoZSBvcHRpb24gaXMgZXZhbHVhdGVkLgogVGhlIGl0ZW1zIHRoYXQgdXNlIGEgZmlsZSBuYW1lIHJlZmVyIHRvIHRoZSBjdXJyZW50IHdpbmRvdyBvZiB0aGUgdGFiIHBhZ2UuCiAKLU5vdGUgdGhhdCBzeW50YXggaGlnaGxpZ2h0aW5nIGlzIG5vdCB1c2VkIGZvciAnZ3VpdGFibGFiZWwnLiAgVGhlICVUIGFuZCAlWAorTm90ZSB0aGF0IHN5bnRheCBoaWdobGlnaHRpbmcgaXMgbm90IHVzZWQgZm9yIHRoZSBvcHRpb24uICBUaGUgJVQgYW5kICVYCiBpdGVtcyBhcmUgYWxzbyBpZ25vcmVkLgogCiBBIHNpbXBsZSBleGFtcGxlIHRoYXQgcHV0cyB0aGUgdGFiIHBhZ2UgbnVtYmVyIGFuZCB0aGUgYnVmZmVyIG5hbWUgaW4gdGhlCiBsYWJlbDogPgogCTpzZXQgZ3VpdGFibGFiZWw9JU5cICVmCiAKLUFuIGV4YW1wbGUgdGhhdCByZXNlbWJsZXMgdGhlIGRlZmF1bHQ6IFNob3cgdGhlIG51bWJlciBvZiB3aW5kb3dzIGluIHRoZSB0YWIKLXBhZ2UgYW5kIGEgJysnIGlmIHRoZXJlIGlzIGEgbW9kaWZlZCBidWZmZXI6ID4KK0FuIGV4YW1wbGUgdGhhdCByZXNlbWJsZXMgdGhlIGRlZmF1bHQgJ2d1aXRhYmxhYmVsJzogU2hvdyB0aGUgbnVtYmVyIG9mCit3aW5kb3dzIGluIHRoZSB0YWIgcGFnZSBhbmQgYSAnKycgaWYgdGhlcmUgaXMgYSBtb2RpZmVkIGJ1ZmZlcjogPgogCiAJZnVuY3Rpb24gR3VpVGFiTGFiZWwoKQogCSAgbGV0IGxhYmVsID0gJycKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3RvZG8udHh0IGIvcnVudGltZS9kb2MvdG9kby50eHQKaW5kZXggODJmYzVkZC4uMDhlODVkOCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdG9kby50eHQKKysrIGIvcnVudGltZS9kb2MvdG9kby50eHQKQEAgLTEsNCArMSw0IEBACi0qdG9kby50eHQqICAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMGUuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjAKKyp0b2RvLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy4wZS4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyMQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0zMCw3ICszMCw3IEBACiAJCQkJCQkJKmtub3duLWJ1Z3MqCiAtLS0tLS0tLS0tLS0tLS0tLS0tLSBLbm93biBidWdzIGFuZCBjdXJyZW50IHdvcmsgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAotRm9yIGEgdG9vbHRpcCBvZiBhdCBHVUkgdGFiIGxhYmVsIHdlIG5lZWQgYSBuZXcgZmllbGQuICBBbHNvICdndWl0YWJ0aXAnPworV2luMzI6IENyYXNoIHdoZW4gYWRkaW5nIG1hbnkgbWVudSBlbnRyaWVzLiAoS2FybCBXYWVkdCkKIAogQ3Jhc2ggaW4gIno9IiB3aGVuIHRoZSBjaGFuZ2UgdHJpZ2dlcnMgY2hlY2tpbmcgb3V0IHRoZSBmaWxlLCBGaWxlQ2hhbmdlZFJPCiBldmVudC4gIFByb2JsZW0gaW4gbW92ZV9saW5lcygpPyAgRmlsZUNoYW5nZWRTaGVsbCBhbHNvIGludm9sdmVkPyAoTmVpbCBCaXJkKQpAQCAtMzksNiArMzksNyBAQAogRml4IGNvdmVyaXR5IGZhbHNlIHBvc2l0aXZlcz8KIAogQWRkIG1vcmUgdGVzdHMgZm9yIGFsbCBuZXcgZnVuY3Rpb25hbGl0eSBpbiBWaW0gNy4gIEVzcGVjaWFsbHkgbmV3IGZ1bmN0aW9ucy4KKyAgICA6dW5kb2pvaW4KIAogV2luMzI6IERlc2NyaWJlIGhvdyB0byBkbyBkZWJ1Z2dpbmcuIChHZW9yZ2UgUmVpbGx5KQogCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy91bmRvLnR4dCBiL3J1bnRpbWUvZG9jL3VuZG8udHh0CmluZGV4IDQzMmM4NTUuLjVlN2I0ZWQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3VuZG8udHh0CisrKyBiL3J1bnRpbWUvZG9jL3VuZG8udHh0CkBAIC0xLDQgKzEsNCBAQAotKnVuZG8udHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjBlLiAgTGFzdCBjaGFuZ2U6IDIwMDYgQXByIDEyCisqdW5kby50eHQqICAgICAgRm9yIFZpbSB2ZXJzaW9uIDcuMGUuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjEKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTg3LDEwICs4NywxMSBAQAogSWYgeW91IHdhbnQgdG8gd3JpdGUgYSBmdW5jdGlvbiBvciBzY3JpcHQgdGhhdCBkb2Vzbid0IGNyZWF0ZSBhIG5ldyB1bmRvYWJsZQogY2hhbmdlIGJ1dCBqb2lucyBpbiB3aXRoIHRoZSBwcmV2aW91cyBjaGFuZ2UgdXNlIHRoaXMgY29tbWFuZDoKIAotCQkJCQkJCSo6dW5kb2oqICo6dW5kb2pvaW4qCisJCQkJCQkqOnVuZG9qKiAqOnVuZG9qb2luKiAqRTc5MCoKIDp1bmRvaltvaW5dCQlKb2luIGZ1cnRoZXIgY2hhbmdlcyB3aXRoIHRoZSBwcmV2aW91cyB1bmRvIGJsb2NrLgogCQkJV2FybmluZzogVXNlIHdpdGggY2FyZSwgaXQgbWF5IHByZXZlbnQgdGhlIHVzZXIgZnJvbQotCQkJcHJvcGVybHkgdW5kb2luZyBjaGFuZ2VzLgorCQkJcHJvcGVybHkgdW5kb2luZyBjaGFuZ2VzLiAgRG9uJ3QgdXNlIHRoaXMgYWZ0ZXIgdW5kbworCQkJb3IgcmVkby4KIAkJCXtub3QgaW4gVml9CiAKIFRoaXMgaXMgbW9zdCB1c2VmdWwgd2hlbiB5b3UgbmVlZCB0byBwcm9tcHQgdGhlIHVzZXIgaGFsZndheSBhIGNoYW5nZS4gIEZvcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvdmVyc2lvbjcudHh0IGIvcnVudGltZS9kb2MvdmVyc2lvbjcudHh0CmluZGV4IDZjNzAxZTEuLjFhYTkzYjYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3ZlcnNpb243LnR4dAorKysgYi9ydW50aW1lL2RvYy92ZXJzaW9uNy50eHQKQEAgLTEsNCArMSw0IEBACi0qdmVyc2lvbjcudHh0KiAgRm9yIFZpbSB2ZXJzaW9uIDcuMGUuICBMYXN0IGNoYW5nZTogMjAwNiBBcHIgMjAKKyp2ZXJzaW9uNy50eHQqICBGb3IgVmltIHZlcnNpb24gNy4wZS4gIExhc3QgY2hhbmdlOiAyMDA2IEFwciAyMQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtMjgwLDkgKzI4MCw5IEBACiAKIFRoZSBsaW5lIHdpdGggdGFiIGxhYmVscyBpcyBlaXRoZXIgbWFkZSB3aXRoIHBsYWluIHRleHQgYW4gaGlnaGxpZ2h0aW5nIG9yCiB3aXRoIGEgR1VJIG1lY2hhbmlzbS4gIFRoZSBHVUkgbGFiZWxzIGxvb2sgYmV0dGVyIGJ1dCBhcmUgb25seSBhdmFpbGFibGUgb24gYQotZmV3IHN5c3RlbXMuICBUaGUgbGluZSBjYW4gYmUgY3VzdG9taXplZCB3aXRoICd0YWJsaW5lJyBhbmQgJ2d1aXRhYmxhYmVsJy4KLVdoZXRoZXIgaXQgaXMgZGlzcGxheWVkIGlzIHNldCB3aXRoICdzaG93dGFibGluZScuICBXaGV0aGVyIHRvIHVzZSB0aGUgR1VJCi1sYWJlbHMgaXMgc2V0IHdpdGggdGhlICJlIiBmbGFnIGluICdndWlvcHRpb25zJy4KK2ZldyBzeXN0ZW1zLiAgVGhlIGxpbmUgY2FuIGJlIGN1c3RvbWl6ZWQgd2l0aCAndGFibGluZScsICdndWl0YWJsYWJlbCcgYW5kCisnZ3VpdGFidG9vbHRpcCcuICBXaGV0aGVyIGl0IGlzIGRpc3BsYXllZCBpcyBzZXQgd2l0aCAnc2hvd3RhYmxpbmUnLiAgV2hldGhlcgordG8gdXNlIHRoZSBHVUkgbGFiZWxzIGlzIHNldCB3aXRoIHRoZSAiZSIgZmxhZyBpbiAnZ3Vpb3B0aW9ucycuCiAKIFRoZSB8OnRhYnwgY29tbWFuZCBtb2RpZmllciBjYW4gYmUgdXNlZCB0byBoYXZlIG1vc3QgY29tbWFuZHMgdGhhdCBvcGVuIGEgbmV3CiB3aW5kb3cgb3BlbiBhIG5ldyB0YWIgaW5zdGVhZC4KQEAgLTg5NSw2ICs4OTUsNyBAQAogQlRNIGZ0cGx1Z2luIGZpbGUuIChCcmFtIE1vb2xlbmFhcikKIGNhbGVuZGFyIGZ0cGx1Z2luIGZpbGUuIChOaWtvbGFpIFdlaWJ1bGwpCiBDaGFuZ2Vsb2cgaW5kZW50IGZpbGUuIChOaWtvbGFpIFdlaWJ1bGwpCitDaG9yZFBybyBzeW50YXggZmlsZS4gKE5pZWxzIEJvIEFuZGVyc2VuKQogQ21ha2UgaW5kZW50IGFuZCBzeW50YXggZmlsZS4gKEFuZHkgQ2VkaWxuaWspCiBjb25mIGZ0cGx1Z2luIGZpbGUuIChOaWtvbGFpIFdlaWJ1bGwpCiBjb250ZXh0IHN5bnRheCBhbmQgZnRwbHVnaW4gZmlsZS4gKE5pa29sYWkgV2VpYnVsbCkKQEAgLTI1NjksNSArMjU3MCwxNyBAQAogCiBDb21wbGV0aW9uIGNvdWxkIGhhbmcgd2hlbiAnbGluZXMnIGlzIDYgYW5kIGEgcHJldmlldyB3aW5kb3cgd2FzIG9wZW5lZC4KIAorQWRkZWQgQ1RSTC1XIGdGOiBvcGVuIGZpbGUgdW5kZXIgY3Vyc29yIGluIG5ldyB0YWIgcGFnZSBhbmQganVtcCB0byB0aGUgbGluZQorbnVtYmVyIGZvbGxvd2luZyB0aGUgZmlsZSBuYW1lLgorQWRkZWQgJ2d1aXRhYnRvb2x0aXAnLCBidXQgaXQncyBub3QgaW1wbGVtZW50ZWQgYW55d2hlcmUgeWV0LgorCitBZGRlZCAidGhyb3ciIHRvICdkZWJ1Zycgb3B0aW9uOiB0aG93IGFuIGV4Y2VwdGlvbiBmb3IgZXJyb3IgbWVzc2FnZXMgZXZlbgord2hleSB0aGV5IHdvdWxkIG90aGVyd2lzZSBiZSBpZ25vcmVkLgorCitXaGVuICdrZXltYXAnIGlzIHNldCBhbmQgYSBsaW5lIGNvbnRhaW5zIGFuIGludmFsaWQgZW50cnkgY291bGQgZ2V0IGEgIk5vCittYXBwaW5nIGZvdW5kIiB3YXJuaW5nIGluc3RlYWQgb2YgYSBwcm9wZXIgZXJyb3IgbWVzc2FnZS4KKworTW90aWY6IGRlZmF1bHQgdG8gdXNpbmcgWHBtQXR0cmlidXRlcyBpbnN0ZWFkIG9mIFhwbUF0dHJpYnV0ZXNfMjEuCisKIAogIHZpbTp0dz03ODp0cz04OmZ0PWhlbHA6bm9ybDoKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3dpbmRvd3MudHh0IGIvcnVudGltZS9kb2Mvd2luZG93cy50eHQKaW5kZXggZjNlMWM0NS4uMmU1ZGI4YiAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2Mvd2luZG93cy50eHQKKysrIGIvcnVudGltZS9kb2Mvd2luZG93cy50eHQKQEAgLTcyOSw2ICs3MjksOCBAQAogCQlTcGxpdCBjdXJyZW50IHdpbmRvdyBpbiB0d28uICBFZGl0IGZpbGUgbmFtZSB1bmRlciBjdXJzb3IgYW5kCiAJCWp1bXAgdG8gdGhlIGxpbmUgbnVtYmVyIGZvbGxvd2luZyB0aGUgZmlsZSBuYW1lLiBTZWUgfGdGfCBmb3IKIAkJZGV0YWlscyBvbiBob3cgdGhlIGxpbmUgbnVtYmVyIGlzIG9idGFpbmVkLgorCQl7bm90IGF2YWlsYWJsZSB3aGVuIHRoZSB8K2ZpbGVfaW5fcGF0aHwgZmVhdHVyZSB3YXMgZGlzYWJsZWQKKwkJYXQgY29tcGlsZSB0aW1lfQogCiBDVFJMLVcgZ2YJCQkJCQkqQ1RSTC1XX2dmKgogCQlPcGVuIGEgbmV3IHRhYiBwYWdlIGFuZCBlZGl0IHRoZSBmaWxlIG5hbWUgdW5kZXIgdGhlIGN1cnNvci4KQEAgLTczNyw2ICs3MzksMTQgQEAKIAkJe25vdCBhdmFpbGFibGUgd2hlbiB0aGUgfCtmaWxlX2luX3BhdGh8IGZlYXR1cmUgd2FzIGRpc2FibGVkCiAJCWF0IGNvbXBpbGUgdGltZX0KIAorQ1RSTC1XIGdGCQkJCQkJKkNUUkwtV19nRioKKwkJT3BlbiBhIG5ldyB0YWIgcGFnZSBhbmQgZWRpdCB0aGUgZmlsZSBuYW1lIHVuZGVyIHRoZSBjdXJzb3IKKwkJYW5kIGp1bXAgdG8gdGhlIGxpbmUgbnVtYmVyIGZvbGxvd2luZyB0aGUgZmlsZSBuYW1lLiAgTGlrZQorCQkidGFiIHNwbGl0IiBhbmQgImdGIiwgYnV0IHRoZSBuZXcgdGFiIHBhZ2UgaXNuJ3QgY3JlYXRlZCBpZgorCQl0aGUgZmlsZSBkb2VzIG5vdCBleGlzdC4KKwkJe25vdCBhdmFpbGFibGUgd2hlbiB0aGUgfCtmaWxlX2luX3BhdGh8IGZlYXR1cmUgd2FzIGRpc2FibGVkCisJCWF0IGNvbXBpbGUgdGltZX0KKwogQWxzbyBzZWUgfENUUkwtV19DVFJMLUl8OiBvcGVuIHdpbmRvdyBmb3IgYW4gaW5jbHVkZWQgZmlsZSB0aGF0IGluY2x1ZGVzCiB0aGUga2V5d29yZCB1bmRlciB0aGUgY3Vyc29yLgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2ZpbGV0eXBlLnZpbSBiL3J1bnRpbWUvZmlsZXR5cGUudmltCmluZGV4IGVmNTllNTMuLjYxN2NiZTYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZmlsZXR5cGUudmltCisrKyBiL3J1bnRpbWUvZmlsZXR5cGUudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3VwcG9ydCBmaWxlIHRvIGRldGVjdCBmaWxlIHR5cGVzCiAiCiAiIE1haW50YWluZXI6CUJyYW0gTW9vbGVuYWFyIDxCcmFtQHZpbS5vcmc+Ci0iIExhc3QgQ2hhbmdlOgkyMDA2IEFwciAxOQorIiBMYXN0IENoYW5nZToJMjAwNiBBcHIgMjEKIAogIiBMaXN0ZW4gdmVyeSBjYXJlZnVsbHksIEkgd2lsbCBzYXkgdGhpcyBvbmx5IG9uY2UKIGlmIGV4aXN0cygiZGlkX2xvYWRfZmlsZXR5cGVzIikKQEAgLTM5MCw2ICszOTAsOSBAQAogICBzZXRmIGNoaWxsCiBlbmRmdW4KIAorIiBDaG9yZFBybworYXUgQnVmTmV3RmlsZSxCdWZSZWFkICouY2hvcHJvLCouY3JkLCouY2hvLCouY3JkcHJvLCouY2hvcmRwcm8Jc2V0ZiBjaG9yZHBybworCiAiIENsZWFuCiBhdSBCdWZOZXdGaWxlLEJ1ZlJlYWQgKi5kY2wsKi5pY2wJCXNldGYgY2xlYW4KIApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9hMnBzLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vYTJwcy52aW0KaW5kZXggZTU5MGM5OC4uYTU5NmZjOCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9hMnBzLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2EycHMudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgYTJwcygxKSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vYWRhLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vYWRhLnZpbQppbmRleCAwNmMwNTdmLi4xM2ZhOGY5IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2FkYS52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9hZGEudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gQWRhIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOglBZGEKICIgTWFpbnRhaW5lcjoJTmVpbCBCaXJkIDxuZWlsQGZueHdlYi5jb20+Ci0iIExhc3QgQ2hhbmdlOgkyMDAzIE1heSAxMQorIiBMYXN0IENoYW5nZToJMjAwNiBBcHIgMjEKICIgVmVyc2lvbjoJJElkJAogIiBMb29rIGZvciB0aGUgbGF0ZXN0IHZlcnNpb24gYXQgaHR0cDovL3ZpbS5zb3VyY2Vmb3JnZS5uZXQvCiAiCkBAIC0xNCw3ICsxNCw2IEBACiAiIEV4cG9ydHMgJ0FkYVdvcmQoKScgZnVuY3Rpb24gdG8gcmV0dXJuIGZ1bGwgbmFtZSBvZiBBZGEgZW50aXR5IHVuZGVyIHRoZQogIiBjdXJzb3IoIG9yIGF0IGdpdmVuIGxpbmUvY29sdW1uKSwgc3RyaXBwaW5nIHdoaXRlc3BhY2UvbmV3bGluZXMgYXMgbmVjZXNzYXJ5LgogCi0KICIgT25seSBkbyB0aGlzIHdoZW4gbm90IGRvbmUgeWV0IGZvciB0aGlzIGJ1ZmZlcgogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApAQCAtMjcsMTEgKzI2LDkgQEAKIGxldCBzOmNwb3B0aW9ucyA9ICZjcG9wdGlvbnMKIHNldCBjcG8tPUMKIAotCiAiIEFkYSBjb21tZW50cwogc2V0bG9jYWwgY29tbWVudHMrPU86LS0KIAotCiAiIE1ha2UgbG9jYWwgdGFnIG1hcHBpbmdzIGZvciB0aGlzIGJ1ZmZlciAoaWYgbm90IGFscmVhZHkgc2V0KQogaWYgbWFwY2hlY2soJzxDLV0+JywnbicpID09ICcnCiAgIG5ub3JlbWFwIDx1bmlxdWU+IDxidWZmZXI+IDxDLV0+ICAgIDpjYWxsIEp1bXBUb1RhZ19hZGEoJycpPGNyPgpkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9hbHNhY29uZi52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2Fsc2Fjb25mLnZpbQppbmRleCBjMGUxM2E3Li4wZWY2OTkxIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2Fsc2Fjb25mLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2Fsc2Fjb25mLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGFsc2Fjb25mKDgpIGNvbmZpZ3VyYXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9hcmNoLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vYXJjaC52aW0KaW5kZXggOTQzM2YxMC4uMmRhOWU0MCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9hcmNoLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2FyY2gudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgR05VIEFyY2ggaW52ZW50b3J5IGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vYXV0b21ha2UudmltIGIvcnVudGltZS9mdHBsdWdpbi9hdXRvbWFrZS52aW0KaW5kZXggMWVmMjhkMS4uYzQ4ZWExMyAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9hdXRvbWFrZS52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9hdXRvbWFrZS52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBBdXRvbWFrZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDYtMjIKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9iZGYudmltIGIvcnVudGltZS9mdHBsdWdpbi9iZGYudmltCmluZGV4IDkyZWU2NmIuLmEwMTBjMmMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vYmRmLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2JkZi52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBCREYgZm9udCBkZWZpbml0aW9uCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2NhbGVuZGFyLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vY2FsZW5kYXIudmltCmluZGV4IGM3ODYyMDMuLmNhNTY1MTEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vY2FsZW5kYXIudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vY2FsZW5kYXIudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgY2FsZW5kYXIoMSkgaW5wdXQgZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9jaGFuZ2Vsb2cudmltIGIvcnVudGltZS9mdHBsdWdpbi9jaGFuZ2Vsb2cudmltCmluZGV4IGIyMjlkYmUuLmI0MjA2YTIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vY2hhbmdlbG9nLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2NoYW5nZWxvZy52aW0KQEAgLTEsMTEgKzEsMTQgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGdlbmVyaWMgQ2hhbmdlbG9nIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTI5CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAiIFZhcmlhYmxlczoKLSIgICBnOmNoYW5nZWxvZ190aW1lZm9ybWF0IC0KKyIgICBnOmNoYW5nZWxvZ190aW1lZm9ybWF0IChkZXByZWNhdGVkOiB1c2UgZzpjaGFuZ2Vsb2dfZGF0ZWZvcm1hdCBpbnN0ZWFkKSAtCiAiICAgICAgIGRlc2NyaXB0aW9uOiB0aGUgdGltZWZvcm1hdCB1c2VkIGluIENoYW5nZUxvZyBlbnRyaWVzLgogIiAgICAgICBkZWZhdWx0OiAiJVktJW0tJWQiLgorIiAgIGc6Y2hhbmdlbG9nX2RhdGVmb3JtYXQgLQorIiAgICAgICBkZXNjcmlwdGlvbjogdGhlIGZvcm1hdCBzZW50IHRvIHN0cmZ0aW1lKCkgdG8gZ2VuZXJhdGUgYSBkYXRlIHN0cmluZy4KKyIgICAgICAgZGVmYXVsdDogIiVZLSVtLSVkIi4KICIgICBnOmNoYW5nZWxvZ191c2VybmFtZSAtCiAiICAgICAgIGRlc2NyaXB0aW9uOiB0aGUgdXNlcm5hbWUgdG8gdXNlIGluIENoYW5nZUxvZyBlbnRyaWVzCiAiICAgICAgIGRlZmF1bHQ6IHRyeSB0byBkZWR1Y2UgaXQgZnJvbSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgYW5kIHN5c3RlbSBmaWxlcy4KQEAgLTI1LDggKzI4LDggQEAKICIgIFByb2JsZW0gaXMgdGhhdCB5b3UgbWlnaHQgZW5kIHVwIHdpdGggQ2hhbmdlTG9nIGZpbGVzIGFsbCBvdmVyIHRoZSBwbGFjZS4KIAogIiBJZiAnZmlsZXR5cGUnIGlzbid0ICJjaGFuZ2Vsb2ciLCB3ZSBtdXN0IGhhdmUgYmVlbiB0byBhZGQgQ2hhbmdlTG9nIG9wZW5lcgotaWYgJmZpbGV0eXBlID09ICJjaGFuZ2Vsb2ciCi0gIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQoraWYgJmZpbGV0eXBlID09ICdjaGFuZ2Vsb2cnCisgIGlmIGV4aXN0cygnYjpkaWRfZnRwbHVnaW4nKQogICAgIGZpbmlzaAogICBlbmRpZgogICBsZXQgYjpkaWRfZnRwbHVnaW4gPSAxCkBAIC0zNCwyMCArMzcsMjUgQEAKICAgbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCiAgIHNldCBjcG8mdmltCiAKLSAgIiBUaGUgZm9ybWF0IG9mIHRoZSBkYXRlLXRpbWUgZmllbGQgKHNob3VsZCBoYXZlIGJlZW4gY2FsbGVkIGRhdGVmb3JtYXQpCi0gIGlmICFleGlzdHMoImc6Y2hhbmdlbG9nX3RpbWVmb3JtYXQiKQotICAgIGxldCBnOmNoYW5nZWxvZ190aW1lZm9ybWF0ID0gIiVZLSVtLSVkIgorICAiIFNldCB1cCB0aGUgZm9ybWF0IHVzZWQgZm9yIGRhdGVzLgorICBpZiAhZXhpc3RzKCdnOmNoYW5nZWxvZ19kYXRlZm9ybWF0JykKKyAgICBpZiBleGlzdHMoJ2c6Y2hhbmdlbG9nX3RpbWVmb3JtYXQnKQorICAgICAgbGV0IGc6Y2hhbmdlbG9nX2RhdGVmb3JtYXQgPSBnOmNoYW5nZWxvZ190aW1lZm9ybWF0CisgICAgZWxzZQorICAgICAgbGV0IGc6Y2hhbmdlbG9nX2RhdGVmb3JtYXQgPSAiJVktJW0tJWQiCisgICAgZW5kaWYKICAgZW5kaWYKIAogICAiIFRyeSB0byBmaWd1cmUgb3V0IGEgcmVhc29uYWJsZSB1c2VybmFtZSBvZiB0aGUgZm9ybToKLSAgIiBGdWxsIE5hbWUgPHVzZXJAaG9zdD4KLSAgaWYgIWV4aXN0cygiZzpjaGFuZ2Vsb2dfdXNlcm5hbWUiKQotICAgIGlmIGV4aXN0cygiJEVNQUlMX0FERFJFU1MiKQotICAgICAgbGV0IGc6Y2hhbmdlbG9nX3VzZXJuYW1lID0gJEVNQUlMX0FERFJFU1MKLSAgICBlbHNlaWYgZXhpc3RzKCIkRU1BSUwiKQorICAiICAgRnVsbCBOYW1lIDx1c2VyQGhvc3Q+LgorICBpZiAhZXhpc3RzKCdnOmNoYW5nZWxvZ191c2VybmFtZScpCisgICAgaWYgZXhpc3RzKCckRU1BSUwnKSAmJiAkRU1BSUwgIT0gJycKICAgICAgIGxldCBnOmNoYW5nZWxvZ191c2VybmFtZSA9ICRFTUFJTAorICAgIGVsc2VpZiBleGlzdHMoJyRFTUFJTF9BRERSRVNTJykgJiYgJEVNQUlMX0FERFJFU1MgIT0gJycKKyAgICAgICIgVGhpcyBpcyBzb21lIERlYmlhbiBqdW5rIGlmIEkgcmVtZW1iZXIgY29ycmVjdGx5LgorICAgICAgbGV0IGc6Y2hhbmdlbG9nX3VzZXJuYW1lID0gJEVNQUlMX0FERFJFU1MKICAgICBlbHNlCi0gICAgICAiIEdldCB0aGUgdXNlcnMgbG9naW4gbmFtZQorICAgICAgIiBHZXQgdGhlIHVzZXJzIGxvZ2luIG5hbWUuCiAgICAgICBsZXQgbG9naW4gPSBzeXN0ZW0oJ3dob2FtaScpCiAgICAgICBpZiB2OnNoZWxsX2Vycm9yCiAgICAgICAgIGxldCBsb2dpbiA9ICd1bmtub3duJwpAQCAtNTgsNDMgKzY2LDQyIEBACiAgICAgICAgIGVuZGlmCiAgICAgICBlbmRpZgogCi0gICAgICAiIFRyeSB0byBmdWxsIG5hbWUgZnJvbSBnZWNvcyBmaWVsZCBpbiAvZXRjL3Bhc3N3ZAorICAgICAgIiBUcnkgdG8gZ2V0IHRoZSBmdWxsIG5hbWUgZnJvbSBnZWNvcyBmaWVsZCBpbiAvZXRjL3Bhc3N3ZC4KICAgICAgIGlmIGZpbGVyZWFkYWJsZSgnL2V0Yy9wYXNzd2QnKQotICAgICAgICBsZXQgbmFtZSA9IHN1YnN0aXR1dGUoCi0gICAgICAgICAgICAgIFxzeXN0ZW0oJ2NhdCAvZXRjL3Bhc3N3ZCB8IGdyZXAgXmB3aG9hbWlgJyksCi0gICAgICAgICAgICAgIFwnXlwlKFteOl0qOlwpXHs0fVwoW146XSpcKTouKiQnLCAnXDEnLCAnJykKKyAgICAgICAgZm9yIGxpbmUgaW4gcmVhZGZpbGUoJy9ldGMvcGFzc3dkJykKKyAgICAgICAgICBpZiBsaW5lID1+ICdeJyAuIGxvZ2luCisgICAgICAgICAgICBsZXQgbmFtZSA9IHN1YnN0aXR1dGUobGluZSwnXlwlKFteOl0qOlwpXHs0fVwoW146XSpcKTouKiQnLCdcMScsJycpCisgICAgICAgICAgICAiIE9ubHkga2VlcCBzdHVmZiBiZWZvcmUgdGhlIGZpcnN0IGNvbW1hLgorICAgICAgICAgICAgbGV0IGNvbW1hID0gc3RyaWR4KG5hbWUsICcsJykKKyAgICAgICAgICAgIGlmIGNvbW1hICE9IC0xCisgICAgICAgICAgICAgIGxldCBuYW1lID0gc3RycGFydChuYW1lLCAwLCBjb21tYSkKKyAgICAgICAgICAgIGVuZGlmCisgICAgICAgICAgICAiIEFuZCBzdWJzdGl0dXRlICYgaW4gdGhlIHJlYWwgbmFtZSB3aXRoIHRoZSBsb2dpbiBvZiBvdXIgdXNlci4KKyAgICAgICAgICAgIGxldCBhbXAgPSBzdHJpZHgobmFtZSwgJyYnKQorICAgICAgICAgICAgaWYgYW1wICE9IC0xCisgICAgICAgICAgICAgIGxldCBuYW1lID0gc3RycGFydChuYW1lLCAwLCBhbXApIC4gdG91cHBlcihsb2dpblswXSkgLgorICAgICAgICAgICAgICAgICAgICAgICBcIHN0cnBhcnQobG9naW4sIDEpIC4gc3RycGFydChuYW1lLCBhbXAgKyAxKQorICAgICAgICAgICAgZW5kaWYKKyAgICAgICAgICBlbmRpZgorICAgICAgICBlbmRmb3IKICAgICAgIGVuZGlmCiAKLSAgICAgICIgSWYgdGhlcmUgaXMgbm8gc3VjaCBmaWxlLCBvciB0aGVyZSB3YXMgc29tZSBvdGhlciBwcm9ibGVtIHRyeQotICAgICAgIiBvdGhlcnMKLSAgICAgIGlmICFmaWxlcmVhZGFibGUoJy9ldGMvcGFzc3dkJykgfHwgdjpzaGVsbF9lcnJvcgotICAgICAgICAiIE1heWJlIHRoZSBlbnZpcm9ubWVudCBoYXMgc29tZXRoaW5nIG9mIGludGVyZXN0CisgICAgICAiIElmIHdlIGhhdmVuJ3QgZm91bmQgYSBuYW1lLCB0cnkgdG8gZ2F0aGVyIGl0IGZyb20gb3RoZXIgcGxhY2VzLgorICAgICAgaWYgIWV4aXN0cygnbmFtZScpCisgICAgICAgICIgTWF5YmUgdGhlIGVudmlyb25tZW50IGhhcyBzb21ldGhpbmcgb2YgaW50ZXJlc3QuCiAgICAgICAgIGlmIGV4aXN0cygiJE5BTUUiKQogICAgICAgICAgIGxldCBuYW1lID0gJE5BTUUKICAgICAgICAgZWxzZQogICAgICAgICAgICIgTm8/IHdlbGwsIHVzZSB0aGUgbG9naW4gbmFtZSBhbmQgY2FwaXRhbGl6ZSBmaXJzdAotICAgICAgICAgICIgY2hhcmFjdGVyCisgICAgICAgICAgIiBjaGFyYWN0ZXIuCiAgICAgICAgICAgbGV0IG5hbWUgPSB0b3VwcGVyKGxvZ2luWzBdKSAuIHN0cnBhcnQobG9naW4sIDEpCiAgICAgICAgIGVuZGlmCiAgICAgICBlbmRpZgogCi0gICAgICAiIE9ubHkga2VlcCBzdHVmZiBiZWZvcmUgdGhlIGZpcnN0IGNvbW1hCi0gICAgICBsZXQgY29tbWEgPSBzdHJpZHgobmFtZSwgJywnKQotICAgICAgaWYgY29tbWEgIT0gLTEKLSAgICAgICAgbGV0IG5hbWUgPSBzdHJwYXJ0KG5hbWUsIDAsIGNvbW1hKQotICAgICAgZW5kaWYKLQotICAgICAgIiBBbmQgc3Vic3RpdHV0ZSAmIGluIHRoZSByZWFsIG5hbWUgd2l0aCB0aGUgbG9naW4gb2Ygb3VyIHVzZXIKLSAgICAgIGxldCBhbXAgPSBzdHJpZHgobmFtZSwgJyYnKQotICAgICAgaWYgYW1wICE9IC0xCi0gICAgICAgIGxldCBuYW1lID0gc3RycGFydChuYW1lLCAwLCBhbXApIC4gdG91cHBlcihsb2dpblswXSkgLgotICAgICAgICAgICAgICBcc3RycGFydChsb2dpbiwgMSkgLiBzdHJwYXJ0KG5hbWUsIGFtcCArIDEpCi0gICAgICBlbmRpZgotCi0gICAgICAiIEdldCBvdXIgaG9zdG5hbWUKLSAgICAgIGxldCBob3N0bmFtZSA9IHN5c3RlbSgiaG9zdG5hbWUiKQorICAgICAgIiBHZXQgb3VyIGhvc3RuYW1lLgorICAgICAgbGV0IGhvc3RuYW1lID0gc3lzdGVtKCdob3N0bmFtZScpCiAgICAgICBpZiB2OnNoZWxsX2Vycm9yCi0gICAgICAgIGxldCBob3N0bmFtZSA9ICd1bmtub3duaG9zdCcKKyAgICAgICAgbGV0IGhvc3RuYW1lID0gJ2xvY2FsaG9zdCcKICAgICAgIGVsc2UKICAgICAgICAgbGV0IG5ld2xpbmUgPSBzdHJpZHgoaG9zdG5hbWUsICJcbiIpCiAgICAgICAgIGlmIG5ld2xpbmUgIT0gLTEKQEAgLTEwMiwxMDIgKzEwOSw5OSBAQAogICAgICAgICBlbmRpZgogICAgICAgZW5kaWYKIAotICAgICAgIiBBbmQgZmluYWxseSBzZXQgdGhlIHVzZXJuYW1lCi0gICAgICBsZXQgZzpjaGFuZ2Vsb2dfdXNlcm5hbWUgPSBuYW1lLicgIDwnLmxvZ2luLidAJy5ob3N0bmFtZS4nPicKKyAgICAgICIgQW5kIGZpbmFsbHkgc2V0IHRoZSB1c2VybmFtZS4KKyAgICAgIGxldCBnOmNoYW5nZWxvZ191c2VybmFtZSA9IG5hbWUgLiAnICA8JyAuIGxvZ2luIC4gJ0AnIC4gaG9zdG5hbWUgLiAnPicKICAgICBlbmRpZgogICBlbmRpZgogCi0gICIgRm9ybWF0IHVzZWQgZm9yIG5ldyBkYXRlLWVudHJpZXMKLSAgaWYgIWV4aXN0cygiZzpjaGFuZ2Vsb2dfbmV3X2RhdGVfZm9ybWF0IikKKyAgIiBGb3JtYXQgdXNlZCBmb3IgbmV3IGRhdGUgZW50cmllcy4KKyAgaWYgIWV4aXN0cygnZzpjaGFuZ2Vsb2dfbmV3X2RhdGVfZm9ybWF0JykKICAgICBsZXQgZzpjaGFuZ2Vsb2dfbmV3X2RhdGVfZm9ybWF0ID0gIiVkICAldVxuXG5cdCogJWNcblxuIgogICBlbmRpZgogCi0gICIgRm9ybWF0IHVzZWQgZm9yIG5ldyBlbnRyaWVzIHRvIGN1cnJlbnQgZGF0ZS1lbnRyeQotICBpZiAhZXhpc3RzKCJnOmNoYW5nZWxvZ19uZXdfZW50cnlfZm9ybWF0IikKKyAgIiBGb3JtYXQgdXNlZCBmb3IgbmV3IGVudHJpZXMgdG8gY3VycmVudCBkYXRlIGVudHJ5LgorICBpZiAhZXhpc3RzKCdnOmNoYW5nZWxvZ19uZXdfZW50cnlfZm9ybWF0JykKICAgICBsZXQgZzpjaGFuZ2Vsb2dfbmV3X2VudHJ5X2Zvcm1hdCA9ICJcdCogJWMiCiAgIGVuZGlmCiAKLSAgaWYgIWV4aXN0cygiZzpjaGFuZ2Vsb2dfZGF0ZV9lbnRyeV9zZWFyY2giKQorICAiIFJlZ3VsYXIgZXhwcmVzc2lvbiB1c2VkIHRvIGZpbmQgYSBnaXZlbiBkYXRlIGVudHJ5LgorICBpZiAhZXhpc3RzKCdnOmNoYW5nZWxvZ19kYXRlX2VudHJ5X3NlYXJjaCcpCiAgICAgbGV0IGc6Y2hhbmdlbG9nX2RhdGVfZW50cnlfc2VhcmNoID0gJ15ccyolZFxfcyoldScKICAgZW5kaWYKIAotICAiIFN1YnN0aXR1dGVzIHNwZWNpZmljIGl0ZW1zIGluIG5ldyBkYXRlLWVudHJ5IGZvcm1hdHMgYW5kIHNlYXJjaCBzdHJpbmdzCi0gICIgQ2FuIGJlIGRvbmUgd2l0aCBzdWJzdGl0dXRlIG9mIGNvdXJzZSwgYnV0IHVuY2xlYW4sIGFuZCBuZWVkIFxAISB0aGVuCisgICIgU3Vic3RpdHV0ZXMgc3BlY2lmaWMgaXRlbXMgaW4gbmV3IGRhdGUtZW50cnkgZm9ybWF0cyBhbmQgc2VhcmNoIHN0cmluZ3MuCisgICIgQ2FuIGJlIGRvbmUgd2l0aCBzdWJzdGl0dXRlIG9mIGNvdXJzZSwgYnV0IHVuY2xlYW4sIGFuZCBuZWVkIFxAISB0aGVuLgogICBmdW5jdGlvbiEgczpzdWJzdGl0dXRlX2l0ZW1zKHN0ciwgZGF0ZSwgdXNlcikKICAgICBsZXQgc3RyID0gYTpzdHIKKyAgICBsZXQgbWlkZGxlcyA9IHsnJSc6ICclJywgJ2QnOiBhOmRhdGUsICd1JzogYTp1c2VyLCAnYyc6ICd7Y3Vyc29yfSd9CiAgICAgbGV0IGkgPSBzdHJpZHgoc3RyLCAnJScpCiAgICAgd2hpbGUgaSAhPSAtMQotICAgICAgbGV0IGNoYXIgPSBzdHJbaSArIDFdCi0gICAgICBpZiBjaGFyID09ICclJwotICAgICAgICBsZXQgbWlkZGxlID0gJyUnCi0gICAgICBlbHNlaWYgY2hhciA9PSAnZCcKLSAgICAgICAgbGV0IG1pZGRsZSA9IGE6ZGF0ZQotICAgICAgZWxzZWlmIGNoYXIgPT0gJ3UnCi0gICAgICAgIGxldCBtaWRkbGUgPSBhOnVzZXIKLSAgICAgIGVsc2VpZiBjaGFyID09ICdjJwotICAgICAgICBsZXQgbWlkZGxlID0gJ3tjdXJzb3J9JwotICAgICAgZWxzZQotICAgICAgICBsZXQgbWlkZGxlID0gY2hhcgorICAgICAgbGV0IGluYyA9IDAKKyAgICAgIGlmIGhhc19rZXkobWlkZGxlcywgc3RyW2kgKyAxXSkKKyAgICAgICAgbGV0IG1pZCA9IG1pZGRsZXNbc3RyW2kgKyAxXV0KKyAgICAgICAgbGV0IHN0ciA9IHN0cnBhcnQoc3RyLCAwLCBpKSAuIG1pZCAuIHN0cnBhcnQoc3RyLCBpICsgMikKKyAgICAgICAgbGV0IGluYyA9IHN0cmxlbihtaWQpCiAgICAgICBlbmRpZgotICAgICAgbGV0IHN0ciA9IHN0cnBhcnQoc3RyLCAwLCBpKSAuIG1pZGRsZSAuIHN0cnBhcnQoc3RyLCBpICsgMikKLSAgICAgIGxldCBpID0gc3RyaWR4KHN0ciwgJyUnKQorICAgICAgbGV0IGkgPSBzdHJpZHgoc3RyLCAnJScsIGkgKyAxICsgaW5jKQogICAgIGVuZHdoaWxlCiAgICAgcmV0dXJuIHN0cgogICBlbmRmdW5jdGlvbgogCisgICIgUG9zaXRpb24gdGhlIGN1cnNvciBvbmNlIHdlJ3ZlIGRvbmUgYWxsIHRoZSBmdW5reSBzdWJzdGl0dXRpb24uCiAgIGZ1bmN0aW9uISBzOnBvc2l0aW9uX2N1cnNvcigpCiAgICAgaWYgc2VhcmNoKCd7Y3Vyc29yfScpID4gMAotICAgICAgbGV0IHBvcyA9IGxpbmUoJy4nKQotICAgICAgbGV0IGxpbmUgPSBnZXRsaW5lKHBvcykKKyAgICAgIGxldCBsbnVtID0gbGluZSgnLicpCisgICAgICBsZXQgbGluZSA9IGdldGxpbmUobG51bSkKICAgICAgIGxldCBjdXJzb3IgPSBzdHJpZHgobGluZSwgJ3tjdXJzb3J9JykKLSAgICAgIGNhbGwgc2V0bGluZShwb3MsIHN1YnN0aXR1dGUobGluZSwgJ3tjdXJzb3J9JywgJycsICcnKSkKKyAgICAgIGNhbGwgc2V0bGluZShsbnVtLCBzdWJzdGl0dXRlKGxpbmUsICd7Y3Vyc29yfScsICcnLCAnJykpCiAgICAgZW5kaWYKICAgICBzdGFydGluc2VydCEKICAgZW5kZnVuY3Rpb24KIAotICAiIEludGVybmFsIGZ1bmN0aW9uIHRvIGNyZWF0ZSBhIG5ldyBlbnRyeSBpbiB0aGUgQ2hhbmdlTG9nCisgICIgSW50ZXJuYWwgZnVuY3Rpb24gdG8gY3JlYXRlIGEgbmV3IGVudHJ5IGluIHRoZSBDaGFuZ2VMb2cuCiAgIGZ1bmN0aW9uISBzOm5ld19jaGFuZ2Vsb2dfZW50cnkoKQotICAgICIgRGVhbCB3aXRoICdwYXN0ZScgb3B0aW9uCisgICAgIiBEZWFsIHdpdGggJ3Bhc3RlJyBvcHRpb24uCiAgICAgbGV0IHNhdmVfcGFzdGUgPSAmcGFzdGUKICAgICBsZXQgJnBhc3RlID0gMQotICAgIDEKLSAgICAiIExvb2sgZm9yIGFuIGVudHJ5IGZvciB0b2RheSBieSBvdXIgdXNlcgotICAgIGxldCBkYXRlID0gc3RyZnRpbWUoZzpjaGFuZ2Vsb2dfdGltZWZvcm1hdCkKKyAgICBjYWxsIGN1cnNvcigxLCAxKQorICAgICIgTG9vayBmb3IgYW4gZW50cnkgZm9yIHRvZGF5IGJ5IG91ciB1c2VyLgorICAgIGxldCBkYXRlID0gc3RyZnRpbWUoZzpjaGFuZ2Vsb2dfZGF0ZWZvcm1hdCkKICAgICBsZXQgc2VhcmNoID0gczpzdWJzdGl0dXRlX2l0ZW1zKGc6Y2hhbmdlbG9nX2RhdGVfZW50cnlfc2VhcmNoLCBkYXRlLAotICAgICAgICAgIFxnOmNoYW5nZWxvZ191c2VybmFtZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGc6Y2hhbmdlbG9nX3VzZXJuYW1lKQogICAgIGlmIHNlYXJjaChzZWFyY2gpID4gMAotICAgICAgIiBPaywgbm93IHdlIGxvb2sgZm9yIHRoZSBlbmQgb2YgdGhlIGRhdGUtZW50cnksIGFuZCBhZGQgYW4gZW50cnkKLSAgICAgIGxldCBwb3MgPSBuZXh0bm9uYmxhbmsobGluZSgnLicpICsgMSkKLSAgICAgIGxldCBsaW5lID0gZ2V0bGluZShwb3MpCi0gICAgICB3aGlsZSBsaW5lID1+ICdeXHNcK1xTXCsnCi0gICAgICAgIGxldCBwb3MgPSBwb3MgKyAxCi0gICAgICAgIGxldCBsaW5lID0gZ2V0bGluZShwb3MpCi0gICAgICBlbmR3aGlsZQotICAgICAgbGV0IGluc2VydCA9IHM6c3Vic3RpdHV0ZV9pdGVtcyhnOmNoYW5nZWxvZ19uZXdfZW50cnlfZm9ybWF0LAotICAgICAgICAgICAgXCcnLCAnJykKLSAgICAgIGV4ZWN1dGUgIm5vcm1hbCEgIi4ocG9zIC0gMSkuIkdvIi5pbnNlcnQKLSAgICAgIGV4ZWN1dGUgcG9zCisgICAgICAiIE9rLCBub3cgd2UgbG9vayBmb3IgdGhlIGVuZCBvZiB0aGUgZGF0ZSBlbnRyeSwgYW5kIGFkZCBhbiBlbnRyeS4KKyAgICAgIGNhbGwgY3Vyc29yKG5leHRub25ibGFuayhsaW5lKCcuJykgKyAxKSwgMSkKKyAgICAgIGlmIHNlYXJjaCgnXlxzKiQnLCAnVycpID4gMAorICAgICAgICBsZXQgcCA9IGxpbmUoJy4nKSAtIDEKKyAgICAgIGVsc2UKKyAgICAgICAgbGV0IHAgPSBsaW5lKCcuJykKKyAgICAgIGVuZGlmCisgICAgICBsZXQgbHMgPSBzcGxpdChzOnN1YnN0aXR1dGVfaXRlbXMoZzpjaGFuZ2Vsb2dfbmV3X2VudHJ5X2Zvcm1hdCwgJycsICcnKSwKKyAgICAgICAgICAgICAgICAgICBcICdcbicpCisgICAgICBjYWxsIGFwcGVuZChwLCBscykKKyAgICAgIGNhbGwgY3Vyc29yKHAgKyAxLCAxKQogICAgIGVsc2UKLSAgICAgICIgRmxhZyBmb3IgcmVtb3ZpbmcgZW1wdHkgbGluZXMgYXQgZW5kIG9mIG5ldyBDaGFuZ2VMb2dzCisgICAgICAiIEZsYWcgZm9yIHJlbW92aW5nIGVtcHR5IGxpbmVzIGF0IGVuZCBvZiBuZXcgQ2hhbmdlTG9ncy4KICAgICAgIGxldCByZW1vdmVfZW1wdHkgPSBsaW5lKCckJykgPT0gMQogCi0gICAgICAiIE5vIGVudHJ5IHRvZGF5LCBzbyBjcmVhdGUgYSBkYXRlLXVzZXIgaGVhZGVyIGFuZCBpbnNlcnQgYW4gZW50cnkKKyAgICAgICIgTm8gZW50cnkgdG9kYXksIHNvIGNyZWF0ZSBhIGRhdGUtdXNlciBoZWFkZXIgYW5kIGluc2VydCBhbiBlbnRyeS4KICAgICAgIGxldCB0b2RheXNfZW50cnkgPSBzOnN1YnN0aXR1dGVfaXRlbXMoZzpjaGFuZ2Vsb2dfbmV3X2RhdGVfZm9ybWF0LAotICAgICAgICAgICAgXGRhdGUsIGc6Y2hhbmdlbG9nX3VzZXJuYW1lKQotICAgICAgIiBNYWtlIHN1cmUgd2UgaGF2ZSBhIGN1cnNvciBwb3NpdGlvbmluZworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBkYXRlLCBnOmNoYW5nZWxvZ191c2VybmFtZSkKKyAgICAgICIgTWFrZSBzdXJlIHdlIGhhdmUgYSBjdXJzb3IgcG9zaXRpb25pbmcuCiAgICAgICBpZiBzdHJpZHgodG9kYXlzX2VudHJ5LCAne2N1cnNvcn0nKSA9PSAtMQotICAgICAgICBsZXQgdG9kYXlzX2VudHJ5ID0gdG9kYXlzX2VudHJ5Lid7Y3Vyc29yfScKKyAgICAgICAgbGV0IHRvZGF5c19lbnRyeSA9IHRvZGF5c19lbnRyeSAuICd7Y3Vyc29yfScKICAgICAgIGVuZGlmCiAKLSAgICAgICIgTm93IGRvIHRoZSB3b3JrCi0gICAgICBleGVjdXRlICJub3JtYWwhIGkiLnRvZGF5c19lbnRyeQorICAgICAgIiBOb3cgZG8gdGhlIHdvcmsuCisgICAgICBjYWxsIGFwcGVuZCgwLCBzcGxpdCh0b2RheXNfZW50cnksICdcbicpKQorICAgICAgCisgICAgICAiIFJlbW92ZSBlbXB0eSBsaW5lcyBhdCBlbmQgb2YgZmlsZS4KICAgICAgIGlmIHJlbW92ZV9lbXB0eQotICAgICAgICB3aGlsZSBnZXRsaW5lKCckJykgPT0gJycKLSAgICAgICAgICAkZGVsZXRlCi0gICAgICAgIGVuZHdoaWxlCisgICAgICAgICQtL15ccyokLy0xLCRkZWxldGUKICAgICAgIGVuZGlmCiAKLSAgICAgIDEKKyAgICAgICIgUmVwb3NpdGlvbiBjdXJzb3Igb25jZSB3ZSdyZSBkb25lLgorICAgICAgY2FsbCBjdXJzb3IoMSwgMSkKICAgICBlbmRpZgogCiAgICAgY2FsbCBzOnBvc2l0aW9uX2N1cnNvcigpCkBAIC0yMTEsMTYgKzIxNSwxOCBAQAogICAgIGNvbW1hbmQhIC1uYXJncz0wIE5ld0NoYW5nZWxvZ0VudHJ5IGNhbGwgczpuZXdfY2hhbmdlbG9nX2VudHJ5KCkKICAgZW5kaWYKIAotICBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCB0dzwgZm88IGV0PCBhaTwiCisgIGxldCBiOnVuZG9fZnRwbHVnaW4gPSAic2V0bCBjb208IGZvPCBldDwgYWk8IgogCi0gIGlmICZ0ZXh0d2lkdGggPT0gMAotICAgIHNldGxvY2FsIHRleHR3aWR0aD03OAotICBlbmRpZgogICBzZXRsb2NhbCBjb21tZW50cz0KICAgc2V0bG9jYWwgZm9ybWF0b3B0aW9ucys9dAogICBzZXRsb2NhbCBub2V4cGFuZHRhYgogICBzZXRsb2NhbCBhdXRvaW5kZW50CiAKKyAgaWYgJnRleHR3aWR0aCA9PSAwCisgICAgc2V0bG9jYWwgdGV4dHdpZHRoPTc4CisgICAgbGV0IGI6dW5kb19mdHBsdWdpbiAuPSAiIHR3PCIKKyAgZW5kaWYKKwogICBsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKICAgdW5sZXQgczpjcG9fc2F2ZQogZWxzZQpAQCAtMjI4LDIzICsyMzQsMjAgQEAKICAgbm1hcCA8c2lsZW50PiA8TGVhZGVyPm8gOmNhbGwgPFNJRD5vcGVuX2NoYW5nZWxvZygpPENSPgogCiAgIGZ1bmN0aW9uISBzOm9wZW5fY2hhbmdlbG9nKCkKLSAgICBpZiBmaWxlcmVhZGFibGUoJ0NoYW5nZUxvZycpCi0gICAgICBpZiBidWZsb2FkZWQoJ0NoYW5nZUxvZycpCi0gICAgICAgIGxldCBidWYgPSBidWZucignQ2hhbmdlTG9nJykKLSAgICAgICAgZXhlY3V0ZSAibm9ybWFsISBcPEMtVz50IgotICAgICAgICB3aGlsZSB3aW5idWZucih3aW5ucigpKSAhPSBidWYKLSAgICAgICAgICBleGVjdXRlICJub3JtYWwhIFw8Qy1XPnciCi0gICAgICAgIGVuZHdoaWxlCi0gICAgICBlbHNlCi0gICAgICAgIHNwbGl0IENoYW5nZUxvZwotICAgICAgZW5kaWYKLQotICAgICAgaWYgZXhpc3RzKCJnOm1hcGxlYWRlciIpCi0gICAgICAgIGV4ZWN1dGUgIm5vcm1hbCAiIC4gZzptYXBsZWFkZXIgLiAibyIKLSAgICAgIGVsc2UKLSAgICAgICAgZXhlY3V0ZSAibm9ybWFsIFxcbyIKLSAgICAgIGVuZGlmCi0gICAgICBzdGFydGluc2VydCEKKyAgICBpZiAhZmlsZXJlYWRhYmxlKCdDaGFuZ2VMb2cnKQorICAgICAgcmV0dXJuCiAgICAgZW5kaWYKKyAgICBsZXQgYnVmID0gYnVmbnIoJ0NoYW5nZUxvZycpCisgICAgaWYgYnVmICE9IC0xCisgICAgICBpZiBidWZ3aW5ucihidWYpICE9IC0xCisgICAgICAgIGV4ZWN1dGUgYnVmIC4gJ3dpbmNtZCB3JworICAgICAgZWxzZQorICAgICAgICBleGVjdXRlICdic3BsaXQnIGJ1ZgorICAgICAgZW5kaWYKKyAgICBlbHNlCisgICAgICBzcGxpdCBDaGFuZ2VMb2cKKyAgICBlbmRpZgorCisgICAgY2FsbCBzOm5ld19jaGFuZ2Vsb2dfZW50cnkoKQogICBlbmRmdW5jdGlvbgogZW5kaWYKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vY29uZi52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2NvbmYudmltCmluZGV4IDYwODdjMjEuLjhlMGI3ZjggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vY29uZi52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9jb25mLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGdlbmVyaWMgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2NvbnRleHQudmltIGIvcnVudGltZS9mdHBsdWdpbi9jb250ZXh0LnZpbQppbmRleCAxMGJlMTRjLi5jNzRiZTA3IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2NvbnRleHQudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vY29udGV4dC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBDb25UZVh0IHR5cGVzZXR0aW5nIGVuZ2luZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApAQCAtMTMsNyArMTMsNyBAQAogCiBsZXQgYjp1bmRvX2Z0cGx1Z2luID0gInNldGwgY29tPCBjbXM8IGRlZjwgaW5jPCBzdWE8IGZvPCIKIAotc2V0bG9jYWwgY29tbWVudHM9OiUsYjolRCxiOiVDLGI6JU0gY29tbWVudHN0cmluZz0lXCAlcyBmb3JtYXRvcHRpb25zKz10Y3JvcWwKK3NldGxvY2FsIGNvbW1lbnRzPWI6JUQsYjolQyxiOiVNLDolIGNvbW1lbnRzdHJpbmc9JVwgJXMgZm9ybWF0b3B0aW9ucys9dGNyb3FsCiAKIGxldCAmbDpkZWZpbmU9J1xcXCUoW2VneF1cfGNoYXJcfG1hdGhjaGFyXHxjb3VudFx8ZGltZW5cfG11c2tpcFx8c2tpcFx8dG9rc1wpXD0nCiAgICAgICAgIFwgLiAgICAgJ2RlZlx8XFxmb250XHxcXFwlKGZ1dHVyZVwpXD1sZXQnCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2NybS52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2NybS52aW0KaW5kZXggNzFhZTgzZi4uOGVjNDJhOSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9jcm0udmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vY3JtLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIENSTTExNAotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9jc3MudmltIGIvcnVudGltZS9mdHBsdWdpbi9jc3MudmltCmluZGV4IGQ5ZDkwMDUuLjEzYTBmOWYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vY3NzLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2Nzcy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBDU1MKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vY3ZzcmMudmltIGIvcnVudGltZS9mdHBsdWdpbi9jdnNyYy52aW0KaW5kZXggYmViMjIyZi4uMmE0OWY4ZCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9jdnNyYy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9jdnNyYy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBjdnMoMSkgUkMgZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9kaWN0Y29uZi52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2RpY3Rjb25mLnZpbQppbmRleCBiODE4ZmYxLi42ZWJkOTRhIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2RpY3Rjb25mLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2RpY3Rjb25mLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGRpY3QoMSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0zMAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2RpY3RkY29uZi52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2RpY3RkY29uZi52aW0KaW5kZXggNjgxMTFiMS4uYmRhODc4MiAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9kaWN0ZGNvbmYudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vZGljdGRjb25mLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGRpY3RkKDgpIGNvbmZpZ3VyYXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDEKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9kaXJjb2xvcnMudmltIGIvcnVudGltZS9mdHBsdWdpbi9kaXJjb2xvcnMudmltCmluZGV4IDRiZGE3ZWEuLmJkYmVjYzAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vZGlyY29sb3JzLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2RpcmNvbG9ycy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBkaXJjb2xvcnMoMSkgaW5wdXQgZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9lbGlua3MudmltIGIvcnVudGltZS9mdHBsdWdpbi9lbGlua3MudmltCmluZGV4IGFjMTY0MmQuLmM3YzExZjYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vZWxpbmtzLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2VsaW5rcy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBlbGlua3MoMSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2V0ZXJtLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vZXRlcm0udmltCmluZGV4IDI1N2E0MTUuLmRmNWJmNTAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vZXRlcm0udmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vZXRlcm0udmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgZXRlcm0oMSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2ZldGNobWFpbC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2ZldGNobWFpbC52aW0KaW5kZXggZTlmMTk1Zi4uMTc0ZWQ0NCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9mZXRjaG1haWwudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vZmV0Y2htYWlsLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGZldGNobWFpbCgxKSBSQyBGaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2dwZy52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2dwZy52aW0KaW5kZXggYjY4NDI0NC4uZDRiZWQxNCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9ncGcudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vZ3BnLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGdwZygxKSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vZ3JvdXAudmltIGIvcnVudGltZS9mdHBsdWdpbi9ncm91cC52aW0KaW5kZXggNDQzYzRlYi4uNDQ3YmExOCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9ncm91cC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9ncm91cC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBncm91cCg1KSB1c2VyIGdyb3VwIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vZ3J1Yi52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2dydWIudmltCmluZGV4IDYyMzBlYzMuLjE2MmZjZDMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vZ3J1Yi52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9ncnViLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGdydWIoOCkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2hhc2tlbGwudmltIGIvcnVudGltZS9mdHBsdWdpbi9oYXNrZWxsLnZpbQppbmRleCAxNDFlOTBhLi5hMTZkYWRiIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2hhc2tlbGwudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vaGFza2VsbC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBIYXNrZWxsCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2hlbHAudmltIGIvcnVudGltZS9mdHBsdWdpbi9oZWxwLnZpbQppbmRleCBlMjQzOWJhLi43ZTgyMDgxIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2hlbHAudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vaGVscC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBWaW0gaGVscCBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0yOQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2luZGVudC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2luZGVudC52aW0KaW5kZXggODI2NmU5My4uMjA0N2IxZCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9pbmRlbnQudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vaW5kZW50LnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGluZGVudCgxKSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbGQudmltIGIvcnVudGltZS9mdHBsdWdpbi9sZC52aW0KaW5kZXggZjhiYTU4OS4uNTQ0ZmMwZCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9sZC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9sZC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBsZCgxKSBzY3JpcHQKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbGZ0cC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2xmdHAudmltCmluZGV4IDhiMjZlNTUuLmU4MTY4NGMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vbGZ0cC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9sZnRwLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGxmdHAoMSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL2xpYmFvLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vbGliYW8udmltCmluZGV4IDgzYTAwZjMuLjg4NDViMTcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vbGliYW8udmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vbGliYW8udmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgbGliYW8uY29uZig1KSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbGltaXRzLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vbGltaXRzLnZpbQppbmRleCA1ODYzNzIzLi42YjE4YzgzIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2xpbWl0cy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9saW1pdHMudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgbGltaXRzKDUpIGNvbmZpZ3VyYXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9sb2dpbmFjY2Vzcy52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL2xvZ2luYWNjZXNzLnZpbQppbmRleCA2MTZmZjBiLi5jNWNiMWIxIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2xvZ2luYWNjZXNzLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL2xvZ2luYWNjZXNzLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGxvZ2luLmFjY2Vzcyg1KSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbG9naW5kZWZzLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vbG9naW5kZWZzLnZpbQppbmRleCBlNTFhMzgzLi40MzE3NTVlIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL2xvZ2luZGVmcy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9sb2dpbmRlZnMudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgbG9naW4uZGVmcyg1KSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbTQudmltIGIvcnVudGltZS9mdHBsdWdpbi9tNC52aW0KaW5kZXggMTc1NGZkMC4uODcwMjU4NCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9tNC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9tNC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBtNAotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9tYWlsY2FwLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vbWFpbGNhcC52aW0KaW5kZXggZWMxMTQzZi4uZGY0ZTk5NCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9tYWlsY2FwLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL21haWxjYXAudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgTWFpbGNhcCBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbWFuY29uZi52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL21hbmNvbmYudmltCmluZGV4IGFjNGIxZmEuLjY5Y2Y2ZjUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vbWFuY29uZi52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9tYW5jb25mLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIG1hbi5jb25mKDUpIC0gbWFuIGNvbmZpZ3VyYXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDYtMzAKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9tZi52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL21mLnZpbQppbmRleCBkOWM5YzkwLi5lMzUxYTEzIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL21mLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL21mLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIE1ldGFGb250Ci0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL21vZGNvbmYudmltIGIvcnVudGltZS9mdHBsdWdpbi9tb2Rjb25mLnZpbQppbmRleCBhMzNhOGY2Li45NzEwMmExIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL21vZGNvbmYudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vbW9kY29uZi52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBtb2R1bGVzLmNvbmYoNSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL21wLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vbXAudmltCmluZGV4IGFhZDhkOTUuLjFkNzA5ZWEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vbXAudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vbXAudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgTWV0YVBvc3QKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbXBsYXllcmNvbmYudmltIGIvcnVudGltZS9mdHBsdWdpbi9tcGxheWVyY29uZi52aW0KaW5kZXggMTVmZjIwMS4uZTQxMDY2NyAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9tcGxheWVyY29uZi52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9tcGxheWVyY29uZi52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBtcGxheWVyKDEpIGNvbmZpZ3VyYXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9tdXR0cmMudmltIGIvcnVudGltZS9mdHBsdWdpbi9tdXR0cmMudmltCmluZGV4IDE4NGQ2ZTUuLjE4YjA2ZDggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vbXV0dHJjLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL211dHRyYy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBtdXR0IFJDIEZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vbmFub3JjLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vbmFub3JjLnZpbQppbmRleCA1MzllZTAyLi42N2EyYTQ4IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL25hbm9yYy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9uYW5vcmMudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgbmFub3JjKDUpIC0gR05VIG5hbm8gY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0zMAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL25ldHJjLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vbmV0cmMudmltCmluZGV4IDIwNmRmZDAuLjBmOTQxN2EgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vbmV0cmMudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vbmV0cmMudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgbmV0cmMoNSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3BhbWNvbmYudmltIGIvcnVudGltZS9mdHBsdWdpbi9wYW1jb25mLnZpbQppbmRleCA4NjBjMGQwLi5jZjk3MDdhIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3BhbWNvbmYudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vcGFtY29uZi52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBwYW0oOCkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3Bhc3N3ZC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3Bhc3N3ZC52aW0KaW5kZXggM2IwOGFlNC4uMjBmMmI3ZiAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9wYXNzd2QudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vcGFzc3dkLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHBhc3N3ZCg1KSBwYXNzd29yZCBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3BpbmZvLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vcGluZm8udmltCmluZGV4IGY1NjQ2N2YuLjdmMWVjZGYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vcGluZm8udmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vcGluZm8udmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgcGluZm8oMSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3Byb2NtYWlsLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vcHJvY21haWwudmltCmluZGV4IGYzZWRjMzYuLmE4ZGI1OGUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vcHJvY21haWwudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vcHJvY21haWwudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgcHJvY21haWwoMSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3Byb2xvZy52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3Byb2xvZy52aW0KaW5kZXggZWViYmRhYi4uY2YxOTFhOSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9wcm9sb2cudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vcHJvbG9nLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFByb2xvZwotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9wcm90b2NvbHMudmltIGIvcnVudGltZS9mdHBsdWdpbi9wcm90b2NvbHMudmltCmluZGV4IDJlMDRkODUuLmIzNjc5YmQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vcHJvdG9jb2xzLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3Byb3RvY29scy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBwcm90b2NvbHMoNSkgLSBJbnRlcm5ldCBwcm90b2NvbHMgZGVmaW5pdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0zMAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3F1YWtlLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vcXVha2UudmltCmluZGV4IGU2NThlYjAuLjI1YzZlN2UgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vcXVha2UudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vcXVha2UudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgUXVha2VbMS0zXSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vcmFjYy52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3JhY2MudmltCmluZGV4IDY5NjkwODAuLjcyYzFlMTQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vcmFjYy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9yYWNjLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFJhY2MgaW5wdXQgZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9yZWFkbGluZS52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3JlYWRsaW5lLnZpbQppbmRleCBiZjI5YTQxLi45NjU2YzU3IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3JlYWRsaW5lLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3JlYWRsaW5lLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHJlYWRsaW5lKDMpIGNvbmZpZ3VyYXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9ybmMudmltIGIvcnVudGltZS9mdHBsdWdpbi9ybmMudmltCmluZGV4IGNhODc1YjguLmE1ZDIxZmIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vcm5jLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3JuYy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBSZWxheCBORyBjb21wYWN0IHN5bnRheAotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9yc3QudmltIGIvcnVudGltZS9mdHBsdWdpbi9yc3QudmltCmluZGV4IDdjMjk3YjguLjhmYzI1ZTkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vcnN0LnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3JzdC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICByZVN0cnVjdHVyZWRUZXh0IGRvY3VtZW50YXRpb24gZm9ybWF0Ci0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3NjcmVlbi52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3NjcmVlbi52aW0KaW5kZXggMDNiOWI5OC4uOTJjZTQ3NSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9zY3JlZW4udmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vc2NyZWVuLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHNjcmVlbigxKSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vc2Vuc29ycy52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3NlbnNvcnMudmltCmluZGV4IGQ2NzVjZDkuLmUxZjY2ZmMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vc2Vuc29ycy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9zZW5zb3JzLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHNlbnNvcnMuY29uZig1KSAtIGxpYnNlbnNvcnMgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3NlcnZpY2VzLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vc2VydmljZXMudmltCmluZGV4IGRlN2QxNWUuLmQ2NzBjZDkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vc2VydmljZXMudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vc2VydmljZXMudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgc2VydmljZXMoNSkgLSBJbnRlcm5ldCBuZXR3b3JrIHNlcnZpY2VzIGxpc3QKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTMwCisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vc2V0c2VyaWFsLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vc2V0c2VyaWFsLnZpbQppbmRleCBlYTBjYjk2Li40YjQ3OTZiIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3NldHNlcmlhbC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9zZXRzZXJpYWwudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgc2V0c2VyaWFsKDgpIGNvbmZpZ3VyYXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi9zaWV2ZS52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3NpZXZlLnZpbQppbmRleCAzOWI1ZDc2Li5kOTA2ZTE5IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3NpZXZlLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3NpZXZlLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFNpZXZlIGZpbHRlcmluZyBsYW5ndWFnZSBpbnB1dCBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3NscGNvbmYudmltIGIvcnVudGltZS9mdHBsdWdpbi9zbHBjb25mLnZpbQppbmRleCBkZWE1ZGZkLi44YzkyYTU1IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3NscGNvbmYudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vc2xwY29uZi52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBSRkMgMjYxNCAtIEFuIEFQSSBmb3IgU2VydmljZSBMb2NhdGlvbiBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vc2xwcmVnLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vc2xwcmVnLnZpbQppbmRleCA3MWU4NjViLi4wN2U0MmMxIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3NscHJlZy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9zbHByZWcudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgUkZDIDI2MTQgLSBBbiBBUEkgZm9yIFNlcnZpY2UgTG9jYXRpb24gcmVnaXN0cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vc2xwc3BpLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vc2xwc3BpLnZpbQppbmRleCAxODFhN2VjLi5kNmE2NzUxIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3NscHNwaS52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9zbHBzcGkudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgUkZDIDI2MTQgLSBBbiBBUEkgZm9yIFNlcnZpY2UgTG9jYXRpb24gU1BJIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vc3NoY29uZmlnLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vc3NoY29uZmlnLnZpbQppbmRleCBmMDJiYzdhLi4zNTUyNjk2IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3NzaGNvbmZpZy52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9zc2hjb25maWcudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgT3BlblNTSCBjbGllbnQgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3N1ZG9lcnMudmltIGIvcnVudGltZS9mdHBsdWdpbi9zdWRvZXJzLnZpbQppbmRleCAzMGMxZjVjLi5hNjk4ZjA0IDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3N1ZG9lcnMudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vc3Vkb2Vycy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBzdWRvZXJzKDUpIGNvbmZpZ3VyYXRpb24gZmlsZXMKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vc3lzY3RsLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vc3lzY3RsLnZpbQppbmRleCA5MDYxOGY5Li42YjFhYzZjIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3N5c2N0bC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9zeXNjdGwudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgc3lzY3RsLmNvbmYoNSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3Rlcm1pbmZvLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vdGVybWluZm8udmltCmluZGV4IDgyMmNhYzQuLmE0NzNiY2QgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vdGVybWluZm8udmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vdGVybWluZm8udmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgdGVybWluZm8oNSkgZGVmaW5pdGlvbgotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi91ZGV2Y29uZi52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3VkZXZjb25mLnZpbQppbmRleCBiN2E3Zjg0Li5jMGEwOTgyIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3VkZXZjb25mLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3VkZXZjb25mLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHVkZXYoOCkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wMQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3VkZXZwZXJtLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4vdWRldnBlcm0udmltCmluZGV4IDU4NGE0ZTcuLjgyNjAyYjEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vdWRldnBlcm0udmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vdWRldnBlcm0udmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgdWRldig4KSBwZXJtaXNzaW9ucyBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wMQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3VkZXZydWxlcy52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3VkZXZydWxlcy52aW0KaW5kZXggMjljMDJiMC4uM2NiNGMzMyAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi91ZGV2cnVsZXMudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4vdWRldnJ1bGVzLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHVkZXYoOCkgcnVsZXMgZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDEKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi91cGRhdGVkYi52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3VwZGF0ZWRiLnZpbQppbmRleCAyMDM1NDYyLi5kYjM1ZmVlIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3VwZGF0ZWRiLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3VwZGF0ZWRiLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHVwZGF0ZWRiLmNvbmYoNSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3hkZWZhdWx0cy52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3hkZWZhdWx0cy52aW0KaW5kZXggZTY1Y2ZkZC4uYjQ0MWRmZSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi94ZGVmYXVsdHMudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4veGRlZmF1bHRzLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFggcmVzb3VyY2VzIGZpbGVzIGxpa2Ugfi8uWGRlZmF1bHRzICh4cmRiKQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi94Zjg2Y29uZi52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3hmODZjb25mLnZpbQppbmRleCAyOTczZGNkLi4yOWU5ZWFjIDEwMDY0NAotLS0gYS9ydW50aW1lL2Z0cGx1Z2luL3hmODZjb25mLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3hmODZjb25mLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFhGcmVlODYgQ29uZmlndXJhdGlvbiBGaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2Z0cGx1Z2luL3hpbmV0ZC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3hpbmV0ZC52aW0KaW5kZXggYjc4OWE5ZC4uYjYyZGVjNSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi94aW5ldGQudmltCisrKyBiL3J1bnRpbWUvZnRwbHVnaW4veGluZXRkLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHhpbmV0ZC5jb25mKDUpIGNvbmZpZ3VyYXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi94bW9kbWFwLnZpbSBiL3J1bnRpbWUvZnRwbHVnaW4veG1vZG1hcC52aW0KaW5kZXggYzliZGVjNC4uYTBkOTEzZSAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi94bW9kbWFwLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3htb2RtYXAudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luIGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgeG1vZG1hcCgxKSBkZWZpbml0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfZnRwbHVnaW4iKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4veWFtbC52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3lhbWwudmltCmluZGV4IDBiNzdmNjcuLmEyODkzY2QgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4veWFtbC52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi95YW1sLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbiBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFlBTUwgKFlBTUwgQWluJ3QgTWFya3VwIExhbmd1YWdlKQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9mdHBsdWdpbiIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9mdHBsdWdpbi96c2gudmltIGIvcnVudGltZS9mdHBsdWdpbi96c2gudmltCmluZGV4IGNkODJmYTQuLmM4ZjgyYTUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4venNoLnZpbQorKysgYi9ydW50aW1lL2Z0cGx1Z2luL3pzaC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBmaWxldHlwZSBwbHVnaW4gZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBac2ggc2hlbGwgc2NyaXB0Ci0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2Z0cGx1Z2luIikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2luZGVudC9hdXRvbWFrZS52aW0gYi9ydW50aW1lL2luZGVudC9hdXRvbWFrZS52aW0KaW5kZXggMGY4ZGJhZC4uMjhkNzdhOCAxMDA2NDQKLS0tIGEvcnVudGltZS9pbmRlbnQvYXV0b21ha2UudmltCisrKyBiL3J1bnRpbWUvaW5kZW50L2F1dG9tYWtlLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGluZGVudCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGF1dG9tYWtlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0yOQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2luZGVudCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvY21ha2UudmltIGIvcnVudGltZS9pbmRlbnQvY21ha2UudmltCmluZGV4IGUzNjkzN2QuLmExYWQ4MzIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvaW5kZW50L2NtYWtlLnZpbQorKysgYi9ydW50aW1lL2luZGVudC9jbWFrZS52aW0KQEAgLTU2LDcgKzU2LDcgQEAKICAgICAgICAgICAgICAgICAgICAgXCAgICAgICBvciAuICdbXigpXFwjIl0nIC4gb3IgLiAnXFwuJyAuICdcKSonCiAKICAgbGV0IGNtYWtlX2luZGVudF9jb21tZW50X2xpbmUgPSAnXlxzKicgLiBjbWFrZV9yZWdleF9jb21tZW50Ci0gIGxldCBjbWFrZV9pbmRlbnRfYmxhbmtfcmVnZXggPSAnXlxzKiQnKQorICBsZXQgY21ha2VfaW5kZW50X2JsYW5rX3JlZ2V4ID0gJ15ccyokJwogICBsZXQgY21ha2VfaW5kZW50X29wZW5fcmVnZXggPSAnXlxzKicgLiBjbWFrZV9yZWdleF9pZGVudGlmaWVyIC4KICAgICAgICAgICAgICAgICAgICAgXCAgICAgICAgICAgJ1xzKignIC4gY21ha2VfcmVnZXhfYXJndW1lbnRzIC4KICAgICAgICAgICAgICAgICAgICAgXCAgICAgICAgICAgJ1woJyAuIGNtYWtlX3JlZ2V4X2NvbW1lbnQgLiAnXClcPyQnCkBAIC02NSw4ICs2NSw4IEBACiAgICAgICAgICAgICAgICAgICAgIFwgICAgICAgICAgICAnKVxzKicgLgogICAgICAgICAgICAgICAgICAgICBcICAgICAgICAgICAgJ1woJyAuIGNtYWtlX3JlZ2V4X2NvbW1lbnQgLiAnXClcPyQnCiAKLSAgbGV0IGNtYWtlX2luZGVudF9iZWdpbl9yZWdleCA9ICdeXHMqXChJRlx8TUFDUk9cfEZPUkVBQ0hcfEVMU0VcKVxzKignCi0gIGxldCBjbWFrZV9pbmRlbnRfZW5kX3JlZ2V4ID0gJ15ccypcKEVORElGXHxFTkRGT1JFQUNIXHxFTkRNQUNST1x8RUxTRVwpXHMqKCcKKyAgbGV0IGNtYWtlX2luZGVudF9iZWdpbl9yZWdleCA9ICdeXHMqXChJRlx8TUFDUk9cfEZPUkVBQ0hcfEVMU0VcfFdISUxFXClccyooJworICBsZXQgY21ha2VfaW5kZW50X2VuZF9yZWdleCA9ICdeXHMqXChFTkRJRlx8RU5ERk9SRUFDSFx8RU5ETUFDUk9cfEVMU0VcfEVORFdISUxFXClccyooJwogCiAgICIgQWRkCiAgIGlmIHByZXZpb3VzX2xpbmUgPX4/IGNtYWtlX2luZGVudF9jb21tZW50X2xpbmUgIiBIYW5kbGUgY29tbWVudHMKZGlmZiAtLWdpdCBhL3J1bnRpbWUvaW5kZW50L2NvbmZpZy52aW0gYi9ydW50aW1lL2luZGVudC9jb25maWcudmltCmluZGV4IGM2YzU0YjIuLmQ3NjNkYjAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvaW5kZW50L2NvbmZpZy52aW0KKysrIGIvcnVudGltZS9pbmRlbnQvY29uZmlnLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGluZGVudCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIEF1dG9jb25mIGNvbmZpZ3VyZS57YWMsaW59IGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTAyLTExCisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAiIFRPRE86ICAgICAgICAgICAgIGhvdyBhYm91dCBuZXN0ZWQgWygpXSdzIGluIG9uZSBsaW5lCiAiICAgICAgICAgICAgICAgICAgIHdoYXQncyB3cm9uZyB3aXRoICdcXFxAISc/CiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvaW5kZW50L2Nzcy52aW0gYi9ydW50aW1lL2luZGVudC9jc3MudmltCmluZGV4IGIwNTYwYjQuLjhjNmYxMTQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvaW5kZW50L2Nzcy52aW0KKysrIGIvcnVudGltZS9pbmRlbnQvY3NzLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGluZGVudCBmaWxlCiAiIExhbmd1YWdlOgkgICAgQ1NTCi0iIE1haW50YWluZXI6CSAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDYtMzAKKyIgTWFpbnRhaW5lcjoJICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfaW5kZW50IikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2luZGVudC9kaWN0Y29uZi52aW0gYi9ydW50aW1lL2luZGVudC9kaWN0Y29uZi52aW0KaW5kZXggZGNhZjFlMS4uYWRiMDk2MSAxMDA2NDQKLS0tIGEvcnVudGltZS9pbmRlbnQvZGljdGNvbmYudmltCisrKyBiL3J1bnRpbWUvaW5kZW50L2RpY3Rjb25mLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGluZGVudCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGRpY3QoMSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0zMAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2luZGVudCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvZGljdGRjb25mLnZpbSBiL3J1bnRpbWUvaW5kZW50L2RpY3RkY29uZi52aW0KaW5kZXggZjhmNTY3MC4uMjM1Y2VjZCAxMDA2NDQKLS0tIGEvcnVudGltZS9pbmRlbnQvZGljdGRjb25mLnZpbQorKysgYi9ydW50aW1lL2luZGVudC9kaWN0ZGNvbmYudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gaW5kZW50IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgZGljdGQoOCkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wMQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2luZGVudCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvZG9jYmsudmltIGIvcnVudGltZS9pbmRlbnQvZG9jYmsudmltCmluZGV4IDU3NWI5MWYuLmI4YWY1ZjIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvaW5kZW50L2RvY2JrLnZpbQorKysgYi9ydW50aW1lL2luZGVudC9kb2Niay52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBpbmRlbnQgZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBEb2NCb29rIERvY3VtZW50YXRpb24gRm9ybWF0Ci0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0yOQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2luZGVudCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvZXRlcm0udmltIGIvcnVudGltZS9pbmRlbnQvZXRlcm0udmltCmluZGV4IDkzOGI5NGEuLjczMDkyNDAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvaW5kZW50L2V0ZXJtLnZpbQorKysgYi9ydW50aW1lL2luZGVudC9ldGVybS52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBpbmRlbnQgZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBFdGVybSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTI5CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfaW5kZW50IikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2luZGVudC9sZC52aW0gYi9ydW50aW1lL2luZGVudC9sZC52aW0KaW5kZXggNDQwYjEwNi4uZTUwYjcwMyAxMDA2NDQKLS0tIGEvcnVudGltZS9pbmRlbnQvbGQudmltCisrKyBiL3J1bnRpbWUvaW5kZW50L2xkLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGluZGVudCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGxkKDEpIHNjcmlwdAotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDYtMzAKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9pbmRlbnQiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvaW5kZW50L21ha2UudmltIGIvcnVudGltZS9pbmRlbnQvbWFrZS52aW0KaW5kZXggOWRiNzdmMC4uNTg1MDQ5MiAxMDA2NDQKLS0tIGEvcnVudGltZS9pbmRlbnQvbWFrZS52aW0KKysrIGIvcnVudGltZS9pbmRlbnQvbWFrZS52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBpbmRlbnQgZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBNYWtlZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDYtMjkKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9pbmRlbnQiKQogICBmaW5pc2gKQEAgLTE1LDE4ICsxNSw5IEBACiAgIGZpbmlzaAogZW5kaWYKIAotZnVuY3Rpb24gczpHZXRTdHJpbmdXaWR0aChsaW5lLCBzdHIpCi0gIGxldCBlbmQgPSBtYXRjaGVuZChhOmxpbmUsIGE6c3RyKQotICBsZXQgd2lkdGggPSAwCi0gIGZvciBjIGluIGE6bGluZQotICAgIGlmIGMgPT0gIlx0IgotICAgICAgbGV0IHdpZHRoICs9ICZ0cyAtICh3aWR0aCAlICZ0cykKLSAgICBlbHNlCi0gICAgICBsZXQgd2lkdGggKz0gMQotICAgIGVuZGlmCi0gIGVuZGZvcgotICByZXR1cm4gd2lkdGgKLWVuZGZ1bmN0aW9uCitsZXQgczpydWxlX3J4ID0gJ15bXiBcdCM6XVteIzpdKjpcezEsMn1cJShbXj06XVx8JFwpJworbGV0IHM6Y29udGludWF0aW9uX3J4ID0gJ1xcJCcKK2xldCBzOmFzc2lnbm1lbnRfcnggPSAnXlxzKlxoXHcqXHMqK1w9PVxzKlx6cy4qXFwkJwogCiBmdW5jdGlvbiBHZXRNYWtlSW5kZW50KCkKICAgbGV0IGxudW0gPSB2OmxudW0gLSAxCkBAIC0zNSwxMSArMjYsMjcgQEAKICAgZW5kaWYKIAogICBsZXQgbGluZSA9IGdldGxpbmUobG51bSkKLSAgaWYgbGluZSA9PSAnJwotICAgIHJldHVybiAwCi0gIGVsc2VpZiBsaW5lID1+ICdeW14gXHQjOl1bXiM6XSo6XHsxLDJ9XCUoW149Ol1cfCRcKScKLSAgICByZXR1cm4gaW5kZW50KGxudW0pICsgJnRzCi0gIGVsc2VpZiBsaW5lID1+ICdeXHMqXGhcdypccyorXD09XHMqLlwrXFwkJwotICAgIHJldHVybiBzOkdldFN0cmluZ1dpZHRoKGxpbmUsICcrXD09XHMqJykKKyAgbGV0IGluZCA9IGluZGVudChsbnVtKQorCisgIGlmIGxpbmUgPX4gczpydWxlX3J4CisgICAgcmV0dXJuIGluZCArICZ0cworICBlbHNlaWYgbGluZSA9fiBzOmNvbnRpbnVhdGlvbl9yeAorICAgIHdoaWxlIGxudW0gPiAwICYmIGxpbmUgPX4gczpjb250aW51YXRpb25fcnggJiYgbGluZSAhfiBzOmFzc2lnbm1lbnRfcngKKyAgICAgIGxldCBsbnVtIC09IDEKKyAgICAgIGxldCBsaW5lID0gZ2V0bGluZShsbnVtKQorICAgIGVuZHdoaWxlCisgICAgaWYgbGluZSA9fiBzOmFzc2lnbm1lbnRfcngKKyAgICAgIGNhbGwgY3Vyc29yKGxudW0sIDEpCisgICAgICByZXR1cm4gc2VhcmNoKHM6YXNzaWdubWVudF9yeCwgJ1cnKSAhPSAwID8gdmlydGNvbCgnLicpIC0gMSA6IDAKKyAgICBlbHNlCisgICAgICByZXR1cm4gMAorICAgIGVuZGlmCisgIGVsc2UKKyAgICBsZXQgcG51bSA9IGxudW0gLSAxCisgICAgaWYgcG51bSA9PSAwCisgICAgICByZXR1cm4gaW5kCisgICAgZW5kaWYKKworICAgIHJldHVybiBnZXRsaW5lKHBudW0pID1+IHM6Y29udGludWF0aW9uX3J4ID8gMCA6IGluZAogICBlbmRpZgogZW5kZnVuY3Rpb24KZGlmZiAtLWdpdCBhL3J1bnRpbWUvaW5kZW50L3B5dGhvbi52aW0gYi9ydW50aW1lL2luZGVudC9weXRob24udmltCmluZGV4IGYyNjhiZjkuLjRiOGU4MWIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvaW5kZW50L3B5dGhvbi52aW0KKysrIGIvcnVudGltZS9pbmRlbnQvcHl0aG9uLnZpbQpAQCAtMiw3ICsyLDcgQEAKICIgTGFuZ3VhZ2U6CQlQeXRob24KICIgTWFpbnRhaW5lcjoJCUJyYW0gTW9vbGVuYWFyIDxCcmFtQHZpbS5vcmc+CiAiIE9yaWdpbmFsIEF1dGhvcjoJRGF2aWQgQnVzdG9zIDxidXN0b3NAY2FsdGVjaC5lZHU+Ci0iIExhc3QgQ2hhbmdlOgkJMjAwNiBNYXIgMjYKKyIgTGFzdCBDaGFuZ2U6CQkyMDA2IEFwciAyMQogCiAiIE9ubHkgbG9hZCB0aGlzIGluZGVudCBmaWxlIHdoZW4gbm8gb3RoZXIgd2FzIGxvYWRlZC4KIGlmIGV4aXN0cygiYjpkaWRfaW5kZW50IikKZGlmZiAtLWdpdCBhL3J1bnRpbWUvaW5kZW50L3JlYWRsaW5lLnZpbSBiL3J1bnRpbWUvaW5kZW50L3JlYWRsaW5lLnZpbQppbmRleCA1MmQyYTcxLi45NGU0ZWE0IDEwMDY0NAotLS0gYS9ydW50aW1lL2luZGVudC9yZWFkbGluZS52aW0KKysrIGIvcnVudGltZS9pbmRlbnQvcmVhZGxpbmUudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gaW5kZW50IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgcmVhZGxpbmUgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0yOQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2luZGVudCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvcnN0LnZpbSBiL3J1bnRpbWUvaW5kZW50L3JzdC52aW0KaW5kZXggZjk4ZTc1NS4uYWM1ZTliYiAxMDA2NDQKLS0tIGEvcnVudGltZS9pbmRlbnQvcnN0LnZpbQorKysgYi9ydW50aW1lL2luZGVudC9yc3QudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gaW5kZW50IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgcmVTdHJ1Y3R1cmVkVGV4dCBEb2N1bWVudGF0aW9uIEZvcm1hdAotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDYtMjkKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9pbmRlbnQiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvaW5kZW50L3NoLnZpbSBiL3J1bnRpbWUvaW5kZW50L3NoLnZpbQppbmRleCBiNmNlNzc0Li43OTE5YzA5IDEwMDY0NAotLS0gYS9ydW50aW1lL2luZGVudC9zaC52aW0KKysrIGIvcnVudGltZS9pbmRlbnQvc2gudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gaW5kZW50IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgU2hlbGwgU2NyaXB0Ci0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0yOQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6ZGlkX2luZGVudCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvc21sLnZpbSBiL3J1bnRpbWUvaW5kZW50L3NtbC52aW0KaW5kZXggMzBkMzEwOC4uZmJiYjE1ZSAxMDA2NDQKLS0tIGEvcnVudGltZS9pbmRlbnQvc21sLnZpbQorKysgYi9ydW50aW1lL2luZGVudC9zbWwudmltCkBAIC0xMzAsMTQgKzEzMCwxNiBAQAogCWVsc2VpZiBsaW5lID1+ICdeXHMqZWxzZVw+JwogCSAgCWlmIGxsaW5lICF+ICdeXHMqXChpZlx8ZWxzZVx8dGhlblwpXD4nCiAJCQkJcmV0dXJuIHM6RmluZFBhaXIoJ1w8aWZcPicsICcnLCAnXDx0aGVuXD4nKQotCSAgCWVsc2UgcmV0dXJuIGluZAorCSAgCWVsc2UKKwkJICByZXR1cm4gaW5kCiAJCWVuZGlmCiAKIAkiIE1hdGNoICd0aGVuJyB3aXRoICdpZicKIAllbHNlaWYgbGluZSA9fiAnXlxzKnRoZW5cPicKICAgCWlmIGxsaW5lICF+ICdeXHMqXChpZlx8ZWxzZVx8dGhlblwpXD4nCiAJCSAgcmV0dXJuIHM6RmluZFBhaXIoJ1w8aWZcPicsICcnLCAnXDx0aGVuXD4nKQotCWVsc2UgcmV0dXJuIGluZAorCWVsc2UKKwkgIHJldHVybiBpbmQKIAllbmRpZgogCiAJIiBJbmRlbnQgaWYgY3VycmVudCBsaW5lIGJlZ2lucyB3aXRoICddJwpkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvdGNsLnZpbSBiL3J1bnRpbWUvaW5kZW50L3RjbC52aW0KaW5kZXggNTQ2YjYwZC4uMWIwY2MxNiAxMDA2NDQKLS0tIGEvcnVudGltZS9pbmRlbnQvdGNsLnZpbQorKysgYi9ydW50aW1lL2luZGVudC90Y2wudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gaW5kZW50IGZpbGUKICIgTGFuZ3VhZ2U6CSAgICBUY2wKLSIgTWFpbnRhaW5lcjoJICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0zMAorIiBNYWludGFpbmVyOgkgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmRpZF9pbmRlbnQiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvaW5kZW50L3hmODZjb25mLnZpbSBiL3J1bnRpbWUvaW5kZW50L3hmODZjb25mLnZpbQppbmRleCBmMWYxYzhlLi41YjJiZTZkIDEwMDY0NAotLS0gYS9ydW50aW1lL2luZGVudC94Zjg2Y29uZi52aW0KKysrIGIvcnVudGltZS9pbmRlbnQveGY4NmNvbmYudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gaW5kZW50IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgWEZyZWU4NiBDb25maWd1cmF0aW9uIEZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTI5CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfaW5kZW50IikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2luZGVudC94aW5ldGQudmltIGIvcnVudGltZS9pbmRlbnQveGluZXRkLnZpbQppbmRleCA2ODM4MTYzLi4zOThlMDVhIDEwMDY0NAotLS0gYS9ydW50aW1lL2luZGVudC94aW5ldGQudmltCisrKyBiL3J1bnRpbWUvaW5kZW50L3hpbmV0ZC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBpbmRlbnQgZmlsZQogIiBMYW5ndWFnZTogICAgICAgICB4aW5ldGQuY29uZig1KSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTI4CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfaW5kZW50IikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2luZGVudC95YWNjLnZpbSBiL3J1bnRpbWUvaW5kZW50L3lhY2MudmltCmluZGV4IDlkMDc5OGQuLmQxMDBjZWIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvaW5kZW50L3lhY2MudmltCisrKyBiL3J1bnRpbWUvaW5kZW50L3lhY2MudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gaW5kZW50IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgWUFDQyBpbnB1dCBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0yOQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiAiIE9ubHkgbG9hZCB0aGlzIGluZGVudCBmaWxlIHdoZW4gbm8gb3RoZXIgd2FzIGxvYWRlZC4KIGlmIGV4aXN0cygiYjpkaWRfaW5kZW50IikKZGlmZiAtLWdpdCBhL3J1bnRpbWUvaW5kZW50L3pzaC52aW0gYi9ydW50aW1lL2luZGVudC96c2gudmltCmluZGV4IDcyYjAwYjguLjViZjIzMTUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvaW5kZW50L3pzaC52aW0KKysrIGIvcnVudGltZS9pbmRlbnQvenNoLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIGluZGVudCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFpzaCBTaGVsbCBTY3JpcHQKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTI5CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpkaWRfaW5kZW50IikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL2tleW1hcC9wZXJzaWFuLWlyYW5pYW5fdXRmLTgudmltIGIvcnVudGltZS9rZXltYXAvcGVyc2lhbi1pcmFuaWFuX3V0Zi04LnZpbQppbmRleCAyY2Q1Njk5Li5lOGRjZDc2IDEwMDY0NAotLS0gYS9ydW50aW1lL2tleW1hcC9wZXJzaWFuLWlyYW5pYW5fdXRmLTgudmltCisrKyBiL3J1bnRpbWUva2V5bWFwL3BlcnNpYW4taXJhbmlhbl91dGYtOC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBLZXltYXAgZmlsZSBmb3IgUGVyc2lhbiBTdGFuZGFyZCBLZXlib2FyZCBMYXlvdXQKICIgTWFpbnRhaW5lcnM6IEJlaG5hbSAnWldOSicgRXNmYWhib2QgPGJlaG5hbUB6d25qLm9yZz4sCiAiCSAgICAgICBBbWlyIEhlZGF5YXR5IDxoZWRheWF0eUBnbWFpbC5jb20+Ci0iIExhc3QgQ2hhbmdlOiAyMDA1IE5vdiAzMAorIiBMYXN0IENoYW5nZTogMjAwNiBBcHIgMjEKIAogc2NyaXB0ZW5jb2RpbmcgdXRmLTgKIApAQCAtNTgsNyArNTgsNyBAQAogLAnZiAogLgkuCiAvCS8KLVwJXAorXFwJXFwKIAogfgnDtwogIQkhCmRpZmYgLS1naXQgYS9ydW50aW1lL2xhbmcvbWVudV9jaGluZXNlX2diLjkzNi52aW0gYi9ydW50aW1lL2xhbmcvbWVudV9jaGluZXNlX2diLjkzNi52aW0KaW5kZXggNTVhMjQ0Mi4uZDExYTRiMiAxMDA2NDQKLS0tIGEvcnVudGltZS9sYW5nL21lbnVfY2hpbmVzZV9nYi45MzYudmltCisrKyBiL3J1bnRpbWUvbGFuZy9tZW51X2NoaW5lc2VfZ2IuOTM2LnZpbQpAQCAtNTIsNyArNTIsNyBAQAogbWVudXRyYW5zIFB1dFwgJkJlZm9yZTxUYWI+W3AJCdWzzPm1vbniserHsCgmQik8VGFiPltwCiBtZW51dHJhbnMgUHV0XCAmQWZ0ZXI8VGFiPl1wCQnVs8z5tb254rHquvMoJkEpPFRhYj5dcAogbWVudXRyYW5zICZEZWxldGU8VGFiPngJCQnJvrP9KCZEKTxUYWI+eAotbWVudXRyYW5zICZTZWxlY3RcIGFsbDxUYWI+Z2dWRwkJyKvRoSgmUyk8VGFiPmdnVkcKK21lbnV0cmFucyAmU2VsZWN0XCBBbGw8VGFiPmdnVkcJCcir0aEoJlMpPFRhYj5nZ1ZHCiBtZW51dHJhbnMgJkZpbmRcLlwuXC4JCQmy6dXSKCZGKVwuXC5cLgogbWVudXRyYW5zIEZpbmRcIGFuZFwgUmVwJmxhY2VcLlwuXC4JsunV0rrNzOa7uygmTClcLlwuXC4KIG1lbnV0cmFucyAmRmluZDxUYWI+LwkJCbLp1dIoJkYpPFRhYj4vCmRpZmYgLS1naXQgYS9ydW50aW1lL2xhbmcvbWVudV96aF9jbi5nYjIzMTIudmltIGIvcnVudGltZS9sYW5nL21lbnVfemhfY24uZ2IyMzEyLnZpbQppbmRleCA3ODg0MGVjLi4xZWMwZmJkIDEwMDY0NAotLS0gYS9ydW50aW1lL2xhbmcvbWVudV96aF9jbi5nYjIzMTIudmltCisrKyBiL3J1bnRpbWUvbGFuZy9tZW51X3poX2NuLmdiMjMxMi52aW0KQEAgLTUyLDcgKzUyLDcgQEAKIG1lbnV0cmFucyBQdXRcICZCZWZvcmU8VGFiPltwCQnVs8z5tb254rHqx7AoJkIpPFRhYj5bcAogbWVudXRyYW5zIFB1dFwgJkFmdGVyPFRhYj5dcAkJ1bPM+bW9ueKx6rrzKCZBKTxUYWI+XXAKIG1lbnV0cmFucyAmRGVsZXRlPFRhYj54CQkJyb6z/SgmRCk8VGFiPngKLW1lbnV0cmFucyAmU2VsZWN0XCBhbGw8VGFiPmdnVkcJCcir0aEoJlMpPFRhYj5nZ1ZHCittZW51dHJhbnMgJlNlbGVjdFwgQWxsPFRhYj5nZ1ZHCQnIq9GhKCZTKTxUYWI+Z2dWRwogbWVudXRyYW5zICZGaW5kXC5cLlwuCQkJsunV0igmRilcLlwuXC4KIG1lbnV0cmFucyBGaW5kXCBhbmRcIFJlcCZsYWNlXC5cLlwuCbLp1dK6zczmu7soJkwpXC5cLlwuCiBtZW51dHJhbnMgJkZpbmQ8VGFiPi8JCQmy6dXSKCZGKTxUYWI+LwpkaWZmIC0tZ2l0IGEvcnVudGltZS9sYW5nL21lbnVfemhfY24udXRmLTgudmltIGIvcnVudGltZS9sYW5nL21lbnVfemhfY24udXRmLTgudmltCmluZGV4IDBkZjMyNDIuLmQzZWRkNTggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvbGFuZy9tZW51X3poX2NuLnV0Zi04LnZpbQorKysgYi9ydW50aW1lL2xhbmcvbWVudV96aF9jbi51dGYtOC52aW0KQEAgLTUyLDcgKzUyLDcgQEAKIG1lbnV0cmFucyBQdXRcICZCZWZvcmU8VGFiPltwCQnnspjotLTliLDlhYnmoIfliY0oJkIpPFRhYj5bcAogbWVudXRyYW5zIFB1dFwgJkFmdGVyPFRhYj5dcAkJ57KY6LS05Yiw5YWJ5qCH5ZCOKCZBKTxUYWI+XXAKIG1lbnV0cmFucyAmRGVsZXRlPFRhYj54CQkJ5Yig6ZmkKCZEKTxUYWI+eAotbWVudXRyYW5zICZTZWxlY3RcIGFsbDxUYWI+Z2dWRwkJ5YWo6YCJKCZTKTxUYWI+Z2dWRworbWVudXRyYW5zICZTZWxlY3RcIEFsbDxUYWI+Z2dWRwkJ5YWo6YCJKCZTKTxUYWI+Z2dWRwogbWVudXRyYW5zICZGaW5kXC5cLlwuCQkJ5p+l5om+KCZGKVwuXC5cLgogbWVudXRyYW5zIEZpbmRcIGFuZFwgUmVwJmxhY2VcLlwuXC4J5p+l5om+5ZKM5pu/5o2iKCZMKVwuXC5cLgogbWVudXRyYW5zICZGaW5kPFRhYj4vCQkJ5p+l5om+KCZGKTxUYWI+LwpkaWZmIC0tZ2l0IGEvcnVudGltZS9tYWtlbWVudS52aW0gYi9ydW50aW1lL21ha2VtZW51LnZpbQppbmRleCA4NDUzOTNkLi41YWE3NGZhIDEwMDY0NAotLS0gYS9ydW50aW1lL21ha2VtZW51LnZpbQorKysgYi9ydW50aW1lL21ha2VtZW51LnZpbQpAQCAtMSw2ICsxLDYgQEAKICIgU2NyaXB0IHRvIGRlZmluZSB0aGUgc3ludGF4IG1lbnUgaW4gc3lubWVudS52aW0KICIgTWFpbnRhaW5lcjoJQnJhbSBNb29sZW5hYXIgPEJyYW1AdmltLm9yZz4KLSIgTGFzdCBDaGFuZ2U6CTIwMDYgQXByIDE4CisiIExhc3QgQ2hhbmdlOgkyMDA2IEFwciAyMQogCiAiIFRoaXMgaXMgdXNlZCBieSAibWFrZSBtZW51IiBpbiB0aGUgc3JjIGRpcmVjdG9yeS4KIGVkaXQgPHNmaWxlPjpwOmgvc3lubWVudS52aW0KQEAgLTExNiw2ICsxMTYsNyBAQAogU3luTWVudSBDLkNoYW5nZUxvZzpjaGFuZ2Vsb2cKIFN5bk1lbnUgQy5DaGVldGFoXCB0ZW1wbGF0ZTpjaGVldGFoCiBTeW5NZW51IEMuQ0hJTEw6Y2hpbGwKK1N5bk1lbnUgQy5DaG9yZFBybzpjaG9yZHBybwogU3luTWVudSBDLkNsZWFuOmNsZWFuCiBTeW5NZW51IEMuQ2xldmVyOmNsCiBTeW5NZW51IEMuQ2xpcHBlcjpjbGlwcGVyCmRpZmYgLS1naXQgYS9ydW50aW1lL29wdHdpbi52aW0gYi9ydW50aW1lL29wdHdpbi52aW0KaW5kZXggNzhkZjFkZS4uMzU5NWUxNSAxMDA2NDQKLS0tIGEvcnVudGltZS9vcHR3aW4udmltCisrKyBiL3J1bnRpbWUvb3B0d2luLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVGhlc2UgY29tbWFuZHMgY3JlYXRlIHRoZSBvcHRpb24gd2luZG93LgogIgogIiBNYWludGFpbmVyOglCcmFtIE1vb2xlbmFhciA8QnJhbUB2aW0ub3JnPgotIiBMYXN0IENoYW5nZToJMjAwNiBNYXIgMTgKKyIgTGFzdCBDaGFuZ2U6CTIwMDYgQXByIDIxCiAKICIgSWYgdGhlcmUgYWxyZWFkeSBpcyBhbiBvcHRpb24gd2luZG93LCBqdW1wIHRvIHRoYXQgb25lLgogaWYgYnVmd2lubnIoIm9wdGlvbi13aW5kb3ciKSA+IDAKQEAgLTQ4MSw2ICs0ODEsOCBAQAogY2FsbCA8U0lEPk9wdGlvbkcoInRhbCIsICZ0YWwpCiBjYWxsIGFwcGVuZCgiJCIsICJndWl0YWJsYWJlbFx0Y3VzdG9tIHRhYiBwYWdlIGxhYmVsIGZvciB0aGUgR1VJIikKIGNhbGwgPFNJRD5PcHRpb25HKCJndGwiLCAmZ3RsKQorY2FsbCBhcHBlbmQoIiQiLCAiZ3VpdGFidG9vbHRpcFx0Y3VzdG9tIHRhYiBwYWdlIHRvb2x0aXAgZm9yIHRoZSBHVUkiKQorY2FsbCA8U0lEPk9wdGlvbkcoImd0dCIsICZndHQpCiAKIAogY2FsbCA8U0lEPkhlYWRlcigidGVybWluYWwiKQpkaWZmIC0tZ2l0IGEvcnVudGltZS9zcGVsbC9lcy9lc19FUy5kaWZmIGIvcnVudGltZS9zcGVsbC9lcy9lc19FUy5kaWZmCmluZGV4IDEzYzZlMTUuLmNjNGYzZmIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3BlbGwvZXMvZXNfRVMuZGlmZgorKysgYi9ydW50aW1lL3NwZWxsL2VzL2VzX0VTLmRpZmYKQEAgLTEsOCArMSw4IEBACi0qKiogZXNfRVMub3JpZy5hZmYJVGh1IEF1ZyAyNSAxOToxOTo0NCAyMDA1Ci0tLS0gZXNfRVMuYWZmCVRodSBBdWcgMjUgMTk6MTk6NDQgMjAwNQorKioqIGVzX0VTLm9yaWcuYWZmCUZyaSBBcHIgMjEgMTA6NTc6MTIgMjAwNgorLS0tIGVzX0VTLmFmZglGcmkgQXByIDIxIDExOjEwOjE2IDIwMDYKICoqKioqKioqKioqKioqKgotKioqIDMsNCAqKioqCi0tLS0gMywyMiAtLS0tCisqKiogNCw1ICoqKioKKy0tLSA0LDEyIC0tLS0KICAgCiArIEZPTCAg3+Dh4uPk5ebn6Onq6+zt7u/w8fLz9PX2+Pn6+/z9/v8KICsgTE9XICDf4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb4+fr7/P3+/wpAQCAtMTEsNzcgKzExLDI4IEBACiArIFNPRk9GUk9NIGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVrg4eLj5OXm5+jp6uvs7e7v8PHy8/T19vj5+vv8/f7f/8DBwsPExcbHyMnKy8zNzs/Q0dLT1NXW2Nna29zd3r8KICsgU09GT1RPICAgZWJjdGVmZ2hlamtsbm5lcGtyc3RldnZrZXNlYmN0ZWZnaGVqa2xubmVwa3JzdGV2dmtlc2VlZWVlZWVjZWVlZWVlZWVkbmVlZWVlZWVlZWVlcHNlZWVlZWVlZWNlZWVlZWVlZWRuZWVlZWVlZWVlZWVwPwogKyAKLSsgTUFQIDkKLSsgTUFQIGHg4eLj5OUKLSsgTUFQIGXo6errCi0rIE1BUCBp7O3u7wotKyBNQVAgb/Lz9PX2Ci0rIE1BUCB1+fr7/AotKyBNQVAgbvEKLSsgTUFQIGPnCi0rIE1BUCB5//0KLSsgTUFQIHPfCi0rIAotICBTRlggSiBZIDEyCi0qKiogZXNfRVMub3JpZy5kaWMJVGh1IEF1ZyAyNSAxOToxOTo0NCAyMDA1Ci0tLS0gZXNfRVMuZGljCVRodSBBcHIgMjAgMjA6MzA6MjQgMjAwNgorICBSRVAgMjAKICoqKioqKioqKioqKioqKgotKioqIDQ4NSw0ODcgKioqKgotICBhY2VyY/NzZQotLSBhY2VyY/NzZQotICBhY2Vy7WEvUwotLS0tIDQ4NSw0ODYgLS0tLQotKioqKioqKioqKioqKioqCi0qKiogNzA4LDcxMCAqKioqCi0gIGFjcu10aWNhbWVudGUKLS0gYWNy7XRpY28KLSAgYWNy7XRpY28vUFMKLS0tLSA3MDcsNzA4IC0tLS0KLSoqKioqKioqKioqKioqKgotKioqIDk0OCw5NTAgKioqKgotICBhZPNuZGUKLS0gYWTzbmRlCi0gIGFkb25kZXF1aWVyYQotLS0tIDk0Niw5NDcgLS0tLQotKioqKioqKioqKioqKioqCi0qKiogMTQzNSwxNDM3ICoqKioKLSAgYWgKLS0gYWgKLSAgYWhhamFyL1BTVFZXWAotLS0tIDE0MzIsMTQzMyAtLS0tCi0qKioqKioqKioqKioqKioKLSoqKiAzODg3LDM4ODkgKioqKgotICBhcG9zdG9sYWRvCi0tIGFwb3N0b2xhZG8KLSAgYXBvc3RvbGFkb3MKLS0tLSAzODgzLDM4ODQgLS0tLQotKioqKioqKioqKioqKioqCi0qKiogMTI5MjYsMTI5MjggKioqKgotICBkYW1lCi0tIGRhbWUKLSAgZOFtZWxvCi0tLS0gMTI5MjEsMTI5MjIgLS0tLQotKioqKioqKioqKioqKioqCi0qKiogMTU1NjEsMTU1NjMgKioqKgotICBkaW1lCi0tIGRpbWUKLSAgZO1tZWxvCi0tLS0gMTU1NTUsMTU1NTYgLS0tLQotKioqKioqKioqKioqKioqCi0qKiogMjUxMzMsMjUxMzUgKioqKgotICBpbmFkYXB0YWRvL1BTCi0tIGluYWRlY3VhY2nzbgotICBpbmFkZWN1YWNp824vUwotLS0tIDI1MTI2LDI1MTI3IC0tLS0KLSoqKioqKioqKioqKioqKgotKioqIDI4MDA4LDI4MDEwICoqKioKLSAgbO1icmFub3MKLS0gbO1icmFub3MKLSAgbGlicmFuemEvUwotLS0tIDI4MDAwLDI4MDAxIC0tLS0KLSoqKioqKioqKioqKioqKgotKioqIDQ4NDgwLDQ4NDgxICoqKioKLS0tLSA0ODQ3MSw0ODQ3MyAtLS0tCi0gIHhpbG90aWxhL1MKLSsgeQotICB5YQorKioqIDI2LDMzICoqKioKKyAgCishIE1BUCA1CishIE1BUCBh4UHBCishIE1BUCBl6UXJCishIE1BUCBp7UnNCishIE1BUCBv80/TCishIE1BUCB1+vxV2twKKyAgUEZYIGEgWSAyCistLS0gMzMsNDUgLS0tLQorICAKKyEgTUFQIDkKKyEgTUFQIGHg4eLj5OUKKyEgTUFQIGXo6errCishIE1BUCBp7O3u7worISBNQVAgb/Lz9PX2CishIE1BUCB1+fr7/AorISBNQVAgbvEKKyEgTUFQIGPnCishIE1BUCB5//0KKyEgTUFQIHPfCishIAorICBQRlggYSBZIDIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3BlbGwvZXMvbWFpbi5hYXAgYi9ydW50aW1lL3NwZWxsL2VzL21haW4uYWFwCmluZGV4IDlmZjA4MmMuLjNhMDNiZmYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3BlbGwvZXMvbWFpbi5hYXAKKysrIGIvcnVudGltZS9zcGVsbC9lcy9tYWluLmFhcApAQCAtNDgsNyArNDgsNyBAQAogICAgICAgICA6YXNzZXJ0cGtnIHVuemlwIHBhdGNoCiAgICAgICAgIDpmZXRjaCAkWklQRklMRV9FUwogICAgICAgICA6c3lzICRVTlpJUCAkWklQRklMRV9FUwotICAgICAgICA6ZGVsZXRlIGFkZC10by0tZGljdGlvbmFyeS5sc3QuZXhhbXBsZQorICAgICAgICA6ZGVsZXRlIENoYW5nZWxvZ19lc19FUy50eHQKICAgICAgICAgOmRlbGV0ZSAkWklQRklMRV9FUwogICAgICAgICBAaWYgbm90IG9zLnBhdGguZXhpc3RzKCdlc19FUy5vcmlnLmFmZicpOgogICAgICAgICAgICAgOmNvcHkgZXNfRVMuYWZmIGVzX0VTLm9yaWcuYWZmCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9hMnBzLnZpbSBiL3J1bnRpbWUvc3ludGF4L2EycHMudmltCmluZGV4IGE1NTk0NDMuLjJhODdkNjIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2EycHMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2EycHMudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgYTJwcygxKSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTMwCisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvYWxzYWNvbmYudmltIGIvcnVudGltZS9zeW50YXgvYWxzYWNvbmYudmltCmluZGV4IGYyYmRhMTguLjhmZDUxZjAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2Fsc2Fjb25mLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9hbHNhY29uZi52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBhbHNhY29uZig4KSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvYXJjaC52aW0gYi9ydW50aW1lL3N5bnRheC9hcmNoLnZpbQppbmRleCBiOTc4OWQyLi4xZTc4NTZkIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9hcmNoLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9hcmNoLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIEdOVSBBcmNoIGludmVudG9yeSBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2JkZi52aW0gYi9ydW50aW1lL3N5bnRheC9iZGYudmltCmluZGV4IGU3OWE2NDguLmQwYzczZWIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2JkZi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvYmRmLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIEJERiBmb250IGRlZmluaXRpb24KLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTI3CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvY2FsZW5kYXIudmltIGIvcnVudGltZS9zeW50YXgvY2FsZW5kYXIudmltCmluZGV4IGM0N2VmMzIuLjU4OGI0MWEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2NhbGVuZGFyLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9jYWxlbmRhci52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBjYWxlbmRhcigxKSBpbnB1dCBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2Nob3JkcHJvLnZpbSBiL3J1bnRpbWUvc3ludGF4L2Nob3JkcHJvLnZpbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMjUxYTY5Ci0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS9zeW50YXgvY2hvcmRwcm8udmltCkBAIC0wLDAgKzEsNjcgQEAKKyIgVmltIHN5bnRheCBmaWxlCisiIExhbmd1YWdlOiAgICAgQ2hvcmRQcm8gKHYuIDMuNi4yKQorIiBNYWludGFpbmVyOiAgIE5pZWxzIEJvIEFuZGVyc2VuIDxuaWVsc0BuaWJvYW4uZGs+CisiIExhc3QgQ2hhbmdlOgkyMDA2IEFwciAyMCAKKyIgUmVtYXJrOiAgICAgICBSZXF1aXJlcyBWSU0gdmVyc2lvbiA2LjAwIG9yIGdyZWF0ZXIKKworIiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKK2lmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCisgIGZpbmlzaAorZW5kaWYKKworbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCitzZXQgY3BvJnZpbQorCitzZXRsb2NhbCBpc2tleXdvcmQrPS0KKworc3luIGNhc2UgaWdub3JlCisKK3N5biBrZXl3b3JkIGNob3JkcHJvRGlyZWN0aXZlIGNvbnRhaW5lZAorICBcIHN0YXJ0X29mX2Nob3J1cyBzb2MgZW5kX29mX2Nob3J1cyBlb2MgbmV3X3NvbmcgbnMgbm9fZ3JpZCBuZyBncmlkIGcKKyAgXCBuZXdfcGFnZSBucCBuZXdfcGh5c2ljYWxfcGFnZSBucHAgc3RhcnRfb2ZfdGFiIHNvdCBlbmRfb2ZfdGFiIGVvdAorICBcIGNvbHVtbl9icmVhayBjb2xiCisKK3N5biBrZXl3b3JkIGNob3JkcHJvRGlyV2l0aE9wdCBjb250YWluZWQKKyAgXCBjb21tZW50IGMgY29tbWVudF9pdGFsaWMgY2kgY29tbWVudF9ib3ggY2IgdGl0bGUgdCBzdWJ0aXRsZSBzdCBkZWZpbmUKKyAgXCB0ZXh0Zm9udCB0ZXh0c2l6ZSBjaG9yZGZvbnQgY2hvcmRzaXplIGNvbHVtbnMgY29sCisKK3N5biBrZXl3b3JkIGNob3JkcHJvRGVmaW5lS2V5d29yZCBjb250YWluZWQgYmFzZS1mcmV0IGZyZXRzCisKK3N5biBtYXRjaCBjaG9yZHByb0Rpck1hdGNoIC97XHcqfS8gY29udGFpbnM9Y2hvcmRwcm9EaXJlY3RpdmUgY29udGFpbmVkIHRyYW5zcGFyZW50CitzeW4gbWF0Y2ggY2hvcmRwcm9EaXJPcHRNYXRjaCAve1x3KjovIGNvbnRhaW5zPWNob3JkcHJvRGlyV2l0aE9wdCBjb250YWluZWQgdHJhbnNwYXJlbnQKKworIiBXb3JrYXJvdW5kIGZvciBhIGJ1ZyBpbiBWSU0gNiwgd2hpY2ggY2F1c2VzIGluY29ycmVjdCBjb2xvcmluZyBvZiB0aGUgZmlyc3QgeworaWYgdmVyc2lvbiA8IDcwMAorICBzeW4gcmVnaW9uIGNob3JkcHJvT3B0aW9ucyBzdGFydD0ve1x3KjovIGVuZD0vfS8gY29udGFpbnM9Y2hvcmRwcm9EaXJPcHRNYXRjaCBjb250YWluZWQgdHJhbnNwYXJlbnQKKyAgc3luIHJlZ2lvbiBjaG9yZHByb09wdGlvbnMgc3RhcnQ9L3tkZWZpbmU6LyBlbmQ9L30vIGNvbnRhaW5zPWNob3JkcHJvRGlyT3B0TWF0Y2gsIGNob3JkcHJvRGVmaW5lS2V5d29yZCBjb250YWluZWQgdHJhbnNwYXJlbnQKK2Vsc2UKKyAgc3luIHJlZ2lvbiBjaG9yZHByb09wdGlvbnMgc3RhcnQ9L3tcdyo6L2hzPWUrMSBlbmQ9L30vaGU9cy0xIGNvbnRhaW5zPWNob3JkcHJvRGlyT3B0TWF0Y2ggY29udGFpbmVkCisgIHN5biByZWdpb24gY2hvcmRwcm9PcHRpb25zIHN0YXJ0PS97ZGVmaW5lOi9ocz1lKzEgZW5kPS99L2hlPXMtMSBjb250YWlucz1jaG9yZHByb0Rpck9wdE1hdGNoLCBjaG9yZHByb0RlZmluZUtleXdvcmQgY29udGFpbmVkCitlbmRpZgorCitzeW4gcmVnaW9uIGNob3JkcHJvVGFnIHN0YXJ0PS97LyBlbmQ9L30vIGNvbnRhaW5zPWNob3JkcHJvRGlyTWF0Y2gsY2hvcmRwcm9PcHRpb25zIG9uZWxpbmUKKworc3luIHJlZ2lvbiBjaG9yZHByb0Nob3JkIG1hdGNoZ3JvdXA9Y2hvcmRwcm9CcmFja2V0IHN0YXJ0PS9cWy8gZW5kPS9dLyBvbmVsaW5lCisKK3N5biByZWdpb24gY2hvcmRwcm9UYWIgc3RhcnQ9L3tzdGFydF9vZl90YWJ9XHx7c290fS9ocz1lKzEgZW5kPS97ZW5kX29mX3RhYn1cfHtlb3R9L2hlPXMtMSBjb250YWlucz1jaG9yZHByb1RhZyxjaG9yZHByb0NvbW1lbnQga2VlcGVuZAorCitzeW4gcmVnaW9uIGNob3JkcHJvQ2hvcnVzIHN0YXJ0PS97c3RhcnRfb2ZfY2hvcnVzfVx8e3NvY30vaHM9ZSsxIGVuZD0ve2VuZF9vZl9jaG9ydXN9XHx7ZW9jfS9oZT1zLTEgY29udGFpbnM9Y2hvcmRwcm9UYWcsY2hvcmRwcm9DaG9yZCxjaG9yZHByb0NvbW1lbnQga2VlcGVuZAorCitzeW4gbWF0Y2ggY2hvcmRwcm9Db21tZW50IC9eIy4qLworCisiIERlZmluZSB0aGUgZGVmYXVsdCBoaWdobGlnaHRpbmcuCitoaSBkZWYgbGluayBjaG9yZHByb0RpcmVjdGl2ZSBTdGF0ZW1lbnQKK2hpIGRlZiBsaW5rIGNob3JkcHJvRGlyV2l0aE9wdCBTdGF0ZW1lbnQKK2hpIGRlZiBsaW5rIGNob3JkcHJvT3B0aW9ucyBTcGVjaWFsCitoaSBkZWYgbGluayBjaG9yZHByb0Nob3JkIFR5cGUKK2hpIGRlZiBsaW5rIGNob3JkcHJvVGFnIENvbnN0YW50CitoaSBkZWYgbGluayBjaG9yZHByb1RhYiBQcmVQcm9jCitoaSBkZWYgbGluayBjaG9yZHByb0NvbW1lbnQgQ29tbWVudAoraGkgZGVmIGxpbmsgY2hvcmRwcm9CcmFja2V0IENvbnN0YW50CitoaSBkZWYgbGluayBjaG9yZHByb0RlZmluZUtleXdvcmQgVHlwZQoraGkgZGVmIGNob3JkcHJvQ2hvcnVzIHRlcm09Ym9sZCBjdGVybT1ib2xkIGd1aT1ib2xkCisKK2xldCBiOmN1cnJlbnRfc3ludGF4ID0gImNob3JkcHJvIgorCitsZXQgJmNwbyA9IHM6Y3BvX3NhdmUKK3VubGV0IHM6Y3BvX3NhdmUKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2NtYWtlLnZpbSBiL3J1bnRpbWUvc3ludGF4L2NtYWtlLnZpbQppbmRleCA4ZGZlM2Q3Li4zMDI0MTdlIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9jbWFrZS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvY21ha2UudmltCkBAIC00OSw3ICs0OSw3IEBACiBzeW4ga2V5d29yZCBjbWFrZURlcHJlY2F0ZWQgQUJTVFJBQ1RfRklMRVMgQlVJTERfTkFNRSBTT1VSQ0VfRklMRVMgU09VUkNFX0ZJTEVTX1JFTU9WRSBWVEtfTUFLRV9JTlNUQU5USUFUT1IgVlRLX1dSQVBfSkFWQSBWVEtfV1JBUF9QWVRIT04gVlRLX1dSQVBfVENMIFdSQVBfRVhDTFVERV9GSUxFUwogICAgICAgICAgICBcIG5leHRncm91cD1jbWFrZUFyZ3VtZW50CiBzeW4ga2V5d29yZCBjbWFrZVN0YXRlbWVudAotICAgICAgICAgICBcIEFERF9DVVNUT01fQ09NTUFORCBBRERfQ1VTVE9NX1RBUkdFVCBBRERfREVGSU5JVElPTlMgQUREX0RFUEVOREVOQ0lFUyBBRERfRVhFQ1VUQUJMRSBBRERfTElCUkFSWSBBRERfU1VCRElSRUNUT1JZIEFERF9URVNUIEFVWF9TT1VSQ0VfRElSRUNUT1JZIEJVSUxEX0NPTU1BTkQgQlVJTERfTkFNRSBDTUFLRV9NSU5JTVVNX1JFUVVJUkVEIENPTkZJR1VSRV9GSUxFIENSRUFURV9URVNUX1NPVVJDRUxJU1QgRUxTRSBFTkFCTEVfTEFOR1VBR0UgRU5BQkxFX1RFU1RJTkcgRU5ERk9SRUFDSCBFTkRJRiBFTkRXSElMRSBFWEVDX1BST0dSQU0gRVhFQ1VURV9QUk9DRVNTIEVYUE9SVF9MSUJSQVJZX0RFUEVOREVOQ0lFUyBGSUxFIEZJTkRfRklMRSBGSU5EX0xJQlJBUlkgRklORF9QQUNLQUdFIEZJTkRfUEFUSCBGSU5EX1BST0dSQU0gRkxUS19XUkFQX1VJIEZPUkVBQ0ggR0VUX0NNQUtFX1BST1BFUlRZIEdFVF9ESVJFQ1RPUllfUFJPUEVSVFkgR0VUX0ZJTEVOQU1FX0NPTVBPTkVOVCBHRVRfU09VUkNFX0ZJTEVfUFJPUEVSVFkgR0VUX1RBUkdFVF9QUk9QRVJUWSBHRVRfVEVTVF9QUk9QRVJUWSBJRiBJTkNMVURFIElOQ0xVREVfRElSRUNUT1JJRVMgSU5DTFVERV9FWFRFUk5BTF9NU1BST0pFQ1QgSU5DTFVERV9SRUdVTEFSX0VYUFJFU1NJT04gSU5TVEFMTCBJTlNUQUxMX0ZJTEVTIElOU1RBTExfUFJPR1JBTVMgSU5TVEFMTF9UQVJHRVRTIExJTktfRElSRUNUT1JJRVMgTElOS19MSUJSQVJJRVMgTElTVCBMT0FEX0NBQ0hFIExPQURfQ09NTUFORCBNQUNSTyBNQUtFX0RJUkVDVE9SWSBNQVJLX0FTX0FEVkFOQ0VEIE1BVEggTUVTU0FHRSBPUFRJT04gT1VUUFVUX1JFUVVJUkVEX0ZJTEVTIFBST0pFQ1QgUVRfV1JBUF9DUFAgUVRfV1JBUF9VSSBSRU1PVkUgUkVNT1ZFX0RFRklOSVRJT05TIFNFUEFSQVRFX0FSR1VNRU5UUyBTRVQgU0VUX0RJUkVDVE9SWV9QUk9QRVJUSUVTIFNFVF9TT1VSQ0VfRklMRVNfUFJPUEVSVElFUyBTRVRfVEFSR0VUX1BST1BFUlRJRVMgU0VUX1RFU1RTX1BST1BFUlRJRVMgU0lURV9OQU1FIFNPVVJDRV9HUk9VUCBTVFJJTkcgU1VCRElSX0RFUEVORFMgU1VCRElSUyBUQVJHRVRfTElOS19MSUJSQVJJRVMgVFJZX0NPTVBJTEUgVFJZX1JVTiBVU0VfTUFOR0xFRF9NRVNBIFVUSUxJVFlfU09VUkNFIFZBUklBQkxFX1JFUVVJUkVTIFZUS19NQUtFX0lOU1RBTlRJQVRPUiBWVEtfV1JBUF9KQVZBIFZUS19XUkFQX1BZVEhPTiBWVEtfV1JBUF9UQ0wgV0hJTEUgV1JJVEVfRklMRQorICAgICAgICAgICBcIEFERF9DVVNUT01fQ09NTUFORCBBRERfQ1VTVE9NX1RBUkdFVCBBRERfREVGSU5JVElPTlMgQUREX0RFUEVOREVOQ0lFUyBBRERfRVhFQ1VUQUJMRSBBRERfTElCUkFSWSBBRERfU1VCRElSRUNUT1JZIEFERF9URVNUIEFVWF9TT1VSQ0VfRElSRUNUT1JZIEJVSUxEX0NPTU1BTkQgQlVJTERfTkFNRSBDTUFLRV9NSU5JTVVNX1JFUVVJUkVEIENPTkZJR1VSRV9GSUxFIENSRUFURV9URVNUX1NPVVJDRUxJU1QgRUxTRSBFTkFCTEVfTEFOR1VBR0UgRU5BQkxFX1RFU1RJTkcgRU5ERk9SRUFDSCBFTkRJRiBFTkRXSElMRSBFWEVDX1BST0dSQU0gRVhFQ1VURV9QUk9DRVNTIEVYUE9SVF9MSUJSQVJZX0RFUEVOREVOQ0lFUyBGSUxFIEZJTkRfRklMRSBGSU5EX0xJQlJBUlkgRklORF9QQUNLQUdFIEZJTkRfUEFUSCBGSU5EX1BST0dSQU0gRkxUS19XUkFQX1VJIEZPUkVBQ0ggR0VUX0NNQUtFX1BST1BFUlRZIEdFVF9ESVJFQ1RPUllfUFJPUEVSVFkgR0VUX0ZJTEVOQU1FX0NPTVBPTkVOVCBHRVRfU09VUkNFX0ZJTEVfUFJPUEVSVFkgR0VUX1RBUkdFVF9QUk9QRVJUWSBHRVRfVEVTVF9QUk9QRVJUWSBJRiBJTkNMVURFIElOQ0xVREVfRElSRUNUT1JJRVMgSU5DTFVERV9FWFRFUk5BTF9NU1BST0pFQ1QgSU5DTFVERV9SRUdVTEFSX0VYUFJFU1NJT04gSU5TVEFMTCBJTlNUQUxMX0ZJTEVTIElOU1RBTExfUFJPR1JBTVMgSU5TVEFMTF9UQVJHRVRTIExJTktfRElSRUNUT1JJRVMgTElOS19MSUJSQVJJRVMgTElTVCBMT0FEX0NBQ0hFIExPQURfQ09NTUFORCBNQUNSTyBNQUtFX0RJUkVDVE9SWSBNQVJLX0FTX0FEVkFOQ0VEIE1BVEggTUVTU0FHRSBPUFRJT04gT1VUUFVUX1JFUVVJUkVEX0ZJTEVTIFBST0pFQ1QgUVRfV1JBUF9DUFAgUVRfV1JBUF9VSSBSRU1PVkUgUkVNT1ZFX0RFRklOSVRJT05TIFNFUEFSQVRFX0FSR1VNRU5UUyBTRVQgU0VUX0RJUkVDVE9SWV9QUk9QRVJUSUVTIFNFVF9TT1VSQ0VfRklMRVNfUFJPUEVSVElFUyBTRVRfVEFSR0VUX1BST1BFUlRJRVMgU0VUX1RFU1RTX1BST1BFUlRJRVMgU0lURV9OQU1FIFNPVVJDRV9HUk9VUCBTVFJJTkcgU1VCRElSX0RFUEVORFMgU1VCRElSUyBUQVJHRVRfTElOS19MSUJSQVJJRVMgVFJZX0NPTVBJTEUgVFJZX1JVTiBVU0VfTUFOR0xFRF9NRVNBIFVUSUxJVFlfU09VUkNFIFZBUklBQkxFX1JFUVVJUkVTIFZUS19NQUtFX0lOU1RBTlRJQVRPUiBWVEtfV1JBUF9KQVZBIFZUS19XUkFQX1BZVEhPTiBWVEtfV1JBUF9UQ0wgV0hJTEUgV1JJVEVfRklMRSBFTkRNQUNSTwogICAgICAgICAgICBcIG5leHRncm91cD1jbWFrZUFyZ3VtbnRzCiAKICJzeW4gbWF0Y2ggY21ha2VNYWNybyAvXlxzKltBLVpfXVwrLyBuZXh0Z3JvdXA9Y21ha2VBcmd1bW50cwpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvY29udGV4dC52aW0gYi9ydW50aW1lL3N5bnRheC9jb250ZXh0LnZpbQppbmRleCAxYjNkMjQ0Li45M2IxNGIxIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9jb250ZXh0LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9jb250ZXh0LnZpbQpAQCAtMSwzMCArMSwyNCBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgQ29uVGVYdCB0eXBlc2V0dGluZyBlbmdpbmUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaAogZW5kaWYKIAorcnVudGltZSEgc3ludGF4L3BsYWludGV4LnZpbQorCiBsZXQgczpjcG9fc2F2ZSA9ICZjcG8KIHNldCBjcG8mdmltCiAKLXN5biBrZXl3b3JkIGNvbnRleHRUb2RvICAgICAgIFRPRE8gRklYTUUgWFhYIE5PVEUKLQotc3luIHJlZ2lvbiAgY29udGV4dENvbW1lbnQgICAgZGlzcGxheSBvbmVsaW5lIHN0YXJ0PSclJyBlbmQ9JyQnCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGNvbnRhaW5zPWNvbnRleHRUb2RvCi1zeW4gcmVnaW9uICBjb250ZXh0Q29tbWVudCAgICBkaXNwbGF5IG9uZWxpbmUgc3RhcnQ9J15ccyolW0NETV0nIGVuZD0nJCcKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QUxMCi0KLXN5biBtYXRjaCAgIGNvbnRleHRTdGF0ZW1lbnQgIGRpc3BsYXkgJ1xcW2EtekEtWkBdXCsnIGNvbnRhaW5zPUBOb1NwZWxsCitpZiAhZXhpc3RzKCdnOmNvbnRleHRfaW5jbHVkZScpCisgIGxldCBnOmNvbnRleHRfaW5jbHVkZSA9IFsnbXAnLCAnamF2YXNjcmlwdCcsICd4bWwnXQorZW5kaWYKIAogc3luIG1hdGNoICAgY29udGV4dEJsb2NrRGVsaW0gZGlzcGxheSAnXFxcJShzdGFydFx8c3RvcFwpXGFcKycKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QE5vU3BlbGwKIAotc3luIG1hdGNoICAgY29udGV4dERlbGltaXRlciAgJ1tdW3t9XScKLQotc3luIG1hdGNoICAgY29udGV4dEVzY2FwZWQgICAgZGlzcGxheSAnXFxcX1tce318JiUkIF0nCiBzeW4gcmVnaW9uICBjb250ZXh0RXNjYXBlZCAgICBkaXNwbGF5IG1hdGNoZ3JvdXA9Y29udGV4dFByZVByb2MKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc3RhcnQ9J1xcdHlwZVx6KFxBXCknIGVuZD0nXHoxJwogc3luIHJlZ2lvbiAgY29udGV4dEVzY2FwZWQgICAgZGlzcGxheSBtYXRjaGdyb3VwPWNvbnRleHRQcmVQcm9jCkBAIC0zOSwzNCArMzMsNTIgQEAKIHN5biByZWdpb24gIGNvbnRleHRFc2NhcGVkICAgIGRpc3BsYXkgbWF0Y2hncm91cD1jb250ZXh0UHJlUHJvYwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nXFxUeXBlZFxoXCt7JyBlbmQ9J30nCiAKLSJzeW4gcmVnaW9uICBjb250ZXh0TWF0aCAgICAgICBtYXRjaGdyb3VwPWNvbnRleHRNYXRoIHN0YXJ0PSdcJCcgZW5kPSdcJCcKLSIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGNvbnRhaW5zPWNvbnRleHRTdGF0ZW1lbnQKLQotc3luIG1hdGNoICAgY29udGV4dEJ1aWx0aW4gICAgJ1xcXCUobmV3aWZcfGRlZlx8Z2RlZlx8Z2xvYmFsXHxsZXRcfGdsZXRcfGJncm91cFwpXD4nCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGNvbnRhaW5zPUBOb1NwZWxsCi1zeW4gbWF0Y2ggICBjb250ZXh0QnVpbHRpbiAgICAnXFxcJShiZWdpbmdyb3VwXHxlZ3JvdXBcfGVuZGdyb3VwXHxsb25nXHxjYXRjb2RlXClcPicKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QE5vU3BlbGwKLXN5biBtYXRjaCAgIGNvbnRleHRCdWlsdGluICAgICdcXFwlKHVucHJvdGVjdFx8dW5leHBhbmRlZFx8aWZcfGVsc2VcfGZpXHxpZnhcKVw+JwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBjb250YWlucz1ATm9TcGVsbAotc3luIG1hdGNoICAgY29udGV4dEJ1aWx0aW4gICAgJ1xcXCUoZnV0dXJlbGV0XHxwcm90ZWN0XClcPicgY29udGFpbnM9QE5vU3BlbGwKLXN5biBtYXRjaCAgIGNvbnRleHRCdWlsdGluICAgICdcXFwlKFtscl1xXClcPicgY29udGFpbnM9QE5vU3BlbGwKK3N5biBtYXRjaCAgIGNvbnRleHRCdWlsdGluICAgIGRpc3BsYXkgY29udGFpbnM9QE5vU3BlbGwKKyAgICAgIFwgJ1xcXCUodW5wcm90ZWN0XHxwcm90ZWN0XHx1bmV4cGFuZGVkXCknIAogCiBzeW4gbWF0Y2ggICBjb250ZXh0UHJlUHJvYyAgICAnXlxzKlxcXCUoc3RhcnRcfHN0b3BcKVw9XCUoY29tcG9uZW50XHxlbnZpcm9ubWVudFx8cHJvamVjdFx8cHJvZHVjdFwpLiokJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBjb250YWlucz1ATm9TcGVsbAotc3luIG1hdGNoICAgY29udGV4dFByZVByb2MgICAgJ15ccypcXGlucHV0XHNcKy4qJCcgY29udGFpbnM9QE5vU3BlbGwKKworaWYgaW5kZXgoZzpjb250ZXh0X2luY2x1ZGUsICdtcCcpICE9IC0xCisgIHN5biBpbmNsdWRlIEBtcFRvcCAgICAgICAgICBzeW50YXgvbXAudmltCisgIHVubGV0IGI6Y3VycmVudF9zeW50YXgKKworICBzeW4gcmVnaW9uICBjb250ZXh0TVBHcmFwaGljICB0cmFuc3BhcmVudCBtYXRjaGdyb3VwPWNvbnRleHRCbG9ja0RlbGltCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc3RhcnQ9J1xcc3RhcnRceihcYSpNUGdyYXBoaWNcfE1QXCUocGFnZVx8aW5jbHVzaW9uc1x8cnVuXClcKS4qJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGVuZD0nXFxzdG9wXHoxJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGNvbnRhaW5zPUBtcFRvcAorZW5kaWYKKworIiBUT0RPOiBhbHNvIG5lZWQgdG8gaW1wbGVtZW50IHRoaXMgZm9yIFxcdHlwZUMgb3Igc29tZXRoaW5nIGFsb25nIHRob3NlCisiIGxpbmVzLgorZnVuY3Rpb24hIHM6aW5jbHVkZV9zeW50YXgobmFtZSwgZ3JvdXApCisgIGlmIGluZGV4KGc6Y29udGV4dF9pbmNsdWRlLCBhOm5hbWUpICE9IC0xCisgICAgZXhlY3V0ZSAnc3luIGluY2x1ZGUgQCcgLiBhOm5hbWUgLiAnVG9wJyAnc3ludGF4LycgLiBhOm5hbWUgLiAnLnZpbScKKyAgICB1bmxldCBiOmN1cnJlbnRfc3ludGF4CisgICAgZXhlY3V0ZSAnc3luIHJlZ2lvbiBjb250ZXh0JyAuIGE6Z3JvdXAgLiAnQ29kZScKKyAgICAgICAgICBcICd0cmFuc3BhcmVudCBtYXRjaGdyb3VwPWNvbnRleHRCbG9ja0RlbGltJworICAgICAgICAgIFwgJ3N0YXJ0PStcXHN0YXJ0JyAuIGE6Z3JvdXAgLiAnKyBlbmQ9K1xcc3RvcCcgLiBhOmdyb3VwIC4gJysnCisgICAgICAgICAgXCAnY29udGFpbnM9QCcgLiBhOm5hbWUgLiAnVG9wJworICBlbmRpZgorZW5kZnVuY3Rpb24KKworY2FsbCBzOmluY2x1ZGVfc3ludGF4KCdjJywgJ0MnKQorY2FsbCBzOmluY2x1ZGVfc3ludGF4KCdydWJ5JywgJ1J1YnknKQorY2FsbCBzOmluY2x1ZGVfc3ludGF4KCdqYXZhc2NyaXB0JywgJ0pTJykKK2NhbGwgczppbmNsdWRlX3N5bnRheCgneG1sJywgJ1hNTCcpCiAKIHN5biBtYXRjaCAgIGNvbnRleHRTZWN0aW9uaW5nICdcXGNoYXB0ZXJcPicgY29udGFpbnM9QE5vU3BlbGwKIHN5biBtYXRjaCAgIGNvbnRleHRTZWN0aW9uaW5nICdcXFwlKHN1YlwpKnNlY3Rpb25cPicgY29udGFpbnM9QE5vU3BlbGwKIAogc3luIG1hdGNoICAgY29udGV4dFNwZWNpYWwgICAgJ1xcY3JsZlw+XHxcXHBhclw+XHwtXHsyLDN9XHx8Wzw+L11cPXwnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGNvbnRhaW5zPUBOb1NwZWxsCi1zeW4gbWF0Y2ggICBjb250ZXh0U3BlY2lhbCAgICAnXFxbYCciXScKK3N5biBtYXRjaCAgIGNvbnRleHRTcGVjaWFsICAgIC9cXFtgJyJdLwogc3luIG1hdGNoICAgY29udGV4dFNwZWNpYWwgICAgK1xcY2hhclwlKFxkXHsxLDN9XHwnXG9cezEsM31cfCJceFx7MSwyfVwpXD4rCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGNvbnRhaW5zPUBOb1NwZWxsCiBzeW4gbWF0Y2ggICBjb250ZXh0U3BlY2lhbCAgICAnXF5cXi4nCiBzeW4gbWF0Y2ggICBjb250ZXh0U3BlY2lhbCAgICAnYFwlKFxcLlx8XF5cXi5cfC5cKScKIAotc3luIG1hdGNoICAgY29udGV4dFN0eWxlICAgICAgJ1xcXCUoZW1cfHR0XHxybVx8c3NcfGh3XHxjZ1wpXD4nCitzeW4gbWF0Y2ggICBjb250ZXh0U3R5bGUgICAgICAnXFxcJShlbVx8c3NcfGh3XHxjZ1x8bWZcKVw+JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBjb250YWlucz1ATm9TcGVsbAogc3luIG1hdGNoICAgY29udGV4dEZvbnQgICAgICAgJ1xcXCUoQ0FQXHxDYXBcfGNhcFx8Q2Fwc1x8a2FwXHxub2NhcFwpXD4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGNvbnRhaW5zPUBOb1NwZWxsCkBAIC03NCwyOSArODYsMTggQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QE5vU3BlbGwKIHN5biBtYXRjaCAgIGNvbnRleHRGb250ICAgICAgICdcXFwlKHZpXHsxLDN9XHxpeFx8eGlcezAsMn1cKVw+JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBjb250YWlucz1ATm9TcGVsbAotc3luIG1hdGNoICAgY29udGV4dEZvbnQgICAgICAgJ1xcXCUodGZbYWJjZHhdXHxiZnhcfFtpc11seFwpXD4nCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGNvbnRhaW5zPUBOb1NwZWxsCi1zeW4gbWF0Y2ggICBjb250ZXh0Rm9udCAgICAgICAnXFxcJShiW2ZzaV1cfHNbY2xdXHxpdFx8b3NcfG1mXClcPicKK3N5biBtYXRjaCAgIGNvbnRleHRGb250ICAgICAgICdcXFwlKHRmXHxiW3NpXVx8c1tjbF1cfG9zXClcJSh4eFx8W3hhYmNkXVwpXD1cPicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QE5vU3BlbGwKIAotc3luIG1hdGNoICAgY29udGV4dERpbWVuc2lvbiAgJ1srLV1cPVxzKlwlKFxkXCtcJShbLixdXGQqXClcPVx8Wy4sXVxkXCtcKVxzKlwlKHRydWVcKVw9XHMqXCUocFt0Y11cfGluXHxicFx8Y1ttY11cfG1tXHxkZFx8c3BcfGVbbXhdXClcPicKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QE5vU3BlbGwKLQotaGkgZGVmIGxpbmsgY29udGV4dFRvZG8gICAgICAgVG9kbwotaGkgZGVmIGxpbmsgY29udGV4dENvbW1lbnQgICAgQ29tbWVudAotaGkgZGVmIGxpbmsgY29udGV4dEVzY2FwZWQgICAgU3BlY2lhbAotaGkgZGVmIGxpbmsgY29udGV4dFN0YXRlbWVudCAgSWRlbnRpZmllcgotaGkgZGVmIGxpbmsgY29udGV4dE1hdGggICAgICAgU3RyaW5nCiBoaSBkZWYgbGluayBjb250ZXh0QmxvY2tEZWxpbSBLZXl3b3JkCiBoaSBkZWYgbGluayBjb250ZXh0QnVpbHRpbiAgICBLZXl3b3JkCiBoaSBkZWYgbGluayBjb250ZXh0RGVsaW1pdGVyICBEZWxpbWl0ZXIKIGhpIGRlZiBsaW5rIGNvbnRleHRQcmVQcm9jICAgIFByZVByb2MKIGhpIGRlZiBsaW5rIGNvbnRleHRTZWN0aW9uaW5nIFByZVByb2MKIGhpIGRlZiBsaW5rIGNvbnRleHRTcGVjaWFsICAgIFNwZWNpYWwKK2hpIGRlZiBsaW5rIGNvbnRleHRUeXBlICAgICAgIFR5cGUKIGhpIGRlZiBsaW5rIGNvbnRleHRTdHlsZSAgICAgIGNvbnRleHRUeXBlCiBoaSBkZWYgbGluayBjb250ZXh0Rm9udCAgICAgICBjb250ZXh0VHlwZQotaGkgZGVmIGxpbmsgY29udGV4dFR5cGUgICAgICAgVHlwZQotaGkgZGVmIGxpbmsgY29udGV4dERpbWVuc2lvbiAgTnVtYmVyCiAKIGxldCBiOmN1cnJlbnRfc3ludGF4ID0gImNvbnRleHQiCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2NybS52aW0gYi9ydW50aW1lL3N5bnRheC9jcm0udmltCmluZGV4IDM1ZDllNTAuLjE3YjY3ZDQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2NybS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvY3JtLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIENSTTExNAotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9jdnNyYy52aW0gYi9ydW50aW1lL3N5bnRheC9jdnNyYy52aW0KaW5kZXggZDkwMWFlMS4uNmMyYzRlZSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvY3ZzcmMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2N2c3JjLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGN2cygxKSBSQyBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2RpY3Rjb25mLnZpbSBiL3J1bnRpbWUvc3ludGF4L2RpY3Rjb25mLnZpbQppbmRleCAyMTQ3NGZhLi5lN2ZhNDc2IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9kaWN0Y29uZi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZGljdGNvbmYudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgZGljdCgxKSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTMwCisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZGljdGRjb25mLnZpbSBiL3J1bnRpbWUvc3ludGF4L2RpY3RkY29uZi52aW0KaW5kZXggNTY1MWQ3Yy4uNDRiZjZmOCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvZGljdGRjb25mLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9kaWN0ZGNvbmYudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgZGljdGQoOCkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wMQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2RpcmNvbG9ycy52aW0gYi9ydW50aW1lL3N5bnRheC9kaXJjb2xvcnMudmltCmluZGV4IDhhMjJiMWQuLmRhMDE5MDcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2RpcmNvbG9ycy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZGlyY29sb3JzLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGRpcmNvbG9ycygxKSBpbnB1dCBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0yNworIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2VsaW5rcy52aW0gYi9ydW50aW1lL3N5bnRheC9lbGlua3MudmltCmluZGV4IGRlYTA0YmEuLjViM2EzZjEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2VsaW5rcy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZWxpbmtzLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGVsaW5rcygxKSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZXN0ZXJlbC52aW0gYi9ydW50aW1lL3N5bnRheC9lc3RlcmVsLnZpbQppbmRleCAzMDM4MzU1Li43NDk4MzY0IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9lc3RlcmVsLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9lc3RlcmVsLnZpbQpAQCAtMzIsNyArMzIsNyBAQAogc3luIGtleXdvcmQgZXN0ZXJlbFN0YXRlbWVudAllbWl0IHByZXNlbnQgYXdhaXQKIHN5biBrZXl3b3JkIGVzdGVyZWxTdGF0ZW1lbnQJaWYgdGhlbiBlbHNlCiBzeW4ga2V5d29yZCBlc3RlcmVsQm9vbGVhbgkJYW5kIG9yIG5vdCB4b3IgeG5vciBub3IgbmFuZAotc3luIGtleXdvcmQgZXN0ZXJlbE9wZXJhdG9yCQlcWyBcXSAKKyJzeW4ga2V5d29yZCBlc3RlcmVsT3BlcmF0b3IJCVxbIFxdIAogc3luIGtleXdvcmQgZXN0ZXJlbFBpcHBvCQlwaXBwbwogIiBFc3RlcmVsIFR5cGVzCiBzeW4ga2V5d29yZCBlc3RlcmVsVHlwZSBpbnRlZ2VyIGZsb2F0IGJvbGVhbgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZXRlcm0udmltIGIvcnVudGltZS9zeW50YXgvZXRlcm0udmltCmluZGV4IDhiYzQzNjcuLmY2YzUwYTIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2V0ZXJtLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9ldGVybS52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBldGVybSgxKSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTIxCiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApAQCAtNjEsNyArNjEsNyBAQAogc3luIG1hdGNoICAgZXRlcm1Db2xvclNwZWMgICAgICAgIGNvbnRhaW5lZCBkaXNwbGF5ICdcU1wrJwogCiBzeW4gcmVnaW9uICBldGVybUNvbG9yQ29udGV4dCAgICAgZm9sZCB0cmFuc3BhcmVudCBtYXRjaGdyb3VwPWV0ZXJtQ29udGV4dAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc3RhcnQ9J15ccypiZWdpblxzXCtjb2xvcicKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHN0YXJ0PSdeXHMqYmVnaW5cc1wrY29sb3JcPicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGVuZD0nXlxzKmVuZFw+JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QGV0ZXJtR2VuZXJhbCxldGVybUNvbG9yT3B0aW9ucwogCkBAIC05OSw3ICs5OSw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBuZXh0Z3JvdXA9ZXRlcm1OdW1iZXIgc2tpcHdoaXRlCiAKIHN5biByZWdpb24gIGV0ZXJtQXR0ckNvbnRleHQgICAgICBmb2xkIHRyYW5zcGFyZW50IG1hdGNoZ3JvdXA9ZXRlcm1Db250ZXh0Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nXlxzKmJlZ2luXHNcK2F0dHJpYnV0ZXNcJworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc3RhcnQ9J15ccypiZWdpblxzXCthdHRyaWJ1dGVzXD4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBlbmQ9J15ccyplbmRcPicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGNvbnRhaW5zPUBldGVybUdlbmVyYWwsZXRlcm1BdHRyT3B0aW9ucwogCkBAIC0xMTEsNyArMTExLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHNraXB3aGl0ZQogCiBzeW4gcmVnaW9uICBldGVybUlDbGFzc0NvbnRleHQgICAgZm9sZCB0cmFuc3BhcmVudCBtYXRjaGdyb3VwPWV0ZXJtQ29udGV4dAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc3RhcnQ9J15ccypiZWdpblxzXCtpbWFnZWNsYXNzZXMnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nXlxzKmJlZ2luXHNcK2ltYWdlY2xhc3Nlc1w+JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgZW5kPSdeXHMqZW5kXD4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBjb250YWlucz1AZXRlcm1HZW5lcmFsLGV0ZXJtSW1hZ2VDb250ZXh0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgZXRlcm1JQ2xhc3NPcHRpb25zCkBAIC0xNzYsNyArMTc2LDcgQEAKIAogc3luIHJlZ2lvbiAgZXRlcm1JbWFnZUNvbnRleHQgICAgIGNvbnRhaW5lZCBmb2xkIHRyYW5zcGFyZW50CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBtYXRjaGdyb3VwPWV0ZXJtQ29udGV4dAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc3RhcnQ9J15ccypiZWdpblxzXCtpbWFnZScKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHN0YXJ0PSdeXHMqYmVnaW5cc1wraW1hZ2VcPicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGVuZD0nXlxzKmVuZFw+JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QGV0ZXJtR2VuZXJhbCxldGVybUltYWdlT3B0aW9ucwogCkBAIC0xOTMsNyArMTkzLDcgQEAKIAogc3luIHJlZ2lvbiAgZXRlcm1NZW51SXRlbUNvbnRleHQgIGNvbnRhaW5lZCBmb2xkIHRyYW5zcGFyZW50CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBtYXRjaGdyb3VwPWV0ZXJtQ29udGV4dAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc3RhcnQ9J15ccypiZWdpblxzXCttZW51aXRlbScKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHN0YXJ0PSdeXHMqYmVnaW5cc1wrbWVudWl0ZW1cPicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGVuZD0nXlxzKmVuZFw+JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QGV0ZXJtR2VuZXJhbCxldGVybU1lbnVJdGVtT3B0aW9ucwogCkBAIC0yMDYsNyArMjA2LDcgQEAKIHN5biBtYXRjaCAgIGV0ZXJtTWVudU9wdGlvbnMgICAgICBjb250YWluZWQgZGlzcGxheSAnXDxzZXBcPlx8LScKIAogc3luIHJlZ2lvbiAgZXRlcm1NZW51Q29udGV4dCAgICAgIGZvbGQgdHJhbnNwYXJlbnQgbWF0Y2hncm91cD1ldGVybUNvbnRleHQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHN0YXJ0PSdeXHMqYmVnaW5cc1wrbWVudScKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHN0YXJ0PSdeXHMqYmVnaW5cc1wrbWVudVw+JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgZW5kPSdeXHMqZW5kXD4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBjb250YWlucz1AZXRlcm1HZW5lcmFsLGV0ZXJtTWVudU9wdGlvbnMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBldGVybU1lbnVJdGVtQ29udGV4dApAQCAtMjI3LDcgKzIyNyw3IEBACiBzeW4gbWF0Y2ggICBldGVybUJpbmRQYXJhbSAgICAgICAgY29udGFpbmVkIGRpc3BsYXkgJ1xTXCsnCiAKIHN5biByZWdpb24gIGV0ZXJtQWN0aW9uc0NvbnRleHQgICBmb2xkIHRyYW5zcGFyZW50IG1hdGNoZ3JvdXA9ZXRlcm1Db250ZXh0Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nXlxzKmJlZ2luXHNcK2FjdGlvbnMnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nXlxzKmJlZ2luXHNcK2FjdGlvbnNcPicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGVuZD0nXlxzKmVuZFw+JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QGV0ZXJtR2VuZXJhbCxldGVybUFjdGlvbnNPcHRpb25zCiAKQEAgLTI1Niw3ICsyNTYsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc2tpcHdoaXRlCiAKIHN5biByZWdpb24gIGV0ZXJtQnV0dG9uQ29udGV4dCAgICBmb2xkIHRyYW5zcGFyZW50IG1hdGNoZ3JvdXA9ZXRlcm1Db250ZXh0Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nXlxzKmJlZ2luXHNcK2J1dHRvbl9iYXInCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nXlxzKmJlZ2luXHNcK2J1dHRvbl9iYXJcPicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGVuZD0nXlxzKmVuZFw+JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QGV0ZXJtR2VuZXJhbCxldGVybUJ1dHRvbk9wdGlvbnMKIApAQCAtMjcwLDggKzI3MCw4IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBza2lwd2hpdGUKIAogc3luIHJlZ2lvbiAgZXRlcm1NdWx0aUNvbnRleHQgICAgIGZvbGQgdHJhbnNwYXJlbnQgbWF0Y2hncm91cD1ldGVybUNvbnRleHQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHN0YXJ0PSdeXHMqYmVnaW5cc1wrbXVsdGljaGFyJwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgZW5kPSJeXHMqZW5kXD4nCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nXlxzKmJlZ2luXHNcK211bHRpY2hhclw+JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgZW5kPSdeXHMqZW5kXD4nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBjb250YWlucz1AZXRlcm1HZW5lcmFsLGV0ZXJtTXVsdGlPcHRpb25zCiAKIHN5biBrZXl3b3JkIGV0ZXJtWGltT3B0aW9ucyAgICAgICBjb250YWluZWQgaW5wdXRfbWV0aG9kCkBAIC0yODUsOCArMjg1LDggQEAKIHN5biBrZXl3b3JkIGV0ZXJtUHJlZWRpdFR5cGUgICAgICBjb250YWluZWQgT3ZlclRoZVNwb3QgT2ZmVGhlU3BvdCBSb290CiAKIHN5biByZWdpb24gIGV0ZXJtWGltQ29udGV4dCAgICAgICBmb2xkIHRyYW5zcGFyZW50IG1hdGNoZ3JvdXA9ZXRlcm1Db250ZXh0Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nXlxzKmJlZ2luXHNcK3hpbScKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGVuZD0iXlxzKmVuZFw+JworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc3RhcnQ9J15ccypiZWdpblxzXCt4aW1cPicKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGVuZD0nXlxzKmVuZFw+JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QGV0ZXJtR2VuZXJhbCxldGVybVhpbU9wdGlvbnMKIAogc3luIGtleXdvcmQgZXRlcm1Ub2dPcHRpb25zICAgICAgIGNvbnRhaW5lZCBtYXBfYWxlcnQgdmlzdWFsX2JlbGwgbG9naW5fc2hlbGwKQEAgLTMwMSw3ICszMDEsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc2tpcHdoaXRlCiAKIHN5biByZWdpb24gIGV0ZXJtVG9nQ29udGV4dCAgICAgICBmb2xkIHRyYW5zcGFyZW50IG1hdGNoZ3JvdXA9ZXRlcm1Db250ZXh0Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nXlxzKmJlZ2luXHNcK3RvZ2dsZXMnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nXlxzKmJlZ2luXHNcK3RvZ2dsZXNcPicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGVuZD0nXlxzKmVuZFw+JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QGV0ZXJtR2VuZXJhbCxldGVybVRvZ09wdGlvbnMKIApAQCAtMzE4LDcgKzMxOCw3IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBuZXh0Z3JvdXA9ZXRlcm1Cb29sZWFuIHNraXB3aGl0ZQogCiBzeW4gcmVnaW9uICBldGVybUtleWJvYXJkQ29udGV4dCAgZm9sZCB0cmFuc3BhcmVudCBtYXRjaGdyb3VwPWV0ZXJtQ29udGV4dAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc3RhcnQ9J15ccypiZWdpblxzXCtrZXlib2FyZCcKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHN0YXJ0PSdeXHMqYmVnaW5cc1wra2V5Ym9hcmRcPicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGVuZD0nXlxzKmVuZFw+JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QGV0ZXJtR2VuZXJhbCxldGVybUtleWJvYXJkT3B0aW9ucwogCkBAIC0zMzAsNyArMzMwLDcgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGJvcmRlcl93aWR0aCBsaW5lX3NwYWNlCiAKIHN5biByZWdpb24gIGV0ZXJtTWlzY0NvbnRleHQgICAgICBmb2xkIHRyYW5zcGFyZW50IG1hdGNoZ3JvdXA9ZXRlcm1Db250ZXh0Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nXlxzKmJlZ2luXHNcK21pc2MnCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nXlxzKmJlZ2luXHNcK21pc2NcPicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGVuZD0nXlxzKmVuZFw+JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QGV0ZXJtR2VuZXJhbCxldGVybU1pc2NPcHRpb25zCiAKQEAgLTM1MSw3ICszNTEsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgc2tpcHdoaXRlCiAKIHN5biByZWdpb24gIGV0ZXJtRVNjcmVlbkNvbnRleHQgICBmb2xkIHRyYW5zcGFyZW50IG1hdGNoZ3JvdXA9ZXRlcm1Db250ZXh0Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nXlxzKmJlZ2luXHNcK2VzY3JlZW4nCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBzdGFydD0nXlxzKmJlZ2luXHNcK2VzY3JlZW5cPicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGVuZD0nXlxzKmVuZFw+JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9QGV0ZXJtR2VuZXJhbCxldGVybUVTY3JlZW5PcHRpb25zCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2ZldGNobWFpbC52aW0gYi9ydW50aW1lL3N5bnRheC9mZXRjaG1haWwudmltCmluZGV4IDY3MTU5OGMuLjg5ZGUxZmYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2ZldGNobWFpbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZmV0Y2htYWlsLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGZldGNobWFpbCgxKSBSQyBGaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wMS0yNQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2dwZy52aW0gYi9ydW50aW1lL3N5bnRheC9ncGcudmltCmluZGV4IGI4NGMzMDIuLjBmYzhmMDAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2dwZy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvZ3BnLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGdwZygxKSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTI5CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvZ3JvdXAudmltIGIvcnVudGltZS9zeW50YXgvZ3JvdXAudmltCmluZGV4IDliM2U1MDAuLmFlNWJmZDggMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2dyb3VwLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9ncm91cC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBncm91cCg1KSB1c2VyIGdyb3VwIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTMwCisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApAQCAtMjUsNyArMjUsNyBAQAogCiBzeW4gbWF0Y2ggICBncm91cEdJRENvbG9uICAgICAgIGNvbnRhaW5lZCBkaXNwbGF5ICc6JyBuZXh0Z3JvdXA9Z3JvdXBHSUQKIAotc3luIG1hdGNoICAgZ3JvdXBHSUQgICAgICAgICAgICBjb250YWluZWQgZGlzcGxheSAnXGRcKycKK3N5biBtYXRjaCAgIGdyb3VwR0lEICAgICAgICAgICAgY29udGFpbmVkIGRpc3BsYXkgJ1xkKicKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBuZXh0Z3JvdXA9Z3JvdXBVc2VyTGlzdENvbG9uCiAKIHN5biBtYXRjaCAgIGdyb3VwVXNlckxpc3RDb2xvbiAgY29udGFpbmVkIGRpc3BsYXkgJzonIG5leHRncm91cD1ncm91cFVzZXJMaXN0CmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9ncnViLnZpbSBiL3J1bnRpbWUvc3ludGF4L2dydWIudmltCmluZGV4IDJlMDRkODcuLmY2MzQ0OWQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2dydWIudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2dydWIudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgZ3J1Yig4KSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTI5CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvaW5kZW50LnZpbSBiL3J1bnRpbWUvc3ludGF4L2luZGVudC52aW0KaW5kZXggOTMxMGM0OS4uZWY0ZGY1ZiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvaW5kZW50LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9pbmRlbnQudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgaW5kZW50KDEpIGNvbmZpZ3VyYXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKICIgICBpbmRlbnRfaXNfYnNkOiAgSWYgZXhpc3RzLCB3aWxsIGNoYW5nZSBzb21ld2hhdCB0byBtYXRjaCBCU0QgaW1wbGVtZW50YXRpb24KICIKICIgVE9ETzogaXMgdGhlIGRlbnktYWxsIChhIGxhIGxpbG8udmltIG5pY2Ugb3Igbm8/KS4uLgpAQCAtMTUsNyArMTUsNyBAQAogbGV0IHM6Y3BvX3NhdmUgPSAmY3BvCiBzZXQgY3BvJnZpbQogCi1zZXRsb2NhbCBpc2tleXdvcmQ9QCw0OC01NywtLF8KK3NldGxvY2FsIGlza2V5d29yZD1ALDQ4LTU3LC0sKyxfCiAKIHN5biBtYXRjaCAgIGluZGVudEVycm9yICAgJ1xTXCsnCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2xkLnZpbSBiL3J1bnRpbWUvc3ludGF4L2xkLnZpbQppbmRleCAyYjM5YmVhLi5mYzEyOTE5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9sZC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbGQudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgbGQoMSkgc2NyaXB0Ci0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0yOQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2xmdHAudmltIGIvcnVudGltZS9zeW50YXgvbGZ0cC52aW0KaW5kZXggOWIzNDZhMS4uN2RlNWE1NiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbGZ0cC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbGZ0cC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBsZnRwKDEpIGNvbmZpZ3VyYXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9saWJhby52aW0gYi9ydW50aW1lL3N5bnRheC9saWJhby52aW0KaW5kZXggZmRmODU5NC4uMjViNmU4MiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbGliYW8udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L2xpYmFvLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGxpYmFvLmNvbmYoNSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2xpbWl0cy52aW0gYi9ydW50aW1lL3N5bnRheC9saW1pdHMudmltCmluZGV4IGY2ZGZkOGEuLmE2ZDI0NWEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2xpbWl0cy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbGltaXRzLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGxpbWl0cyg1KSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTI5CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbG9naW5hY2Nlc3MudmltIGIvcnVudGltZS9zeW50YXgvbG9naW5hY2Nlc3MudmltCmluZGV4IDg0YTA1OWQuLjA3ZDYwZWUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2xvZ2luYWNjZXNzLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9sb2dpbmFjY2Vzcy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBsb2dpbi5hY2Nlc3MoNSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0yOQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2xvZ2luZGVmcy52aW0gYi9ydW50aW1lL3N5bnRheC9sb2dpbmRlZnMudmltCmluZGV4IDJiYmM2ZGEuLjdjMmIxMjIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2xvZ2luZGVmcy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbG9naW5kZWZzLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIGxvZ2luLmRlZnMoNSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0yOQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L21hbmNvbmYudmltIGIvcnVudGltZS9zeW50YXgvbWFuY29uZi52aW0KaW5kZXggY2RmODliOS4uOTBlY2M4ZSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvbWFuY29uZi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvbWFuY29uZi52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBtYW4uY29uZig1KSAtIG1hbiBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbW9kY29uZi52aW0gYi9ydW50aW1lL3N5bnRheC9tb2Rjb25mLnZpbQppbmRleCA4MmNiOTgwLi5lOTgyYjhjIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9tb2Rjb25mLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tb2Rjb25mLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIG1vZHVsZXMuY29uZig1KSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTI5CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbXBsYXllcmNvbmYudmltIGIvcnVudGltZS9zeW50YXgvbXBsYXllcmNvbmYudmltCmluZGV4IDkwNTkyMDYuLjU1ZjdlMWEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L21wbGF5ZXJjb25mLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9tcGxheWVyY29uZi52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBtcGxheWVyKDEpIGNvbmZpZ3VyYXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9uYW5vcmMudmltIGIvcnVudGltZS9zeW50YXgvbmFub3JjLnZpbQppbmRleCBjMTNiMzBiLi4yYWU0OTYxIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9uYW5vcmMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L25hbm9yYy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBuYW5vcmMoNSkgLSBHTlUgbmFubyBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTMwCisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvbmV0cmMudmltIGIvcnVudGltZS9zeW50YXgvbmV0cmMudmltCmluZGV4IDlkNWQzYWUuLmQ4ZWJhMzAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L25ldHJjLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9uZXRyYy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBuZXRyYyg1KSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTI3CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcGFtY29uZi52aW0gYi9ydW50aW1lL3N5bnRheC9wYW1jb25mLnZpbQppbmRleCA1OGVhZjRiLi40NmNkM2MzIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9wYW1jb25mLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9wYW1jb25mLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHBhbSg4KSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA2LTI5CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Bhc3N3ZC52aW0gYi9ydW50aW1lL3N5bnRheC9wYXNzd2QudmltCmluZGV4IGZmYjk3OWYuLjIyNjFkOTkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3Bhc3N3ZC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcGFzc3dkLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHBhc3N3ZCg1KSBwYXNzd29yZCBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0zMAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKQEAgLTEyLDcgKzEyLDcgQEAKIAogc3luIG1hdGNoICAgcGFzc3dkQmVnaW4gICAgICAgICBkaXNwbGF5ICdeJyBuZXh0Z3JvdXA9cGFzc3dkQWNjb3VudAogCi1zeW4gbWF0Y2ggICBwYXNzd2RBY2NvdW50ICAgICAgIGNvbnRhaW5lZCBkaXNwbGF5ICdbYS16X11bYS16MC05Xy1dKicKK3N5biBtYXRjaCAgIHBhc3N3ZEFjY291bnQgICAgICAgY29udGFpbmVkIGRpc3BsYXkgJ1srLV1cPVthLXpfXVthLXowLTlfLV0qJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIG5leHRncm91cD1wYXNzd2RQYXNzd29yZENvbG9uCiAKIHN5biBtYXRjaCAgIHBhc3N3ZFBhc3N3b3JkQ29sb24gY29udGFpbmVkIGRpc3BsYXkgJzonCkBAIC0yNiwxMiArMjYsMTIgQEAKIAogc3luIG1hdGNoICAgcGFzc3dkVUlEQ29sb24gICAgICBjb250YWluZWQgZGlzcGxheSAnOicgbmV4dGdyb3VwPXBhc3N3ZFVJRAogCi1zeW4gbWF0Y2ggICBwYXNzd2RVSUQgICAgICAgICAgIGNvbnRhaW5lZCBkaXNwbGF5ICdcZFwrJworc3luIG1hdGNoICAgcGFzc3dkVUlEICAgICAgICAgICBjb250YWluZWQgZGlzcGxheSAnXGQqJwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIG5leHRncm91cD1wYXNzd2RHSURDb2xvbgogCiBzeW4gbWF0Y2ggICBwYXNzd2RHSURDb2xvbiAgICAgIGNvbnRhaW5lZCBkaXNwbGF5ICc6JyBuZXh0Z3JvdXA9cGFzc3dkR0lECiAKLXN5biBtYXRjaCAgIHBhc3N3ZEdJRCAgICAgICAgICAgY29udGFpbmVkIGRpc3BsYXkgJ1xkXCsnCitzeW4gbWF0Y2ggICBwYXNzd2RHSUQgICAgICAgICAgIGNvbnRhaW5lZCBkaXNwbGF5ICdcZConCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgbmV4dGdyb3VwPXBhc3N3ZEdlY29zQ29sb24KIAogc3luIG1hdGNoICAgcGFzc3dkR2Vjb3NDb2xvbiAgICBjb250YWluZWQgZGlzcGxheSAnOicgbmV4dGdyb3VwPXBhc3N3ZEdlY29zCkBAIC00Nyw3ICs0Nyw3IEBACiBzeW4gbWF0Y2ggICBwYXNzd2RTaGVsbENvbG9uICAgIGNvbnRhaW5lZCBkaXNwbGF5ICc6JwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIG5leHRncm91cD1wYXNzd2RTaGVsbAogCi1zeW4gbWF0Y2ggICBwYXNzd2RTaGVsbCAgICAgICAgIGNvbnRhaW5lZCBkaXNwbGF5ICdbLypdW146XSonCitzeW4gbWF0Y2ggICBwYXNzd2RTaGVsbCAgICAgICAgIGNvbnRhaW5lZCBkaXNwbGF5ICcuKicKIAogaGkgZGVmIGxpbmsgcGFzc3dkQ29sb24gICAgICAgICBOb3JtYWwKIGhpIGRlZiBsaW5rIHBhc3N3ZEFjY291bnQgICAgICAgSWRlbnRpZmllcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcGluZm8udmltIGIvcnVudGltZS9zeW50YXgvcGluZm8udmltCmluZGV4IDg4ZDQ5MGMuLjU3ZDM3ZDQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3BpbmZvLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9waW5mby52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBwaW5mbygxKSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcHJvdG9jb2xzLnZpbSBiL3J1bnRpbWUvc3ludGF4L3Byb3RvY29scy52aW0KaW5kZXggYWI1ODZiYy4uMWRjMTA5YyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcHJvdG9jb2xzLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9wcm90b2NvbHMudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgcHJvdG9jb2xzKDUpIC0gSW50ZXJuZXQgcHJvdG9jb2xzIGRlZmluaXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDYtMzAKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9xdWFrZS52aW0gYi9ydW50aW1lL3N5bnRheC9xdWFrZS52aW0KaW5kZXggYjg2ZDUyOC4uNzg0MGY3YyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcXVha2UudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3F1YWtlLnZpbQpAQCAtMSw5ICsxLDExIEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBRdWFrZVsxLTNdIGNvbmZpZ3VyYXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDYtMjkKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKKyIgICAgICAgICAgICAgICBxdWFrZV9pc19xdWFrZTEgLSB0aGUgc3ludGF4IGlzIHRvIGJlIHVzZWQgZm9yIHF1YWtlMSBjb25maWdzCiAiICAgICAgICAgICAgICAgcXVha2VfaXNfcXVha2UyIC0gdGhlIHN5bnRheCBpcyB0byBiZSB1c2VkIGZvciBxdWFrZTIgY29uZmlncwogIiAgICAgICAgICAgICAgIHF1YWtlX2lzX3F1YWtlMyAtIHRoZSBzeW50YXggaXMgdG8gYmUgdXNlZCBmb3IgcXVha2UzIGNvbmZpZ3MKKyIgQ3JlZGl0czogICAgICAgICAgVG9tYXN6IEthbGtvc2luc2tpIHdyb3RlIHRoZSBvcmlnaW5hbCBxdWFrZTNDb2xvcnMgc3R1ZmYKIAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCkBAIC0yMCwyMCArMjIsMjQgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwga2VlcGVuZCBjb250YWlucz1xdWFrZVRvZG8sQFNwZWxsCiAKIHN5biByZWdpb24gIHF1YWtlU3RyaW5nICAgICAgIGRpc3BsYXkgb25lbGluZSBzdGFydD0rIisgc2tpcD0rXFxcXFx8XFwiKwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBlbmQ9KyJcfCQrIGNvbnRhaW5zPXF1YWtlTnVtYmVycyxAcXVha2VDb21tYW5kcworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCBlbmQ9KyJcfCQrIGNvbnRhaW5zPXF1YWtlTnVtYmVycywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgQHF1YWtlQ29tbWFuZHMsQHF1YWtlM0NvbG9ycwogCiBzeW4gY2FzZSBpZ25vcmUKIAotc3luIG1hdGNoIHF1YWtlTnVtYmVycyAgICAgICAgZGlzcGxheSB0cmFuc3BhcmVudCAnXDxcZFx8XC5cZCcKK3N5biBtYXRjaCBxdWFrZU51bWJlcnMgICAgICAgIGRpc3BsYXkgdHJhbnNwYXJlbnQgJ1w8LVw9XGRcfFwuXGQnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGNvbnRhaW5zPXF1YWtlTnVtYmVyLHF1YWtlRmxvYXQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHF1YWtlT2N0YWxFcnJvcixxdWFrZU9jdGFsCiBzeW4gbWF0Y2ggcXVha2VOdW1iZXIgICAgICAgICBjb250YWluZWQgZGlzcGxheSAnXGRcK1w+Jwotc3luIG1hdGNoIHF1YWtlT2N0YWwgICAgICAgICAgY29udGFpbmVkIGRpc3BsYXkgJzBcb1wrXD4nCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIGNvbnRhaW5zPXF1YWtlT2N0YWxaZXJvCi1zeW4gbWF0Y2ggcXVha2VPY3RhbFplcm8gICAgICBjb250YWluZWQgZGlzcGxheSAnXDwwJwogc3luIG1hdGNoIHF1YWtlRmxvYXQgICAgICAgICAgY29udGFpbmVkIGRpc3BsYXkgJ1xkXCtcLlxkKicKIHN5biBtYXRjaCBxdWFrZUZsb2F0ICAgICAgICAgIGNvbnRhaW5lZCBkaXNwbGF5ICdcLlxkXCtcPicKLXN5biBtYXRjaCBxdWFrZU9jdGFsRXJyb3IgICAgIGNvbnRhaW5lZCBkaXNwbGF5ICcwXG8qWzg5XVxkKicKKworaWYgZXhpc3RzKCJxdWFrZV9pc19xdWFrZTEiKSB8fCBleGlzdHMoInF1YWtlX2lzX3F1YWtlMiIpCisgIHN5biBtYXRjaCBxdWFrZU9jdGFsICAgICAgICBjb250YWluZWQgZGlzcGxheSAnMFxvXCtcPicKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgY29udGFpbnM9cXVha2VPY3RhbFplcm8KKyAgc3luIG1hdGNoIHF1YWtlT2N0YWxaZXJvICAgIGNvbnRhaW5lZCBkaXNwbGF5ICdcPDAnCisgIHN5biBtYXRjaCBxdWFrZU9jdGFsRXJyb3IgICBjb250YWluZWQgZGlzcGxheSAnMFxvKls4OV1cZConCitlbmRpZgogCiBzeW4gY2x1c3RlciBxdWFrZUNvbW1hbmRzICAgICBjb250YWlucz1xdWFrZUNvbW1hbmQscXVha2UxQ29tbWFuZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwgcXVha2UxMkNvbW1hbmQsUXVha2UyQ29tbWFuZCxRdWFrZTIzQ29tbWFuZCwKQEAgLTgwLDggKzg2LDYgQEAKICAgc3luIGtleXdvcmQgcXVha2UyQ29tbWFuZCAgIHdlYXBsYXN0CiBlbmRpZgogCi1zeW4gY2FzZSBtYXRjaAotCiBpZiBleGlzdHMoInF1YWtlX2lzX3F1YWtlMiIpIHx8IGV4aXN0cygicXVha2VfaXNfcXVha2UzIikKICAgc3luIGtleXdvcmQgcXVha2UyM0NvbW1hbmQgIGltYWdlbGlzdCBtb2RlbGxpc3QgcGF0aCB6X3N0YXRzCiBlbmRpZgpAQCAtMTEyLDYgKzExNiwyNCBAQAogICBzeW4gbWF0Y2ggICBxdWFrZTNDb21tYW5kICAgZGlzcGxheSAiXDxbKy1dYnV0dG9uXChcZFx8MVswLTRdXClcPiIKIGVuZGlmCiAKK2lmIGV4aXN0cygicXVha2VfaXNfcXVha2UzIikKKyAgc3luIGNsdXN0ZXIgcXVha2UzQ29sb3JzICAgIGNvbnRhaW5zPXF1YWtlM1JlZCxxdWFrZTNHcmVlbixxdWFrZTNZZWxsb3csCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHF1YWtlM0JsdWUscXVha2UzQ3lhbixxdWFrZTNQdXJwbGUscXVha2UzV2hpdGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIHF1YWtlM09yYW5nZSxxdWFrZTNHcmV5LHF1YWtlM0JsYWNrLHF1YWtlM1NoYWRvdworCisgIHN5biByZWdpb24gcXVha2UzUmVkICAgICAgICBjb250YWluZWQgc3RhcnQ9K1xeMStocz1lKzEgZW5kPStbJF4iXG5dK2hlPWUtMQorICBzeW4gcmVnaW9uIHF1YWtlM0dyZWVuICAgICAgY29udGFpbmVkIHN0YXJ0PStcXjIraHM9ZSsxIGVuZD0rWyReIlxuXStoZT1lLTEKKyAgc3luIHJlZ2lvbiBxdWFrZTNZZWxsb3cgICAgIGNvbnRhaW5lZCBzdGFydD0rXF4zK2hzPWUrMSBlbmQ9K1skXiJcbl0raGU9ZS0xCisgIHN5biByZWdpb24gcXVha2UzQmx1ZSAgICAgICBjb250YWluZWQgc3RhcnQ9K1xeNCtocz1lKzEgZW5kPStbJF4iXG5dK2hlPWUtMQorICBzeW4gcmVnaW9uIHF1YWtlM0N5YW4gICAgICAgY29udGFpbmVkIHN0YXJ0PStcXjUraHM9ZSsxIGVuZD0rWyReIlxuXStoZT1lLTEKKyAgc3luIHJlZ2lvbiBxdWFrZTNQdXJwbGUgICAgIGNvbnRhaW5lZCBzdGFydD0rXF42K2hzPWUrMSBlbmQ9K1skXiJcbl0raGU9ZS0xCisgIHN5biByZWdpb24gcXVha2UzV2hpdGUgICAgICBjb250YWluZWQgc3RhcnQ9K1xeNytocz1lKzEgZW5kPStbJF4iXG5dK2hlPWUtMQorICBzeW4gcmVnaW9uIHF1YWtlM09yYW5nZSAgICAgY29udGFpbmVkIHN0YXJ0PStcXjgraHM9ZSsxIGVuZD0rWyReXCJcbl0raGU9ZS0xCisgIHN5biByZWdpb24gcXVha2UzR3JleSAgICAgICBjb250YWluZWQgc3RhcnQ9K1xeOStocz1lKzEgZW5kPStbJF4iXG5dK2hlPWUtMQorICBzeW4gcmVnaW9uIHF1YWtlM0JsYWNrICAgICAgY29udGFpbmVkIHN0YXJ0PStcXjAraHM9ZSsxIGVuZD0rWyReIlxuXStoZT1lLTEKKyAgc3luIHJlZ2lvbiBxdWFrZTNTaGFkb3cgICAgIGNvbnRhaW5lZCBzdGFydD0rXF5bWHhdK2hzPWUrMSBlbmQ9K1skXiJcbl0raGU9ZS0xCitlbmRpZgorCiBoaSBkZWYgbGluayBxdWFrZUNvbW1lbnQgICAgICBDb21tZW50CiBoaSBkZWYgbGluayBxdWFrZVRvZG8gICAgICAgICBUb2RvCiBoaSBkZWYgbGluayBxdWFrZVN0cmluZyAgICAgICBTdHJpbmcKQEAgLTEyOCw2ICsxNTAsMjAgQEAKIGhpIGRlZiBsaW5rIHF1YWtlM0NvbW1hbmQgICAgIHF1YWtlQ29tbWFuZHMKIGhpIGRlZiBsaW5rIHF1YWtlQ29tbWFuZHMgICAgIEtleXdvcmQKIAoraWYgZXhpc3RzKCJxdWFrZV9pc19xdWFrZTMiKQorICBoaSBxdWFrZTNSZWQgICAgICAgICAgICAgICAgY3Rlcm1mZz1SZWQgICAgICAgICBndWlmZz1SZWQKKyAgaGkgcXVha2UzR3JlZW4gICAgICAgICAgICAgIGN0ZXJtZmc9R3JlZW4gICAgICAgZ3VpZmc9R3JlZW4KKyAgaGkgcXVha2UzWWVsbG93ICAgICAgICAgICAgIGN0ZXJtZmc9WWVsbG93ICAgICAgZ3VpZmc9WWVsbG93CisgIGhpIHF1YWtlM0JsdWUgICAgICAgICAgICAgICBjdGVybWZnPUJsdWUgICAgICAgIGd1aWZnPUJsdWUKKyAgaGkgcXVha2UzQ3lhbiAgICAgICAgICAgICAgIGN0ZXJtZmc9Q3lhbiAgICAgICAgZ3VpZmc9Q3lhbgorICBoaSBxdWFrZTNQdXJwbGUgICAgICAgICAgICAgY3Rlcm1mZz1EYXJrTWFnZW50YSBndWlmZz1QdXJwbGUKKyAgaGkgcXVha2UzV2hpdGUgICAgICAgICAgICAgIGN0ZXJtZmc9V2hpdGUgICAgICAgZ3VpZmc9V2hpdGUKKyAgaGkgcXVha2UzQmxhY2sgICAgICAgICAgICAgIGN0ZXJtZmc9QmxhY2sgICAgICAgZ3VpZmc9QmxhY2sKKyAgaGkgcXVha2UzT3JhbmdlICAgICAgICAgICAgIGN0ZXJtZmc9QnJvd24gICAgICAgZ3VpZmc9T3JhbmdlCisgIGhpIHF1YWtlM0dyZXkgICAgICAgICAgICAgICBjdGVybWZnPUxpZ2h0R3JleSAgIGd1aWZnPUxpZ2h0R3JleQorICBoaSBxdWFrZTNTaGFkb3cgICAgICAgICAgICAgY3Rlcm09dW5kZXJsaW5lICAgICBndWk9dW5kZXJsaW5lCitlbmRpZgorCiBsZXQgYjpjdXJyZW50X3N5bnRheCA9ICJxdWFrZSIKIAogbGV0ICZjcG8gPSBzOmNwb19zYXZlCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9yYWNjLnZpbSBiL3J1bnRpbWUvc3ludGF4L3JhY2MudmltCmluZGV4IGE4YThjMDUuLmMwYmZhMzAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3JhY2MudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3JhY2MudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gZGVmYXVsdCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFJhY2MgaW5wdXQgZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9yZWFkbGluZS52aW0gYi9ydW50aW1lL3N5bnRheC9yZWFkbGluZS52aW0KaW5kZXggY2Q3YjEwZi4uODExNzVmZSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcmVhZGxpbmUudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3JlYWRsaW5lLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHJlYWRsaW5lKDMpIGNvbmZpZ3VyYXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKICIgICByZWFkbGluZV9oYXNfYmFzaCAtIGlmIGRlZmluZWQgYWRkIHN1cHBvcnQgZm9yIGJhc2ggc3BlY2lmaWMKICIgICAgICAgICAgICAgICAgICAgICAgIHNldHRpbmdzL2Z1bmN0aW9ucwogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9ybmMudmltIGIvcnVudGltZS9zeW50YXgvcm5jLnZpbQppbmRleCAzNzU4ZWM1Li5kNTEwZjA0IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9ybmMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3JuYy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBSZWxheCBORyBjb21wYWN0IHN5bnRheAotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zY3JlZW4udmltIGIvcnVudGltZS9zeW50YXgvc2NyZWVuLnZpbQppbmRleCAxYmFhYTViLi5lMWZmNGVjIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zY3JlZW4udmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NjcmVlbi52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBzY3JlZW4oMSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NlbnNvcnMudmltIGIvcnVudGltZS9zeW50YXgvc2Vuc29ycy52aW0KaW5kZXggNDFjMTNlOC4uNjNjZWNlYyAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc2Vuc29ycy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2Vuc29ycy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBzZW5zb3JzLmNvbmYoNSkgLSBsaWJzZW5zb3JzIGNvbmZpZ3VyYXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zZXJ2aWNlcy52aW0gYi9ydW50aW1lL3N5bnRheC9zZXJ2aWNlcy52aW0KaW5kZXggYTJkYjdiMS4uNjYxZjU3YSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc2VydmljZXMudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NlcnZpY2VzLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHNlcnZpY2VzKDUpIC0gSW50ZXJuZXQgbmV0d29yayBzZXJ2aWNlcyBsaXN0Ci0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0zMAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NldHNlcmlhbC52aW0gYi9ydW50aW1lL3N5bnRheC9zZXRzZXJpYWwudmltCmluZGV4IDZkNDEwZjUuLmNkZDMwOWQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NldHNlcmlhbC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2V0c2VyaWFsLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIHNldHNlcmlhbCg4KSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc2lldmUudmltIGIvcnVudGltZS9zeW50YXgvc2lldmUudmltCmluZGV4IGZhMzY5ZmMuLmY2NTFjYmQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NpZXZlLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zaWV2ZS52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBTaWV2ZSBmaWx0ZXJpbmcgbGFuZ3VhZ2UgaW5wdXQgZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zbHBjb25mLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NscGNvbmYudmltCmluZGV4IDRiM2M1YTEuLjlmZTQ1MDMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NscGNvbmYudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NscGNvbmYudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgUkZDIDI2MTQgLSBBbiBBUEkgZm9yIFNlcnZpY2UgTG9jYXRpb24gY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NscHJlZy52aW0gYi9ydW50aW1lL3N5bnRheC9zbHByZWcudmltCmluZGV4IGM0ZTE2YTkuLmYzYzhhN2YgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NscHJlZy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2xwcmVnLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFJGQyAyNjE0IC0gQW4gQVBJIGZvciBTZXJ2aWNlIExvY2F0aW9uIHJlZ2lzdHJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NscHNwaS52aW0gYi9ydW50aW1lL3N5bnRheC9zbHBzcGkudmltCmluZGV4IGU2ZDBjMTUuLjg1MDdlM2QgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3NscHNwaS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc2xwc3BpLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiAgICAgICAgIFJGQyAyNjE0IC0gQW4gQVBJIGZvciBTZXJ2aWNlIExvY2F0aW9uIFNQSSBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NxbGoudmltIGIvcnVudGltZS9zeW50YXgvc3Fsai52aW0KaW5kZXggYmE2NGJkZi4uNTEzOThlZiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc3Fsai52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc3Fsai52aW0KQEAgLTk0LDYgKzk0LDggQEAKICAgSGlMaW5rIHNxbGpTdHJpbmcJU3RyaW5nCiAgIEhpTGluayBzcWxqVHlwZQlUeXBlCiAgIEhpTGluayBzcWxqUHJlCVByZVByb2MKKworICBkZWxjb21tYW5kIEhpTGluawogZW5kaWYKIAogbGV0IGI6Y3VycmVudF9zeW50YXggPSAic3FsaiIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3N1ZG9lcnMudmltIGIvcnVudGltZS9zeW50YXgvc3Vkb2Vycy52aW0KaW5kZXggODFkODA4Zi4uMmUyZDc0NCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc3Vkb2Vycy52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc3Vkb2Vycy52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICBzdWRvZXJzKDUpIGNvbmZpZ3VyYXRpb24gZmlsZXMKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvc3lzY3RsLnZpbSBiL3J1bnRpbWUvc3ludGF4L3N5c2N0bC52aW0KaW5kZXggNDYwZDBhYy4uZDE2ZDQ1OCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc3lzY3RsLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9zeXNjdGwudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgc3lzY3RsLmNvbmYoNSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0yOQorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3Rlcm1pbmZvLnZpbSBiL3J1bnRpbWUvc3ludGF4L3Rlcm1pbmZvLnZpbQppbmRleCA5ZmQ3ODQ1Li4wZWExMTJhIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC90ZXJtaW5mby52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdGVybWluZm8udmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgdGVybWluZm8oNSkgZGVmaW5pdGlvbgotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCkBAIC03NCw3ICs3NCw3IEBACiBzeW4gbWF0Y2ggdGVybWluZm9TdHJpbmdzICAgICAgIGRpc3BsYXkgJ1w8a2ZcKFswLTldXHxbMC01XVswLTldXHw2WzAtM11cKVw+JwogCiBzeW4gbWF0Y2ggdGVybWluZm9QYXJhbWV0ZXJzICAgICclWyVkY3NwbCsqL21BTyZ8Xj08PiF+aT90ZTstXScKLXN5biBtYXRjaCB0ZXJtaW5mb1BhcmFtZXRlcnMgICAgJyVcKCdbQS1aXSdcfHtbMC05XVx7MSwyfX1cfHBbMS05XVx8UFthLXpdXHxnW0EtWl1cKScKK3N5biBtYXRjaCB0ZXJtaW5mb1BhcmFtZXRlcnMgICAgIiVcKCdbQS1aXSdcfHtbMC05XVx7MSwyfX1cfHBbMS05XVx8UFthLXpdXHxnW0EtWl1cKSIKIAogaGkgZGVmIGxpbmsgdGVybWluZm9Db21tZW50ICAgICBDb21tZW50CiBoaSBkZWYgbGluayB0ZXJtaW5mb1RvZG8gICAgICAgIFRvZG8KZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3VkZXZjb25mLnZpbSBiL3J1bnRpbWUvc3ludGF4L3VkZXZjb25mLnZpbQppbmRleCA0ODdhOGFjLi5hMjk0NjA0IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC91ZGV2Y29uZi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdWRldmNvbmYudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgdWRldig4KSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTAxCisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdWRldnBlcm0udmltIGIvcnVudGltZS9zeW50YXgvdWRldnBlcm0udmltCmluZGV4IGMyMDI5YTQuLjlkM2FmMDkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3VkZXZwZXJtLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC91ZGV2cGVybS52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICB1ZGV2KDgpIHBlcm1pc3Npb25zIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTAxCisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdWRldnJ1bGVzLnZpbSBiL3J1bnRpbWUvc3ludGF4L3VkZXZydWxlcy52aW0KaW5kZXggN2RlYWMyYS4uMmRjYTg3OCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvdWRldnJ1bGVzLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC91ZGV2cnVsZXMudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgdWRldig4KSBydWxlcyBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3VwZGF0ZWRiLnZpbSBiL3J1bnRpbWUvc3ludGF4L3VwZGF0ZWRiLnZpbQppbmRleCBlMmI3OTAzLi5kZDhlNmY3IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC91cGRhdGVkYi52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdXBkYXRlZGIudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgdXBkYXRlZGIuY29uZig1KSBjb25maWd1cmF0aW9uIGZpbGUKLSIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxuaWtvbGFpK3dvcmsudmltQGJpdHdpLnNlPgotIiBMYXRlc3QgUmV2aXNpb246ICAyMDA1LTA3LTA0CisiIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bm93QGJpdHdpLnNlPgorIiBMYXRlc3QgUmV2aXNpb246ICAyMDA2LTA0LTE5CiAKIGlmIGV4aXN0cygiYjpjdXJyZW50X3N5bnRheCIpCiAgIGZpbmlzaApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgveGluZXRkLnZpbSBiL3J1bnRpbWUvc3ludGF4L3hpbmV0ZC52aW0KaW5kZXggZThlNTdiZS4uOTAxMGE0OCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgveGluZXRkLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC94aW5ldGQudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgeGluZXRkLmNvbmYoNSkgY29uZmlndXJhdGlvbiBmaWxlCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNi0zMAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3htb2RtYXAudmltIGIvcnVudGltZS9zeW50YXgveG1vZG1hcC52aW0KaW5kZXggMmIwOTdkZi4uNjljNzBjNSAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgveG1vZG1hcC52aW0KKysrIGIvcnVudGltZS9zeW50YXgveG1vZG1hcC52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBzeW50YXggZmlsZQogIiBMYW5ndWFnZTogICAgICAgICB4bW9kbWFwKDEpIGRlZmluaXRpb24gZmlsZQotIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5pa29sYWkrd29yay52aW1AYml0d2kuc2U+Ci0iIExhdGVzdCBSZXZpc2lvbjogIDIwMDUtMDctMDQKKyIgTWFpbnRhaW5lcjogICAgICAgTmlrb2xhaSBXZWlidWxsIDxub3dAYml0d2kuc2U+CisiIExhdGVzdCBSZXZpc2lvbjogIDIwMDYtMDQtMTkKIAogaWYgZXhpc3RzKCJiOmN1cnJlbnRfc3ludGF4IikKICAgZmluaXNoCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC95YW1sLnZpbSBiL3J1bnRpbWUvc3ludGF4L3lhbWwudmltCmluZGV4IDVhOTRmYjYuLjllYmFiNzAgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3lhbWwudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3lhbWwudmltCkBAIC0xLDcgKzEsNyBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6ICAgICAgICAgWUFNTCAoWUFNTCBBaW4ndCBNYXJrdXAgTGFuZ3VhZ2UpCi0iIE1haW50YWluZXI6ICAgICAgIE5pa29sYWkgV2VpYnVsbCA8bmlrb2xhaSt3b3JrLnZpbUBiaXR3aS5zZT4KLSIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNS0wNy0wNAorIiBNYWludGFpbmVyOiAgICAgICBOaWtvbGFpIFdlaWJ1bGwgPG5vd0BiaXR3aS5zZT4KKyIgTGF0ZXN0IFJldmlzaW9uOiAgMjAwNi0wNC0xOQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQogICBmaW5pc2gK