IiBWaW0gc3ludGF4IGZpbGUKIiBMYW5ndWFnZTogICAgIEVybGFuZwoiIEF1dGhvcjogICAgICAgT3NjYXIgSGVsbHN0cvZtIDxvc2NhckBvc2NhcmgubmV0PiAoaHR0cDovL29zY2FyLmhlbGxzdHJvbS5zdCkKIiBDb250cmlidXRvcnM6IFJpY2FyZG8gQ2F0YWxpbmFzIEppbeluZXogPGppbWVuZXpyaWNrQGdtYWlsLmNvbT4KIiBMaWNlbnNlOiAgICAgIFZpbSBsaWNlbnNlCiIgVmVyc2lvbjogICAgICAyMDExLzA5LzExCgppZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQoJZmluaXNoCmVsc2UKCWxldCBiOmN1cnJlbnRfc3ludGF4ID0gImVybGFuZyIKZW5kaWYKCmlmICFleGlzdHMoImc6ZXJsYW5nX2hpZ2hsaWdodF9iaWYiKQoJbGV0IGc6ZXJsYW5nX2hpZ2hsaWdodF9iaWYgPSAxCmVuZGlmCgoiIEVybGFuZyBpcyBjYXNlIHNlbnNpdGl2ZQpzeW4gY2FzZSBtYXRjaAoKIiBNYXRjaCBncm91cHMKc3luIG1hdGNoIGVybGFuZ1N0cmluZ01vZGlmaWVyICAgICAgICAgICAgICAgL1xcLi8gY29udGFpbmVkCnN5biBtYXRjaCBlcmxhbmdTdHJpbmdNb2RpZmllciAgICAgICAgICAgICAgIC9cflwlKC1cP1swLTkqXVwrXClcP1wlKFwuWzAtOSpdXCtcLi5cP1wpXD9cJShjXHxmXHxlXHxnXHxzXHx3XHxwXHxXXHxQXHxCXHxYXHwjXHxiXHwrXHxuXHxpXCkvIGNvbnRhaW5lZApzeW4gbWF0Y2ggZXJsYW5nTW9kaWZpZXIgICAgICAgICAgICAgICAgICAgICAvXCRcXFw/Li8KCnN5biBtYXRjaCBlcmxhbmdJbnRlZ2VyICAgICAgICAgICAgICAgICAgICAgIC9cPFwlKFswLTldXCsjWzAtOWEtZkEtRl1cK1x8WzAtOV1cK1wpXD4vCnN5biBtYXRjaCBlcmxhbmdGbG9hdCAgICAgICAgICAgICAgICAgICAgICAgIC9cPFswLTldXCtcLlswLTldXCtcJShlLVw/WzAtOV1cK1wpXD9cPi8KCnN5biBrZXl3b3JkIGVybGFuZ1RvZG8gICAgICAgICAgICAgICAgICAgICAgIFRPRE8gRklYTUUgWFhYIGNvbnRhaW5lZApzeW4gbWF0Y2ggICBlcmxhbmdDb21tZW50ICAgICAgICAgICAgICAgICAgICAvJS4qJC8gY29udGFpbnM9QFNwZWxsLGVybGFuZ1RvZG8sZXJsYW5nQW5ub3RhdGlvbgpzeW4gbWF0Y2ggICBlcmxhbmdBbm5vdGF0aW9uICAgICAgICAgICAgICAgICAvXCUoJVxzXClcQDw9QFwlKGF1dGhvclx8Y2xlYXJcfGNvcHlyaWdodFx8ZGVwcmVjYXRlZFx8ZG9jXHxkb2NmaWxlXHxlbmRcfGVxdWl2XHxoZWFkZXJmaWxlXHxoaWRkZW5cfHByaXZhdGVcfHJlZmVyZW5jZVx8c2VlXHxzaW5jZVx8c3BlY1x8dGhyb3dzXHx0aXRsZVx8dG9kb1x8VE9ET1x8dHlwZVx8dmVyc2lvblwpLyBjb250YWluZWQKc3luIG1hdGNoICAgZXJsYW5nQW5ub3RhdGlvbiAgICAgICAgICAgICAgICAgL2BbXiddXCsnLyBjb250YWluZWQKCnN5biBrZXl3b3JkIGVybGFuZ0tleXdvcmQgICAgICAgICAgICAgICAgICAgIGJhbmQgYm9yIGJub3QgYnNsIGJzciBieG9yIGRpdiByZW0geG9yCnN5biBrZXl3b3JkIGVybGFuZ0tleXdvcmQgICAgICAgICAgICAgICAgICAgIHRyeSBjYXRjaCBiZWdpbiByZWNlaXZlIGFmdGVyIGNvbmQgZnVuIGxldCBxdWVyeQoKc3luIGtleXdvcmQgZXJsYW5nQ29uZGl0aW9uYWwgICAgICAgICAgICAgICAgY2FzZSBpZiBvZiBlbmQKc3luIGtleXdvcmQgZXJsYW5nQ29uZGl0aW9uYWwgICAgICAgICAgICAgICAgbm90IGFuZCBvciBhbmRhbHNvIG9yZWxzZQpzeW4ga2V5d29yZCBlcmxhbmdDb25kaXRpb25hbCAgICAgICAgICAgICAgICB3aGVuCgpzeW4ga2V5d29yZCBlcmxhbmdCb29sZWFuICAgICAgICAgICAgICAgICAgICB0cnVlIGZhbHNlCgpzeW4ga2V5d29yZCBlcmxhbmdHdWFyZCAgICAgICAgICAgICAgICAgICAgICBpc19saXN0IGlzX2FsaXZlIGlzX2F0b20gaXNfYmluYXJ5IGlzX2JpdHN0cmluZyBpc19ib29sZWFuIGlzX3R1cGxlIGlzX251bWJlciBpc19pbnRlZ2VyIGlzX2Zsb2F0IGlzX2Z1bmN0aW9uIGlzX2NvbnN0YW50IGlzX3BpZCBpc19wb3J0IGlzX3JlZmVyZW5jZSBpc19yZWNvcmQgaXNfcHJvY2Vzc19hbGl2ZQoKc3luIG1hdGNoIGVybGFuZ09wZXJhdG9yICAgICAgICAgICAgICAgICAgICAgL1wvXHwqXHwrXHwtXHwrK1x8LS0vCnN5biBtYXRjaCBlcmxhbmdPcGVyYXRvciAgICAgICAgICAgICAgICAgICAgIC8tPlx8PC1cfHx8XHx8XHwhXHw9LwpzeW4gbWF0Y2ggZXJsYW5nT3BlcmF0b3IgICAgICAgICAgICAgICAgICAgICAvPTo9XHw9PVx8XC89XHw9XC89XHw8XHw+XHw9PFx8Pj0vCnN5biBrZXl3b3JkIGVybGFuZ09wZXJhdG9yICAgICAgICAgICAgICAgICAgIGRpdiByZW0KCnN5biByZWdpb24gZXJsYW5nU3RyaW5nICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0PS8iLyBlbmQ9LyIvIHNraXA9L1xcLyBjb250YWlucz1AU3BlbGwsZXJsYW5nU3RyaW5nTW9kaWZpZXIKCnN5biBtYXRjaCBlcmxhbmdWYXJpYWJsZSAgICAgICAgICAgICAgICAgICAgIC9cPFtBLVpfXVx3Klw+LwpzeW4gbWF0Y2ggZXJsYW5nQXRvbSAgICAgICAgICAgICAgICAgICAgICAgICAvXCUoXCUoXi1cKVx8I1wpXEA8IVw8W2Etel1bQS1aYS16MC05X10qXD5cJShccypbKDpdXClcQCEvCnN5biBtYXRjaCBlcmxhbmdBdG9tICAgICAgICAgICAgICAgICAgICAgICAgIC9cXFxAPCEnW14nXSpcXFxAPCEnLwoKc3luIG1hdGNoIGVybGFuZ1JlY29yZCAgICAgICAgICAgICAgICAgICAgICAgLyNcd1wrLwoKc3luIG1hdGNoIGVybGFuZ1R1cGxlICAgICAgICAgICAgICAgICAgICAgICAgL3tcfH0vCnN5biBtYXRjaCBlcmxhbmdMaXN0ICAgICAgICAgICAgICAgICAgICAgICAgIC9cW1x8XF0vCgpzeW4gbWF0Y2ggZXJsYW5nQXR0cmlidXRlICAgICAgICAgICAgICAgICAgICAvXi1cJSh2c25cfGF1dGhvclx8Y29weXJpZ2h0XHxjb21waWxlXHxkZXByZWNhdGVkXHxtb2R1bGVcfGV4cG9ydFx8aW1wb3J0XHxiZWhhdmlvdXJcfGJlaGF2aW9yXHxleHBvcnRfdHlwZVx8aWdub3JlX3hyZWZcfG9uX2xvYWRcKVxzKihcQD0vCnN5biBtYXRjaCBlcmxhbmdJbmNsdWRlICAgICAgICAgICAgICAgICAgICAgIC9eLWluY2x1ZGVcJShfbGliXClcP1xzKihcQD0vCnN5biBtYXRjaCBlcmxhbmdSZWNvcmREZWYgICAgICAgICAgICAgICAgICAgIC9eLXJlY29yZFxzKihcQD0vCnN5biBtYXRjaCBlcmxhbmdEZWZpbmUgICAgICAgICAgICAgICAgICAgICAgIC9eLVwlKGRlZmluZVx8dW5kZWZcKVxzKihcQD0vCnN5biBtYXRjaCBlcmxhbmdQcmVDb25kaXQgICAgICAgICAgICAgICAgICAgIC9eLVwlKGlmZGVmXHxpZm5kZWZcfGVsc2VcfGVuZGlmXClcJShccyooXEA9XClcPy8KCnN5biBtYXRjaCBlcmxhbmdUeXBlICAgICAgICAgICAgICAgICAgICAgICAgIC9eLVwlKHNwZWNcfHR5cGVcKVsoIF1cQD0vCgpzeW4gbWF0Y2ggZXJsYW5nTWFjcm8gICAgICAgICAgICAgICAgICAgICAgICAvXCUoLWRlZmluZShcKVxAPD1cd1wrLwpzeW4gbWF0Y2ggZXJsYW5nTWFjcm8gICAgICAgICAgICAgICAgICAgICAgICAvP1w/P1x3XCsvCgpzeW4gbWF0Y2ggZXJsYW5nQml0VHlwZSAgICAgICAgICAgICAgICAgICAgICAvXCUoXC9cfC1cKVxAPD1cJShiaXRzXHxiaXRzdHJpbmdcfGJpbmFyeVx8aW50ZWdlclx8ZmxvYXRcfHVuaXRcKVw+LwpzeW4gbWF0Y2ggZXJsYW5nQml0U2l6ZSAgICAgICAgICAgICAgICAgICAgICAvOlxAPD1bMC05XVwrLwoKc3luIG1hdGNoIGVybGFuZ0JpbmFyeSAgICAgICAgICAgICAgICAgICAgICAvPDxcfD4+LwoKIiBCSUZzCnN5biBtYXRjaCBlcmxhbmdCSUYgICAgICAgICAgICAgICAgICAgICAgICAgIC9cJShbXjowLTlBLVphLXpfXVx8XDxlcmxhbmc6XClcQDw9XCUoYWJzXHxhcHBseVx8YXRvbV90b19iaW5hcnlcfGF0b21fdG9fbGlzdFx8YmluYXJ5X3BhcnRcfGJpbmFyeV90b19hdG9tXHxiaW5hcnlfdG9fZXhpc3RpbmdfYXRvbVx8YmluYXJ5X3RvX2xpc3RcfGJpbmFyeV90b190ZXJtXHxiaXRfc2l6ZVx8Yml0c3RyaW5nX3RvX2xpc3RcfGJ5dGVfc2l6ZVx8Y2hlY2tfcHJvY2Vzc19jb2RlXHxkYXRlXHxkZWxldGVfbW9kdWxlXHxkZW1vbml0b3JcfGRpc2Nvbm5lY3Rfbm9kZVx8ZWxlbWVudFx8ZXJhc2VcfGV4aXRcfGZsb2F0XHxmbG9hdF90b19saXN0XHxnYXJiYWdlX2NvbGxlY3RcfGdldFx8Z2V0X2tleXNcfGdyb3VwX2xlYWRlclx8aGRcfGludGVnZXJfdG9fbGlzdFx8aW9saXN0X3NpemVcfGlvbGlzdF90b19iaW5hcnlcfGlzX2FsaXZlXHxpc19hdG9tXHxpc19iaW5hcnlcfGlzX2JpdHN0cmluZ1x8aXNfYm9vbGVhblx8aXNfZmxvYXRcfGlzX2Z1bmN0aW9uXHxpc19pbnRlZ2VyXHxpc19saXN0XHxpc19udW1iZXJcfGlzX3BpZFx8aXNfcG9ydFx8aXNfcHJvY2Vzc19hbGl2ZVx8aXNfcmVjb3JkXHxpc19yZWZlcmVuY2VcfGlzX3R1cGxlXHxsZW5ndGhcfGxpbmtcfGxpc3RfdG9fYXRvbVx8bGlzdF90b19iaW5hcnlcfGxpc3RfdG9fYml0c3RyaW5nXHxsaXN0X3RvX2V4aXN0aW5nX2F0b21cfGxpc3RfdG9fZmxvYXRcfGxpc3RfdG9faW50ZWdlclx8bGlzdF90b19waWRcfGxpc3RfdG9fdHVwbGVcfGxvYWRfbW9kdWxlXHxtYWtlX3JlZlx8bWF4XHxtaW5cfG1vZHVsZV9sb2FkZWRcfG1vbml0b3JcfG1vbml0b3Jfbm9kZVx8bm9kZVx8bm9kZXNcfG5vd1x8b3Blbl9wb3J0XHxwaWRfdG9fbGlzdFx8cG9ydF9jbG9zZVx8cG9ydF9jb21tYW5kXHxwb3J0X2Nvbm5lY3RcfHBvcnRfY29udHJvbFx8cHJlX2xvYWRlZFx8cHJvY2Vzc2VzXHxwcm9jZXNzX2ZsYWdcfHByb2Nlc3NfaW5mb1x8cHVyZ2VfbW9kdWxlXHxwdXRcfHJlZ2lzdGVyXHxyZWdpc3RlcmVkXHxyb3VuZFx8c2VsZlx8c2V0ZWxlbWVudFx8c2l6ZVx8c3Bhd25cfHNwYXduX2xpbmtcfHNwYXduX21vbml0b3JcfHNwYXduX29wdFx8c3BsaXRfYmluYXJ5XHxzdGF0aXN0aWNzXHx0ZXJtX3RvX2JpbmFyeVx8dGltZVx8dGxcfHRydW5jXHx0dXBsZV9zaXplXHx0dXBsZV90b19saXN0XHx1bmxpbmtcfHVucmVnaXN0ZXJcfHdoZXJlaXNcKVwlKChcfFwvWzAtOV1cKVxAPS8Kc3luIG1hdGNoIGVybGFuZ0JJRiAgICAgICAgICAgICAgICAgICAgICAgICAgL1w8XCUoZXJsYW5nOlwpXEA8PVwlKGFwcGVuZF9lbGVtZW50XHxidW1wX3JlZHVjdGlvbnNcfGNhbmNlbF90aW1lclx8ZGVjb2RlX3BhY2tldFx8ZGlzcGxheVx8ZnVuY3Rpb25fZXhwb3J0ZWRcfGZ1bl9pbmZvXHxmdW5fdG9fbGlzdFx8Z2V0X2Nvb2tpZVx8Z2V0X3N0YWNrdHJhY2VcfGhhc2hcfGlzX2J1aWx0aW5cfGxvYWRlZFx8bG9hZF9uaWZcfGxvY2FsdGltZVx8bG9jYWx0aW1lX3RvX3VuaXZlcnNhbHRpbWVcfG1ha2VfdHVwbGVcfG1lbW9yeVx8bW9uaXRvcl9ub2RlXHxwaGFzaFx8cG9ydF9jYWxsXHxwb3J0X2luZm9cfHBvcnRzXHxwb3J0X3RvX2xpc3RcfHByb2Nlc3NfZGlzcGxheVx8cmVhZF90aW1lclx8cmVmX3RvX2xpc3RcfHJlc3VtZV9wcm9jZXNzXHxzZW5kXHxzZW5kX2FmdGVyXHxzZW5kX25vc3VzcGVuZFx8c2V0X2Nvb2tpZVx8c3RhcnRfdGltZXJcfHN1c3BlbmRfcHJvY2Vzc1x8c3lzdGVtX2ZsYWdcfHN5c3RlbV9pbmZvXHxzeXN0ZW1fbW9uaXRvclx8c3lzdGVtX3Byb2ZpbGVcfHRyYWNlXHx0cmFjZV9kZWxpdmVyZWRcfHRyYWNlX2luZm9cfHRyYWNlX3BhdHRlcm5cfHVuaXZlcnNhbHRpbWVcfHVuaXZlcnNhbHRpbWVfdG9fbG9jYWx0aW1lXHx5aWVsZFwpKFxAPS8Kc3luIG1hdGNoIGVybGFuZ0dCSUYgICAgICAgICAgICAgICAgICAgICAgICAgL2VybGFuZ1wlKDpcd1wpXEA9LwoKIiBMaW5rIEVybGFuZyBzdHVmZiB0byBWaW0gZ3JvdXBzCmhpIGxpbmsgZXJsYW5nVG9kbyAgICAgICAgICAgVG9kbwpoaSBsaW5rIGVybGFuZ1N0cmluZyAgICAgICAgIFN0cmluZwpoaSBsaW5rIGVybGFuZ05vU3BlbGxTdHJpbmcgIFN0cmluZwpoaSBsaW5rIGVybGFuZ01vZGlmaWVyICAgICAgIFNwZWNpYWxDaGFyCmhpIGxpbmsgZXJsYW5nU3RyaW5nTW9kaWZpZXIgU3BlY2lhbENoYXIKaGkgbGluayBlcmxhbmdDb21tZW50ICAgICAgICBDb21tZW50CmhpIGxpbmsgZXJsYW5nQW5ub3RhdGlvbiAgICAgU3BlY2lhbApoaSBsaW5rIGVybGFuZ1ZhcmlhYmxlICAgICAgIElkZW50aWZpZXIKaGkgbGluayBlcmxhbmdJbmNsdWRlICAgICAgICBJbmNsdWRlCmhpIGxpbmsgZXJsYW5nUmVjb3JkRGVmICAgICAgS2V5d29yZApoaSBsaW5rIGVybGFuZ0F0dHJpYnV0ZSAgICAgIEtleXdvcmQKaGkgbGluayBlcmxhbmdLZXl3b3JkICAgICAgICBLZXl3b3JkCmhpIGxpbmsgZXJsYW5nTWFjcm8gICAgICAgICAgTWFjcm8KaGkgbGluayBlcmxhbmdEZWZpbmUgICAgICAgICBEZWZpbmUKaGkgbGluayBlcmxhbmdQcmVDb25kaXQgICAgICBQcmVDb25kaXQKaGkgbGluayBlcmxhbmdQcmVQcm9jICAgICAgICBQcmVQcm9jCmhpIGxpbmsgZXJsYW5nRGVsaW1pdGVyICAgICAgRGVsaW1pdGVyCmhpIGxpbmsgZXJsYW5nQml0RGVsaW1pdGVyICAgTm9ybWFsCmhpIGxpbmsgZXJsYW5nT3BlcmF0b3IgICAgICAgT3BlcmF0b3IKaGkgbGluayBlcmxhbmdDb25kaXRpb25hbCAgICBDb25kaXRpb25hbApoaSBsaW5rIGVybGFuZ0d1YXJkICAgICAgICAgIENvbmRpdGlvbmFsCmhpIGxpbmsgZXJsYW5nQm9vbGVhbiAgICAgICAgQm9vbGVhbgpoaSBsaW5rIGVybGFuZ0F0b20gICAgICAgICAgIENvbnN0YW50CmhpIGxpbmsgZXJsYW5nUmVjb3JkICAgICAgICAgU3RydWN0dXJlCmhpIGxpbmsgZXJsYW5nSW50ZWdlciAgICAgICAgTnVtYmVyCmhpIGxpbmsgZXJsYW5nRmxvYXQgICAgICAgICAgTnVtYmVyCmhpIGxpbmsgZXJsYW5nRmxvYXQgICAgICAgICAgTnVtYmVyCmhpIGxpbmsgZXJsYW5nRmxvYXQgICAgICAgICAgTnVtYmVyCmhpIGxpbmsgZXJsYW5nRmxvYXQgICAgICAgICAgTnVtYmVyCmhpIGxpbmsgZXJsYW5nSGV4ICAgICAgICAgICAgTnVtYmVyCmhpIGxpbmsgZXJsYW5nRnVuICAgICAgICAgICAgS2V5d29yZApoaSBsaW5rIGVybGFuZ0xpc3QgICAgICAgICAgIERlbGltaXRlcgpoaSBsaW5rIGVybGFuZ1R1cGxlICAgICAgICAgIERlbGltaXRlcgpoaSBsaW5rIGVybGFuZ0JpbmFyeSAgICAgICAgIEtleXdvcmQKaGkgbGluayBlcmxhbmdCaXRWYXJpYWJsZSAgICBJZGVudGlmaWVyCmhpIGxpbmsgZXJsYW5nQml0VHlwZSAgICAgICAgVHlwZQpoaSBsaW5rIGVybGFuZ1R5cGUgICAgICAgICAgIFR5cGUKaGkgbGluayBlcmxhbmdCaXRTaXplICAgICAgICBOdW1iZXIKCiIgT3B0aW9uYWwgaGlnaGxpZ2h0aW5nCmlmIGc6ZXJsYW5nX2hpZ2hsaWdodF9iaWYKCWhpIGxpbmsgZXJsYW5nQklGICAgIEtleXdvcmQKCWhpIGxpbmsgZXJsYW5nR0JJRiAgIEtleXdvcmQKZW5kaWYK