Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:小程序¥home_rule_v2¥base64://@抖音直播@eyJsYXN0X2NoYXB0ZXJfcnVsZSI6IiIsInRpdGxlIjoi5oqW6Z+z55u05pKtIiwiYXV0aG9yIjoiVHlyYW50R2VuZXNpcyIsInVybCI6Imhpa2VyOi8vZW1wdHkjI2Z5cGFnZSIsInZlcnNpb24iOjEsImNvbF90eXBlIjoibW92aWVfMV9sZWZ0X3BpYyIsImNsYXNzX25hbWUiOiIiLCJ0eXBlIjoib3RoZXIiLCJjbGFzc191cmwiOiIiLCJhcmVhX25hbWUiOiIiLCJhcmVhX3VybCI6IiIsInNvcnRfbmFtZSI6IiIsInllYXJfbmFtZSI6IiIsInNvcnRfdXJsIjoiIiwieWVhcl91cmwiOiIiLCJmaW5kX3J1bGUiOiJqczpcbiQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL2RvdXlpbicpLmxpdmVQYXJzZSgpOyIsInNlYXJjaF91cmwiOiIiLCJncm91cCI6IuKRoeiBmuebtOaSrSIsInNlYXJjaEZpbmQiOiIiLCJkZXRhaWxfY29sX3R5cGUiOiJtb3ZpZV8xIiwiZGV0YWlsX2ZpbmRfcnVsZSI6IiIsInNkZXRhaWxfY29sX3R5cGUiOiJtb3ZpZV8xIiwic2RldGFpbF9maW5kX3J1bGUiOiIiLCJ1YSI6InBjIiwicHJlUnVsZSI6Ii8vIHB1dE15VmFyKCd0Zy5keV93ZWIudXJsLmxpdmVfdXJsJywgJ2h0dHBzOi8vbGl2ZS5kb3V5aW4uY29tJykiLCJwYWdlcyI6Ilt7XCJuYW1lXCI6XCLnrb7lkI1cIixcInBhdGhcIjpcInNpZ25hdHVyZVwiLFwicnVsZVwiOlwidmFyIGV4cG9ydHMgPSB1bmRlZmluZWRcXG4gICwgbW9kdWxlID0gdW5kZWZpbmVkXFxuICAsIEltYWdlID0gZnVuY3Rpb24gSW1hZ2UoKSB7fVxcbiAgLCBQbHVnaW5BcnJheSA9IGZ1bmN0aW9uIFBsdWdpbkFycmF5KCkge31cXG4gICwgaW5kZXhlZERCID0ge31cXG4gICwgRE9NRXhjZXB0aW9uID0gZnVuY3Rpb24gRE9NRXhjZXB0aW9uKCkge31cXG4gICwgV2ViU29ja2V0ID0gZnVuY3Rpb24gV2ViU29ja2V0KCkge31cXG4gICwgUmVxdWVzdCA9IGZ1bmN0aW9uIFJlcXVlc3QoKSB7fVxcbiAgLCBIZWFkZXJzID0gZnVuY3Rpb24gSGVhZGVycygpIHt9O1xcbnZhciBsb2NhbFN0b3JhZ2UgPSB7XFxuICAgIGdldEl0ZW06IGZ1bmN0aW9uIGdldEl0ZW0oeCkge3JldHVybiBudWxsfSxcXG4gICAgcmVtb3ZlSXRlbTogZnVuY3Rpb24gcmVtb3ZlSXRlbSh4KSB7fVxcbn07XFxudmFyIHNlc3Npb25TdG9yYWdlID0ge1xcbiAgICBnZXRJdGVtOiBmdW5jdGlvbiBnZXRJdGVtKHgpIHtyZXR1cm4gbnVsbH0sXFxuICAgIHJlbW92ZUl0ZW06IGZ1bmN0aW9uIHJlbW92ZUl0ZW0oeCkge31cXG59O1xcbnZhciBNaW1lVHlwZSA9IHtcXG4gICAgZGVzY3JpcHRpb246IFxcXCJOYXRpdmUgQ2xpZW50IEV4ZWN1dGFibGVcXFwiLFxcbiAgICBzdWZmaXhlczogXFxcIlxcXCIsXFxuICAgIHR5cGU6IFxcXCJhcHBsaWNhdGlvbi94LW5hY2xcXFwiXFxufTtcXG5NaW1lVHlwZVtTeW1ib2wudG9TdHJpbmdUYWddID0gXFxcIk1pbWVUeXBlXFxcIjtcXG52YXIgbmF2aWdhdG9yID0ge1xcbiAgICBwbHVnaW5zOiB7XFxuICAgICAgICAwOiB7XFxuICAgICAgICAgICAgMDogTWltZVR5cGUsXFxuICAgICAgICAgICAgbmFtZTogXFxcIk5hdGl2ZSBDbGllbnRcXFwiLFxcbiAgICAgICAgICAgIGxlbmd0aDogMixcXG4gICAgICAgICAgICBmaWxlbmFtZTogXFxcImludGVybmFsLW5hY2wtcGx1Z2luXFxcIixcXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogXFxcIlxcXCIsXFxuICAgICAgICAgICAgbGVuZ3RoOiAxXFxuICAgICAgICB9XFxuICAgIH0sXFxuICAgIHdlYmRyaXZlcjogZmFsc2UsXFxuICAgIHVzZXJBZ2VudDogXFxcIk1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS85MS4wLjQ0NzIuMTY0IFNhZmFyaS81MzcuMzZcXFwiLFxcbiAgICBsYW5ndWFnZXM6IFtcXFwiemgtQ05cXFwiLCBcXFwiemhcXFwiXSxcXG4gICAgYXBwQ29kZU5hbWU6IFxcXCJNb3ppbGxhXFxcIixcXG4gICAgYXBwTmFtZTogXFxcIk5ldHNjYXBlXFxcIixcXG4gICAgYXBwVmVyc2lvbjogXFxcIjUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvOTEuMC40NDcyLjE2NCBTYWZhcmkvNTM3LjM2XFxcIixcXG4gICAgcGxhdGZvcm06IFxcXCJXaW4zMlxcXCJcXG59O1xcbm5hdmlnYXRvci5wbHVnaW5zWzBdW1xcXCJhcHBsaWNhdGlvbi94LW5hY2xcXFwiXSA9IE1pbWVUeXBlO1xcbm5hdmlnYXRvci5wbHVnaW5zWzBdLl9fcHJvdG9fXy5pdGVtID0gZnVuY3Rpb24gaXRlbSgpIHtcXG4gICAgcmV0dXJuIE1pbWVUeXBlXFxufVxcbjtcXG5uYXZpZ2F0b3IucGx1Z2luc1tTeW1ib2wudG9TdHJpbmdUYWddID0gXFxcIlBsdWdpbkFycmF5XFxcIjtcXG5uYXZpZ2F0b3IucGx1Z2luc1swXVtTeW1ib2wudG9TdHJpbmdUYWddID0gXFxcIlBsdWdpblxcXCI7XFxubmF2aWdhdG9yLnBsdWdpbnNbMF1bMF0uZW5hYmxlZFBsdWdpbiA9IG5hdmlnYXRvci5wbHVnaW5zWzJdO1xcbnZhciBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRfID0ge1xcbiAgICB0b1N0cmluZzogZnVuY3Rpb24oKSB7XFxuICAgICAgICByZXR1cm4gXFxcIltvYmplY3QgQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEXVxcXCJcXG4gICAgfVxcbn07XFxuQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEXy5fX3Byb3RvX18uZmlsbFRleHQgPSBmdW5jdGlvbiBmaWxsVGV4dCgpIHt9XFxuO1xcbkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyRF8uX19wcm90b19fLmFyYyA9IGZ1bmN0aW9uIGFyYygpIHt9XFxuO1xcbkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyRF8uX19wcm90b19fLnN0cm9rZSA9IGZ1bmN0aW9uIHN0cm9rZSgpIHt9XFxuO1xcbnZhciBnZXRDb250ZXh0XyA9IHtcXG4gICAgdG9TdHJpbmc6IGZ1bmN0aW9uKCkge1xcbiAgICAgICAgcmV0dXJuIFxcXCJbb2JqZWN0IFdlYkdMUmVuZGVyaW5nQ29udGV4dF1cXFwiXFxuICAgIH1cXG59O1xcbnZhciBhYWFhYT0wO1xcbnZhciBjYW52YXMgPSB7XFxuICAgIHRvRGF0YVVSTDogZnVuY3Rpb24gdG9EYXRhVVJMKCkge1xcbiAgICAgICAgaWYoYWFhYWE9MCl7XFxuICAgICAgICAgICAgYWFhYWE9YWFhYWErMVxcbiAgICAgICAgICAgIHJldHVybiBcXFwiW25hdGl2ZSBjb2RlXVxcXCJcXG4gICAgICAgIH1cXG4gICAgICAgIHJldHVybiBcXFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFEQUFBQUFRQ0FZQUFBQlFydnl4QUFBQ04wbEVRVlJJUzhXV1AwaFdZUlRHZjk4UzVOQlNtNXNPYmdXdDZSSlI1dUxRSUdSQzFPQVdORXNwT0FXQ0lJUis0R1lGRGcxTkVvRVE1dElnaEZOYkJJbERMaTVCaS9MSU9YQTh2dS8xUTc2djduTHZmZitjOXp6UGM1NXpiNHZUMTFGNjEydkx4alRuejRWbC8zeG9DSGhhU3NnVHpRbG5jTDBFY3hWNEM5eEx0TFNCNThBZjRBeUFFdnUrUHlmN1A5UzRCZHdHNWkycG9nSWwxbU1KUlVKNnFVQ3V4OHZBSXZBZWVBQk0yNEoyaWRtOHVlYUJDSFlTbURKMlhnTFBnTytBeHQ4QUduUG1GRi9zclFNM1BKRlFHaVV6S2M1QUljWVpEelFwb01BbEgwamFMeUdSSGVBbXNBSThCTjRCcndJb3IyOEIyZ2FjM1Mycit3eEF5WThZd0w3a2phSUNuVENlMlJjN20zYXk2clFmT0FRK0FMK0JwUUFnQW5abFlwSXlxQzRIS3BCUlBRZllhR0tCY0xianM3ZlZPT2NIYVU0SHZRWm1nZnZBREhBdEFmQVNpcUF5Z0JlQWdHcjhvTktnaXdBODJYajMwaW5OelZsd3YrdFFIYjRNWERkQU9pZ21xeTIremhNc0tSQ1pqbjd4OFVjcXAyamlXaHZOQ2tSQ1pORFB3S29OZW1JL2dEV3I4UWpncDNVVGRaR1BnZUVhZ0F6VXozYmYvRHF2RlRiMWU4M3RBNlBBdHdCQWhvN0pSUUJhTmdaOE5hWE9VMEJxeWx2eVFiNFVkNjZtUUtjZStBVGNEWkhkb0xGdDFoUTRLUUhiMjZTQVBEVmhiYmxSZ2Z3TEVka3Z6WW45SjhCR3hXVGRHczdmREk4N0xHV3lBdG1vc2V2NDNCVnJrVDdYclVRdkZLZmtnVXZBMzBvMFNiMEE2S2ZLTzgrRkR1N1dwaEtBY2VDeGZZRDI3SHN3XFxcIiArIG11XygpICsgXFxcIkFBQUFBRWxGVGtTdVFtQ0NcXFwiXFxuICAgIH0sXFxuICAgIGdldENvbnRleHQ6IGZ1bmN0aW9uIGdldENvbnRleHQoeCkge1xcbiAgICAgICAgaWYgKHggPT09IFxcXCIyZFxcXCIpIHtcXG4gICAgICAgICAgICByZXR1cm4gQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJEX1xcbiAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICByZXR1cm4gZ2V0Q29udGV4dF9cXG4gICAgICAgIH1cXG4gICAgfVxcbn07XFxuY2FudmFzW1N5bWJvbC50b1N0cmluZ1RhZ10gPSBcXFwiSFRNTENhbnZhc0VsZW1lbnRcXFwiO1xcbmNhbnZhcy5nZXRDb250ZXh0W1N5bWJvbC50b1N0cmluZ1RhZ10gPSBcXFwiV2ViR0xSZW5kZXJpbmdDb250ZXh0XFxcIjtcXG5nZXRDb250ZXh0Xy5fX3Byb3RvX18uZ2V0RXh0ZW5zaW9uID0gZnVuY3Rpb24gZ2V0RXh0ZW5zaW9uKHgpIHtcXG4gICAgcmV0dXJuIHtcXG4gICAgICAgIFVOTUFTS0VEX1JFTkRFUkVSX1dFQkdMOiAzNzQ0NixcXG4gICAgICAgIFVOTUFTS0VEX1ZFTkRPUl9XRUJHTDogMzc0NDVcXG4gICAgfVxcbn1cXG47XFxuZ2V0Q29udGV4dF8uX19wcm90b19fLmdldFBhcmFtZXRlciA9IGZ1bmN0aW9uIGdldFBhcmFtZXRlcih4KSB7XFxuICAgIHJldHVybiBcXFwiR29vZ2xlIEluYy4gKEludGVsKS9BTkdMRSAoSW50ZWwsIEludGVsKFIpIFVIRCBHcmFwaGljcyBEaXJlY3QzRDExIHZzXzVfMCBwc181XzAsIEQzRDExLTI3LjIwLjEwMC44NjgxKVxcXCJcXG59XFxuO1xcbnZhciBsb2NhdGlvbiA9IHtcXG4gICAgaHJlZjogXFxcImh0dHBzOi8vd3d3LmRvdXlpbi5jb20vXFxcIixcXG4gICAgdG9TdHJpbmc6IGZ1bmN0aW9uKCkge1xcbiAgICAgICAgcmV0dXJuIGxvY2F0aW9uLmhyZWZcXG4gICAgfSxcXG4gICAgcHJvdG9jb2w6IFxcXCJodHRwczpcXFwiXFxufTtcXG52YXIgZG9jdW1lbnQgPSB7XFxuICAgIGNyZWF0ZUV2ZW50OiBmdW5jdGlvbiBjcmVhdGVFdmVudCgpIHt9LFxcbiAgICBsb2NhdGlvbjogbG9jYXRpb24sXFxuICAgIGNvb2tpZTogXFxcIlxcXCIsXFxuICAgIHZsaW5rQ29sb3I6IFxcXCJcXFwiLFxcbiAgICByZWZlcnJlcjogXFxcIlxcXCIsXFxuICAgIGZnQ29sb3I6IFxcXCJcXFwiLFxcbiAgICBkaXI6IFxcXCJcXFwiLFxcbiAgICBhZGRFdmVudExpc3RlbmVyOiBmdW5jdGlvbiBhZGRFdmVudExpc3RlbmVyKHgpIHt9LFxcbiAgICBjcmVhdGVFbGVtZW50OiBmdW5jdGlvbiBjcmVhdGVFbGVtZW50KHgpIHtcXG4gICAgICAgIHJldHVybiBjYW52YXNcXG4gICAgfVxcbn07XFxuZG9jdW1lbnQuY3JlYXRlRWxlbWVudFtTeW1ib2wudG9TdHJpbmdUYWddID0gXFxcIkhUTUxJbWFnZUVsZW1lbnRcXFwiO1xcbnZhciBoaXN0b3J5ID0ge1xcbiAgICBsZW5ndGg6IDEsXFxuICAgIHNjcm9sbFJlc3RvcmF0aW9uOiBcXFwiYXV0b1xcXCIsXFxuICAgIHN0YXRlOiBudWxsXFxufTtcXG52YXIgdXBsb2FkID0ge1xcbiAgICBvbmFib3J0OiBudWxsLFxcbiAgICBvbmVycm9yOiBudWxsLFxcbiAgICBvbmxvYWQ6IG51bGwsXFxuICAgIG9ubG9hZGVuZDogbnVsbCxcXG4gICAgb25sb2Fkc3RhcnQ6IG51bGwsXFxuICAgIG9ucHJvZ3Jlc3M6IG51bGwsXFxuICAgIG9udGltZW91dDogbnVsbFxcbn07XFxudXBsb2FkW1N5bWJvbC50b1N0cmluZ1RhZ10gPSBcXFwiWE1MSHR0cFJlcXVlc3RVcGxvYWRcXFwiO1xcbnZhciBYTUxIdHRwUmVxdWVzdCA9IGZ1bmN0aW9uKCkge1xcbiAgICB0aGlzLm9uYWJvcnQgPSBudWxsLFxcbiAgICB0aGlzLm9uZXJyb3IgPSBudWxsLFxcbiAgICB0aGlzLm9ubG9hZCA9IG51bGwsXFxuICAgIHRoaXMub25sb2FkZW5kID0gbnVsbCxcXG4gICAgdGhpcy5vbmxvYWRzdGFydCA9IG51bGwsXFxuICAgIHRoaXMub25wcm9ncmVzcyA9IG51bGwsXFxuICAgIHRoaXMub25yZWFkeXN0YXRlY2hhbmdlID0gbnVsbCxcXG4gICAgdGhpcy5vbnRpbWVvdXQgPSBudWxsLFxcbiAgICB0aGlzLnJlYWR5U3RhdGUgPSAwLFxcbiAgICB0aGlzLnJlc3BvbnNlID0gXFxcIlxcXCIsXFxuICAgIHRoaXMucmVzcG9uc2VUZXh0ID0gXFxcIlxcXCIsXFxuICAgIHRoaXMucmVzcG9uc2VUeXBlID0gXFxcIlxcXCIsXFxuICAgIHRoaXMucmVzcG9uc2VVUkwgPSBcXFwiXFxcIixcXG4gICAgdGhpcy5yZXNwb25zZVhNTCA9IG51bGwsXFxuICAgIHRoaXMuc3RhdHVzID0gMCxcXG4gICAgdGhpcy5zdGF0dXNUZXh0ID0gXFxcIlxcXCIsXFxuICAgIHRoaXMudGltZW91dCA9IDAsXFxuICAgIHRoaXMudXBsb2FkID0gdXBsb2FkLFxcbiAgICB0aGlzLndpdGhDcmVkZW50aWFscyA9IGZhbHNlXFxufTtcXG5YTUxIdHRwUmVxdWVzdC5wcm90b3R5cGUub3BlbiA9IGZ1bmN0aW9uKCkge1xcbiAgICBmdW5jdGlvbiBlZSgpIHtcXG4gICAgICAgIHRoaXMub3BlbkFyZ3MgPSBhcmd1bWVudHNcXG4gICAgfVxcbiAgICBmdW5jdGlvbiBWbihlLCB0KSB7XFxuICAgICAgICB2YXIgbiA9IFxcXCJmdW5jdGlvblxcXCIgPT0gdHlwZW9mIFN5bWJvbCAmJiBlW1N5bWJvbC5pdGVyYXRvcl07XFxuICAgICAgICBpZiAoIW4pXFxuICAgICAgICAgICAgcmV0dXJuIGU7XFxuICAgICAgICB2YXIgciwgbywgaSA9IG4uY2FsbChlKSwgYSA9IFtdO1xcbiAgICAgICAgdHJ5IHtcXG4gICAgICAgICAgICBmb3IgKDsgKHZvaWQgMCA9PT0gdCB8fCB0LS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZTsgKVxcbiAgICAgICAgICAgICAgICBhLnB1c2goci52YWx1ZSlcXG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcXG4gICAgICAgICAgICBvID0ge1xcbiAgICAgICAgICAgICAgICBlcnJvcjogZVxcbiAgICAgICAgICAgIH1cXG4gICAgICAgIH0gZmluYWxseSB7XFxuICAgICAgICAgICAgdHJ5IHtcXG4gICAgICAgICAgICAgICAgciAmJiAhci5kb25lICYmIChuID0gaS5yZXR1cm4pICYmIG4uY2FsbChpKVxcbiAgICAgICAgICAgIH0gZmluYWxseSB7XFxuICAgICAgICAgICAgICAgIGlmIChvKVxcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgby5lcnJvclxcbiAgICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgICAgIHJldHVybiBhXFxuICAgIH1cXG4gICAgO2Z1bmN0aW9uIGEoKSB7XFxuICAgICAgICBmb3IgKHZhciB0ID0gW10sIG4gPSAwOyBuIDwgYXJndW1lbnRzLmxlbmd0aDsgbisrKVxcbiAgICAgICAgICAgIHRbbl0gPSBhcmd1bWVudHNbbl07XFxuICAgICAgICB2YXIgciA9IFZuKHQsIDIpXFxuICAgICAgICAgICwgbyA9IHJbMF1cXG4gICAgICAgICAgLCBpID0gclsxXTtcXG4gICAgICAgIHJldHVybiB0aGlzLl91cmwgPSBpIHx8IFxcXCJcXFwiLFxcbiAgICAgICAgdGhpcy5fbWV0aG9kID0gbyAmJiBvLnRvTG93ZXJDYXNlKCkgfHwgXFxcIlxcXCIsXFxuICAgICAgICBlZS5hcHBseSh0aGlzLCB0KVxcbiAgICB9XFxuICAgIDtmb3IgKHZhciBlID0gW10sIHQgPSAwOyB0IDwgYXJndW1lbnRzLmxlbmd0aDsgdCsrKVxcbiAgICAgICAgZVt0XSA9IGFyZ3VtZW50c1t0XTtcXG4gICAgcmV0dXJuIGEuYXBwbHkodGhpcywgZSlcXG59XFxuO1xcblhNTEh0dHBSZXF1ZXN0LnByb3RvdHlwZS5zZXRSZXF1ZXN0SGVhZGVyID0gZnVuY3Rpb24oKSB7XFxuICAgIGZ1bmN0aW9uIGEoKSB7XFxuICAgICAgICBmb3IgKHZhciB0ID0gW10sIG4gPSAwOyBuIDwgYXJndW1lbnRzLmxlbmd0aDsgbisrKVxcbiAgICAgICAgICAgIHRbbl0gPSBhcmd1bWVudHNbbl07XFxuICAgICAgICByZXR1cm4gdGhpcy5fcmVxdWVzdEhlYWRlcnMgPSB0aGlzLl9yZXF1ZXN0SGVhZGVycyB8fCBbXSxcXG4gICAgICAgIHRoaXMuX3JlcXVlc3RIZWFkZXJzLnB1c2godClcXG4gICAgfVxcbiAgICA7Zm9yICh2YXIgZSA9IFtdLCB0ID0gMDsgdCA8IGFyZ3VtZW50cy5sZW5ndGg7IHQrKylcXG4gICAgICAgIGVbdF0gPSBhcmd1bWVudHNbdF07XFxuICAgIHJldHVybiBhLmFwcGx5KHRoaXMsIGUpXFxufVxcbjtcXG5YTUxIdHRwUmVxdWVzdC5wcm90b3R5cGUuc2VuZCA9IGZ1bmN0aW9uKCkge1xcbiAgICByZXR1cm4gZmFsc2VcXG4gICAgZnVuY3Rpb24gV24oZSwgdCkge1xcbiAgICAgICAgZm9yICh2YXIgbiA9IDAsIHIgPSB0Lmxlbmd0aCwgbyA9IGUubGVuZ3RoOyBuIDwgcjsgbisrLFxcbiAgICAgICAgbysrKVxcbiAgICAgICAgICAgIGVbb10gPSB0W25dO1xcbiAgICAgICAgcmV0dXJuIGVcXG4gICAgfVxcbiAgICA7ZnVuY3Rpb24gVm4oZSwgdCkge1xcbiAgICAgICAgdmFyIG4gPSBcXFwiZnVuY3Rpb25cXFwiID09IHR5cGVvZiBTeW1ib2wgJiYgZVtTeW1ib2wuaXRlcmF0b3JdO1xcbiAgICAgICAgaWYgKCFuKVxcbiAgICAgICAgICAgIHJldHVybiBlO1xcbiAgICAgICAgdmFyIHIsIG8sIGkgPSBuLmNhbGwoZSksIGEgPSBbXTtcXG4gICAgICAgIHRyeSB7XFxuICAgICAgICAgICAgZm9yICg7ICh2b2lkIDAgPT09IHQgfHwgdC0tID4gMCkgJiYgIShyID0gaS5uZXh0KCkpLmRvbmU7IClcXG4gICAgICAgICAgICAgICAgYS5wdXNoKHIudmFsdWUpXFxuICAgICAgICB9IGNhdGNoIChlKSB7XFxuICAgICAgICAgICAgbyA9IHtcXG4gICAgICAgICAgICAgICAgZXJyb3I6IGVcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9IGZpbmFsbHkge1xcbiAgICAgICAgICAgIHRyeSB7XFxuICAgICAgICAgICAgICAgIHIgJiYgIXIuZG9uZSAmJiAobiA9IGkucmV0dXJuKSAmJiBuLmNhbGwoaSlcXG4gICAgICAgICAgICB9IGZpbmFsbHkge1xcbiAgICAgICAgICAgICAgICBpZiAobylcXG4gICAgICAgICAgICAgICAgICAgIHRocm93IG8uZXJyb3JcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgICByZXR1cm4gYVxcbiAgICB9XFxuICAgIDtxciA9IGZ1bmN0aW9uKGUsIHQsIG4pIHtcXG4gICAgICAgIHJldHVybiBmdW5jdGlvbigpIHtcXG4gICAgICAgICAgICBmb3IgKHZhciByID0gW10sIG8gPSAwOyBvIDwgYXJndW1lbnRzLmxlbmd0aDsgbysrKVxcbiAgICAgICAgICAgICAgICByW29dID0gYXJndW1lbnRzW29dO1xcbiAgICAgICAgICAgIGlmICghZSlcXG4gICAgICAgICAgICAgICAgcmV0dXJuIGhyO1xcbiAgICAgICAgICAgIHZhciBpID0gZVt0XVxcbiAgICAgICAgICAgICAgLCBhID0gbi5hcHBseSh2b2lkIDAsIFduKFtpXSwgVm4ocikpKVxcbiAgICAgICAgICAgICAgLCBzID0gYTtcXG4gICAgICAgICAgICByZXR1cm4gWW4ocykgJiYgKHMgPSBmdW5jdGlvbigpIHtcXG4gICAgICAgICAgICAgICAgZm9yICh2YXIgZSA9IFtdLCB0ID0gMDsgdCA8IGFyZ3VtZW50cy5sZW5ndGg7IHQrKylcXG4gICAgICAgICAgICAgICAgICAgIGVbdF0gPSBhcmd1bWVudHNbdF07XFxuICAgICAgICAgICAgICAgIHRyeSB7XFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYS5hcHBseSh0aGlzLCBlKVxcbiAgICAgICAgICAgICAgICB9IGNhdGNoICh0KSB7XFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gWW4oaSkgJiYgaS5hcHBseSh0aGlzLCBlKVxcbiAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICksXFxuICAgICAgICAgICAgZVt0XSA9IHMsXFxuICAgICAgICAgICAgZnVuY3Rpb24obikge1xcbiAgICAgICAgICAgICAgICBuICYmIHMgIT09IGVbdF0gfHwgKGVbdF0gPSBpKVxcbiAgICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgfVxcbiAgICA7XFxuICAgIGZ1bmN0aW9uIFluKGUpIHtcXG4gICAgICAgIHJldHVybiBcXFwiZnVuY3Rpb25cXFwiID09IHR5cGVvZiBlXFxuICAgIH1cXG4gICAgO0pyID0gZnVuY3Rpb24oZSkge1xcbiAgICAgICAgcmV0dXJuIHFyKGUsIFxcXCJvbnJlYWR5c3RhdGVjaGFuZ2VcXFwiLCAoZnVuY3Rpb24odCwgbiwgciwgbywgaSkge1xcbiAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbigpIHtcXG4gICAgICAgICAgICAgICAgZm9yICh2YXIgYSA9IFtdLCBzID0gMDsgcyA8IGFyZ3VtZW50cy5sZW5ndGg7IHMrKylcXG4gICAgICAgICAgICAgICAgICAgIGFbc10gPSBhcmd1bWVudHNbc107XFxuICAgICAgICAgICAgICAgIHJldHVybiA0ID09PSB0aGlzLnJlYWR5U3RhdGUgJiYgbyAmJiBvKHtcXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IEdyLFxcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogXFxcImdldFxcXCIsXFxuICAgICAgICAgICAgICAgICAgICBldmVudDogV3IoZSwgbiwgciwgaSlcXG4gICAgICAgICAgICAgICAgfSksXFxuICAgICAgICAgICAgICAgIHQgJiYgdC5hcHBseSh0aGlzLCBhKVxcbiAgICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgICAgICkpXFxuICAgIH1cXG4gICAgO1xcbiAgICBuID0gZnVuY3Rpb24odCkge1xcbiAgICAgICAgci5jaGVjaElzUmVhZHkoKSA/IGUucHJvdG90eXBlLnNlbmRFdmVudC5jYWxsKHIsIHQpIDogci5wcmVRdWV1ZS5wdXNoKHQpXFxuICAgIH1cXG4gICAgO1xcbiAgICBmdW5jdGlvbiBldygpIHtcXG4gICAgICAgIHZhciB0ID0gdGhpc1xcbiAgICAgICAgICAsIG4gPSB0aGlzLm9wZW5BcmdzXFxuICAgICAgICAgICwgciA9IGFyZ3VtZW50c1xcbiAgICAgICAgICAsIG8gPSBuWzBdIHx8IFxcXCJHRVRcXFwiXFxuICAgICAgICAgICwgaSA9IG5ldyBVUkwoblsxXSx3aW5kb3cubG9jYXRpb24uaHJlZik7XFxuICAgIH1cXG4gICAgO2Z1bmN0aW9uIGEoKSB7XFxuICAgICAgICBmb3IgKHZhciBpID0gW10sIGEgPSAwOyBhIDwgYXJndW1lbnRzLmxlbmd0aDsgYSsrKVxcbiAgICAgICAgICAgIGlbYV0gPSBhcmd1bWVudHNbYV07XFxuICAgICAgICByZXR1cm4gSnIodGhpcykoe30sIG51bGwsIG4sIFxcXCJodHRwczovL3d3dy5kb3V5aW4uY29tL1xcXCIpLFxcbiAgICAgICAgdGhpcy5fc3RhcnQgPSBEYXRlLm5vdygpLFxcbiAgICAgICAgdGhpcy5fZGF0YSA9IG51bGwgPT0gaSA/IHZvaWQgMCA6IGlbMF0sXFxuICAgICAgICBldy5hcHBseSh0aGlzLCBpKVxcbiAgICB9XFxuICAgIDtmb3IgKHZhciBlID0gW10sIHQgPSAwOyB0IDwgYXJndW1lbnRzLmxlbmd0aDsgdCsrKVxcbiAgICAgICAgZVt0XSA9IGFyZ3VtZW50c1t0XTtcXG4gICAgcmV0dXJuIGEuYXBwbHkodGhpcywgZSlcXG59XFxuO1xcblhNTEh0dHBSZXF1ZXN0LnByb3RvdHlwZS5vdmVycmlkZU1pbWVUeXBlID0gZnVuY3Rpb24gb3ZlcnJpZGVNaW1lVHlwZSgpIHt9XFxuO1xcblhNTEh0dHBSZXF1ZXN0LnByb3RvdHlwZVtTeW1ib2wudG9TdHJpbmdUYWddID0gXFxcIlhNTEh0dHBSZXF1ZXN0XFxcIjtcXG52YXIgd2luZG93ID0ge1xcbiAgICBxdWV1ZU1pY3JvdGFzazogdW5kZWZpbmVkLFxcbiAgICBzZXRUaW1lb3V0OiB1bmRlZmluZWQsXFxuICAgIHNldEludGVydmFsOiB1bmRlZmluZWQsXFxuICAgIGNsZWFyVGltZW91dDogdW5kZWZpbmVkLFxcbiAgICBjbGVhckludGVydmFsOiB1bmRlZmluZWQsXFxuICAgIFRleHRFbmNvZGVyOiB1bmRlZmluZWQsXFxuICAgIFVSTFNlYXJjaFBhcmFtczogdW5kZWZpbmVkLFxcbiAgICBVUkw6IHVuZGVmaW5lZCxcXG4gICAgV2ViQXNzZW1ibHk6IHVuZGVmaW5lZCxcXG4gICAgLy9XZWFrUmVmOiBXZWFrUmVmLFxcbiAgICAvL0ZpbmFsaXphdGlvblJlZ2lzdHJ5OiBGaW5hbGl6YXRpb25SZWdpc3RyeSxcXG4gICAgQXRvbWljczogdW5kZWZpbmVkLFxcbiAgICBTaGFyZWRBcnJheUJ1ZmZlcjogdW5kZWZpbmVkLFxcbiAgICBpc05hTjogdW5kZWZpbmVkLFxcbiAgICBpc0Zpbml0ZTogdW5kZWZpbmVkLFxcbiAgICBldmFsOiBldmFsLFxcbiAgICB1bmVzY2FwZTogdW5kZWZpbmVkLFxcbiAgICBlc2NhcGU6IHVuZGVmaW5lZCxcXG4gICAgZW5jb2RlVVJJQ29tcG9uZW50OiBlbmNvZGVVUklDb21wb25lbnQsXFxuICAgIGVuY29kZVVSSTogZW5jb2RlVVJJLFxcbiAgICBkZWNvZGVVUklDb21wb25lbnQ6IGRlY29kZVVSSUNvbXBvbmVudCxcXG4gICAgZGVjb2RlVVJJOiBkZWNvZGVVUkksXFxuICAgIFJlZmxlY3Q6IHVuZGVmaW5lZCxcXG4gICAgUHJveHk6IHVuZGVmaW5lZCxcXG4gICAgV2Vha1NldDogdW5kZWZpbmVkLFxcbiAgICBXZWFrTWFwOiB1bmRlZmluZWQsXFxuICAgIFNldDogdW5kZWZpbmVkLFxcbiAgICBCaWdJbnQ6IHVuZGVmaW5lZCxcXG4gICAgTWFwOiB1bmRlZmluZWQsXFxuICAgIERhdGFWaWV3OiB1bmRlZmluZWQsXFxuICAgIEJpZ0ludDY0QXJyYXk6IHVuZGVmaW5lZCxcXG4gICAgQmlnVWludDY0QXJyYXk6IHVuZGVmaW5lZCxcXG4gICAgVWludDhDbGFtcGVkQXJyYXk6IHVuZGVmaW5lZCxcXG4gICAgRmxvYXQ2NEFycmF5OiB1bmRlZmluZWQsXFxuICAgIEZsb2F0MzJBcnJheTogdW5kZWZpbmVkLFxcbiAgICBJbnQzMkFycmF5OiB1bmRlZmluZWQsXFxuICAgIFVpbnQzMkFycmF5OiB1bmRlZmluZWQsXFxuICAgIEludDE2QXJyYXk6IHVuZGVmaW5lZCxcXG4gICAgVWludDE2QXJyYXk6IHVuZGVmaW5lZCxcXG4gICAgSW50OEFycmF5OiB1bmRlZmluZWQsXFxuICAgIFVpbnQ4QXJyYXk6IHVuZGVmaW5lZCxcXG4gICAgQXJyYXlCdWZmZXI6IHVuZGVmaW5lZCxcXG4gICAgSW50bDogdW5kZWZpbmVkLFxcbiAgICBNYXRoOiBNYXRoLFxcbiAgICBKU09OOiBKU09OLFxcbiAgICBVUklFcnJvcjogdW5kZWZpbmVkLFxcbiAgICBUeXBlRXJyb3I6IHVuZGVmaW5lZCxcXG4gICAgU3ludGF4RXJyb3I6IHVuZGVmaW5lZCxcXG4gICAgUmVmZXJlbmNlRXJyb3I6IHVuZGVmaW5lZCxcXG4gICAgUmFuZ2VFcnJvcjogdW5kZWZpbmVkLFxcbiAgICBFdmFsRXJyb3I6IHVuZGVmaW5lZCxcXG4gICAgRXJyb3I6IHVuZGVmaW5lZCxcXG4gICAgUHJvbWlzZTogdW5kZWZpbmVkLFxcbiAgICBEYXRlOiBEYXRlLFxcbiAgICBTeW1ib2w6IHVuZGVmaW5lZCxcXG4gICAgU3RyaW5nOiBTdHJpbmcsXFxuICAgIEJvb2xlYW46IEJvb2xlYW4sXFxuICAgIHVuZGVmaW5lZDogdW5kZWZpbmVkLFxcbiAgICBOYU46IE5hTixcXG4gICAgSW5maW5pdHk6IEluZmluaXR5LFxcbiAgICBwYXJzZUludDogcGFyc2VJbnQsXFxuICAgIHBhcnNlRmxvYXQ6IHBhcnNlRmxvYXQsXFxuICAgIE51bWJlcjogTnVtYmVyLFxcbiAgICBBcnJheTogQXJyYXksXFxuICAgIEZ1bmN0aW9uOiBGdW5jdGlvbixcXG4gICAgT2JqZWN0OiBPYmplY3QsXFxuICAgIG5hdmlnYXRvcjogdW5kZWZpbmVkLFxcbiAgICBsb2NhdGlvbjogbG9jYXRpb24sXFxuICAgIGRvY3VtZW50OiBkb2N1bWVudCxcXG4gICAgaGlzdG9yeTogaGlzdG9yeSxcXG4gICAgaW5kZXhlZERCOiB1bmRlZmluZWQsXFxuICAgIGxvY2FsU3RvcmFnZTogdW5kZWZpbmVkLFxcbiAgICBzZXNzaW9uU3RvcmFnZTogdW5kZWZpbmVkLFxcbiAgICBSZWdFeHA6IFJlZ0V4cCxcXG4gICAgWE1MSHR0cFJlcXVlc3Q6IFhNTEh0dHBSZXF1ZXN0LFxcbiAgICBmZXRjaDogZnVuY3Rpb24gZmV0Y2goKSB7cmV0dXJuIFxcXCJbbmF0aXZlIGNvZGVdXFxcIn0sXFxuICAgIGNvbnNvbGU6IGNvbnNvbGUsXFxuICAgIEhUTUxFbGVtZW50OiBmdW5jdGlvbiBIVE1MRWxlbWVudCgpIHt9LFxcbiAgICBjaHJvbWU6IHtcXG4gICAgICAgIFxcXCJhcHBcXFwiOiB7XFxuICAgICAgICAgICAgXFxcImlzSW5zdGFsbGVkXFxcIjogZmFsc2UsXFxuICAgICAgICAgICAgXFxcIkluc3RhbGxTdGF0ZVxcXCI6IHtcXG4gICAgICAgICAgICAgICAgXFxcIkRJU0FCTEVEXFxcIjogXFxcImRpc2FibGVkXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcIklOU1RBTExFRFxcXCI6IFxcXCJpbnN0YWxsZWRcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiTk9UX0lOU1RBTExFRFxcXCI6IFxcXCJub3RfaW5zdGFsbGVkXFxcIlxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAgXFxcIlJ1bm5pbmdTdGF0ZVxcXCI6IHtcXG4gICAgICAgICAgICAgICAgXFxcIkNBTk5PVF9SVU5cXFwiOiBcXFwiY2Fubm90X3J1blxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJSRUFEWV9UT19SVU5cXFwiOiBcXFwicmVhZHlfdG9fcnVuXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcIlJVTk5JTkdcXFwiOiBcXFwicnVubmluZ1xcXCJcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9LFxcbiAgICAgICAgXFxcInJ1bnRpbWVcXFwiOiB7XFxuICAgICAgICAgICAgY29ubmVjdDogZnVuY3Rpb24gY29ubmVjdCgpIHtyZXR1cm4gXFxcIltuYXRpdmUgY29kZV1cXFwifSxcXG4gICAgICAgICAgICBcXFwiT25JbnN0YWxsZWRSZWFzb25cXFwiOiB7XFxuICAgICAgICAgICAgICAgIFxcXCJDSFJPTUVfVVBEQVRFXFxcIjogXFxcImNocm9tZV91cGRhdGVcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiSU5TVEFMTFxcXCI6IFxcXCJpbnN0YWxsXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcIlNIQVJFRF9NT0RVTEVfVVBEQVRFXFxcIjogXFxcInNoYXJlZF9tb2R1bGVfdXBkYXRlXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcIlVQREFURVxcXCI6IFxcXCJ1cGRhdGVcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICBcXFwiT25SZXN0YXJ0UmVxdWlyZWRSZWFzb25cXFwiOiB7XFxuICAgICAgICAgICAgICAgIFxcXCJBUFBfVVBEQVRFXFxcIjogXFxcImFwcF91cGRhdGVcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiT1NfVVBEQVRFXFxcIjogXFxcIm9zX3VwZGF0ZVxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJQRVJJT0RJQ1xcXCI6IFxcXCJwZXJpb2RpY1xcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIFxcXCJQbGF0Zm9ybUFyY2hcXFwiOiB7XFxuICAgICAgICAgICAgICAgIFxcXCJBUk1cXFwiOiBcXFwiYXJtXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcIkFSTTY0XFxcIjogXFxcImFybTY0XFxcIixcXG4gICAgICAgICAgICAgICAgXFxcIk1JUFNcXFwiOiBcXFwibWlwc1xcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJNSVBTNjRcXFwiOiBcXFwibWlwczY0XFxcIixcXG4gICAgICAgICAgICAgICAgXFxcIlg4Nl8zMlxcXCI6IFxcXCJ4ODYtMzJcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiWDg2XzY0XFxcIjogXFxcIng4Ni02NFxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIFxcXCJQbGF0Zm9ybU5hY2xBcmNoXFxcIjoge1xcbiAgICAgICAgICAgICAgICBcXFwiQVJNXFxcIjogXFxcImFybVxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJNSVBTXFxcIjogXFxcIm1pcHNcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiTUlQUzY0XFxcIjogXFxcIm1pcHM2NFxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJYODZfMzJcXFwiOiBcXFwieDg2LTMyXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcIlg4Nl82NFxcXCI6IFxcXCJ4ODYtNjRcXFwiXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICBcXFwiUGxhdGZvcm1Pc1xcXCI6IHtcXG4gICAgICAgICAgICAgICAgXFxcIkFORFJPSURcXFwiOiBcXFwiYW5kcm9pZFxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJDUk9TXFxcIjogXFxcImNyb3NcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiTElOVVhcXFwiOiBcXFwibGludXhcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiTUFDXFxcIjogXFxcIm1hY1xcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJPUEVOQlNEXFxcIjogXFxcIm9wZW5ic2RcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiV0lOXFxcIjogXFxcIndpblxcXCJcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIFxcXCJSZXF1ZXN0VXBkYXRlQ2hlY2tTdGF0dXNcXFwiOiB7XFxuICAgICAgICAgICAgICAgIFxcXCJOT19VUERBVEVcXFwiOiBcXFwibm9fdXBkYXRlXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcIlRIUk9UVExFRFxcXCI6IFxcXCJ0aHJvdHRsZWRcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiVVBEQVRFX0FWQUlMQUJMRVxcXCI6IFxcXCJ1cGRhdGVfYXZhaWxhYmxlXFxcIlxcbiAgICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgfVxcbn07XFxud2luZG93W1N5bWJvbC50b1N0cmluZ1RhZ10gPSBcXFwiV2luZG93XFxcIjtcXG5uYXZpZ2F0b3JbU3ltYm9sLnRvU3RyaW5nVGFnXSA9IFxcXCJOYXZpZ2F0b3JcXFwiO1xcbmxvY2F0aW9uW1N5bWJvbC50b1N0cmluZ1RhZ10gPSBcXFwiTG9jYXRpb25cXFwiO1xcbmRvY3VtZW50W1N5bWJvbC50b1N0cmluZ1RhZ10gPSBcXFwiSFRNTERvY3VtZW50XFxcIjtcXG5oaXN0b3J5W1N5bWJvbC50b1N0cmluZ1RhZ10gPSBcXFwiSGlzdG9yeVxcXCI7XFxuaW5kZXhlZERCW1N5bWJvbC50b1N0cmluZ1RhZ10gPSBcXFwiSURCRmFjdG9yeVxcXCI7XFxubG9jYWxTdG9yYWdlW1N5bWJvbC50b1N0cmluZ1RhZ10gPSBcXFwiU3RvcmFnZVxcXCI7XFxuc2Vzc2lvblN0b3JhZ2VbU3ltYm9sLnRvU3RyaW5nVGFnXSA9IFxcXCJTdG9yYWdlXFxcIjtcXG5PYmplY3QucHJvdG90eXBlLmNvbnN0cnVjdG9yLmdldE93blByb3BlcnR5TmFtZXMgPSBmdW5jdGlvbih4KSB7XFxuICAgIGlmICh0b1N0cmluZy5jYWxsKHgpID09IFxcXCJbb2JqZWN0IE5hdmlnYXRvcl1cXFwiKSB7XFxuICAgICAgICByZXR1cm4gW11cXG4gICAgfSBlbHNlIHtcXG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyh4KVxcbiAgICB9XFxufVxcblxcbmZ1bmN0aW9uIG11XygpIHtcXG4gICAgdmFyIGUgPSBbXTtcXG4gICAgdmFyIGEgPSBcXFwiMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWlxcXCI7XFxuICAgIGZvciAodmFyIGIgPSAwOyBiIDwgMjg7IGIrKykge1xcbiAgICAgICAgZVtiXSA9IGFbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogYS5sZW5ndGgpXVxcbiAgICB9XFxuICAgIDtyZXR1cm4gZS5qb2luKCcnKVxcbn1cXG5cXG5cXG5PYmplY3QuZnJlZXplKG5hdmlnYXRvcik7XFxuT2JqZWN0LmZyZWV6ZShkb2N1bWVudCk7XFxuT2JqZWN0LmZyZWV6ZShsb2NhdGlvbik7XFxuT2JqZWN0LmZyZWV6ZShoaXN0b3J5KTtcXG5PYmplY3QuZnJlZXplKGluZGV4ZWREQik7XFxuLy9PYmplY3QuZnJlZXplKGxvY2FsU3RvcmFnZSk7XFxuLy9PYmplY3QuZnJlZXplKHNlc3Npb25TdG9yYWdlKTtcXG5cXG52YXIgZ2xiO1xcbihnbGIgPSBcXFwidW5kZWZpbmVkXFxcIiA9PSB0eXBlb2Ygd2luZG93ID8gZ2xvYmFsIDogd2luZG93KS5fJGpzdm1wcnQgPSBmdW5jdGlvbihiLCBlLCBmKSB7XFxuICAgIGZ1bmN0aW9uIGEoKSB7XFxuICAgICAgICBpZiAoXFxcInVuZGVmaW5lZFxcXCIgPT0gdHlwZW9mIFJlZmxlY3QgfHwgIVJlZmxlY3QuY29uc3RydWN0KVxcbiAgICAgICAgICAgIHJldHVybiAhMTtcXG4gICAgICAgIGlmIChSZWZsZWN0LmNvbnN0cnVjdC5zaGFtKVxcbiAgICAgICAgICAgIHJldHVybiAhMTtcXG4gICAgICAgIGlmIChcXFwiZnVuY3Rpb25cXFwiID09IHR5cGVvZiBQcm94eSlcXG4gICAgICAgICAgICByZXR1cm4gITA7XFxuICAgICAgICB0cnkge1xcbiAgICAgICAgICAgIHJldHVybiBEYXRlLnByb3RvdHlwZS50b1N0cmluZy5jYWxsKFJlZmxlY3QuY29uc3RydWN0KERhdGUsIFtdLCAoZnVuY3Rpb24oKSB7fVxcbiAgICAgICAgICAgICkpKSxcXG4gICAgICAgICAgICAhMFxcbiAgICAgICAgfSBjYXRjaCAoYikge1xcbiAgICAgICAgICAgIHJldHVybiAhMVxcbiAgICAgICAgfVxcbiAgICB9XFxuICAgIGZ1bmN0aW9uIGQoYiwgZSwgZikge1xcbiAgICAgICAgcmV0dXJuIChkID0gYSgpID8gUmVmbGVjdC5jb25zdHJ1Y3QgOiBmdW5jdGlvbihiLCBlLCBmKSB7XFxuICAgICAgICAgICAgdmFyIGEgPSBbbnVsbF07XFxuICAgICAgICAgICAgYS5wdXNoLmFwcGx5KGEsIGUpO1xcbiAgICAgICAgICAgIHZhciBkID0gbmV3IChGdW5jdGlvbi5iaW5kLmFwcGx5KGIsIGEpKTtcXG4gICAgICAgICAgICByZXR1cm4gZiAmJiBjKGQsIGYucHJvdG90eXBlKSxcXG4gICAgICAgICAgICBkXFxuICAgICAgICB9XFxuICAgICAgICApLmFwcGx5KG51bGwsIGFyZ3VtZW50cylcXG4gICAgfVxcbiAgICBmdW5jdGlvbiBjKGIsIGUpIHtcXG4gICAgICAgIHJldHVybiAoYyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fCBmdW5jdGlvbihiLCBlKSB7XFxuICAgICAgICAgICAgcmV0dXJuIGIuX19wcm90b19fID0gZSxcXG4gICAgICAgICAgICBiXFxuICAgICAgICB9XFxuICAgICAgICApKGIsIGUpXFxuICAgIH1cXG4gICAgZnVuY3Rpb24gbihiKSB7XFxuICAgICAgICByZXR1cm4gZnVuY3Rpb24oYikge1xcbiAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGIpKSB7XFxuICAgICAgICAgICAgICAgIGZvciAodmFyIGUgPSAwLCBmID0gbmV3IEFycmF5KGIubGVuZ3RoKTsgZSA8IGIubGVuZ3RoOyBlKyspXFxuICAgICAgICAgICAgICAgICAgICBmW2VdID0gYltlXTtcXG4gICAgICAgICAgICAgICAgcmV0dXJuIGZcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9KGIpIHx8IGZ1bmN0aW9uKGIpIHtcXG4gICAgICAgICAgICBpZiAoU3ltYm9sLml0ZXJhdG9yIGluIE9iamVjdChiKSB8fCBcXFwiW29iamVjdCBBcmd1bWVudHNdXFxcIiA9PT0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGIpKVxcbiAgICAgICAgICAgICAgICByZXR1cm4gQXJyYXkuZnJvbShiKVxcbiAgICAgICAgfShiKSB8fCBmdW5jdGlvbigpIHtcXG4gICAgICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFxcXCJJbnZhbGlkIGF0dGVtcHQgdG8gc3ByZWFkIG5vbi1pdGVyYWJsZSBpbnN0YW5jZVxcXCIpXFxuICAgICAgICB9KClcXG4gICAgfVxcbiAgICBmb3IgKHZhciBpID0gW10sIHIgPSAwLCB0ID0gW10sIG8gPSAwLCBsID0gZnVuY3Rpb24oYiwgZSkge1xcbiAgICAgICAgdmFyIGYgPSBiW2UrK11cXG4gICAgICAgICAgLCBhID0gYltlXVxcbiAgICAgICAgICAsIGQgPSBwYXJzZUludChcXFwiXFxcIiArIGYgKyBhLCAxNik7XFxuICAgICAgICBpZiAoZCA+PiA3ID09IDApXFxuICAgICAgICAgICAgcmV0dXJuIFsxLCBkXTtcXG4gICAgICAgIGlmIChkID4+IDYgPT0gMikge1xcbiAgICAgICAgICAgIHZhciBjID0gcGFyc2VJbnQoXFxcIlxcXCIgKyBiWysrZV0gKyBiWysrZV0sIDE2KTtcXG4gICAgICAgICAgICByZXR1cm4gZCAmPSA2MyxcXG4gICAgICAgICAgICBbMiwgYyA9IChkIDw8PSA4KSArIGNdXFxuICAgICAgICB9XFxuICAgICAgICBpZiAoZCA+PiA2ID09IDMpIHtcXG4gICAgICAgICAgICB2YXIgbiA9IHBhcnNlSW50KFxcXCJcXFwiICsgYlsrK2VdICsgYlsrK2VdLCAxNilcXG4gICAgICAgICAgICAgICwgaSA9IHBhcnNlSW50KFxcXCJcXFwiICsgYlsrK2VdICsgYlsrK2VdLCAxNik7XFxuICAgICAgICAgICAgcmV0dXJuIGQgJj0gNjMsXFxuICAgICAgICAgICAgWzMsIGkgPSAoZCA8PD0gMTYpICsgKG4gPDw9IDgpICsgaV1cXG4gICAgICAgIH1cXG4gICAgfSwgdSA9IGZ1bmN0aW9uKGIsIGUpIHtcXG4gICAgICAgIHZhciBmID0gcGFyc2VJbnQoXFxcIlxcXCIgKyBiW2VdICsgYltlICsgMV0sIDE2KTtcXG4gICAgICAgIHJldHVybiBmID0gZiA+IDEyNyA/IC0yNTYgKyBmIDogZlxcbiAgICB9LCBzID0gZnVuY3Rpb24oYiwgZSkge1xcbiAgICAgICAgdmFyIGYgPSBwYXJzZUludChcXFwiXFxcIiArIGJbZV0gKyBiW2UgKyAxXSArIGJbZSArIDJdICsgYltlICsgM10sIDE2KTtcXG4gICAgICAgIHJldHVybiBmID0gZiA+IDMyNzY3ID8gLTY1NTM2ICsgZiA6IGZcXG4gICAgfSwgcCA9IGZ1bmN0aW9uKGIsIGUpIHtcXG4gICAgICAgIHZhciBmID0gcGFyc2VJbnQoXFxcIlxcXCIgKyBiW2VdICsgYltlICsgMV0gKyBiW2UgKyAyXSArIGJbZSArIDNdICsgYltlICsgNF0gKyBiW2UgKyA1XSArIGJbZSArIDZdICsgYltlICsgN10sIDE2KTtcXG4gICAgICAgIHJldHVybiBmID0gZiA+IDIxNDc0ODM2NDcgPyAwICsgZiA6IGZcXG4gICAgfSwgeSA9IGZ1bmN0aW9uKGIsIGUpIHtcXG4gICAgICAgIHJldHVybiBwYXJzZUludChcXFwiXFxcIiArIGJbZV0gKyBiW2UgKyAxXSwgMTYpXFxuICAgIH0sIHYgPSBmdW5jdGlvbihiLCBlKSB7XFxuICAgICAgICByZXR1cm4gcGFyc2VJbnQoXFxcIlxcXCIgKyBiW2VdICsgYltlICsgMV0gKyBiW2UgKyAyXSArIGJbZSArIDNdLCAxNilcXG4gICAgfSwgZyA9IGcgfHwgd2luZG93IHx8IHdpbmRvdywgaCA9IE9iamVjdC5rZXlzIHx8IGZ1bmN0aW9uKGIpIHtcXG4gICAgICAgIHZhciBlID0ge31cXG4gICAgICAgICAgLCBmID0gMDtcXG4gICAgICAgIGZvciAodmFyIGEgaW4gYilcXG4gICAgICAgICAgICBlW2YrK10gPSBhO1xcbiAgICAgICAgcmV0dXJuIGUubGVuZ3RoID0gZixcXG4gICAgICAgIGVcXG4gICAgfVxcbiAgICAsIG0gPSAoYi5sZW5ndGgsXFxuICAgIDApLCBJID0gXFxcIlxcXCIsIEMgPSBtOyBDIDwgbSArIDE2OyBDKyspIHtcXG4gICAgICAgIHZhciBxID0gXFxcIlxcXCIgKyBiW0MrK10gKyBiW0NdO1xcbiAgICAgICAgcSA9IHBhcnNlSW50KHEsIDE2KSxcXG4gICAgICAgIEkgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShxKVxcbiAgICB9XFxuICAgIGlmIChcXFwiSE5PSkA/UkNcXFwiICE9IEkpXFxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXFxcImVycm9yIG1hZ2ljIG51bWJlciBcXFwiICsgSSk7XFxuICAgIG0gKz0gMTY7XFxuICAgIHBhcnNlSW50KFxcXCJcXFwiICsgYlttXSArIGJbbSArIDFdLCAxNik7XFxuICAgIG0gKz0gOCxcXG4gICAgciA9IDA7XFxuICAgIGZvciAodmFyIHcgPSAwOyB3IDwgNDsgdysrKSB7XFxuICAgICAgICB2YXIgUyA9IG0gKyAyICogd1xcbiAgICAgICAgICAsIFIgPSBcXFwiXFxcIiArIGJbUysrXSArIGJbU11cXG4gICAgICAgICAgLCB4ID0gcGFyc2VJbnQoUiwgMTYpO1xcbiAgICAgICAgciArPSAoMyAmIHgpIDw8IDIgKiB3XFxuICAgIH1cXG4gICAgbSArPSAxNixcXG4gICAgbSArPSA4O1xcbiAgICB2YXIgeiA9IHBhcnNlSW50KFxcXCJcXFwiICsgYlttXSArIGJbbSArIDFdICsgYlttICsgMl0gKyBiW20gKyAzXSArIGJbbSArIDRdICsgYlttICsgNV0gKyBiW20gKyA2XSArIGJbbSArIDddLCAxNilcXG4gICAgICAsIE8gPSB6XFxuICAgICAgLCBFID0gbSArPSA4XFxuICAgICAgLCBqID0gdihiLCBtICs9IHopO1xcbiAgICBqWzFdO1xcbiAgICBtICs9IDQsXFxuICAgIGkgPSB7XFxuICAgICAgICBwOiBbXSxcXG4gICAgICAgIHE6IFtdXFxuICAgIH07XFxuICAgIGZvciAodmFyIEEgPSAwOyBBIDwgajsgQSsrKSB7XFxuICAgICAgICBmb3IgKHZhciBEID0gbChiLCBtKSwgVCA9IG0gKz0gMiAqIERbMF0sICQgPSBpLnAubGVuZ3RoLCBQID0gMDsgUCA8IERbMV07IFArKykge1xcbiAgICAgICAgICAgIHZhciBVID0gbChiLCBUKTtcXG4gICAgICAgICAgICBpLnAucHVzaChVWzFdKSxcXG4gICAgICAgICAgICBUICs9IDIgKiBVWzBdXFxuICAgICAgICB9XFxuICAgICAgICBtID0gVCxcXG4gICAgICAgIGkucS5wdXNoKFskLCBpLnAubGVuZ3RoXSlcXG4gICAgfVxcbiAgICB2YXIgXyA9IHtcXG4gICAgICAgIDU6IDEsXFxuICAgICAgICA2OiAxLFxcbiAgICAgICAgNzA6IDEsXFxuICAgICAgICAyMjogMSxcXG4gICAgICAgIDIzOiAxLFxcbiAgICAgICAgMzc6IDEsXFxuICAgICAgICA3MzogMVxcbiAgICB9XFxuICAgICAgLCBrID0ge1xcbiAgICAgICAgNzI6IDFcXG4gICAgfVxcbiAgICAgICwgTSA9IHtcXG4gICAgICAgIDc0OiAxXFxuICAgIH1cXG4gICAgICAsIEggPSB7XFxuICAgICAgICAxMTogMSxcXG4gICAgICAgIDEyOiAxLFxcbiAgICAgICAgMjQ6IDEsXFxuICAgICAgICAyNjogMSxcXG4gICAgICAgIDI3OiAxLFxcbiAgICAgICAgMzE6IDFcXG4gICAgfVxcbiAgICAgICwgSiA9IHtcXG4gICAgICAgIDEwOiAxXFxuICAgIH1cXG4gICAgICAsIE4gPSB7XFxuICAgICAgICAyOiAxLFxcbiAgICAgICAgMjk6IDEsXFxuICAgICAgICAzMDogMSxcXG4gICAgICAgIDIwOiAxXFxuICAgIH1cXG4gICAgICAsIEIgPSBbXVxcbiAgICAgICwgVyA9IFtdO1xcbiAgICBmdW5jdGlvbiBGKGIsIGUsIGYpIHtcXG4gICAgICAgIGZvciAodmFyIGEgPSBlOyBhIDwgZSArIGY7ICkge1xcbiAgICAgICAgICAgIHZhciBkID0geShiLCBhKTtcXG4gICAgICAgICAgICBCW2FdID0gZCxcXG4gICAgICAgICAgICBhICs9IDI7XFxuICAgICAgICAgICAga1tkXSA/IChXW2FdID0gdShiLCBhKSxcXG4gICAgICAgICAgICBhICs9IDIpIDogX1tkXSA/IChXW2FdID0gcyhiLCBhKSxcXG4gICAgICAgICAgICBhICs9IDQpIDogTVtkXSA/IChXW2FdID0gcChiLCBhKSxcXG4gICAgICAgICAgICBhICs9IDgpIDogSFtkXSA/IChXW2FdID0geShiLCBhKSxcXG4gICAgICAgICAgICBhICs9IDIpIDogSltkXSA/IChXW2FdID0gdihiLCBhKSxcXG4gICAgICAgICAgICBhICs9IDQpIDogTltkXSAmJiAoV1thXSA9IHYoYiwgYSksXFxuICAgICAgICAgICAgYSArPSA0KVxcbiAgICAgICAgfVxcbiAgICB9XFxuICAgIHJldHVybiBLKGIsIEUsIE8gLyAyLCBbXSwgZSwgZik7XFxuICAgIGZ1bmN0aW9uIEcoYiwgZSwgZiwgYSwgYywgbCwgbSwgSSkge1xcbiAgICAgICAgbnVsbCA9PSBsICYmIChsID0gd2luZG93KTtcXG4gICAgICAgIHZhciBDLCBxLCB3LCBTID0gW10sIFIgPSAwO1xcbiAgICAgICAgbSAmJiAoQyA9IG0pO1xcbiAgICAgICAgdmFyIHgsIHosIE8gPSBlLCBFID0gTyArIDIgKiBmO1xcbiAgICAgICAgaWYgKCFJKVxcbiAgICAgICAgICAgIGZvciAoOyBPIDwgRTsgKSB7XFxuICAgICAgICAgICAgICAgIHZhciBqID0gcGFyc2VJbnQoXFxcIlxcXCIgKyBiW09dICsgYltPICsgMV0sIDE2KTtcXG4gICAgICAgICAgICAgICAgTyArPSAyO1xcbiAgICAgICAgICAgICAgICB2YXIgQSA9IDMgJiAoeCA9IDEzICogaiAlIDI0MSk7XFxuICAgICAgICAgICAgICAgIGlmICh4ID4+PSAyLFxcbiAgICAgICAgICAgICAgICBBIDwgMSkge1xcbiAgICAgICAgICAgICAgICAgICAgQSA9IDMgJiB4O1xcbiAgICAgICAgICAgICAgICAgICAgaWYgKHggPj49IDIsXFxuICAgICAgICAgICAgICAgICAgICBBID4gMilcXG4gICAgICAgICAgICAgICAgICAgICAgICAoQSA9IHgpID4gMTAgPyBTWysrUl0gPSB2b2lkIDAgOiBBID4gMSA/IChDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIFNbUl0gPSBTW1JdID49IEMpIDogQSA+IC0xICYmIChTWysrUl0gPSBudWxsKTtcXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEEgPiAxKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKChBID0geCkgPiAxMSlcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgU1tSLS1dO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChBID4gNykge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHogPSB2KGIsIE8pLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBID0gXFxcIlxcXCIsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFAgPSBpLnFbel1bMF07IFAgPCBpLnFbel1bMV07IFArKylcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEEgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShyIF4gaS5wW1BdKTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgTyArPSA0LFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1ItLV1bQV0gPSBDXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEEgPiA1ICYmIChTW1JdID0gaChTW1JdKSlcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoQSA+IDApIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAoQSA9IHgpID4gOCA/IChDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIFNbUl0gPSB0eXBlb2YgQykgOiBBID4gNiA/IFNbUl0gPSAtLVNbUl0gOiBBID4gNCA/IFNbUiAtPSAxXSA9IFNbUl1bU1tSICsgMV1dIDogQSA+IDIgJiYgKHEgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgKEEgPSBTW1JdKS54ID09PSBHID8gQS55ID49IDEgPyBTW1JdID0gSyhiLCBBLmMsIEEubCwgW3FdLCBBLnosIHcsIG51bGwsIDEpIDogKFNbUl0gPSBLKGIsIEEuYywgQS5sLCBbcV0sIEEueiwgdywgbnVsbCwgMCksXFxuICAgICAgICAgICAgICAgICAgICAgICAgQS55KyspIDogU1tSXSA9IEEocSkpXFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgoQSA9IHgpID4gMTQpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHogPSBzKGIsIE8pLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVSA9IGZ1bmN0aW9uIGUoKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZiA9IGFyZ3VtZW50cztcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBlLnkgPiAwID8gSyhiLCBlLmMsIGUubCwgZiwgZS56LCB0aGlzLCBudWxsLCAwKSA6IChlLnkrKyxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEsoYiwgZS5jLCBlLmwsIGYsIGUueiwgdGhpcywgbnVsbCwgMCkpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKS5jID0gTyArIDQsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFUubCA9IHogLSAyLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBVLnggPSBHLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBVLnkgPSAwLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBVLnogPSBjLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gVSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgTyArPSAyICogeiAtIDI7XFxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoQSA+IDEyKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBxID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3ID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoQSA9IFNbUi0tXSkueCA9PT0gRyA/IEEueSA+PSAxID8gU1srK1JdID0gSyhiLCBBLmMsIEEubCwgcSwgQS56LCB3LCBudWxsLCAxKSA6IChTWysrUl0gPSBLKGIsIEEuYywgQS5sLCBxLCBBLnosIHcsIG51bGwsIDApLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBLnkrKykgOiBTWysrUl0gPSBBLmFwcGx5KHcsIHEpO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEEgPiA1KVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXSAhPSBDO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEEgPiAzKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXSAqIEM7XFxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoQSA+IC0xKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gWzEsIFNbUi0tXV1cXG4gICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChBIDwgMikge1xcbiAgICAgICAgICAgICAgICAgICAgQSA9IDMgJiB4O1xcbiAgICAgICAgICAgICAgICAgICAgaWYgKHggPj49IDIsXFxuICAgICAgICAgICAgICAgICAgICBBIDwgMSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgoQSA9IHgpID4gOSlcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEEgPiA3KVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXSAmIEM7XFxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoQSA+IDUpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHogPSB5KGIsIE8pLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBPICs9IDIsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNbUiAtPSB6XSA9IDAgPT09IHogPyBuZXcgU1tSXSA6IGQoU1tSXSwgbihTLnNsaWNlKFIgKyAxLCBSICsgeiArIDEpKSk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoQSA+IDMpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeiA9IHMoYiwgTyk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodFtvXVsyXSA9IDEsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxID09IChDID0gRyhiLCBPICsgNCwgeiAtIDMsIFtdLCBjLCBsLCBudWxsLCAwKSlbMF0pXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIENcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAobSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRbb10gJiYgdFtvXVsxXSAmJiAxID09IChDID0gRyhiLCB0W29dWzFdWzBdLCB0W29dWzFdWzFdLCBbXSwgYywgbCwgbSwgMCkpWzBdKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBDXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZmluYWxseSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodFtvXSAmJiB0W29dWzBdICYmIDEgPT0gKEMgPSBHKGIsIHRbb11bMF1bMF0sIHRbb11bMF1bMV0sIFtdLCBjLCBsLCBudWxsLCAwKSlbMF0pXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEM7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0W29dID0gMCxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8tLVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gMiAqIHogLSAyXFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChBIDwgMikge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgoQSA9IHgpID4gMTIpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNbKytSXSA9IHUoYiwgTyksXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gMjtcXG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChBID4gMTApXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNbUl0gPSBTW1JdIDw8IEM7XFxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoQSA+IDgpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh6ID0gdihiLCBPKSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQSA9IFxcXCJcXFwiLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQID0gaS5xW3pdWzBdOyBQIDwgaS5xW3pdWzFdOyBQKyspXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBICs9IFN0cmluZy5mcm9tQ2hhckNvZGUociBeIGkucFtQXSk7ICBpZihPPT09NDM1OCl7ZGVidWdnZXJ9XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gNDtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFNbUl0gPT09IHVuZGVmaW5lZCkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl1bQV1cXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2VcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQSA+IDYgJiYgKHEgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEMgPSBkZWxldGUgU1tSLS1dW3FdKVxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChBIDwgMykge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIChBID0geCkgPCAyID8gU1srK1JdID0gQyA6IEEgPCA0ID8gKEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl0gPD0gQykgOiBBIDwgMTEgPyAoQyA9IFNbUiAtPSAyXVtTW1IgKyAxXV0gPSBTW1IgKyAyXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBSLS0pIDogQSA8IDEzICYmIChDID0gU1tSXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBTWysrUl0gPSBDKVxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoKEEgPSB4KSA+IDEyKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTWysrUl0gPSBsO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEEgPiA1KVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXSAhPT0gQztcXG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChBID4gMylcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQyA9IFNbUi0tXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl0gLyBDO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEEgPiAxKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgoeiA9IHMoYiwgTykpIDwgMCkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSSA9IDEsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGKGIsIGUsIDIgKiBmKSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gMiAqIHogLSAyO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBPICs9IDIgKiB6IC0gMlxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBID4gLTEgJiYgKFNbUl0gPSAhU1tSXSlcXG4gICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChBIDwgMykge1xcbiAgICAgICAgICAgICAgICAgICAgQSA9IDMgJiB4O1xcbiAgICAgICAgICAgICAgICAgICAgaWYgKHggPj49IDIsXFxuICAgICAgICAgICAgICAgICAgICBBID4gMilcXG4gICAgICAgICAgICAgICAgICAgICAgICAoQSA9IHgpID4gNyA/IChDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIFNbUl0gPSBTW1JdIHwgQykgOiBBID4gNSA/ICh6ID0geShiLCBPKSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBPICs9IDIsXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1srK1JdID0gY1tcXFwiJFxcXCIgKyB6XSkgOiBBID4gMyAmJiAoeiA9IHMoYiwgTyksXFxuICAgICAgICAgICAgICAgICAgICAgICAgdFtvXVswXSAmJiAhdFtvXVsyXSA/IHRbb11bMV0gPSBbTyArIDQsIHogLSAzXSA6IHRbbysrXSA9IFswLCBbTyArIDQsIHogLSAzXSwgMF0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgTyArPSAyICogeiAtIDIpO1xcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoQSA+IDEpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoKEEgPSB4KSA8IDIpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh6ID0gdihiLCBPKSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQyA9IFxcXCJcXFwiLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQID0gaS5xW3pdWzBdOyBQIDwgaS5xW3pdWzFdOyBQKyspXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDICs9IFN0cmluZy5mcm9tQ2hhckNvZGUociBeIGkucFtQXSk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNbKytSXSA9IEMsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gNFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoQSA8IDQpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChTW1ItLV0pXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPICs9IDQ7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCh6ID0gcyhiLCBPKSkgPCAwKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSSA9IDEsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRihiLCBlLCAyICogZiksXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTyArPSAyICogeiAtIDI7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gMiAqIHogLSAyXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEEgPCA2ID8gKEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNbUl0gPSBTW1JdICUgQykgOiBBIDwgOCA/IChDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXWluc3RhbmNlb2YgQykgOiBBIDwgMTUgJiYgKFNbKytSXSA9ICExKVxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChBID4gMCkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIChBID0geCkgPCAxID8gU1srK1JdID0gZyA6IEEgPCAzID8gKEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl0gKyBDKSA6IEEgPCA1ID8gKEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl0gPT0gQykgOiBBIDwgMTQgJiYgKEMgPSBTW1IgLSAxXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBxID0gU1tSXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBTWysrUl0gPSBDLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIFNbKytSXSA9IHEpXFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIChBID0geCkgPCAyID8gKEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl0gPiBDKSA6IEEgPCA5ID8gKHogPSB2KGIsIE8pLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gNCxcXG4gICAgICAgICAgICAgICAgICAgICAgICBxID0gUiArIDEsXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1tSIC09IHogLSAxXSA9IHogPyBTLnNsaWNlKFIsIHEpIDogW10pIDogQSA8IDExID8gKHogPSB5KGIsIE8pLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gMixcXG4gICAgICAgICAgICAgICAgICAgICAgICBDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNbel0gPSBDKSA6IEEgPCAxMyA/IChDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIFNbUl0gPSBTW1JdID4+IEMpIDogQSA8IDE1ICYmIChTWysrUl0gPSBzKGIsIE8pLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gNClcXG4gICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgICAgIEEgPSAzICYgeDtcXG4gICAgICAgICAgICAgICAgICAgIGlmICh4ID4+PSAyLFxcbiAgICAgICAgICAgICAgICAgICAgQSA+IDIpXFxuICAgICAgICAgICAgICAgICAgICAgICAgKEEgPSB4KSA+IDEzID8gKFNbKytSXSA9IHAoYiwgTyksXFxuICAgICAgICAgICAgICAgICAgICAgICAgTyArPSA4KSA6IEEgPiAxMSA/IChDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIFNbUl0gPSBTW1JdID4+PiBDKSA6IEEgPiA5ID8gU1srK1JdID0gITAgOiBBID4gNyA/ICh6ID0geShiLCBPKSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBPICs9IDIsXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl1bel0pIDogQSA+IDAgJiYgKEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl0gPCBDKTtcXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEEgPiAxKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgKEEgPSB4KSA+IDEwID8gKHogPSBzKGIsIE8pLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRbKytvXSA9IFtbTyArIDQsIHogLSAzXSwgMCwgMF0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgTyArPSAyICogeiAtIDIpIDogQSA+IDggPyAoQyA9IFNbUi0tXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXSBeIEMpIDogQSA+IDYgJiYgKEMgPSBTW1ItLV0pXFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKEEgPiAwKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKChBID0geCkgPCAzKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBEID0gMFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwgVCA9IFNbUl0ubGVuZ3RoXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLCAkID0gU1tSXTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU1srK1JdID0gZnVuY3Rpb24oKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgYiA9IEQgPCBUO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGIpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZSA9ICRbRCsrXTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTWysrUl0gPSBlXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTWysrUl0gPSBiXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2VcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQSA8IDUgPyAoeiA9IHkoYiwgTyksXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gMixcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQyA9IGNbel0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNbKytSXSA9IEMpIDogQSA8IDcgPyBTW1JdID0gKytTW1JdIDogQSA8IDkgJiYgKEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNbUl0gPSBTW1JdaW4gQylcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKChBID0geCkgPiAxMylcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQyA9IFNbUl0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNbUl0gPSBTW1IgLSAxXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU1tSIC0gMV0gPSBDO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEEgPiA0KVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXSA9PT0gQztcXG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChBID4gMilcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQyA9IFNbUi0tXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl0gLSBDO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEEgPiAwKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoeiA9IHYoYiwgTyksXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEEgPSBcXFwiXFxcIixcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgUCA9IGkucVt6XVswXTsgUCA8IGkucVt6XVsxXTsgUCsrKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKHIgXiBpLnBbUF0pO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBID0gK0EsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gNCxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU1srK1JdID0gQVxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgIH1cXG4gICAgICAgIGlmIChJKVxcbiAgICAgICAgICAgIGZvciAoOyBPIDwgRTsgKSB7XFxuICAgICAgICAgICAgICAgIGogPSBCW09dO1xcbiAgICAgICAgICAgICAgICBPICs9IDI7XFxuICAgICAgICAgICAgICAgIEEgPSAzICYgKHggPSAxMyAqIGogJSAyNDEpO1xcbiAgICAgICAgICAgICAgICBpZiAoeCA+Pj0gMixcXG4gICAgICAgICAgICAgICAgQSA8IDEpIHtcXG4gICAgICAgICAgICAgICAgICAgIHZhciBVO1xcbiAgICAgICAgICAgICAgICAgICAgQSA9IDMgJiB4O1xcbiAgICAgICAgICAgICAgICAgICAgaWYgKHggPj49IDIsXFxuICAgICAgICAgICAgICAgICAgICBBIDwgMSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgoQSA9IHgpID4gMTQpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHogPSBXW09dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoVSA9IGZ1bmN0aW9uIGUoKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZiA9IGFyZ3VtZW50cztcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBlLnkgPiAwID8gSyhiLCBlLmMsIGUubCwgZiwgZS56LCB0aGlzLCBudWxsLCAwKSA6IChlLnkrKyxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEsoYiwgZS5jLCBlLmwsIGYsIGUueiwgdGhpcywgbnVsbCwgMCkpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKS5jID0gTyArIDQsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFUubCA9IHogLSAyLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBVLnggPSBHLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBVLnkgPSAwLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBVLnogPSBjLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gVSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgTyArPSAyICogeiAtIDI7XFxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoQSA+IDEyKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBxID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3ID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoQSA9IFNbUi0tXSkueCA9PT0gRyA/IEEueSA+PSAxID8gU1srK1JdID0gSyhiLCBBLmMsIEEubCwgcSwgQS56LCB3LCBudWxsLCAxKSA6IChTWysrUl0gPSBLKGIsIEEuYywgQS5sLCBxLCBBLnosIHcsIG51bGwsIDApLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBLnkrKykgOiBTWysrUl0gPSBBLmFwcGx5KHcsIHEpO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEEgPiA1KVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXSAhPSBDO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEEgPiAzKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXSAqIEM7XFxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoQSA+IC0xKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gWzEsIFNbUi0tXV1cXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoQSA8IDIpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAoQSA9IHgpIDwgNCA/IChxID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIChBID0gU1tSXSkueCA9PT0gRyA/IEEueSA+PSAxID8gU1tSXSA9IEsoYiwgQS5jLCBBLmwsIFtxXSwgQS56LCB3LCBudWxsLCAxKSA6IChTW1JdID0gSyhiLCBBLmMsIEEubCwgW3FdLCBBLnosIHcsIG51bGwsIDApLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIEEueSsrKSA6IFNbUl0gPSBBKHEpKSA6IEEgPCA2ID8gU1tSIC09IDFdID0gU1tSXVtTW1IgKyAxXV0gOiBBIDwgOCA/IFNbUl0gPSAtLVNbUl0gOiBBIDwgMTAgJiYgKEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IHR5cGVvZiBDKVxcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChBIDwgMykge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgoQSA9IHgpID4gMTEpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IFNbUi0tXTtcXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoQSA+IDcpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6ID0gV1tPXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQSA9IFxcXCJcXFwiLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQID0gaS5xW3pdWzBdOyBQIDwgaS5xW3pdWzFdOyBQKyspXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBICs9IFN0cmluZy5mcm9tQ2hhckNvZGUociBeIGkucFtQXSk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gNCxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU1tSLS1dW0FdID0gQ1xcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBID4gNSAmJiAoU1tSXSA9IGgoU1tSXSkpXFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIChBID0geCkgPCAxID8gU1srK1JdID0gbnVsbCA6IEEgPCAzID8gKEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl0gPj0gQykgOiBBIDwgMTIgJiYgKFNbKytSXSA9IHZvaWQgMClcXG4gICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChBIDwgMikge1xcbiAgICAgICAgICAgICAgICAgICAgQSA9IDMgJiB4O1xcbiAgICAgICAgICAgICAgICAgICAgaWYgKHggPj49IDIsXFxuICAgICAgICAgICAgICAgICAgICBBID4gMilcXG4gICAgICAgICAgICAgICAgICAgICAgICAoQSA9IHgpID4gMTIgPyBTWysrUl0gPSBsIDogQSA+IDUgPyAoQyA9IFNbUi0tXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXSAhPT0gQykgOiBBID4gMyA/IChDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIFNbUl0gPSBTW1JdIC8gQykgOiBBID4gMSA/IE8gKz0gMiAqICh6ID0gV1tPXSkgLSAyIDogQSA+IC0xICYmIChTW1JdID0gIVNbUl0pO1xcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoQSA+IDEpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAoQSA9IHgpIDwgMiA/IFNbKytSXSA9IEMgOiBBIDwgNCA/IChDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIFNbUl0gPSBTW1JdIDw9IEMpIDogQSA8IDExID8gKEMgPSBTW1IgLT0gMl1bU1tSICsgMV1dID0gU1tSICsgMl0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgUi0tKSA6IEEgPCAxMyAmJiAoQyA9IFNbUl0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1srK1JdID0gQylcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoQSA+IDApIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoKEEgPSB4KSA8IDgpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHEgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEMgPSBkZWxldGUgU1tSLS1dW3FdO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEEgPCAxMCkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHogPSBXW09dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBID0gXFxcIlxcXCIsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFAgPSBpLnFbel1bMF07IFAgPCBpLnFbel1bMV07IFArKylcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEEgKz0gU3RyaW5nLmZyb21DaGFyQ29kZShyIF4gaS5wW1BdKTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgTyArPSA0LFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXVtBXVxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBIDwgMTIgPyAoQyA9IFNbUi0tXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl0gPDwgQykgOiBBIDwgMTQgJiYgKFNbKytSXSA9IFdbT10sXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gMilcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKChBID0geCkgPCA1KSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHogPSBXW09dO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRbb11bMl0gPSAxLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSA9PSAoQyA9IEcoYiwgTyArIDQsIHogLSAzLCBbXSwgYywgbCwgbnVsbCwgMCkpWzBdKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBDXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKG0pIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0W29dICYmIHRbb11bMV0gJiYgMSA9PSAoQyA9IEcoYiwgdFtvXVsxXVswXSwgdFtvXVsxXVsxXSwgW10sIGMsIGwsIG0sIDApKVswXSlcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQ1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGZpbmFsbHkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRbb10gJiYgdFtvXVswXSAmJiAxID09IChDID0gRyhiLCB0W29dWzBdWzBdLCB0W29dWzBdWzFdLCBbXSwgYywgbCwgbnVsbCwgMCkpWzBdKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBDO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdFtvXSA9IDAsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvLS1cXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBPICs9IDIgKiB6IC0gMlxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBIDwgNyA/ICh6ID0gV1tPXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgTyArPSAyLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1IgLT0gel0gPSAwID09PSB6ID8gbmV3IFNbUl0gOiBkKFNbUl0sIG4oUy5zbGljZShSICsgMSwgUiArIHogKyAxKSkpKSA6IEEgPCA5ICYmIChDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXSAmIEMpXFxuICAgICAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoQSA8IDMpIHtcXG4gICAgICAgICAgICAgICAgICAgIEEgPSAzICYgeDtcXG4gICAgICAgICAgICAgICAgICAgIGlmICh4ID4+PSAyLFxcbiAgICAgICAgICAgICAgICAgICAgQSA8IDEpXFxuICAgICAgICAgICAgICAgICAgICAgICAgKEEgPSB4KSA8IDIgPyAoQyA9IFNbUi0tXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXSA+IEMpIDogQSA8IDkgPyAoeiA9IFdbT10sXFxuICAgICAgICAgICAgICAgICAgICAgICAgTyArPSA0LFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHEgPSBSICsgMSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBTW1IgLT0geiAtIDFdID0geiA/IFMuc2xpY2UoUiwgcSkgOiBbXSkgOiBBIDwgMTEgPyAoeiA9IFdbT10sXFxuICAgICAgICAgICAgICAgICAgICAgICAgTyArPSAyLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgY1t6XSA9IEMpIDogQSA8IDEzID8gKEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl0gPj4gQykgOiBBIDwgMTUgJiYgKFNbKytSXSA9IFdbT10sXFxuICAgICAgICAgICAgICAgICAgICAgICAgTyArPSA0KTtcXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEEgPCAyKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgKEEgPSB4KSA8IDEgPyBTWysrUl0gPSBnIDogQSA8IDMgPyAoQyA9IFNbUi0tXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXSArIEMpIDogQSA8IDUgPyAoQyA9IFNbUi0tXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXSA9PSBDKSA6IEEgPCAxNCAmJiAoQyA9IFNbUiAtIDFdLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHEgPSBTW1JdLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIFNbKytSXSA9IEMsXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1srK1JdID0gcSlcXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoQSA8IDMpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoKEEgPSB4KSA8IDIpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yICh6ID0gV1tPXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQyA9IFxcXCJcXFwiLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQID0gaS5xW3pdWzBdOyBQIDwgaS5xW3pdWzFdOyBQKyspXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDICs9IFN0cmluZy5mcm9tQ2hhckNvZGUociBeIGkucFtQXSk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNbKytSXSA9IEMsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gNFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBIDwgNCA/IFNbUi0tXSA/IE8gKz0gNCA6IE8gKz0gMiAqICh6ID0gV1tPXSkgLSAyIDogQSA8IDYgPyAoQyA9IFNbUi0tXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl0gJSBDKSA6IEEgPCA4ID8gKEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNbUl0gPSBTW1JdaW5zdGFuY2VvZiBDKSA6IEEgPCAxNSAmJiAoU1srK1JdID0gITEpXFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIChBID0geCkgPiA3ID8gKEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl0gfCBDKSA6IEEgPiA1ID8gKHogPSBXW09dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gMixcXG4gICAgICAgICAgICAgICAgICAgICAgICBTWysrUl0gPSBjW1xcXCIkXFxcIiArIHpdKSA6IEEgPiAzICYmICh6ID0gV1tPXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICB0W29dWzBdICYmICF0W29dWzJdID8gdFtvXVsxXSA9IFtPICsgNCwgeiAtIDNdIDogdFtvKytdID0gWzAsIFtPICsgNCwgeiAtIDNdLCAwXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBPICs9IDIgKiB6IC0gMilcXG4gICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgICAgIEEgPSAzICYgeDtcXG4gICAgICAgICAgICAgICAgICAgIGlmICh4ID4+PSAyLFxcbiAgICAgICAgICAgICAgICAgICAgQSA+IDIpXFxuICAgICAgICAgICAgICAgICAgICAgICAgKEEgPSB4KSA+IDEzID8gKFNbKytSXSA9IFdbT10sXFxuICAgICAgICAgICAgICAgICAgICAgICAgTyArPSA4KSA6IEEgPiAxMSA/IChDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIFNbUl0gPSBTW1JdID4+PiBDKSA6IEEgPiA5ID8gU1srK1JdID0gITAgOiBBID4gNyA/ICh6ID0gV1tPXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBPICs9IDIsXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl1bel0pIDogQSA+IDAgJiYgKEMgPSBTW1ItLV0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl0gPCBDKTtcXG4gICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEEgPiAxKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgKEEgPSB4KSA+IDEwID8gKHogPSBXW09dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRbKytvXSA9IFtbTyArIDQsIHogLSAzXSwgMCwgMF0sXFxuICAgICAgICAgICAgICAgICAgICAgICAgTyArPSAyICogeiAtIDIpIDogQSA+IDggPyAoQyA9IFNbUi0tXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXSBeIEMpIDogQSA+IDYgJiYgKEMgPSBTW1ItLV0pXFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKEEgPiAwKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKChBID0geCkgPiA3KVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXWluIEM7XFxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoQSA+IDUpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNbUl0gPSArK1NbUl07XFxuICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoQSA+IDMpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHogPSBXW09dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBPICs9IDIsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEMgPSBjW3pdLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTWysrUl0gPSBDO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKEEgPiAxKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEQgPSAwLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBUID0gU1tSXS5sZW5ndGgsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICQgPSBTW1JdO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTWysrUl0gPSBmdW5jdGlvbigpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBiID0gRCA8IFQ7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoYikge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBlID0gJFtEKytdO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNbKytSXSA9IGVcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNbKytSXSA9IGJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKChBID0geCkgPCAyKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvciAoeiA9IFdbT10sXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEEgPSBcXFwiXFxcIixcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgUCA9IGkucVt6XVswXTsgUCA8IGkucVt6XVsxXTsgUCsrKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQSArPSBTdHJpbmcuZnJvbUNoYXJDb2RlKHIgXiBpLnBbUF0pO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBID0gK0EsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIE8gKz0gNCxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU1srK1JdID0gQVxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBIDwgNCA/IChDID0gU1tSLS1dLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1JdID0gU1tSXSAtIEMpIDogQSA8IDYgPyAoQyA9IFNbUi0tXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUl0gPT09IEMpIDogQSA8IDE1ICYmIChDID0gU1tSXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU1tSXSA9IFNbUiAtIDFdLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTW1IgLSAxXSA9IEMpXFxuICAgICAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICB9XFxuICAgICAgICByZXR1cm4gWzAsIG51bGxdXFxuICAgIH1cXG4gICAgZnVuY3Rpb24gSyhiLCBlLCBmLCBhLCBkLCBjLCBuLCBpKSB7XFxuICAgICAgICB2YXIgciwgdDtcXG4gICAgICAgIG51bGwgPT0gYyAmJiAoYyA9IHdpbmRvdyksXFxuICAgICAgICBkICYmICFkLmQgJiYgKGQuZCA9IDAsXFxuICAgICAgICBkLiQwID0gZCxcXG4gICAgICAgIGRbMV0gPSB7fSk7XFxuICAgICAgICB2YXIgbyA9IHt9XFxuICAgICAgICAgICwgbCA9IG8uZCA9IGQgPyBkLmQgKyAxIDogMDtcXG4gICAgICAgIGZvciAob1tcXFwiJFxcXCIgKyBsXSA9IG8sXFxuICAgICAgICB0ID0gMDsgdCA8IGw7IHQrKylcXG4gICAgICAgICAgICBvW3IgPSBcXFwiJFxcXCIgKyB0XSA9IGRbcl07XFxuICAgICAgICBmb3IgKHQgPSAwLFxcbiAgICAgICAgbCA9IG8ubGVuZ3RoID0gYS5sZW5ndGg7IHQgPCBsOyB0KyspXFxuICAgICAgICAgICAgb1t0XSA9IGFbdF07XFxuICAgICAgICByZXR1cm4gaSAmJiAhQltlXSAmJiBGKGIsIGUsIDIgKiBmKSxcXG4gICAgICAgIEJbZV0gPyBHKGIsIGUsIGYsIDAsIG8sIGMsIG51bGwsIDEpWzFdIDogRyhiLCBlLCBmLCAwLCBvLCBjLCBudWxsLCAwKVsxXVxcbiAgICB9XFxufVxcbixcXG4oZ2xiID0gXFxcInVuZGVmaW5lZFxcXCIgPT0gdHlwZW9mIHdpbmRvdyA/IGdsb2JhbCA6IHdpbmRvdykuXyRqc3ZtcHJ0KFxcXCI0ODRlNGY0YTQwM2Y1MjQzMDAwZDJkMWFlYTc4MTg0YzM2YzNkNjcxMDAwMDAwMDAwMDAwYWI0NDAyMDAwMDI1MDA3NDIxMWIwMDBiMDI0MzAyMDAwMTNlMjIxNzAwMGUxYzIxMWIwMDBiMDM0MzAyMDAwMjQwMTcwMDBlMTgwMTFiMDAwYjAyMDQxYzE2MDA0YzIxMWIwMDBiMDQ0MzAyMDAwMzNlMjIxNzAwMGIxYzFiMDAwYjA0MWUwMDA0MTcwMDE4MWIwMDBiMDQyNjAyMDAwNTBhMDAwMTE4MDEwYTAwMDIxMDFjMTYwMDFlMTgwMDIyMDExNzAwMDUxYzEzMWYwMDE4MDExODAwMTMxZTAwMDYxYTAwMWQwMDA3MjcwNDFjMDAyNjExMDIwMDAwMjU1NTIwMDIwMDA4MjUwMDBkMWIwMDBiMDgxZTAwMDkwMTAxMDAxZjA3MDIwMDBhMjUwMDBlMjExYjAwMGIwOTQzMDIwMDAyNDAwMDFmMDgwMjAwMGIyNTAwNWIxMzFlMDAwYzAyMDAwZDAyMDAwZTFhMDIyMjFlMDAwZjI0MTMxZTAwMTAwYTAwMDExMDIyMDExNzAwM2MxYzAyMDAwMDI1MDAxMzE4MDAyMjFlMDAxMTI0MGEwMDAwMTAwMjAwMTIzZTAwMTMxZTAwMTMwMTIyMDExNzAwMWExYzIxMWIwMDBiMGE0MzAyMDAwMjQwMjIxNzAwMGIxYzFiMDAwYjBhMWUwMDE0MDQwMDFmMDkwMjAwMTUyNTAwMTMxYjAwMGIwYjFhMDAyMjFlMDAxNjI0MGEwMDAwMTAwMDFmMGEwMjAwMTcyNTAwMzkyMTE4MDA0MzAyMDAwMjNlMjIwMTE3MDAwODFjMTgwMDI2M2UxNzAwMDcwMjAwMDAwMDIxMTgwMDQzMDIwMDE4M2UxNzAwMTIxODAwMTcwMDA5MDIwMDE5MTYwMDA2MDIwMDFhMDAxODAwMDAxZjBiMDIwMDFiMjUwMDUyMTgwMTAxMTcwMDA4MDIwMDFjMWYwMTAyMDAwMDFmMDYxODAwMWYwZTE4MGU0ODAwMzkxNzAwMzMxODA2MTgwMTFiMDAwYjBjMjIxZTAwMWQyNDFiMDAwYjBjMjIxZTAwMWUyNDBhMDAwMDEwMTgwMTFlMDAxZjJhMGEwMDAxMTAxOTI4MWYwNjE4MGUyZTFmMGUxNmZmY2IxODA2MDAxZjBjMDIwMDIwMjUwMGRmMDIwMDAyMWYwNjIxMTM0MzE4MDYzZTIyMDExNzAwMTIxYzEzMjIxZTAwMTEyNDBhMDAwMDEwMDIwMDIxNDAyMjAxMTcwMDFjMWMxYjAwMGIwNTFlMDAyMjFlMDAxMTIyMWUwMDIzMjQxMzBhMDAwMTEwMDIwMDIxNDAyMjAxMTcwMDBkMWMyMTFiMDAwYjA4NDMxODA2M2UyMjAxMTcwMDIwMWMxYjAwMGIwODIyMWUwMDExMjQwYTAwMDAxMDIyMWUwMDI0MjQwMjAwMjUwYTAwMDExMDQ4MDAzYTIyMDExNzAwMGQxYzIxMWIwMDBiMGQ0MzE4MDYzZTIyMDExNzAwMTUxYzFiMDAwYjBkMjIxZTAwMTEyNDBhMDAwMDEwMDIwMDI2NDAyMjAxMTcwMDBkMWMyMTFiMDAwYjBlNDMxODA2M2UxNzAwMDUyMDAwMWIwMjBiMDcyNjBhMDAwMDEwMDExNzAwMjgyMTFiMDAwYjBmNDMxODA2M2UyMjAxMTcwMDE1MWMxYjAwMGIwZjIyMWUwMDExMjQwYTAwMDAxMDAyMDAyNzQwMTcwMDA1MjAwMDEyMDAxZjBkMDIwMDI4MjUwMGEzMjExODAxNDMwMjAwMjk0MDE3MDAwNDAwMTgwMDAyMDAyYTI4MWYwNjE4MDEyMjFlMDAyYjI0MTMxZTAwMGMwMjAwMmMwMjAwMDAxYTAyMGEwMDAxMTAxZjA3NDgwMDFmMTIxODEyMTgwNzFlMDAxZjNhMTcwMDY2MTgwNzE4MTIxOTFmMDgxODA4MjIxZTAwMmQyNDQ4MDAwYTAwMDExMDAyMDAyZTNlMTcwMDFhMTgwODIyMWUwMDJmMjQ0ODAxMTgwODFlMDAxZjBhMDAwMjEwMWYwODE2ZmZkODE4MDgyMjFlMDAyNDI0MTgwNjBhMDAwMTEwNDgwMDNlMTcwMDE5MTgwODIyMWUwMDJmMjQxODA2MWUwMDFmMTgwODFlMDAxZjBhMDAwMjEwMDAxODEyMmQxZjEyMTZmZjk1MDAxZjBlMDIwMDMwMjUwMDcxNDYwMDAzMDYwMDBhMjcxZjIyMDIwMDAwMDAwNTAwNjAwMjAwMDAxZjA2MTMxZTAwMzExNzAwMWMxMzFlMDAzMTIyMWUwMDMyMjQxODAwMGEwMDAxMTAxZjA2MTgwNjE3MDAwNjE4MDYwMDEzMWUwMDMzMTcwMDFjMTMxZTAwMzMyMjFlMDAzMjI0MTgwMDBhMDAwMTEwMWYwNjE4MDYxNzAwMDYxODA2MDAxYjAyMGIwZTI2MTgwMDFiMDAwYjA4MWUwMDM0MGEwMDAyMTAxZjA2MTgwNjAwMDcwMDFmMGYwMjAwMzUyNTAwOWM0NjAwMDMwNjAwMDYyNzFmMjIwNTAwOGYxMzFlMDAzMTE3MDAxNTEzMWUwMDMxMjIxZTAwMzYyNDE4MDAxODAxMGEwMDAyMTAxYzEzMWUwMDMzMTcwMDE1MTMxZTAwMzMyMjFlMDAzNjI0MTgwMDE4MDEwYTAwMDIxMDFjNDkwMTZkNDgxODJhNDgzYzJhNDgzYzJhNDkwM2U4MmExZjA2MWIwMDBiMDgxODAwMDIwMDM3MjgxZDAwMzQxYjAwMGIwODE4MDAwMjAwMmEyODE4MDEyODAyMDAzODI4MWIwMDBiMGIxYjAwMGIwYjFhMDAyMjFlMDAxNjI0MGEwMDAwMTAxODA2MjgxYTAxMjIxZTAwMzkyNDBhMDAwMDEwMjgwMjAwM2EyODFkMDAzNDA3MDAxZjEwMDIwMDNiMjUwMDRjNDYwMDAzMDYwMDA2MjcxZjFlMDUwMDNmMTMxZTAwMzExNzAwMTMxMzFlMDAzMTIyMWUwMDNjMjQxODAwMGEwMDAxMTAxYzEzMWUwMDMzMTcwMDEzMTMxZTAwMzMyMjFlMDAzYzI0MTgwMDBhMDAwMTEwMWMxYjAwMGIwODE4MDAwMjAwMzcyODFkMDAzNDA3MDAxZjExMDIwMDNkMjUwMGEzMWIwMDBiMTAxYTAwMWYwNjFiMDAwYjA1MjIxZTAwM2UyNDE4MDYwMjAwM2YxMzFlMDAwNjFhMDAyMjAyMDAwMDI1MDAwYzFiMDMwYjAwMjAxZDAwNDAwMDFkMDA0MTBhMDAwMzEwMWMxYjAwMGIxMTIyMWUwMDQyMjQwMjAwNDMxODA2MGEwMDAyMTAxYzEzMjIxNzAwMDgxYzEzMWUwMDQ0MjIxNzAwMGIxYzEzMWUwMDQ0MWUwMDQ1MTcwMDA5MTgwMDIwMWQwMDQwMWIwMjBiMDgyNjBhMDAwMDEwMTcwMDMwMTMyMjE3MDAyMjFjMTMxZTAwNDYxMzFlMDA0NzI5NDg2NDM5MjIwMTE3MDAxMDFjMTMxZTAwNDgxMzFlMDA0OTI5NDg2NDM5MTcwMDA5MTgwMDIwMWQwMDQwMDAxZjEzMDIwMDRhMjUwMDJiMjExMzQzMDIwMDAyNDAyMjE3MDAxZjFjMWIwMDBiMDUxZTAwMjIxZTAwMTEyMjFlMDAyMzI0MTMxZTAwNGIwYTAwMDExMDAyMDA0YzNlMDAxZjE0MDIwMDRkMjUwMDYxMWIwMjBiMDcyNjBhMDAwMDEwMDExNzAwNTIwMjAwNGUxYjAwMGIwZDQyMDEyMjAxMTcwMDExMWMxYjAwMGIwZDFlMDA0ZTFiMDAwYjEyNDEwMTIyMDExNzAwMDkxYzAyMDA0ZjEzNDIyMjAxMTcwMDA5MWMwMjAwNTAxMzQyMjIwMTE3MDAwOTFjMDIwMDUxMTM0MjIyMDExNzAwMGYxYzAyMDA1MjEzNDIwMjAwNTMxMzQyM2EwMDEyMDAxZjE1MDIwMDU0MjUwMTY2MWIwMDBiMGQxZTAwNTUxNzAwMDUyMDAwMDIwMDU2MWIwMDBiMDU0MjE3MDA0MzFiMDAwYjA1MjIxZTAwNTYyNDFiMDAwYjBkMGEwMDAxMTAxZjEwMTgxMDIyMWUwMDI0MjQwMjAwNTUwYTAwMDExMDQ4MDAzYjIyMDExNzAwMTUxYzE4MTAyMjFlMDAyNDI0MDIwMDU3MGEwMDAxMTA0ODAwM2IxNzAwMDUyMDAwMTMyMjE3MDAwODFjMTMxZTAwNTgyMjE3MDAwYjFjMTMxZTAwNTgxZTAwNTkyMjE3MDAwZTFjMTMxZTAwNTgxZTAwNTkxZTAwNWExNzAwMmE0NjAwMDMwNjAwMDYyNzFmOTYwNTAwMWUxMzFlMDA1ODFlMDA1OTIyMWUwMDVhMjQwYTAwMDAxMDFiMDAwYjA2M2UxNzAwMDUyMDAwMDcwMjAwNWIwMjAwNWMwMjAwNWQwMjAwNWUwMjAwNWYwMjAwNjAwMjAwNjEwMjAwNjIwMjAwNjMwMjAwNjQwMjAwNjUwYTAwMGIxZjA2MDIwMDY2MDIwMDY3MDIwMDY4MGEwMDAzMWYwNzE4MDcwODAzMWZjOTE4YzkyMTA0MTcwMDE4MWZjODE4MDcxOGM4MTkxZmNhMTMxOGNhMTkxNzAwMDUyMDAwMTZmZmU3MTgwNjA4MDMxZmM5MThjOTIxMDQxNzAwMWIxZmM4MTgwNjE4YzgxOTFmY2ExMzFlMDA2OTE4Y2ExOTE3MDAwNTIwMDAxNmZmZTQxMzFlMDA2OTA4MDMxZmM5MThjOTIxMDQxNzAwMzQxZmM4MThjODIyMWUwMDZhMjQxMzFlMDAwYzAyMDA2YjAyMDAwMDFhMDIwYTAwMDExMDIyMTcwMDBmMWMxMzFlMDA2OTE4YzgxOTAyMDA2YzE5MTcwMDA1MjAwMDE2ZmZjYjEyMDAxZjE2MDIwMDZkMjUwMGM3MWIwMjBiMDgyNjBhMDAwMDEwMTcwMDI5MWIwMDBiMTMyMjFlMDA2ZTI0MDIwMDBmMGEwMDAxMTAxZjA2MTgwNjAyMDAwMDI1MDAwYzFiMDMwYjAwMjAxZDAwNmYwMDFkMDA3MDFiMDIwYjA5MjYwYTAwMDAxMDE3MDA1YjQ2MDAwMzA2MDAyYzI3MWYxYTE4MWExZTAwNzExYjAwMGIxNDAyMDA3MjE5M2UyMjE3MDAwZTFjMTMxZTAwMzExZTAwMWY0ODAwM2UxNzAwMDkxODAwMjAxZDAwNmYwNTAwMjkxMzFlMDAzMTIyMWUwMDM2MjQwMjAwNzMwMjAwMDAwYTAwMDIxMDFjMTMxZTAwMzEyMjFlMDAzYzI0MDIwMDczMGEwMDAxMTAxYzA3MWIwMjBiMDcyNjBhMDAwMDEwMTcwMDI0MTMxZTAwNzQwMTIyMTcwMDEyMWMxMzFlMDA3NTIyMDExNzAwMDgxYzEzMWUwMDc2MTcwMDA5MTgwMDIwMWQwMDZmMDAxZjE3MDIwMDc3MjUwMGIxMWIwMjBiMDcyNjBhMDAwMDEwMDExNzAwYTIxYjAwMGIwODIyMWUwMDc4MjQwMjAwNzkwYTAwMDExMDFmMDYxODA2MWUwMDdhMjIxZTAwMTEyNDBhMDAwMDEwMjIxZTAwN2IyNDEzMWUwMDBjMDIwMDdjMDIwMDdkMWEwMjAyMDAwMDBhMDAwMjEwMjIxZTAwMjQyNDAyMDA3ZTBhMDAwMTEwNDgwMDNhMjIwMTE3MDAzYjFjMWIwMDBiMGQxZTAwMTEyMjFlMDAxMTI0MGEwMDAwMTAyMjFlMDA3YjI0MTMxZTAwMGMwMjAwN2MwMjAwN2QxYTAyMDIwMDAwMGEwMDAyMTAyMjFlMDAyNDI0MDIwMDdlMGEwMDAxMTA0ODAwM2EyMjAxMTcwMDE4MWMxYjAwMGIwZDFlMDA0ZTIyMWUwMDExMjQwYTAwMDAxMDAyMDA3ZjQwMDAxMjAwMWYxODAyMDA4MDI1MDA3NTEzMWUwMDBjMDIwMDgxMDIwMDAwMWEwMjFmMDYxMzIyMTcwMDA4MWMxMzFlMDA4MjIyMTcwMDBiMWMxMzFlMDA4MjFlMDA4MzE3MDA0YzEzMWUwMDgyMWUwMDgzMWYwNzE4MDcyMjFlMDAyNDI0MDIwMDg0MGEwMDAxMTA0ODAwM2UyMjAxMTcwMDE1MWMxODA3MjIxZTAwMjQyNDAyMDA4NTBhMDAwMTEwNDgwMDNlMjIwMTE3MDAxMTFjMTgwNjIyMWUwMDBmMjQxODA3MGEwMDAxMTAxNzAwMDUyMDAwMTIwMDFmMTkwMjAwODYyNTAwOTYxYjAyMGIxYTFlMDA4NzE3MDAwYjFiMDIwYjFhMWUwMDg3MDA0NjAwMDMwNjAwMGEyNzFmMWUwMjAwMDAwMDA1MDA3MzFiMDAwYjA4MjIxZTAwNzgyNDAyMDA3OTBhMDAwMTEwMWYwYzE4MGMyMjFlMDA4ODI0MDIwMDg5MGEwMDAxMTAxZjBkMTgwZDIyMWUwMDhhMjQwMjAwOGIwYTAwMDExMDFmMGUxODBkMjIxZTAwOGMyNDE4MGUwMjAwOGQxOTBhMDAwMTEwMWYwZjE4MGQyMjFlMDA4YzI0MTgwZTAyMDA4ZTE5MGEwMDAxMTAxZjEwMTgwZjAyMDA4ZjI4MTgxMDI4MWYxMTFiMDIwYjFhMTgxMTFkMDA4NzE4MTEwMDA3MDAxZjFiMDIwMDkwMjUwMTI3MDIwMDAwMWYwNjFiMDIwYjFhMWUwMDkxMTcwMDBmMWIwMjBiMWExZTAwOTExZjA2MTYwMGZiNDgwNTFmMGUwYTAwMDAxZjBmMWIwMDBiMGQxZTAwNGUxZjEwMTgxMDIyMDExNzAwMDcxYzBhMDAwMDFmMTE0ODAwMWYxMjE4MTIxODBlM2ExNzAwYjc0NjAwMDMwNjAwMDYyNzFmM2YwNTAwYTMxODExMTgxMjE5MWYxMzBhMDAwMDFmMTQ0ODAwMWYxNjE4MTYxODEzMWUwMDFmM2ExNzAwMzcxODEzMjIxZTAwOTIyNDE4MTYwYTAwMDExMDE3MDAxZjE4MTQyMjFlMDA5MzI0MTgxMzIyMWUwMDkyMjQxODE2MGEwMDAxMTAxZTAwOTQwYTAwMDExMDFjMTgxNjJkMWYxNjE2ZmZjNDE4MTMxZTAwOTUwMjAwMDAyODFmMTUxODEzMWUwMDk2MTcwMDExMTgxNTE4MTMxZTAwOTYwMjAwMDAyODI4MWYxNTE4MTUxODEzMWUwMDk3MDIwMDAwMjgyODFmMTUxODE1MTgxNDIyMWUwMDk4MjQwMjAwMDAwYTAwMDExMDI4MWYxNTE4MGYyMjFlMDA5MzI0MTgxNTBhMDAwMTEwMWMwNzE4MTIyZDFmMTIxNmZmNDcxODBmMjIxZTAwOTgyNDAyMDA5OTBhMDAwMTEwMWYwNjFiMDIwYjFhMTgwNjFkMDA5MTE4MDYyMjFlMDA5YTI0NDgwMDQ5MDQwMDBhMDAwMjEwMDAxZjFjMDIwMDliMjUwNDYzMWIwMDBiMGQxZTAwOWMyMjFlMDA5ZDI0MGEwMDAwMTAxZjA2MWIwMDBiMGQxZTAwOWUyMjFlMDA5ZDI0MGEwMDAwMTAxZjA3NDgwMDFmMDg0ODAxMWYwOTQ4MDIxZjBhNDgwMzFmMGI0ODA0MWYwYzQ4MDUxZjBkMTgwZDFmMGUwMjAwOWYxZjBmMDIwMGEwMWYxMDAyMDBhMTFmMTEwMjAwYTIxZjEyMDIwMGEzMWYxMzAyMDBhNDFmMTQwMjAwYTUxZjE1MDIwMGE2MWYxNjE4MDYyMjFlMDAyNDI0MDIwMGE3MGEwMDAxMTA0ODAwM2IyMjAxMTcwMDE1MWMxODA2MjIxZTAwMjQyNDAyMDBhODBhMDAwMTEwNDgwMDNiMTcwMDBhMTgwYzFmMGUxNjAwZjcxODA2MjIxZTAwMjQyNDE4MGYwYTAwMDExMDQ4MDAzYjE3MDAwYTE4MDgxZjBlMTYwMGRkMTgwNjIyMWUwMDI0MjQxODExMGEwMDAxMTA0ODAwM2IxNzAwMGExODA5MWYwZTE2MDBjMzE4MDYyMjFlMDAyNDI0MTgxMjBhMDAwMTEwNDgwMDNiMjIwMTE3MDAxNTFjMTgwNjIyMWUwMDI0MjQwMjAwYTkwYTAwMDExMDQ4MDAzYjIyMDExNzAwMTUxYzE4MDYyMjFlMDAyNDI0MDIwMGFhMGEwMDAxMTA0ODAwM2IxNzAwMGExODBhMWYwZTE2MDA3YjE4MDYyMjFlMDAyNDI0MTgxMzBhMDAwMTEwNDgwMDNiMjIwMTE3MDAxNDFjMTgwNjIyMWUwMDI0MjQxODE0MGEwMDAxMTA0ODAwM2IyMjAxMTcwMDE0MWMxODA2MjIxZTAwMjQyNDE4MTUwYTAwMDExMDQ4MDAzYjIyMDExNzAwMTUxYzE4MDYyMjFlMDAyNDI0MDIwMGFiMGEwMDAxMTA0ODAwM2IyMjAxMTcwMDE1MWMxODA2MjIxZTAwMjQyNDAyMDBhYzBhMDAwMTEwNDgwMDNiMTcwMDBhMTgwYjFmMGUxNjAwMDcxODBkMWYwZTE4MDcyMjFlMDAyNDI0MTgxMDBhMDAwMTEwNDgwMDNiMjIxNzAwMDkxYzE4MGUxODA4NDAxNzAwMDgyMDAwMTYwMTUyMTgwNzIyMWUwMDI0MjQxODEyMGEwMDAxMTA0ODAwM2IyMjAxMTcwMDE0MWMxODA3MjIxZTAwMjQyNDE4MTEwYTAwMDExMDQ4MDAzYjIyMDExNzAwMTUxYzE4MDcyMjFlMDAyNDI0MDIwMGFkMGEwMDAxMTA0ODAwM2IyMjE3MDAwOTFjMTgwZTE4MGE0MDIyMTcwMDA5MWMxODBlMTgwOTQwMTcwMDA4MjAwMDE2MDBmOTE4MDcyMjFlMDAyNDI0MTgxNjBhMDAwMTEwNDgwMDNiMjIwMTE3MDAxNDFjMTgwNzIyMWUwMDI0MjQxODE0MGEwMDAxMTA0ODAwM2IyMjAxMTcwMDE0MWMxODA3MjIxZTAwMjQyNDE4MTUwYTAwMDExMDQ4MDAzYjIyMDExNzAwMTQxYzE4MDcyMjFlMDAyNDI0MTgxMzBhMDAwMTEwNDgwMDNiMjIxNzAwMDkxYzE4MGUxODBjNDAyMjE3MDAwOTFjMTgwZTE4MGI0MDE3MDAwODIwMDAxNjAwOGIxODA3MjIxZTAwMjQyNDE4MTAwYTAwMDExMDQ4MDAzYTIyMTcwMDE0MWMxODA3MjIxZTAwMjQyNDE4MTIwYTAwMDExMDQ4MDAzYTIyMTcwMDE0MWMxODA3MjIxZTAwMjQyNDE4MTYwYTAwMDExMDQ4MDAzYTIyMTcwMDE0MWMxODA3MjIxZTAwMjQyNDE4MTMwYTAwMDExMDQ4MDAzYTIyMTcwMDE0MWMxODA3MjIxZTAwMjQyNDE4MTQwYTAwMDExMDQ4MDAzYTIyMTcwMDE0MWMxODA3MjIxZTAwMjQyNDE4MTUwYTAwMDExMDQ4MDAzYTFmMDAxODAwMTgwZTE4MGQzZTQwMTcwMDA1MjAwMDQ4MDAxZjE3NDgwMTFmMTg0ODAyMWYxOTQ4MDQxZjFhNDgwNTFmMWIxODFiMWYxYzE4MDYyMjFlMDAyNDI0MDIwMGFlMGEwMDAxMTA0ODAwM2IxNzAwMGExODE5MWYxYzE2MDA4NjE4MDYyMjFlMDAyNDI0MDIwMGFmMGEwMDAxMTA0ODAwM2IyMjAxMTcwMDE1MWMxODA2MjIxZTAwMjQyNDAyMDBiMDBhMDAwMTEwNDgwMDNiMTcwMDBhMTgxODFmMWMxNjAwNTQxODA2MjIxZTAwMjQyNDAyMDBiMTBhMDAwMTEwNDgwMDNiMTcwMDBhMTgxNzFmMWMxNjAwMzkxODA2MjIxZTAwMjQyNDAyMDBiMjBhMDAwMTEwNDgwMDNiMjIwMTE3MDAxNTFjMTgwNjIyMWUwMDI0MjQwMjAwYjMwYTAwMDExMDQ4MDAzYjE3MDAwYTE4MWExZjFjMTYwMDA3MTgxYjFmMWMxYjAyMGIxYzI2MGEwMDAwMTAyMjFlMDA5ZDI0MGEwMDAwMTAxZjFkMWIwMjBiMWIyNjBhMDAwMDEwMjIxZTAwOWQyNDBhMDAwMDEwMWYxZTE4MWMxODE3M2YyMjE3MDAwOTFjMTgxYzE4MTgzZjIyMTcwMDJkMWMxMzFlMDA1ODIyMDExNzAwMjMxYzFiMDAwYjBkMWUwMGI0MjIxZTAwMTEyNDBhMDAwMDEwMjIxZTAwMjQyNDAyMDBiNTBhMDAwMTEwNDgwMDNiMTcwMDA1MjAwMDE4MWMxODE3M2YyMjE3MDAwOTFjMTgxYzE4MTgzZjIyMTcwMDE1MWMxODFkMjIxZTAwMjQyNDAyMDA1ODBhMDAwMTEwNDgwMDNiMTcwMDA1MjAwMDE4MWMxODFhM2UyMjE3MDAwYTFjMTgxZTAyMDAwMDNmMTcwMDA1MjAwMDEyMDAxZjFkMDIwMGI2MjUwMGRhMjYxZjA2NDYwMDAzMDYwMDBmMjcxZjEyMWIwMDBiMDgxZTAwYjcxZjA2MDUwMDE5MWIwMDBiMDgyMjFlMDBiODI0MDIwMGI5MGEwMDAxMTA0ODAwMTkxZjA2MDcxODA2MjYzZTE3MDAwNDAwMWIwMDBiMDgyMjFlMDA3ODI0MDIwMGJhMGEwMDAxMTAxZjA3MDIwMGJiMWIwMDBiMTUyNjQ5MjcxMDFiMDAwYjBjMjIxZTAwMWUyNDBhMDAwMDEwMmE0ODBhMGEwMDAyMTAyODAyMDBiYjI4MWIwMDBiMGIxYTAwMjIxZTAwMTYyNDBhMDAwMDEwMjgxZjA4MTgwMDAyMDBiYzE4MDgyODI4MWYwMDE4MDcxODAwMWQwMGJkMTMxODA4MDIwMDAwMjUwMDMxMWIwMzBiMDExODAwMDQxYzQ2MDAwMzA2MDAwNjI3MWYwYzA1MDAxYzFiMDMwYjA2MjIxZTAwYmUyNDFiMDMwYjA3MGEwMDAxMTAxYzEzMWIwMzBiMDgwOTA3MDAwZDE4MDYyMjFlMDBiZjI0MTgwNzBhMDAwMTEwMWMwMDFmMWUwMjAwYzAyNTAwYmUxODAwMWUwMDFmMWYwNjE4MDY0ODAyMzMxZjA3MTgwMTE3MDAzMDE4MDAxODA2NDgwMTI5MTkxZjA4MTgwNzQ4MDQyOTFmMDcxODA4MTgwNzQ4MDMyOTNhMjIwMTE3MDAwOTFjMTgwODE4MDczOTE3MDAwNTI2MDAxODA4MWYwNzQ4MDAxZjA5MTgwOTE4MDYzYTE3MDA0YTE4MDAxODA5MWIwMDBiMTYyMjFlMDBjMTI0MTgwMDE4MDkxOTQ5MDBmZjJmMTgwMDE4MDkxOTQ4MDgzNTQ5MDBmZjJmMTgwMDE4MDkxOTQ4MTAzNTQ5MDBmZjJmMTgwMDE4MDkxOTQ4MTgzNTQ5MDBmZjJmMGEwMDA0MTAwZDE4MDkyZDFmMDkxNmZmYjQxODAwMjIxZTAwOTgyNDAyMDAwMDBhMDAwMTEwMWYwYTE4MDExNzAwMTMxODBhMjIxZTAwMmYyNDQ4MDAxODA3MGEwMDAyMTAwMDE4MGEwMDFmMjAwMjAwYzIyNTAwN2YxODAwMWUwMDFmMWYwNjE4MDY0ODAyMzQxZjA3MTgwNjQ4MDMyZjQ4MDA0MDE3MDAwODE4MDcyZDFmMDcxODAxMTcwMDFhMWIwMDBiMTcxODA3NDgwMTI4MWEwMTFmMDgxODA4MTgwNzE4MDYwZDE2MDAwZDFiMDAwYjE3MTgwNzFhMDExZjA4NDgwMDFmMDkxODA5MTgwNjNhMTcwMDJjMTgwODE4MDk0ODAyMzQyMzE5MTgwMDIyMWUwMGMzMjQxODA5MGEwMDAxMTAxODA5NDgwMzJmNDgwMzMzMzMzMDBkMTgwOTJkMWYwOTE2ZmZkMjE4MDgwMDFmMjEwMjAwYzQyNTAwMGExODAwMTQwMGM1MmYwMDFmMjIwMjAwYzYyNTAwMzAxODAyNDgwNTM1MTgwMTQ4MDIzMzMxMTgwMTQ4MDMzNTE4MDI0ODA0MzMzMTI4MTgwMDE4MDEzMTE4MDUxODAzNDgwMzJmMTgwNDMxMTkxODAyMzEyODMxMDAxZjIzMDIwMGM3MjUwMDE4MTgwMDFlMDAxZjQ4MDQzYTE3MDAwYTE4MDA0ODA0MWQwMDFmMTgwMDAwMWYyNDAyMDBjODI1MDBkNjE4MDAxZTAwMWYxZjA2MTgwNjQ4MDEyOTFmMDcxODAwMTgwNzE5MWYwOTQ4MDAxZjBhMWIwMDBiMGMyMjFlMDAxZDI0NDgwNjQ4MzQxODA2MmIyODBhMDAwMTEwNDgwMDMwMWYwZDE4MGQ0ODAwMzkxNzAwOTgxYjAyMGIyMjE4MGExYjAyMGIxZjI4MDQxZjBhMTgwYTQ4MDIzNTQ4MDMyZjFmMGI0ODAwMWYwYzE4MGMxODA3M2ExNzAwM2QxODAwMTgwYzQ4MDEyODE5MWYwODE4MDAxODBjMWIwMjBiMjIxODAwMTgwYzE5MWIwMjBiMjMyNjE4MGExODA4MTgwOTE4MGMxODBiMTgwMTBhMDAwNjEwMjgwNDBkMjcxZjA5MTgwYzJkMWYwYzE2ZmZjMTE4MDA0ODAwMTkxZjA4MTgwMDE4MDcxYjAyMGIyMjE4MDAxODA3MTkxYjAyMGIyMzI2MTgwYTE4MDgxODA5MTgwNzE4MGIxODAxMGEwMDA2MTAyODA0MGQyNzFmMDkxODBkMmUxZjBkMTZmZjY2MTgwMDAwMWYyNTAyMDBjOTI1MDBkODE4MDAxZTAwMWYxZjA2MTgwNjQ4MDEyOTFmMDcxODAwNDgwMDE5MWYwODFiMDAwYjBjMjIxZTAwMWQyNDQ4MDY0ODM0MTgwNjJiMjgwYTAwMDExMDFmMGQxYjAyMGIyMjE4MGQxYjAyMGIxZjJhMDQxZjBhMTgwYTQ4MDA0MDE3MDA5MzE4MGE0ODAyMzU0ODAzMmYxZjBiMTgwNzFmMGMxODBjNDgwMDM5MTcwMDNkMTgwMDE4MGM0ODAxMjkxOTFmMDkxODAwMTgwYzFiMDIwYjIyMTgwMDE4MGMxOTFiMDIwYjIzMjYxODBhMTgwODE4MDkxODBjMTgwYjE4MDEwYTAwMDYxMDI5MDQwZDI3MWYwODE4MGMyZTFmMGMxNmZmYzExODAwMTgwNzE5MWYwOTE4MDA0ODAwMWIwMjBiMjIxODAwNDgwMDE5MWIwMjBiMjMyNjE4MGExODA4MTgwOTQ4MDAxODBiMTgwMTBhMDAwNjEwMjkwNDBkMjcxZjA4MWIwMjBiMjIxODBhMWIwMjBiMWYyOTA0MWYwYTE2ZmY2YjE4MDAwMDFmMjYwMjAwY2EyNTAxYWMxMzFlMDAwYzAyMDBjYjAyMDAwMDFhMDIyMjFlMDAwZjI0MTgwMDBhMDAwMTEwMTcwMDA2MTgwMDAwMGEwMDAwMWYwNjE4MDAxZTAwMWYxZjA3NDgwMDFmMDg0ODAwMWYwOTE4MDgxODA3M2ExNzAxNjQxODAwMjIxZTAwYzMyNDE4MDgwYTAwMDExMDFmMGExODBhNDkwMDgwM2ExNzAwMTgxODA2MTgwOTE4MDAyMjFlMDAyZDI0MTgwODBhMDAwMTEwMGQxNjAxMmExODBhNDkwODAwM2ExNzAwMmExODA2MTgwOTFiMDAwYjE2MjIxZTAwYzEyNDQ5MDBjMDE4MGE0ODA2MzQzMDQ5MDA4MDE4MGE0ODNmMmYzMDBhMDAwMjEwMGQxNjAwZmExODBhNGEwMDAwZDgwMDNhMjIwMTE3MDAwYzFjMTgwYTRhMDAwMGRmZmYzOTE3MDAzNjE4MDYxODA5MWIwMDBiMTYyMjFlMDBjMTI0NDkwMGUwMTgwYTQ4MGMzNDMwNDkwMDgwMTgwYTQ4MDYzNDQ4M2YyZjMwNDkwMDgwMTgwYTQ4M2YyZjMwMGEwMDAzMTAwZDE2MDBhZTE4MDg0ODAxMjgxODA3M2ExNzAwOTkxODAwMjIxZTAwYzMyNDE4MDg0ODAxMjgwYTAwMDExMDFmMGIxODBhNGEwMDAwZGMwMDNhMjIxNzAwMGMxYzRhMDAwMGRjMDAxODBiM2MyMjE3MDAwYzFjMTgwYjRhMDAwMGRmZmYzYzE3MDA2MjE4MGE0OTAzZmYyZjQ4MGEzMzE4MGI0OTAzZmYyZjMwNGEwMDAxMDAwMDI4MWYwYzE4MDYxODA5MWIwMDBiMTYyMjFlMDBjMTI0NDkwMGYwMTgwYzQ4MTIzNDQ4M2YyZjMwNDkwMDgwMTgwYzQ4MGMzNDQ4M2YyZjMwNDkwMDgwMTgwYzQ4MDYzNDQ4M2YyZjMwNDkwMDgwMTgwYzQ4M2YyZjMwMGEwMDA0MTAwZDE4MDgyZDFmMDgxNjAwMGQxYjAwMGIxODAyMDBjYzFhMDE0NzE4MDgyZDFmMDgxODA5MmQxZjA5MTZmZTlhMTgwNjIyMWUwMDk4MjQwMjAwMDAwYTAwMDExMDAwMWYyNzAyMDBjZDI1MDI0ZTFiMDAwYjE3MTgwMTFhMDExZjA2NDgwMDFmMDc0ODAwMWYwODE4MDAxZTAwMWYxZjA5MTgwNzE4MDEzYTIyMTcwMDA5MWMxODA4MTgwOTNhMTcwMjA1MTgwMDIyMWUwMGMzMjQxODA4MjIyZDFmMDgwYTAwMDExMDFmMGExODBhNDgwNDM0MWYwYzE4MGM0ODAwNDAxNzAwNjExODBjNDgwMTQwMTcwMDU5MTgwYzQ4MDI0MDE3MDA1MTE4MGM0ODAzNDAxNzAwNDkxODBjNDgwNDQwMTcwMDQxMTgwYzQ4MDU0MDE3MDAzOTE4MGM0ODA2NDAxNzAwMzExODBjNDgwNzQwMTcwMDI5MTgwYzQ4MGM0MDE3MDAyYjE4MGM0ODBkNDAxNzAwMjMxODBjNDgwZTQwMTcwMDU1MTgwYzQ4MGY0MDE3MDBhMjE2MDE2ODE2MDE3ZDE4MDYxODA3MTgwYTBkMTYwMTczMTgwODE4MDkzYTE3MDAyODE4MDYxODA3MTgwYTQ4MWYyZjQ4MDYzMzE4MDAyMjFlMDBjMzI0MTgwODIyMmQxZjA4MGEwMDAxMTA0ODNmMmYzMDBkMTYwMDBkMWIwMDBiMTgwMjAwY2UxYTAxNDcxNjAxMzkxODA4NDgwMTI4MTgwOTNhMTcwMDQwMTgwNjE4MDcxODBhNDgwZjJmNDgwYzMzMTgwMDIyMWUwMGMzMjQxODA4MjIyZDFmMDgwYTAwMDExMDQ4M2YyZjQ4MDYzMzMwMTgwMDIyMWUwMGMzMjQxODA4MjIyZDFmMDgwYTAwMDExMDQ4M2YyZjMwMGQxNjAwMGQxYjAwMGIxODAyMDBjZTFhMDE0NzE2MDBlNDE4MDg0ODAyMjgxODA5M2ExNzAwYjQxODBhNDgwNzJmNDgxMjMzMTgwMDIyMWUwMGMzMjQxODA4MjIyZDFmMDgwYTAwMDExMDQ4M2YyZjQ4MGMzMzMwMTgwMDIyMWUwMGMzMjQxODA4MjIyZDFmMDgwYTAwMDExMDQ4M2YyZjQ4MDYzMzMwMTgwMDIyMWUwMGMzMjQxODA4MjIyZDFmMDgwYTAwMDExMDQ4M2YyZjMwNGEwMDAxMDAwMDI5MWYwYjQ4MDAxODBiM2MyMjE3MDAwYzFjMTgwYjRhMDAwZmZmZmYzYzE3MDAyZjE4MDYxODA3MjIyZDFmMDcxODBiNDgwYTM0NDkwM2ZmMmY0YTAwMDBkODAwMzAwZDE4MDYxODA3MTgwYjQ5MDNmZjJmNGEwMDAwZGMwMDMwMGQxNjAwMWIxYjAwMGIxODAyMDBjZjE4MGIyMjFlMDAxMTI0NDgxMDBhMDAwMTEwMjgxYTAxNDcxNjAwMGQxYjAwMGIxODAyMDBjZTFhMDE0NzE2MDAxYjFiMDAwYjE4MDIwMGQwMTgwYTIyMWUwMDExMjQ0ODEwMGEwMDAxMTAyODFhMDE0NzE4MDcyZDFmMDcxNmZkZWYxODA3MTgwMTNhMTcwMDBhMTgwNjE4MDcxZDAwMWYxYjAwMGIxNjFlMDBjMTFiMDAwYjE2MTgwNjEwMDAxZjI4MDIwMGQxMjUwMmFhMGEwMDAwMWYwNjFiMDAwYjE3NGEwMDAwODAwMDFhMDExZjA3NDgwMDFmMDg0ODAwMWYwOTE4MDAxZTAwMWYxZjBhMTgwODE4MDEzYTIyMTcwMDA5MWMxODA5MTgwYTNhMTcwMjQzMTgwMDIyMWUwMGMzMjQxODA5MjIyZDFmMDkwYTAwMDExMDFmMGIxODBiNDgwNDM0MWYwZTE4MGU0ODAwNDAxNzAwNjExODBlNDgwMTQwMTcwMDU5MTgwZTQ4MDI0MDE3MDA1MTE4MGU0ODAzNDAxNzAwNDkxODBlNDgwNDQwMTcwMDQxMTgwZTQ4MDU0MDE3MDAzOTE4MGU0ODA2NDAxNzAwMzExODBlNDgwNzQwMTcwMDI5MTgwZTQ4MGM0MDE3MDAyYjE4MGU0ODBkNDAxNzAwMjMxODBlNDgwZTQwMTcwMDU1MTgwZTQ4MGY0MDE3MDBhMjE2MDE2ODE2MDE3ZDE4MDcxODA4MTgwYjBkMTYwMTczMTgwOTE4MGEzYTE3MDAyODE4MDcxODA4MTgwYjQ4MWYyZjQ4MDYzMzE4MDAyMjFlMDBjMzI0MTgwOTIyMmQxZjA5MGEwMDAxMTA0ODNmMmYzMDBkMTYwMDBkMWIwMDBiMTgwMjAwY2UxYTAxNDcxNjAxMzkxODA5NDgwMTI4MTgwYTNhMTcwMDQwMTgwNzE4MDgxODBiNDgwZjJmNDgwYzMzMTgwMDIyMWUwMGMzMjQxODA5MjIyZDFmMDkwYTAwMDExMDQ4M2YyZjQ4MDYzMzMwMTgwMDIyMWUwMGMzMjQxODA5MjIyZDFmMDkwYTAwMDExMDQ4M2YyZjMwMGQxNjAwMGQxYjAwMGIxODAyMDBjZTFhMDE0NzE2MDBlNDE4MDk0ODAyMjgxODBhM2ExNzAwYjQxODBiNDgwNzJmNDgxMjMzMTgwMDIyMWUwMGMzMjQxODA5MjIyZDFmMDkwYTAwMDExMDQ4M2YyZjQ4MGMzMzMwMTgwMDIyMWUwMGMzMjQxODA5MjIyZDFmMDkwYTAwMDExMDQ4M2YyZjQ4MDYzMzMwMTgwMDIyMWUwMGMzMjQxODA5MjIyZDFmMDkwYTAwMDExMDQ4M2YyZjMwNGEwMDAxMDAwMDI5MWYwYzQ4MDAxODBjM2MyMjE3MDAwYzFjMTgwYzRhMDAwZmZmZmYzYzE3MDAyZjE4MDcxODA4MjIyZDFmMDgxODBjNDgwYTM0NDkwM2ZmMmY0YTAwMDBkODAwMzAwZDE4MDcxODA4MTgwYzQ5MDNmZjJmNGEwMDAwZGMwMDMwMGQxNjAwMWIxYjAwMGIxODAyMDBjZjE4MGMyMjFlMDAxMTI0NDgxMDBhMDAwMTEwMjgxYTAxNDcxNjAwMGQxYjAwMGIxODAyMDBjZTFhMDE0NzE2MDAxYjFiMDAwYjE4MDIwMGQwMTgwYjIyMWUwMDExMjQ0ODEwMGEwMDAxMTAyODFhMDE0NzE4MDg0OTdmZmY0ODAxMjkzYjE3MDAzNTE4MDg0ODAxMjgxZjBkMTgwNzE4MGQxZDAwMWYxODA2MTgwNjFlMDAxZjFiMDAwYjE2MWUwMGMxMWIwMDBiMTYxODA3MTAwZDE4MDExODBkMjkxZjAxNDgwMDQ4MDEyOTFmMDgxODA4MmQxZjA4MTZmZGIxMTgwODQ4MDAzOTE3MDAyMDE4MDcxODA4MWQwMDFmMTgwNjE4MDYxZTAwMWYxYjAwMGIxNjFlMDBjMTFiMDAwYjE2MTgwNzEwMGQxODA2MjIxZTAwOTgyNDAyMDAwMDBhMDAwMTEwMDAxZjI5MDIwMGQyMjUwMGI0MTgwMTFiMDAwYjA2M2UyMjAxMTcwMDA4MWMxODAxMjYzZTIyMDExNzAwMDkxYzE4MDE0ODAwM2ExNzAwMGExODAwMWUwMDFmMWYwMTE4MDE0ODAwM2UxNzAwMDcwMjAwMDAwMDEzMWUwMDBjMDIwMGNiMDIwMDAwMWEwMjIyMWUwMDBmMjQxODAwMGEwMDAxMTAyMjAxMTcwMDFjMWMxMzFlMDAwYzAyMDBkMzAyMDAwMDFhMDIyMjFlMDAwZjI0MTgwMDBhMDAwMTEwMDExNzAwMjExODAxMTgwMDFlMDAxZjNlMTcwMDA2MTgwMDAwMTgwMDIyMWUwMGQ0MjQ0ODAwMTgwMTBhMDAwMjEwMDAxODAxNGEwMDAwZmZmZjNhMTcwMDEzMWIwMjBiMjgyNjE4MDAxODAxMGEwMDAyMTAxNjAwMTAxYjAyMGIyOTI2MTgwMDE4MDEwYTAwMDIxMDAwMWYyYTAyMDBkNTI1MDA2YjE4MDAxYjAwMGIwNjNlMjIwMTE3MDAwODFjMTgwMDI2M2UyMjAxMTcwMDBjMWMxODAwMWUwMDFmNDgwMDNlMTcwMDA2MTgwMDAwMWIwMjBiMjcxODAwMDQxZjAwMWIwMjBiMjcxODAxMDQxZjAxMWIwMjBiMjAyNjFiMDIwYjI1MjYxYjAyMGIyMTI2MTgwMDIwMGEwMDAyMTAxYjAyMGIyNDFiMDIwYjIxMjYxODAxMTIwYTAwMDIxMDA0MGEwMDAyMTAxMjBhMDAwMjEwMDAxZjJiMDIwMGQ2MjUwMDY3MTgwMDFiMDAwYjA2M2UyMjAxMTcwMDA4MWMxODAwMjYzZTIyMDExNzAwMGMxYzE4MDAxZTAwMWY0ODAwM2UxNzAwMDYxODAwMDAxYjAyMGIyNzE4MDEwNDFmMDExYjAyMGIyYTFiMDIwYjIwMjYxYjAyMGIyNjI2MWIwMjBiMjEyNjE4MDAxMjBhMDAwMjEwMWIwMjBiMjQxYjAyMGIyMTI2MTgwMTEyMGEwMDAyMTAwNDBhMDAwMjEwMjAwYTAwMDIxMDA0MDAxZjJjMDIwMGQ3MjUwMTlkMDIwMGQ4MWYwNjAyMDAyYTFmMDcxODAyMTcwMDA4MDIwMDAwMWYwNzE4MDExNzAwMDcxODAxMWYwNjAyMDAwMDFmMDg0ODAwMWYwYTE4MDAxZTAwMWYxODBhNDgwMzI4M2IxNzAwYjMxODAwMjIxZTAwYzMyNDE4MGEyMjJkMWYwYTBhMDAwMTEwNDkwMGZmMmY0ODEwMzMxODAwMjIxZTAwYzMyNDE4MGEyMjJkMWYwYTBhMDAwMTEwNDkwMGZmMmY0ODA4MzMzMDE4MDAyMjFlMDBjMzI0MTgwYTIyMmQxZjBhMGEwMDAxMTA0OTAwZmYyZjMwMWYwOTE4MDgxODA2MjIxZTAwMmQyNDE4MDk0YTAwZmMwMDAwMmY0ODEyMzQwYTAwMDExMDI4MWYwODE4MDgxODA2MjIxZTAwMmQyNDE4MDk0YTAwMDNmMDAwMmY0ODBjMzQwYTAwMDExMDI4MWYwODE4MDgxODA2MjIxZTAwMmQyNDE4MDk0OTBmYzAyZjQ4MDYzNDBhMDAwMTEwMjgxZjA4MTgwODE4MDYyMjFlMDAyZDI0MTgwOTQ4M2YyZjBhMDAwMTEwMjgxZjA4MTZmZjQ1MTgwMDFlMDAxZjE4MGEyOTQ4MDAzOTE3MDBhODE4MDAyMjFlMDBjMzI0MTgwYTIyMmQxZjBhMGEwMDAxMTA0OTAwZmYyZjQ4MTAzMzE4MDAxZTAwMWYxODBhMzkxNzAwMWExODAwMjIxZTAwYzMyNDE4MGEwYTAwMDExMDQ5MDBmZjJmNDgwODMzMTYwMDA1NDgwMDMwMWYwOTE4MDgxODA2MjIxZTAwMmQyNDE4MDk0YTAwZmMwMDAwMmY0ODEyMzQwYTAwMDExMDI4MWYwODE4MDgxODA2MjIxZTAwMmQyNDE4MDk0YTAwMDNmMDAwMmY0ODBjMzQwYTAwMDExMDI4MWYwODE4MDgxODAwMWUwMDFmMTgwYTM5MTcwMDFhMTgwNjIyMWUwMDJkMjQxODA5NDkwZmMwMmY0ODA2MzQwYTAwMDExMDE2MDAwNTE4MDcyODFmMDgxODA4MTgwNzI4MWYwODE4MDgwMDFmMmQwMjAwZDkyNTAwMTIwMjAwZGEyMjFlMDAyNDI0MTgwMDBhMDAwMTEwMDAxZjJlMDIwMGRiMjUwMTEwMDIwMDAwMWYwNjQ4MDAxZjA3MTgwNzE4MDAxZTAwMWY0ODAzMjkzYTE3MDBmNjFiMDIwYjJlMTgwMDIyMWUwMDJkMjQxODA3NDgwMDI4MGEwMDAxMTAwNDFmMDgxYjAyMGIyZTE4MDAyMjFlMDAyZDI0MTgwNzQ4MDEyODBhMDAwMTEwMDQxZjA5MWIwMjBiMmUxODAwMjIxZTAwMmQyNDE4MDc0ODAyMjgwYTAwMDExMDA0MWYwYTFiMDIwYjJlMTgwMDIyMWUwMDJkMjQxODA3NDgwMzI4MGEwMDAxMTAwNDFmMGIxODA2MWIwMDBiMTYyMjFlMDBjMTI0MTgwODQ4MDIzMzE4MDk0ODA0MzUzMDBhMDAwMTEwMjgxZjA2MTgwMDIyMWUwMDJkMjQxODA3NDgwMjI4MGEwMDAxMTAwMjAwMmEzZjE3MDAyNzE4MDYxYjAwMGIxNjIyMWUwMGMxMjQxODA5NDgwNDMzNDkwMGYwMmYxODBhNDgwMjM1NDgwZjJmMzAwYTAwMDExMDI4MWYwNjE4MDAyMjFlMDAyZDI0MTgwNzQ4MDMyODBhMDAwMTEwMDIwMDJhM2YxNzAwMjExODA2MWIwMDBiMTYyMjFlMDBjMTI0MTgwYTQ4MDYzMzQ5MDBjMDJmMTgwYjMwMGEwMDAxMTAyODFmMDYxODA3NDgwNDI4MWYwNzE2ZmYwMjE4MDYwMDFmMmYwMjAwZGMyNTAwNGExODAwNDgzZjJmMWYwMDFiMDAwYjE2MjIxZTAwYzEyNDE4MDAxODAwNDgxYTNhMTcwMDA4NDg0MTE2MDAyNTE4MDA0ODM0M2ExNzAwMDg0ODQ3MTYwMDE4MTgwMDQ4M2UzYTE3MDAwYjQ4MDA0ODA0MjkxNjAwMDg0ODAwNDgxMTI5MjgwYTAwMDExMDAwMWYzMTAyMDBkZDI1MDAzMzFiMDIwYjMxMWYwNjE4MDYxODAwNDgxODM0MDQxODA2MTgwMDQ4MTIzNDA0MjgxODA2MTgwMDQ4MGMzNDA0MjgxODA2MTgwMDQ4MDYzNDA0MjgxODA2MTgwMDA0MjgwMDFmMzIwMjAwZGUyNTAwOTgxYjAyMGIxMjFlMDBkZjAyMDBlMDI4MWYwNjFiMDIwYjFlMjYxODA2MDIwMDAwMjUwMDc4MTgwMDFlMDAxZjQ4MDgzYTE3MDAwNDAwNDYwMDAzMDYwMDA2MjcxZjc0MDUwMDVmMWIwMjBiMmMyNjFiMDIwYjJmMTgwMDIyMWUwMDlhMjQ0ODA4MGEwMDAxMTAwNDE4MDAyMjFlMDA5YTI0NDgwMDQ4MDgwYTAwMDIxMDBhMDAwMjEwMWYwYzE4MGMwMjAwZTEzZTE3MDAxMzFiMDIwYjM4MjYyMDE4MDAwYTAwMDIxMDFjMTYwMDE5MTgwYzAyMDBlMjNlMTcwMDEwMWIwMjBiMzgyNjEyMTgwMDBhMDAwMjEwMWMwNzAwMGEwMDAyMTAxYzAwMWYzNzAyMDBlMzI1MDA0ZTFiMDIwYjEyMTgwMDFkMDBlNDQ2MDAwMzA2MDAwNjI3MWYxZTA1MDAzODEzMWUwMDMxMTcwMDE2MTMxZTAwMzEyMjFlMDAzNjI0MDIwMGU1MTgwMTBhMDAwMjEwMWMxMzFlMDAzMzE3MDAxNjEzMWUwMDMzMjIxZTAwMzYyNDAyMDBlNTE4MDEwYTAwMDIxMDFjMDcwMDFmMzgwMjAwZTYyNTAwYTkwMjAwMDAxZjA2NDYwMDAzMDYwMDA2MjcxZjIzMDUwMDNmMTMxZTAwMzExNzAwMTUxMzFlMDAzMTIyMWUwMDMyMjQwMjAwZTUwYTAwMDExMDFmMDYxODA2MDEyMjAxMTcwMDA4MWMxMzFlMDAzMzE3MDAxNTEzMWUwMDMzMjIxZTAwMzIyNDAyMDBlNTBhMDAwMTEwMWYwNjA3MTgwNjE3MDA1NTQ2MDAwMzA2MDAwNjI3MWY0MzA1MDA0OTFiMDIwYjJjMjYxYjAyMGIyZjE4MDYyMjFlMDA5YTI0NDgwODBhMDAwMTEwMDQxODA2MjIxZTAwOWEyNDQ4MDA0ODA4MGEwMDAyMTAwYTAwMDIxMDFmMjMxODIzMDIwMGUxM2UxNzAwMDgyMDAwMTYwMDBlMTgyMzAyMDBlMjNlMTcwMDA1MTIwMDA3MTIwMDFmMzkwMjAwZTcyNTAxMDMxMjFmMDYxYjAyMGIxMjFlMDBlNDIwM2UxNzAwMDkyMDFmMDYxNjAwMjAxYjAyMGIxMjFlMDBlNDEyM2UxNzAwMDkxMjFmMDYxNjAwMGUxYjAyMGIzOTI2MGEwMDAwMTAxZjA2MTMxZTAwMDYxYTAwMjIxMjFkMDBlODIyMTIxZDAwZTkyMjEyMWQwMDgyMjIxODA2MWQwMGVhMjIxMjFkMDBlYjIyMTIxZDAwNDAyMjEyMWQwMGVjMjIxMjFkMDBlZDIyMTIxZDAwNTUyMjEyMWQwMDZmMjIxMjFkMDBlZTIyMDIwMGVmMjUwMDA1MjAwMDFmNDAxODQwMWQwMDBmMWYwNzE4MDcxYjAyMGIwZDI2MGEwMDAwMTAxZDAwZWIxODA3MWUwMGViMDExNzAwNjcxYjAyMGIxMzE4MDcwNDFjMWIwMjBiMTcxODA3MDQxYzE4MDcxYjAyMGIxNDI2MGEwMDAwMTAxZDAwZWMxODA3MWIwMjBiMTUyNjBhMDAwMDEwMWQwMGVkMTgwNzFiMDIwYjE2MjYwYTAwMDAxMDFkMDA1NTE4MDcxYjAyMGIxODI2MGEwMDAwMTAxZDAwZWUxODA3MWIwMjBiMTkyNjBhMDAwMDEwMWQwMDgyMTgwNzFiMDIwYjFkMjYwYTAwMDAxMDFkMDBlOTE4MDcwMDFmM2EwMjAwZjAyNTAwNWMxYjAwMGIwNTIyMWUwMGYxMjQxODAwMGEwMDAxMTAxZjA2NDgwMDFmMDcxODA2MWUwMDFmNDgwMTI5MWYwODE4MDg0ODAwM2IxNzAwMzIxODAwMTgwNjE4MDgxOTE5MTcwMDA4NDgwMTE2MDAwNTQ4MDAxZjA5MTgwOTE4MDYxZTAwMWYxODA4Mjk0ODAxMjkzMzE4MDczMDFmMDcxODA4MmUxZjA4MTZmZmNjMTgwNzAwMWYzYjAyMDBmMjI1MDAzODQ4MDAxZjA2MTgwNjE4MDExZTAwMWYzYTE3MDAyNjE4MDA0YTAwMDEwMDNmMmExODAxMjIxZTAwYzMyNDE4MDYwYTAwMDExMDI4NDgwMDM1MWYwMDE4MDYyZDFmMDYxNmZmZDUxODAwMDAxZjNjMDIwMGYzMjUwMDM4NDgwMDFmMDYxODA2MTgwMTFlMDAxZjNhMTcwMDI2MTgwMDE4MDEyMjFlMDBjMzI0MTgwNjBhMDAwMTEwMzE0YTAwMDEwMDNmMmE0ODAwMzUxZjAwMTgwNjJkMWYwNjE2ZmZkNTE4MDAwMDFmM2QwMjAwZjQyNTAwYTM0ODAwMWYwNjE4MDYxODAxMWUwMDFmM2ExNzAwOTExODAxMjIxZTAwYzMyNDE4MDYwYTAwMDExMDFmMDcxODA3NGEwMDAwZDgwMDNiMjIxNzAwMGMxYzE4MDc0YTAwMDBkYmZmM2MyMjE3MDAwYzFjMTgwNjE4MDExZTAwMWYzYTE3MDA0NTE4MDEyMjFlMDBjMzI0MTgwNjQ4MDEyODBhMDAwMTEwMWYwODE4MDg0YTAwMDBmYzAwMmY0YTAwMDBkYzAwM2QxNzAwMjIxODA3NDkwM2ZmMmY0ODBhMzMxODA4NDkwM2ZmMmYyODRhMDAwMTAwMDAyODFmMDcxODA2NDgwMTI4MWYwNjE4MDA0YTAwMDEwMDNmMmExODA3Mjg0ODAwMzUxZjAwMTgwNjJkMWYwNjE2ZmY2YTE4MDAwMDFmM2UwMjAwZjUyNTAwNzcxODAwMjIwMTE3MDAwNzFjMDIwMDAwMWYwNjE4MDYyMjFlMDA3YjI0MTMxZTAwMGMwMjAwZjYwMjAwMDAxYTAyMDIwMDAwMGEwMDAyMTAxZjA2MTgwNjIyMWUwMDI0MjQwMjAwZTAwYTAwMDExMDQ4MDA0ODAxMjk0MDE3MDAyMTE4MDYyMjFlMDBkNDI0NDgwMDE4MDYyMjFlMDAyNDI0MDIwMGUwMGEwMDAxMTAwYTAwMDIxMDE2MDAwNTE4MDYxZjA2MTgwNjE3MDAwODE4MDYxNjAwMDYwMjAwOGYxZjA2MTgwNjAwMWYzZjAyMDBmNzI1MDBiMTE4MDAyMjAxMTcwMDA3MWMwMjAwMDAxZjA2MTgwNjIyMWUwMDZhMjQxMzFlMDAwYzAyMDBmODAyMDAwMDFhMDIwYTAwMDExMDFmMDcxODA3MTcwMDE2MTgwNzQ4MDAxOTIyMWUwMGQ0MjQ0ODAxMGEwMDAxMTAxNjAwMDYwMjAwMDAxZjA2MTgwNjE3MDAxNDE4MDYyMjFlMDAyYjI0MDIwMGY5MGEwMDAxMTAxNjAwMDQyNjFmMDgxMzFlMDAwNjFhMDAxZjA5MTgwODE3MDA0NTQ4MDAxZjBhMTgwYTE4MDgxZTAwMWYzYTE3MDAzNjE4MDkxODA4MTgwYTE5MjIxZTAwMmIyNDAyMDAyYTBhMDAwMTEwNDgwMDE5MTgwODE4MGExOTIyMWUwMDJiMjQwMjAwMmEwYTAwMDExMDQ4MDExOTBkMTgwYTJkMWYwYTE2ZmZjNTE4MDkwMDFmNDAwMjAwZmEyNTAwOTExODAwMDEyMjAxMTcwMDE3MWMxYjAwMGIxOTIyMWUwMGZiMjQxODAwMGEwMDAxMTAwMjAwZmMzZTE3MDAwYTEzMWUwMDA2MWEwMDAwMWIwMDBiMDUyMjFlMDBmMTI0MTgwMDBhMDAwMTEwMjIxZTAwZmQyNDBhMDAwMDEwMWYwNjEzMWUwMDA2MWEwMDFmMDc0ODAwMWYxMDE4MTAxODA2MWUwMDFmM2ExNzAwMzcxODAxMTcwMDFhMTgwNzE4MDYxODEwMTkxODAwMTgwNjE4MTAxOTE5MDIwMDAwMjgwZDE2MDAxMzE4MDcxODA2MTgxMDE5MTgwMDE4MDYxODEwMTkxOTBkMTgxMDJkMWYxMDE2ZmZjNDE4MDcwMDFmNDEwMjAwZmUyNTAwNzgxYjAwMGIxNzIyMWUwMGZmMjQxODAwMGEwMDAxMTAxNzAwMTMxODAwMjIxZTAxMDAyNDFiMDIwYjQyMGEwMDAxMTAwMDE4MDAxYjAwMGIwNTQxMTcwMDQ5MWIwMDBiMDUyMjFlMDBmMTI0MTgwMDBhMDAwMTEwMjIxZTAwZmQyNDBhMDAwMDEwMWYwYzE4MGMyMjFlMDEwMTI0MDIwMDAwMjUwMDE3MTgwMDE4MDExYjAyMGI0MjFiMDMwYjAwMTgwMTE5MDQwZDE4MDAwMDEzMWUwMDA2MWEwMDBhMDAwMjEwMDAxODAwMDAxZjQyMDIwMTAyMjUwMDdkMTgwMDAxMjIwMTE3MDAxNzFjMWIwMDBiMTkyMjFlMDBmYjI0MTgwMDBhMDAwMTEwMDIwMGZjM2UxNzAwMDcwMjAwMDAwMDFiMDAwYjA1MjIxZTAwZjEyNDE4MDAwYTAwMDExMDIyMWUwMGZkMjQwYTAwMDAxMDFmMDYwMjAwMDAxZjA3NDgwMDFmMTAxODEwMTgwNjFlMDAxZjNhMTcwMDI5MTgwNzE4MDYxODEwMTkwYTAwMDEwMjAwMmEyODE4MDAxODA2MTgxMDE5MTkyODAyMDBmOTI4MjgxZjA3MTgxMDJkMWYxMDE2ZmZkMjE4MDcwMDFmNDMwMjAxMDMyNTAwY2IxYjAwMGIwODIyMWUwMDc4MjQwMjAwNzkwYTAwMDExMDFmMDcxODA3NDgzMDFkMDEwNDE4MDc0ODEwMWQwMTA1MTgwNzIyMWUwMDg4MjQwMjAxMDYwYTAwMDExMDFmMDgxODA4MDIwMTA3MWQwMTA4MTgwODIyMWUwMTA5MjQwMjAxMGE0ODAyNDgwYzBhMDAwMzEwMWMxODA4NDgwMjFkMDEwYjE4MDg0ODAxMWQwMTBjMTgwODAyMDEwZDFkMDEwZTE4MDgyMjFlMDEwZjI0NDgwODQ4MDg0ODA4NDgwMDQ4MDIwYTAwMDUxMDFjMTgwODIyMWUwMTEwMjQwYTAwMDAxMDFjMTgwNzIyMWUwMDdhMjQwYTAwMDAxMDFmMDY0ODAwMWYwOTE4MDk0ODIwM2ExNzAwMmMxODAwNGEwMDAxMDAzZjJhMTgwNjIyMWUwMGMzMjQxODAwMTgwNjFlMDAxZjJjMGEwMDAxMTAyODQ4MDAzNTFmMDAxODA5MmQxZjA5MTZmZmQyMTgwMDAwMWY0NDAyMDExMTI1MDAyMDQ2MDAwMzA2MDAwYzI3MWYwYzQ4MDA0ODAxMjkwMDA1MDAwZDFiMDIwYjQ0MTQwMTEyMDQwMDA3MDAxZjQ1MDIwMTEzMjUwMDExMTEwMjAxMTMxZDAwOTUxMTE4MDAxZDAxMTQwMDFmNDYwMjAxMTUyNTAwMWE0NjAwMDMwNjAwMDgyNzFmMGMyMDAwMDUwMDBiMTMxZTAwMzEwMTAxMDAwNzAwMWY0NzAyMDExNjI1MDAxYTQ2MDAwMzA2MDAwODI3MWYwYzIwMDAwNTAwMGIxMzFlMDAzMzAxMDEwMDA3MDAxZjQ4MDIwMTE3MjUwMDFhNDYwMDAzMDYwMDA4MjcxZjBjMjAwMDA1MDAwYjEzMWUwMDc0MDEwMTAwMDcwMDFmNDkwMjAxMTgyNTAwMzAxYjAyMGIwYjFiMDIwYjQ5MjYwYTAwMDAxMDA0MWIwMjBiMGIxYjAyMGI0ODI2MGEwMDAwMTAwNDI4MWIwMjBiMGIxYjAyMGI0NzI2MGEwMDAwMTAwNDI4MDAxZjRhMDIwMTE5MjUwMDIzMTMxZTAxMWExZjA2MTgwNjFlMDEwNDAyMDBiYjI4MTgwNjFlMDEwNTI4MDIwMGJiMjgxODA2MWUwMTFiMjgwMDFmNGIwMjAxMWMyNTAwMTkxMzFlMDExYTFmMDYxODA2MWUwMTFkMDIwMGJiMjgxODA2MWUwMTFlMjgwMDFmNGMwMjAxMWYyNTAwNzExYjAwMGIxYTAyMDAwMDI1MDA2NDAyMDEyMDFiMDAwYjBkNDIxNzAwNTExYjAwMGIwZDIyMWUwMTIwMjQwYTAwMDAxMDIyMWUwMTIxMjQwMjAwMDAyNTAwMzExYjA0MGIwMDE4MDAwMjAxMjIxOTAyMDBiYjI4MTgwMDAyMDEyMzE5MjgwMjAwYmIyODE4MDAwMjAxMjQxOTI4MDIwMGJiMjgxODAwMDIwMTI1MTkyODA0MWMwMDBhMDAwMTEwMWMxNjAwMGExODAwMDIwMDAwMDQxYzAwMWEwMTAwMWY0ZDAyMDEyNjI1MDA3ZDAyMDEyNzFmMDY0ODAwMWYwNzIxMWIwMDBiMGQxODA2MTk0MzAyMDAwMjQwMTcwMDBmMWIwMDBiMGQxODA2MTkxZjA3MTYwMDFjMjExYjAwMGIwZDE4MDYxOTQzMDIwMDAyNDAxNzAwMGMxYjAwMGIwZDE4MDYxOTFmMDc0NjAwMDMwNjAwMDkyNzFmNTAxMjFmMDgwNTAwMTgxYjAwMGIwODIyMWUwMTI4MjQwMjAxMjkwYTAwMDExMDFjMjAxZjA4MDcwMjAxMmExMzQyMWYwOTE4MDcwMjAwYmIyODE4MDgyODAyMDBiYjI4MTgwOTI4MDAxZjRlMDIwMTJiMjUwMDY3MWIwMDBiMGIxYTAwMWYwNjE4MDYyMjFlMDEyYzI0NDgwMTBhMDAwMTEwMWMxODA2MjIxZTAxMmQyNDQ4MDUwYTAwMDExMDFjNDgwMDE4MDYyMjFlMDEyZTI0MGEwMDAwMTAyOTFmMDcxODA2MjIxZTAxMmQyNDQ4MGIwYTAwMDExMDFjNDgwMDE4MDYyMjFlMDEyZTI0MGEwMDAwMTAyOTFmMDgxYjAwMGIwYzIyMWUwMTJmMjQxODA3MTgwODBhMDAwMjEwMDAxZjRmMDIwMTMwMjUwMWRkMDIwMTMxMDIwMTMyMDIwMTMzMGEwMDAzMWYwNjEzMWUwMDA2MWEwMDFmMDcxMzFlMDAwNjFhMDAxZjA4MWIwMDBiMDgxZTAwYjcwMTE3MDAwNzAyMDAxYTAwMTgwNjAzMWYxYjE4MWIyMTA0MTcwMDcxMWYxYTFiMDAwYjA4MjIxZTAwNzgyNDAyMDEzNDBhMDAwMTEwMWYxYzE4MWMwMjAxMzUxZDAxMzYxODFjMWUwMTM3MDIwMTM4MWQwMTM5MTgxYzFlMDEzNzE4MWExZDAxM2ExYjAwMGIwODFlMDBiNzIyMWUwMGJmMjQxODFjMGEwMDAxMTAxYzE4MDcxODFhMTgxYzFlMDEzYjBkMTgwODE4MWExODFjMWUwMTNjMGQxYjAwMGIwODFlMDBiNzIyMWUwMGJlMjQxODFjMGEwMDAxMTAxYzE2ZmY4ZTAyMDEzZDAyMDEzZTAyMDEzZjAyMDE0MDAyMDE0MTAyMDE0MjAyMDE0MzAyMDE0NDAyMDE0NTAyMDE0NjAyMDE0NzAyMDE0ODAyMDE0OTAyMDE0YTAyMDE0YjAyMDE0YzAyMDE0ZDAyMDE0ZTAyMDE0ZjAyMDE1MDAyMDE1MTAyMDE1MjAyMDE1MzAyMDE1NDAyMDE1NTAyMDE1NjAyMDE1NzAyMDE1ODAyMDE1OTBhMDAxZDFmMDk0ODAwMWYwYjI3MWYwYTI3MWYwYzQ4MDAxZjFhMTgxYTE4MDkxZTAwMWYzYTE3MDBiMzE4MDYwMzFmMWMxODFjMjEwNDE3MDA5ZjFmMWIxYjAwMGIwODIyMWUwMDc4MjQwMjAxMzQwYTAwMDExMDFmMWQxODFkMDIwMTM1MWQwMTM2MTgxZDFlMDEzNzAyMDEzODFkMDEzOTE4MWQxZTAxMzcxODA5MTgxYTE5MDIwMTVhMjgxODFiMjgxZDAxM2ExYjAwMGIwODFlMDBiNzIyMWUwMGJmMjQxODFkMGEwMDAxMTAxYzE4MWQxZTAxM2IxODA3MTgxYjE5NDAyMjAxMTcwMDBmMWMxODFkMWUwMTNjMTgwODE4MWIxOTQwMWYxZTFiMDAwYjA4MWUwMGI3MjIxZTAwYmUyNDE4MWQwYTAwMDExMDFjMTgxZTE3MDAxODE4MWE0ODFlM2ExNzAwMGQ0ODAxMTgxYTMzMTgwYTMwMWYwYTE2MDAwNjE2ZmY2MDE4MWEyZDFmMWExNmZmNDgxODBhMjIxZTAwMTEyNDQ4MTAwYTAwMDExMDAwMWY1MDAyMDE1YjI1MDAyMTQ2MDAwMzA2MDAwYzI3MWYwYzE4MGMxZTAxMTQwMDA1MDAwZTFiMDAwYjFiMDIwMTVjMWEwMTFjMDcwMDFmNTEwMjAxNWQyNTAwMTQxYjAwMGIxYzIyMWUwMDExMjQwYTAwMDAxMDFlMDAxZjAwMWY1MjAyMDE1ZTI1MDFlODFiMDIwYjA3MjYwYTAwMDAxMDIyMDExNzAwMGQxYzFiMDIwYjA5MjYwYTAwMDAxMDIyMDExNzAwMjMxYzFiMDAwYjBkMWUwMDljMjIxZTAwOWQyNDBhMDAwMDEwMjIxZTAwMjQyNDAyMDE1ZjBhMDAwMTEwNDgwMDM5MTcwMDA3MDIwMDAwMDAxMzFlMDE2MDIyMDExNzAwMDgxYzEzMWUwMTYxMjIwMTE3MDAwODFjMTMxZTAxNjIxZjA2MWIwMDBiMWEwMjAwMDAyNTAxN2Q0NjAwMDMwNjAwMGQyNzFmNmExODAwMDIwMDAwMDQxYzA1MDE2OTFiMDMwYjA2MTcwMTVhMWIwMzBiMDYxMzFlMDAwNjFhMDAyMjEzMWUwMDA2MWEwMDIyMDIwMTYzMWQwMTY0MGEwMDAxMWQwMTY1MWEwMTFmMDYwMjAwMDAyNTAwMDQwMDFmMDcxMzFlMDAwYzAyMDE2NjAyMDAwMDFhMDIxZjA4MTMxZTAwMGMwMjAxNjcwMjAwN2QxYTAyMWYwOTE4MDYyMjFlMDE2ODI0MDIwMDAwMGEwMDAxMTAxYzFiMDAwYjFkMjYwMjAwMDAyNTAwMGQxYjA0MGIwMDAyMDAwMDA0MWMwMDQ5MDFmNDBhMDAwMjEwMWMxODA2MjIxZTAxNjkyNDBhMDAwMDEwMWYwYTE4MGExYjAwMGIxYTQxMTcwMDM4MTgwYTIyMWUwMTIxMjQwMjAwMDAyNTAwMTMxYjA0MGIwNjIyMWUwMTZhMjQxODAwMGEwMDAxMTAwMDBhMDAwMTEwMjIxZTAxMjEyNDAyMDAwMDI1MDAwNDAwMGEwMDAxMTAxYzE2MDAzMDE4MDYyMjFlMDE2OTI0MDIwMDAwMjUwMDFjMWIwNDBiMDYyMjFlMDE2YTI0MTgwMDFiMDQwYjA3MWIwNDBiMDcwYTAwMDMxMDFjMDAxODA3MGEwMDAyMTAxYzE4MDYwMjAwMDAyNTAwNjAxODAwMjIxNzAwMDkxYzE4MDAxZTAxNmIyMjE3MDAwYzFjMTgwMDFlMDE2YjFlMDE2YjE3MDA0MzFiMDQwYjA4MjIxZTAxNmMyNDE4MDAxZTAxNmIxZTAxNmIwYTAwMDExMDFmMDYxODA2MTcwMDI3MTgwNjQ4MDAxOTIyMWUwMDZhMjQxYjA0MGIwOTBhMDAwMTEwMWYwNzE4MDcxNzAwMGUxYjA0MGIwMDE4MDY0ODAwMTkwNDFjMDAxZDAxNmQxNjAwMGExODAwMDIwMDAwMDQxYzA3MDAxYTAxMDAxZjUzMDIwMTZlMjUwMDVkMDIwMTZmMjIxZTAwN2IyNDEzMWUwMDBjMDIwMTcwMDIwMDdkMWEwMjAyMDAwMDI1MDAzZTFiMDAwYjBjMjIxZTAwMWUyNDBhMDAwMDEwNDgxMDJhNDgwMDMwMWYwNjE4MDAwMjAxNzEzZDE3MDAwODE4MDYxNjAwMGIxODA2NDgwMzJmNDgwODMwMWYwNzE4MDcyMjFlMDAxMTI0NDgxMDBhMDAwMTEwMDAwYTAwMDIxMDAwMWY1NDAyMDE3MjI1MDA1NTE4MDAxZTAwMWY0ODIyM2UxNzAwNDgxYjAyMGIzYzI2NDgwMDE4MDAyMjFlMDAyZjI0NDgwMDQ4MjAwYTAwMDIxMDBhMDAwMjEwMWYwNjE4MDYyMjFlMDAxMTI0MGEwMDAwMTAyMjFlMDAyZjI0NDgwMDQ4MDIwYTAwMDIxMDE4MDAyMjFlMDAyZjI0NDgyMDQ4MjIwYTAwMDIxMDNlMDAxMjAwMWY1NTAyMDE3MzI1MDA1ZDFiMDIwYjBmMDIwMTc0MDQxZjA2MTgwNjIyMTcwMDBiMWMxYjAyMGI1NTE4MDYwNDE3MDAwNjE4MDYwMDFiMDIwYjU0MjYwYTAwMDAxMDFmMDYxODA2MWIwMjBiM2MyNjQ4MDAxODA2MGEwMDAyMTAyODIyMWUwMDJmMjQ0ODAwNDgyMjBhMDAwMjEwMWYwNjFiMDIwYjEwMjYwMjAxNzQxODA2MGEwMDAyMTAxYzE4MDYwMDFmNTYwMjAxNzUyNTAwMzMxODAwMDExNzAwMDcwMjAwMDAwMDFiMDIwYjBjNDgwNDA0MWYwNjE4MDYxYjAyMGIyZDI2MWIwMjBiMmIyNjE4MDAxODA2MGEwMDAyMTAwMjAxNzYwYTAwMDIxMDI4MDAxZjU3MDIwMTc3MjUwMTVkMTgwMTE3MDAzYTQ4MDAxZjBiNDgwMDFmMGMxODBjMTgwMDFlMDAxZjNhMTcwMDI3MTgwMDE4MGMxOTFlMDE3ODE3MDAxNDE4MDAxODBjMTkxODAxMTgwYjIyMmQxZjBiMTkxZDAxNzkxODBjMmQxZjBjMTZmZmQ0MDIwMDAwMWYwNjE4MDAyMjFlMDE3YTI0MDIwMDAwMjUwMDFiMWIwMzIyMGIwNjFiMDIwYjBiMTgwMDFlMDE3OTA0MDIwMTdiMjgyODFkMDE3YzAwMGEwMDAxMTAxYzE4MDYxYjAyMGIwYTI2MGEwMDAwMTAyODFmMDYxYjAyMGI1NDI2MGEwMDAwMTAxZjA3MWIwMDBiMGMyMjFlMDAxZDI0MTgwNzIyMWUwMGMzMjQ0ODAzMGEwMDAxMTA0ODA4MmIwYTAwMDExMDE4MDcyMjFlMDBjMzI0NDgwMzBhMDAwMTEwNDgwODJjMjgxZjA4MTgwNzIyMWUwMDJmMjQ0ODA0NDgwNDE4MDgyODBhMDAwMjEwMWYwOTFiMDIwYjJkMWIwMjBiMmIyNjE4MDYxODA5MGEwMDAyMTAxODA3MjgwNDFmMDYxYjAyMGIxMjIyMWUwMTdkMDIwMTdlMWIwMDBiMWUxODA2MDQyODAyMDBmOTI4MjgxZDAxN2QyNzFmMGExYjAyMGIxZTI2MTgwYTAyMDAwMDI1MDA0ZDE4MDAwMjAxN2YxOTQ4MDAzZDIyMTcwMDBhMWMxODAwMDIwMTgwMTkxNzAwMzUxYjAyMGIxMjFiMDIwYjU3MTgwMDAyMDE4MDE5MDQxZDAxODExYjAyMGIxMjE4MDAwMjAxODAxOTFkMDE4MjFiMDIwYjEwMjYwMjAxODMxODAwMDIwMTgwMTkwYTAwMDIxMDFjMDAwYTAwMDIxMDFjMDAxZjU4MDIwMTg0MjUwNDlhMWIwMDBiMGQyMjE3MDAwNTFjMTMyMjE3MDAwODFjMWIwMDBiMDgwMTE3MDAwNDAwMTMxZTAwMDYxYTAwMjIwMjAxODUxZDAxODYyMjQ4MDQxZDAxODcyMjE4MDAxZTAxODUxZDAxNzkxMzFlMDAwNjFhMDAyMjAyMDE4ODFkMDE4NjIyNDgwMzFkMDE4NzIyMWIwMjBiMGExZDAxODkxMzFlMDAwNjFhMDAyMjAyMDE4YTFkMDE4NjIyNDgwMzFkMDE4NzIyMWIwMjBiNGExZDAxODkxMzFlMDAwNjFhMDAyMjAyMDA3OTFkMDE4NjIyNDgwMzFkMDE4NzIyMWIwMjBiNDUxZDAxODkxMzFlMDAwNjFhMDAyMjAyMDE4YjFkMDE4NjIyNDgwMzFkMDE4NzIyMWIwMjBiMGExZDAxODkxMzFlMDAwNjFhMDAyMjAyMDA5ZTFkMDE4NjIyNDgwMDFkMDE4NzEzMWUwMDA2MWEwMDIyMDIwMThjMWQwMTg2MjI0ODAwMWQwMTg3MTMxZTAwMDYxYTAwMjIwMjAxOGQxZDAxODYyMjQ4MDAxZDAxODcxMzFlMDAwNjFhMDAyMjAyMDE4ZTFkMDE4NjIyNDgwMDFkMDE4NzEzMWUwMDA2MWEwMDIyMDIwMDU3MWQwMTg2MjI0ODAwMWQwMTg3MTMxZTAwMDYxYTAwMjIwMjAxOGYxZDAxODYyMjQ4MDMxZDAxODcyMjFiMDIwYjRiMWQwMTg5MTMxZTAwMDYxYTAwMjIwMjAxOTAxZDAxODYyMjQ4MDMxZDAxODcyMjFiMDIwYjRjMWQwMTg5MTMxZTAwMDYxYTAwMjIwMjAxOTExZDAxODYyMjQ4MDExZDAxODcxMzFlMDAwNjFhMDAyMjAyMDE5MjFkMDE4NjIyNDgwMTFkMDE4NzEzMWUwMDA2MWEwMDIyMDIwMTkzMWQwMTg2MjI0ODAxMWQwMTg3MTMxZTAwMDYxYTAwMjIwMjAxOTQxZDAxODYyMjQ4MDAxZDAxODcxMzFlMDAwNjFhMDAyMjAyMDE5NTFkMDE4NjIyNDgwMzFkMDE4NzIyMWIwMjBiNGQxZDAxODkyMjQ4MDExZDAxNzgxMzFlMDAwNjFhMDAyMjAyMDE5NjFkMDE4NjIyNDgwMzFkMDE4NzIyMWIwMjBiNGUxZDAxODkxMzFlMDAwNjFhMDAyMjAyMDE5NzFkMDE4NjIyNDgwMzFkMDE4NzIyMWIwMjBiNGYxZDAxODkxMzFlMDAwNjFhMDAyMjAyMDE5ODFkMDE4NjIyNDgwMzFkMDE4NzIyMWIwMjBiMGExZDAxODkxMzFlMDAwNjFhMDAyMjAyMDE5OTFkMDE4NjIyNDgwMzFkMDE4NzIyMWIwMjBiMWIxZDAxODkxMzFlMDAwNjFhMDAyMjAyMDE5YTFkMDE4NjIyNDgwMzFkMDE4NzIyMWIwMjBiNTAxZDAxODkxMzFlMDAwNjFhMDAyMjAyMDE5YjFkMDE4NjIyNDgwMzFkMDE4NzIyMWIwMjBiMWMxZDAxODkxMzFlMDAwNjFhMDAyMjAyMDE5YzFkMDE4NjIyNDgwMzFkMDE4NzIyMWIwMjBiMGExZDAxODkxMzFlMDAwNjFhMDAyMjAyMDA5YzFkMDE4NjIyNDgwMDFkMDE4NzEzMWUwMDA2MWEwMDIyMDIwMTlkMWQwMTg2MjI0ODAzMWQwMTg3MjIxYjAyMGIwZjFkMDE4OTIyMDIwMTgzMWQwMTllMTMxZTAwMDYxYTAwMjIwMjAxOWYxZDAxODYyMjQ4MDMxZDAxODcyMjFiMDIwYjUxMWQwMTg5MTMxZTAwMDYxYTAwMjIwMjAxYTAxZDAxODYyMjQ4MDMxZDAxODcyMjFiMDIwYjUyMWQwMTg5MTMxZTAwMDYxYTAwMjIwMjAxYTExZDAxODYyMjQ4MDMxZDAxODcyMjFiMDIwYjUzMWQwMTg5MjI0ODAxMWQwMTc4MTMxZTAwMDYxYTAwMjIwMjAwODIxZDAxODYyMjQ4MDExZDAxODcxMzFlMDAwNjFhMDAyMjAyMDFhMjFkMDE4NjIyNDgwNDFkMDE4NzIyMWIwMjBiMDYxZTAxYTMxZDAxNzkxMzFlMDAwNjFhMDAyMjAyMDFhNDFkMDE4NjIyNDgwMzFkMDE4NzIyMWIwMjBiNTYxZDAxODkxMzFlMDAwNjFhMDAyMjAyMDFhNTFkMDE4NjIyNDgwMzFkMDE4NzIyMWIwMjBiMGExZDAxODkxMzFlMDAwNjFhMDAyMjAyMDFhNjFkMDE4NjIyNDgwNDFkMDE4NzBhMDAyMjFmMDYwYTAwMDAxZjA3MTgwNjA4MDMxZjExMTgxMTIxMDQxNzAwZGIxZjEwMTgwNjE4MTAxOTFlMDE4NzFmMTIxODEyNDgwMDQwMTcwMDFlMTgxMjQ4MDE0MDE3MDAzMzE4MTI0ODAyNDAxNzAwNDAxODEyNDgwMzQwMTcwMDUwMTYwMGE5MTgwNjE4MTAxOTFiMDIwYjBiMWIwMDBiMGQxODA2MTgxMDE5MWUwMTg2MTkwNDFkMDE3OTE2MDA4YzE4MDYxODEwMTkxMzE4MDYxODEwMTkxZTAxODYxOTFkMDE3OTE2MDA3NzE4MDYxODEwMTkxYjAwMGIwODE4MDYxODEwMTkxZTAxODYxOTFkMDE3OTE2MDA1ZjE4MDYxODEwMTkxZTAxNzgxNzAwMzIxYjAwMGIxYTE3MDAyODE4MDcyMjFlMDA5MzI0MTgwNjE4MTAxOTFlMDE4OTIyMWUwMDIzMjQxODA2MTgxMDE5MWUwMTllMGEwMDAxMTAwYTAwMDExMDFjMTYwMDI1MTgwNjE4MTAxOTE4MDYxODEwMTkxZTAxODkyMjFlMDAyMzI0MjYxODA2MTgxMDE5MWUwMTllMGEwMDAyMTAxZDAxNzkxNmZmMjQxYjAwMGIxYTE3MDAzNjFiMDAwYjFhMjIxZTAxYTcyNDE4MDcwYTAwMDExMDIyMWUwMTIxMjQwMjAwMDAyNTAwMTQxYjAyMGI1ODI2MWIwMzBiMDYxODAwMGEwMDAyMTAxYzAwMGEwMDAxMTAxYzE2MDAwYjFiMDIwYjU4MTgwNjA0MWMwMDFmNTkwMjAxYTgyNTAwNDQxYjAwMGIwODIyMTcwMDBiMWMxYjAwMGIwODFlMDFhOTAxMTcwMDA0MDAxYjAyMGI1YjA4MDMxZjBkMTgwZDIxMDQxNzAwMWYxZjBjMWIwMDBiMDgyMjFlMDFhOTI0MTgwYzFiMDIwYjViMTgwYzE5MGEwMDAyMTAxYzE2ZmZlMDAwMWY1ZDAyMDFhYTI1MDA4NDE4MDAxZTAwMWY0OTAwYzgzOTE3MDAxMzE4MDAyMjFlMDFhYjI0NDgwMDQ4NjQwYTAwMDIxMDFjMTgwMDFlMDAxZjQ4MDAzOTE3MDA0ZTE4MDAxODAwMWUwMDFmNDgwMTI5MTkxZjBjMTgwMTFlMDFhYzE4MGMxZTAxYWMyOTQ4MDAzYzIyMDExNzAwMmExYzAyMDFhZDE4MDE0MjIyMTcwMDBmMWMxODAxMWUwMTcxMTgwYzFlMDE3MTNkMjIxNzAwMGYxYzE4MDExZTAxYWQxODBjMWUwMWFkM2QxNzAwMDQwMDE4MDAyMjFlMDA5MzI0MTgwMTBhMDAwMTEwMWMwMDFmNjEwMjAxYWUyNTAwNjA0ODAwMWYwNjE4MDAxZTAxYWYyMjAxMTcwMDA5MWMxODAwMWUwMWIwMjIwMTE3MDAwOTFjMTgwMDFlMDFiMTIyMDExNzAwMDkxYzE4MDAxZTAxYjIxNzAwMDc0ODAxMWYwNjFiMDIwYjYxMjYxYjAyMGI2MDEzMWUwMDA2MWEwMDIyMTgwNjFkMDE3MTIyMWIwMDBiMGIyMjFlMDFiMzI0MGEwMDAwMTAxZDAxYWMwYTAwMDIxMDFjMDAxZjYyMDIwMWI0MjUwMDZkMTgwMDFmMDYxODAwMWUwMDk0MWYwNzE4MDAxZTAxYjUyMjE3MDAwYTFjMTgwNzAyMDFiNjNlMTcwMDEzMTgwMDFlMDFiNzQ4MDAxOTFmMDYxYjAyMjAxZDAxYjgxMzFlMDAwNjFhMDAyMjE4MDYxZTAxYjkxZDAxNzEyMjE4MDYxZTAxYmExZDAxYWQyMjFiMDAwYjBiMjIxZTAxYjMyNDBhMDAwMDEwMWQwMWFjMWYwODFiMDIwYjYxMjYxYjAyMGI1ZTE4MDgwYTAwMDIxMDFjMDAxZjYzMDIwMWJiMjUwMDZkMTgwMDFmMDYxODAwMWUwMDk0MWYwNzE4MDAxZTAxYjUyMjE3MDAwYTFjMTgwNzAyMDFiYzNlMTcwMDEzMTgwMDFlMDFiNzQ4MDAxOTFmMDYxYjAyMjAxZDAxYjgxMzFlMDAwNjFhMDAyMjE4MDYxZTAxYjkxZDAxNzEyMjE4MDYxZTAxYmExZDAxYWQyMjFiMDAwYjBiMjIxZTAxYjMyNDBhMDAwMDEwMWQwMWFjMWYwODFiMDIwYjYxMjYxYjAyMGI1ZjE4MDgwYTAwMDIxMDFjMDAxZjY0MDIwMWJkMjUwMDE5MTgwMDIyMWUwMTAxMjQxYjAyMGI2NTBhMDAwMTEwMTgwMDFlMDAxZjJiMDAxZjY3MDIwMWJlMjUwMDY4MTgwMDFlMDAxZjQ4MDEzYzE3MDAwNjQ4MDAwMDFiMDIwYjY3MTgwMDA0MWYwNjE4MDAyMjFlMDEwMDI0MDIwMDAwMjUwMDBiMTgwMDFiMDMwYjA2MjkwMDBhMDAwMTEwMWYwNzFiMDAwYjBjMjIxZTAxYmYyNDE4MDcyMjFlMDEwMDI0MWIwMjBiNjYwYTAwMDExMDIyMWUwMTAxMjQxYjAyMGI2NTBhMDAwMTEwMTgwMDFlMDAxZjQ4MDEyOTJiMGEwMDAxMTAwMDFmNjgwMjAxYzAyNTAwZDU0ODAwMWYwNjQ4MDAxZjA3MTgwMDFlMDAxZjE4MDEzOTE3MDBiYTBhMDAwMDFmMDg0ODAwMWYwOTE4MDkxODAwMWUwMDFmNDgwMTI5M2ExNzAwODQxODAwMTgwOTQ4MDEyODE5MWYwYTE4MDAxODA5MTkxZjBiMTgwYTFlMDFhYzE4MGIxZTAxYWMyOTFmMGMxODBjMTcwMDU5MTgwMjE3MDAxNzE4MDgyMjFlMDA5MzI0NDgwMTE4MGMyYjBhMDAwMTEwMWMxNjAwNDAxODA4MjIxZTAwOTMyNDFiMDAwYjBjMjIxZTAxYmYyNDFiMDIwYjY2MTgwYTFlMDE3MTE4MGIxZTAxNzEyOTA0MWIwMjBiNjYxODBhMWUwMWFkMTgwYjFlMDFhZDI5MDQyODBhMDAwMTEwMTgwYzJiMGEwMDAxMTAxYzE4MDkyZDFmMDkxNmZmNzQxYjAyMGI2NzE4MDgwNDFmMDYxYjAyMGI2ODE4MDgwNDFmMDcxODA3NDgwMDNkMTcwMDA4MTQwMWMxMWYwNzE4MDYxODA3MGEwMDAyMDAxZjY5MDIwMWMyMjUwMTE5MTIxZjA2NDYwMDAzMDYwMDA2MjcxZjIxMDUwMDJiMWIwMDBiMDgyMjE3MDAwYjFjMWIwMDBiMDgxZTAxMjgxNzAwMTcxYjAwMGIwODIyMWUwMTI4MjQwMjAxMjkwYTAwMDExMDFjMjAxZjA2MDcxYjAyMGI2OTI2MWIwMjBiNWU0ODAxMGEwMDAyMTAxZjA3MWIwMjBiNjkyNjFiMDIwYjYwNDgwNTIwMGEwMDAzMTAxZjA4NDgwMTFmMDkxODA2MDEyMjE3MDAwODFjMWIwMjBiNWMxNzAwMGExODA5NDg0MDMwMWYwOTFiMDIwYjVlMWUwMDFmNDgwMDNlMTcwMDBkMTgwOTQ4MDIzMDFmMDkxNjAwMTUxODA3NDgwMDE5NDgzMjM5MTcwMDBhMTgwOTQ4MTAzMDFmMDkxYjAyMGI1ZjFlMDAxZjQ4MDAzZTE3MDAwYTE4MDk0ODA0MzAxZjA5MWIwMjBiNjAxZTAwMWY0ODAwM2UxNzAwMGQxODA5NDgwODMwMWYwOTE2MDAxNjE4MDg0ODAwMTkxNDAxYzMzOTE3MDAwYTE4MDk0ODIwMzAxZjA5MTgwOTIyMWUwMDExMjQ0ODIwMGEwMDAxMTAxZjBhMTgwYTFlMDAxZjQ4MDEzZTE3MDAwZTAyMDFjNDE4MGEyODFmMGExNjAwMTYxODBhMWUwMDFmNDgwMjNlMTcwMDBiMDIwMDFhMTgwYTI4MWYwYTE4MGEwMDFmNmEwMjAxYzUyNTAwMmQwMjAwMDAxZjA2NDYwMDAzMDYwMDA2MjcxZjBlMDUwMDE5MWIwMjBiMGUyNjAyMDFjNjFiMDAwYjA4MWUwMDM0MGEwMDAyMTAxZjA2MDcxODA2MDAxZjZiMDIwMWM3MjUwMDUzMWIwMDBiMTkyMjFlMDBmYjI0MTMxZTAwMDYxYTAwMjIxODAwMWQwMDBlMjIxYjAwMGIxZjFiMDAwYjE5MjIxZTAwZmIyNDE4MDExZTAwYjcwYTAwMDExMDA0MWQwMWM4MjIxODAyMWQwMTg2MGEwMDAxMTAxZjA2MWIwMjBiMmQyNjE4MDYwMjAxNzYyMDBhMDAwMzEwMWYwNzE4MDcwMDFmNmMwMjAxYzkyNTA0MzQyMTE4MDE0MzAyMDAwMjNlMjIxNzAwMGMxYzIxMTgwMDQzMDIwMDAxNDAyMjE3MDAwYTFjMTgwMDFlMDFjYTAxMTcwMDBkMWIwMjBiNDYwMjAxY2IxYTAxNDc0ODAwMWYwNjQ4MDAxZjA3NGEwMDAwZmZmMTFmMDgxYjAwMGIwYjFhMDAyMjFlMDAxNjI0MGEwMDAwMTA0OTAzZTgyYjQ4MDAzNTFmMDkxYjAyMGIwNjFlMDFjYzAxMjIxNzAwM2UxYzFiMDIwYjNkMjYxYjAyMGIzZDI2NDgwMDE4MDkwMjAwMDAyODBhMDAwMjEwMWIwMDBiMGUxZTAwODMyMjFlMDAyZjI0MWIwMDBiMGUxZTAxY2QxZTAwMWY0ODAyMjgwYTAwMDExMDBhMDAwMjEwMTgwODJjMWYwNzE4MDkxODA3MTgwODJhMzE0ODAwMzUyMjFlMDAxMTI0NDgwMjBhMDAwMTEwMWYwYTE4MGExZjBiMTgwYTFlMDAxZjQ4MjAzOTE3MDAxYjE4MGEyMjFlMDAyZjI0MTgwYTFlMDAxZjQ4MjAyOTBhMDAwMTEwMWYwYjE2MDAzYzE4MGExZTAwMWY0ODIwM2ExNzAwMzEwMjAwMDAxZjcwNDgwMDFmNzExODcxNDgyMDE4MGExZTAwMWYyOTNhMTcwMDEzMTg3MDAyMDAxYTI4MWY3MDE4NzEyZDFmNzExNmZmZTUxODcwMTgwYjI4MWYwYjAyMDFjZTFmMGMwMjAxY2YxZjBkMDIwMWQwMWYwZTE4MGUxODBkMjgxODBjMjgxODBiMjgxZjA2MWIwMDBiMTUyNjE4MDY0ODAyMGEwMDAyMTAxZjA2MWIwMjBiM2QyNjQ4MDAxODA2MDIwMDAwMjgwYTAwMDIxMDFmMGYxYjAyMGIzYTI2MGEwMDAwMTAxZjEwMTgxMDAyMDBlODE4MDIwMjAxZDEzZTE3MDAwNzEyMTYwMDA0MjAwZDAyMDAwMDFmMTExODAxMTcwMDBhMTgwMTFmMTExNjAxMWUxYjAyMGI1YTFlMDFkMjIyMWUwMDIzMjQxMTAyMDFkMzE4MDAwYTAwMDMxMDFjMTgwMDFlMDBiNzIyMTcwMDFhMWMxYjAwMGIxOTIyMWUwMGZiMjQxODAwMWUwMGI3MGEwMDAxMTAwMjAwZmM0MDE3MDA2ZjQ4MDAxZmMzMTgwMDFlMDFkNDE3MDAzMzFiMDIwYjNlMjY0ODAwMWIwMDBiMTkyMjFlMDBmYjI0MWIwMjBiNDEyNjE4MDAxZTAwYjcxODAwMWUwMWQ0MGEwMDAyMTAwYTAwMDExMDBhMDAwMjEwMWZjMzE2MDAyNzFiMDIwYjNlMjY0ODAwMWIwMDBiMTkyMjFlMDBmYjI0MWIwMjBiNDIxODAwMWUwMGI3MDQwYTAwMDExMDBhMDAwMjEwMWZjMzAyMDFkNTE4YzMyODAyMDBmOTI4MWYxMTFiMDIwYjQwMTgwMDFlMDFjYTA0MWZjMjE4MDAxZTAxZDYxNzAwMWExYjAwMGIwNTIyMWUwMWQ3MjQxOGMyMTgwMDFlMDFkNjBhMDAwMjEwMTYwMDA1MThjMjFmYzIxODExMWIwMjBiNDMxOGMyMDQyODFmMTExODExMDIwMWQ4MjgxYjAyMGIzZjE4MDAxZTAxY2EwNDI4MDIwMGY5MjgxZjExMTgxMTAyMDFkOTI4MDIwMWRhMjgxZjExMWIwMjBiNWExZTAxZDIyMjFlMDAyMzI0MTEwMjAxZGIxODExMGEwMDAzMTAxYzFiMDIwYjNiMTgxMDA0MWYxMjFiMDIwYjA2MWUwMWNjMDEyMjE3MDAwZDFjMWIwMjBiNDUyNjBhMDAwMDEwMWYxMzFiMDIwYjA2MWUwMWNjMDEyMjE3MDAxZTFjMWIwMjBiMTIxZTAxODEyMjAxMTcwMDExMWMxYjAyMGI1NzFiMDIwYjBmMDIwMTgzMDQwNDFmMTQxYjAyMGIzMzE4MDYwNDFiMDIwYjMzMTgwNjE0MDFkYzJiNDgwMDM1MDQyODFiMDIwYjMzMTgxMzE4MDYzMTA0MjgxYjAyMGIzMzFiMDIwYjNkMjYxODBmMWIwMjBiMDYxZTAxY2MwMTIyMTcwMDBiMWMxYjAwMGIwZDFlMDA5YzIyMWUwMDExMjQwYTAwMDAxMDBhMDAwMjEwMTgwODJjNDgxMDMzMWIwMjBiM2QyNjE4MGYxODExMDIwMDAwMjgwYTAwMDIxMDE4MDgyYzMwMDQyODFiMDIwYjMzMTgxMjQ4MDgzMzFiMDIwYjA2MWUwMWRkNDgwNDMzMzAxODA2MzEwNDI4MWIwMjBiMzIxODA3MDQyODFmMTUxYjAyMGIzMzQ4MDAwNDFjMTgxNDE3MDAwYTE4MTUxODE0MjgxZjE1MWIwMjBiNmEyNjBhMDAwMDEwMjIwMTE3MDAwNzFjMDIwMWRlMWYxNjAyMDBiYjFiMDIwYjZkMjgxYjAyMGIwNjFlMDFkZjI4MWYxNzE4MTcxODE2MjgxZjE3MTgxNzFiMDIwYjZlMTgxNTI4MjgxZjE3MWIwMjBiM2UyNjQ4MDAxODE3MGEwMDAyMTAyMjFlMDAxMTI0NDgxMDBhMDAwMTEwMWYxODE4MTgyMjFlMDA5YTI0MTgxODFlMDAxZjQ4MDIyOTE4MTgxZTAwMWYwYTAwMDIxMDFmMTkxODE3MTgxOTI4MWYxNzAyMDAwMDFmMWExYjAyMGI2YjI2MGEwMDAwMTAxZjFiMTgxYjE3MDAxZjFiMDIwYjZjMjYxODFiMTgwMDE4MTEwYTAwMDMxMDFmMWExODE3MDIwMWUwMjgxODFhMjgxZjE3MTgxNzAwMWY2ZjAyMDFlMTI1MDA3MjEzMWUwMDA2MWEwMDFmMDYxODAxMDgwMzFmMDgxODA4MjEwNDE3MDA1YTFmMDcxODAxMTgwNzE5MWYwOTE4MDAxODA5MTkxZjBhMjExODBhNDMwMjAwMDIzZTIyMDExNzAwMDgxYzE4MGEyNjNlMTcwMDA2MTIxZjBhMTgwYTI2NDAyMjE3MDAxYTFjMjExODBhNDMwMjAwMDMzZTIyMDExNzAwMGMxYzIxMTgwYTQzMDIwMDAxM2UxNzAwMDYyMDFmMGExODA2MTgwOTE4MGEwZDE2ZmZhNTE4MDYwMDFmNzAwMjAxZTIyNTAwNGIwMjAxZTMwMjAxZTQwMjAwOWUwMjAxZTUwMjAxOTQwMjAxOGMwMjAxZTYwMjAxMjcwMjAxZTcwMjAwYjQwMjAxZTgwMjAxZTkwMjAxZWEwMjAxZWIwMjAxZWMwMjAxZWQwMjAxZWUwYTAwMTExZjA2MWIwMjBiNzAyNjFiMDAwYjBkMTgwNjBhMDAwMjEwMDAxZjcxMDIwMWVmMjUwMDQ1MDIwMWYwMDIwMDQ5MDIwMDQ3MDIwMWYxMDIwMWYyMDIwMWYzMDIwMTkzMDIwMWY0MDIwMWY1MDIwMWY2MDIwMWY3MDIwMTYxMDIwMWY4MDIwMWY5MDIwMWZhMDIwMWZiMGEwMDEwMWYwNjFiMDIwYjcwMjYxMzE4MDYwYTAwMDIxMDAwMWY3MjAyMDFmYzI1MDAyNzAyMDFmZDAyMDFmZTAyMDAwOTAyMDFmZjAyMDIwMDBhMDAwNTFmMDYxYjAyMGI3MDI2MWIwMDBiMDgxODA2MGEwMDAyMTAwMDFmNzMwMjAyMDEyNTAwNTUxYjAwMGIwODIyMWUwMDc4MjQwMjAwNzkwYTAwMDExMDFmMDYyNjFmMDc0NjAwMDMwNjAwMDYyNzFmMTAwNTAwMjgxODA2MjIxZTAwODgyNDAyMDA4OTBhMDAwMTEwMjIwMTE3MDAxMjFjMTgwNjIyMWUwMDg4MjQwMjAyMDIwYTAwMDExMDFmMDcwNzE4MDcwMTE3MDAwNjI2MWYwNzE4MDcwMDFmNzQwMjAyMDMyNTAwNjcxODAwMjIxZTAwOGEyNDAyMDIwNDBhMDAwMTEwMjIwMTE3MDAxMjFjMTgwMDIyMWUwMDhhMjQwMjAyMDUwYTAwMDExMDIyMDExNzAwMTIxYzE4MDAyMjFlMDA4YTI0MDIwMjA2MGEwMDAxMTAxZjA2MTgwNjE3MDAyNzE4MDAyMjFlMDA4YzI0MTgwNjFlMDIwNzBhMDAwMTEwMWYwNzE4MDc0ODAwM2UxNzAwMDc0ODAyMWYwNzE4MDcwMDE2MDAwNTI2MDAwMDFmNzUwMjAyMDgyNTAxYjYxYjAyMGIxYTFlMDIwOTE3MDAwYjFiMDIwYjFhMWUwMjA5MDAxYjAyMGI3NDI2MGEwMDAwMTAxZjA2MTgwNjAxMTcwMDBhMTMxZTAwMDYxYTAwMDAxMzFlMDAwNjFhMDAyMjE4MDYyMjFlMDIwYTI0MGEwMDAwMTAyMjAxMTcwMDA3MWMwYTAwMDAxZDAyMGIyMjE4MDYyMjFlMDIwYzI0MGEwMDAwMTAxZTAyMGQxZDAyMGQyMjE4MDYyMjFlMDA4YzI0MTgwNjFlMDIwZTBhMDAwMTEwMWQwMjBmMjIxODA2MjIxZTAwOGMyNDE4MDYxZTAyMTAwYTAwMDExMDFkMDIxMTIyMTgwNjIyMWUwMDhjMjQxODA2MWUwMjEyMGEwMDAxMTAxZDAyMTMyMjFiMDIwYjc1MTgwNjA0MWQwMjAzMjIxODA2MjIxZTAwOGMyNDE4MDYxZTAyMTQwYTAwMDExMDFkMDIxNTIyMTgwNjIyMWUwMDhjMjQxODA2MWUwMjE2MGEwMDAxMTAxZDAyMTcyMjE4MDYyMjFlMDA4YzI0MTgwNjFlMDIxODBhMDAwMTEwMWQwMjE5MjIxODA2MjIxZTAwOGMyNDE4MDYxZTAyMWEwYTAwMDExMDFkMDIxYjIyMTgwNjIyMWUwMDhjMjQxODA2MWUwMjFjMGEwMDAxMTAxZDAyMWQyMjE4MDYyMjFlMDA4YzI0MTgwNjFlMDIxZTBhMDAwMTEwMWQwMjFmMjIxODA2MjIxZTAwOGMyNDE4MDYxZTAyMjAwYTAwMDExMDFkMDIyMTIyMTgwNjIyMWUwMDhjMjQxODA2MWUwMjIyMGEwMDAxMTAxZDAyMjMyMjE4MDYyMjFlMDA4YzI0MTgwNjFlMDIyNDBhMDAwMTEwMWQwMjI1MjIxODA2MjIxZTAwOGMyNDE4MDYxZTAyMjYwYTAwMDExMDFkMDIyNzIyMTgwNjIyMWUwMDhjMjQxODA2MWUwMjI4MGEwMDAxMTAxZDAyMjkyMjE4MDYyMjFlMDA4YzI0MTgwNjFlMDIyYTBhMDAwMTEwMWQwMjJiMjIxODA2MjIxZTAwOGMyNDE4MDYxZTAyMmMwYTAwMDExMDFkMDA5NjFmMDcxYjAyMGIxYTE4MDcxZDAyMDkxODA3MDAxZjc2MDIwMjJkMjUwMDY1MTMxZTAwMDYxYTAwMjIxYjAyMGI3MTI2MGEwMDAwMTAxZDAyMmUyMjFiMDIwYjcyMjYwYTAwMDAxMDFkMDIyZjIyMWIwMjBiNzMyNjBhMDAwMDEwMWQwMDY5MjIxYjAyMGI3NjI2MGEwMDAwMTAxZDAwODkyMjFiMDIwYjFiMjYwYTAwMDAxMDFkMDIzMDIyMWIwMjBiMWMyNjBhMDAwMDEwMWQwMDRlMWYwNjFiMDIwYjFhMTgwNjFkMDIzMTE4MDYwMDFmNzcwMjAyMzIyNTAwNzUxMzFlMDAwNjFhMDAxZjA2MWIwMjBiMWExZTAyMzExNzAwMGYxYjAyMGIxYTFlMDIzMTFmMDYxNjAwMGUxYjAyMGI3NzI2MGEwMDAwMTAxZjA2MTgwNjFiMDAwYjBiMjIxZTAxYjMyNDBhMDAwMDEwMWQwMjMzMWIwMjBiMGM0ODA0MDQxZjA3MTgwNzFiMDIwYjJkMjYxYjAyMGIyYjI2MWIwMDBiMTkyMjFlMDBmYjI0MTgwNjBhMDAwMTEwMTgwNzBhMDAwMjEwMDIwMTc2MGEwMDAyMTAyODFmMDgxODA4MDAxZjc4MDIwMjM0MjUwMDNiNDgwMDFmMDYxODA2MWIwMjBiMTIxZTAyMzUxZTAwMWYzYTE3MDAyNTFiMDIwYjEyMWUwMjM1MTgwNjE5MjIxZTAwMGYyNDE4MDAwYTAwMDExMDE3MDAwNTIwMDAxODA2MmQxZjA2MTZmZmQxMTIwMDFmNzkwMjAyMzYyNTAzYWMxMzFlMDIzNzFlMDAyMjFmMDYxODA2MWUwMDZlMWYwNzE4MDYxZTAyMzgxZjA4MTgwNjFlMDIzOTFmMDkxODA2MWUwMjNhMWYwYTE4MDYxZTAyM2IxNzAwMDcwMDE2MDAwOTE4MDYyMDFkMDIzYjE4MDYwMjAwMDAyNTAwNzYxMTFlMDIzYzAxMTcwMDY1MTExZTAyM2QyMjFlMDA5MzI0MTMxZTAwMDYxYTAwMjIwMjAyMzgxZDAyM2UyMjFiMDQxZDAyM2YwYTAwMDExMDFjMTMxZTAwMGMwMjAyNDAwMjAwMGUxYTAyMjIxZTAwMGYyNDE4MDAwYTAwMDExMDE3MDAyYTExMTgwMTIyMWUwMDExMjQwYTAwMDAxMDIyMWUwMDlkMjQwYTAwMDAxMDIyMWUwMDJiMjQwMjAyNDEwYTAwMDExMDQ4MDAxOTFkMDI0MjFiMDMwYjA4MTExYjA0MTAwMDFkMDIzODE4MDYwMjAwMDAyNTAwMTIxMTFiMDQxZDAyNDMxYjAzMGIwYTExMWIwNDEwMDAxZDAyM2ExODA2MDIwMDAwMjUwMDQwMTEwYTAwMDAxZDAyM2QxMTFlMDIzZDIyMWUwMDkzMjQxMzFlMDAwNjFhMDAyMjAyMDA2ZTFkMDIzZTIyMWIwNDFkMDIzZjBhMDAwMTEwMWMxMTE4MDAxZDAyNDQxMTE4MDExZDAyNDUxYjAzMGIwNzExMWIwNDEwMDAxZDAwNmUwMjAyNDYwMjAwNzAwMjAyNDcwMjAyNDgwMjAyNDkwMjAyNGEwMjAyNGIwYTAwMDcxZjBiMTgwNjAyMDAwMDI1MDI2ZjExMjAxZDAyM2MxYjAyMGI3OTExMWUwMjQ1MDQxNzAyNTUxMTFlMDI0NTIyMWUwMDI0MjQwMjAyNGMwYTAwMDExMDQ4MDA0ODAxMjkzOTE3MDAwYzFiMDMwYjA5MTExYjA0MTAwMDExMTgwMDFkMDI0ZDExMWUwMjRlMWYwNjExMWUwMjQ2MWYwNzExMWUwMDcwMWYwODExMWUwMjQ3MWYwOTExMWUwMjQ4MWYwYTExMWUwMjQ5MWYwYjExMWUwMjRhMWYwYzExMWUwMjRiMWYwZDExMWUwMjRmMWYwZTExMWUwMjUwMWYwZjEzMWUwMDA2MWEwMDFmMTA0ODAwMWYyYTE4MmExYjAzMGIwYjFlMDAxZjNhMTcwMDIxMTgxMDFiMDMwYjBiMTgyYTE5MTExZTAyNTExYjAzMGIwYjE4MmExOTE5MGQxODJhMmQxZjJhMTZmZmQ4MTMxZTAwMDYxYTAwMjIxYjAyMGI4MjI2MWIwMzBiMDAxMTFlMDI0NTBhMDAwMjEwMWQwMWNhMWYxMTExMWUwMjQ0MDIwMjUyM2QxNzAwM2MxMTFlMDI0MjAyMDI1MzNlMjIwMTE3MDAwYzFjMTExZTAyNDIwMjAyNTQzZTE3MDAxYTFiMDIwYjgwMjYxODExMTExZTAyNDIxMTFlMDI0ZDBhMDAwMzEwMWMxNjAwMGMxYjAzMGIwOTExMWIwNDEwMDAxYjAyMGI4NTFiMDMwYjAwMDQxNzAwMWMxYjAzMGIwMDIyMWUwMjU1MjQxODExMWIwMDBiMDYwMjAxZDEwYTAwMDMxMDE2MDAxNTFiMDIwYjZmMjYxODExMWIwMDBiMDYwMjAxZDEwYTAwMDMxMDFmMTIxYjAyMGI4MzI2MTExZTAyNDUxODEyMGEwMDAyMTAxZjEzMTExZTAyM2QyMjE3MDAxMzFjMTExZTAyM2Q0ODAwMTkwMjAyM2UxOTAyMDA2ZTNmMTcwMDA1MjYwMDExMWUwMjNkMWYxNDQ4MDAxZmE0MThhNDE4MTQxZTAwMWYzYTE3MDAzNjE4YTQ0ODAwM2UxNzAwMTAxODE0MThhNDE5MWUwMjNmNDgwMTE4MTMwZDExMTgxNDE4YTQxOTAyMDIzZTE5MTkxMTE4MTQxOGE0MTkxZTAyM2YxMDFjMThhNDJkMWZhNDE2ZmZjNTExMWUwMjQzMTcwMDBlMTExZTAyM2ExMTExMWUwMjQzMTAxYzExMDIwMjNkMDkxYjAyMGIxMjFlMDI1NjE3MDAxZTExMjIxZTAyMzgyNDFiMDIwYjA2MWUwMjU3MWIwMjBiNzgyNjBhMDAwMDEwMGEwMDAyMTAxYzExMTgwNjFkMDI0ZTExMTgwNzFkMDI0NjExMTgwODFkMDA3MDExMTgwOTFkMDI0NzExMTgwYTFkMDI0ODExMTgwYjFkMDI0OTExMTgwYzFkMDI0YTExMTgwZDFkMDI0YjExMTgwZTFkMDI0ZjExMTgwZjFkMDI1MDQ4MDAxZjkwMTg5MDFiMDMwYjBiMWUwMDFmM2ExNzAwMjExMTFlMDI1MTFiMDMwYjBiMTg5MDE5MTgxMDFiMDMwYjBiMTg5MDE5MTkwZDE4OTAyZDFmOTAxNmZmZDgxYjAzMGIwOTExMWIwNDEwMDAxZDAyMzkwMDFmN2EwMjAyNTgyNTAzZjYwMjAyNTkyNTAzYzMxODAxMjIwMTE3MDAwYTFjMTMxZTAwMDYxYTAwMWYwMTFiMDIwYjdiMjIxNzAwMGIxYzE4MDAxYjAwMGIyMDQxMWYwNjAyMDAwMDFmMDcwMjAyNWExZjA4MTgwNjE3MDAxNDE4MDAxZTAxY2ExZjA3MTgwMDFlMDI1YjFmMDgxNjAwMjQxODAwMWYwNzE4MDExZTAyNWIxNzAwMTQxODAxMWUwMjViMjIxZTAyNWMyNDBhMDAwMDEwMTYwMDA1MTgwODFmMDgxODA4MDIwMjVhNDAyMjE3MDAwYTFjMTgwODAyMDI1MjQwMjIwMTE3MDAwYzFjMWIwMjBiNzkxODA3MDQwMTE3MDAxMTFiMDMwYjA2MjYxODAwMTgwMTBhMDAwMjEwMDAxMzFlMDAwNjFhMDAyMjFiMDIwYjgyMjYxYjAzMGIwMDE4MDcwYTAwMDIxMDFkMDFjYTFmMDkxODA4MDIwMjUyM2QxNzAxZmMxYjAyMGI3ZjI2MTgwMDE4MDEwYTAwMDIxMDIyMWUwMDJiMjQwMjAyNDEwYTAwMDExMDQ4MDAxOTIyMWUwMDlkMjQwYTAwMDAxMDFmNTAxODUwMDIwMjUzM2UyMjAxMTcwMDBhMWMxODUwMDIwMjU0M2UxNzAxYWYxODA2MTcwMGM4MTgwMDIyMWUwMjVkMjQwYTAwMDAxMDIyMWUwMjVlMjQwYTAwMDAxMDIyMWUwMTIxMjQwMjAwMDAyNTAwODgxYjAyMGI4MDI2MWIwNDBiMDkxYjA0MGI1MDE4MDAwYTAwMDMxMDFjMWIwMjBiODUxYjAzMGIwMDA0MTcwMDFlMWIwMzBiMDAyMjFlMDI1NTI0MWIwNDBiMDkxYjAwMGIwNjAyMDFkMTBhMDAwMzEwMTYwMDE3MWIwMjBiNmYyNjFiMDQwYjA5MWIwMDBiMDYwMjAxZDEwYTAwMDMxMDFmMDYxYjAyMGI4MzI2MWIwNDBiMDcxODA2MGEwMDAyMTAxZjA3MWIwMjBiODEyNjFiMDQwYjAwMTgwNzE4MDAwYTAwMDMxMDFmMDgxYjAzMGIwNjI2MTgwODFiMDQwYjAxMGEwMDAyMTAwMDAyMDAwMDI1MDAxNjFiMDAwYjFhMDIwMDAwMjUwMDA5MWIwNTBiMDA0NzAwMWEwMTAwMGEwMDAyMTAwMDE2MDBlMjFiMDIwYjgwMjYxODA5MTg1MDE4MDExZTAwYjcwYTAwMDMxMDFjMWIwMjBiODUxYjAzMGIwMDA0MTcwMDFjMWIwMzBiMDAyMjFlMDI1NTI0MTgwOTFiMDAwYjA2MDIwMWQxMGEwMDAzMTAxNjAwMTUxYjAyMGI2ZjI2MTgwOTFiMDAwYjA2MDIwMWQxMGEwMDAzMTAxZmEyMWIwMjBiODMyNjE4MDcxOGEyMGEwMDAyMTAxZmEzMWIwMjBiMTIxZTAyNTYxNzAwNmYxODAxMDExNzAwMmExMzFlMDAwNjFhMDAyMjEzMWUwMDA2MWEwMDIyMWIwMjBiMDYxZTAyNTcxYjAyMGI3ODI2MGEwMDAwMTAwZDFkMDI1ZjFmMDExNjAwNDIxODAxMWUwMjVmMDExNzAwMjMxODAxMTMxZTAwMDYxYTAwMjIxYjAyMGIwNjFlMDI1NzFiMDIwYjc4MjYwYTAwMDAxMDBkMWQwMjVmMTYwMDE5MTgwMTFlMDI1ZjFiMDIwYjA2MWUwMjU3MWIwMjBiNzgyNjBhMDAwMDEwMGQxYjAzMGIwNjI2MThhMzE4MDEwYTAwMDIxMDAwMTYwMDExMWIwMzBiMDYyNjE4MDAxODAxMGEwMDAyMTAwMDE2MDExMjE4MDgwMjAyNWEzZTE3MDBmYjFiMDIwYjg1MWIwMzBiMDAwNDE3MDAxYzFiMDMwYjAwMjIxZTAyNTUyNDE4MDkxYjAwMGIwNjAyMDFkMTBhMDAwMzEwMTYwMDE1MWIwMjBiNmYyNjE4MDkxYjAwMGIwNjAyMDFkMTBhMDAwMzEwMWY0ZTFiMDIwYjgzMjYxODA3MTg0ZTBhMDAwMjEwMWY0ZjE4MDYxNzAwMjcxYjAyMGI4MTI2MTgwMDE4NGYxYjAwMGIwNjBhMDAwMzEwMWY1MDFiMDMwYjA2MjYxODUwMTgwMTBhMDAwMjEwMDAxNjAwODcxYjAyMGIxMjFlMDI1NjE3MDA2ZjE4MDEwMTE3MDAyYTEzMWUwMDA2MWEwMDIyMTMxZTAwMDYxYTAwMjIxYjAyMGIwNjFlMDI1NzFiMDIwYjc4MjYwYTAwMDAxMDBkMWQwMjVmMWYwMTE2MDA0MjE4MDExZTAyNWYwMTE3MDAyMzE4MDExMzFlMDAwNjFhMDAyMjFiMDIwYjA2MWUwMjU3MWIwMjBiNzgyNjBhMDAwMDEwMGQxZDAyNWYxNjAwMTkxODAxMWUwMjVmMWIwMjBiMDYxZTAyNTcxYjAyMGI3ODI2MGEwMDAwMTAwZDFiMDMwYjA2MjYxODRmMTgwMTBhMDAwMjEwMDAxNjAwMTExYjAzMGIwNjI2MTgwMDE4MDEwYTAwMDIxMDAwMDAxZjA3MWIwMjBiN2UyNjBhMDAwMDEwMDExNzAwMDQwMDEzMWUwMjYwMTcwMDA3MDAxNjAwMDgxMzIwMWQwMjYwMTMxZTAyNjExZjA2MTMxODA3MWQwMjYxMDAxZjdkMDIwMjYyMjUwMDA4MTMxZTAyNjEwMDFmN2UwMjAyNjMyNTAxMGQwMjAwMDAxZjA2MWIwMjBiN2IyMjE3MDAwYjFjMTgwMDFiMDAwYjIwNDExNzAwMjIxODAwMWUwMjVmMjIxZTAwNDEyNDAyMDI2NDBhMDAwMTEwMWYwNzE4MDcxNzAwMDcxODA3MWYwNjE4MDYwMDE4MDEyMjE3MDAwOTFjMTgwMTFlMDI1ZjE3MDBjNjFiMDIwYjdjMjIxNzAwMGUxYzE4MDExZTAyNWYxYjAwMGIyMTQxMTcwMDIyMTgwMTFlMDI1ZjIyMWUwMDQxMjQwMjAyNjQwYTAwMDExMDFmMTcxODE3MTcwMDA3MTgxNzFmMDYxODA2MDAxODAxMWUwMjVmMWIwMDBiMTc0MTE3MDA0NDQ4MDAxZjQ3MTg0NzE4MDExZTAyNWYxZTAwMWYzYTE3MDAzMjE4MDExZTAyNWYxODQ3MTk0ODAwMTkyMjFlMDA5ZDI0MGEwMDAwMTAwMjAyNjQzZDE3MDAwZjE4MDExZTAyNWYxODQ3MTk0ODAxMTkwMDE4NDcyZDFmNDcxNmZmYzYxODAxMWUwMjVmMWIwMDBiMDU0MTE3MDAzNjE4MDExZTAyNWYwODAzMWY4ZjE4OGYyMTA0MTcwMDIzMWY4ZTE4OGUyMjFlMDA5ZDI0MGEwMDAwMTAwMjAyNjQzZTE3MDAwYzE4MDExZTAyNWYxODhlMTkwMDE2ZmZkYzE4MDYwMDAwMWY3ZjAyMDI2NTI1MDBiYTE4MDIyNjNlMjIwMTE3MDAwYTFjMTgwMjAyMDAwMDNlMTcwMDA2MTgwMDAwMTgwMjIyMWUwMDExMjQwYTAwMDAxMDFmMDIxODAxMDIwMjUzM2UxNzAwNzcxODAwMjAxZDAxZDQxODAyMjIxZTAwMmIyNDAyMDBmOTBhMDAwMTEwMWYwYzEzMWUwMDA2MWEwMDFmMGQxODBjMTcwMDRhNDgwMDFmMGUxODBlMTgwYzFlMDAxZjNhMTcwMDNiMTgwZDE4MGMxODBlMTkyMjFlMDAyYjI0MDIwMDJhMGEwMDAxMTA0ODAwMTkxYjAwMGIyMjE4MGMxODBlMTkyMjFlMDAyYjI0MDIwMDJhMGEwMDAxMTA0ODAxMTkwNDBkMTgwZTJkMWYwZTE2ZmZjMDE4MDAxODBkMWQwMGI3MTYwMDE3MTgwMDFiMDAwYjE5MjIxZTAyNjYyNDE4MDIwYTAwMDExMDFkMDBiNzE4MDAwMDFmODAwMjAyNjcyNTAwOTMxODAwMWUwMjVmMWYwNjFiMDIwYjEyMWUwMjU2MTcwMDFmMTgwNjIyMWUwMjY4MjQxYjAyMGIwNjFlMDI1NzFiMDIwYjc4MjYwYTAwMDAxMDBhMDAwMjEwMWMxYjAwMGIyMDE4MDExMzFlMDAwNjFhMDAyMjE4MDAxZTAyNWIxZDAyNWIyMjE4MDYxZDAyNWYyMjE4MDIxZDAwYjcyMjE4MDAxZTAyNjkxZDAyNjkyMjE4MDAxZTAyNmExZDAyNmEyMjE4MDAxZTAyNmIxZDAyNmIyMjE4MDAxZTAxZWIxZDAxZWIyMjE4MDAxZTAyNmMxZDAyNmMyMjE4MDAxZTAyNmQxZDAyNmQyMjE4MDAxZTAyNmUxZDAyNmUxYTAyMDAxZjgxMDIwMjZmMjUwMTI1MTgwMTFmMDYxYjAyMGIxMjFlMDI3MDFlMDAxZjQ4MDAzOTE3MDA4MDQ4MDAxZjA4MTgwODFiMDIwYjEyMWUwMjcwMWUwMDFmM2ExNzAwNmMxYjAyMGIxMjFlMDI3MDE4MDgxOTQ4MDAxOTFmMDkxODA5MjIxZTAwMGYyNDE4MDEwYTAwMDExMDE3MDA0NTE4MDEyMjFlMDA3YjI0MTgwOTFiMDIwYjEyMWUwMjcwMTgwODE5NDgwMTE5MGEwMDAyMTAxZjA2MWIwMjBiNWExZTAxZDIyMjFlMDAyMzI0MTgwMDAyMDI3MTAyMDI3MjE4MDEyODAyMDI3MzI4MTgwNjI4MGEwMDAzMTAxYzE2MDAwYjE4MDgyZDFmMDgxNmZmOGExYjAwMGIyMjE4MDYwNDE4MDYzZDE3MDAwYzFiMDAwYjFmMTgwNjA0MWYwNjE4MDYyMjFlMDAyNDI0MDIwMGUwMGEwMDAxMTAxZjA3MTgwNzQ4MDAzOTIyMTcwMDE1MWMxODA2MjIxZTAyNzQyNDAyMDI3NTBhMDAwMTEwMTgwNzM5MTcwMDRkMTgwNjIyMWUwMGQ0MjQ0ODAwMTgwNzQ4MDEyODBhMDAwMjEwMWYyMDE4MDYyMjFlMDBkNDI0MTgwNzQ4MDEyODE4MDYxZTAwMWYwYTAwMDIxMDFmMjExODIwMTgyMTIyMWUwMDJiMjQwMjAyNzUwYTAwMDExMDIyMWUwMDk4MjQwMjAyNzYwYTAwMDExMDI4MWYwNjE4MDYwMDFmODIwMjAyNzcyNTAwMmQxODAwMTgwMDIyMWUwMDI0MjQwMjAwZTAwYTAwMDExMDQ4MDA0ODAxMjk0MDE3MDAwYzAyMDI3ODE4MDEyODE2MDAwOTAyMDI3OTE4MDEyODI4MDAxZjgzMDIwMjdhMjUwMDE0MWIwMjBiN2ExODAwMDQxYzFiMDIwYjdkMTgwMDA0MWMwMDFmODQwMjAyN2IyNTAwMGIxODAwMWIwMjBiODc0MTAwMWY4NTAyMDI3YzI1MDAxOTExMWIwMDBiMTkyMjFlMDI2NjI0MWIwMjBiODYwYTAwMDExMDFkMDI3ZDAwMWY4NzAyMDI3ZTI1MDBjMDFiMDIwYjA2MWUwMWNjMTcwMDA1MjYwMDFiMDIwYjg1MTEwNDE3MDAwYTExMWUwMjdkMTYwMDA3MWIwMjBiMTIxZjA2MWIwMDBiMDUyMjFlMDFkNzI0MTgwNjE4MDAwYTAwMDIxMDFjMWIwMjBiOGExODA2MDQxYzE4MDYxZTAyN2ExNzAwMjAxYjAyMGI4YjE4MDYxZTAyN2YwNDFjMWIwMjBiOGMxODA2MWUwMjgwMDQxYzFiMDIwYjg0MTEwNDFjMTgwNjFlMDI1NjE3MDAxMzFiMDAwYjFkMjYxYjAyMGI3NzQ4MDAwYTAwMDIxMDFjMWIwMjBiNWQyNjBhMDAwMDEwMWMxYjAyMGIxMjFlMDI4MTAxMjIxNzAwMDkxYzE4MDYxZTAxODQxNzAwMjcxYjAyMGIxMjIwMWQwMjgxMWIwMjBiMzcyNjBhMDAwMDEwMWMxYjAwMGIxZDI2MWIwMjBiNTk0ODAwMTgwNjBhMDAwMzEwMWMwMDFmODkwMjAyODIyNTAwNjYxODAwMWUwMTg1NDgwMDNlMjIwMTE3MDAxYzFjMWIwMDBiMGMyMjFlMDAxZDI0MTgwMDFlMDE4NTBhMDAwMTEwMTgwMDFlMDE4NTNmMTcwMDBkMWIwMjBiNDYwMjAyODMxYTAxNDcxODAwMWUwMjdhMTcwMDJhMTgwMDFlMDI3ZjFlMDAxZjQ4MDAzZTIyMDExNzAwMGQxYzE4MDAxZTAyN2YxZTAwOTMwMTE3MDAwZDFiMDIwYjQ2MDIwMjg0MWEwMTQ3MDAxZjhhMDIwMjg1MjUwMDNmNDgwMDFmMDYxODA2MTgwMDFlMDAxZjNhMTcwMDJmMTgwMDE4MDYxOTE3MDAxZjFiMDIwYjEyMWUwMjM1MjIxZTAwOTMyNDFiMDAwYjIzMTgwMDE4MDYxOTFhMDEwYTAwMDExMDFjMTgwNjJkMWYwNjE2ZmZjYzAwMWY4YjAyMDI4NjI1MDA0ZjE4MDAxYjAwMGIwNjQwMTcwMDQ0NDgwMDFmMDYxODA2MTgwMDFlMDAxZjNhMTcwMDM1MWIwMjBiMTIxZTAyNzAyMjFlMDA5MzI0MWIwMDBiMjMxODAwMTgwNjE5NDgwMDE5MWEwMTE4MDAxODA2MTk0ODAxMTkwYTAwMDIwYTAwMDExMDFjMTgwNjJkMWYwNjE2ZmZjNjAwMWY4YzAyMDI4NzI1MDAxMTEzMWUwMjg4MjIwMTE3MDAwNzFjMDIwMDAwMDAxZjhkMDIwMjg5MjUwMDU2MWIwMjBiMGYxYjAyMGIwNjFlMDI4YTA0MjIwMTE3MDAwNzFjMDIwMDAwMWYwNjFiMDIwYjExMWIwMjBiMDYxZTAyOGEwNDFjMTgwNjAyMDI4YjNkMTcwMDBiMDIwMDAwMWYwNjE2MDAxNTE4MDYwMjAwMDAzZDE3MDAwYzFiMDAwYjA4MWUwMjY5MWYwNjE4MDYxNzAwMDkxMzE4MDYxZDAyODgwMDFmOGUyMTFiMDAwYjA1MWUwMWQ3NDMwMjAwMDM0MDE3MDBjNzFiMDAwYjA1MjIxZTAwM2UyNDFiMDAwYjA1MDIwMWQ3MTMxZTAwMDYxYTAwMjIwMjAxZDcyNTAwOTQxODAwMjYzZTIyMDExNzAwMGIxYzE4MDAxYjAwMGIwNjNlMTcwMDBkMWIwMDBiMDcwMjAyOGMxYTAxNDcxYjAwMGIwNTE4MDAwNDFmMDY0ODAxMWYwNzE4MDcxYjAzMWUwMDFmM2ExNzAwNWIxYjAzMTgwNzE5MWYwODE4MDgyNjQwMjIxNzAwMGIxYzE4MDgxYjAwMGIwNjQwMTcwMDM5MTgwODA4MDMxZjE0MTgxNDIxMDQxNzAwMmMxZjA5MWIwMDBiMDUxZTAwMjIxZTAyOGQyMjFlMDAyMzI0MTgwODE4MDkwYTAwMDIxMDE3MDAwZDE4MDYxODA5MTgwODE4MDkxOTBkMTZmZmQzMTgwNzJkMWYwNzE2ZmZhMDE4MDYwMDFmOGYxODhmMWQwMjhlMjIyMDFkMDI4ZjIyMjAxZDAyOTAwYTAwMDMxMDFjMWIwMDBiMDUxZTAwZjEwMTE3MDExNDFiMDAwYjA1MDIwMDAwMjUwMTAyMWIwMDBiMDUxZTAwMjIxZTAyOGQxZjA2MTMxZTAwMDYxYTAwMjIyNjFkMDAxMTIyMWUwMjkxMjQwMjAwMTEwYTAwMDExMDAxMWYwNzAyMDAxMTAyMDI5MjAyMDI5MzAyMDI4ZDAyMDI5NDAyMDI5MTAyMDAwZDBhMDAwNzFmMDgxODA4MWUwMDFmMWYwOTAyMDAwMDI1MDBiNDIxMTgwMDQzMDIwMDAzNDAyMjE3MDAxNjFjMjExODAwNDMwMjAwMDE0MDIyMDExNzAwMDgxYzE4MDAyNjNlMTcwMDBkMWIwMDBiMDcwMjAyOTUxYTAxNDcwYTAwMDAxZjA2MTgwMDA4MDMxZjEyMTgxMjIxMDQxNzAwMmExZjA3MWIwMzBiMDYyMjFlMDAyMzI0MTgwMDE4MDcwYTAwMDIxMDE3MDAxMTE4MDYyMjFlMDA5MzI0MTgwNzBhMDAwMTEwMWMxNmZmZDUxYjAzMGIwNzE3MDA0NTQ4MDAxZjA4MTgwODFiMDMwYjA5M2ExNzAwMzcxYjAzMGIwNjIyMWUwMDIzMjQxODAwMWIwMzBiMDgxODA4MTkwYTAwMDIxMDE3MDAxNjE4MDYyMjFlMDA5MzI0MWIwMzBiMDgxODA4MTkwYTAwMDExMDFjMTgwODJkMWYwODE2ZmZjNTE4MDYwMDAwMjYwYTAwMDAxMDFkMDBmMTEzMWUwMDA2MWEwMDIyMDIwMjk2MWQwMWEzMjI0ODAyMWQwMWRkMjIxMjFkMDFjYzIyMDIwMjg4MWQwMjhhMjIwMjAyOTcxZDAxZGYyMjAyMDI5ODFkMDI1NzFmMDYxMzFlMDAwNjFhMDAyMjEyMWQwMjk5MjI0ODAwMWQwMTg1MjIxMjFkMDE4NDIyMTIxZDAyNTYyMjEyMWQwMjdhMjIwYTAwMDAxZDAyN2YyMjBhMDAwMDFkMDIzNTIyMGEwMDAwMWQwMjgwMjIwYTAwMDAxZDAyNzAyMjAyMDI5YTFkMDE3ZDIyMDIwMjliMWQwMGRmMjIwMjAyOWMxZDAyOWQxZjEyMTMxZTAwMDYxYTAwMWYxYTE0MDI5ZTFmMWY0ODAwMWYzMDAyMDAwMDI1MDAxZTFiMDIxYjAyMGIzNTFkMDI5ZjFiMDIxODAwMWQwMmEwMWIwMjBiMzIxODAwNDgwMjM0MDQwMDFmMzQyNzFmMzMwMjAwMDAyNTAwMmExYjAyMWIwMjBiMzYxZDAyOWYxYjAyMGIzMDQ4MWMzMzE4MDA0ODA0MzUzMDFmMDYxYjAyMTgwMDFkMDJhMDFiMDIwYjMyMTgwNjA0MDAxZjM1MDIwMDAwMjUwMDI3MWIwMjFiMDIwYjM0MWQwMjlmMWIwMjBiMzIxYjAyMGIzMDQ4MWEzMzE4MDA0ODA2MzUzMDA0MWIwMjBiMzExODAwMDQyODAwMWYzNjEzMWUwMDA2MWEwMDIyMDIwMDAwMjUwMDQ5MTIxZjA2MWIwMjBiODUxMTA0MTcwMDBmMTExZTAyN2QxZTAyOTkxZjA2MTYwMDBjMWIwMjBiMTIxZTAyOTkxZjA2MTgwNjIyMTcwMDIwMWMxYjAwMGIxMTIyMWUwMDQyMjQwMjAyYTExODAwMjgwMjAyYTIyODAyMDJhMzE4MDEwYTAwMDMxMDFjMDAxZDAxZDIxZjVhMTMxZTAwMDYxYTAwMjIxODYzMWQwMmE0MjIxODYzMWQwMWI2MjIxODYyMWQwMmE1MjIxODY0MWQwMWJjMjIxODY0MWQwMmE2MWY1YjEyMWY1YzBhMDAwMDFmNWUwYTAwMDAxZjVmMGEwMDAwMWY2MDAyMDAwMDI1MDAwOTE4MDAxODAxMjgwMDFmNjUwMjAwMDAyNTAwMDkxODAwMTgwMDJhMDAxZjY2MDIwMmE3MWY2ZDAyMDJhODFmNmUxYjAwMGIyMDIyMTcwMDBkMWMxYjAwMGIyMDFiMDAwYjA1NDExZjdiMWIwMDBiMjEyMjE3MDAwZDFjMWIwMDBiMjExYjAwMGIwNTQxMWY3YzFiMDAwYjE5MjIxZTAwZmIyNDE4MTIwYTAwMDExMDFmODYxODZmMWY4ODE4ODcxZTAwMjIxODg5MWQwMjdlMTg4NzFlMDAyMjE4ODgxZDAyNTUxODg3MWUwMDIyMTg4ZDFkMDI4NzE4MDYxMjIyMTcwMDBiMWMxODBkMjYwYTAwMDAxMDFkMDFjYzE4OGUyNjBhMDAwMDEwMWMxODAwMTg4NzFkMDI3YzE4MDAxODhkMWQwMjg3MTgwMDE4ODkxZDAyN2UxODAwMTg4ODFkMDI1NTFiMDAwYjA1MjIxZTAwM2UyNDE4MDAwMjAyYTkxMzFlMDAwNjFhMDAyMjIwMWQwMjhlMGEwMDAzMTAxYzAwMGEwMDAyMTAxYzAwMDJhYTAwMDY2ZDYwNjg2NzYxNzYwOTc3NmM2NjY3NjQ2YjZjNjc2NjA4NjQ3NzZjNjE3NjZiNmQ2YzAzNjM2ZjY2MDc2NzdhNzI2ZDcwNzY3MTA2NGQ2MDY4Njc2MTc2MGU2MDdiNzY2NzY2NWQ2MzYxNzA2Mzc1NmU2NzcwMDQ2YjcxNGI0NzBjNjY2ZDYxNzc2ZjY3NmM3NjRmNmQ2NjY3MDk2YjcxNDQ2YjcwNjc2NDZkN2EwODZiNzE1MTYzNjQ2MzcwNmIwNjUwNjc2NTQ3N2E3MjBiNjE2ZDZjNzE3NjcwNzc2MTc2NmQ3MDAxNmIwNDc2Njc3MTc2MGI0YTU2NGY0ZTQ3NmU2NzZmNjc2Yzc2MDg3NjZkNTE3NjcwNmI2YzY1MjE1OTZkNjA2ODY3NjE3NjIyNTE2MzY0NjM3MDZiNTA2NzZmNmQ3NjY3NGM2ZDc2NmI2NDZiNjE2Mzc2NmI2ZDZjNWYwNjcxNjM2NDYzNzA2YjEwNzI3NzcxNmE0YzZkNzY2YjY0NmI2MTYzNzY2YjZkNmMwYzY1Njc3NjU2NmI2ZjY3NzE3NjYzNmY3MjA3NjU2Nzc2NTY2YjZmNjcwODY1Njc3NjU0NjM2ZTc3NjcwNzYwNmQ2ZDZlNjc2MzZjMDEzMzAxMzIwYzcwNjM2YzY2NmQ2ZjUxNzY3MDZiNmM2NTNlMzIzMzMwMzEzNjM3MzQzNTNhM2I2MzYwNjE2NjY3NjQ2NTZhNmI2ODY5NmU2ZjZjNmQ3MjczNzA3MTc2Nzc3NDc1N2E3Yjc4NDM0MDQxNDY0NzQ0NDU0YTRiNDg0OTRlNGY0YzRkNTI1MzUwNTE1NjU3NTQ1NTVhNWI1ODA1NjQ2ZTZkNmQ3MDA2NzA2MzZjNjY2ZDZmMDY2ZTY3NmM2NTc2NmEwOTY2NmQ2ZjQ2Njc3NjY3NjE3NjBmNTk2ZDYwNjg2NzYxNzYyMjU1NmI2YzY2NmQ3NTVmMDk3MjcwNmQ3NjZkNzY3YjcyNjcwNDYxNjM2ZTZlMDc2YjZjNjY2NzdhNGQ2NDA4NDY2ZDYxNzc2ZjY3NmM3NjEyNTk2ZDYwNjg2NzYxNzYyMjRjNjM3NDZiNjU2Mzc2NmQ3MDVmMTA1OTZkNjA2ODY3NjE3NjIyNGE2YjcxNzY2ZDcwN2I1ZjBhNjU2Nzc2NDQ3MDZkNmY1MTc2NzAwNjcxNzY3MDZiNmM2NTAxM2YwNTcxNzI2ZTZiNzYwNDU5MzkyNDVmMDY2MTZhNjM3MDQzNzYwMTIyMDk3MTc3NjA3MTc2NzA2YjZjNjUwOTY1Njc3NjQxNmQ2ZDY5NmI2NzBlNzE2NzcxNzE2YjZkNmM1MTc2NmQ3MDYzNjU2NzA3NjU2Nzc2NGI3NjY3NmYwYzZlNmQ2MTYzNmU1MTc2NmQ3MDYzNjU2NzA2NjE2ZDZkNjk2YjY3MDk3MTY3NzY0MTZkNmQ2OTZiNjcwNzcxNjc3NjRiNzY2NzZmMzEzZjM5MjI2NzdhNzI2YjcwNjc3MTNmNGY2ZDZjMmUyMjMwMzIyMjUxNjc3MjIyMzAzMjMzMzIyMjMyMzIzODMyMzIzODMyMzIyMjU3NTY0MTM5MjI3MjYzNzY2YTNmMmQzOTBhMzkyMjY3N2E3MjZiNzA2NzcxM2YwYjc2NmQ0NTRmNTY1MTc2NzA2YjZjNjUwOTM5MjI3MjYzNzY2YTNmMmQzOTA5NjY2NzZlNDE2ZDZkNjk2YjY3MGE3MDY3NmY2ZDc0Njc0Yjc2Njc2ZjBlNjY2NzYwNzc2NTY1Njc3MDQ2Njc3NjY3NjE3NjBlNjY2NzY0NmI2YzY3NTI3MDZkNzI2NzcwNzY3YjAyNmI2NjA4NjY2NzYwNzc2NTY1Njc3MDAzNjU2Nzc2MDM2ZTZkNjUwMjI3NjEwNzYxNmQ2YzcxNmQ2ZTY3MDc2NDZiNzA2NzYwNzc2NTBhNmQ3Nzc2Njc3MDU1NmI2Njc2NmEwYTZiNmM2YzY3NzA1NTZiNjY3NjZhMGI2ZDc3NzY2NzcwNGE2NzZiNjU2YTc2MGI2YjZjNmM2NzcwNGE2NzZiNjU2YTc2MGE2YzZkNjY2NzQ2Njc3NjY3NjE3NjA3NzI3MDZkNjE2NzcxNzExMDU5NmQ2MDY4Njc2MTc2MjI3MjcwNmQ2MTY3NzE3MTVmMGQ3MjZhNjM2Yzc2NmQ2ZjQ2Njc3NjY3NjE3NjA3NzI2ZTc3NjU2YjZjNzEwODVkNzI2YTYzNmM3NjZkNmYwYjYxNjM2ZTZlNTI2YTYzNmM3NjZkNmYwYjVkNWQ2YzZiNjU2YTc2NmY2MzcwNjcwNTQzNzc2NjZiNmQxODQxNjM2Yzc0NjM3MTUwNjc2YzY2Njc3MDZiNmM2NTQxNmQ2Yzc2Njc3YTc2MzA0NjBmNzU2NzYwNjY3MDZiNzQ2NzcwNDY2Nzc2Njc2MTc2MDk3NTY3NjA2NjcwNmI3NDY3NzAxMzY1Njc3NjRkNzU2YzUyNzA2ZDcyNjc3MDc2N2I0YzYzNmY2NzcxMDk2ZTYzNmM2NTc3NjM2NTY3NzEwNjYxNmE3MDZkNmY2NzA3NzA3NzZjNzY2YjZmNjcwNzYxNmQ2YzZjNjc2MTc2MTQ1ZDVkNzU2NzYwNjY3MDZiNzQ2NzcwNWQ2Nzc0NjM2ZTc3NjM3NjY3MTM1ZDVkNzE2NzZlNjc2YzZiNzc2ZjVkNjc3NDYzNmU3NzYzNzY2NzFiNWQ1ZDc1Njc2MDY2NzA2Yjc0Njc3MDVkNzE2MTcwNmI3Mjc2NWQ2NDc3NmM2MTc2NmI2ZDZjMTc1ZDVkNzU2NzYwNjY3MDZiNzQ2NzcwNWQ3MTYxNzA2YjcyNzY1ZDY0Nzc2YzYxMTU1ZDVkNzU2NzYwNjY3MDZiNzQ2NzcwNWQ3MTYxNzA2YjcyNzY1ZDY0NmMxMzVkNWQ2NDdhNjY3MDZiNzQ2NzcwNWQ2Nzc0NjM2ZTc3NjM3NjY3MTI1ZDVkNjY3MDZiNzQ2NzcwNWQ3NzZjNzU3MDYzNzI3MjY3NjYxNTVkNWQ3NTY3NjA2NjcwNmI3NDY3NzA1ZDc3NmM3NTcwNjM3MjcyNjc2NjExNWQ1ZDY2NzA2Yjc0Njc3MDVkNjc3NDYzNmU3NzYzNzY2NzE0NWQ1ZDcxNjc2ZTY3NmM2Yjc3NmY1ZDc3NmM3NTcwNjM3MjcyNjc2NjE0NWQ1ZDY0N2E2NjcwNmI3NDY3NzA1ZDc3NmM3NTcwNjM3MjcyNjc2NjA5NWQ3MTY3NmU2NzZjNmI3NzZmMGM2MTYzNmU2ZTUxNjc2ZTY3NmM2Yjc3NmYxNjVkNTE2NzZlNjc2YzZiNzc2ZjVkNGI0NjQ3NWQ1MDY3NjE2ZDcwNjY2NzcwMDg2NjZkNjE3NzZmNjc2Yzc2MDU2ZjYzNzY2MTZhMGE1ZTI2NTk2MzJmNzg1ZjY2NjE1ZDA2NjE2MzYxNmE2NzVkMGY2YjZjNjE2ZDY1NmM2Yjc2NmQ0NjY3NzY2NzYxNzYwNDZkNzI2NzZjMDk2YjZjNjE2ZDY1NmM2Yjc2NmQwNzZkNmM2NzcwNzA2ZDcwMDQ2MTZkNjY2NzEyNTM1NzRkNTY0MzVkNDc1YTQxNDc0NzQ2NDc0NjVkNDc1MDUwMTA3MTZkNmY2NzQ5Njc3YjRhNjc3MDY3NDA3Yjc2Njc2NjA5NmI2YzY2Njc3YTY3NjY0NjQwMGM1MjZkNmI2Yzc2Njc3MDQ3NzQ2NzZjNzYwZTRmNTE1MjZkNmI2Yzc2Njc3MDQ3NzQ2NzZjNzYwYTZhNmQ2ZDY5NDY2Nzc2Njc2MTc2MGQ2MTcwNjc2Mzc2Njc0NzZlNjc2ZjY3NmM3NjA2NjE2MzZjNzQ2MzcxMDk3NjZkNDY2Mzc2NjM1NzUwNGUwNzcwNjc3MjZlNjM2MTY3MDM1ZTcxMjgwMTY1MGE2YzYzNzY2Yjc0Njc2MTZkNjY2NzE0NTk2ZDYwNjg2NzYxNzYyMjUyNmU3NzY1NmI2YzQzNzA3MDYzN2I1ZjBlNmU2ZDYxNjM3NjZiNmQ2YzQ2Njc3NjY3NjE3NjRhNWM2YTc2NzY3MjcxM2QzODVlMmQ1ZTJkMmE1OTMyMmYzYjVmNzkzMzJlMzE3ZjJhNWUyYzU5MzIyZjNiNWY3OTMzMmUzMTdmMmI3OTMxN2Y3ZTU5NjMyZjY0MzIyZjNiNWY3OTMzMmUzNjdmMmEzODU5NjMyZjY0MzIyZjNiNWY3OTMzMmUzNjdmMmI3OTM1N2YyYjA4NmU2ZDYxNjM3NjZiNmQ2YzA0NmE3MDY3NjQwNDY0NmI2ZTY3MTA2YTc2NzY3MjM4MmQyZDZlNmQ2MTYzNmU2YTZkNzE3NjA2NjU2Nzc2NDU3Mjc3MDc0NTUyNTc0YjRjNDQ0ZDBhNjU2Nzc2NDE2ZDZjNzY2NzdhNzYwNTc1Njc2MDY1NmUwYzY1Njc3NjQ3N2E3NjY3NmM3MTZiNmQ2YzE5NTU0NzQwNDU0ZTVkNjY2NzYwNzc2NTVkNzA2NzZjNjY2NzcwNjc3MDVkNmI2YzY0NmQwYzY1Njc3NjUyNjM3MDYzNmY2Nzc2Njc3MDE1NTc0YzRmNDM1MTQ5NDc0NjVkNTQ0NzRjNDY0ZDUwNWQ1NTQ3NDA0NTRlMTc1NzRjNGY0MzUxNDk0NzQ2NWQ1MDQ3NGM0NjQ3NTA0NzUwNWQ1NTQ3NDA0NTRlMDEyZDBhNjU2Nzc2NTI2ZTc3NjU2YjZjNzEwNjUyNGU1NzQ1NGI0YzA0NmI3NjY3NmYwNDcyNzc3MTZhMDQ3NjdiNzI2NzA0NmM2MzZmNjcwNzc0Njc3MDcxNmI2ZDZjMDg2NDZiNmU2NzZjNjM2ZjY3MDQ2ODZkNmI2YzAyMjEyMTA1NzE2ZTZiNjE2NzBjNjE2ZDZjNzE2YjcxNzY0MTZhNjc2MTY5MDk3NzcxNjc3MDQzNjU2NzZjNzYwYjc2NmQ0ZTZkNzU2NzcwNDE2MzcxNjcwODcyNmU2Mzc2NjQ2ZDcwNmYwNzc1NmI2YzY2NmQ3NTcxMDM3NTZiNmMwNzYzNmM2NjcwNmQ2YjY2MDU2ZTZiNmM3NzdhMDY2YjcyNmE2ZDZjNjcwNDZiNzI2MzY2MDQ2YjcyNmQ2NjAzNmY2MzYxMDk2ZjYzNjE2YjZjNzY2ZDcxNmEwYzZmNjM2MTVkNzI2ZDc1Njc3MDcyNjEyYjA0NjE3MDZkNzEwMzdhMzMzMzA1NjE3MDZiNmQ3MTA1NjQ3YTZiNmQ3MTA0NzI2YjY5NjcwODY0NmI3MDY3NjQ2ZDdhMmQwNjZkNzI2NzcwNjMyZDA1MjI2ZDcyNzAyZDA3NjE2YTcwNmQ2ZjY3MmQwODc2NzA2YjY2Njc2Yzc2MmQwNDZmNzE2YjY3MDY3NDY3NmM2NjZkNzAwNjQ1NmQ2ZDY1NmU2NzA1Njg3MTZkNmM3MjA0NjA2ZDY2N2IxNDY1Njc3NjQ3NmU2NzZmNjc2Yzc2NzE0MDdiNTY2MzY1NGM2MzZmNjcwNDZhNjc2MzY2MDY3MTYxNzA2YjcyNzYwMTVkMDk2MTYzNmU2ZTYwNjM2MTY5M2YwMzcxNzA2MTBiNzA2NzZmNmQ3NDY3NDE2YTZiNmU2NjBiNjM3MjcyNjc2YzY2NDE2YTZiNmU2NjBlNzY2ZDQwNmI2YzYzNzA3YjUxNzY3MDZiNmM2NTBjNjQ3MDZkNmY0MTZhNjM3MDQxNmQ2NjY3MGQ3NjZkNTc2YjZjNzYzMTMwNDM3MDcwNjM3YjBhNjE2YTYzNzA0MTZkNjY2NzQzNzYwNTZiNmM3NjMxMzAwYTM2MzAzYjM2M2IzNDM1MzAzYjM3MDI2ZjdhMDQ2NDZiN2E2OTEyNjc2YzYxNzA3YjcyNzY1NzZiNmM3NjMxMzA0MzcwNzA2MzdiMTI2NjY3NjE3MDdiNzI3NjU3NmI2Yzc2MzEzMDQzNzA3MDYzN2IwYTc3NzY2NDNhNDc2YzYxNmQ2NjY3MGU1YzU5NWU3YTMyMzIyZjVlN2EzNTY0NWYyODI2MTA0ZjYzNmU2NDZkNzA2ZjY3NjYyMjcxNzY3MDZiNmM2NTE1Nzc3NjY0M2E0NjY3NjE2ZDY2Njc1MTZhNmQ3MDc2NTE3NjcwNmI2YzY1MWY1NzZjNjQ2YjZjNmI3MTZhNjc2NjIyNTc1NjQ0MmYzYTIyNmQ2MTc2Njc3NjIyNzE2NzczNzc2NzZjNjE2NzI5NDE2YTYzNzA2MzYxNzY2NzcwMjI2ZDc3NzY3MTZiNjY2NzIyNzQ2MzZlNmI2NjIyNTc2YzZiNjE2ZDY2NjcyMjcwNjM2YzY1NjczODIyMzI3YTE1NDA2MzY2MjI1NzU2NDQyZjNhMjI2NzZjNjE2ZDY2NmI2YzY1MjIzMjdhMTQ3Nzc2NjQzYTQ2Njc2MTZkNjY2NzRlNmQ2YzY1NTE3NjcwNmI2YzY1MGE3Nzc2NjQzYTQ2Njc2MTZkNjY2NzBlNWM1OTVlN2EzMjMyMmY1ZTdhNjQ2NDVmMjgyNjA2NzE3NzYwNzE3NjcwMDU3YTdhNzY2NzYzMDc2NjY3NjE3MDdiNzI3NjBlNjA2MzcxNjczNDM2NTE3NjYzNmM2NjYzNzA2NjQwNDY2OTY2NzI2NTZhMzY1ODQ5NzE1MzQwM2EzMjJkNGY2NDc0NzUzMTM0NWE0YjMzNTAzMDM3Mjk1NTU3NDM2ZTQ3NmIzNTRjNGU2MDZkNzM1YjU2NGQ1Mjc3Nzg2ZjQ0Njg0ODZjNzA3YjdhM2I0YTU0NDU2MTYzNTE3NjQxNjcxMDYwNjM3MTY3MzQzNjVkNjE2YTYzNzA0YjZjNjY2NzdhNDA0MzQwNDE0NjQ3NDQ0NTRhNGI0ODQ5NGU0ZjRjNGQ1MjUzNTA1MTU2NTc1NDU1NWE1YjU4NjM2MDYxNjY2NzY0NjU2YTZiNjg2OTZlNmY2YzZkNzI3MzcwNzE3Njc3NzQ3NTdhN2I3ODMyMzMzMDMxMzYzNzM0MzUzYTNiMjkyZDE0NjA2MzcxNjczNDM2NTE3NjYzNmM2NjYzNzA2NjQ2Njc2MTZkNjY2NzA5NjA2MzcxNjczNDM2NWQ2MTZhMDY2MDM0MzY1ZDMxMzIwODY1Njc3NjUyNjM3MDYzNmYwODcyNjM3MDYzNmY1NzcwNmUwMTNkMDI2ZDZjMDM2ZDY0NjQwOTcxNjc3NjUxNzU2Yjc2NjE2YTBlNWQ3MjYzNzA2MzZmNTE3NTZiNzY2MTZhNGQ2YzBmNWQ2MDdiNzY2NzY2NWQ3MjYzNzA2MzZmNWQ3MTc1MTI2NTY3NzY1MTc1NmI3NjYxNmE0NDcwNmQ2ZjQxNjM2MTZhNjcwZjY2Njc3NjY3NjE3NjQzNmM2ZDZmNjM2ZTZiNjc3MTBhNjY2YjcwNjc2MTc2NTE2YjY1NmMwYTYxNmQ2YzcxNmI3MTc2Njc2Yzc2MDY3MTc1NmI3NjYxNmEwMzY2NmQ2ZjA0NmM2ZDY2NjcwNzcyNmE2MzZjNzY2ZDZmMDQ2YTZkNmQ2OTBiNzY2NzcxNzY0NDY3NjM3Njc3NzA2NzBlNjM3MTcxNjc2ZjYwNmU2NzUwNjc3MTc3NmU3NjA0Njk2NzdiNzEwYjcxNjY2MDZmNWQ3MTc2NjM2MDZlNjcwNDcxNjY2MDZmMTA3MTY2NjA2ZjVkNzE3NjYzNjA2ZTY3NWQ3MjZkNmM3YjA3NjU2Nzc2NTI2Mzc2NmEyMjJhNmE3Njc2NzIzODVlMmQ1ZTJkN2U2YTc2NzY3MjcxMzg1ZTJkNWUyZDdlNWUyZDVlMmQyYjNkNTk1YzVlMmQ1ZjI4MDg2NTY3NzY1Mzc3Njc3MDdiMGU1OTNkNWYyYTVlNzUyOTNmMmMyODI0M2QyYjI4MDEyNDA3NmQ2MDY4NTE2ZDcwNzYwOTcxNzY3MDZiNmM2NTZiNjQ3YjAyNzk3ZjA0NzE2ZDcwNzYwODY4NzE2ZDZjNTE2ZDcwNzYwNzZiNzE0MzcwNzA2MzdiMDM2ZjYzNzIwNjcwNjc2Njc3NjE2NzA3NmQ2MDY4MzA1MTc2NzAxMjYxNjM2Yzc0NjM3MTVkNjQ2YjZjNjU2NzcwNzI3MDZiNmM3NjA1NzU2YjY2NzY2YTA2NmE2NzZiNjU2YTc2MDIzMDY2MGEzMzM2NzI3YTIyNzE2NzcwNmI2NDA0NjQ2ZDZjNzYwODY0NmI2ZTZlNTY2NzdhNzYwNGMwOWY5YThlMTM4ZTIyYzBhY2JmMGE3MTZhNjM2NjZkNzU0MDZlNzc3MDBiNzE2YTZkNzU0ZDY0NjQ3MTY3NzY1YTA0NmU2YjZmNjcwOTcxNmE2ZDc1NDE2ZDZlNmQ3MDAzNjM3MDYxMDY3MTc2NzA2ZDY5NjcwOTY1Njc3NjQxNjM2Yzc0NjM3MTBhMzEzNTMxMzczYjMwM2EzNzM3M2IwZjQxNmQ2YzY0NmI2NTQ3N2E2MTY3NzI3NjZiNmQ2YzA3NmY2NzcxNzE2MzY1NjcxMTZhNjM3MTUxNjc3MTcxNmI2ZDZjNTE3NjZkNzA2MzY1NjcwZjZhNjM3MTRlNmQ2MTYzNmU1MTc2NmQ3MDYzNjU2NzBjNmE2MzcxNGI2YzY2Njc3YTY3NjY0NjQwMGM2NTY3NzY0MzYwNmI2ZTZiNzY2YjY3NzEwZDY1Njc3NjUwNjc3MTZkNmU3Nzc2NmI2ZDZjMDY3MTYxNzA2NzY3NmMwYTYxNmQ2ZTZkNzA0NjY3NzI3NjZhMTI2NTY3NzY0Mzc0NjM2YjZlNTA2NzcxNmQ2ZTc3NzY2YjZkNmMwYTYzNzQ2MzZiNmU1NTZiNjY3NjZhMGI2Mzc0NjM2YjZlNGE2NzZiNjU2YTc2MGU2NTY3NzY0MDYzNzY3NjY3NzA3YjRiNmM2NDZkMGE2NTY3NzY0MDYzNzY3NjY3NzA3YjA0NzY2YTY3NmMwODYxNmE2MzcwNjU2YjZjNjUwYzYxNmE2MzcwNjU2YjZjNjU1NjZiNmY2NzBmNjY2YjcxNjE2YTYzNzA2NTZiNmM2NTU2NmI2ZjY3MDU2ZTY3NzQ2NzZlMGM2NTY3NzY1NjZkNzc2MTZhNGI2YzY0NmQwZTZmNjM3YTU2NmQ3NzYxNmE1MjZkNmI2Yzc2NzEwYjYxNzA2NzYzNzY2NzQ3NzQ2NzZjNzYwYTU2NmQ3NzYxNmE0Nzc0Njc2Yzc2MGM2ZDZjNzY2ZDc3NjE2YTcxNzY2MzcwNzYwYjY1Njc3NjU2NmI2ZjY3Nzg2ZDZjNjcwNzcxNjc3NjQ2NjM3NjY3MDg3MTY3NzY0ZjZkNmM3NjZhMTE2NTY3NzY1NjZiNmY2Nzc4NmQ2YzY3NGQ2NDY0NzE2Nzc2MDM2ZjZiNmMwODY1Njc3NjQ0NmQ2Yzc2NzEwOTZmNmQ2YzZkNzE3MjYzNjE2NzBhNzE2MzZjNzEyZjcxNjc3MDZiNjQwNTcxNjc3MDZiNjQwNDcxNzI2MzZjMGQ2ZjZmNmY2ZjZmNmY2ZjZmNmY2ZjZlNmU2YjA5NmI2YzZjNjc3MDRhNTY0ZjRlMDU3MTc2N2I2ZTY3MDQzNTMwNzI3YTA4NjQ2ZDZjNzY1MTZiNzg2NzBhNjQ2ZDZjNzY0NDYzNmY2YjZlN2IwYjZkNjQ2NDcxNjc3NjU1NmI2Njc2NmEwYzZkNjQ2NDcxNjc3NjRhNjc2YjY1NmE3NjBjNTY3MDY3NjA3NzYxNmE2Nzc2MjI0ZjUxMDk1NTZiNmM2NTY2NmI2YzY1NzEwNzUxN2I2ZTY0NjM2NzZjMDg1MTY3NjU2ZDY3MjI1NzRiMGE0MTZkNmM3MTc2NjM2Yzc2NmI2MzBiNTE2YjZmNTE3NzZjMmY0NzdhNzY0MDA4NGY1NjIyNDc3YTc2NzA2MzA1NDU3NzZlNmI2ZjBhNGU2NzY3NmU2Mzc1NjM2NjY3NjcwNTU2Nzc2YzY1NjMwNjRmNjc2YjcwN2I2ZDA2NTQ3MDZiNmM2NjYzMDk0MTZkNzA2NjZiNjM1NzUyNDEwOTQzNzI2MzcwNjM2ODZiNzY2MzA3NGI3MDZiNzE1NzUyNDEwODUyNjM2ZTYzNzY2YjZjNmQwYTQxNmQ2ZTZkNmM2YzYzMjI0ZjU2MDg1MjZlNjM3YjYwNmI2ZTZlMDg0ODZkNjk2NzcwNmY2MzZjMDk1MjYzNzA2MTZhNmY2NzZjNzYwYTRmNTEyMjRkNzc3NjZlNmQ2ZDY5MDk1Njc1MjI0MTY3NmMyMjRmNTYwNjRkNTI1NjRiNGY0MzA2NDQ3Nzc2Nzc3MDYzMDY0MzU0NDc0YzRiNTAwYzQzNzA2YjYzNmUyMjRhNjc2MDcwNjc3NTBhNTE2Mzc0NmQ3YjY3MjI0ZTQ3NTYwOTQxNjM3MTc2Njc2ZTZlNjM3MDBhNGY1YjUwNGI0MzQ2MjI1MjUwNGQwMTJlMGU2NTY3NzY1MTdiNmM3NjYzN2E0NzcwNzA2ZDcwMTA0MTcwNjc2Mzc2NjcyMjU1Njc2MDUxNmQ2MTY5Njc3NjBmNjU2Nzc2NGM2Mzc2NmI3NDY3NGU2NzZjNjU3NjZhMDg2NTY3NzY1MDc2NjE0YjcyMGI3NDZiNzQ2ZDYwNzA2ZDc1NzE2NzcwMTE1MDU2NDE1MjY3Njc3MDQxNmQ2YzZjNjc2MTc2NmI2ZDZjMTQ2ZjZkNzg1MDU2NDE1MjY3Njc3MDQxNmQ2YzZjNjc2MTc2NmI2ZDZjMTc3NTY3NjA2OTZiNzY1MDU2NDE1MjY3Njc3MDQxNmQ2YzZjNjc2MTc2NmI2ZDZjMWM3MTc2Nzc2YzM4NzE3Njc3NmMyYzZlMmM2NTZkNmQ2NTZlNjcyYzYxNmQ2ZjM4MzMzYjMxMzIzMDA0Nzc3MDZlNzEwYTZiNjE2NzUxNjc3MDc0Njc3MDcxM2UyYTU5MzIyZjNiNWY3OTMzMmUzMTdmMmE1ZTJjNTkzMjJmM2I1Zjc5MzMyZTMxN2YyYjc5MzE3ZjdlNTk2MzJmNjQzMjJmM2I1Zjc5MzMyZTM2N2YyYTM4NTk2MzJmNjQzMjJmM2I1Zjc5MzMyZTM2N2YyYjc5MzU3ZjJiMzU1YzJhMzMzYjMwNWUyYzMzMzQzYTVlMmM3ZTMzMzQzYjVlMmMzMDM3MzY1ZTJjN2UzMzMyNWUyYzdlMzMzNTMwNWUyYzJhMzM1OTM0MmYzYjVmN2UzMDVlNjY3ZTMxNTkzMjMzNWYyYjJiMTE2MTcwNjc2Mzc2Njc0NjYzNzY2MzQxNmE2MzZjNmM2NzZlMGI2MTcwNjc2Mzc2Njc0ZDY0NjQ2NzcwMTM3MTY3NzY0ZTZkNjE2MzZlNDY2NzcxNjE3MDZiNzI3NjZiNmQ2YzA5NjE2MzZjNjY2YjY2NjM3NjY3MDQ2NzdhNjc2MTBlNmQ2YzZiNjE2NzYxNjM2YzY2NmI2NjYzNzY2NzA0Nzc3NzZiNjYyMDdhN2E3YTdhN2E3YTdhN2E3YTdhN2E3YTM2N2E3YTdhN2I3YTdhN2E3YTdhN2E3YTdhN2E3YTdhN2E3YTdhN2EwNDU5N2E3YjVmMDE3YTBkNjE2YTY3NjE2OTQxNmU2YjY3NmM3NjRiNjYwYjY1Njc3NjQxNmU2YjY3NmM3NjRiNjYwNTc2NzY2MTZiNjYwZDY3NmM2MTcwN2I3Mjc2NTE2NzYxNDY2YjY2NDA0MzQwNDE0NjQ3NDQ0NTRhNGI0ODQ5NGU0ZjRjNGQ1MjUzNTA1MTU2NTc1NDU1NWE1YjU4NjM2MDYxNjY2NzY0NjU2YTZiNjg2OTZlNmY2YzZkNzI3MzcwNzE3Njc3NzQ3NTdhN2I3ODMyMzMzMDMxMzYzNzM0MzUzYTNiMmYyYzBlNjM3MTcxNjc2ZjYwNmU2NzUyNjM3MDYzNmY3MTAxNzIwMTcwMDc2NDZkNzA0NzYzNjE2YTAyNWM1YzAxMzQwYzY0NzI1MjcwNmQ2NDZiNmU2NzU3NzA2ZTAzM2Q3MzNmMDg3MDY3NzY1ZDYxNmQ2NjY3MDI2NDcyMGU1ZDYwN2I3NjY3NjY1ZDcxNjc2MTVkNjY2YjY2MGM1ZDcwNjM3NTVkNzE2NzYxNWQ2NjZiNjYwNzc2NzY1ZDcxNjE2YjY2MDM2NjY0NzIwMzYzNmI2NjAxNmMwMTY0MDk3MTc2NjM3MDc2NTY2YjZmNjcwMTc2MDk2MzYwNmI2ZTZiNzY2YjY3NzEwYTc2NmI2ZjY3NzE3NjYzNmY3MjMzMTM2YTYzNzA2Njc1NjM3MDY3NDE2ZDZjNjE3NzcwNzA2NzZjNjE3YjBjNjY2Nzc0NmI2MTY3NGY2NzZmNmQ3MDdiMDg2ZTYzNmM2NTc3NjM2NTY3MGE3MDY3NzE2ZDZlNzc3NjZiNmQ2YzBmNjM3NDYzNmI2ZTUwNjc3MTZkNmU3Nzc2NmI2ZDZjMDk3MTYxNzA2NzY3NmM1NjZkNzIwYTcxNjE3MDY3Njc2YzRlNjc2NDc2MTA2NjY3NzQ2YjYxNjc1MjZiN2E2NzZlNTA2Mzc2NmI2ZDBhNzI3MDZkNjY3NzYxNzY1MTc3NjAwNzYwNjM3Njc2Njc3MDdiMDk3NjZkNzc2MTZhNGI2YzY0NmQwODc2NmI2ZjY3Nzg2ZDZjNjcwYTc2NmI2ZjY3NzE3NjYzNmY3MjMwMDc2NTcyNzc0YjZjNjQ2ZDBiNjg3MTQ0NmQ2Yzc2NzE0ZTZiNzE3NjBiNzI2ZTc3NjU2YjZjNzE0ZTZiNzE3NjBhNzY2YjZmNjc3MTc2NjM2ZjcyMzEwYTY3NzQ2NzcwNDE2ZDZkNjk2YjY3MDE2ZjBiNzE3YjZjNzY2MzdhNDc3MDcwNmQ3MDBjNmM2Mzc2NmI3NDY3NGU2NzZjNjU3NjZhMDU3MDc2NjE0YjUyMDk2NDcyNTQ2NzcwNzE2YjZkNmMwYjVkNWQ3NDY3NzA3MTZiNmQ2YzVkNWQwODYxNmU2YjY3NmM3NjRiNjYwYTc2NmI2ZjY3NzE3NjYzNmY3MjM2MGI2NzdhNzY2NzZjNjY0NDZiNjc2ZTY2MDM2MzZlNmUxMDcxNzY2MzcwNzY1MTZiNmY3MjZiNjQ2YjY3NjY1NzYwMTA2MzY2NjY0Nzc0Njc2Yzc2NGU2YjcxNzY2NzZjNjc3MDA5NjM2NjY2NTY2ZDRlNmI3MTc2MDY3MTcyNmU2YjYxNjcwMTY2MDE3YjEzNmE2MzZjNjY2ZTY3NDk2NzdiNjA2ZDYzNzA2NjQ3NzQ2NzZjNzYwNjYzNmU3NjQ5Njc3YjA3NjE3NjcwNmU0OTY3N2IwNzZmNjc3NjYzNDk2NzdiMDg3MTZhNmI2NDc2NDk2NzdiMDM2YzZkNzUxMzZhNjM2YzY2NmU2NzUyNmQ3MTZiNzY2YjZkNmM0Nzc0Njc2Yzc2MGU2MTZhNjM2YzY1Njc2NjU2NmQ3NzYxNmE2NzcxMDk3NjZkNzc2MTZhNmY2ZDc0NjcwNzc2NmQ3NzYxNmE2NzcxMDIzYjMwMDc2MTZlNmI2NzZjNzY1YTA3NjE2ZTZiNjc2Yzc2NWIxMDZhNjM2YzY2NmU2NzQxNmU2YjYxNjk0Nzc0Njc2Yzc2MGE3NjZkNzc2MTZhNzE3NjYzNzA3NjA4NjE2MzZlNjE0ZjY3NjM2YzE1NjE2MzZlNjE1MTc2NjM2YzY2NjM3MDY2NDY2Nzc0NmI2Mzc2NmI2ZDZjMDQ3MTczNzA3NjA5NjE2MzZlNjE1MTcyNjc2NzY2MDQzMjJjMzIzMzE1NjU2Nzc2NTE2YjZmNzI2ZTZiNjQ2YjY3NjY1NzYwNTA2NzcxNzc2ZTc2MDMzMjJjMzcwMjMyMzIwOTY1Njc3NjU2Njc3MTc2NGI2NjBiNWQ1ZDYzNjE1ZDc2Njc3MTc2NmI2NjBmNjU2NzZjNjc3MDYzNzY2NzU2Njc3MTc2NGU2ZDY1MDE2MDBjNjU2Nzc2NTE2YjY1NmM2Mzc2Nzc3MDY3MDM3NzcwNmUyYzZjNmQ2YzYxNjcyMjZmNzc3MTc2MjI2MDY3MjI2MzZjMjI2ZDYwNjg2NzYxNzYyMjc1NmI3NjZhMjI2MzIyNzc3MDZlMjI3MjcwNmQ3MjY3NzA3NjdiMjMwYjY2NmQ2ZjRjNmQ3NjU0NjM2ZTZiNjYwODcyNzA2ZDc2NmQ2MTZkNmUwNDMyMzIzMjMyMDgzMjMyMzIzMjMyMzIzMzMzMDIzMzMyMDc2NDZkNzA3MDY3NjM2ZTA1NjY2NzYwNzc2NTA1NmM2ZDZjNjE2NzBiNjA2ZDY2N2I1NDYzNmUzMDcxNzY3MDBhNjA2ZDY2N2I1ZDZhNjM3MTZhM2YwNTczNzc2NzcwN2IwNjYzNzE3MTZiNjU2YzA5NzI2Mzc2NmE2YzYzNmY2NzNmMDk3Njc2NWQ3NTY3NjA2YjY2M2YwNjI0Nzc3NzZiNjYzZjA4NmM2ZDZjNjE2NzUxNzY3MDBhMzYzMDNiMzYzYjM0MzUzMDNiMzQwOTY0Njc1NDY3NzA3MTZiNmQ2YzAzMzIzMjMyMGI3Mjc3NzE2YTU0Njc3MDcxNmI2ZDZjMDEyODBhNjU2Nzc2NTQ2MzZlNzc2NzI2MzMxMDZjNjM3NDZiNjU2Mzc2NmQ3MDUxNmI2NTZjNjM2ZTcxMGI2MzcyNzI0MTZkNjY2NzRjNjM2ZjY3MDc2MzcyNzI0YzYzNmY2NzA3NzI3MDZkNjY3NzYxNzYwODYxNzI3NzQxNmU2MzcxNzEwNTZkNzE2MTcyNzcwOTc0Njc2YzY2NmQ3MDUxNzc2MDBhNjY2ZDRjNmQ3NjU2NzA2MzYxNjkwNzc0NmI2MDcwNjM3NjY3MGI2MTcwNjc2NjY3NmM3NjZiNjM2ZTcxMDc3MTc2NmQ3MDYzNjU2NzFiNzA2NzczNzc2NzcxNzY0ZjY3NjY2YjYzNDk2NzdiNTE3YjcxNzY2NzZmNDM2MTYxNjc3MTcxMDk2MDZlNzc2Nzc2NmQ2ZDc2NmEwZDc1NmI2YzY2NmQ3NTUxNmI2NTZjNjM2ZTcxMDU0YjZmNjM2NTY3MDc3MTYxNzA2NzY3NmM1YTA3NzE2MTcwNjc2NzZjNWIwZjZiNzE1MTY3NjE3NzcwNjc0MTZkNmM3NjY3N2E3NjA3NzY2ZDZkNmU2MDYzNzAwYjZlNmQ2MTYzNzY2YjZkNmM2MDYzNzAwZDQzNjE3NjZiNzQ2NzVhNGQ2MDY4Njc2MTc2MDg2NzdhNzY2NzcwNmM2MzZlMGI3MjZkNzE3NjRmNjc3MTcxNjM2NTY3MWI3NTY3NjA2OTZiNzY1MDY3NzM3NzY3NzE3NjQzNmM2YjZmNjM3NjZiNmQ2YzQ0NzA2MzZmNjcwZDQwNmU3NzY3NzY2ZDZkNzY2YTU3NTc0YjQ2MDg2YzY3NzY3MTYxNjM3MjY3MGY2NjZkNjE3NzZmNjc2Yzc2NTE2YjY1NmM2MzZlNzEwYzYxNmE2MzcwNjM2MTc2Njc3MDUxNjc3NjBhNjE2ZDZmNzI2Mzc2NGY2ZDY2NjcwNjZlNjM3YjY3NzA3MTA2NmI2ZjYzNjU2NzcxMGU2NTY3NzY1NTY3NjA2NTZlNDE2MzZjNzQ2MzcxMTI2NzdhNzI2NzcwNmI2ZjY3NmM3NjYzNmUyZjc1Njc2MDY1NmUwZDZmNjM3YTQzNmM2YjcxNmQ3NjcwNmQ3MjdiMWU0NzVhNTY1ZDc2Njc3YTc2Nzc3MDY3NWQ2NDZiNmU3NjY3NzA1ZDYzNmM2YjcxNmQ3NjcwNmQ3MjZiNjEyNTU1NDc0MDQ5NGI1NjVkNDc1YTU2NWQ3NjY3N2E3Njc3NzA2NzVkNjQ2YjZlNzY2NzcwNWQ2MzZjNmI3MTZkNzY3MDZkNzI2YjYxMjI0ZjRkNTg1ZDQ3NWE1NjVkNzY2NzdhNzY3NzcwNjc1ZDY0NmI2ZTc2Njc3MDVkNjM2YzZiNzE2ZDc2NzA2ZDcyNmI2MTFlNGY0MzVhNWQ1NjQ3NWE1NjU3NTA0NzVkNGY0MzVhNWQ0MzRjNGI1MTRkNTY1MDRkNTI1YjVkNDc1YTU2MGM3NTY3NjA2NTZlNTE2YjY1NmM2MzZlNzEwNTU1NDc0MDQ1NGUxNjY1Njc3NjUxNzc3MjcyNmQ3MDc2Njc2NjQ3N2E3NjY3NmM3MTZiNmQ2YzcxMTM3MTc3NzI3MjZkNzA3NjY3NjY0NzdhNzY2NzZjNzE2YjZkNmM3MTE0NjU2Nzc2NDE2ZDZjNzY2NzdhNzY0Mzc2NzY3MDZiNjA3Nzc2Njc3MTA5NjM2Yzc2NmI2MzZlNmI2MzcxMDk0MDRlNTc0NzVkNDA0YjU2NTEwODYwNmU3NzY3NDA2Yjc2NzEwYTQ2NDc1MjU2NGE1ZDQwNGI1NjUxMDk2NjY3NzI3NjZhNDA2Yjc2NzEwYTQ1NTA0NzQ3NGM1ZDQwNGI1NjUxMDk2NTcwNjc2NzZjNDA2Yjc2NzEyMDRmNDM1YTVkNDE0ZDRmNDA0YjRjNDc0NjVkNTY0NzVhNTY1NzUwNDc1ZDRiNGY0MzQ1NDc1ZDU3NGM0YjU2NTExYzZmNjM3YTQxNmQ2ZjYwNmI2YzY3NjY1NjY3N2E3Njc3NzA2NzRiNmY2MzY1Njc1NzZjNmI3NjcxMTk0ZjQzNWE1ZDQxNTc0MDQ3NWQ0ZjQzNTI1ZDU2NDc1YTU2NTc1MDQ3NWQ1MTRiNTg0NzE1NmY2MzdhNDE3NzYwNjc0ZjYzNzI1NjY3N2E3Njc3NzA2NzUxNmI3ODY3MWM0ZjQzNWE1ZDQ0NTA0MzQ1NGY0NzRjNTY1ZDU3NGM0YjQ0NGQ1MDRmNWQ1NDQ3NDE1NjRkNTA1MTE5NmY2MzdhNDQ3MDYzNjU2ZjY3NmM3NjU3NmM2YjY0NmQ3MDZmNTQ2NzYxNzY2ZDcwNzExNTRmNDM1YTVkNTA0NzRjNDY0NzUwNDA1NzQ0NDQ0NzUwNWQ1MTRiNTg0NzEzNmY2MzdhNTA2NzZjNjY2NzcwNjA3NzY0NjQ2NzcwNTE2Yjc4NjcxNzRmNDM1YTVkNTY0NzVhNTY1NzUwNDc1ZDRiNGY0MzQ1NDc1ZDU3NGM0YjU2NTExNDZmNjM3YTU2Njc3YTc2Nzc3MDY3NGI2ZjYzNjU2NzU3NmM2Yjc2NzExMDRmNDM1YTVkNTY0NzVhNTY1NzUwNDc1ZDUxNGI1ODQ3MGU2ZjYzN2E1NjY3N2E3Njc3NzA2NzUxNmI3ODY3MTM0ZjQzNWE1ZDU0NDM1MDViNGI0YzQ1NWQ1NDQ3NDE1NjRkNTA1MTExNmY2MzdhNTQ2MzcwN2I2YjZjNjU1NDY3NjE3NjZkNzA3MTEyNGY0MzVhNWQ1NDQ3NTA1NjQ3NWE1ZDQzNTY1NjUwNGI0MDUxMTA2ZjYzN2E1NDY3NzA3NjY3N2E0Mzc2NzY3MDZiNjA3MTFlNGY0MzVhNWQ1NDQ3NTA1NjQ3NWE1ZDU2NDc1YTU2NTc1MDQ3NWQ0YjRmNDM0NTQ3NWQ1NzRjNGI1NjUxMWE2ZjYzN2E1NDY3NzA3NjY3N2E1NjY3N2E3Njc3NzA2NzRiNmY2MzY1Njc1NzZjNmI3NjcxMWE0ZjQzNWE1ZDU0NDc1MDU2NDc1YTVkNTc0YzRiNDQ0ZDUwNGY1ZDU0NDc0MTU2NGQ1MDUxMTc2ZjYzN2E1NDY3NzA3NjY3N2E1NzZjNmI2NDZkNzA2ZjU0Njc2MTc2NmQ3MDcxMTg1MTRhNDM0NjRiNGM0NTVkNGU0MzRjNDU1NzQzNDU0NzVkNTQ0NzUwNTE0YjRkNGMxNjcxNmE2MzY2NmI2YzY1NGU2MzZjNjU3NzYzNjU2NzU0Njc3MDcxNmI2ZDZjMGM1MTU2NDc0YzQxNGI0ZTVkNDA0YjU2NTEwYjcxNzY2NzZjNjE2YjZlNDA2Yjc2NzEwNzU0NDc1MDUxNGI0ZDRjMDY2NTYzNzY2YTY3NzAwOTZjNjM3NDZiNjU2Mzc2NmQ3MDA2NzU2YjZjNjY2ZDc1MDM2NTcyNzcwNzUxNDc0MTRiNGM0NDRkMGE2NTY3NzY1MTY3NjE0YjZjNjQ2ZDA5NzY2YjZmNjc3MTc2NjM2ZjcyMGQ2YjcxNDc2YzYzNjA2ZTY3NjY1MjYzNzY2YTE0NWQ2NzZjNjM2MDZlNjc1MjYzNzY2YTRlNmI3MTc2NTA2NzY1Njc3YTBjNmI2Yzc2Njc3MDYxNjc3Mjc2NWE0YTUwMGU1YTRmNGU0YTc2NzY3MjUwNjc3Mzc3Njc3MTc2MTA3MTY3NzY1MDY3NzM3NzY3NzE3NjRhNjc2MzY2Njc3MDA0NzE2NzZjNjYxMDZkNzQ2NzcwNzA2YjY2Njc0ZjZiNmY2NzU2N2I3MjY3MGY1ZDYzNjE1ZDZiNmM3NjY3NzA2MTY3NzI3NjY3NjYwNTVkNzE2NzZjNjYxNTVkNjA3Yjc2Njc2NjVkNmI2Yzc2Njc3MDYxNjc3Mjc2NWQ2ZTZiNzE3NjA0NjQ3NzZjNjEwOTYzNzA2NTc3NmY2NzZjNzY3MTBlNWM2MTZkNmM3NjY3NmM3NjJmNzY3YjcyNjcyNjAxMzkwZTVkNjA3Yjc2Njc2NjVkNjE2ZDZjNzY2NzZjNzYxMTVkNmQ3NDY3NzA3MDZiNjY2NzRmNmI2ZjY3NTY3YjcyNjcwZDVkNjA3Yjc2Njc2NjVkNmY2Nzc2NmE2ZDY2MGE1ZDYwN2I3NjY3NjY1ZDc3NzA2ZTA3NmQ2YzYzNjA2ZDcwNzYwNjZkNmM2ZTZkNjM2NjA5NmQ2YzZlNmQ2MzY2Njc2YzY2MGI2ZDZjNmU2ZDYzNjY3MTc2NjM3MDc2MGE2ZDZjNzI3MDZkNjU3MDY3NzE3MTA5NmQ2Yzc2NmI2ZjY3NmQ3Nzc2MGI1ZDcxNmI2NTZjNjM3Njc3NzA2NzNmMGI1ZDYwN2I3NjY3NjY1ZDYwNmQ2NjdiMTI2ZDZjNzA2NzYzNjY3YjcxNzY2Mzc2Njc2MTZhNjM2YzY1NjcwYzcwNjc3MTcyNmQ2YzcxNjc1NjdiNzI2NzA3NzY2YjZmNjc2ZDc3NzYwNjc3NzI2ZTZkNjM2NjA0NTI0ZDUxNTYyMTYzNzI3MjZlNmI2MTYzNzY2YjZkNmMyZDdhMmY3NTc1NzUyZjY0NmQ3MDZmMmY3NzcwNmU2NzZjNjE2ZDY2Njc2NjEwNjM3MjcyNmU2YjYxNjM3NjZiNmQ2YzJkNjg3MTZkNmMwNDcxNmI2NTZjMDM3MTY2NmIwZDcxNjc2MTRiNmM2NDZkNGE2NzYzNjY2NzcwMGU2YjZjNzY2NzcwNjE2NzcyNzY0NDY3NzY2MTZhMDk3NTcwNjM3MjQ0Njc3NjYxNmEwMzQ1NDc1NjA2NmY2Nzc2NmE2ZDY2MGI3NjZkNTc3MjcyNjc3MDQxNjM3MTY3MDU2MTZlNmQ2YzY3MDQ3NjY3N2E3NjA3NmE2NzYzNjY2NzcwNzExNjVkNWQ2MzYxNWQ2YjZjNzY2NzcwNjE2NzcyNzY2NzY2NWQ2NDY3NzY2MTZhMDU2NDY3NzY2MTZhMGQ3MTc3NzI3MjZkNzA3NjcxNDQ2Nzc2NjE2YTE0NWQ2NTY3NzY0NDY3NzY2MTZhNDE2ZDZjNzY2NzZjNzY1NjdiNzI2NzBjNjE2ZDZjNzY2NzZjNzYyZjc2N2I3MjY3MGI3NzcyNjY2Mzc2Njc0YzZkNmM2MTY3MDU3MjYzNzA3MTY3MGY2MDc3NmI2ZTY2NGM2Nzc1NTA2NzczNzc2NzcxNzYwMzcxNjc3NjA4NzA2NzY0Njc3MDcwNjc3MDBlNzA2NzY0Njc3MDcwNjc3MDUyNmQ2ZTZiNjE3YjA0NmY2ZDY2NjcwNTYxNjM2MTZhNjcwODcwNjc2NjZiNzA2NzYxNzYwOTZiNmM3NjY3NjU3MDZiNzY3YjBlNjU2Nzc2NTA2Nzc1NzA2Yjc2Njc2NjU3NzA2ZTEwNWQ3NzcwNmU1MDY3NzU3MDZiNzY2NzUwNzc2ZTY3NzEwYjcwNjc3NTcwNmI3NjY3NTc3MDZlMjIwODRkNTA0YjQ1NGI0YzM4MjIwYjA4NTA0NzU1NTA0YjU2NDc0NjM4MjIwYjZlNjM3MTc2NGI2YzY2Njc3YTRkNjQwMTI1MDMyNzMwMzUwODYwNzc2YjZlNjY1NzcwNmUwYzI0NWQ3MTZiNjU2YzYzNzY3NzcwNjczZjBjM2Q1ZDcxNmI2NTZjNjM3Njc3NzA2NzNmMDk2YjZjNzY2NzcwNjE2NzcyNzYxOTZiNzE0YjZjNzE3NjYzNmM2MTY3NGQ2NDQwN2I3NjY3NjY0MzYxNzA2Mzc1NmU2NzcwMGQ0MDdiNzY2NzY2NDM2MTcwNjM3NTZlNjc3MDA3NmQ3Mjc2NmI2ZDZjNzEwNDZiNmM2Yjc2MGU2NzZjNjM2MDZlNjc1MjYzNzY2YTRlNmI3MTc2MGY3NzcwNmU1MDY3NzU3MDZiNzY2NzUwNzc2ZTY3NzEwNDVkNjY2NDcyMGY3NDYzNmU2YjY2NjM3NjY3NGQ3Mjc2NmI2ZDZjNzExZTZkNzI3NjZiNmQ2YzIyNjM2YjY2MmE0YjZjNzY2NzY1Njc3MDJiMjI2YjcxMjI2YzY3Njc2NjY3NjYyMzI3NmQ3Mjc2NmI2ZDZjMjI2NzZjNjM2MDZlNjc1MjYzNzY2YTRlNmI3MTc2MmE0MzcwNzA2MzdiMmIyMjZiNzEyMjZjNjc2NzY2Njc2NjIzMTA2NTY3NmM1MjYzNzY2YTRlNmI3MTc2NTA2NzY1Njc3YTEyNjU2NzZjNTc3MDZlNTA2Nzc1NzA2Yjc2Njc1MDY3NjU2NzdhMGE2NTY3NzY1MDY3NjQ2NzcwNjc3MDBjNWQ1ZDYzNjE1ZDcwNjc2NDY3NzA2NzcwMTA2NjY3NjM2ZTUwNjc2NDY3NzA2NzcwNDE2MzYxNmE2NzBhNzA2NzY0Njc3MDY3NzA0OTY3N2IwYTVkNWQ2MzYxNWQ2MDZlNjM2YzY5MmE0MTYzNmM2YzZkNzYyMjYxNmQ2Yzc0Njc3MDc2MjI3NzZjNjY2NzY0NmI2YzY3NjYyMjZkNzAyMjZjNzc2ZTZlMjI3NjZkMjI2ZDYwNjg2NzYxNzYwZTZhNjM3MTRkNzU2YzUyNzA2ZDcyNjc3MDc2N2IwNTc0NjM2ZTc3NjcwODc1NzA2Yjc2NjM2MDZlNjcwYzYxNmQ2YzY0NmI2NTc3NzA2MzYwNmU2NzE0NzI3MDZkNzI2NzcwNzY3YjRiNzE0NzZjNzc2ZjY3NzA2MzYwNmU2NzBlNzY2ZDRlNmQ2MTYzNmU2NzUxNzY3MDZiNmM2NTA3NzQ2MzZlNzc2NzRkNjQwZDZiNzE1MjcwNmQ3NjZkNzY3YjcyNjc0ZDY0MjA0ZDYwNjg2NzYxNzYyYzY5Njc3YjcxMjI2MTYzNmU2ZTY3NjYyMjZkNmMyMjZjNmQ2YzJmNmQ2MDY4Njc2MTc2MDYzMDJjMzMzMzJjMzIwNjQwMzY1ODM0NzU2ZDBjNWEyZjRmNzE3MTY2NjkyZjRiNmM2NDZkMDM2MDZkNjcyOTZhNzY3NjcyNzEzODJkMmQ3YTdhNjA2NTJjNzE2YzcxNzE2NjY5MmM2MTZkNmYyZDc1Njc2MDcxNjY2OTJkNzQzMzJkNjU2Nzc2NGI2YzY0NmQyMzZhNzY3NjcyNzEzODJkMmQ3YTdhNjA2NTJjNzE2YzcxNzE2NjY5MmM2MTZkNmYyZDc1Njc2MDcxNjY2OTJkNzQzMzJkNzIyMzZhNzY3NjcyNzEzODJkMmQ3YTdhNjA2NTJjNzE2YzcxNzE2NjY5MmM2MTZkNmYyZDc1Njc2MDcxNjY2OTJkNzQzMzJkNzYwNTc3NjA1NzcwNmUwYTMwMzQzNzM2MzYzMTM3MzUzNDNiMDIzNzMzMDIzNjNhMDMyNzYxMjIwMjJmM2MwZDYxNmQ2ZTZkNzAzODIxNjAzMzMzMzc2NjMwMDk2ZjZkNzc3MTY3NmY2ZDc0NjcwNzY5Njc3YjY2NmQ3NTZjMDk2ZjZkNzc3MTY3NjY2ZDc1NmMwMjMyMzAwMjMyMzMwYTVkNWQ2NzcxNGY2ZDY2Nzc2ZTY3XFxcIiwgWywgLCBcXFwidW5kZWZpbmVkXFxcIiAhPSB0eXBlb2YgZXhwb3J0cyA/IGV4cG9ydHMgOiB2b2lkIDAsIFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiBtb2R1bGUgPyBtb2R1bGUgOiB2b2lkIDAsIFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiBkZWZpbmUgPyBkZWZpbmUgOiB2b2lkIDAsIFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiBPYmplY3QgPyBPYmplY3QgOiB2b2lkIDAsIHZvaWQgMCwgXFxcInVuZGVmaW5lZFxcXCIgIT0gdHlwZW9mIFR5cGVFcnJvciA/IFR5cGVFcnJvciA6IHZvaWQgMCwgXFxcInVuZGVmaW5lZFxcXCIgIT0gdHlwZW9mIGRvY3VtZW50ID8gZG9jdW1lbnQgOiB2b2lkIDAsIFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiBJbnN0YWxsVHJpZ2dlciA/IEluc3RhbGxUcmlnZ2VyIDogdm9pZCAwLCBcXFwidW5kZWZpbmVkXFxcIiAhPSB0eXBlb2Ygc2FmYXJpID8gc2FmYXJpIDogdm9pZCAwLCBcXFwidW5kZWZpbmVkXFxcIiAhPSB0eXBlb2YgRGF0ZSA/IERhdGUgOiB2b2lkIDAsIFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiBNYXRoID8gTWF0aCA6IHZvaWQgMCwgXFxcInVuZGVmaW5lZFxcXCIgIT0gdHlwZW9mIG5hdmlnYXRvciA/IG5hdmlnYXRvciA6IHZvaWQgMCwgXFxcInVuZGVmaW5lZFxcXCIgIT0gdHlwZW9mIGxvY2F0aW9uID8gbG9jYXRpb24gOiB2b2lkIDAsIFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiBoaXN0b3J5ID8gaGlzdG9yeSA6IHZvaWQgMCwgXFxcInVuZGVmaW5lZFxcXCIgIT0gdHlwZW9mIEltYWdlID8gSW1hZ2UgOiB2b2lkIDAsIFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiBjb25zb2xlID8gY29uc29sZSA6IHZvaWQgMCwgXFxcInVuZGVmaW5lZFxcXCIgIT0gdHlwZW9mIFBsdWdpbkFycmF5ID8gUGx1Z2luQXJyYXkgOiB2b2lkIDAsIFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiBpbmRleGVkREIgPyBpbmRleGVkREIgOiB2b2lkIDAsIFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiBET01FeGNlcHRpb24gPyBET01FeGNlcHRpb24gOiB2b2lkIDAsIFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiBwYXJzZUludCA/IHBhcnNlSW50IDogdm9pZCAwLCBcXFwidW5kZWZpbmVkXFxcIiAhPSB0eXBlb2YgU3RyaW5nID8gU3RyaW5nIDogdm9pZCAwLCBcXFwidW5kZWZpbmVkXFxcIiAhPSB0eXBlb2YgQXJyYXkgPyBBcnJheSA6IHZvaWQgMCwgXFxcInVuZGVmaW5lZFxcXCIgIT0gdHlwZW9mIEVycm9yID8gRXJyb3IgOiB2b2lkIDAsIFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiBKU09OID8gSlNPTiA6IHZvaWQgMCwgXFxcInVuZGVmaW5lZFxcXCIgIT0gdHlwZW9mIFByb21pc2UgPyBQcm9taXNlIDogdm9pZCAwLCBcXFwidW5kZWZpbmVkXFxcIiAhPSB0eXBlb2YgV2ViU29ja2V0ID8gV2ViU29ja2V0IDogdm9pZCAwLCBcXFwidW5kZWZpbmVkXFxcIiAhPSB0eXBlb2YgZXZhbCA/IGV2YWwgOiB2b2lkIDAsIFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiBzZXRUaW1lb3V0ID8gc2V0VGltZW91dCA6IHZvaWQgMCwgXFxcInVuZGVmaW5lZFxcXCIgIT0gdHlwZW9mIGVuY29kZVVSSUNvbXBvbmVudCA/IGVuY29kZVVSSUNvbXBvbmVudCA6IHZvaWQgMCwgXFxcInVuZGVmaW5lZFxcXCIgIT0gdHlwZW9mIGVuY29kZVVSSSA/IGVuY29kZVVSSSA6IHZvaWQgMCwgXFxcInVuZGVmaW5lZFxcXCIgIT0gdHlwZW9mIFJlcXVlc3QgPyBSZXF1ZXN0IDogdm9pZCAwLCBcXFwidW5kZWZpbmVkXFxcIiAhPSB0eXBlb2YgSGVhZGVycyA/IEhlYWRlcnMgOiB2b2lkIDAsIFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiBkZWNvZGVVUklDb21wb25lbnQgPyBkZWNvZGVVUklDb21wb25lbnQgOiB2b2lkIDAsIFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiBSZWdFeHAgPyBSZWdFeHAgOiB2b2lkIDBdKTtcXG5cXG53aW5kb3cuYnl0ZWRfYWNyYXdsZXIuaW5pdCh7XFxuICAgIGFpZDogNjM4MyxcXG4gICAgZGZwOiAhMSxcXG4gICAgYm9lOiAhMSxcXG4gICAgaW50ZXJjZXB0OiAhMCxcXG4gICAgZW5hYmxlUGF0aExpc3Q6IFtcXFwiL2F3ZW1lL3YxLypcXFwiLCBcXFwiL2F3ZW1lL3YyLypcXFwiXVxcbn0pXFxuXFxuZnVuY3Rpb24gUygpIHtcXG4gICAgdmFyIGEgPSBuZXcgWE1MSHR0cFJlcXVlc3RcXG4gICAgICAsIGMgPSB1bmRlZmluZWQgfHwgXFxcIlBPU1RcXFwiO1xcbiAgICBhLm9wZW4oYywgXFxcIlxcXCIgKyBcXFwiaHR0cHM6Ly9tY3Muc25zc2RrLmNvbS92MS91c2VyL3dlYmlkXFxcIiwgITApLFxcbiAgICBhLnNldFJlcXVlc3RIZWFkZXIoXFxcIkNvbnRlbnQtVHlwZVxcXCIsIFxcXCJhcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PXV0Zi04XFxcIiksXFxuICAgIHVuZGVmaW5lZCAmJiBhLnNldFJlcXVlc3RIZWFkZXIoXFxcIlgtTUNTLUFwcEtleVxcXCIsIFxcXCJcXFwiICsgciksXFxuICAgIGEub25sb2FkID0gZnVuY3Rpb24oKSB7XFxuICAgICAgICBpZiAoaSkge1xcbiAgICAgICAgICAgIHZhciBlID0gbnVsbDtcXG4gICAgICAgICAgICBpZiAoXFxcIlxcXCIpIHtcXG4gICAgICAgICAgICAgICAgdHJ5IHtcXG4gICAgICAgICAgICAgICAgICAgIGUgPSBKU09OLnBhcnNlKGEucmVzcG9uc2VUZXh0KVxcbiAgICAgICAgICAgICAgICB9IGNhdGNoICh0KSB7XFxuICAgICAgICAgICAgICAgICAgICBlID0ge31cXG4gICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICBpKGUsIHQpXFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICB9XFxuICAgIDtcXG4gICAgNTAwMCAmJiAoYS50aW1lb3V0ID0gNTAwMCksXFxuICAgIDUwMDAgJiYgKGEub250aW1lb3V0ID0gZnVuY3Rpb24oKSB7XFxuICAgICAgICBuICYmIG4odCwgZi5USU1FT1VUKVxcbiAgICB9XFxuICAgICksXFxuICAgIGEub25lcnJvciA9IGZ1bmN0aW9uKCkge1xcbiAgICAgICAgYS5hYm9ydCgpLFxcbiAgICAgICAgbiAmJiBuKHQsIGYuWEhSX09OKVxcbiAgICB9XFxuICAgICxcXG4gICAgYS5zZW5kKHtcXG4gICAgICAgIFxcXCJhcHBfaWRcXFwiOiA2MzgzLFxcbiAgICAgICAgXFxcInVybFxcXCI6IFxcXCJodHRwczovL3d3dy5kb3V5aW4uY29tL1xcXCIsXFxuICAgICAgICBcXFwidXNlcl9hZ2VudFxcXCI6IFxcXCJNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvOTEuMC40NDcyLjE2NCBTYWZhcmkvNTM3LjM2XFxcIixcXG4gICAgICAgIFxcXCJyZWZlcmVyXFxcIjogXFxcIlxcXCIsXFxuICAgICAgICBcXFwidXNlcl91bmlxdWVfaWRcXFwiOiBcXFwiXFxcIlxcbiAgICB9KVxcblxcbn1cXG5cXG4vL1MoKVxcblxcblxcbnZhciByID0gZnVuY3Rpb24oKSB7XFxuICAgIHZhciBvID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZztcXG4gICAgZnVuY3Rpb24gaShlKSB7XFxuICAgICAgICByZXR1cm4gXFxcIltvYmplY3QgQXJyYXldXFxcIiA9PT0gby5jYWxsKGUpXFxuICAgIH1cXG4gICAgZnVuY3Rpb24gYShlKSB7XFxuICAgICAgICByZXR1cm4gdm9pZCAwID09PSBlXFxuICAgIH1cXG4gICAgZnVuY3Rpb24gcyhlKSB7XFxuICAgICAgICByZXR1cm4gbnVsbCAhPT0gZSAmJiBcXFwib2JqZWN0XFxcIiA9PSB0eXBlb2YgZVxcbiAgICB9XFxuICAgIGZ1bmN0aW9uIHUoZSkge1xcbiAgICAgICAgaWYgKFxcXCJbb2JqZWN0IE9iamVjdF1cXFwiICE9PSBvLmNhbGwoZSkpXFxuICAgICAgICAgICAgcmV0dXJuICExO1xcbiAgICAgICAgdmFyIHQgPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YoZSk7XFxuICAgICAgICByZXR1cm4gbnVsbCA9PT0gdCB8fCB0ID09PSBPYmplY3QucHJvdG90eXBlXFxuICAgIH1cXG4gICAgZnVuY3Rpb24gYyhlKSB7XFxuICAgICAgICByZXR1cm4gXFxcIltvYmplY3QgRnVuY3Rpb25dXFxcIiA9PT0gby5jYWxsKGUpXFxuICAgIH1cXG4gICAgZnVuY3Rpb24gbChlLCB0KSB7XFxuICAgICAgICBpZiAobnVsbCAhPSBlKVxcbiAgICAgICAgICAgIGlmIChcXFwib2JqZWN0XFxcIiAhPSB0eXBlb2YgZSAmJiAoZSA9IFtlXSksXFxuICAgICAgICAgICAgaShlKSlcXG4gICAgICAgICAgICAgICAgZm9yICh2YXIgbiA9IDAsIHIgPSBlLmxlbmd0aDsgbiA8IHI7IG4rKylcXG4gICAgICAgICAgICAgICAgICAgIHQuY2FsbChudWxsLCBlW25dLCBuLCBlKTtcXG4gICAgICAgICAgICBlbHNlXFxuICAgICAgICAgICAgICAgIGZvciAodmFyIG8gaW4gZSlcXG4gICAgICAgICAgICAgICAgICAgIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLCBvKSAmJiB0LmNhbGwobnVsbCwgZVtvXSwgbywgZSlcXG4gICAgfVxcbiAgICByZXR1cm4ge1xcbiAgICAgICAgaXNBcnJheTogaSxcXG4gICAgICAgIGlzQXJyYXlCdWZmZXI6IGZ1bmN0aW9uKGUpIHtcXG4gICAgICAgICAgICByZXR1cm4gXFxcIltvYmplY3QgQXJyYXlCdWZmZXJdXFxcIiA9PT0gby5jYWxsKGUpXFxuICAgICAgICB9LFxcbiAgICAgICAgaXNCdWZmZXI6IGZ1bmN0aW9uKGUpIHtcXG4gICAgICAgICAgICByZXR1cm4gbnVsbCAhPT0gZSAmJiAhYShlKSAmJiBudWxsICE9PSBlLmNvbnN0cnVjdG9yICYmICFhKGUuY29uc3RydWN0b3IpICYmIFxcXCJmdW5jdGlvblxcXCIgPT0gdHlwZW9mIGUuY29uc3RydWN0b3IuaXNCdWZmZXIgJiYgZS5jb25zdHJ1Y3Rvci5pc0J1ZmZlcihlKVxcbiAgICAgICAgfSxcXG4gICAgICAgIGlzRm9ybURhdGE6IGZ1bmN0aW9uKGUpIHtcXG4gICAgICAgICAgICByZXR1cm4gXFxcInVuZGVmaW5lZFxcXCIgIT0gdHlwZW9mIEZvcm1EYXRhICYmIGUgaW5zdGFuY2VvZiBGb3JtRGF0YVxcbiAgICAgICAgfSxcXG4gICAgICAgIGlzQXJyYXlCdWZmZXJWaWV3OiBmdW5jdGlvbihlKSB7XFxuICAgICAgICAgICAgcmV0dXJuIFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiBBcnJheUJ1ZmZlciAmJiBBcnJheUJ1ZmZlci5pc1ZpZXcgPyBBcnJheUJ1ZmZlci5pc1ZpZXcoZSkgOiBlICYmIGUuYnVmZmVyICYmIGUuYnVmZmVyIGluc3RhbmNlb2YgQXJyYXlCdWZmZXJcXG4gICAgICAgIH0sXFxuICAgICAgICBpc1N0cmluZzogZnVuY3Rpb24oZSkge1xcbiAgICAgICAgICAgIHJldHVybiBcXFwic3RyaW5nXFxcIiA9PSB0eXBlb2YgZVxcbiAgICAgICAgfSxcXG4gICAgICAgIGlzTnVtYmVyOiBmdW5jdGlvbihlKSB7XFxuICAgICAgICAgICAgcmV0dXJuIFxcXCJudW1iZXJcXFwiID09IHR5cGVvZiBlXFxuICAgICAgICB9LFxcbiAgICAgICAgaXNPYmplY3Q6IHMsXFxuICAgICAgICBpc1BsYWluT2JqZWN0OiB1LFxcbiAgICAgICAgaXNVbmRlZmluZWQ6IGEsXFxuICAgICAgICBpc0RhdGU6IGZ1bmN0aW9uKGUpIHtcXG4gICAgICAgICAgICByZXR1cm4gXFxcIltvYmplY3QgRGF0ZV1cXFwiID09PSBvLmNhbGwoZSlcXG4gICAgICAgIH0sXFxuICAgICAgICBpc0ZpbGU6IGZ1bmN0aW9uKGUpIHtcXG4gICAgICAgICAgICByZXR1cm4gXFxcIltvYmplY3QgRmlsZV1cXFwiID09PSBvLmNhbGwoZSlcXG4gICAgICAgIH0sXFxuICAgICAgICBpc0Jsb2I6IGZ1bmN0aW9uKGUpIHtcXG4gICAgICAgICAgICByZXR1cm4gXFxcIltvYmplY3QgQmxvYl1cXFwiID09PSBvLmNhbGwoZSlcXG4gICAgICAgIH0sXFxuICAgICAgICBpc0Z1bmN0aW9uOiBjLFxcbiAgICAgICAgaXNTdHJlYW06IGZ1bmN0aW9uKGUpIHtcXG4gICAgICAgICAgICByZXR1cm4gcyhlKSAmJiBjKGUucGlwZSlcXG4gICAgICAgIH0sXFxuICAgICAgICBpc1VSTFNlYXJjaFBhcmFtczogZnVuY3Rpb24oZSkge1xcbiAgICAgICAgICAgIHJldHVybiBcXFwidW5kZWZpbmVkXFxcIiAhPSB0eXBlb2YgVVJMU2VhcmNoUGFyYW1zICYmIGUgaW5zdGFuY2VvZiBVUkxTZWFyY2hQYXJhbXNcXG4gICAgICAgIH0sXFxuICAgICAgICBpc1N0YW5kYXJkQnJvd3NlckVudjogZnVuY3Rpb24oKSB7XFxuICAgICAgICAgICAgcmV0dXJuIChcXFwidW5kZWZpbmVkXFxcIiA9PSB0eXBlb2YgbmF2aWdhdG9yIHx8IFxcXCJSZWFjdE5hdGl2ZVxcXCIgIT09IG5hdmlnYXRvci5wcm9kdWN0ICYmIFxcXCJOYXRpdmVTY3JpcHRcXFwiICE9PSBuYXZpZ2F0b3IucHJvZHVjdCAmJiBcXFwiTlNcXFwiICE9PSBuYXZpZ2F0b3IucHJvZHVjdCkgJiYgKFxcXCJ1bmRlZmluZWRcXFwiICE9IHR5cGVvZiB3aW5kb3cgJiYgXFxcInVuZGVmaW5lZFxcXCIgIT0gdHlwZW9mIGRvY3VtZW50KVxcbiAgICAgICAgfSxcXG4gICAgICAgIGZvckVhY2g6IGwsXFxuICAgICAgICBtZXJnZTogZnVuY3Rpb24gZSgpIHtcXG4gICAgICAgICAgICB2YXIgdCA9IHt9O1xcbiAgICAgICAgICAgIGZ1bmN0aW9uIG4obiwgcikge1xcbiAgICAgICAgICAgICAgICB1KHRbcl0pICYmIHUobikgPyB0W3JdID0gZSh0W3JdLCBuKSA6IHUobikgPyB0W3JdID0gZSh7fSwgbikgOiBpKG4pID8gdFtyXSA9IG4uc2xpY2UoKSA6IHRbcl0gPSBuXFxuICAgICAgICAgICAgfVxcbiAgICAgICAgICAgIGZvciAodmFyIHIgPSAwLCBvID0gYXJndW1lbnRzLmxlbmd0aDsgciA8IG87IHIrKylcXG4gICAgICAgICAgICAgICAgbChhcmd1bWVudHNbcl0sIG4pO1xcbiAgICAgICAgICAgIHJldHVybiB0XFxuICAgICAgICB9LFxcbiAgICAgICAgZXh0ZW5kOiBmdW5jdGlvbihlLCB0LCBuKSB7XFxuICAgICAgICAgICAgcmV0dXJuIGwodCwgKGZ1bmN0aW9uKHQsIG8pIHtcXG4gICAgICAgICAgICAgICAgZVtvXSA9IG4gJiYgXFxcImZ1bmN0aW9uXFxcIiA9PSB0eXBlb2YgdCA/IHIodCwgbikgOiB0XFxuICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICkpLFxcbiAgICAgICAgICAgIGVcXG4gICAgICAgIH0sXFxuICAgICAgICB0cmltOiBmdW5jdGlvbihlKSB7XFxuICAgICAgICAgICAgcmV0dXJuIGUucmVwbGFjZSgvXlxcXFxzKi8sIFxcXCJcXFwiKS5yZXBsYWNlKC9cXFxccyokLywgXFxcIlxcXCIpXFxuICAgICAgICB9LFxcbiAgICAgICAgc3RyaXBCT006IGZ1bmN0aW9uKGUpIHtcXG4gICAgICAgICAgICByZXR1cm4gNjUyNzkgPT09IGUuY2hhckNvZGVBdCgwKSAmJiAoZSA9IGUuc2xpY2UoMSkpLFxcbiAgICAgICAgICAgIGVcXG4gICAgICAgIH1cXG4gICAgfVxcbn0oKVxcblxcbmZ1bmN0aW9uIG8oZSkge1xcbiAgICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KGUpLnJlcGxhY2UoLyUzQS9naSwgXFxcIjpcXFwiKS5yZXBsYWNlKC8lMjQvZywgXFxcIiRcXFwiKS5yZXBsYWNlKC8lMkMvZ2ksIFxcXCIsXFxcIikucmVwbGFjZSgvJTIwL2csIFxcXCIrXFxcIikucmVwbGFjZSgvJTVCL2dpLCBcXFwiW1xcXCIpLnJlcGxhY2UoLyU1RC9naSwgXFxcIl1cXFwiKVxcbn1cXG5cXG5mdW5jdGlvbiBhKGUsIHQsIG4pIHtcXG4gICAgaWYgKCF0KVxcbiAgICAgICAgcmV0dXJuIGU7XFxuICAgIHZhciBpO1xcbiAgICBpZiAobilcXG4gICAgICAgIGkgPSBuKHQpO1xcbiAgICBlbHNlIGlmIChyLmlzVVJMU2VhcmNoUGFyYW1zKHQpKVxcbiAgICAgICAgaSA9IHQudG9TdHJpbmcoKTtcXG4gICAgZWxzZSB7XFxuICAgICAgICB2YXIgYSA9IFtdO1xcbiAgICAgICAgci5mb3JFYWNoKHQsIChmdW5jdGlvbihlLCB0KSB7XFxuICAgICAgICAgICAgbnVsbCAhPSBlICYmIChyLmlzQXJyYXkoZSkgPyB0ICs9IFxcXCJbXVxcXCIgOiBlID0gW2VdLFxcbiAgICAgICAgICAgIHIuZm9yRWFjaChlLCAoZnVuY3Rpb24oZSkge1xcbiAgICAgICAgICAgICAgICByLmlzRGF0ZShlKSA/IGUgPSBlLnRvSVNPU3RyaW5nKCkgOiByLmlzT2JqZWN0KGUpICYmIChlID0gSlNPTi5zdHJpbmdpZnkoZSkpLFxcbiAgICAgICAgICAgICAgICBhLnB1c2gobyh0KSArIFxcXCI9XFxcIiArIG8oZSkpXFxuICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICkpKVxcbiAgICAgICAgfVxcbiAgICAgICAgKSksXFxuICAgICAgICBpID0gYS5qb2luKFxcXCImXFxcIilcXG4gICAgfVxcbiAgICBpZiAoaSkge1xcbiAgICAgICAgdmFyIHMgPSBlLmluZGV4T2YoXFxcIiNcXFwiKTtcXG4gICAgICAgIC0xICE9PSBzICYmIChlID0gZS5zbGljZSgwLCBzKSksXFxuICAgICAgICBlICs9ICgtMSA9PT0gZS5pbmRleE9mKFxcXCI/XFxcIikgPyBcXFwiP1xcXCIgOiBcXFwiJlxcXCIpICsgaVxcbiAgICB9XFxuICAgIHJldHVybiBlXFxufVxcblxcbmZ1bmN0aW9uIGZlZWQoKSB7XFxuICAgIHZhciBlID0ge1xcbiAgICAgICAgXFxcInVybFxcXCI6IFxcXCIvYXdlbWUvdjEvd2ViL2NoYW5uZWwvZmVlZC9cXFwiLFxcbiAgICAgICAgXFxcIm1ldGhvZFxcXCI6IFxcXCJnZXRcXFwiLFxcbiAgICAgICAgXFxcImhlYWRlcnNcXFwiOiB7XFxuICAgICAgICAgICAgXFxcIkFjY2VwdFxcXCI6IFxcXCJhcHBsaWNhdGlvbi9qc29uLCB0ZXh0L3BsYWluLCAqLypcXFwiLFxcbiAgICAgICAgICAgIFxcXCJDb250ZW50LVR5cGVcXFwiOiBcXFwiYXBwbGljYXRpb24vanNvblxcXCIsXFxuICAgICAgICAgICAgXFxcIndpdGhDcmVkZW50aWFsc1xcXCI6IHRydWVcXG4gICAgICAgIH0sXFxuICAgICAgICBcXFwicGFyYW1zXFxcIjoge1xcbiAgICAgICAgICAgIFxcXCJkZXZpY2VfcGxhdGZvcm1cXFwiOiBcXFwid2ViYXBwXFxcIixcXG4gICAgICAgICAgICBcXFwiYWlkXFxcIjogNjM4MyxcXG4gICAgICAgICAgICBcXFwiY2hhbm5lbFxcXCI6IFxcXCJjaGFubmVsX3BjX3dlYlxcXCIsXFxuICAgICAgICAgICAgXFxcInRhZ19pZFxcXCI6IFxcXCJcXFwiLFxcbiAgICAgICAgICAgIFxcXCJjb3VudFxcXCI6IDEwLFxcbiAgICAgICAgICAgIFxcXCJ2ZXJzaW9uX2NvZGVcXFwiOiBcXFwiMTYwMTAwXFxcIixcXG4gICAgICAgICAgICBcXFwidmVyc2lvbl9uYW1lXFxcIjogXFxcIjE2LjEuMFxcXCIsXFxuICAgICAgICAgICAgXFxcImNvb2tpZV9lbmFibGVkXFxcIjogdHJ1ZSxcXG4gICAgICAgICAgICBcXFwic2NyZWVuX3dpZHRoXFxcIjogMTI4MCxcXG4gICAgICAgICAgICBcXFwic2NyZWVuX2hlaWdodFxcXCI6IDcyMCxcXG4gICAgICAgICAgICBcXFwiYnJvd3Nlcl9sYW5ndWFnZVxcXCI6IFxcXCJ6aC1DTlxcXCIsXFxuICAgICAgICAgICAgXFxcImJyb3dzZXJfcGxhdGZvcm1cXFwiOiBcXFwiV2luMzJcXFwiLFxcbiAgICAgICAgICAgIFxcXCJicm93c2VyX25hbWVcXFwiOiBcXFwiTW96aWxsYVxcXCIsXFxuICAgICAgICAgICAgXFxcImJyb3dzZXJfdmVyc2lvblxcXCI6IFxcXCI1LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzkxLjAuNDQ3Mi4xNjQgU2FmYXJpLzUzNy4zNlxcXCIsXFxuICAgICAgICAgICAgXFxcImJyb3dzZXJfb25saW5lXFxcIjogdHJ1ZVxcbiAgICAgICAgfSxcXG4gICAgICAgIFxcXCJiYXNlVVJMXFxcIjogXFxcIlxcXCIsXFxuICAgICAgICBcXFwidHJhbnNmb3JtUmVxdWVzdFxcXCI6IFtudWxsXSxcXG4gICAgICAgIFxcXCJ0aW1lb3V0XFxcIjogMCxcXG4gICAgICAgIFxcXCJ4c3JmQ29va2llTmFtZVxcXCI6IFxcXCJYU1JGLVRPS0VOXFxcIixcXG4gICAgICAgIFxcXCJ4c3JmSGVhZGVyTmFtZVxcXCI6IFxcXCJYLVhTUkYtVE9LRU5cXFwiLFxcbiAgICAgICAgXFxcIm1heENvbnRlbnRMZW5ndGhcXFwiOiAtMSxcXG4gICAgICAgIFxcXCJtYXhCb2R5TGVuZ3RoXFxcIjogLTFcXG4gICAgfTtcXG4gICAgdmFyIGYgPSBlLmRhdGFcXG4gICAgICAsIGQgPSBlLmhlYWRlcnM7XFxuICAgIHIuaXNGb3JtRGF0YShmKSAmJiBkZWxldGUgZFtcXFwiQ29udGVudC1UeXBlXFxcIl07XFxuICAgIHZhciBoID0gbmV3IFhNTEh0dHBSZXF1ZXN0O1xcbiAgICBpZiAoZS5hdXRoKSB7XFxuICAgICAgICB2YXIgcCA9IGUuYXV0aC51c2VybmFtZSB8fCBcXFwiXFxcIlxcbiAgICAgICAgICAsIG0gPSBlLmF1dGgucGFzc3dvcmQgPyB1bmVzY2FwZShlbmNvZGVVUklDb21wb25lbnQoZS5hdXRoLnBhc3N3b3JkKSkgOiBcXFwiXFxcIjtcXG4gICAgICAgIGQuQXV0aG9yaXphdGlvbiA9IFxcXCJCYXNpYyBcXFwiICsgYnRvYShwICsgXFxcIjpcXFwiICsgbSlcXG4gICAgfVxcbiAgICB2YXIgdiA9IGUudXJsO1xcbiAgICBpZiAoaC5vcGVuKGUubWV0aG9kLnRvVXBwZXJDYXNlKCksIGEodiwgZS5wYXJhbXMsIGUucGFyYW1zU2VyaWFsaXplciksICEwKSxcXG4gICAgaC50aW1lb3V0ID0gZS50aW1lb3V0LFxcbiAgICBoLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uKCkge1xcbiAgICAgICAgaWYgKGggJiYgNCA9PT0gaC5yZWFkeVN0YXRlICYmICgwICE9PSBoLnN0YXR1cyB8fCBoLnJlc3BvbnNlVVJMICYmIDAgPT09IGgucmVzcG9uc2VVUkwuaW5kZXhPZihcXFwiZmlsZTpcXFwiKSkpIHtcXG4gICAgICAgICAgICB2YXIgciA9IFxcXCJnZXRBbGxSZXNwb25zZUhlYWRlcnNcXFwiaW4gaCA/IHUoaC5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKSkgOiBudWxsXFxuICAgICAgICAgICAgICAsIGkgPSB7XFxuICAgICAgICAgICAgICAgIGRhdGE6IGUucmVzcG9uc2VUeXBlICYmIFxcXCJ0ZXh0XFxcIiAhPT0gZS5yZXNwb25zZVR5cGUgPyBoLnJlc3BvbnNlIDogaC5yZXNwb25zZVRleHQsXFxuICAgICAgICAgICAgICAgIHN0YXR1czogaC5zdGF0dXMsXFxuICAgICAgICAgICAgICAgIHN0YXR1c1RleHQ6IGguc3RhdHVzVGV4dCxcXG4gICAgICAgICAgICAgICAgaGVhZGVyczogcixcXG4gICAgICAgICAgICAgICAgY29uZmlnOiBlLFxcbiAgICAgICAgICAgICAgICByZXF1ZXN0OiBoXFxuICAgICAgICAgICAgfTtcXG4gICAgICAgICAgICBvKHQsIG4sIGkpLFxcbiAgICAgICAgICAgIGggPSBudWxsXFxuICAgICAgICB9XFxuICAgIH1cXG4gICAgLFxcbiAgICBoLm9uYWJvcnQgPSBmdW5jdGlvbigpIHtcXG4gICAgICAgIGggJiYgKG4obChcXFwiUmVxdWVzdCBhYm9ydGVkXFxcIiwgZSwgXFxcIkVDT05OQUJPUlRFRFxcXCIsIGgpKSxcXG4gICAgICAgIGggPSBudWxsKVxcbiAgICB9XFxuICAgICxcXG4gICAgaC5vbmVycm9yID0gZnVuY3Rpb24oKSB7XFxuICAgICAgICBuKGwoXFxcIk5ldHdvcmsgRXJyb3JcXFwiLCBlLCBudWxsLCBoKSksXFxuICAgICAgICBoID0gbnVsbFxcbiAgICB9XFxuICAgICxcXG4gICAgaC5vbnRpbWVvdXQgPSBmdW5jdGlvbigpIHtcXG4gICAgICAgIHZhciB0ID0gXFxcInRpbWVvdXQgb2YgXFxcIiArIGUudGltZW91dCArIFxcXCJtcyBleGNlZWRlZFxcXCI7XFxuICAgICAgICBlLnRpbWVvdXRFcnJvck1lc3NhZ2UgJiYgKHQgPSBlLnRpbWVvdXRFcnJvck1lc3NhZ2UpLFxcbiAgICAgICAgbihsKHQsIGUsIFxcXCJFQ09OTkFCT1JURURcXFwiLCBoKSksXFxuICAgICAgICBoID0gbnVsbFxcbiAgICB9XFxuICAgICxcXG4gICAgci5pc1N0YW5kYXJkQnJvd3NlckVudigpKSB7Ly8gICB2YXIgZyA9IChlLndpdGhDcmVkZW50aWFscyB8fCBjKHYpKSAmJiBlLnhzcmZDb29raWVOYW1lID8gaS5yZWFkKGUueHNyZkNvb2tpZU5hbWUpIDogdm9pZCAwO1xcbiAgICAvLyAgIGcgJiYgKGRbZS54c3JmSGVhZGVyTmFtZV0gPSBnKVxcbiAgICB9XFxuICAgIGlmIChcXFwic2V0UmVxdWVzdEhlYWRlclxcXCJpbiBoICYmIHIuZm9yRWFjaChkLCAoZnVuY3Rpb24oZSwgdCkge1xcbiAgICAgICAgdm9pZCAwID09PSBmICYmIFxcXCJjb250ZW50LXR5cGVcXFwiID09PSB0LnRvTG93ZXJDYXNlKCkgPyBkZWxldGUgZFt0XSA6IGguc2V0UmVxdWVzdEhlYWRlcih0LCBlKVxcbiAgICB9XFxuICAgICkpLFxcbiAgICByLmlzVW5kZWZpbmVkKGUud2l0aENyZWRlbnRpYWxzKSB8fCAoaC53aXRoQ3JlZGVudGlhbHMgPSAhIWUud2l0aENyZWRlbnRpYWxzKSxcXG4gICAgZS5yZXNwb25zZVR5cGUpXFxuICAgICAgICB0cnkge1xcbiAgICAgICAgICAgIGgucmVzcG9uc2VUeXBlID0gZS5yZXNwb25zZVR5cGVcXG4gICAgICAgIH0gY2F0Y2ggKHQpIHtcXG4gICAgICAgICAgICBpZiAoXFxcImpzb25cXFwiICE9PSBlLnJlc3BvbnNlVHlwZSlcXG4gICAgICAgICAgICAgICAgdGhyb3cgdFxcbiAgICAgICAgfVxcbiAgICBcXFwiZnVuY3Rpb25cXFwiID09IHR5cGVvZiBlLm9uRG93bmxvYWRQcm9ncmVzcyAmJiBoLmFkZEV2ZW50TGlzdGVuZXIoXFxcInByb2dyZXNzXFxcIiwgZS5vbkRvd25sb2FkUHJvZ3Jlc3MpLFxcbiAgICBcXFwiZnVuY3Rpb25cXFwiID09IHR5cGVvZiBlLm9uVXBsb2FkUHJvZ3Jlc3MgJiYgaC51cGxvYWQgJiYgaC51cGxvYWQuYWRkRXZlbnRMaXN0ZW5lcihcXFwicHJvZ3Jlc3NcXFwiLCBlLm9uVXBsb2FkUHJvZ3Jlc3MpLFxcbiAgICBlLmNhbmNlbFRva2VuICYmIGUuY2FuY2VsVG9rZW4ucHJvbWlzZS50aGVuKChmdW5jdGlvbihlKSB7XFxuICAgICAgICBoICYmIChoLmFib3J0KCksXFxuICAgICAgICBuKGUpLFxcbiAgICAgICAgaCA9IG51bGwpXFxuICAgIH1cXG4gICAgKSksXFxuICAgIGYgfHwgKGYgPSBudWxsKSxcXG4gICAgaC5zZW5kKGYpXFxuICAgIHJldHVybiBcXFwiaHR0cHM6Ly93d3cuZG91eWluLmNvbVxcXCIgKyBoLl91cmxcXG5cXG59XFxuXFxuZnVuY3Rpb24gc2VhcmNoX2l0ZW0oa2V5d29yZCl7XFxuICAgIHZhciBlID0ge1xcbiAgICAgICAgXFxcInVybFxcXCI6IFxcXCIvYXdlbWUvdjEvd2ViL3NlYXJjaC9pdGVtL1xcXCIsXFxuICAgICAgICBcXFwibWV0aG9kXFxcIjogXFxcImdldFxcXCIsXFxuICAgICAgICBcXFwiaGVhZGVyc1xcXCI6IHtcXG4gICAgICAgICAgICBcXFwiQWNjZXB0XFxcIjogXFxcImFwcGxpY2F0aW9uL2pzb24sIHRleHQvcGxhaW4sICovKlxcXCIsXFxuICAgICAgICAgICAgXFxcIkNvbnRlbnQtVHlwZVxcXCI6IFxcXCJhcHBsaWNhdGlvbi9qc29uXFxcIixcXG4gICAgICAgICAgICBcXFwid2l0aENyZWRlbnRpYWxzXFxcIjogdHJ1ZVxcbiAgICAgICAgfSxcXG4gICAgICAgIFxcXCJwYXJhbXNcXFwiOiB7XFxuICAgICAgICAgICAgXFxcImRldmljZV9wbGF0Zm9ybVxcXCI6IFxcXCJ3ZWJhcHBcXFwiLFxcbiAgICAgICAgICAgIFxcXCJhaWRcXFwiOiA2MzgzLFxcbiAgICAgICAgICAgIFxcXCJjaGFubmVsXFxcIjogXFxcImNoYW5uZWxfcGNfd2ViXFxcIixcXG4gICAgICAgICAgICBcXFwic2VhcmNoX2NoYW5uZWxcXFwiOiBcXFwiYXdlbWVfdmlkZW9fd2ViXFxcIixcXG4gICAgICAgICAgICBcXFwic29ydF90eXBlXFxcIjogXFxcIjBcXFwiLFxcbiAgICAgICAgICAgIFxcXCJwdWJsaXNoX3RpbWVcXFwiOiBcXFwiMFxcXCIsXFxuICAgICAgICAgICAgXFxcImtleXdvcmRcXFwiOiBrZXl3b3JkLFxcbiAgICAgICAgICAgIFxcXCJzZWFyY2hfc291cmNlXFxcIjogXFxcIm5vcm1hbF9zZWFyY2hcXFwiLFxcbiAgICAgICAgICAgIFxcXCJxdWVyeV9jb3JyZWN0X3R5cGVcXFwiOiBcXFwiMVxcXCIsXFxuICAgICAgICAgICAgXFxcImlzX2ZpbHRlcl9zZWFyY2hcXFwiOiBcXFwiMFxcXCIsXFxuICAgICAgICAgICAgXFxcIm9mZnNldFxcXCI6IDAsXFxuICAgICAgICAgICAgXFxcImNvdW50XFxcIjogMTUsXFxuICAgICAgICAgICAgXFxcInZlcnNpb25fY29kZVxcXCI6IFxcXCIxNjAxMDBcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ2ZXJzaW9uX25hbWVcXFwiOiBcXFwiMTYuMS4wXFxcIixcXG4gICAgICAgICAgICBcXFwiY29va2llX2VuYWJsZWRcXFwiOiB0cnVlLFxcbiAgICAgICAgICAgIFxcXCJzY3JlZW5fd2lkdGhcXFwiOiAxMjgwLFxcbiAgICAgICAgICAgIFxcXCJzY3JlZW5faGVpZ2h0XFxcIjogNzIwLFxcbiAgICAgICAgICAgIFxcXCJicm93c2VyX2xhbmd1YWdlXFxcIjogXFxcInpoLUNOXFxcIixcXG4gICAgICAgICAgICBcXFwiYnJvd3Nlcl9wbGF0Zm9ybVxcXCI6IFxcXCJXaW4zMlxcXCIsXFxuICAgICAgICAgICAgXFxcImJyb3dzZXJfbmFtZVxcXCI6IFxcXCJNb3ppbGxhXFxcIixcXG4gICAgICAgICAgICBcXFwiYnJvd3Nlcl92ZXJzaW9uXFxcIjogXFxcIjUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvOTEuMC40NDcyLjE2NCBTYWZhcmkvNTM3LjM2XFxcIixcXG4gICAgICAgICAgICBcXFwiYnJvd3Nlcl9vbmxpbmVcXFwiOiB0cnVlXFxuICAgICAgICB9LFxcbiAgICB9O1xcbiAgICAgICAgdmFyIGYgPSBlLmRhdGFcXG4gICAgICAgICAgLCBkID0gZS5oZWFkZXJzO1xcbiAgICAgICAgci5pc0Zvcm1EYXRhKGYpICYmIGRlbGV0ZSBkW1xcXCJDb250ZW50LVR5cGVcXFwiXTtcXG4gICAgICAgIHZhciBoID0gbmV3IFhNTEh0dHBSZXF1ZXN0O1xcbiAgICAgICAgdmFyIHYgPSBlLnVybDtcXG4gICAgICAgIGgub3BlbihlLm1ldGhvZC50b1VwcGVyQ2FzZSgpLCBhKHYsIGUucGFyYW1zLCBlLnBhcmFtc1NlcmlhbGl6ZXIpLCAhMClcXG4gICAgICAgIGguc2VuZChmKVxcbiAgICAgICAgcmV0dXJuIGguX3VybFxcbn1cXG5cXG5mdW5jdGlvbiBzZWFyY2hfdXNlcihrZXl3b3JkKXtcXG4gICAgdmFyIGUgPSB7XFxuICAgICAgICBcXFwidXJsXFxcIjogXFxcIi9hd2VtZS92MS93ZWIvZGlzY292ZXIvc2VhcmNoL1xcXCIsXFxuICAgICAgICBcXFwibWV0aG9kXFxcIjogXFxcImdldFxcXCIsXFxuICAgICAgICBcXFwiaGVhZGVyc1xcXCI6IHtcXG4gICAgICAgICAgICBcXFwiQWNjZXB0XFxcIjogXFxcImFwcGxpY2F0aW9uL2pzb24sIHRleHQvcGxhaW4sICovKlxcXCIsXFxuICAgICAgICAgICAgXFxcIkNvbnRlbnQtVHlwZVxcXCI6IFxcXCJhcHBsaWNhdGlvbi9qc29uXFxcIixcXG4gICAgICAgICAgICBcXFwid2l0aENyZWRlbnRpYWxzXFxcIjogdHJ1ZVxcbiAgICAgICAgfSxcXG4gICAgICAgIFxcXCJwYXJhbXNcXFwiOiB7XFxuICAgICAgICAgICAgXFxcImRldmljZV9wbGF0Zm9ybVxcXCI6IFxcXCJ3ZWJhcHBcXFwiLFxcbiAgICAgICAgICAgIFxcXCJhaWRcXFwiOiA2MzgzLFxcbiAgICAgICAgICAgIFxcXCJjaGFubmVsXFxcIjogXFxcImNoYW5uZWxfcGNfd2ViXFxcIixcXG4gICAgICAgICAgICBcXFwic2VhcmNoX2NoYW5uZWxcXFwiOiBcXFwiYXdlbWVfdmlkZW9fd2ViXFxcIixcXG4gICAgICAgICAgICBcXFwic29ydF90eXBlXFxcIjogXFxcIjBcXFwiLFxcbiAgICAgICAgICAgIFxcXCJwdWJsaXNoX3RpbWVcXFwiOiBcXFwiMFxcXCIsXFxuICAgICAgICAgICAgXFxcImtleXdvcmRcXFwiOiBrZXl3b3JkLFxcbiAgICAgICAgICAgIFxcXCJzZWFyY2hfc291cmNlXFxcIjogXFxcIm5vcm1hbF9zZWFyY2hcXFwiLFxcbiAgICAgICAgICAgIFxcXCJxdWVyeV9jb3JyZWN0X3R5cGVcXFwiOiBcXFwiMVxcXCIsXFxuICAgICAgICAgICAgXFxcImlzX2ZpbHRlcl9zZWFyY2hcXFwiOiBcXFwiMFxcXCIsXFxuICAgICAgICAgICAgXFxcIm9mZnNldFxcXCI6IDAsXFxuICAgICAgICAgICAgXFxcImNvdW50XFxcIjogMjAsXFxuICAgICAgICAgICAgXFxcInZlcnNpb25fY29kZVxcXCI6IFxcXCIxNjAxMDBcXFwiLFxcbiAgICAgICAgICAgIFxcXCJ2ZXJzaW9uX25hbWVcXFwiOiBcXFwiMTYuMS4wXFxcIixcXG4gICAgICAgICAgICBcXFwiY29va2llX2VuYWJsZWRcXFwiOiB0cnVlLFxcbiAgICAgICAgICAgIFxcXCJzY3JlZW5fd2lkdGhcXFwiOiAxMjgwLFxcbiAgICAgICAgICAgIFxcXCJzY3JlZW5faGVpZ2h0XFxcIjogNzIwLFxcbiAgICAgICAgICAgIFxcXCJicm93c2VyX2xhbmd1YWdlXFxcIjogXFxcInpoLUNOXFxcIixcXG4gICAgICAgICAgICBcXFwiYnJvd3Nlcl9wbGF0Zm9ybVxcXCI6IFxcXCJXaW4zMlxcXCIsXFxuICAgICAgICAgICAgXFxcImJyb3dzZXJfbmFtZVxcXCI6IFxcXCJNb3ppbGxhXFxcIixcXG4gICAgICAgICAgICBcXFwiYnJvd3Nlcl92ZXJzaW9uXFxcIjogXFxcIjUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvOTEuMC40NDcyLjE2NCBTYWZhcmkvNTM3LjM2XFxcIixcXG4gICAgICAgICAgICBcXFwiYnJvd3Nlcl9vbmxpbmVcXFwiOiB0cnVlXFxuICAgICAgICB9LFxcbiAgICAgICAgXFxcImJhc2VVUkxcXFwiOiBcXFwiXFxcIixcXG4gICAgICAgIFxcXCJ0cmFuc2Zvcm1SZXF1ZXN0XFxcIjogW251bGxdLFxcbiAgICAgICAgXFxcInRyYW5zZm9ybVJlc3BvbnNlXFxcIjogW251bGxdLFxcbiAgICAgICAgXFxcInRpbWVvdXRcXFwiOiAwLFxcbiAgICAgICAgXFxcInhzcmZDb29raWVOYW1lXFxcIjogXFxcIlhTUkYtVE9LRU5cXFwiLFxcbiAgICAgICAgXFxcInhzcmZIZWFkZXJOYW1lXFxcIjogXFxcIlgtWFNSRi1UT0tFTlxcXCIsXFxuICAgICAgICBcXFwibWF4Q29udGVudExlbmd0aFxcXCI6IC0xLFxcbiAgICAgICAgXFxcIm1heEJvZHlMZW5ndGhcXFwiOiAtMVxcbiAgICB9O1xcbiAgICAgICAgdmFyIGYgPSBlLmRhdGFcXG4gICAgICAgICAgLCBkID0gZS5oZWFkZXJzO1xcbiAgICAgICAgci5pc0Zvcm1EYXRhKGYpICYmIGRlbGV0ZSBkW1xcXCJDb250ZW50LVR5cGVcXFwiXTtcXG4gICAgICAgIHZhciBoID0gbmV3IFhNTEh0dHBSZXF1ZXN0O1xcbiAgICAgICAgaWYgKGUuYXV0aCkge1xcbiAgICAgICAgICAgIHZhciBwID0gZS5hdXRoLnVzZXJuYW1lIHx8IFxcXCJcXFwiXFxuICAgICAgICAgICAgICAsIG0gPSBlLmF1dGgucGFzc3dvcmQgPyB1bmVzY2FwZShlbmNvZGVVUklDb21wb25lbnQoZS5hdXRoLnBhc3N3b3JkKSkgOiBcXFwiXFxcIjtcXG4gICAgICAgICAgICBkLkF1dGhvcml6YXRpb24gPSBcXFwiQmFzaWMgXFxcIiArIGJ0b2EocCArIFxcXCI6XFxcIiArIG0pXFxuICAgICAgICB9XFxuICAgICAgICB2YXIgdiA9IGUudXJsO1xcbiAgICAgICAgaWYgKGgub3BlbihlLm1ldGhvZC50b1VwcGVyQ2FzZSgpLCBhKHYsIGUucGFyYW1zLCBlLnBhcmFtc1NlcmlhbGl6ZXIpLCAhMCksXFxuICAgICAgICBoLnRpbWVvdXQgPSBlLnRpbWVvdXQsXFxuICAgICAgICBoLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uKCkge1xcbiAgICAgICAgICAgIGlmIChoICYmIDQgPT09IGgucmVhZHlTdGF0ZSAmJiAoMCAhPT0gaC5zdGF0dXMgfHwgaC5yZXNwb25zZVVSTCAmJiAwID09PSBoLnJlc3BvbnNlVVJMLmluZGV4T2YoXFxcImZpbGU6XFxcIikpKSB7XFxuICAgICAgICAgICAgICAgIHZhciByID0gXFxcImdldEFsbFJlc3BvbnNlSGVhZGVyc1xcXCJpbiBoID8gdShoLmdldEFsbFJlc3BvbnNlSGVhZGVycygpKSA6IG51bGxcXG4gICAgICAgICAgICAgICAgICAsIGkgPSB7XFxuICAgICAgICAgICAgICAgICAgICBkYXRhOiBlLnJlc3BvbnNlVHlwZSAmJiBcXFwidGV4dFxcXCIgIT09IGUucmVzcG9uc2VUeXBlID8gaC5yZXNwb25zZSA6IGgucmVzcG9uc2VUZXh0LFxcbiAgICAgICAgICAgICAgICAgICAgc3RhdHVzOiBoLnN0YXR1cyxcXG4gICAgICAgICAgICAgICAgICAgIHN0YXR1c1RleHQ6IGguc3RhdHVzVGV4dCxcXG4gICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHIsXFxuICAgICAgICAgICAgICAgICAgICBjb25maWc6IGUsXFxuICAgICAgICAgICAgICAgICAgICByZXF1ZXN0OiBoXFxuICAgICAgICAgICAgICAgIH07XFxuICAgICAgICAgICAgICAgIG8odCwgbiwgaSksXFxuICAgICAgICAgICAgICAgIGggPSBudWxsXFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgICAgLFxcbiAgICAgICAgaC5vbmFib3J0ID0gZnVuY3Rpb24oKSB7XFxuICAgICAgICAgICAgaCAmJiAobihsKFxcXCJSZXF1ZXN0IGFib3J0ZWRcXFwiLCBlLCBcXFwiRUNPTk5BQk9SVEVEXFxcIiwgaCkpLFxcbiAgICAgICAgICAgIGggPSBudWxsKVxcbiAgICAgICAgfVxcbiAgICAgICAgLFxcbiAgICAgICAgaC5vbmVycm9yID0gZnVuY3Rpb24oKSB7XFxuICAgICAgICAgICAgbihsKFxcXCJOZXR3b3JrIEVycm9yXFxcIiwgZSwgbnVsbCwgaCkpLFxcbiAgICAgICAgICAgIGggPSBudWxsXFxuICAgICAgICB9XFxuICAgICAgICAsXFxuICAgICAgICBoLm9udGltZW91dCA9IGZ1bmN0aW9uKCkge1xcbiAgICAgICAgICAgIHZhciB0ID0gXFxcInRpbWVvdXQgb2YgXFxcIiArIGUudGltZW91dCArIFxcXCJtcyBleGNlZWRlZFxcXCI7XFxuICAgICAgICAgICAgZS50aW1lb3V0RXJyb3JNZXNzYWdlICYmICh0ID0gZS50aW1lb3V0RXJyb3JNZXNzYWdlKSxcXG4gICAgICAgICAgICBuKGwodCwgZSwgXFxcIkVDT05OQUJPUlRFRFxcXCIsIGgpKSxcXG4gICAgICAgICAgICBoID0gbnVsbFxcbiAgICAgICAgfVxcbiAgICAgICAgLFxcbiAgICAgICAgci5pc1N0YW5kYXJkQnJvd3NlckVudigpKSB7XFxuICAgICAgICAgICAgLy8gICB2YXIgZyA9IChlLndpdGhDcmVkZW50aWFscyB8fCBjKHYpKSAmJiBlLnhzcmZDb29raWVOYW1lID8gaS5yZWFkKGUueHNyZkNvb2tpZU5hbWUpIDogdm9pZCAwO1xcbiAgICAgICAgLy8gICBnICYmIChkW2UueHNyZkhlYWRlck5hbWVdID0gZylcXG4gICAgICAgIH1cXG4gICAgICAgIGlmIChcXFwic2V0UmVxdWVzdEhlYWRlclxcXCJpbiBoICYmIHIuZm9yRWFjaChkLCAoZnVuY3Rpb24oZSwgdCkge1xcbiAgICAgICAgICAgIHZvaWQgMCA9PT0gZiAmJiBcXFwiY29udGVudC10eXBlXFxcIiA9PT0gdC50b0xvd2VyQ2FzZSgpID8gZGVsZXRlIGRbdF0gOiBoLnNldFJlcXVlc3RIZWFkZXIodCwgZSlcXG4gICAgICAgIH1cXG4gICAgICAgICkpLFxcbiAgICAgICAgci5pc1VuZGVmaW5lZChlLndpdGhDcmVkZW50aWFscykgfHwgKGgud2l0aENyZWRlbnRpYWxzID0gISFlLndpdGhDcmVkZW50aWFscyksXFxuICAgICAgICBlLnJlc3BvbnNlVHlwZSlcXG4gICAgICAgICAgICB0cnkge1xcbiAgICAgICAgICAgICAgICBoLnJlc3BvbnNlVHlwZSA9IGUucmVzcG9uc2VUeXBlXFxuICAgICAgICAgICAgfSBjYXRjaCAodCkge1xcbiAgICAgICAgICAgICAgICBpZiAoXFxcImpzb25cXFwiICE9PSBlLnJlc3BvbnNlVHlwZSlcXG4gICAgICAgICAgICAgICAgICAgIHRocm93IHRcXG4gICAgICAgICAgICB9XFxuICAgICAgICBcXFwiZnVuY3Rpb25cXFwiID09IHR5cGVvZiBlLm9uRG93bmxvYWRQcm9ncmVzcyAmJiBoLmFkZEV2ZW50TGlzdGVuZXIoXFxcInByb2dyZXNzXFxcIiwgZS5vbkRvd25sb2FkUHJvZ3Jlc3MpLFxcbiAgICAgICAgXFxcImZ1bmN0aW9uXFxcIiA9PSB0eXBlb2YgZS5vblVwbG9hZFByb2dyZXNzICYmIGgudXBsb2FkICYmIGgudXBsb2FkLmFkZEV2ZW50TGlzdGVuZXIoXFxcInByb2dyZXNzXFxcIiwgZS5vblVwbG9hZFByb2dyZXNzKSxcXG4gICAgICAgIGUuY2FuY2VsVG9rZW4gJiYgZS5jYW5jZWxUb2tlbi5wcm9taXNlLnRoZW4oKGZ1bmN0aW9uKGUpIHtcXG4gICAgICAgICAgICBoICYmIChoLmFib3J0KCksXFxuICAgICAgICAgICAgbihlKSxcXG4gICAgICAgICAgICBoID0gbnVsbClcXG4gICAgICAgIH1cXG4gICAgICAgICkpLFxcbiAgICAgICAgZiB8fCAoZiA9IG51bGwpLFxcbiAgICAgICAgaC5zZW5kKGYpXFxuICAgICAgICByZXR1cm4gXFxcImh0dHBzOi8vd3d3LmRvdXlpbi5jb21cXFwiICsgaC5fdXJsXFxufVxcblxcbmZ1bmN0aW9uIGNvbW1lbnQoYXdlbWVfaWQpe1xcbiAgICAgICAgdmFyIGU9e1xcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCIvYXdlbWUvdjEvd2ViL2NvbW1lbnQvbGlzdC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJtZXRob2RcXFwiOlxcXCJnZXRcXFwiLFxcbiAgICAgICAgICAgIFxcXCJoZWFkZXJzXFxcIjp7XFxuICAgICAgICAgICAgICAgICAgICAgICAgXFxcIkFjY2VwdFxcXCI6XFxcImFwcGxpY2F0aW9uL2pzb24sIHRleHQvcGxhaW4sICovKlxcXCIsXFxuICAgICAgICAgICAgICAgICAgICAgICAgXFxcIkNvbnRlbnQtVHlwZVxcXCI6XFxcImFwcGxpY2F0aW9uL2pzb25cXFwiLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIFxcXCJ3aXRoQ3JlZGVudGlhbHNcXFwiOnRydWUsXFxuICAgICAgICAgICAgICAgICAgICAgICAgXFxcInJlZmVyZXJcXFwiOiBcXFwiaHR0cHM6Ly93d3cuZG91eWluLmNvbVxcXCJcXG4gICAgICAgICAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAgXFxcInBhcmFtc1xcXCI6e1xcbiAgICAgICAgICAgICAgICBcXFwiZGV2aWNlX3BsYXRmb3JtXFxcIjpcXFwid2ViYXBwXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcImFpZFxcXCI6NjM4MyxcXG4gICAgICAgICAgICAgICAgXFxcImNoYW5uZWxcXFwiOlxcXCJjaGFubmVsX3BjX3dlYlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJzZWFyY2hfY2hhbm5lbFxcXCI6XFxcImF3ZW1lX3ZpZGVvX3dlYlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJzb3J0X3R5cGVcXFwiOlxcXCIwXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcInB1Ymxpc2hfdGltZVxcXCI6XFxcIjBcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiYXdlbWVfaWRcXFwiOmF3ZW1lX2lkLFxcbiAgICAgICAgICAgICAgICBcXFwic2VhcmNoX3NvdXJjZVxcXCI6XFxcIm5vcm1hbF9zZWFyY2hcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwicXVlcnlfY29ycmVjdF90eXBlXFxcIjpcXFwiMVxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJpc19maWx0ZXJfc2VhcmNoXFxcIjpcXFwiMFxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJvZmZzZXRcXFwiOjAsXFxuICAgICAgICAgICAgICAgIFxcXCJjb3VudFxcXCI6MjAsXFxuICAgICAgICAgICAgICAgIFxcXCJ2ZXJzaW9uX2NvZGVcXFwiOlxcXCIxNjAxMDBcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwidmVyc2lvbl9uYW1lXFxcIjpcXFwiMTYuMS4wXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcImNvb2tpZV9lbmFibGVkXFxcIjp0cnVlLFxcXCJzY3JlZW5fd2lkdGhcXFwiOjEyODAsXFxuICAgICAgICAgICAgICAgIFxcXCJzY3JlZW5faGVpZ2h0XFxcIjo3MjAsXFxcImJyb3dzZXJfbGFuZ3VhZ2VcXFwiOlxcXCJ6aC1DTlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJicm93c2VyX3BsYXRmb3JtXFxcIjpcXFwiV2luMzJcXFwiLFxcXCJicm93c2VyX25hbWVcXFwiOlxcXCJNb3ppbGxhXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcImJyb3dzZXJfdmVyc2lvblxcXCI6XFxcIjUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvOTEuMC40NDcyLjE2NCBTYWZhcmkvNTM3LjM2XFxcIixcXG4gICAgICAgICAgICAgICAgXFxcImJyb3dzZXJfb25saW5lXFxcIjp0cnVlXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICBcXFwiYmFzZVVSTFxcXCI6XFxcIlxcXCIsXFxcInRyYW5zZm9ybVJlcXVlc3RcXFwiOltudWxsXSxcXFwidHJhbnNmb3JtUmVzcG9uc2VcXFwiOltudWxsXSxcXFwidGltZW91dFxcXCI6MCxcXG4gICAgICAgICAgICBcXFwieHNyZkNvb2tpZU5hbWVcXFwiOlxcXCJYU1JGLVRPS0VOXFxcIixcXFwieHNyZkhlYWRlck5hbWVcXFwiOlxcXCJYLVhTUkYtVE9LRU5cXFwiLFxcXCJtYXhDb250ZW50TGVuZ3RoXFxcIjotMSxcXFwibWF4Qm9keUxlbmd0aFxcXCI6LTFcXG4gICAgICAgIH07XFxuICAgICAgICB2YXIgZiA9IGUuZGF0YVxcbiAgICAgICAgICAsIGQgPSBlLmhlYWRlcnM7XFxuICAgICAgICByLmlzRm9ybURhdGEoZikgJiYgZGVsZXRlIGRbXFxcIkNvbnRlbnQtVHlwZVxcXCJdO1xcbiAgICAgICAgdmFyIGggPSBuZXcgWE1MSHR0cFJlcXVlc3Q7XFxuICAgICAgICBpZiAoZS5hdXRoKSB7XFxuICAgICAgICAgICAgdmFyIHAgPSBlLmF1dGgudXNlcm5hbWUgfHwgXFxcIlxcXCJcXG4gICAgICAgICAgICAgICwgbSA9IGUuYXV0aC5wYXNzd29yZCA/IHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChlLmF1dGgucGFzc3dvcmQpKSA6IFxcXCJcXFwiO1xcbiAgICAgICAgICAgIGQuQXV0aG9yaXphdGlvbiA9IFxcXCJCYXNpYyBcXFwiICsgYnRvYShwICsgXFxcIjpcXFwiICsgbSlcXG4gICAgICAgIH1cXG4gICAgICAgIHZhciB2ID0gZS51cmw7XFxuICAgICAgICBpZiAoaC5vcGVuKGUubWV0aG9kLnRvVXBwZXJDYXNlKCksIGEodiwgZS5wYXJhbXMsIGUucGFyYW1zU2VyaWFsaXplciksICEwKSxcXG4gICAgICAgIGgudGltZW91dCA9IGUudGltZW91dCxcXG4gICAgICAgIGgub25yZWFkeXN0YXRlY2hhbmdlID0gZnVuY3Rpb24oKSB7XFxuICAgICAgICAgICAgaWYgKGggJiYgNCA9PT0gaC5yZWFkeVN0YXRlICYmICgwICE9PSBoLnN0YXR1cyB8fCBoLnJlc3BvbnNlVVJMICYmIDAgPT09IGgucmVzcG9uc2VVUkwuaW5kZXhPZihcXFwiZmlsZTpcXFwiKSkpIHtcXG4gICAgICAgICAgICAgICAgdmFyIHIgPSBcXFwiZ2V0QWxsUmVzcG9uc2VIZWFkZXJzXFxcImluIGggPyB1KGguZ2V0QWxsUmVzcG9uc2VIZWFkZXJzKCkpIDogbnVsbFxcbiAgICAgICAgICAgICAgICAgICwgaSA9IHtcXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IGUucmVzcG9uc2VUeXBlICYmIFxcXCJ0ZXh0XFxcIiAhPT0gZS5yZXNwb25zZVR5cGUgPyBoLnJlc3BvbnNlIDogaC5yZXNwb25zZVRleHQsXFxuICAgICAgICAgICAgICAgICAgICBzdGF0dXM6IGguc3RhdHVzLFxcbiAgICAgICAgICAgICAgICAgICAgc3RhdHVzVGV4dDogaC5zdGF0dXNUZXh0LFxcbiAgICAgICAgICAgICAgICAgICAgaGVhZGVyczogcixcXG4gICAgICAgICAgICAgICAgICAgIGNvbmZpZzogZSxcXG4gICAgICAgICAgICAgICAgICAgIHJlcXVlc3Q6IGhcXG4gICAgICAgICAgICAgICAgfTtcXG4gICAgICAgICAgICAgICAgbyh0LCBuLCBpKSxcXG4gICAgICAgICAgICAgICAgaCA9IG51bGxcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgICAsXFxuICAgICAgICBoLm9uYWJvcnQgPSBmdW5jdGlvbigpIHtcXG4gICAgICAgICAgICBoICYmIChuKGwoXFxcIlJlcXVlc3QgYWJvcnRlZFxcXCIsIGUsIFxcXCJFQ09OTkFCT1JURURcXFwiLCBoKSksXFxuICAgICAgICAgICAgaCA9IG51bGwpXFxuICAgICAgICB9XFxuICAgICAgICAsXFxuICAgICAgICBoLm9uZXJyb3IgPSBmdW5jdGlvbigpIHtcXG4gICAgICAgICAgICBuKGwoXFxcIk5ldHdvcmsgRXJyb3JcXFwiLCBlLCBudWxsLCBoKSksXFxuICAgICAgICAgICAgaCA9IG51bGxcXG4gICAgICAgIH1cXG4gICAgICAgICxcXG4gICAgICAgIGgub250aW1lb3V0ID0gZnVuY3Rpb24oKSB7XFxuICAgICAgICAgICAgdmFyIHQgPSBcXFwidGltZW91dCBvZiBcXFwiICsgZS50aW1lb3V0ICsgXFxcIm1zIGV4Y2VlZGVkXFxcIjtcXG4gICAgICAgICAgICBlLnRpbWVvdXRFcnJvck1lc3NhZ2UgJiYgKHQgPSBlLnRpbWVvdXRFcnJvck1lc3NhZ2UpLFxcbiAgICAgICAgICAgIG4obCh0LCBlLCBcXFwiRUNPTk5BQk9SVEVEXFxcIiwgaCkpLFxcbiAgICAgICAgICAgIGggPSBudWxsXFxuICAgICAgICB9XFxuICAgICAgICAsXFxuICAgICAgICByLmlzU3RhbmRhcmRCcm93c2VyRW52KCkpIHsvLyAgIHZhciBnID0gKGUud2l0aENyZWRlbnRpYWxzIHx8IGModikpICYmIGUueHNyZkNvb2tpZU5hbWUgPyBpLnJlYWQoZS54c3JmQ29va2llTmFtZSkgOiB2b2lkIDA7XFxuICAgICAgICAvLyAgIGcgJiYgKGRbZS54c3JmSGVhZGVyTmFtZV0gPSBnKVxcbiAgICAgICAgfVxcbiAgICAgICAgaWYgKFxcXCJzZXRSZXF1ZXN0SGVhZGVyXFxcImluIGggJiYgci5mb3JFYWNoKGQsIChmdW5jdGlvbihlLCB0KSB7XFxuICAgICAgICAgICAgdm9pZCAwID09PSBmICYmIFxcXCJjb250ZW50LXR5cGVcXFwiID09PSB0LnRvTG93ZXJDYXNlKCkgPyBkZWxldGUgZFt0XSA6IGguc2V0UmVxdWVzdEhlYWRlcih0LCBlKVxcbiAgICAgICAgfVxcbiAgICAgICAgKSksXFxuICAgICAgICByLmlzVW5kZWZpbmVkKGUud2l0aENyZWRlbnRpYWxzKSB8fCAoaC53aXRoQ3JlZGVudGlhbHMgPSAhIWUud2l0aENyZWRlbnRpYWxzKSxcXG4gICAgICAgIGUucmVzcG9uc2VUeXBlKVxcbiAgICAgICAgICAgIHRyeSB7XFxuICAgICAgICAgICAgICAgIGgucmVzcG9uc2VUeXBlID0gZS5yZXNwb25zZVR5cGVcXG4gICAgICAgICAgICB9IGNhdGNoICh0KSB7XFxuICAgICAgICAgICAgICAgIGlmIChcXFwianNvblxcXCIgIT09IGUucmVzcG9uc2VUeXBlKVxcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgdFxcbiAgICAgICAgICAgIH1cXG4gICAgICAgIFxcXCJmdW5jdGlvblxcXCIgPT0gdHlwZW9mIGUub25Eb3dubG9hZFByb2dyZXNzICYmIGguYWRkRXZlbnRMaXN0ZW5lcihcXFwicHJvZ3Jlc3NcXFwiLCBlLm9uRG93bmxvYWRQcm9ncmVzcyksXFxuICAgICAgICBcXFwiZnVuY3Rpb25cXFwiID09IHR5cGVvZiBlLm9uVXBsb2FkUHJvZ3Jlc3MgJiYgaC51cGxvYWQgJiYgaC51cGxvYWQuYWRkRXZlbnRMaXN0ZW5lcihcXFwicHJvZ3Jlc3NcXFwiLCBlLm9uVXBsb2FkUHJvZ3Jlc3MpLFxcbiAgICAgICAgZS5jYW5jZWxUb2tlbiAmJiBlLmNhbmNlbFRva2VuLnByb21pc2UudGhlbigoZnVuY3Rpb24oZSkge1xcbiAgICAgICAgICAgIGggJiYgKGguYWJvcnQoKSxcXG4gICAgICAgICAgICBuKGUpLFxcbiAgICAgICAgICAgIGggPSBudWxsKVxcbiAgICAgICAgfVxcbiAgICAgICAgKSksXFxuICAgICAgICBmIHx8IChmID0gbnVsbCksXFxuICAgICAgICBoLnNlbmQoZilcXG4gICAgICAgIHJldHVybiBcXFwiaHR0cHM6Ly93d3cuZG91eWluLmNvbVxcXCIgKyBoLl91cmxcXG5cXG5cXG59XFxuXFxuZnVuY3Rpb24gYXdlbWVfcG9zdChzZWNfdXNlcl9pZCl7XFxuICAgICAgICB2YXIgZT17XFxuICAgICAgICAgICAgXFxcInVybFxcXCI6XFxcIi9hd2VtZS92MS93ZWIvYXdlbWUvcG9zdC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJtZXRob2RcXFwiOlxcXCJnZXRcXFwiLFxcbiAgICAgICAgICAgIFxcXCJoZWFkZXJzXFxcIjp7XFxuICAgICAgICAgICAgICAgICAgICAgICAgXFxcIkFjY2VwdFxcXCI6XFxcImFwcGxpY2F0aW9uL2pzb24sIHRleHQvcGxhaW4sICovKlxcXCIsXFxuICAgICAgICAgICAgICAgICAgICAgICAgXFxcIkNvbnRlbnQtVHlwZVxcXCI6XFxcImFwcGxpY2F0aW9uL2pzb25cXFwiLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIFxcXCJ3aXRoQ3JlZGVudGlhbHNcXFwiOnRydWVcXG4gICAgICAgICAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAgXFxcInBhcmFtc1xcXCI6e1xcbiAgICAgICAgICAgICAgICBcXFwiZGV2aWNlX3BsYXRmb3JtXFxcIjpcXFwid2ViYXBwXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcImFpZFxcXCI6NjM4MyxcXG4gICAgICAgICAgICAgICAgXFxcImNoYW5uZWxcXFwiOlxcXCJjaGFubmVsX3BjX3dlYlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJzZWFyY2hfY2hhbm5lbFxcXCI6XFxcImF3ZW1lX3ZpZGVvX3dlYlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJwdWJsaXNoX3ZpZGVvX3N0cmF0ZWd5X3R5cGVcXFwiOlxcXCIyXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcInNlY191c2VyX2lkXFxcIjpzZWNfdXNlcl9pZCxcXG4gICAgICAgICAgICAgICAgXFxcInNlYXJjaF9zb3VyY2VcXFwiOlxcXCJub3JtYWxfc2VhcmNoXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcInF1ZXJ5X2NvcnJlY3RfdHlwZVxcXCI6XFxcIjFcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiaXNfZmlsdGVyX3NlYXJjaFxcXCI6XFxcIjBcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiY291bnRcXFwiOjEwLFxcbiAgICAgICAgICAgICAgICBcXFwidmVyc2lvbl9jb2RlXFxcIjpcXFwiMTYwMTAwXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcInZlcnNpb25fbmFtZVxcXCI6XFxcIjE2LjEuMFxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJjb29raWVfZW5hYmxlZFxcXCI6dHJ1ZSxcXFwic2NyZWVuX3dpZHRoXFxcIjoxMjgwLFxcbiAgICAgICAgICAgICAgICBcXFwic2NyZWVuX2hlaWdodFxcXCI6NzIwLFxcXCJicm93c2VyX2xhbmd1YWdlXFxcIjpcXFwiemgtQ05cXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiYnJvd3Nlcl9wbGF0Zm9ybVxcXCI6XFxcIldpbjMyXFxcIixcXFwiYnJvd3Nlcl9uYW1lXFxcIjpcXFwiTW96aWxsYVxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJicm93c2VyX3ZlcnNpb25cXFwiOlxcXCI1LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzkxLjAuNDQ3Mi4xNjQgU2FmYXJpLzUzNy4zNlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJicm93c2VyX29ubGluZVxcXCI6dHJ1ZVxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAgXFxcImJhc2VVUkxcXFwiOlxcXCJcXFwiLFxcXCJ0cmFuc2Zvcm1SZXF1ZXN0XFxcIjpbbnVsbF0sXFxcInRyYW5zZm9ybVJlc3BvbnNlXFxcIjpbbnVsbF0sXFxcInRpbWVvdXRcXFwiOjAsXFxuICAgICAgICAgICAgXFxcInhzcmZDb29raWVOYW1lXFxcIjpcXFwiWFNSRi1UT0tFTlxcXCIsXFxcInhzcmZIZWFkZXJOYW1lXFxcIjpcXFwiWC1YU1JGLVRPS0VOXFxcIixcXFwibWF4Q29udGVudExlbmd0aFxcXCI6LTEsXFxcIm1heEJvZHlMZW5ndGhcXFwiOi0xXFxuICAgICAgICB9O1xcbiAgICAgICAgdmFyIGYgPSBlLmRhdGFcXG4gICAgICAgICAgLCBkID0gZS5oZWFkZXJzO1xcbiAgICAgICAgci5pc0Zvcm1EYXRhKGYpICYmIGRlbGV0ZSBkW1xcXCJDb250ZW50LVR5cGVcXFwiXTtcXG4gICAgICAgIHZhciBoID0gbmV3IFhNTEh0dHBSZXF1ZXN0O1xcbiAgICAgICAgaWYgKGUuYXV0aCkge1xcbiAgICAgICAgICAgIHZhciBwID0gZS5hdXRoLnVzZXJuYW1lIHx8IFxcXCJcXFwiXFxuICAgICAgICAgICAgICAsIG0gPSBlLmF1dGgucGFzc3dvcmQgPyB1bmVzY2FwZShlbmNvZGVVUklDb21wb25lbnQoZS5hdXRoLnBhc3N3b3JkKSkgOiBcXFwiXFxcIjtcXG4gICAgICAgICAgICBkLkF1dGhvcml6YXRpb24gPSBcXFwiQmFzaWMgXFxcIiArIGJ0b2EocCArIFxcXCI6XFxcIiArIG0pXFxuICAgICAgICB9XFxuICAgICAgICB2YXIgdiA9IGUudXJsO1xcbiAgICAgICAgaWYgKGgub3BlbihlLm1ldGhvZC50b1VwcGVyQ2FzZSgpLCBhKHYsIGUucGFyYW1zLCBlLnBhcmFtc1NlcmlhbGl6ZXIpLCAhMCksXFxuICAgICAgICBoLnRpbWVvdXQgPSBlLnRpbWVvdXQsXFxuICAgICAgICBoLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uKCkge1xcbiAgICAgICAgICAgIGlmIChoICYmIDQgPT09IGgucmVhZHlTdGF0ZSAmJiAoMCAhPT0gaC5zdGF0dXMgfHwgaC5yZXNwb25zZVVSTCAmJiAwID09PSBoLnJlc3BvbnNlVVJMLmluZGV4T2YoXFxcImZpbGU6XFxcIikpKSB7XFxuICAgICAgICAgICAgICAgIHZhciByID0gXFxcImdldEFsbFJlc3BvbnNlSGVhZGVyc1xcXCJpbiBoID8gdShoLmdldEFsbFJlc3BvbnNlSGVhZGVycygpKSA6IG51bGxcXG4gICAgICAgICAgICAgICAgICAsIGkgPSB7XFxuICAgICAgICAgICAgICAgICAgICBkYXRhOiBlLnJlc3BvbnNlVHlwZSAmJiBcXFwidGV4dFxcXCIgIT09IGUucmVzcG9uc2VUeXBlID8gaC5yZXNwb25zZSA6IGgucmVzcG9uc2VUZXh0LFxcbiAgICAgICAgICAgICAgICAgICAgc3RhdHVzOiBoLnN0YXR1cyxcXG4gICAgICAgICAgICAgICAgICAgIHN0YXR1c1RleHQ6IGguc3RhdHVzVGV4dCxcXG4gICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHIsXFxuICAgICAgICAgICAgICAgICAgICBjb25maWc6IGUsXFxuICAgICAgICAgICAgICAgICAgICByZXF1ZXN0OiBoXFxuICAgICAgICAgICAgICAgIH07XFxuICAgICAgICAgICAgICAgIG8odCwgbiwgaSksXFxuICAgICAgICAgICAgICAgIGggPSBudWxsXFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICAgICAgLFxcbiAgICAgICAgaC5vbmFib3J0ID0gZnVuY3Rpb24oKSB7XFxuICAgICAgICAgICAgaCAmJiAobihsKFxcXCJSZXF1ZXN0IGFib3J0ZWRcXFwiLCBlLCBcXFwiRUNPTk5BQk9SVEVEXFxcIiwgaCkpLFxcbiAgICAgICAgICAgIGggPSBudWxsKVxcbiAgICAgICAgfVxcbiAgICAgICAgLFxcbiAgICAgICAgaC5vbmVycm9yID0gZnVuY3Rpb24oKSB7XFxuICAgICAgICAgICAgbihsKFxcXCJOZXR3b3JrIEVycm9yXFxcIiwgZSwgbnVsbCwgaCkpLFxcbiAgICAgICAgICAgIGggPSBudWxsXFxuICAgICAgICB9XFxuICAgICAgICAsXFxuICAgICAgICBoLm9udGltZW91dCA9IGZ1bmN0aW9uKCkge1xcbiAgICAgICAgICAgIHZhciB0ID0gXFxcInRpbWVvdXQgb2YgXFxcIiArIGUudGltZW91dCArIFxcXCJtcyBleGNlZWRlZFxcXCI7XFxuICAgICAgICAgICAgZS50aW1lb3V0RXJyb3JNZXNzYWdlICYmICh0ID0gZS50aW1lb3V0RXJyb3JNZXNzYWdlKSxcXG4gICAgICAgICAgICBuKGwodCwgZSwgXFxcIkVDT05OQUJPUlRFRFxcXCIsIGgpKSxcXG4gICAgICAgICAgICBoID0gbnVsbFxcbiAgICAgICAgfVxcbiAgICAgICAgLFxcbiAgICAgICAgci5pc1N0YW5kYXJkQnJvd3NlckVudigpKSB7Ly8gICB2YXIgZyA9IChlLndpdGhDcmVkZW50aWFscyB8fCBjKHYpKSAmJiBlLnhzcmZDb29raWVOYW1lID8gaS5yZWFkKGUueHNyZkNvb2tpZU5hbWUpIDogdm9pZCAwO1xcbiAgICAgICAgLy8gICBnICYmIChkW2UueHNyZkhlYWRlck5hbWVdID0gZylcXG4gICAgICAgIH1cXG4gICAgICAgIGlmIChcXFwic2V0UmVxdWVzdEhlYWRlclxcXCJpbiBoICYmIHIuZm9yRWFjaChkLCAoZnVuY3Rpb24oZSwgdCkge1xcbiAgICAgICAgICAgIHZvaWQgMCA9PT0gZiAmJiBcXFwiY29udGVudC10eXBlXFxcIiA9PT0gdC50b0xvd2VyQ2FzZSgpID8gZGVsZXRlIGRbdF0gOiBoLnNldFJlcXVlc3RIZWFkZXIodCwgZSlcXG4gICAgICAgIH1cXG4gICAgICAgICkpLFxcbiAgICAgICAgci5pc1VuZGVmaW5lZChlLndpdGhDcmVkZW50aWFscykgfHwgKGgud2l0aENyZWRlbnRpYWxzID0gISFlLndpdGhDcmVkZW50aWFscyksXFxuICAgICAgICBlLnJlc3BvbnNlVHlwZSlcXG4gICAgICAgICAgICB0cnkge1xcbiAgICAgICAgICAgICAgICBoLnJlc3BvbnNlVHlwZSA9IGUucmVzcG9uc2VUeXBlXFxuICAgICAgICAgICAgfSBjYXRjaCAodCkge1xcbiAgICAgICAgICAgICAgICBpZiAoXFxcImpzb25cXFwiICE9PSBlLnJlc3BvbnNlVHlwZSlcXG4gICAgICAgICAgICAgICAgICAgIHRocm93IHRcXG4gICAgICAgICAgICB9XFxuICAgICAgICBcXFwiZnVuY3Rpb25cXFwiID09IHR5cGVvZiBlLm9uRG93bmxvYWRQcm9ncmVzcyAmJiBoLmFkZEV2ZW50TGlzdGVuZXIoXFxcInByb2dyZXNzXFxcIiwgZS5vbkRvd25sb2FkUHJvZ3Jlc3MpLFxcbiAgICAgICAgXFxcImZ1bmN0aW9uXFxcIiA9PSB0eXBlb2YgZS5vblVwbG9hZFByb2dyZXNzICYmIGgudXBsb2FkICYmIGgudXBsb2FkLmFkZEV2ZW50TGlzdGVuZXIoXFxcInByb2dyZXNzXFxcIiwgZS5vblVwbG9hZFByb2dyZXNzKSxcXG4gICAgICAgIGUuY2FuY2VsVG9rZW4gJiYgZS5jYW5jZWxUb2tlbi5wcm9taXNlLnRoZW4oKGZ1bmN0aW9uKGUpIHtcXG4gICAgICAgICAgICBoICYmIChoLmFib3J0KCksXFxuICAgICAgICAgICAgbihlKSxcXG4gICAgICAgICAgICBoID0gbnVsbClcXG4gICAgICAgIH1cXG4gICAgICAgICkpLFxcbiAgICAgICAgZiB8fCAoZiA9IG51bGwpLFxcbiAgICAgICAgaC5zZW5kKGYpO1xcbiAgICAgICAgcmV0dXJuIFxcXCJodHRwczovL3d3dy5kb3V5aW4uY29tXFxcIiArIGguX3VybFxcblxcblxcbn1cXG5cXG5mdW5jdGlvbiB1c2VyX2luZm8oc2VjX3VzZXJfaWQpe1xcbiAgICAgICAgdmFyIGU9e1xcbiAgICAgICAgICAgIFxcXCJ1cmxcXFwiOlxcXCIvYXdlbWUvdjEvd2ViL3VzZXIvcHJvZmlsZS9vdGhlci9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJtZXRob2RcXFwiOlxcXCJnZXRcXFwiLFxcbiAgICAgICAgICAgIFxcXCJoZWFkZXJzXFxcIjp7XFxuICAgICAgICAgICAgICAgICAgICAgICAgXFxcIkFjY2VwdFxcXCI6XFxcImFwcGxpY2F0aW9uL2pzb24sIHRleHQvcGxhaW4sICovKlxcXCIsXFxuICAgICAgICAgICAgICAgICAgICAgICAgXFxcIkNvbnRlbnQtVHlwZVxcXCI6XFxcImFwcGxpY2F0aW9uL2pzb25cXFwiLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIFxcXCJ3aXRoQ3JlZGVudGlhbHNcXFwiOnRydWVcXG4gICAgICAgICAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAgXFxcInBhcmFtc1xcXCI6e1xcbiAgICAgICAgICAgICAgICBcXFwiZGV2aWNlX3BsYXRmb3JtXFxcIjpcXFwid2ViYXBwXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcImFpZFxcXCI6NjM4MyxcXG4gICAgICAgICAgICAgICAgXFxcImNoYW5uZWxcXFwiOlxcXCJjaGFubmVsX3BjX3dlYlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJwdWJsaXNoX3ZpZGVvX3N0cmF0ZWd5X3R5cGVcXFwiOlxcXCIyXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcInNlY191c2VyX2lkXFxcIjpzZWNfdXNlcl9pZCxcXG4gICAgICAgICAgICAgICAgXFxcInNvdXJjZVxcXCI6XFxcImNoYW5uZWxfcGNfd2ViXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcInZlcnNpb25fY29kZVxcXCI6XFxcIjE2MDEwMFxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJ2ZXJzaW9uX25hbWVcXFwiOlxcXCIxNi4xLjBcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiY29va2llX2VuYWJsZWRcXFwiOnRydWUsXFxuICAgICAgICAgICAgICAgIFxcXCJzY3JlZW5fd2lkdGhcXFwiOjEyODAsXFxuICAgICAgICAgICAgICAgIFxcXCJzY3JlZW5faGVpZ2h0XFxcIjo3MjAsXFxcImJyb3dzZXJfbGFuZ3VhZ2VcXFwiOlxcXCJ6aC1DTlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJicm93c2VyX3BsYXRmb3JtXFxcIjpcXFwiV2luMzJcXFwiLFxcXCJicm93c2VyX25hbWVcXFwiOlxcXCJNb3ppbGxhXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcImJyb3dzZXJfdmVyc2lvblxcXCI6XFxcIjUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvOTEuMC40NDcyLjE2NCBTYWZhcmkvNTM3LjM2XFxcIixcXG4gICAgICAgICAgICAgICAgXFxcImJyb3dzZXJfb25saW5lXFxcIjp0cnVlXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICBcXFwiYmFzZVVSTFxcXCI6XFxcIlxcXCIsXFxcInRyYW5zZm9ybVJlcXVlc3RcXFwiOltudWxsXSxcXFwidHJhbnNmb3JtUmVzcG9uc2VcXFwiOltudWxsXSxcXFwidGltZW91dFxcXCI6MCxcXG4gICAgICAgICAgICBcXFwieHNyZkNvb2tpZU5hbWVcXFwiOlxcXCJYU1JGLVRPS0VOXFxcIixcXFwieHNyZkhlYWRlck5hbWVcXFwiOlxcXCJYLVhTUkYtVE9LRU5cXFwiLFxcXCJtYXhDb250ZW50TGVuZ3RoXFxcIjotMSxcXFwibWF4Qm9keUxlbmd0aFxcXCI6LTFcXG4gICAgICAgIH07XFxuICAgICAgICB2YXIgZiA9IGUuZGF0YVxcbiAgICAgICAgICAsIGQgPSBlLmhlYWRlcnM7XFxuICAgICAgICByLmlzRm9ybURhdGEoZikgJiYgZGVsZXRlIGRbXFxcIkNvbnRlbnQtVHlwZVxcXCJdO1xcbiAgICAgICAgdmFyIGggPSBuZXcgWE1MSHR0cFJlcXVlc3Q7XFxuICAgICAgICBpZiAoZS5hdXRoKSB7XFxuICAgICAgICAgICAgdmFyIHAgPSBlLmF1dGgudXNlcm5hbWUgfHwgXFxcIlxcXCJcXG4gICAgICAgICAgICAgICwgbSA9IGUuYXV0aC5wYXNzd29yZCA/IHVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChlLmF1dGgucGFzc3dvcmQpKSA6IFxcXCJcXFwiO1xcbiAgICAgICAgICAgIGQuQXV0aG9yaXphdGlvbiA9IFxcXCJCYXNpYyBcXFwiICsgYnRvYShwICsgXFxcIjpcXFwiICsgbSlcXG4gICAgICAgIH1cXG4gICAgICAgIHZhciB2ID0gZS51cmw7XFxuICAgICAgICBpZiAoaC5vcGVuKGUubWV0aG9kLnRvVXBwZXJDYXNlKCksIGEodiwgZS5wYXJhbXMsIGUucGFyYW1zU2VyaWFsaXplciksICEwKSxcXG4gICAgICAgIGgudGltZW91dCA9IGUudGltZW91dCxcXG4gICAgICAgIGgub25yZWFkeXN0YXRlY2hhbmdlID0gZnVuY3Rpb24oKSB7XFxuICAgICAgICAgICAgaWYgKGggJiYgNCA9PT0gaC5yZWFkeVN0YXRlICYmICgwICE9PSBoLnN0YXR1cyB8fCBoLnJlc3BvbnNlVVJMICYmIDAgPT09IGgucmVzcG9uc2VVUkwuaW5kZXhPZihcXFwiZmlsZTpcXFwiKSkpIHtcXG4gICAgICAgICAgICAgICAgdmFyIHIgPSBcXFwiZ2V0QWxsUmVzcG9uc2VIZWFkZXJzXFxcImluIGggPyB1KGguZ2V0QWxsUmVzcG9uc2VIZWFkZXJzKCkpIDogbnVsbFxcbiAgICAgICAgICAgICAgICAgICwgaSA9IHtcXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IGUucmVzcG9uc2VUeXBlICYmIFxcXCJ0ZXh0XFxcIiAhPT0gZS5yZXNwb25zZVR5cGUgPyBoLnJlc3BvbnNlIDogaC5yZXNwb25zZVRleHQsXFxuICAgICAgICAgICAgICAgICAgICBzdGF0dXM6IGguc3RhdHVzLFxcbiAgICAgICAgICAgICAgICAgICAgc3RhdHVzVGV4dDogaC5zdGF0dXNUZXh0LFxcbiAgICAgICAgICAgICAgICAgICAgaGVhZGVyczogcixcXG4gICAgICAgICAgICAgICAgICAgIGNvbmZpZzogZSxcXG4gICAgICAgICAgICAgICAgICAgIHJlcXVlc3Q6IGhcXG4gICAgICAgICAgICAgICAgfTtcXG4gICAgICAgICAgICAgICAgbyh0LCBuLCBpKSxcXG4gICAgICAgICAgICAgICAgaCA9IG51bGxcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgICAsXFxuICAgICAgICBoLm9uYWJvcnQgPSBmdW5jdGlvbigpIHtcXG4gICAgICAgICAgICBoICYmIChuKGwoXFxcIlJlcXVlc3QgYWJvcnRlZFxcXCIsIGUsIFxcXCJFQ09OTkFCT1JURURcXFwiLCBoKSksXFxuICAgICAgICAgICAgaCA9IG51bGwpXFxuICAgICAgICB9XFxuICAgICAgICAsXFxuICAgICAgICBoLm9uZXJyb3IgPSBmdW5jdGlvbigpIHtcXG4gICAgICAgICAgICBuKGwoXFxcIk5ldHdvcmsgRXJyb3JcXFwiLCBlLCBudWxsLCBoKSksXFxuICAgICAgICAgICAgaCA9IG51bGxcXG4gICAgICAgIH1cXG4gICAgICAgICxcXG4gICAgICAgIGgub250aW1lb3V0ID0gZnVuY3Rpb24oKSB7XFxuICAgICAgICAgICAgdmFyIHQgPSBcXFwidGltZW91dCBvZiBcXFwiICsgZS50aW1lb3V0ICsgXFxcIm1zIGV4Y2VlZGVkXFxcIjtcXG4gICAgICAgICAgICBlLnRpbWVvdXRFcnJvck1lc3NhZ2UgJiYgKHQgPSBlLnRpbWVvdXRFcnJvck1lc3NhZ2UpLFxcbiAgICAgICAgICAgIG4obCh0LCBlLCBcXFwiRUNPTk5BQk9SVEVEXFxcIiwgaCkpLFxcbiAgICAgICAgICAgIGggPSBudWxsXFxuICAgICAgICB9XFxuICAgICAgICAsXFxuICAgICAgICByLmlzU3RhbmRhcmRCcm93c2VyRW52KCkpIHsvLyAgIHZhciBnID0gKGUud2l0aENyZWRlbnRpYWxzIHx8IGModikpICYmIGUueHNyZkNvb2tpZU5hbWUgPyBpLnJlYWQoZS54c3JmQ29va2llTmFtZSkgOiB2b2lkIDA7XFxuICAgICAgICAvLyAgIGcgJiYgKGRbZS54c3JmSGVhZGVyTmFtZV0gPSBnKVxcbiAgICAgICAgfVxcbiAgICAgICAgaWYgKFxcXCJzZXRSZXF1ZXN0SGVhZGVyXFxcImluIGggJiYgci5mb3JFYWNoKGQsIChmdW5jdGlvbihlLCB0KSB7XFxuICAgICAgICAgICAgdm9pZCAwID09PSBmICYmIFxcXCJjb250ZW50LXR5cGVcXFwiID09PSB0LnRvTG93ZXJDYXNlKCkgPyBkZWxldGUgZFt0XSA6IGguc2V0UmVxdWVzdEhlYWRlcih0LCBlKVxcbiAgICAgICAgfVxcbiAgICAgICAgKSksXFxuICAgICAgICByLmlzVW5kZWZpbmVkKGUud2l0aENyZWRlbnRpYWxzKSB8fCAoaC53aXRoQ3JlZGVudGlhbHMgPSAhIWUud2l0aENyZWRlbnRpYWxzKSxcXG4gICAgICAgIGUucmVzcG9uc2VUeXBlKVxcbiAgICAgICAgICAgIHRyeSB7XFxuICAgICAgICAgICAgICAgIGgucmVzcG9uc2VUeXBlID0gZS5yZXNwb25zZVR5cGVcXG4gICAgICAgICAgICB9IGNhdGNoICh0KSB7XFxuICAgICAgICAgICAgICAgIGlmIChcXFwianNvblxcXCIgIT09IGUucmVzcG9uc2VUeXBlKVxcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgdFxcbiAgICAgICAgICAgIH1cXG4gICAgICAgIFxcXCJmdW5jdGlvblxcXCIgPT0gdHlwZW9mIGUub25Eb3dubG9hZFByb2dyZXNzICYmIGguYWRkRXZlbnRMaXN0ZW5lcihcXFwicHJvZ3Jlc3NcXFwiLCBlLm9uRG93bmxvYWRQcm9ncmVzcyksXFxuICAgICAgICBcXFwiZnVuY3Rpb25cXFwiID09IHR5cGVvZiBlLm9uVXBsb2FkUHJvZ3Jlc3MgJiYgaC51cGxvYWQgJiYgaC51cGxvYWQuYWRkRXZlbnRMaXN0ZW5lcihcXFwicHJvZ3Jlc3NcXFwiLCBlLm9uVXBsb2FkUHJvZ3Jlc3MpLFxcbiAgICAgICAgZS5jYW5jZWxUb2tlbiAmJiBlLmNhbmNlbFRva2VuLnByb21pc2UudGhlbigoZnVuY3Rpb24oZSkge1xcbiAgICAgICAgICAgIGggJiYgKGguYWJvcnQoKSxcXG4gICAgICAgICAgICBuKGUpLFxcbiAgICAgICAgICAgIGggPSBudWxsKVxcbiAgICAgICAgfVxcbiAgICAgICAgKSksXFxuICAgICAgICBmIHx8IChmID0gbnVsbCksXFxuICAgICAgICBoLnNlbmQoZik7XFxuICAgICAgICByZXR1cm4gXFxcImh0dHBzOi8vd3d3LmRvdXlpbi5jb21cXFwiICsgaC5fdXJsXFxuXFxuXFxufVxcblxcbmZ1bmN0aW9uIG1ha2VTaWduYXR1cmVVcmwoZSkge1xcbiAgICB2YXIgZiA9IGUuZGF0YSwgZCA9IGUuaGVhZGVycztcXG4gICAgci5pc0Zvcm1EYXRhKGYpICYmIGRlbGV0ZSBkW1xcXCJDb250ZW50LVR5cGVcXFwiXTtcXG4gICAgdmFyIGggPSBuZXcgWE1MSHR0cFJlcXVlc3Q7XFxuICAgIHZhciB2ID0gZS51cmw7XFxuICAgIGgub3BlbihlLm1ldGhvZC50b1VwcGVyQ2FzZSgpLCBhKHYsIGUucGFyYW1zLCBlLnBhcmFtc1NlcmlhbGl6ZXIpLCAhMClcXG4gICAgaC5zZW5kKGYpXFxuICAgIHJldHVybiBoLl91cmxcXG59XCJ9LHtcIm5hbWVcIjpcIuaKlumfs1wiLFwicGF0aFwiOlwiZG91eWluXCIsXCJydWxlXCI6XCJjb25zdCBkb3V5aW4gPSB7XFxuICAgIGQ6IFtdLFxcbiAgICBlbXB0eTogJ2hpa2VyOi8vZW1wdHknLFxcbiAgICB1YTogXFxcIk1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS8xMDguMC4wLjAgU2FmYXJpLzUzNy4zNlxcXCIsXFxuICAgIGZpbGVzOiB7XFxuICAgICAgICBjb29raWVUZW1wOiAnaGlrZXI6Ly9maWxlcy9ydWxlcy9UeXJhbnRHL2Nvb2tpZS9kb3V5aW4udHh0JyxcXG4gICAgICAgIGNoYW5uZWxzOiAnaGlrZXI6Ly9maWxlcy9ydWxlcy9UeXJhbnRHL2pzL2RvdXlpbl93ZWJfY2hhbm5lbHMuanNvbicsXFxuICAgIH0sXFxuICAgIHZhcmlhYmxlOiB7XFxuICAgICAgICBob3N0OiAnaHR0cHM6Ly93d3cuZG91eWluLmNvbScsXFxuICAgICAgICBsaXZlOiAnaHR0cHM6Ly9saXZlLmRvdXlpbi5jb20nLFxcbiAgICAgICAgdGFiczogW1xcbiAgICAgICAgICAgIHt0aXRsZTogJ+aOqOiNkCcsIG5hbWU6ICdmZWVkJ30sXFxuICAgICAgICAgICAge3RpdGxlOiAn55u05pKtJywgbmFtZTogJ2xpdmUnfSxcXG4gICAgICAgICAgICAvLyB7dGl0bGU6ICfng63ngrknLCBuYW1lOiAnaG90J30sXFxuICAgICAgICAgICAgLy8ge3RpdGxlOiAn5pys5Zyw5YWz5rOoJywgbmFtZTogJ2xvY2FsJ30sXFxuICAgICAgICAgICAgLy8ge3RpdGxlOiAn5oqW6Z+z5YWz5rOoJywgbmFtZTogJ2F0dGVudGlvbid9LFxcbiAgICAgICAgICAgIHt0aXRsZTogJ+iuvue9ricsIG5hbWU6ICdzZXR0aW5nJ30sXFxuICAgICAgICBdLFxcbiAgICAgICAgZmVlZFRhYjogW1xcbiAgICAgICAgICAgIHt0aXRsZTogJ+WFqOmDqCcsIGlkOiAnJ30sXFxuICAgICAgICAgICAge3RpdGxlOiAn5aix5LmQJywgaWQ6ICczMDAyMDEnfSxcXG4gICAgICAgICAgICB7dGl0bGU6ICfnn6Xor4YnLCBpZDogJzMwMDIwMyd9LFxcbiAgICAgICAgICAgIHt0aXRsZTogJ+S6jOasoeWFgycsIGlkOiAnMzAwMjA2J30sXFxuICAgICAgICAgICAge3RpdGxlOiAn5ri45oiPJywgaWQ6ICczMDAyMDUnfSxcXG4gICAgICAgICAgICB7dGl0bGU6ICfnvo7po58nLCBpZDogJzMwMDIwNCd9LFxcbiAgICAgICAgICAgIHt0aXRsZTogJ+S9k+iCsicsIGlkOiAnMzAwMjA3J30sXFxuICAgICAgICAgICAge3RpdGxlOiAn5pe25bCaJywgaWQ6ICczMDAyMDgnfSxcXG4gICAgICAgICAgICB7dGl0bGU6ICfpn7PkuZAnLCBpZDogJzMwMDIwOSd9LFxcbiAgICAgICAgXSxcXG4gICAgfSxcXG4gICAgZGF0YToge1xcbiAgICAgICAgdGFiX3NlbGVjdGVkOiBnZXRNeVZhcigndGcuZHlfd2ViLmNsYXNzLnRhYl9zZWxlY3RlZCcsICcwJyksXFxuICAgICAgICBmZWVkX3RhYl9zZWxlY3RlZDogZ2V0TXlWYXIoJ3RnLmR5X3dlYi5jbGFzcy5mZWVkX3RhYl9zZWxlY3RlZCcsICcwJyksXFxuICAgICAgICBsaXZlXzFzdF90YWJfc2VsZWN0ZWQ6IGdldE15VmFyKCd0Zy5keV93ZWIuY2xhc3MubGl2ZV8xc3RfdGFiX3NlbGVjdGVkJywgJzAnKSxcXG4gICAgICAgIGxpdmVfMm5kX3RhYl9zZWxlY3RlZDogZ2V0TXlWYXIoJ3RnLmR5X3dlYi5jbGFzcy5saXZlXzJuZF90YWJfc2VsZWN0ZWQnLCAnMCcpLFxcbiAgICAgICAgY2hhbm5lbF9zZWxlY3Q6IGdldE15VmFyKCd0Zy5keV93ZWIuY2xhc3MuY2hhbm5lbF9zZWxlY3QnLCAnMCcpLFxcbiAgICAgICAgbGl2ZV91cmw6IGdldE15VmFyKCd0Zy5keV93ZWIudXJsLmxpdmVfdXJsJywgJ2h0dHBzOi8vbGl2ZS5kb3V5aW4uY29tJyksXFxuICAgICAgICBtYXhfY3Vyc29yOiBnZXRNeVZhcigndGcuZHlfd2ViLnBhZ2UubWF4X2N1cnNvcicsICcnKSxcXG4gICAgfSxcXG4gICAgcmVxdWVzdDogKGUpID0+IHtcXG4gICAgICAgIGNvbnN0IGNvb2tpZV9jb250ZW50ID0gcmVxdWVzdChkb3V5aW4uZmlsZXMuY29va2llVGVtcClcXG4gICAgICAgIGV2YWwoSlNPTi5wYXJzZShyZXF1ZXN0KCdoaWtlcjovL3BhZ2Uvc2lnbmF0dXJlJykpLnJ1bGUpXFxuICAgICAgICBjb25zdCB1cmwgPSBtYWtlU2lnbmF0dXJlVXJsKGUpXFxuXFxuICAgICAgICBsZXQgZGF0YV9qc29uID0gZmV0Y2godXJsLCB7XFxuICAgICAgICAgICAgbWV0aG9kOiBlLm1ldGhvZCxcXG4gICAgICAgICAgICBoZWFkZXJzOiB7XFxuICAgICAgICAgICAgICAgIFxcXCJyZWZlcmVyXFxcIiA6IFxcXCJodHRwczovL3d3dy5kb3V5aW4uY29tL1xcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJvcmlnaW5cXFwiIDogXFxcImh0dHBzOi8vd3d3LmRvdXlpbi5jb21cXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiY29va2llXFxcIjogY29va2llX2NvbnRlbnQsXFxuICAgICAgICAgICAgICAgIFxcXCJBY2NlcHRcXFwiOiAnYXBwbGljYXRpb24vanNvbiwgdGV4dC9wbGFpbiwgKi8qJyxcXG4gICAgICAgICAgICAgICAgXFxcIlVzZXItQWdlbnRcXFwiOiBkb3V5aW4udWEsXFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfSlcXG5cXG4gICAgICAgIHJldHVybiBkYXRhX2pzb25cXG4gICAgfSxcXG4gICAgY2hhbm5lbHNJbml0OiAoKSA9PiB7XFxuICAgICAgICBsZXQgY2hhbm5lbHMgPSBbXVxcblxcbiAgICAgICAgdHJ5IHtcXG4gICAgICAgICAgICBpZiAoZmV0Y2goZG91eWluLmZpbGVzLmNoYW5uZWxzKSkge1xcbiAgICAgICAgICAgICAgICBsZXQgbG9jYWxfY2hhbm5lbHMgPSBmZXRjaChkb3V5aW4uZmlsZXMuY2hhbm5lbHMpXFxuICAgICAgICAgICAgICAgIGNoYW5uZWxzID0gSlNPTi5wYXJzZShsb2NhbF9jaGFubmVscylcXG4gICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICBsZXQgZGVmYXVsdENoYW5uZWxzID0gW1xcbiAgICAgICAgICAgICAgICAgICAge3RpdGxlOiAn6ZW/5pyf5rSX5rakTG9uZ3dhc2hpbmcnLCBzZWNfdWlkOiAnTVM0d0xqQUJBQUFBRzZyeGtyRVY1Ym51WEFMMUs4dWlZOGRaS2tGQkxzemhZdzFubTVfb2hJUScsIGF2YXRhcl91cmw6ICdodHRwczovL3AzLXBjLmRvdXlpbnBpYy5jb20vaW1nL2F3ZW1lLWF2YXRhci90b3MtY24tYXZ0LTAwMTVfZjg4MjZiMmZlMjQ2OTEzZjY5NmEyY2E5NGE4MzJlMjN+YzVfMzAweDMwMC5qcGVnP2Zyb209Mjk1NjAxMzY2Mid9XFxuICAgICAgICAgICAgICAgIF1cXG4gICAgICAgICAgICAgICAgd3JpdGVGaWxlKGRvdXlpbi5maWxlcy5jaGFubmVscywgSlNPTi5zdHJpbmdpZnkoZGVmYXVsdENoYW5uZWxzKSlcXG4gICAgICAgICAgICAgICAgY2hhbm5lbHMgPSBkZWZhdWx0Q2hhbm5lbHNcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9IGNhdGNoIChlKXt9XFxuXFxuICAgICAgICByZXR1cm4gY2hhbm5lbHNcXG4gICAgfSxcXG4gICAgYmFzZVBhcnNlOiAoKSA9PiB7XFxuICAgICAgICAvLyBldmFsKEpTT04ucGFyc2UocmVxdWVzdCgnaGlrZXI6Ly9wYWdlL3NpZ25hdHVyZScpKS5ydWxlKVxcblxcbiAgICAgICAgY29uc3QgY29va2llX2NvbnRlbnQgPSByZXF1ZXN0KGRvdXlpbi5maWxlcy5jb29raWVUZW1wKVxcbiAgICAgICAgY29uc3QgaGFzX2xvZ2luID0gY29va2llX2NvbnRlbnQubWF0Y2goLyhefCApcGFzc3BvcnRfYXNzaXN0X3VzZXI9KFteO10qKSg7fCQpLylcXG5cXG4gICAgICAgIGlmIChoYXNfbG9naW4pIHtcXG4gICAgICAgICAgICBjb25zdCBwYWdlID0gcGFyc2VJbnQoTVlfVVJMLnNwbGl0KCcjIycpWzFdKVxcbiAgICAgICAgICAgIGNvbnN0IGNoYW5uZWxzID0gZG91eWluLmNoYW5uZWxzSW5pdCgpXFxuXFxuICAgICAgICAgICAgaWYgKHBhZ2UgPT09IDEpIHtcXG4gICAgICAgICAgICAgICAgLypkb3V5aW4uZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgICAgIHVybDogJChkb3V5aW4uZW1wdHkrXFxcIiNmdWxsVGhlbWUjJCRmeXBhZ2VcXFwiKS5ydWxlKCgpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBkb3V5aW4gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9kb3V5aW4nKVxcblxcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldFJlc3VsdChkb3V5aW4uZClcXG4gICAgICAgICAgICAgICAgICAgIH0pLFxcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICfor7fovpPlhaXlhbPplK7or40nLFxcbiAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6IFxcXCJpY29uXzFfc2VhcmNoXFxcIixcXG4gICAgICAgICAgICAgICAgfSkqL1xcblxcbiAgICAgICAgICAgICAgICBkb3V5aW4udmFyaWFibGUudGFicy5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xcbiAgICAgICAgICAgICAgICAgICAgbGV0IHVybFxcbiAgICAgICAgICAgICAgICAgICAgaWYgKGl0ZW0ubmFtZSA9PT0gJ3NldHRpbmcnKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgdXJsID0gJChkb3V5aW4uZW1wdHkpLnJ1bGUoKCkgPT4ge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBkb3V5aW4gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9kb3V5aW4nKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb3V5aW4uc2V0dGluZ1BhcnNlKClcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0UmVzdWx0KGRvdXlpbi5kKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHVybCA9ICQoZG91eWluLmVtcHR5KS5sYXp5UnVsZSgoaW5kZXgpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHV0TXlWYXIoJ3RnLmR5X3dlYi5jbGFzcy50YWJfc2VsZWN0ZWQnLCBpbmRleClcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoZmFsc2UpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXG4gICAgICAgICAgICAgICAgICAgICAgICB9LCBpbmRleC50b1N0cmluZygpKVxcbiAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgZG91eWluLmQucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGRvdXlpbi5kYXRhLnRhYl9zZWxlY3RlZCA9PT0gaW5kZXgudG9TdHJpbmcoKSA/ICfigJjigJjigJnigJk8c3Ryb25nPjxmb250IGNvbG9yPVxcXCIjNUZDQzk3XFxcIj4nK2l0ZW0udGl0bGUrJzwvZm9udD48L3N0cm9uZz4nIDogaXRlbS50aXRsZSxcXG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHVybCxcXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nLFxcbiAgICAgICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICAgICAgZG91eWluLmQucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ2JsYW5rX2Jsb2NrJyxcXG4gICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICB9XFxuXFxuICAgICAgICAgICAgc3dpdGNoIChwYXJzZUludChkb3V5aW4uZGF0YS50YWJfc2VsZWN0ZWQpKSB7XFxuICAgICAgICAgICAgICAgIGNhc2UgMDpcXG4gICAgICAgICAgICAgICAgICAgIGlmIChwYWdlID09PSAxKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgZG91eWluLnZhcmlhYmxlLmZlZWRUYWIuZm9yRWFjaCgodGFiLCBpbmRleCkgPT4ge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb3V5aW4uZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBkb3V5aW4uZGF0YS5mZWVkX3RhYl9zZWxlY3RlZCA9PT0gaW5kZXgudG9TdHJpbmcoKSA/ICfigJjigJjigJnigJk8c3Ryb25nPjxmb250IGNvbG9yPVxcXCIjNUZDQzk3XFxcIj4nK3RhYi50aXRsZSsnPC9mb250Pjwvc3Ryb25nPicgOiB0YWIudGl0bGUsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6ICQoZG91eWluLmVtcHR5KS5sYXp5UnVsZSgoaW5kZXgpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXRNeVZhcigndGcuZHlfd2ViLmNsYXNzLmZlZWRfdGFiX3NlbGVjdGVkJywgaW5kZXgpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoZmFsc2UpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgaW5kZXgudG9TdHJpbmcoKSksXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgICAgICBkb3V5aW4uZmVlZExpc3QoZG91eWluLnZhcmlhYmxlLmZlZWRUYWJbZG91eWluLmRhdGEuZmVlZF90YWJfc2VsZWN0ZWRdLmlkLCBwYWdlKVxcbiAgICAgICAgICAgICAgICAgICAgYnJlYWtcXG4gICAgICAgICAgICAgICAgY2FzZSAxOlxcbiAgICAgICAgICAgICAgICAgICAgaWYgKHBhZ2UgPT09IDEpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgaHRtbCA9IGZldGNoKGRvdXlpbi5kYXRhLmxpdmVfdXJsLCB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcXCJyZWZlcmVyXFxcIiA6IFxcXCJodHRwczovL3d3dy5kb3V5aW4uY29tL1xcXCIsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcXFwib3JpZ2luXFxcIiA6IFxcXCJodHRwczovL3d3dy5kb3V5aW4uY29tXFxcIixcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcXCJjb29raWVcXFwiOiBjb29raWVfY29udGVudCxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcXCJBY2NlcHRcXFwiOiAnYXBwbGljYXRpb24vanNvbiwgdGV4dC9wbGFpbiwgKi8qJyxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcXCJVc2VyLUFnZW50XFxcIjogZG91eWluLnVhLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcXG5cXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsaXZlXzFzdF90YWIgPSBwZGZhKGh0bWwsICcuZFRIeGoxMDkmJi5POV9zNXlJNCcpXFxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGxpdmVfMm5kX3RhYiA9IHBkZmEoaHRtbCwgJy53Nm5ocm41biYmYScpXFxuXFxuICAgICAgICAgICAgICAgICAgICAgICAgbGl2ZV8xc3RfdGFiLmZvckVhY2goKHRhYiwgaW5kZXgpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRpdGxlID0gcGRmaCh0YWIsICdhJiZUZXh0JylcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRhYl91cmwgPSBkb3V5aW4udmFyaWFibGUubGl2ZSArIHBkZmgodGFiLCAnYSYmaHJlZicpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvdXlpbi5kLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGRvdXlpbi5kYXRhLmxpdmVfMXN0X3RhYl9zZWxlY3RlZCA9PT0gaW5kZXgudG9TdHJpbmcoKSA/ICfigJjigJjigJnigJk8c3Ryb25nPjxmb250IGNvbG9yPVxcXCIjNUZDQzk3XFxcIj4nK3RpdGxlKyc8L2ZvbnQ+PC9zdHJvbmc+JyA6IHRpdGxlLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiAkKGRvdXlpbi5lbXB0eSkubGF6eVJ1bGUoKGluZGV4LCB0YWJfdXJsKSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHV0TXlWYXIoJ3RnLmR5X3dlYi5jbGFzcy5saXZlXzFzdF90YWJfc2VsZWN0ZWQnLCBpbmRleClcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXRNeVZhcigndGcuZHlfd2ViLmNsYXNzLmxpdmVfMm5kX3RhYl9zZWxlY3RlZCcsICcwJylcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXRNeVZhcigndGcuZHlfd2ViLnVybC5saXZlX3VybCcsIHRhYl91cmwpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoZmFsc2UpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgaW5kZXgudG9TdHJpbmcoKSwgdGFiX3VybCksXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgICAgICAgICAgICAgZG91eWluLmQucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnYmxhbmtfYmxvY2snLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgICAgICAgICAgICAgbGl2ZV8ybmRfdGFiLmZvckVhY2goKHRhYiwgaW5kZXgpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRpdGxlID0gcGRmaCh0YWIsICdhJiZUZXh0JylcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRhYl91cmwgPSBkb3V5aW4udmFyaWFibGUubGl2ZSArIHBkZmgodGFiLCAnYSYmaHJlZicpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvdXlpbi5kLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGRvdXlpbi5kYXRhLmxpdmVfMm5kX3RhYl9zZWxlY3RlZCA9PT0gaW5kZXgudG9TdHJpbmcoKSA/ICfigJjigJjigJnigJk8c3Ryb25nPjxmb250IGNvbG9yPVxcXCIjNUZDQzk3XFxcIj4nK3RpdGxlKyc8L2ZvbnQ+PC9zdHJvbmc+JyA6IHRpdGxlLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiAkKGRvdXlpbi5lbXB0eSkubGF6eVJ1bGUoKGluZGV4LCB0YWJfdXJsKSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHV0TXlWYXIoJ3RnLmR5X3dlYi5jbGFzcy5saXZlXzJuZF90YWJfc2VsZWN0ZWQnLCBpbmRleClcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXRNeVZhcigndGcuZHlfd2ViLnVybC5saXZlX3VybCcsIHRhYl91cmwpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoZmFsc2UpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgaW5kZXgudG9TdHJpbmcoKSwgdGFiX3VybCksXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgICAgICAgICB9XFxuXFxuICAgICAgICAgICAgICAgICAgICBsZXQgcGFydGl0aW9uX2FyciA9IGRvdXlpbi5kYXRhLmxpdmVfdXJsLnNwbGl0KCdfJyksIHBhcnRpdGlvbiA9IDcyMFxcbiAgICAgICAgICAgICAgICAgICAgaWYgKHBhcnRpdGlvbl9hcnIubGVuZ3RoID4gMSkgcGFydGl0aW9uID0gcGFydGl0aW9uX2Fyci5wb3AoKVxcblxcbiAgICAgICAgICAgICAgICAgICAgZG91eWluLmxpdmVMaXN0KHBhZ2UsIHBhcnRpdGlvbilcXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrXFxuICAgICAgICAgICAgICAgIGNhc2UgMjpcXG4gICAgICAgICAgICAgICAgICAgIGxldCBzZWNfdWlkID0gY2hhbm5lbHNbZG91eWluLmRhdGEuY2hhbm5lbF9zZWxlY3RdLnNlY191aWRcXG4gICAgICAgICAgICAgICAgICAgIGlmIChwYWdlID09PSAxKSB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgY2hhbm5lbHMuZm9yRWFjaCgoY2hhbm5lbCwgaW5kZXgpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZG91eWluLmQucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogcGFyc2VJbnQoZG91eWluLmRhdGEuY2hhbm5lbF9zZWxlY3QpID09PSBpbmRleCA/ICfinJMnICsgY2hhbm5lbC50aXRsZSA6IGNoYW5uZWwudGl0bGUsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaWNfdXJsOiBjaGFubmVsLmF2YXRhcl91cmwsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6ICQoZG91eWluLmVtcHR5KS5sYXp5UnVsZShpbmRleCA9PiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHV0TXlWYXIoXFxcInRnLmR5X3dlYi5jbGFzcy5jaGFubmVsX3NlbGVjdFxcXCIsIGluZGV4KVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1dE15VmFyKFxcXCJ0Zy5keV93ZWIucGFnZS5tYXhfY3Vyc29yXFxcIiwgXFxcIlxcXCIpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UodHJ1ZSlcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gXFxcImhpa2VyOi8vZW1wdHlcXFwiXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCBpbmRleC50b1N0cmluZygpKSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnaWNvbl9yb3VuZF80JyxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhOiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9uZ0NsaWNrOiBbXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAn572u6aG25YWz5rOoJyxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKChjaGFubmVscywgaW5kZXgpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBkb3V5aW4gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9kb3V5aW4nKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGN1cnJlbnQgPSBjaGFubmVsc1tpbmRleF1cXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFubmVscy5zcGxpY2UoaW5kZXgsIDEpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbm5lbHMudW5zaGlmdChjdXJyZW50KVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1dE15VmFyKFxcXCJ0Zy5keV93ZWIuY2xhc3MuY2hhbm5lbF9zZWxlY3RcXFwiLCAnMCcpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHV0TXlWYXIoXFxcInRnLmR5X3dlYi5wYWdlLm1heF9jdXJzb3JcXFwiLCBcXFwiXFxcIilcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3cml0ZUZpbGUoZG91eWluLmZpbGVzLmNoYW5uZWxzLCBKU09OLnN0cmluZ2lmeShjaGFubmVscykpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoZmFsc2UpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFxcXCJ0b2FzdDovL+e9rumhtuaIkOWKn1xcXCJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIGNoYW5uZWxzLCBpbmRleClcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6ICflj5bmtojlhbPms6gnLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoKGNoYW5uZWxzLCBpbmRleCkgPT4ge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRvdXlpbiA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL2RvdXlpbicpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbm5lbHMuc3BsaWNlKGluZGV4LCAxKVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1dE15VmFyKFxcXCJ0Zy5keV93ZWIuY2xhc3MuY2hhbm5lbF9zZWxlY3RcXFwiLCAnMCcpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHV0TXlWYXIoXFxcInRnLmR5X3dlYi5wYWdlLm1heF9jdXJzb3JcXFwiLCBcXFwiXFxcIilcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3cml0ZUZpbGUoZG91eWluLmZpbGVzLmNoYW5uZWxzLCBKU09OLnN0cmluZ2lmeShjaGFubmVscykpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoZmFsc2UpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFxcXCJ0b2FzdDovL+WPlua2iOaIkOWKn1xcXCJcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIGNoYW5uZWxzLCBpbmRleClcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxcblxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRvdXlpbi5kLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTpcXFwiYmxhbmtfYmxvY2tcXFwiXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcXG5cXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgaHRtbCA9IGZldGNoKGRvdXlpbi52YXJpYWJsZS5ob3N0KycvdXNlci8nK3NlY191aWQsIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVyczoge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXFxcInJlZmVyZXJcXFwiIDogXFxcImh0dHBzOi8vd3d3LmRvdXlpbi5jb20vXFxcIixcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcXCJjb29raWVcXFwiOiBjb29raWVfY29udGVudCxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcXCJBY2NlcHRcXFwiOiAnYXBwbGljYXRpb24vanNvbiwgdGV4dC9wbGFpbiwgKi8qJyxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcXCJVc2VyLUFnZW50XFxcIjogZG91eWluLnVhLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICAgICAgICAgICAgICB0cnkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXRNeVZhcihcXFwidGcuZHlfd2ViLnBhZ2UubWF4X2N1cnNvclxcXCIsIGh0bWwubWF0Y2goLyUyMm1heEN1cnNvciUyMiUzQSguKj8pJTJDJTIybG9nUGIvKVsxXSlcXG4gICAgICAgICAgICAgICAgICAgICAgICB9Y2F0Y2goZSl7fVxcbiAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgZG91eWluLnVzZXJQb3N0TGlzdChzZWNfdWlkLCBwYWdlLCBkb3V5aW4uZGF0YS5tYXhfY3Vyc29yKVxcbiAgICAgICAgICAgICAgICAgICAgYnJlYWtcXG4gICAgICAgICAgICAgICAgY2FzZSAzOlxcbiAgICAgICAgICAgICAgICAgICAgbGV0IGh0bWwgPSBmZXRjaChkb3V5aW4udmFyaWFibGUuaG9zdCsnL3VzZXIvc2VsZicsIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcXCJyZWZlcmVyXFxcIiA6IFxcXCJodHRwczovL3d3dy5kb3V5aW4uY29tL1xcXCIsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcXCJjb29raWVcXFwiOiBjb29raWVfY29udGVudCxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXFxcIkFjY2VwdFxcXCI6ICdhcHBsaWNhdGlvbi9qc29uLCB0ZXh0L3BsYWluLCAqLyonLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcXFwiVXNlci1BZ2VudFxcXCI6IGRvdXlpbi51YSxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgICAgICB9KVxcblxcbiAgICAgICAgICAgICAgICAgICAgdHJ5IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgdXNlcl9pZCA9IGh0bWwubWF0Y2goL3VzZXJfaWQlMjIlM0ElMjIoLio/KSUyMiUyQyUyMi8pWzFdXFxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHNlY191c2VyX2lkID0gaHRtbC5tYXRjaCgvc2VjVWlkJTIyJTNBJTIyKC4qPyklMjIlMkMlMjJzaG9ydElkLylbMV1cXG4gICAgICAgICAgICAgICAgICAgICAgICBkb3V5aW4uZm9sbG93aW5nTGlzdCh1c2VyX2lkLCBzZWNfdXNlcl9pZCwgcGFnZSlcXG4gICAgICAgICAgICAgICAgICAgIH1jYXRjaChlKXt9XFxuICAgICAgICAgICAgfVxcblxcbiAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICBkb3V5aW4uZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgdGl0bGU6ICflsI/nqIvluo/msqHmnInmo4DmtYvliLDmnInmlYjnmoRjb29raWXvvIzor7fmjInnhafkuIvpnaLmraXpqqTnmbvlvZXmipbpn7PnvZHpobXniYjku6Xojrflj5Zjb29raWUnLFxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3JpY2hfdGV4dCcsXFxuICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICBkb3V5aW4uZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgdGl0bGU6ICfliY3lvoDnmbvlvZUnLFxcbiAgICAgICAgICAgICAgICB1cmw6ICQoZG91eWluLmVtcHR5KS5ydWxlKCgpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGRvdXlpbiA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL2RvdXlpbicpXFxuICAgICAgICAgICAgICAgICAgICBkb3V5aW4uZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJzEuIOi/m+WFpeaKlumfs+e9kemhteeJiHg1572R6aG15ZCO77yM562J5b6F55m75b2V5by556qX5by55Ye677yM6YCJ5oup5Lu75oSP5pa55rOV55m75b2V77yI5omr56CB44CB55+t5L+h44CB5a+G56CB77yJ77yM5o6o6I2Q5L2/55So55+t5L+h6aqM6K+B56CB55m75b2V44CCXFxcXHJcXFxcbicgK1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnMi4g55m75b2V5a6M5oiQ5ZCO562J5b6F4oCd6K6w5L2P55m75b2V5L+h5oGv4oCc55qE5by556qX5Ye6546w77yM54K55Ye74oCd56Gu6K6k4oCc44CC5aaC5p6c56ys5LiA5q2l5piv5omr56CB55m75b2V5oiW6ICF5a+G56CB55m75b2V5Lya6ZyA6KaB55+t5L+h6aqM6K+B44CCXFxcXHJcXFxcbicgK1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnMy4g54K55Ye75L6n6L655qCP4oCd6aaW6aG14oCc77yM5ZCM5pe25bCG6aG16Z2i6L+F6YCf5ZCR5Y+z5LiL5ouW5Yqo6Iez5Z+65pys5bGF5Lit77yM5q2k5pe25Lya5by55Ye65paH5a2X6aqM6K+B56CB5oiW6ICF5Zu+5b2i6aqM6K+B56CBXFxcXHJcXFxcbicgK1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnNC4g6YCa6L+H6aqM6K+B5ZCO6L+U5Zue5Yiw6aaW6aG15Yi35paw5Y2z5Y+v5L2/55SoJyxcXG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6ICQoZG91eWluLmVtcHR5KS5ydWxlKCgpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZG91eWluID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvZG91eWluJylcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZG91eWluLmQucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6ICdodHRwczovL3d3dy5kb3V5aW4uY29tJyxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2M6ICcxMDAlJiZmbG9hdCcsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3g1X3dlYnZpZXdfc2luZ2xlJyxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4dHJhOiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWE6IFBDX1VBLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhbkJhY2s6IHRydWUsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nTG9uZ0NsaWNrOiBmYWxzZSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqczogJC50b1N0cmluZyhkb3V5aW4uaW5qZWN0SlMpLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRSZXN1bHQoZG91eWluLmQpXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXFxuICAgICAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6ICdsb25nX3RleHQnLFxcbiAgICAgICAgICAgICAgICAgICAgfSlcXG5cXG4gICAgICAgICAgICAgICAgICAgIGRvdXlpbi5kLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAn5pON5L2c6KeG6aKRJyxcXG4gICAgICAgICAgICAgICAgICAgICAgICB1cmw6ICdodHRwczovL2Nkbi50eXJhbnRnLmNvbS92aWRlb3MvUVElRTglQTclODYlRTklQTIlOTEyMDIzMDIwNjE2NDgzMS5tcDQnLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXG4gICAgICAgICAgICAgICAgICAgIH0pXFxuXFxuICAgICAgICAgICAgICAgICAgICBkb3V5aW4uZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogJ+aKlumfs+eZu+W9lScsXFxuICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiAkKGRvdXlpbi5lbXB0eSkucnVsZSgoKSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGRvdXlpbiA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL2RvdXlpbicpXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvdXlpbi5kLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiAnaHR0cHM6Ly93d3cuZG91eWluLmNvbScsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjOiAnMTAwJSYmZmxvYXQnLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6ICd4NV93ZWJ2aWV3X3NpbmdsZScsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleHRyYToge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVhOiBQQ19VQSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYW5CYWNrOiB0cnVlLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZ0xvbmdDbGljazogZmFsc2UsXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganM6ICQudG9TdHJpbmcoZG91eWluLmluamVjdEpTKSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0UmVzdWx0KGRvdXlpbi5kKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXG4gICAgICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgICAgICAgICBzZXRSZXN1bHQoZG91eWluLmQpXFxuICAgICAgICAgICAgICAgIH0pLFxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3RleHRfMScsXFxuICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICAvKmRvdXlpbi5kLnB1c2goe1xcbiAgICAgICAgICAgICAgICB0aXRsZTogJ+i+k+WFpeW3sueZu+W9leeahOe9keermWNvb2tpZScsXFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXG4gICAgICAgICAgICB9KSovXFxuICAgICAgICB9XFxuXFxuICAgICAgICBzZXRSZXN1bHQoZG91eWluLmQpXFxuICAgIH0sXFxuICAgIGxpdmVQYXJzZTogKCkgPT4ge1xcbiAgICAgICAgY29uc3QgcGFnZSA9IHBhcnNlSW50KE1ZX1VSTC5zcGxpdCgnIyMnKVsxXSlcXG4gICAgICAgIGlmIChwYWdlID09PSAxKSB7XFxuICAgICAgICAgICAgbGV0IGh0bWwgPSBmZXRjaChkb3V5aW4uZGF0YS5saXZlX3VybCwge1xcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XFxuICAgICAgICAgICAgICAgICAgICBcXFwicmVmZXJlclxcXCIgOiBkb3V5aW4uZGF0YS5saXZlX3VybCxcXG4gICAgICAgICAgICAgICAgICAgIFxcXCJvcmlnaW5cXFwiIDogZG91eWluLmRhdGEubGl2ZV91cmwsXFxuICAgICAgICAgICAgICAgICAgICAvLyBcXFwiY29va2llXFxcIjogY29va2llX2NvbnRlbnQsXFxuICAgICAgICAgICAgICAgICAgICBcXFwiQWNjZXB0XFxcIjogJ2FwcGxpY2F0aW9uL2pzb24sIHRleHQvcGxhaW4sICovKicsXFxuICAgICAgICAgICAgICAgICAgICBcXFwiVXNlci1BZ2VudFxcXCI6IGRvdXlpbi51YSxcXG4gICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgIH0pXFxuXFxuICAgICAgICAgICAgY29uc3QgbGl2ZV8xc3RfdGFiID0gcGRmYShodG1sLCAnLmRUSHhqMTA5JiYuTzlfczV5STQnKVxcbiAgICAgICAgICAgIGxldCBsaXZlXzJuZF90YWIgPSBwZGZhKGh0bWwsICcudzZuaHJuNW4mJmEnKVxcblxcbiAgICAgICAgICAgIGxpdmVfMXN0X3RhYi5mb3JFYWNoKCh0YWIsIGluZGV4KSA9PiB7XFxuICAgICAgICAgICAgICAgIGxldCB0aXRsZSA9IHBkZmgodGFiLCAnYSYmVGV4dCcpXFxuICAgICAgICAgICAgICAgIGxldCB0YWJfdXJsID0gZG91eWluLnZhcmlhYmxlLmxpdmUgKyBwZGZoKHRhYiwgJ2EmJmhyZWYnKVxcbiAgICAgICAgICAgICAgICBkb3V5aW4uZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiBkb3V5aW4uZGF0YS5saXZlXzFzdF90YWJfc2VsZWN0ZWQgPT09IGluZGV4LnRvU3RyaW5nKCkgPyAn4oCY4oCY4oCZ4oCZPHN0cm9uZz48Zm9udCBjb2xvcj1cXFwiIzVGQ0M5N1xcXCI+Jyt0aXRsZSsnPC9mb250Pjwvc3Ryb25nPicgOiB0aXRsZSxcXG4gICAgICAgICAgICAgICAgICAgIHVybDogJChkb3V5aW4uZW1wdHkpLmxhenlSdWxlKChpbmRleCwgdGFiX3VybCkgPT4ge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHB1dE15VmFyKCd0Zy5keV93ZWIuY2xhc3MubGl2ZV8xc3RfdGFiX3NlbGVjdGVkJywgaW5kZXgpXFxuICAgICAgICAgICAgICAgICAgICAgICAgcHV0TXlWYXIoJ3RnLmR5X3dlYi5jbGFzcy5saXZlXzJuZF90YWJfc2VsZWN0ZWQnLCAnMCcpXFxuICAgICAgICAgICAgICAgICAgICAgICAgcHV0TXlWYXIoJ3RnLmR5X3dlYi51cmwubGl2ZV91cmwnLCB0YWJfdXJsKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKGZhbHNlKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXG4gICAgICAgICAgICAgICAgICAgIH0sIGluZGV4LnRvU3RyaW5nKCksIHRhYl91cmwpLFxcbiAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJyxcXG4gICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICB9KVxcbiAgICAgICAgICAgIGRvdXlpbi5kLnB1c2goe1xcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ2JsYW5rX2Jsb2NrJyxcXG4gICAgICAgICAgICB9KVxcbiAgICAgICAgICAgIGxpdmVfMm5kX3RhYi5mb3JFYWNoKCh0YWIsIGluZGV4KSA9PiB7XFxuICAgICAgICAgICAgICAgIGxldCB0aXRsZSA9IHBkZmgodGFiLCAnYSYmVGV4dCcpXFxuICAgICAgICAgICAgICAgIGxldCB0YWJfdXJsID0gZG91eWluLnZhcmlhYmxlLmxpdmUgKyBwZGZoKHRhYiwgJ2EmJmhyZWYnKVxcbiAgICAgICAgICAgICAgICBkb3V5aW4uZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiBkb3V5aW4uZGF0YS5saXZlXzJuZF90YWJfc2VsZWN0ZWQgPT09IGluZGV4LnRvU3RyaW5nKCkgPyAn4oCY4oCY4oCZ4oCZPHN0cm9uZz48Zm9udCBjb2xvcj1cXFwiIzVGQ0M5N1xcXCI+Jyt0aXRsZSsnPC9mb250Pjwvc3Ryb25nPicgOiB0aXRsZSxcXG4gICAgICAgICAgICAgICAgICAgIHVybDogJChkb3V5aW4uZW1wdHkpLmxhenlSdWxlKChpbmRleCwgdGFiX3VybCkgPT4ge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIHB1dE15VmFyKCd0Zy5keV93ZWIuY2xhc3MubGl2ZV8ybmRfdGFiX3NlbGVjdGVkJywgaW5kZXgpXFxuICAgICAgICAgICAgICAgICAgICAgICAgcHV0TXlWYXIoJ3RnLmR5X3dlYi51cmwubGl2ZV91cmwnLCB0YWJfdXJsKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKGZhbHNlKVxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXG4gICAgICAgICAgICAgICAgICAgIH0sIGluZGV4LnRvU3RyaW5nKCksIHRhYl91cmwpLFxcbiAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6ICdzY3JvbGxfYnV0dG9uJyxcXG4gICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICB9KVxcbiAgICAgICAgfVxcblxcbiAgICAgICAgbGV0IHBhcnRpdGlvbl9hcnIgPSBkb3V5aW4uZGF0YS5saXZlX3VybC5zcGxpdCgnXycpLCBwYXJ0aXRpb24gPSA3MjBcXG4gICAgICAgIGlmIChwYXJ0aXRpb25fYXJyLmxlbmd0aCA+IDEpIHBhcnRpdGlvbiA9IHBhcnRpdGlvbl9hcnIucG9wKClcXG5cXG4gICAgICAgIGRvdXlpbi5saXZlTGlzdChwYWdlLCBwYXJ0aXRpb24pXFxuXFxuICAgICAgICBzZXRSZXN1bHQoZG91eWluLmQpXFxuICAgIH0sXFxuICAgIHNldHRpbmdQYXJzZTogKCkgPT4ge1xcbiAgICAgICAgZG91eWluLmQucHVzaCh7XFxuICAgICAgICAgICAgdGl0bGU6ICfliKDpmaRjb29raWUnLFxcbiAgICAgICAgICAgIHVybDogJChkb3V5aW4uZW1wdHkpLmxhenlSdWxlKCgpID0+IHtcXG4gICAgICAgICAgICAgICAgY29uc3QgZG91eWluID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvZG91eWluJylcXG4gICAgICAgICAgICAgICAgd3JpdGVGaWxlKGRvdXlpbi5maWxlcy5jb29raWVUZW1wLCAnJylcXG4gICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoZmFsc2UpXFxuICAgICAgICAgICAgICAgIGJhY2sodHJ1ZSlcXG4gICAgICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcbiAgICAgICAgICAgIH0pLFxcbiAgICAgICAgICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXG4gICAgICAgIH0pXFxuICAgIH0sXFxuICAgIHZpZGVvUGFyc2U6ICgpID0+IHtcXG5cXG4gICAgfSxcXG4gICAgaW5qZWN0SlM6ICgpID0+IHtcXG4gICAgICAgIHdpbmRvdy5kb2N1bWVudC5ib2R5LnN0eWxlLndpZHRoID0gJzc2OHB4J1xcbiAgICAgICAgLy8gY29uc3QgZ2V0Q29va2llID0gZnVuY3Rpb24gKG5hbWUpIHtcXG4gICAgICAgIC8vICAgICBsZXQgYXJyO1xcbiAgICAgICAgLy8gICAgIGNvbnN0IHJlZyA9IG5ldyBSZWdFeHAoYChefCApJHtuYW1lfT0oW147XSopKDt8JClgKTtcXG4gICAgICAgIC8vICAgICBpZiAoYXJyID0gZG9jdW1lbnQuY29va2llLm1hdGNoKHJlZykpIHJldHVybiB1bmVzY2FwZShhcnJbMl0pO1xcbiAgICAgICAgLy8gICAgIHJldHVybiBudWxsO1xcbiAgICAgICAgLy8gfTtcXG5cXG4gICAgICAgIHNldEludGVydmFsKCgpID0+IHtcXG4gICAgICAgICAgICBmYmEud3JpdGVGaWxlKCdoaWtlcjovL2ZpbGVzL3J1bGVzL1R5cmFudEcvY29va2llL2RvdXlpbi50eHQnLCBkb2N1bWVudC5jb29raWUpXFxuICAgICAgICAgICAgLy8gbGV0IGxvZ2luX3N0YXR1cyA9IGdldENvb2tpZSgncGFzc3BvcnRfYXNzaXN0X3VzZXInKVxcbiAgICAgICAgICAgIC8vIGlmIChsb2dpbl9zdGF0dXMpIHtcXG4gICAgICAgICAgICAgICAgLy8gYWxlcnQoJ+iOt+WPlueZu+W9leS/oeaBr+aIkOWKnycpXFxuICAgICAgICAgICAgICAgIC8vIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWwpXFxuXFxuICAgICAgICAgICAgICAgIC8vIGZiYS5iYWNrKClcXG4gICAgICAgICAgICAvLyB9XFxuICAgICAgICB9LCAxMDAwKVxcbiAgICB9LFxcbiAgICBmZWVkTGlzdDogKHRhZ19pZCwgcGFnZSkgPT4ge1xcbiAgICAgICAgY29uc3QgY29va2llX2NvbnRlbnQgPSByZXF1ZXN0KGRvdXlpbi5maWxlcy5jb29raWVUZW1wKVxcbiAgICAgICAgbGV0IGUgPSB7XFxuICAgICAgICAgICAgXFxcInVybFxcXCI6IGRvdXlpbi52YXJpYWJsZS5ob3N0ICsgXFxcIi9hd2VtZS92MS93ZWIvY2hhbm5lbC9mZWVkL1xcXCIsXFxuICAgICAgICAgICAgXFxcIm1ldGhvZFxcXCI6IFxcXCJnZXRcXFwiLFxcbiAgICAgICAgICAgIFxcXCJoZWFkZXJzXFxcIjoge1xcbiAgICAgICAgICAgICAgICBcXFwiQWNjZXB0XFxcIjogXFxcImFwcGxpY2F0aW9uL2pzb24sIHRleHQvcGxhaW4sICovKlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJDb250ZW50LVR5cGVcXFwiOiBcXFwiYXBwbGljYXRpb24vanNvblxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJ3aXRoQ3JlZGVudGlhbHNcXFwiOiB0cnVlXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICBcXFwicGFyYW1zXFxcIjoge1xcbiAgICAgICAgICAgICAgICBcXFwiZGV2aWNlX3BsYXRmb3JtXFxcIjogXFxcIndlYmFwcFxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJhaWRcXFwiOiA2MzgzLFxcbiAgICAgICAgICAgICAgICBcXFwiY2hhbm5lbFxcXCI6IFxcXCJjaGFubmVsX3BjX3dlYlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJ0YWdfaWRcXFwiOiB0YWdfaWQsXFxuICAgICAgICAgICAgICAgIFxcXCJjb3VudFxcXCI6IDEwMCxcXG4gICAgICAgICAgICAgICAgXFxcInJlZnJlc2hfaW5kZXhcXFwiOiBwYWdlLFxcbiAgICAgICAgICAgICAgICBcXFwidmVyc2lvbl9jb2RlXFxcIjogXFxcIjE2MDEwMFxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJ2ZXJzaW9uX25hbWVcXFwiOiBcXFwiMTYuMS4wXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcImNvb2tpZV9lbmFibGVkXFxcIjogdHJ1ZSxcXG4gICAgICAgICAgICAgICAgXFxcInNjcmVlbl93aWR0aFxcXCI6IDEyODAsXFxuICAgICAgICAgICAgICAgIFxcXCJzY3JlZW5faGVpZ2h0XFxcIjogNzIwLFxcbiAgICAgICAgICAgICAgICBcXFwiYnJvd3Nlcl9sYW5ndWFnZVxcXCI6IFxcXCJ6aC1DTlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJicm93c2VyX3BsYXRmb3JtXFxcIjogXFxcIldpbjMyXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcImJyb3dzZXJfbmFtZVxcXCI6IFxcXCJNb3ppbGxhXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcImJyb3dzZXJfdmVyc2lvblxcXCI6IFxcXCI1LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzkxLjAuNDQ3Mi4xNjQgU2FmYXJpLzUzNy4zNlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJicm93c2VyX29ubGluZVxcXCI6IHRydWVcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgfVxcblxcbiAgICAgICAgbGV0IGRhdGFfanNvbiA9IGRvdXlpbi5yZXF1ZXN0KGUpXFxuXFxuICAgICAgICBpZiAoISBkYXRhX2pzb24pIHtcXG4gICAgICAgICAgICBkb3V5aW4uZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgdGl0bGU6ICdjb29raWXlpLHmlYjvvIzor7fliLDorr7nva7ph4zmuIXpmaRjb29raWXlubbph43mlrDnmbvlvZUnLFxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogXFxcImxvbmdfdGV4dFxcXCIsXFxuICAgICAgICAgICAgfSlcXG4gICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgbGV0IGxpc3QgPSBKU09OLnBhcnNlKGRhdGFfanNvbikuYXdlbWVfbGlzdFxcbiAgICAgICAgICAgIGlmIChsaXN0ICYmIGxpc3QubGVuZ3RoID4gMCkge1xcbiAgICAgICAgICAgICAgICBsaXN0LmZvckVhY2goaXRlbSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICBpZiAoaXRlbS52aWRlbyAmJiBpdGVtLmF1dGhvcikge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGRvdXlpbi5kLnB1c2goe1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogaXRlbS5kZXNjLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwaWNfdXJsOiBpdGVtLnZpZGVvLmNvdmVyLnVybF9saXN0WzBdLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjOiBpdGVtLmF1dGhvci5uaWNrbmFtZSxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBpdGVtLnZpZGVvLnBsYXlfYWRkci51cmxfbGlzdFswXSArIFxcXCIjaXNWaWRlbz10cnVlIzt7Q29va2llQFxcXCIrY29va2llX2NvbnRlbnQucmVwbGFjZSgvOy9nLCAn77yb77ybJykrXFxcIn1cXFwiLFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ21vdmllXzInLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICB9LFxcbiAgICBsaXZlTGlzdDogKHBhZ2UsIHBhcnRpdGlvbikgPT4ge1xcbiAgICAgICAgbGV0IGUgPSB7XFxuICAgICAgICAgICAgXFxcInVybFxcXCI6IGRvdXlpbi52YXJpYWJsZS5saXZlICsgXFxcIi93ZWJjYXN0L3dlYi9wYXJ0aXRpb24vZGV0YWlsL3Jvb20vXFxcIixcXG4gICAgICAgICAgICBcXFwibWV0aG9kXFxcIjogXFxcImdldFxcXCIsXFxuICAgICAgICAgICAgXFxcImhlYWRlcnNcXFwiOiB7XFxuICAgICAgICAgICAgICAgIFxcXCJBY2NlcHRcXFwiOiBcXFwiYXBwbGljYXRpb24vanNvbiwgdGV4dC9wbGFpbiwgKi8qXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcIkNvbnRlbnQtVHlwZVxcXCI6IFxcXCJhcHBsaWNhdGlvbi9qc29uXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcIndpdGhDcmVkZW50aWFsc1xcXCI6IHRydWVcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIFxcXCJwYXJhbXNcXFwiOiB7XFxuICAgICAgICAgICAgICAgIFxcXCJkZXZpY2VfcGxhdGZvcm1cXFwiOiBcXFwid2ViXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcImFpZFxcXCI6IDYzODMsXFxuICAgICAgICAgICAgICAgIFxcXCJsaXZlX2lkXFxcIjogMSxcXG4gICAgICAgICAgICAgICAgXFxcInBhcnRpdGlvblxcXCI6IHBhcnRpdGlvbixcXG4gICAgICAgICAgICAgICAgXFxcInBhcnRpdGlvbl90eXBlXFxcIjogMSxcXG4gICAgICAgICAgICAgICAgXFxcInJlcV9mcm9tXFxcIjogMixcXG4gICAgICAgICAgICAgICAgXFxcImNvdW50XFxcIjogNDgsXFxuICAgICAgICAgICAgICAgIFxcXCJvZmZzZXRcXFwiOiAocGFnZS0xKSo0OCxcXG4gICAgICAgICAgICAgICAgXFxcImNvb2tpZV9lbmFibGVkXFxcIjogdHJ1ZSxcXG4gICAgICAgICAgICAgICAgXFxcInNjcmVlbl93aWR0aFxcXCI6IDEyODAsXFxuICAgICAgICAgICAgICAgIFxcXCJzY3JlZW5faGVpZ2h0XFxcIjogNzIwLFxcbiAgICAgICAgICAgICAgICBcXFwiYnJvd3Nlcl9sYW5ndWFnZVxcXCI6IFxcXCJ6aC1DTlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJicm93c2VyX3BsYXRmb3JtXFxcIjogXFxcIldpbjMyXFxcIixcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgfVxcblxcbiAgICAgICAgbGV0IGRhdGFfanNvbiA9IGRvdXlpbi5yZXF1ZXN0KGUpXFxuXFxuICAgICAgICBpZiAoISBkYXRhX2pzb24pIHtcXG4gICAgICAgICAgICBkb3V5aW4uZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgdGl0bGU6ICdjb29raWXlpLHmlYjvvIzor7fliLDorr7nva7ph4zmuIXpmaRjb29raWXlubbph43mlrDnmbvlvZUnLFxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogXFxcImxvbmdfdGV4dFxcXCIsXFxuICAgICAgICAgICAgfSlcXG4gICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgbGV0IGxpc3QgPSBKU09OLnBhcnNlKGRhdGFfanNvbikuZGF0YS5kYXRhXFxuICAgICAgICAgICAgaWYgKGxpc3QgJiYgbGlzdC5sZW5ndGggPiAwKSB7XFxuICAgICAgICAgICAgICAgIGxpc3QuZm9yRWFjaChpdGVtID0+IHtcXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cmVhbV91cmxfbWFwID0gaXRlbS5yb29tLnN0cmVhbV91cmwuZmx2X3B1bGxfdXJsXFxuXFxuICAgICAgICAgICAgICAgICAgICBkb3V5aW4uZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogaXRlbS5yb29tLnRpdGxlLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBpY191cmw6IGl0ZW0ucm9vbS5jb3Zlci51cmxfbGlzdFswXSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjOiBpdGVtLnJvb20ub3duZXIubmlja25hbWUsXFxuICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBKU09OLnN0cmluZ2lmeSh7dXJsczogT2JqZWN0LnZhbHVlcyhzdHJlYW1fdXJsX21hcCksIG5hbWVzOiBPYmplY3Qua2V5cyhzdHJlYW1fdXJsX21hcCl9KSxcXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ21vdmllXzInLFxcbiAgICAgICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICAgICAgfSlcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgIH0sXFxuICAgIHVzZXJQb3N0TGlzdDogKHVpZCwgcGFnZSwgbWF4X2N1cnNvcikgPT4ge1xcbiAgICAgICAgbGV0IGUgPSB7XFxuICAgICAgICAgICAgXFxcInVybFxcXCI6IGRvdXlpbi52YXJpYWJsZS5ob3N0ICsgXFxcIi9hd2VtZS92MS93ZWIvYXdlbWUvcG9zdC9cXFwiLFxcbiAgICAgICAgICAgIFxcXCJtZXRob2RcXFwiOiBcXFwiZ2V0XFxcIixcXG4gICAgICAgICAgICBcXFwiaGVhZGVyc1xcXCI6IHtcXG4gICAgICAgICAgICAgICAgXFxcIkFjY2VwdFxcXCI6IFxcXCJhcHBsaWNhdGlvbi9qc29uLCB0ZXh0L3BsYWluLCAqLypcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiQ29udGVudC1UeXBlXFxcIjogXFxcImFwcGxpY2F0aW9uL2pzb25cXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwid2l0aENyZWRlbnRpYWxzXFxcIjogdHJ1ZVxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAgXFxcInBhcmFtc1xcXCI6IHtcXG4gICAgICAgICAgICAgICAgXFxcImRldmljZV9wbGF0Zm9ybVxcXCI6IFxcXCJ3ZWJhcHBcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiYWlkXFxcIjogNjM4MyxcXG4gICAgICAgICAgICAgICAgXFxcImNoYW5uZWxcXFwiOiBcXFwiY2hhbm5lbF9wY193ZWJcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwic2VjX3VzZXJfaWRcXFwiOiB1aWQsXFxuICAgICAgICAgICAgICAgIFxcXCJzaG93X2xpdmVfcmVwbGF5X3N0cmF0ZWd5XFxcIjogMSxcXG4gICAgICAgICAgICAgICAgXFxcImxvY2F0ZV9xdWVyeVxcXCI6IGZhbHNlLFxcbiAgICAgICAgICAgICAgICBcXFwicHVibGlzaF92aWRlb19zdHJhdGVneV90eXBlXFxcIjogMixcXG4gICAgICAgICAgICAgICAgXFxcIm1heF9jdXJzb3JcXFwiOiBtYXhfY3Vyc29yLFxcbiAgICAgICAgICAgICAgICBcXFwiY291bnRcXFwiOiAyNCxcXG4gICAgICAgICAgICAgICAgLy8gXFxcIm9mZnNldFxcXCI6IChwYWdlLTEpKjI0LFxcbiAgICAgICAgICAgICAgICBcXFwidmVyc2lvbl9jb2RlXFxcIjogXFxcIjE2MDEwMFxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJ2ZXJzaW9uX25hbWVcXFwiOiBcXFwiMTYuMS4wXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcImNvb2tpZV9lbmFibGVkXFxcIjogdHJ1ZSxcXG4gICAgICAgICAgICAgICAgXFxcInNjcmVlbl93aWR0aFxcXCI6IDEyODAsXFxuICAgICAgICAgICAgICAgIFxcXCJzY3JlZW5faGVpZ2h0XFxcIjogNzIwLFxcbiAgICAgICAgICAgICAgICBcXFwiYnJvd3Nlcl9sYW5ndWFnZVxcXCI6IFxcXCJ6aC1DTlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJicm93c2VyX3BsYXRmb3JtXFxcIjogXFxcIldpbjMyXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcImJyb3dzZXJfbmFtZVxcXCI6IFxcXCJNb3ppbGxhXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcImJyb3dzZXJfdmVyc2lvblxcXCI6IFxcXCI1LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzkxLjAuNDQ3Mi4xNjQgU2FmYXJpLzUzNy4zNlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJicm93c2VyX29ubGluZVxcXCI6IHRydWUsXFxuICAgICAgICAgICAgICAgIFxcXCJyb3VuZF90cmlwX3RpbWVcXFwiOiA1MFxcbiAgICAgICAgICAgIH0sXFxuICAgICAgICB9XFxuXFxuICAgICAgICBsZXQgZGF0YV9qc29uID0gZG91eWluLnJlcXVlc3QoZSlcXG5cXG4gICAgICAgIGlmICghIGRhdGFfanNvbikge1xcbiAgICAgICAgICAgIGRvdXlpbi5kLnB1c2goe1xcbiAgICAgICAgICAgICAgICB0aXRsZTogJ2Nvb2tpZeWkseaViO+8jOivt+WIsOiuvue9rumHjOa4hemZpGNvb2tpZeW5tumHjeaWsOeZu+W9lScsXFxuICAgICAgICAgICAgICAgIGNvbF90eXBlOiBcXFwibG9uZ190ZXh0XFxcIixcXG4gICAgICAgICAgICB9KVxcbiAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICBsZXQgZGF0YSA9IEpTT04ucGFyc2UoZGF0YV9qc29uKVxcbiAgICAgICAgICAgIGxldCBsaXN0ID0gZGF0YS5hd2VtZV9saXN0XFxuICAgICAgICAgICAgaWYgKGxpc3QgJiYgbGlzdC5sZW5ndGggPiAwKSB7XFxuICAgICAgICAgICAgICAgIHB1dE15VmFyKFxcXCJ0Zy5keV93ZWIucGFnZS5tYXhfY3Vyc29yXFxcIiwgZGF0YS5tYXhfY3Vyc29yLnRvU3RyaW5nKCkpXFxuICAgICAgICAgICAgICAgIGxpc3QuZm9yRWFjaChpdGVtID0+IHtcXG4gICAgICAgICAgICAgICAgICAgIGQucHVzaCh7XFxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGl0ZW0uZGVzYyxcXG4gICAgICAgICAgICAgICAgICAgICAgICBwaWNfdXJsOiBpdGVtLnZpZGVvLmNvdmVyLnVybF9saXN0WzBdLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2M6IGl0ZW0uYXV0aG9yLm5pY2tuYW1lLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHVybDogaXRlbS52aWRlby5wbGF5X2FkZHIudXJsX2xpc3RbMF0gKyBcXFwiI2lzVmlkZW89dHJ1ZSNcXFwiLFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbF90eXBlOiAnbW92aWVfMicsXFxuICAgICAgICAgICAgICAgICAgICB9KVxcbiAgICAgICAgICAgICAgICB9KVxcbiAgICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgfSxcXG4gICAgZm9sbG93aW5nTGlzdDogKHVzZXJfaWQsIHNlY191c2VyX2lkLCBwYWdlKSA9PiB7XFxuICAgICAgICBsZXQgZSA9IHtcXG4gICAgICAgICAgICBcXFwidXJsXFxcIjogZG91eWluLnZhcmlhYmxlLmhvc3QgKyBcXFwiL2F3ZW1lL3YxL3dlYi91c2VyL2ZvbGxvd2luZy9saXN0L1xcXCIsXFxuICAgICAgICAgICAgXFxcIm1ldGhvZFxcXCI6IFxcXCJnZXRcXFwiLFxcbiAgICAgICAgICAgIFxcXCJoZWFkZXJzXFxcIjoge1xcbiAgICAgICAgICAgICAgICBcXFwiQWNjZXB0XFxcIjogXFxcImFwcGxpY2F0aW9uL2pzb24sIHRleHQvcGxhaW4sICovKlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJDb250ZW50LVR5cGVcXFwiOiBcXFwiYXBwbGljYXRpb24vanNvblxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJ3aXRoQ3JlZGVudGlhbHNcXFwiOiB0cnVlXFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICBcXFwicGFyYW1zXFxcIjoge1xcbiAgICAgICAgICAgICAgICBcXFwiZGV2aWNlX3BsYXRmb3JtXFxcIjogXFxcIndlYmFwcFxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJhaWRcXFwiOiA2MzgzLFxcbiAgICAgICAgICAgICAgICBcXFwiY2hhbm5lbFxcXCI6IFxcXCJjaGFubmVsX3BjX3dlYlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJ1c2VyX2lkXFxcIjogdXNlcl9pZCxcXG4gICAgICAgICAgICAgICAgXFxcInNlY191c2VyX2lkXFxcIjogc2VjX3VzZXJfaWQsXFxuICAgICAgICAgICAgICAgIFxcXCJjb3VudFxcXCI6IDEwMDAsXFxuICAgICAgICAgICAgICAgIFxcXCJvZmZzZXRcXFwiOiAocGFnZS0xKSoxMDAwLFxcbiAgICAgICAgICAgICAgICBcXFwibWluX3RpbWVcXFwiOiAwLFxcbiAgICAgICAgICAgICAgICBcXFwibWF4X3RpbWVcXFwiOiAwLFxcbiAgICAgICAgICAgICAgICBcXFwic291cmNlX3R5cGVcXFwiOiA0LFxcbiAgICAgICAgICAgICAgICBcXFwiaXNfdG9wXFxcIjogMSxcXG4gICAgICAgICAgICAgICAgXFxcInZlcnNpb25fY29kZVxcXCI6IFxcXCIxNjAxMDBcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwidmVyc2lvbl9uYW1lXFxcIjogXFxcIjE2LjEuMFxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJjb29raWVfZW5hYmxlZFxcXCI6IHRydWUsXFxuICAgICAgICAgICAgICAgIFxcXCJzY3JlZW5fd2lkdGhcXFwiOiAxMjgwLFxcbiAgICAgICAgICAgICAgICBcXFwic2NyZWVuX2hlaWdodFxcXCI6IDcyMCxcXG4gICAgICAgICAgICAgICAgXFxcImJyb3dzZXJfbGFuZ3VhZ2VcXFwiOiBcXFwiemgtQ05cXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiYnJvd3Nlcl9wbGF0Zm9ybVxcXCI6IFxcXCJXaW4zMlxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJicm93c2VyX25hbWVcXFwiOiBcXFwiTW96aWxsYVxcXCIsXFxuICAgICAgICAgICAgICAgIFxcXCJicm93c2VyX3ZlcnNpb25cXFwiOiBcXFwiNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS85MS4wLjQ0NzIuMTY0IFNhZmFyaS81MzcuMzZcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwiYnJvd3Nlcl9vbmxpbmVcXFwiOiB0cnVlLFxcbiAgICAgICAgICAgICAgICBcXFwicm91bmRfdHJpcF90aW1lXFxcIjogNTBcXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgfVxcblxcbiAgICAgICAgbGV0IGRhdGFfanNvbiA9IGRvdXlpbi5yZXF1ZXN0KGUpXFxuXFxuICAgICAgICBpZiAoISBkYXRhX2pzb24pIHtcXG4gICAgICAgICAgICBkb3V5aW4uZC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgdGl0bGU6ICdjb29raWXlpLHmlYjvvIzor7fliLDorr7nva7ph4zmuIXpmaRjb29raWXlubbph43mlrDnmbvlvZUnLFxcbiAgICAgICAgICAgICAgICBjb2xfdHlwZTogXFxcImxvbmdfdGV4dFxcXCIsXFxuICAgICAgICAgICAgfSlcXG4gICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgbGV0IGRhdGEgPSBKU09OLnBhcnNlKGRhdGFfanNvbilcXG4gICAgICAgICAgICBsb2coZGF0YSlcXG4gICAgICAgICAgICAvLyBsZXQgbGlzdCA9IGRhdGEuYXdlbWVfbGlzdFxcbiAgICAgICAgICAgIC8vIGlmIChsaXN0ICYmIGxpc3QubGVuZ3RoID4gMCkge1xcbiAgICAgICAgICAgIC8vICAgICBwdXRNeVZhcihcXFwidGcuZHlfd2ViLnBhZ2UubWF4X2N1cnNvclxcXCIsIGRhdGEubWF4X2N1cnNvci50b1N0cmluZygpKVxcbiAgICAgICAgICAgIC8vICAgICBsaXN0LmZvckVhY2goaXRlbSA9PiB7XFxuICAgICAgICAgICAgLy8gICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgIC8vICAgICAgICAgICAgIHRpdGxlOiBpdGVtLmRlc2MsXFxuICAgICAgICAgICAgLy8gICAgICAgICAgICAgcGljX3VybDogaXRlbS52aWRlby5jb3Zlci51cmxfbGlzdFswXSxcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICBkZXNjOiBpdGVtLmF1dGhvci5uaWNrbmFtZSxcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICB1cmw6IGl0ZW0udmlkZW8ucGxheV9hZGRyLnVybF9saXN0WzBdICsgXFxcIiNpc1ZpZGVvPXRydWUjXFxcIixcXG4gICAgICAgICAgICAvLyAgICAgICAgICAgICBjb2xfdHlwZTogJ21vdmllXzInLFxcbiAgICAgICAgICAgIC8vICAgICAgICAgfSlcXG4gICAgICAgICAgICAvLyAgICAgfSlcXG4gICAgICAgICAgICAvLyB9XFxuICAgICAgICB9XFxuICAgIH0sXFxufVxcblxcbiQuZXhwb3J0cyA9IGRvdXlpblxcblwifV0iLCJpY29uIjoiaHR0cHM6Ly9naXQudHlyYW50Zy5jb20vdHlyYW50Z2VuZXNpcy9oaWtlclZpZXdSdWxlcy9yYXcvbWFzdGVyL2Fzc2V0cy9pbWFnZXMvZG91eWluLmpwZyIsInByb3h5IjoiIn0=
Add Comment
Please, Sign In to add comment