Skip to content

Instantly share code, notes, and snippets.

@alexmerkel
Created March 31, 2021 11:45
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save alexmerkel/ffc90f19524672cf8138dbff7cf57e31 to your computer and use it in GitHub Desktop.
Save alexmerkel/ffc90f19524672cf8138dbff7cf57e31 to your computer and use it in GitHub Desktop.
Youtube-dl error
$ youtube-dl --verbose --dump-pages UUOGeU-1Fig3rrDjhm9Zs_wg
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', '--dump-pages', 'UUOGeU-1Fig3rrDjhm9Zs_wg']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.03.31
[debug] Python version 3.9.2 (CPython) - macOS-11.2.3-x86_64-i386-64bit
[debug] exe versions: ffmpeg 4.3.2, ffprobe 4.3.2, rtmpdump 2.4
[debug] Proxy map: {}
[youtube:tab] UUOGeU-1Fig3rrDjhm9Zs_wg: Downloading webpage
[youtube:tab] Dumping request to https://consent.youtube.com/m?continue=https%3A%2F%2Fwww.youtube.com%2Fplaylist%3Flist%3DUUOGeU-1Fig3rrDjhm9Zs_wg&gl=DE&m=0&pc=yt&uxe=24020388&hl=en&src=1
PCFkb2N0eXBlIGh0bWw+PGh0bWwgbGFuZz0iZW4iIGRpcj0ibHRyIj48aGVhZD48YmFzZSBocmVmPSJodHRwczovL2NvbnNlbnQueW91dHViZS5jb20vIj48bWV0YSBuYW1lPSJyZWZlcnJlciIgY29udGVudD0ib3JpZ2luIj48bGluayByZWw9ImNhbm9uaWNhbCIgaHJlZj0iaHR0cHM6Ly9jb25zZW50LnlvdXR1YmUuY29tL20iPjxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJpbml0aWFsLXNjYWxlPTEsbWluaW11bS1zY2FsZT0xLG1heGltdW0tc2NhbGU9NSx3aWR0aD1kZXZpY2Utd2lkdGgiPjxsaW5rIHJlbD0ic2hvcnRjdXQgaWNvbiIgaHJlZj0iLy93d3cuZ29vZ2xlLmNvbS9mYXZpY29uLmljbyI+PHNjcmlwdCBkYXRhLWlkPSJfZ2QiIG5vbmNlPSJTaExIUEpiUUhQNGV1cXRhV2NwclBRIj53aW5kb3cuV0laX2dsb2JhbF9kYXRhID0geyJEbmRMWWIiOiIiLCJEcGltR2YiOmZhbHNlLCJFUDF5a2QiOlsiL18vKiJdLCJGZHJGSmUiOiI2NDI4ODcyNTI0OTE0Njg4MTI3IiwiSW02Y21mIjoiL18vQ29uc2VudFVpIiwiTFZJWFhiIjoxLCJMb1F2N2UiOmZhbHNlLCJNVDdmOWIiOltdLCJNeXBib2QiOiJodHRwczovL3d3dy5nb29nbGVhcGlzLmNvbS9yZWF1dGgiLCJRcnR4SyI6IiIsIlI2cElhZCI6IiUuQC5dXG4iLCJTMDZHcmIiOiIiLCJTMU5abWQiOmZhbHNlLCJZbGxoM2UiOiIlLkAuMTYxNzE5MDE4NzQ0MTEwNiwxNzA2ODAzMzQsNzA0NjQ4NDc0XVxuIiwiY2ZiMmgiOiJib3FfaWRlbnRpdHlmcm9udGVuZHVpc2VydmVyXzIwMjEwMzI4LjE3X3AwIiwiZU5ua3dmIjoiIiwiZXB0WmUiOiIvXy9Db25zZW50VWkvIiwiZlBEeHdkIjpbMTc2MzQzMywxNzcyODc5XSwiZ0djTG9lIjpmYWxzZSwiblF5QUUiOnsidkVNRjVlIjoiZmFsc2UiLCJUWUVScmUiOiJmYWxzZSIsIkdTV2ZoYiI6InRydWUiLCJFb3ltQWMiOiJmYWxzZSIsIkZiSGd2YiI6ImZhbHNlIiwiUDFjZUNmIjoiZmFsc2UiLCJ3Y0xjZGUiOiJmYWxzZSIsInRCU2xvYiI6ImZhbHNlIiwiWHFNZDMiOiJmYWxzZSIsIndOSVJ5ZiI6ImZhbHNlIiwiRzI1TXNiIjoiZmFsc2UiLCJBNzFDVGIiOiJmYWxzZSIsIm8xMEZvZCI6ImZhbHNlIiwiQVBZUXZkIjoiZmFsc2UiLCJEcGkzR2YiOiJmYWxzZSIsImx0dEVMYiI6ImZhbHNlIiwieElhZjBlIjoiZmFsc2UiLCJVY1l3SGIiOiJmYWxzZSIsImtRcndRZCI6ImZhbHNlIiwiaWhPQTIiOiJmYWxzZSIsIk96am1lZSI6ImZhbHNlIn0sInF3QVFrZSI6IkNvbnNlbnRVaSIsInF5bVZlIjoiIiwicnRRQ3hjIjotMTIwLCJ0aHlraGQiOiJBS0g5NWVzRHVWNlBvLV9FMWdfa0RLeEVMdVgxajc5S2dsX3k1TFVPOVRlQ0NPd0tRcTZzRWpqcmlBQTdud0RweEVTaGVma1FOaDhLUGNuMktZY2M3ZVlVdjNhRjlwNksxcDFIZWJZUVBGMDc3Q01sS3hsRkNjbDJKdElcdTAwM2QiLCJ2QXlpeiI6IkNoVUluSUdObUlPOGtPOC9FTmkvMWFMMHRmekJrUUVcdTAwM2QiLCJ3MmJ0QWUiOiIlLkAubnVsbCxudWxsLFwiXCIsZmFsc2UsbnVsbCxudWxsLHRydWUsZmFsc2VdXG4iLCJ6Q2hKb2QiOiIlLkAuXVxuIn07PC9zY3JpcHQ+PHNjcmlwdCBub25jZT0iU2hMSFBKYlFIUDRldXF0YVdjcHJQUSI+KGZ1bmN0aW9uKCl7LyoKCiBDb3B5cmlnaHQgVGhlIENsb3N1cmUgTGlicmFyeSBBdXRob3JzLgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KJ3VzZSBzdHJpY3QnO3ZhciBhPXdpbmRvdyxkPWEucGVyZm9ybWFuY2UsbD1rKCk7YS5jY19sYXRlbmN5X3N0YXJ0X3RpbWU9ZCYmZC5ub3c/MDpkJiZkLnRpbWluZyYmZC50aW1pbmcubmF2aWdhdGlvblN0YXJ0P2QudGltaW5nLm5hdmlnYXRpb25TdGFydDpsO2Z1bmN0aW9uIGsoKXtyZXR1cm4gZCYmZC5ub3c/ZC5ub3coKToobmV3IERhdGUpLmdldFRpbWUoKX1mdW5jdGlvbiBuKGYpe2lmKGQmJmQubm93JiZkLm1hcmspe3ZhciBoPWQubWFyayhmKTtpZihoKXJldHVybiBoLnN0YXJ0VGltZTtpZihkLmdldEVudHJpZXNCeU5hbWUmJihmPWQuZ2V0RW50cmllc0J5TmFtZShmKS5wb3AoKSkpcmV0dXJuIGYuc3RhcnRUaW1lfXJldHVybiBrKCl9YS5vbmFmdD1mdW5jdGlvbigpe24oImFmdCIpfTthLl9pc0xhenlJbWFnZT1mdW5jdGlvbihmKXtyZXR1cm4gZi5oYXNBdHRyaWJ1dGUoImRhdGEtc3JjIil8fGYuaGFzQXR0cmlidXRlKCJkYXRhLWlscyIpfHwibGF6eSI9PT1mLmdldEF0dHJpYnV0ZSgibG9hZGluZyIpfTsKYS5sPWZ1bmN0aW9uKGYpe2Z1bmN0aW9uIGgoYil7dmFyIGM9e307Y1tiXT1rKCk7YS5jY19sYXRlbmN5LnB1c2goYyl9ZnVuY3Rpb24gbShiKXt2YXIgYz1uKCJpbWwiKTtiLnNldEF0dHJpYnV0ZSgiZGF0YS1pbWwiLGMpO3JldHVybiBjfWEuY2NfYWlkPWY7YS5pbWxfc3RhcnQ9YS5jY19sYXRlbmN5X3N0YXJ0X3RpbWU7YS5jc3Nfc2l6ZT0wO2EuY2NfbGF0ZW5jeT1bXTthLmNjVGljaz1oO2Eub25Kc0xvYWQ9ZnVuY3Rpb24oKXtoKCJqc2wiKX07YS5vbkNzc0xvYWQ9ZnVuY3Rpb24oKXtoKCJjc3NsIil9O2EuX2lzVmlzaWJsZT1mdW5jdGlvbihiLGMsZyl7Zz12b2lkIDA9PT1nPyExOmc7aWYoIWN8fCJub25lIj09Yy5zdHlsZS5kaXNwbGF5KXJldHVybiExO3ZhciBlPWIuZGVmYXVsdFZpZXc7aWYoZSYmZS5nZXRDb21wdXRlZFN0eWxlJiYoZT1lLmdldENvbXB1dGVkU3R5bGUoYyksIjBweCI9PWUuaGVpZ2h0fHwiMHB4Ij09ZS53aWR0aHx8ImhpZGRlbiI9PWUudmlzaWJpbGl0eSYmCiFnKSlyZXR1cm4hMTtpZighYy5nZXRCb3VuZGluZ0NsaWVudFJlY3QpcmV0dXJuITA7ZT1jLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2M9ZS5sZWZ0K2EucGFnZVhPZmZzZXQ7Zz1lLnRvcCthLnBhZ2VZT2Zmc2V0O2lmKDA+ZytlLmhlaWdodHx8MD5jK2Uud2lkdGh8fDA+PWUuaGVpZ2h0fHwwPj1lLndpZHRoKXJldHVybiExO2I9Yi5kb2N1bWVudEVsZW1lbnQ7cmV0dXJuIGc8PShhLmlubmVySGVpZ2h0fHxiLmNsaWVudEhlaWdodCkmJmM8PShhLmlubmVyV2lkdGh8fGIuY2xpZW50V2lkdGgpfTthLl9yZWNvcmRJbWxFbD1tO2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixmdW5jdGlvbihiKXtiPWIudGFyZ2V0O3ZhciBjOyJJTUciIT1iLnRhZ05hbWV8fGIuaGFzQXR0cmlidXRlKCJkYXRhLWlpZCIpfHxhLl9pc0xhenlJbWFnZShiKXx8Yi5oYXNBdHRyaWJ1dGUoImRhdGEtbm9hZnQiKXx8KGM9bShiKSk7aWYoYS5hZnRfY291bnRlciYmKGI9CmEuYWZ0X2NvdW50ZXIuaW5kZXhPZihiKSwtMSE9PWImJihiPTE9PT1hLmFmdF9jb3VudGVyLnNwbGljZShiLDEpLmxlbmd0aCwwPT09YS5hZnRfY291bnRlci5sZW5ndGgmJmImJmMpKSlhLm9uYWZ0KGMpfSwhMCk7YS5wcnQ9LTE7YS53aXpfdGljaz1mdW5jdGlvbigpe3ZhciBiPW4oInBydCIpO2EucHJ0PWJ9fTt9KS5jYWxsKHRoaXMpOwpsKCdkdDVtU2InKTwvc2NyaXB0PjxzY3JpcHQgbm9uY2U9IlNoTEhQSmJRSFA0ZXVxdGFXY3ByUFEiPnZhciBfRl9jc3NSb3dLZXkgPSAnYm9xLWlkZW50aXR5LkNvbnNlbnRVaS5jSDROYWp4dWx0WS5MLkIxLk8nO3ZhciBfRl9jb21iaW5lZFNpZ25hdHVyZSA9ICdBT2FFbWxIMFByNG9Hclo1cnByTTRfRjdyZm0zeFdzOFVBJztmdW5jdGlvbiBfRHVtcEV4Y2VwdGlvbihlKSB7dGhyb3cgZTt9PC9zY3JpcHQ+PHN0eWxlIGRhdGEtaHJlZj0iaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vXy9tc3MvYm9xLWlkZW50aXR5L18vc3Mvaz1ib3EtaWRlbnRpdHkuQ29uc2VudFVpLmNINE5hanh1bHRZLkwuQjEuTy9hbT1Gd0JBL2Q9MS9lZD0xL2N0PXpnbXMvcnM9QU9hRW1sRlk4Y0FqcUFJMUI0eElINk1Oa2t4YTJ0UWw2US9tPW1haW52aWV3LF9iLF90cCIgbm9uY2U9IlNoTEhQSmJRSFA0ZXVxdGFXY3ByUFEiPmh0bWx7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6aGlkZGVufWJvZHl7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7Y29sb3I6cmdiYSgwLDAsMCwwLjg3KTtmb250LWZhbWlseTpSb2JvdG8sUm9ib3RvRHJhZnQsSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7bWFyZ2luOjA7dGV4dC1zaXplLWFkanVzdDoxMDAlfXRleHRhcmVhe2ZvbnQtZmFtaWx5OlJvYm90byxSb2JvdG9EcmFmdCxIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZn1he3RleHQtZGVjb3JhdGlvbjpub25lO2NvbG9yOiMyOTYyZmZ9aW1ne2JvcmRlcjpub25lfSp7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fSNhcHBzLWRlYnVnLXRyYWNlcnN7ZGlzcGxheTpub25lfUBrZXlmcmFtZXMgbWRjLXJpcHBsZS1mZy1yYWRpdXMtaW57MCV7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoMC40LDAsMC4yLDEpO3RyYW5zZm9ybTp0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtc3RhcnQsMCkpIHNjYWxlKDEpfXRve3RyYW5zZm9ybTp0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLDEpKX19QGtleWZyYW1lcyBtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW57MCV7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpsaW5lYXI7b3BhY2l0eTowfXRve29wYWNpdHk6dmFyKC0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5LDApfX1Aa2V5ZnJhbWVzIG1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXR7MCV7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpsaW5lYXI7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLWZnLW9wYWNpdHksMCl9dG97b3BhY2l0eTowfX0uVmZQcGtkLWtzS3NaZC1YeElBcWV7LS1tZGMtcmlwcGxlLWZnLXNpemU6MDstLW1kYy1yaXBwbGUtbGVmdDowOy0tbWRjLXJpcHBsZS10b3A6MDstLW1kYy1yaXBwbGUtZmctc2NhbGU6MTstLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLWVuZDowOy0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtc3RhcnQ6MDstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6cmdiYSgwLDAsMCwwKTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm0sb3BhY2l0eTtwb3NpdGlvbjpyZWxhdGl2ZTtvdXRsaW5lOm5vbmU7b3ZlcmZsb3c6aGlkZGVufS5WZlBwa2Qta3NLc1pkLVh4SUFxZTo6YmVmb3Jle3Bvc2l0aW9uOmFic29sdXRlO2JvcmRlci1yYWRpdXM6NTAlO29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lO2NvbnRlbnQ6IiJ9LlZmUHBrZC1rc0tzWmQtWHhJQXFlOjphZnRlcntwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXItcmFkaXVzOjUwJTtvcGFjaXR5OjA7cG9pbnRlci1ldmVudHM6bm9uZTtjb250ZW50OiIifS5WZlBwa2Qta3NLc1pkLVh4SUFxZTo6YmVmb3Jle3RyYW5zaXRpb246b3BhY2l0eSAxNW1zIGxpbmVhcixiYWNrZ3JvdW5kLWNvbG9yIDE1bXMgbGluZWFyO3otaW5kZXg6MTt6LWluZGV4OnZhcigtLW1kYy1yaXBwbGUtei1pbmRleCwxKX0uVmZQcGtkLWtzS3NaZC1YeElBcWU6OmFmdGVye3otaW5kZXg6MDt6LWluZGV4OnZhcigtLW1kYy1yaXBwbGUtei1pbmRleCwwKX0uVmZQcGtkLWtzS3NaZC1YeElBcWUuVmZQcGtkLWtzS3NaZC1tV1BrM2Q6OmJlZm9yZXt0cmFuc2Zvcm06c2NhbGUodmFyKC0tbWRjLXJpcHBsZS1mZy1zY2FsZSwxKSl9LlZmUHBrZC1rc0tzWmQtWHhJQXFlLlZmUHBrZC1rc0tzWmQtbVdQazNkOjphZnRlcnt0b3A6MDtsZWZ0OjA7dHJhbnNmb3JtOnNjYWxlKDApO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGNlbnRlcn0uVmZQcGtkLWtzS3NaZC1YeElBcWUuVmZQcGtkLWtzS3NaZC1tV1BrM2QtT1dYRVhlLVpOTVRxZDo6YWZ0ZXJ7dG9wOnZhcigtLW1kYy1yaXBwbGUtdG9wLDApO2xlZnQ6dmFyKC0tbWRjLXJpcHBsZS1sZWZ0LDApfS5WZlBwa2Qta3NLc1pkLVh4SUFxZS5WZlBwa2Qta3NLc1pkLW1XUGszZC1PV1hFWGUtVHY4bDVkLWxKZlpNYzo6YWZ0ZXJ7YW5pbWF0aW9uOm1kYy1yaXBwbGUtZmctcmFkaXVzLWluIDIyNW1zIGZvcndhcmRzLG1kYy1yaXBwbGUtZmctb3BhY2l0eS1pbiA3NW1zIGZvcndhcmRzfS5WZlBwa2Qta3NLc1pkLVh4SUFxZS5WZlBwa2Qta3NLc1pkLW1XUGszZC1PV1hFWGUtVHY4bDVkLU9tUzF2Zjo6YWZ0ZXJ7YW5pbWF0aW9uOm1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQgMTUwbXM7dHJhbnNmb3JtOnRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsMCkpIHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsMSkpfS5WZlBwa2Qta3NLc1pkLVh4SUFxZTo6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6IzAwMDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kYy1yaXBwbGUtY29sb3IsIzAwMCl9LlZmUHBrZC1rc0tzWmQtWHhJQXFlOjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZGMtcmlwcGxlLWNvbG9yLCMwMDApfS5WZlBwa2Qta3NLc1pkLVh4SUFxZTpob3Zlcjo6YmVmb3Jle29wYWNpdHk6LjA0O29wYWNpdHk6dmFyKC0tbWRjLXJpcHBsZS1ob3Zlci1vcGFjaXR5LDAuMDQpfS5WZlBwa2Qta3NLc1pkLVh4SUFxZS5WZlBwa2Qta3NLc1pkLW1XUGszZC1PV1hFWGUtQUhlNktjLVhwbkRDZTo6YmVmb3Jle3RyYW5zaXRpb24tZHVyYXRpb246NzVtcztvcGFjaXR5Oi4xMjtvcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtZm9jdXMtb3BhY2l0eSwwLjEyKX0uVmZQcGtkLWtzS3NaZC1YeElBcWU6bm90KC5WZlBwa2Qta3NLc1pkLW1XUGszZCk6Zm9jdXM6OmJlZm9yZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjc1bXM7b3BhY2l0eTouMTI7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLWZvY3VzLW9wYWNpdHksMC4xMil9LlZmUHBrZC1rc0tzWmQtWHhJQXFlOm5vdCguVmZQcGtkLWtzS3NaZC1tV1BrM2QpOjphZnRlcnt0cmFuc2l0aW9uOm9wYWNpdHkgMTUwbXMgbGluZWFyfS5WZlBwa2Qta3NLc1pkLVh4SUFxZTpub3QoLlZmUHBrZC1rc0tzWmQtbVdQazNkKTphY3RpdmU6OmFmdGVye3RyYW5zaXRpb24tZHVyYXRpb246NzVtcztvcGFjaXR5Oi4xMjtvcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtcHJlc3Mtb3BhY2l0eSwwLjEyKX0uVmZQcGtkLWtzS3NaZC1YeElBcWUuVmZQcGtkLWtzS3NaZC1tV1BrM2R7LS1tZGMtcmlwcGxlLWZnLW9wYWNpdHk6dmFyKC0tbWRjLXJpcHBsZS1wcmVzcy1vcGFjaXR5LDAuMTIpfS5WZlBwa2Qta3NLc1pkLVh4SUFxZTo6YmVmb3Jle3RvcDpjYWxjKDUwJSAtIDEwMCUpO2xlZnQ6Y2FsYyg1MCUgLSAxMDAlKTt3aWR0aDoyMDAlO2hlaWdodDoyMDAlfS5WZlBwa2Qta3NLc1pkLVh4SUFxZTo6YWZ0ZXJ7dG9wOmNhbGMoNTAlIC0gMTAwJSk7bGVmdDpjYWxjKDUwJSAtIDEwMCUpO3dpZHRoOjIwMCU7aGVpZ2h0OjIwMCV9LlZmUHBrZC1rc0tzWmQtWHhJQXFlLlZmUHBrZC1rc0tzWmQtbVdQazNkOjphZnRlcnt3aWR0aDp2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsMTAwJSk7aGVpZ2h0OnZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwxMDAlKX0uVmZQcGtkLWtzS3NaZC1YeElBcWVbZGF0YS1tZGMtcmlwcGxlLWlzLXVuYm91bmRlZF0sLlZmUHBrZC1rc0tzWmQtbVdQazNkLU9XWEVYZS1aTk1UcWR7b3ZlcmZsb3c6dmlzaWJsZX0uVmZQcGtkLWtzS3NaZC1YeElBcWVbZGF0YS1tZGMtcmlwcGxlLWlzLXVuYm91bmRlZF06OmJlZm9yZXt0b3A6Y2FsYyg1MCUgLSA1MCUpO2xlZnQ6Y2FsYyg1MCUgLSA1MCUpO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9LlZmUHBrZC1rc0tzWmQtWHhJQXFlW2RhdGEtbWRjLXJpcHBsZS1pcy11bmJvdW5kZWRdOjphZnRlcnt0b3A6Y2FsYyg1MCUgLSA1MCUpO2xlZnQ6Y2FsYyg1MCUgLSA1MCUpO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9LlZmUHBrZC1rc0tzWmQtbVdQazNkLU9XWEVYZS1aTk1UcWQ6OmJlZm9yZXt0b3A6Y2FsYyg1MCUgLSA1MCUpO2xlZnQ6Y2FsYyg1MCUgLSA1MCUpO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9LlZmUHBrZC1rc0tzWmQtbVdQazNkLU9XWEVYZS1aTk1UcWQ6OmFmdGVye3RvcDpjYWxjKDUwJSAtIDUwJSk7bGVmdDpjYWxjKDUwJSAtIDUwJSk7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0uVmZQcGtkLWtzS3NaZC1YeElBcWVbZGF0YS1tZGMtcmlwcGxlLWlzLXVuYm91bmRlZF0uVmZQcGtkLWtzS3NaZC1tV1BrM2Q6OmJlZm9yZXt0b3A6dmFyKC0tbWRjLXJpcHBsZS10b3AsY2FsYyg1MCUgLSA1MCUpKTtsZWZ0OnZhcigtLW1kYy1yaXBwbGUtbGVmdCxjYWxjKDUwJSAtIDUwJSkpO3dpZHRoOnZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwxMDAlKTtoZWlnaHQ6dmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLDEwMCUpfS5WZlBwa2Qta3NLc1pkLVh4SUFxZVtkYXRhLW1kYy1yaXBwbGUtaXMtdW5ib3VuZGVkXS5WZlBwa2Qta3NLc1pkLW1XUGszZDo6YWZ0ZXJ7dG9wOnZhcigtLW1kYy1yaXBwbGUtdG9wLGNhbGMoNTAlIC0gNTAlKSk7bGVmdDp2YXIoLS1tZGMtcmlwcGxlLWxlZnQsY2FsYyg1MCUgLSA1MCUpKX0uVmZQcGtkLWtzS3NaZC1tV1BrM2QtT1dYRVhlLVpOTVRxZC5WZlBwa2Qta3NLc1pkLW1XUGszZDo6YmVmb3Jle3RvcDp2YXIoLS1tZGMtcmlwcGxlLXRvcCxjYWxjKDUwJSAtIDUwJSkpO2xlZnQ6dmFyKC0tbWRjLXJpcHBsZS1sZWZ0LGNhbGMoNTAlIC0gNTAlKSk7d2lkdGg6dmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLDEwMCUpO2hlaWdodDp2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsMTAwJSl9LlZmUHBrZC1rc0tzWmQtbVdQazNkLU9XWEVYZS1aTk1UcWQuVmZQcGtkLWtzS3NaZC1tV1BrM2Q6OmFmdGVye3RvcDp2YXIoLS1tZGMtcmlwcGxlLXRvcCxjYWxjKDUwJSAtIDUwJSkpO2xlZnQ6dmFyKC0tbWRjLXJpcHBsZS1sZWZ0LGNhbGMoNTAlIC0gNTAlKSl9LlZmUHBrZC1rc0tzWmQtWHhJQXFlW2RhdGEtbWRjLXJpcHBsZS1pcy11bmJvdW5kZWRdLlZmUHBrZC1rc0tzWmQtbVdQazNkOjphZnRlcnt3aWR0aDp2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsMTAwJSk7aGVpZ2h0OnZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwxMDAlKX0uVmZQcGtkLWtzS3NaZC1tV1BrM2QtT1dYRVhlLVpOTVRxZC5WZlBwa2Qta3NLc1pkLW1XUGszZDo6YWZ0ZXJ7d2lkdGg6dmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLDEwMCUpO2hlaWdodDp2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsMTAwJSl9LlZmUHBrZC1kZ2wySGYtcHBIbHJmLXNNNU1OYntkaXNwbGF5OmlubGluZX0uVmZQcGtkLUxnYnNTZXstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkO2ZvbnQtZmFtaWx5OlJvYm90byxzYW5zLXNlcmlmO2ZvbnQtZmFtaWx5OnZhcigtLW1kYy10eXBvZ3JhcGh5LWJ1dHRvbi1mb250LWZhbWlseSx2YXIoLS1tZGMtdHlwb2dyYXBoeS1mb250LWZhbWlseSxSb2JvdG8sc2Fucy1zZXJpZikpO2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtc2l6ZTp2YXIoLS1tZGMtdHlwb2dyYXBoeS1idXR0b24tZm9udC1zaXplLDAuODc1cmVtKTtsaW5lLWhlaWdodDoyLjI1cmVtO2xpbmUtaGVpZ2h0OnZhcigtLW1kYy10eXBvZ3JhcGh5LWJ1dHRvbi1saW5lLWhlaWdodCwyLjI1cmVtKTtmb250LXdlaWdodDo1MDA7Zm9udC13ZWlnaHQ6dmFyKC0tbWRjLXR5cG9ncmFwaHktYnV0dG9uLWZvbnQtd2VpZ2h0LDUwMCk7bGV0dGVyLXNwYWNpbmc6LjA4OTI4NTcxNDNlbTtsZXR0ZXItc3BhY2luZzp2YXIoLS1tZGMtdHlwb2dyYXBoeS1idXR0b24tbGV0dGVyLXNwYWNpbmcsMC4wODkyODU3MTQzZW0pO3RleHQtZGVjb3JhdGlvbjpub25lO3RleHQtZGVjb3JhdGlvbjp2YXIoLS1tZGMtdHlwb2dyYXBoeS1idXR0b24tdGV4dC1kZWNvcmF0aW9uLG5vbmUpO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt0ZXh0LXRyYW5zZm9ybTp2YXIoLS1tZGMtdHlwb2dyYXBoeS1idXR0b24tdGV4dC10cmFuc2Zvcm0sdXBwZXJjYXNlKTtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JveC1zaXppbmc6Ym9yZGVyLWJveDttaW4td2lkdGg6NjRweDtib3JkZXI6bm9uZTtvdXRsaW5lOm5vbmU7bGluZS1oZWlnaHQ6aW5oZXJpdDstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7b3ZlcmZsb3c6dmlzaWJsZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LlZmUHBrZC1MZ2JzU2UgLlZmUHBrZC1CRmJOVmUtYkYxdVVie3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7dG9wOjA7bGVmdDowfS5WZlBwa2QtTGdic1NlOjotbW96LWZvY3VzLWlubmVye3BhZGRpbmc6MDtib3JkZXI6MH0uVmZQcGtkLUxnYnNTZTphY3RpdmV7b3V0bGluZTpub25lfS5WZlBwa2QtTGdic1NlOmhvdmVye2N1cnNvcjpwb2ludGVyfS5WZlBwa2QtTGdic1NlOmRpc2FibGVke2N1cnNvcjpkZWZhdWx0O3BvaW50ZXItZXZlbnRzOm5vbmV9LlZmUHBrZC1MZ2JzU2UgLlZmUHBrZC1rQkRzb2R7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6OHB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7Zm9udC1zaXplOjE4cHg7dmVydGljYWwtYWxpZ246dG9wfVtkaXI9cnRsXSAuVmZQcGtkLUxnYnNTZSAuVmZQcGtkLWtCRHNvZCwuVmZQcGtkLUxnYnNTZSAuVmZQcGtkLWtCRHNvZFtkaXI9cnRsXXttYXJnaW4tbGVmdDo4cHg7bWFyZ2luLXJpZ2h0OjB9LlZmUHBrZC1MZ2JzU2UgLlZmUHBrZC1STG1uSmJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtyaWdodDowO2hlaWdodDo0OHB4O2xlZnQ6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKX0uVmZQcGtkLXZRemY4ZCsuVmZQcGtkLWtCRHNvZHttYXJnaW4tbGVmdDo4cHg7bWFyZ2luLXJpZ2h0OjB9W2Rpcj1ydGxdIC5WZlBwa2QtdlF6ZjhkKy5WZlBwa2Qta0JEc29kLC5WZlBwa2QtdlF6ZjhkKy5WZlBwa2Qta0JEc29kW2Rpcj1ydGxde21hcmdpbi1sZWZ0OjA7bWFyZ2luLXJpZ2h0OjhweH1zdmcuVmZQcGtkLWtCRHNvZHtmaWxsOmN1cnJlbnRDb2xvcn0uVmZQcGtkLUxnYnNTZS1PV1hFWGUtTVY3eWViIC5WZlBwa2Qta0JEc29kLC5WZlBwa2QtTGdic1NlLU9XWEVYZS1rOFFwSiAuVmZQcGtkLWtCRHNvZCwuVmZQcGtkLUxnYnNTZS1PV1hFWGUtSU5zQWdjIC5WZlBwa2Qta0JEc29ke21hcmdpbi1sZWZ0Oi00cHg7bWFyZ2luLXJpZ2h0OjhweH1bZGlyPXJ0bF0gLlZmUHBrZC1MZ2JzU2UtT1dYRVhlLU1WN3llYiAuVmZQcGtkLWtCRHNvZCwuVmZQcGtkLUxnYnNTZS1PV1hFWGUtTVY3eWViIC5WZlBwa2Qta0JEc29kW2Rpcj1ydGxdLFtkaXI9cnRsXSAuVmZQcGtkLUxnYnNTZS1PV1hFWGUtazhRcEogLlZmUHBrZC1rQkRzb2QsLlZmUHBrZC1MZ2JzU2UtT1dYRVhlLWs4UXBKIC5WZlBwa2Qta0JEc29kW2Rpcj1ydGxdLFtkaXI9cnRsXSAuVmZQcGtkLUxnYnNTZS1PV1hFWGUtSU5zQWdjIC5WZlBwa2Qta0JEc29kLC5WZlBwa2QtTGdic1NlLU9XWEVYZS1JTnNBZ2MgLlZmUHBrZC1rQkRzb2RbZGlyPXJ0bF0sLlZmUHBrZC1MZ2JzU2UtT1dYRVhlLU1WN3llYiAuVmZQcGtkLXZRemY4ZCsuVmZQcGtkLWtCRHNvZCwuVmZQcGtkLUxnYnNTZS1PV1hFWGUtazhRcEogLlZmUHBrZC12UXpmOGQrLlZmUHBrZC1rQkRzb2QsLlZmUHBrZC1MZ2JzU2UtT1dYRVhlLUlOc0FnYyAuVmZQcGtkLXZRemY4ZCsuVmZQcGtkLWtCRHNvZHttYXJnaW4tbGVmdDo4cHg7bWFyZ2luLXJpZ2h0Oi00cHh9W2Rpcj1ydGxdIC5WZlBwa2QtTGdic1NlLU9XWEVYZS1NVjd5ZWIgLlZmUHBrZC12UXpmOGQrLlZmUHBrZC1rQkRzb2QsLlZmUHBrZC1MZ2JzU2UtT1dYRVhlLU1WN3llYiAuVmZQcGtkLXZRemY4ZCsuVmZQcGtkLWtCRHNvZFtkaXI9cnRsXSxbZGlyPXJ0bF0gLlZmUHBrZC1MZ2JzU2UtT1dYRVhlLWs4UXBKIC5WZlBwa2QtdlF6ZjhkKy5WZlBwa2Qta0JEc29kLC5WZlBwa2QtTGdic1NlLU9XWEVYZS1rOFFwSiAuVmZQcGtkLXZRemY4ZCsuVmZQcGtkLWtCRHNvZFtkaXI9cnRsXSxbZGlyPXJ0bF0gLlZmUHBrZC1MZ2JzU2UtT1dYRVhlLUlOc0FnYyAuVmZQcGtkLXZRemY4ZCsuVmZQcGtkLWtCRHNvZCwuVmZQcGtkLUxnYnNTZS1PV1hFWGUtSU5zQWdjIC5WZlBwa2QtdlF6ZjhkKy5WZlBwa2Qta0JEc29kW2Rpcj1ydGxde21hcmdpbi1sZWZ0Oi00cHg7bWFyZ2luLXJpZ2h0OjhweH0uVmZQcGtkLUxnYnNTZS1PV1hFWGUtZGdsMkhme21hcmdpbi10b3A6NnB4O21hcmdpbi1ib3R0b206NnB4fS5WZlBwa2QtTGdic1Nley0tbWRjLXJpcHBsZS1mZy1zaXplOjA7LS1tZGMtcmlwcGxlLWxlZnQ6MDstLW1kYy1yaXBwbGUtdG9wOjA7LS1tZGMtcmlwcGxlLWZnLXNjYWxlOjE7LS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQ6MDstLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OjA7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsMCk7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLG9wYWNpdHl9LlZmUHBrZC1MZ2JzU2UgLlZmUHBrZC1KaDlsR2M6OmJlZm9yZSwuVmZQcGtkLUxnYnNTZSAuVmZQcGtkLUpoOWxHYzo6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyLXJhZGl1czo1MCU7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmU7Y29udGVudDoiIn0uVmZQcGtkLUxnYnNTZSAuVmZQcGtkLUpoOWxHYzo6YmVmb3Jle3RyYW5zaXRpb246b3BhY2l0eSAxNW1zIGxpbmVhcixiYWNrZ3JvdW5kLWNvbG9yIDE1bXMgbGluZWFyO3otaW5kZXg6MTt6LWluZGV4OnZhcigtLW1kYy1yaXBwbGUtei1pbmRleCwxKX0uVmZQcGtkLUxnYnNTZSAuVmZQcGtkLUpoOWxHYzo6YWZ0ZXJ7ei1pbmRleDowO3otaW5kZXg6dmFyKC0tbWRjLXJpcHBsZS16LWluZGV4LDApfS5WZlBwa2QtTGdic1NlLlZmUHBrZC1rc0tzWmQtbVdQazNkIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmV7dHJhbnNmb3JtOnNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsMSkpfS5WZlBwa2QtTGdic1NlLlZmUHBrZC1rc0tzWmQtbVdQazNkIC5WZlBwa2QtSmg5bEdjOjphZnRlcnt0b3A6MDtsZWZ0OjA7dHJhbnNmb3JtOnNjYWxlKDApO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGNlbnRlcn0uVmZQcGtkLUxnYnNTZS5WZlBwa2Qta3NLc1pkLW1XUGszZC1PV1hFWGUtWk5NVHFkIC5WZlBwa2QtSmg5bEdjOjphZnRlcnt0b3A6dmFyKC0tbWRjLXJpcHBsZS10b3AsMCk7bGVmdDp2YXIoLS1tZGMtcmlwcGxlLWxlZnQsMCl9LlZmUHBrZC1MZ2JzU2UuVmZQcGtkLWtzS3NaZC1tV1BrM2QtT1dYRVhlLVR2OGw1ZC1sSmZaTWMgLlZmUHBrZC1KaDlsR2M6OmFmdGVye2FuaW1hdGlvbjptZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiAyMjVtcyBmb3J3YXJkcyxtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gNzVtcyBmb3J3YXJkc30uVmZQcGtkLUxnYnNTZS5WZlBwa2Qta3NLc1pkLW1XUGszZC1PV1hFWGUtVHY4bDVkLU9tUzF2ZiAuVmZQcGtkLUpoOWxHYzo6YWZ0ZXJ7YW5pbWF0aW9uOm1kYy1yaXBwbGUtZmctb3BhY2l0eS1vdXQgMTUwbXM7dHJhbnNmb3JtOnRyYW5zbGF0ZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQsMCkpIHNjYWxlKHZhcigtLW1kYy1yaXBwbGUtZmctc2NhbGUsMSkpfS5WZlBwa2QtTGdic1NlIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmUsLlZmUHBrZC1MZ2JzU2UgLlZmUHBrZC1KaDlsR2M6OmFmdGVye3RvcDpjYWxjKDUwJSAtIDEwMCUpO2xlZnQ6Y2FsYyg1MCUgLSAxMDAlKTt3aWR0aDoyMDAlO2hlaWdodDoyMDAlfS5WZlBwa2QtTGdic1NlLlZmUHBrZC1rc0tzWmQtbVdQazNkIC5WZlBwa2QtSmg5bEdjOjphZnRlcnt3aWR0aDp2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsMTAwJSk7aGVpZ2h0OnZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwxMDAlKX0uVmZQcGtkLUxnYnNTZSAuVmZQcGtkLUpoOWxHY3twb3NpdGlvbjphYnNvbHV0ZTtib3gtc2l6aW5nOmNvbnRlbnQtYm94O3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6aGlkZGVufS5WZlBwa2QtTGdic1NlOm5vdCguVmZQcGtkLUxnYnNTZS1PV1hFWGUtSU5zQWdjKSAuVmZQcGtkLUpoOWxHY3t0b3A6MDtsZWZ0OjB9LlZmUHBrZC1MZ2JzU2UtT1dYRVhlLU1WN3llYntib3gtc2hhZG93OjAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsMC4yKSwwIDJweCAycHggMCByZ2JhKDAsMCwwLDAuMTQpLDAgMXB4IDVweCAwIHJnYmEoMCwwLDAsMC4xMik7dHJhbnNpdGlvbjpib3gtc2hhZG93IDI4MG1zIGN1YmljLWJlemllcigwLjQsMCwwLjIsMSl9LlZmUHBrZC1MZ2JzU2UtT1dYRVhlLU1WN3llYjpob3ZlciwuVmZQcGtkLUxnYnNTZS1PV1hFWGUtTVY3eWViOmZvY3Vze2JveC1zaGFkb3c6MCAycHggNHB4IC0xcHggcmdiYSgwLDAsMCwwLjIpLDAgNHB4IDVweCAwIHJnYmEoMCwwLDAsMC4xNCksMCAxcHggMTBweCAwIHJnYmEoMCwwLDAsMC4xMil9LlZmUHBrZC1MZ2JzU2UtT1dYRVhlLU1WN3llYjphY3RpdmV7Ym94LXNoYWRvdzowIDVweCA1cHggLTNweCByZ2JhKDAsMCwwLDAuMiksMCA4cHggMTBweCAxcHggcmdiYSgwLDAsMCwwLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLDAuMTIpfS5WZlBwa2QtTGdic1NlLU9XWEVYZS1NVjd5ZWI6ZGlzYWJsZWR7Ym94LXNoYWRvdzowIDAgMCAwIHJnYmEoMCwwLDAsMC4yKSwwIDAgMCAwIHJnYmEoMCwwLDAsMC4xNCksMCAwIDAgMCByZ2JhKDAsMCwwLDAuMTIpfS5WZlBwa2QtTGdic1NlLU9XWEVYZS1JTnNBZ2N7Ym9yZGVyLXN0eWxlOnNvbGlkfS5WZlBwa2QtTGdic1Nle2hlaWdodDozNnB4O2JvcmRlci1yYWRpdXM6NHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tbWRjLXNoYXBlLXNtYWxsLDRweCk7cGFkZGluZzowIDhweCAwIDhweH0uVmZQcGtkLUxnYnNTZTpub3QoOmRpc2FibGVkKSwuVmZQcGtkLUxnYnNTZTpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5WZlBwa2QtTGdic1NlOm5vdCg6ZGlzYWJsZWQpe2NvbG9yOiM2MjAwZWU7Y29sb3I6dmFyKC0tbWRjLXRoZW1lLXByaW1hcnksIzYyMDBlZSl9LlZmUHBrZC1MZ2JzU2U6ZGlzYWJsZWR7Y29sb3I6cmdiYSgwLDAsMCwwLjM4KX0uVmZQcGtkLUxnYnNTZSAuVmZQcGtkLUpoOWxHYzo6YmVmb3JlLC5WZlBwa2QtTGdic1NlIC5WZlBwa2QtSmg5bEdjOjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiM2MjAwZWU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZGMtcmlwcGxlLWNvbG9yLHZhcigtLW1kYy10aGVtZS1wcmltYXJ5LCM2MjAwZWUpKX0uVmZQcGtkLUxnYnNTZTpob3ZlciAuVmZQcGtkLUpoOWxHYzo6YmVmb3Jle29wYWNpdHk6LjA0O29wYWNpdHk6dmFyKC0tbWRjLXJpcHBsZS1ob3Zlci1vcGFjaXR5LDAuMDQpfS5WZlBwa2QtTGdic1NlLlZmUHBrZC1rc0tzWmQtbVdQazNkLU9XWEVYZS1BSGU2S2MtWHBuRENlIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmUsLlZmUHBrZC1MZ2JzU2U6bm90KC5WZlBwa2Qta3NLc1pkLW1XUGszZCk6Zm9jdXMgLlZmUHBrZC1KaDlsR2M6OmJlZm9yZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjc1bXM7b3BhY2l0eTouMTI7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLWZvY3VzLW9wYWNpdHksMC4xMil9LlZmUHBrZC1MZ2JzU2U6bm90KC5WZlBwa2Qta3NLc1pkLW1XUGszZCkgLlZmUHBrZC1KaDlsR2M6OmFmdGVye3RyYW5zaXRpb246b3BhY2l0eSAxNTBtcyBsaW5lYXJ9LlZmUHBrZC1MZ2JzU2U6bm90KC5WZlBwa2Qta3NLc1pkLW1XUGszZCk6YWN0aXZlIC5WZlBwa2QtSmg5bEdjOjphZnRlcnt0cmFuc2l0aW9uLWR1cmF0aW9uOjc1bXM7b3BhY2l0eTouMTI7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLXByZXNzLW9wYWNpdHksMC4xMil9LlZmUHBrZC1MZ2JzU2UuVmZQcGtkLWtzS3NaZC1tV1BrM2R7LS1tZGMtcmlwcGxlLWZnLW9wYWNpdHk6dmFyKC0tbWRjLXJpcHBsZS1wcmVzcy1vcGFjaXR5LDAuMTIpfS5WZlBwa2QtTGdic1NlIC5WZlBwa2QtSmg5bEdje2JvcmRlci1yYWRpdXM6NHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tbWRjLXNoYXBlLXNtYWxsLDRweCl9LlZmUHBrZC1MZ2JzU2UtT1dYRVhlLWs4UXBKe3BhZGRpbmc6MCAxNnB4IDAgMTZweDtoZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjRweDtib3JkZXItcmFkaXVzOnZhcigtLW1kYy1zaGFwZS1zbWFsbCw0cHgpfS5WZlBwa2QtTGdic1NlLU9XWEVYZS1rOFFwSjpub3QoOmRpc2FibGVkKXtiYWNrZ3JvdW5kLWNvbG9yOiM2MjAwZWU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwjNjIwMGVlKX0uVmZQcGtkLUxnYnNTZS1PV1hFWGUtazhRcEo6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIpfS5WZlBwa2QtTGdic1NlLU9XWEVYZS1rOFFwSjpub3QoOmRpc2FibGVkKXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kYy10aGVtZS1vbi1wcmltYXJ5LCNmZmYpfS5WZlBwa2QtTGdic1NlLU9XWEVYZS1rOFFwSjpkaXNhYmxlZHtjb2xvcjpyZ2JhKDAsMCwwLDAuMzgpfS5WZlBwa2QtTGdic1NlLU9XWEVYZS1rOFFwSiAuVmZQcGtkLUpoOWxHYzo6YmVmb3JlLC5WZlBwa2QtTGdic1NlLU9XWEVYZS1rOFFwSiAuVmZQcGtkLUpoOWxHYzo6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWRjLXJpcHBsZS1jb2xvcix2YXIoLS1tZGMtdGhlbWUtb24tcHJpbWFyeSwjZmZmKSl9LlZmUHBrZC1MZ2JzU2UtT1dYRVhlLWs4UXBKOmhvdmVyIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmV7b3BhY2l0eTouMDg7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLWhvdmVyLW9wYWNpdHksMC4wOCl9LlZmUHBrZC1MZ2JzU2UtT1dYRVhlLWs4UXBKLlZmUHBrZC1rc0tzWmQtbVdQazNkLU9XWEVYZS1BSGU2S2MtWHBuRENlIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmUsLlZmUHBrZC1MZ2JzU2UtT1dYRVhlLWs4UXBKOm5vdCguVmZQcGtkLWtzS3NaZC1tV1BrM2QpOmZvY3VzIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmV7dHJhbnNpdGlvbi1kdXJhdGlvbjo3NW1zO29wYWNpdHk6LjI0O29wYWNpdHk6dmFyKC0tbWRjLXJpcHBsZS1mb2N1cy1vcGFjaXR5LDAuMjQpfS5WZlBwa2QtTGdic1NlLU9XWEVYZS1rOFFwSjpub3QoLlZmUHBrZC1rc0tzWmQtbVdQazNkKSAuVmZQcGtkLUpoOWxHYzo6YWZ0ZXJ7dHJhbnNpdGlvbjpvcGFjaXR5IDE1MG1zIGxpbmVhcn0uVmZQcGtkLUxnYnNTZS1PV1hFWGUtazhRcEo6bm90KC5WZlBwa2Qta3NLc1pkLW1XUGszZCk6YWN0aXZlIC5WZlBwa2QtSmg5bEdjOjphZnRlcnt0cmFuc2l0aW9uLWR1cmF0aW9uOjc1bXM7b3BhY2l0eTouMjQ7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLXByZXNzLW9wYWNpdHksMC4yNCl9LlZmUHBrZC1MZ2JzU2UtT1dYRVhlLWs4UXBKLlZmUHBrZC1rc0tzWmQtbVdQazNkey0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtcHJlc3Mtb3BhY2l0eSwwLjI0KX0uVmZQcGtkLUxnYnNTZS1PV1hFWGUtazhRcEogLlZmUHBrZC1KaDlsR2N7Ym9yZGVyLXJhZGl1czo0cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1tZGMtc2hhcGUtc21hbGwsNHB4KX0uVmZQcGtkLUxnYnNTZS1PV1hFWGUtTVY3eWVie3BhZGRpbmc6MCAxNnB4IDAgMTZweDtoZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjRweDtib3JkZXItcmFkaXVzOnZhcigtLW1kYy1zaGFwZS1zbWFsbCw0cHgpfS5WZlBwa2QtTGdic1NlLU9XWEVYZS1NVjd5ZWI6bm90KDpkaXNhYmxlZCl7YmFja2dyb3VuZC1jb2xvcjojNjIwMGVlO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWRjLXRoZW1lLXByaW1hcnksIzYyMDBlZSl9LlZmUHBrZC1MZ2JzU2UtT1dYRVhlLU1WN3llYjpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xMil9LlZmUHBrZC1MZ2JzU2UtT1dYRVhlLU1WN3llYjpub3QoOmRpc2FibGVkKXtjb2xvcjojZmZmO2NvbG9yOnZhcigtLW1kYy10aGVtZS1vbi1wcmltYXJ5LCNmZmYpfS5WZlBwa2QtTGdic1NlLU9XWEVYZS1NVjd5ZWI6ZGlzYWJsZWR7Y29sb3I6cmdiYSgwLDAsMCwwLjM4KX0uVmZQcGtkLUxnYnNTZS1PV1hFWGUtTVY3eWViIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmUsLlZmUHBrZC1MZ2JzU2UtT1dYRVhlLU1WN3llYiAuVmZQcGtkLUpoOWxHYzo6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWRjLXJpcHBsZS1jb2xvcix2YXIoLS1tZGMtdGhlbWUtb24tcHJpbWFyeSwjZmZmKSl9LlZmUHBrZC1MZ2JzU2UtT1dYRVhlLU1WN3llYjpob3ZlciAuVmZQcGtkLUpoOWxHYzo6YmVmb3Jle29wYWNpdHk6LjA4O29wYWNpdHk6dmFyKC0tbWRjLXJpcHBsZS1ob3Zlci1vcGFjaXR5LDAuMDgpfS5WZlBwa2QtTGdic1NlLU9XWEVYZS1NVjd5ZWIuVmZQcGtkLWtzS3NaZC1tV1BrM2QtT1dYRVhlLUFIZTZLYy1YcG5EQ2UgLlZmUHBrZC1KaDlsR2M6OmJlZm9yZSwuVmZQcGtkLUxnYnNTZS1PV1hFWGUtTVY3eWViOm5vdCguVmZQcGtkLWtzS3NaZC1tV1BrM2QpOmZvY3VzIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmV7dHJhbnNpdGlvbi1kdXJhdGlvbjo3NW1zO29wYWNpdHk6LjI0O29wYWNpdHk6dmFyKC0tbWRjLXJpcHBsZS1mb2N1cy1vcGFjaXR5LDAuMjQpfS5WZlBwa2QtTGdic1NlLU9XWEVYZS1NVjd5ZWI6bm90KC5WZlBwa2Qta3NLc1pkLW1XUGszZCkgLlZmUHBrZC1KaDlsR2M6OmFmdGVye3RyYW5zaXRpb246b3BhY2l0eSAxNTBtcyBsaW5lYXJ9LlZmUHBrZC1MZ2JzU2UtT1dYRVhlLU1WN3llYjpub3QoLlZmUHBrZC1rc0tzWmQtbVdQazNkKTphY3RpdmUgLlZmUHBrZC1KaDlsR2M6OmFmdGVye3RyYW5zaXRpb24tZHVyYXRpb246NzVtcztvcGFjaXR5Oi4yNDtvcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtcHJlc3Mtb3BhY2l0eSwwLjI0KX0uVmZQcGtkLUxnYnNTZS1PV1hFWGUtTVY3eWViLlZmUHBrZC1rc0tzWmQtbVdQazNkey0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtcHJlc3Mtb3BhY2l0eSwwLjI0KX0uVmZQcGtkLUxnYnNTZS1PV1hFWGUtTVY3eWViIC5WZlBwa2QtSmg5bEdje2JvcmRlci1yYWRpdXM6NHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tbWRjLXNoYXBlLXNtYWxsLDRweCl9LlZmUHBrZC1MZ2JzU2UtT1dYRVhlLUlOc0FnY3toZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjRweDtib3JkZXItcmFkaXVzOnZhcigtLW1kYy1zaGFwZS1zbWFsbCw0cHgpO3BhZGRpbmc6MCAxNXB4IDAgMTVweDtib3JkZXItd2lkdGg6MXB4fS5WZlBwa2QtTGdic1NlLU9XWEVYZS1JTnNBZ2M6bm90KDpkaXNhYmxlZCksLlZmUHBrZC1MZ2JzU2UtT1dYRVhlLUlOc0FnYzpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5WZlBwa2QtTGdic1NlLU9XWEVYZS1JTnNBZ2M6bm90KDpkaXNhYmxlZCl7Y29sb3I6IzYyMDBlZTtjb2xvcjp2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwjNjIwMGVlKX0uVmZQcGtkLUxnYnNTZS1PV1hFWGUtSU5zQWdjOmRpc2FibGVke2NvbG9yOnJnYmEoMCwwLDAsMC4zOCl9LlZmUHBrZC1MZ2JzU2UtT1dYRVhlLUlOc0FnYyAuVmZQcGtkLUpoOWxHYzo6YmVmb3JlLC5WZlBwa2QtTGdic1NlLU9XWEVYZS1JTnNBZ2MgLlZmUHBrZC1KaDlsR2M6OmFmdGVye2JhY2tncm91bmQtY29sb3I6IzYyMDBlZTtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kYy1yaXBwbGUtY29sb3IsdmFyKC0tbWRjLXRoZW1lLXByaW1hcnksIzYyMDBlZSkpfS5WZlBwa2QtTGdic1NlLU9XWEVYZS1JTnNBZ2M6aG92ZXIgLlZmUHBrZC1KaDlsR2M6OmJlZm9yZXtvcGFjaXR5Oi4wNDtvcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtaG92ZXItb3BhY2l0eSwwLjA0KX0uVmZQcGtkLUxnYnNTZS1PV1hFWGUtSU5zQWdjLlZmUHBrZC1rc0tzWmQtbVdQazNkLU9XWEVYZS1BSGU2S2MtWHBuRENlIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmUsLlZmUHBrZC1MZ2JzU2UtT1dYRVhlLUlOc0FnYzpub3QoLlZmUHBrZC1rc0tzWmQtbVdQazNkKTpmb2N1cyAuVmZQcGtkLUpoOWxHYzo6YmVmb3Jle3RyYW5zaXRpb24tZHVyYXRpb246NzVtcztvcGFjaXR5Oi4xMjtvcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtZm9jdXMtb3BhY2l0eSwwLjEyKX0uVmZQcGtkLUxnYnNTZS1PV1hFWGUtSU5zQWdjOm5vdCguVmZQcGtkLWtzS3NaZC1tV1BrM2QpIC5WZlBwa2QtSmg5bEdjOjphZnRlcnt0cmFuc2l0aW9uOm9wYWNpdHkgMTUwbXMgbGluZWFyfS5WZlBwa2QtTGdic1NlLU9XWEVYZS1JTnNBZ2M6bm90KC5WZlBwa2Qta3NLc1pkLW1XUGszZCk6YWN0aXZlIC5WZlBwa2QtSmg5bEdjOjphZnRlcnt0cmFuc2l0aW9uLWR1cmF0aW9uOjc1bXM7b3BhY2l0eTouMTI7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLXByZXNzLW9wYWNpdHksMC4xMil9LlZmUHBrZC1MZ2JzU2UtT1dYRVhlLUlOc0FnYy5WZlBwa2Qta3NLc1pkLW1XUGszZHstLW1kYy1yaXBwbGUtZmctb3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLXByZXNzLW9wYWNpdHksMC4xMil9LlZmUHBrZC1MZ2JzU2UtT1dYRVhlLUlOc0FnYyAuVmZQcGtkLUpoOWxHY3tib3JkZXItcmFkaXVzOjRweDtib3JkZXItcmFkaXVzOnZhcigtLW1kYy1zaGFwZS1zbWFsbCw0cHgpfS5WZlBwa2QtTGdic1NlLU9XWEVYZS1JTnNBZ2M6bm90KDpkaXNhYmxlZCksLlZmUHBrZC1MZ2JzU2UtT1dYRVhlLUlOc0FnYzpkaXNhYmxlZHtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjEyKX0uVmZQcGtkLUxnYnNTZS1PV1hFWGUtSU5zQWdjIC5WZlBwa2QtSmg5bEdje3RvcDotMXB4O2xlZnQ6LTFweDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50fS5WZlBwa2QtTGdic1NlLU9XWEVYZS1JTnNBZ2MgLlZmUHBrZC1STG1uSmJ7bGVmdDotMXB4O3dpZHRoOmNhbGMoMTAwJSArIDIqMXB4KX0uVmZQcGtkLUJ6MTEyYy1MZ2JzU2V7ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246cmVsYXRpdmU7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjpub25lO291dGxpbmU6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2ZpbGw6Y3VycmVudENvbG9yO2NvbG9yOmluaGVyaXQ7Zm9udC1zaXplOjI0cHg7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Y3Vyc29yOnBvaW50ZXI7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHg7cGFkZGluZzoxMnB4fS5WZlBwa2QtQnoxMTJjLUxnYnNTZSBzdmcsLlZmUHBrZC1CejExMmMtTGdic1NlIGltZ3t3aWR0aDoyNHB4O2hlaWdodDoyNHB4fS5WZlBwa2QtQnoxMTJjLUxnYnNTZTpkaXNhYmxlZHtjb2xvcjpyZ2JhKDAsMCwwLDAuMzgpO2NvbG9yOnZhcigtLW1kYy10aGVtZS10ZXh0LWRpc2FibGVkLW9uLWxpZ2h0LHJnYmEoMCwwLDAsMC4zOCkpO2N1cnNvcjpkZWZhdWx0O3BvaW50ZXItZXZlbnRzOm5vbmV9LlZmUHBrZC1CejExMmMta0JEc29ke2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5WZlBwa2QtQnoxMTJjLWtCRHNvZC5WZlBwa2QtQnoxMTJjLWtCRHNvZC1PV1hFWGUtSVQ1ZEpkLC5WZlBwa2QtQnoxMTJjLUxnYnNTZS1PV1hFWGUtSVQ1ZEpkIC5WZlBwa2QtQnoxMTJjLWtCRHNvZHtkaXNwbGF5Om5vbmV9LlZmUHBrZC1CejExMmMtTGdic1NlLU9XWEVYZS1JVDVkSmQgLlZmUHBrZC1CejExMmMta0JEc29kLlZmUHBrZC1CejExMmMta0JEc29kLU9XWEVYZS1JVDVkSmR7ZGlzcGxheTppbmxpbmUtYmxvY2t9LlZmUHBrZC1CejExMmMtTGdic1Nley0tbWRjLXJpcHBsZS1mZy1zaXplOjA7LS1tZGMtcmlwcGxlLWxlZnQ6MDstLW1kYy1yaXBwbGUtdG9wOjA7LS1tZGMtcmlwcGxlLWZnLXNjYWxlOjE7LS1tZGMtcmlwcGxlLWZnLXRyYW5zbGF0ZS1lbmQ6MDstLW1kYy1yaXBwbGUtZmctdHJhbnNsYXRlLXN0YXJ0OjA7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsMCk7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLG9wYWNpdHl9LlZmUHBrZC1CejExMmMtTGdic1NlOjpiZWZvcmV7cG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyLXJhZGl1czo1MCU7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmU7Y29udGVudDoiIn0uVmZQcGtkLUJ6MTEyYy1MZ2JzU2U6OmFmdGVye3Bvc2l0aW9uOmFic29sdXRlO2JvcmRlci1yYWRpdXM6NTAlO29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lO2NvbnRlbnQ6IiJ9LlZmUHBrZC1CejExMmMtTGdic1NlOjpiZWZvcmV7dHJhbnNpdGlvbjpvcGFjaXR5IDE1bXMgbGluZWFyLGJhY2tncm91bmQtY29sb3IgMTVtcyBsaW5lYXI7ei1pbmRleDoxO3otaW5kZXg6dmFyKC0tbWRjLXJpcHBsZS16LWluZGV4LDEpfS5WZlBwa2QtQnoxMTJjLUxnYnNTZTo6YWZ0ZXJ7ei1pbmRleDowO3otaW5kZXg6dmFyKC0tbWRjLXJpcHBsZS16LWluZGV4LDApfS5WZlBwa2QtQnoxMTJjLUxnYnNTZS5WZlBwa2Qta3NLc1pkLW1XUGszZDo6YmVmb3Jle3RyYW5zZm9ybTpzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLDEpKX0uVmZQcGtkLUJ6MTEyYy1MZ2JzU2UuVmZQcGtkLWtzS3NaZC1tV1BrM2Q6OmFmdGVye3RyYW5zZm9ybTpzY2FsZSgwKTt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlciBjZW50ZXJ9LlZmUHBrZC1CejExMmMtTGdic1NlLlZmUHBrZC1rc0tzWmQtbVdQazNkLU9XWEVYZS1aTk1UcWQ6OmFmdGVye3RvcDp2YXIoLS1tZGMtcmlwcGxlLXRvcCwwKTtsZWZ0OnZhcigtLW1kYy1yaXBwbGUtbGVmdCwwKX0uVmZQcGtkLUJ6MTEyYy1MZ2JzU2UuVmZQcGtkLWtzS3NaZC1tV1BrM2QtT1dYRVhlLVR2OGw1ZC1sSmZaTWM6OmFmdGVye2FuaW1hdGlvbjptZGMtcmlwcGxlLWZnLXJhZGl1cy1pbiAyMjVtcyBmb3J3YXJkcyxtZGMtcmlwcGxlLWZnLW9wYWNpdHktaW4gNzVtcyBmb3J3YXJkc30uVmZQcGtkLUJ6MTEyYy1MZ2JzU2UuVmZQcGtkLWtzS3NaZC1tV1BrM2QtT1dYRVhlLVR2OGw1ZC1PbVMxdmY6OmFmdGVye2FuaW1hdGlvbjptZGMtcmlwcGxlLWZnLW9wYWNpdHktb3V0IDE1MG1zO3RyYW5zZm9ybTp0cmFuc2xhdGUodmFyKC0tbWRjLXJpcHBsZS1mZy10cmFuc2xhdGUtZW5kLDApKSBzY2FsZSh2YXIoLS1tZGMtcmlwcGxlLWZnLXNjYWxlLDEpKX0uVmZQcGtkLUJ6MTEyYy1MZ2JzU2U6OmJlZm9yZXt0b3A6Y2FsYyg1MCUgLSA1MCUpO2xlZnQ6Y2FsYyg1MCUgLSA1MCUpO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9LlZmUHBrZC1CejExMmMtTGdic1NlOjphZnRlcnt0b3A6Y2FsYyg1MCUgLSA1MCUpO2xlZnQ6Y2FsYyg1MCUgLSA1MCUpO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9LlZmUHBrZC1CejExMmMtTGdic1NlLlZmUHBrZC1rc0tzWmQtbVdQazNkOjpiZWZvcmV7dG9wOnZhcigtLW1kYy1yaXBwbGUtdG9wLGNhbGMoNTAlIC0gNTAlKSk7bGVmdDp2YXIoLS1tZGMtcmlwcGxlLWxlZnQsY2FsYyg1MCUgLSA1MCUpKTt3aWR0aDp2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsMTAwJSk7aGVpZ2h0OnZhcigtLW1kYy1yaXBwbGUtZmctc2l6ZSwxMDAlKX0uVmZQcGtkLUJ6MTEyYy1MZ2JzU2UuVmZQcGtkLWtzS3NaZC1tV1BrM2Q6OmFmdGVye3RvcDp2YXIoLS1tZGMtcmlwcGxlLXRvcCxjYWxjKDUwJSAtIDUwJSkpO2xlZnQ6dmFyKC0tbWRjLXJpcHBsZS1sZWZ0LGNhbGMoNTAlIC0gNTAlKSk7d2lkdGg6dmFyKC0tbWRjLXJpcHBsZS1mZy1zaXplLDEwMCUpO2hlaWdodDp2YXIoLS1tZGMtcmlwcGxlLWZnLXNpemUsMTAwJSl9LlZmUHBrZC1CejExMmMtTGdic1NlOjpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjojMDAwO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWRjLXJpcHBsZS1jb2xvciwjMDAwKX0uVmZQcGtkLUJ6MTEyYy1MZ2JzU2U6OmFmdGVye2JhY2tncm91bmQtY29sb3I6IzAwMDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLW1kYy1yaXBwbGUtY29sb3IsIzAwMCl9LlZmUHBrZC1CejExMmMtTGdic1NlOmhvdmVyOjpiZWZvcmV7b3BhY2l0eTouMDQ7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLWhvdmVyLW9wYWNpdHksMC4wNCl9LlZmUHBrZC1CejExMmMtTGdic1NlLlZmUHBrZC1rc0tzWmQtbVdQazNkLU9XWEVYZS1BSGU2S2MtWHBuRENlOjpiZWZvcmV7dHJhbnNpdGlvbi1kdXJhdGlvbjo3NW1zO29wYWNpdHk6LjEyO29wYWNpdHk6dmFyKC0tbWRjLXJpcHBsZS1mb2N1cy1vcGFjaXR5LDAuMTIpfS5WZlBwa2QtQnoxMTJjLUxnYnNTZTpub3QoLlZmUHBrZC1rc0tzWmQtbVdQazNkKTpmb2N1czo6YmVmb3Jle3RyYW5zaXRpb24tZHVyYXRpb246NzVtcztvcGFjaXR5Oi4xMjtvcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtZm9jdXMtb3BhY2l0eSwwLjEyKX0uVmZQcGtkLUJ6MTEyYy1MZ2JzU2U6bm90KC5WZlBwa2Qta3NLc1pkLW1XUGszZCk6OmFmdGVye3RyYW5zaXRpb246b3BhY2l0eSAxNTBtcyBsaW5lYXJ9LlZmUHBrZC1CejExMmMtTGdic1NlOm5vdCguVmZQcGtkLWtzS3NaZC1tV1BrM2QpOmFjdGl2ZTo6YWZ0ZXJ7dHJhbnNpdGlvbi1kdXJhdGlvbjo3NW1zO29wYWNpdHk6LjEyO29wYWNpdHk6dmFyKC0tbWRjLXJpcHBsZS1wcmVzcy1vcGFjaXR5LDAuMTIpfS5WZlBwa2QtQnoxMTJjLUxnYnNTZS5WZlBwa2Qta3NLc1pkLW1XUGszZHstLW1kYy1yaXBwbGUtZmctb3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLXByZXNzLW9wYWNpdHksMC4xMil9Lm5DUDV5Y3tmb250LWZhbWlseToiR29vZ2xlIFNhbnMiLFJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZTouODc1cmVtO2xldHRlci1zcGFjaW5nOi4wMTA3MTQyODU3ZW07Zm9udC13ZWlnaHQ6NTAwO3RleHQtdHJhbnNmb3JtOm5vbmU7dHJhbnNpdGlvbjpib3JkZXIgMjgwbXMgY3ViaWMtYmV6aWVyKDAuNCwwLDAuMiwxKSxib3gtc2hhZG93IDI4MG1zIGN1YmljLWJlemllcigwLjQsMCwwLjIsMSk7Ym94LXNoYWRvdzpub25lfS5uQ1A1eWMgLlZmUHBrZC1KaDlsR2N7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGU7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjEwMCU7ei1pbmRleDowfS5uQ1A1eWMgLlZmUHBrZC12UXpmOGQsLm5DUDV5YyAuVmZQcGtkLWtCRHNvZHtwb3NpdGlvbjpyZWxhdGl2ZX0ubkNQNXljOm5vdCg6ZGlzYWJsZWQpe2JhY2tncm91bmQtY29sb3I6IzFhNzNlODtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWdtLWZpbGxidXR0b24tY29udGFpbmVyLWNvbG9yLCMxYTczZTgpO2NvbG9yOiNmZmY7Y29sb3I6dmFyKC0tZ20tZmlsbGJ1dHRvbi1pbmstY29sb3IsI2ZmZil9Lm5DUDV5YzpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoNjAsNjQsNjcsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1nbS1maWxsYnV0dG9uLWRpc2FibGVkLWNvbnRhaW5lci1jb2xvcixyZ2JhKDYwLDY0LDY3LDAuMTIpKTtjb2xvcjpyZ2JhKDYwLDY0LDY3LDAuMzgpO2NvbG9yOnZhcigtLWdtLWZpbGxidXR0b24tZGlzYWJsZWQtaW5rLWNvbG9yLHJnYmEoNjAsNjQsNjcsMC4zOCkpfS5uQ1A1eWMgLlZmUHBrZC1KaDlsR2M6OmJlZm9yZSwubkNQNXljIC5WZlBwa2QtSmg5bEdjOjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMyMDIxMjQ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1nbS1maWxsYnV0dG9uLXN0YXRlLWNvbG9yLCMyMDIxMjQpfS5uQ1A1eWM6aG92ZXIgLlZmUHBrZC1KaDlsR2M6OmJlZm9yZXtvcGFjaXR5Oi4xNjtvcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtaG92ZXItb3BhY2l0eSwwLjE2KX0ubkNQNXljLlZmUHBrZC1rc0tzWmQtbVdQazNkLU9XWEVYZS1BSGU2S2MtWHBuRENlIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmUsLm5DUDV5Yzpub3QoLlZmUHBrZC1rc0tzWmQtbVdQazNkKTpmb2N1cyAuVmZQcGtkLUpoOWxHYzo6YmVmb3Jle3RyYW5zaXRpb24tZHVyYXRpb246NzVtcztvcGFjaXR5Oi4yNDtvcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtZm9jdXMtb3BhY2l0eSwwLjI0KX0ubkNQNXljOm5vdCguVmZQcGtkLWtzS3NaZC1tV1BrM2QpIC5WZlBwa2QtSmg5bEdjOjphZnRlcnt0cmFuc2l0aW9uOm9wYWNpdHkgMTUwbXMgbGluZWFyfS5uQ1A1eWM6bm90KC5WZlBwa2Qta3NLc1pkLW1XUGszZCk6YWN0aXZlIC5WZlBwa2QtSmg5bEdjOjphZnRlcnt0cmFuc2l0aW9uLWR1cmF0aW9uOjc1bXM7b3BhY2l0eTouMjtvcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtcHJlc3Mtb3BhY2l0eSwwLjIpfS5uQ1A1eWMuVmZQcGtkLWtzS3NaZC1tV1BrM2R7LS1tZGMtcmlwcGxlLWZnLW9wYWNpdHk6dmFyKC0tbWRjLXJpcHBsZS1wcmVzcy1vcGFjaXR5LDAuMil9Lm5DUDV5YyAuVmZQcGtkLUJGYk5WZS1iRjF1VWJ7b3BhY2l0eTowfS5uQ1A1eWM6aG92ZXJ7Ym94LXNoYWRvdzowIDFweCAycHggMCByZ2JhKDYwLDY0LDY3LDAuMyksMCAxcHggM3B4IDFweCByZ2JhKDYwLDY0LDY3LDAuMTUpO2JveC1zaGFkb3c6MCAxcHggMnB4IDAgdmFyKC0tZ20tZmlsbGJ1dHRvbi1rZXlzaGFkb3ctY29sb3IscmdiYSg2MCw2NCw2NywwLjMpKSwwIDFweCAzcHggMXB4IHZhcigtLWdtLWZpbGxidXR0b24tYW1iaWVudHNoYWRvdy1jb2xvcixyZ2JhKDYwLDY0LDY3LDAuMTUpKX0ubkNQNXljOmhvdmVyIC5WZlBwa2QtQkZiTlZlLWJGMXVVYntvcGFjaXR5OjB9Lm5DUDV5YzphY3RpdmV7Ym94LXNoYWRvdzowIDFweCAycHggMCByZ2JhKDYwLDY0LDY3LDAuMyksMCAycHggNnB4IDJweCByZ2JhKDYwLDY0LDY3LDAuMTUpO2JveC1zaGFkb3c6MCAxcHggMnB4IDAgdmFyKC0tZ20tZmlsbGJ1dHRvbi1rZXlzaGFkb3ctY29sb3IscmdiYSg2MCw2NCw2NywwLjMpKSwwIDJweCA2cHggMnB4IHZhcigtLWdtLWZpbGxidXR0b24tYW1iaWVudHNoYWRvdy1jb2xvcixyZ2JhKDYwLDY0LDY3LDAuMTUpKX0ubkNQNXljOmFjdGl2ZSAuVmZQcGtkLUJGYk5WZS1iRjF1VWJ7b3BhY2l0eTowfS5SajJNbGZ7Zm9udC1mYW1pbHk6Ikdvb2dsZSBTYW5zIixSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6Ljg3NXJlbTtsZXR0ZXItc3BhY2luZzouMDEwNzE0Mjg1N2VtO2ZvbnQtd2VpZ2h0OjUwMDt0ZXh0LXRyYW5zZm9ybTpub25lO3RyYW5zaXRpb246Ym9yZGVyIDI4MG1zIGN1YmljLWJlemllcigwLjQsMCwwLjIsMSksYm94LXNoYWRvdyAyODBtcyBjdWJpYy1iZXppZXIoMC40LDAsMC4yLDEpO2JveC1zaGFkb3c6bm9uZX0uUmoyTWxmIC5WZlBwa2QtSmg5bEdje2hlaWdodDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlO292ZXJmbG93OmhpZGRlbjt3aWR0aDoxMDAlO3otaW5kZXg6MH0uUmoyTWxmIC5WZlBwa2QtdlF6ZjhkLC5SajJNbGYgLlZmUHBrZC1rQkRzb2R7cG9zaXRpb246cmVsYXRpdmV9LlJqMk1sZjpub3QoOmRpc2FibGVkKXtjb2xvcjojMWE3M2U4O2NvbG9yOnZhcigtLWdtLWhhaXJsaW5lYnV0dG9uLWluay1jb2xvciwjMWE3M2U4KTtib3JkZXItY29sb3I6I2RhZGNlMDtib3JkZXItY29sb3I6dmFyKC0tZ20taGFpcmxpbmVidXR0b24tb3V0bGluZS1jb2xvciwjZGFkY2UwKX0uUmoyTWxmOm5vdCg6ZGlzYWJsZWQpOmhvdmVye2JvcmRlci1jb2xvcjojZGFkY2UwO2JvcmRlci1jb2xvcjp2YXIoLS1nbS1oYWlybGluZWJ1dHRvbi1vdXRsaW5lLWNvbG9yLCNkYWRjZTApfS5SajJNbGY6bm90KDpkaXNhYmxlZCkuVmZQcGtkLWtzS3NaZC1tV1BrM2QtT1dYRVhlLUFIZTZLYy1YcG5EQ2UsLlJqMk1sZjpub3QoOmRpc2FibGVkKTpub3QoLlZmUHBrZC1rc0tzWmQtbVdQazNkKTpmb2N1c3tib3JkZXItY29sb3I6IzE3NGVhNjtib3JkZXItY29sb3I6dmFyKC0tZ20taGFpcmxpbmVidXR0b24tb3V0bGluZS1jb2xvci0tc3RhdGVmdWwsIzE3NGVhNil9LlJqMk1sZjpub3QoOmRpc2FibGVkKTphY3RpdmUsLlJqMk1sZjpub3QoOmRpc2FibGVkKTpmb2N1czphY3RpdmV7Ym9yZGVyLWNvbG9yOiNkYWRjZTA7Ym9yZGVyLWNvbG9yOnZhcigtLWdtLWhhaXJsaW5lYnV0dG9uLW91dGxpbmUtY29sb3IsI2RhZGNlMCl9LlJqMk1sZjpkaXNhYmxlZHtjb2xvcjpyZ2JhKDYwLDY0LDY3LDAuMzgpO2NvbG9yOnZhcigtLWdtLWhhaXJsaW5lYnV0dG9uLWRpc2FibGVkLWluay1jb2xvcixyZ2JhKDYwLDY0LDY3LDAuMzgpKTtib3JkZXItY29sb3I6cmdiYSg2MCw2NCw2NywwLjEyKTtib3JkZXItY29sb3I6dmFyKC0tZ20taGFpcmxpbmVidXR0b24tZGlzYWJsZWQtb3V0bGluZS1jb2xvcixyZ2JhKDYwLDY0LDY3LDAuMTIpKX0uUmoyTWxmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpLC5SajJNbGY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpLC5SajJNbGY6bm90KC5VTXJubWItQUhtdXdlLUw2Y1RjZSk6Zm9jdXM6bm90KDpkaXNhYmxlZCksLlJqMk1sZi5WZlBwa2Qta3NLc1pkLW1XUGszZC1PV1hFWGUtQUhlNktjLVhwbkRDZTpub3QoOmRpc2FibGVkKXtjb2xvcjojMTc0ZWE2O2NvbG9yOnZhcigtLWdtLWhhaXJsaW5lYnV0dG9uLWluay1jb2xvci0tc3RhdGVmdWwsIzE3NGVhNil9LlJqMk1sZiAuVmZQcGtkLUJGYk5WZS1iRjF1VWJ7b3BhY2l0eTowfS5SajJNbGYgLlZmUHBrZC1KaDlsR2M6OmJlZm9yZSwuUmoyTWxmIC5WZlBwa2QtSmg5bEdjOjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMxYTczZTg7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1nbS1oYWlybGluZWJ1dHRvbi1zdGF0ZS1jb2xvciwjMWE3M2U4KX0uUmoyTWxmOmhvdmVyIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmV7b3BhY2l0eTouMDQ7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLWhvdmVyLW9wYWNpdHksMC4wNCl9LlJqMk1sZi5WZlBwa2Qta3NLc1pkLW1XUGszZC1PV1hFWGUtQUhlNktjLVhwbkRDZSAuVmZQcGtkLUpoOWxHYzo6YmVmb3JlLC5SajJNbGY6bm90KC5WZlBwa2Qta3NLc1pkLW1XUGszZCk6Zm9jdXMgLlZmUHBrZC1KaDlsR2M6OmJlZm9yZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjc1bXM7b3BhY2l0eTouMTI7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLWZvY3VzLW9wYWNpdHksMC4xMil9LlJqMk1sZjpub3QoLlZmUHBrZC1rc0tzWmQtbVdQazNkKSAuVmZQcGtkLUpoOWxHYzo6YWZ0ZXJ7dHJhbnNpdGlvbjpvcGFjaXR5IDE1MG1zIGxpbmVhcn0uUmoyTWxmOm5vdCguVmZQcGtkLWtzS3NaZC1tV1BrM2QpOmFjdGl2ZSAuVmZQcGtkLUpoOWxHYzo6YWZ0ZXJ7dHJhbnNpdGlvbi1kdXJhdGlvbjo3NW1zO29wYWNpdHk6LjEyO29wYWNpdHk6dmFyKC0tbWRjLXJpcHBsZS1wcmVzcy1vcGFjaXR5LDAuMTIpfS5SajJNbGYuVmZQcGtkLWtzS3NaZC1tV1BrM2R7LS1tZGMtcmlwcGxlLWZnLW9wYWNpdHk6dmFyKC0tbWRjLXJpcHBsZS1wcmVzcy1vcGFjaXR5LDAuMTIpfS5iOWh5VmR7Zm9udC1mYW1pbHk6Ikdvb2dsZSBTYW5zIixSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6Ljg3NXJlbTtsZXR0ZXItc3BhY2luZzouMDEwNzE0Mjg1N2VtO2ZvbnQtd2VpZ2h0OjUwMDt0ZXh0LXRyYW5zZm9ybTpub25lO3RyYW5zaXRpb246Ym9yZGVyIDI4MG1zIGN1YmljLWJlemllcigwLjQsMCwwLjIsMSksYm94LXNoYWRvdyAyODBtcyBjdWJpYy1iZXppZXIoMC40LDAsMC4yLDEpfS5iOWh5VmQgLlZmUHBrZC1KaDlsR2N7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGU7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjEwMCU7ei1pbmRleDowfS5iOWh5VmQgLlZmUHBrZC12UXpmOGQsLmI5aHlWZCAuVmZQcGtkLWtCRHNvZHtwb3NpdGlvbjpyZWxhdGl2ZX0uYjloeVZkOm5vdCg6ZGlzYWJsZWQpe2JhY2tncm91bmQtY29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWdtLXByb3RlY3RlZGJ1dHRvbi1jb250YWluZXItY29sb3IsI2ZmZik7Y29sb3I6IzFhNzNlODtjb2xvcjp2YXIoLS1nbS1wcm90ZWN0ZWRidXR0b24taW5rLWNvbG9yLCMxYTczZTgpfS5iOWh5VmQ6ZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDYwLDY0LDY3LDAuMTIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tZ20tcHJvdGVjdGVkYnV0dG9uLWRpc2FibGVkLWNvbnRhaW5lci1jb2xvcixyZ2JhKDYwLDY0LDY3LDAuMTIpKTtjb2xvcjpyZ2JhKDYwLDY0LDY3LDAuMzgpO2NvbG9yOnZhcigtLWdtLXByb3RlY3RlZGJ1dHRvbi1kaXNhYmxlZC1pbmstY29sb3IscmdiYSg2MCw2NCw2NywwLjM4KSl9LmI5aHlWZDpob3Zlcjpub3QoOmRpc2FibGVkKSwuYjloeVZkOmFjdGl2ZTpub3QoOmRpc2FibGVkKSwuYjloeVZkOm5vdCguVU1ybm1iLUFIbXV3ZS1MNmNUY2UpOmZvY3VzOm5vdCg6ZGlzYWJsZWQpLC5iOWh5VmQuVmZQcGtkLWtzS3NaZC1tV1BrM2QtT1dYRVhlLUFIZTZLYy1YcG5EQ2U6bm90KDpkaXNhYmxlZCl7Y29sb3I6IzE3NGVhNjtjb2xvcjp2YXIoLS1nbS1wcm90ZWN0ZWRidXR0b24taW5rLWNvbG9yLS1zdGF0ZWZ1bCwjMTc0ZWE2KX0uYjloeVZkLC5iOWh5VmQ6Zm9jdXN7Ym9yZGVyLXdpZHRoOjA7Ym94LXNoYWRvdzowIDFweCAycHggMCByZ2JhKDYwLDY0LDY3LDAuMyksMCAxcHggM3B4IDFweCByZ2JhKDYwLDY0LDY3LDAuMTUpO2JveC1zaGFkb3c6MCAxcHggMnB4IDAgdmFyKC0tZ20tcHJvdGVjdGVkYnV0dG9uLWtleXNoYWRvdy1jb2xvcixyZ2JhKDYwLDY0LDY3LDAuMykpLDAgMXB4IDNweCAxcHggdmFyKC0tZ20tcHJvdGVjdGVkYnV0dG9uLWFtYmllbnRzaGFkb3ctY29sb3IscmdiYSg2MCw2NCw2NywwLjE1KSl9LmI5aHlWZCAuVmZQcGtkLUJGYk5WZS1iRjF1VWIsLmI5aHlWZDpmb2N1cyAuVmZQcGtkLUJGYk5WZS1iRjF1VWJ7b3BhY2l0eTowfS5iOWh5VmQ6aG92ZXJ7Ym9yZGVyLXdpZHRoOjA7Ym94LXNoYWRvdzowIDFweCAycHggMCByZ2JhKDYwLDY0LDY3LDAuMyksMCAycHggNnB4IDJweCByZ2JhKDYwLDY0LDY3LDAuMTUpO2JveC1zaGFkb3c6MCAxcHggMnB4IDAgdmFyKC0tZ20tcHJvdGVjdGVkYnV0dG9uLWtleXNoYWRvdy1jb2xvcixyZ2JhKDYwLDY0LDY3LDAuMykpLDAgMnB4IDZweCAycHggdmFyKC0tZ20tcHJvdGVjdGVkYnV0dG9uLWFtYmllbnRzaGFkb3ctY29sb3IscmdiYSg2MCw2NCw2NywwLjE1KSl9LmI5aHlWZDpob3ZlciAuVmZQcGtkLUJGYk5WZS1iRjF1VWJ7b3BhY2l0eTowfS5iOWh5VmQ6YWN0aXZle2JvcmRlci13aWR0aDowO2JveC1zaGFkb3c6MCAxcHggM3B4IDAgcmdiYSg2MCw2NCw2NywwLjMpLDAgNHB4IDhweCAzcHggcmdiYSg2MCw2NCw2NywwLjE1KTtib3gtc2hhZG93OjAgMXB4IDNweCAwIHZhcigtLWdtLXByb3RlY3RlZGJ1dHRvbi1rZXlzaGFkb3ctY29sb3IscmdiYSg2MCw2NCw2NywwLjMpKSwwIDRweCA4cHggM3B4IHZhcigtLWdtLXByb3RlY3RlZGJ1dHRvbi1hbWJpZW50c2hhZG93LWNvbG9yLHJnYmEoNjAsNjQsNjcsMC4xNSkpfS5iOWh5VmQ6YWN0aXZlIC5WZlBwa2QtQkZiTlZlLWJGMXVVYntvcGFjaXR5OjB9LmI5aHlWZCAuVmZQcGtkLUpoOWxHYzo6YmVmb3JlLC5iOWh5VmQgLlZmUHBrZC1KaDlsR2M6OmFmdGVye2JhY2tncm91bmQtY29sb3I6IzFhNzNlODtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWdtLXByb3RlY3RlZGJ1dHRvbi1zdGF0ZS1jb2xvciwjMWE3M2U4KX0uYjloeVZkOmhvdmVyIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmV7b3BhY2l0eTouMDQ7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLWhvdmVyLW9wYWNpdHksMC4wNCl9LmI5aHlWZC5WZlBwa2Qta3NLc1pkLW1XUGszZC1PV1hFWGUtQUhlNktjLVhwbkRDZSAuVmZQcGtkLUpoOWxHYzo6YmVmb3JlLC5iOWh5VmQ6bm90KC5WZlBwa2Qta3NLc1pkLW1XUGszZCk6Zm9jdXMgLlZmUHBrZC1KaDlsR2M6OmJlZm9yZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjc1bXM7b3BhY2l0eTouMTI7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLWZvY3VzLW9wYWNpdHksMC4xMil9LmI5aHlWZDpub3QoLlZmUHBrZC1rc0tzWmQtbVdQazNkKSAuVmZQcGtkLUpoOWxHYzo6YWZ0ZXJ7dHJhbnNpdGlvbjpvcGFjaXR5IDE1MG1zIGxpbmVhcn0uYjloeVZkOm5vdCguVmZQcGtkLWtzS3NaZC1tV1BrM2QpOmFjdGl2ZSAuVmZQcGtkLUpoOWxHYzo6YWZ0ZXJ7dHJhbnNpdGlvbi1kdXJhdGlvbjo3NW1zO29wYWNpdHk6LjEyO29wYWNpdHk6dmFyKC0tbWRjLXJpcHBsZS1wcmVzcy1vcGFjaXR5LDAuMTIpfS5iOWh5VmQuVmZQcGtkLWtzS3NaZC1tV1BrM2R7LS1tZGMtcmlwcGxlLWZnLW9wYWNpdHk6dmFyKC0tbWRjLXJpcHBsZS1wcmVzcy1vcGFjaXR5LDAuMTIpfS5Lam54cmZ7Zm9udC1mYW1pbHk6Ikdvb2dsZSBTYW5zIixSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6Ljg3NXJlbTtsZXR0ZXItc3BhY2luZzouMDEwNzE0Mjg1N2VtO2ZvbnQtd2VpZ2h0OjUwMDt0ZXh0LXRyYW5zZm9ybTpub25lO3RyYW5zaXRpb246Ym9yZGVyIDI4MG1zIGN1YmljLWJlemllcigwLjQsMCwwLjIsMSksYm94LXNoYWRvdyAyODBtcyBjdWJpYy1iZXppZXIoMC40LDAsMC4yLDEpO2JveC1zaGFkb3c6bm9uZX0uS2pueHJmIC5WZlBwa2QtSmg5bEdje2hlaWdodDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlO292ZXJmbG93OmhpZGRlbjt3aWR0aDoxMDAlO3otaW5kZXg6MH0uS2pueHJmIC5WZlBwa2QtdlF6ZjhkLC5Lam54cmYgLlZmUHBrZC1rQkRzb2R7cG9zaXRpb246cmVsYXRpdmV9LktqbnhyZjpub3QoOmRpc2FibGVkKXtiYWNrZ3JvdW5kLWNvbG9yOiNlOGYwZmU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1nbS10b25hbGJ1dHRvbi1jb250YWluZXItY29sb3IsI2U4ZjBmZSk7Y29sb3I6IzE5NjdkMjtjb2xvcjp2YXIoLS1nbS10b25hbGJ1dHRvbi1pbmstY29sb3IsIzE5NjdkMil9LktqbnhyZjpkaXNhYmxlZHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoNjAsNjQsNjcsMC4xMik7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1nbS10b25hbGJ1dHRvbi1kaXNhYmxlZC1jb250YWluZXItY29sb3IscmdiYSg2MCw2NCw2NywwLjEyKSk7Y29sb3I6cmdiYSg2MCw2NCw2NywwLjM4KTtjb2xvcjp2YXIoLS1nbS10b25hbGJ1dHRvbi1kaXNhYmxlZC1pbmstY29sb3IscmdiYSg2MCw2NCw2NywwLjM4KSl9LktqbnhyZjpob3Zlcjpub3QoOmRpc2FibGVkKSwuS2pueHJmOmFjdGl2ZTpub3QoOmRpc2FibGVkKSwuS2pueHJmOm5vdCguVU1ybm1iLUFIbXV3ZS1MNmNUY2UpOmZvY3VzOm5vdCg6ZGlzYWJsZWQpLC5Lam54cmYuVmZQcGtkLWtzS3NaZC1tV1BrM2QtT1dYRVhlLUFIZTZLYy1YcG5EQ2U6bm90KDpkaXNhYmxlZCl7Y29sb3I6IzE3NGVhNjtjb2xvcjp2YXIoLS1nbS10b25hbGJ1dHRvbi1pbmstY29sb3ItLXN0YXRlZnVsLCMxNzRlYTYpfS5Lam54cmYgLlZmUHBrZC1KaDlsR2M6OmJlZm9yZSwuS2pueHJmIC5WZlBwa2QtSmg5bEdjOjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOiMxOTY3ZDI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1nbS10b25hbGJ1dHRvbi1zdGF0ZS1jb2xvciwjMTk2N2QyKX0uS2pueHJmOmhvdmVyIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmV7b3BhY2l0eTouMDQ7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLWhvdmVyLW9wYWNpdHksMC4wNCl9LktqbnhyZi5WZlBwa2Qta3NLc1pkLW1XUGszZC1PV1hFWGUtQUhlNktjLVhwbkRDZSAuVmZQcGtkLUpoOWxHYzo6YmVmb3JlLC5Lam54cmY6bm90KC5WZlBwa2Qta3NLc1pkLW1XUGszZCk6Zm9jdXMgLlZmUHBrZC1KaDlsR2M6OmJlZm9yZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjc1bXM7b3BhY2l0eTouMTI7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLWZvY3VzLW9wYWNpdHksMC4xMil9LktqbnhyZjpub3QoLlZmUHBrZC1rc0tzWmQtbVdQazNkKSAuVmZQcGtkLUpoOWxHYzo6YWZ0ZXJ7dHJhbnNpdGlvbjpvcGFjaXR5IDE1MG1zIGxpbmVhcn0uS2pueHJmOm5vdCguVmZQcGtkLWtzS3NaZC1tV1BrM2QpOmFjdGl2ZSAuVmZQcGtkLUpoOWxHYzo6YWZ0ZXJ7dHJhbnNpdGlvbi1kdXJhdGlvbjo3NW1zO29wYWNpdHk6LjE7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLXByZXNzLW9wYWNpdHksMC4xKX0uS2pueHJmLlZmUHBrZC1rc0tzWmQtbVdQazNkey0tbWRjLXJpcHBsZS1mZy1vcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtcHJlc3Mtb3BhY2l0eSwwLjEpfS5Lam54cmYgLlZmUHBrZC1CRmJOVmUtYkYxdVVie29wYWNpdHk6MH0uS2pueHJmOmhvdmVye2JveC1zaGFkb3c6MCAxcHggMnB4IDAgcmdiYSg2MCw2NCw2NywwLjMpLDAgMXB4IDNweCAxcHggcmdiYSg2MCw2NCw2NywwLjE1KTtib3gtc2hhZG93OjAgMXB4IDJweCAwIHZhcigtLWdtLXRvbmFsYnV0dG9uLWtleXNoYWRvdy1jb2xvcixyZ2JhKDYwLDY0LDY3LDAuMykpLDAgMXB4IDNweCAxcHggdmFyKC0tZ20tdG9uYWxidXR0b24tYW1iaWVudHNoYWRvdy1jb2xvcixyZ2JhKDYwLDY0LDY3LDAuMTUpKX0uS2pueHJmOmhvdmVyIC5WZlBwa2QtQkZiTlZlLWJGMXVVYntvcGFjaXR5OjB9LktqbnhyZjphY3RpdmV7Ym94LXNoYWRvdzowIDFweCAycHggMCByZ2JhKDYwLDY0LDY3LDAuMyksMCAycHggNnB4IDJweCByZ2JhKDYwLDY0LDY3LDAuMTUpO2JveC1zaGFkb3c6MCAxcHggMnB4IDAgdmFyKC0tZ20tdG9uYWxidXR0b24ta2V5c2hhZG93LWNvbG9yLHJnYmEoNjAsNjQsNjcsMC4zKSksMCAycHggNnB4IDJweCB2YXIoLS1nbS10b25hbGJ1dHRvbi1hbWJpZW50c2hhZG93LWNvbG9yLHJnYmEoNjAsNjQsNjcsMC4xNSkpfS5Lam54cmY6YWN0aXZlIC5WZlBwa2QtQkZiTlZlLWJGMXVVYntvcGFjaXR5OjB9LmtzQmpFY3tmb250LWZhbWlseToiR29vZ2xlIFNhbnMiLFJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZTouODc1cmVtO2xldHRlci1zcGFjaW5nOi4wMTA3MTQyODU3ZW07Zm9udC13ZWlnaHQ6NTAwO3RleHQtdHJhbnNmb3JtOm5vbmV9LmtzQmpFYyAuVmZQcGtkLUpoOWxHY3toZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTtvdmVyZmxvdzpoaWRkZW47d2lkdGg6MTAwJTt6LWluZGV4OjB9LmtzQmpFYyAuVmZQcGtkLXZRemY4ZCwua3NCakVjIC5WZlBwa2Qta0JEc29ke3Bvc2l0aW9uOnJlbGF0aXZlfS5rc0JqRWM6bm90KDpkaXNhYmxlZCl7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtjb2xvcjojMWE3M2U4O2NvbG9yOnZhcigtLWdtLWNvbG9ydGV4dGJ1dHRvbi1pbmstY29sb3IsIzFhNzNlOCl9LmtzQmpFYzpkaXNhYmxlZHtjb2xvcjpyZ2JhKDYwLDY0LDY3LDAuMzgpO2NvbG9yOnZhcigtLWdtLWNvbG9ydGV4dGJ1dHRvbi1kaXNhYmxlZC1pbmstY29sb3IscmdiYSg2MCw2NCw2NywwLjM4KSl9LmtzQmpFYzpob3Zlcjpub3QoOmRpc2FibGVkKSwua3NCakVjOmFjdGl2ZTpub3QoOmRpc2FibGVkKSwua3NCakVjOm5vdCguVU1ybm1iLUFIbXV3ZS1MNmNUY2UpOmZvY3VzOm5vdCg6ZGlzYWJsZWQpLC5rc0JqRWMuVmZQcGtkLWtzS3NaZC1tV1BrM2QtT1dYRVhlLUFIZTZLYy1YcG5EQ2U6bm90KDpkaXNhYmxlZCl7Y29sb3I6IzE3NGVhNjtjb2xvcjp2YXIoLS1nbS1jb2xvcnRleHRidXR0b24taW5rLWNvbG9yLS1zdGF0ZWZ1bCwjMTc0ZWE2KX0ua3NCakVjIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmUsLmtzQmpFYyAuVmZQcGtkLUpoOWxHYzo6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjojMWE3M2U4O2JhY2tncm91bmQtY29sb3I6dmFyKC0tZ20tY29sb3J0ZXh0YnV0dG9uLXN0YXRlLWNvbG9yLCMxYTczZTgpfS5rc0JqRWM6aG92ZXIgLlZmUHBrZC1KaDlsR2M6OmJlZm9yZXtvcGFjaXR5Oi4wNDtvcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtaG92ZXItb3BhY2l0eSwwLjA0KX0ua3NCakVjLlZmUHBrZC1rc0tzWmQtbVdQazNkLU9XWEVYZS1BSGU2S2MtWHBuRENlIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmUsLmtzQmpFYzpub3QoLlZmUHBrZC1rc0tzWmQtbVdQazNkKTpmb2N1cyAuVmZQcGtkLUpoOWxHYzo6YmVmb3Jle3RyYW5zaXRpb24tZHVyYXRpb246NzVtcztvcGFjaXR5Oi4xMjtvcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtZm9jdXMtb3BhY2l0eSwwLjEyKX0ua3NCakVjOm5vdCguVmZQcGtkLWtzS3NaZC1tV1BrM2QpIC5WZlBwa2QtSmg5bEdjOjphZnRlcnt0cmFuc2l0aW9uOm9wYWNpdHkgMTUwbXMgbGluZWFyfS5rc0JqRWM6bm90KC5WZlBwa2Qta3NLc1pkLW1XUGszZCk6YWN0aXZlIC5WZlBwa2QtSmg5bEdjOjphZnRlcnt0cmFuc2l0aW9uLWR1cmF0aW9uOjc1bXM7b3BhY2l0eTouMTI7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLXByZXNzLW9wYWNpdHksMC4xMil9LmtzQmpFYy5WZlBwa2Qta3NLc1pkLW1XUGszZHstLW1kYy1yaXBwbGUtZmctb3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLXByZXNzLW9wYWNpdHksMC4xMil9LkxqRHhjZHtmb250LWZhbWlseToiR29vZ2xlIFNhbnMiLFJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZTouODc1cmVtO2xldHRlci1zcGFjaW5nOi4wMTA3MTQyODU3ZW07Zm9udC13ZWlnaHQ6NTAwO3RleHQtdHJhbnNmb3JtOm5vbmV9LkxqRHhjZCAuVmZQcGtkLUpoOWxHY3toZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZTtvdmVyZmxvdzpoaWRkZW47d2lkdGg6MTAwJTt6LWluZGV4OjB9LkxqRHhjZCAuVmZQcGtkLXZRemY4ZCwuTGpEeGNkIC5WZlBwa2Qta0JEc29ke3Bvc2l0aW9uOnJlbGF0aXZlfS5MakR4Y2Q6bm90KDpkaXNhYmxlZCl7Y29sb3I6IzVmNjM2ODtjb2xvcjp2YXIoLS1nbS1uZXV0cmFsdGV4dGJ1dHRvbi1pbmstY29sb3IsIzVmNjM2OCl9LkxqRHhjZDpkaXNhYmxlZHtjb2xvcjpyZ2JhKDYwLDY0LDY3LDAuMzgpO2NvbG9yOnZhcigtLWdtLW5ldXRyYWx0ZXh0YnV0dG9uLWRpc2FibGVkLWluay1jb2xvcixyZ2JhKDYwLDY0LDY3LDAuMzgpKX0uTGpEeGNkOmhvdmVyOm5vdCg6ZGlzYWJsZWQpLC5MakR4Y2Q6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpLC5MakR4Y2Q6bm90KC5VTXJubWItQUhtdXdlLUw2Y1RjZSk6Zm9jdXM6bm90KDpkaXNhYmxlZCksLkxqRHhjZC5WZlBwa2Qta3NLc1pkLW1XUGszZC1PV1hFWGUtQUhlNktjLVhwbkRDZTpub3QoOmRpc2FibGVkKXtjb2xvcjojMjAyMTI0O2NvbG9yOnZhcigtLWdtLW5ldXRyYWx0ZXh0YnV0dG9uLWluay1jb2xvci0tc3RhdGVmdWwsIzIwMjEyNCl9LkxqRHhjZCAuVmZQcGtkLUpoOWxHYzo6YmVmb3JlLC5MakR4Y2QgLlZmUHBrZC1KaDlsR2M6OmFmdGVye2JhY2tncm91bmQtY29sb3I6IzVmNjM2ODtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWdtLW5ldXRyYWx0ZXh0YnV0dG9uLXN0YXRlLWNvbG9yLCM1ZjYzNjgpfS5MakR4Y2Q6aG92ZXIgLlZmUHBrZC1KaDlsR2M6OmJlZm9yZXtvcGFjaXR5Oi4wNDtvcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtaG92ZXItb3BhY2l0eSwwLjA0KX0uTGpEeGNkLlZmUHBrZC1rc0tzWmQtbVdQazNkLU9XWEVYZS1BSGU2S2MtWHBuRENlIC5WZlBwa2QtSmg5bEdjOjpiZWZvcmUsLkxqRHhjZDpub3QoLlZmUHBrZC1rc0tzWmQtbVdQazNkKTpmb2N1cyAuVmZQcGtkLUpoOWxHYzo6YmVmb3Jle3RyYW5zaXRpb24tZHVyYXRpb246NzVtcztvcGFjaXR5Oi4xMjtvcGFjaXR5OnZhcigtLW1kYy1yaXBwbGUtZm9jdXMtb3BhY2l0eSwwLjEyKX0uTGpEeGNkOm5vdCguVmZQcGtkLWtzS3NaZC1tV1BrM2QpIC5WZlBwa2QtSmg5bEdjOjphZnRlcnt0cmFuc2l0aW9uOm9wYWNpdHkgMTUwbXMgbGluZWFyfS5MakR4Y2Q6bm90KC5WZlBwa2Qta3NLc1pkLW1XUGszZCk6YWN0aXZlIC5WZlBwa2QtSmg5bEdjOjphZnRlcnt0cmFuc2l0aW9uLWR1cmF0aW9uOjc1bXM7b3BhY2l0eTouMTI7b3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLXByZXNzLW9wYWNpdHksMC4xMil9LkxqRHhjZC5WZlBwa2Qta3NLc1pkLW1XUGszZHstLW1kYy1yaXBwbGUtZmctb3BhY2l0eTp2YXIoLS1tZGMtcmlwcGxlLXByZXNzLW9wYWNpdHksMC4xMil9LkR1TUlRY3twYWRkaW5nOjAgMjRweCAwIDI0cHh9LlA2MlFKY3twYWRkaW5nOjAgMjNweCAwIDIzcHg7Ym9yZGVyLXdpZHRoOjFweH0uUDYyUUpjIC5WZlBwa2QtSmg5bEdje3RvcDotMXB4O2xlZnQ6LTFweDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50fS5QNjJRSmMgLlZmUHBrZC1STG1uSmJ7bGVmdDotMXB4O3dpZHRoOmNhbGMoMTAwJSArIDIqMXB4KX0ueUh5MXJje3otaW5kZXg6MH0ueUh5MXJjOjpiZWZvcmV7ei1pbmRleDotMX0ueUh5MXJjOjphZnRlcnt6LWluZGV4Oi0xfS55SHkxcmM6ZGlzYWJsZWQsLmZ6UkJWYzpkaXNhYmxlZHtjb2xvcjpyZ2JhKDYwLDY0LDY3LDAuMzgpO2NvbG9yOnZhcigtLWdtLWljb25idXR0b24tZGlzYWJsZWQtaW5rLWNvbG9yLHJnYmEoNjAsNjQsNjcsMC4zOCkpfS5XcEhlTGN7aGVpZ2h0OjEwMCU7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjEwMCU7b3V0bGluZTpub25lfVtkaXI9cnRsXSAuSERubnJmIC5WZlBwa2Qta0JEc29kLC5IRG5ucmYgLlZmUHBrZC1rQkRzb2RbZGlyPXJ0bF0sW2Rpcj1ydGxdIC5RRHdERCwuUUR3RERbZGlyPXJ0bF17dHJhbnNmb3JtOnNjYWxlWCgtMSl9LlBEcFd4ZXt3aWxsLWNoYW5nZTp1bnNldH0uVmZQcGtkLUJGYk5WZS1iRjF1VWJ7cG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyLXJhZGl1czppbmhlcml0O3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowO29wYWNpdHk6dmFyKC0tbWRjLWVsZXZhdGlvbi1vdmVybGF5LW9wYWNpdHksMCk7dHJhbnNpdGlvbjpvcGFjaXR5IDI4MG1zIGN1YmljLWJlemllcigwLjQsMCwwLjIsMSk7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6dmFyKC0tbWRjLWVsZXZhdGlvbi1vdmVybGF5LWNvbG9yLCNmZmYpfS5OWnAyZWZ7YmFja2dyb3VuZC1jb2xvcjojZThlYWVkfS5WZlBwa2QtejU5VGdke2JvcmRlci1yYWRpdXM6NHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tbWRjLXNoYXBlLXNtYWxsLDRweCk7Y29sb3I6d2hpdGU7Y29sb3I6dmFyKC0tbWRjLXRoZW1lLXRleHQtcHJpbWFyeS1vbi1kYXJrLHdoaXRlKTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KTt3b3JkLWJyZWFrOmJyZWFrLWFsbDt3b3JkLWJyZWFrOnZhcigtLW1kYy10b29sdGlwLXdvcmQtYnJlYWssbm9ybWFsKTtvdmVyZmxvdy13cmFwOmFueXdoZXJlfS5WZlBwa2Qtc3VFT2Rje3otaW5kZXg6Mn0uVmZQcGtkLXN1RU9kYy1PV1hFWGUtZW85WEdkLVJDZmEzZSAuVmZQcGtkLXo1OVRnZHt0cmFuc2l0aW9uOm9wYWNpdHkgMTUwbXMgMG1zIGN1YmljLWJlemllcigwLDAsMC4yLDEpLHRyYW5zZm9ybSAxNTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAsMCwwLjIsMSl9LlZmUHBrZC1zdUVPZGMtT1dYRVhlLVpZSWZGZC1SQ2ZhM2UgLlZmUHBrZC16NTlUZ2R7dHJhbnNpdGlvbjpvcGFjaXR5IDc1bXMgMG1zIGN1YmljLWJlemllcigwLjQsMCwxLDEpfS5WZlBwa2QtTWxDOTlie2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Y29sb3I6dmFyKC0tbWRjLXRoZW1lLXRleHQtcHJpbWFyeS1vbi1saWdodCxyZ2JhKDAsMCwwLDAuODcpKX0uVmZQcGtkLUlxRER0ZHtjb2xvcjpyZ2JhKDAsMCwwLDAuNil9LlZmUHBrZC1JcUREdGQtaFNSR1Bke2NvbG9yOiM2MjAwZWU7Y29sb3I6dmFyKC0tbWRjLXRoZW1lLXByaW1hcnksIzYyMDBlZSl9LlZmUHBrZC1zdUVPZGN7cG9zaXRpb246Zml4ZWQ7ZGlzcGxheTpub25lfS5WZlBwa2Qtc3VFT2RjLlZmUHBrZC1zdUVPZGMtT1dYRVhlLW56cnh4YyAuVmZQcGtkLXo1OVRnZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9LlZmUHBrZC1zdUVPZGMtc001TU5iLU9XWEVYZS1uenJ4eGN7cG9zaXRpb246cmVsYXRpdmV9LlZmUHBrZC1zdUVPZGMtT1dYRVhlLVRTWmRkLC5WZlBwa2Qtc3VFT2RjLU9XWEVYZS1lbzlYR2QsLlZmUHBrZC1zdUVPZGMtT1dYRVhlLVpZSWZGZHtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4fS5WZlBwa2Qtc3VFT2RjLU9XWEVYZS1UU1pkZC5WZlBwa2Qtc3VFT2RjLU9XWEVYZS1uenJ4eGMsLlZmUHBrZC1zdUVPZGMtT1dYRVhlLWVvOVhHZC5WZlBwa2Qtc3VFT2RjLU9XWEVYZS1uenJ4eGMsLlZmUHBrZC1zdUVPZGMtT1dYRVhlLVpZSWZGZC5WZlBwa2Qtc3VFT2RjLU9XWEVYZS1uenJ4eGN7ZGlzcGxheTppbmxpbmUtYmxvY2s7bGVmdDotMzIwcHg7cGFkZGluZzo4cHggOHB4O3Bvc2l0aW9uOmFic29sdXRlfS5WZlBwa2QtejU5VGdkey13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7Zm9udC1mYW1pbHk6Um9ib3RvLHNhbnMtc2VyaWY7Zm9udC1mYW1pbHk6dmFyKC0tbWRjLXR5cG9ncmFwaHktY2FwdGlvbi1mb250LWZhbWlseSx2YXIoLS1tZGMtdHlwb2dyYXBoeS1mb250LWZhbWlseSxSb2JvdG8sc2Fucy1zZXJpZikpO2ZvbnQtc2l6ZTouNzVyZW07Zm9udC1zaXplOnZhcigtLW1kYy10eXBvZ3JhcGh5LWNhcHRpb24tZm9udC1zaXplLDAuNzVyZW0pO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXdlaWdodDp2YXIoLS1tZGMtdHlwb2dyYXBoeS1jYXB0aW9uLWZvbnQtd2VpZ2h0LDQwMCk7bGV0dGVyLXNwYWNpbmc6LjAzMzMzMzMzMzNlbTtsZXR0ZXItc3BhY2luZzp2YXIoLS1tZGMtdHlwb2dyYXBoeS1jYXB0aW9uLWxldHRlci1zcGFjaW5nLDAuMDMzMzMzMzMzM2VtKTt0ZXh0LWRlY29yYXRpb246aW5oZXJpdDt0ZXh0LWRlY29yYXRpb246dmFyKC0tbWRjLXR5cG9ncmFwaHktY2FwdGlvbi10ZXh0LWRlY29yYXRpb24saW5oZXJpdCk7dGV4dC10cmFuc2Zvcm06aW5oZXJpdDt0ZXh0LXRyYW5zZm9ybTp2YXIoLS1tZGMtdHlwb2dyYXBoeS1jYXB0aW9uLXRleHQtdHJhbnNmb3JtLGluaGVyaXQpO2xpbmUtaGVpZ2h0OjE2cHg7cGFkZGluZzo0cHggOHB4O21pbi13aWR0aDo0MHB4O21heC13aWR0aDoyMDBweDttaW4taGVpZ2h0OjI0cHg7bWF4LWhlaWdodDo0MHZoO2JveC1zaXppbmc6Ym9yZGVyLWJveDtvdmVyZmxvdzpoaWRkZW47dGV4dC1hbGlnbjpjZW50ZXI7dHJhbnNmb3JtOnNjYWxlKDAuOCk7b3BhY2l0eTowO3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxvcGFjaXR5O291dGxpbmU6MXB4IHNvbGlkIHRyYW5zcGFyZW50fS5WZlBwa2Qtc3VFT2RjLU9XWEVYZS1uenJ4eGMgLlZmUHBrZC16NTlUZ2R7Ym94LXNoYWRvdzowIDNweCAxcHggLTJweCByZ2JhKDAsMCwwLDAuMiksMCAycHggMnB4IDAgcmdiYSgwLDAsMCwwLjE0KSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLDAuMTIpO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Ym9yZGVyLXJhZGl1czo0cHg7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtsaW5lLWhlaWdodDoyMHB4O21pbi1oZWlnaHQ6MjRweDttaW4td2lkdGg6NDBweDttYXgtd2lkdGg6MzIwcHg7cG9zaXRpb246cmVsYXRpdmV9LlZmUHBrZC1zdUVPZGMtT1dYRVhlLW56cnh4YyAuVmZQcGtkLXo1OVRnZCAuVmZQcGtkLUJGYk5WZS1iRjF1VWJ7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt0b3A6MDtsZWZ0OjB9LlZmUHBrZC1zdUVPZGMtT1dYRVhlLUxsTU5RZCAuVmZQcGtkLXo1OVRnZHt0ZXh0LWFsaWduOmxlZnR9W2Rpcj1ydGxdIC5WZlBwa2Qtc3VFT2RjLU9XWEVYZS1MbE1OUWQgLlZmUHBrZC16NTlUZ2QsLlZmUHBrZC1zdUVPZGMtT1dYRVhlLUxsTU5RZCAuVmZQcGtkLXo1OVRnZFtkaXI9cnRsXXt0ZXh0LWFsaWduOnJpZ2h0fS5WZlBwa2Qtc3VFT2RjLU9XWEVYZS1UU1pkZCAuVmZQcGtkLXo1OVRnZHt0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfS5WZlBwa2Qtc3VFT2RjLU9XWEVYZS1aWUlmRmQgLlZmUHBrZC16NTlUZ2R7dHJhbnNmb3JtOnNjYWxlKDEpfS5WZlBwa2QtejU5VGdkIC5WZlBwa2QtTWxDOTlie2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6bm9ybWFsOy13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7Zm9udC1mYW1pbHk6Um9ib3RvLHNhbnMtc2VyaWY7Zm9udC1mYW1pbHk6dmFyKC0tbWRjLXR5cG9ncmFwaHktc3VidGl0bGUyLWZvbnQtZmFtaWx5LHZhcigtLW1kYy10eXBvZ3JhcGh5LWZvbnQtZmFtaWx5LFJvYm90byxzYW5zLXNlcmlmKSk7Zm9udC1zaXplOi44NzVyZW07Zm9udC1zaXplOnZhcigtLW1kYy10eXBvZ3JhcGh5LXN1YnRpdGxlMi1mb250LXNpemUsMC44NzVyZW0pO2ZvbnQtd2VpZ2h0OjUwMDtmb250LXdlaWdodDp2YXIoLS1tZGMtdHlwb2dyYXBoeS1zdWJ0aXRsZTItZm9udC13ZWlnaHQsNTAwKTtsZXR0ZXItc3BhY2luZzouMDA3MTQyODU3MWVtO2xldHRlci1zcGFjaW5nOnZhcigtLW1kYy10eXBvZ3JhcGh5LXN1YnRpdGxlMi1sZXR0ZXItc3BhY2luZywwLjAwNzE0Mjg1NzFlbSk7dGV4dC1kZWNvcmF0aW9uOmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOnZhcigtLW1kYy10eXBvZ3JhcGh5LXN1YnRpdGxlMi10ZXh0LWRlY29yYXRpb24saW5oZXJpdCk7dGV4dC10cmFuc2Zvcm06aW5oZXJpdDt0ZXh0LXRyYW5zZm9ybTp2YXIoLS1tZGMtdHlwb2dyYXBoeS1zdWJ0aXRsZTItdGV4dC10cmFuc2Zvcm0saW5oZXJpdCk7bWFyZ2luOjAgOHB4fS5WZlBwa2QtejU5VGdkIC5WZlBwa2QtTWxDOTliOjpiZWZvcmV7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MDtoZWlnaHQ6MjhweDtjb250ZW50OiIiO3ZlcnRpY2FsLWFsaWduOjB9LlZmUHBrZC16NTlUZ2QgLlZmUHBrZC1JcUREdGR7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDpub3JtYWw7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDtmb250LWZhbWlseTpSb2JvdG8sc2Fucy1zZXJpZjtmb250LWZhbWlseTp2YXIoLS1tZGMtdHlwb2dyYXBoeS1ib2R5Mi1mb250LWZhbWlseSx2YXIoLS1tZGMtdHlwb2dyYXBoeS1mb250LWZhbWlseSxSb2JvdG8sc2Fucy1zZXJpZikpO2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtc2l6ZTp2YXIoLS1tZGMtdHlwb2dyYXBoeS1ib2R5Mi1mb250LXNpemUsMC44NzVyZW0pO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXdlaWdodDp2YXIoLS1tZGMtdHlwb2dyYXBoeS1ib2R5Mi1mb250LXdlaWdodCw0MDApO2xldHRlci1zcGFjaW5nOi4wMTc4NTcxNDI5ZW07bGV0dGVyLXNwYWNpbmc6dmFyKC0tbWRjLXR5cG9ncmFwaHktYm9keTItbGV0dGVyLXNwYWNpbmcsMC4wMTc4NTcxNDI5ZW0pO3RleHQtZGVjb3JhdGlvbjppbmhlcml0O3RleHQtZGVjb3JhdGlvbjp2YXIoLS1tZGMtdHlwb2dyYXBoeS1ib2R5Mi10ZXh0LWRlY29yYXRpb24saW5oZXJpdCk7dGV4dC10cmFuc2Zvcm06aW5oZXJpdDt0ZXh0LXRyYW5zZm9ybTp2YXIoLS1tZGMtdHlwb2dyYXBoeS1ib2R5Mi10ZXh0LXRyYW5zZm9ybSxpbmhlcml0KTttYXgtd2lkdGg6Y2FsYygxMDAlIC0gMio4cHgpO21hcmdpbjowIDhweCAxNnB4IDhweDt0ZXh0LWFsaWduOmxlZnR9LlZmUHBrZC16NTlUZ2QgLlZmUHBrZC1JcUREdGQ6OmJlZm9yZXtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDowO2hlaWdodDoyNHB4O2NvbnRlbnQ6IiI7dmVydGljYWwtYWxpZ246MH1bZGlyPXJ0bF0gLlZmUHBrZC16NTlUZ2QgLlZmUHBrZC1JcUREdGQsLlZmUHBrZC16NTlUZ2QgLlZmUHBrZC1JcUREdGRbZGlyPXJ0bF17dGV4dC1hbGlnbjpyaWdodH0uVmZQcGtkLXo1OVRnZCAuVmZQcGtkLUlxRER0ZC1oU1JHUGR7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LkVZOEFCZCAuVmZQcGtkLXo1OVRnZHtiYWNrZ3JvdW5kLWNvbG9yOiMzYzQwNDM7Y29sb3I6I2U4ZWFlZH0uRVk4QUJkIC5WZlBwa2QtTWxDOTliLC5FWThBQmQgLlZmUHBrZC1JcUREdGR7Y29sb3I6IzNjNDA0M30uRVk4QUJkIC5WZlBwa2QtSXFERHRkLWhTUkdQZHtjb2xvcjojMWE3M2U4fS5FWThBQmQuVmZQcGtkLXN1RU9kYy1PV1hFWGUtbnpyeHhjIC5WZlBwa2QtejU5VGdke2JhY2tncm91bmQtY29sb3I6I2ZmZn0uRVk4QUJkLlZmUHBrZC1zdUVPZGMtT1dYRVhlLW56cnh4YyAuVmZQcGtkLU1sQzk5Yntmb250LWZhbWlseToiR29vZ2xlIFNhbnMiLFJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2xpbmUtaGVpZ2h0OjEuMjVyZW07Zm9udC1zaXplOi44NzVyZW07bGV0dGVyLXNwYWNpbmc6LjAxNzg1NzE0MjllbTtmb250LXdlaWdodDo1MDB9LkVZOEFCZC5WZlBwa2Qtc3VFT2RjLU9XWEVYZS1uenJ4eGMgLlZmUHBrZC16NTlUZ2R7Ym9yZGVyLXJhZGl1czo4cHh9LnppeWtIYiAuVmZQcGtkLXo1OVRnZHtiYWNrZ3JvdW5kLWNvbG9yOiMzYzQwNDM7Y29sb3I6I2U4ZWFlZH0ueml5a0hiIC5WZlBwa2QtTWxDOTliLC56aXlrSGIgLlZmUHBrZC1JcUREdGR7Y29sb3I6IzNjNDA0M30ueml5a0hiIC5WZlBwa2QtSXFERHRkLWhTUkdQZHtjb2xvcjojMWE3M2U4fS56aXlrSGIuVmZQcGtkLXN1RU9kYy1PV1hFWGUtbnpyeHhjIC5WZlBwa2QtejU5VGdke2JhY2tncm91bmQtY29sb3I6I2ZmZn0ueml5a0hiLlZmUHBrZC1zdUVPZGMtT1dYRVhlLW56cnh4YyAuVmZQcGtkLU1sQzk5Yntmb250LWZhbWlseToiR29vZ2xlIFNhbnMiLFJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2xpbmUtaGVpZ2h0OjEuMjVyZW07Zm9udC1zaXplOi44NzVyZW07bGV0dGVyLXNwYWNpbmc6LjAxNzg1NzE0MjllbTtmb250LXdlaWdodDo1MDB9LnppeWtIYi5WZlBwa2Qtc3VFT2RjLU9XWEVYZS1uenJ4eGMgLlZmUHBrZC16NTlUZ2R7Ym9yZGVyLXJhZGl1czo4cHh9LkVZOEFCZC1PV1hFWGUtVEFXTVhle3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTEwMDAwcHg7dG9wOmF1dG87d2lkdGg6MXB4O2hlaWdodDoxcHg7b3ZlcmZsb3c6aGlkZGVufS5rRndQZWV7aGVpZ2h0OjEwMCV9LnlkTU1FYnt3aWR0aDoxMDAlfS5TU1BHS2Z7ZGlzcGxheTpibG9jaztvdmVyZmxvdy15OmhpZGRlbjt6LWluZGV4OjF9LmVlanNEY3tvdmVyZmxvdy15OmF1dG87LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2h9Lk1DY09BY3tib3R0b206MDtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDoxfS5NQ2NPQWM+LnBHeHBIY3tmbGV4LXNocmluazowO2JveC1mbGV4OjA7ZmxleC1ncm93OjB9LklxQmZNPi5ITGxBSGJ7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6NjBweDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxNnB4O3RvcDowO3otaW5kZXg6OTk5OX0uVlVvS1p7ZGlzcGxheTpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2hlaWdodDozcHg7ei1pbmRleDoxMDAxfS5UUkhMQWN7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjI1JTtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kOiM2OGU7dHJhbnNmb3JtOnNjYWxlWCgwKTt0cmFuc2Zvcm0tb3JpZ2luOjAgMH0ubUlNMjZjIC5WVW9LWntkaXNwbGF5OmJsb2NrfS5tSU0yNmMgLlRSSExBY3thbmltYXRpb246Ym9xQ2hyb21lYXBpUGFnZVByb2dyZXNzQW5pbWF0aW9uIDFzIGluZmluaXRlO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuNCwwLjAsMSwxKTthbmltYXRpb24tZGVsYXk6LjFzfS5naHlQRWMgLlZVb0tae3Bvc2l0aW9uOmZpeGVkfUBrZXlmcmFtZXMgYm9xQ2hyb21lYXBpUGFnZVByb2dyZXNzQW5pbWF0aW9uezAle3RyYW5zZm9ybTpzY2FsZVgoMCl9NTAle3RyYW5zZm9ybTpzY2FsZVgoNSl9dG97dHJhbnNmb3JtOnNjYWxlWCg1KSB0cmFuc2xhdGVYKDEwMCUpfX1Aa2V5ZnJhbWVzIHF1YW50dW1XaXpCb3hJbmtTcHJlYWR7MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpIHNjYWxlKC4yKX10b3t0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSkgc2NhbGUoMi4yKX19QGtleWZyYW1lcyBxdWFudHVtV2l6SWNvbkZvY3VzUHVsc2V7MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpIHNjYWxlKDEuNSk7b3BhY2l0eTowfXRve3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKSBzY2FsZSgyKTtvcGFjaXR5OjF9fUBrZXlmcmFtZXMgcXVhbnR1bVdpelJhZGlhbElua1NwcmVhZHswJXt0cmFuc2Zvcm06c2NhbGUoMS41KTtvcGFjaXR5OjB9dG97dHJhbnNmb3JtOnNjYWxlKDIuNSk7b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIHF1YW50dW1XaXpSYWRpYWxJbmtGb2N1c1B1bHNlezAle3RyYW5zZm9ybTpzY2FsZSgyKTtvcGFjaXR5OjB9dG97dHJhbnNmb3JtOnNjYWxlKDIuNSk7b3BhY2l0eToxfX0uSlBkUjZie3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApO3RyYW5zaXRpb246bWF4LXdpZHRoIC4ycyAgY3ViaWMtYmV6aWVyKDAuMCwwLjAsMC4yLDEpICxtYXgtaGVpZ2h0IC4ycyAgY3ViaWMtYmV6aWVyKDAuMCwwLjAsMC4yLDEpICxvcGFjaXR5IC4xcyBsaW5lYXI7YmFja2dyb3VuZDojZmZmZmZmO2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MnB4O2JveC1zaGFkb3c6MCA4cHggMTBweCAxcHggcmdiYSgwLDAsMCwwLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLDAuMTIpLDAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsMC4yKTtib3gtc2l6aW5nOmJvcmRlci1ib3g7bWF4LWhlaWdodDoxMDAlO21heC13aWR0aDoxMDAlO29wYWNpdHk6MTtvdXRsaW5lOjFweCBzb2xpZCB0cmFuc3BhcmVudDt6LWluZGV4OjIwMDB9Llh2aFkxZHtvdmVyZmxvdy14OmhpZGRlbjtvdmVyZmxvdy15OmF1dG87LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2h9LkpBUHFwZXtmbG9hdDpsZWZ0O3BhZGRpbmc6MTZweCAwfS5KUGRSNmIucWpURUJ7dHJhbnNpdGlvbjpsZWZ0IC4ycyAgY3ViaWMtYmV6aWVyKDAuMCwwLjAsMC4yLDEpICxtYXgtd2lkdGggLjJzICBjdWJpYy1iZXppZXIoMC4wLDAuMCwwLjIsMSkgLG1heC1oZWlnaHQgLjJzICBjdWJpYy1iZXppZXIoMC4wLDAuMCwwLjIsMSkgLG9wYWNpdHkgLjA1cyBsaW5lYXIsdG9wIC4ycyBjdWJpYy1iZXppZXIoMC4wLDAuMCwwLjIsMSl9LkpQZFI2Yi5qVndtTGJ7bWF4LWhlaWdodDo1NnB4O29wYWNpdHk6MH0uSlBkUjZiLkNBd0lDZXtvdmVyZmxvdzpoaWRkZW59LkpQZFI2Yi5vWHhLcWZ7dHJhbnNpdGlvbjpub25lfS56ODBNMXtjb2xvcjojMjIyO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6YmxvY2s7b3V0bGluZTpub25lO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjAgMjRweDtwb3NpdGlvbjpyZWxhdGl2ZX0udXlZdVZie2Rpc3BsYXk6ZmxleDtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6NDBweDtoZWlnaHQ6NDBweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aGl0ZS1zcGFjZTpub3dyYXB9LmpPN2gzY3tib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO21pbi13aWR0aDowfS5KUGRSNmIuZTVFbWpjIC56ODBNMXtwYWRkaW5nLWxlZnQ6NjRweH0uSlBkUjZiLkNibFRtZiAuejgwTTF7cGFkZGluZy1yaWdodDo0OHB4fS5QQ2RPSWJ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtoZWlnaHQ6NDBweDtsZWZ0OjI0cHg7b3BhY2l0eTouNTQ7cG9zaXRpb246YWJzb2x1dGV9Lno4ME0xLlJEUFpFIC5QQ2RPSWJ7b3BhY2l0eTouMjZ9Lno4ME0xLkZ3UjdQY3tvdXRsaW5lOjFweCBzb2xpZCB0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWNvbG9yOiNlZWVlZWV9Lno4ME0xLlJEUFpFe2NvbG9yOiNiOGI4Yjg7Y3Vyc29yOmRlZmF1bHR9Lno4ME0xLk4yUnBCZTo6YmVmb3Jle3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO3RyYW5zZm9ybS1vcmlnaW46bGVmdDtjb250ZW50OiJcMDAwMGEwIjtkaXNwbGF5OmJsb2NrO2JvcmRlci1yaWdodDoycHggc29saWQgIzIyMjtib3JkZXItYm90dG9tOjJweCBzb2xpZCAjMjIyO2hlaWdodDoxNnB4O2xlZnQ6MjRweDtvcGFjaXR5Oi41NDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTMlO3dpZHRoOjdweDt6LWluZGV4OjB9LkpQZFI2Yi5DYmxUbWYgLno4ME0xLk4yUnBCZTo6YmVmb3Jle2xlZnQ6YXV0bztyaWdodDoxNnB4fS56ODBNMS5SRFBaRTo6YmVmb3Jle2JvcmRlci1jb2xvcjojYjhiOGI4O29wYWNpdHk6MX0uYUJCamJke3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGV9Lno4ME0xLnFzNDFxZT4uYUJCamJke2FuaW1hdGlvbjpxdWFudHVtV2l6Qm94SW5rU3ByZWFkIC4zcyBlYXNlLW91dDthbmltYXRpb24tZmlsbC1tb2RlOmZvcndhcmRzO2JhY2tncm91bmQtaW1hZ2U6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSBmYXJ0aGVzdC1zaWRlLCNiZGJkYmQsI2JkYmRiZCA4MCUscmdiYSgxODksMTg5LDE4OSwwKSAxMDAlKTtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7b3BhY2l0eToxO3RvcDowO2xlZnQ6MH0uSjBYbFple2NvbG9yOmluaGVyaXQ7bGluZS1oZWlnaHQ6NDBweDtwYWRkaW5nOjAgNnB4IDAgMWVtfS5hOWNhU2N7Y29sb3I6aW5oZXJpdDtkaXJlY3Rpb246bHRyO3BhZGRpbmc6MCA2cHggMCAxZW19LmtDdFl3ZXtib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMTIpO21hcmdpbjo3cHggMH0uQjJsN2xje2JvcmRlci1sZWZ0OjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMTIpO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDo0OHB4fUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ODQwcHgpey5KQVBxcGV7cGFkZGluZzo4cHggMH0uejgwTTF7cGFkZGluZzowIDE2cHh9LkpQZFI2Yi5lNUVtamMgLno4ME0xe3BhZGRpbmctbGVmdDo0OHB4fS5QQ2RPSWJ7bGVmdDoxMnB4fX0uRktGNm1jLC5GS0Y2bWM6Zm9jdXN7ZGlzcGxheTpibG9jaztvdXRsaW5lOm5vbmU7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LkZLRjZtYzp2aXNpdGVke2ZpbGw6aW5oZXJpdDtzdHJva2U6aW5oZXJpdH0uVTI2ZmdiLnUzYlc0ZXtvdXRsaW5lOjFweCBzb2xpZCB0cmFuc3BhcmVudH1jLXdpentjb250YWluOnN0eWxlfWMtd2l6PmMtZGF0YXtkaXNwbGF5Om5vbmV9Yy13aXouckVUU0R7Y29udGFpbjpub25lfWMtd2l6LlViaThae2NvbnRhaW46bGF5b3V0IHN0eWxlfS5EUHZ3WWN7Zm9udC1mYW1pbHk6J01hdGVyaWFsIEljb25zIEV4dGVuZGVkJztmb250LXdlaWdodDpub3JtYWw7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC1zaXplOjI0cHg7bGluZS1oZWlnaHQ6MTtsZXR0ZXItc3BhY2luZzpub3JtYWw7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5O3RleHQtdHJhbnNmb3JtOm5vbmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7d29yZC13cmFwOm5vcm1hbDtkaXJlY3Rpb246bHRyO2ZvbnQtZmVhdHVyZS1zZXR0aW5nczonbGlnYScgMTstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkfWh0bWxbZGlyPSJydGwiXSAuc204c0Nme3RyYW5zZm9ybTpzY2FsZVgoLTEpO2ZpbHRlcjpGbGlwSH0uVDRMZ05ie2JvdHRvbTowO2xlZnQ6MDt0b3A6MDtyaWdodDowO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MX0uUU1FaDVie3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6M30uQU9xNHRie2hlaWdodDo1NnB4fS5rRndQZWV7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO2hlaWdodDoxMDAlfS55ZE1NRWJ7aGVpZ2h0OjU2cHg7d2lkdGg6MTAwJX0uU1NQR0tme292ZXJmbG93LXk6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3RvcDowfS5lY0pFaWIgLkFPcTR0YiwuZWNKRWliIC55ZE1NRWJ7aGVpZ2h0OjY0cHh9LmUyRzNGYi5FV1pjdWQgLkFPcTR0YiwuZTJHM0ZiLkVXWmN1ZCAueWRNTUVie2hlaWdodDo0OHB4fS5lMkczRmIuYjMwUmtkIC5BT3E0dGIsLmUyRzNGYi5iMzBSa2QgLnlkTU1FYntoZWlnaHQ6NTZweH0uV3pPZE5je2NvbG9yOnJnYmEoMCwwLDAsMC44Nyk7Zm9udC1mYW1pbHk6Um9ib3RvO2ZvbnQtd2VpZ2h0OmJvbGQ7bGVmdDotMzJweDtsZXR0ZXItc3BhY2luZzouMjVweDtwb3NpdGlvbjpyZWxhdGl2ZX0uTFR5VkZje2NvbG9yOiM1ZjYzNjg7Zm9udC1mYW1pbHk6Um9ib3RvO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtsZXR0ZXItc3BhY2luZzouMjVweDt0ZXh0LWFsaWduOmNlbnRlcn0uZTFKandme3BhZGRpbmctbGVmdDo3cHg7dmVydGljYWwtYWxpZ246bWlkZGxlfS5Eak1rdGIgLnV5WXVWYiwuenlOclNjIC51eVl1VmJ7aGVpZ2h0OjQ4cHg7bGluZS1oZWlnaHQ6NDhweH0uelZEZXpiIC51eVl1VmJ7Zm9udC1mYW1pbHk6Um9ib3RvO2ZvbnQtd2VpZ2h0OmJvbGQ7bGV0dGVyLXNwYWNpbmc6LjI1cHh9LnpWRGV6Yi56ODBNMSAuUENkT0lie29wYWNpdHk6Ljg3O3BhZGRpbmctdG9wOjRweH0uZmNKcURie2xpbmUtaGVpZ2h0OjI0cHg7cGFkZGluZy10b3A6NHB4fS5BS1k5MHtjb2xvcjpyZ2JhKDAsMCwwLDAuNTQpO2ZvbnQtZmFtaWx5OlJvYm90bztmb250LXNpemU6MTJweDtsZXR0ZXItc3BhY2luZzouMjVweDtsaW5lLWhlaWdodDoxMnB4fS5jN2ZwNWJ7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuM3M7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czozcHg7Y29sb3I6IzQ0NDtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1MDA7bWluLXdpZHRoOjg4cHg7b3V0bGluZTpub25lO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWFsaWduOmNlbnRlcjstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnR9LmhoY09tY3tjb2xvcjojZmZmO2ZpbGw6I2ZmZn0uSnZ0WDJle3RyYW5zaXRpb246Ym94LXNoYWRvdyAuMjhzIGN1YmljLWJlemllcigwLjQsMC4wLDAuMiwxKTtiYWNrZ3JvdW5kOiNkZmRmZGY7Ym94LXNoYWRvdzowIDJweCAycHggMCByZ2JhKDAsMCwwLDAuMTQpLDAgM3B4IDFweCAtMnB4IHJnYmEoMCwwLDAsMC4xMiksMCAxcHggNXB4IDAgcmdiYSgwLDAsMCwwLjIpfS5yR01lMWV7YmFja2dyb3VuZDojNDI4NWY0O2NvbG9yOiNmZmZ9Lkp2dFgyZS5xczQxcWV7dHJhbnNpdGlvbjpib3gtc2hhZG93IC4yOHMgY3ViaWMtYmV6aWVyKDAuNCwwLjAsMC4yLDEpO3RyYW5zaXRpb246YmFja2dyb3VuZCAuOHM7Ym94LXNoYWRvdzowIDhweCAxMHB4IDFweCByZ2JhKDAsMCwwLDAuMTQpLDAgM3B4IDE0cHggMnB4IHJnYmEoMCwwLDAsMC4xMiksMCA1cHggNXB4IC0zcHggcmdiYSgwLDAsMCwwLjIpfS5yR01lMWUucXM0MXFle2JhY2tncm91bmQ6IzMzNjdkNn0uSnZ0WDJlLlJEUFpFe2JhY2tncm91bmQ6cmdiYSgxNTMsMTUzLDE1MywwLjEwMil9Lmc0alVWY3t0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2U7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMTIyKTtib3R0b206MDtsZWZ0OjA7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0uRlM0aGdkLnUzYlc0ZXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMTUzLDE1MywxNTMsMC40KX0uaGhjT21jLnUzYlc0ZXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjA0LDIwNCwyMDQsMC4yNTEpfS5KdnRYMmUudTNiVzRlIC5nNGpVVmN7b3BhY2l0eToxfS5sVll4bWJ7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpIHNjYWxlKDApO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTtiYWNrZ3JvdW5kLXNpemU6Y292ZXI7bGVmdDowO29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3Zpc2liaWxpdHk6aGlkZGVufS5jN2ZwNWIuaVdPNXRkPi5sVll4bWJ7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllcigwLjAsMC4wLDAuMiwxKTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSkgc2NhbGUoMi4yKTtvcGFjaXR5OjE7dmlzaWJpbGl0eTp2aXNpYmxlfS5jN2ZwNWIuajduSVpiPi5sVll4bWJ7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpIHNjYWxlKDIuMik7dmlzaWJpbGl0eTp2aXNpYmxlfS5jN2ZwNWI+LmxWWXhtYntiYWNrZ3JvdW5kLWltYWdlOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgZmFydGhlc3Qtc2lkZSxyZ2JhKDE1MywxNTMsMTUzLDAuNCkscmdiYSgxNTMsMTUzLDE1MywwLjQpIDgwJSxyZ2JhKDE1MywxNTMsMTUzLDApIDEwMCUpfS5GUzRoZ2QuaVdPNXRkPi5sVll4bWJ7YmFja2dyb3VuZC1pbWFnZTpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGZhcnRoZXN0LXNpZGUscmdiYSgxNTMsMTUzLDE1MywwLjQpLHJnYmEoMTUzLDE1MywxNTMsMC40KSA4MCUscmdiYSgxNTMsMTUzLDE1MywwKSAxMDAlKX0uaGhjT21jLmlXTzV0ZD4ubFZZeG1ie2JhY2tncm91bmQtaW1hZ2U6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSBmYXJ0aGVzdC1zaWRlLHJnYmEoMjA0LDIwNCwyMDQsMC4yNTEpLHJnYmEoMjA0LDIwNCwyMDQsMC4yNTEpIDgwJSxyZ2JhKDIwNCwyMDQsMjA0LDApIDEwMCUpfS5GUzRoZ2QuUkRQWkV7Y29sb3I6cmdiYSg2OCw2OCw2OCwwLjUwMik7ZmlsbDpyZ2JhKDY4LDY4LDY4LDAuNTAyKTtjdXJzb3I6ZGVmYXVsdH0uaGhjT21jLlJEUFpFe2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC41MDIpO2ZpbGw6cmdiYSgyNTUsMjU1LDI1NSwwLjUwMil9LmM3ZnA1Yi5SRFBaRXtib3gtc2hhZG93Om5vbmU7Y29sb3I6cmdiYSg2OCw2OCw2OCwwLjUwMik7Y3Vyc29yOmRlZmF1bHR9LkkzRW5Ge3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbjoxNnB4fS5ObFdya2J7ZGlzcGxheTppbmxpbmUtYmxvY2s7bGluZS1oZWlnaHQ6NDhweH1Aa2V5ZnJhbWVzIG1kYy1saW5lYXItcHJvZ3Jlc3MtcHJpbWFyeS1pbmRldGVybWluYXRlLXRyYW5zbGF0ZXswJXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX0yMCV7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoMC41LDAsMC43MDE3MzIsMC40OTU4MTkpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfTU5LjE1JXthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllcigwLjMwMjQzNSwwLjM4MTM1MiwwLjU1LDAuOTU2MzUyKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCg4My42NzE0MiUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKHZhcigtLW1kYy1saW5lYXItcHJvZ3Jlc3MtcHJpbWFyeS1oYWxmLDgzLjY3MTQyJSkpfXRve3RyYW5zZm9ybTp0cmFuc2xhdGVYKDIwMC42MTEwNTclKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCh2YXIoLS1tZGMtbGluZWFyLXByb2dyZXNzLXByaW1hcnktZnVsbCwyMDAuNjExMDU3JSkpfX1Aa2V5ZnJhbWVzIG1kYy1saW5lYXItcHJvZ3Jlc3MtcHJpbWFyeS1pbmRldGVybWluYXRlLXNjYWxlezAle3RyYW5zZm9ybTpzY2FsZVgoMC4wOCl9MzYuNjUle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuMzM0NzMxLDAuMTI0ODIsMC43ODU4NDQsMSk7dHJhbnNmb3JtOnNjYWxlWCgwLjA4KX02OS4xNSV7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoMC4wNiwwLjExLDAuNiwxKTt0cmFuc2Zvcm06c2NhbGVYKDAuNjYxNDc5KX10b3t0cmFuc2Zvcm06c2NhbGVYKDAuMDgpfX1Aa2V5ZnJhbWVzIG1kYy1saW5lYXItcHJvZ3Jlc3Mtc2Vjb25kYXJ5LWluZGV0ZXJtaW5hdGUtdHJhbnNsYXRlezAle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuMTUsMCwwLjUxNTA1OCwwLjQwOTY4NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9MjUle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuMzEwMzMsMC4yODQwNTgsMC44LDAuNzMzNzEyKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgzNy42NTE5MTMlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCh2YXIoLS1tZGMtbGluZWFyLXByb2dyZXNzLXNlY29uZGFyeS1xdWFydGVyLDM3LjY1MTkxMyUpKX00OC4zNSV7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoMC40LDAuNjI3MDM1LDAuNiwwLjkwMjAyNik7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoODQuMzg2MTY1JSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tbWRjLWxpbmVhci1wcm9ncmVzcy1zZWNvbmRhcnktaGFsZiw4NC4zODYxNjUlKSl9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMTYwLjI3Nzc4MiUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKHZhcigtLW1kYy1saW5lYXItcHJvZ3Jlc3Mtc2Vjb25kYXJ5LWZ1bGwsMTYwLjI3Nzc4MiUpKX19QGtleWZyYW1lcyBtZGMtbGluZWFyLXByb2dyZXNzLXNlY29uZGFyeS1pbmRldGVybWluYXRlLXNjYWxlezAle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuMjA1MDI4LDAuMDU3MDUxLDAuNTc2NjEsMC40NTM5NzEpO3RyYW5zZm9ybTpzY2FsZVgoMC4wOCl9MTkuMTUle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuMTUyMzEzLDAuMTk2NDMyLDAuNjQ4Mzc0LDEuMDA0MzE1KTt0cmFuc2Zvcm06c2NhbGVYKDAuNDU3MTA0KX00NC4xNSV7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoMC4yNTc3NTksLTAuMDAzMTYzLDAuMjExNzYyLDEuMzgxNzkpO3RyYW5zZm9ybTpzY2FsZVgoMC43Mjc5Nil9dG97dHJhbnNmb3JtOnNjYWxlWCgwLjA4KX19QGtleWZyYW1lcyBtZGMtbGluZWFyLXByb2dyZXNzLWJ1ZmZlcmluZ3swJXt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZykgdHJhbnNsYXRlWCgtMTBweCl9fUBrZXlmcmFtZXMgbWRjLWxpbmVhci1wcm9ncmVzcy1wcmltYXJ5LWluZGV0ZXJtaW5hdGUtdHJhbnNsYXRlLXJldmVyc2V7MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9MjAle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuNSwwLDAuNzAxNzMyLDAuNDk1ODE5KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX01OS4xNSV7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoMC4zMDI0MzUsMC4zODEzNTIsMC41NSwwLjk1NjM1Mik7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTgzLjY3MTQyJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tbWRjLWxpbmVhci1wcm9ncmVzcy1wcmltYXJ5LWhhbGYtbmVnLC04My42NzE0MiUpKX10b3t0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjAwLjYxMTA1NyUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKHZhcigtLW1kYy1saW5lYXItcHJvZ3Jlc3MtcHJpbWFyeS1mdWxsLW5lZywtMjAwLjYxMTA1NyUpKX19QGtleWZyYW1lcyBtZGMtbGluZWFyLXByb2dyZXNzLXNlY29uZGFyeS1pbmRldGVybWluYXRlLXRyYW5zbGF0ZS1yZXZlcnNlezAle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuMTUsMCwwLjUxNTA1OCwwLjQwOTY4NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9MjUle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAuMzEwMzMsMC4yODQwNTgsMC44LDAuNzMzNzEyKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMzcuNjUxOTEzJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tbWRjLWxpbmVhci1wcm9ncmVzcy1zZWNvbmRhcnktcXVhcnRlci1uZWcsLTM3LjY1MTkxMyUpKX00OC4zNSV7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoMC40LDAuNjI3MDM1LDAuNiwwLjkwMjAyNik7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTg0LjM4NjE2NSUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKHZhcigtLW1kYy1saW5lYXItcHJvZ3Jlc3Mtc2Vjb25kYXJ5LWhhbGYtbmVnLC04NC4zODYxNjUlKSl9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTE2MC4yNzc3ODIlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCh2YXIoLS1tZGMtbGluZWFyLXByb2dyZXNzLXNlY29uZGFyeS1mdWxsLW5lZywtMTYwLjI3Nzc4MiUpKX19QGtleWZyYW1lcyBtZGMtbGluZWFyLXByb2dyZXNzLWJ1ZmZlcmluZy1yZXZlcnNlezAle3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMHB4KX19LlZmUHBrZC1xTnBUemItUDFla1Nle3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7aGVpZ2h0OjRweDt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKTtvdXRsaW5lOjFweCBzb2xpZCB0cmFuc3BhcmVudDtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjpvcGFjaXR5IDI1MG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LDAsMC42LDEpfS5WZlBwa2QtcU5wVHpiLVA0cEY4Y3twb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2FuaW1hdGlvbjpub25lO3RyYW5zZm9ybS1vcmlnaW46dG9wIGxlZnQ7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMjUwbXMgMG1zIGN1YmljLWJlemllcigwLjQsMCwwLjYsMSl9LlZmUHBrZC1xTnBUemItUDRwRjhjLVNtS0F5YntkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2FuaW1hdGlvbjpub25lO2JvcmRlci10b3A6NHB4IHNvbGlkfS5WZlBwa2QtcU5wVHpiLWFqdVh4Y3tkaXNwbGF5OmZsZXg7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0uVmZQcGtkLXFOcFR6Yi1hanVYeGMtUnhZYk5le2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2JhY2tncm91bmQtc2l6ZToxMHB4IDRweDtmbGV4OmF1dG87dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpO2FuaW1hdGlvbjptZGMtbGluZWFyLXByb2dyZXNzLWJ1ZmZlcmluZyAyNTBtcyBpbmZpbml0ZSBsaW5lYXJ9LlZmUHBrZC1xTnBUemItYWp1WHhjLVpNdjN1e2ZsZXg6MCAxIDEwMCU7dHJhbnNpdGlvbjpmbGV4LWJhc2lzIDI1MG1zIDBtcyBjdWJpYy1iZXppZXIoMC40LDAsMC42LDEpfS5WZlBwa2QtcU5wVHpiLVZ3M1h1Zi1aTXYzdXt0cmFuc2Zvcm06c2NhbGVYKDApfS5WZlBwa2QtcU5wVHpiLW5jQXVGYi1aTXYzdXt2aXNpYmlsaXR5OmhpZGRlbn0uVmZQcGtkLXFOcFR6Yi1QMWVrU2UtT1dYRVhlLUE5eTN6YyAuVmZQcGtkLXFOcFR6Yi1QNHBGOGN7dHJhbnNpdGlvbjpub25lfS5WZlBwa2QtcU5wVHpiLVAxZWtTZS1PV1hFWGUtQTl5M3pjIC5WZlBwa2QtcU5wVHpiLVZ3M1h1Zi1aTXYzdXtsZWZ0Oi0xNDUuMTY2NjExJX0uVmZQcGtkLXFOcFR6Yi1QMWVrU2UtT1dYRVhlLUE5eTN6YyAuVmZQcGtkLXFOcFR6Yi1uY0F1RmItWk12M3V7bGVmdDotNTQuODg4ODkxJTt2aXNpYmlsaXR5OnZpc2libGV9LlZmUHBrZC1xTnBUemItUDFla1NlLU9XWEVYZS1BOXkzemMuVmZQcGtkLXFOcFR6Yi1QMWVrU2UtT1dYRVhlLU9paUNPLUloZlV5ZSAuVmZQcGtkLXFOcFR6Yi1WdzNYdWYtWk12M3V7YW5pbWF0aW9uOm1kYy1saW5lYXItcHJvZ3Jlc3MtcHJpbWFyeS1pbmRldGVybWluYXRlLXRyYW5zbGF0ZSAycyBpbmZpbml0ZSBsaW5lYXJ9LlZmUHBrZC1xTnBUemItUDFla1NlLU9XWEVYZS1BOXkzemMuVmZQcGtkLXFOcFR6Yi1QMWVrU2UtT1dYRVhlLU9paUNPLUloZlV5ZSAuVmZQcGtkLXFOcFR6Yi1WdzNYdWYtWk12M3U+LlZmUHBrZC1xTnBUemItUDRwRjhjLVNtS0F5YnthbmltYXRpb246bWRjLWxpbmVhci1wcm9ncmVzcy1wcmltYXJ5LWluZGV0ZXJtaW5hdGUtc2NhbGUgMnMgaW5maW5pdGUgbGluZWFyfS5WZlBwa2QtcU5wVHpiLVAxZWtTZS1PV1hFWGUtQTl5M3pjLlZmUHBrZC1xTnBUemItUDFla1NlLU9XWEVYZS1PaWlDTy1JaGZVeWUgLlZmUHBrZC1xTnBUemItbmNBdUZiLVpNdjN1e2FuaW1hdGlvbjptZGMtbGluZWFyLXByb2dyZXNzLXNlY29uZGFyeS1pbmRldGVybWluYXRlLXRyYW5zbGF0ZSAycyBpbmZpbml0ZSBsaW5lYXJ9LlZmUHBrZC1xTnBUemItUDFla1NlLU9XWEVYZS1BOXkzemMuVmZQcGtkLXFOcFR6Yi1QMWVrU2UtT1dYRVhlLU9paUNPLUloZlV5ZSAuVmZQcGtkLXFOcFR6Yi1uY0F1RmItWk12M3U+LlZmUHBrZC1xTnBUemItUDRwRjhjLVNtS0F5YnthbmltYXRpb246bWRjLWxpbmVhci1wcm9ncmVzcy1zZWNvbmRhcnktaW5kZXRlcm1pbmF0ZS1zY2FsZSAycyBpbmZpbml0ZSBsaW5lYXJ9W2Rpcj1ydGxdIC5WZlBwa2QtcU5wVHpiLVAxZWtTZTpub3QoW2Rpcj1sdHJdKSAuVmZQcGtkLXFOcFR6Yi1QNHBGOGMsLlZmUHBrZC1xTnBUemItUDFla1NlW2Rpcj1ydGxdOm5vdChbZGlyPWx0cl0pIC5WZlBwa2QtcU5wVHpiLVA0cEY4Y3tyaWdodDowO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIHJpZ2h0fVtkaXI9cnRsXSAuVmZQcGtkLXFOcFR6Yi1QMWVrU2U6bm90KFtkaXI9bHRyXSkuVmZQcGtkLXFOcFR6Yi1QMWVrU2UtT1dYRVhlLU9paUNPLUloZlV5ZSAuVmZQcGtkLXFOcFR6Yi1WdzNYdWYtWk12M3UsLlZmUHBrZC1xTnBUemItUDFla1NlW2Rpcj1ydGxdOm5vdChbZGlyPWx0cl0pLlZmUHBrZC1xTnBUemItUDFla1NlLU9XWEVYZS1PaWlDTy1JaGZVeWUgLlZmUHBrZC1xTnBUemItVnczWHVmLVpNdjN1e2FuaW1hdGlvbi1uYW1lOm1kYy1saW5lYXItcHJvZ3Jlc3MtcHJpbWFyeS1pbmRldGVybWluYXRlLXRyYW5zbGF0ZS1yZXZlcnNlfVtkaXI9cnRsXSAuVmZQcGtkLXFOcFR6Yi1QMWVrU2U6bm90KFtkaXI9bHRyXSkuVmZQcGtkLXFOcFR6Yi1QMWVrU2UtT1dYRVhlLU9paUNPLUloZlV5ZSAuVmZQcGtkLXFOcFR6Yi1uY0F1RmItWk12M3UsLlZmUHBrZC1xTnBUemItUDFla1NlW2Rpcj1ydGxdOm5vdChbZGlyPWx0cl0pLlZmUHBrZC1xTnBUemItUDFla1NlLU9XWEVYZS1PaWlDTy1JaGZVeWUgLlZmUHBrZC1xTnBUemItbmNBdUZiLVpNdjN1e2FuaW1hdGlvbi1uYW1lOm1kYy1saW5lYXItcHJvZ3Jlc3Mtc2Vjb25kYXJ5LWluZGV0ZXJtaW5hdGUtdHJhbnNsYXRlLXJldmVyc2V9W2Rpcj1ydGxdIC5WZlBwa2QtcU5wVHpiLVAxZWtTZTpub3QoW2Rpcj1sdHJdKSAuVmZQcGtkLXFOcFR6Yi1hanVYeGMtUnhZYk5lLC5WZlBwa2QtcU5wVHpiLVAxZWtTZVtkaXI9cnRsXTpub3QoW2Rpcj1sdHJdKSAuVmZQcGtkLXFOcFR6Yi1hanVYeGMtUnhZYk5le2FuaW1hdGlvbjptZGMtbGluZWFyLXByb2dyZXNzLWJ1ZmZlcmluZy1yZXZlcnNlIDI1MG1zIGluZmluaXRlIGxpbmVhcjt0cmFuc2Zvcm06cm90YXRlKDApfVtkaXI9cnRsXSAuVmZQcGtkLXFOcFR6Yi1QMWVrU2U6bm90KFtkaXI9bHRyXSkuVmZQcGtkLXFOcFR6Yi1QMWVrU2UtT1dYRVhlLUE5eTN6YyAuVmZQcGtkLXFOcFR6Yi1WdzNYdWYtWk12M3UsLlZmUHBrZC1xTnBUemItUDFla1NlW2Rpcj1ydGxdOm5vdChbZGlyPWx0cl0pLlZmUHBrZC1xTnBUemItUDFla1NlLU9XWEVYZS1BOXkzemMgLlZmUHBrZC1xTnBUemItVnczWHVmLVpNdjN1e3JpZ2h0Oi0xNDUuMTY2NjExJTtsZWZ0OmF1dG99W2Rpcj1ydGxdIC5WZlBwa2QtcU5wVHpiLVAxZWtTZTpub3QoW2Rpcj1sdHJdKS5WZlBwa2QtcU5wVHpiLVAxZWtTZS1PV1hFWGUtQTl5M3pjIC5WZlBwa2QtcU5wVHpiLW5jQXVGYi1aTXYzdSwuVmZQcGtkLXFOcFR6Yi1QMWVrU2VbZGlyPXJ0bF06bm90KFtkaXI9bHRyXSkuVmZQcGtkLXFOcFR6Yi1QMWVrU2UtT1dYRVhlLUE5eTN6YyAuVmZQcGtkLXFOcFR6Yi1uY0F1RmItWk12M3V7cmlnaHQ6LTU0Ljg4ODg5MSU7bGVmdDphdXRvfS5WZlBwa2QtcU5wVHpiLVAxZWtTZS1PV1hFWGUteFRNZU97b3BhY2l0eTowfS5WZlBwa2QtcU5wVHpiLVAxZWtTZS1PV1hFWGUteFRNZU8tT2lpQ08tWGhzOXogLlZmUHBrZC1xTnBUemItYWp1WHhjLVJ4WWJOZSwuVmZQcGtkLXFOcFR6Yi1QMWVrU2UtT1dYRVhlLXhUTWVPLU9paUNPLVhoczl6LlZmUHBrZC1xTnBUemItUDFla1NlLU9XWEVYZS1BOXkzemMgLlZmUHBrZC1xTnBUemItUDRwRjhjLC5WZlBwa2QtcU5wVHpiLVAxZWtTZS1PV1hFWGUteFRNZU8tT2lpQ08tWGhzOXouVmZQcGtkLXFOcFR6Yi1QMWVrU2UtT1dYRVhlLUE5eTN6YyAuVmZQcGtkLXFOcFR6Yi1QNHBGOGMgLlZmUHBrZC1xTnBUemItUDRwRjhjLVNtS0F5YnthbmltYXRpb246bm9uZX0uVmZQcGtkLXFOcFR6Yi1QNHBGOGMtU21LQXlie2JvcmRlci1jb2xvcjojNjIwMGVlO2JvcmRlci1jb2xvcjp2YXIoLS1tZGMtdGhlbWUtcHJpbWFyeSwjNjIwMGVlKX0uVmZQcGtkLXFOcFR6Yi1hanVYeGMtUnhZYk5le2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHZlcnNpb249XDAwMDAyNzEuMVwwMDAwMjcgIHhtbG5zPVwwMDAwMjdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wwMDAwMjcgIHhtbG5zOnhsaW5rPVwwMDAwMjdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXDAwMDAyNyAgeD1cMDAwMDI3MHB4XDAwMDAyNyAgeT1cMDAwMDI3MHB4XDAwMDAyNyAgZW5hYmxlLWJhY2tncm91bmQ9XDAwMDAyN25ldyAwIDAgNSAyXDAwMDAyNyAgeG1sOnNwYWNlPVwwMDAwMjdwcmVzZXJ2ZVwwMDAwMjcgIHZpZXdCb3g9XDAwMDAyNzAgMCA1IDJcMDAwMDI3ICBwcmVzZXJ2ZUFzcGVjdFJhdGlvPVwwMDAwMjdub25lIHNsaWNlXDAwMDAyNyUzRSUzQ2NpcmNsZSBjeD1cMDAwMDI3MVwwMDAwMjcgIGN5PVwwMDAwMjcxXDAwMDAyNyAgcj1cMDAwMDI3MVwwMDAwMjcgIGZpbGw9XDAwMDAyNyUyM2U2ZTZlNlwwMDAwMjcvJTNFJTNDL3N2ZyUzRSIpfS5WZlBwa2QtcU5wVHpiLWFqdVh4Yy1aTXYzdXtiYWNrZ3JvdW5kLWNvbG9yOiNlNmU2ZTZ9LlZlVGx1ZntsZXR0ZXItc3BhY2luZzouMDI1ZW07Zm9udC1mYW1pbHk6Um9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOi43NXJlbTtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MXJlbTthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjojZmNlOGU2O2Rpc3BsYXk6ZmxleDttYXJnaW4tdG9wOjhweDtwYWRkaW5nOjhweCA0cHg7dGV4dC1hbGlnbjpsZWZ0fS5WZVRsdWYgc3Zne21pbi1oZWlnaHQ6MTZweDttaW4td2lkdGg6MTZweDtwYWRkaW5nLXJpZ2h0OjhweH0uY1JITkx7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOmNlbnRlcjtmbGV4LXdyYXA6d3JhcH0uY1JITkwgc3BhbnttYXJnaW4tbGVmdDowfS5NVklraWN7bGV0dGVyLXNwYWNpbmc6LjAyNWVtO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZTouNzVyZW07Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjFyZW07Y29sb3I6IzgwODY4Yn0uTVZJa2ljIHNwYW57Y29sb3I6IzgwODY4Yn0uRjRHMXV7cGFkZGluZy10b3A6OHB4fS5TYWx4bGV7bWFyZ2luLWxlZnQ6LThweH0ucmRVanFme3RleHQtYWxpZ246Ym90dG9tO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uTTkxTWJje2ZvbnQtZmFtaWx5OidHb29nbGUgU2FucycsUm9ib3RvLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMTI1cmVtO2ZvbnQtd2VpZ2h0OjQwMDtsZXR0ZXItc3BhY2luZzowO2xpbmUtaGVpZ2h0OjI4cHg7Y29sb3I6IzVmNjM2ODttYXJnaW46YXV0bzt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjQ4MHB4KXsuTTkxTWJje2ZvbnQtc2l6ZToxMnB4fX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6NDgxcHgpey5NOTFNYmN7Zm9udC1zaXplOjE0cHh9fUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDozODBweCl7LnVxZUlCY3tkaXNwbGF5Om5vbmV9LmdSem1YZS5SajJNbGYsLmdSem1YZS5SajJNbGY6aG92ZXIsLmdSem1YZS5SajJNbGY6Zm9jdXN7Ym9yZGVyOjA7bWFyZ2luLXJpZ2h0Oi0yM3B4fX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MzgxcHgpey5leEVZaGZ7ZGlzcGxheTpub25lfS5nUnptWGUuUmoyTWxmLC5nUnptWGUuUmoyTWxmOmhvdmVyLC5nUnptWGUuUmoyTWxmOmZvY3Vze2JvcmRlcjoxcHggc29saWQgIzA2NWZkNDtib3JkZXItcmFkaXVzOjJweDtjb2xvcjojMDY1ZmQ0O2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxOHB4O3BhZGRpbmctbGVmdDo4cHg7cGFkZGluZy1yaWdodDoxMnB4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0uZ1J6bVhlLlJqMk1sZiBzdmcsLmdSem1YZS5SajJNbGY6aG92ZXIgc3Zne3BhZGRpbmctcmlnaHQ6OHB4fX0ucnhiMG9le3Bvc2l0aW9uOnJlbGF0aXZlfS5yeGIwb2UgLlZmUHBrZC1xTnBUemItUDRwRjhjLVNtS0F5Yntib3JkZXItY29sb3I6IzQyODVmNH0ucnhiMG9lIC5WZlBwa2QtcU5wVHpiLWFqdVh4Yy1SeFliTmV7YmFja2dyb3VuZC1pbWFnZTp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgdmVyc2lvbj1cMDAwMDI3MS4xXDAwMDAyNyAgeG1sbnM9XDAwMDAyN2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXDAwMDAyNyAgeG1sbnM6eGxpbms9XDAwMDAyN2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcMDAwMDI3ICB4PVwwMDAwMjcwcHhcMDAwMDI3ICB5PVwwMDAwMjcwcHhcMDAwMDI3ICBlbmFibGUtYmFja2dyb3VuZD1cMDAwMDI3bmV3IDAgMCA1IDJcMDAwMDI3ICB4bWw6c3BhY2U9XDAwMDAyN3ByZXNlcnZlXDAwMDAyNyAgdmlld0JveD1cMDAwMDI3MCAwIDUgMlwwMDAwMjcgIHByZXNlcnZlQXNwZWN0UmF0aW89XDAwMDAyN25vbmUgc2xpY2VcMDAwMDI3JTNFJTNDY2lyY2xlIGN4PVwwMDAwMjcxXDAwMDAyNyAgY3k9XDAwMDAyNzFcMDAwMDI3ICByPVwwMDAwMjcxXDAwMDAyNyAgZmlsbD1cMDAwMDI3JTIzZThmMGZlXDAwMDAyNy8lM0UlM0Mvc3ZnJTNFIil9LnJ4YjBvZSAuVmZQcGtkLXFOcFR6Yi1hanVYeGMtWk12M3V7YmFja2dyb3VuZC1jb2xvcjojZThmMGZlfS5yeGIwb2UgLlZmUHBrZC1xTnBUemItTXI4QjMtVjY3YUdje2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7cG9zaXRpb246YWJzb2x1dGU7b3BhY2l0eTowO292ZXJmbG93OmhpZGRlbjt6LWluZGV4Oi0xfS5OSW9JRWZ7YWxpZ24tY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzttYXgtd2lkdGg6NTIwcHh9Lkc0bmp3e2JvcmRlci1yYWRpdXM6OHB4O3RleHQtYWxpZ246Y2VudGVyfS5TR1c5eGV7Y29sb3I6IzIwMjEyNDtmb250LWZhbWlseTonWW91VHViZSBTYW5zJztmb250LXNpemU6MjZweDtsaW5lLWhlaWdodDozMi41cHh9LlQ3UklhZXtmb250LWZhbWlseTonR29vZ2xlIFNhbnMnLFJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjM3NXJlbTtmb250LXdlaWdodDo0MDA7bGV0dGVyLXNwYWNpbmc6MDtsaW5lLWhlaWdodDoxLjc1cmVtO2NvbG9yOiMyMDIxMjR9LlFoZzVnZntmb250LWZhbWlseTpSb2JvdG8sQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MS4yNXJlbTtjb2xvcjojNWY2MzY4O2xldHRlci1zcGFjaW5nOi4ycHg7cGFkZGluZzoycHggMCAyNHB4IDA7dGV4dC1hbGlnbjpsZWZ0fS5QZ0tWSGN7bWF4LWhlaWdodDoxMTJweDttYXgtd2lkdGg6MzE2cHg7bWFyZ2luOjIwcHggYXV0byA0cHggYXV0bzt0ZXh0LWFsaWduOmNlbnRlcn0uSExxS0Zie2hlaWdodDoxMDAlO3dpZHRoOjEwMCV9LkFJQzdnZXt0ZXh0LWFsaWduOmNlbnRlcn0ucXF0UmFje3RleHQtYWxpZ246cmlnaHR9Lmxzc3h1ZHtkaXNwbGF5OmlubGluZTtwYWRkaW5nLWxlZnQ6OHB4fS5GZWNINmR7bWFyZ2luOjB9LlF6c25BZXtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS5hMGd5d3tkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246cm93O2FsaWduLWl0ZW1zOmNlbnRlcn0uclo3cmNie2p1c3RpZnktY29udGVudDpjZW50ZXJ9LklJZGtsZS5uQ1A1eWMsLklJZGtsZS5uQ1A1eWM6aG92ZXIsLklJZGtsZS5uQ1A1eWM6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojMDY1ZmQ0O2JvcmRlci1yYWRpdXM6MnB4O2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxOHB4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX1AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NDgwcHgpey5OSW9JRWZ7cGFkZGluZzoyMHB4IDI0cHh9LmNySWozZXtkaXNwbGF5Om5vbmV9LlF6c25BZXttYXJnaW4tbGVmdDphdXRvfS5kOFB5TXttYXJnaW4tdG9wOjJweDttYXJnaW4tYm90dG9tOi02cHh9fUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDo0ODFweCl7Lk5Jb0lFZntwYWRkaW5nOjAgMTJweH0uRzRuand7Ym9yZGVyOjFweCBzb2xpZCAjZGFkY2UwO3BhZGRpbmc6MjRweH0ucmpmc2dke2Rpc3BsYXk6bm9uZX0uUXpzbkFle3BhZGRpbmc6MjBweCAyNHB4IDI0cHggMjRweH0ucERwbThke3BhZGRpbmc6MCAyNHB4fS5kOFB5TXttYXJnaW4tdG9wOjhweDttYXJnaW4tYm90dG9tOi0xMnB4fX1zZW50aW5lbHt9Ci8qIyBzb3VyY2VVUkw9L18vbXNzL2JvcS1pZGVudGl0eS9fL3NzL2s9Ym9xLWlkZW50aXR5LkNvbnNlbnRVaS5jSDROYWp4dWx0WS5MLkIxLk8vYW09RndCQS9kPTEvZWQ9MS9jdD16Z21zL3JzPUFPYUVtbEZZOGNBanFBSTFCNHhJSDZNTmtreGEydFFsNlEvbT1tYWludmlldyxfYixfdHAgKi88L3N0eWxlPjxzY3JpcHQgbm9uY2U9IlNoTEhQSmJRSFA0ZXVxdGFXY3ByUFEiPm9uQ3NzTG9hZCgpOzwvc2NyaXB0PjxzdHlsZSBub25jZT0iU2hMSFBKYlFIUDRldXF0YVdjcHJQUSI+QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDozMDA7Zm9udC1kaXNwbGF5OnN3YXA7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YxOC9LRk9sQ25xRXU5MkZyMU1tU1U1ZkNSYzRFc0Eud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswNDYwLTA1MkYsVSsxQzgwLTFDODgsVSsyMEI0LFUrMkRFMC0yREZGLFUrQTY0MC1BNjlGLFUrRkUyRS1GRTJGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjMwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjE4L0tGT2xDbnFFdTkyRnIxTW1TVTVmQUJjNEVzQS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzA0MDAtMDQ1RixVKzA0OTAtMDQ5MSxVKzA0QjAtMDRCMSxVKzIxMTY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6MzAwO2ZvbnQtZGlzcGxheTpzd2FwO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MTgvS0ZPbENucUV1OTJGcjFNbVNVNWZDQmM0RXNBLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMUYwMC0xRkZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjMwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjE4L0tGT2xDbnFFdTkyRnIxTW1TVTVmQnhjNEVzQS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAzNzAtMDNGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDozMDA7Zm9udC1kaXNwbGF5OnN3YXA7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YxOC9LRk9sQ25xRXU5MkZyMU1tU1U1ZkN4YzRFc0Eud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMTAyLTAxMDMsVSswMTEwLTAxMTEsVSswMTI4LTAxMjksVSswMTY4LTAxNjksVSswMUEwLTAxQTEsVSswMUFGLTAxQjAsVSsxRUEwLTFFRjksVSsyMEFCO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjMwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjE4L0tGT2xDbnFFdTkyRnIxTW1TVTVmQ2hjNEVzQS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAxMDAtMDI0RixVKzAyNTksVSsxRTAwLTFFRkYsVSsyMDIwLFUrMjBBMC0yMEFCLFUrMjBBRC0yMENGLFUrMjExMyxVKzJDNjAtMkM3RixVK0E3MjAtQTdGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDozMDA7Zm9udC1kaXNwbGF5OnN3YXA7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YxOC9LRk9sQ25xRXU5MkZyMU1tU1U1ZkJCYzQud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMDAwLTAwRkYsVSswMTMxLFUrMDE1Mi0wMTUzLFUrMDJCQi0wMkJDLFUrMDJDNixVKzAyREEsVSswMkRDLFUrMjAwMC0yMDZGLFUrMjA3NCxVKzIwQUMsVSsyMTIyLFUrMjE5MSxVKzIxOTMsVSsyMjEyLFUrMjIxNSxVK0ZFRkYsVStGRkZEO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjE4L0tGT21DbnFFdTkyRnIxTXU3MnhLT3pZLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDQ2MC0wNTJGLFUrMUM4MC0xQzg4LFUrMjBCNCxVKzJERTAtMkRGRixVK0E2NDAtQTY5RixVK0ZFMkUtRkUyRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1kaXNwbGF5OnN3YXA7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YxOC9LRk9tQ25xRXU5MkZyMU11NW14S096WS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzA0MDAtMDQ1RixVKzA0OTAtMDQ5MSxVKzA0QjAtMDRCMSxVKzIxMTY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtZGlzcGxheTpzd2FwO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MTgvS0ZPbUNucUV1OTJGcjFNdTdteEtPelkud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSsxRjAwLTFGRkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtZGlzcGxheTpzd2FwO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MTgvS0ZPbUNucUV1OTJGcjFNdTRXeEtPelkud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMzcwLTAzRkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtZGlzcGxheTpzd2FwO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MTgvS0ZPbUNucUV1OTJGcjFNdTdXeEtPelkud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMTAyLTAxMDMsVSswMTEwLTAxMTEsVSswMTI4LTAxMjksVSswMTY4LTAxNjksVSswMUEwLTAxQTEsVSswMUFGLTAxQjAsVSsxRUEwLTFFRjksVSsyMEFCO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjE4L0tGT21DbnFFdTkyRnIxTXU3R3hLT3pZLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDEwMC0wMjRGLFUrMDI1OSxVKzFFMDAtMUVGRixVKzIwMjAsVSsyMEEwLTIwQUIsVSsyMEFELTIwQ0YsVSsyMTEzLFUrMkM2MC0yQzdGLFUrQTcyMC1BN0ZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjE4L0tGT21DbnFFdTkyRnIxTXU0bXhLLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDAwMC0wMEZGLFUrMDEzMSxVKzAxNTItMDE1MyxVKzAyQkItMDJCQyxVKzAyQzYsVSswMkRBLFUrMDJEQyxVKzIwMDAtMjA2RixVKzIwNzQsVSsyMEFDLFUrMjEyMixVKzIxOTEsVSsyMTkzLFUrMjIxMixVKzIyMTUsVStGRUZGLFUrRkZGRDt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1kaXNwbGF5OnN3YXA7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YxOC9LRk9sQ25xRXU5MkZyMU1tRVU5ZkNSYzRFc0Eud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswNDYwLTA1MkYsVSsxQzgwLTFDODgsVSsyMEI0LFUrMkRFMC0yREZGLFUrQTY0MC1BNjlGLFUrRkUyRS1GRTJGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjUwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjE4L0tGT2xDbnFFdTkyRnIxTW1FVTlmQUJjNEVzQS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzA0MDAtMDQ1RixVKzA0OTAtMDQ5MSxVKzA0QjAtMDRCMSxVKzIxMTY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtZGlzcGxheTpzd2FwO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MTgvS0ZPbENucUV1OTJGcjFNbUVVOWZDQmM0RXNBLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMUYwMC0xRkZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjUwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjE4L0tGT2xDbnFFdTkyRnIxTW1FVTlmQnhjNEVzQS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAzNzAtMDNGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1kaXNwbGF5OnN3YXA7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YxOC9LRk9sQ25xRXU5MkZyMU1tRVU5ZkN4YzRFc0Eud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMTAyLTAxMDMsVSswMTEwLTAxMTEsVSswMTI4LTAxMjksVSswMTY4LTAxNjksVSswMUEwLTAxQTEsVSswMUFGLTAxQjAsVSsxRUEwLTFFRjksVSsyMEFCO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjUwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjE4L0tGT2xDbnFFdTkyRnIxTW1FVTlmQ2hjNEVzQS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAxMDAtMDI0RixVKzAyNTksVSsxRTAwLTFFRkYsVSsyMDIwLFUrMjBBMC0yMEFCLFUrMjBBRC0yMENGLFUrMjExMyxVKzJDNjAtMkM3RixVK0E3MjAtQTdGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1kaXNwbGF5OnN3YXA7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YxOC9LRk9sQ25xRXU5MkZyMU1tRVU5ZkJCYzQud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMDAwLTAwRkYsVSswMTMxLFUrMDE1Mi0wMTUzLFUrMDJCQi0wMkJDLFUrMDJDNixVKzAyREEsVSswMkRDLFUrMjAwMC0yMDZGLFUrMjA3NCxVKzIwQUMsVSsyMTIyLFUrMjE5MSxVKzIxOTMsVSsyMjEyLFUrMjIxNSxVK0ZFRkYsVStGRkZEO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjcwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjE4L0tGT2xDbnFFdTkyRnIxTW1XVWxmQ1JjNEVzQS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzA0NjAtMDUyRixVKzFDODAtMUM4OCxVKzIwQjQsVSsyREUwLTJERkYsVStBNjQwLUE2OUYsVStGRTJFLUZFMkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtZGlzcGxheTpzd2FwO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MTgvS0ZPbENucUV1OTJGcjFNbVdVbGZBQmM0RXNBLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDQwMC0wNDVGLFUrMDQ5MC0wNDkxLFUrMDRCMC0wNEIxLFUrMjExNjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo3MDA7Zm9udC1kaXNwbGF5OnN3YXA7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3YxOC9LRk9sQ25xRXU5MkZyMU1tV1VsZkNCYzRFc0Eud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSsxRjAwLTFGRkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtZGlzcGxheTpzd2FwO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MTgvS0ZPbENucUV1OTJGcjFNbVdVbGZCeGM0RXNBLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDM3MC0wM0ZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjcwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjE4L0tGT2xDbnFFdTkyRnIxTW1XVWxmQ3hjNEVzQS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAxMDItMDEwMyxVKzAxMTAtMDExMSxVKzAxMjgtMDEyOSxVKzAxNjgtMDE2OSxVKzAxQTAtMDFBMSxVKzAxQUYtMDFCMCxVKzFFQTAtMUVGOSxVKzIwQUI7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtZGlzcGxheTpzd2FwO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92MTgvS0ZPbENucUV1OTJGcjFNbVdVbGZDaGM0RXNBLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDEwMC0wMjRGLFUrMDI1OSxVKzFFMDAtMUVGRixVKzIwMjAsVSsyMEEwLTIwQUIsVSsyMEFELTIwQ0YsVSsyMTEzLFUrMkM2MC0yQzdGLFUrQTcyMC1BN0ZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjcwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjE4L0tGT2xDbnFFdTkyRnIxTW1XVWxmQkJjNC53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAwMDAtMDBGRixVKzAxMzEsVSswMTUyLTAxNTMsVSswMkJCLTAyQkMsVSswMkM2LFUrMDJEQSxVKzAyREMsVSsyMDAwLTIwNkYsVSsyMDc0LFUrMjBBQyxVKzIxMjIsVSsyMTkxLFUrMjE5MyxVKzIyMTIsVSsyMjE1LFUrRkVGRixVK0ZGRkQ7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J01hdGVyaWFsIEljb25zIEV4dGVuZGVkJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1kaXNwbGF5OnN3YXA7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3MvbWF0ZXJpYWxpY29uc2V4dGVuZGVkL3Y4Ny9rSkVqQnZnWDdCZ25rU3JVd1Q4VW5MVmMzOFl5ZGVqWVktb0VfTHZKLndvZmYyKWZvcm1hdCgnd29mZjInKTt9Lm1hdGVyaWFsLWljb25zLWV4dGVuZGVke2ZvbnQtZmFtaWx5OidNYXRlcmlhbCBJY29ucyBFeHRlbmRlZCc7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtc2l6ZToyNHB4O2xpbmUtaGVpZ2h0OjE7bGV0dGVyLXNwYWNpbmc6bm9ybWFsO3RleHQtdHJhbnNmb3JtOm5vbmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2hpdGUtc3BhY2U6bm93cmFwO3dvcmQtd3JhcDpub3JtYWw7ZGlyZWN0aW9uOmx0cjstd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczonbGlnYSc7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUHJvZHVjdCBTYW5zJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1kaXNwbGF5OnN3YXA7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3MvcHJvZHVjdHNhbnMvdjkvcHhpRHlwUWtvdDFUbkZoc0ZNT2ZHU2hWR2RlT2NFZy53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAxMDAtMDI0RixVKzAyNTksVSsxRTAwLTFFRkYsVSsyMDIwLFUrMjBBMC0yMEFCLFUrMjBBRC0yMENGLFUrMjExMyxVKzJDNjAtMkM3RixVK0E3MjAtQTdGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUHJvZHVjdCBTYW5zJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1kaXNwbGF5OnN3YXA7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3MvcHJvZHVjdHNhbnMvdjkvcHhpRHlwUWtvdDFUbkZoc0ZNT2ZHU2hWRjllTy53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAwMDAtMDBGRixVKzAxMzEsVSswMTUyLTAxNTMsVSswMkJCLTAyQkMsVSswMkM2LFUrMDJEQSxVKzAyREMsVSsyMDAwLTIwNkYsVSsyMDc0LFUrMjBBQyxVKzIxMjIsVSsyMTkxLFUrMjE5MyxVKzIyMTIsVSsyMjE1LFUrRkVGRixVK0ZGRkQ7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0dvb2dsZSBTYW5zJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1kaXNwbGF5OnN3YXA7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3MvZ29vZ2xlc2Fucy92MTQvNFVhR3JFTkhzeEpsR0R1R28xT0lsTDNLd3A1TUtnLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDQwMC0wNDVGLFUrMDQ5MC0wNDkxLFUrMDRCMC0wNEIxLFUrMjExNjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonR29vZ2xlIFNhbnMnO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9nb29nbGVzYW5zL3YxNC80VWFHckVOSHN4SmxHRHVHbzFPSWxMM053cDVNS2cud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMzcwLTAzRkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0dvb2dsZSBTYW5zJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1kaXNwbGF5OnN3YXA7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3MvZ29vZ2xlc2Fucy92MTQvNFVhR3JFTkhzeEpsR0R1R28xT0lsTDNCd3A1TUtnLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDEwMi0wMTAzLFUrMDExMC0wMTExLFUrMDEyOC0wMTI5LFUrMDE2OC0wMTY5LFUrMDFBMC0wMUExLFUrMDFBRi0wMUIwLFUrMUVBMC0xRUY5LFUrMjBBQjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonR29vZ2xlIFNhbnMnO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9nb29nbGVzYW5zL3YxNC80VWFHckVOSHN4SmxHRHVHbzFPSWxMM0F3cDVNS2cud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMTAwLTAyNEYsVSswMjU5LFUrMUUwMC0xRUZGLFUrMjAyMCxVKzIwQTAtMjBBQixVKzIwQUQtMjBDRixVKzIxMTMsVSsyQzYwLTJDN0YsVStBNzIwLUE3RkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0dvb2dsZSBTYW5zJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1kaXNwbGF5OnN3YXA7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3MvZ29vZ2xlc2Fucy92MTQvNFVhR3JFTkhzeEpsR0R1R28xT0lsTDNPd3A0LndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDAwMC0wMEZGLFUrMDEzMSxVKzAxNTItMDE1MyxVKzAyQkItMDJCQyxVKzAyQzYsVSswMkRBLFUrMDJEQyxVKzIwMDAtMjA2RixVKzIwNzQsVSsyMEFDLFUrMjEyMixVKzIxOTEsVSsyMTkzLFUrMjIxMixVKzIyMTUsVStGRUZGLFUrRkZGRDt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonR29vZ2xlIFNhbnMnO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjUwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9nb29nbGVzYW5zL3YxNC80VWFickVOSHN4SmxHRHVHbzFPSWxMVTk0WXQzQ3daLVB3LndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDQwMC0wNDVGLFUrMDQ5MC0wNDkxLFUrMDRCMC0wNEIxLFUrMjExNjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonR29vZ2xlIFNhbnMnO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjUwMDtmb250LWRpc3BsYXk6c3dhcDtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9nb29nbGVzYW5zL3YxNC80VWFickVOSHN4SmxHRHVHbzFPSWxMVTk0WXR3Q3daLVB3LndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDM3MC0wM0ZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidHb29nbGUgU2Fucyc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtZGlzcGxheTpzd2FwO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL2dvb2dsZXNhbnMvdjE0LzRVYWJyRU5Ic3hKbEdEdUdvMU9JbExVOTRZdDhDd1otUHcud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMTAyLTAxMDMsVSswMTEwLTAxMTEsVSswMTI4LTAxMjksVSswMTY4LTAxNjksVSswMUEwLTAxQTEsVSswMUFGLTAxQjAsVSsxRUEwLTFFRjksVSsyMEFCO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidHb29nbGUgU2Fucyc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtZGlzcGxheTpzd2FwO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL2dvb2dsZXNhbnMvdjE0LzRVYWJyRU5Ic3hKbEdEdUdvMU9JbExVOTRZdDlDd1otUHcud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMTAwLTAyNEYsVSswMjU5LFUrMUUwMC0xRUZGLFUrMjAyMCxVKzIwQTAtMjBBQixVKzIwQUQtMjBDRixVKzIxMTMsVSsyQzYwLTJDN0YsVStBNzIwLUE3RkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J0dvb2dsZSBTYW5zJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1kaXNwbGF5OnN3YXA7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3MvZ29vZ2xlc2Fucy92MTQvNFVhYnJFTkhzeEpsR0R1R28xT0lsTFU5NFl0ekN3WS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAwMDAtMDBGRixVKzAxMzEsVSswMTUyLTAxNTMsVSswMkJCLTAyQkMsVSswMkM2LFUrMDJEQSxVKzAyREMsVSsyMDAwLTIwNkYsVSsyMDc0LFUrMjBBQyxVKzIxMjIsVSsyMTkxLFUrMjE5MyxVKzIyMTIsVSsyMjE1LFUrRkVGRixVK0ZGRkQ7fTwvc3R5bGU+PHNjcmlwdCBub25jZT0iU2hMSFBKYlFIUDRldXF0YVdjcHJQUSI+KGZ1bmN0aW9uKCl7LyoKCiBDb3B5cmlnaHQgVGhlIENsb3N1cmUgTGlicmFyeSBBdXRob3JzLgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KJ3VzZSBzdHJpY3QnO3ZhciBkPXRoaXN8fHNlbGY7LyoKCiBDb3B5cmlnaHQgMjAxMSBHb29nbGUgTExDLgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KLyoKCiBDb3B5cmlnaHQgMjAxMyBHb29nbGUgTExDLgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KdmFyIGY9e307ZnVuY3Rpb24gYWEoYSxiKXtpZihudWxsPT09YilyZXR1cm4hMTtpZigiY29udGFpbnMiaW4gYSYmMT09Yi5ub2RlVHlwZSlyZXR1cm4gYS5jb250YWlucyhiKTtpZigiY29tcGFyZURvY3VtZW50UG9zaXRpb24iaW4gYSlyZXR1cm4gYT09Ynx8ISEoYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihiKSYxNik7Zm9yKDtiJiZhIT1iOyliPWIucGFyZW50Tm9kZTtyZXR1cm4gYj09YX07ZnVuY3Rpb24gYmEoYSxiKXtyZXR1cm4gZnVuY3Rpb24oZSl7ZXx8KGU9d2luZG93LmV2ZW50KTtyZXR1cm4gYi5jYWxsKGEsZSl9fWZ1bmN0aW9uIHUoYSl7YT1hLnRhcmdldHx8YS5zcmNFbGVtZW50OyFhLmdldEF0dHJpYnV0ZSYmYS5wYXJlbnROb2RlJiYoYT1hLnBhcmVudE5vZGUpO3JldHVybiBhfXZhciB4PSJ1bmRlZmluZWQiIT10eXBlb2YgbmF2aWdhdG9yJiYvTWFjaW50b3NoLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGNhPSJ1bmRlZmluZWQiIT10eXBlb2YgbmF2aWdhdG9yJiYhL09wZXJhLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpJiYvV2ViS2l0Ly50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGRhPXtBOjEsSU5QVVQ6MSxURVhUQVJFQToxLFNFTEVDVDoxLEJVVFRPTjoxfTsKZnVuY3Rpb24gZWEoYSl7cmV0dXJuKGE9YS5jaGFuZ2VkVG91Y2hlcyYmYS5jaGFuZ2VkVG91Y2hlc1swXXx8YS50b3VjaGVzJiZhLnRvdWNoZXNbMF0pP3tjbGllbnRYOmEuY2xpZW50WCxjbGllbnRZOmEuY2xpZW50WSxzY3JlZW5YOmEuc2NyZWVuWCxzY3JlZW5ZOmEuc2NyZWVuWX06bnVsbH0KZnVuY3Rpb24gZmEoYSl7dmFyIGI9e307Yi5vcmlnaW5hbEV2ZW50VHlwZT1hLnR5cGU7Yi50eXBlPSJjbGljayI7Zm9yKHZhciBlIGluIGEpe3ZhciBjPWFbZV07InR5cGUiIT1lJiYic3JjRWxlbWVudCIhPWUmJiJmdW5jdGlvbiIhPT10eXBlb2YgYyYmKGJbZV09Yyl9Yi50aW1lU3RhbXA9RGF0ZS5ub3coKTtiLmRlZmF1bHRQcmV2ZW50ZWQ9ITE7Yi5wcmV2ZW50RGVmYXVsdD1oYTtiLl9wcm9wYWdhdGlvblN0b3BwZWQ9ITE7Yi5zdG9wUHJvcGFnYXRpb249aWE7aWYoYT1lYShhKSliLmNsaWVudFg9YS5jbGllbnRYLGIuY2xpZW50WT1hLmNsaWVudFksYi5zY3JlZW5YPWEuc2NyZWVuWCxiLnNjcmVlblk9YS5zY3JlZW5ZO3JldHVybiBifWZ1bmN0aW9uIGxhKCl7dGhpcy5fbW91c2VFdmVudHNQcmV2ZW50ZWQ9ITB9ZnVuY3Rpb24gaGEoKXt0aGlzLmRlZmF1bHRQcmV2ZW50ZWQ9ITB9ZnVuY3Rpb24gaWEoKXt0aGlzLl9wcm9wYWdhdGlvblN0b3BwZWQ9ITB9CnZhciBtYT17QToxMyxCVVRUT046MCxDSEVDS0JPWDozMixDT01CT0JPWDoxMyxGSUxFOjAsR1JJRENFTEw6MTMsTElOSzoxMyxMSVNUQk9YOjEzLE1FTlU6MCxNRU5VQkFSOjAsTUVOVUlURU06MCxNRU5VSVRFTUNIRUNLQk9YOjAsTUVOVUlURU1SQURJTzowLE9QVElPTjowLFJBRElPOjMyLFJBRElPR1JPVVA6MzIsUkVTRVQ6MCxTVUJNSVQ6MCxTV0lUQ0g6MzIsVEFCOjAsVFJFRToxMyxUUkVFSVRFTToxM30sbmE9e0NIRUNLQk9YOiEwLEZJTEU6ITAsT1BUSU9OOiEwLFJBRElPOiEwfSxvYT17Q09MT1I6ITAsREFURTohMCxEQVRFVElNRTohMCwiREFURVRJTUUtTE9DQUwiOiEwLEVNQUlMOiEwLE1PTlRIOiEwLE5VTUJFUjohMCxQQVNTV09SRDohMCxSQU5HRTohMCxTRUFSQ0g6ITAsVEVMOiEwLFRFWFQ6ITAsVEVYVEFSRUE6ITAsVElNRTohMCxVUkw6ITAsV0VFSzohMH0scGE9e0E6ITAsQVJFQTohMCxCVVRUT046ITAsRElBTE9HOiEwLElNRzohMCxJTlBVVDohMCxMSU5LOiEwLApNRU5VOiEwLE9QVEdST1VQOiEwLE9QVElPTjohMCxQUk9HUkVTUzohMCxTRUxFQ1Q6ITAsVEVYVEFSRUE6ITB9Oy8qCgogQ29weXJpZ2h0IDIwMjAgR29vZ2xlIExMQy4KIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wCiovCi8qCgogQ29weXJpZ2h0IDIwMDUgR29vZ2xlIExMQy4KIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wCiovCmZ1bmN0aW9uIHFhKCl7dGhpcy5zPVtdO3RoaXMuZz1bXTt0aGlzLmw9W107dGhpcy5vPXt9O3RoaXMuaD1udWxsO3RoaXMubT1bXX12YXIgeixyYSxzYT0idW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvciYmL2lQaG9uZXxpUGFkfGlQb2QvLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCksdGE9U3RyaW5nLnByb3RvdHlwZS50cmltP2Z1bmN0aW9uKGEpe3JldHVybiBhLnRyaW0oKX06ZnVuY3Rpb24oYSl7cmV0dXJuIGEucmVwbGFjZSgvXlxzKy8sIiIpLnJlcGxhY2UoL1xzKyQvLCIiKX0sdWE9L1xzKjtccyovLEE9bnVsbDsKZnVuY3Rpb24gdmEoYSxiKXtyZXR1cm4gZnVuY3Rpb24gdihjLGgpe2g9dm9pZCAwPT09aD8hMDpoO3ZhciBuPWI7aWYoImNsaWNrIj09biYmKHgmJmMubWV0YUtleXx8IXgmJmMuY3RybEtleXx8Mj09Yy53aGljaHx8bnVsbD09Yy53aGljaCYmND09Yy5idXR0b258fGMuc2hpZnRLZXkpKW49ImNsaWNrbW9kIjtlbHNle3ZhciBsPWMud2hpY2h8fGMua2V5Q29kZTtjYSYmMz09bCYmKGw9MTMpO2lmKDEzIT1sJiYzMiE9bClsPSExO2Vsc2V7dmFyIGc9dShjKSxtOyhtPSJrZXlkb3duIiE9Yy50eXBlfHwhISghKCJnZXRBdHRyaWJ1dGUiaW4gZyl8fChnLmdldEF0dHJpYnV0ZSgidHlwZSIpfHxnLnRhZ05hbWUpLnRvVXBwZXJDYXNlKClpbiBvYXx8IkJVVFRPTiI9PWcudGFnTmFtZS50b1VwcGVyQ2FzZSgpfHxnLnR5cGUmJiJGSUxFIj09Zy50eXBlLnRvVXBwZXJDYXNlKCl8fGcuaXNDb250ZW50RWRpdGFibGUpfHxjLmN0cmxLZXl8fGMuc2hpZnRLZXl8fGMuYWx0S2V5fHxjLm1ldGFLZXl8fAooZy5nZXRBdHRyaWJ1dGUoInR5cGUiKXx8Zy50YWdOYW1lKS50b1VwcGVyQ2FzZSgpaW4gbmEmJjMyPT1sKXx8KChtPWcudGFnTmFtZSBpbiBkYSl8fChtPWcuZ2V0QXR0cmlidXRlTm9kZSgidGFiaW5kZXgiKSxtPW51bGwhPW0mJm0uc3BlY2lmaWVkKSxtPSEobSYmIWcuZGlzYWJsZWQpKTtpZihtKWw9ITE7ZWxzZXttPShnLmdldEF0dHJpYnV0ZSgicm9sZSIpfHxnLnR5cGV8fGcudGFnTmFtZSkudG9VcHBlckNhc2UoKTt2YXIgcj0hKG0gaW4gbWEpJiYxMz09bDtnPSJJTlBVVCIhPWcudGFnTmFtZS50b1VwcGVyQ2FzZSgpfHwhIWcudHlwZTtsPSgwPT1tYVttXSVsfHxyKSYmZ319bCYmKG49ImNsaWNra2V5Iil9Zz1jLnNyY0VsZW1lbnR8fGMudGFyZ2V0O2w9QihuLGMsZywiIixudWxsKTtmb3IobT1nO20mJm0hPXRoaXM7bT1tLl9fb3duZXJ8fG0ucGFyZW50Tm9kZSl7dmFyIGs9bTtiOnt2YXIgcT12b2lkIDA7dmFyIHQ9aztyPW47dmFyIGphPWM7dmFyIHA9dC5fX2pzYWN0aW9uOwppZighcCl7dmFyIHk7cD1udWxsOyJnZXRBdHRyaWJ1dGUiaW4gdCYmKHA9dC5nZXRBdHRyaWJ1dGUoImpzYWN0aW9uIikpO2lmKHk9cCl7cD1mW3ldO2lmKCFwKXtwPXt9O2Zvcih2YXIgSj15LnNwbGl0KHVhKSxFYT1KP0oubGVuZ3RoOjAsSz0wO0s8RWE7SysrKXt2YXIgQz1KW0tdO2lmKEMpe3ZhciBMPUMuaW5kZXhPZigiOiIpLGthPS0xIT1MO3Bba2E/dGEoQy5zdWJzdHIoMCxMKSk6ImNsaWNrIl09a2E/dGEoQy5zdWJzdHIoTCsxKSk6Q319Zlt5XT1wfXQuX19qc2FjdGlvbj1wfWVsc2UgcD13YSx0Ll9fanNhY3Rpb249cH0ibWF5YmVfY2xpY2siPT1yJiZwLmNsaWNrPyhxPXIscj0iY2xpY2siKToiY2xpY2trZXkiPT1yP3I9ImNsaWNrIjoiY2xpY2siIT1yfHxwLmNsaWNrfHwocj0iY2xpY2tvbmx5Iik7eT1udWxsO2lmKHAuY2xpY2spe3Q9eGEodCxqYSxwKTtpZighdCl7cT17aTpyLGFjdGlvbjoiIixldmVudDpudWxsLHU6ITB9O2JyZWFrIGJ9dCE9amEmJih5PXQscj10LnR5cGUpfXE9CntpOnE/cTpyLGFjdGlvbjpwW3JdfHwiIixldmVudDp5LHU6ITF9fWlmKHEudXx8cS5hY3Rpb24pYnJlYWt9cSYmKGw9QihxLmkscS5ldmVudHx8YyxnLHEuYWN0aW9ufHwiIixrLGwudGltZVN0YW1wKSk7bCYmInRvdWNoZW5kIj09bC5ldmVudFR5cGUmJihsLmV2ZW50Ll9wcmV2ZW50TW91c2VFdmVudHM9bGEpO2lmKHEmJnEuYWN0aW9uKXtpZihnPSJjbGlja2tleSI9PW4pZz11KGMpLGc9KGcudHlwZXx8Zy50YWdOYW1lKS50b1VwcGVyQ2FzZSgpLChnPTMyPT0oYy53aGljaHx8Yy5rZXlDb2RlKSYmIkNIRUNLQk9YIiE9Zyl8fChnPXUoYyksbT1nLnRhZ05hbWUudG9VcHBlckNhc2UoKSxxPShnLmdldEF0dHJpYnV0ZSgicm9sZSIpfHwiIikudG9VcHBlckNhc2UoKSxnPSJCVVRUT04iPT09bXx8IkJVVFRPTiI9PT1xPyEwOiEoZy50YWdOYW1lLnRvVXBwZXJDYXNlKClpbiBwYSl8fCJBIj09PW18fCJTRUxFQ1QiPT09bXx8KGcuZ2V0QXR0cmlidXRlKCJ0eXBlIil8fGcudGFnTmFtZSkudG9VcHBlckNhc2UoKWluCm5hfHwoZy5nZXRBdHRyaWJ1dGUoInR5cGUiKXx8Zy50YWdOYW1lKS50b1VwcGVyQ2FzZSgpaW4gb2E/ITE6ITApO2cmJihjLnByZXZlbnREZWZhdWx0P2MucHJldmVudERlZmF1bHQoKTpjLnJldHVyblZhbHVlPSExKTtpZigibW91c2VlbnRlciI9PW58fCJtb3VzZWxlYXZlIj09bilpZihnPWMucmVsYXRlZFRhcmdldCwhKCJtb3VzZW92ZXIiPT1jLnR5cGUmJiJtb3VzZWVudGVyIj09bnx8Im1vdXNlb3V0Ij09Yy50eXBlJiYibW91c2VsZWF2ZSI9PW4pfHxnJiYoZz09PWt8fGFhKGssZykpKWwuYWN0aW9uPSIiLGwuYWN0aW9uRWxlbWVudD1udWxsO2Vsc2V7bj17fTtmb3IodmFyIHcgaW4gYykiZnVuY3Rpb24iIT09dHlwZW9mIGNbd10mJiJzcmNFbGVtZW50IiE9PXcmJiJ0YXJnZXQiIT09dyYmKG5bd109Y1t3XSk7bi50eXBlPSJtb3VzZW92ZXIiPT1jLnR5cGU/Im1vdXNlZW50ZXIiOiJtb3VzZWxlYXZlIjtuLnRhcmdldD1uLnNyY0VsZW1lbnQ9aztuLmJ1YmJsZXM9ITE7bC5ldmVudD0KbjtsLnRhcmdldEVsZW1lbnQ9a319ZWxzZSBsLmFjdGlvbj0iIixsLmFjdGlvbkVsZW1lbnQ9bnVsbDtrPWw7YS5oJiYhay5ldmVudC5hMTF5c2dkJiYodz1CKGsuZXZlbnRUeXBlLGsuZXZlbnQsay50YXJnZXRFbGVtZW50LGsuYWN0aW9uLGsuYWN0aW9uRWxlbWVudCxrLnRpbWVTdGFtcCksImNsaWNrb25seSI9PXcuZXZlbnRUeXBlJiYody5ldmVudFR5cGU9ImNsaWNrIiksYS5oKHcsITApKTtpZihrLmFjdGlvbkVsZW1lbnQpe2lmKGEuaCl7aWYoIWsuYWN0aW9uRWxlbWVudHx8IkEiIT1rLmFjdGlvbkVsZW1lbnQudGFnTmFtZXx8ImNsaWNrIiE9ay5ldmVudFR5cGUmJiJjbGlja21vZCIhPWsuZXZlbnRUeXBlfHwoYy5wcmV2ZW50RGVmYXVsdD9jLnByZXZlbnREZWZhdWx0KCk6Yy5yZXR1cm5WYWx1ZT0hMSksKGM9YS5oKGspKSYmaCl7di5jYWxsKHRoaXMsYywhMSk7cmV0dXJufX1lbHNle2lmKChoPWQuZG9jdW1lbnQpJiYhaC5jcmVhdGVFdmVudCYmaC5jcmVhdGVFdmVudE9iamVjdCl0cnl7dmFyIE09CmguY3JlYXRlRXZlbnRPYmplY3QoYyl9Y2F0Y2goS2Epe009Y31lbHNlIE09YztrLmV2ZW50PU07YS5tLnB1c2goayl9InRvdWNoZW5kIj09ay5ldmVudC50eXBlJiZrLmV2ZW50Ll9tb3VzZUV2ZW50c1ByZXZlbnRlZCYmKEE9ZmEoay5ldmVudCkpfX19ZnVuY3Rpb24gQihhLGIsZSxjLGgsdil7cmV0dXJue2V2ZW50VHlwZTphLGV2ZW50OmIsdGFyZ2V0RWxlbWVudDplLGFjdGlvbjpjLGFjdGlvbkVsZW1lbnQ6aCx0aW1lU3RhbXA6dnx8RGF0ZS5ub3coKX19dmFyIHdhPXt9OwpmdW5jdGlvbiB4YShhLGIsZSl7aWYoImNsaWNrIj09Yi50eXBlfHxiLnRhcmdldFRvdWNoZXMmJjE8Yi50YXJnZXRUb3VjaGVzLmxlbmd0aClyZXR1cm4gYjt2YXIgYz16LGg9Yi50YXJnZXQ7aWYoaCYmeWEoaCkpcmV0dXJuIGI7aD1lYShiKTtpZigidG91Y2hzdGFydCIhPWIudHlwZXx8ZS50b3VjaHN0YXJ0fHxlLnRvdWNoZW5kKWlmKCJ0b3VjaGVuZCI9PWIudHlwZSYmYyYmYy5ub2RlPT1hKWlmKGIuZGVmYXVsdFByZXZlbnRlZHx8aCYmNDxNYXRoLmFicyhoLmNsaWVudFgtYy54KStNYXRoLmFicyhoLmNsaWVudFktYy55KSl6PW51bGw7ZWxzZXtBPWE9ZmEoYik7Yi5zdG9wUHJvcGFnYXRpb24oKTtiLnByZXZlbnREZWZhdWx0KCk7ZG9jdW1lbnQuY3JlYXRlRXZlbnQ/KGI9ZG9jdW1lbnQuY3JlYXRlRXZlbnQoIk1vdXNlRXZlbnQiKSxiLmluaXRNb3VzZUV2ZW50KGEudHlwZSwhMCwhMCx3aW5kb3csYS5kZXRhaWx8fDEsYS5zY3JlZW5YfHwwLGEuc2NyZWVuWXx8MCxhLmNsaWVudFh8fAowLGEuY2xpZW50WXx8MCxhLmN0cmxLZXl8fCExLGEuYWx0S2V5fHwhMSxhLnNoaWZ0S2V5fHwhMSxhLm1ldGFLZXl8fCExLGEuYnV0dG9ufHwwLGEucmVsYXRlZFRhcmdldHx8bnVsbCkpOihiPWRvY3VtZW50LmNyZWF0ZUV2ZW50T2JqZWN0KCksYi50eXBlPWEudHlwZSxiLmNsaWVudFg9YS5jbGllbnRYLGIuY2xpZW50WT1hLmNsaWVudFksYi5idXR0b249YS5idXR0b24sYi5kZXRhaWw9YS5kZXRhaWwsYi5jdHJsS2V5PWEuY3RybEtleSxiLmFsdEtleT1hLmFsdEtleSxiLnNoaWZ0S2V5PWEuc2hpZnRLZXksYi5tZXRhS2V5PWEubWV0YUtleSk7Yi52PWEudGltZVN0YW1wO2IuX2Zhc3RjbGljaz0hMDthOntmb3IoZT1hLnRhcmdldDtlJiZlLmdldEF0dHJpYnV0ZTspe2M9ZS50YWdOYW1lfHwiIjtpZigiQSI9PWN8fCJJTlBVVCI9PWN8fCJURVhUQVJFQSI9PWN8fCJTRUxFQ1QiPT1jfHwiQlVUVE9OIj09Y3x8ZS5nZXRBdHRyaWJ1dGUoInRhYkluZGV4IikpYnJlYWsgYTtlPWUucGFyZW50Tm9kZX1lPQpudWxsfWU/ZS5mb2N1cygpOmRvY3VtZW50LmFjdGl2ZUVsZW1lbnQmJmRvY3VtZW50LmFjdGl2ZUVsZW1lbnQuYmx1cigpO2EudGFyZ2V0LmRpc3BhdGNoRXZlbnQoYik7aWYoIWIuZGVmYXVsdFByZXZlbnRlZCl7aWYoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCYmZG9jdW1lbnQuYWN0aXZlRWxlbWVudCE9Yi50YXJnZXQmJmRvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPWUmJnlhKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpKXRyeXtkb2N1bWVudC5hY3RpdmVFbGVtZW50LmJsdXIoKX1jYXRjaCh2KXt9dHJ5e3dpbmRvdy5nZXRTZWxlY3Rpb24oKS5yZW1vdmVBbGxSYW5nZXMoKX1jYXRjaCh2KXt9fXJldHVybiBudWxsfWVsc2UidG91Y2htb3ZlIj09Yi50eXBlJiZjJiZoJiY0PE1hdGguYWJzKGguY2xpZW50WC1jLngpK01hdGguYWJzKGguY2xpZW50WS1jLnkpJiYoej1udWxsKTtlbHNlIHJldHVybiB6PXtub2RlOmEseDpoP2guY2xpZW50WDowLHk6aD9oLmNsaWVudFk6MH0sQT1udWxsLGNsZWFyVGltZW91dChyYSksCnJhPXNldFRpbWVvdXQoemEsNDAwKSxudWxsO3JldHVybiBifWZ1bmN0aW9uIHlhKGEpe3ZhciBiPWEudGFnTmFtZXx8IiI7cmV0dXJuIlRFWFRBUkVBIj09Ynx8IklOUFVUIj09Ynx8IlNFTEVDVCI9PWJ8fCJPUFRJT04iPT1ifHxhLmlzQ29udGVudEVkaXRhYmxlfWZ1bmN0aW9uIHphKCl7ej1udWxsfWZ1bmN0aW9uIEQoYSl7aWYoIWEuX2Zhc3RjbGljayl7dmFyIGI9QTtpZihiKWlmKDgwMDxEYXRlLm5vdygpLWIudGltZVN0YW1wKUE9bnVsbDtlbHNle3ZhciBlPTQ+PU1hdGguYWJzKGEuY2xpZW50WC1iLmNsaWVudFgpK01hdGguYWJzKGEuY2xpZW50WS1iLmNsaWVudFkpO2IudGFyZ2V0PT1hLnRhcmdldHx8ZT8oYS5zdG9wUHJvcGFnYXRpb24oKSxhLnByZXZlbnREZWZhdWx0KCksImNsaWNrIj09YS50eXBlJiYoQT1udWxsKSk6QT1udWxsfX19CmZ1bmN0aW9uIEFhKGEsYil7cmV0dXJuIGZ1bmN0aW9uKGUpe3ZhciBjPWEsaD1iLHY9ITE7Im1vdXNlZW50ZXIiPT1jP2M9Im1vdXNlb3ZlciI6Im1vdXNlbGVhdmUiPT1jJiYoYz0ibW91c2VvdXQiKTtpZihlLmFkZEV2ZW50TGlzdGVuZXIpe2lmKCJmb2N1cyI9PWN8fCJibHVyIj09Y3x8ImVycm9yIj09Y3x8ImxvYWQiPT1jKXY9ITA7ZS5hZGRFdmVudExpc3RlbmVyKGMsaCx2KX1lbHNlIGUuYXR0YWNoRXZlbnQmJigiZm9jdXMiPT1jP2M9ImZvY3VzaW4iOiJibHVyIj09YyYmKGM9ImZvY3Vzb3V0IiksaD1iYShlLGgpLGUuYXR0YWNoRXZlbnQoIm9uIitjLGgpKTtyZXR1cm57aTpjLGo6aCxjYXB0dXJlOnZ9fX0KZnVuY3Rpb24gRShhLGIsZSl7aWYoIWEuby5oYXNPd25Qcm9wZXJ0eShiKSl7dmFyIGM9dmEoYSxiKTtlPUFhKGV8fGIsYyk7YS5vW2JdPWM7YS5zLnB1c2goZSk7Zm9yKGM9MDtjPGEuZy5sZW5ndGg7KytjKXt2YXIgaD1hLmdbY107aC5oLnB1c2goZS5jYWxsKG51bGwsaC5nKSl9ImNsaWNrIj09YiYmRShhLCJrZXlkb3duIik7ImNsaWNrIj09YiYmKEUoYSwidG91Y2hzdGFydCIpLEUoYSwidG91Y2hlbmQiKSxFKGEsInRvdWNobW92ZSIpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXImJihkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsRCwhMCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsRCwhMCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixELCEwKSkpfX1xYS5wcm90b3R5cGUuaj1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5vW2FdfTsKZnVuY3Rpb24gQmEoYSl7dmFyIGI9RixlPWEuZztzYSYmKGUuc3R5bGUuY3Vyc29yPSJwb2ludGVyIik7Zm9yKGU9MDtlPGIucy5sZW5ndGg7KytlKWEuaC5wdXNoKGIuc1tlXS5jYWxsKG51bGwsYS5nKSl9ZnVuY3Rpb24gQ2EoYSl7Zm9yKHZhciBiPURhLGU9MDtlPGIubGVuZ3RoOysrZSlpZihiW2VdLmchPWEuZyYmRmEoYltlXS5nLGEuZykpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gRmEoYSxiKXtmb3IoO2EhPWImJmIucGFyZW50Tm9kZTspYj1iLnBhcmVudE5vZGU7cmV0dXJuIGE9PWJ9O3ZhciBHPXdpbmRvdyxGPW5ldyBxYTt2YXIgR2E9Ry5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsSD1uZXcgZnVuY3Rpb24oYSl7dGhpcy5nPWE7dGhpcy5oPVtdfShHYSksSTtiOntmb3IodmFyIE49MDtOPEYuZy5sZW5ndGg7TisrKWlmKEZhKEYuZ1tOXS5nLEdhKSl7ST0hMDticmVhayBifUk9ITF9CmlmKEkpRi5sLnB1c2goSCk7ZWxzZXtCYShIKTtGLmcucHVzaChIKTtmb3IodmFyIERhPUYubC5jb25jYXQoRi5nKSxPPVtdLFA9W10sUT0wO1E8Ri5nLmxlbmd0aDsrK1Epe3ZhciBSPUYuZ1tRXTtpZihDYShSKSl7Ty5wdXNoKFIpO2Zvcih2YXIgUz0wO1M8Ui5oLmxlbmd0aDsrK1Mpe3ZhciBUPVIuZyxVPVIuaFtTXTtULnJlbW92ZUV2ZW50TGlzdGVuZXI/VC5yZW1vdmVFdmVudExpc3RlbmVyKFUuaSxVLmosVS5jYXB0dXJlKTpULmRldGFjaEV2ZW50JiZULmRldGFjaEV2ZW50KCJvbiIrVS5pLFUuail9Ui5oPVtdfWVsc2UgUC5wdXNoKFIpfWZvcih2YXIgVj0wO1Y8Ri5sLmxlbmd0aDsrK1Ype3ZhciBXPUYubFtWXTtDYShXKT9PLnB1c2goVyk6KFAucHVzaChXKSxCYShXKSl9Ri5nPVA7Ri5sPU99RShGLCJjbGljayIpO0UoRiwiZGJsY2xpY2siKTtFKEYsImZvY3VzIik7RShGLCJmb2N1c2luIik7RShGLCJibHVyIik7RShGLCJlcnJvciIpO0UoRiwiZm9jdXNvdXQiKTtFKEYsImtleWRvd24iKTsKRShGLCJrZXl1cCIpO0UoRiwia2V5cHJlc3MiKTtFKEYsImxvYWQiKTtFKEYsIm1vdXNlb3ZlciIpO0UoRiwibW91c2VvdXQiKTtFKEYsIm1vdXNlZW50ZXIiKTtFKEYsIm1vdXNlbGVhdmUiKTtFKEYsInN1Ym1pdCIpO0UoRiwidG91Y2hzdGFydCIpO0UoRiwidG91Y2hlbmQiKTtFKEYsInRvdWNobW92ZSIpO0UoRiwiYXV4Y2xpY2siKTtFKEYsImNoYW5nZSIpO0UoRiwiY29tcG9zaXRpb25zdGFydCIpO0UoRiwiY29tcG9zaXRpb251cGRhdGUiKTtFKEYsImNvbXBvc2l0aW9uZW5kIik7RShGLCJpbnB1dCIpO0UoRiwidGV4dGlucHV0Iik7RShGLCJjb3B5Iik7RShGLCJjdXQiKTtFKEYsInBhc3RlIik7RShGLCJtb3VzZWRvd24iKTtFKEYsIm1vdXNldXAiKTtFKEYsIndoZWVsIik7RShGLCJjb250ZXh0bWVudSIpO0UoRiwiZHJhZ292ZXIiKTtFKEYsImRyYWdlbnRlciIpO0UoRiwiZHJhZ2xlYXZlIik7RShGLCJkcm9wIik7RShGLCJkcmFnc3RhcnQiKTtFKEYsImRyYWdlbmQiKTsKRShGLCJwb2ludGVyZG93biIpO0UoRiwicG9pbnRlcnVwIik7RShGLCJlbmRlZCIpO0UoRiwibG9hZGVkbWV0YWRhdGEiKTt2YXIgSGEsSWE7Im9ud2Via2l0YW5pbWF0aW9uZW5kImluIEcmJihIYT0id2Via2l0QW5pbWF0aW9uRW5kIik7RShGLCJhbmltYXRpb25lbmQiLEhhKTsib253ZWJraXR0cmFuc2l0aW9uZW5kImluIEcmJihJYT0id2Via2l0VHJhbnNpdGlvbkVuZCIpO0UoRiwidHJhbnNpdGlvbmVuZCIsSWEpOwp2YXIgSmE9ZnVuY3Rpb24oYSl7cmV0dXJue3RyaWdnZXI6ZnVuY3Rpb24oYil7dmFyIGU9YS5qKGIudHlwZSk7ZXx8KEUoYSxiLnR5cGUpLGU9YS5qKGIudHlwZSkpO3ZhciBjPWIudGFyZ2V0fHxiLnNyY0VsZW1lbnQ7ZSYmZS5jYWxsKGMub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsYil9LGJpbmQ6ZnVuY3Rpb24oYil7YS5oPWI7YS5tJiYoMDxhLm0ubGVuZ3RoJiZiKGEubSksYS5tPW51bGwpfX19KEYpLFg9WyJCT1Ffd2l6YmluZCJdLFk9d2luZG93fHxkO1hbMF1pbiBZfHwidW5kZWZpbmVkIj09dHlwZW9mIFkuZXhlY1NjcmlwdHx8WS5leGVjU2NyaXB0KCJ2YXIgIitYWzBdKTtmb3IodmFyIFo7WC5sZW5ndGgmJihaPVguc2hpZnQoKSk7KVgubGVuZ3RofHx2b2lkIDA9PT1KYT9ZW1pdJiZZW1pdIT09T2JqZWN0LnByb3RvdHlwZVtaXT9ZPVlbWl06WT1ZW1pdPXt9OllbWl09SmE7fSkuY2FsbCh0aGlzKTsKPC9zY3JpcHQ+PHNjcmlwdCBub0NvbGxlY3QgaHJlZj0iaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vXy9tc3MvYm9xLWlkZW50aXR5L18vanMvaz1ib3EtaWRlbnRpdHkuQ29uc2VudFVpLmVuLkxUSUdOeTYxZmc0LmVzNS5PL2FtPUZ3QkEvZD0xL2V4Y209X2IsX3RwLG1haW52aWV3L2VkPTEvZGc9MC93dD0yL2N0PXpnbXMvcnM9QU9hRW1sSHpRLV9TU1VjUVlEeE5QakJpSVJXV3hYLUNNdy9tPV9iLF90cCIgaWQ9ImJhc2UtanMiIG5vbmNlPSJTaExIUEpiUUhQNGV1cXRhV2NwclBRIj4idXNlIHN0cmljdCI7dGhpcy5kZWZhdWx0X0NvbnNlbnRVaT10aGlzLmRlZmF1bHRfQ29uc2VudFVpfHx7fTsoZnVuY3Rpb24oXyl7dmFyIHdpbmRvdz10aGlzOwp0cnl7CnZhciBqYSxFYSxaYSxiYixjYixmYixnYixpYixsYixtYixxYixzYix6YixEYixIYixkYyxQYixoYyxtYyxwYyx0YyxCYyxiYSxDYyxEYyxFYyxHYyxIYyxLYyxMYztfLmNhPWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBiYVthXS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fTtfLmRhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGJhW2FdPWJ9O18uZmE9ZnVuY3Rpb24oYSl7Xy5uLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyBhO30sMCl9O18uaGE9ZnVuY3Rpb24oYSl7YSYmImZ1bmN0aW9uIj09dHlwZW9mIGEuVGImJmEuVGIoKX07amE9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTAsYz1hcmd1bWVudHMubGVuZ3RoO2I8YzsrK2Ipe3ZhciBkPWFyZ3VtZW50c1tiXTtfLmlhKGQpP2phLmFwcGx5KG51bGwsZCk6Xy5oYShkKX19OwpfLmthPWZ1bmN0aW9uKGEpe2lmKEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKUVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsXy5rYSk7ZWxzZXt2YXIgYj1FcnJvcigpLnN0YWNrO2ImJih0aGlzLnN0YWNrPWIpfWEmJih0aGlzLm1lc3NhZ2U9U3RyaW5nKGEpKTt0aGlzLmc9ITB9O18ubGE9ZnVuY3Rpb24oYSl7cmV0dXJuIGFbYS5sZW5ndGgtMV19O18ubWE9ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD0ic3RyaW5nIj09PXR5cGVvZiBhP2Euc3BsaXQoIiIpOmEsZT1hLmxlbmd0aC0xOzA8PWU7LS1lKWUgaW4gZCYmYi5jYWxsKGMsZFtlXSxlLGEpfTtfLm9hPWZ1bmN0aW9uKGEsYixjKXtiPV8ubmEoYSxiLGMpO3JldHVybiAwPmI/bnVsbDoic3RyaW5nIj09PXR5cGVvZiBhP2EuY2hhckF0KGIpOmFbYl19OwpfLm5hPWZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9YS5sZW5ndGgsZT0ic3RyaW5nIj09PXR5cGVvZiBhP2Euc3BsaXQoIiIpOmEsZj0wO2Y8ZDtmKyspaWYoZiBpbiBlJiZiLmNhbGwoYyxlW2ZdLGYsYSkpcmV0dXJuIGY7cmV0dXJuLTF9O18ucGE9ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD0ic3RyaW5nIj09PXR5cGVvZiBhP2Euc3BsaXQoIiIpOmEsZT1hLmxlbmd0aC0xOzA8PWU7ZS0tKWlmKGUgaW4gZCYmYi5jYWxsKGMsZFtlXSxlLGEpKXJldHVybiBlO3JldHVybi0xfTtfLnJhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIDA8PSgwLF8ucWEpKGEsYil9O18uc2E9ZnVuY3Rpb24oYSl7aWYoIUFycmF5LmlzQXJyYXkoYSkpZm9yKHZhciBiPWEubGVuZ3RoLTE7MDw9YjtiLS0pZGVsZXRlIGFbYl07YS5sZW5ndGg9MH07Xy50YT1mdW5jdGlvbihhLGIpe18ucmEoYSxiKXx8YS5wdXNoKGIpfTsKXy52YT1mdW5jdGlvbihhLGIpe2I9KDAsXy5xYSkoYSxiKTt2YXIgYzsoYz0wPD1iKSYmXy51YShhLGIpO3JldHVybiBjfTtfLnVhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIDE9PUFycmF5LnByb3RvdHlwZS5zcGxpY2UuY2FsbChhLGIsMSkubGVuZ3RofTtfLndhPWZ1bmN0aW9uKGEpe3JldHVybiBBcnJheS5wcm90b3R5cGUuY29uY2F0LmFwcGx5KFtdLGFyZ3VtZW50cyl9O18ueGE9ZnVuY3Rpb24oYSl7dmFyIGI9YS5sZW5ndGg7aWYoMDxiKXtmb3IodmFyIGM9QXJyYXkoYiksZD0wO2Q8YjtkKyspY1tkXT1hW2RdO3JldHVybiBjfXJldHVybltdfTtfLnlhPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTE7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dmFyIGQ9YXJndW1lbnRzW2NdO2lmKF8uaWEoZCkpe3ZhciBlPWEubGVuZ3RofHwwLGY9ZC5sZW5ndGh8fDA7YS5sZW5ndGg9ZStmO2Zvcih2YXIgZz0wO2c8ZjtnKyspYVtlK2ddPWRbZ119ZWxzZSBhLnB1c2goZCl9fTsKXy5BYT1mdW5jdGlvbihhLGIsYyxkKXtBcnJheS5wcm90b3R5cGUuc3BsaWNlLmFwcGx5KGEsXy56YShhcmd1bWVudHMsMSkpfTtfLnphPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gMj49YXJndW1lbnRzLmxlbmd0aD9BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhLGIpOkFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGEsYixjKX07Xy5EYT1mdW5jdGlvbihhLGIpe2I9Ynx8YTtmb3IodmFyIGM9MCxkPTAsZT17fTtkPGEubGVuZ3RoOyl7dmFyIGY9YVtkKytdLGc9Xy5CYShmKT8ibyIrXy5DYShmKToodHlwZW9mIGYpLmNoYXJBdCgwKStmO09iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLGcpfHwoZVtnXT0hMCxiW2MrK109Zil9Yi5sZW5ndGg9Y307Cl8uRmE9ZnVuY3Rpb24oYSxiLGMpe2lmKCFfLmlhKGEpfHwhXy5pYShiKXx8YS5sZW5ndGghPWIubGVuZ3RoKXJldHVybiExO3ZhciBkPWEubGVuZ3RoO2M9Y3x8RWE7Zm9yKHZhciBlPTA7ZTxkO2UrKylpZighYyhhW2VdLGJbZV0pKXJldHVybiExO3JldHVybiEwfTtfLkdhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE+Yj8xOmE8Yj8tMTowfTtFYT1mdW5jdGlvbihhLGIpe3JldHVybiBhPT09Yn07Xy5IYT1mdW5jdGlvbihhLGIpe3ZhciBjPXt9OygwLF8ucCkoYSxmdW5jdGlvbihkLGUpe2NbYi5jYWxsKHZvaWQgMCxkLGUsYSldPWR9KTtyZXR1cm4gY307Xy5LYT1mdW5jdGlvbigpeyFfLklhJiZfLkphJiYoXy5JYT0oMCxfLkphKSgpKTtyZXR1cm4gXy5JYX07Xy5yPWZ1bmN0aW9uKGEpe2lmKF8uSWEpe3ZhciBiPV8uSWE7Yi5qPWIuJGUoYSl9fTsKXy53PWZ1bmN0aW9uKCl7aWYoXy5JYSl7dmFyIGE9Xy5JYTtpZihhLmope3ZhciBiPWEuai5nZXRJZCgpO2EuaXNEaXNwb3NlZCgpfHwoTGEoYS5pW2JdLCgwLF8udCkoYS54dSxhKSkmJk1hKGEsNCksXy52YShhLnYsYiksXy52YShhLm8sYiksMD09YS5vLmxlbmd0aCYmTmEoYSksYS5UYSYmYj09YS5UYSYmKGEuVC5nfHxhLlQub2IoKSksT2EoYSksYS5qPW51bGwpfX19O18uUGE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4oYj1iLldJWl9nbG9iYWxfZGF0YSkmJmEgaW4gYj9iW2FdOm51bGx9O18uUmE9ZnVuY3Rpb24oYSxiKXtpZighYiYmYS5oYXNBdHRyaWJ1dGUoImpzc2hhZG93IikpcmV0dXJuIG51bGw7Zm9yKGI9MDthPV8uUWEoYSk7KXtpZihhLmhhc0F0dHJpYnV0ZSgianNzbG90IikpYis9MTtlbHNlIGlmKGEuaGFzQXR0cmlidXRlKCJqc3NoYWRvdyIpJiYwPGIpey0tYjtjb250aW51ZX1pZigwPj1iKXJldHVybiBhfXJldHVybiBudWxsfTsKXy5RYT1mdW5jdGlvbihhKXtyZXR1cm4gYT9hLl9fb3duZXI/YS5fX293bmVyOmEucGFyZW50Tm9kZSYmMTE9PT1hLnBhcmVudE5vZGUubm9kZVR5cGU/YS5wYXJlbnROb2RlLmhvc3Q6Xy5TYShhKTpudWxsfTtfLlRhPWZ1bmN0aW9uKGEsYixjLGQpe2ZvcihjfHwoYT1fLlJhKGEsZCkpO2E7KXtpZihiKGEpKXJldHVybiBhO2E9Xy5SYShhLGQpfXJldHVybiBudWxsfTtfLlVhPWZ1bmN0aW9uKGEpeyJfX2pzYWN0aW9uImluIGEmJmRlbGV0ZSBhLl9fanNhY3Rpb259O18uV2E9ZnVuY3Rpb24oYSxiKXtiLmRpc3BsYXlOYW1lPWE7YltWYV09YX07WmE9ZnVuY3Rpb24oYSl7YT1hW1ZhXTtyZXR1cm4gYSBpbnN0YW5jZW9mIF8uWGE/YTpudWxsfTtfLiRhPWZ1bmN0aW9uKGEsYil7dGhpcy5qPWE7dGhpcy5pPWI7dGhpcy5jb25zdHJ1Y3Rvci5zdHx8KHRoaXMuY29uc3RydWN0b3Iuc3Q9e30pO3RoaXMuY29uc3RydWN0b3Iuc3RbdGhpcy50b1N0cmluZygpXT10aGlzfTsKYmI9ZnVuY3Rpb24oYSl7Xy5hYihudWxsLGEpfTtjYj1mdW5jdGlvbigpe307ZmI9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5nZXRBdHRyaWJ1dGUoYSk7RWxlbWVudC5wcm90b3R5cGUuc2V0QXR0cmlidXRlLmFwcGx5KHRoaXMsYXJndW1lbnRzKTt2YXIgYz10aGlzLmdldEF0dHJpYnV0ZShhKTtfLmRiKHRoaXMsZWIse25hbWU6YSxXcTpjLFpEOmJ9LCExLHZvaWQgMCl9O2diPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuZ2V0QXR0cmlidXRlKGEpO0VsZW1lbnQucHJvdG90eXBlLnJlbW92ZUF0dHJpYnV0ZS5hcHBseSh0aGlzLGFyZ3VtZW50cyk7Xy5kYih0aGlzLGViLHtuYW1lOmEsV3E6bnVsbCxaRDpifSwhMSx2b2lkIDApfTtpYj1mdW5jdGlvbihhKXt0aGlzLnM9e307dGhpcy5nPVtdO3ZhciBiPWhiO3RoaXMudj1mdW5jdGlvbihjKXtpZihjPWIoYykpYy5UYT0hMDtyZXR1cm4gY307dGhpcy5vPWE7dGhpcy5VPXt9O3RoaXMuaT1udWxsfTsKXy5rYj1mdW5jdGlvbihhKXtyZXR1cm4gXy5CYShhKSYmdm9pZCAwIT09YS5ZYiYmYS5ZYiBpbnN0YW5jZW9mIF8uamImJnZvaWQgMCE9PWEuamQmJih2b2lkIDA9PT1hLmRlfHxhLmRlIGluc3RhbmNlb2YgXy55KT8hMDohMX07bGI9ZnVuY3Rpb24oYSl7dmFyIGI9YS5rSztfLmtiKGEpJiYoYj1hLm1ldGFkYXRhPyFhLm1ldGFkYXRhLmZhdGFsOnZvaWQgMCk7cmV0dXJuIGJ9O21iPWZ1bmN0aW9uKGEpe3ZhciBiPWEuS2k7Xy5rYihhKSYmKGI9YS5tZXRhZGF0YT9hLm1ldGFkYXRhLktpOnZvaWQgMCk7cmV0dXJuIGJ9OwpxYj1mdW5jdGlvbihhLGIpe3ZhciBjPW1iKGEpO2lmKG51bGw9PWN8fDA+YylyZXR1cm4gYjt2YXIgZD0hMTtiLnRoZW4oZnVuY3Rpb24oKXtkPSEwfSxmdW5jdGlvbigpe30pO2M9Xy5uYihjLF8ub2IobnVsbCkpO2EubWV0YWRhdGEmJihhLm1ldGFkYXRhLlR1PSExKTtjLnRoZW4oZnVuY3Rpb24oKXthLm1ldGFkYXRhJiYoYS5tZXRhZGF0YS5UdT0hZCl9KTtyZXR1cm4gXy5wYihbYixjXSl9O3NiPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGxiKGEpP18ucmIoYixmdW5jdGlvbigpe3JldHVybiBfLm9iKG51bGwpfSk6Yn07CnpiPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8ua2IoYSkmJmEubWV0YWRhdGEmJmEubWV0YWRhdGEuQks/Yi50aGVuKGZ1bmN0aW9uKGMpe2lmKCFjJiZhLm1ldGFkYXRhJiZhLm1ldGFkYXRhLlR1KXtjPW5ldyB0Yjt2YXIgZD1uZXcgXy51YixlO2V8fChlPSJ0eXBlLmdvb2dsZWFwaXMuY29tLyIpOyIvIiE9ZS5zdWJzdHIoLTEpP18udmIoZCwxLGUrIi93aXouZGF0YS5jbGllbnRzLldpekRhdGFUaW1lb3V0RXJyb3IiLCIiKTpfLnZiKGQsMSxlKyJ3aXouZGF0YS5jbGllbnRzLldpekRhdGFUaW1lb3V0RXJyb3IiLCIiKTtfLkIoZCwyLGMubWMoKSk7ZT1bZF07Yz1uZXcgXy53YjtjPV8udmIoYywxLDIsMCk7cmV0dXJuIF8ueGIoYywzLGUpfXJldHVybiBudWxsfSxmdW5jdGlvbihjKXtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIF8ueWImJmMgaW5zdGFuY2VvZiBfLnliP2Muc3RhdHVzOm51bGx9KTpifTsKRGI9ZnVuY3Rpb24oYSl7aWYoIV8uQWIuaGFzKCJzdGFydHVwIikpdGhyb3cgRXJyb3IoImRhYHN0YXJ0dXAiKTtfLkJiLmhhcygic3RhcnR1cCIpP2EuYXBwbHkoKTpfLkNiLnN0YXJ0dXAucHVzaChhKX07SGI9ZnVuY3Rpb24oKXt2YXIgYT17fTthLmxvY2F0aW9uPWRvY3VtZW50LmxvY2F0aW9uLnRvU3RyaW5nKCk7aWYoRmIoKSl0cnl7YVsidG9wLmxvY2F0aW9uIl09dG9wLmxvY2F0aW9uLnRvU3RyaW5nKCl9Y2F0Y2goYyl7YVsidG9wLmxvY2F0aW9uIl09IltleHRlcm5hbF0ifWVsc2UgYVsidG9wLmxvY2F0aW9uIl09IltleHRlcm5hbF0iO2Zvcih2YXIgYiBpbiBHYil0cnl7YVtiXT1HYltiXS5jYWxsKCl9Y2F0Y2goYyl7YVtiXT0iW2Vycm9yXSAiK2MubWVzc2FnZX1yZXR1cm4gYX07CmRjPWZ1bmN0aW9uKGEpe0liLmluaXQoKTthJiYoYT1uZXcgSmIoYSx2b2lkIDAsITApLEtiKG5ldyBMYihhKSkpO3ZhciBiPW51bGw7YT1mdW5jdGlvbihjKXtfLm4uJGdvb2dEZWJ1Z0ZuYW1lJiZjJiZjLm1lc3NhZ2UmJiFjLmZpbGVOYW1lJiYoYy5tZXNzYWdlKz0iIGluICIrXy5uLiRnb29nRGVidWdGbmFtZSk7Yj9jJiZjLm1lc3NhZ2UmJihjLm1lc3NhZ2UrPSIgW1Bvc3NpYmx5IGNhdXNlZCBieTogIitiKyJdIik6Yj1TdHJpbmcoYyk7Xy5hYihudWxsLGMpfTtfLk1iKCJfRHVtcEV4Y2VwdGlvbiIsYSx2b2lkIDApO18uTWIoIl9CX2VyciIsYSx2b2lkIDApO18ucChbXy5uXS5jb25jYXQoW10pLF8uTmIoT2IsXy5OYihQYiwhMCksITApKTtfLlFiKCkmJlJiKDI4KXx8Xy5TYigpJiZSYigxNCl8fFRiKCkmJlJiKDExKXx8Xy5VYigpJiZSYigxMCk7aWYoIV8uVmJ8fF8uV2IoMTApKWE9bmV3IFhiKGJiKSxhLmo9ITAsYS5nPSEwLCRiKGEpLGFjKGEsInNldFRpbWVvdXQiKSxhYyhhLAoic2V0SW50ZXJ2YWwiKSxiYyhhKSxjYyhhKX07UGI9ZnVuY3Rpb24oYSxiKXstMSE9Yi5tZXNzYWdlLmluZGV4T2YoIkVycm9yIGluIHByb3RlY3RlZCBmdW5jdGlvbjogIil8fChiLmVycm9yJiZiLmVycm9yLnN0YWNrP18uYWIobnVsbCxiLmVycm9yKTphfHxfLmFiKG51bGwsYikpfTsKaGM9ZnVuY3Rpb24oYSl7dmFyIGI9ITA7Yj12b2lkIDA9PT1iPyExOmI7YT12b2lkIDA9PT1hPyExOmE7dmFyIGM9dm9pZCAwPT09Yz97fTpjO3ZhciBkPSIiLGU9IiI7d2luZG93JiZ3aW5kb3cuX0ZfY3NzUm93S2V5JiYoZD13aW5kb3cuX0ZfY3NzUm93S2V5LHdpbmRvdy5fRl9jb21iaW5lZFNpZ25hdHVyZSYmKGU9d2luZG93Ll9GX2NvbWJpbmVkU2lnbmF0dXJlKSk7aWYoZCYmImZ1bmN0aW9uIiE9PXR5cGVvZiB3aW5kb3cuX0ZfaW5zdGFsbENzcyl0aHJvdyBFcnJvcigiaWEiKTt2YXIgZj0iIjt2YXIgZz1fLm4uX0ZfanNVcmwsaz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmFzZS1qcyIpO2lmKGspe3ZhciBsPWsudGFnTmFtZS50b1VwcGVyQ2FzZSgpO2lmKCJTQ1JJUFQiPT1sfHwiTElOSyI9PWwpZj1rLnNyYz9rLnNyYzprLmdldEF0dHJpYnV0ZSgiaHJlZiIpfWlmKGcmJmYpe2lmKGchPWYpdGhyb3cgRXJyb3IoImdhYCIrZysiYCIrZik7Zj1nfWVsc2UgZj1nfHxmO2lmKCFlYyhmKSl0aHJvdyBFcnJvcigiaGEiKTsKYT1uZXcgXy5mYyhnYyhmKSxkLGUsYixhKTtjLkRsJiYoYS5EbD1jLkRsKTtjPV8uS2EoKTtjLkthPWE7Yy5CdyghMCk7cmV0dXJuIGF9O18ua2M9ZnVuY3Rpb24oYSl7Xy5wKGljLGZ1bmN0aW9uKGIpe18uamMoYixhKX0pfTttYz1mdW5jdGlvbigpe3JldHVybiBfLmxjKGljLGZ1bmN0aW9uKGEpe3JldHVybiBhLmd9KX07Xy5uYz1mdW5jdGlvbigpe307Xy5vYz1mdW5jdGlvbihhLGIpe2EuX19zb3lfc2tpcF9oYW5kbGVyPWJ9O3BjPWZ1bmN0aW9uKCl7fTtfLnJjPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5xY1thXTtjfHwoYz1fLnFjW2FdPVtdKTtjLnB1c2goYil9O3RjPWZ1bmN0aW9uKGEpe2Zvcig7YSYmIWEua3QmJiFzYyhhKTspYT1hLnBhcmVudEVsZW1lbnQ7cmV0dXJue2VsZW1lbnQ6YSxWdTphLmt0fX07CkJjPWZ1bmN0aW9uKCl7Xy51Yyh7T2I6ZnVuY3Rpb24oYSl7dmFyIGI9YS5IP2EuSCgpLnUoKTphLlJmKCk7dmFyIGM9Yi5fX3NveT9iLl9fc295Om51bGw7aWYoYylyZXR1cm4gXy5vYihjKTt2YXIgZD10YyhiKSxlPWQuZWxlbWVudDtlLmVwfHwoZS5lcD1uZXcgU2V0KTt2YXIgZj1lLmVwO2M9bmV3IFNldDtmb3IodmFyIGc9Xy5DKGYpLGs9Zy5uZXh0KCk7IWsuZG9uZTtrPWcubmV4dCgpKWs9ay52YWx1ZSxfLnZjKGIsaykmJmMuYWRkKGspO2Muc2l6ZXx8KGYuYWRkKGIpLGIuX19zb3lfdGFnZ2VkX2Zvcl9za2lwPSEwKTthPWQuVnU/ZC5WdS50aGVuKGZ1bmN0aW9uKCl7Zi5jbGVhcigpO3ZhciBsPWIuX19zb3k/Yi5fX3NveTpudWxsO2lmKGwpcmV0dXJuIGw7ZS5fX3NveS5yZW5kZXIoKTtyZXR1cm4gYi5fX3NveX0pOl8ud2MoW2EuUGYoXy54YyxkLmVsZW1lbnQpLF8ueWMoYSx7Vzp7QW46Xy56Y319KV0pLnRoZW4oZnVuY3Rpb24obCl7dmFyIG09bFsxXS5XLkFuO3JldHVybiBsWzBdLkNCKCkudGhlbihmdW5jdGlvbihxKXtmLmNsZWFyKCk7CmUuX19pbmNyZW1lbnRhbERPTURhdGF8fChfLkFjKGUpLG0uY0MoZSxxLlV3LHEuWWMpKTtpZigoIWIuX19zb3l8fCFiLl9fc295KSYmZS5fX2luY3JlbWVudGFsRE9NRGF0YSl7cT0iSHlkcmF0aW9uIHNvdXJjZSAiKyhkb2N1bWVudC5ib2R5LmNvbnRhaW5zKGUpPyJpbiBkb20iOiJub3QgaW4gZG9tIikrIjsiO3ZhciB1PSJFbCBzb3VyY2UgIisoZG9jdW1lbnQuYm9keS5jb250YWlucyhiKT8iaW4gZG9tIjoibm90IGluIGRvbSIpO18uZmEoRXJyb3IoImthYCIrcSsiYCIrdSsiYCIrKGIuZ2V0QXR0cmlidXRlKCJqc2NvbnRyb2xsZXIiKXx8Yi5nZXRBdHRyaWJ1dGUoImpzbW9kZWwiKSkpKTtyZXR1cm4gbnVsbH1yZXR1cm4gYi5fX3NveX0pfSk7Yi5lcD1jO2Iua3Q9YTtyZXR1cm4gYS50aGVuKGZ1bmN0aW9uKGwpe3JldHVybiBsfSl9fSl9O2JhPVtdOwpDYz1mdW5jdGlvbihhKXt2YXIgYj0wO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBiPGEubGVuZ3RoP3tkb25lOiExLHZhbHVlOmFbYisrXX06e2RvbmU6ITB9fX07RGM9ImZ1bmN0aW9uIj09dHlwZW9mIE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzP09iamVjdC5kZWZpbmVQcm9wZXJ0eTpmdW5jdGlvbihhLGIsYyl7aWYoYT09QXJyYXkucHJvdG90eXBlfHxhPT1PYmplY3QucHJvdG90eXBlKXJldHVybiBhO2FbYl09Yy52YWx1ZTtyZXR1cm4gYX07RWM9ZnVuY3Rpb24oYSl7YT1bIm9iamVjdCI9PXR5cGVvZiBnbG9iYWxUaGlzJiZnbG9iYWxUaGlzLGEsIm9iamVjdCI9PXR5cGVvZiB3aW5kb3cmJndpbmRvdywib2JqZWN0Ij09dHlwZW9mIHNlbGYmJnNlbGYsIm9iamVjdCI9PXR5cGVvZiBnbG9iYWwmJmdsb2JhbF07Zm9yKHZhciBiPTA7YjxhLmxlbmd0aDsrK2Ipe3ZhciBjPWFbYl07aWYoYyYmYy5NYXRoPT1NYXRoKXJldHVybiBjfXRocm93IEVycm9yKCJhIik7fTtfLkZjPUVjKHRoaXMpOwpHYz1mdW5jdGlvbihhLGIpe2lmKGIpYTp7dmFyIGM9Xy5GYzthPWEuc3BsaXQoIi4iKTtmb3IodmFyIGQ9MDtkPGEubGVuZ3RoLTE7ZCsrKXt2YXIgZT1hW2RdO2lmKCEoZSBpbiBjKSlicmVhayBhO2M9Y1tlXX1hPWFbYS5sZW5ndGgtMV07ZD1jW2FdO2I9YihkKTtiIT1kJiZudWxsIT1iJiZEYyhjLGEse2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpifSl9fTsKR2MoIlN5bWJvbCIsZnVuY3Rpb24oYSl7aWYoYSlyZXR1cm4gYTt2YXIgYj1mdW5jdGlvbihlLGYpe3RoaXMuZz1lO0RjKHRoaXMsImRlc2NyaXB0aW9uIix7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmZ9KX07Yi5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nfTt2YXIgYz0wLGQ9ZnVuY3Rpb24oZSl7aWYodGhpcyBpbnN0YW5jZW9mIGQpdGhyb3cgbmV3IFR5cGVFcnJvcigiYiIpO3JldHVybiBuZXcgYigianNjb21wX3N5bWJvbF8iKyhlfHwiIikrIl8iK2MrKyxlKX07cmV0dXJuIGR9KTsKR2MoIlN5bWJvbC5pdGVyYXRvciIsZnVuY3Rpb24oYSl7aWYoYSlyZXR1cm4gYTthPVN5bWJvbCgiYyIpO2Zvcih2YXIgYj0iQXJyYXkgSW50OEFycmF5IFVpbnQ4QXJyYXkgVWludDhDbGFtcGVkQXJyYXkgSW50MTZBcnJheSBVaW50MTZBcnJheSBJbnQzMkFycmF5IFVpbnQzMkFycmF5IEZsb2F0MzJBcnJheSBGbG9hdDY0QXJyYXkiLnNwbGl0KCIgIiksYz0wO2M8Yi5sZW5ndGg7YysrKXt2YXIgZD1fLkZjW2JbY11dOyJmdW5jdGlvbiI9PT10eXBlb2YgZCYmImZ1bmN0aW9uIiE9dHlwZW9mIGQucHJvdG90eXBlW2FdJiZEYyhkLnByb3RvdHlwZSxhLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gSGMoQ2ModGhpcykpfX0pfXJldHVybiBhfSk7SGM9ZnVuY3Rpb24oYSl7YT17bmV4dDphfTthW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc307cmV0dXJuIGF9OwpfLkM9ZnVuY3Rpb24oYSl7dmFyIGI9InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJlN5bWJvbC5pdGVyYXRvciYmYVtTeW1ib2wuaXRlcmF0b3JdO3JldHVybiBiP2IuY2FsbChhKTp7bmV4dDpDYyhhKX19O18uSWM9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiLGM9W107IShiPWEubmV4dCgpKS5kb25lOyljLnB1c2goYi52YWx1ZSk7cmV0dXJuIGN9O18uSmM9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBBcnJheT9hOl8uSWMoXy5DKGEpKX07S2M9ImZ1bmN0aW9uIj09dHlwZW9mIE9iamVjdC5jcmVhdGU/T2JqZWN0LmNyZWF0ZTpmdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbigpe307Yi5wcm90b3R5cGU9YTtyZXR1cm4gbmV3IGJ9OwppZigiZnVuY3Rpb24iPT10eXBlb2YgT2JqZWN0LnNldFByb3RvdHlwZU9mKUxjPU9iamVjdC5zZXRQcm90b3R5cGVPZjtlbHNle3ZhciBNYzthOnt2YXIgTmM9e2E6ITB9LE9jPXt9O3RyeXtPYy5fX3Byb3RvX189TmM7TWM9T2MuYTticmVhayBhfWNhdGNoKGEpe31NYz0hMX1MYz1NYz9mdW5jdGlvbihhLGIpe2EuX19wcm90b19fPWI7aWYoYS5fX3Byb3RvX18hPT1iKXRocm93IG5ldyBUeXBlRXJyb3IoImRgIithKTtyZXR1cm4gYX06bnVsbH1fLlBjPUxjOwpfLkQ9ZnVuY3Rpb24oYSxiKXthLnByb3RvdHlwZT1LYyhiLnByb3RvdHlwZSk7YS5wcm90b3R5cGUuY29uc3RydWN0b3I9YTtpZihfLlBjKSgwLF8uUGMpKGEsYik7ZWxzZSBmb3IodmFyIGMgaW4gYilpZigicHJvdG90eXBlIiE9YylpZihPYmplY3QuZGVmaW5lUHJvcGVydGllcyl7dmFyIGQ9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihiLGMpO2QmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLGMsZCl9ZWxzZSBhW2NdPWJbY107YS5WYj1iLnByb3RvdHlwZX07CkdjKCJQcm9taXNlIixmdW5jdGlvbihhKXtmdW5jdGlvbiBiKCl7dGhpcy5nPW51bGx9ZnVuY3Rpb24gYyhnKXtyZXR1cm4gZyBpbnN0YW5jZW9mIGU/ZzpuZXcgZShmdW5jdGlvbihrKXtrKGcpfSl9aWYoYSlyZXR1cm4gYTtiLnByb3RvdHlwZS5pPWZ1bmN0aW9uKGcpe2lmKG51bGw9PXRoaXMuZyl7dGhpcy5nPVtdO3ZhciBrPXRoaXM7dGhpcy5qKGZ1bmN0aW9uKCl7ay5zKCl9KX10aGlzLmcucHVzaChnKX07dmFyIGQ9Xy5GYy5zZXRUaW1lb3V0O2IucHJvdG90eXBlLmo9ZnVuY3Rpb24oZyl7ZChnLDApfTtiLnByb3RvdHlwZS5zPWZ1bmN0aW9uKCl7Zm9yKDt0aGlzLmcmJnRoaXMuZy5sZW5ndGg7KXt2YXIgZz10aGlzLmc7dGhpcy5nPVtdO2Zvcih2YXIgaz0wO2s8Zy5sZW5ndGg7KytrKXt2YXIgbD1nW2tdO2dba109bnVsbDt0cnl7bCgpfWNhdGNoKG0pe3RoaXMubyhtKX19fXRoaXMuZz1udWxsfTtiLnByb3RvdHlwZS5vPWZ1bmN0aW9uKGcpe3RoaXMuaihmdW5jdGlvbigpe3Rocm93IGc7Cn0pfTt2YXIgZT1mdW5jdGlvbihnKXt0aGlzLm5iPTA7dGhpcy5BYz12b2lkIDA7dGhpcy5nPVtdO3RoaXMucz0hMTt2YXIgaz10aGlzLmkoKTt0cnl7ZyhrLnJlc29sdmUsay5yZWplY3QpfWNhdGNoKGwpe2sucmVqZWN0KGwpfX07ZS5wcm90b3R5cGUuaT1mdW5jdGlvbigpe2Z1bmN0aW9uIGcobSl7cmV0dXJuIGZ1bmN0aW9uKHEpe2x8fChsPSEwLG0uY2FsbChrLHEpKX19dmFyIGs9dGhpcyxsPSExO3JldHVybntyZXNvbHZlOmcodGhpcy5LYSkscmVqZWN0OmcodGhpcy5qKX19O2UucHJvdG90eXBlLkthPWZ1bmN0aW9uKGcpe2lmKGc9PT10aGlzKXRoaXMuaihuZXcgVHlwZUVycm9yKCJnIikpO2Vsc2UgaWYoZyBpbnN0YW5jZW9mIGUpdGhpcy5tYShnKTtlbHNle2E6c3dpdGNoKHR5cGVvZiBnKXtjYXNlICJvYmplY3QiOnZhciBrPW51bGwhPWc7YnJlYWsgYTtjYXNlICJmdW5jdGlvbiI6az0hMDticmVhayBhO2RlZmF1bHQ6az0hMX1rP3RoaXMuJChnKTp0aGlzLm8oZyl9fTtlLnByb3RvdHlwZS4kPQpmdW5jdGlvbihnKXt2YXIgaz12b2lkIDA7dHJ5e2s9Zy50aGVufWNhdGNoKGwpe3RoaXMuaihsKTtyZXR1cm59ImZ1bmN0aW9uIj09dHlwZW9mIGs/dGhpcy5IYShrLGcpOnRoaXMubyhnKX07ZS5wcm90b3R5cGUuaj1mdW5jdGlvbihnKXt0aGlzLnYoMixnKX07ZS5wcm90b3R5cGUubz1mdW5jdGlvbihnKXt0aGlzLnYoMSxnKX07ZS5wcm90b3R5cGUudj1mdW5jdGlvbihnLGspe2lmKDAhPXRoaXMubmIpdGhyb3cgRXJyb3IoImhgIitnKyJgIitrKyJgIit0aGlzLm5iKTt0aGlzLm5iPWc7dGhpcy5BYz1rOzI9PT10aGlzLm5iJiZ0aGlzLk9hKCk7dGhpcy5VKCl9O2UucHJvdG90eXBlLk9hPWZ1bmN0aW9uKCl7dmFyIGc9dGhpcztkKGZ1bmN0aW9uKCl7aWYoZy5UKCkpe3ZhciBrPV8uRmMuY29uc29sZTsidW5kZWZpbmVkIiE9PXR5cGVvZiBrJiZrLmVycm9yKGcuQWMpfX0sMSl9O2UucHJvdG90eXBlLlQ9ZnVuY3Rpb24oKXtpZih0aGlzLnMpcmV0dXJuITE7dmFyIGc9Xy5GYy5DdXN0b21FdmVudCwKaz1fLkZjLkV2ZW50LGw9Xy5GYy5kaXNwYXRjaEV2ZW50O2lmKCJ1bmRlZmluZWQiPT09dHlwZW9mIGwpcmV0dXJuITA7ImZ1bmN0aW9uIj09PXR5cGVvZiBnP2c9bmV3IGcoInVuaGFuZGxlZHJlamVjdGlvbiIse2NhbmNlbGFibGU6ITB9KToiZnVuY3Rpb24iPT09dHlwZW9mIGs/Zz1uZXcgaygidW5oYW5kbGVkcmVqZWN0aW9uIix7Y2FuY2VsYWJsZTohMH0pOihnPV8uRmMuZG9jdW1lbnQuY3JlYXRlRXZlbnQoIkN1c3RvbUV2ZW50IiksZy5pbml0Q3VzdG9tRXZlbnQoInVuaGFuZGxlZHJlamVjdGlvbiIsITEsITAsZykpO2cucHJvbWlzZT10aGlzO2cucmVhc29uPXRoaXMuQWM7cmV0dXJuIGwoZyl9O2UucHJvdG90eXBlLlU9ZnVuY3Rpb24oKXtpZihudWxsIT10aGlzLmcpe2Zvcih2YXIgZz0wO2c8dGhpcy5nLmxlbmd0aDsrK2cpZi5pKHRoaXMuZ1tnXSk7dGhpcy5nPW51bGx9fTt2YXIgZj1uZXcgYjtlLnByb3RvdHlwZS5tYT1mdW5jdGlvbihnKXt2YXIgaz10aGlzLmkoKTtnLm9tKGsucmVzb2x2ZSwKay5yZWplY3QpfTtlLnByb3RvdHlwZS5IYT1mdW5jdGlvbihnLGspe3ZhciBsPXRoaXMuaSgpO3RyeXtnLmNhbGwoayxsLnJlc29sdmUsbC5yZWplY3QpfWNhdGNoKG0pe2wucmVqZWN0KG0pfX07ZS5wcm90b3R5cGUudGhlbj1mdW5jdGlvbihnLGspe2Z1bmN0aW9uIGwoeCx2KXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgeD9mdW5jdGlvbih6KXt0cnl7bSh4KHopKX1jYXRjaChBKXtxKEEpfX06dn12YXIgbSxxLHU9bmV3IGUoZnVuY3Rpb24oeCx2KXttPXg7cT12fSk7dGhpcy5vbShsKGcsbSksbChrLHEpKTtyZXR1cm4gdX07ZS5wcm90b3R5cGUuY2F0Y2g9ZnVuY3Rpb24oZyl7cmV0dXJuIHRoaXMudGhlbih2b2lkIDAsZyl9O2UucHJvdG90eXBlLm9tPWZ1bmN0aW9uKGcsayl7ZnVuY3Rpb24gbCgpe3N3aXRjaChtLm5iKXtjYXNlIDE6ZyhtLkFjKTticmVhaztjYXNlIDI6ayhtLkFjKTticmVhaztkZWZhdWx0OnRocm93IEVycm9yKCJpYCIrbS5uYik7fX12YXIgbT10aGlzO251bGw9PQp0aGlzLmc/Zi5pKGwpOnRoaXMuZy5wdXNoKGwpO3RoaXMucz0hMH07ZS5yZXNvbHZlPWM7ZS5yZWplY3Q9ZnVuY3Rpb24oZyl7cmV0dXJuIG5ldyBlKGZ1bmN0aW9uKGssbCl7bChnKX0pfTtlLnJhY2U9ZnVuY3Rpb24oZyl7cmV0dXJuIG5ldyBlKGZ1bmN0aW9uKGssbCl7Zm9yKHZhciBtPV8uQyhnKSxxPW0ubmV4dCgpOyFxLmRvbmU7cT1tLm5leHQoKSljKHEudmFsdWUpLm9tKGssbCl9KX07ZS5hbGw9ZnVuY3Rpb24oZyl7dmFyIGs9Xy5DKGcpLGw9ay5uZXh0KCk7cmV0dXJuIGwuZG9uZT9jKFtdKTpuZXcgZShmdW5jdGlvbihtLHEpe2Z1bmN0aW9uIHUoeil7cmV0dXJuIGZ1bmN0aW9uKEEpe3hbel09QTt2LS07MD09diYmbSh4KX19dmFyIHg9W10sdj0wO2RvIHgucHVzaCh2b2lkIDApLHYrKyxjKGwudmFsdWUpLm9tKHUoeC5sZW5ndGgtMSkscSksbD1rLm5leHQoKTt3aGlsZSghbC5kb25lKX0pfTtyZXR1cm4gZX0pOwpHYygiQXJyYXkucHJvdG90eXBlLmZpbmQiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXthOnt2YXIgZD10aGlzO2QgaW5zdGFuY2VvZiBTdHJpbmcmJihkPVN0cmluZyhkKSk7Zm9yKHZhciBlPWQubGVuZ3RoLGY9MDtmPGU7ZisrKXt2YXIgZz1kW2ZdO2lmKGIuY2FsbChjLGcsZixkKSl7Yj1nO2JyZWFrIGF9fWI9dm9pZCAwfXJldHVybiBifX0pO3ZhciBRYz1mdW5jdGlvbihhLGIsYyl7aWYobnVsbD09YSl0aHJvdyBuZXcgVHlwZUVycm9yKCJqYCIrYyk7aWYoYiBpbnN0YW5jZW9mIFJlZ0V4cCl0aHJvdyBuZXcgVHlwZUVycm9yKCJrYCIrYyk7cmV0dXJuIGErIiJ9OwpHYygiU3RyaW5nLnByb3RvdHlwZS5lbmRzV2l0aCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMpe3ZhciBkPVFjKHRoaXMsYiwiZW5kc1dpdGgiKTt2b2lkIDA9PT1jJiYoYz1kLmxlbmd0aCk7Yz1NYXRoLm1heCgwLE1hdGgubWluKGN8MCxkLmxlbmd0aCkpO2Zvcih2YXIgZT1iLmxlbmd0aDswPGUmJjA8YzspaWYoZFstLWNdIT1iWy0tZV0pcmV0dXJuITE7cmV0dXJuIDA+PWV9fSk7R2MoIlN0cmluZy5wcm90b3R5cGUuc3RhcnRzV2l0aCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMpe3ZhciBkPVFjKHRoaXMsYiwic3RhcnRzV2l0aCIpLGU9ZC5sZW5ndGgsZj1iLmxlbmd0aDtjPU1hdGgubWF4KDAsTWF0aC5taW4oY3wwLGQubGVuZ3RoKSk7Zm9yKHZhciBnPTA7ZzxmJiZjPGU7KWlmKGRbYysrXSE9YltnKytdKXJldHVybiExO3JldHVybiBnPj1mfX0pOwpHYygiU3RyaW5nLnByb3RvdHlwZS5yZXBlYXQiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYil7dmFyIGM9UWModGhpcyxudWxsLCJyZXBlYXQiKTtpZigwPmJ8fDEzNDIxNzcyNzk8Yil0aHJvdyBuZXcgUmFuZ2VFcnJvcigibCIpO2J8PTA7Zm9yKHZhciBkPSIiO2I7KWlmKGImMSYmKGQrPWMpLGI+Pj49MSljKz1jO3JldHVybiBkfX0pO3ZhciBSYz1mdW5jdGlvbihhLGIpe2EgaW5zdGFuY2VvZiBTdHJpbmcmJihhKz0iIik7dmFyIGM9MCxkPSExLGU9e25leHQ6ZnVuY3Rpb24oKXtpZighZCYmYzxhLmxlbmd0aCl7dmFyIGY9YysrO3JldHVybnt2YWx1ZTpiKGYsYVtmXSksZG9uZTohMX19ZD0hMDtyZXR1cm57ZG9uZTohMCx2YWx1ZTp2b2lkIDB9fX07ZVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIGV9O3JldHVybiBlfTsKR2MoIkFycmF5LnByb3RvdHlwZS5lbnRyaWVzIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKCl7cmV0dXJuIFJjKHRoaXMsZnVuY3Rpb24oYixjKXtyZXR1cm5bYixjXX0pfX0pO0djKCJBcnJheS5wcm90b3R5cGUua2V5cyIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbigpe3JldHVybiBSYyh0aGlzLGZ1bmN0aW9uKGIpe3JldHVybiBifSl9fSk7dmFyIFNjPWZ1bmN0aW9uKGEsYil7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhLGIpfTsKR2MoIldlYWtNYXAiLGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoKXt9ZnVuY3Rpb24gYyhsKXt2YXIgbT10eXBlb2YgbDtyZXR1cm4ib2JqZWN0Ij09PW0mJm51bGwhPT1sfHwiZnVuY3Rpb24iPT09bX1mdW5jdGlvbiBkKGwpe2lmKCFTYyhsLGYpKXt2YXIgbT1uZXcgYjtEYyhsLGYse3ZhbHVlOm19KX19ZnVuY3Rpb24gZShsKXt2YXIgbT1PYmplY3RbbF07bSYmKE9iamVjdFtsXT1mdW5jdGlvbihxKXtpZihxIGluc3RhbmNlb2YgYilyZXR1cm4gcTtPYmplY3QuaXNFeHRlbnNpYmxlKHEpJiZkKHEpO3JldHVybiBtKHEpfSl9aWYoZnVuY3Rpb24oKXtpZighYXx8IU9iamVjdC5zZWFsKXJldHVybiExO3RyeXt2YXIgbD1PYmplY3Quc2VhbCh7fSksbT1PYmplY3Quc2VhbCh7fSkscT1uZXcgYShbW2wsMl0sW20sM11dKTtpZigyIT1xLmdldChsKXx8MyE9cS5nZXQobSkpcmV0dXJuITE7cS5kZWxldGUobCk7cS5zZXQobSw0KTtyZXR1cm4hcS5oYXMobCkmJjQ9PXEuZ2V0KG0pfWNhdGNoKHUpe3JldHVybiExfX0oKSlyZXR1cm4gYTsKdmFyIGY9IiRqc2NvbXBfaGlkZGVuXyIrTWF0aC5yYW5kb20oKTtlKCJmcmVlemUiKTtlKCJwcmV2ZW50RXh0ZW5zaW9ucyIpO2UoInNlYWwiKTt2YXIgZz0wLGs9ZnVuY3Rpb24obCl7dGhpcy5nPShnKz1NYXRoLnJhbmRvbSgpKzEpLnRvU3RyaW5nKCk7aWYobCl7bD1fLkMobCk7Zm9yKHZhciBtOyEobT1sLm5leHQoKSkuZG9uZTspbT1tLnZhbHVlLHRoaXMuc2V0KG1bMF0sbVsxXSl9fTtrLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24obCxtKXtpZighYyhsKSl0aHJvdyBFcnJvcigibSIpO2QobCk7aWYoIVNjKGwsZikpdGhyb3cgRXJyb3IoIm5gIitsKTtsW2ZdW3RoaXMuZ109bTtyZXR1cm4gdGhpc307ay5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGwpe3JldHVybiBjKGwpJiZTYyhsLGYpP2xbZl1bdGhpcy5nXTp2b2lkIDB9O2sucHJvdG90eXBlLmhhcz1mdW5jdGlvbihsKXtyZXR1cm4gYyhsKSYmU2MobCxmKSYmU2MobFtmXSx0aGlzLmcpfTtrLnByb3RvdHlwZS5kZWxldGU9ZnVuY3Rpb24obCl7cmV0dXJuIGMobCkmJgpTYyhsLGYpJiZTYyhsW2ZdLHRoaXMuZyk/ZGVsZXRlIGxbZl1bdGhpcy5nXTohMX07cmV0dXJuIGt9KTtHYygiT2JqZWN0LmlzIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIsYyl7cmV0dXJuIGI9PT1jPzAhPT1ifHwxL2I9PT0xL2M6YiE9PWImJmMhPT1jfX0pO0djKCJBcnJheS5wcm90b3R5cGUuaW5jbHVkZXMiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXt2YXIgZD10aGlzO2QgaW5zdGFuY2VvZiBTdHJpbmcmJihkPVN0cmluZyhkKSk7dmFyIGU9ZC5sZW5ndGg7Yz1jfHwwO2ZvcigwPmMmJihjPU1hdGgubWF4KGMrZSwwKSk7YzxlO2MrKyl7dmFyIGY9ZFtjXTtpZihmPT09Ynx8T2JqZWN0LmlzKGYsYikpcmV0dXJuITB9cmV0dXJuITF9fSk7CkdjKCJTdHJpbmcucHJvdG90eXBlLmluY2x1ZGVzIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIsYyl7cmV0dXJuLTEhPT1RYyh0aGlzLGIsImluY2x1ZGVzIikuaW5kZXhPZihiLGN8fDApfX0pO3ZhciBUYz0iZnVuY3Rpb24iPT10eXBlb2YgT2JqZWN0LmFzc2lnbj9PYmplY3QuYXNzaWduOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTE7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dmFyIGQ9YXJndW1lbnRzW2NdO2lmKGQpZm9yKHZhciBlIGluIGQpU2MoZCxlKSYmKGFbZV09ZFtlXSl9cmV0dXJuIGF9O0djKCJPYmplY3QuYXNzaWduIixmdW5jdGlvbihhKXtyZXR1cm4gYXx8VGN9KTtHYygiT2JqZWN0LnZhbHVlcyIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiKXt2YXIgYz1bXSxkO2ZvcihkIGluIGIpU2MoYixkKSYmYy5wdXNoKGJbZF0pO3JldHVybiBjfX0pOwpHYygiTWFwIixmdW5jdGlvbihhKXtpZihmdW5jdGlvbigpe2lmKCFhfHwiZnVuY3Rpb24iIT10eXBlb2YgYXx8IWEucHJvdG90eXBlLmVudHJpZXN8fCJmdW5jdGlvbiIhPXR5cGVvZiBPYmplY3Quc2VhbClyZXR1cm4hMTt0cnl7dmFyIGs9T2JqZWN0LnNlYWwoe3g6NH0pLGw9bmV3IGEoXy5DKFtbaywicyJdXSkpO2lmKCJzIiE9bC5nZXQoayl8fDEhPWwuc2l6ZXx8bC5nZXQoe3g6NH0pfHxsLnNldCh7eDo0fSwidCIpIT1sfHwyIT1sLnNpemUpcmV0dXJuITE7dmFyIG09bC5lbnRyaWVzKCkscT1tLm5leHQoKTtpZihxLmRvbmV8fHEudmFsdWVbMF0hPWt8fCJzIiE9cS52YWx1ZVsxXSlyZXR1cm4hMTtxPW0ubmV4dCgpO3JldHVybiBxLmRvbmV8fDQhPXEudmFsdWVbMF0ueHx8InQiIT1xLnZhbHVlWzFdfHwhbS5uZXh0KCkuZG9uZT8hMTohMH1jYXRjaCh1KXtyZXR1cm4hMX19KCkpcmV0dXJuIGE7dmFyIGI9bmV3IFdlYWtNYXAsYz1mdW5jdGlvbihrKXt0aGlzLmk9e307dGhpcy5nPQpmKCk7dGhpcy5zaXplPTA7aWYoayl7az1fLkMoayk7Zm9yKHZhciBsOyEobD1rLm5leHQoKSkuZG9uZTspbD1sLnZhbHVlLHRoaXMuc2V0KGxbMF0sbFsxXSl9fTtjLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oayxsKXtrPTA9PT1rPzA6azt2YXIgbT1kKHRoaXMsayk7bS5saXN0fHwobS5saXN0PXRoaXMuaVttLmlkXT1bXSk7bS54ZD9tLnhkLnZhbHVlPWw6KG0ueGQ9e25leHQ6dGhpcy5nLCRmOnRoaXMuZy4kZixoZWFkOnRoaXMuZyxrZXk6ayx2YWx1ZTpsfSxtLmxpc3QucHVzaChtLnhkKSx0aGlzLmcuJGYubmV4dD1tLnhkLHRoaXMuZy4kZj1tLnhkLHRoaXMuc2l6ZSsrKTtyZXR1cm4gdGhpc307Yy5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKGspe2s9ZCh0aGlzLGspO3JldHVybiBrLnhkJiZrLmxpc3Q/KGsubGlzdC5zcGxpY2Uoay5pbmRleCwxKSxrLmxpc3QubGVuZ3RofHxkZWxldGUgdGhpcy5pW2suaWRdLGsueGQuJGYubmV4dD1rLnhkLm5leHQsay54ZC5uZXh0LiRmPWsueGQuJGYsCmsueGQuaGVhZD1udWxsLHRoaXMuc2l6ZS0tLCEwKTohMX07Yy5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzLmk9e307dGhpcy5nPXRoaXMuZy4kZj1mKCk7dGhpcy5zaXplPTB9O2MucHJvdG90eXBlLmhhcz1mdW5jdGlvbihrKXtyZXR1cm4hIWQodGhpcyxrKS54ZH07Yy5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGspe3JldHVybihrPWQodGhpcyxrKS54ZCkmJmsudmFsdWV9O2MucHJvdG90eXBlLmVudHJpZXM9ZnVuY3Rpb24oKXtyZXR1cm4gZSh0aGlzLGZ1bmN0aW9uKGspe3JldHVybltrLmtleSxrLnZhbHVlXX0pfTtjLnByb3RvdHlwZS5rZXlzPWZ1bmN0aW9uKCl7cmV0dXJuIGUodGhpcyxmdW5jdGlvbihrKXtyZXR1cm4gay5rZXl9KX07Yy5wcm90b3R5cGUudmFsdWVzPWZ1bmN0aW9uKCl7cmV0dXJuIGUodGhpcyxmdW5jdGlvbihrKXtyZXR1cm4gay52YWx1ZX0pfTtjLnByb3RvdHlwZS5mb3JFYWNoPWZ1bmN0aW9uKGssbCl7Zm9yKHZhciBtPXRoaXMuZW50cmllcygpLApxOyEocT1tLm5leHQoKSkuZG9uZTspcT1xLnZhbHVlLGsuY2FsbChsLHFbMV0scVswXSx0aGlzKX07Yy5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT1jLnByb3RvdHlwZS5lbnRyaWVzO3ZhciBkPWZ1bmN0aW9uKGssbCl7dmFyIG09bCYmdHlwZW9mIGw7Im9iamVjdCI9PW18fCJmdW5jdGlvbiI9PW0/Yi5oYXMobCk/bT1iLmdldChsKToobT0iIisgKytnLGIuc2V0KGwsbSkpOm09InBfIitsO3ZhciBxPWsuaVttXTtpZihxJiZTYyhrLmksbSkpZm9yKGs9MDtrPHEubGVuZ3RoO2srKyl7dmFyIHU9cVtrXTtpZihsIT09bCYmdS5rZXkhPT11LmtleXx8bD09PXUua2V5KXJldHVybntpZDptLGxpc3Q6cSxpbmRleDprLHhkOnV9fXJldHVybntpZDptLGxpc3Q6cSxpbmRleDotMSx4ZDp2b2lkIDB9fSxlPWZ1bmN0aW9uKGssbCl7dmFyIG09ay5nO3JldHVybiBIYyhmdW5jdGlvbigpe2lmKG0pe2Zvcig7bS5oZWFkIT1rLmc7KW09bS4kZjtmb3IoO20ubmV4dCE9bS5oZWFkOylyZXR1cm4gbT0KbS5uZXh0LHtkb25lOiExLHZhbHVlOmwobSl9O209bnVsbH1yZXR1cm57ZG9uZTohMCx2YWx1ZTp2b2lkIDB9fSl9LGY9ZnVuY3Rpb24oKXt2YXIgaz17fTtyZXR1cm4gay4kZj1rLm5leHQ9ay5oZWFkPWt9LGc9MDtyZXR1cm4gY30pOwpHYygiU2V0IixmdW5jdGlvbihhKXtpZihmdW5jdGlvbigpe2lmKCFhfHwiZnVuY3Rpb24iIT10eXBlb2YgYXx8IWEucHJvdG90eXBlLmVudHJpZXN8fCJmdW5jdGlvbiIhPXR5cGVvZiBPYmplY3Quc2VhbClyZXR1cm4hMTt0cnl7dmFyIGM9T2JqZWN0LnNlYWwoe3g6NH0pLGQ9bmV3IGEoXy5DKFtjXSkpO2lmKCFkLmhhcyhjKXx8MSE9ZC5zaXplfHxkLmFkZChjKSE9ZHx8MSE9ZC5zaXplfHxkLmFkZCh7eDo0fSkhPWR8fDIhPWQuc2l6ZSlyZXR1cm4hMTt2YXIgZT1kLmVudHJpZXMoKSxmPWUubmV4dCgpO2lmKGYuZG9uZXx8Zi52YWx1ZVswXSE9Y3x8Zi52YWx1ZVsxXSE9YylyZXR1cm4hMTtmPWUubmV4dCgpO3JldHVybiBmLmRvbmV8fGYudmFsdWVbMF09PWN8fDQhPWYudmFsdWVbMF0ueHx8Zi52YWx1ZVsxXSE9Zi52YWx1ZVswXT8hMTplLm5leHQoKS5kb25lfWNhdGNoKGcpe3JldHVybiExfX0oKSlyZXR1cm4gYTt2YXIgYj1mdW5jdGlvbihjKXt0aGlzLmc9bmV3IE1hcDtpZihjKXtjPQpfLkMoYyk7Zm9yKHZhciBkOyEoZD1jLm5leHQoKSkuZG9uZTspdGhpcy5hZGQoZC52YWx1ZSl9dGhpcy5zaXplPXRoaXMuZy5zaXplfTtiLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYyl7Yz0wPT09Yz8wOmM7dGhpcy5nLnNldChjLGMpO3RoaXMuc2l6ZT10aGlzLmcuc2l6ZTtyZXR1cm4gdGhpc307Yi5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKGMpe2M9dGhpcy5nLmRlbGV0ZShjKTt0aGlzLnNpemU9dGhpcy5nLnNpemU7cmV0dXJuIGN9O2IucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKCl7dGhpcy5nLmNsZWFyKCk7dGhpcy5zaXplPTB9O2IucHJvdG90eXBlLmhhcz1mdW5jdGlvbihjKXtyZXR1cm4gdGhpcy5nLmhhcyhjKX07Yi5wcm90b3R5cGUuZW50cmllcz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcuZW50cmllcygpfTtiLnByb3RvdHlwZS52YWx1ZXM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nLnZhbHVlcygpfTtiLnByb3RvdHlwZS5rZXlzPWIucHJvdG90eXBlLnZhbHVlczsKYi5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT1iLnByb3RvdHlwZS52YWx1ZXM7Yi5wcm90b3R5cGUuZm9yRWFjaD1mdW5jdGlvbihjLGQpe3ZhciBlPXRoaXM7dGhpcy5nLmZvckVhY2goZnVuY3Rpb24oZil7cmV0dXJuIGMuY2FsbChkLGYsZixlKX0pfTtyZXR1cm4gYn0pO0djKCJBcnJheS5mcm9tIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIsYyxkKXtjPW51bGwhPWM/YzpmdW5jdGlvbihrKXtyZXR1cm4ga307dmFyIGU9W10sZj0idW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmU3ltYm9sLml0ZXJhdG9yJiZiW1N5bWJvbC5pdGVyYXRvcl07aWYoImZ1bmN0aW9uIj09dHlwZW9mIGYpe2I9Zi5jYWxsKGIpO2Zvcih2YXIgZz0wOyEoZj1iLm5leHQoKSkuZG9uZTspZS5wdXNoKGMuY2FsbChkLGYudmFsdWUsZysrKSl9ZWxzZSBmb3IoZj1iLmxlbmd0aCxnPTA7ZzxmO2crKyllLnB1c2goYy5jYWxsKGQsYltnXSxnKSk7cmV0dXJuIGV9fSk7CkdjKCJBcnJheS5wcm90b3R5cGUudmFsdWVzIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKCl7cmV0dXJuIFJjKHRoaXMsZnVuY3Rpb24oYixjKXtyZXR1cm4gY30pfX0pO0djKCJPYmplY3QuZW50cmllcyIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiKXt2YXIgYz1bXSxkO2ZvcihkIGluIGIpU2MoYixkKSYmYy5wdXNoKFtkLGJbZF1dKTtyZXR1cm4gY319KTtHYygiTnVtYmVyLmlzRmluaXRlIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIpe3JldHVybiJudW1iZXIiIT09dHlwZW9mIGI/ITE6IWlzTmFOKGIpJiZJbmZpbml0eSE9PWImJi1JbmZpbml0eSE9PWJ9fSk7R2MoIk51bWJlci5pc0ludGVnZXIiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYil7cmV0dXJuIE51bWJlci5pc0Zpbml0ZShiKT9iPT09TWF0aC5mbG9vcihiKTohMX19KTsKXy5fRHVtcEV4Y2VwdGlvbj13aW5kb3cuX0R1bXBFeGNlcHRpb258fGZ1bmN0aW9uKGEpe3Rocm93IGE7fTt3aW5kb3cuX0R1bXBFeGNlcHRpb249Xy5fRHVtcEV4Y2VwdGlvbjsKLyoKCiBDb3B5cmlnaHQgVGhlIENsb3N1cmUgTGlicmFyeSBBdXRob3JzLgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KdmFyIFVjLFljLFdjLFZjLFpjLGRkLGVkLGZkLGdkLGlkLGxkO1VjPVVjfHx7fTtfLm49dGhpc3x8c2VsZjtfLk1iPWZ1bmN0aW9uKGEsYixjKXthPWEuc3BsaXQoIi4iKTtjPWN8fF8ubjthWzBdaW4gY3x8InVuZGVmaW5lZCI9PXR5cGVvZiBjLmV4ZWNTY3JpcHR8fGMuZXhlY1NjcmlwdCgidmFyICIrYVswXSk7Zm9yKHZhciBkO2EubGVuZ3RoJiYoZD1hLnNoaWZ0KCkpOylhLmxlbmd0aHx8dm9pZCAwPT09Yj9jW2RdJiZjW2RdIT09T2JqZWN0LnByb3RvdHlwZVtkXT9jPWNbZF06Yz1jW2RdPXt9OmNbZF09Yn07Xy5YYz1mdW5jdGlvbihhKXtpZihhJiZhIT1fLm4pcmV0dXJuIFZjKGEuZG9jdW1lbnQpO251bGw9PT1XYyYmKFdjPVZjKF8ubi5kb2N1bWVudCkpO3JldHVybiBXY307WWM9L15bXHcrL18tXStbPV17MCwyfSQvO1djPW51bGw7ClZjPWZ1bmN0aW9uKGEpe3JldHVybihhPWEucXVlcnlTZWxlY3RvciYmYS5xdWVyeVNlbGVjdG9yKCJzY3JpcHRbbm9uY2VdIikpJiYoYT1hLm5vbmNlfHxhLmdldEF0dHJpYnV0ZSgibm9uY2UiKSkmJlljLnRlc3QoYSk/YToiIn07WmM9ZnVuY3Rpb24oYSl7YT1hLnNwbGl0KCIuIik7Zm9yKHZhciBiPV8ubixjPTA7YzxhLmxlbmd0aDtjKyspaWYoYj1iW2FbY11dLG51bGw9PWIpcmV0dXJuIG51bGw7cmV0dXJuIGJ9O18uYWQ9ZnVuY3Rpb24oKXt9O18uYmQ9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigibyIpO307Xy5jZD1mdW5jdGlvbihhKXthLnpxPXZvaWQgMDthLmFiPWZ1bmN0aW9uKCl7cmV0dXJuIGEuenE/YS56cTphLnpxPW5ldyBhfX07Xy5pYT1mdW5jdGlvbihhKXt2YXIgYj10eXBlb2YgYTtiPSJvYmplY3QiIT1iP2I6YT9BcnJheS5pc0FycmF5KGEpPyJhcnJheSI6YjoibnVsbCI7cmV0dXJuImFycmF5Ij09Ynx8Im9iamVjdCI9PWImJiJudW1iZXIiPT10eXBlb2YgYS5sZW5ndGh9OwpfLkJhPWZ1bmN0aW9uKGEpe3ZhciBiPXR5cGVvZiBhO3JldHVybiJvYmplY3QiPT1iJiZudWxsIT1hfHwiZnVuY3Rpb24iPT1ifTtfLkNhPWZ1bmN0aW9uKGEpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxkZCkmJmFbZGRdfHwoYVtkZF09KytlZCl9O2RkPSJjbG9zdXJlX3VpZF8iKygxRTkqTWF0aC5yYW5kb20oKT4+PjApO2VkPTA7ZmQ9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBhLmNhbGwuYXBwbHkoYS5iaW5kLGFyZ3VtZW50cyl9OwpnZD1mdW5jdGlvbihhLGIsYyl7aWYoIWEpdGhyb3cgRXJyb3IoKTtpZigyPGFyZ3VtZW50cy5sZW5ndGgpe3ZhciBkPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywyKTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZT1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMpO0FycmF5LnByb3RvdHlwZS51bnNoaWZ0LmFwcGx5KGUsZCk7cmV0dXJuIGEuYXBwbHkoYixlKX19cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGEuYXBwbHkoYixhcmd1bWVudHMpfX07Xy50PWZ1bmN0aW9uKGEsYixjKXtGdW5jdGlvbi5wcm90b3R5cGUuYmluZCYmLTEhPUZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kLnRvU3RyaW5nKCkuaW5kZXhPZigibmF0aXZlIGNvZGUiKT9fLnQ9ZmQ6Xy50PWdkO3JldHVybiBfLnQuYXBwbHkobnVsbCxhcmd1bWVudHMpfTsKXy5OYj1mdW5jdGlvbihhLGIpe3ZhciBjPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywxKTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZD1jLnNsaWNlKCk7ZC5wdXNoLmFwcGx5KGQsYXJndW1lbnRzKTtyZXR1cm4gYS5hcHBseSh0aGlzLGQpfX07Xy5oZD1mdW5jdGlvbigpe3JldHVybiBEYXRlLm5vdygpfTtpZD1mdW5jdGlvbihhKXsoMCxldmFsKShhKX07Xy5rZD1mdW5jdGlvbihhLGIpe18uTWIoYSxiLHZvaWQgMCl9OwpfLkY9ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBjKCl7fWMucHJvdG90eXBlPWIucHJvdG90eXBlO2EuVmI9Yi5wcm90b3R5cGU7YS5wcm90b3R5cGU9bmV3IGM7YS5wcm90b3R5cGUuY29uc3RydWN0b3I9YTthLmpKPWZ1bmN0aW9uKGQsZSxmKXtmb3IodmFyIGc9QXJyYXkoYXJndW1lbnRzLmxlbmd0aC0yKSxrPTI7azxhcmd1bWVudHMubGVuZ3RoO2srKylnW2stMl09YXJndW1lbnRzW2tdO3JldHVybiBiLnByb3RvdHlwZVtlXS5hcHBseShkLGcpfX07bGQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGF9OwpfLm1kPWZ1bmN0aW9uKCl7dGhpcy5PYT10aGlzLk9hO3RoaXMuS2E9dGhpcy5LYX07Xy5tZC5wcm90b3R5cGUuT2E9ITE7Xy5tZC5wcm90b3R5cGUuaXNEaXNwb3NlZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLk9hfTtfLm1kLnByb3RvdHlwZS5UYj1mdW5jdGlvbigpe3RoaXMuT2F8fCh0aGlzLk9hPSEwLHRoaXMuaGIoKSl9O18ub2Q9ZnVuY3Rpb24oYSxiKXtfLm5kKGEsXy5OYihfLmhhLGIpKX07Xy5uZD1mdW5jdGlvbihhLGIsYyl7YS5PYT92b2lkIDAhPT1jP2IuY2FsbChjKTpiKCk6KGEuS2F8fChhLkthPVtdKSxhLkthLnB1c2godm9pZCAwIT09Yz8oMCxfLnQpKGIsYyk6YikpfTtfLm1kLnByb3RvdHlwZS5oYj1mdW5jdGlvbigpe2lmKHRoaXMuS2EpZm9yKDt0aGlzLkthLmxlbmd0aDspdGhpcy5LYS5zaGlmdCgpKCl9O18ucGQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGEmJiJmdW5jdGlvbiI9PXR5cGVvZiBhLmlzRGlzcG9zZWQ/YS5pc0Rpc3Bvc2VkKCk6ITF9Owp2YXIgcmQsc2QsdGQ7Xy5xZD1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gYX19O3JkPWZ1bmN0aW9uKGEpe3JldHVybiBhfTtzZD1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oKXt0aHJvdyBFcnJvcihhKTt9fTt0ZD1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oKXt0aHJvdyBhO319OwpfLkYoXy5rYSxFcnJvcik7Xy5rYS5wcm90b3R5cGUubmFtZT0iQ3VzdG9tRXJyb3IiOwp2YXIgdWQ7Cl8ucWE9QXJyYXkucHJvdG90eXBlLmluZGV4T2Y/ZnVuY3Rpb24oYSxiKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmluZGV4T2YuY2FsbChhLGIsdm9pZCAwKX06ZnVuY3Rpb24oYSxiKXtpZigic3RyaW5nIj09PXR5cGVvZiBhKXJldHVybiJzdHJpbmciIT09dHlwZW9mIGJ8fDEhPWIubGVuZ3RoPy0xOmEuaW5kZXhPZihiLDApO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKWlmKGMgaW4gYSYmYVtjXT09PWIpcmV0dXJuIGM7cmV0dXJuLTF9OwpfLnZkPUFycmF5LnByb3RvdHlwZS5sYXN0SW5kZXhPZj9mdW5jdGlvbihhLGIpe3JldHVybiBBcnJheS5wcm90b3R5cGUubGFzdEluZGV4T2YuY2FsbChhLGIsYS5sZW5ndGgtMSl9OmZ1bmN0aW9uKGEsYil7dmFyIGM9YS5sZW5ndGgtMTswPmMmJihjPU1hdGgubWF4KDAsYS5sZW5ndGgrYykpO2lmKCJzdHJpbmciPT09dHlwZW9mIGEpcmV0dXJuInN0cmluZyIhPT10eXBlb2YgYnx8MSE9Yi5sZW5ndGg/LTE6YS5sYXN0SW5kZXhPZihiLGMpO2Zvcig7MDw9YztjLS0paWYoYyBpbiBhJiZhW2NdPT09YilyZXR1cm4gYztyZXR1cm4tMX07Xy5wPUFycmF5LnByb3RvdHlwZS5mb3JFYWNoP2Z1bmN0aW9uKGEsYixjKXtBcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKGEsYixjKX06ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD1hLmxlbmd0aCxlPSJzdHJpbmciPT09dHlwZW9mIGE/YS5zcGxpdCgiIik6YSxmPTA7ZjxkO2YrKylmIGluIGUmJmIuY2FsbChjLGVbZl0sZixhKX07Cl8ud2Q9QXJyYXkucHJvdG90eXBlLmZpbHRlcj9mdW5jdGlvbihhLGIsYyl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5maWx0ZXIuY2FsbChhLGIsYyl9OmZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9YS5sZW5ndGgsZT1bXSxmPTAsZz0ic3RyaW5nIj09PXR5cGVvZiBhP2Euc3BsaXQoIiIpOmEsaz0wO2s8ZDtrKyspaWYoayBpbiBnKXt2YXIgbD1nW2tdO2IuY2FsbChjLGwsayxhKSYmKGVbZisrXT1sKX1yZXR1cm4gZX07Xy5sYz1BcnJheS5wcm90b3R5cGUubWFwP2Z1bmN0aW9uKGEsYixjKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLm1hcC5jYWxsKGEsYixjKX06ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD1hLmxlbmd0aCxlPUFycmF5KGQpLGY9InN0cmluZyI9PT10eXBlb2YgYT9hLnNwbGl0KCIiKTphLGc9MDtnPGQ7ZysrKWcgaW4gZiYmKGVbZ109Yi5jYWxsKGMsZltnXSxnLGEpKTtyZXR1cm4gZX07Cl8ueGQ9QXJyYXkucHJvdG90eXBlLnJlZHVjZT9mdW5jdGlvbihhLGIsYyl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5yZWR1Y2UuY2FsbChhLGIsYyl9OmZ1bmN0aW9uKGEsYixjKXt2YXIgZD1jOygwLF8ucCkoYSxmdW5jdGlvbihlLGYpe2Q9Yi5jYWxsKHZvaWQgMCxkLGUsZixhKX0pO3JldHVybiBkfTtfLnlkPUFycmF5LnByb3RvdHlwZS5zb21lP2Z1bmN0aW9uKGEsYixjKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNvbWUuY2FsbChhLGIsYyl9OmZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9YS5sZW5ndGgsZT0ic3RyaW5nIj09PXR5cGVvZiBhP2Euc3BsaXQoIiIpOmEsZj0wO2Y8ZDtmKyspaWYoZiBpbiBlJiZiLmNhbGwoYyxlW2ZdLGYsYSkpcmV0dXJuITA7cmV0dXJuITF9OwpfLnpkPUFycmF5LnByb3RvdHlwZS5ldmVyeT9mdW5jdGlvbihhLGIsYyl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5ldmVyeS5jYWxsKGEsYixjKX06ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD1hLmxlbmd0aCxlPSJzdHJpbmciPT09dHlwZW9mIGE/YS5zcGxpdCgiIik6YSxmPTA7ZjxkO2YrKylpZihmIGluIGUmJiFiLmNhbGwoYyxlW2ZdLGYsYSkpcmV0dXJuITE7cmV0dXJuITB9Owp2YXIgQWQsQmQ9ZnVuY3Rpb24oKXtpZih2b2lkIDA9PT1BZCl7dmFyIGE9bnVsbCxiPV8ubi50cnVzdGVkVHlwZXM7aWYoYiYmYi5jcmVhdGVQb2xpY3kpe3RyeXthPWIuY3JlYXRlUG9saWN5KCJDb25zZW50VWkjaHRtbCIse2NyZWF0ZUhUTUw6bGQsY3JlYXRlU2NyaXB0OmxkLGNyZWF0ZVNjcmlwdFVSTDpsZH0pfWNhdGNoKGMpe18ubi5jb25zb2xlJiZfLm4uY29uc29sZS5lcnJvcihjLm1lc3NhZ2UpfUFkPWF9ZWxzZSBBZD1hfXJldHVybiBBZH07CnZhciBGZCxEZDtfLkVkPWZ1bmN0aW9uKGEsYil7dGhpcy5nPWE9PT1fLkNkJiZifHwiIjt0aGlzLmk9RGR9O18uRWQucHJvdG90eXBlLmZmPSEwO18uRWQucHJvdG90eXBlLldkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ307RmQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBfLkVkJiZhLmNvbnN0cnVjdG9yPT09Xy5FZCYmYS5pPT09RGQ/YS5nOiJ0eXBlX2Vycm9yOkNvbnN0In07RGQ9e307Xy5DZD17fTsKdmFyIEdkPXt9LEhkPWZ1bmN0aW9uKGEsYil7dGhpcy5nPWI9PT1HZD9hOiIiO3RoaXMuZmY9ITB9O0hkLnByb3RvdHlwZS5XZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcudG9TdHJpbmcoKX07Xy5JZD1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIEhkJiZhLmNvbnN0cnVjdG9yPT09SGQ/YS5nOiJ0eXBlX2Vycm9yOlNhZmVTY3JpcHQifTtfLkpkPWZ1bmN0aW9uKGEpe3ZhciBiPUJkKCk7YT1iP2IuY3JlYXRlU2NyaXB0KGEpOmE7cmV0dXJuIG5ldyBIZChhLEdkKX07SGQucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZy50b1N0cmluZygpfTsKdmFyIEtkLGdjO18uTGQ9ZnVuY3Rpb24oYSxiKXt0aGlzLmc9Yj09PUtkP2E6IiJ9O18uaD1fLkxkLnByb3RvdHlwZTtfLmguZmY9ITA7Xy5oLldkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZy50b1N0cmluZygpfTtfLmgueHE9ITA7Xy5oLlllPV8uY2EoMik7Xy5oLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZysiIn07Xy5NZD1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIF8uTGQmJmEuY29uc3RydWN0b3I9PT1fLkxkP2EuZzoidHlwZV9lcnJvcjpUcnVzdGVkUmVzb3VyY2VVcmwifTtLZD17fTtnYz1mdW5jdGlvbihhKXt2YXIgYj1CZCgpO2E9Yj9iLmNyZWF0ZVNjcmlwdFVSTChhKTphO3JldHVybiBuZXcgXy5MZChhLEtkKX07CnZhciBOZD1mdW5jdGlvbigpe18ubWQuY2FsbCh0aGlzKX07Xy5GKE5kLF8ubWQpO05kLnByb3RvdHlwZS5pbml0aWFsaXplPWZ1bmN0aW9uKCl7fTsKdmFyIE9kPVtdLFBkPVtdLFFkPSExLFJkPWZ1bmN0aW9uKGEpe09kW09kLmxlbmd0aF09YTtpZihRZClmb3IodmFyIGI9MDtiPFBkLmxlbmd0aDtiKyspYSgoMCxfLnQpKFBkW2JdLmksUGRbYl0pKX0sY2M9ZnVuY3Rpb24oYSl7UWQ9ITA7Zm9yKHZhciBiPSgwLF8udCkoYS5pLGEpLGM9MDtjPE9kLmxlbmd0aDtjKyspT2RbY10oYik7UGQucHVzaChhKX07CnZhciBTZD1mdW5jdGlvbihhLGIpe3RoaXMuZz1hO3RoaXMuaT1ifTtTZC5wcm90b3R5cGUuZXhlY3V0ZT1mdW5jdGlvbihhKXt0aGlzLmcmJih0aGlzLmcuY2FsbCh0aGlzLml8fG51bGwsYSksdGhpcy5nPXRoaXMuaT1udWxsKX07U2QucHJvdG90eXBlLmFib3J0PWZ1bmN0aW9uKCl7dGhpcy5pPXRoaXMuZz1udWxsfTtSZChmdW5jdGlvbihhKXtTZC5wcm90b3R5cGUuZXhlY3V0ZT1hKFNkLnByb3RvdHlwZS5leGVjdXRlKX0pOwp2YXIgVGQ9ZnVuY3Rpb24oYSl7aWYobnVsbD09PWEpcmV0dXJuIk5vIGVycm9yIHR5cGUgc3BlY2lmaWVkIjtzd2l0Y2goYSl7Y2FzZSAwOnJldHVybiJVbmF1dGhvcml6ZWQiO2Nhc2UgMTpyZXR1cm4iQ29uc2VjdXRpdmUgbG9hZCBmYWlsdXJlcyI7Y2FzZSAyOnJldHVybiJUaW1lZCBvdXQiO2Nhc2UgMzpyZXR1cm4iT3V0IG9mIGRhdGUgbW9kdWxlIGlkIjtjYXNlIDQ6cmV0dXJuIkluaXQgZXJyb3IiO2RlZmF1bHQ6cmV0dXJuIlVua25vd24gZmFpbHVyZSB0eXBlICIrYX19Owp2YXIgVWQ9ZnVuY3Rpb24oYSxiKXtfLm1kLmNhbGwodGhpcyk7dGhpcy5vPWE7dGhpcy5VPWI7dGhpcy52PVtdO3RoaXMuaj1bXTt0aGlzLmk9W119O18uRihVZCxfLm1kKTtVZC5wcm90b3R5cGUucz1OZDtVZC5wcm90b3R5cGUuZz1udWxsO1VkLnByb3RvdHlwZS5nZXRJZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLlV9O3ZhciBWZD1mdW5jdGlvbihhLGIpe2Euai5wdXNoKG5ldyBTZChiLHZvaWQgMCkpfSxMYT1mdW5jdGlvbihhLGIpe3ZhciBjPW5ldyBhLnM7Yy5pbml0aWFsaXplKGIoKSk7YS5nPWM7Yz0oYz0hIVdkKGEuaSxiKCkpKXx8ISFXZChhLnYsYigpKTtjfHwoYS5qLmxlbmd0aD0wKTtyZXR1cm4gY307VWQucHJvdG90eXBlLiRxPWZ1bmN0aW9uKGEpeyhhPVdkKHRoaXMuaixhKSkmJndpbmRvdy5zZXRUaW1lb3V0KHNkKCJNb2R1bGUgZXJyYmFjayBmYWlsdXJlczogIithKSwwKTt0aGlzLmkubGVuZ3RoPTA7dGhpcy52Lmxlbmd0aD0wfTsKdmFyIFdkPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdLGQ9MDtkPGEubGVuZ3RoO2QrKyl0cnl7YVtkXS5leGVjdXRlKGIpfWNhdGNoKGUpe18uZmEoZSksYy5wdXNoKGUpfWEubGVuZ3RoPTA7cmV0dXJuIGMubGVuZ3RoP2M6bnVsbH07VWQucHJvdG90eXBlLmhiPWZ1bmN0aW9uKCl7VWQuVmIuaGIuY2FsbCh0aGlzKTtfLmhhKHRoaXMuZyl9Owp2YXIgWGQ9ZnVuY3Rpb24oKXt0aGlzLkthPXRoaXMuJD1udWxsfTtfLmg9WGQucHJvdG90eXBlO18uaC5Cdz1mdW5jdGlvbigpe307Xy5oLkR3PWZ1bmN0aW9uKCl7fTtfLmguTG49ZnVuY3Rpb24oKXt9O18uaC5vdD1mdW5jdGlvbigpe3Rocm93IEVycm9yKCJxIik7fTtfLmguYXc9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiciIpO307Xy5oLnh1PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJH07Xy5oLkVyPWZ1bmN0aW9uKGEpe3RoaXMuJD1hfTtfLmguUGM9ZnVuY3Rpb24oKXtyZXR1cm4hMX07Xy5oLmd2PWZ1bmN0aW9uKCl7cmV0dXJuITF9O18uaC5WYz1mdW5jdGlvbigpe307Xy5oLkhzPWZ1bmN0aW9uKCl7fTsKXy5JYT1udWxsO18uSmE9bnVsbDsKdmFyIGJlLGNlLGRlLGVlLGZlLGdlLGhlLGplO18uWWQ9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gMD09YS5sYXN0SW5kZXhPZihiLDApfTtfLlpkPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5sZW5ndGgtYi5sZW5ndGg7cmV0dXJuIDA8PWMmJmEuaW5kZXhPZihiLGMpPT1jfTtfLiRkPWZ1bmN0aW9uKGEpe3JldHVybi9eW1xzXHhhMF0qJC8udGVzdChhKX07Xy5hZT1TdHJpbmcucHJvdG90eXBlLnRyaW0/ZnVuY3Rpb24oYSl7cmV0dXJuIGEudHJpbSgpfTpmdW5jdGlvbihhKXtyZXR1cm4vXltcc1x4YTBdKihbXHNcU10qPylbXHNceGEwXSokLy5leGVjKGEpWzFdfTsKXy5pZT1mdW5jdGlvbihhLGIpe2lmKGIpYT1hLnJlcGxhY2UoYmUsIiZhbXA7IikucmVwbGFjZShjZSwiJmx0OyIpLnJlcGxhY2UoZGUsIiZndDsiKS5yZXBsYWNlKGVlLCImcXVvdDsiKS5yZXBsYWNlKGZlLCImIzM5OyIpLnJlcGxhY2UoZ2UsIiYjMDsiKTtlbHNle2lmKCFoZS50ZXN0KGEpKXJldHVybiBhOy0xIT1hLmluZGV4T2YoIiYiKSYmKGE9YS5yZXBsYWNlKGJlLCImYW1wOyIpKTstMSE9YS5pbmRleE9mKCI8IikmJihhPWEucmVwbGFjZShjZSwiJmx0OyIpKTstMSE9YS5pbmRleE9mKCI+IikmJihhPWEucmVwbGFjZShkZSwiJmd0OyIpKTstMSE9YS5pbmRleE9mKCciJykmJihhPWEucmVwbGFjZShlZSwiJnF1b3Q7IikpOy0xIT1hLmluZGV4T2YoIiciKSYmKGE9YS5yZXBsYWNlKGZlLCImIzM5OyIpKTstMSE9YS5pbmRleE9mKCJceDAwIikmJihhPWEucmVwbGFjZShnZSwiJiMwOyIpKX1yZXR1cm4gYX07YmU9LyYvZztjZT0vPC9nO2RlPS8+L2c7ZWU9LyIvZztmZT0vJy9nOwpnZT0vXHgwMC9nO2hlPS9bXHgwMCY8PiInXS87Xy5rZT1mdW5jdGlvbihhLGIpe3ZhciBjPTA7YT0oMCxfLmFlKShTdHJpbmcoYSkpLnNwbGl0KCIuIik7Yj0oMCxfLmFlKShTdHJpbmcoYikpLnNwbGl0KCIuIik7Zm9yKHZhciBkPU1hdGgubWF4KGEubGVuZ3RoLGIubGVuZ3RoKSxlPTA7MD09YyYmZTxkO2UrKyl7dmFyIGY9YVtlXXx8IiIsZz1iW2VdfHwiIjtkb3tmPS8oXGQqKShcRCopKC4qKS8uZXhlYyhmKXx8WyIiLCIiLCIiLCIiXTtnPS8oXGQqKShcRCopKC4qKS8uZXhlYyhnKXx8WyIiLCIiLCIiLCIiXTtpZigwPT1mWzBdLmxlbmd0aCYmMD09Z1swXS5sZW5ndGgpYnJlYWs7Yz1qZSgwPT1mWzFdLmxlbmd0aD8wOnBhcnNlSW50KGZbMV0sMTApLDA9PWdbMV0ubGVuZ3RoPzA6cGFyc2VJbnQoZ1sxXSwxMCkpfHxqZSgwPT1mWzJdLmxlbmd0aCwwPT1nWzJdLmxlbmd0aCl8fGplKGZbMl0sZ1syXSk7Zj1mWzNdO2c9Z1szXX13aGlsZSgwPT1jKX1yZXR1cm4gY307CmplPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE8Yj8tMTphPmI/MTowfTsKdmFyIHBlO2E6e3ZhciBtZT1fLm4ubmF2aWdhdG9yO2lmKG1lKXt2YXIgbmU9bWUudXNlckFnZW50O2lmKG5lKXtfLmxlPW5lO2JyZWFrIGF9fV8ubGU9IiJ9Xy5vZT1mdW5jdGlvbihhKXtyZXR1cm4tMSE9Xy5sZS5pbmRleE9mKGEpfTtwZT1mdW5jdGlvbihhKXtmb3IodmFyIGI9Lyhcd1tcdyBdKylcLyhbXlxzXSspXHMqKD86XCgoLio/KVwpKT8vZyxjPVtdLGQ7ZD1iLmV4ZWMoYSk7KWMucHVzaChbZFsxXSxkWzJdLGRbM118fHZvaWQgMF0pO3JldHVybiBjfTsKdmFyIHplLEJlO18ucWU9ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZCBpbiBhKWIuY2FsbChjLGFbZF0sZCxhKX07Xy5yZT1mdW5jdGlvbihhLGIpe3ZhciBjPXt9LGQ7Zm9yKGQgaW4gYSliLmNhbGwodm9pZCAwLGFbZF0sZCxhKSYmKGNbZF09YVtkXSk7cmV0dXJuIGN9O18uc2U9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXt9LGU7Zm9yKGUgaW4gYSlkW2VdPWIuY2FsbChjLGFbZV0sZSxhKTtyZXR1cm4gZH07Xy50ZT1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPTAsZDtmb3IoZCBpbiBhKWJbYysrXT1hW2RdO3JldHVybiBifTtfLnVlPWZ1bmN0aW9uKGEpe3ZhciBiPVtdLGM9MCxkO2ZvcihkIGluIGEpYltjKytdPWQ7cmV0dXJuIGJ9O18udmU9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gbnVsbCE9PWEmJmIgaW4gYX07Xy53ZT1mdW5jdGlvbihhKXtmb3IodmFyIGIgaW4gYSlyZXR1cm4hMTtyZXR1cm4hMH07Xy54ZT1mdW5jdGlvbihhLGIpe2IgaW4gYSYmZGVsZXRlIGFbYl19OwpfLnllPWZ1bmN0aW9uKGEpe3ZhciBiPXt9LGM7Zm9yKGMgaW4gYSliW2NdPWFbY107cmV0dXJuIGJ9O3plPSJjb25zdHJ1Y3RvciBoYXNPd25Qcm9wZXJ0eSBpc1Byb3RvdHlwZU9mIHByb3BlcnR5SXNFbnVtZXJhYmxlIHRvTG9jYWxlU3RyaW5nIHRvU3RyaW5nIHZhbHVlT2YiLnNwbGl0KCIgIik7Xy5BZT1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYyxkLGU9MTtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXtkPWFyZ3VtZW50c1tlXTtmb3IoYyBpbiBkKWFbY109ZFtjXTtmb3IodmFyIGY9MDtmPHplLmxlbmd0aDtmKyspYz16ZVtmXSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZCxjKSYmKGFbY109ZFtjXSl9fTsKQmU9ZnVuY3Rpb24oYSl7dmFyIGI9YXJndW1lbnRzLmxlbmd0aDtpZigxPT1iJiZBcnJheS5pc0FycmF5KGFyZ3VtZW50c1swXSkpcmV0dXJuIEJlLmFwcGx5KG51bGwsYXJndW1lbnRzWzBdKTtmb3IodmFyIGM9e30sZD0wO2Q8YjtkKyspY1thcmd1bWVudHNbZF1dPSEwO3JldHVybiBjfTsKdmFyIFRiLENlLEVlLFJiLERlO1RiPWZ1bmN0aW9uKCl7cmV0dXJuIF8ub2UoIlRyaWRlbnQiKXx8Xy5vZSgiTVNJRSIpfTtfLlNiPWZ1bmN0aW9uKCl7cmV0dXJuIF8ub2UoIkZpcmVmb3giKXx8Xy5vZSgiRnhpT1MiKX07Xy5VYj1mdW5jdGlvbigpe3JldHVybiBfLm9lKCJTYWZhcmkiKSYmIShfLlFiKCl8fF8ub2UoIkNvYXN0Iil8fF8ub2UoIk9wZXJhIil8fF8ub2UoIkVkZ2UiKXx8Xy5vZSgiRWRnLyIpfHxfLm9lKCJPUFIiKXx8Xy5TYigpfHxfLm9lKCJTaWxrIil8fF8ub2UoIkFuZHJvaWQiKSl9O18uUWI9ZnVuY3Rpb24oKXtyZXR1cm4oXy5vZSgiQ2hyb21lIil8fF8ub2UoIkNyaU9TIikpJiYhXy5vZSgiRWRnZSIpfTtDZT1mdW5jdGlvbigpe3JldHVybiBfLm9lKCJBbmRyb2lkIikmJiEoXy5RYigpfHxfLlNiKCl8fF8ub2UoIk9wZXJhIil8fF8ub2UoIlNpbGsiKSl9OwpFZT1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoZSl7ZT1fLm9hKGUsZCk7cmV0dXJuIGNbZV18fCIifXZhciBiPV8ubGU7aWYoVGIoKSlyZXR1cm4gRGUoYik7Yj1wZShiKTt2YXIgYz17fTtfLnAoYixmdW5jdGlvbihlKXtjW2VbMF1dPWVbMV19KTt2YXIgZD1fLk5iKF8udmUsYyk7cmV0dXJuIF8ub2UoIk9wZXJhIik/YShbIlZlcnNpb24iLCJPcGVyYSJdKTpfLm9lKCJFZGdlIik/YShbIkVkZ2UiXSk6Xy5vZSgiRWRnLyIpP2EoWyJFZGciXSk6Xy5RYigpP2EoWyJDaHJvbWUiLCJDcmlPUyIsIkhlYWRsZXNzQ2hyb21lIl0pOihiPWJbMl0pJiZiWzFdfHwiIn07UmI9ZnVuY3Rpb24oYSl7cmV0dXJuIDA8PV8ua2UoRWUoKSxhKX07CkRlPWZ1bmN0aW9uKGEpe3ZhciBiPS9ydjogKihbXGRcLl0qKS8uZXhlYyhhKTtpZihiJiZiWzFdKXJldHVybiBiWzFdO2I9IiI7dmFyIGM9L01TSUUgKyhbXGRcLl0rKS8uZXhlYyhhKTtpZihjJiZjWzFdKWlmKGE9L1RyaWRlbnRcLyhcZC5cZCkvLmV4ZWMoYSksIjcuMCI9PWNbMV0paWYoYSYmYVsxXSlzd2l0Y2goYVsxXSl7Y2FzZSAiNC4wIjpiPSI4LjAiO2JyZWFrO2Nhc2UgIjUuMCI6Yj0iOS4wIjticmVhaztjYXNlICI2LjAiOmI9IjEwLjAiO2JyZWFrO2Nhc2UgIjcuMCI6Yj0iMTEuMCJ9ZWxzZSBiPSI3LjAiO2Vsc2UgYj1jWzFdO3JldHVybiBifTsKdmFyIEllLEplLExlLE1lLEZlLFFlO18uR2U9ZnVuY3Rpb24oYSxiKXt0aGlzLmc9Yj09PUZlP2E6IiJ9O18uaD1fLkdlLnByb3RvdHlwZTtfLmguZmY9ITA7Xy5oLldkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZy50b1N0cmluZygpfTtfLmgueHE9ITA7Xy5oLlllPV8uY2EoMSk7Xy5oLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZy50b1N0cmluZygpfTtfLkhlPWZ1bmN0aW9uKGEpe3JldHVybiBhIGluc3RhbmNlb2YgXy5HZSYmYS5jb25zdHJ1Y3Rvcj09PV8uR2U/YS5nOiJ0eXBlX2Vycm9yOlNhZmVVcmwifTtJZT0vXig/OmF1ZGlvXC8oPzozZ3BwMnwzZ3BwfGFhY3xMMTZ8bWlkaXxtcDN8bXA0fG1wZWd8b2dhfG9nZ3xvcHVzfHgtbTRhfHgtbWF0cm9za2F8eC13YXZ8d2F2fHdlYm0pfGZvbnRcL1x3K3xpbWFnZVwvKD86Ym1wfGdpZnxqcGVnfGpwZ3xwbmd8dGlmZnx3ZWJwfHgtaWNvbil8dmlkZW9cLyg/Om1wZWd8bXA0fG9nZ3x3ZWJtfHF1aWNrdGltZXx4LW1hdHJvc2thKSkoPzo7XHcrPSg/Olx3K3wiW1x3Oyw9IF0rIikpKiQvaTsKSmU9L15kYXRhOiguKik7YmFzZTY0LFthLXowLTkrXC9dKz0qJC9pO0xlPWZ1bmN0aW9uKGEpe2E9U3RyaW5nKGEpO2E9YS5yZXBsYWNlKC8oJTBBfCUwRCkvZywiIik7dmFyIGI9YS5tYXRjaChKZSk7cmV0dXJuIGImJkllLnRlc3QoYlsxXSk/Xy5LZShhKTpudWxsfTtNZT0vXig/Oig/Omh0dHBzP3xtYWlsdG98ZnRwKTp8W146Lz8jXSooPzpbLz8jXXwkKSkvaTtfLk5lPWZ1bmN0aW9uKGEpe2lmKGEgaW5zdGFuY2VvZiBfLkdlKXJldHVybiBhO2E9Im9iamVjdCI9PXR5cGVvZiBhJiZhLmZmP2EuV2QoKTpTdHJpbmcoYSk7cmV0dXJuIE1lLnRlc3QoYSk/Xy5LZShhKTpMZShhKX07Cl8uUGU9ZnVuY3Rpb24oYSxiKXtpZihhIGluc3RhbmNlb2YgXy5HZSlyZXR1cm4gYTthPSJvYmplY3QiPT10eXBlb2YgYSYmYS5mZj9hLldkKCk6U3RyaW5nKGEpO2lmKGImJi9eZGF0YTovaS50ZXN0KGEpJiYoYj1MZShhKXx8Xy5PZSxiLldkKCk9PWEpKXJldHVybiBiO01lLnRlc3QoYSl8fChhPSJhYm91dDppbnZhbGlkI3pDbG9zdXJleiIpO3JldHVybiBfLktlKGEpfTtGZT17fTtfLktlPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgXy5HZShhLEZlKX07Xy5PZT1fLktlKCJhYm91dDppbnZhbGlkI3pDbG9zdXJleiIpO1FlPV8uS2UoImFib3V0OmJsYW5rIik7CnZhciBSZTtfLlNlPWZ1bmN0aW9uKGEsYixjKXt0aGlzLmc9Yz09PVJlP2E6IiI7dGhpcy5pPWJ9O18uaD1fLlNlLnByb3RvdHlwZTtfLmgueHE9ITA7Xy5oLlllPV8uY2EoMCk7Xy5oLmZmPSEwO18uaC5XZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmcudG9TdHJpbmcoKX07Xy5oLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZy50b1N0cmluZygpfTtfLlRlPWZ1bmN0aW9uKGEpe3JldHVybiBhIGluc3RhbmNlb2YgXy5TZSYmYS5jb25zdHJ1Y3Rvcj09PV8uU2U/YS5nOiJ0eXBlX2Vycm9yOlNhZmVIdG1sIn07UmU9e307Xy5VZT1mdW5jdGlvbihhLGIpe3ZhciBjPUJkKCk7YT1jP2MuY3JlYXRlSFRNTChhKTphO3JldHVybiBuZXcgXy5TZShhLGIsUmUpfTtfLlZlPW5ldyBfLlNlKF8ubi50cnVzdGVkVHlwZXMmJl8ubi50cnVzdGVkVHlwZXMuZW1wdHlIVE1MfHwiIiwwLFJlKTtfLldlPV8uVWUoIjxicj4iLDApOwpfLlhlPWZ1bmN0aW9uKGEpe3ZhciBiPSExLGM7cmV0dXJuIGZ1bmN0aW9uKCl7Ynx8KGM9YSgpLGI9ITApO3JldHVybiBjfX0oZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxiPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2IuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IikpO2EuYXBwZW5kQ2hpbGQoYik7Yj1hLmZpcnN0Q2hpbGQuZmlyc3RDaGlsZDthLmlubmVySFRNTD1fLlRlKF8uVmUpO3JldHVybiFiLnBhcmVudEVsZW1lbnR9KTtfLlllPWZ1bmN0aW9uKGEsYil7Yj1iIGluc3RhbmNlb2YgXy5HZT9iOl8uUGUoYik7YS5ocmVmPV8uSGUoYil9O18uWmU9ZnVuY3Rpb24oYSxiKXtiPWIgaW5zdGFuY2VvZiBfLkdlP2I6Xy5QZShiLC9eZGF0YTppbWFnZVwvL2kudGVzdChiKSk7YS5zcmM9Xy5IZShiKX07Cl8uJGU9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5YYyhhLm93bmVyRG9jdW1lbnQmJmEub3duZXJEb2N1bWVudC5kZWZhdWx0Vmlldyk7YiYmYS5zZXRBdHRyaWJ1dGUoIm5vbmNlIixiKX07Xy5hZj1mdW5jdGlvbihhLGIpe2I9YiBpbnN0YW5jZW9mIF8uR2U/YjpfLlBlKGIpO2EuaHJlZj1fLkhlKGIpfTtfLmJmPWZ1bmN0aW9uKGEsYixjLGQpe2E9YSBpbnN0YW5jZW9mIF8uR2U/YTpfLlBlKGEpO2I9Ynx8Xy5uO2M9YyBpbnN0YW5jZW9mIF8uRWQ/RmQoYyk6Y3x8IiI7cmV0dXJuIHZvaWQgMCE9PWQ/Yi5vcGVuKF8uSGUoYSksYyxkLHZvaWQgMCk6Yi5vcGVuKF8uSGUoYSksYyl9OwpfLmNmPWZ1bmN0aW9uKGEpe3JldHVybiBkZWNvZGVVUklDb21wb25lbnQoYS5yZXBsYWNlKC9cKy9nLCIgIikpfTtfLmRmPWZ1bmN0aW9uKGEpe3JldHVybiBhPV8uaWUoYSx2b2lkIDApfTtfLmVmPVN0cmluZy5wcm90b3R5cGUucmVwZWF0P2Z1bmN0aW9uKGEsYil7cmV0dXJuIGEucmVwZWF0KGIpfTpmdW5jdGlvbihhLGIpe3JldHVybiBBcnJheShiKzEpLmpvaW4oYSl9O18uZmY9ZnVuY3Rpb24oYSl7cmV0dXJuIFN0cmluZyhhKS5yZXBsYWNlKC9cLShbYS16XSkvZyxmdW5jdGlvbihiLGMpe3JldHVybiBjLnRvVXBwZXJDYXNlKCl9KX07Xy5nZj1mdW5jdGlvbihhKXtyZXR1cm4gU3RyaW5nKGEpLnJlcGxhY2UoLyhbQS1aXSkvZywiLSQxIikudG9Mb3dlckNhc2UoKX07Xy5oZj1mdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBsYWNlKC8oXnxbXHNdKykoW2Etel0pL2csZnVuY3Rpb24oYixjLGQpe3JldHVybiBjK2QudG9VcHBlckNhc2UoKX0pfTsKXy5qZj1mdW5jdGlvbihhLGIsYyl7YT1hLnNwbGl0KGIpO2Zvcih2YXIgZD1bXTswPGMmJmEubGVuZ3RoOylkLnB1c2goYS5zaGlmdCgpKSxjLS07YS5sZW5ndGgmJmQucHVzaChhLmpvaW4oYikpO3JldHVybiBkfTsKdmFyIGtmO2tmPWZ1bmN0aW9uKCl7cmV0dXJuIF8ub2UoImlQaG9uZSIpJiYhXy5vZSgiaVBvZCIpJiYhXy5vZSgiaVBhZCIpfTtfLmxmPWZ1bmN0aW9uKCl7cmV0dXJuIGtmKCl8fF8ub2UoImlQYWQiKXx8Xy5vZSgiaVBvZCIpfTsKXy5tZj1mdW5jdGlvbigpe3ZhciBhPV8ubGUsYj0iIjtfLm9lKCJXaW5kb3dzIik/KGI9L1dpbmRvd3MgKD86TlR8UGhvbmUpIChbMC05Ll0rKS8sYj0oYT1iLmV4ZWMoYSkpP2FbMV06IjAuMCIpOl8ubGYoKT8oYj0vKD86aVBob25lfGlQb2R8aVBhZHxDUFUpXHMrT1NccysoXFMrKS8sYj0oYT1iLmV4ZWMoYSkpJiZhWzFdLnJlcGxhY2UoL18vZywiLiIpKTpfLm9lKCJNYWNpbnRvc2giKT8oYj0vTWFjIE9TIFggKFswLTlfLl0rKS8sYj0oYT1iLmV4ZWMoYSkpP2FbMV0ucmVwbGFjZSgvXy9nLCIuIik6IjEwIik6LTEhPV8ubGUudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJrYWlvcyIpPyhiPS8oPzpLYWlPUylcLyhcUyspL2ksYj0oYT1iLmV4ZWMoYSkpJiZhWzFdKTpfLm9lKCJBbmRyb2lkIik/KGI9L0FuZHJvaWRccysoW15cKTtdKykoXCl8OykvLGI9KGE9Yi5leGVjKGEpKSYmYVsxXSk6Xy5vZSgiQ3JPUyIpJiYoYj0vKD86Q3JPU1xzKyg/Omk2ODZ8eDg2XzY0KVxzKyhbMC05Ll0rKSkvLApiPShhPWIuZXhlYyhhKSkmJmFbMV0pO3JldHVybiBifHwiIn07Cl8ubmY9ZnVuY3Rpb24oYSl7Xy5uZlsiICJdKGEpO3JldHVybiBhfTtfLm5mWyIgIl09Xy5hZDtfLm9mPWZ1bmN0aW9uKGEsYixjLGQpe2Q9ZD9kKGIpOmI7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChhLGQpP2FbZF06YVtkXT1jKGIpfTsKdmFyIHBmLEJmLENmLElmLEpmO3BmPV8ub2UoIk9wZXJhIik7Xy5WYj1UYigpO18ucWY9Xy5vZSgiRWRnZSIpO18ucmY9Xy5xZnx8Xy5WYjtfLnNmPV8ub2UoIkdlY2tvIikmJiEoLTEhPV8ubGUudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSYmIV8ub2UoIkVkZ2UiKSkmJiEoXy5vZSgiVHJpZGVudCIpfHxfLm9lKCJNU0lFIikpJiYhXy5vZSgiRWRnZSIpO18udGY9LTEhPV8ubGUudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKSYmIV8ub2UoIkVkZ2UiKTtfLnVmPV8ub2UoIk1hY2ludG9zaCIpO18udmY9Xy5vZSgiV2luZG93cyIpO18ud2Y9Xy5vZSgiQW5kcm9pZCIpO18ueGY9a2YoKTtfLnlmPV8ub2UoImlQYWQiKTtfLnpmPV8ub2UoImlQb2QiKTtfLkFmPV8ubGYoKTtCZj1mdW5jdGlvbigpe3ZhciBhPV8ubi5kb2N1bWVudDtyZXR1cm4gYT9hLmRvY3VtZW50TW9kZTp2b2lkIDB9OwphOnt2YXIgRGY9IiIsRWY9ZnVuY3Rpb24oKXt2YXIgYT1fLmxlO2lmKF8uc2YpcmV0dXJuL3J2OihbXlwpO10rKShcKXw7KS8uZXhlYyhhKTtpZihfLnFmKXJldHVybi9FZGdlXC8oW1xkXC5dKykvLmV4ZWMoYSk7aWYoXy5WYilyZXR1cm4vXGIoPzpNU0lFfHJ2KVs6IF0oW15cKTtdKykoXCl8OykvLmV4ZWMoYSk7aWYoXy50ZilyZXR1cm4vV2ViS2l0XC8oXFMrKS8uZXhlYyhhKTtpZihwZilyZXR1cm4vKD86VmVyc2lvbilbIFwvXT8oXFMrKS8uZXhlYyhhKX0oKTtFZiYmKERmPUVmP0VmWzFdOiIiKTtpZihfLlZiKXt2YXIgRmY9QmYoKTtpZihudWxsIT1GZiYmRmY+cGFyc2VGbG9hdChEZikpe0NmPVN0cmluZyhGZik7YnJlYWsgYX19Q2Y9RGZ9Xy5HZj1DZjtJZj17fTtfLldiPWZ1bmN0aW9uKGEpe3JldHVybiBfLm9mKElmLGEsZnVuY3Rpb24oKXtyZXR1cm4gMDw9Xy5rZShfLkdmLGEpfSl9OwppZihfLm4uZG9jdW1lbnQmJl8uVmIpe3ZhciBLZj1CZigpO0pmPUtmP0tmOnBhcnNlSW50KF8uR2YsMTApfHx2b2lkIDB9ZWxzZSBKZj12b2lkIDA7Xy5MZj1KZjsKdmFyIE9iPWZ1bmN0aW9uKGEsYixjKXtjPWN8fF8ubjt2YXIgZD1jLm9uZXJyb3IsZT0hIWI7Xy50ZiYmIV8uV2IoIjUzNS4zIikmJihlPSFlKTtjLm9uZXJyb3I9ZnVuY3Rpb24oZixnLGssbCxtKXtkJiZkKGYsZyxrLGwsbSk7YSh7bWVzc2FnZTpmLGZpbGVOYW1lOmcsbGluZTprLGxpbmVOdW1iZXI6ayx2SjpsLGVycm9yOm19KTtyZXR1cm4gZX19LE9mPWZ1bmN0aW9uKGEpe3ZhciBiPVpjKCJ3aW5kb3cubG9jYXRpb24uaHJlZiIpO251bGw9PWEmJihhPSdVbmtub3duIEVycm9yIG9mIHR5cGUgIm51bGwvdW5kZWZpbmVkIicpO2lmKCJzdHJpbmciPT09dHlwZW9mIGEpcmV0dXJue21lc3NhZ2U6YSxuYW1lOiJVbmtub3duIGVycm9yIixsaW5lTnVtYmVyOiJOb3QgYXZhaWxhYmxlIixmaWxlTmFtZTpiLHN0YWNrOiJOb3QgYXZhaWxhYmxlIn07dmFyIGM9ITE7dHJ5e3ZhciBkPWEubGluZU51bWJlcnx8YS5saW5lfHwiTm90IGF2YWlsYWJsZSJ9Y2F0Y2goZil7ZD0iTm90IGF2YWlsYWJsZSIsCmM9ITB9dHJ5e3ZhciBlPWEuZmlsZU5hbWV8fGEuZmlsZW5hbWV8fGEuc291cmNlVVJMfHxfLm4uJGdvb2dEZWJ1Z0ZuYW1lfHxifWNhdGNoKGYpe2U9Ik5vdCBhdmFpbGFibGUiLGM9ITB9Yj1NZihhKTtpZighKCFjJiZhLmxpbmVOdW1iZXImJmEuZmlsZU5hbWUmJmEuc3RhY2smJmEubWVzc2FnZSYmYS5uYW1lKSlyZXR1cm4gYz1hLm1lc3NhZ2UsbnVsbD09YyYmKGM9YS5jb25zdHJ1Y3RvciYmYS5jb25zdHJ1Y3RvciBpbnN0YW5jZW9mIEZ1bmN0aW9uPydVbmtub3duIEVycm9yIG9mIHR5cGUgIicrKGEuY29uc3RydWN0b3IubmFtZT9hLmNvbnN0cnVjdG9yLm5hbWU6TmYoYS5jb25zdHJ1Y3RvcikpKyciJzoiVW5rbm93biBFcnJvciBvZiB1bmtub3duIHR5cGUiLCJmdW5jdGlvbiI9PT10eXBlb2YgYS50b1N0cmluZyYmT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyE9PWEudG9TdHJpbmcmJihjKz0iOiAiK2EudG9TdHJpbmcoKSkpLHttZXNzYWdlOmMsbmFtZTphLm5hbWV8fCJVbmtub3duRXJyb3IiLApsaW5lTnVtYmVyOmQsZmlsZU5hbWU6ZSxzdGFjazpifHwiTm90IGF2YWlsYWJsZSJ9O2Euc3RhY2s9YjtyZXR1cm57bWVzc2FnZTphLm1lc3NhZ2UsbmFtZTphLm5hbWUsbGluZU51bWJlcjphLmxpbmVOdW1iZXIsZmlsZU5hbWU6YS5maWxlTmFtZSxzdGFjazphLnN0YWNrfX0sTWY9ZnVuY3Rpb24oYSxiKXtifHwoYj17fSk7YltQZihhKV09ITA7dmFyIGM9YS5zdGFja3x8IiI7KGE9YS5DdCkmJiFiW1BmKGEpXSYmKGMrPSJcbkNhdXNlZCBieTogIixhLnN0YWNrJiYwPT1hLnN0YWNrLmluZGV4T2YoYS50b1N0cmluZygpKXx8KGMrPSJzdHJpbmciPT09dHlwZW9mIGE/YTphLm1lc3NhZ2UrIlxuIiksYys9TWYoYSxiKSk7cmV0dXJuIGN9LFBmPWZ1bmN0aW9uKGEpe3ZhciBiPSIiOyJmdW5jdGlvbiI9PT10eXBlb2YgYS50b1N0cmluZyYmKGI9IiIrYSk7cmV0dXJuIGIrYS5zdGFja30sUmY9ZnVuY3Rpb24oYSl7dmFyIGI9UWYoUmYpO2lmKGIpcmV0dXJuIGI7Yj1bXTtmb3IodmFyIGM9CmFyZ3VtZW50cy5jYWxsZWUuY2FsbGVyLGQ9MDtjJiYoIWF8fGQ8YSk7KXtiLnB1c2goTmYoYykpO2IucHVzaCgiKClcbiIpO3RyeXtjPWMuY2FsbGVyfWNhdGNoKGUpe2IucHVzaCgiW2V4Y2VwdGlvbiB0cnlpbmcgdG8gZ2V0IGNhbGxlcl1cbiIpO2JyZWFrfWQrKztpZig1MDw9ZCl7Yi5wdXNoKCJbLi4ubG9uZyBzdGFjay4uLl0iKTticmVha319YSYmZD49YT9iLnB1c2goIlsuLi5yZWFjaGVkIG1heCBkZXB0aCBsaW1pdC4uLl0iKTpiLnB1c2goIltlbmRdIik7cmV0dXJuIGIuam9pbigiIil9LFFmPWZ1bmN0aW9uKGEpe3ZhciBiPUVycm9yKCk7aWYoRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UpcmV0dXJuIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKGIsYSksU3RyaW5nKGIuc3RhY2spO3RyeXt0aHJvdyBiO31jYXRjaChjKXtiPWN9cmV0dXJuKGE9Yi5zdGFjayk/U3RyaW5nKGEpOm51bGx9LFNmPWZ1bmN0aW9uKGEpe3ZhciBiOyhiPVFmKGF8fFNmKSl8fChiPVRmKGF8fGFyZ3VtZW50cy5jYWxsZWUuY2FsbGVyLApbXSkpO3JldHVybiBifSxUZj1mdW5jdGlvbihhLGIpe3ZhciBjPVtdO2lmKF8ucmEoYixhKSljLnB1c2goIlsuLi5jaXJjdWxhciByZWZlcmVuY2UuLi5dIik7ZWxzZSBpZihhJiY1MD5iLmxlbmd0aCl7Yy5wdXNoKE5mKGEpKyIoIik7Zm9yKHZhciBkPWEuYXJndW1lbnRzLGU9MDtkJiZlPGQubGVuZ3RoO2UrKyl7MDxlJiZjLnB1c2goIiwgIik7dmFyIGY9ZFtlXTtzd2l0Y2godHlwZW9mIGYpe2Nhc2UgIm9iamVjdCI6Zj1mPyJvYmplY3QiOiJudWxsIjticmVhaztjYXNlICJzdHJpbmciOmJyZWFrO2Nhc2UgIm51bWJlciI6Zj1TdHJpbmcoZik7YnJlYWs7Y2FzZSAiYm9vbGVhbiI6Zj1mPyJ0cnVlIjoiZmFsc2UiO2JyZWFrO2Nhc2UgImZ1bmN0aW9uIjpmPShmPU5mKGYpKT9mOiJbZm5dIjticmVhaztkZWZhdWx0OmY9dHlwZW9mIGZ9NDA8Zi5sZW5ndGgmJihmPWYuc3Vic3RyKDAsNDApKyIuLi4iKTtjLnB1c2goZil9Yi5wdXNoKGEpO2MucHVzaCgiKVxuIik7dHJ5e2MucHVzaChUZihhLmNhbGxlciwKYikpfWNhdGNoKGcpe2MucHVzaCgiW2V4Y2VwdGlvbiB0cnlpbmcgdG8gZ2V0IGNhbGxlcl1cbiIpfX1lbHNlIGE/Yy5wdXNoKCJbLi4ubG9uZyBzdGFjay4uLl0iKTpjLnB1c2goIltlbmRdIik7cmV0dXJuIGMuam9pbigiIil9LE5mPWZ1bmN0aW9uKGEpe2lmKFVmW2FdKXJldHVybiBVZlthXTthPVN0cmluZyhhKTtpZighVWZbYV0pe3ZhciBiPS9mdW5jdGlvblxzKyhbXlwoXSspL20uZXhlYyhhKTtVZlthXT1iP2JbMV06IltBbm9ueW1vdXNdIn1yZXR1cm4gVWZbYV19LFVmPXt9Owp2YXIgVmY9ZnVuY3Rpb24oYSxiKXt0aGlzLmo9YTt0aGlzLm89Yjt0aGlzLmk9MDt0aGlzLmc9bnVsbH07VmYucHJvdG90eXBlLmdldD1mdW5jdGlvbigpe2lmKDA8dGhpcy5pKXt0aGlzLmktLTt2YXIgYT10aGlzLmc7dGhpcy5nPWEubmV4dDthLm5leHQ9bnVsbH1lbHNlIGE9dGhpcy5qKCk7cmV0dXJuIGF9O3ZhciBXZj1mdW5jdGlvbihhLGIpe2EubyhiKTsxMDA+YS5pJiYoYS5pKyssYi5uZXh0PWEuZyxhLmc9Yil9Owp2YXIgWWYsJGY7dHJ5eyhuZXcgc2VsZi5PZmZzY3JlZW5DYW52YXMoMCwwKSkuZ2V0Q29udGV4dCgiMmQiKX1jYXRjaChhKXt9Xy5YZj0hXy5WYnx8OTw9TnVtYmVyKF8uTGYpO1lmPSFfLnNmJiYhXy5WYnx8Xy5WYiYmOTw9TnVtYmVyKF8uTGYpfHxfLnNmJiZfLldiKCIxLjkuMSIpO18uWmY9Xy5WYiYmIV8uV2IoIjkiKTskZj1fLlZifHxwZnx8Xy50ZjsKXy5hZz1mdW5jdGlvbihhLGIpe3RoaXMueD12b2lkIDAhPT1hP2E6MDt0aGlzLnk9dm9pZCAwIT09Yj9iOjB9O18uYWcucHJvdG90eXBlLkVjPWZ1bmN0aW9uKGEpe3JldHVybiBhIGluc3RhbmNlb2YgXy5hZyYmKHRoaXM9PWE/ITA6dGhpcyYmYT90aGlzLng9PWEueCYmdGhpcy55PT1hLnk6ITEpfTtfLmFnLnByb3RvdHlwZS5jZWlsPWZ1bmN0aW9uKCl7dGhpcy54PU1hdGguY2VpbCh0aGlzLngpO3RoaXMueT1NYXRoLmNlaWwodGhpcy55KTtyZXR1cm4gdGhpc307Xy5hZy5wcm90b3R5cGUuZmxvb3I9ZnVuY3Rpb24oKXt0aGlzLng9TWF0aC5mbG9vcih0aGlzLngpO3RoaXMueT1NYXRoLmZsb29yKHRoaXMueSk7cmV0dXJuIHRoaXN9O18uYWcucHJvdG90eXBlLnJvdW5kPWZ1bmN0aW9uKCl7dGhpcy54PU1hdGgucm91bmQodGhpcy54KTt0aGlzLnk9TWF0aC5yb3VuZCh0aGlzLnkpO3JldHVybiB0aGlzfTsKXy5iZz1mdW5jdGlvbihhLGIpe3RoaXMud2lkdGg9YTt0aGlzLmhlaWdodD1ifTtfLmg9Xy5iZy5wcm90b3R5cGU7Xy5oLmFzcGVjdFJhdGlvPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMud2lkdGgvdGhpcy5oZWlnaHR9O18uaC56Yz1mdW5jdGlvbigpe3JldHVybiEodGhpcy53aWR0aCp0aGlzLmhlaWdodCl9O18uaC5jZWlsPWZ1bmN0aW9uKCl7dGhpcy53aWR0aD1NYXRoLmNlaWwodGhpcy53aWR0aCk7dGhpcy5oZWlnaHQ9TWF0aC5jZWlsKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307Xy5oLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy53aWR0aD1NYXRoLmZsb29yKHRoaXMud2lkdGgpO3RoaXMuaGVpZ2h0PU1hdGguZmxvb3IodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTtfLmgucm91bmQ9ZnVuY3Rpb24oKXt0aGlzLndpZHRoPU1hdGgucm91bmQodGhpcy53aWR0aCk7dGhpcy5oZWlnaHQ9TWF0aC5yb3VuZCh0aGlzLmhlaWdodCk7cmV0dXJuIHRoaXN9Owp2YXIgcmc7Xy5lZz1mdW5jdGlvbihhKXtyZXR1cm4gYT9uZXcgXy5jZyhfLmRnKGEpKTp1ZHx8KHVkPW5ldyBfLmNnKX07Xy5nZz1mdW5jdGlvbihhLGIpe3ZhciBjPWJ8fGRvY3VtZW50O2lmKGMuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSlhPWMuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShhKVswXTtlbHNle2M9ZG9jdW1lbnQ7dmFyIGQ9Ynx8YzthPWQucXVlcnlTZWxlY3RvckFsbCYmZC5xdWVyeVNlbGVjdG9yJiZhP2QucXVlcnlTZWxlY3RvcihhPyIuIithOiIiKTpfLmZnKGMsIioiLGEsYilbMF18fG51bGx9cmV0dXJuIGF8fG51bGx9OwpfLmZnPWZ1bmN0aW9uKGEsYixjLGQpe2E9ZHx8YTtiPWImJiIqIiE9Yj9TdHJpbmcoYikudG9VcHBlckNhc2UoKToiIjtpZihhLnF1ZXJ5U2VsZWN0b3JBbGwmJmEucXVlcnlTZWxlY3RvciYmKGJ8fGMpKXJldHVybiBhLnF1ZXJ5U2VsZWN0b3JBbGwoYisoYz8iLiIrYzoiIikpO2lmKGMmJmEuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSl7YT1hLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoYyk7aWYoYil7ZD17fTtmb3IodmFyIGU9MCxmPTAsZztnPWFbZl07ZisrKWI9PWcubm9kZU5hbWUmJihkW2UrK109Zyk7ZC5sZW5ndGg9ZTtyZXR1cm4gZH1yZXR1cm4gYX1hPWEuZ2V0RWxlbWVudHNCeVRhZ05hbWUoYnx8IioiKTtpZihjKXtkPXt9O2ZvcihmPWU9MDtnPWFbZl07ZisrKWI9Zy5jbGFzc05hbWUsImZ1bmN0aW9uIj09dHlwZW9mIGIuc3BsaXQmJl8ucmEoYi5zcGxpdCgvXHMrLyksYykmJihkW2UrK109Zyk7ZC5sZW5ndGg9ZTtyZXR1cm4gZH1yZXR1cm4gYX07Cl8uaWc9ZnVuY3Rpb24oYSl7YT0oYXx8d2luZG93KS5kb2N1bWVudDthPV8uaGcoYSk/YS5kb2N1bWVudEVsZW1lbnQ6YS5ib2R5O3JldHVybiBuZXcgXy5iZyhhLmNsaWVudFdpZHRoLGEuY2xpZW50SGVpZ2h0KX07Xy5rZz1mdW5jdGlvbihhKXt2YXIgYj1fLmpnKGEpO2E9YS5wYXJlbnRXaW5kb3d8fGEuZGVmYXVsdFZpZXc7cmV0dXJuIF8uVmImJl8uV2IoIjEwIikmJmEucGFnZVlPZmZzZXQhPWIuc2Nyb2xsVG9wP25ldyBfLmFnKGIuc2Nyb2xsTGVmdCxiLnNjcm9sbFRvcCk6bmV3IF8uYWcoYS5wYWdlWE9mZnNldHx8Yi5zY3JvbGxMZWZ0LGEucGFnZVlPZmZzZXR8fGIuc2Nyb2xsVG9wKX07Xy5qZz1mdW5jdGlvbihhKXtyZXR1cm4gYS5zY3JvbGxpbmdFbGVtZW50P2Euc2Nyb2xsaW5nRWxlbWVudDohXy50ZiYmXy5oZyhhKT9hLmRvY3VtZW50RWxlbWVudDphLmJvZHl8fGEuZG9jdW1lbnRFbGVtZW50fTsKXy5sZz1mdW5jdGlvbihhKXtyZXR1cm4gYT9hLnBhcmVudFdpbmRvd3x8YS5kZWZhdWx0Vmlldzp3aW5kb3d9O18ubWc9ZnVuY3Rpb24oYSxiLGMsZCl7ZnVuY3Rpb24gZShrKXtrJiZiLmFwcGVuZENoaWxkKCJzdHJpbmciPT09dHlwZW9mIGs/YS5jcmVhdGVUZXh0Tm9kZShrKTprKX1mb3IoO2Q8Yy5sZW5ndGg7ZCsrKXt2YXIgZj1jW2RdO2lmKCFfLmlhKGYpfHxfLkJhKGYpJiYwPGYubm9kZVR5cGUpZShmKTtlbHNle2E6e2lmKGYmJiJudW1iZXIiPT10eXBlb2YgZi5sZW5ndGgpe2lmKF8uQmEoZikpe3ZhciBnPSJmdW5jdGlvbiI9PXR5cGVvZiBmLml0ZW18fCJzdHJpbmciPT10eXBlb2YgZi5pdGVtO2JyZWFrIGF9aWYoImZ1bmN0aW9uIj09PXR5cGVvZiBmKXtnPSJmdW5jdGlvbiI9PXR5cGVvZiBmLml0ZW07YnJlYWsgYX19Zz0hMX1fLnAoZz9fLnhhKGYpOmYsZSl9fX07Cl8ubmc9ZnVuY3Rpb24oYSxiKXtiPVN0cmluZyhiKTsiYXBwbGljYXRpb24veGh0bWwreG1sIj09PWEuY29udGVudFR5cGUmJihiPWIudG9Mb3dlckNhc2UoKSk7cmV0dXJuIGEuY3JlYXRlRWxlbWVudChiKX07Xy5oZz1mdW5jdGlvbihhKXtyZXR1cm4iQ1NTMUNvbXBhdCI9PWEuY29tcGF0TW9kZX07Xy5vZz1mdW5jdGlvbihhKXtyZXR1cm4gYSYmYS5wYXJlbnROb2RlP2EucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChhKTpudWxsfTtfLnBnPWZ1bmN0aW9uKGEpe3JldHVybiBZZiYmdm9pZCAwIT1hLmNoaWxkcmVuP2EuY2hpbGRyZW46Xy53ZChhLmNoaWxkTm9kZXMsZnVuY3Rpb24oYil7cmV0dXJuIDE9PWIubm9kZVR5cGV9KX07cmc9ZnVuY3Rpb24oYSl7cmV0dXJuIHZvaWQgMCE9PWEubmV4dEVsZW1lbnRTaWJsaW5nP2EubmV4dEVsZW1lbnRTaWJsaW5nOl8ucWcoYS5uZXh0U2libGluZywhMCl9OwpfLnFnPWZ1bmN0aW9uKGEsYil7Zm9yKDthJiYxIT1hLm5vZGVUeXBlOylhPWI/YS5uZXh0U2libGluZzphLnByZXZpb3VzU2libGluZztyZXR1cm4gYX07Xy5zZz1mdW5jdGlvbihhKXtyZXR1cm4gXy5CYShhKSYmMT09YS5ub2RlVHlwZX07Xy5TYT1mdW5jdGlvbihhKXt2YXIgYjtpZigkZiYmIShfLlZiJiZfLldiKCI5IikmJiFfLldiKCIxMCIpJiZfLm4uU1ZHRWxlbWVudCYmYSBpbnN0YW5jZW9mIF8ubi5TVkdFbGVtZW50KSYmKGI9YS5wYXJlbnRFbGVtZW50KSlyZXR1cm4gYjtiPWEucGFyZW50Tm9kZTtyZXR1cm4gXy5zZyhiKT9iOm51bGx9OwpfLnZjPWZ1bmN0aW9uKGEsYil7aWYoIWF8fCFiKXJldHVybiExO2lmKGEuY29udGFpbnMmJjE9PWIubm9kZVR5cGUpcmV0dXJuIGE9PWJ8fGEuY29udGFpbnMoYik7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBhLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKXJldHVybiBhPT1ifHwhIShhLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKGIpJjE2KTtmb3IoO2ImJmEhPWI7KWI9Yi5wYXJlbnROb2RlO3JldHVybiBiPT1hfTtfLmRnPWZ1bmN0aW9uKGEpe3JldHVybiA5PT1hLm5vZGVUeXBlP2E6YS5vd25lckRvY3VtZW50fHxhLmRvY3VtZW50fTsKXy51Zz1mdW5jdGlvbihhLGIsYyxkKXtpZighYiYmIWMpcmV0dXJuIG51bGw7dmFyIGU9Yj9TdHJpbmcoYikudG9VcHBlckNhc2UoKTpudWxsO3JldHVybiBfLnRnKGEsZnVuY3Rpb24oZil7cmV0dXJuKCFlfHxmLm5vZGVOYW1lPT1lKSYmKCFjfHwic3RyaW5nIj09PXR5cGVvZiBmLmNsYXNzTmFtZSYmXy5yYShmLmNsYXNzTmFtZS5zcGxpdCgvXHMrLyksYykpfSwhMCxkKX07Xy52Zz1mdW5jdGlvbihhLGIpe3JldHVybiBfLnVnKGEsbnVsbCxiLHZvaWQgMCl9O18udGc9ZnVuY3Rpb24oYSxiLGMsZCl7YSYmIWMmJihhPWEucGFyZW50Tm9kZSk7Zm9yKGM9MDthJiYobnVsbD09ZHx8Yzw9ZCk7KXtpZihiKGEpKXJldHVybiBhO2E9YS5wYXJlbnROb2RlO2MrK31yZXR1cm4gbnVsbH07Xy5jZz1mdW5jdGlvbihhKXt0aGlzLmc9YXx8Xy5uLmRvY3VtZW50fHxkb2N1bWVudH07Xy5oPV8uY2cucHJvdG90eXBlO18uaC5aYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmd9O18uaC51YT1fLmNhKDMpOwpfLmguZ2V0RWxlbWVudHNCeVRhZ05hbWU9ZnVuY3Rpb24oYSxiKXtyZXR1cm4oYnx8dGhpcy5nKS5nZXRFbGVtZW50c0J5VGFnTmFtZShTdHJpbmcoYSkpfTtfLmguRmk9Xy5jYSg0KTtfLmguY3JlYXRlRWxlbWVudD1mdW5jdGlvbihhKXtyZXR1cm4gXy5uZyh0aGlzLmcsYSl9O18ud2c9ZnVuY3Rpb24oYSl7YT1hLmc7cmV0dXJuIGEucGFyZW50V2luZG93fHxhLmRlZmF1bHRWaWV3fTtfLmg9Xy5jZy5wcm90b3R5cGU7Xy5oLmFwcGVuZENoaWxkPWZ1bmN0aW9uKGEsYil7YS5hcHBlbmRDaGlsZChiKX07Xy5oLmFwcGVuZD1mdW5jdGlvbihhLGIpe18ubWcoXy5kZyhhKSxhLGFyZ3VtZW50cywxKX07Xy5oLmNhbkhhdmVDaGlsZHJlbj1mdW5jdGlvbihhKXtpZigxIT1hLm5vZGVUeXBlKXJldHVybiExO3N3aXRjaChhLnRhZ05hbWUpe2Nhc2UgIkFQUExFVCI6Y2FzZSAiQVJFQSI6Y2FzZSAiQkFTRSI6Y2FzZSAiQlIiOmNhc2UgIkNPTCI6Y2FzZSAiQ09NTUFORCI6Y2FzZSAiRU1CRUQiOmNhc2UgIkZSQU1FIjpjYXNlICJIUiI6Y2FzZSAiSU1HIjpjYXNlICJJTlBVVCI6Y2FzZSAiSUZSQU1FIjpjYXNlICJJU0lOREVYIjpjYXNlICJLRVlHRU4iOmNhc2UgIkxJTksiOmNhc2UgIk5PRlJBTUVTIjpjYXNlICJOT1NDUklQVCI6Y2FzZSAiTUVUQSI6Y2FzZSAiT0JKRUNUIjpjYXNlICJQQVJBTSI6Y2FzZSAiU0NSSVBUIjpjYXNlICJTT1VSQ0UiOmNhc2UgIlNUWUxFIjpjYXNlICJUUkFDSyI6Y2FzZSAiV0JSIjpyZXR1cm4hMX1yZXR1cm4hMH07Cl8uaC5OeD1fLm9nO18uaC5jb250YWlucz1fLnZjOwp2YXIgeWcsemcseGc7Xy5BZz1mdW5jdGlvbihhKXthPXhnKGEpOyJmdW5jdGlvbiIhPT10eXBlb2YgXy5uLnNldEltbWVkaWF0ZXx8Xy5uLldpbmRvdyYmXy5uLldpbmRvdy5wcm90b3R5cGUmJiFfLm9lKCJFZGdlIikmJl8ubi5XaW5kb3cucHJvdG90eXBlLnNldEltbWVkaWF0ZT09Xy5uLnNldEltbWVkaWF0ZT8oeWd8fCh5Zz16ZygpKSx5ZyhhKSk6Xy5uLnNldEltbWVkaWF0ZShhKX07CnpnPWZ1bmN0aW9uKCl7dmFyIGE9Xy5uLk1lc3NhZ2VDaGFubmVsOyJ1bmRlZmluZWQiPT09dHlwZW9mIGEmJiJ1bmRlZmluZWQiIT09dHlwZW9mIHdpbmRvdyYmd2luZG93LnBvc3RNZXNzYWdlJiZ3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lciYmIV8ub2UoIlByZXN0byIpJiYoYT1mdW5jdGlvbigpe3ZhciBlPV8ubmcoZG9jdW1lbnQsIklGUkFNRSIpO2Uuc3R5bGUuZGlzcGxheT0ibm9uZSI7ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmFwcGVuZENoaWxkKGUpO3ZhciBmPWUuY29udGVudFdpbmRvdztlPWYuZG9jdW1lbnQ7ZS5vcGVuKCk7ZS5jbG9zZSgpO3ZhciBnPSJjYWxsSW1tZWRpYXRlIitNYXRoLnJhbmRvbSgpLGs9ImZpbGU6Ij09Zi5sb2NhdGlvbi5wcm90b2NvbD8iKiI6Zi5sb2NhdGlvbi5wcm90b2NvbCsiLy8iK2YubG9jYXRpb24uaG9zdDtlPSgwLF8udCkoZnVuY3Rpb24obCl7aWYoKCIqIj09a3x8bC5vcmlnaW49PWspJiZsLmRhdGE9PWcpdGhpcy5wb3J0MS5vbm1lc3NhZ2UoKX0sCnRoaXMpO2YuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsZSwhMSk7dGhpcy5wb3J0MT17fTt0aGlzLnBvcnQyPXtwb3N0TWVzc2FnZTpmdW5jdGlvbigpe2YucG9zdE1lc3NhZ2UoZyxrKX19fSk7aWYoInVuZGVmaW5lZCIhPT10eXBlb2YgYSYmIVRiKCkpe3ZhciBiPW5ldyBhLGM9e30sZD1jO2IucG9ydDEub25tZXNzYWdlPWZ1bmN0aW9uKCl7aWYodm9pZCAwIT09Yy5uZXh0KXtjPWMubmV4dDt2YXIgZT1jLmNiO2MuY2I9bnVsbDtlKCl9fTtyZXR1cm4gZnVuY3Rpb24oZSl7ZC5uZXh0PXtjYjplfTtkPWQubmV4dDtiLnBvcnQyLnBvc3RNZXNzYWdlKDApfX1yZXR1cm4gZnVuY3Rpb24oZSl7Xy5uLnNldFRpbWVvdXQoZSwwKX19O3hnPXJkO1JkKGZ1bmN0aW9uKGEpe3hnPWF9KTsKdmFyIEJnPWZ1bmN0aW9uKCl7dGhpcy5pPXRoaXMuZz1udWxsfTtCZy5wcm90b3R5cGUuYWRkPWZ1bmN0aW9uKGEsYil7dmFyIGM9RGcuZ2V0KCk7Yy5zZXQoYSxiKTt0aGlzLmk/dGhpcy5pLm5leHQ9Yzp0aGlzLmc9Yzt0aGlzLmk9Y307QmcucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbigpe3ZhciBhPW51bGw7dGhpcy5nJiYoYT10aGlzLmcsdGhpcy5nPXRoaXMuZy5uZXh0LHRoaXMuZ3x8KHRoaXMuaT1udWxsKSxhLm5leHQ9bnVsbCk7cmV0dXJuIGF9O3ZhciBEZz1uZXcgVmYoZnVuY3Rpb24oKXtyZXR1cm4gbmV3IEVnfSxmdW5jdGlvbihhKXtyZXR1cm4gYS5yZXNldCgpfSksRWc9ZnVuY3Rpb24oKXt0aGlzLm5leHQ9dGhpcy5nPXRoaXMud2c9bnVsbH07RWcucHJvdG90eXBlLnNldD1mdW5jdGlvbihhLGIpe3RoaXMud2c9YTt0aGlzLmc9Yjt0aGlzLm5leHQ9bnVsbH07RWcucHJvdG90eXBlLnJlc2V0PWZ1bmN0aW9uKCl7dGhpcy5uZXh0PXRoaXMuZz10aGlzLndnPW51bGx9Owp2YXIgSmc9ZnVuY3Rpb24oYSxiKXtGZ3x8R2coKTtIZ3x8KEZnKCksSGc9ITApO0lnLmFkZChhLGIpfSxGZyxHZz1mdW5jdGlvbigpe2lmKF8ubi5Qcm9taXNlJiZfLm4uUHJvbWlzZS5yZXNvbHZlKXt2YXIgYT1fLm4uUHJvbWlzZS5yZXNvbHZlKHZvaWQgMCk7Rmc9ZnVuY3Rpb24oKXthLnRoZW4oS2cpfX1lbHNlIEZnPWZ1bmN0aW9uKCl7Xy5BZyhLZyl9fSxIZz0hMSxJZz1uZXcgQmcsS2c9ZnVuY3Rpb24oKXtmb3IodmFyIGE7YT1JZy5yZW1vdmUoKTspe3RyeXthLndnLmNhbGwoYS5nKX1jYXRjaChiKXtfLmZhKGIpfVdmKERnLGEpfUhnPSExfTsKdmFyIExnPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiExO3RyeXtyZXR1cm4hIWEuJGdvb2dfVGhlbmFibGV9Y2F0Y2goYil7cmV0dXJuITF9fTsKdmFyIE5nLE9nLFBnLGFoLGVoLGNoLGZoO18uTWc9ZnVuY3Rpb24oYSxiKXt0aGlzLm5iPTA7dGhpcy5BYz12b2lkIDA7dGhpcy5EaT10aGlzLnFnPXRoaXMub2M9bnVsbDt0aGlzLkxtPXRoaXMuUHA9ITE7aWYoYSE9Xy5hZCl0cnl7dmFyIGM9dGhpczthLmNhbGwoYixmdW5jdGlvbihkKXtjLktlKDIsZCl9LGZ1bmN0aW9uKGQpe2MuS2UoMyxkKX0pfWNhdGNoKGQpe3RoaXMuS2UoMyxkKX19O05nPWZ1bmN0aW9uKCl7dGhpcy5uZXh0PXRoaXMuY29udGV4dD10aGlzLmk9dGhpcy5qPXRoaXMuZz1udWxsO3RoaXMubWg9ITF9O05nLnByb3RvdHlwZS5yZXNldD1mdW5jdGlvbigpe3RoaXMuY29udGV4dD10aGlzLmk9dGhpcy5qPXRoaXMuZz1udWxsO3RoaXMubWg9ITF9O09nPW5ldyBWZihmdW5jdGlvbigpe3JldHVybiBuZXcgTmd9LGZ1bmN0aW9uKGEpe2EucmVzZXQoKX0pO1BnPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1PZy5nZXQoKTtkLmo9YTtkLmk9YjtkLmNvbnRleHQ9YztyZXR1cm4gZH07Cl8ub2I9ZnVuY3Rpb24oYSl7aWYoYSBpbnN0YW5jZW9mIF8uTWcpcmV0dXJuIGE7dmFyIGI9bmV3IF8uTWcoXy5hZCk7Yi5LZSgyLGEpO3JldHVybiBifTtfLlFnPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgXy5NZyhmdW5jdGlvbihiLGMpe2MoYSl9KX07Xy5TZz1mdW5jdGlvbihhLGIsYyl7UmcoYSxiLGMsbnVsbCl8fEpnKF8uTmIoYixhKSl9O18ucGI9ZnVuY3Rpb24oYSl7cmV0dXJuIG5ldyBfLk1nKGZ1bmN0aW9uKGIsYyl7YS5sZW5ndGh8fGIodm9pZCAwKTtmb3IodmFyIGQ9MCxlO2Q8YS5sZW5ndGg7ZCsrKWU9YVtkXSxfLlNnKGUsYixjKX0pfTtfLndjPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgXy5NZyhmdW5jdGlvbihiLGMpe3ZhciBkPWEubGVuZ3RoLGU9W107aWYoZClmb3IodmFyIGY9ZnVuY3Rpb24obSxxKXtkLS07ZVttXT1xOzA9PWQmJmIoZSl9LGc9ZnVuY3Rpb24obSl7YyhtKX0saz0wLGw7azxhLmxlbmd0aDtrKyspbD1hW2tdLF8uU2cobCxfLk5iKGYsayksZyk7ZWxzZSBiKGUpfSl9OwpfLlVnPWZ1bmN0aW9uKCl7dmFyIGEsYixjPW5ldyBfLk1nKGZ1bmN0aW9uKGQsZSl7YT1kO2I9ZX0pO3JldHVybiBuZXcgVGcoYyxhLGIpfTtfLk1nLnByb3RvdHlwZS50aGVuPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gVmcodGhpcywiZnVuY3Rpb24iPT09dHlwZW9mIGE/YTpudWxsLCJmdW5jdGlvbiI9PT10eXBlb2YgYj9iOm51bGwsYyl9O18uTWcucHJvdG90eXBlLiRnb29nX1RoZW5hYmxlPSEwO18uWGc9ZnVuY3Rpb24oYSxiLGMpe2I9UGcoYixiLGMpO2IubWg9ITA7V2coYSxiKTtyZXR1cm4gYX07Xy5yYj1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIFZnKGEsbnVsbCxiLGMpfTtfLk1nLnByb3RvdHlwZS5jYW5jZWw9ZnVuY3Rpb24oYSl7aWYoMD09dGhpcy5uYil7dmFyIGI9bmV3IF8uWWcoYSk7SmcoZnVuY3Rpb24oKXtaZyh0aGlzLGIpfSx0aGlzKX19Owp2YXIgWmc9ZnVuY3Rpb24oYSxiKXtpZigwPT1hLm5iKWlmKGEub2Mpe3ZhciBjPWEub2M7aWYoYy5xZyl7Zm9yKHZhciBkPTAsZT1udWxsLGY9bnVsbCxnPWMucWc7ZyYmKGcubWh8fChkKyssZy5nPT1hJiYoZT1nKSwhKGUmJjE8ZCkpKTtnPWcubmV4dCllfHwoZj1nKTtlJiYoMD09Yy5uYiYmMT09ZD9aZyhjLGIpOihmPyhkPWYsZC5uZXh0PT1jLkRpJiYoYy5EaT1kKSxkLm5leHQ9ZC5uZXh0Lm5leHQpOiRnKGMpLGFoKGMsZSwzLGIpKSl9YS5vYz1udWxsfWVsc2UgYS5LZSgzLGIpfSxXZz1mdW5jdGlvbihhLGIpe2EucWd8fDIhPWEubmImJjMhPWEubmJ8fGJoKGEpO2EuRGk/YS5EaS5uZXh0PWI6YS5xZz1iO2EuRGk9Yn0sVmc9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9UGcobnVsbCxudWxsLG51bGwpO2UuZz1uZXcgXy5NZyhmdW5jdGlvbihmLGcpe2Uuaj1iP2Z1bmN0aW9uKGspe3RyeXt2YXIgbD1iLmNhbGwoZCxrKTtmKGwpfWNhdGNoKG0pe2cobSl9fTpmO2UuaT1jP2Z1bmN0aW9uKGspe3RyeXt2YXIgbD0KYy5jYWxsKGQsayk7dm9pZCAwPT09bCYmayBpbnN0YW5jZW9mIF8uWWc/ZyhrKTpmKGwpfWNhdGNoKG0pe2cobSl9fTpnfSk7ZS5nLm9jPWE7V2coYSxlKTtyZXR1cm4gZS5nfTtfLk1nLnByb3RvdHlwZS51Rj1mdW5jdGlvbihhKXt0aGlzLm5iPTA7dGhpcy5LZSgyLGEpfTtfLk1nLnByb3RvdHlwZS52Rj1mdW5jdGlvbihhKXt0aGlzLm5iPTA7dGhpcy5LZSgzLGEpfTtfLk1nLnByb3RvdHlwZS5LZT1mdW5jdGlvbihhLGIpezA9PXRoaXMubmImJih0aGlzPT09YiYmKGE9MyxiPW5ldyBUeXBlRXJyb3IoInUiKSksdGhpcy5uYj0xLFJnKGIsdGhpcy51Rix0aGlzLnZGLHRoaXMpfHwodGhpcy5BYz1iLHRoaXMubmI9YSx0aGlzLm9jPW51bGwsYmgodGhpcyksMyE9YXx8YiBpbnN0YW5jZW9mIF8uWWd8fGNoKHRoaXMsYikpKX07CnZhciBSZz1mdW5jdGlvbihhLGIsYyxkKXtpZihhIGluc3RhbmNlb2YgXy5NZylyZXR1cm4gV2coYSxQZyhifHxfLmFkLGN8fG51bGwsZCkpLCEwO2lmKExnKGEpKXJldHVybiBhLnRoZW4oYixjLGQpLCEwO2lmKF8uQmEoYSkpdHJ5e3ZhciBlPWEudGhlbjtpZigiZnVuY3Rpb24iPT09dHlwZW9mIGUpcmV0dXJuIGRoKGEsZSxiLGMsZCksITB9Y2F0Y2goZil7cmV0dXJuIGMuY2FsbChkLGYpLCEwfXJldHVybiExfSxkaD1mdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPSExLGc9ZnVuY3Rpb24obCl7Znx8KGY9ITAsYy5jYWxsKGUsbCkpfSxrPWZ1bmN0aW9uKGwpe2Z8fChmPSEwLGQuY2FsbChlLGwpKX07dHJ5e2IuY2FsbChhLGcsayl9Y2F0Y2gobCl7ayhsKX19LGJoPWZ1bmN0aW9uKGEpe2EuUHB8fChhLlBwPSEwLEpnKGEuQm0sYSkpfSwkZz1mdW5jdGlvbihhKXt2YXIgYj1udWxsO2EucWcmJihiPWEucWcsYS5xZz1iLm5leHQsYi5uZXh0PW51bGwpO2EucWd8fChhLkRpPW51bGwpOwpyZXR1cm4gYn07Xy5NZy5wcm90b3R5cGUuQm09ZnVuY3Rpb24oKXtmb3IodmFyIGE7YT0kZyh0aGlzKTspYWgodGhpcyxhLHRoaXMubmIsdGhpcy5BYyk7dGhpcy5QcD0hMX07YWg9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoMz09YyYmYi5pJiYhYi5taClmb3IoO2EmJmEuTG07YT1hLm9jKWEuTG09ITE7aWYoYi5nKWIuZy5vYz1udWxsLGVoKGIsYyxkKTtlbHNlIHRyeXtiLm1oP2Iuai5jYWxsKGIuY29udGV4dCk6ZWgoYixjLGQpfWNhdGNoKGUpe2ZoLmNhbGwobnVsbCxlKX1XZihPZyxiKX07ZWg9ZnVuY3Rpb24oYSxiLGMpezI9PWI/YS5qLmNhbGwoYS5jb250ZXh0LGMpOmEuaSYmYS5pLmNhbGwoYS5jb250ZXh0LGMpfTtjaD1mdW5jdGlvbihhLGIpe2EuTG09ITA7SmcoZnVuY3Rpb24oKXthLkxtJiZmaC5jYWxsKG51bGwsYil9KX07Zmg9Xy5mYTtfLllnPWZ1bmN0aW9uKGEpe18ua2EuY2FsbCh0aGlzLGEpO3RoaXMuZz0hMX07Xy5GKF8uWWcsXy5rYSk7Cl8uWWcucHJvdG90eXBlLm5hbWU9ImNhbmNlbCI7dmFyIFRnPWZ1bmN0aW9uKGEsYixjKXt0aGlzLnByb21pc2U9YTt0aGlzLnJlc29sdmU9Yjt0aGlzLnJlamVjdD1jfTsKLyoKIFBvcnRpb25zIG9mIHRoaXMgY29kZSBhcmUgZnJvbSBNb2NoaUtpdCwgcmVjZWl2ZWQgYnkKIFRoZSBDbG9zdXJlIEF1dGhvcnMgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLiBBbGwgb3RoZXIgY29kZSBpcyBDb3B5cmlnaHQKIDIwMDUtMjAwOSBUaGUgQ2xvc3VyZSBBdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgoqLwp2YXIgcGgscmgsamgsdmgsa2g7Xy5naD1mdW5jdGlvbihhLGIpe3RoaXMubz1bXTt0aGlzLndhPWE7dGhpcy5LYT1ifHxudWxsO3RoaXMuaT10aGlzLmc9ITE7dGhpcy5BYz12b2lkIDA7dGhpcy5UPXRoaXMuRGE9dGhpcy52PSExO3RoaXMucz0wO3RoaXMub2M9bnVsbDt0aGlzLmo9MH07Xy5naC5wcm90b3R5cGUuY2FuY2VsPWZ1bmN0aW9uKGEpe2lmKHRoaXMuZyl0aGlzLkFjIGluc3RhbmNlb2YgXy5naCYmdGhpcy5BYy5jYW5jZWwoKTtlbHNle2lmKHRoaXMub2Mpe3ZhciBiPXRoaXMub2M7ZGVsZXRlIHRoaXMub2M7YT9iLmNhbmNlbChhKTooYi5qLS0sMD49Yi5qJiZiLmNhbmNlbCgpKX10aGlzLndhP3RoaXMud2EuY2FsbCh0aGlzLkthLHRoaXMpOnRoaXMuVD0hMDt0aGlzLmd8fHRoaXMuRmMobmV3IF8uaGgodGhpcykpfX07Xy5naC5wcm90b3R5cGUuJD1mdW5jdGlvbihhLGIpe3RoaXMudj0hMTtpaCh0aGlzLGEsYil9Owp2YXIgaWg9ZnVuY3Rpb24oYSxiLGMpe2EuZz0hMDthLkFjPWM7YS5pPSFiO2poKGEpfSxsaD1mdW5jdGlvbihhKXtpZihhLmcpe2lmKCFhLlQpdGhyb3cgbmV3IGtoKGEpO2EuVD0hMX19O18uZ2gucHJvdG90eXBlLm9iPWZ1bmN0aW9uKGEpe2xoKHRoaXMpO2loKHRoaXMsITAsYSl9O18uZ2gucHJvdG90eXBlLkZjPWZ1bmN0aW9uKGEpe2xoKHRoaXMpO2loKHRoaXMsITEsYSl9O18ubmg9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBfLm1oKGEsYixudWxsLGMpfTtfLm9oPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy5taChhLG51bGwsYixjKX07cGg9ZnVuY3Rpb24oYSxiKXtfLm1oKGEsYixmdW5jdGlvbihjKXt2YXIgZD1iLmNhbGwodGhpcyxjKTtpZih2b2lkIDA9PT1kKXRocm93IGM7cmV0dXJuIGR9LHZvaWQgMCl9O18ubWg9ZnVuY3Rpb24oYSxiLGMsZCl7YS5vLnB1c2goW2IsYyxkXSk7YS5nJiZqaChhKTtyZXR1cm4gYX07Cl8uZ2gucHJvdG90eXBlLnRoZW49ZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGUsZj1uZXcgXy5NZyhmdW5jdGlvbihnLGspe2U9ZztkPWt9KTtfLm1oKHRoaXMsZSxmdW5jdGlvbihnKXtnIGluc3RhbmNlb2YgXy5oaD9mLmNhbmNlbCgpOmQoZyl9KTtyZXR1cm4gZi50aGVuKGEsYixjKX07Xy5naC5wcm90b3R5cGUuJGdvb2dfVGhlbmFibGU9ITA7Xy5xaD1mdW5jdGlvbihhLGIpe2IgaW5zdGFuY2VvZiBfLmdoP18ubmgoYSwoMCxfLnQpKGIuSWQsYikpOl8ubmgoYSxmdW5jdGlvbigpe3JldHVybiBifSl9O18uZ2gucHJvdG90eXBlLklkPWZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBfLmdoO18ubWgodGhpcyxiLm9iLGIuRmMsYik7YSYmKGIub2M9dGhpcyx0aGlzLmorKyk7cmV0dXJuIGJ9O18uZ2gucHJvdG90eXBlLmlzRXJyb3I9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBFcnJvcn07CnJoPWZ1bmN0aW9uKGEpe3JldHVybiBfLnlkKGEubyxmdW5jdGlvbihiKXtyZXR1cm4iZnVuY3Rpb24iPT09dHlwZW9mIGJbMV19KX07CmpoPWZ1bmN0aW9uKGEpe2lmKGEucyYmYS5nJiZyaChhKSl7dmFyIGI9YS5zLGM9c2hbYl07YyYmKF8ubi5jbGVhclRpbWVvdXQoYy5nKSxkZWxldGUgc2hbYl0pO2Eucz0wfWEub2MmJihhLm9jLmotLSxkZWxldGUgYS5vYyk7Yj1hLkFjO2Zvcih2YXIgZD1jPSExO2Euby5sZW5ndGgmJiFhLnY7KXt2YXIgZT1hLm8uc2hpZnQoKSxmPWVbMF0sZz1lWzFdO2U9ZVsyXTtpZihmPWEuaT9nOmYpdHJ5e3ZhciBrPWYuY2FsbChlfHxhLkthLGIpO3ZvaWQgMCE9PWsmJihhLmk9YS5pJiYoaz09Ynx8YS5pc0Vycm9yKGspKSxhLkFjPWI9ayk7aWYoTGcoYil8fCJmdW5jdGlvbiI9PT10eXBlb2YgXy5uLlByb21pc2UmJmIgaW5zdGFuY2VvZiBfLm4uUHJvbWlzZSlkPSEwLGEudj0hMH1jYXRjaChsKXtiPWwsYS5pPSEwLHJoKGEpfHwoYz0hMCl9fWEuQWM9YjtkJiYoaz0oMCxfLnQpKGEuJCxhLCEwKSxkPSgwLF8udCkoYS4kLGEsITEpLGIgaW5zdGFuY2VvZiBfLmdoPyhfLm1oKGIsayxkKSxiLkRhPQohMCk6Yi50aGVuKGssZCkpO2MmJihiPW5ldyB0aChiKSxzaFtiLmddPWIsYS5zPWIuZyl9O18udWg9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IF8uZ2g7Yi5vYihhKTtyZXR1cm4gYn07dmg9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IF8uZ2g7YS50aGVuKGZ1bmN0aW9uKGMpe2Iub2IoYyl9LGZ1bmN0aW9uKGMpe2IuRmMoYyl9KTtyZXR1cm4gYn07Xy53aD1mdW5jdGlvbihhKXt2YXIgYj1uZXcgXy5naDtiLkZjKGEpO3JldHVybiBifTtraD1mdW5jdGlvbihhKXtfLmthLmNhbGwodGhpcyk7dGhpcy5oYz1hfTtfLkYoa2gsXy5rYSk7a2gucHJvdG90eXBlLm1lc3NhZ2U9IkRlZmVycmVkIGhhcyBhbHJlYWR5IGZpcmVkIjtraC5wcm90b3R5cGUubmFtZT0iQWxyZWFkeUNhbGxlZEVycm9yIjtfLmhoPWZ1bmN0aW9uKGEpe18ua2EuY2FsbCh0aGlzKTt0aGlzLmhjPWF9O18uRihfLmhoLF8ua2EpO18uaGgucHJvdG90eXBlLm1lc3NhZ2U9IkRlZmVycmVkIHdhcyBjYW5jZWxlZCI7Cl8uaGgucHJvdG90eXBlLm5hbWU9IkNhbmNlbGVkRXJyb3IiO3ZhciB0aD1mdW5jdGlvbihhKXt0aGlzLmc9Xy5uLnNldFRpbWVvdXQoKDAsXy50KSh0aGlzLmosdGhpcyksMCk7dGhpcy5pPWF9O3RoLnByb3RvdHlwZS5qPWZ1bmN0aW9uKCl7ZGVsZXRlIHNoW3RoaXMuZ107dGhyb3cgdGhpcy5pO307dmFyIHNoPXt9Owp2YXIgeGg9ZnVuY3Rpb24oKXtYZC5jYWxsKHRoaXMpO3RoaXMuaT17fTt0aGlzLm89W107dGhpcy5zPVtdO3RoaXMud2E9W107dGhpcy5nPVtdO3RoaXMudj1bXTt0aGlzLlU9e307dGhpcy5HYT17fTt0aGlzLmo9dGhpcy5PYT1uZXcgVWQoW10sIiIpO3RoaXMuVGE9bnVsbDt0aGlzLlQ9bmV3IF8uZ2g7dGhpcy5TYT1udWxsO3RoaXMuTGE9dGhpcy5EYT0hMTt0aGlzLm1hPTA7dGhpcy5rYj10aGlzLndiPXRoaXMubGI9ITF9O18uRih4aCxYZCk7dmFyIHloPWZ1bmN0aW9uKGEsYil7Xy5rYS5jYWxsKHRoaXMsIkVycm9yIGxvYWRpbmcgIithKyI6ICIrVGQoYikpfTtfLkYoeWgsXy5rYSk7Xy5oPXhoLnByb3RvdHlwZTtfLmguQnc9ZnVuY3Rpb24oYSl7dGhpcy5EYT1hfTtfLmguRHc9ZnVuY3Rpb24oYSl7dGhpcy5MYT1hfTsKXy5oLkxuPWZ1bmN0aW9uKGEsYil7aWYoISh0aGlzIGluc3RhbmNlb2YgeGgpKXRoaXMuTG4oYSxiKTtlbHNlIGlmKCJzdHJpbmciPT09dHlwZW9mIGEpe2E9YS5zcGxpdCgiLyIpO2Zvcih2YXIgYz1bXSxkPTA7ZDxhLmxlbmd0aDtkKyspe3ZhciBlPWFbZF0uc3BsaXQoIjoiKSxmPWVbMF07aWYoZVsxXSl7ZT1lWzFdLnNwbGl0KCIsIik7Zm9yKHZhciBnPTA7ZzxlLmxlbmd0aDtnKyspZVtnXT1jW3BhcnNlSW50KGVbZ10sMzYpXX1lbHNlIGU9W107Yy5wdXNoKGYpO3RoaXMuaVtmXT8oZj10aGlzLmlbZl0ubyxmIT1lJiZmLnNwbGljZS5hcHBseShmLFswLGYubGVuZ3RoXS5jb25jYXQoXy5KYyhlKSkpKTp0aGlzLmlbZl09bmV3IFVkKGUsZil9YiYmYi5sZW5ndGg/KF8ueWEodGhpcy5vLGIpLHRoaXMuVGE9Xy5sYShiKSk6dGhpcy5ULmd8fHRoaXMuVC5vYigpO3poKHRoaXMpfX07Xy5oLiRlPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmlbYV19OwpfLmgub3Q9ZnVuY3Rpb24oYSxiKXtpZighdGhpcy5LYS5sYil0aHJvdyBFcnJvcigidiIpO3RoaXMuVVthXXx8KHRoaXMuVVthXT17fSk7dGhpcy5VW2FdW2JdPSEwfTtfLmguYXc9ZnVuY3Rpb24oYSxiKXt0aGlzLlVbYV0mJmRlbGV0ZSB0aGlzLlVbYV1bYl19O18uaC5Fcj1mdW5jdGlvbihhKXt4aC5WYi5Fci5jYWxsKHRoaXMsYSk7emgodGhpcyl9O18uaC5QYz1mdW5jdGlvbigpe3JldHVybiAwPHRoaXMuby5sZW5ndGh9O18uaC5ndj1mdW5jdGlvbigpe3JldHVybiAwPHRoaXMudi5sZW5ndGh9Owp2YXIgT2E9ZnVuY3Rpb24oYSl7dmFyIGI9YS5sYixjPWEuUGMoKTtjIT1iJiYoYS5CbShjPyJhY3RpdmUiOiJpZGxlIiksYS5sYj1jKTtiPWEuZ3YoKTtiIT1hLndiJiYoYS5CbShiPyJ1c2VyQWN0aXZlIjoidXNlcklkbGUiKSxhLndiPWIpfSxDaD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W107Xy5EYShiLGQpO2I9W107Zm9yKHZhciBlPXt9LGY9MDtmPGQubGVuZ3RoO2YrKyl7dmFyIGc9ZFtmXSxrPWEuJGUoZyk7aWYoIWspdGhyb3cgRXJyb3IoIndgIitnKTt2YXIgbD1uZXcgXy5naDtlW2ddPWw7ay5nP2wub2IoYS4kKTooQWgoYSxnLGssISFjLGwpLEJoKGEsZyl8fGIucHVzaChnKSl9MDxiLmxlbmd0aCYmKGEuTGE/Xy5uaChhLlQsKDAsXy50KShhLkhhLGEsYikpOjA9PWEuby5sZW5ndGg/YS5IYShiKTooYS5nLnB1c2goYiksT2EoYSkpKTtyZXR1cm4gZX0sQWg9ZnVuY3Rpb24oYSxiLGMsZCxlKXtjLnYucHVzaChuZXcgU2QoZS5vYixlKSk7VmQoYyxmdW5jdGlvbihmKXtlLkZjKG5ldyB5aChiLApmKSl9KTtCaChhLGIpP2QmJihfLnJhKGEudixiKXx8YS52LnB1c2goYiksT2EoYSkpOmQmJihfLnJhKGEudixiKXx8YS52LnB1c2goYikpfTt4aC5wcm90b3R5cGUuSGE9ZnVuY3Rpb24oYSxiLGMpe2J8fCh0aGlzLm1hPTApO2I9RGgodGhpcyxhKTt0aGlzLkxhP18ueWEodGhpcy5vLGIpOnRoaXMubz1iO3RoaXMucz10aGlzLkRhP2E6Xy54YShiKTtPYSh0aGlzKTswIT1iLmxlbmd0aCYmKHRoaXMud2EucHVzaC5hcHBseSh0aGlzLndhLGIpLGE9KDAsXy50KSh0aGlzLkthLmtiLHRoaXMuS2EsXy54YShiKSx0aGlzLmkse0RlOnRoaXMuVSxPSjohIWMsJHE6KDAsXy50KSh0aGlzLkJiLHRoaXMsdGhpcy5zLGIpLEVEOigwLF8udCkodGhpcy5iYyx0aGlzKX0pLChjPTVFMypNYXRoLnBvdyh0aGlzLm1hLDIpKT93aW5kb3cuc2V0VGltZW91dChhLGMpOmEoKSl9Owp2YXIgRGg9ZnVuY3Rpb24oYSxiKXtiPV8ud2QoYixmdW5jdGlvbihlKXtyZXR1cm4gYS5pW2VdLmc/KF8ubi5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIEVycm9yKCJ4YCIrZSl9LDApLCExKTohMH0pO2Zvcih2YXIgYz1bXSxkPTA7ZDxiLmxlbmd0aDtkKyspYz1jLmNvbmNhdChFaChhLGJbZF0pKTtfLkRhKGMpO3JldHVybiFhLkRhJiYxPGMubGVuZ3RoPyhiPWMuc2hpZnQoKSxhLmc9Xy5sYyhjLGZ1bmN0aW9uKGUpe3JldHVybltlXX0pLmNvbmNhdChhLmcpLFtiXSk6Y30sRWg9ZnVuY3Rpb24oYSxiKXt2YXIgYz1CZShhLndhKSxkPVtdO2NbYl18fGQucHVzaChiKTtiPVtiXTtmb3IodmFyIGU9MDtlPGIubGVuZ3RoO2UrKylmb3IodmFyIGY9YS4kZShiW2VdKS5vLGc9Zi5sZW5ndGgtMTswPD1nO2ctLSl7dmFyIGs9ZltnXTthLiRlKGspLmd8fGNba118fChkLnB1c2goayksYi5wdXNoKGspKX1kLnJldmVyc2UoKTtfLkRhKGQpO3JldHVybiBkfSx6aD1mdW5jdGlvbihhKXthLmo9PQphLk9hJiYoYS5qPW51bGwsTGEoYS5PYSwoMCxfLnQpKGEueHUsYSkpJiZNYShhLDQpLE9hKGEpKX0sQmg9ZnVuY3Rpb24oYSxiKXtpZihfLnJhKGEubyxiKSlyZXR1cm4hMDtmb3IodmFyIGM9MDtjPGEuZy5sZW5ndGg7YysrKWlmKF8ucmEoYS5nW2NdLGIpKXJldHVybiEwO3JldHVybiExfTt4aC5wcm90b3R5cGUubG9hZD1mdW5jdGlvbihhLGIpe3JldHVybiBDaCh0aGlzLFthXSxiKVthXX07Xy5GaD1mdW5jdGlvbihhLGIpe3JldHVybiBDaChhLGIsdm9pZCAwKX07eGgucHJvdG90eXBlLlZjPWZ1bmN0aW9uKGEpe3RoaXMuaiYmdGhpcy5qLmkucHVzaChuZXcgU2QoYSx2b2lkIDApKX07eGgucHJvdG90eXBlLkhzPWZ1bmN0aW9uKGEpe2lmKHRoaXMuail7dmFyIGI9dGhpcy5qO2lmKGIucz09PU5kKWIucz1hO2Vsc2UgdGhyb3cgRXJyb3IoInAiKTt9fTsKeGgucHJvdG90eXBlLkJiPWZ1bmN0aW9uKGEsYixjKXt0aGlzLm1hKys7dGhpcy5zPWE7Xy5wKGIsXy5OYihfLnZhLHRoaXMud2EpLHRoaXMpOzQwMT09Yz8oTWEodGhpcywwKSx0aGlzLmcubGVuZ3RoPTApOjQxMD09Yz8oR2godGhpcywzKSxOYSh0aGlzKSk6Mzw9dGhpcy5tYT8oR2godGhpcywxKSxOYSh0aGlzKSk6dGhpcy5IYSh0aGlzLnMsITAsODAwMT09Yyl9O3hoLnByb3RvdHlwZS5iYz1mdW5jdGlvbigpe0doKHRoaXMsMik7TmEodGhpcyl9Owp2YXIgR2g9ZnVuY3Rpb24oYSxiKXsxPGEucy5sZW5ndGg/YS5nPV8ubGMoYS5zLGZ1bmN0aW9uKGMpe3JldHVybltjXX0pLmNvbmNhdChhLmcpOk1hKGEsYil9LE1hPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5zO2Euby5sZW5ndGg9MDtmb3IodmFyIGQ9W10sZT0wO2U8YS5nLmxlbmd0aDtlKyspe3ZhciBmPV8ud2QoYS5nW2VdLGZ1bmN0aW9uKGwpe3ZhciBtPUVoKHRoaXMsbCk7cmV0dXJuIF8ueWQoYyxmdW5jdGlvbihxKXtyZXR1cm4gXy5yYShtLHEpfSl9LGEpO18ueWEoZCxmKX1mb3IoZT0wO2U8Yy5sZW5ndGg7ZSsrKV8udGEoZCxjW2VdKTtmb3IoZT0wO2U8ZC5sZW5ndGg7ZSsrKXtmb3IoZj0wO2Y8YS5nLmxlbmd0aDtmKyspXy52YShhLmdbZl0sZFtlXSk7Xy52YShhLnYsZFtlXSl9dmFyIGc9YS5HYS5lcnJvcjtpZihnKWZvcihlPTA7ZTxnLmxlbmd0aDtlKyspe3ZhciBrPWdbZV07Zm9yKGY9MDtmPGQubGVuZ3RoO2YrKylrKCJlcnJvciIsZFtmXSxiKX1mb3IoZT0wO2U8Yy5sZW5ndGg7ZSsrKWEuaVtjW2VdXSYmCmEuaVtjW2VdXS4kcShiKTthLnMubGVuZ3RoPTA7T2EoYSl9LE5hPWZ1bmN0aW9uKGEpe2Zvcig7YS5nLmxlbmd0aDspe3ZhciBiPV8ud2QoYS5nLnNoaWZ0KCksZnVuY3Rpb24oYyl7cmV0dXJuIXRoaXMuJGUoYykuZ30sYSk7aWYoMDxiLmxlbmd0aCl7YS5IYShiKTtyZXR1cm59fU9hKGEpfTt4aC5wcm90b3R5cGUuQm09ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPXRoaXMuR2FbYV0sYz0wO2ImJmM8Yi5sZW5ndGg7YysrKWJbY10oYSl9O3hoLnByb3RvdHlwZS5UYj1mdW5jdGlvbigpe2phKF8udGUodGhpcy5pKSx0aGlzLk9hKTt0aGlzLmk9e307dGhpcy5vPVtdO3RoaXMucz1bXTt0aGlzLnY9W107dGhpcy5nPVtdO3RoaXMuR2E9e307dGhpcy5rYj0hMH07eGgucHJvdG90eXBlLmlzRGlzcG9zZWQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5rYn07Xy5KYT1mdW5jdGlvbigpe3JldHVybiBuZXcgeGh9Owp2YXIgSGg9ZnVuY3Rpb24oKXt4aC5jYWxsKHRoaXMpfTtfLkQoSGgseGgpO0hoLnByb3RvdHlwZS4kZT1mdW5jdGlvbihhKXthIGluIHRoaXMuaXx8KHRoaXMuaVthXT1uZXcgVWQoW10sYSkpO3JldHVybiB0aGlzLmlbYV19OwpfLklhPW5ldyBIaDsKXy5HPXtqczohMSxsczohMSxrczohMSxnczohMSxoczohMSxtczohMX07Xy5HLnVpPV8uRy5qc3x8Xy5HLmxzfHxfLkcua3N8fF8uRy5nc3x8Xy5HLmhzfHxfLkcubXM7Xy5HLlhvPXBmO18uRy5Ecz1fLlZiO18uRy53bz1fLnFmO18uRy56cz1fLkcudWk/Xy5HLmpzOl8uU2IoKTtfLkcubUM9ZnVuY3Rpb24oKXtyZXR1cm4ga2YoKXx8Xy5vZSgiaVBvZCIpfTtfLkcuSG89Xy5HLnVpP18uRy5sczpfLkcubUMoKTtfLkcuR289Xy5HLnVpP18uRy5rczpfLm9lKCJpUGFkIik7Xy5HLmtpPV8uRy51aT9fLkcuZ3M6Q2UoKTtfLkcuemY9Xy5HLnVpP18uRy5oczpfLlFiKCk7Xy5HLnNDPWZ1bmN0aW9uKCl7cmV0dXJuIF8uVWIoKSYmIV8ubGYoKX07Xy5HLmRtPV8uRy51aT9fLkcubXM6Xy5HLnNDKCk7CnZhciBJaDtJaD17fTtfLkpoPW51bGw7Xy5MaD1mdW5jdGlvbihhLGIpe3ZvaWQgMD09PWImJihiPTApO18uS2goKTtiPUloW2JdO2Zvcih2YXIgYz1bXSxkPTA7ZDxhLmxlbmd0aDtkKz0zKXt2YXIgZT1hW2RdLGY9ZCsxPGEubGVuZ3RoLGc9Zj9hW2QrMV06MCxrPWQrMjxhLmxlbmd0aCxsPWs/YVtkKzJdOjAsbT1lPj4yO2U9KGUmMyk8PDR8Zz4+NDtnPShnJjE1KTw8MnxsPj42O2wmPTYzO2t8fChsPTY0LGZ8fChnPTY0KSk7Yy5wdXNoKGJbbV0sYltlXSxiW2ddfHwiIixiW2xdfHwiIil9cmV0dXJuIGMuam9pbigiIil9OwpfLktoPWZ1bmN0aW9uKCl7aWYoIV8uSmgpe18uSmg9e307Zm9yKHZhciBhPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSIuc3BsaXQoIiIpLGI9WyIrLz0iLCIrLyIsIi1fPSIsIi1fLiIsIi1fIl0sYz0wOzU+YztjKyspe3ZhciBkPWEuY29uY2F0KGJbY10uc3BsaXQoIiIpKTtJaFtjXT1kO2Zvcih2YXIgZT0wO2U8ZC5sZW5ndGg7ZSsrKXt2YXIgZj1kW2VdO3ZvaWQgMD09PV8uSmhbZl0mJihfLkpoW2ZdPWUpfX19fTsKXy5NaD1mdW5jdGlvbihhLGIpe3RoaXMua2Q9YTt0aGlzLlNiPWI7dGhpcy5kdj0wfTsKXy5OaD0hMTsKXy5PaD1mdW5jdGlvbihhKXt0aGlzLmk9MDt0aGlzLmc9YX07Xy5PaC5wcm90b3R5cGUubmV4dD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmk8dGhpcy5nLmxlbmd0aD97ZG9uZTohMSx2YWx1ZTp0aGlzLmdbdGhpcy5pKytdfTp7ZG9uZTohMCx2YWx1ZTp2b2lkIDB9fTsidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmInVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wuaXRlcmF0b3ImJihfLk9oLnByb3RvdHlwZVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KTsKdmFyIFJoLGVpO18ueT1mdW5jdGlvbigpe307Xy5QaD0iZnVuY3Rpb24iPT10eXBlb2YgVWludDhBcnJheTtfLkg9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe2EuZz1udWxsO2J8fChiPWM/W2NdOltdKTthLlQ9Yz9TdHJpbmcoYyk6dm9pZCAwO2Eubz0wPT09Yz8tMTowO2Euaj1iO2E6e2M9YS5qLmxlbmd0aDtiPS0xO2lmKGMmJihiPWMtMSxjPWEualtiXSxfLlFoKGMpKSl7YS5zPWItYS5vO2EuaT1jO2JyZWFrIGF9LTE8ZD8oYS5zPU1hdGgubWF4KGQsYisxLWEubyksYS5pPW51bGwpOmEucz1OdW1iZXIuTUFYX1ZBTFVFfWEuVT17fTtpZihlKWZvcihkPTA7ZDxlLmxlbmd0aDtkKyspYj1lW2RdLGI8YS5zPyhiKz1hLm8sYS5qW2JdPWEualtiXXx8UmgpOihfLlNoKGEpLGEuaVtiXT1hLmlbYl18fFJoKTtpZihmJiZmLmxlbmd0aClmb3IoZD0wO2Q8Zi5sZW5ndGg7ZCsrKV8uVGgoYSxmW2RdKX07Umg9W107Cl8uUWg9ZnVuY3Rpb24oYSl7cmV0dXJuIG51bGwhPT1hJiYib2JqZWN0Ij09dHlwZW9mIGEmJiFBcnJheS5pc0FycmF5KGEpJiYhKF8uUGgmJmEgaW5zdGFuY2VvZiBVaW50OEFycmF5KX07Xy5TaD1mdW5jdGlvbihhKXt2YXIgYj1hLnMrYS5vO2EualtiXXx8KF8uVWgoYSk/KGEuaT17fSxPYmplY3QuZnJlZXplKGEuaSkpOmEuaT1hLmpbYl09e30pfTtfLko9ZnVuY3Rpb24oYSxiKXtpZihiPGEucyl7Yis9YS5vO3ZhciBjPWEualtiXTtyZXR1cm4gYyE9PVJofHxfLlVoKGEpP2M6YS5qW2JdPVtdfWlmKGEuaSlyZXR1cm4gYz1hLmlbYl0sYz09PVJoP2EuaVtiXT1bXTpjfTtfLldoPWZ1bmN0aW9uKGEsYil7Yj1fLkooYSxiKTtfLlVoKGEpJiZfLlZoKGIpO3JldHVybiBifTtfLlhoPWZ1bmN0aW9uKGEsYil7YT1fLkooYSxiKTtyZXR1cm4gbnVsbD09YT9hOiEhYX07Xy5ZaD1mdW5jdGlvbihhLGIsYyl7YT1fLkooYSxiKTtyZXR1cm4gbnVsbD09YT9jOmF9OwpfLlpoPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy5ZaChhLGIsdm9pZCAwPT09Yz8wOmMpfTtfLiRoPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy5ZaChhLGIsdm9pZCAwPT09Yz8iIjpjKX07Xy5CPWZ1bmN0aW9uKGEsYixjKXtfLmFpKGEpO2I8YS5zP2EualtiK2Eub109YzooXy5TaChhKSxhLmlbYl09Yyk7cmV0dXJuIGF9O18udmI9ZnVuY3Rpb24oYSxiLGMsZCl7Xy5haShhKTtjIT09ZD9fLkIoYSxiLGMpOmI8YS5zP2EualtiK2Eub109bnVsbDooXy5TaChhKSxkZWxldGUgYS5pW2JdKTtyZXR1cm4gYX07Xy5UaD1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYyxkLGU9Xy5VaChhKSxmPTA7ZjxiLmxlbmd0aDtmKyspe3ZhciBnPWJbZl0saz1fLkooYSxnKTtudWxsIT1rJiYoYz1nLGQ9ayxlfHxfLkIoYSxnLHZvaWQgMCkpfXJldHVybiBjPyhlfHxfLkIoYSxjLGQpLGMpOjB9OwpfLkw9ZnVuY3Rpb24oYSxiLGMpe2EuZ3x8KGEuZz17fSk7aWYoIWEuZ1tjXSl7dmFyIGQ9Xy5KKGEsYyk7ZCYmKGEuZ1tjXT1uZXcgYihkKSxfLlVoKGEpJiZfLlZoKGEuZ1tjXSkpfXJldHVybiBhLmdbY119O18uYmk9ZnVuY3Rpb24oYSxiLGMpe2EuZ3x8KGEuZz17fSk7aWYoIWEuZ1tjXSl7Zm9yKHZhciBkPV8uV2goYSxjKSxlPVtdLGY9MDtmPGQubGVuZ3RoO2YrKyllW2ZdPW5ldyBiKGRbZl0pLF8uVWgoYSkmJl8uVmgoZVtmXSk7Xy5VaChhKSYmXy5WaChlKTthLmdbY109ZX1iPWEuZ1tjXTtiPT1SaCYmKGI9YS5nW2NdPVtdKTtyZXR1cm4gYn07Xy5kaT1mdW5jdGlvbihhLGIsYyl7Xy5haShhKTthLmd8fChhLmc9e30pO3ZhciBkPWM/Xy5jaShjLCEwKTpjO2EuZ1tiXT1jO3JldHVybiBfLkIoYSxiLGQpfTsKXy54Yj1mdW5jdGlvbihhLGIsYyl7Xy5haShhKTthLmd8fChhLmc9e30pO2M9Y3x8W107Zm9yKHZhciBkPVtdLGU9MDtlPGMubGVuZ3RoO2UrKylkW2VdPV8uY2koY1tlXSwhMCk7YS5nW2JdPWM7cmV0dXJuIF8uQihhLGIsZCl9O2VpPWZ1bmN0aW9uKGEsYil7aWYoYS5nKWZvcih2YXIgYyBpbiBhLmcpe3ZhciBkPWEuZ1tjXTtpZihBcnJheS5pc0FycmF5KGQpKWZvcih2YXIgZT0wO2U8ZC5sZW5ndGg7ZSsrKWRbZV0mJl8uY2koZFtlXSxiKTtlbHNlIGQmJl8uY2koZCxiKX19O18uY2k9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5OaCYmYj9hLnpsKCk6YS5tYygpfTtfLnkucHJvdG90eXBlLm1jPWZ1bmN0aW9uKCl7Xy5haSh0aGlzKTtlaSh0aGlzLCExKTtyZXR1cm4gdGhpcy5qfTtfLnkucHJvdG90eXBlLnpsPWZ1bmN0aW9uKCl7ZWkodGhpcywhMCk7cmV0dXJuIHRoaXMuan07Cl8ueS5wcm90b3R5cGUuTWM9Xy5QaD9mdW5jdGlvbigpe3ZhciBhPVVpbnQ4QXJyYXkucHJvdG90eXBlLnRvSlNPTjtVaW50OEFycmF5LnByb3RvdHlwZS50b0pTT049ZnVuY3Rpb24oKXtyZXR1cm4gXy5MaCh0aGlzKX07dHJ5e3JldHVybiBKU09OLnN0cmluZ2lmeSh0aGlzLmomJl8uY2kodGhpcywhMCksZmkpfWZpbmFsbHl7VWludDhBcnJheS5wcm90b3R5cGUudG9KU09OPWF9fTpmdW5jdGlvbigpe3JldHVybiBKU09OLnN0cmluZ2lmeSh0aGlzLmomJl8uY2kodGhpcywhMCksZmkpfTt2YXIgZmk9ZnVuY3Rpb24oYSxiKXtyZXR1cm4ibnVtYmVyIiE9PXR5cGVvZiBifHwhaXNOYU4oYikmJkluZmluaXR5IT09YiYmLUluZmluaXR5IT09Yj9iOlN0cmluZyhiKX07Xy55LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiBfLmNpKHRoaXMsITApLnRvU3RyaW5nKCl9OwpfLmdpPWZ1bmN0aW9uKGEsYil7Xy5TaChhKTthLmd8fChhLmc9e30pO3ZhciBjPV8uVWgoYSksZD1iLmtkO3JldHVybiBiLmR2P2IuU2I/KGEuZ1tkXXx8KGEuZ1tkXT1fLmxjKGEuaVtkXXx8W10sZnVuY3Rpb24oZSl7ZT1uZXcgYi5TYihlKTtjJiZfLlZoKGUpO3JldHVybiBlfSkpLGMmJl8uVmgoYS5nW2RdKSxhLmdbZF0pOmM/KGE9YS5pW2RdLGF8fChhPVtdLF8uVmgoYSkpLGEpOmEuaVtkXT1hLmlbZF18fFtdOmIuU2I/KCFhLmdbZF0mJmEuaVtkXSYmKGEuZ1tkXT1uZXcgYi5TYihhLmlbZF0pLGMmJl8uVmgoYS5nW2RdKSksYS5nW2RdKTphLmlbZF19O18uaWk9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5oaShfLmNpKGEsITApKSxjPV8uSDtfLkg9ZnVuY3Rpb24oZCxlLGYsZyxrLGwpe2MoZCxiLGYsZyxrLGwpO18uSD1jfTthPW5ldyBhLmNvbnN0cnVjdG9yKGIpO18uSCE9PWMmJihfLkg9Yyk7cmV0dXJuIGF9OwpfLmhpPWZ1bmN0aW9uKGEpe2lmKEFycmF5LmlzQXJyYXkoYSkpe2Zvcih2YXIgYj1BcnJheShhLmxlbmd0aCksYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hW2NdO251bGwhPWQmJihiW2NdPSJvYmplY3QiPT10eXBlb2YgZD9fLmhpKGQpOmQpfXJldHVybiBifWlmKF8uUGgmJmEgaW5zdGFuY2VvZiBVaW50OEFycmF5KXJldHVybiBuZXcgVWludDhBcnJheShhKTtiPXt9O2ZvcihjIGluIGEpZD1hW2NdLG51bGwhPWQmJihiW2NdPSJvYmplY3QiPT10eXBlb2YgZD9fLmhpKGQpOmQpO3JldHVybiBifTtfLmppPXt9O18uVWg9ZnVuY3Rpb24oYSl7aWYoXy5OaCl7dmFyIGI9IWEuaXx8T2JqZWN0LmlzRnJvemVuKGEuaSk7cmV0dXJuIE9iamVjdC5pc0Zyb3plbihhLmopJiZifXJldHVybiExfTtfLlZoPWZ1bmN0aW9uKGEpe0FycmF5LmlzQXJyYXkoYSk/T2JqZWN0LmZyZWV6ZShhKTooT2JqZWN0LmZyZWV6ZShhLmopLGEuaSYmT2JqZWN0LmZyZWV6ZShhLmkpKX07Cl8uYWk9ZnVuY3Rpb24oYSl7aWYoXy5OaCYmXy5VaChhKSl0aHJvdyBFcnJvcigiQiIpO307Cl8ua2k9ZnVuY3Rpb24oYSxiKXthPUpTT04ucGFyc2UoIlsiK2Euc3Vic3RyaW5nKDQpKTtyZXR1cm4gbmV3IGIoYSl9OwpfLmxpPW5ldyBXZWFrTWFwO18ubWk9bmV3IFdlYWtNYXA7Ci8qCgogQ29weXJpZ2h0IDIwMTEgR29vZ2xlIExMQy4KIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wCiovCnZhciBuaT1mdW5jdGlvbihhKXt0aGlzLmc9YX07bmkucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZ307Xy5NPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgbmkoYSl9OwpfLm9pPWZ1bmN0aW9uKGEpe3RoaXMuaWQ9YX07Xy5vaS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pZH07Cl8ucGk9ZnVuY3Rpb24oYSxiKXt0aGlzLnR5cGU9YSBpbnN0YW5jZW9mIF8ub2k/U3RyaW5nKGEpOmE7dGhpcy5jdXJyZW50VGFyZ2V0PXRoaXMudGFyZ2V0PWI7dGhpcy5kZWZhdWx0UHJldmVudGVkPXRoaXMuaT0hMX07Xy5waS5wcm90b3R5cGUuc3RvcFByb3BhZ2F0aW9uPWZ1bmN0aW9uKCl7dGhpcy5pPSEwfTtfLnBpLnByb3RvdHlwZS5wcmV2ZW50RGVmYXVsdD1mdW5jdGlvbigpe3RoaXMuZGVmYXVsdFByZXZlbnRlZD0hMH07CnZhciBxaT1mdW5jdGlvbigpe2lmKCFfLm4uYWRkRXZlbnRMaXN0ZW5lcnx8IU9iamVjdC5kZWZpbmVQcm9wZXJ0eSlyZXR1cm4hMTt2YXIgYT0hMSxiPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7fSwicGFzc2l2ZSIse2dldDpmdW5jdGlvbigpe2E9ITB9fSk7dHJ5e18ubi5hZGRFdmVudExpc3RlbmVyKCJ0ZXN0IixfLmFkLGIpLF8ubi5yZW1vdmVFdmVudExpc3RlbmVyKCJ0ZXN0IixfLmFkLGIpfWNhdGNoKGMpe31yZXR1cm4gYX0oKTsKXy5yaT1mdW5jdGlvbihhLGIpe18ucGkuY2FsbCh0aGlzLGE/YS50eXBlOiIiKTt0aGlzLnJlbGF0ZWRUYXJnZXQ9dGhpcy5jdXJyZW50VGFyZ2V0PXRoaXMudGFyZ2V0PW51bGw7dGhpcy5idXR0b249dGhpcy5zY3JlZW5ZPXRoaXMuc2NyZWVuWD10aGlzLmNsaWVudFk9dGhpcy5jbGllbnRYPXRoaXMub2Zmc2V0WT10aGlzLm9mZnNldFg9MDt0aGlzLmtleT0iIjt0aGlzLmNoYXJDb2RlPXRoaXMua2V5Q29kZT0wO3RoaXMubWV0YUtleT10aGlzLnNoaWZ0S2V5PXRoaXMuYWx0S2V5PXRoaXMuY3RybEtleT0hMTt0aGlzLnN0YXRlPW51bGw7dGhpcy5wb2ludGVySWQ9MDt0aGlzLnBvaW50ZXJUeXBlPSIiO3RoaXMuZz1udWxsO2EmJnRoaXMuaW5pdChhLGIpfTtfLkYoXy5yaSxfLnBpKTt2YXIgc2k9ezI6InRvdWNoIiwzOiJwZW4iLDQ6Im1vdXNlIn07Cl8ucmkucHJvdG90eXBlLmluaXQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLnR5cGU9YS50eXBlLGQ9YS5jaGFuZ2VkVG91Y2hlcyYmYS5jaGFuZ2VkVG91Y2hlcy5sZW5ndGg/YS5jaGFuZ2VkVG91Y2hlc1swXTpudWxsO3RoaXMudGFyZ2V0PWEudGFyZ2V0fHxhLnNyY0VsZW1lbnQ7dGhpcy5jdXJyZW50VGFyZ2V0PWI7aWYoYj1hLnJlbGF0ZWRUYXJnZXQpe2lmKF8uc2Ype2E6e3RyeXtfLm5mKGIubm9kZU5hbWUpO3ZhciBlPSEwO2JyZWFrIGF9Y2F0Y2goZil7fWU9ITF9ZXx8KGI9bnVsbCl9fWVsc2UibW91c2VvdmVyIj09Yz9iPWEuZnJvbUVsZW1lbnQ6Im1vdXNlb3V0Ij09YyYmKGI9YS50b0VsZW1lbnQpO3RoaXMucmVsYXRlZFRhcmdldD1iO2Q/KHRoaXMuY2xpZW50WD12b2lkIDAhPT1kLmNsaWVudFg/ZC5jbGllbnRYOmQucGFnZVgsdGhpcy5jbGllbnRZPXZvaWQgMCE9PWQuY2xpZW50WT9kLmNsaWVudFk6ZC5wYWdlWSx0aGlzLnNjcmVlblg9ZC5zY3JlZW5YfHwwLHRoaXMuc2NyZWVuWT0KZC5zY3JlZW5ZfHwwKToodGhpcy5vZmZzZXRYPV8udGZ8fHZvaWQgMCE9PWEub2Zmc2V0WD9hLm9mZnNldFg6YS5sYXllclgsdGhpcy5vZmZzZXRZPV8udGZ8fHZvaWQgMCE9PWEub2Zmc2V0WT9hLm9mZnNldFk6YS5sYXllclksdGhpcy5jbGllbnRYPXZvaWQgMCE9PWEuY2xpZW50WD9hLmNsaWVudFg6YS5wYWdlWCx0aGlzLmNsaWVudFk9dm9pZCAwIT09YS5jbGllbnRZP2EuY2xpZW50WTphLnBhZ2VZLHRoaXMuc2NyZWVuWD1hLnNjcmVlblh8fDAsdGhpcy5zY3JlZW5ZPWEuc2NyZWVuWXx8MCk7dGhpcy5idXR0b249YS5idXR0b247dGhpcy5rZXlDb2RlPWEua2V5Q29kZXx8MDt0aGlzLmtleT1hLmtleXx8IiI7dGhpcy5jaGFyQ29kZT1hLmNoYXJDb2RlfHwoImtleXByZXNzIj09Yz9hLmtleUNvZGU6MCk7dGhpcy5jdHJsS2V5PWEuY3RybEtleTt0aGlzLmFsdEtleT1hLmFsdEtleTt0aGlzLnNoaWZ0S2V5PWEuc2hpZnRLZXk7dGhpcy5tZXRhS2V5PWEubWV0YUtleTt0aGlzLnBvaW50ZXJJZD0KYS5wb2ludGVySWR8fDA7dGhpcy5wb2ludGVyVHlwZT0ic3RyaW5nIj09PXR5cGVvZiBhLnBvaW50ZXJUeXBlP2EucG9pbnRlclR5cGU6c2lbYS5wb2ludGVyVHlwZV18fCIiO3RoaXMuc3RhdGU9YS5zdGF0ZTt0aGlzLmc9YTthLmRlZmF1bHRQcmV2ZW50ZWQmJl8ucmkuVmIucHJldmVudERlZmF1bHQuY2FsbCh0aGlzKX07Xy5yaS5wcm90b3R5cGUuc3RvcFByb3BhZ2F0aW9uPWZ1bmN0aW9uKCl7Xy5yaS5WYi5zdG9wUHJvcGFnYXRpb24uY2FsbCh0aGlzKTt0aGlzLmcuc3RvcFByb3BhZ2F0aW9uP3RoaXMuZy5zdG9wUHJvcGFnYXRpb24oKTp0aGlzLmcuY2FuY2VsQnViYmxlPSEwfTtfLnJpLnByb3RvdHlwZS5wcmV2ZW50RGVmYXVsdD1mdW5jdGlvbigpe18ucmkuVmIucHJldmVudERlZmF1bHQuY2FsbCh0aGlzKTt2YXIgYT10aGlzLmc7YS5wcmV2ZW50RGVmYXVsdD9hLnByZXZlbnREZWZhdWx0KCk6YS5yZXR1cm5WYWx1ZT0hMX07Cl8udGk9ImNsb3N1cmVfbGlzdGVuYWJsZV8iKygxRTYqTWF0aC5yYW5kb20oKXwwKTtfLnVpPWZ1bmN0aW9uKGEpe3JldHVybiEoIWF8fCFhW18udGldKX07CnZhciB2aT0wOwp2YXIgd2k9ZnVuY3Rpb24oYSxiLGMsZCxlKXt0aGlzLmxpc3RlbmVyPWE7dGhpcy5nPW51bGw7dGhpcy5zcmM9Yjt0aGlzLnR5cGU9Yzt0aGlzLmNhcHR1cmU9ISFkO3RoaXMuYWY9ZTt0aGlzLmtleT0rK3ZpO3RoaXMuWGg9dGhpcy5ubT0hMX0seGk9ZnVuY3Rpb24oYSl7YS5YaD0hMDthLmxpc3RlbmVyPW51bGw7YS5nPW51bGw7YS5zcmM9bnVsbDthLmFmPW51bGx9Owp2YXIgeWk9ZnVuY3Rpb24oYSl7dGhpcy5zcmM9YTt0aGlzLmc9e307dGhpcy5pPTB9LEFpLHppO3lpLnByb3RvdHlwZS5hZGQ9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1hLnRvU3RyaW5nKCk7YT10aGlzLmdbZl07YXx8KGE9dGhpcy5nW2ZdPVtdLHRoaXMuaSsrKTt2YXIgZz16aShhLGIsZCxlKTstMTxnPyhiPWFbZ10sY3x8KGIubm09ITEpKTooYj1uZXcgd2koYix0aGlzLnNyYyxmLCEhZCxlKSxiLm5tPWMsYS5wdXNoKGIpKTtyZXR1cm4gYn07eWkucHJvdG90eXBlLnJlbW92ZT1mdW5jdGlvbihhLGIsYyxkKXthPWEudG9TdHJpbmcoKTtpZighKGEgaW4gdGhpcy5nKSlyZXR1cm4hMTt2YXIgZT10aGlzLmdbYV07Yj16aShlLGIsYyxkKTtyZXR1cm4tMTxiPyh4aShlW2JdKSxfLnVhKGUsYiksMD09ZS5sZW5ndGgmJihkZWxldGUgdGhpcy5nW2FdLHRoaXMuaS0tKSwhMCk6ITF9OwpBaT1mdW5jdGlvbihhLGIpe3ZhciBjPWIudHlwZTtjIGluIGEuZyYmXy52YShhLmdbY10sYikmJih4aShiKSwwPT1hLmdbY10ubGVuZ3RoJiYoZGVsZXRlIGEuZ1tjXSxhLmktLSkpfTtfLkJpPWZ1bmN0aW9uKGEsYixjLGQsZSl7YT1hLmdbYi50b1N0cmluZygpXTtiPS0xO2EmJihiPXppKGEsYyxkLGUpKTtyZXR1cm4tMTxiP2FbYl06bnVsbH07emk9ZnVuY3Rpb24oYSxiLGMsZCl7Zm9yKHZhciBlPTA7ZTxhLmxlbmd0aDsrK2Upe3ZhciBmPWFbZV07aWYoIWYuWGgmJmYubGlzdGVuZXI9PWImJmYuY2FwdHVyZT09ISFjJiZmLmFmPT1kKXJldHVybiBlfXJldHVybi0xfTsKdmFyIENpLERpLEVpLElpLEtpLExpLE1pLFBpO0NpPSJjbG9zdXJlX2xtXyIrKDFFNipNYXRoLnJhbmRvbSgpfDApO0RpPXt9O0VpPTA7Xy5HaT1mdW5jdGlvbihhLGIsYyxkLGUpe2lmKGQmJmQub25jZSlyZXR1cm4gXy5GaShhLGIsYyxkLGUpO2lmKEFycmF5LmlzQXJyYXkoYikpe2Zvcih2YXIgZj0wO2Y8Yi5sZW5ndGg7ZisrKV8uR2koYSxiW2ZdLGMsZCxlKTtyZXR1cm4gbnVsbH1jPV8uSGkoYyk7cmV0dXJuIF8udWkoYSk/YS5saXN0ZW4oYixjLF8uQmEoZCk/ISFkLmNhcHR1cmU6ISFkLGUpOklpKGEsYixjLCExLGQsZSl9OwpJaT1mdW5jdGlvbihhLGIsYyxkLGUsZil7aWYoIWIpdGhyb3cgRXJyb3IoIkMiKTt2YXIgZz1fLkJhKGUpPyEhZS5jYXB0dXJlOiEhZSxrPV8uSmkoYSk7a3x8KGFbQ2ldPWs9bmV3IHlpKGEpKTtjPWsuYWRkKGIsYyxkLGcsZik7aWYoYy5nKXJldHVybiBjO2Q9S2koKTtjLmc9ZDtkLnNyYz1hO2QubGlzdGVuZXI9YztpZihhLmFkZEV2ZW50TGlzdGVuZXIpcWl8fChlPWcpLHZvaWQgMD09PWUmJihlPSExKSxhLmFkZEV2ZW50TGlzdGVuZXIoYi50b1N0cmluZygpLGQsZSk7ZWxzZSBpZihhLmF0dGFjaEV2ZW50KWEuYXR0YWNoRXZlbnQoTGkoYi50b1N0cmluZygpKSxkKTtlbHNlIGlmKGEuYWRkTGlzdGVuZXImJmEucmVtb3ZlTGlzdGVuZXIpYS5hZGRMaXN0ZW5lcihkKTtlbHNlIHRocm93IEVycm9yKCJEIik7RWkrKztyZXR1cm4gY307S2k9ZnVuY3Rpb24oKXt2YXIgYT1NaSxiPWZ1bmN0aW9uKGMpe3JldHVybiBhLmNhbGwoYi5zcmMsYi5saXN0ZW5lcixjKX07cmV0dXJuIGJ9OwpfLkZpPWZ1bmN0aW9uKGEsYixjLGQsZSl7aWYoQXJyYXkuaXNBcnJheShiKSl7Zm9yKHZhciBmPTA7ZjxiLmxlbmd0aDtmKyspXy5GaShhLGJbZl0sYyxkLGUpO3JldHVybiBudWxsfWM9Xy5IaShjKTtyZXR1cm4gXy51aShhKT9hLkpvKGIsYyxfLkJhKGQpPyEhZC5jYXB0dXJlOiEhZCxlKTpJaShhLGIsYywhMCxkLGUpfTtfLk5pPWZ1bmN0aW9uKGEsYixjLGQsZSl7aWYoQXJyYXkuaXNBcnJheShiKSlmb3IodmFyIGY9MDtmPGIubGVuZ3RoO2YrKylfLk5pKGEsYltmXSxjLGQsZSk7ZWxzZSBkPV8uQmEoZCk/ISFkLmNhcHR1cmU6ISFkLGM9Xy5IaShjKSxfLnVpKGEpP2EuSXMoYixjLGQsZSk6YSYmKGE9Xy5KaShhKSkmJihiPV8uQmkoYSxiLGMsZCxlKSkmJl8uT2koYil9OwpfLk9pPWZ1bmN0aW9uKGEpe2lmKCJudW1iZXIiIT09dHlwZW9mIGEmJmEmJiFhLlhoKXt2YXIgYj1hLnNyYztpZihfLnVpKGIpKWIuU3IoYSk7ZWxzZXt2YXIgYz1hLnR5cGUsZD1hLmc7Yi5yZW1vdmVFdmVudExpc3RlbmVyP2IucmVtb3ZlRXZlbnRMaXN0ZW5lcihjLGQsYS5jYXB0dXJlKTpiLmRldGFjaEV2ZW50P2IuZGV0YWNoRXZlbnQoTGkoYyksZCk6Yi5hZGRMaXN0ZW5lciYmYi5yZW1vdmVMaXN0ZW5lciYmYi5yZW1vdmVMaXN0ZW5lcihkKTtFaS0tOyhjPV8uSmkoYikpPyhBaShjLGEpLDA9PWMuaSYmKGMuc3JjPW51bGwsYltDaV09bnVsbCkpOnhpKGEpfX19O0xpPWZ1bmN0aW9uKGEpe3JldHVybiBhIGluIERpP0RpW2FdOkRpW2FdPSJvbiIrYX07TWk9ZnVuY3Rpb24oYSxiKXtpZihhLlhoKWE9ITA7ZWxzZXtiPW5ldyBfLnJpKGIsdGhpcyk7dmFyIGM9YS5saXN0ZW5lcixkPWEuYWZ8fGEuc3JjO2Eubm0mJl8uT2koYSk7YT1jLmNhbGwoZCxiKX1yZXR1cm4gYX07Cl8uSmk9ZnVuY3Rpb24oYSl7YT1hW0NpXTtyZXR1cm4gYSBpbnN0YW5jZW9mIHlpP2E6bnVsbH07UGk9Il9fY2xvc3VyZV9ldmVudHNfZm5fIisoMUU5Kk1hdGgucmFuZG9tKCk+Pj4wKTtfLkhpPWZ1bmN0aW9uKGEpe2lmKCJmdW5jdGlvbiI9PT10eXBlb2YgYSlyZXR1cm4gYTthW1BpXXx8KGFbUGldPWZ1bmN0aW9uKGIpe3JldHVybiBhLmhhbmRsZUV2ZW50KGIpfSk7cmV0dXJuIGFbUGldfTtSZChmdW5jdGlvbihhKXtNaT1hKE1pKX0pOwpfLlFpPWZ1bmN0aW9uKCl7Xy5tZC5jYWxsKHRoaXMpO3RoaXMubz1uZXcgeWkodGhpcyk7dGhpcy5Paj10aGlzO3RoaXMua2I9bnVsbH07Xy5GKF8uUWksXy5tZCk7Xy5RaS5wcm90b3R5cGVbXy50aV09ITA7Xy5oPV8uUWkucHJvdG90eXBlO18uaC5ncT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmtifTtfLmguYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhLGIsYyxkKXtfLkdpKHRoaXMsYSxiLGMsZCl9O18uaC5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGEsYixjLGQpe18uTmkodGhpcyxhLGIsYyxkKX07Cl8uaC5kaXNwYXRjaEV2ZW50PWZ1bmN0aW9uKGEpe3ZhciBiLGM9dGhpcy5ncSgpO2lmKGMpZm9yKGI9W107YztjPWMuZ3EoKSliLnB1c2goYyk7Yz10aGlzLk9qO3ZhciBkPWEudHlwZXx8YTtpZigic3RyaW5nIj09PXR5cGVvZiBhKWE9bmV3IF8ucGkoYSxjKTtlbHNlIGlmKGEgaW5zdGFuY2VvZiBfLnBpKWEudGFyZ2V0PWEudGFyZ2V0fHxjO2Vsc2V7dmFyIGU9YTthPW5ldyBfLnBpKGQsYyk7Xy5BZShhLGUpfWU9ITA7aWYoYilmb3IodmFyIGY9Yi5sZW5ndGgtMTshYS5pJiYwPD1mO2YtLSl7dmFyIGc9YS5jdXJyZW50VGFyZ2V0PWJbZl07ZT1nLnFrKGQsITAsYSkmJmV9YS5pfHwoZz1hLmN1cnJlbnRUYXJnZXQ9YyxlPWcucWsoZCwhMCxhKSYmZSxhLml8fChlPWcucWsoZCwhMSxhKSYmZSkpO2lmKGIpZm9yKGY9MDshYS5pJiZmPGIubGVuZ3RoO2YrKylnPWEuY3VycmVudFRhcmdldD1iW2ZdLGU9Zy5xayhkLCExLGEpJiZlO3JldHVybiBlfTsKXy5oLmhiPWZ1bmN0aW9uKCl7Xy5RaS5WYi5oYi5jYWxsKHRoaXMpO3RoaXMuWHYoKTt0aGlzLmtiPW51bGx9O18uaC5saXN0ZW49ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIHRoaXMuby5hZGQoU3RyaW5nKGEpLGIsITEsYyxkKX07Xy5oLkpvPWZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiB0aGlzLm8uYWRkKFN0cmluZyhhKSxiLCEwLGMsZCl9O18uaC5Jcz1mdW5jdGlvbihhLGIsYyxkKXt0aGlzLm8ucmVtb3ZlKFN0cmluZyhhKSxiLGMsZCl9O18uaC5Tcj1mdW5jdGlvbihhKXtBaSh0aGlzLm8sYSl9O18uaC5Ydj1mdW5jdGlvbigpe2lmKHRoaXMubyl7dmFyIGE9dGhpcy5vLGI9MCxjO2ZvcihjIGluIGEuZyl7Zm9yKHZhciBkPWEuZ1tjXSxlPTA7ZTxkLmxlbmd0aDtlKyspKytiLHhpKGRbZV0pO2RlbGV0ZSBhLmdbY107YS5pLS19fX07Cl8uaC5xaz1mdW5jdGlvbihhLGIsYyl7YT10aGlzLm8uZ1tTdHJpbmcoYSldO2lmKCFhKXJldHVybiEwO2E9YS5jb25jYXQoKTtmb3IodmFyIGQ9ITAsZT0wO2U8YS5sZW5ndGg7KytlKXt2YXIgZj1hW2VdO2lmKGYmJiFmLlhoJiZmLmNhcHR1cmU9PWIpe3ZhciBnPWYubGlzdGVuZXIsaz1mLmFmfHxmLnNyYztmLm5tJiZ0aGlzLlNyKGYpO2Q9ITEhPT1nLmNhbGwoayxjKSYmZH19cmV0dXJuIGQmJiFjLmRlZmF1bHRQcmV2ZW50ZWR9O18uaC5Jbz1fLmNhKDUpOwpfLlJpPWZ1bmN0aW9uKGEsYil7Xy5RaS5jYWxsKHRoaXMpO3RoaXMuaT1hfHwxO3RoaXMuZz1ifHxfLm47dGhpcy5qPSgwLF8udCkodGhpcy5PeCx0aGlzKTt0aGlzLnM9Xy5oZCgpfTtfLkYoXy5SaSxfLlFpKTtfLmg9Xy5SaS5wcm90b3R5cGU7Xy5oLmVuYWJsZWQ9ITE7Xy5oLkFlPW51bGw7Xy5oLnNldEludGVydmFsPWZ1bmN0aW9uKGEpe3RoaXMuaT1hO3RoaXMuQWUmJnRoaXMuZW5hYmxlZD8oXy5TaSh0aGlzKSx0aGlzLnN0YXJ0KCkpOnRoaXMuQWUmJl8uU2kodGhpcyl9O18uaC5PeD1mdW5jdGlvbigpe2lmKHRoaXMuZW5hYmxlZCl7dmFyIGE9Xy5oZCgpLXRoaXMuczswPGEmJmE8LjgqdGhpcy5pP3RoaXMuQWU9dGhpcy5nLnNldFRpbWVvdXQodGhpcy5qLHRoaXMuaS1hKToodGhpcy5BZSYmKHRoaXMuZy5jbGVhclRpbWVvdXQodGhpcy5BZSksdGhpcy5BZT1udWxsKSx0aGlzLmRpc3BhdGNoRXZlbnQoInRpY2siKSx0aGlzLmVuYWJsZWQmJihfLlNpKHRoaXMpLHRoaXMuc3RhcnQoKSkpfX07Cl8uaC5zdGFydD1mdW5jdGlvbigpe3RoaXMuZW5hYmxlZD0hMDt0aGlzLkFlfHwodGhpcy5BZT10aGlzLmcuc2V0VGltZW91dCh0aGlzLmosdGhpcy5pKSx0aGlzLnM9Xy5oZCgpKX07Xy5TaT1mdW5jdGlvbihhKXthLmVuYWJsZWQ9ITE7YS5BZSYmKGEuZy5jbGVhclRpbWVvdXQoYS5BZSksYS5BZT1udWxsKX07Xy5SaS5wcm90b3R5cGUuaGI9ZnVuY3Rpb24oKXtfLlJpLlZiLmhiLmNhbGwodGhpcyk7Xy5TaSh0aGlzKTtkZWxldGUgdGhpcy5nfTtfLk49ZnVuY3Rpb24oYSxiLGMpe2lmKCJmdW5jdGlvbiI9PT10eXBlb2YgYSljJiYoYT0oMCxfLnQpKGEsYykpO2Vsc2UgaWYoYSYmImZ1bmN0aW9uIj09dHlwZW9mIGEuaGFuZGxlRXZlbnQpYT0oMCxfLnQpKGEuaGFuZGxlRXZlbnQsYSk7ZWxzZSB0aHJvdyBFcnJvcigiRSIpO3JldHVybiAyMTQ3NDgzNjQ3PE51bWJlcihiKT8tMTpfLm4uc2V0VGltZW91dChhLGJ8fDApfTtfLlRpPWZ1bmN0aW9uKGEpe18ubi5jbGVhclRpbWVvdXQoYSl9OwpfLm5iPWZ1bmN0aW9uKGEsYil7dmFyIGM9bnVsbDtyZXR1cm4gXy5yYihuZXcgXy5NZyhmdW5jdGlvbihkLGUpe2M9Xy5OKGZ1bmN0aW9uKCl7ZChiKX0sYSk7LTE9PWMmJmUoRXJyb3IoIkYiKSl9KSxmdW5jdGlvbihkKXtfLlRpKGMpO3Rocm93IGQ7fSl9Owp2YXIgVWk9ZnVuY3Rpb24oYSxiLGMpe3RoaXMuYWN0aW9uPWE7dGhpcy50YXJnZXQ9Ynx8bnVsbDt0aGlzLlljPWN8fG51bGx9O1VpLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiJ3aXouQWN0aW9uPG5hbWU9Iit0aGlzLmFjdGlvbisiLCBqc25hbWU9Iit0aGlzLnRhcmdldCsiPiJ9Owp2YXIgVmk9ZnVuY3Rpb24oKXt0aGlzLmc9W119LFppPWZ1bmN0aW9uKGEpe3ZhciBiPVdpW2FdO2lmKGIpcmV0dXJuIGI7dmFyIGM9YS5zdGFydHNXaXRoKCJ0cmlnZ2VyLiIpO2I9YS5zcGxpdCgiLCIpO3ZhciBkPW5ldyBWaTtiLmZvckVhY2goZnVuY3Rpb24oZSl7ZT0oMCxfLmFlKShlKTtlPWUubWF0Y2goYz9YaTpZaSk7dmFyIGY9bnVsbCxnPW51bGw7aWYoZVsyXSlmb3IodmFyIGs9ZVsyXS5zcGxpdCgifCIpLGw9MDtsPGsubGVuZ3RoO2wrKyl7dmFyIG09a1tsXS5zcGxpdCgiPSIpO21bMV0/KGZ8fChmPXt9KSxmW21bMF1dPW1bMV0pOmd8fChnPW1bMF0pfWQuZy5wdXNoKG5ldyBVaShlWzFdLGcsZikpfSk7cmV0dXJuIFdpW2FdPWR9O1ZpLnByb3RvdHlwZS5nZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nfTt2YXIgWWk9L15cLj8oXHcrKSg/OlwoKFtcd3w9LV0rKVwpKT8kLyxYaT0vXih0cmlnZ2VyLltcd1wuXSspKD86XCgoW1x3fD0tXSspXCkpPyQvLFdpPXt9Owp2YXIgJGk7JGk9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLl9fd2l6O2N8fChjPWEuX193aXo9e30pO3JldHVybiBjW2IudG9TdHJpbmcoKV19O18uYWo9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5UYShhLGZ1bmN0aW9uKGMpe3JldHVybiBfLnNnKGMpJiZjLmhhc0F0dHJpYnV0ZSgianNjb250cm9sbGVyIil9LGIsITApfTsKXy5iaj1mdW5jdGlvbihhLGIsYyxkLGUpe3RoaXMudHlwZT1hLnR5cGU7dGhpcy5ldmVudD1hO3RoaXMuaT1iO3RoaXMuZz1jO3RoaXMuZGF0YT1hLmRhdGE7dGhpcy5zb3VyY2U9ZDt0aGlzLmo9dm9pZCAwPT09ZT9iOmV9OwovKgoKIENvcHlyaWdodCAyMDEzIEdvb2dsZSBMTEMuCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwp2YXIgY2o9e307CnZhciBkaixpaixlajtkaj17fTtfLmZqPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPSgwLF8uYWUpKGEuZ2V0QXR0cmlidXRlKCJqc2FjdGlvbiIpfHwiIik7Yz0oMCxfLnQpKGMsZHx8bnVsbCk7Yj1iIGluc3RhbmNlb2YgQXJyYXk/YjpbYl07ZD1fLkMoYik7Zm9yKHZhciBmPWQubmV4dCgpOyFmLmRvbmU7Zj1kLm5leHQoKSl7Zj1mLnZhbHVlO2lmKCFlaihlLGYpKXtlJiYhLzskLy50ZXN0KGUpJiYoZSs9IjsiKTtlKz1mKyI6LkNMSUVOVCI7dmFyIGc9YTtnLnNldEF0dHJpYnV0ZSgianNhY3Rpb24iLGUpO18uVWEoZyl9KGc9JGkoYSxmKSk/Zy5wdXNoKGMpOmEuX193aXpbZl09W2NdfXJldHVybntDQTpiLGNiOmMsdTphfX07Cl8uZ2o9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPV8uQyhhLkNBKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTtpZihjPSRpKGEudSxkKSlpZihfLnZhKGMsYS5jYiksMD09Yy5sZW5ndGgpe3ZhciBlPWEudTtjPSgwLF8uYWUpKGUuZ2V0QXR0cmlidXRlKCJqc2FjdGlvbiIpfHwiIik7ZCs9IjouQ0xJRU5UIjtjPWMucmVwbGFjZShkKyI7IiwiIik7Yz1jLnJlcGxhY2UoZCwiIik7ZD1lO2Quc2V0QXR0cmlidXRlKCJqc2FjdGlvbiIsYyk7Xy5VYShkKX19fTtfLmRiPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9Xy5oaihfLmRnKGEpKTthPXt0eXBlOmIsdGFyZ2V0OmEsYnViYmxlczp2b2lkIDAhPWQ/ZDohMH07dm9pZCAwIT09YyYmKGEuZGF0YT1jKTtlJiZfLkFlKGEsZSk7Zi5CYShhKX07Cl8uamo9ZnVuY3Rpb24oYSxiLGMsZCxlKXthPWlqKGEsYik7Xy5wKGEsZnVuY3Rpb24oZil7dmFyIGc9ZTtkJiYoZz1nfHx7fSxnLl9fc291cmNlPWQpO18uZGIoZixiLGMsITEsZyl9KX07aWo9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXSxkPWZ1bmN0aW9uKGUpe3ZhciBmPWZ1bmN0aW9uKGcpe18ubWkuaGFzKGcpJiZfLnAoXy5taS5nZXQoZyksZnVuY3Rpb24oayl7Xy52YyhhLGspfHxkKGspfSk7Xy5raihnLGIpJiZjLnB1c2goZyl9O18ucChlLnF1ZXJ5U2VsZWN0b3JBbGwoJ1tqc2FjdGlvbio9IicrYisnIl0sW2pzY29udHJvbGxlcl1bX19JU19PV05FUl0nKSxmKTtfLnNnKGUpJiZmKGUpfTtkKGEpO3JldHVybiBjfTtfLmtqPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5fX2pzYWN0aW9uO3JldHVybiBjPyEhY1tiXTplaihhLmdldEF0dHJpYnV0ZSgianNhY3Rpb24iKSxiKX07CmVqPWZ1bmN0aW9uKGEsYil7aWYoIWEpcmV0dXJuITE7dmFyIGM9Y2pbYV07aWYoYylyZXR1cm4hIWNbYl07Yz1kaltiXTtjfHwoYz1uZXcgUmVnRXhwKCIoXlxccyoiK2IrIlxccyo6fFtcXHM7XSIrYisiXFxzKjopIiksZGpbYl09Yyk7cmV0dXJuIGMudGVzdChhKX07Xy5oaj1mdW5jdGlvbihhKXtyZXR1cm4gYS5fX3dpemRpc3BhdGNoZXJ9Owp2YXIgbGo7bGo9ZnVuY3Rpb24oYSl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiBhLmNsYXNzTmFtZT9hLmNsYXNzTmFtZTphLmdldEF0dHJpYnV0ZSYmYS5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fCIifTtfLm1qPWZ1bmN0aW9uKGEpe3JldHVybiBhLmNsYXNzTGlzdD9hLmNsYXNzTGlzdDpsaihhKS5tYXRjaCgvXFMrL2cpfHxbXX07Xy5uaj1mdW5jdGlvbihhLGIpeyJzdHJpbmciPT10eXBlb2YgYS5jbGFzc05hbWU/YS5jbGFzc05hbWU9YjphLnNldEF0dHJpYnV0ZSYmYS5zZXRBdHRyaWJ1dGUoImNsYXNzIixiKX07Xy5vaj1mdW5jdGlvbihhLGIpe3JldHVybiBhLmNsYXNzTGlzdD9hLmNsYXNzTGlzdC5jb250YWlucyhiKTpfLnJhKF8ubWooYSksYil9O18ucGo9ZnVuY3Rpb24oYSxiKXtpZihhLmNsYXNzTGlzdClhLmNsYXNzTGlzdC5hZGQoYik7ZWxzZSBpZighXy5vaihhLGIpKXt2YXIgYz1saihhKTtfLm5qKGEsYysoMDxjLmxlbmd0aD8iICIrYjpiKSl9fTsKXy5xaj1mdW5jdGlvbihhLGIpe2EuY2xhc3NMaXN0P2EuY2xhc3NMaXN0LnJlbW92ZShiKTpfLm9qKGEsYikmJl8ubmooYSxfLndkKF8ubWooYSksZnVuY3Rpb24oYyl7cmV0dXJuIGMhPWJ9KS5qb2luKCIgIikpfTsKXy5yaj0hXy5HLkRzJiYhXy5VYigpO18uc2o9ZnVuY3Rpb24oYSxiKXtpZigvLVthLXpdLy50ZXN0KGIpKXJldHVybiBudWxsO2lmKF8ucmomJmEuZGF0YXNldCl7aWYoQ2UoKSYmIShiIGluIGEuZGF0YXNldCkpcmV0dXJuIG51bGw7YT1hLmRhdGFzZXRbYl07cmV0dXJuIHZvaWQgMD09PWE/bnVsbDphfXJldHVybiBhLmdldEF0dHJpYnV0ZSgiZGF0YS0iK18uZ2YoYikpfTtfLnRqPWZ1bmN0aW9uKGEsYil7cmV0dXJuLy1bYS16XS8udGVzdChiKT8hMTpfLnJqJiZhLmRhdGFzZXQ/YiBpbiBhLmRhdGFzZXQ6YS5oYXNBdHRyaWJ1dGU/YS5oYXNBdHRyaWJ1dGUoImRhdGEtIitfLmdmKGIpKTohIWEuZ2V0QXR0cmlidXRlKCJkYXRhLSIrXy5nZihiKSl9OwpfLnVqPSJTdG9wSXRlcmF0aW9uImluIF8ubj9fLm4uU3RvcEl0ZXJhdGlvbjp7bWVzc2FnZToiU3RvcEl0ZXJhdGlvbiIsc3RhY2s6IiJ9O18udmo9ZnVuY3Rpb24oKXt9O18udmoucHJvdG90eXBlLm5leHQ9ZnVuY3Rpb24oKXt0aHJvdyBfLnVqO307Xy52ai5wcm90b3R5cGUubmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc307Cl8ueGo9ZnVuY3Rpb24oYSxiKXt0aGlzLmk9e307dGhpcy5nPVtdO3RoaXMubz10aGlzLmo9MDt2YXIgYz1hcmd1bWVudHMubGVuZ3RoO2lmKDE8Yyl7aWYoYyUyKXRocm93IEVycm9yKCJ0Iik7Zm9yKHZhciBkPTA7ZDxjO2QrPTIpdGhpcy5zZXQoYXJndW1lbnRzW2RdLGFyZ3VtZW50c1tkKzFdKX1lbHNlIGEmJl8ud2oodGhpcyxhKX07Xy54ai5wcm90b3R5cGUuTGM9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5qfTtfLnhqLnByb3RvdHlwZS5PYz1mdW5jdGlvbigpe3lqKHRoaXMpO2Zvcih2YXIgYT1bXSxiPTA7Yjx0aGlzLmcubGVuZ3RoO2IrKylhLnB1c2godGhpcy5pW3RoaXMuZ1tiXV0pO3JldHVybiBhfTtfLnhqLnByb3RvdHlwZS5xZD1mdW5jdGlvbigpe3lqKHRoaXMpO3JldHVybiB0aGlzLmcuY29uY2F0KCl9O18uQWo9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy56aihhLmksYil9O18ueGoucHJvdG90eXBlLnJoPV8uY2EoNik7Cl8ueGoucHJvdG90eXBlLkVjPWZ1bmN0aW9uKGEsYil7aWYodGhpcz09PWEpcmV0dXJuITA7aWYodGhpcy5qIT1hLkxjKCkpcmV0dXJuITE7Yj1ifHxCajt5aih0aGlzKTtmb3IodmFyIGMsZD0wO2M9dGhpcy5nW2RdO2QrKylpZighYih0aGlzLmdldChjKSxhLmdldChjKSkpcmV0dXJuITE7cmV0dXJuITB9O3ZhciBCaj1mdW5jdGlvbihhLGIpe3JldHVybiBhPT09Yn07Xy54ai5wcm90b3R5cGUuemM9ZnVuY3Rpb24oKXtyZXR1cm4gMD09dGhpcy5qfTtfLnhqLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3RoaXMuaT17fTt0aGlzLm89dGhpcy5qPXRoaXMuZy5sZW5ndGg9MH07Xy54ai5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKGEpe3JldHVybiBfLnpqKHRoaXMuaSxhKT8oZGVsZXRlIHRoaXMuaVthXSx0aGlzLmotLSx0aGlzLm8rKyx0aGlzLmcubGVuZ3RoPjIqdGhpcy5qJiZ5aih0aGlzKSwhMCk6ITF9Owp2YXIgeWo9ZnVuY3Rpb24oYSl7aWYoYS5qIT1hLmcubGVuZ3RoKXtmb3IodmFyIGI9MCxjPTA7YjxhLmcubGVuZ3RoOyl7dmFyIGQ9YS5nW2JdO18uemooYS5pLGQpJiYoYS5nW2MrK109ZCk7YisrfWEuZy5sZW5ndGg9Y31pZihhLmohPWEuZy5sZW5ndGgpe3ZhciBlPXt9O2ZvcihjPWI9MDtiPGEuZy5sZW5ndGg7KWQ9YS5nW2JdLF8uemooZSxkKXx8KGEuZ1tjKytdPWQsZVtkXT0xKSxiKys7YS5nLmxlbmd0aD1jfX07Xy54ai5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8uemoodGhpcy5pLGEpP3RoaXMuaVthXTpifTtfLnhqLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oYSxiKXtfLnpqKHRoaXMuaSxhKXx8KHRoaXMuaisrLHRoaXMuZy5wdXNoKGEpLHRoaXMubysrKTt0aGlzLmlbYV09Yn07Cl8ud2o9ZnVuY3Rpb24oYSxiKXtpZihiIGluc3RhbmNlb2YgXy54ailmb3IodmFyIGM9Yi5xZCgpLGQ9MDtkPGMubGVuZ3RoO2QrKylhLnNldChjW2RdLGIuZ2V0KGNbZF0pKTtlbHNlIGZvcihjIGluIGIpYS5zZXQoYyxiW2NdKX07Xy54ai5wcm90b3R5cGUuZm9yRWFjaD1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz10aGlzLnFkKCksZD0wO2Q8Yy5sZW5ndGg7ZCsrKXt2YXIgZT1jW2RdLGY9dGhpcy5nZXQoZSk7YS5jYWxsKGIsZixlLHRoaXMpfX07Xy54ai5wcm90b3R5cGUubmc9ZnVuY3Rpb24oYSl7eWoodGhpcyk7dmFyIGI9MCxjPXRoaXMubyxkPXRoaXMsZT1uZXcgXy52ajtlLm5leHQ9ZnVuY3Rpb24oKXtpZihjIT1kLm8pdGhyb3cgRXJyb3IoIkoiKTtpZihiPj1kLmcubGVuZ3RoKXRocm93IF8udWo7dmFyIGY9ZC5nW2IrK107cmV0dXJuIGE/ZjpkLmlbZl19O3JldHVybiBlfTsKXy56aj1mdW5jdGlvbihhLGIpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxiKX07Cl8uQ2o9ZnVuY3Rpb24oYSl7dmFyIGI9YS50eXBlO2lmKCJzdHJpbmciPT09dHlwZW9mIGIpc3dpdGNoKGIudG9Mb3dlckNhc2UoKSl7Y2FzZSAiY2hlY2tib3giOmNhc2UgInJhZGlvIjpyZXR1cm4gYS5jaGVja2VkP2EudmFsdWU6bnVsbDtjYXNlICJzZWxlY3Qtb25lIjpyZXR1cm4gYj1hLnNlbGVjdGVkSW5kZXgsMDw9Yj9hLm9wdGlvbnNbYl0udmFsdWU6bnVsbDtjYXNlICJzZWxlY3QtbXVsdGlwbGUiOmI9W107Zm9yKHZhciBjLGQ9MDtjPWEub3B0aW9uc1tkXTtkKyspYy5zZWxlY3RlZCYmYi5wdXNoKGMudmFsdWUpO3JldHVybiBiLmxlbmd0aD9iOm51bGx9cmV0dXJuIG51bGwhPWEudmFsdWU/YS52YWx1ZTpudWxsfTsKXy5Eaj1mdW5jdGlvbigpe3JldHVybiBfLnRmPyJXZWJraXQiOl8uc2Y/Ik1veiI6Xy5WYj8ibXMiOnBmPyJPIjpudWxsfTsKdmFyIEdqLEVqO18uRmo9ZnVuY3Rpb24oYSxiLGMpe2lmKCJzdHJpbmciPT09dHlwZW9mIGIpKGI9RWooYSxiKSkmJihhLnN0eWxlW2JdPWMpO2Vsc2UgZm9yKHZhciBkIGluIGIpe2M9YTt2YXIgZT1iW2RdLGY9RWooYyxkKTtmJiYoYy5zdHlsZVtmXT1lKX19O0dqPXt9O0VqPWZ1bmN0aW9uKGEsYil7dmFyIGM9R2pbYl07aWYoIWMpe3ZhciBkPV8uZmYoYik7Yz1kO3ZvaWQgMD09PWEuc3R5bGVbZF0mJihkPV8uRGooKStfLmhmKGQpLHZvaWQgMCE9PWEuc3R5bGVbZF0mJihjPWQpKTtHaltiXT1jfXJldHVybiBjfTtfLkhqPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5kZyhhKTtyZXR1cm4gYy5kZWZhdWx0VmlldyYmYy5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlJiYoYT1jLmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoYSxudWxsKSk/YVtiXXx8YS5nZXRQcm9wZXJ0eVZhbHVlKGIpfHwiIjoiIn07Cl8uSWo9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5IaihhLGIpfHwoYS5jdXJyZW50U3R5bGU/YS5jdXJyZW50U3R5bGVbYl06bnVsbCl8fGEuc3R5bGUmJmEuc3R5bGVbYl19O18uSmo9ZnVuY3Rpb24oYSl7dHJ5e3JldHVybiBhLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpfWNhdGNoKGIpe3JldHVybntsZWZ0OjAsdG9wOjAscmlnaHQ6MCxib3R0b206MH19fTtfLkxqPWZ1bmN0aW9uKGEsYil7YT1fLktqKGEpO2I9Xy5LaihiKTtyZXR1cm4gbmV3IF8uYWcoYS54LWIueCxhLnktYi55KX07Xy5Laj1mdW5jdGlvbihhKXtpZigxPT1hLm5vZGVUeXBlKXJldHVybiBhPV8uSmooYSksbmV3IF8uYWcoYS5sZWZ0LGEudG9wKTthPWEuY2hhbmdlZFRvdWNoZXM/YS5jaGFuZ2VkVG91Y2hlc1swXTphO3JldHVybiBuZXcgXy5hZyhhLmNsaWVudFgsYS5jbGllbnRZKX07CnZhciBVaixXaixYaixhayxQajtfLk1qPWZ1bmN0aW9uKGEpe2EgaW5zdGFuY2VvZiBfLk1qP2E9YS5BYjphWzBdaW5zdGFuY2VvZiBfLk1qJiYoYT1fLnhkKGEsZnVuY3Rpb24oYixjKXtyZXR1cm4gXy53YShiLGMuQWIpfSxbXSksXy5EYShhKSk7dGhpcy5BYj1fLnhhKGEpfTtfLmg9Xy5Nai5wcm90b3R5cGU7Xy5oLlhiPWZ1bmN0aW9uKGEsYixjKXsoKHZvaWQgMD09PWM/MDpjKT9fLm1hOl8ucCkodGhpcy5BYixhLGIpO3JldHVybiB0aGlzfTtfLmguc2l6ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLkFiLmxlbmd0aH07Xy5oLnpjPWZ1bmN0aW9uKCl7cmV0dXJuIDA9PT10aGlzLkFiLmxlbmd0aD8hMDohMX07Xy5oLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5BYlthXXx8bnVsbH07Xy5oLnU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5BYlswXXx8bnVsbH07Xy5oLlViPV8uY2EoOCk7Xy5oLm1jPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuQWIuc2xpY2UoKX07Cl8uaC5tYXA9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5sYyh0aGlzLkFiLGEsYil9O18uaC5FYz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcz09PWF8fF8uRmEodGhpcy5BYixhLkFiKX07Xy5oLlZhPV8uY2EoMTApO18uaC5CZT1fLmNhKDEyKTtfLmguY2hpbGRyZW49ZnVuY3Rpb24oKXt2YXIgYT1bXTt0aGlzLlhiKGZ1bmN0aW9uKGIpe2I9Xy5wZyhiKTtmb3IodmFyIGM9MDtjPGIubGVuZ3RoO2MrKylhLnB1c2goYltjXSl9KTtyZXR1cm4gbmV3IF8uTWooYSl9O18uaC5jbG9zZXN0PWZ1bmN0aW9uKGEpe3ZhciBiPVtdLGM9Xy5OaihhKSxkPWZ1bmN0aW9uKGUpe3JldHVybiBfLnNnKGUpJiZjKGUpfTt0aGlzLlhiKGZ1bmN0aW9uKGUpeyhlPV8udGcoZSxkLCEwKSkmJiFfLnJhKGIsZSkmJmIucHVzaChlKX0pO3JldHVybiBuZXcgXy5NaihiKX07Xy5oLm5leHQ9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uT2oodGhpcyxyZyxhKX07Cl8uT2o9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVtdLGU7Yz9lPV8uTmooYyk6ZT1QajthLlhiKGZ1bmN0aW9uKGYpeyhmPWIoZikpJiZlKGYpJiZkLnB1c2goZil9KTtyZXR1cm4gbmV3IF8uTWooZCl9O18uTWoucHJvdG90eXBlLklhPWZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0wO2I8dGhpcy5BYi5sZW5ndGg7YisrKWlmKF8ub2oodGhpcy5BYltiXSxhKSlyZXR1cm4hMDtyZXR1cm4hMX07Xy5Nai5wcm90b3R5cGUueWE9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuWGIoZnVuY3Rpb24oYil7Xy5waihiLGEpfSl9O18uTWoucHJvdG90eXBlLnZhPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLlhiKGZ1bmN0aW9uKGIpe18ucWooYixhKX0pfTtfLlFqPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4hMD09PWM/YS55YShiKTohMT09PWM/YS52YShiKTphLlhiKGZ1bmN0aW9uKGQpe18ub2ooZCxiKT9fLnFqKGQsYik6Xy5waihkLGIpfSl9O18uaD1fLk1qLnByb3RvdHlwZTtfLmguZmU9Xy5jYSgxMyk7Cl8uaC5OYT1fLmNhKDE0KTtfLmguQ2E9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdGhpcy5YYihmdW5jdGlvbihjKXtjLnNldEF0dHJpYnV0ZShhLGIpfSl9O18uaC5JYj1fLmNhKDE1KTtfLmguZ2V0U3R5bGU9ZnVuY3Rpb24oYSl7aWYoMDx0aGlzLkFiLmxlbmd0aCl7dmFyIGI9dGhpcy5BYlswXSxjPWIuc3R5bGVbXy5mZihhKV07cmV0dXJuInVuZGVmaW5lZCIhPT10eXBlb2YgYz9jOmIuc3R5bGVbRWooYixhKV18fCIifX07Xy5oLkVhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuWGIoZnVuY3Rpb24oYyl7Xy5GaihjLGEsYil9KX07Xy5oLmdldERhdGE9ZnVuY3Rpb24oYSl7aWYoMD09PXRoaXMuQWIubGVuZ3RoKXJldHVybiBuZXcgXy5SaihhLG51bGwpO3ZhciBiPV8uc2oodGhpcy5BYlswXSxhKTtyZXR1cm4gbmV3IF8uUmooYSxiKX07Xy5oLmZvY3VzPWZ1bmN0aW9uKGEpe3RyeXthP3RoaXMudSgpLmZvY3VzKGEpOnRoaXMudSgpLmZvY3VzKCl9Y2F0Y2goYil7fXJldHVybiB0aGlzfTsKXy5oLmNsaWNrPWZ1bmN0aW9uKCl7dmFyIGE9Xy5kZyh0aGlzLnUoKSk7aWYoYS5jcmVhdGVFdmVudCl7dmFyIGI9YS5jcmVhdGVFdmVudCgiTW91c2VFdmVudHMiKTtiLmluaXRNb3VzZUV2ZW50KCJjbGljayIsITAsITAsYS5kZWZhdWx0VmlldywxLDAsMCwwLDAsITEsITEsITEsITEsMCxudWxsKTt0aGlzLnUoKS5kaXNwYXRjaEV2ZW50KGIpfWVsc2UgYj1hLmNyZWF0ZUV2ZW50T2JqZWN0KCksYi5jbGllbnRYPTAsYi5jbGllbnRZPTAsYi5zY3JlZW5YPTAsYi5zY3JlZW5ZPTAsYi5hbHRLZXk9ITEsYi5jdHJsS2V5PSExLGIuc2hpZnRLZXk9ITEsYi5idXR0b249MCx0aGlzLnUoKS5maXJlRXZlbnQoIm9uY2xpY2siLGIpfTsKXy5Taj1mdW5jdGlvbihhLGIsYyxkKXtmdW5jdGlvbiBlKGssbCxtKXt2YXIgcT1sO2wmJmwucGFyZW50Tm9kZSYmKHE9bC5jbG9uZU5vZGUoITApKTtrKHEsbSl9ZD12b2lkIDA9PT1kPyExOmQ7aWYoMT09YS5BYi5sZW5ndGgpe3ZhciBmPWEuQWJbMF0sZz1mdW5jdGlvbihrKXtyZXR1cm4gYihrLGYpfTtjIGluc3RhbmNlb2YgXy5Naj9jLlhiKGcsdm9pZCAwLGQpOkFycmF5LmlzQXJyYXkoYyk/KGQ/Xy5tYTpfLnApKGMsZyk6ZyhjKTtyZXR1cm4gYX1yZXR1cm4gYS5YYihmdW5jdGlvbihrKXtjIGluc3RhbmNlb2YgXy5Naj9jLlhiKGZ1bmN0aW9uKGwpe2UoYixsLGspfSk6QXJyYXkuaXNBcnJheShjKT9fLnAoYyxmdW5jdGlvbihsKXtlKGIsbCxrKX0pOmUoYixjLGspfSl9O18uaD1fLk1qLnByb3RvdHlwZTtfLmguYXBwZW5kPWZ1bmN0aW9uKGEpe3JldHVybiBfLlNqKHRoaXMsZnVuY3Rpb24oYixjKXtiJiZjLmFwcGVuZENoaWxkKGIpfSxhKX07Cl8uaC5yZW1vdmU9ZnVuY3Rpb24oKXtyZXR1cm4gXy5Taih0aGlzLGZ1bmN0aW9uKGEsYil7Xy5vZyhiKX0sbnVsbCl9O18uaC5hZnRlcj1mdW5jdGlvbihhLGIpe3JldHVybiBfLlNqKHRoaXMsZnVuY3Rpb24oYyxkKXtjJiZkLnBhcmVudE5vZGUmJmQucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYyxkLm5leHRTaWJsaW5nKX0sYSwhKHZvaWQgMD09PWJ8fGIpKX07Xy5oLmJlZm9yZT1mdW5jdGlvbihhKXtyZXR1cm4gXy5Taih0aGlzLGZ1bmN0aW9uKGIsYyl7YiYmYy5wYXJlbnROb2RlJiZjLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGIsYyl9LGEpfTtfLmgucmVwbGFjZVdpdGg9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uU2oodGhpcyxmdW5jdGlvbihiLGMpe2lmKGIpe3ZhciBkPWMucGFyZW50Tm9kZTtkJiZkLnJlcGxhY2VDaGlsZChiLGMpfX0sYSl9O18uaC50b2dnbGU9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuWGIoZnVuY3Rpb24oYil7Yi5zdHlsZS5kaXNwbGF5PWE/IiI6Im5vbmUifSl9OwpfLmguc2hvdz1mdW5jdGlvbigpe3JldHVybiB0aGlzLnRvZ2dsZSghMCl9O18uaC5OYj1fLmNhKDE2KTtfLmguQmE9ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIHRoaXMuWGIoZnVuY3Rpb24oZSl7Xy5kYihlLGEsYixjLGQpfSl9O18uVGo9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBfLk1qP2EudSgpOmF9O18uTz1mdW5jdGlvbihhLGIpe2EgaW5zdGFuY2VvZiBfLk1qJiYoYj1hLkFiLGE9bnVsbCk7Xy5Nai5jYWxsKHRoaXMsbnVsbCE9YT9bYV06Yil9O18uRihfLk8sXy5Naik7Xy5oPV8uTy5wcm90b3R5cGU7Xy5oLmNoaWxkcmVuPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBfLk1qKEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKF8ucGcodGhpcy5BYlswXSkpKX07Xy5oLlhiPWZ1bmN0aW9uKGEsYil7YS5jYWxsKGIsdGhpcy5BYlswXSwwKTtyZXR1cm4gdGhpc307Xy5oLnNpemU9ZnVuY3Rpb24oKXtyZXR1cm4gMX07Xy5oLnU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5BYlswXX07Cl8uaC5VYj1fLmNhKDcpO18uaC5WYT1fLmNhKDkpO18uaC5CZT1fLmNhKDExKTtfLlJqPWZ1bmN0aW9uKGEsYil7dGhpcy5pPWE7dGhpcy5nPWJ9O1VqPWZ1bmN0aW9uKGEpe3Rocm93IEVycm9yKCJLYCIrYS5pKTt9O18uaD1fLlJqLnByb3RvdHlwZTtfLmguTWE9ZnVuY3Rpb24oYSl7aWYobnVsbD09dGhpcy5nKXJldHVybiAwPT1hcmd1bWVudHMubGVuZ3RoJiZVaih0aGlzKSxhO2lmKCJzdHJpbmciPT09dHlwZW9mIHRoaXMuZylyZXR1cm4gdGhpcy5nO3Rocm93IG5ldyBUeXBlRXJyb3IoIkxgIit0aGlzLmkrImAiK3RoaXMuZysiYCIrdHlwZW9mIHRoaXMuZyk7fTsKXy5oLnJiPWZ1bmN0aW9uKGEpe2lmKG51bGw9PXRoaXMuZylyZXR1cm4gMD09YXJndW1lbnRzLmxlbmd0aCYmVWoodGhpcyksYTtpZigiYm9vbGVhbiI9PT10eXBlb2YgdGhpcy5nKXJldHVybiB0aGlzLmc7aWYoInN0cmluZyI9PT10eXBlb2YgdGhpcy5nKXt2YXIgYj10aGlzLmcudG9Mb3dlckNhc2UoKTtpZigidHJ1ZSI9PT1ifHwiMSI9PT1iKXJldHVybiEwO2lmKCJmYWxzZSI9PT1ifHwiMCI9PT1iKXJldHVybiExfXRocm93IG5ldyBUeXBlRXJyb3IoIk1gIit0aGlzLmkrImAiK3RoaXMuZysiYCIrdHlwZW9mIHRoaXMuZyk7fTsKXy5oLm51bWJlcj1mdW5jdGlvbihhKXtpZihudWxsPT10aGlzLmcpcmV0dXJuIDA9PWFyZ3VtZW50cy5sZW5ndGgmJlVqKHRoaXMpLGE7aWYoIm51bWJlciI9PT10eXBlb2YgdGhpcy5nKXJldHVybiB0aGlzLmc7aWYoInN0cmluZyI9PT10eXBlb2YgdGhpcy5nKXt2YXIgYj1OdW1iZXIodGhpcy5nKTtpZighaXNOYU4oYikmJiFfLiRkKHRoaXMuZykpcmV0dXJuIGJ9dGhyb3cgbmV3IFR5cGVFcnJvcigiTmAiK3RoaXMuaSsiYCIrdGhpcy5nKyJgIit0eXBlb2YgdGhpcy5nKTt9O18uaC5RYz1mdW5jdGlvbigpe3JldHVybiBudWxsIT10aGlzLmd9O18uaC50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLk1hKCl9O18uVmo9ZnVuY3Rpb24oYSxiLGMpe2lmKG51bGw9PWEuZylyZXR1cm4gYzthPWEuTWEoKTtyZXR1cm4gXy5raShhLGIpfTsKXy5Sai5wcm90b3R5cGUuaj1mdW5jdGlvbihhKXtpZihudWxsPT10aGlzLmcpe2lmKDA9PWFyZ3VtZW50cy5sZW5ndGgpdGhyb3cgRXJyb3IoIktgIit0aGlzLmkpO3JldHVybiBhfXZhciBiPV8uaWEodGhpcy5nKT90aGlzLmc6InN0cmluZyIhPT10eXBlb2YgdGhpcy5nP1t0aGlzLmddOldqKHRoaXMpO3JldHVybiBfLmxjKGIsZnVuY3Rpb24oYyxkKXtyZXR1cm4gbmV3IF8uUmoodGhpcy5pKyJbIitkKyJdIixjKX0sdGhpcyl9O1dqPWZ1bmN0aW9uKGEpe2E9YS5NYSgpO3JldHVybiIiPT1hLnRyaW0oKT9bXTphLnNwbGl0KCIsIikubWFwKGZ1bmN0aW9uKGIpe3JldHVybiBiLnRyaW0oKX0pfTtYaj0vXlxbKFthLXowLTktXSspKD0iKFteXFwiXSopIik/XSQvOwpfLk5qPWZ1bmN0aW9uKGEpe2lmKCJzdHJpbmciPT10eXBlb2YgYSl7aWYoIi4iPT1hLmNoYXJBdCgwKSlyZXR1cm4gXy5ZaihhLnN1YnN0cigxKSk7aWYoIlsiPT1hLmNoYXJBdCgwKSl7dmFyIGI9WGouZXhlYyhhKTtyZXR1cm4gXy5aaihiWzFdLC0xPT1hLmluZGV4T2YoIj0iKT92b2lkIDA6YlszXSl9cmV0dXJuIGFrKGEpfXJldHVybiBhfTtfLllqPWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbihiKXtyZXR1cm4gYi5nZXRBdHRyaWJ1dGUmJl8ub2ooYixhKX19O18uWmo9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gZnVuY3Rpb24oYyl7cmV0dXJuIHZvaWQgMCE9PWI/Yy5nZXRBdHRyaWJ1dGUmJmMuZ2V0QXR0cmlidXRlKGEpPT1iOmMuaGFzQXR0cmlidXRlJiZjLmhhc0F0dHJpYnV0ZShhKX19O2FrPWZ1bmN0aW9uKGEpe2E9YS50b1VwcGVyQ2FzZSgpO3JldHVybiBmdW5jdGlvbihiKXtyZXR1cm4oYj1iLnRhZ05hbWUpJiZiLnRvVXBwZXJDYXNlKCk9PWF9fTtQaj1mdW5jdGlvbigpe3JldHVybiEwfTsKXy5iaz1mdW5jdGlvbihhKXt2YXIgYj12b2lkIDA9PT1iP3dpbmRvdzpiO3JldHVybiBuZXcgXy5SaihhLF8uUGEoYSxiKSl9OwpfLmRrPWZ1bmN0aW9uKGEpeygwLF8uSCkodGhpcyxhLDAsLTEsbnVsbCxjayl9O18uRihfLmRrLF8ueSk7dmFyIGNrPVtbNSw2LDddXTsKXy5laz1fLlZqKF8uYmsoIncyYnRBZSIpLF8uZGssbmV3IF8uZGspOwpfLmZrPXt9OwpfLmdrPWZ1bmN0aW9uKCl7fTtfLmhrPWZ1bmN0aW9uKGEsYil7aWYoYiE9PV8uZmspdGhyb3cgRXJyb3IoIk8iKTt0aGlzLmc9YX07Xy5EKF8uaGssXy5nayk7Xy5oay5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nfTtfLmlrPW5ldyBfLmhrKCJhYm91dDppbnZhbGlkI3pUU3oiLF8uZmspOwpfLmprPV8ubi5KU09OLnN0cmluZ2lmeTsKZ2MoRmQobmV3IF8uRWQoXy5DZCwiaHR0cHM6Ly9hcGlzLmdvb2dsZS5jb20vanMvYXBpLmpzIikpKTsKdmFyIGtrPWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBfLk1nKGZ1bmN0aW9uKGMsZCl7dmFyIGU9Yi5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsZj1lLnN0eWxlLnBvaW50ZXJFdmVudHM7ZS5zdHlsZS5wb2ludGVyRXZlbnRzPSJub25lIjt2YXIgZz1fLm5iKDRFMykudGhlbihmdW5jdGlvbigpe2QoIk9yaWdpbiBjaGVjayB0YWtpbmcgdG9vIGxvbmcuIil9KSxrPWEubGVuZ3RoLGw9ZnVuY3Rpb24obSl7dmFyIHE9bS5vcmlnaW47bS5zb3VyY2U9PWIucGFyZW50JiYidmVyaWZ5LW9yaWdpbi1yZXBseSI9PW0uZGF0YSYmKF8ucmEoYSxxKT8oZy5jYW5jZWwoKSxlLnN0eWxlLnBvaW50ZXJFdmVudHM9ZixiLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLGwpLGMoKSk6KGstLSwwPT1rJiZkKCJDbGFpbWVkIG9yaWdpbnMgIithKyIgZGlkIG5vdCBjb250YWluIGFueSBvZiB0aGUgY2hlY2tlZCBwYXJlbnQgb3JpZ2luczogIitxKSkpfTtiLmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLApsKTtfLnAoYSxmdW5jdGlvbihtKXtyZXR1cm4gYi5wYXJlbnQucG9zdE1lc3NhZ2UoInZlcmlmeS1vcmlnaW4iLG0pfSl9KX0sbGs9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYi5sb2NhdGlvbi5vcmlnaW4mJmIubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zP18uemQoYi5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnMsZnVuY3Rpb24oYyl7cmV0dXJuIF8ucmEoYSxjKXx8Yz09Yi5sb2NhdGlvbi5vcmlnaW59KTohMX07CihmdW5jdGlvbigpe3ZhciBhPXdpbmRvdztpZihhIT1hLnRvcCYmKCFUYigpfHxhLmZyYW1lcyE9YS50b3ApKWlmKF8uWGgoXy5layw0KSl7dmFyIGI9Xy5iaygiaWtmam5jIikuaihudWxsKSxjPV8uYmsoIlMxTlptZCIpLnJiKCExKTtpZihiKXtiPV8ubGMoYixmdW5jdGlvbihlKXtyZXR1cm4gZS5NYSgpfSk7aWYoXy5RYigpJiYyPT1iLmxlbmd0aCYmXy5yYShiLCJjaHJvbWUtdW50cnVzdGVkOi8vbmV3LXRhYi1wYWdlIikmJl8ucmEoYiwiY2hyb21lOi8vbmV3LXRhYi1wYWdlIikmJmxrKGIsYSkpcmV0dXJuO2lmKCFjJiYoMTxiLmxlbmd0aHx8YS50b3AhPWEucGFyZW50KSl2YXIgZD0iVGhpcyBzaXRlIGRvZXMgbm90IGFsbG93IG11bHRpLWxldmVsIGZyYW1pbmciO2Vsc2UgaWYoYS5sb2NhdGlvbi5vcmlnaW4mJmEubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zKWxrKGIsYSl8fChkPSJPbmUgb2YgY2xhaW1lZCBvcmlnaW5zICIrYisiZGlkIG5vdCBtYXRjaCBsb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnMuIik7CmVsc2V7aWYoVGIoKSYmUmIoOSl8fF8uU2IoKSYmUmIoMzMpKXJldHVybjtfLnJiKGtrKGIsYSksZnVuY3Rpb24oZSl7ZD0iT3JpZ2luIGNoZWNrIGZhaWxlZC4gIitlO18uYWYobG9jYXRpb24sUWUpO3JldHVybiEwfSl9fX1lbHNlIGQ9IkF0dGVtcHRpbmcgdG8gaWZyYW1lIHdpdGhvdXQgQEFsbG93RnJhbWluZyBhbm5vdGF0aW9uLiI7ZCYmXy5hZihsb2NhdGlvbixRZSl9KSgpOwpfLm1rPXt9OwpfLm5rPXt9OwpfLm9rPXt9OwpfLnBrPXt9OwpfLnViPWZ1bmN0aW9uKGEpeygwLF8uSCkodGhpcyxhLDAsLTEsbnVsbCxudWxsKX07Xy5GKF8udWIsXy55KTtfLnViLnByb3RvdHlwZS4kYT1mdW5jdGlvbigpe3JldHVybiBfLiRoKHRoaXMsMil9OwpfLndiPWZ1bmN0aW9uKGEpeygwLF8uSCkodGhpcyxhLDAsLTEscWssbnVsbCl9O18uRihfLndiLF8ueSk7dmFyIHFrPVszXTsKXy5YYT1mdW5jdGlvbihhLGIsYyl7Yz1jfHxbXTt0aGlzLmo9YTt0aGlzLmc9Ynx8bnVsbDt0aGlzLmk9W107cmsodGhpcyxjLCExKX07Xy5YYS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5qfTsKdmFyIHRrPWZ1bmN0aW9uKGEsYil7dmFyIGM9dm9pZCAwPT09Yz8hMTpjO3NrKGEsYS5pLGMpO3JrKGEsYixjKX0scms9ZnVuY3Rpb24oYSxiLGMpe2EuaT1hLmkuY29uY2F0KGIpO2lmKHZvaWQgMD09PWM/MDpjKXtpZighYS5nKXRocm93IEVycm9yKCJRYCIrYS5qKTt2YXIgZD1fLkthKCk7Yi5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIGUuZ30pLmZvckVhY2goZnVuY3Rpb24oZSl7ZC5vdChhLmcsZSl9KX19LHNrPWZ1bmN0aW9uKGEsYixjKXtpZih2b2lkIDA9PT1jPzA6Yyl7aWYoIWEuZyl0aHJvdyBFcnJvcigiUWAiK2Euaik7dmFyIGQ9Xy5LYSgpO2IubWFwKGZ1bmN0aW9uKGUpe3JldHVybiBlLmd9KS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2QuYXcoYS5nLGUpfSl9YS5pPWEuaS5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuLTE9PT1iLmluZGV4T2YoZSl9KX07Cl8udWs9bmV3IF8uWGEoIkxFaWtaZSIpOwpfLnZrPW5ldyBfLlhhKCJneWNoZyIsImd5Y2hnIixbXy51a10pO18ud2s9bmV3IF8uWGEoInhVZGlwZiIsInhVZGlwZiIpOwpfLnhrPW5ldyBfLlhhKCJySm1KcmMiKTsKXy55az1uZXcgXy5YYSgibjczcXdmIik7Cl8uems9bmV3IF8uWGEoIk1wSndaYyIpOwpfLkFrPW5ldyBfLlhhKCJVVUpxVmUiLCJVVUpxVmUiKTsKXy5Caz1uZXcgXy5YYSgiV3Q2dmpmIik7Cl8uQ2s9bmV3IF8uWGEoImJ5ZlRPYiIpOwpfLkRrPW5ldyBfLlhhKCJsc2pWbWMiKTsKdmFyIEVrPW5ldyBfLlhhKCJwVmJ4QmMiKTsKbmV3IF8uWGEoInRkVWthZiIpO25ldyBfLlhhKCJmSnV4T2MiKTtuZXcgXy5YYSgiWnRWckgiKTtuZXcgXy5YYSgiV1N6aUZmIik7bmV3IF8uWGEoIlptWEFtIik7bmV3IF8uWGEoIkJXRVR6ZSIpO25ldyBfLlhhKCJVQlNnR2YiKTtuZXcgXy5YYSgielphNHhjIik7bmV3IF8uWGEoIm8xYlpjZCIpO25ldyBfLlhhKCJXd0c2N2QiKTtuZXcgXy5YYSgiejcyTU9jIik7bmV3IF8uWGEoIkpjY1pSZSIpO25ldyBfLlhhKCJhbVkzVGQiKTtuZXcgXy5YYSgiQUJtYTNlIik7dmFyIEZrPW5ldyBfLlhhKCJHSEFlQWMiLCJHSEFlQWMiKTtuZXcgXy5YYSgiZ1NzaFBiIik7bmV3IF8uWGEoImtscHlZZSIpO25ldyBfLlhhKCJPUGJJeGIiKTtuZXcgXy5YYSgicGc5aEZkIik7bmV3IF8uWGEoInl1NERBIik7bmV3IF8uWGEoInZrM1djIik7bmV3IF8uWGEoIkl5a3ZFZiIpO25ldyBfLlhhKCJKNUsxQWQiKTtuZXcgXy5YYSgiSVc4VXNkIik7bmV3IF8uWGEoIklhcUQzZSIpO25ldyBfLlhhKCJqYkRnRyIpOwpuZXcgXy5YYSgiYjh4S3UiKTtuZXcgXy5YYSgiZDBSQUdiIik7bmV3IF8uWGEoIkF6RzBrZSIpO25ldyBfLlhhKCJKNFFXQiIpO25ldyBfLlhhKCJUdURzWiIpO25ldyBfLlhhKCJoZFhJaWYiKTtuZXcgXy5YYSgibUlUUjVjIik7bmV3IF8uWGEoIkRGRWxYYiIpO25ldyBfLlhhKCJOR250d2YiKTtuZXcgXy5YYSgiQmdmMGliIik7bmV3IF8uWGEoIlhwdzFvZiIpO25ldyBfLlhhKCJ2NUJRbGUiKTtfLkdrPW5ldyBfLlhhKCJvZnVhcGMiKTtuZXcgXy5YYSgiRkVOWnFlIik7bmV3IF8uWGEoInRMbnhxIik7Cl8uSGs9bmV3IF8uWGEoIlVsbW1yZCIsIlVsbW1yZCIsW18udmtdKTsKXy5Jaz1mdW5jdGlvbihhLGIpe3RoaXMuaT1hO3RoaXMuZz1ifTtfLklrLnByb3RvdHlwZS5nZXRJZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLml9O18uSWsucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaX07Cl8uSms9bmV3IF8uSWsoInNraXBDYWNoZSIsITApO18uS2s9bmV3IF8uSWsoIm1heFJldHJpZXMiLDMpO18uTGs9bmV3IF8uSWsoImlzSW5pdGlhbERhdGEiLCEwKTtfLk1rPW5ldyBfLklrKCJiYXRjaElkIik7Xy5Paz1uZXcgXy5JaygiYmF0Y2hSZXF1ZXN0SWQiKTtfLlBrPW5ldyBfLklrKCJleHRlbnNpb25JZCIpO18uUWs9bmV3IF8uSWsoImVlc1Rva2VucyIpO18uUms9bmV3IF8uSWsoImZyb250ZW5kTWV0aG9kVHlwZSIpO18uU2s9bmV3IF8uSWsoInNlcXVlbmNlR3JvdXAiKTtfLlRrPW5ldyBfLklrKCJyZXR1cm5Gcm96ZW4iKTsKXy5Vaz1mdW5jdGlvbihhKXt0aGlzLmc9YXx8e319O18uVWsucHJvdG90eXBlLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5nW2FdfTtfLlVrLnByb3RvdHlwZS5xZD1mdW5jdGlvbigpe3JldHVybiBPYmplY3Qua2V5cyh0aGlzLmcpfTsKXy5Waz1mdW5jdGlvbihhLGIsYyxkLGUsZil7dmFyIGc9dGhpcztjPXZvaWQgMD09PWM/e306YztkPXZvaWQgMD09PWQ/bmV3IF8uVWs6ZDtmPXZvaWQgMD09PWY/e306Zjt0aGlzLmc9YTt0aGlzLkxkPWJ8fHZvaWQgMDt0aGlzLnNpZGVDaGFubmVsPWM7dGhpcy5pPWY7dGhpcy5yZT1kO2UmJl8ucChlLGZ1bmN0aW9uKGspe3ZhciBsPXZvaWQgMCE9ay52YWx1ZT9rLnZhbHVlOmsua2V5Lmc7az1rLmtleS5nZXRJZCgpO2cucmUuZ1trXT1sfSx0aGlzKX07Xy5Way5wcm90b3R5cGUuZ2V0TWV0YWRhdGE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pfTtfLlZrLnByb3RvdHlwZS52Yj1mdW5jdGlvbigpe3JldHVybiB0aGlzLmd9O18uVmsucHJvdG90eXBlLkRrPV8uY2EoMTgpO18uVmsucHJvdG90eXBlLnp1PV8uY2EoMTkpOwpfLlhrPWZ1bmN0aW9uKGEsYixjKXtpZih2b2lkIDA9PT1iLmcmJnZvaWQgMD09PWMpdGhyb3cgRXJyb3IoIlJgIitiKTthPV8uV2soYSk7dmFyIGQ9Yi5nZXRJZCgpO2EucmUuZ1tkXT12b2lkIDAhPWM/YzpiLmc7cmV0dXJuIGF9O18uWWs9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5yZS5nZXQoYi5nZXRJZCgpKX07Xy5Xaz1mdW5jdGlvbihhKXt2YXIgYj1fLnNlKGEuc2lkZUNoYW5uZWwsZnVuY3Rpb24oayl7cmV0dXJuIF8uaWkoayl9KSxjPWEuTGQ7Yz1jP18uaWkoYyk6bnVsbDtmb3IodmFyIGQ9e30sZT1fLkMoYS5yZS5xZCgpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSlmPWYudmFsdWUsZFtmXT1hLnJlLmdldChmKTtkPW5ldyBfLlVrKGQpO2U9e307dmFyIGc9Xy5DKE9iamVjdC5rZXlzKGEuaSkpO2ZvcihmPWcubmV4dCgpOyFmLmRvbmU7Zj1nLm5leHQoKSlmPWYudmFsdWUsZVtmXT1hLmlbZl07cmV0dXJuIG5ldyBfLlZrKGEuZyxjLGIsZCx2b2lkIDAsZSl9OwpfLmpiPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPXRoaXM7dGhpcy5nPWE7dGhpcy52PWM7dGhpcy5vPWI7dGhpcy5pPXBhcnNlSW50KGEsMTApfHxudWxsO3RoaXMucz1udWxsOyh0aGlzLmo9ZCkmJl8ucChkLGZ1bmN0aW9uKGYpe18uUGs9PT1mLmtleT9lLmk9Zi52YWx1ZTpfLlFrPT09Zi5rZXkmJihlLnM9Zi52YWx1ZSl9LHRoaXMpfTtfLmpiLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmd9O18uamIucHJvdG90eXBlLmFiPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgXy5Wayh0aGlzLGEsdm9pZCAwLHZvaWQgMCx0aGlzLmopfTtfLmpiLnByb3RvdHlwZS5RZj1fLmNhKDIxKTtfLmpiLnByb3RvdHlwZS5tYXRjaGVzPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmc9PWEuZ3x8dGhpcy5pJiZ0aGlzLmkudG9TdHJpbmcoKT09YS5nfHxhLmkmJmEuaS50b1N0cmluZygpPT10aGlzLmc/ITA6ITF9OwpfLlprPWZ1bmN0aW9uKGEpe3ZhciBiPWEudmIoKS5pO2lmKG51bGw9PWJ8fDA+YilyZXR1cm4gbnVsbDt2YXIgYz1fLm5rW2JdO2lmKGMpe3ZhciBkPV8uWWsoYSxfLkprKSxlPV8uWWsoYSxfLktrKSxmPV8uWWsoYSxfLkxrKTthPXtzZDpjLEplOl8ubWtbYl0scmVxdWVzdDphLkxkLFFpOiEhZH07ZSYmKGEuUGg9ZSk7ZiYmKGEuV209Zik7cmV0dXJuIGF9cmV0dXJuKGU9Xy5va1tiXSk/YT17c2Q6Xy5wa1tiXSxRaDplLFNxOmEuTGR9Om51bGx9OwpfLmFsPWZ1bmN0aW9uKGEsYil7dmFyIGM9bnVsbDthIGluc3RhbmNlb2YgXy55PyJzdHJpbmciPT09dHlwZW9mIGEudWImJihjPWEudWIpOiJ1bmRlZmluZWQiIT10eXBlb2YgXy4kayYmYSBpbnN0YW5jZW9mIF8uJGs/ImZ1bmN0aW9uIj09PXR5cGVvZiBhLmkmJihjPWEuZy5wcm90b3R5cGUudWIpOiJzdHJpbmciPT09dHlwZW9mIGEucHJvdG90eXBlLnViJiYoYz1hLnByb3RvdHlwZS51Yik7cmV0dXJuIGImJiFjPyIiOmN9OwpfLmJsPW5ldyBfLlhhKCJOd0gwSCIsIk53SDBIIixbXy53a10pOwp2YXIgVmE9U3ltYm9sKCJUIik7Cl8uY2w9ZnVuY3Rpb24oYSl7Xy5rYS5jYWxsKHRoaXMpO3RoaXMubWVzc2FnZT0iQXBwQ29udGV4dCBpcyBkaXNwb3NlZCwgY2Fubm90IGdldCAiK2Euam9pbigiLCAiKSsiLiJ9O18uRChfLmNsLF8ua2EpOwpfLiRhLnByb3RvdHlwZS5NYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLnRvU3RyaW5nKCl9O18uJGEucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7dGhpcy5nfHwodGhpcy5nPXRoaXMuai5nKyI6Iit0aGlzLmkpO3JldHVybiB0aGlzLmd9O18uJGEucHJvdG90eXBlLmhkPV8uY2EoMjMpOwp2YXIgZGw9ZnVuY3Rpb24oYSxiKXtfLiRhLmNhbGwodGhpcyxhLGIpfTtfLkYoZGwsXy4kYSk7CnZhciBlbDtlbD1mdW5jdGlvbihhKXt0aGlzLmc9YX07Xy5mbD1uZXcgZWwoImxpYiIpOwp2YXIgZ2w9ZnVuY3Rpb24oYSl7dmFyIGI9e30sYz17fSxkPVtdLGU9W10sZj1mdW5jdGlvbihtKXtpZighY1ttXSl7dmFyIHE9bSBpbnN0YW5jZW9mIF8uWGE/bS5pOltdO2NbbV09Xy54YShxKTtfLnAocSxmdW5jdGlvbih1KXtiW3VdPWJbdV18fFtdO2JbdV0ucHVzaChtKX0pO3EubGVuZ3RofHxkLnB1c2gobSk7Xy5wKHEsZil9fTtmb3IoXy5wKGEsZik7ZC5sZW5ndGg7KXt2YXIgZz1kLnNoaWZ0KCk7ZS5wdXNoKGcpO2JbZ10mJl8ucChiW2ddLGZ1bmN0aW9uKG0pe18udmEoY1ttXSxnKTtjW21dLmxlbmd0aHx8ZC5wdXNoKG0pfSl9dmFyIGs9e30sbD1bXTtfLnAoZSxmdW5jdGlvbihtKXttIGluc3RhbmNlb2YgXy5YYSYmKG09bS5nLG51bGw9PW18fGtbbV18fChrW21dPSEwLGwucHVzaChtKSkpfSk7cmV0dXJue3pFOmUsV0M6bH19Owp2YXIgaWw9ZnVuY3Rpb24oYSl7Xy5tZC5jYWxsKHRoaXMpO3RoaXMubmY9e307dGhpcy5VPXt9O3RoaXMuSGE9e307dGhpcy5pPXt9O3RoaXMuaj17fTt0aGlzLkdhPXt9O3RoaXMucz1hP2EuczpuZXcgXy5RaTt0aGlzLlRhPSFhO3RoaXMubz1udWxsO2E/KHRoaXMubz1hLHRoaXMuSGE9YS5IYSx0aGlzLmk9YS5pLHRoaXMuVT1hLlUsdGhpcy5qPWEuaik6Xy5oZCgpO2E9aGwodGhpcyk7dGhpcyE9YSYmKGEudj9hLnYucHVzaCh0aGlzKTphLnY9W3RoaXNdKX0sdWwsdGwseGwseWw7Xy5GKGlsLF8ubWQpOwp2YXIgamw9LjA1Pk1hdGgucmFuZG9tKCksa2w9ZnVuY3Rpb24oYSl7dmFyIGI9W107YT1obChhKTt2YXIgYzthLm5mW18ueWtdJiYoYz1hLm5mW18ueWtdWzBdKTtjJiZiLnB1c2goYyk7YT1hLnZ8fFtdO2Zvcih2YXIgZD0wO2Q8YS5sZW5ndGg7ZCsrKWFbZF0ubmZbXy55a10mJihjPWFbZF0ubmZbXy55a11bMF0pLGMmJiFfLnJhKGIsYykmJmIucHVzaChjKTtyZXR1cm4gYn0saGw9ZnVuY3Rpb24oYSl7Zm9yKDthLm87KWE9YS5vO3JldHVybiBhfTtpbC5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGEpe3ZhciBiPV8ubGwodGhpcyxhKTtpZihudWxsPT1iKXRocm93IG5ldyBtbChhKTtyZXR1cm4gYn07Cl8ubGw9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9YTtjO2M9Yy5vKXtpZihjLmlzRGlzcG9zZWQoKSl0aHJvdyBuZXcgXy5jbChbYl0pO2lmKGMubmZbYl0pcmV0dXJuIGMubmZbYl1bMF07aWYoYy5HYVtiXSlicmVha31pZihjPWEuSGFbYl0pe2M9YyhhKTtpZihudWxsPT1jKXRocm93IEVycm9yKCJVYCIrYik7Xy5ubChhLGIsYyk7cmV0dXJuIGN9cmV0dXJuIG51bGx9O2lsLnByb3RvdHlwZS5nPWZ1bmN0aW9uKGEpe3JldHVybiBfLm9sKHRoaXMsW2FdLHZvaWQgMClbYV19OwpfLm9sPWZ1bmN0aW9uKGEsYixjKXtpZihhLmlzRGlzcG9zZWQoKSl0aHJvdyBuZXcgXy5jbChiKTt2YXIgZD1wbChhKSxlPSFjO2M9e307dmFyIGY9W10sZz1bXSxrPXt9LGw9e30sbT1fLmxsKGEsRWspLHE9e307Yj1fLkMoYik7Zm9yKHZhciB1PWIubmV4dCgpOyF1LmRvbmU7cT17WGM6cS5YY30sdT1iLm5leHQoKSlpZihxLlhjPXUudmFsdWUsdT1fLmxsKGEscS5YYykpe3ZhciB4PW5ldyBfLmdoO2NbcS5YY109eDt1LkFpJiYoXy5xaCh4LHUuQWkoKSksXy5uaCh4LF8uTmIoZnVuY3Rpb24odil7cmV0dXJuIHZ9LHUpKSk7eC5vYih1KX1lbHNlIGEualtxLlhjXT8odT1hLmpbcS5YY10uSWQoKSxfLm5oKHUsZnVuY3Rpb24odil7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGEuJCh2LlhjKX19KHEpKSxjW3EuWGNdPXUpOih1PXZvaWQgMCxxLlhjIGluc3RhbmNlb2YgXy5YYT91PWdsKFtxLlhjXSkuV0M6KHg9YS5VW3EuWGNdKSYmKHU9W3hdKSwhZXx8dSYmdS5sZW5ndGg/KHUmJihtJiYKcS5YYyBpbnN0YW5jZW9mIF8uWGEmJm0uTksoKSYmKGpsJiYoeD1tLlBLKHFsKSxsW3EuWGNdPXgpLG0uZ0socS5YYykpLGYucHVzaC5hcHBseShmLF8uSmModSkpLGtbcS5YY109Xy5sYSh1KSksZy5wdXNoKHEuWGMpKToodT1uZXcgXy5naCxjW3EuWGNdPXUsdS5GYyhuZXcgbWwocS5YYykpKSk7aWYoZSl7aWYoZi5sZW5ndGgpe2EuVCYmMDxmLmZpbHRlcihmdW5jdGlvbih2KXtyZXR1cm4hQmgoZCx2KX0pLmxlbmd0aCYmYS5ULnB1c2gobmV3IHJsKTtxPV8uQyhnKTtmb3IoZT1xLm5leHQoKTshZS5kb25lO2U9cS5uZXh0KCkpYS5zLmRpc3BhdGNoRXZlbnQobmV3IHNsKCJhIixlLnZhbHVlKSk7Zj1fLkZoKHBsKGEpLGYpO3E9e307Zz1fLkMoZyk7Zm9yKGU9Zy5uZXh0KCk7IWUuZG9uZTtxPXthaDpxLmFofSxlPWcubmV4dCgpKXEuYWg9ZS52YWx1ZSxlPWtbcS5haF0sYj1mW2VdLGI9YiBpbnN0YW5jZW9mIF8uZ2g/Yi5JZCgpOnZoKGIpLGNbcS5haF09YixsW3EuYWhdJiZfLm5oKGIsCmZ1bmN0aW9uKHYpe3JldHVybiBmdW5jdGlvbigpe20uTEoobFt2LmFoXSl9fShxKSksdGwoYSxiLHEuYWgsZSl9fWVsc2UgZm9yKGY9e30sZz1fLkMoZyksZT1nLm5leHQoKTshZS5kb25lO2Y9e3lmOmYueWYsSWo6Zi5Jan0sZT1nLm5leHQoKSlmLnlmPWUudmFsdWUsZi5Jaj1rW2YueWZdLGU9bmV3IF8uZ2goZnVuY3Rpb24odil7cmV0dXJuIGZ1bmN0aW9uKHope3ZhciBBPXYueWYsRT1hLmkmJmEuaVtBXTtpZihFKXtmb3IodmFyIEs9MDtLPEUubGVuZ3RoOysrSylpZihFW0tdLlBhPT1hJiZFW0tdLmQ9PXope18udWEoRSxLKTticmVha30wPT1FLmxlbmd0aCYmZGVsZXRlIGEuaVtBXX19fShmKSksY1tmLnlmXT1lLChxPWEuaVtmLnlmXSl8fChhLmlbZi55Zl09cT1bXSksZi5JaiYmdWwoYSxlLGYueWYsZi5JaiksXy5uaChlLGZ1bmN0aW9uKHYpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBhLm1hKHYueWYsdi5Jail9fShmKSkscS5wdXNoKHtQYTphLGQ6ZX0pO3JldHVybiBjfTsKdWw9ZnVuY3Rpb24oYSxiLGMsZCl7Xy5uaChiLGZ1bmN0aW9uKCl7dmFyIGU9cGwodGhpcyk7aWYoZS4kZShkKS5nKXJldHVybiBlLiQ7dGhpcy5UJiZ0aGlzLlQucHVzaChuZXcgcmwpO3JldHVybiBlLmxvYWQoZCl9LGEpO18ub2goYiwoMCxfLnQpKGEuRGEsYSxjLGQpKX07dGw9ZnVuY3Rpb24oYSxiLGMsZCl7Xy5uaChiLGZ1bmN0aW9uKCl7dGhpcy5zLmRpc3BhdGNoRXZlbnQobmV3IHNsKCJiIixjKSl9LGEpO18ub2goYiwoMCxfLnQpKGEuRGEsYSxjLGQpKTtfLm5oKGIsKDAsXy50KShhLm1hLGEsYyxkKSl9OwppbC5wcm90b3R5cGUubWE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLmxsKHRoaXMsYSk7aWYobnVsbD09Yyl7aWYodGhpcy5qW2FdKXt2YXIgZD10aGlzLmpbYV0uSWQoKTtfLm5oKGQsKDAsXy50KSh0aGlzLm1hLHRoaXMsYSxiKSk7cmV0dXJuIGR9aWYoIWIpdGhyb3cgRXJyb3IoIlZgIithKTt0aHJvdyBuZXcgdmwoYSxiLCJNb2R1bGUgbG9hZGVkIGJ1dCBzZXJ2aWNlIG9yIGZhY3Rvcnkgbm90IHJlZ2lzdGVyZWQgd2l0aCBhcHAgY29udGV4dHMuIik7fXJldHVybiBjLkFpPyhkPW5ldyBfLmdoLF8ucWgoZCxjLkFpKCkpLGQub2IoYyksXy5uaChkLCgwLF8udCkodGhpcy4kLHRoaXMsYSkpLGQpOnRoaXMuJChhKX07aWwucHJvdG90eXBlLiQ9ZnVuY3Rpb24oYSl7dGhpcy5qW2FdJiZkZWxldGUgdGhpcy5qW2FdO3JldHVybiB0aGlzLmdldChhKX07aWwucHJvdG90eXBlLkRhPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYyBpbnN0YW5jZW9mIF8uaGg/YzpuZXcgd2woYSxiLGMpfTsKXy5ubD1mdW5jdGlvbihhLGIsYyl7aWYoYS5pc0Rpc3Bvc2VkKCkpXy5oYShjKTtlbHNle2EubmZbYl09W2MsITBdO2Zvcih2YXIgZD14bChhLGEsYiksZT0wO2U8ZC5sZW5ndGg7ZSsrKWRbZV0ub2IobnVsbCk7ZGVsZXRlIGEuVVtiXTtiIGluc3RhbmNlb2YgXy5YYSYmXy5XYShiLGMuY29uc3RydWN0b3IpfX07eGw9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPVtdLGU9YS5pW2NdO2UmJihfLm1hKGUsZnVuY3Rpb24oZil7dmFyIGc7YTp7Zm9yKGc9Zi5QYTtnOyl7aWYoZz09Yil7Zz0hMDticmVhayBhfWc9Zy5vfWc9ITF9ZyYmKGQucHVzaChmLmQpLF8udmEoZSxmKSl9KSwwPT1lLmxlbmd0aCYmZGVsZXRlIGEuaVtjXSk7cmV0dXJuIGR9O3lsPWZ1bmN0aW9uKGEsYil7YS5pJiZfLnFlKGEuaSxmdW5jdGlvbihjLGQsZSl7Xy5tYShjLGZ1bmN0aW9uKGYpe2YuUGE9PWImJl8udmEoYyxmKX0pOzA9PWMubGVuZ3RoJiZkZWxldGUgZVtkXX0pfTsKaWwucHJvdG90eXBlLmhiPWZ1bmN0aW9uKCl7aWYoaGwodGhpcyk9PXRoaXMpe3ZhciBhPXRoaXMudjtpZihhKWZvcig7YS5sZW5ndGg7KWFbMF0uVGIoKX1lbHNle2E9aGwodGhpcykudjtmb3IodmFyIGI9MDtiPGEubGVuZ3RoO2IrKylpZihhW2JdPT10aGlzKXthLnNwbGljZShiLDEpO2JyZWFrfX1mb3IodmFyIGMgaW4gdGhpcy5uZilhPXRoaXMubmZbY10sYVsxXSYmYVswXS5UYiYmYVswXS5UYigpO3RoaXMubmY9bnVsbDt0aGlzLlRhJiZ0aGlzLnMuVGIoKTt5bCh0aGlzLHRoaXMpO3RoaXMuaT1udWxsO18uaGEodGhpcy5MYSk7dGhpcy5HYT10aGlzLkxhPW51bGw7aWwuVmIuaGIuY2FsbCh0aGlzKX07dmFyIHBsPWZ1bmN0aW9uKGEpe3JldHVybiBhLndhP2Eud2E6YS5vP3BsKGEubyk6bnVsbH0sbWw9ZnVuY3Rpb24oYSl7Xy5rYS5jYWxsKHRoaXMpO3RoaXMuaWQ9YTt0aGlzLm1lc3NhZ2U9J1NlcnZpY2UgZm9yICInK2ErJyIgaXMgbm90IHJlZ2lzdGVyZWQnfTsKXy5GKG1sLF8ua2EpO3ZhciB3bD1mdW5jdGlvbihhLGIsYyl7Xy5rYS5jYWxsKHRoaXMpO3RoaXMuQ3Q9Yzt0aGlzLm1lc3NhZ2U9J01vZHVsZSAiJytiKyciIGZhaWxlZCB0byBsb2FkIHdoZW4gcmVxdWVzdGluZyB0aGUgc2VydmljZSAiJythKyciIFtjYXVzZTogJytjKyJdIjt0aGlzLnN0YWNrPWMuc3RhY2srIlxuV1JBUFBFRCBCWTpcbiIrdGhpcy5zdGFja307Xy5GKHdsLF8ua2EpO3ZhciB2bD1mdW5jdGlvbihhLGIsYyl7Xy5rYS5jYWxsKHRoaXMpO3RoaXMubWVzc2FnZT0nQ29uZmlndXJhdGlvbiBlcnJvciB3aGVuIGxvYWRpbmcgdGhlIG1vZHVsZSAiJytiKyciIGZvciB0aGUgc2VydmljZSAiJythKyciOiAnK2N9O18uRih2bCxfLmthKTt2YXIgcmw9ZnVuY3Rpb24oKXtSZigpfSxzbD1mdW5jdGlvbihhKXtfLnBpLmNhbGwodGhpcyxhKX07Xy5GKHNsLF8ucGkpO3ZhciBxbD1uZXcgZGwobmV3IGVsKCJmdmEiKSwxKTsKdmFyIHpsPWZ1bmN0aW9uKCl7Xy5tZC5jYWxsKHRoaXMpfSxLYixBbDtfLkQoemwsXy5tZCk7emwucHJvdG90eXBlLmluaXQ9ZnVuY3Rpb24oKXt0aGlzLmc9W119O0tiPWZ1bmN0aW9uKGEpe3ZhciBiPUliO2IuaT1hO0FsKGIpfTtfLmFiPWZ1bmN0aW9uKGEsYil7dmFyIGM9SWI7aWYoYy5qKXthPSJQb3RlbnRpYWxseSBzZW5zaXRpdmUgbWVzc2FnZSBzdHJpcHBlZCBmb3Igc2VjdXJpdHkgcmVhc29ucy4iO3ZhciBkPUVycm9yKCJXIik7ZC5jb2x1bW5OdW1iZXI9Yi5jb2x1bW5OdW1iZXI7ZC5saW5lTnVtYmVyPWIubGluZU51bWJlcjtkLm5hbWU9Yi5uYW1lO2QuZmlsZU5hbWU9Yi5maWxlTmFtZTtpZihfLlFiKCkmJlJiKDI4KXx8Xy5TYigpJiZSYigxNCkpZC5zdGFjaz1iLnN0YWNrO2I9ZH1jLmlzRGlzcG9zZWQoKXx8YiBpbnN0YW5jZW9mIF8uaGh8fChjLmk/QmwoYy5pLGIsYSk6Yy5nJiYxMD5jLmcubGVuZ3RoJiZjLmcucHVzaChbYSxiXSkpfTsKQWw9ZnVuY3Rpb24oYSl7YS5nJiYoXy5wKGEuZyxmdW5jdGlvbihiKXtCbCh0aGlzLmksYlsxXSxiWzBdKX0sYSksYS5nPW51bGwpfTt6bC5wcm90b3R5cGUuU2E9bnVsbDt2YXIgSWI9bmV3IHpsOwp2YXIgQ2w9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgMjAwOmNhc2UgMjAxOmNhc2UgMjAyOmNhc2UgMjA0OmNhc2UgMjA2OmNhc2UgMzA0OmNhc2UgMTIyMzpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiExfX07CnZhciBEbD1mdW5jdGlvbigpe307RGwucHJvdG90eXBlLmc9bnVsbDtEbC5wcm90b3R5cGUubGQ9ZnVuY3Rpb24oKXt2YXIgYTsoYT10aGlzLmcpfHwoYT17fSxFbCh0aGlzKSYmKGFbMF09ITAsYVsxXT0hMCksYT10aGlzLmc9YSk7cmV0dXJuIGF9Owp2YXIgRmwsR2w9ZnVuY3Rpb24oKXt9O18uRihHbCxEbCk7dmFyIEhsPWZ1bmN0aW9uKGEpe3JldHVybihhPUVsKGEpKT9uZXcgQWN0aXZlWE9iamVjdChhKTpuZXcgWE1MSHR0cFJlcXVlc3R9LEVsPWZ1bmN0aW9uKGEpe2lmKCFhLmkmJiJ1bmRlZmluZWQiPT10eXBlb2YgWE1MSHR0cFJlcXVlc3QmJiJ1bmRlZmluZWQiIT10eXBlb2YgQWN0aXZlWE9iamVjdCl7Zm9yKHZhciBiPVsiTVNYTUwyLlhNTEhUVFAuNi4wIiwiTVNYTUwyLlhNTEhUVFAuMy4wIiwiTVNYTUwyLlhNTEhUVFAiLCJNaWNyb3NvZnQuWE1MSFRUUCJdLGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9YltjXTt0cnl7cmV0dXJuIG5ldyBBY3RpdmVYT2JqZWN0KGQpLGEuaT1kfWNhdGNoKGUpe319dGhyb3cgRXJyb3IoIlgiKTt9cmV0dXJuIGEuaX07Rmw9bmV3IEdsOwpfLklsPWZ1bmN0aW9uKGEpe2lmKGEuT2MmJiJmdW5jdGlvbiI9PXR5cGVvZiBhLk9jKXJldHVybiBhLk9jKCk7aWYoInN0cmluZyI9PT10eXBlb2YgYSlyZXR1cm4gYS5zcGxpdCgiIik7aWYoXy5pYShhKSl7Zm9yKHZhciBiPVtdLGM9YS5sZW5ndGgsZD0wO2Q8YztkKyspYi5wdXNoKGFbZF0pO3JldHVybiBifXJldHVybiBfLnRlKGEpfTtfLkpsPWZ1bmN0aW9uKGEpe2lmKGEucWQmJiJmdW5jdGlvbiI9PXR5cGVvZiBhLnFkKXJldHVybiBhLnFkKCk7aWYoIWEuT2N8fCJmdW5jdGlvbiIhPXR5cGVvZiBhLk9jKXtpZihfLmlhKGEpfHwic3RyaW5nIj09PXR5cGVvZiBhKXt2YXIgYj1bXTthPWEubGVuZ3RoO2Zvcih2YXIgYz0wO2M8YTtjKyspYi5wdXNoKGMpO3JldHVybiBifXJldHVybiBfLnVlKGEpfX07Cl8uS2w9ZnVuY3Rpb24oYSxiLGMpe2lmKGEuZm9yRWFjaCYmImZ1bmN0aW9uIj09dHlwZW9mIGEuZm9yRWFjaClhLmZvckVhY2goYixjKTtlbHNlIGlmKF8uaWEoYSl8fCJzdHJpbmciPT09dHlwZW9mIGEpXy5wKGEsYixjKTtlbHNlIGZvcih2YXIgZD1fLkpsKGEpLGU9Xy5JbChhKSxmPWUubGVuZ3RoLGc9MDtnPGY7ZysrKWIuY2FsbChjLGVbZ10sZCYmZFtnXSxhKX07CnZhciBQbCxUbCxVbCxWbCxXbCxhbTtfLkxsPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcpe3ZhciBrPSIiO2EmJihrKz1hKyI6Iik7YyYmKGsrPSIvLyIsYiYmKGsrPWIrIkAiKSxrKz1jLGQmJihrKz0iOiIrZCkpO2UmJihrKz1lKTtmJiYoays9Ij8iK2YpO2cmJihrKz0iIyIrZyk7cmV0dXJuIGt9O18uTWw9L14oPzooW146Lz8jLl0rKTopPyg/OlwvXC8oPzooW15cXC8/I10qKUApPyhbXlxcLz8jXSo/KSg/OjooWzAtOV0rKSk/KD89W1xcLz8jXXwkKSk/KFtePyNdKyk/KD86XD8oW14jXSopKT8oPzojKFtcc1xTXSopKT8kLztfLk5sPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE/Yj9kZWNvZGVVUkkoYSk6ZGVjb2RlVVJJQ29tcG9uZW50KGEpOmF9O18uT2w9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYi5tYXRjaChfLk1sKVthXXx8bnVsbH07ClBsPWZ1bmN0aW9uKGEpe2E9Xy5PbCgxLGEpOyFhJiZfLm4uc2VsZiYmXy5uLnNlbGYubG9jYXRpb24mJihhPV8ubi5zZWxmLmxvY2F0aW9uLnByb3RvY29sLGE9YS5zdWJzdHIoMCxhLmxlbmd0aC0xKSk7cmV0dXJuIGE/YS50b0xvd2VyQ2FzZSgpOiIifTtfLlFsPWZ1bmN0aW9uKGEpe3ZhciBiPWEuaW5kZXhPZigiIyIpO3JldHVybiAwPmI/bnVsbDphLnN1YnN0cihiKzEpfTtfLlJsPWZ1bmN0aW9uKGEpe2E9YS5tYXRjaChfLk1sKTtyZXR1cm4gXy5MbChhWzFdLGFbMl0sYVszXSxhWzRdKX07Xy5TbD1mdW5jdGlvbihhLGIpe2lmKGEpe2E9YS5zcGxpdCgiJiIpO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hW2NdLmluZGV4T2YoIj0iKSxlPW51bGw7aWYoMDw9ZCl7dmFyIGY9YVtjXS5zdWJzdHJpbmcoMCxkKTtlPWFbY10uc3Vic3RyaW5nKGQrMSl9ZWxzZSBmPWFbY107YihmLGU/Xy5jZihlKToiIil9fX07ClRsPWZ1bmN0aW9uKGEsYil7aWYoIWIpcmV0dXJuIGE7dmFyIGM9YS5pbmRleE9mKCIjIik7MD5jJiYoYz1hLmxlbmd0aCk7dmFyIGQ9YS5pbmRleE9mKCI/Iik7aWYoMD5kfHxkPmMpe2Q9Yzt2YXIgZT0iIn1lbHNlIGU9YS5zdWJzdHJpbmcoZCsxLGMpO2E9W2Euc3Vic3RyKDAsZCksZSxhLnN1YnN0cihjKV07Yz1hWzFdO2FbMV09Yj9jP2MrIiYiK2I6YjpjO3JldHVybiBhWzBdKyhhWzFdPyI/IithWzFdOiIiKSthWzJdfTtVbD1mdW5jdGlvbihhLGIsYyl7aWYoQXJyYXkuaXNBcnJheShiKSlmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKylVbChhLFN0cmluZyhiW2RdKSxjKTtlbHNlIG51bGwhPWImJmMucHVzaChhKygiIj09PWI/IiI6Ij0iK2VuY29kZVVSSUNvbXBvbmVudChTdHJpbmcoYikpKSl9O1ZsPWZ1bmN0aW9uKGEsYil7dmFyIGM9W107Zm9yKGI9Ynx8MDtiPGEubGVuZ3RoO2IrPTIpVWwoYVtiXSxhW2IrMV0sYyk7cmV0dXJuIGMuam9pbigiJiIpfTsKV2w9ZnVuY3Rpb24oYSl7dmFyIGI9W10sYztmb3IoYyBpbiBhKVVsKGMsYVtjXSxiKTtyZXR1cm4gYi5qb2luKCImIil9O18uWGw9ZnVuY3Rpb24oYSxiKXt2YXIgYz0yPT1hcmd1bWVudHMubGVuZ3RoP1ZsKGFyZ3VtZW50c1sxXSwwKTpWbChhcmd1bWVudHMsMSk7cmV0dXJuIFRsKGEsYyl9O18uWWw9ZnVuY3Rpb24oYSxiLGMpe2M9bnVsbCE9Yz8iPSIrZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhjKSk6IiI7cmV0dXJuIFRsKGEsYitjKX07Xy5abD1mdW5jdGlvbihhLGIsYyxkKXtmb3IodmFyIGU9Yy5sZW5ndGg7MDw9KGI9YS5pbmRleE9mKGMsYikpJiZiPGQ7KXt2YXIgZj1hLmNoYXJDb2RlQXQoYi0xKTtpZigzOD09Znx8NjM9PWYpaWYoZj1hLmNoYXJDb2RlQXQoYitlKSwhZnx8NjE9PWZ8fDM4PT1mfHwzNT09ZilyZXR1cm4gYjtiKz1lKzF9cmV0dXJuLTF9O18uJGw9LyN8JC87YW09L1s/Jl0oJHwjKS87Cl8uYm09ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9YS5zZWFyY2goXy4kbCksZD0wLGUsZj1bXTswPD0oZT1fLlpsKGEsZCxiLGMpKTspZi5wdXNoKGEuc3Vic3RyaW5nKGQsZSkpLGQ9TWF0aC5taW4oYS5pbmRleE9mKCImIixlKSsxfHxjLGMpO2YucHVzaChhLnN1YnN0cihkKSk7cmV0dXJuIGYuam9pbigiIikucmVwbGFjZShhbSwiJDEiKX07Xy5jbT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8uWWwoXy5ibShhLGIpLGIsYyl9Owp2YXIgZW0sZ207Xy5kbT1mdW5jdGlvbihhKXtfLlFpLmNhbGwodGhpcyk7dGhpcy5oZWFkZXJzPW5ldyBfLnhqO3RoaXMuSGE9YXx8bnVsbDt0aGlzLmk9ITE7dGhpcy5tYT10aGlzLmc9bnVsbDt0aGlzLnY9IiI7dGhpcy5zPTA7dGhpcy5qPXRoaXMuTGE9dGhpcy4kPXRoaXMuR2E9ITE7dGhpcy5VPTA7dGhpcy5UPW51bGw7dGhpcy53YT0iIjt0aGlzLmxiPXRoaXMuRGE9ITF9O18uRihfLmRtLF8uUWkpO18uZG0ucHJvdG90eXBlLlNhPW51bGw7ZW09L15odHRwcz8kL2k7Xy5mbT1bIlBPU1QiLCJQVVQiXTtnbT1bXTtfLmhtPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGcpe3ZhciBrPW5ldyBfLmRtO2dtLnB1c2goayk7YiYmay5saXN0ZW4oImNvbXBsZXRlIixiKTtrLkpvKCJyZWFkeSIsay5iYyk7ZiYmKGsuVT1NYXRoLm1heCgwLGYpKTtnJiYoay5EYT1nKTtrLnNlbmQoYSxjLGQsZSl9O18uZG0ucHJvdG90eXBlLmJjPWZ1bmN0aW9uKCl7dGhpcy5UYigpO18udmEoZ20sdGhpcyl9OwpfLmRtLnByb3RvdHlwZS5zZW5kPWZ1bmN0aW9uKGEsYixjLGQpe2lmKHRoaXMuZyl0aHJvdyBFcnJvcigiWWAiK3RoaXMudisiYCIrYSk7Yj1iP2IudG9VcHBlckNhc2UoKToiR0VUIjt0aGlzLnY9YTt0aGlzLnM9MDt0aGlzLkdhPSExO3RoaXMuaT0hMDt0aGlzLmc9dGhpcy5IYT9IbCh0aGlzLkhhKTpIbChGbCk7dGhpcy5tYT10aGlzLkhhP3RoaXMuSGEubGQoKTpGbC5sZCgpO3RoaXMuZy5vbnJlYWR5c3RhdGVjaGFuZ2U9KDAsXy50KSh0aGlzLndiLHRoaXMpO3RyeXt0aGlzLkxhPSEwLHRoaXMuZy5vcGVuKGIsU3RyaW5nKGEpLCEwKSx0aGlzLkxhPSExfWNhdGNoKGYpe2ltKHRoaXMpO3JldHVybn1hPWN8fCIiO3ZhciBlPW5ldyBfLnhqKHRoaXMuaGVhZGVycyk7ZCYmXy5LbChkLGZ1bmN0aW9uKGYsZyl7ZS5zZXQoZyxmKX0pO2Q9Xy5vYShlLnFkKCksam0pO2M9Xy5uLkZvcm1EYXRhJiZhIGluc3RhbmNlb2YgXy5uLkZvcm1EYXRhOyFfLnJhKF8uZm0sYil8fGR8fGN8fGUuc2V0KCJDb250ZW50LVR5cGUiLAoiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkO2NoYXJzZXQ9dXRmLTgiKTtlLmZvckVhY2goZnVuY3Rpb24oZixnKXt0aGlzLmcuc2V0UmVxdWVzdEhlYWRlcihnLGYpfSx0aGlzKTt0aGlzLndhJiYodGhpcy5nLnJlc3BvbnNlVHlwZT10aGlzLndhKTsid2l0aENyZWRlbnRpYWxzImluIHRoaXMuZyYmdGhpcy5nLndpdGhDcmVkZW50aWFscyE9PXRoaXMuRGEmJih0aGlzLmcud2l0aENyZWRlbnRpYWxzPXRoaXMuRGEpO3RyeXtrbSh0aGlzKSwwPHRoaXMuVSYmKCh0aGlzLmxiPWxtKHRoaXMuZykpPyh0aGlzLmcudGltZW91dD10aGlzLlUsdGhpcy5nLm9udGltZW91dD0oMCxfLnQpKHRoaXMuQmIsdGhpcykpOnRoaXMuVD1fLk4odGhpcy5CYix0aGlzLlUsdGhpcykpLHRoaXMuJD0hMCx0aGlzLmcuc2VuZChhKSx0aGlzLiQ9ITF9Y2F0Y2goZil7aW0odGhpcyl9fTsKdmFyIGxtPWZ1bmN0aW9uKGEpe3JldHVybiBfLlZiJiZfLldiKDkpJiYibnVtYmVyIj09PXR5cGVvZiBhLnRpbWVvdXQmJnZvaWQgMCE9PWEub250aW1lb3V0fSxqbT1mdW5jdGlvbihhKXtyZXR1cm4iY29udGVudC10eXBlIj09YS50b0xvd2VyQ2FzZSgpfTtfLmRtLnByb3RvdHlwZS5CYj1mdW5jdGlvbigpeyJ1bmRlZmluZWQiIT10eXBlb2YgVWMmJnRoaXMuZyYmKHRoaXMucz04LHRoaXMuZGlzcGF0Y2hFdmVudCgidGltZW91dCIpLHRoaXMuYWJvcnQoOCkpfTt2YXIgaW09ZnVuY3Rpb24oYSl7YS5pPSExO2EuZyYmKGEuaj0hMCxhLmcuYWJvcnQoKSxhLmo9ITEpO2Eucz01O21tKGEpO25tKGEpfSxtbT1mdW5jdGlvbihhKXthLkdhfHwoYS5HYT0hMCxhLmRpc3BhdGNoRXZlbnQoImNvbXBsZXRlIiksYS5kaXNwYXRjaEV2ZW50KCJlcnJvciIpKX07Cl8uZG0ucHJvdG90eXBlLmFib3J0PWZ1bmN0aW9uKGEpe3RoaXMuZyYmdGhpcy5pJiYodGhpcy5pPSExLHRoaXMuaj0hMCx0aGlzLmcuYWJvcnQoKSx0aGlzLmo9ITEsdGhpcy5zPWF8fDcsdGhpcy5kaXNwYXRjaEV2ZW50KCJjb21wbGV0ZSIpLHRoaXMuZGlzcGF0Y2hFdmVudCgiYWJvcnQiKSxubSh0aGlzKSl9O18uZG0ucHJvdG90eXBlLmhiPWZ1bmN0aW9uKCl7dGhpcy5nJiYodGhpcy5pJiYodGhpcy5pPSExLHRoaXMuaj0hMCx0aGlzLmcuYWJvcnQoKSx0aGlzLmo9ITEpLG5tKHRoaXMsITApKTtfLmRtLlZiLmhiLmNhbGwodGhpcyl9O18uZG0ucHJvdG90eXBlLndiPWZ1bmN0aW9uKCl7dGhpcy5pc0Rpc3Bvc2VkKCl8fCh0aGlzLkxhfHx0aGlzLiR8fHRoaXMuaj9vbSh0aGlzKTp0aGlzLlRhKCkpfTtfLmRtLnByb3RvdHlwZS5UYT1mdW5jdGlvbigpe29tKHRoaXMpfTsKdmFyIG9tPWZ1bmN0aW9uKGEpe2lmKGEuaSYmInVuZGVmaW5lZCIhPXR5cGVvZiBVYyYmKCFhLm1hWzFdfHw0IT1fLnBtKGEpfHwyIT1hLlZkKCkpKWlmKGEuJCYmND09Xy5wbShhKSlfLk4oYS53YiwwLGEpO2Vsc2UgaWYoYS5kaXNwYXRjaEV2ZW50KCJyZWFkeXN0YXRlY2hhbmdlIiksND09Xy5wbShhKSl7YS5pPSExO3RyeXtfLnFtKGEpPyhhLmRpc3BhdGNoRXZlbnQoImNvbXBsZXRlIiksYS5kaXNwYXRjaEV2ZW50KCJzdWNjZXNzIikpOihhLnM9NixhLlZkKCksbW0oYSkpfWZpbmFsbHl7bm0oYSl9fX0sbm09ZnVuY3Rpb24oYSxiKXtpZihhLmcpe2ttKGEpO3ZhciBjPWEuZyxkPWEubWFbMF0/Xy5hZDpudWxsO2EuZz1udWxsO2EubWE9bnVsbDtifHxhLmRpc3BhdGNoRXZlbnQoInJlYWR5Iik7dHJ5e2Mub25yZWFkeXN0YXRlY2hhbmdlPWR9Y2F0Y2goZSl7fX19LGttPWZ1bmN0aW9uKGEpe2EuZyYmYS5sYiYmKGEuZy5vbnRpbWVvdXQ9bnVsbCk7YS5UJiYoXy5UaShhLlQpLGEuVD0KbnVsbCl9O18uZG0ucHJvdG90eXBlLlBjPWZ1bmN0aW9uKCl7cmV0dXJuISF0aGlzLmd9O18ucW09ZnVuY3Rpb24oYSl7dmFyIGI9YS5WZCgpLGM7aWYoIShjPUNsKGIpKSl7aWYoYj0wPT09YilhPVBsKFN0cmluZyhhLnYpKSxiPSFlbS50ZXN0KGEpO2M9Yn1yZXR1cm4gY307Xy5wbT1mdW5jdGlvbihhKXtyZXR1cm4gYS5nP2EuZy5yZWFkeVN0YXRlOjB9O18uZG0ucHJvdG90eXBlLlZkPWZ1bmN0aW9uKCl7dHJ5e3JldHVybiAyPF8ucG0odGhpcyk/dGhpcy5nLnN0YXR1czotMX1jYXRjaChhKXtyZXR1cm4tMX19O18ucm09ZnVuY3Rpb24oYSl7dHJ5e3JldHVybiBhLmc/YS5nLnJlc3BvbnNlVGV4dDoiIn1jYXRjaChiKXtyZXR1cm4iIn19O18uZG0ucHJvdG90eXBlLlFmPV8uY2EoMjApO1JkKGZ1bmN0aW9uKGEpe18uZG0ucHJvdG90eXBlLlRhPWEoXy5kbS5wcm90b3R5cGUuVGEpfSk7Cl8uc209ZnVuY3Rpb24oYSl7Xy5tZC5jYWxsKHRoaXMpO3RoaXMuaT1hO3RoaXMuZz17fX07Xy5GKF8uc20sXy5tZCk7dmFyIHRtPVtdO18uc20ucHJvdG90eXBlLmxpc3Rlbj1mdW5jdGlvbihhLGIsYyxkKXtBcnJheS5pc0FycmF5KGIpfHwoYiYmKHRtWzBdPWIudG9TdHJpbmcoKSksYj10bSk7Zm9yKHZhciBlPTA7ZTxiLmxlbmd0aDtlKyspe3ZhciBmPV8uR2koYSxiW2VdLGN8fHRoaXMuaGFuZGxlRXZlbnQsZHx8ITEsdGhpcy5pfHx0aGlzKTtpZighZilicmVhazt0aGlzLmdbZi5rZXldPWZ9cmV0dXJuIHRoaXN9O3ZhciB1bT1mdW5jdGlvbihhKXtfLnFlKGEuZyxmdW5jdGlvbihiLGMpe3RoaXMuZy5oYXNPd25Qcm9wZXJ0eShjKSYmXy5PaShiKX0sYSk7YS5nPXt9fTtfLnNtLnByb3RvdHlwZS5oYj1mdW5jdGlvbigpe18uc20uVmIuaGIuY2FsbCh0aGlzKTt1bSh0aGlzKX07Xy5zbS5wcm90b3R5cGUuaGFuZGxlRXZlbnQ9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiWiIpO307CnZhciB2bSx3bSx4bSx5bSx6bSxBbSxDbSxEbSxFbTt2bT1mdW5jdGlvbihhKXthPWEudGFyZ2V0fHxhLnNyY0VsZW1lbnQ7IWEuZ2V0QXR0cmlidXRlJiZhLnBhcmVudE5vZGUmJihhPWEucGFyZW50Tm9kZSk7cmV0dXJuIGF9O3dtPSJ1bmRlZmluZWQiIT10eXBlb2YgbmF2aWdhdG9yJiYhL09wZXJhLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpJiYvV2ViS2l0Ly50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpO3htPSJ1bmRlZmluZWQiIT10eXBlb2YgbmF2aWdhdG9yJiYoL01TSUUvLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCl8fC9UcmlkZW50Ly50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpKTt5bT0idW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvciYmIS9PcGVyYXxXZWJLaXQvLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCkmJi9HZWNrby8udGVzdChuYXZpZ2F0b3IucHJvZHVjdCk7em09e0E6MSxJTlBVVDoxLFRFWFRBUkVBOjEsU0VMRUNUOjEsQlVUVE9OOjF9OwpBbT1mdW5jdGlvbihhKXt2YXIgYj1fLm4uZG9jdW1lbnQ7aWYoYiYmIWIuY3JlYXRlRXZlbnQmJmIuY3JlYXRlRXZlbnRPYmplY3QpdHJ5e3JldHVybiBiLmNyZWF0ZUV2ZW50T2JqZWN0KGEpfWNhdGNoKGMpe3JldHVybiBhfWVsc2UgcmV0dXJuIGF9O18uQm09e0E6MTMsQlVUVE9OOjAsQ0hFQ0tCT1g6MzIsQ09NQk9CT1g6MTMsRklMRTowLEdSSURDRUxMOjEzLExJTks6MTMsTElTVEJPWDoxMyxNRU5VOjAsTUVOVUJBUjowLE1FTlVJVEVNOjAsTUVOVUlURU1DSEVDS0JPWDowLE1FTlVJVEVNUkFESU86MCxPUFRJT046MCxSQURJTzozMixSQURJT0dST1VQOjMyLFJFU0VUOjAsU1VCTUlUOjAsU1dJVENIOjMyLFRBQjowLFRSRUU6MTMsVFJFRUlURU06MTN9O0NtPXtDSEVDS0JPWDohMCxGSUxFOiEwLE9QVElPTjohMCxSQURJTzohMH07CkRtPXtDT0xPUjohMCxEQVRFOiEwLERBVEVUSU1FOiEwLCJEQVRFVElNRS1MT0NBTCI6ITAsRU1BSUw6ITAsTU9OVEg6ITAsTlVNQkVSOiEwLFBBU1NXT1JEOiEwLFJBTkdFOiEwLFNFQVJDSDohMCxURUw6ITAsVEVYVDohMCxURVhUQVJFQTohMCxUSU1FOiEwLFVSTDohMCxXRUVLOiEwfTtFbT17QTohMCxBUkVBOiEwLEJVVFRPTjohMCxESUFMT0c6ITAsSU1HOiEwLElOUFVUOiEwLExJTks6ITAsTUVOVTohMCxPUFRHUk9VUDohMCxPUFRJT046ITAsUFJPR1JFU1M6ITAsU0VMRUNUOiEwLFRFWFRBUkVBOiEwfTsKLyoKCiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgTExDLgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KXy5LbT1mdW5jdGlvbihhLGIsYyxkLGUsZil7Xy5RaS5jYWxsKHRoaXMpO3RoaXMuTGE9YS5yZXBsYWNlKEZtLCJfIik7dGhpcy5HYT1hO3RoaXMuaj1ifHxudWxsO3RoaXMuaT1jP0FtKGMpOm51bGw7dGhpcy5VPWV8fG51bGw7dGhpcy4kPWZ8fG51bGw7IXRoaXMuJCYmYyYmYy50YXJnZXQmJl8uc2coYy50YXJnZXQpJiYodGhpcy4kPWMudGFyZ2V0KTt0aGlzLm1hPVtdO3RoaXMuRGE9e307dGhpcy5sYj10aGlzLlQ9ZHx8Xy5oZCgpO3RoaXMuZz17fTt0aGlzLmdbIm1haW4tYWN0aW9uZmxvdy1icmFuY2giXT0xO3RoaXMuSGE9e307dGhpcy5zPSExO3RoaXMudj17fTt0aGlzLndhPXt9O3RoaXMuVGE9ITE7R20ucHVzaCh0aGlzKTt0aGlzLndiPSsrSG07YT1uZXcgSW0oImNyZWF0ZWQiLHRoaXMpO251bGwhPUptJiZKbS5kaXNwYXRjaEV2ZW50KGEpfTtfLkQoXy5LbSxfLlFpKTtfLkttLnByb3RvdHlwZS5pZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLndifTsKXy5LbS5wcm90b3R5cGUuZ2V0VGljaz1mdW5jdGlvbihhKXtyZXR1cm4ic3RhcnQiPT1hP3RoaXMuVDp0aGlzLkRhW2FdfTtfLkttLnByb3RvdHlwZS5oZD1fLmNhKDIyKTt2YXIgTW09ZnVuY3Rpb24oYSxiLGMpe2EucyYmTG0oYSwidGljayIsdm9pZCAwLGIpO2M9Y3x8e307YiBpbiBhLkRhJiYoYS5IYVtiXT0hMCk7dmFyIGQ9Yy50aW1lfHxfLmhkKCk7IWMucUEmJiFjLkhKJiZkPmEubGImJihhLmxiPWQpO2Zvcih2YXIgZT1kLWEuVCxmPWEubWEubGVuZ3RoOzA8ZiYmYS5tYVtmLTFdWzFdPmU7KWYtLTtfLkFhKGEubWEsZiwwLFtiLGUsYy5xQV0pO2EuRGFbYl09ZH07Cl8uS20ucHJvdG90eXBlLmRvbmU9ZnVuY3Rpb24oYSxiLGMpe2lmKHRoaXMuc3x8IXRoaXMuZ1thXSlMbSh0aGlzLCJkb25lIixhLGIpO2Vsc2V7YiYmTW0odGhpcyxiLGMpO3RoaXMuZ1thXS0tOzA9PXRoaXMuZ1thXSYmZGVsZXRlIHRoaXMuZ1thXTtpZihhPV8ud2UodGhpcy5nKSlpZihKbSl7Yj1hPSIiO2Zvcih2YXIgZCBpbiB0aGlzLkhhKXRoaXMuSGEuaGFzT3duUHJvcGVydHkoZCkmJihiPWIrYStkLGE9InwiKTtiJiYodGhpcy53YS5kdXA9Yik7ZD1uZXcgSW0oImJlZm9yZWRvbmUiLHRoaXMpO3RoaXMuZGlzcGF0Y2hFdmVudChkKSYmSm0uZGlzcGF0Y2hFdmVudChkKT8oKGE9Tm0odGhpcy53YSkpJiYodGhpcy52LmNhZD1hKSxkLnR5cGU9ImRvbmUiLGE9Sm0uZGlzcGF0Y2hFdmVudChkKSk6YT0hMX1lbHNlIGE9ITA7YSYmKHRoaXMucz0hMCxfLnZhKEdtLHRoaXMpLHRoaXMuaT10aGlzLmo9bnVsbCx0aGlzLlRiKCkpfX07Cl8uS20ucHJvdG90eXBlLklkPWZ1bmN0aW9uKGEsYixjKXt0aGlzLnMmJkxtKHRoaXMsImJyYW5jaCIsYSxiKTtiJiZNbSh0aGlzLGIsYyk7dGhpcy5nW2FdP3RoaXMuZ1thXSsrOnRoaXMuZ1thXT0xfTt2YXIgTG09ZnVuY3Rpb24oYSxiLGMsZCl7aWYoSm0pe3ZhciBlPW5ldyBJbSgiZXJyb3IiLGEpO2UuZXJyb3I9YjtlLklkPWM7ZS5qPWQ7ZS5nPWEucztKbS5kaXNwYXRjaEV2ZW50KGUpfX0sTm09ZnVuY3Rpb24oYSl7dmFyIGI9W107Xy5xZShhLGZ1bmN0aW9uKGMsZCl7ZD1lbmNvZGVVUklDb21wb25lbnQoZCk7Yz1lbmNvZGVVUklDb21wb25lbnQoYykucmVwbGFjZSgvJTdDL2csInwiKTtiLnB1c2goZCsiOiIrYyl9KTtyZXR1cm4gYi5qb2luKCIsIil9OwpfLkttLnByb3RvdHlwZS5hY3Rpb249ZnVuY3Rpb24oYSl7dGhpcy5zJiZMbSh0aGlzLCJhY3Rpb24iKTt2YXIgYj1bXSxjPW51bGwsZD1udWxsLGU9bnVsbCxmPW51bGw7T20oYSxmdW5jdGlvbihnKXt2YXIgazshZy5fX29pJiZnLmdldEF0dHJpYnV0ZSYmKGcuX19vaT1nLmdldEF0dHJpYnV0ZSgib2kiKSk7aWYoaz1nLl9fb2kpYi51bnNoaWZ0KGspLGN8fChjPWcuZ2V0QXR0cmlidXRlKCJqc2luc3RhbmNlIikpO2V8fGQmJiIxIiE9ZHx8KGU9Zy5nZXRBdHRyaWJ1dGUoInZlZCIpKTtmfHwoZj1nLmdldEF0dHJpYnV0ZSgidmV0IikpO2R8fChkPWcuZ2V0QXR0cmlidXRlKCJqc3RyYWNrIikpfSk7ZiYmKHRoaXMudi52ZXQ9Zik7ZCYmKHRoaXMudi5jdD10aGlzLkxhLDA8Yi5sZW5ndGgmJlBtKHRoaXMsYi5qb2luKCIuIikpLGMmJihjPSIqIj09Yy5jaGFyQXQoMCk/cGFyc2VJbnQoYy5zdWJzdHIoMSksMTApOnBhcnNlSW50KGMsMTApLHRoaXMudi5jZD1jKSwiMSIhPWQmJih0aGlzLnYuZWk9CmQpLGUmJih0aGlzLnYudmVkPWUpKX07dmFyIFBtPWZ1bmN0aW9uKGEsYil7YS5zJiZMbShhLCJleHRyYWRhdGEiKTthLndhLm9pPWIudG9TdHJpbmcoKS5yZXBsYWNlKC9bOjssXHNdL2csIl8iKX0sT209ZnVuY3Rpb24oYSxiKXtmb3IoO2EmJjE9PWEubm9kZVR5cGU7YT1hLnBhcmVudE5vZGUpYihhKX07Xy5LbS5wcm90b3R5cGUub2I9ZnVuY3Rpb24oYSxiLGMsZCl7dGhpcy5JZChiLGMpO3ZhciBlPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKGYpe3RyeXt2YXIgZz1hLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1maW5hbGx5e2UuZG9uZShiLGQpfXJldHVybiBnfX07Xy5LbS5wcm90b3R5cGUuZXZlbnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5pfTtfLkttLnByb3RvdHlwZS50YXJnZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kfTsKXy5LbS5wcm90b3R5cGUudmFsdWU9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5qO3JldHVybiBiP2EgaW4gYj9iW2FdOmIuZ2V0QXR0cmlidXRlP2IuZ2V0QXR0cmlidXRlKGEpOnZvaWQgMDp2b2lkIDB9O3ZhciBHbT1bXSxKbT1uZXcgXy5RaSxGbT0vW34uLD8mLV0vZyxIbT0wLEltPWZ1bmN0aW9uKGEsYil7Xy5waS5jYWxsKHRoaXMsYSxiKX07Xy5EKEltLF8ucGkpOwovKgoKIENvcHlyaWdodCAyMDIwIEdvb2dsZSBMTEMuCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwpjYi5wcm90b3R5cGUuVT1mdW5jdGlvbigpe307CnZhciBRbT1bImNsaWNrIiwiZm9jdXMiLCJ0b3VjaHN0YXJ0IiwibW91c2Vkb3duIl0sUm09ZnVuY3Rpb24oKXt0aGlzLm89MDt0aGlzLmo9bnVsbDt0aGlzLnY9ITE7dGhpcy5pPXRoaXMuZz1udWxsO3RoaXMucz0hMX07Xy5EKFJtLGNiKTsKUm0ucHJvdG90eXBlLlU9ZnVuY3Rpb24oYSl7aWYoXy5yYShRbSxhLlUpJiZudWxsIT1hLmope3ZhciBiPWEuaSYmYS5pLlpmP2EuVGE/KFpjKCJ3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLm5hdmlnYXRpb25TdGFydCIpJiZaYygid2luZG93LnBlcmZvcm1hbmNlLm5vdyIpP3dpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0K3dpbmRvdy5wZXJmb3JtYW5jZS5ub3coKTpfLmhkKCkpLWEuaS5aZjphLmkudGltZVN0YW1wLWEuaS5aZjowO3ZhciBjO2I/Yz1EYXRlLm5vdygpLWEuVDpjPTA7YT1jOzA8PWImJjZFNT49YiYmKHRoaXMubysrLG51bGw9PXRoaXMuaiYmKHRoaXMuaj1iKSx0aGlzLmc9bnVsbD09dGhpcy5nP2I6dGhpcy5nKigxLTEvdGhpcy5vKStiL3RoaXMubyk7MDw9YSYmNkU1Pj1hJiZudWxsPT10aGlzLmkmJih0aGlzLmk9YSl9fTtfLlNtPW5ldyBSbTsKXy5UbT1fLk0oIndaVkhsZCIpO18uVW09Xy5NKCJuRGE4aWMiKTtfLlZtPV8uTSgibzA3SFpjIik7Xy5XbT1fLk0oIlVqUU1hYyIpOwp2YXIga24sZWIsbG47Xy5YbT1fLk0oInRpNmhHYyIpO18uWW09Xy5NKCJaWUlmRmQiKTtfLlptPV8uTSgiZVFzUUIiKTtfLmFuPV8uTSgiTzFodENiIik7Xy5ibj1fLk0oImc2Y0pIZCIpO18uY249Xy5NKCJvdGIyOWUiKTtfLmRuPV8uTSgiQUhtdXdlIik7Xy5lbj1fLk0oIk8yMnAzZSIpO18uZm49Xy5NKCJKSWJ1UWMiKTtfLmduPV8uTSgiaWg0WEViIik7Xy5obj1fLk0oInNQdmo4ZSIpO18uam49Xy5NKCJHdm5lSGIiKTtrbj1fLk0oInJjdVE2YiIpO2ViPV8uTSgiZHlSY3BiIik7bG49Xy5NKCJ1MHBqb2UiKTsKXy5tbj1mdW5jdGlvbigpe3RoaXMuZz17fX07Xy5tbi5wcm90b3R5cGUucmVnaXN0ZXI9ZnVuY3Rpb24oYSxiKXt0aGlzLmdbYV09Yn07Xy5ubj1mdW5jdGlvbihhLGIpe2lmKCFhLmdbYl0pcmV0dXJuIGI7YT1hLmdbYl07cmV0dXJuKGE9YS5nfHxhLmopP2E6Yn07Xy5vbj1mdW5jdGlvbihhKXt2YXIgYj1fLm1uLmFiKCkuZ1thXTtpZighYil0aHJvdyBFcnJvcigiJGAiK2EpO3JldHVybiBifTtfLmNkKF8ubW4pOwp2YXIgcG47Xy5xbj1mdW5jdGlvbigpe3RoaXMuaj17fTt0aGlzLm89dGhpcy5TYT10aGlzLmk9dGhpcy5GYj1udWxsO3RoaXMucz1wbn07Xy5xbi5wcm90b3R5cGUuQXc9ZnVuY3Rpb24oYSl7dGhpcy5GYj1hfTtfLnFuLnByb3RvdHlwZS5aYj1mdW5jdGlvbigpe3JldHVybiB0aGlzLkZifTtfLnFuLnByb3RvdHlwZS5yZWdpc3Rlcj1mdW5jdGlvbihhLGIpe18uV2EoYSxiKTt0aGlzLmpbYV09Yn07Xy5ybj1mdW5jdGlvbihhLGIpe2lmKGE9WmEoYikpcmV0dXJuIGF9O18udG49ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLm5uKF8ubW4uYWIoKSxiKTtyZXR1cm4oYj1hLmpbY10pPyhhLmkmJmEuaS5pKGMpLF8udWgoYikpOmMgaW5zdGFuY2VvZiBfLlhhPyhhLmkmJmEuaS5zKGMpLF8ubmgodmgoYS5nKFtjXSkpLGZ1bmN0aW9uKCl7aWYoYS5qW2NdKXJldHVybiBhLmkmJmEuaS5qKGMpLGEualtjXTt0aHJvdyBzbihhLGMpO30pKTpfLndoKHNuKGEsYykpfTsKXy5xbi5wcm90b3R5cGUuZz1mdW5jdGlvbihhKXthPXVuKHRoaXMsYSk7Xy5yYihhLGZ1bmN0aW9uKCl7fSk7cmV0dXJuIGF9O3ZhciB1bj1mdW5jdGlvbihhLGIpe2I9Yi5tYXAoZnVuY3Rpb24oZSl7cmV0dXJuIF8ubm4oXy5tbi5hYigpLGUpfSk7Yj1iLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4hYS5qW2VdfSk7dmFyIGM9W10sZD17fTtnbChiKS56RS5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuIGUgaW5zdGFuY2VvZiBfLlhhJiYhYS5qW2VdfSkuZm9yRWFjaChmdW5jdGlvbihlKXtlPWUuZztudWxsPT1lfHxkW2VdfHwoZFtlXT0hMCxjLnB1c2goZSkpfSk7aWYoMD09Yy5sZW5ndGgpcmV0dXJuIF8ub2IoKTt0cnl7cmV0dXJuIF8ud2MoT2JqZWN0LnZhbHVlcyhhLnMoYSxjKSkpfWNhdGNoKGUpe3JldHVybiBfLlFnKGUpfX0sc249ZnVuY3Rpb24oYSxiKXthLmkmJmEuaS5vKGIpO3JldHVybiBuZXcgVHlwZUVycm9yKCJhYWAiK2IpfTtfLmNkKF8ucW4pOwpfLnZuPWZ1bmN0aW9uKGEpe2Eub3x8KGEubz1fLkthKCkpO3JldHVybiBhLm99O3BuPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8uRmgoXy52bihhKSxiKX07CnZhciB3bix4bix6bjt3bj1bXTt4bj1mdW5jdGlvbihhLGIsYyxkLGUsZil7dGhpcy5pPWE7dGhpcy5qPXZvaWQgMD09PWY/bnVsbDpmO3RoaXMuZz1udWxsO3RoaXMuVT1iO3RoaXMudj1jO3RoaXMucz1kO3RoaXMubz1lO3duLnB1c2godGhpcyl9O18ueW49ZnVuY3Rpb24oYSxiKXtpZigobmV3IFNldChbXS5jb25jYXQoXy5KYyhhLlUpLF8uSmMoYS52KSkpKS5oYXMoYikpcmV0dXJuITA7YT1uZXcgU2V0KFtdLmNvbmNhdChfLkpjKGEucyksXy5KYyhhLm8pKSk7YT1fLkMoYSk7Zm9yKHZhciBjPWEubmV4dCgpOyFjLmRvbmU7Yz1hLm5leHQoKSlpZihfLnluKF8ub24oYy52YWx1ZSksYikpcmV0dXJuITA7cmV0dXJuITF9O3puPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5pLmk7Xy52YShjLGEuaik7Yy5wdXNoKGIpO2EuZz1ifTsKdmFyIEVuLENuLEJuLEduLEhuLEluLEpuLExuLEFuLEZuO18uUD1mdW5jdGlvbihhLGIpe2I9bmV3IF8uWGEoYSxhLGIpO3JldHVybiBBbihhLGIpfTtfLkRuPWZ1bmN0aW9uKGEsYixjLGQpe2E9Xy5QKGEsYz9bY106dm9pZCAwKTtkJiZCbihkKS5hZGQoYSk7Xy5tbi5hYigpLnJlZ2lzdGVyKGEsbmV3IHhuKGEsQ24oYSksYj9DbihiKTpuZXcgU2V0LEJuKGEpLGI/Qm4oYik6bmV3IFNldCxjKSk7cmV0dXJuIGF9O0VuPWZ1bmN0aW9uKGEsYil7Q24oYikuYWRkKGEpfTtDbj1mdW5jdGlvbihhKXtyZXR1cm4gRm4oR24sYS50b1N0cmluZygpLGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBTZXR9KX07Qm49ZnVuY3Rpb24oYSl7cmV0dXJuIEZuKEhuLGEudG9TdHJpbmcoKSxmdW5jdGlvbigpe3JldHVybiBuZXcgU2V0fSl9O0duPW5ldyBNYXA7SG49bmV3IE1hcDtJbj1uZXcgTWFwO0puPW5ldyBNYXA7Cl8uS249ZnVuY3Rpb24oYSl7Sm4uaGFzKGEpJiYoYT1Kbi5nZXQoYSkpO3ZhciBiPUluLmdldChhKTtyZXR1cm4gYj9iOihiPW5ldyBfLlhhKGEsYSxbXSksQW4oYSxiKSxiKX07TG49bmV3IE1hcDtBbj1mdW5jdGlvbihhLGIpe2I9Rm4oSW4sYSxmdW5jdGlvbigpe3JldHVybiBifSk7TG4uc2V0KGEsU3RyaW5nKGIpKTtyZXR1cm4gYn07Rm49ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEuZ2V0KGIpO2R8fChkPWMoYiksYS5zZXQoYixkKSk7cmV0dXJuIGR9Owp2YXIgT249ZnVuY3Rpb24oYSxiKXtfLm1kLmNhbGwodGhpcyk7dmFyIGM9dGhpczt0aGlzLlU9YTt0aGlzLkZiPWJ8fG51bGw7dGhpcy5TYT1udWxsO3RoaXMuaj1uZXcgTW4odGhpcy5TYSxmdW5jdGlvbigpe3JldHVybiBObihjLDAsITEpfSk7dGhpcy5nPXt9O3RoaXMuVD1udWxsO3RoaXMubWE9bmV3IFNldDt0aGlzLiQ9dGhpcy5vPW51bGw7YS5fX3dpem1hbmFnZXI9dGhpczt0aGlzLnY9bmV3IF8uc20odGhpcyk7dGhpcy52Lmxpc3RlbihfLmxnKGEpLCJ1bmxvYWQiLHRoaXMuVGIpO3RoaXMudi5saXN0ZW4oXy5sZyhhKSwic2Nyb2xsIix0aGlzLkhhKTtfLm9kKHRoaXMsdGhpcy52KX0sUm4sWG4sTm4sU24sJG4sWm4sTW4sWW4sYW8sVm4sV24sVW47Xy5EKE9uLF8ubWQpO18uUG49ZnVuY3Rpb24oYSl7cmV0dXJuIF8uZGcoYSkuX193aXptYW5hZ2VyfTtPbi5wcm90b3R5cGUuaT1mdW5jdGlvbigpe3ZhciBhPXRoaXMuajthLmd8fChhLmc9ITApO3JldHVybiBfLlFuKHRoaXMuail9OwpPbi5wcm90b3R5cGUuWmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5VfTtPbi5wcm90b3R5cGUuSGE9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuZyYmKHRoaXMub3x8KHRoaXMubz1fLlVnKCkpLHRoaXMuJCYmd2luZG93LmNsZWFyVGltZW91dCh0aGlzLiQpLHRoaXMuJD13aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpe2EubyYmKGEuby5yZXNvbHZlKCksYS5vPW51bGwpfSwyMDApKX07Um49ZnVuY3Rpb24oYSxiKXtpZighXy5wZChhLkZiKSl7dmFyIGM9W107Yi5mb3JFYWNoKGZ1bmN0aW9uKGQpe3ZhciBlPWQuZ2V0QXR0cmlidXRlKCJqc2NvbnRyb2xsZXIiKTtlJiYhZC5nZXRBdHRyaWJ1dGUoImpzbGF6eSIpJiYoZD1fLktuKGUpKSYmIWEubWEuaGFzKGQpJiYoYy5wdXNoKGQpLGEubWEuYWRkKGQpKX0pOzA8Yy5sZW5ndGgmJihiPV8ucW4uYWIoKS5nKGMpKSYmXy5yYihiLGZ1bmN0aW9uKCl7fSl9fTsKXy5Ubj1mdW5jdGlvbihhLGIpe2EuaXNEaXNwb3NlZCgpfHxhLmdbXy5DYShiKV18fFNuKGEsW2JdKX07WG49ZnVuY3Rpb24oYSl7YT1BcnJheS5mcm9tKGEucXVlcnlTZWxlY3RvckFsbChVbikpO3JldHVybiBfLndkKGEsZnVuY3Rpb24oYil7cmV0dXJuIF8ua2ooYixrbikmJlZuLnRlc3QoYi5nZXRBdHRyaWJ1dGUoImpzYWN0aW9uIikpfHxXbi5zb21lKGZ1bmN0aW9uKGMpe3JldHVybiBiLmhhc0F0dHJpYnV0ZShjKX0pfSl9OwpObj1mdW5jdGlvbihhLGIsYyl7aWYoYS5pc0Rpc3Bvc2VkKCkpcmV0dXJuIF8uUWcoRXJyb3IoImJhIikpO2lmKGEubylyZXR1cm4gYS5vLnByb21pc2UudGhlbihmdW5jdGlvbigpe3JldHVybiBObihhLGIsYyl9KTt2YXIgZD1ZbihhLmopO2lmKGQmJiFjKXt2YXIgZT1TbihhLGQudXouZmlsdGVyKGZ1bmN0aW9uKG0pe3JldHVybiBhLlphKCkuZG9jdW1lbnRFbGVtZW50LmNvbnRhaW5zKG0pfSkpO2QuWGguZm9yRWFjaChmdW5jdGlvbihtKXthLnMobSk7Xy5wKFhuKG0pLGZ1bmN0aW9uKHEpe3JldHVybiBhLnMocSl9KX0pO3JldHVybiBlfWQ9WG4oYS5VKTtlPVtdO2Zvcih2YXIgZj17fSxnPTA7ZzxkLmxlbmd0aDtnKyspe3ZhciBrPWRbZ10sbD1fLkNhKGspO2EuZ1tsXT9mW2xdPWs6ZS5wdXNoKGspfV8ucWUoYS5nLGZ1bmN0aW9uKG0scSl7ZltxXXx8dGhpcy5zKG0pfSxhKTtyZXR1cm4gU24oYSxlKX07ClNuPWZ1bmN0aW9uKGEsYil7aWYoIWIubGVuZ3RoKXJldHVybiBfLm9iKCk7dmFyIGM9ITEsZD1bXTtiLmZvckVhY2goZnVuY3Rpb24oZSl7aWYoXy5raihlLGtuKXx8V24uc29tZShmdW5jdGlvbihmKXtyZXR1cm4gZS5oYXNBdHRyaWJ1dGUoZil9KSl7aWYoYS5nW18uQ2EoZSldKXJldHVybjthLmdbXy5DYShlKV09ZX1fLmtqKGUsZWIpJiZabihlKTtfLmtqKGUsa24pP2QucHVzaChlKTpjPSEwfSk7Um4oYSxkKTtiPSRuKGQpO2lmKCFjfHwwPmFvKXJldHVybiBiO2EuVCYmd2luZG93LmNsZWFyVGltZW91dChhLlQpO2EuVD13aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpe3JldHVybiBSbihhLE9iamVjdC52YWx1ZXMoYS5nKSl9LGFvKTtyZXR1cm4gYn07CiRuPWZ1bmN0aW9uKGEpe2lmKCFhLmxlbmd0aClyZXR1cm4gXy5vYigpO3ZhciBiPSEhKHdpbmRvdy5wZXJmb3JtYW5jZSYmd2luZG93LnBlcmZvcm1hbmNlLm1hcmsmJndpbmRvdy5wZXJmb3JtYW5jZS5tZWFzdXJlJiZ3aW5kb3cucGVyZm9ybWFuY2UuY2xlYXJNZWFzdXJlcyYmd2luZG93LnBlcmZvcm1hbmNlLmNsZWFyTWFya3MpO2ImJih3aW5kb3cucGVyZm9ybWFuY2UuY2xlYXJNZWFzdXJlcygia0RjUDliIiksd2luZG93LnBlcmZvcm1hbmNlLmNsZWFyTWFya3MoIk83alBOYiIpLHdpbmRvdy5wZXJmb3JtYW5jZS5tYXJrKCJPN2pQTmIiKSk7YS5mb3JFYWNoKGZ1bmN0aW9uKGMpe3RyeXtfLmRiKGMsa24sdm9pZCAwLCExLHZvaWQgMCl9Y2F0Y2goZCl7d2luZG93LnNldFRpbWVvdXQodGQoZCksMCl9fSk7YiYmd2luZG93LnBlcmZvcm1hbmNlLm1lYXN1cmUoImtEY1A5YiIsIk83alBOYiIpO3JldHVybiBfLm9iKCl9OwpPbi5wcm90b3R5cGUucz1mdW5jdGlvbihhKXt2YXIgYj1hLl9fc295O2ImJmIuVGIoKTsoYj1hLl9fY29tcG9uZW50KSYmYi5UYigpO2JvKGEuX19qc2NvbnRyb2xsZXIpO2EuX19qc2NvbnRyb2xsZXI9dm9pZCAwO2lmKGI9YS5fX2pzbW9kZWwpe2Zvcih2YXIgYyBpbiBiKWJvKGJbY10pO2EuX19qc21vZGVsPXZvaWQgMH0oYz1hLl9fb3duZXIpJiZfLm1pLmhhcyhjKSYmXy52YShfLm1pLmdldChjKSxhKTtkZWxldGUgdGhpcy5nW18uQ2EoYSldfTt2YXIgYm89ZnVuY3Rpb24oYSl7aWYoYSlpZihhLmcpe3ZhciBiPW51bGw7dHJ5e18ubmgoYSxmdW5jdGlvbihjKXtiPWN9KX1jYXRjaChjKXt9YiYmYi5UYigpfWVsc2UgYS5jYW5jZWwoKX07T24ucHJvdG90eXBlLmhiPWZ1bmN0aW9uKCl7Xy5tZC5wcm90b3R5cGUuaGIuY2FsbCh0aGlzKTtfLnFlKHRoaXMuZyx0aGlzLnMsdGhpcyk7dGhpcy5VPW51bGx9Owpabj1mdW5jdGlvbihhKXthLnNldEF0dHJpYnV0ZT1mYjthLnJlbW92ZUF0dHJpYnV0ZT1nYn07TW49ZnVuY3Rpb24oYSxiKXt0aGlzLlNhPWE7dGhpcy52PWI7dGhpcy5qPVtdO3RoaXMubz1bXTt0aGlzLmc9ITE7dGhpcy5zPXRoaXMuaT1udWxsfTtZbj1mdW5jdGlvbihhKXt2YXIgYj1hLmc/bnVsbDp7dXo6YS5qLFhoOmEub307YS5qPVtdO2Eubz1bXTthLmc9ITE7cmV0dXJuIGJ9O18uUW49ZnVuY3Rpb24oYSl7aWYoYS5pKXJldHVybiBhLmk7YS5pPW5ldyBfLk1nKGZ1bmN0aW9uKGIpe3ZhciBjPSExO2Eucz1mdW5jdGlvbigpe2N8fChhLmk9bnVsbCxhLnM9bnVsbCxjPSEwLGIoYS52KCkpKX07Xy5BZyhhLnMpfSk7Xy5yYihhLmksZnVuY3Rpb24oKXt9KTtyZXR1cm4gYS5pfTthbz0wO1ZuPW5ldyBSZWdFeHAoIihcXHMqIitrbisiXFxzKjpcXHMqdHJpZ2dlcikiKTtXbj1bImpzY29udHJvbGxlciIsImpzbW9kZWwiLCJqc293bmVyIl07ClVuPVduLm1hcChmdW5jdGlvbihhKXtyZXR1cm4iWyIrYSsiXSJ9KS5qb2luKCIsIikrJyxbanNhY3Rpb24qPSJ0cmlnZ2VyLiJdJzsKdmFyIGNvPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDtjKyspdHJ5e3ZhciBkPWJbY10uZyhhKTtpZihudWxsIT1kJiZkLmFib3J0KXJldHVybiBkfWNhdGNoKGUpe18uZmEoZSl9fSxlbz1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0wO2M8Yi5sZW5ndGg7YysrKXRyeXtiW2NdLmkoYSl9Y2F0Y2goZCl7Xy5mYShkKX19Owp2YXIgZm87Zm89e307Xy5qYz1mdW5jdGlvbihhLGIpe2lmKGEgaW5zdGFuY2VvZiBfLlhhKXZhciBjPV8ubm4oXy5tbi5hYigpLGEpO2Vsc2UgaWYoImZ1bmN0aW9uIj09PXR5cGVvZiBhKWM9Xy5ybihfLnFuLmFiKCksYSk7ZWxzZSByZXR1cm4gXy53aCgiU2VydmljZSBrZXkgbXVzdCBiZSBhIFNlcnZpY2VJZCBvciBTZXJ2aWNlIGNvbnN0cnVjdG9yIik7YT1mb1tjXTthfHwoYT1fLnRuKF8ucW4uYWIoKSxjKSxmb1tjXT1hKTt2YXIgZD1uZXcgXy5naCxlPWZ1bmN0aW9uKGYpe18ubWgoZi5BdShjLGJ8fHZvaWQgMCksZnVuY3Rpb24oZyl7ZC5vYihnKX0sZnVuY3Rpb24oZyl7ZC5GYyhnKX0pfTtfLm5oKGEsZnVuY3Rpb24oZil7dmFyIGc9Xy5ubihfLm1uLmFiKCksYyk7aWYoZyE9YylmPV8uamMoZyxiKSxfLm1oKGYsZC5vYixkLkZjLGQpO2Vsc2UgcmV0dXJuIF8ubW4uYWIoKSxlKGYpfSk7Xy5vaChhLGZ1bmN0aW9uKGYpe2QuRmMoZil9KTtyZXR1cm4gZH07CnZhciBnbz1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gYX19OwovKgoKIENvcHlyaWdodCAyMDA1IEdvb2dsZSBMTEMuCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAoqLwppYi5wcm90b3R5cGUuaj1mdW5jdGlvbihhLGIpe2lmKEFycmF5LmlzQXJyYXkoYSkpe3ZhciBjPVtdO2ZvcihiPTA7YjxhLmxlbmd0aDtiKyspe3ZhciBkPWhvKGFbYl0pO2lmKGQubmVlZHNSZXRyaWdnZXIpe3ZhciBlPXZvaWQgMDt2YXIgZj1kLmV2ZW50O3ZhciBnPWQuZXZlbnRUeXBlO3ZhciBrPSJfY3VzdG9tIj09Zi50eXBlPyJfY3VzdG9tIjpnfHxmLnR5cGU7aWYoImtleXByZXNzIj09a3x8ImtleWRvd24iPT1rfHwia2V5dXAiPT1rKXtpZihkb2N1bWVudC5jcmVhdGVFdmVudClpZihlPWRvY3VtZW50LmNyZWF0ZUV2ZW50KCJLZXlib2FyZEV2ZW50IiksZS5pbml0S2V5Ym9hcmRFdmVudCl7aWYoeG0pe2s9Zi5jdHJsS2V5O3ZhciBsPWYubWV0YUtleSxtPWYuc2hpZnRLZXkscT1bXTtmLmFsdEtleSYmcS5wdXNoKCJBbHQiKTtrJiZxLnB1c2goIkNvbnRyb2wiKTtsJiZxLnB1c2goIk1ldGEiKTttJiZxLnB1c2goIlNoaWZ0Iik7az1xLmpvaW4oIiAiKTtlLmluaXRLZXlib2FyZEV2ZW50KGd8fApmLnR5cGUsITAsITAsd2luZG93LGYua2V5LGYubG9jYXRpb24sayxmLnJlcGVhdCxmLmxvY2FsZSl9ZWxzZSBlLmluaXRLZXlib2FyZEV2ZW50KGd8fGYudHlwZSwhMCwhMCx3aW5kb3csZi5rZXksZi5sb2NhdGlvbixmLmN0cmxLZXksZi5hbHRLZXksZi5zaGlmdEtleSxmLm1ldGFLZXkpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJyZXBlYXQiLHtnZXQ6Z28oZi5yZXBlYXQpLGVudW1lcmFibGU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwibG9jYWxlIix7Z2V0OmdvKGYubG9jYWxlKSxlbnVtZXJhYmxlOiEwfSk7d20mJmYua2V5JiYiIj09PWUua2V5JiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwia2V5Iix7Z2V0OmdvKGYua2V5KSxlbnVtZXJhYmxlOiEwfSk7aWYod218fHhtfHx5bSlPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiY2hhckNvZGUiLHtnZXQ6Z28oZi5jaGFyQ29kZSksZW51bWVyYWJsZTohMH0pLGc9Z28oZi5rZXlDb2RlKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwKImtleUNvZGUiLHtnZXQ6ZyxlbnVtZXJhYmxlOiEwfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIndoaWNoIix7Z2V0OmcsZW51bWVyYWJsZTohMH0pfWVsc2UgZS5pbml0S2V5RXZlbnQoZ3x8Zi50eXBlLCEwLCEwLHdpbmRvdyxmLmN0cmxLZXksZi5hbHRLZXksZi5zaGlmdEtleSxmLm1ldGFLZXksZi5rZXlDb2RlLGYuY2hhckNvZGUpO2Vsc2UgZT1kb2N1bWVudC5jcmVhdGVFdmVudE9iamVjdCgpLGUudHlwZT1nfHxmLnR5cGUsZS5yZXBlYXQ9Zi5yZXBlYXQsZS5jdHJsS2V5PWYuY3RybEtleSxlLmFsdEtleT1mLmFsdEtleSxlLnNoaWZ0S2V5PWYuc2hpZnRLZXksZS5tZXRhS2V5PWYubWV0YUtleSxlLmtleT1mLmtleSxlLmtleUNvZGU9Zi5rZXlDb2RlLGUuY2hhckNvZGU9Zi5jaGFyQ29kZTtlLlpmPWYudGltZVN0YW1wO2c9ZX1lbHNlIGlmKCJjbGljayI9PWt8fCJkYmxjbGljayI9PWt8fCJtb3VzZWRvd24iPT1rfHwibW91c2VvdmVyIj09a3x8Im1vdXNlb3V0Ij09a3x8CiJtb3VzZW1vdmUiPT1rKWRvY3VtZW50LmNyZWF0ZUV2ZW50PyhlPWRvY3VtZW50LmNyZWF0ZUV2ZW50KCJNb3VzZUV2ZW50IiksZS5pbml0TW91c2VFdmVudChnfHxmLnR5cGUsITAsITAsd2luZG93LGYuZGV0YWlsfHwxLGYuc2NyZWVuWHx8MCxmLnNjcmVlbll8fDAsZi5jbGllbnRYfHwwLGYuY2xpZW50WXx8MCxmLmN0cmxLZXl8fCExLGYuYWx0S2V5fHwhMSxmLnNoaWZ0S2V5fHwhMSxmLm1ldGFLZXl8fCExLGYuYnV0dG9ufHwwLGYucmVsYXRlZFRhcmdldHx8bnVsbCkpOihlPWRvY3VtZW50LmNyZWF0ZUV2ZW50T2JqZWN0KCksZS50eXBlPWd8fGYudHlwZSxlLmNsaWVudFg9Zi5jbGllbnRYLGUuY2xpZW50WT1mLmNsaWVudFksZS5idXR0b249Zi5idXR0b24sZS5kZXRhaWw9Zi5kZXRhaWwsZS5jdHJsS2V5PWYuY3RybEtleSxlLmFsdEtleT1mLmFsdEtleSxlLnNoaWZ0S2V5PWYuc2hpZnRLZXksZS5tZXRhS2V5PWYubWV0YUtleSksZS5aZj1mLnRpbWVTdGFtcCxnPWU7ZWxzZSBpZigiZm9jdXMiPT0Ka3x8ImJsdXIiPT1rfHwiZm9jdXNpbiI9PWt8fCJmb2N1c291dCI9PWt8fCJzY3JvbGwiPT1rKWRvY3VtZW50LmNyZWF0ZUV2ZW50PyhlPWRvY3VtZW50LmNyZWF0ZUV2ZW50KCJVSUV2ZW50IiksZS5pbml0VUlFdmVudChnfHxmLnR5cGUsdm9pZCAwIT09Zi5idWJibGVzP2YuYnViYmxlczohMCxmLmNhbmNlbGFibGV8fCExLGYudmlld3x8d2luZG93LGYuZGV0YWlsfHwwKSk6KGU9ZG9jdW1lbnQuY3JlYXRlRXZlbnRPYmplY3QoKSxlLnR5cGU9Z3x8Zi50eXBlLGUuYnViYmxlcz12b2lkIDAhPT1mLmJ1YmJsZXM/Zi5idWJibGVzOiEwLGUuY2FuY2VsYWJsZT1mLmNhbmNlbGFibGV8fCExLGUudmlldz1mLnZpZXd8fHdpbmRvdyxlLmRldGFpbD1mLmRldGFpbHx8MCksZS5yZWxhdGVkVGFyZ2V0PWYucmVsYXRlZFRhcmdldHx8bnVsbCxlLlpmPWYudGltZVN0YW1wLGc9ZTtlbHNlIGlmKCJfY3VzdG9tIj09ayl7Zz17X3R5cGU6Zyx0eXBlOmcsZGF0YTpmLmRldGFpbC5kYXRhLFlLOmYuZGV0YWlsLnRyaWdnZXJpbmdFdmVudH07CnRyeXtlPWRvY3VtZW50LmNyZWF0ZUV2ZW50KCJDdXN0b21FdmVudCIpLGUuaW5pdEN1c3RvbUV2ZW50KCJfY3VzdG9tIiwhMCwhMSxnKX1jYXRjaCh1KXtlPWRvY3VtZW50LmNyZWF0ZUV2ZW50KCJIVE1MRXZlbnRzIiksZS5pbml0RXZlbnQoIl9jdXN0b20iLCEwLCExKSxlLmRldGFpbD1nfWc9ZTtnLlpmPWYudGltZVN0YW1wfWVsc2UgZG9jdW1lbnQuY3JlYXRlRXZlbnQ/KGU9ZG9jdW1lbnQuY3JlYXRlRXZlbnQoIkV2ZW50IiksZS5pbml0RXZlbnQoZ3x8Zi50eXBlLCEwLCEwKSk6KGU9ZG9jdW1lbnQuY3JlYXRlRXZlbnRPYmplY3QoKSxlLnR5cGU9Z3x8Zi50eXBlKSxlLlpmPWYudGltZVN0YW1wLGc9ZTtkPWQudGFyZ2V0RWxlbWVudDtmPWc7ZC5kaXNwYXRjaEV2ZW50P2QuZGlzcGF0Y2hFdmVudChmKTpkLmZpcmVFdmVudCgib24iK2YudHlwZSxmKX1lbHNlIGMucHVzaChkKX10aGlzLmc9Yztpbyh0aGlzKX1lbHNle2E9aG8oYSxiKTtpZihhLm5lZWRzUmV0cmlnZ2VyKXJldHVybiBhLmV2ZW50OwppZihiKXtjPWEuZXZlbnQ7YT10aGlzLlVbYS5ldmVudFR5cGVdO2I9ITE7aWYoYSlmb3IoZD0wO2Y9YVtkKytdOykhMT09PWYoYykmJihiPSEwKTtiJiYoYy5wcmV2ZW50RGVmYXVsdD9jLnByZXZlbnREZWZhdWx0KCk6Yy5yZXR1cm5WYWx1ZT0hMSl9ZWxzZSBiPWEuYWN0aW9uLHRoaXMubyYmKGM9dGhpcy5vKGEpKSxjfHwoYz10aGlzLnNbYl0pLGM/KGE9dGhpcy52KGEpLGMoYSksYS5kb25lKCJtYWluLWFjdGlvbmZsb3ctYnJhbmNoIikpOihjPUFtKGEuZXZlbnQpLGEuZXZlbnQ9Yyx0aGlzLmcucHVzaChhKSl9fTsKdmFyIGhvPWZ1bmN0aW9uKGEsYil7Yj12b2lkIDA9PT1iPyExOmI7aWYoIm1heWJlX2NsaWNrIiE9PWEuZXZlbnRUeXBlKXJldHVybiBhO3ZhciBjPV8ueWUoYSksZD1jLmV2ZW50LGU7aWYoZT1ifHxhLmFjdGlvbkVsZW1lbnQpe3ZhciBmPWEuZXZlbnQ7YT1mLndoaWNofHxmLmtleUNvZGU7d20mJjM9PWEmJihhPTEzKTtpZigxMyE9YSYmMzIhPWEpZT0hMTtlbHNlIGlmKGU9dm0oZiksKGY9ImtleWRvd24iIT1mLnR5cGV8fCEhKCEoImdldEF0dHJpYnV0ZSJpbiBlKXx8KGUuZ2V0QXR0cmlidXRlKCJ0eXBlIil8fGUudGFnTmFtZSkudG9VcHBlckNhc2UoKWluIERtfHwiQlVUVE9OIj09ZS50YWdOYW1lLnRvVXBwZXJDYXNlKCl8fGUudHlwZSYmIkZJTEUiPT1lLnR5cGUudG9VcHBlckNhc2UoKXx8ZS5pc0NvbnRlbnRFZGl0YWJsZSl8fGYuY3RybEtleXx8Zi5zaGlmdEtleXx8Zi5hbHRLZXl8fGYubWV0YUtleXx8KGUuZ2V0QXR0cmlidXRlKCJ0eXBlIil8fGUudGFnTmFtZSkudG9VcHBlckNhc2UoKWluCkNtJiYzMj09YSl8fCgoZj1lLnRhZ05hbWUgaW4gem0pfHwoZj1lLmdldEF0dHJpYnV0ZU5vZGUoInRhYmluZGV4IiksZj1udWxsIT1mJiZmLnNwZWNpZmllZCksZj0hKGYmJiFlLmRpc2FibGVkKSksZillPSExO2Vsc2V7Zj0oZS5nZXRBdHRyaWJ1dGUoInJvbGUiKXx8ZS50eXBlfHxlLnRhZ05hbWUpLnRvVXBwZXJDYXNlKCk7dmFyIGc9IShmIGluIF8uQm0pJiYxMz09YTtlPSJJTlBVVCIhPWUudGFnTmFtZS50b1VwcGVyQ2FzZSgpfHwhIWUudHlwZTtlPSgwPT1fLkJtW2ZdJWF8fGcpJiZlfX1lPyhjLmFjdGlvbkVsZW1lbnQ/KGI9Yy5ldmVudCxhPXZtKGIpLGE9KGEudHlwZXx8YS50YWdOYW1lKS50b1VwcGVyQ2FzZSgpLChhPTMyPT0oYi53aGljaHx8Yi5rZXlDb2RlKSYmIkNIRUNLQk9YIiE9YSl8fChiPXZtKGIpLGE9Yi50YWdOYW1lLnRvVXBwZXJDYXNlKCksZT0oYi5nZXRBdHRyaWJ1dGUoInJvbGUiKXx8IiIpLnRvVXBwZXJDYXNlKCksYT0iQlVUVE9OIj09PWF8fCJCVVRUT04iPT09CmU/ITA6IShiLnRhZ05hbWUudG9VcHBlckNhc2UoKWluIEVtKXx8IkEiPT09YXx8IlNFTEVDVCI9PT1hfHwoYi5nZXRBdHRyaWJ1dGUoInR5cGUiKXx8Yi50YWdOYW1lKS50b1VwcGVyQ2FzZSgpaW4gQ218fChiLmdldEF0dHJpYnV0ZSgidHlwZSIpfHxiLnRhZ05hbWUpLnRvVXBwZXJDYXNlKClpbiBEbT8hMTohMCksYj1hfHwiQSI9PWMuYWN0aW9uRWxlbWVudC50YWdOYW1lPyEwOiExKTpiPSExLGImJihkLnByZXZlbnREZWZhdWx0P2QucHJldmVudERlZmF1bHQoKTpkLnJldHVyblZhbHVlPSExKSxjLmV2ZW50VHlwZT0iY2xpY2siKTooYy5ldmVudFR5cGU9ImtleWRvd24iLGJ8fChkPUFtKGQpLGQuYTExeXNjPSEwLGQuYTExeXNnZD0hMCxjLmV2ZW50PWQsYy5uZWVkc1JldHJpZ2dlcj0hMCkpO3JldHVybiBjfSxoYj1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IF8uS20oYS5hY3Rpb24sYS5hY3Rpb25FbGVtZW50LGEuZXZlbnQsYS50aW1lU3RhbXAsYS5ldmVudFR5cGUsYS50YXJnZXRFbGVtZW50KX0sCmlvPWZ1bmN0aW9uKGEpe2EuaSYmMCE9YS5nLmxlbmd0aCYmSmcoZnVuY3Rpb24oKXt0aGlzLmkodGhpcy5nLHRoaXMpfSxhKX07Cl8uam89ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe18uZ2guY2FsbCh0aGlzLGUsZik7dGhpcy5BYj1hO3RoaXMuVT1bXTt0aGlzLk9hPSEhYjt0aGlzLkxhPSEhYzt0aGlzLkdhPSEhZDtmb3IoYj10aGlzLkhhPTA7YjxhLmxlbmd0aDtiKyspXy5taChhW2JdLCgwLF8udCkodGhpcy5tYSx0aGlzLGIsITApLCgwLF8udCkodGhpcy5tYSx0aGlzLGIsITEpKTswIT1hLmxlbmd0aHx8dGhpcy5PYXx8dGhpcy5vYih0aGlzLlUpfTtfLkYoXy5qbyxfLmdoKTtfLmpvLnByb3RvdHlwZS5tYT1mdW5jdGlvbihhLGIsYyl7dGhpcy5IYSsrO3RoaXMuVVthXT1bYixjXTt0aGlzLmd8fCh0aGlzLk9hJiZiP3RoaXMub2IoW2EsY10pOnRoaXMuTGEmJiFiP3RoaXMuRmMoYyk6dGhpcy5IYT09dGhpcy5BYi5sZW5ndGgmJnRoaXMub2IodGhpcy5VKSk7dGhpcy5HYSYmIWImJihjPW51bGwpO3JldHVybiBjfTsKXy5qby5wcm90b3R5cGUuRmM9ZnVuY3Rpb24oYSl7Xy5qby5WYi5GYy5jYWxsKHRoaXMsYSk7Zm9yKGE9MDthPHRoaXMuQWIubGVuZ3RoO2ErKyl0aGlzLkFiW2FdLmNhbmNlbCgpfTtfLmtvPWZ1bmN0aW9uKGEpe3JldHVybiBfLm5oKG5ldyBfLmpvKGEsITEsITApLGZ1bmN0aW9uKGIpe2Zvcih2YXIgYz1bXSxkPTA7ZDxiLmxlbmd0aDtkKyspY1tkXT1iW2RdWzFdO3JldHVybiBjfSl9Owp2YXIgbW89ZnVuY3Rpb24oYSxiLGMpe3RoaXMuc0Y9YTt0aGlzLk5oPWI7dGhpcy5GYj1jfHxudWxsO3RoaXMuU2E9bnVsbDthPXRoaXMua3Y9bmV3IGliKGxvKHRoaXMpKTtjPSgwLF8udCkodGhpcy5rRSx0aGlzKTthLmk9YztpbyhhKTt0aGlzLkprPVtdO3RoaXMudnQ9bnVsbDtiLlphKCkuX193aXpkaXNwYXRjaGVyPXRoaXM7dGhpcy5qcj17fTt0aGlzLkptPVtdO3RoaXMueXE9ITE7dGhpcy5zdj1udWxsO3RoaXMubHQ9Xy5TbXx8bnVsbDt0aGlzLlN2PV8udWgoKTt0aGlzLnp3PSExfTtfLmg9bW8ucHJvdG90eXBlO18uaC5aYj1mdW5jdGlvbigpe3JldHVybiB0aGlzLkZifTtfLmguQXc9ZnVuY3Rpb24oKXt9O18uaC5hZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLkZifHx2b2lkIDB9O18uaC5rRT1mdW5jdGlvbihhLGIpe2Zvcig7YS5sZW5ndGg7KXt2YXIgYz1hLnNoaWZ0KCk7Yi5qKGMpfX07Xy5oLkJhPWZ1bmN0aW9uKGEpe3RoaXMuc0YoYSl9Owp2YXIgbm89ZnVuY3Rpb24oYSxiKXtpZihfLnZjKGIub3duZXJEb2N1bWVudCxiKSl7Zm9yKHZhciBjPTA7YzxhLkprLmxlbmd0aDtjKyspaWYoXy52YyhhLkprW2NdLGIpKXJldHVybiExO3JldHVybiEwfWZvcihjPWI7Yz1jLnBhcmVudE5vZGU7KXtjPWMuaG9zdHx8YztpZihfLnJhKGEuSmssYykpYnJlYWs7aWYoYz09Yi5vd25lckRvY3VtZW50KXJldHVybiEwfXJldHVybiExfTsKbW8ucHJvdG90eXBlLkdjPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1fLnFuLmFiKCksZD1fLlRqKGEpLGU9ZC5nZXRBdHRyaWJ1dGUoImpzY29udHJvbGxlciIpO2lmKCFlKXJldHVybiBjPWQuZ2V0QXR0cmlidXRlKCJqc25hbWUiKSxfLndoKEVycm9yKCJjYWAiKyhjPyIgW3dpdGgganNuYW1lICciK2MrIiddIjoiIikpKTtpZihkLl9fanNjb250cm9sbGVyKXJldHVybiBfLm5oKGQuX19qc2NvbnRyb2xsZXIuSWQoKSxmdW5jdGlvbihrKXtyZXR1cm4gay5xQiYmay5qaiE9ZT8oZC5fX2pzY29udHJvbGxlcj12b2lkIDAsay5UYigpLGIuR2MoYSkpOmt9KTtlPV8uS24oZSk7dmFyIGY9bmV3IF8uZ2g7ZC5fX2pzY29udHJvbGxlcj1mO18uVG4odGhpcy5OaCxkKTtubyh0aGlzLGQpfHwoZi5jYW5jZWwoKSxkLl9fanNjb250cm9sbGVyPXZvaWQgMCk7dmFyIGc9ZnVuY3Rpb24oayl7aWYobm8oYixkKSl7az1rLmNyZWF0ZShlLGQsYik7dmFyIGw9ITA7Xy5uaChrLGZ1bmN0aW9uKG0pe2x8fApubyhiLGQpP2Yub2IobSk6KGYuY2FuY2VsKCksZC5fX2pzY29udHJvbGxlcj12b2lkIDApfSk7Xy5vaChrLGYuRmMsZik7bD0hMX1lbHNlIGYuY2FuY2VsKCksZC5fX2pzY29udHJvbGxlcj12b2lkIDB9O18ub2goXy5uaChfLnRuKGMsZSksZnVuY3Rpb24oayl7Yi52dD9iLnZ0LnRoZW4oZnVuY3Rpb24oKXtnKGspfSk6ZyhrKX0pLGZ1bmN0aW9uKGspe2YuRmMoayl9KTtyZXR1cm4gZi5JZCgpfTt2YXIgb289ZnVuY3Rpb24oYSl7cmV0dXJuIF8uVGEoYSxmdW5jdGlvbihiKXt2YXIgYz1fLnNnKGIpJiZiLmhhc0F0dHJpYnV0ZSgianNjb250cm9sbGVyIik7Yj1fLnNnKGIpJiZiLmhhc0F0dHJpYnV0ZSgianNhY3Rpb24iKSYmLzpccyp0cmlnZ2VyXC4vLnRlc3QoYi5nZXRBdHRyaWJ1dGUoImpzYWN0aW9uIikpO3JldHVybiBjfHxifSwhMSwhMCl9Owptby5wcm90b3R5cGUuS0I9ZnVuY3Rpb24oYSl7aWYoIXRoaXMuRmJ8fCF0aGlzLkZiLmlzRGlzcG9zZWQoKSl7dmFyIGI9YS5HYTtpZihiPWIuc3Vic3RyKDAsYi5pbmRleE9mKCIuIikpKXtpZigidHJpZ2dlciI9PWIpe2I9YS5qO3ZhciBjPVppKGEuR2EpO2M9cG8oYSxjLGIpO2MubGVuZ3RoJiZfLmRiKGIsbmV3IG5pKGNbMF0uYWN0aW9uLmFjdGlvbi5zdWJzdHJpbmcoOCkpLHZvaWQgMCx2b2lkIDAsdm9pZCAwKX10aGlzLnN2JiZ0aGlzLnN2KGEpfWVsc2V7Yj1hLmV2ZW50KCk7dmFyIGQ9YiYmYi5fZF9lcnI7aWYoZCl7Yz1fLnVoKCk7dmFyIGU9Yi5fcjtkZWxldGUgYi5fZF9lcnI7ZGVsZXRlIGIuX3J9ZWxzZSBjPXRoaXMuU3YsZT1uZXcgXy5naCx0aGlzLlN2PXRoaXMuenc/ZTpfLnVoKCk7cW8odGhpcyxhLGMsZSxkKTtyZXR1cm4gZX19fTsKdmFyIHFvPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9Yi5qLGc9Yi5ldmVudCgpO2cuWmY9cm8oZyk7dmFyIGs9c28oYiksbD0kaShmLGIuVT9iLlU6Zy50eXBlKSxtPSEhbCYmMDxsLmxlbmd0aCxxPSExO2IuSWQoIndpeiIpO2lmKG0pe3ZhciB1PXt9O2w9Xy5DKGwpO2Zvcih2YXIgeD1sLm5leHQoKTsheC5kb25lO3U9e2tvOnUua299LHg9bC5uZXh0KCkpdS5rbz14LnZhbHVlLF8ubmgoYyxmdW5jdGlvbihFKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gdG8oYSxiLEUua28sbnVsbCxrKX19KHUpKSxfLm5oKGMsZnVuY3Rpb24oRSl7cT0hMD09PUUoKXx8cX0pfXZhciB2PV8uYWooZiwhMCk7aWYodil7Zj1aaShiLkdhKTt2YXIgej1wbyhiLGYsdik7aWYoei5sZW5ndGgpe3ZhciBBPWEuR2Modik7Xy5uaChjLGZ1bmN0aW9uKCl7cmV0dXJuIHVvKGEsYix6LHYsZyxBLHEpfSl9ZWxzZSBfLm5oKGMsZnVuY3Rpb24oKXttP3EmJnZvKGEsYik6dm8oYSxiLCEwKX0pfWVsc2UgXy5uaChjLApmdW5jdGlvbigpe3EmJnZvKGEsYiwhMCl9KTtfLm9oKGMsZnVuY3Rpb24oRSl7aWYoRSBpbnN0YW5jZW9mIF8uaGgpcmV0dXJuIF8udWgoKTtpZih2JiZ2IT1kb2N1bWVudC5ib2R5KXt2YXIgSz1lP2cuZGF0YS5lcnJvcnMuc2xpY2UoKTpbXTt2YXIgZWE9Xy5RYSh2KTtpZihlYSl7aWYoIXdvKGEpKXRocm93IEU7RT17Sko6Yi5VP2IuVS50b1N0cmluZygpOm51bGwseUo6di5nZXRBdHRyaWJ1dGUoImpzY29udHJvbGxlciIpLGVycm9yOkV9O0sucHVzaChFKTtFPW5ldyBfLmdoO18uZGIoZWEsbG4se2Vycm9yczpLfSx2b2lkIDAse19kX2VycjohMCxfcjpFfSk7Sz1FfWVsc2UgSz1fLnVoKCk7cmV0dXJuIEt9dGhyb3cgRTt9KTtwaChjLGZ1bmN0aW9uKCl7Yi5kb25lKCJ3aXoiKTtkLm9iKCl9KX0sd289ZnVuY3Rpb24oYSl7ZG9jdW1lbnQuYm9keSYmIWEueXEmJihfLmZqKGRvY3VtZW50LmJvZHksbG4sZnVuY3Rpb24oYil7aWYoKGI9Yi5kYXRhKSYmYi5lcnJvcnMmJjA8Yi5lcnJvcnMubGVuZ3RoKXRocm93IGIuZXJyb3JzWzBdLmVycm9yOwp9LGEpLGEueXE9ITApO3JldHVybiBhLnlxfSx1bz1mdW5jdGlvbihhLGIsYyxkLGUsZixnKXtmLmcmJihlLlpmPTApO18ubmgoZixmdW5jdGlvbihrKXthLmx0JiZhLmx0LlUoYixkLmdldEF0dHJpYnV0ZSgianNjb250cm9sbGVyIikpO3JldHVybiB4byhhLGssYixkLGMsZyl9KTtyZXR1cm4gZn0seG89ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe3ZhciBnPWMuZXZlbnQoKSxrPV8udWgoKSxsPXt9O2U9Xy5DKGUpO2Zvcih2YXIgbT1lLm5leHQoKTshbS5kb25lO2w9e2pvOmwuam8scW86bC5xb30sbT1lLm5leHQoKSltPW0udmFsdWUsbC5qbz1tLmFjdGlvbixsLnFvPW0udGFyZ2V0LF8ubmgoayxmdW5jdGlvbihxKXtyZXR1cm4gZnVuY3Rpb24oKXtmb3IodmFyIHU9cS5qbyx4PXUuYWN0aW9uLHY9bnVsbCx6PWIsQT1udWxsOyFBJiZ6JiYoQT16Lk5lW3hdLHo9ei5jb25zdHJ1Y3Rvci5WYix6JiZ6Lk5lKTspO0EmJih2PUEuY2FsbChiKSk7aWYoIXYpdGhyb3cgRXJyb3IoIkdgIit1LmFjdGlvbisKImAiK2IpO3JldHVybiB0byhhLGMsdixiLHEucW8pfX0obCkpLF8ubmgoayxmdW5jdGlvbihxKXtmPSEwPT09cSgpfHxmfSk7Xy5uaChrLGZ1bmN0aW9uKCl7aWYoZiYmITEhPT1nLmJ1YmJsZXMpe3ZhciBxPXlvKGEsYyxkKTtudWxsIT1xJiZhLkJhKHEpfX0pO3JldHVybiBrfSxzbz1mdW5jdGlvbihhKXt2YXIgYj1hLmV2ZW50KCk7cmV0dXJuIl9yZXRhcmdldCJpbiBiP2IuX3JldGFyZ2V0OmEmJmEudGFyZ2V0KCk/YS50YXJnZXQoKTpiLnNyY0VsZW1lbnR9LHBvPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1bXSxlPWEuZXZlbnQoKTtiPWIuZ2V0KCk7Zm9yKHZhciBmPTA7ZjxiLmxlbmd0aDtmKyspe3ZhciBnPWJbZl07aWYoIkNMSUVOVCIhPT1nLmFjdGlvbil7dmFyIGs9c28oYSksbD1udWxsO2lmKGcudGFyZ2V0KXtkb3t2YXIgbT1rLmdldEF0dHJpYnV0ZSgianNuYW1lIikscT1vbyhrKTtpZihnLnRhcmdldD09bSYmcT09Yyl7bD1rO2JyZWFrfWs9Xy5RYShrKX13aGlsZShrJiZrIT0KYyk7aWYoIWwpY29udGludWV9Zy5ZYyYmKCJ0cnVlIj09Zy5ZYy5wcmV2ZW50RGVmYXVsdCYmKG09ZSxtLnByZXZlbnREZWZhdWx0P20ucHJldmVudERlZmF1bHQoKTptLnNyY0VsZW1lbnQmJihxPW0uc3JjRWxlbWVudC5vd25lckRvY3VtZW50LnBhcmVudFdpbmRvdyxxLmV2ZW50JiZxLmV2ZW50LnR5cGU9PW0udHlwZSYmKHEuZXZlbnQucmV0dXJuVmFsdWU9ITEpKSksInRydWUiPT1nLlljLnByZXZlbnRNb3VzZUV2ZW50cyYmZS5fcHJldmVudE1vdXNlRXZlbnRzLmNhbGwoZSkpO2QucHVzaCh7YWN0aW9uOmcsdGFyZ2V0Omx8fGt9KX19cmV0dXJuIGR9LHRvPWZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGY9Yi5ldmVudCgpO2I9Yi5qOzM9PWUubm9kZVR5cGUmJihlPWUucGFyZW50Tm9kZSk7dmFyIGc9bmV3IF8uYmooZixuZXcgXy5PKGUpLG5ldyBfLk8oYiksZi5fX3NvdXJjZSxuZXcgXy5PKHpvKGYsZSkpKSxrPVtdO2U9W107Zj1fLkMoYS5KbSk7Zm9yKGI9Zi5uZXh0KCk7IWIuZG9uZTtiPQpmLm5leHQoKSl7Yj1iLnZhbHVlO3ZhciBsPWEuanJbYl07bD9rLnB1c2gobCk6ZS5wdXNoKGIpfWlmKGMudHQpZm9yKGY9Xy5DKGMudHQpLGI9Zi5uZXh0KCk7IWIuZG9uZTtiPWYubmV4dCgpKWI9Yi52YWx1ZSwobD1hLmpyW2JdKT9rLnB1c2gobCk6ZS5wdXNoKGIpO3JldHVybiBfLm5oKEFvKGEsZSksZnVuY3Rpb24obSl7bT1fLkMobSk7Zm9yKHZhciBxPW0ubmV4dCgpOyFxLmRvbmU7cT1tLm5leHQoKSlrLnB1c2gocS52YWx1ZSk7aWYoay5sZW5ndGgpe2lmKGNvKGcsaykpcmV0dXJuIGZ1bmN0aW9uKCl7fTtlbyhnLGspfXJldHVybigwLF8udCkoYyxkLGcpfSl9LEFvPWZ1bmN0aW9uKGEsYil7dmFyIGM9W107Xy5xbi5hYigpLmcoYik7dmFyIGQ9e307Yj1fLkMoYik7Zm9yKHZhciBlPWIubmV4dCgpOyFlLmRvbmU7ZD17Smw6ZC5KbH0sZT1iLm5leHQoKSlkLkpsPWUudmFsdWUsZT1fLm5oKF8uamMoZC5KbCxhLkZiKSxmdW5jdGlvbihmKXtyZXR1cm4gZnVuY3Rpb24oZyl7YS5qcltmLkpsXT0KZ319KGQpKSxjLnB1c2goZSk7cmV0dXJuIF8ua28oYyl9LHZvPWZ1bmN0aW9uKGEsYixjKXtiPXlvKGEsYix2b2lkIDAsdm9pZCAwPT09Yz8hMTpjKTtudWxsIT1iJiZhLkJhKGIpfSx5bz1mdW5jdGlvbihhLGIsYyxkKXtkPXZvaWQgMD09PWQ/ITE6ZDt2YXIgZT1iLmV2ZW50KCksZj17fSxnO2ZvcihnIGluIGUpImZ1bmN0aW9uIiE9PXR5cGVvZiBlW2ddJiYic3JjRWxlbWVudCIhPT1nJiYidGFyZ2V0IiE9PWcmJiJwYXRoIiE9PWcmJihmW2ddPWVbZ10pO2M9Xy5RYShjfHxiLmopO2lmKCFjfHwhbm8oYSxjKSlyZXR1cm4gbnVsbDtmLnRhcmdldD1jO2lmKGUucGF0aClmb3IoYT0wO2E8ZS5wYXRoLmxlbmd0aDthKyspaWYoZS5wYXRoW2FdPT09Yyl7Zi5wYXRoPV8uemEoZS5wYXRoLGEpO2JyZWFrfWYuX3JldGFyZ2V0PXNvKGIpO2YuX2x0PWQ/ZS5fbHQ/ZS5fbHQ6Zi5fcmV0YXJnZXQ6Zi50YXJnZXQ7Zi5fb3JpZ2luYWxFdmVudD1lO2UucHJldmVudERlZmF1bHQmJihmLmRlZmF1bHRQcmV2ZW50ZWQ9CmUuZGVmYXVsdFByZXZlbnRlZHx8ITEsZi5wcmV2ZW50RGVmYXVsdD1CbyxmLl9wcm9wYWdhdGlvblN0b3BwZWQ9ZS5fcHJvcGFnYXRpb25TdG9wcGVkfHwhMSxmLnN0b3BQcm9wYWdhdGlvbj1DbyxmLl9pbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQ9ZS5faW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkfHwhMSxmLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbj1Ebyk7cmV0dXJuIGZ9LHpvPWZ1bmN0aW9uKGEsYil7cmV0dXJuKGE9YS5fbHQpJiYhXy52YyhiLGEpP2E6Yn0sbG89ZnVuY3Rpb24oYSl7dmFyIGI9KDAsXy50KShhLktCLGEpLGM9cmQ7UmQoZnVuY3Rpb24oZCl7Yz1kfSk7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGMoYil9fSxybz1mdW5jdGlvbihhKXthPWEudGltZVN0YW1wO3ZhciBiPV8uaGQoKTtyZXR1cm4gYT49YiszMTUzNkU2P2EvMUUzOmE+PWItMzE1MzZFNiYmYTxiKzMxNTM2RTY/YTpaYygid2luZG93LnBlcmZvcm1hbmNlLnRpbWluZy5uYXZpZ2F0aW9uU3RhcnQiKT8KYSt3aW5kb3cucGVyZm9ybWFuY2UudGltaW5nLm5hdmlnYXRpb25TdGFydDpudWxsfSxCbz1mdW5jdGlvbigpe3RoaXMuZGVmYXVsdFByZXZlbnRlZD0hMDt2YXIgYT10aGlzLl9vcmlnaW5hbEV2ZW50O2EmJmEucHJldmVudERlZmF1bHQoKX0sQ289ZnVuY3Rpb24oKXt0aGlzLl9wcm9wYWdhdGlvblN0b3BwZWQ9ITA7dmFyIGE9dGhpcy5fb3JpZ2luYWxFdmVudDthJiZhLnN0b3BQcm9wYWdhdGlvbigpfSxEbz1mdW5jdGlvbigpe3RoaXMuX2ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZD0hMDt2YXIgYT10aGlzLl9vcmlnaW5hbEV2ZW50O2EmJmEuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCl9Owp2YXIgRW8sRm8sR28sSW87RW89ZnVuY3Rpb24oKXt9O0ZvPXt9O0dvPXt9O18udWM9ZnVuY3Rpb24oYSl7Xy5xZShhLGZ1bmN0aW9uKGIsYyl7Rm9bY109Yn0pfTtfLkhvPWZ1bmN0aW9uKGEpe18ucWUoYSxmdW5jdGlvbihiLGMpe0ZvW2NdPWI7R29bY109ITB9KX07Xy55Yz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W10sZT1fLnNlKGIsZnVuY3Rpb24oZyxrKXtyZXR1cm4gSW8oYSxiW2tdLGQsRm9ba10sayl9KSxmPV8ua28oZCk7Xy5uaChmLGZ1bmN0aW9uKGcpe3ZhciBrPV8uc2UoZSxmdW5jdGlvbihsKXt2YXIgbT1uZXcgRW87Xy5xZShsLGZ1bmN0aW9uKHEsdSl7bVt1XT1nW3FdfSk7cmV0dXJuIG19KTtjJiYoay5zdGF0ZT1jKTtyZXR1cm4ga30pO18ub2goZixmdW5jdGlvbihnKXt0aHJvdyBnO30pO3JldHVybiBmfTsKSW89ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj17fSxnO0dvW2VdP2c9ZChhLGIpOmc9Xy5zZShiLGZ1bmN0aW9uKGspe3JldHVybiBkKGEsayxiKX0pO18ucWUoZyxmdW5jdGlvbihrLGwpe2sgaW5zdGFuY2VvZiBfLk1nJiYoaz12aChrKSk7dmFyIG09Yy5sZW5ndGg7Yy5wdXNoKGspO2ZbbF09bX0pO3JldHVybiBmfTsKXy5Ibyh7UGE6ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9Xy5DKE9iamVjdC5rZXlzKGIpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSl7ZD1kLnZhbHVlO3ZhciBlPWJbZF07YltkXT1aYShlKXx8ZX1jPV8udGUoYik7aWYoMD09Yy5sZW5ndGgpcmV0dXJue307YT1hLlpiKCk7dHJ5e3ZhciBmPV8ub2woYSxjKX1jYXRjaChrKXt2YXIgZz1fLndoKGspO3JldHVybiBfLnNlKGIsZnVuY3Rpb24oKXtyZXR1cm4gZ30pfXJldHVybiBfLnNlKGIsZnVuY3Rpb24oayl7cmV0dXJuIGZba119KX0scHJlbG9hZDpmdW5jdGlvbihhLGIpe2E9Xy50ZShiKS5maWx0ZXIoZnVuY3Rpb24oZCl7cmV0dXJuIGQgaW5zdGFuY2VvZiBfLlhhfSk7dmFyIGM9Xy5xbi5hYigpLmcoYSk7cmV0dXJuIF8uc2UoYixmdW5jdGlvbigpe3JldHVybiBjfSl9fSk7Cl8udWMoe2NvbnRleHQ6ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5nZXRDb250ZXh0KGIpfSxoYzpmdW5jdGlvbihhLGIpe2E9Yi5jYWxsKGEpO3JldHVybiBBcnJheS5pc0FycmF5KGEpP18ua28oYSk6YX0sa2w6ZnVuY3Rpb24oYSxiKXtyZXR1cm4gbmV3IF8uTWcoZnVuY3Rpb24oYyl7ImZ1bmN0aW9uIj09PXR5cGVvZiBiJiZjKGIuY2FsbChhLGEpKTtjKGIpfSl9fSk7Cl8uSm89Xy5QKCJ3OWhEdiIsW18uYmxdKTtFbihfLkpvLCJVZ0F0WGUiKTsKXy5Lbz1fLkRuKCJ4aXFFc2UiLCJFTHBkSmUiKTsKXy5Mbz1fLkRuKCJVZ0F0WGUiLCJMM0xyc2QiKTsKdmFyIHRiPWZ1bmN0aW9uKGEpeygwLF8uSCkodGhpcyxhLDAsLTEsbnVsbCxudWxsKX07Xy5GKHRiLF8ueSk7CnZhciBObztfLk1vPVtxYix6YixzYl07Tm89ZnVuY3Rpb24oYSxiKXtfLnAoXy5NbyxmdW5jdGlvbihjKXthPWMoYixhKX0pO3JldHVybiBhfTsKXy5Pbz1fLlAoIklaVDYzIik7CnZhciBRbz1mdW5jdGlvbihhLGIpe2lmKDA9PT1fLnRlKGIpLmxlbmd0aClyZXR1cm4gbnVsbDt2YXIgYz0hMTtfLnFlKGIsZnVuY3Rpb24oZCl7UG8oZCkmJihjPSEwKX0pO3JldHVybiBjP18ueWMoYSx7Vzp7YnU6Xy5Pb319KS50aGVuKGZ1bmN0aW9uKGQpe3JldHVybiBfLnJlKGIsZnVuY3Rpb24oZSl7ZT1QbyhlKTtyZXR1cm4hZXx8MD09PWUubGVuZ3RofHxfLnlkKGUsZnVuY3Rpb24oZil7cmV0dXJuIGQuVy5idS5pc0VuYWJsZWQoZil9KX0pfSk6Yn0sUG89ZnVuY3Rpb24oYSl7dmFyIGI9YS5PaTtfLmtiKGEpJiYoYj1hLm1ldGFkYXRhP2EubWV0YWRhdGEuT2k6dm9pZCAwKTtyZXR1cm4gYn07CnZhciBSbz1mdW5jdGlvbihhLGIpe18ub24oXy5Mbyk7Xy5Mby5pLnB1c2goYSk7cmV0dXJuIGZ1bmN0aW9uKGMsZCl7Xy5xZShkLGZ1bmN0aW9uKGcsayl7ImZ1bmN0aW9uIj09PXR5cGVvZiBnLm1ha2VSZXF1ZXN0JiYoZz1fLnllKGcpLGRba109ZyxnLnJlcXVlc3Q9Zy5tYWtlUmVxdWVzdC5jYWxsKGMpKTtiJiYhZy5qZCYmKGcuamQ9Yil9KTt2YXIgZSxmPV8ubmgoXy55YyhjLHtXOntoQTphfX0pLGZ1bmN0aW9uKGcpe2U9Zy5XLmhBO3JldHVybiBRbyhjLGQpfSkudGhlbihmdW5jdGlvbihnKXtyZXR1cm4gZz9lLmV4ZWN1dGUoZyk6Xy5vYih7fSl9KTtyZXR1cm4gXy5zZShkLGZ1bmN0aW9uKGcsayl7dmFyIGw9Zi50aGVuKGZ1bmN0aW9uKG0pe3JldHVybiBtW2tdP21ba106bnVsbH0pO3JldHVybiBObyhsLGcpfSl9fTsKXy5Tbz1fLlAoIkpOb3hpIixbXy5IayxfLkpvXSk7RW4oXy5TbywiVWdBdFhlIik7Cl8uVG89Xy5QKCJad0RrOWQiKTtFbihfLlRvLCJ4aXFFc2UiKTsKXy5Vbz1fLlAoIlJNaEJmZSIsW18uS29dKTsKdmFyIFZvPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8uc2UoYixmdW5jdGlvbihjLGQpe3ZhciBlPXt9O3JldHVybiBfLm9oKF8ubmgoXy55YyhhLHtaZDooZVtkXT1jLGUpfSksZnVuY3Rpb24oZil7cmV0dXJuIGYuWmRbZF19KSxmdW5jdGlvbigpe3JldHVybiBudWxsfSl9KX0sV289ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLnljKGEse1c6e0xlOl8uVW99fSk7cmV0dXJuIF8uc2UoYixmdW5jdGlvbihkKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgZHx8InVuZGVmaW5lZCIhPXR5cGVvZiBfLiRrJiZkIGluc3RhbmNlb2YgXy4kayl2YXIgZT1kO2Vsc2V7ZT1kLlNiO3ZhciBmPWQub0t9InVuZGVmaW5lZCIhPXR5cGVvZiBfLiRrJiZlIGluc3RhbmNlb2YgXy4kayYmKGU9ZS5nKTt2YXIgZz1fLmFsKGUpO3ZhciBrPWEuSD9hLkgoKS51KCk6YS5SZigpO2YmJmEuQnIoZyxmLCEhZC5sbCk7cmV0dXJuIGMudGhlbihmdW5jdGlvbihsKXtyZXR1cm4gbC5XLkxlLnJlc29sdmUoayxlLGQud0IsISFkLmxsKX0pfSl9LApYbz1SbyhfLlNvKSxZbz1mdW5jdGlvbigpe307Cl8uQWI9bmV3IFNldDtfLkNiPXt9O18uQmI9bmV3IFNldDsKdmFyIEZiPWZ1bmN0aW9uKCl7dmFyIGE9d2luZG93O2lmKCFhLmxvY2F0aW9uKXRyeXsoMCxfLmprKShhKX1jYXRjaChjKXt9dmFyIGI9YS5sb2NhdGlvbiYmYS5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnM7aWYodm9pZCAwIT09YilyZXR1cm4gYiYmYi5sZW5ndGg/YltiLmxlbmd0aC0xXT09YS5sb2NhdGlvbi5vcmlnaW46ITA7dHJ5e3JldHVybiB2b2lkIDAhPT1hLnRvcC5sb2NhdGlvbi5ocmVmfWNhdGNoKGMpe3JldHVybiExfX07CnZhciBHYj17fTsKdmFyIExiPWZ1bmN0aW9uKGEpe3RoaXMuaT1hO3RoaXMuaj17fTt0aGlzLmc9W119LEJsPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1IYigpO2MmJihkLm1lc3NhZ2U9Yyk7YTp7Yz1TZigpO2RbImNhbGwtc3RhY2siXT1jO2I9YiBpbnN0YW5jZW9mIEVycm9yP2I6Ynx8IiI7Zm9yKGM9MDtjPGEuZy5sZW5ndGg7YysrKWlmKCExPT09YS5nW2NdKGIsZCkpYnJlYWsgYTtjPSIiO2lmKGIpe2M9Yi5tZXNzYWdlfHwidW5rbm93biI7Zm9yKHZhciBlPTAsZj0wO2Y8Yy5sZW5ndGg7KytmKWU9MzEqZStjLmNoYXJDb2RlQXQoZik+Pj4wO2M9ZX1lPSIiO2ZvcihnIGluIGQpZT1lK2crIjoiK2RbZ10rIjoiO3ZhciBnPWMrIjo6IitlO2M9YS5qW2ddO2N8fChjPXt0aW1lOjAsY291bnQ6MH0sYS5qW2ddPWMpOzFFND5fLmhkKCktYy50aW1lPyhjLmNvdW50KyssMT09Yy5jb3VudCYmKGQ9SGIoKSxkLm1lc3NhZ2U9IlRocm90dGxpbmc6ICIrZyxhLmkuaShiLGQpKSk6KGMuY291bnQmJihkWyJkcm9wcGVkLWluc3RhbmNlcyJdPQpjLmNvdW50KSxjLnRpbWU9Xy5oZCgpLGMuY291bnQ9MCxhLmkuaShiLGQpKX19Owp2YXIgWGI9ZnVuY3Rpb24oYSl7Xy5tZC5jYWxsKHRoaXMpO3RoaXMubz1hO3RoaXMuaj0hMDt0aGlzLmc9ITF9O18uRihYYixfLm1kKTtYYi5wcm90b3R5cGUuaT1mdW5jdGlvbihhKXtyZXR1cm4gWm8odGhpcyxhKX07CnZhciAkbz1mdW5jdGlvbihhLGIpe3JldHVybihiPyJfX3dyYXBwZXJfIjoiX19wcm90ZWN0ZWRfIikrXy5DYShhKSsiX18ifSxabz1mdW5jdGlvbihhLGIpe3ZhciBjPSRvKGEsITApO2JbY118fCgoYltjXT1hcChhLGIpKVskbyhhLCExKV09Yik7cmV0dXJuIGJbY119LGFwPWZ1bmN0aW9uKGEsYil7dmFyIGM9ZnVuY3Rpb24oKXtpZihhLmlzRGlzcG9zZWQoKSlyZXR1cm4gYi5hcHBseSh0aGlzLGFyZ3VtZW50cyk7dHJ5e3JldHVybiBiLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1jYXRjaChkKXticChhLGQpfX07Y1skbyhhLCExKV09YjtyZXR1cm4gY30sYnA9ZnVuY3Rpb24oYSxiKXtpZighKGImJiJvYmplY3QiPT09dHlwZW9mIGImJiJzdHJpbmciPT09dHlwZW9mIGIubWVzc2FnZSYmMD09Yi5tZXNzYWdlLmluZGV4T2YoIkVycm9yIGluIHByb3RlY3RlZCBmdW5jdGlvbjogIil8fCJzdHJpbmciPT09dHlwZW9mIGImJjA9PWIuaW5kZXhPZigiRXJyb3IgaW4gcHJvdGVjdGVkIGZ1bmN0aW9uOiAiKSkpe2EubyhiKTsKaWYoIWEuail0aHJvdyBhLmcmJigib2JqZWN0Ij09PXR5cGVvZiBiJiZiJiYic3RyaW5nIj09PXR5cGVvZiBiLm1lc3NhZ2U/Yi5tZXNzYWdlPSJFcnJvciBpbiBwcm90ZWN0ZWQgZnVuY3Rpb246ICIrYi5tZXNzYWdlOmI9IkVycm9yIGluIHByb3RlY3RlZCBmdW5jdGlvbjogIitiKSxiO3Rocm93IG5ldyBjcChiKTt9fSxiYz1mdW5jdGlvbihhKXt2YXIgYj1ifHxfLm4ud2luZG93OyJvbnVuaGFuZGxlZHJlamVjdGlvbiJpbiBiJiYoYi5vbnVuaGFuZGxlZHJlamVjdGlvbj1mdW5jdGlvbihjKXticChhLGMmJmMucmVhc29uP2MucmVhc29uOkVycm9yKCJlYSIpKX0pfSwkYj1mdW5jdGlvbihhKXtmb3IodmFyIGI9Xy5uLndpbmRvdyxjPVsicmVxdWVzdEFuaW1hdGlvbkZyYW1lIiwibW96UmVxdWVzdEFuaW1hdGlvbkZyYW1lIiwid2Via2l0QW5pbWF0aW9uRnJhbWUiLCJtc1JlcXVlc3RBbmltYXRpb25GcmFtZSJdLGQ9MDtkPGMubGVuZ3RoO2QrKyl7dmFyIGU9Y1tkXTtjW2RdaW4gYiYmCmFjKGEsZSl9fSxhYz1mdW5jdGlvbihhLGIpe3ZhciBjPV8ubi53aW5kb3csZD1jW2JdO2NbYl09ZnVuY3Rpb24oZSxmKXsic3RyaW5nIj09PXR5cGVvZiBlJiYoZT1fLk5iKGlkLGUpKTthcmd1bWVudHNbMF09ZT1abyhhLGUpO2lmKGQuYXBwbHkpcmV0dXJuIGQuYXBwbHkodGhpcyxhcmd1bWVudHMpO3ZhciBnPWU7aWYoMjxhcmd1bWVudHMubGVuZ3RoKXt2YXIgaz1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMik7Zz1mdW5jdGlvbigpe2UuYXBwbHkodGhpcyxrKX19cmV0dXJuIGQoZyxmKX07Y1tiXVskbyhhLCExKV09ZH07WGIucHJvdG90eXBlLmhiPWZ1bmN0aW9uKCl7dmFyIGE9Xy5uLndpbmRvdzt2YXIgYj1hLnNldFRpbWVvdXQ7Yj1iWyRvKHRoaXMsITEpXXx8YjthLnNldFRpbWVvdXQ9YjtiPWEuc2V0SW50ZXJ2YWw7Yj1iWyRvKHRoaXMsITEpXXx8YjthLnNldEludGVydmFsPWI7WGIuVmIuaGIuY2FsbCh0aGlzKX07CnZhciBjcD1mdW5jdGlvbihhKXtfLmthLmNhbGwodGhpcywiRXJyb3IgaW4gcHJvdGVjdGVkIGZ1bmN0aW9uOiAiKyhhJiZhLm1lc3NhZ2U/U3RyaW5nKGEubWVzc2FnZSk6U3RyaW5nKGEpKSk7KGE9KHRoaXMuQ3Q9YSkmJmEuc3RhY2spJiYic3RyaW5nIj09PXR5cGVvZiBhJiYodGhpcy5zdGFjaz1hKX07Xy5GKGNwLF8ua2EpOwp2YXIgSmI9ZnVuY3Rpb24oYSxiLGMpe18uUWkuY2FsbCh0aGlzKTt0aGlzLnM9Ynx8bnVsbDt0aGlzLmo9e307dGhpcy5VPWRwO3RoaXMudj1hO2N8fCh0aGlzLmc9bnVsbCxfLlZiJiYhXy5XYigiMTAiKT9PYigoMCxfLnQpKHRoaXMuaSx0aGlzKSwhMSxudWxsKToodGhpcy5nPW5ldyBYYigoMCxfLnQpKHRoaXMuaSx0aGlzKSksYWModGhpcy5nLCJzZXRUaW1lb3V0IiksYWModGhpcy5nLCJzZXRJbnRlcnZhbCIpLCRiKHRoaXMuZyksY2ModGhpcy5nKSkpfTtfLkYoSmIsXy5RaSk7dmFyIGVwPWZ1bmN0aW9uKGEsYil7Xy5waS5jYWxsKHRoaXMsImMiKTt0aGlzLmVycm9yPWE7dGhpcy5jb250ZXh0PWJ9O18uRihlcCxfLnBpKTt2YXIgZHA9ZnVuY3Rpb24oYSxiLGMsZCl7Xy5obShhLG51bGwsYixjLGQpfTsKSmIucHJvdG90eXBlLmk9ZnVuY3Rpb24oYSxiKXthPWEuZXJyb3J8fGE7Yj1iP18ueWUoYik6e307YSBpbnN0YW5jZW9mIEVycm9yJiZfLkFlKGIsYS5fX2Nsb3N1cmVfX2Vycm9yX19jb250ZXh0X185ODQzODJ8fHt9KTt2YXIgYz1PZihhKTtpZih0aGlzLnMpdHJ5e3RoaXMucyhjLGIpfWNhdGNoKGwpe312YXIgZD1jLm1lc3NhZ2Uuc3Vic3RyaW5nKDAsMTkwMCk7aWYoIShhIGluc3RhbmNlb2YgXy5rYSl8fGEuZyl7YT1jLnN0YWNrO3RyeXt2YXIgZT1fLlhsKHRoaXMudiwic2NyaXB0IixjLmZpbGVOYW1lLCJlcnJvciIsZCwibGluZSIsYy5saW5lTnVtYmVyKTtpZighXy53ZSh0aGlzLmopKXtkPWU7dmFyIGY9V2wodGhpcy5qKTtlPVRsKGQsZil9Zj17fTtmLnRyYWNlPWE7aWYoYilmb3IodmFyIGcgaW4gYilmWyJjb250ZXh0LiIrZ109YltnXTt2YXIgaz1XbChmKTt0aGlzLlUoZSwiUE9TVCIsayx0aGlzLlQpfWNhdGNoKGwpe319dHJ5e3RoaXMuZGlzcGF0Y2hFdmVudChuZXcgZXAoYywKYikpfWNhdGNoKGwpe319O0piLnByb3RvdHlwZS5oYj1mdW5jdGlvbigpe18uaGEodGhpcy5nKTtKYi5WYi5oYi5jYWxsKHRoaXMpfTsKdmFyIGZwPWZ1bmN0aW9uKGEsYil7Yj1ifHxfLmVnKCk7dmFyIGM9Yi5aYSgpLGQ9Yi5jcmVhdGVFbGVtZW50KCJTVFlMRSIpLGU9Xy5YYygpO2UmJmQuc2V0QXR0cmlidXRlKCJub25jZSIsZSk7ZC50eXBlPSJ0ZXh0L2NzcyI7Yi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiSEVBRCIpWzBdLmFwcGVuZENoaWxkKGQpO2Quc3R5bGVTaGVldD9kLnN0eWxlU2hlZXQuY3NzVGV4dD1hOmQuYXBwZW5kQ2hpbGQoYy5jcmVhdGVUZXh0Tm9kZShhKSk7cmV0dXJuIGR9Owp2YXIgZ3A9ZnVuY3Rpb24oYSl7dGhpcy5pPWF9O2dwLnByb3RvdHlwZS5nPWZ1bmN0aW9uKGEpe2lmKGEpe3ZhciBiPXRoaXMuaS4kO2lmKGIpaWYoYj1ocChiKSwwPT1iLmxlbmd0aClpcChhLGRvY3VtZW50KTtlbHNle2I9Xy5DKGIpO2Zvcih2YXIgYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpaXAoYSxjLnZhbHVlKX1lbHNlIGlwKGEsZG9jdW1lbnQpfX07Z3AucHJvdG90eXBlLmluaXQ9ZnVuY3Rpb24oKXt2YXIgYT10aGlzO18ua2QoIl9GX2luc3RhbGxDc3MiLGZ1bmN0aW9uKGIpe2EuZyhiKX0pfTsKdmFyIGlwPWZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5zdHlsZVNoZWV0cy5sZW5ndGgsZD1mcChhLG5ldyBfLmNnKGIpKTtkLnNldEF0dHJpYnV0ZSgiZGF0YS1sYXRlLWNzcyIsIiIpO2Iuc3R5bGVTaGVldHMubGVuZ3RoPT1jKzEmJl8ub2EoYi5zdHlsZVNoZWV0cyxmdW5jdGlvbihlKXtyZXR1cm4oZS5vd25lck5vZGV8fGUub3duaW5nRWxlbWVudCk9PWR9KX0saHA9ZnVuY3Rpb24oYSl7cmV0dXJuIF8ubGMoa2woYSksZnVuY3Rpb24oYil7cmV0dXJuIGIuan0pfTsKXy5BYz1mdW5jdGlvbihhKXthPWF8fGRvY3VtZW50LmJvZHk7dmFyIGI9ZG9jdW1lbnQuaGVhZC5xdWVyeVNlbGVjdG9yKCJzdHlsZVtkYXRhLWxhdGUtY3NzXSIpO2E9Xy5DKGEucXVlcnlTZWxlY3RvckFsbCgic3R5bGVbZGF0YS1zZXJ2ZXItY3NzLWNvbGxlY3Rpb25dLCBsaW5rW2RhdGEtc2VydmVyLWNzcy1jb2xsZWN0aW9uXSIpKTtmb3IodmFyIGM9YS5uZXh0KCk7IWMuZG9uZTtjPWEubmV4dCgpKWM9Yy52YWx1ZSxiP2RvY3VtZW50LmhlYWQuaW5zZXJ0QmVmb3JlKGMsYik6ZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChjKX07CnZhciBqcD1mdW5jdGlvbigpe3RoaXMuZz17fTt0aGlzLmk9IiI7dGhpcy5qPXt9fTsKanAucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7aWYoIjEiPT1rcCh0aGlzLCJtZCIpKXJldHVybiBscCh0aGlzKTt2YXIgYT1bXSxiPSgwLF8udCkoZnVuY3Rpb24oZCl7dm9pZCAwIT09dGhpcy5nW2RdJiZhLnB1c2goZCsiPSIrdGhpcy5nW2RdKX0sdGhpcyk7Yigic2RjaCIpO2IoImsiKTtiKCJjayIpO2IoImFtIik7YigicnQiKTsiZCJpbiB0aGlzLmd8fG1wKHRoaXMsImQiLCIwIik7YigiZCIpO2IoImV4bSIpO2IoImV4Y20iKTsodGhpcy5nLmV4Y218fHRoaXMuZy5leG0pJiZhLnB1c2goImVkPTEiKTtiKCJpbSIpO2IoImRnIik7Yigic20iKTsiMSI9PWtwKHRoaXMsImJyIikmJmIoImJyIik7YTpzd2l0Y2goa3AodGhpcywid3QiKSl7Y2FzZSAiMCI6dmFyIGM9IjAiO2JyZWFrIGE7Y2FzZSAiMiI6Yz0iMiI7YnJlYWsgYTtkZWZhdWx0OmM9IjEifSIxIiE9PWMmJmIoInd0Iik7YTpzd2l0Y2goa3AodGhpcywiY3QiKSl7Y2FzZSAiemdtcyI6Yz0iemdtcyI7YnJlYWsgYTsKZGVmYXVsdDpjPSJnbXMifSJ6Z21zIj09YyYmYigiY3QiKTtiKCJjc3N2YXJzZGVmcyIpO2IoInJzIik7YigiZWUiKTtiKCJjYiIpO2IoIm0iKTtiPVdsKHRoaXMuaik7Yz0iIjsiIiE9YiYmKGM9Ij8iK2IpO3JldHVybiB0aGlzLmkrYS5qb2luKCIvIikrY307CnZhciBscD1mdW5jdGlvbihhKXt2YXIgYj1bXSxjPSgwLF8udCkoZnVuY3Rpb24oZSl7dm9pZCAwIT09dGhpcy5nW2VdJiZiLnB1c2goZSsiPSIrdGhpcy5nW2VdKX0sYSk7YygibWQiKTtjKCJrIik7YygiY2siKTtjKCJjdCIpO2MoImFtIik7YygicnMiKTtjKCJjc3N2YXJzZGVmcyIpO2M9V2woYS5qKTt2YXIgZD0iIjsiIiE9YyYmKGQ9Ij8iK2MpO3JldHVybiBhLmkrYi5qb2luKCIvIikrZH0sa3A9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5nW2JdP2EuZ1tiXTpudWxsfSxtcD1mdW5jdGlvbihhLGIsYyl7Yz9hLmdbYl09YzpkZWxldGUgYS5nW2JdfSxucD1mdW5jdGlvbihhKXtyZXR1cm4oYT1rcChhLCJtIikpP2Euc3BsaXQoIiwiKTpbXX0sb3A9ZnVuY3Rpb24oYSxiKXttcChhLCJlZSIsT2JqZWN0LmtleXMoYikubWFwKGZ1bmN0aW9uKGMpe3JldHVybiBjKyI6IitPYmplY3Qua2V5cyhiW2NdKS5qb2luKCIsIil9KS5qb2luKCI7IikpfTsKanAucHJvdG90eXBlLmdldE1ldGFkYXRhPWZ1bmN0aW9uKCl7cmV0dXJuIjEiPT1rcCh0aGlzLCJtZCIpfTsKdmFyIHBwPWZ1bmN0aW9uKGEpe2RlbGV0ZSBhLmcubTtkZWxldGUgYS5nLmV4bTtkZWxldGUgYS5nLmVkfSxycD1mdW5jdGlvbihhKXt2YXIgYj12b2lkIDA9PT1iPyEwOmI7dmFyIGM9YS5zdGFydHNXaXRoKCJodHRwczovL3ViZXJwcm94eS1wZW4tcmVkaXJlY3QuY29ycC5nb29nbGUuY29tL3ViZXJwcm94eS9wZW4/dXJsPSIpP2Euc3Vic3RyKDY1KTphLGQ9bmV3IGpwLGU9Yy5tYXRjaChfLk1sKVs1XTtfLnFlKHFwLGZ1bmN0aW9uKGcpe3ZhciBrPWUubWF0Y2goIi8iK2crIj0oW14vXSspIik7ayYmbXAoZCxnLGtbMV0pfSk7dmFyIGY9LTEhPWEuaW5kZXhPZigiXy9zcy8iKT8iXy9zcy8iOiJfL2pzLyI7ZC5pPWEuc3Vic3RyKDAsYS5pbmRleE9mKGYpK2YubGVuZ3RoKTtpZighYilyZXR1cm4gZDsoYT1fLk9sKDYsYykpJiZfLlNsKGEsZnVuY3Rpb24oZyxrKXtkLmpbZ109a30pO3JldHVybiBkfSxlYz1mdW5jdGlvbihhKXthPV8uTmwoXy5PbCg1LGEpLCEwKTtyZXR1cm4gbnVsbCE9PQphJiYhIWEubWF0Y2goIigvXy9qcy8pfCgvXy9zcy8pIikmJiEhYS5tYXRjaCgiL2s9Iil9LHFwPXtpSToiayIsdUc6ImNrIixFSDoibSIsTkc6ImV4bSIsTEc6ImV4Y20iLEtGOiJhbSIsY0k6InJ0IixoSDoiZCIsTUc6ImVkIix2SToic3YiLEJHOiJkZW9iIixmRzoiY2IiLHNJOiJycyIsa0k6InNkY2giLGxIOiJpbSIsQ0c6ImRnIixJRzoiYnIiLGNKOiJ3dCIsT0c6ImVlIix1SToic20iLENIOiJtZCIsdkc6ImN0Iix3RzoiY3NzdmFyc2RlZnMifTsKdmFyIHNwPWZ1bmN0aW9uKGEpe2E9cnAoYS50b1N0cmluZygpKTtwcChhKTttcChhLCJkZyIsbnVsbCk7bXAoYSwiZCIsIjAiKTtyZXR1cm4gYX0sdHA9ITAsdXA9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXZvaWQgMD09PWM/e306YztjPXZvaWQgMD09PWQuSGY/dm9pZCAwOmQuSGY7dmFyIGU9dm9pZCAwPT09ZC5GZj92b2lkIDA6ZC5GZjtkPXZvaWQgMD09PWQuRGU/dm9pZCAwOmQuRGU7bXAoYSwibSIsYi5qb2luKCIsIikpO2QmJm9wKGEsZCk7YyYmKG1wKGEsImNrIixjKSxlP21wKGEsInJzIixlKTp0cCYmKHRwPSExKSk7YT1hLnRvU3RyaW5nKCk7Xy5ZZChhLCIvIikmJihhPV8uUmwoZG9jdW1lbnQubG9jYXRpb24uaHJlZikrYSk7cmV0dXJuIGdjKGEpfTsKdmFyIHdwPWZ1bmN0aW9uKGEpe3JldHVybiB2cChhKS50aGVuKGZ1bmN0aW9uKGIpe3JldHVybiBKU09OLnBhcnNlKGIucmVzcG9uc2VUZXh0KX0pfSx2cD1mdW5jdGlvbihhKXt2YXIgYj17fSxjPWIuSEY/SGwoYi5IRik6SGwoRmwpO3JldHVybiBfLnJiKG5ldyBfLk1nKGZ1bmN0aW9uKGQsZSl7dmFyIGY7dHJ5e2Mub3BlbigiR0VUIixhLCEwKX1jYXRjaChsKXtlKG5ldyB4cCgiRXJyb3Igb3BlbmluZyBYSFI6ICIrbC5tZXNzYWdlLGEsYykpfWMub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7aWYoND09Yy5yZWFkeVN0YXRlKXtfLm4uY2xlYXJUaW1lb3V0KGYpO3ZhciBsOyEobD1DbChjLnN0YXR1cykpJiYobD0wPT09Yy5zdGF0dXMpJiYobD1QbChhKSxsPSEoImh0dHAiPT1sfHwiaHR0cHMiPT1sfHwiIj09bCkpO2w/ZChjKTplKG5ldyB5cChjLnN0YXR1cyxhLGMpKX19O2Mub25lcnJvcj1mdW5jdGlvbigpe2UobmV3IHhwKCJOZXR3b3JrIGVycm9yIixhLGMpKX07aWYoYi5oZWFkZXJzKWZvcih2YXIgZyBpbiBiLmhlYWRlcnMpe3ZhciBrPQpiLmhlYWRlcnNbZ107bnVsbCE9ayYmYy5zZXRSZXF1ZXN0SGVhZGVyKGcsayl9Yi53aXRoQ3JlZGVudGlhbHMmJihjLndpdGhDcmVkZW50aWFscz1iLndpdGhDcmVkZW50aWFscyk7Yi5yZXNwb25zZVR5cGUmJihjLnJlc3BvbnNlVHlwZT1iLnJlc3BvbnNlVHlwZSk7Yi5taW1lVHlwZSYmYy5vdmVycmlkZU1pbWVUeXBlKGIubWltZVR5cGUpOzA8Yi5qRiYmKGY9Xy5uLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtjLm9ucmVhZHlzdGF0ZWNoYW5nZT1fLmFkO2MuYWJvcnQoKTtlKG5ldyB6cChhLGMpKX0sYi5qRikpO3RyeXtjLnNlbmQobnVsbCl9Y2F0Y2gobCl7Yy5vbnJlYWR5c3RhdGVjaGFuZ2U9Xy5hZCxfLm4uY2xlYXJUaW1lb3V0KGYpLGUobmV3IHhwKCJFcnJvciBzZW5kaW5nIFhIUjogIitsLm1lc3NhZ2UsYSxjKSl9fSksZnVuY3Rpb24oZCl7ZCBpbnN0YW5jZW9mIF8uWWcmJmMuYWJvcnQoKTt0aHJvdyBkO30pfSx4cD1mdW5jdGlvbihhLGIpe18ua2EuY2FsbCh0aGlzLGErIiwgdXJsPSIrCmIpO3RoaXMudXJsPWJ9O18uRih4cCxfLmthKTt4cC5wcm90b3R5cGUubmFtZT0iWGhyRXJyb3IiO3ZhciB5cD1mdW5jdGlvbihhLGIsYyl7eHAuY2FsbCh0aGlzLCJSZXF1ZXN0IEZhaWxlZCwgc3RhdHVzPSIrYSxiLGMpO3RoaXMuc3RhdHVzPWF9O18uRih5cCx4cCk7eXAucHJvdG90eXBlLm5hbWU9Ilhockh0dHBFcnJvciI7dmFyIHpwPWZ1bmN0aW9uKGEsYil7eHAuY2FsbCh0aGlzLCJSZXF1ZXN0IHRpbWVkIG91dCIsYSxiKX07Xy5GKHpwLHhwKTt6cC5wcm90b3R5cGUubmFtZT0iWGhyVGltZW91dEVycm9yIjsKdmFyIENwLEJwLEhwLEZwLEdwLERwLE5wLExwLE1wLEpwO18uZmM9ZnVuY3Rpb24oYSxiLGMsZCxlKXtkPXZvaWQgMD09PWQ/ITE6ZDtlPXZvaWQgMD09PWU/ITE6ZTt0aGlzLnY9cnAoXy5NZChhKS50b1N0cmluZygpKTt0aGlzLkdhPWI7dGhpcy5EYT1jO3RoaXMuJD1kO3RoaXMuaj17fTt0aGlzLlU9W107dGhpcy5tYT0hMDt0aGlzLk9hPShhPWtwKHRoaXMudiwiZXhjbSIpKT9hLnNwbGl0KCIsIik6W107dGhpcy5UYT1lO3RoaXMuRGw9NDA0Mzt0aGlzLkthPWRvY3VtZW50LmhlYWR8fGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDt0aGlzLlQ9dGhpcy5zPW51bGw7dGhpcy5sYj0hMDtfLkFwKHRoaXMsbnAodGhpcy52KSk7dGhpcy5IYSgpfTsKQ3A9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPV8uQyhkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic3R5bGUiKSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpQnAoYSxjLnZhbHVlKTtiPV8uQyhkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgibGluayIpKTtmb3IoYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpQnAoYSxjLnZhbHVlKX07QnA9ZnVuY3Rpb24oYSxiKXtpZihiLmhyZWZ8fGIuZ2V0QXR0cmlidXRlKCJkYXRhLWhyZWYiKSlpZihiPWIuaHJlZnx8Yi5nZXRBdHRyaWJ1dGUoImRhdGEtaHJlZiIpLGVjKGIpJiYhcnAoYikuaS5lbmRzV2l0aCgiXy9qcy8iKSl7Yj1ucChycChiKSk7Yj1fLkMoYik7Zm9yKHZhciBjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSljPWMudmFsdWUsYS5PYS5pbmNsdWRlcyhjKXx8YS5PYS5wdXNoKGMpfX07Cl8uZmMucHJvdG90eXBlLmtiPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD12b2lkIDA9PT1jP3t9OmM7Yj1kLkRlO2M9ZC4kcTt2YXIgZT1kLm5LO2Q9ZC5FRDtpZighYSl0aHJvdyBFcnJvcigiZmEiKTt0aGlzLlRhJiZDcCh0aGlzKTt0aGlzLiQmJihhPURwKHRoaXMsYSkpO3RoaXMuTGEoYSxiLGMsZSxkKX07Xy5mYy5wcm90b3R5cGUuTGE9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9dGhpcztjPXZvaWQgMD09PWM/ZnVuY3Rpb24oKXt9OmM7ZD12b2lkIDA9PT1kP2Z1bmN0aW9uKCl7fTpkO18uRXAodGhpcyxhLGZ1bmN0aW9uKGYsZyl7ZS5sb2FkKGYsZyxjLGQpfSxiKXx8YygtMSl9O18uZmMucHJvdG90eXBlLkhhPWZ1bmN0aW9uKCl7fTsKSHA9ZnVuY3Rpb24oYSxiLGMpe2lmKGEuJCl7Yz17SGY6YS5HYSxGZjphLkRhLERlOmMsaXc6RnAoYSksaWw6R3AoYSl9O3ZhciBkPXZvaWQgMD09PWM/e306YztjPXZvaWQgMD09PWQuaXc/W106ZC5pdzt2YXIgZT12b2lkIDA9PT1kLmlsP1tdOmQuaWwsZj12b2lkIDA9PT1kLkhmP3ZvaWQgMDpkLkhmLGc9dm9pZCAwPT09ZC5GZj92b2lkIDA6ZC5GZjtkPXZvaWQgMD09PWQuRGU/dm9pZCAwOmQuRGU7YT1zcChhLnYpO21wKGEsImQiLCIxIik7Yy5zb3J0KCk7bXAoYSwiZXhtIixjLmpvaW4oIiwiKSk7ZS5zb3J0KCk7bXAoYSwiZXhjbSIsZS5qb2luKCIsIikpO2I9dXAoYSxiLHtIZjpmLEZmOmcsRGU6ZH0pfWVsc2UgYz17SGY6YS5HYSxGZjphLkRhLERlOmMsaWw6R3AoYSl9LGc9dm9pZCAwPT09Yz97fTpjLGM9dm9pZCAwPT09Zy5pbD9bXTpnLmlsLGU9dm9pZCAwPT09Zy5IZj92b2lkIDA6Zy5IZixmPXZvaWQgMD09PWcuRmY/dm9pZCAwOmcuRmYsZz12b2lkIDA9PT1nLkRlP3ZvaWQgMDoKZy5EZSxhPXNwKGEudiksYy5zb3J0KCksbXAoYSwiZXhjbSIsYy5qb2luKCIsIikpLGI9dXAoYSxiLHtIZjplLEZmOmYsRGU6Z30pO3JldHVybiBifTtfLkFwPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPSExLGQ9MDtkPGIubGVuZ3RoOysrZCl7dmFyIGU9YltkXTthLmpbZV18fChhLmpbZV09ITAsYS5VLnB1c2goZSksYz0hMCl9YyYmKGEubWE9ITEpfTtfLklwPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7YzxiLmxlbmd0aDsrK2Mpe3ZhciBkPWJbY107YS5qW2RdJiYoZGVsZXRlIGEualtkXSxfLnZhKGEuVSxkKSl9fTsKXy5mYy5wcm90b3R5cGUubG9hZD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT10aGlzLGY9SnAoYSk7Xy5BcCh0aGlzLGIpO3RoaXMucz1mO3RoaXMuS2EuaW5zZXJ0QmVmb3JlKGYsdGhpcy5LYS5maXJzdENoaWxkKTtfLktwKGYsYixmdW5jdGlvbigpe2YucGFyZW50RWxlbWVudC5yZW1vdmVDaGlsZChmKTtlLnM9PWYmJihlLnM9bnVsbCk7ZCgpfSxmdW5jdGlvbihnKXtmLnBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQoZik7ZS5zPT1mJiYoZS5zPW51bGwpO18uSXAoZSxnKTtjKC0xKX0pfTsKXy5LcD1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1iLmxlbmd0aCxmPWZ1bmN0aW9uKCl7ZT0wO2Eub25sb2FkPW51bGw7YS5vbmVycm9yPW51bGw7Zz1mdW5jdGlvbigpe319LGc9ZnVuY3Rpb24oKXtmKCk7dmFyIGw9Yi5maWx0ZXIoZnVuY3Rpb24obSl7cmV0dXJuIV8uS2EoKS4kZShtKS5nfSk7MCE9PWwubGVuZ3RoP2QobCwiUmVzcG9uc2Ugd2FzIHN1Y2Nlc3NmdWwgYnV0IHdhcyBtaXNzaW5nIG1vZHVsZShzKSAiK2wrIi4iKTpjKCl9LGs9ZnVuY3Rpb24oKXtlLS07MD09ZSYmZygpfTtiLmZvckVhY2goZnVuY3Rpb24obCl7bD1fLkthKCkuJGUobCk7bC5nP2soKToobC5pLnB1c2gobmV3IFNkKGssdm9pZCAwKSksVmQobCxrKSl9KTthLm9ubG9hZD1mdW5jdGlvbigpe3JldHVybiBnKCl9O2Eub25lcnJvcj1mdW5jdGlvbigpe2YoKTtkKGIpfX07RnA9ZnVuY3Rpb24oYSl7YS5tYXx8KGEubWE9ITAsYS5VLnNvcnQoKSk7cmV0dXJuIGEuVX07CkdwPWZ1bmN0aW9uKGEpe2E9YS5PYTthLnNvcnQoKTtyZXR1cm4gYX07RHA9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYi5maWx0ZXIoZnVuY3Rpb24oYyl7cmV0dXJuIWEualtjXX0pfTsKXy5FcD1mdW5jdGlvbihhLGIsYyxkKXtpZihhLlQpcmV0dXJuIGEuVC50aGVuKGZ1bmN0aW9uKCl7dmFyIG09W10scT1PYmplY3QuYXNzaWduKHt9LGEuaik7THAoYSxiLGZ1bmN0aW9uKHUpe20ucHVzaCh1LmdldElkKCkpfSxmdW5jdGlvbih1KXtyZXR1cm4hdS5nfSxxKTtfLkVwKGEsbSxjLGQpfSksITA7Zm9yKHZhciBlPTA7ZTxiLmxlbmd0aDspe2Zvcih2YXIgZj1iLmxlbmd0aC1lLGc9MD09ZT9iOmIuc2xpY2UoZSxiLmxlbmd0aCksaz1IcChhLGcsZCksbD1fLk1kKGspLnRvU3RyaW5nKCk7bC5sZW5ndGg+YS5EbDspaWYoMTxmKWYtPU1hdGguY2VpbCgobC5sZW5ndGgtYS5EbCkvNiksZj1NYXRoLm1heChmLDEpLGc9Yi5zbGljZShlLGUrZiksaz1IcChhLGcsZCksbD1fLk1kKGspLnRvU3RyaW5nKCk7ZWxzZSByZXR1cm4gYS4kPyhhLiQ9ITEsYS5UPU1wKGEpLnRoZW4oZnVuY3Rpb24obSl7TnAoYSxtKX0pLF8uRXAoYSxiLnNsaWNlKGUpLGMsZCkpOiExO2UrPWY7YyhrLGcpfXJldHVybiEwfTsKTnA9ZnVuY3Rpb24oYSxiKXtfLkthKCkuTG4oKGJ8fHt9KS5tb2R1bGVHcmFwaCk7THAoYSxGcChhKSxmdW5jdGlvbihjKXtfLkFwKGEsW2MuZ2V0SWQoKV0pfSk7YS5UPW51bGx9O0xwPWZ1bmN0aW9uKGEsYixjLGQsZSl7ZT12b2lkIDA9PT1lP3t9OmU7dmFyIGY9Xy5LYSgpO2I9Xy5DKGIpO2Zvcih2YXIgZz1iLm5leHQoKTshZy5kb25lO2c9Yi5uZXh0KCkpe2c9Zy52YWx1ZTt2YXIgaz1mLiRlKGcpO2VbZ118fGQmJiFkKGspfHwoZVtnXT0hMCxMcChhLGsub3x8W10sYyxkLGUpLGMoaykpfX07TXA9ZnVuY3Rpb24oYSl7YT1ycChhLnYudG9TdHJpbmcoKSk7cHAoYSk7bXAoYSwiZGciLG51bGwpO21wKGEsIm1kIiwiMSIpO3JldHVybiB3cChhLnRvU3RyaW5nKCkpfTtKcD1mdW5jdGlvbihhKXt2YXIgYj1fLm5nKGRvY3VtZW50LCJTQ1JJUFQiKTtiLnNyYz1fLk1kKGEpO18uJGUoYik7Yi5hc3luYz0hMTtyZXR1cm4gYn07CnZhciBpYz1bXSxPcD1udWxsO2lmKF8uQWIuaGFzKCJzdGFydHVwIikpdGhyb3cgRXJyb3IoImphYHN0YXJ0dXAiKTtfLkFiLmFkZCgic3RhcnR1cCIpO18uQ2Iuc3RhcnR1cD1bXTsKdmFyIFBwPWZ1bmN0aW9uKGEpe3RoaXMuaT1hO3RoaXMuaj0hMH07Xy5EKFBwLGdwKTtQcC5wcm90b3R5cGUuZz1mdW5jdGlvbihhKXt0aGlzLmomJl8uQWMoZG9jdW1lbnQuYm9keSk7Z3AucHJvdG90eXBlLmcuY2FsbCh0aGlzLGEpfTt2YXIgUXA9ZnVuY3Rpb24oKXtfLm1kLmNhbGwodGhpcyk7dGhpcy5GYj1udWxsfTtfLkQoUXAsTmQpO3ZhciBScD1mdW5jdGlvbihhKXt2YXIgYj1uZXcgaWw7YS5GYj1iO3ZhciBjPV8uS2EoKTtjLkR3KCEwKTtjLkVyKGIpO2EuRmIud2E9Yzt2YXIgZD0oYT0hIWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJiYXNlLWpzIikmJiFkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmFzZS1qcyIpLmhhc0F0dHJpYnV0ZSgibm9Db2xsZWN0IikpP25ldyBQcChjKTpuZXcgZ3AoYyk7ZC5pbml0KCk7dmFyIGU9aGMoYSk7YSYmXy5rZCgic3RvcFNjYW5Gb3JDc3MiLGZ1bmN0aW9uKCl7ZC5qPSExO2UuVGE9ITE7Q3AoZSl9KX07ClFwLnByb3RvdHlwZS5pbml0aWFsaXplPWZ1bmN0aW9uKCl7UnAodGhpcyk7dmFyIGE9Xy5iaygiSW02Y21mIikuTWEoKSsiL2pzZXJyb3IiO2RjKGEpO2E9Xy5xZChfLmJrKCJjZmIyaCIpLk1hKCkpO0diLmJ1aWxkTGFiZWw9YTtpZihPcCl7YT1PcC5pO2Zvcih2YXIgYj0wO2I8aWMubGVuZ3RoO2IrKylhLnB1c2goaWNbYl0pfWE9dGhpcy5GYjtiPXdpbmRvdy5CT1Ffd2l6YmluZDt2YXIgYz13aW5kb3cuZG9jdW1lbnQ7Sm09bnVsbDt2YXIgZD1iLnRyaWdnZXI7Yj1iLmJpbmQ7Yz1uZXcgT24oYyxhKTtkPW5ldyBtbyhkLGMsYSk7YSYmKF8ucW4uYWIoKS5BdyhhKSxfLm9kKGEsYykpO2E9ZC5rdjtiKCgwLF8udCkoYS5qLGEpKTtjLmkoKTtkLnp3PSExO2E9ZC5OaDthPSgwLF8udCkoYS5pLGEpO3dpbmRvdy53aXpfcHJvZ3Jlc3M9YTt6bihfLm9uKF8uS28pLF8uVG8pO18uSG8oe2RhdGE6WG8scHQ6WG8sT2g6WW99KTtfLkhvKHthZmRhdGFfbzpYb30pO18uSG8oe1pkOldvfSk7Xy5Ibyh7bEs6Vm99KTsKYSgpO18ud2suZz1TcDtfLmJsLmc9VHA7Xy52ay5nPVVwO3RrKF8udmssW18udWssXy5ibF0pO18uSGsuZz1WcDtfLnlrLmc9V3A7Xy5Cay5nPSJXdDZ2amYiO3RrKEZrLFtfLnlrXSk7Xy5Day5nPVhwO18udWsuZz1ZcDt0ayhfLnVrLFtfLkNrLF8uRGtdKTtfLnhrLmc9WnA7Xy56ay5nPSJNcEp3WmMiO3RrKF8uemssW18ueWssXy5Ba10pO18uQWsuZz0kcDtfLkRrLmc9YXE7YnEodGhpcyk7d2luZG93LnRvcD09d2luZG93JiZ3aW5kb3cuY29uc29sZSYmKHNldFRpbWVvdXQoY29uc29sZS5sb2cuYmluZChjb25zb2xlLCIlYyVzIiwiY29sb3I6IHJlZDsgYmFja2dyb3VuZDogeWVsbG93OyBmb250LXNpemU6IDI0cHg7IiwiV0FSTklORyEiKSksc2V0VGltZW91dChjb25zb2xlLmxvZy5iaW5kKGNvbnNvbGUsIiVjJXMiLCJmb250LXNpemU6IDE4cHg7IiwiVXNpbmcgdGhpcyBjb25zb2xlIG1heSBhbGxvdyBhdHRhY2tlcnMgdG8gaW1wZXJzb25hdGUgeW91IGFuZCBzdGVhbCB5b3VyIGluZm9ybWF0aW9uIHVzaW5nIGFuIGF0dGFjayBjYWxsZWQgU2VsZi1YU1MuXG5EbyBub3QgZW50ZXIgb3IgcGFzdGUgY29kZSB0aGF0IHlvdSBkbyBub3QgdW5kZXJzdGFuZC4iKSkpfTsKdmFyIGJxPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoKXt2YXIgZD1bIld0NnZqZiIsY3EsZHEsZXFdO09wfHxfLnlhKGQsbWMoKSk7Xy5GaChfLkthKCksZCk7T3B8fF8ua2MoYyl9dmFyIGM9YS5GYjtfLkZpKHdpbmRvdywibG9hZCIsZnVuY3Rpb24oKXt3aW5kb3cuY2NUaWNrJiZ3aW5kb3cuY2NUaWNrKCJvbCIpO3dpbmRvdy5zZXRUaW1lb3V0KGIsMCl9KX0sY3E9Il9sYXRlbmN5IixWcD0iVWxtbXJkIixUcD0iTndIMEgiLFVwPSJneWNoZyIsV3A9Im43M3F3ZiIsU3A9InhVZGlwZiIsWHA9ImJ5ZlRPYiIsWXA9IkxFaWtaZSIsWnA9InJKbUpyYyIsJHA9IlVVSnFWZSIsZHE9IkZDcGJxYiIsZXE9IldoSk5rIixhcT0ibHNqVm1jIjtfLkthKCkuSHMoUXApO3dpbmRvdy5CT1FfbG9hZGVkSW5pdGlhbEpTPSEwOwpfLmZxPV8uUCgiUHJQWVJkIixbXy5Pb10pOwpfLmdxPV8uUCgid3M5VGxjIik7RW4oXy5ncSwiTnBENGVjIik7Cl8uaHE9Xy5EbigiTnBENGVjIiwiSmo3c0xlIixfLmdxKTsKXy5pcT1fLlAoIktVTTdaIixbXy5ocV0pO0VuKF8uaXEsIllMUVNkIik7Cl8uanE9Xy5EbigiWUxRU2QiLCJmSjUwOGQiLF8uaXEpOwpfLmtxPV8uUCgieFF0WmIiLFtfLmhxLF8uanFdKTtFbihfLmtxLCJZODRSSCIpO0VuKF8ua3EsInJIanBYZCIpOwpfLmxxPV8uRG4oInJIanBYZCIsInQ5S3luYiIsXy5rcSk7Cl8ubXE9Xy5QKCJzaUtuUWQiKTtFbihfLm1xLCJPOGsxQ2QiKTsKXy5ucT1fLkRuKCJPOGsxQ2QiLCJvQWVVMGMiLF8ubXEpOwpfLm9xPV8uUCgidmZ1TkpmIik7RW4oXy5vcSwiU0YzZ3NkIik7Cl8ucHE9Xy5EbigiU0YzZ3NkIiwiRUw5ZzkiLF8ub3EpOwpfLnFxPV8uUCgiaGM2VWJkIixbXy5mcSxfLnBxXSk7RW4oXy5xcSwieHMxR3kiKTsKXy5ycT1fLlAoIlNwc2ZTYiIsW18uZnEsXy5xcSxfLnprLF8ueWtdKTtFbihfLnJxLCJvMDJKaWUiKTsKXy5zcT1fLkRuKCJvMDJKaWUiLCJseFYyVWMiLF8ucnEpOwpfLnRxPV8uRG4oInBCNlpxZCIsIlBGYlo2Iik7Cl8udXE9Xy5QKCJ6Yk1MM2MiLFtfLnRxLF8uc3EsXy5scSxfLm5xXSk7RW4oXy51cSwiYnFOSlciKTsKXy52cT1fLlAoIk5UTVphYyIpO0VuKF8udnEsIlk5YXRLZiIpOwpfLndxPV8uRG4oIlk5YXRLZiIsIkdtRXlDYiIsXy52cSk7Cl8ueHE9Xy5QKCJzT1hGaiIpO0VuKF8ueHEsIkxkVVYxYiIpOwpfLnlxPV8uRG4oIkxkVVYxYiIsImVvNGQxYiIsXy54cSk7Cl8uenE9Xy5QKCJxMHhUaWYiLFtfLndxLF8uZnEsXy55cV0pOwpfLkFxPV8uRG4oInVpTmtlZSIsIk1LTGhHYyIsXy51cSwiQnd1ZWgiKTsKXy5CcT1fLlAoIkhUOFhEZSIpO0VuKF8uQnEsInVpTmtlZSIpOwpfLkNxPV8uUCgiU00xbG1kIixbXy5scV0pO0VuKF8uQ3EsInVpTmtlZSIpOwpfLkRxPV8uUCgiUjlZSEpjIixbXy5ocV0pO0VuKF8uRHEsIlk4NFJIIik7RW4oXy5EcSwickhqcFhkIik7Cl8uRXE9Xy5QKCJVYXM5SGQiLFtfLnVxXSk7Cl8uRnE9Xy5QKCJQVmxRT2QiKTtFbihfLkZxLCJDQmxSeGYiKTsKXy5HcT1fLkRuKCJDQmxSeGYiLCJhYXlZS2QiLF8uRnEpOwpfLkhxPV8uUCgiWFZNTnZkIixbXy5ocV0pO0VuKF8uSHEsImRvS3M0YyIpOwpfLklxPV8uRG4oImRvS3M0YyIsImF2NTF0ZSIsXy5IcSk7Cl8uSnE9Xy5QKCJibHdqVmMiKTtFbihfLkpxLCJITG8zRWYiKTsKXy5LcT1fLlAoIlQ5Unp6ZCIsW18uSnFdKTtFbihfLktxLCJiOUFDamQiKTsKXy5McT1fLlAoIkNPUWJtZiIpO0VuKF8uTHEsIng2MGZpZSIpOwpfLk1xPV8uRG4oIng2MGZpZSIsInQyWEhRZSIsXy5McSk7Cl8uTnE9Xy5EbigiaVRzeWFjIiwicmhmUTVjIik7Cl8uT3E9Xy5EbigiSExvM0VmIiwiaGN6MjBiIik7Cl8uUHE9Xy5QKCJibTUxdGYiLFtfLk1xLF8uT3EsXy5OcV0pO0VuKF8uUHEsIlRVem9jZiIpOwpfLlFxPV8uUCgiWmZBb3oiLFtfLnZrLF8uSnFdKTtFbihfLlFxLCJpVHN5YWMiKTsKXy5ScT1fLlAoIk9tZ2FJIixbXy5KcV0pO0VuKF8uUnEsIlRVem9jZiIpOwpfLlNxPV8uUCgiRnluYXdiIixbXy51a10pOwpfLlRxPV8uUCgiVTBhUGdkIik7Cl8uVXE9Xy5QKCJLRzJlWGUiLFtfLk5xLF8uVHFdKTtFbihfLlVxLCJ0ZlROOGMiKTtFbihfLlVxLCJSUExoWGQiKTsKXy5WcT1fLkRuKCJ0ZlROOGMiLCJiYW9XSWMiLF8uVXEpOwpfLldxPV8uUCgieWxsWWFlIixbXy5KcSxfLlZxXSk7Cl8uWHE9Xy5QKCJmS1VWM2UiKTtFbihfLlhxLCJUVXpvY2YiKTsKXy5ZcT1fLlAoImF1ckZpYyIpO0VuKF8uWXEsIlRVem9jZiIpOwpfLlpxPV8uUCgiT1FFY0giKTtFbihfLlpxLCJUVXpvY2YiKTsKXy4kcT1fLlAoInJFNk1nZCIsW18uaHEsXy5KcV0pO0VuKF8uJHEsIlRVem9jZiIpOwpfLmFyPV8uUCgiUFFhWUFmIixbXy51ayxfLkpxLF8uUnEsXy5YcSxfLllxLF8uJHEsXy5NcV0pO0VuKF8uYXIsImI5QUNqZCIpOwpfLmJyPV8uUCgiRzVzQmxkIixbXy5LcSxfLmFyLF8uSnFdKTtFbihfLmJyLCJiOUFDamQiKTsKXy5jcj1fLlAoImxQS1N3ZSIsW18uYXIsXy5KcSxfLlRxXSk7RW4oXy5jciwiaVRzeWFjIik7Cl8uZHI9Xy5QKCJ5RFZWa2IiLFtfLlFxLF8uY3IsXy5KcV0pO0VuKF8uZHIsImlUc3lhYyIpOwpfLmVyPV8uUCgiSnJCRlFiIixbXy51a10pO0VuKF8uZXIsImVBS3pVYiIpOwpfLmZyPV8uUCgidmx4aUpmIixbXy5KcSxfLlZxXSk7Cl8uZ3I9Xy5EbigiSER2UmRlIiwid2Rtc1FjIik7Cl8uaHI9Xy5QKCJBN2ZDVSIsW18uZ3IsXy5PcSxfLkpvXSk7RW4oXy5ociwiVWdBdFhlIik7Cl8uaXI9Xy5QKCJWd0R6RmUiLFtfLlZxLF8uT3EsXy5UcV0pO0VuKF8uaXIsIkhEdlJkZSIpOwpfLmpyPV8uUCgiV2hKTmsiLFtfLmhxXSk7Cl8ua3I9Xy5QKCJpNWR4VWQiLFtdKTsKXy5scj1fLlAoIkVGOHBlIixbXy5rcixfLnprXSk7RW4oXy5sciwiZTEzcFBiIik7Cl8ubXI9Xy5QKCJXZUdHMWUiLFtfLmxyXSk7Cl8ubnI9Xy5QKCJtOW9WIixbXSk7CnZhciBvcj1mdW5jdGlvbihhLGIpe2I9bmV3IF8uWGEoYSxhLGIpO3JldHVybiBBbihhLGIpfTsKdmFyIHByPW9yKCJSQW5uVWQiLFtfLm5yXSk7Cl8ucXI9Xy5QKCJldEJQWWIiLFtfLmtyLHByXSk7RW4oXy5xciwiZTEzcFBiIik7Cl8ucnI9Xy5QKCJTalh5Y2QiLFtfLnFyXSk7Cl8uc3I9Xy5QKCJsd2Rka2YiLFtfLnVrLF8uaHFdKTsKXy51cj1fLlAoIkVGUTc4YyIsW18udWssXy5zcl0pOwpfLnZyPV8uUCgiUDhlYXFjIixbXy56ayxfLnlrXSk7CnZhciB3cj1vcigidXU3VU9lIixbXy5rcixwcl0pO0VuKHdyLCJlMTNwUGIiKTsKXy54cj1fLlAoInNvSHhmIixbd3JdKTsKXy55cj1fLlAoIm5LdUZwYiIsW3dyXSk7Cl8uenI9Xy5QKCJ4emJSaiIsW3dyXSk7Cl8uQXI9Xy5QKCJlMmpub2UiLFtfLnZyLHByXSk7Cl8uQnI9Xy5QKCJIbUVtMCIsW10pOwpfLkNyPV8uUCgiTDFBQWtiIixbXy5ocV0pOwpfLkRyPV8uUCgiTzZ5OGVkIixbXy55a10pOwpfLkVyPV8uUCgiYVczcFkiLFtfLkNyXSk7Cl8uRnI9Xy5QKCJ2MlA4Y2MiLFtfLnlrLF8uRXJdKTsKdmFyIEdyPW9yKCJBNFVUQ2IiKTsKXy5Icj1fLlAoIkZiYmFrZSIsW0dyXSk7CnZhciBJcj1vcigiaTVIOU4iLFtdKTsKXy5Kcj1fLlAoIlBIVUl5YiIsW18ua3IsSXJdKTtFbihfLkpyLCJlMTNwUGIiKTsKXy5Lcj1fLlAoIlNVOVJzZiIsW18ua3IscHJdKTtFbihfLktyLCJlMTNwUGIiKTsKXy5Mcj1fLlAoIndnMVA2YiIsW18ua3JdKTsKXy5Ncj1fLlAoInFORzBGYyIsW18uRXJdKTsKXy5Ocj1fLlAoInl3T1I1YyIsW18uTXJdKTsKXy5Pcj1fLlAoInlSZ3daZSIsW18ua3IscHJdKTtFbihfLk9yLCJlMTNwUGIiKTsKXy5Qcj1fLlAoIlRwajdQYiIsW10pOwpfLlFyPV8uUCgiZ05Zc1RjIixbXSk7Cl8uUnI9Xy5QKCJiVGk4d2MiLFtdKTsKXy5Tcj1fLlAoIkZvN2x1YiIsW10pOwpfLlRyPV8uUCgiZU0xQzdkIixbXSk7Cl8uVXI9Xy5QKCJ1OGZTQmYiLFtdKTsKXy5Wcj1fLlAoIlNkY3dIYiIsW18uSHFdKTtFbihfLlZyLCJDQmxSeGYiKTtFbihfLlZyLCJkb0tzNGMiKTsKXy5Xcj1fLlAoIkJWZ3F1ZiIsW18uR3EsXy51cV0pOwpfLlhyPV8uUCgiVjNkRE9iIik7Cl8uWXI9Xy5QKCJwaklDRGUiLFtfLkVxLF8udmssXy5MbyxfLlRvLF8uWHIsXy5VbyxfLk9vLF8uc3IsXy5WcixfLkVyLF8uV3IsXy5ocV0pOwpfLlpyPV8uUCgiTzFHanplIik7RW4oXy5aciwiTzhrMUNkIik7Cl8uJHI9Xy5QKCJtSTNMRmIiKTsKXy5hcz1fLlAoImxhekc3YiIsW18uJHJdKTtFbihfLmFzLCJxQ1NZV2UiKTsKXy5icz1fLkRuKCJxQ1NZV2UiLCJUcllyMWQiLF8uYXMpOwpfLmNzPV8uUCgibWRSN3EiLFtfLnlrLF8uJHIsXy5ic10pOwpfLmRzPV8uUCgia2pLZFhlIixbXy56ayxfLnlrLF8uY3MsXy4kcl0pOwpfLmVzPV8uUCgiTUk2azdjIixbXy5jc10pOwpfLmZzPV8uUCgiRUFvU3RkIixbXy55ayxfLmJzXSk7Cl8uZ3M9Xy5QKCJYcXZPRGQiLFtfLiRyXSk7Cl8uaHM9Xy5QKCJHa1JpS2IiKTtFbihfLmhzLCJpV1AxWWIiKTsKXy5pcz1fLkRuKCJpV1AxWWIiLCJISjl2Z2MiLF8uaHMpOwpfLmpzPV8uUCgiZHVGUUZjIixbXy56ayxfLmZxLF8uaHFdKTtFbihfLmpzLCJpV1AxWWIiKTsKXy5rcz1fLlAoIkdJTFVaZSIpOwpfLmxzPV8uUCgiTXE5bjBjIixbXy55a10pOwpfLm1zPV8uUCgiSmRiejZlIik7Cl8ubnM9Xy5QKCJweUZXd2UiLFtfLmxzXSk7Cl8ub3M9Xy5QKCJ5RFh1cCIsW18uemtdKTsKXy5wcz1fLlAoInBBM1ZOYiIsW18ub3NdKTsKXy5xcz1fLlAoInpxS08xYiIsW18uemssXy5wc10pOwpfLnJzPV8uUCgicHhxM3giLFtfLnprXSk7Cl8uc3M9Xy5QKCJlNXFGTGMiKTsKXy50cz1fLlAoIk1kVXpVZSIsW18uRHIsXy5WcixfLmZxLF8uRXIsXy5zcyxfLmlzLF8uaHFdKTtFbihfLnRzLCJwQjZacWQiKTsKXy56Yz1fLlAoInMzOVM0IixbXy56ayxfLkFrXSk7RW4oXy56YywiWTlhdEtmIik7Cl8udXM9Xy5QKCJwdzcwR2MiLFtfLnpjXSk7RW4oXy51cywiR21FeUNiIik7Cl8udnM9Xy5QKCJRSWhGciIsW18uZnEsXy51c10pO0VuKF8udnMsIlNGM2dzZCIpOwpfLndzPV8uUCgiS2hNS2xiIixbXy55a10pOwp2YXIgeHM9b3IoIndHTTdKYyIpOwpfLnlzPV8uUCgiUUlnYmlmIixbeHNdKTsKXy56cz1fLlAoIlZYZGZ4ZCIsW0dyXSk7Cl8uQXM9Xy5QKCJNOU9RbmYiLFtfLm9zXSk7Cl8uQnM9Xy5QKCJhS3gyVmUiLFtfLnpzXSk7Cl8uQ3M9Xy5QKCJFR05KRmYiLFtfLnlrLF8uemssXy5Fcl0pOwpfLkRzPV8uUCgiaVN2ZzZlIixbR3IsXy5Dc10pOwpfLkVzPV8uUCgieDd6NHRjIixbXy5Ec10pOwpfLkZzPV8uUCgidVkzTnZkIixbXy5Dc10pO0VuKF8uRnMsIlhkN0VKZSIpOwpfLkdzPV8uUCgiWXdIR1RkIixbR3JdKTtFbihfLkdzLCJFOUM3V2MiKTsKXy5Icz1fLlAoImZpR2RjYiIsW18uRnNdKTsKXy5Jcz1fLlAoImZnajhSYiIsW18ueWssXy56ayxfLkVyXSk7Cl8uSnM9Xy5QKCJ4aGk0a2UiLFtfLnprLF8uSXNdKTsKXy5Lcz1fLlAoIk41THFwYyIsW18uRXIsXy5Ycl0pOwpfLkxzPV8uUCgiblJUNktlIik7Cl8uTXM9Xy5QKCJ4M2pBZWYiLFtfLklzXSk7Cl8uTnM9Xy5QKCJVcXp2TmIiLFtfLnlrXSk7Cl8uT3M9Xy5QKCJteHpIQ2MiKTsKXy5Qcz1fLlAoInY5TEZFIixbXy56ayxfLk9zLF8uWHJdKTsKXy5Rcz1fLlAoImxxdEpGYiIpOwpfLlJzPV8uUCgiSk9rbTFlIik7Cl8uU3M9Xy5QKCJYMGl0S2MiLFtfLnlrLF8uemssXy51cSxfLlJzLF8uUXNdKTsKXy5Ucz1fLlAoInMyOU1TIixbcHIsXy56ayxfLlJzLF8ua3JdKTtFbihfLlRzLCJlMTNwUGIiKTsKXy5Vcz1fLlAoInZSNkk5YyIsW3ByLF8ua3JdKTtFbihfLlVzLCJlMTNwUGIiKTsKXy5Wcz1fLlAoInRLSEZ4ZiIsW18ua3IscHJdKTtFbihfLlZzLCJlMTNwUGIiKTsKdmFyIFdzPW9yKCJWQmUzVGIiKTsKXy5Ycz1fLlAoImpLQXZxZCIsW1dzLF8ua3JdKTtFbihfLlhzLCJlMTNwUGIiKTsKXy5Zcz1fLlAoIkZxa3BjYiIsW18ua3IscHJdKTtFbihfLllzLCJlMTNwUGIiKTsKXy5acz1fLlAoImxjMVRGZiIsW18ua3IscHJdKTtFbihfLlpzLCJlMTNwUGIiKTsKXy4kcz1fLlAoIklpQzV5ZCIsW10pOwpfLmF0PV8uUCgiaWpaa2lmIixbXy4kc10pOwpfLmJ0PV8uUCgiaHhWeUFiIixbXy5DcixfLnVxXSk7Cl8uY3Q9Xy5QKCJDUDNvaCIsW18uSHFdKTsKXy5kdD1fLlAoIlQ4YTBQIixbXy5ocV0pOwpfLmV0PV8uUCgic3RqOThlIixbXy5kdCxfLmhxXSk7Cl8uZnQ9Xy5QKCJGNzcwUmMiLFtfLmhxXSk7Cl8uZ3Q9Xy5QKCJSWEJYYWYiLFtfLnVrXSk7Cl8uaHQ9Xy5QKCJOZWd2M2MiLFtfLmd0LF8uZHQsXy5ocV0pOwpfLml0PV8uUCgicUdGSEpkIixbXy5mdCxfLmR0LF8uZXQsXy5odCxfLmhxXSk7Cl8uanQ9Xy5QKCJhOU5DRiIpOwpfLmt0PV8uUCgiV085ZWUiKTsKXy5sdD1fLlAoIlZIUmpFIixbXy5qdCxfLnprLF8uQ3IsXy5ldCxfLmt0LF8uaHQsXy5kdCxfLkhxXSk7Cl8ubXQ9Xy5QKCJoWjlCdCIsW18udXFdKTsKXy5udD1fLlAoIlh2QmtYZCIsW18uenFdKTsKXy5vdD1fLlAoIksxVllvZSIsW18uZnQsXy5ldCxfLml0LF8uaHQsXy5kdCxfLkhxLF8udXFdKTsKXy5wdD1fLlAoIlVBZk1TYyIsW10pOwpfLnF0PV8uUCgiUHM0a2xjIixbXy56cV0pOwpfLnJ0PV8uUCgiQlBPa2IiLFt4c10pOwpfLnN0PV8uUCgiVU11NTJiIixbXy56a10pOwpfLnR0PV8uUCgiczBCc0ciLFtfLmZ0LF8uZXQsXy5kdCxfLkhxXSk7Cl8udXQ9Xy5QKCJPendMWWIiLFtfLnpxXSk7Cl8udnQ9Xy5QKCJpOVBNMiIsW18uaHQsXy5IcV0pOwpfLnd0PV8uUCgiV3lGVTFiIixbXy56cV0pOwpfLnh0PV8uUCgiZmt1UTMiLFtdKTsKXy55dD1fLlAoIkRUdEQ0IixbXy56cV0pOwpfLnp0PV8uUCgiSkhUYlNjIixbXy56cV0pOwpfLkF0PV8uUCgiak1iMlZiIik7Cl8uQnQ9Xy5EbigiZUFLelViIiwidkZLbjZjIik7Cl8uQ3Q9Xy5EbigiUlBMaFhkIiwiR2NWY3lmIix2b2lkIDAsImNHQWlGYiIpOwp2YXIgRHQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLnljKGEse1c6e2RGOl8uZnJ9fSk7cmV0dXJuIF8uc2UoYixmdW5jdGlvbihkKXtyZXR1cm4gYy50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLlcuZEYuaShkKX0pfSl9OwpfLkYoXy5uYyxfLm1kKTtfLm5jLnByb3RvdHlwZS5nPV8uY2EoMjYpO18ubmMucHJvdG90eXBlLmk9Xy5jYSgyOSk7Xy5uYy5wcm90b3R5cGUuaj1fLmNhKDMyKTtfLm5jLnByb3RvdHlwZS5zPV8uY2EoMzMpOwovKgoKTWF0aC51dWlkLmpzICh2MS40KQpodHRwOi8vd3d3LmJyb29mYS5jb20KbWFpbHRvOnJvYmVydEBicm9vZmEuY29tCkNvcHlyaWdodCAoYykgMjAxMCBSb2JlcnQgS2llZmZlcgpEdWFsIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgYW5kIEdQTCBsaWNlbnNlcy4KKi8KXy5FdD1mdW5jdGlvbihhLGIsYyl7dGhpcy5pPWE7dGhpcy5qPWI7dGhpcy5nPWN9O18uRXQucHJvdG90eXBlLnR5cGU9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nfTsKXy5GdD1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IF8uRXQoYSxudWxsLDApfTtfLkd0PVtdOwp2YXIgSHQ9ZnVuY3Rpb24oYSl7KDAsXy5IKSh0aGlzLGEsMCwtMSxudWxsLG51bGwpfTtfLkYoSHQsXy55KTtfLmppWzI3ODczMTAyM109bmV3IF8uTWgoMjc4NzMxMDIzLEh0KTsKXy5JdD1mdW5jdGlvbihhKXsoMCxfLkgpKHRoaXMsYSwwLC0xLG51bGwsbnVsbCl9O18uRihfLkl0LF8ueSk7Xy5KdD1uZXcgXy5NaCgxMjQ3MTI5NzQsXy5JdCk7Xy5qaVsxMjQ3MTI5NzRdPV8uSnQ7Xy5JdC5wcm90b3R5cGUuJGE9ZnVuY3Rpb24oKXtyZXR1cm4gXy5KKHRoaXMsMSl9OwpfLkt0PWZ1bmN0aW9uKCl7fTtfLkQoXy5LdCxfLm5jKTtfLkt0LnByb3RvdHlwZS5nPV8uY2EoMjUpOwpfLkx0PXt9OwpfLk10PWZ1bmN0aW9uKGEpeygwLF8uSCkodGhpcyxhLCJpYXJ3LnJyYSIsLTEsbnVsbCxudWxsKX07Xy5GKF8uTXQsXy55KTtfLk50PW5ldyBfLk1oKDEzNTM3NjMzOCxfLk10KTtfLkx0WzEzNTM3NjMzOF09Xy5OdDtfLk10LmFjPSJpYXJ3LnJyYSI7Xy5NdC5wcm90b3R5cGUuZ2V0VXJsPWZ1bmN0aW9uKCl7cmV0dXJuIF8uSih0aGlzLDEpfTsKXy5hZC5yZWRpcmVjdD1mdW5jdGlvbihhLGIsYyl7Xy5hZihiLF8uY20oYS5nZXRVcmwoKSwiY29udGludWUiLGMpKX07Cl8uT3Q9ZnVuY3Rpb24oYSl7KDAsXy5IKSh0aGlzLGEsImFmLmRlcCIsLTEsbnVsbCxudWxsKX07Xy5GKF8uT3QsXy55KTtfLlB0PW5ldyBfLk1oKDEwNjYyNzE2MyxfLk90KTtfLmppWzEwNjYyNzE2M109Xy5QdDtfLk90LmFjPSJhZi5kZXAiO18uT3QucHJvdG90eXBlLmdldElkPWZ1bmN0aW9uKCl7cmV0dXJuIF8uSih0aGlzLDEpfTsKXy5RdD1mdW5jdGlvbihhKXt0aGlzLkZiPWF9O18uRChfLlF0LF8ubmMpO18uUXQucHJvdG90eXBlLmk9Xy5jYSgyOCk7Xy5RdC5wcm90b3R5cGUuaj1fLmNhKDMxKTsKXy5SdD0hMTsKLyoKCiBDb3B5cmlnaHQgMjAxOCBUaGUgSW5jcmVtZW50YWwgRE9NIEF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCgogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKCiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAoKIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuICJBUy1JUyIgQkFTSVMsCiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgoqLwp2YXIgU3Q9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtwYy5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShudWxsKTsKXy5UdD1uZXcgcGM7Xy5UdC5fX2RlZmF1bHQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXR5cGVvZiBjOyJvYmplY3QiPT09ZHx8ImZ1bmN0aW9uIj09PWQ/YVtiXT1jOm51bGw9PWM/YS5yZW1vdmVBdHRyaWJ1dGUoYik6KGQ9MD09PWIubGFzdEluZGV4T2YoInhtbDoiLDApPyJodHRwOi8vd3d3LnczLm9yZy9YTUwvMTk5OC9uYW1lc3BhY2UiOjA9PT1iLmxhc3RJbmRleE9mKCJ4bGluazoiLDApPyJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIjpudWxsKT9hLnNldEF0dHJpYnV0ZU5TKGQsYixjKTphLnNldEF0dHJpYnV0ZShiLGMpfTtfLlR0LnN0eWxlPWZ1bmN0aW9uKGEsYixjKXthPWEuc3R5bGU7aWYoInN0cmluZyI9PT10eXBlb2YgYylhLmNzc1RleHQ9YztlbHNle2EuY3NzVGV4dD0iIjtmb3IodmFyIGQgaW4gYylpZihTdC5jYWxsKGMsZCkpe2I9ZDt2YXIgZT1jW2RdOzA8PWIuaW5kZXhPZigiLSIpP2Euc2V0UHJvcGVydHkoYixlKTphW2JdPWV9fX07Cl8uVXQ9InVuZGVmaW5lZCIhPT10eXBlb2YgTm9kZSYmTm9kZS5wcm90b3R5cGUuZ2V0Um9vdE5vZGV8fGZ1bmN0aW9uKCl7Zm9yKHZhciBhPXRoaXMsYj1hO2E7KWI9YSxhPWEucGFyZW50Tm9kZTtyZXR1cm4gYn07Cl8uVnQ9bmV3IHBjOwpfLld0PW5ldyBwYzsKXy5xYz17fTsKXy5YdD1mdW5jdGlvbihhKXtfLm1kLmNhbGwodGhpcyk7dGhpcy5qaj1hLmhjLmtleTt0aGlzLkZiPWEuaGMmJmEuaGMuUGE7dGhpcy5Paj1bXX07Xy5EKF8uWHQsXy5tZCk7Xy5YdC5wcm90b3R5cGUuaGI9ZnVuY3Rpb24oKXt0aGlzLndoKCk7dGhpcy5QaigpO18ubWQucHJvdG90eXBlLmhiLmNhbGwodGhpcyl9O18uWHQucHJvdG90eXBlLnFCPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuamp9O18uWHQucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuamorIlsiK18uQ2EodGhpcykrIl0ifTtfLll0PWZ1bmN0aW9uKGEsYil7Yj1iIGluc3RhbmNlb2YgXy5naD9iOnZoKGIpO2EuT2oucHVzaChiKX07Xy5YdC5wcm90b3R5cGUuTWo9Xy5jYSgzNCk7Xy5YdC5oYT1mdW5jdGlvbihhKXtyZXR1cm57aGM6e2tleTpmdW5jdGlvbigpe3JldHVybiBfLnVoKGEpfSxQYTpmdW5jdGlvbigpe3JldHVybiBfLnVoKHRoaXMuYWQoKSl9fX19OwpfLlp0PWZ1bmN0aW9uKGEpe2EuaGE9YS5oYXx8ZnVuY3Rpb24oKXt9fTtfLlh0LnByb3RvdHlwZS5aYj1mdW5jdGlvbigpe3JldHVybiB0aGlzLkZifTtfLlh0LnByb3RvdHlwZS5hZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLkZifHx2b2lkIDB9O18uWHQucHJvdG90eXBlLlBqPV8uYWQ7Xy5YdC5wcm90b3R5cGUud2g9Xy5hZDsKXy54Yz1fLkRuKCJ4czFHeSIsImpOcklzZiIpOwp2YXIgc2MsYXU7c2M9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5vbihfLnhjKTthPWEuZ2V0QXR0cmlidXRlKCJqc21vZGVsIik7aWYoIWEpcmV0dXJuITE7YT1fLiR0KGEpO2Zvcih2YXIgYz1hLmxlbmd0aC0xOzA8PWM7Yy0tKXt2YXIgZD1fLktuKGFbY10pO2lmKF8ueW4oYixkKSlyZXR1cm4hMH1yZXR1cm4hMX07YXU9Lztccyp8XHMrLztfLiR0PWZ1bmN0aW9uKGEpe3JldHVybiBhLnRyaW0oKS5zcGxpdChhdSkuZmlsdGVyKGZ1bmN0aW9uKGIpe3JldHVybiAwPGIubGVuZ3RofSl9OwpEYihmdW5jdGlvbigpe3puKF8ub24oXy5OcSksXy5kcik7em4oXy5vbihfLkN0KSxfLlVxKTt6bihfLm9uKF8uVnEpLF8uVXEpO18uZXImJnpuKF8ub24oXy5CdCksXy5lcik7em4oXy5vbihfLmdyKSxfLmlyKTt6bihfLm9uKF8uT3EpLF8uSnEpO18uSG8oe3JwYzpSbyhfLmhyLCJycGMiKSxFSzpEdH0pfSk7CkRiKGZ1bmN0aW9uKCl7Xy5LYSgpLlZjKGZ1bmN0aW9uKGEpe18ubmgoYS5nKF8udWspLGZ1bmN0aW9uKGIpe2IuQmYobmV3IF8uS3QpO2IuQmYobmV3IF8uUXQoYSkpfSl9KX0pOwpEYihmdW5jdGlvbigpe3puKF8ub24oXy5HcSksXy5Wcik7Xy5LYSgpLlZjKGZ1bmN0aW9uKCl7bnVsbCE9Xy5vbihfLklxKS5nfHx6bihfLm9uKF8uSXEpLF8uVnIpO251bGwhPV8ub24oXy5ucSkuZ3x8em4oXy5vbihfLm5xKSxfLlpyKX0pO09wPV8uWXJ9KTsKRGIoZnVuY3Rpb24oKXtudWxsIT1fLm9uKF8udHEpLmd8fHpuKF8ub24oXy50cSksXy50cyl9KTsKRGIoZnVuY3Rpb24oKXt6bihfLm9uKF8ud3EpLF8uemMpO3puKF8ub24oXy5wcSksXy52cyk7QmMoKX0pOwpEYihmdW5jdGlvbigpe2ljLnB1c2goXy51cil9KTsKRGIoZnVuY3Rpb24oKXtpYy5wdXNoKF8ua3QpO18uYmsoIng5NlVCZiIpLk1hKG51bGwpJiZfLnJjKF8ua3QsZnVuY3Rpb24oYSl7YS5FRSgpfSl9KTsKCihmdW5jdGlvbihhKXtpZighXy5BYi5oYXMoYSkpdGhyb3cgRXJyb3IoImRhYCIrYSk7dmFyIGI9Xy5DYlthXTtfLkJiLmFkZChhKTtiLmZvckVhY2goZnVuY3Rpb24oYyl7cmV0dXJuIGMuYXBwbHkoKX0pfSkoInN0YXJ0dXAiKTsKCl8uX01vZHVsZU1hbmFnZXJfaW5pdGlhbGl6ZT1mdW5jdGlvbihhLGIpe2lmKCFfLklhKXtpZighXy5KYSlyZXR1cm47Xy5JYT0oMCxfLkphKSgpfV8uSWEuTG4oYSxiKX07CgpfLl9Nb2R1bGVNYW5hZ2VyX2luaXRpYWxpemUoJycsWydfdHAnXSk7CgpfLnIoIl90cCIpOwp3aW5kb3cuX0ZfZ2V0SWpEYXRhPWZ1bmN0aW9uKCl7dmFyIGE9d2luZG93LklKX3ZhbHVlc3x8d2luZG93LnBhcmVudC5JSl92YWx1ZXM7aWYoMjkhPWEubGVuZ3RoKXRocm93IEVycm9yKCJzYSIpO3JldHVybntBejpmdW5jdGlvbigpe3JldHVybiBuZXcgXy5kayhhWzBdKX0saUo6YVsxXSxrSjphWzJdLEFwOmFbM10sb0o6YVs0XSxzSjphWzVdLEh0OmFbNl0sY291bnRyeTphWzddLE10OmFbOF0sSHA6YVs5XSxBSjphWzEwXSxCSjphWzExXSxESjphWzEyXSxGSjphWzEzXSxkaXI6YVsxNF0sUEo6YVsxNV0sUUo6YVsxNl0sUko6YVsxN10sYUs6YVsxOF0sbGFuZ3VhZ2U6YVsxOV0sYWU6YVsyMF0sbG9jYWxlOmFbMjFdLGpLOmFbMjJdLHRLOmFbMjNdLHJ0bDphWzI0XSxYSzphWzI1XSxjTDphWzI2XSxkTDphWzI3XSxlTDphWzI4XX19OwoKXy53KCk7Cgp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KfSkuY2FsbCh0aGlzLHRoaXMuZGVmYXVsdF9Db25zZW50VWkpOwovLyBHb29nbGUgSW5jLgoKLy8jIHNvdXJjZVVSTD0vXy9tc3MvYm9xLWlkZW50aXR5L18vanMvaz1ib3EtaWRlbnRpdHkuQ29uc2VudFVpLmVuLkxUSUdOeTYxZmc0LmVzNS5PL2FtPUZ3QkEvZD0xL2V4Y209X2IsX3RwLG1haW52aWV3L2VkPTEvZGc9MC93dD0yL2N0PXpnbXMvcnM9QU9hRW1sSHpRLV9TU1VjUVlEeE5QakJpSVJXV3hYLUNNdy9tPV9iLF90cApvbkpzTG9hZCgpOzwvc2NyaXB0PjxzY3JpcHQgbm9uY2U9IlNoTEhQSmJRSFA0ZXVxdGFXY3ByUFEiPgogICAgd2luZG93Wydfd2pkYyddID0gZnVuY3Rpb24gKGQpIHt3aW5kb3dbJ193amRkJ10gPSBkfTsKICAgIDwvc2NyaXB0Pjx0aXRsZT5CZWZvcmUgeW91IGNvbnRpbnVlIHRvIFlvdVR1YmU8L3RpdGxlPjxub3NjcmlwdD48bWV0YSBodHRwLWVxdWl2PSJyZWZyZXNoIiBjb250ZW50PSIwO1VSTD0naHR0cHM6Ly9jb25zZW50LnlvdXR1YmUuY29tL21sP2NvbnRpbnVlPWh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3BsYXlsaXN0P2xpc3QlM0RVVU9HZVUtMUZpZzNyckRqaG05WnNfd2cmYW1wO2dsPURFJmFtcDtobD1lbiZhbXA7cGM9eXQmYW1wO3V4ZT0yNDAyMDM4OCZhbXA7c3JjPTEmYW1wO3JmZnU9dHJ1ZSciPjwvbm9zY3JpcHQ+PHNjcmlwdCBub25jZT0iU2hMSFBKYlFIUDRldXF0YVdjcHJQUSI+dmFyIEFGX2luaXREYXRhS2V5cyA9IFsiZHM6MCJdCjsgdmFyIEFGX2RhdGFTZXJ2aWNlUmVxdWVzdHMgPSB7J2RzOjAnIDoge2lkOidGUGlaR2YnLGV4dDogMS4xNjIyNzUzMkU4ICxyZXF1ZXN0OlsiREUiXQp9fTsgdmFyIEFGX2luaXREYXRhQ2h1bmtRdWV1ZSA9IFtdOyB2YXIgQUZfaW5pdERhdGFDYWxsYmFjazsgdmFyIEFGX2luaXREYXRhSW5pdGlhbGl6ZUNhbGxiYWNrOyBpZiAoQUZfaW5pdERhdGFJbml0aWFsaXplQ2FsbGJhY2spIHtBRl9pbml0RGF0YUluaXRpYWxpemVDYWxsYmFjayhBRl9pbml0RGF0YUtleXMsIEFGX2luaXREYXRhQ2h1bmtRdWV1ZSwgQUZfZGF0YVNlcnZpY2VSZXF1ZXN0cyk7fWlmICghQUZfaW5pdERhdGFDYWxsYmFjaykge0FGX2luaXREYXRhQ2FsbGJhY2sgPSBmdW5jdGlvbihjaHVuaykge0FGX2luaXREYXRhQ2h1bmtRdWV1ZS5wdXNoKGNodW5rKTt9O308L3NjcmlwdD48L2hlYWQ+PGJvZHkganNjb250cm9sbGVyPSJwaklDRGUiIGpzYWN0aW9uPSJyY3VRNmI6bnBUMm1kOyBjbGljazpGQWJwZ2Y7IGF1eGNsaWNrOkZBYnBnZiI+PHNjcmlwdCBhcmlhLWhpZGRlbj0idHJ1ZSIgbm9uY2U9IlNoTEhQSmJRSFA0ZXVxdGFXY3ByUFEiPndpbmRvdy53aXpfcHJvZ3Jlc3MmJndpbmRvdy53aXpfcHJvZ3Jlc3MoKTs8L3NjcmlwdD48ZGl2IGNsYXNzPSJNQ2NPQWMgSXFCZk0gZWNKRWliIEVXWmN1ZCIgaWQ9InlEbUgwZCI+PGRpdiBjbGFzcz0iVlVvS1oiIGFyaWEtaGlkZGVuPSJ0cnVlIj48ZGl2IGNsYXNzPSJUUkhMQWMiPjwvZGl2PjwvZGl2PjxjLXdpeiBqc3JlbmRlcmVyPSJEVHRENCIgY2xhc3M9IlNTUEdLZiIganNkYXRhPSJkZWZlcnJlZC1pMSIgZGF0YS1wPSIlLkAuW1tudWxsLG51bGwsJnF1b3Q7aHR0cHM6Ly9jb25zZW50LnlvdXR1YmUuY29tL2Q/Y29udGludWVcdTAwM2RodHRwczovL3d3dy55b3V0dWJlLmNvbS9wbGF5bGlzdD9saXN0JTNEVVVPR2VVLTFGaWczcnJEamhtOVpzX3dnXHUwMDI2Z2xcdTAwM2RERVx1MDAyNmhsXHUwMDNkZW5cdTAwMjZwY1x1MDAzZHl0XHUwMDI2dXhlXHUwMDNkMjQwMjAzODhcdTAwMjZzcmNcdTAwM2QxJnF1b3Q7XSxbbnVsbCxudWxsLCZxdW90O2h0dHBzOi8vY29uc2VudC55b3V0dWJlLmNvbS9zJnF1b3Q7XSwmcXVvdDtnbCZxdW90OywmcXVvdDtERSZxdW90OywmcXVvdDttJnF1b3Q7LGZhbHNlLCZxdW90O3BjJnF1b3Q7LCZxdW90O3l0JnF1b3Q7LCZxdW90O2NvbnRpbnVlJnF1b3Q7LFtudWxsLG51bGwsJnF1b3Q7aHR0cHM6Ly93d3cueW91dHViZS5jb20vcGxheWxpc3Q/bGlzdFx1MDAzZFVVT0dlVS0xRmlnM3JyRGpobTlac193ZyZxdW90O10sJnF1b3Q7aGwmcXVvdDssJnF1b3Q7ZW4mcXVvdDssJnF1b3Q7c3JjJnF1b3Q7LDEsJnF1b3Q7dXhlJnF1b3Q7LCZxdW90OzI0MDIwMzg4JnF1b3Q7LG51bGwsbnVsbCxudWxsLG51bGwsJnF1b3Q7Y2EmcXVvdDssJnF1b3Q7ciZxdW90OywmcXVvdDt4JnF1b3Q7LDYsJnF1b3Q7diZxdW90OywmcXVvdDtjYi4yMDIxMDMyOC0xNy1wMC5lbitGWCsxNjYmcXVvdDssJnF1b3Q7dCZxdW90OywmcXVvdDtBRHczRjhnQXFlc2NSUDZ0NXZzeUFNbThLYmtmMHQ5ZkxnOjE2MTcxOTAxODc0NzUmcXVvdDssbnVsbCxudWxsLG51bGwsbnVsbCxbbnVsbCxudWxsLCZxdW90O2h0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9TZXJ2aWNlTG9naW4/aGxcdTAwM2Rlblx1MDAyNmNvbnRpbnVlXHUwMDNkaHR0cHM6Ly93d3cueW91dHViZS5jb20vcGxheWxpc3Q/bGlzdCUzRFVVT0dlVS0xRmlnM3JyRGpobTlac193Z1x1MDAyNmdhZVx1MDAzZGNiLTI0MDIwMzg4JnF1b3Q7XSxudWxsLG51bGwsW251bGwsbnVsbCwmcXVvdDtodHRwczovL2NvbnNlbnQueW91dHViZS5jb20vbWw/Y29udGludWVcdTAwM2RodHRwczovL3d3dy55b3V0dWJlLmNvbS9wbGF5bGlzdD9saXN0JTNEVVVPR2VVLTFGaWczcnJEamhtOVpzX3dnXHUwMDI2Z2xcdTAwM2RERVx1MDAyNmhsXHUwMDNkZW5cdTAwMjZwY1x1MDAzZHl0XHUwMDI2dXhlXHUwMDNkMjQwMjAzODhcdTAwMjZzcmNcdTAwM2QxXHUwMDI2cmZmdVx1MDAzZHRydWUmcXVvdDtdLG51bGwsbnVsbCxudWxsLDBdXSIgZGF0YS1ub2RlLWluZGV4PSIwOzAiIGpzbW9kZWw9ImhjNlViZCIgdmlldyBkYXRhLW9ncGM+PGRpdiBjbGFzcz0iVDRMZ05iIGVlanNEYyIganNuYW1lPSJhOWt4dGUiPjxkaXYganNuYW1lPSJxSlRITSIgY2xhc3M9ImtGd1BlZSI+PGxpbmsgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVlvdVR1YmUrU2Fuczo3MDAmZGlzcGxheT1zd2FwIiByZWw9InN0eWxlc2hlZXQiIG5vbmNlPSJTaExIUEpiUUhQNGV1cXRhV2NwclBRIj48ZGl2IGNsYXNzPSJRenNuQWUgY3JJajNlIj48ZGl2IGNsYXNzPSJ1cWVJQmMiPjxkaXYgY2xhc3M9IlZmUHBrZC1kZ2wySGYtcHBIbHJmLXNNNU1OYiIgZGF0YS1pcy10b3VjaC13cmFwcGVyPSJ0cnVlIj48ZGl2IGNsYXNzPSJWZlBwa2QtTGdic1NlIFZmUHBrZC1MZ2JzU2UtT1dYRVhlLUlOc0FnYyBWZlBwa2QtTGdic1NlLU9XWEVYZS1kZ2wySGYgUmoyTWxmIE9MaUl4ZiBQRHBXeGUgZ1J6bVhlIiBqc2NvbnRyb2xsZXI9Im5LdUZwYiIganNhY3Rpb249ImNsaWNrOmNPdUNnZDsgbW91c2Vkb3duOlVYN3laOyBtb3VzZXVwOmxic0Q3ZTsgbW91c2VlbnRlcjp0Zk8xWWM7IG1vdXNlbGVhdmU6Snl3R3VlOyB0b3VjaHN0YXJ0OnA2cDJIOyB0b3VjaG1vdmU6Rnd1Tm5mOyB0b3VjaGVuZDp5ZnFCeGM7IHRvdWNoY2FuY2VsOkpNdFJqZDsgZm9jdXM6QUhtdXdlOyBibHVyOk8yMnAzZTsgY29udGV4dG1lbnU6bWc5UGVmOyI+PGRpdiBjbGFzcz0iVmZQcGtkLUpoOWxHYyI+PC9kaXY+PHN2ZyB3aWR0aD0iMjMiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyMyAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTExLjUgMC43NUM1LjI5IDAuNzUgMC4yNSA1Ljc5IDAuMjUgMTJDMC4yNSAxOC4yMSA1LjI5IDIzLjI1IDExLjUgMjMuMjVDMTcuNzEgMjMuMjUgMjIuNzUgMTguMjEgMjIuNzUgMTJDMjIuNzUgNS43OSAxNy43MSAwLjc1IDExLjUgMC43NVpNMTEuNSA0LjEyNUMxMy4zNjc1IDQuMTI1IDE0Ljg3NSA1LjYzMjUgMTQuODc1IDcuNUMxNC44NzUgOS4zNjc1IDEzLjM2NzUgMTAuODc1IDExLjUgMTAuODc1QzkuNjMyNSAxMC44NzUgOC4xMjUgOS4zNjc1IDguMTI1IDcuNUM4LjEyNSA1LjYzMjUgOS42MzI1IDQuMTI1IDExLjUgNC4xMjVaTTQuNzUgMTYuNDI1QzYuMjAxMjUgMTguNTAzNiA4LjY4NzUgMTkuODc1IDExLjUgMTkuODc1QzE0LjMxMjUgMTkuODc1IDE2Ljc5ODcgMTguNTAzNiAxOC4yNSAxNi40MjVDMTguMjE2MiAxNC4yOTI5IDEzLjczODcgMTMuMTI1IDExLjUgMTMuMTI1QzkuMjUgMTMuMTI1IDQuNzgzNzUgMTQuMjkyOSA0Ljc1IDE2LjQyNVoiIGZpbGw9IiMxQTczRTgiLz48L3N2Zz48c3BhbiBqc25hbWU9IlY2N2FHYyIgY2xhc3M9IlZmUHBrZC12UXpmOGQiIGFyaWEtaGlkZGVuPSJ0cnVlIj5TaWduIGluPC9zcGFuPjxhIGNsYXNzPSJXcEhlTGMgVmZQcGtkLVJMbW5KYiIgaHJlZj0iaHR0cHM6Ly9hY2NvdW50cy5nb29nbGUuY29tL1NlcnZpY2VMb2dpbj9obD1lbiZhbXA7Y29udGludWU9aHR0cHM6Ly93d3cueW91dHViZS5jb20vcGxheWxpc3Q/bGlzdCUzRFVVT0dlVS0xRmlnM3JyRGpobTlac193ZyZhbXA7Z2FlPWNiLTI0MDIwMzg4IiBhcmlhLWxhYmVsPSJTaWduIGluIiBqc25hbWU9ImhTUkdQZCI+PC9hPjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImV4RVloZiI+PGRpdiBjbGFzcz0iVmZQcGtkLWRnbDJIZi1wcEhscmYtc001TU5iIiBkYXRhLWlzLXRvdWNoLXdyYXBwZXI9InRydWUiPjxkaXYgY2xhc3M9IlZmUHBrZC1MZ2JzU2UgVmZQcGtkLUxnYnNTZS1PV1hFWGUtSU5zQWdjIFZmUHBrZC1MZ2JzU2UtT1dYRVhlLWRnbDJIZiBSajJNbGYgT0xpSXhmIFBEcFd4ZSBnUnptWGUiIGpzY29udHJvbGxlcj0ibkt1RnBiIiBqc2FjdGlvbj0iY2xpY2s6Y091Q2dkOyBtb3VzZWRvd246VVg3eVo7IG1vdXNldXA6bGJzRDdlOyBtb3VzZWVudGVyOnRmTzFZYzsgbW91c2VsZWF2ZTpKeXdHdWU7IHRvdWNoc3RhcnQ6cDZwMkg7IHRvdWNobW92ZTpGd3VObmY7IHRvdWNoZW5kOnlmcUJ4YzsgdG91Y2hjYW5jZWw6Sk10UmpkOyBmb2N1czpBSG11d2U7IGJsdXI6TzIycDNlOyBjb250ZXh0bWVudTptZzlQZWY7Ij48ZGl2IGNsYXNzPSJWZlBwa2QtSmg5bEdjIj48L2Rpdj48c3ZnIHdpZHRoPSIyMyIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDIzIDI0IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTEuNSAwLjc1QzUuMjkgMC43NSAwLjI1IDUuNzkgMC4yNSAxMkMwLjI1IDE4LjIxIDUuMjkgMjMuMjUgMTEuNSAyMy4yNUMxNy43MSAyMy4yNSAyMi43NSAxOC4yMSAyMi43NSAxMkMyMi43NSA1Ljc5IDE3LjcxIDAuNzUgMTEuNSAwLjc1Wk0xMS41IDQuMTI1QzEzLjM2NzUgNC4xMjUgMTQuODc1IDUuNjMyNSAxNC44NzUgNy41QzE0Ljg3NSA5LjM2NzUgMTMuMzY3NSAxMC44NzUgMTEuNSAxMC44NzVDOS42MzI1IDEwLjg3NSA4LjEyNSA5LjM2NzUgOC4xMjUgNy41QzguMTI1IDUuNjMyNSA5LjYzMjUgNC4xMjUgMTEuNSA0LjEyNVpNNC43NSAxNi40MjVDNi4yMDEyNSAxOC41MDM2IDguNjg3NSAxOS44NzUgMTEuNSAxOS44NzVDMTQuMzEyNSAxOS44NzUgMTYuNzk4NyAxOC41MDM2IDE4LjI1IDE2LjQyNUMxOC4yMTYyIDE0LjI5MjkgMTMuNzM4NyAxMy4xMjUgMTEuNSAxMy4xMjVDOS4yNSAxMy4xMjUgNC43ODM3NSAxNC4yOTI5IDQuNzUgMTYuNDI1WiIgZmlsbD0iIzFBNzNFOCIvPjwvc3ZnPjxzcGFuIGpzbmFtZT0iVjY3YUdjIiBjbGFzcz0iVmZQcGtkLXZRemY4ZCIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48YSBjbGFzcz0iV3BIZUxjIFZmUHBrZC1STG1uSmIiIGhyZWY9Imh0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9TZXJ2aWNlTG9naW4/aGw9ZW4mYW1wO2NvbnRpbnVlPWh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3BsYXlsaXN0P2xpc3QlM0RVVU9HZVUtMUZpZzNyckRqaG05WnNfd2cmYW1wO2dhZT1jYi0yNDAyMDM4OCIgYXJpYS1sYWJlbD0iIiBqc25hbWU9ImhTUkdQZCI+PC9hPjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9Ik5Jb0lFZiI+PGRpdiBjbGFzcz0iRzRuanciPjxkaXYgY2xhc3M9ImEwZ3l3Ij48ZGl2PjxpbWcgc3JjPSIvL3d3dy5nc3RhdGljLmNvbS9hYy9jYi95b3V0dWJlX2xvZ29fdjIuc3ZnIiB3aWR0aD0iOTMiIGhlaWdodD0iMjgiIGNsYXNzPSJyZFVqcWYiIGFsdD0iWW91VHViZSI+IDxzcGFuIGNsYXNzPSJNOTFNYmMiPmEgR29vZ2xlIGNvbXBhbnk8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0iUXpzbkFlIHJqZnNnZCI+PGRpdiBjbGFzcz0idXFlSUJjIj48ZGl2IGNsYXNzPSJWZlBwa2QtZGdsMkhmLXBwSGxyZi1zTTVNTmIiIGRhdGEtaXMtdG91Y2gtd3JhcHBlcj0idHJ1ZSI+PGRpdiBjbGFzcz0iVmZQcGtkLUxnYnNTZSBWZlBwa2QtTGdic1NlLU9XWEVYZS1JTnNBZ2MgVmZQcGtkLUxnYnNTZS1PV1hFWGUtZGdsMkhmIFJqMk1sZiBPTGlJeGYgUERwV3hlIGdSem1YZSIganNjb250cm9sbGVyPSJuS3VGcGIiIGpzYWN0aW9uPSJjbGljazpjT3VDZ2Q7IG1vdXNlZG93bjpVWDd5WjsgbW91c2V1cDpsYnNEN2U7IG1vdXNlZW50ZXI6dGZPMVljOyBtb3VzZWxlYXZlOkp5d0d1ZTsgdG91Y2hzdGFydDpwNnAySDsgdG91Y2htb3ZlOkZ3dU5uZjsgdG91Y2hlbmQ6eWZxQnhjOyB0b3VjaGNhbmNlbDpKTXRSamQ7IGZvY3VzOkFIbXV3ZTsgYmx1cjpPMjJwM2U7IGNvbnRleHRtZW51Om1nOVBlZjsiPjxkaXYgY2xhc3M9IlZmUHBrZC1KaDlsR2MiPjwvZGl2Pjxzdmcgd2lkdGg9IjIzIiBoZWlnaHQ9IjI0IiB2aWV3Qm94PSIwIDAgMjMgMjQiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMS41IDAuNzVDNS4yOSAwLjc1IDAuMjUgNS43OSAwLjI1IDEyQzAuMjUgMTguMjEgNS4yOSAyMy4yNSAxMS41IDIzLjI1QzE3LjcxIDIzLjI1IDIyLjc1IDE4LjIxIDIyLjc1IDEyQzIyLjc1IDUuNzkgMTcuNzEgMC43NSAxMS41IDAuNzVaTTExLjUgNC4xMjVDMTMuMzY3NSA0LjEyNSAxNC44NzUgNS42MzI1IDE0Ljg3NSA3LjVDMTQuODc1IDkuMzY3NSAxMy4zNjc1IDEwLjg3NSAxMS41IDEwLjg3NUM5LjYzMjUgMTAuODc1IDguMTI1IDkuMzY3NSA4LjEyNSA3LjVDOC4xMjUgNS42MzI1IDkuNjMyNSA0LjEyNSAxMS41IDQuMTI1Wk00Ljc1IDE2LjQyNUM2LjIwMTI1IDE4LjUwMzYgOC42ODc1IDE5Ljg3NSAxMS41IDE5Ljg3NUMxNC4zMTI1IDE5Ljg3NSAxNi43OTg3IDE4LjUwMzYgMTguMjUgMTYuNDI1QzE4LjIxNjIgMTQuMjkyOSAxMy43Mzg3IDEzLjEyNSAxMS41IDEzLjEyNUM5LjI1IDEzLjEyNSA0Ljc4Mzc1IDE0LjI5MjkgNC43NSAxNi40MjVaIiBmaWxsPSIjMUE3M0U4Ii8+PC9zdmc+PHNwYW4ganNuYW1lPSJWNjdhR2MiIGNsYXNzPSJWZlBwa2QtdlF6ZjhkIiBhcmlhLWhpZGRlbj0idHJ1ZSI+U2lnbiBpbjwvc3Bhbj48YSBjbGFzcz0iV3BIZUxjIFZmUHBrZC1STG1uSmIiIGhyZWY9Imh0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9TZXJ2aWNlTG9naW4/aGw9ZW4mYW1wO2NvbnRpbnVlPWh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3BsYXlsaXN0P2xpc3QlM0RVVU9HZVUtMUZpZzNyckRqaG05WnNfd2cmYW1wO2dhZT1jYi0yNDAyMDM4OCIgYXJpYS1sYWJlbD0iU2lnbiBpbiIganNuYW1lPSJoU1JHUGQiPjwvYT48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJleEVZaGYiPjxkaXYgY2xhc3M9IlZmUHBrZC1kZ2wySGYtcHBIbHJmLXNNNU1OYiIgZGF0YS1pcy10b3VjaC13cmFwcGVyPSJ0cnVlIj48ZGl2IGNsYXNzPSJWZlBwa2QtTGdic1NlIFZmUHBrZC1MZ2JzU2UtT1dYRVhlLUlOc0FnYyBWZlBwa2QtTGdic1NlLU9XWEVYZS1kZ2wySGYgUmoyTWxmIE9MaUl4ZiBQRHBXeGUgZ1J6bVhlIiBqc2NvbnRyb2xsZXI9Im5LdUZwYiIganNhY3Rpb249ImNsaWNrOmNPdUNnZDsgbW91c2Vkb3duOlVYN3laOyBtb3VzZXVwOmxic0Q3ZTsgbW91c2VlbnRlcjp0Zk8xWWM7IG1vdXNlbGVhdmU6Snl3R3VlOyB0b3VjaHN0YXJ0OnA2cDJIOyB0b3VjaG1vdmU6Rnd1Tm5mOyB0b3VjaGVuZDp5ZnFCeGM7IHRvdWNoY2FuY2VsOkpNdFJqZDsgZm9jdXM6QUhtdXdlOyBibHVyOk8yMnAzZTsgY29udGV4dG1lbnU6bWc5UGVmOyI+PGRpdiBjbGFzcz0iVmZQcGtkLUpoOWxHYyI+PC9kaXY+PHN2ZyB3aWR0aD0iMjMiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyMyAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTExLjUgMC43NUM1LjI5IDAuNzUgMC4yNSA1Ljc5IDAuMjUgMTJDMC4yNSAxOC4yMSA1LjI5IDIzLjI1IDExLjUgMjMuMjVDMTcuNzEgMjMuMjUgMjIuNzUgMTguMjEgMjIuNzUgMTJDMjIuNzUgNS43OSAxNy43MSAwLjc1IDExLjUgMC43NVpNMTEuNSA0LjEyNUMxMy4zNjc1IDQuMTI1IDE0Ljg3NSA1LjYzMjUgMTQuODc1IDcuNUMxNC44NzUgOS4zNjc1IDEzLjM2NzUgMTAuODc1IDExLjUgMTAuODc1QzkuNjMyNSAxMC44NzUgOC4xMjUgOS4zNjc1IDguMTI1IDcuNUM4LjEyNSA1LjYzMjUgOS42MzI1IDQuMTI1IDExLjUgNC4xMjVaTTQuNzUgMTYuNDI1QzYuMjAxMjUgMTguNTAzNiA4LjY4NzUgMTkuODc1IDExLjUgMTkuODc1QzE0LjMxMjUgMTkuODc1IDE2Ljc5ODcgMTguNTAzNiAxOC4yNSAxNi40MjVDMTguMjE2MiAxNC4yOTI5IDEzLjczODcgMTMuMTI1IDExLjUgMTMuMTI1QzkuMjUgMTMuMTI1IDQuNzgzNzUgMTQuMjkyOSA0Ljc1IDE2LjQyNVoiIGZpbGw9IiMxQTczRTgiLz48L3N2Zz48c3BhbiBqc25hbWU9IlY2N2FHYyIgY2xhc3M9IlZmUHBrZC12UXpmOGQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PGEgY2xhc3M9IldwSGVMYyBWZlBwa2QtUkxtbkpiIiBocmVmPSJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20vU2VydmljZUxvZ2luP2hsPWVuJmFtcDtjb250aW51ZT1odHRwczovL3d3dy55b3V0dWJlLmNvbS9wbGF5bGlzdD9saXN0JTNEVVVPR2VVLTFGaWczcnJEamhtOVpzX3dnJmFtcDtnYWU9Y2ItMjQwMjAzODgiIGFyaWEtbGFiZWw9IiIganNuYW1lPSJoU1JHUGQiPjwvYT48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJQZ0tWSGMiPjxpbWcgY2xhc3M9IkhMcUtGYiIgc3JjPSJodHRwczovL3d3dy5nc3RhdGljLmNvbS9hYy9jYi9zY2VuZV9jb29raWVfd2FsbF95b3V0dWJlLnN2ZyIgYWx0PSIiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj48aDEgY2xhc3M9IlNHVzl4ZSI+QmVmb3JlIHlvdSBjb250aW51ZSB0byBZb3VUdWJlPC9oMT48ZGl2IGNsYXNzPSJRaGc1Z2YiPkdvb2dsZSB1c2VzIDxhIGhyZWY9Imh0dHBzOi8vcG9saWNpZXMuZ29vZ2xlLmNvbS90ZWNobm9sb2dpZXMvY29va2llcz9obD1lbiZ1dG1fc291cmNlPXVjYiIgdGFyZ2V0PSJfYmxhbmsiPmNvb2tpZXM8L2E+IGFuZCBkYXRhIHRvOjx1bD48bGk+RGVsaXZlciBhbmQgbWFpbnRhaW4gc2VydmljZXMsIGxpa2UgdHJhY2tpbmcgb3V0YWdlcyBhbmQgcHJvdGVjdGluZyBhZ2FpbnN0IHNwYW0sIGZyYXVkLCBhbmQgYWJ1c2U8L2xpPjxsaT5NZWFzdXJlIGF1ZGllbmNlIGVuZ2FnZW1lbnQgYW5kIHNpdGUgc3RhdGlzdGljcyB0byB1bmRlcnN0YW5kIGhvdyBvdXIgc2VydmljZXMgYXJlIHVzZWQ8L2xpPjwvdWw+SWYgeW91IGFncmVlLCB3ZeKAmWxsIGFsc28gdXNlIGNvb2tpZXMgYW5kIGRhdGEgdG86PHVsPjxsaT5JbXByb3ZlIHRoZSBxdWFsaXR5IG9mIG91ciBzZXJ2aWNlcyBhbmQgZGV2ZWxvcCBuZXcgb25lczwvbGk+PGxpPkRlbGl2ZXIgYW5kIG1lYXN1cmUgdGhlIGVmZmVjdGl2ZW5lc3Mgb2YgYWRzPC9saT48bGk+U2hvdyBwZXJzb25hbGl6ZWQgY29udGVudCwgZGVwZW5kaW5nIG9uIHlvdXIgc2V0dGluZ3M8L2xpPjxsaT5TaG93IHBlcnNvbmFsaXplZCBvciBnZW5lcmljIGFkcywgZGVwZW5kaW5nIG9uIHlvdXIgc2V0dGluZ3MsIG9uIEdvb2dsZSBhbmQgYWNyb3NzIHRoZSB3ZWI8L2xpPjwvdWw+Rm9yIG5vbi1wZXJzb25hbGl6ZWQgY29udGVudCBhbmQgYWRzLCB3aGF0IHlvdSBzZWUgbWF5IGJlIGluZmx1ZW5jZWQgYnkgdGhpbmdzIGxpa2UgdGhlIGNvbnRlbnQgeW914oCZcmUgY3VycmVudGx5IHZpZXdpbmcgYW5kIHlvdXIgbG9jYXRpb24gKGFkIHNlcnZpbmcgaXMgYmFzZWQgb24gZ2VuZXJhbCBsb2NhdGlvbikuIFBlcnNvbmFsaXplZCBjb250ZW50IGFuZCBhZHMgY2FuIGJlIGJhc2VkIG9uIHRob3NlIHRoaW5ncyBhbmQgeW91ciBhY3Rpdml0eSBsaWtlIEdvb2dsZSBzZWFyY2hlcyBhbmQgdmlkZW9zIHlvdSB3YXRjaCBvbiBZb3VUdWJlLiBQZXJzb25hbGl6ZWQgY29udGVudCBhbmQgYWRzIGluY2x1ZGUgdGhpbmdzIGxpa2UgbW9yZSByZWxldmFudCByZXN1bHRzIGFuZCByZWNvbW1lbmRhdGlvbnMsIGEgY3VzdG9taXplZCBZb3VUdWJlIGhvbWVwYWdlLCBhbmQgYWRzIHRoYXQgYXJlIHRhaWxvcmVkIHRvIHlvdXIgaW50ZXJlc3RzLjxwPkNsaWNrIOKAnEN1c3RvbWl6ZeKAnSB0byByZXZpZXcgb3B0aW9ucywgaW5jbHVkaW5nIGNvbnRyb2xzIHRvIHJlamVjdCB0aGUgdXNlIG9mIGNvb2tpZXMgZm9yIHBlcnNvbmFsaXphdGlvbiBhbmQgaW5mb3JtYXRpb24gYWJvdXQgYnJvd3Nlci1sZXZlbCBjb250cm9scyB0byByZWplY3Qgc29tZSBvciBhbGwgY29va2llcyBmb3Igb3RoZXIgdXNlcy4gWW91IGNhbiBhbHNvIHZpc2l0IGcuY28vcHJpdmFjeXRvb2xzIGFueXRpbWUuPC9wPjwvZGl2PjxkaXYgY2xhc3M9InFxdFJhYyI+PGRpdiBjbGFzcz0ibHNzeHVkIj48ZGl2IGNsYXNzPSJWZlBwa2QtZGdsMkhmLXBwSGxyZi1zTTVNTmIiIGRhdGEtaXMtdG91Y2gtd3JhcHBlcj0idHJ1ZSI+PGRpdiBjbGFzcz0iVmZQcGtkLUxnYnNTZSBWZlBwa2QtTGdic1NlLU9XWEVYZS1rOFFwSiBWZlBwa2QtTGdic1NlLU9XWEVYZS1kZ2wySGYgbkNQNXljIEFqWTVPZSBEdU1JUWMgSUlka2xlIiBqc2NvbnRyb2xsZXI9Im5LdUZwYiIganNhY3Rpb249ImNsaWNrOmNPdUNnZDsgbW91c2Vkb3duOlVYN3laOyBtb3VzZXVwOmxic0Q3ZTsgbW91c2VlbnRlcjp0Zk8xWWM7IG1vdXNlbGVhdmU6Snl3R3VlOyB0b3VjaHN0YXJ0OnA2cDJIOyB0b3VjaG1vdmU6Rnd1Tm5mOyB0b3VjaGVuZDp5ZnFCeGM7IHRvdWNoY2FuY2VsOkpNdFJqZDsgZm9jdXM6QUhtdXdlOyBibHVyOk8yMnAzZTsgY29udGV4dG1lbnU6bWc5UGVmOyIganNuYW1lPSJRN040T2MiPjxkaXYgY2xhc3M9IlZmUHBrZC1KaDlsR2MiPjwvZGl2PjxzcGFuIGpzbmFtZT0iVjY3YUdjIiBjbGFzcz0iVmZQcGtkLXZRemY4ZCIgYXJpYS1oaWRkZW49InRydWUiPkN1c3RvbWl6ZTwvc3Bhbj48YSBjbGFzcz0iV3BIZUxjIFZmUHBrZC1STG1uSmIiIGhyZWY9Imh0dHBzOi8vY29uc2VudC55b3V0dWJlLmNvbS9kP2NvbnRpbnVlPWh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3BsYXlsaXN0P2xpc3QlM0RVVU9HZVUtMUZpZzNyckRqaG05WnNfd2cmYW1wO2dsPURFJmFtcDtobD1lbiZhbXA7cGM9eXQmYW1wO3V4ZT0yNDAyMDM4OCZhbXA7c3JjPTEiIGFyaWEtbGFiZWw9IkN1c3RvbWl6ZSIgZGF0YS1uYXZpZ2F0aW9uPSJzZXJ2ZXIiIGpzbmFtZT0iaFNSR1BkIj48L2E+PC9kaXY+PC9kaXY+PC9kaXY+PGZvcm0gYWN0aW9uPSJodHRwczovL2NvbnNlbnQueW91dHViZS5jb20vcyIgbWV0aG9kPSJQT1NUIiBzdHlsZT0iZGlzcGxheTppbmxpbmU7IiBqc2NvbnRyb2xsZXI9ImZrdVEzIiBqc2FjdGlvbj0iSklidVFjOnRRRFdFYyhoaWdDUikiPjxkaXYgY2xhc3M9Imxzc3h1ZCI+PGRpdiBjbGFzcz0iVmZQcGtkLWRnbDJIZi1wcEhscmYtc001TU5iIiBkYXRhLWlzLXRvdWNoLXdyYXBwZXI9InRydWUiPjxidXR0b24gY2xhc3M9IlZmUHBrZC1MZ2JzU2UgVmZQcGtkLUxnYnNTZS1PV1hFWGUtazhRcEogVmZQcGtkLUxnYnNTZS1PV1hFWGUtZGdsMkhmIG5DUDV5YyBBalk1T2UgRHVNSVFjIElJZGtsZSIganNjb250cm9sbGVyPSJzb0h4ZiIganNhY3Rpb249ImNsaWNrOmNPdUNnZDsgbW91c2Vkb3duOlVYN3laOyBtb3VzZXVwOmxic0Q3ZTsgbW91c2VlbnRlcjp0Zk8xWWM7IG1vdXNlbGVhdmU6Snl3R3VlOyB0b3VjaHN0YXJ0OnA2cDJIOyB0b3VjaG1vdmU6Rnd1Tm5mOyB0b3VjaGVuZDp5ZnFCeGM7IHRvdWNoY2FuY2VsOkpNdFJqZDsgZm9jdXM6QUhtdXdlOyBibHVyOk8yMnAzZTsgY29udGV4dG1lbnU6bWc5UGVmOyIganNuYW1lPSJoaWdDUiIgYXJpYS1sYWJlbD0iQWdyZWUgdG8gdGhlIHVzZSBvZiBjb29raWVzIGFuZCBvdGhlciBkYXRhIGZvciB0aGUgcHVycG9zZXMgZGVzY3JpYmVkIj48ZGl2IGNsYXNzPSJWZlBwa2QtSmg5bEdjIj48L2Rpdj48c3BhbiBqc25hbWU9IlY2N2FHYyIgY2xhc3M9IlZmUHBrZC12UXpmOGQiIGFyaWEtaGlkZGVuPSJ0cnVlIj5JIGFncmVlPC9zcGFuPjxkaXYgY2xhc3M9IlZmUHBrZC1STG1uSmIiPjwvZGl2PjwvYnV0dG9uPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImQ4UHlNIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGRpdiBqc2NvbnRyb2xsZXI9IlVNdTUyYiIgY2xhc3M9InJ4YjBvZSBFMm9iRGYiIGRhdGEtcHJvZ3Jlc3N2YWx1ZT0iMSIgZGF0YS1idWZmZXJ2YWx1ZT0iMSIgYXJpYS1oaWRkZW49InRydWUiIGpzbmFtZT0idmlXMElkIiBqc2FjdGlvbj0idHJhbnNpdGlvbmVuZDplMjA0ZGU7Ij48ZGl2IGNsYXNzPSJWZlBwa2QtcU5wVHpiLU1yOEIzLVY2N2FHYyIganNuYW1lPSJhMmduQmIiPkFwcGx5aW5nIHlvdXIgc2V0dGluZ3MgaW4gdGhlIGJhY2tncm91bmQsIHBsZWFzZSB3YWl0Li4uPC9kaXY+PGRpdiBjbGFzcz0iVmZQcGtkLXFOcFR6Yi1QMWVrU2UgVmZQcGtkLXFOcFR6Yi1QMWVrU2UtT1dYRVhlLUE5eTN6YyBWZlBwa2QtcU5wVHpiLVAxZWtTZS1PV1hFWGUtT2lpQ08tSWhmVXllIFZmUHBrZC1xTnBUemItUDFla1NlLU9XWEVYZS14VE1lTyBWZlBwa2QtcU5wVHpiLVAxZWtTZS1PV1hFWGUteFRNZU8tT2lpQ08tWGhzOXoiIHJvbGU9InByb2dyZXNzYmFyIiBhcmlhLWxhYmVsPSJBcHBseWluZyB5b3VyIHNldHRpbmdzIGluIHRoZSBiYWNrZ3JvdW5kLCBwbGVhc2Ugd2FpdC4uLiIganNuYW1lPSJMYk5wb2YiIGFyaWEtaGlkZGVuPSJ0cnVlIj48ZGl2IGNsYXNzPSJWZlBwa2QtcU5wVHpiLWFqdVh4YyI+PGRpdiBjbGFzcz0iVmZQcGtkLXFOcFR6Yi1hanVYeGMtWk12M3UiIHN0eWxlPSJmbGV4LWJhc2lzOiAxMDAlIiBqc25hbWU9IlcwNUtqIj48L2Rpdj48ZGl2IGNsYXNzPSJWZlBwa2QtcU5wVHpiLWFqdVh4Yy1SeFliTmUiPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9IlZmUHBrZC1xTnBUemItUDRwRjhjIFZmUHBrZC1xTnBUemItVnczWHVmLVpNdjN1IiBzdHlsZT0idHJhbnNmb3JtOiBzY2FsZVgoMSk7IiBqc25hbWU9InhGdFFyYyI+PHNwYW4gY2xhc3M9IlZmUHBrZC1xTnBUemItUDRwRjhjLVNtS0F5YiI+PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9IlZmUHBrZC1xTnBUemItUDRwRjhjIFZmUHBrZC1xTnBUemItbmNBdUZiLVpNdjN1Ij48c3BhbiBjbGFzcz0iVmZQcGtkLXFOcFR6Yi1QNHBGOGMtU21LQXliIj48L3NwYW4+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iZ2wiIHZhbHVlPSJERSI+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ibSIgdmFsdWU9ImZhbHNlIj48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJwYyIgdmFsdWU9Inl0Ij48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJjb250aW51ZSIgdmFsdWU9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3BsYXlsaXN0P2xpc3Q9VVVPR2VVLTFGaWczcnJEamhtOVpzX3dnIj48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJjYSIgdmFsdWU9InIiPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IngiIHZhbHVlPSI2Ij48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ2IiB2YWx1ZT0iY2IuMjAyMTAzMjgtMTctcDAuZW4rRlgrMTY2Ij48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ0IiB2YWx1ZT0iQUR3M0Y4Z0FxZXNjUlA2dDV2c3lBTW04S2JrZjB0OWZMZzoxNjE3MTkwMTg3NDc1Ij48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJobCIgdmFsdWU9ImVuIj48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzcmMiIHZhbHVlPSIxIj48aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ1eGUiIHZhbHVlPSIyNDAyMDM4OCI+PC9mb3JtPjwvZGl2PjxkaXYgY2xhc3M9InJqZnNnZCI+PGRpdiBjbGFzcz0iY1JITkwiPjxkaXYgY2xhc3M9IkY0RzF1Ij48ZGl2IGpzY29udHJvbGxlcj0iaFo5QnQiIGpzYWN0aW9uPSJKSWJ1UWM6VUVtb0JkOyIgZGF0YS1sYz0iZW4iPjxkaXYgcm9sZT0iYnV0dG9uIiBjbGFzcz0iVTI2ZmdiIGM3ZnA1YiBGUzRoZ2QiIGpzY29udHJvbGxlcj0iaVN2ZzZlIiBqc2FjdGlvbj0iY2xpY2s6Y091Q2dkOyBtb3VzZWRvd246VVg3eVo7IG1vdXNldXA6bGJzRDdlOyBtb3VzZWVudGVyOnRmTzFZYzsgbW91c2VsZWF2ZTpKeXdHdWU7IGZvY3VzOkFIbXV3ZTsgYmx1cjpPMjJwM2U7IGNvbnRleHRtZW51Om1nOVBlZjt0b3VjaHN0YXJ0OnA2cDJIOyB0b3VjaG1vdmU6Rnd1Tm5mOyB0b3VjaGVuZDp5ZnFCeGMocHJldmVudE1vdXNlRXZlbnRzPXRydWV8cHJldmVudERlZmF1bHQ9dHJ1ZSk7IHRvdWNoY2FuY2VsOkpNdFJqZDs7a2V5ZG93bjpJNDgxbGU7IiBqc3NoYWRvdyBhcmlhLWRpc2FibGVkPSJmYWxzZSIgdGFiaW5kZXg9IjAiIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIiBkYXRhLWFsaWducmlnaHQ9InRydWUiIGRhdGEtYWxpZ250b3A9InRydWUiPjxkaXYgY2xhc3M9ImxWWXhtYiBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJnNGpVVmMiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj48c3BhbiBqc3Nsb3QgY2xhc3M9IkkzRW5GIG9KZVd1ZiI+PHNwYW4gY2xhc3M9Ik5sV3JrYiBzbkJ5YWMiPjxkaXYgY2xhc3M9Ik1WSWtpYyI+RW5nbGlzaDxpbWcgc3JjPSIvL3d3dy5nc3RhdGljLmNvbS9pbWFnZXMvaWNvbnMvbWF0ZXJpYWwvc3lzdGVtLzF4L2tleWJvYXJkX2Fycm93X2Rvd25fZ21fZ3JleV8xOGRwLnBuZyIgYWx0PSJEb3duIGFycm93IiBzcmNzZXQ9Ii8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9pY29ucy9tYXRlcmlhbC9zeXN0ZW0vMngva2V5Ym9hcmRfYXJyb3dfZG93bl9nbV9ncmV5XzE4ZHAucG5nIDJ4IiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIGNsYXNzPSJlMUpqd2YiPjwvZGl2Pjwvc3Bhbj48L3NwYW4+PGRpdiBqc25hbWU9InhsMDdPYiIgc3R5bGU9ImRpc3BsYXk6bm9uZSIgYXJpYS1oaWRkZW49InRydWUiPjxkaXYgY2xhc3M9IkpQZFI2YiBlNUVtamMgSmk4SjdkIFZyWDJEZCIganNjb250cm9sbGVyPSJ1WTNOdmQiIGpzYWN0aW9uPSJJcFNWdGI6VHZEOVBjO2ZFTjJaZTp4elM0dWI7ZnJxOTVjOkxOZUZtO2NGcHA5ZTpKOW9PdGQ7IGNsaWNrOkg4blU4YjsgbW91c2V1cDpIOG5VOGI7IGtleWRvd246STQ4MWxlOyBrZXlwcmVzczpLcjJ3NGI7IGJsdXI6TzIycDNlOyBmb2N1czpIOG5VOGIiIHJvbGU9Im1lbnUiIHRhYmluZGV4PSIwIiBqc3NoYWRvdz48ZGl2IGNsYXNzPSJYdmhZMWQiIGpzYWN0aW9uPSJtb3VzZWRvd246cDhFSDJjOyB0b3VjaHN0YXJ0OnA4RUgyYzsiPjxkaXYgY2xhc3M9IkpBUHFwZSBLME5QeCI+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBSRFBaRSBpU08zRWQgenlOclNjIHpWRGV6YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWRpc2FibGVkPSJ0cnVlIiBhcmlhLWxhYmVsPSJFbmdsaXNoClVuaXRlZCBTdGF0ZXMKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0iUENkT0liIENlMVkxYyIgYXJpYS1oaWRkZW49InRydWUiPjxpbWcgc3JjPSIvL3d3dy5nc3RhdGljLmNvbS9pbWFnZXMvaWNvbnMvbWF0ZXJpYWwvc3lzdGVtLzF4L2NoZWNrX2JsYWNrXzI0ZHAucG5nIiBzcmNzZXQ9Ii8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9pY29ucy9tYXRlcmlhbC9zeXN0ZW0vMngvY2hlY2tfYmxhY2tfMjRkcC5wbmcgMngiIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iZW4iPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iZmNKcURiIj5FbmdsaXNoPC9kaXY+PGRpdiBjbGFzcz0iQUtZOTAiPlVuaXRlZCBTdGF0ZXM8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PGRpdiBjbGFzcz0ia0N0WXdlIHpra3JSZCIgcm9sZT0ic2VwYXJhdG9yIj48L2Rpdj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iRGV1dHNjaAoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJkZSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPkRldXRzY2g8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IkVuZ2xpc2gKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iZW4tR0IiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5FbmdsaXNoPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJFc3Bhw7FvbAoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJlcyI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPkVzcGHDsW9sPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJGcmFuw6dhaXMKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iZnIiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5GcmFuw6dhaXM8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9Ikl0YWxpYW5vCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9Iml0Ij48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+SXRhbGlhbm88L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBSRFBaRSBpU08zRWQiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1kaXNhYmxlZD0idHJ1ZSIgYXJpYS1sYWJlbD0iQWxsIGxhbmd1YWdlcyIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PHNwYW4gY2xhc3M9Ild6T2ROYyI+QWxsIGxhbmd1YWdlczwvc3Bhbj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IkFmcmlrYWFucwoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJhZiI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPkFmcmlrYWFuczwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iYXrJmXJiYXljYW4KIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iYXoiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5hesmZcmJheWNhbjwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iYm9zYW5za2kKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iYnMiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5ib3NhbnNraTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iY2F0YWzDoAoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJjYSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPmNhdGFsw6A8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IsSMZcWhdGluYQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJjcyI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPsSMZcWhdGluYTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iQ3ltcmFlZwoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJjeSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPkN5bXJhZWc8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IkRhbnNrCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImRhIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+RGFuc2s8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IkRldXRzY2gKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iZGUiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5EZXV0c2NoPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJlZXN0aQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJldCI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPmVlc3RpPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIHp5TnJTYyIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJFbmdsaXNoClVuaXRlZCBLaW5nZG9tCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImVuLUdCIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9ImZjSnFEYiI+RW5nbGlzaDwvZGl2PjxkaXYgY2xhc3M9IkFLWTkwIj5Vbml0ZWQgS2luZ2RvbTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCB6eU5yU2MiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iRXNwYcOxb2wKRXNwYcOxYQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJlcyI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSJmY0pxRGIiPkVzcGHDsW9sPC9kaXY+PGRpdiBjbGFzcz0iQUtZOTAiPkVzcGHDsWE8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgenlOclNjIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IkVzcGHDsW9sCkxhdGlub2Ftw6lyaWNhCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImVzLTQxOSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSJmY0pxRGIiPkVzcGHDsW9sPC9kaXY+PGRpdiBjbGFzcz0iQUtZOTAiPkxhdGlub2Ftw6lyaWNhPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJldXNrYXJhCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImV1Ij48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+ZXVza2FyYTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iRmlsaXBpbm8KIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iZmlsIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+RmlsaXBpbm88L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgenlOclNjIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IkZyYW7Dp2FpcwpDYW5hZGEKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iZnItQ0EiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iZmNKcURiIj5GcmFuw6dhaXM8L2Rpdj48ZGl2IGNsYXNzPSJBS1k5MCI+Q2FuYWRhPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIHp5TnJTYyIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJGcmFuw6dhaXMKRnJhbmNlCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImZyIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9ImZjSnFEYiI+RnJhbsOnYWlzPC9kaXY+PGRpdiBjbGFzcz0iQUtZOTAiPkZyYW5jZTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iR2FlaWxnZQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJnYSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPkdhZWlsZ2U8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9ImdhbGVnbwoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJnbCI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPmdhbGVnbzwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iSHJ2YXRza2kKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iaHIiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5IcnZhdHNraTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iSW5kb25lc2lhCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImlkIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+SW5kb25lc2lhPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJpc2ladWx1CiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9Inp1Ij48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+aXNpWnVsdTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iw61zbGVuc2thCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImlzIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+w61zbGVuc2thPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJJdGFsaWFubwoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJpdCI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPkl0YWxpYW5vPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJLaXN3YWhpbGkKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ic3ciPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5LaXN3YWhpbGk8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9ImxhdHZpZcWhdQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJsdiI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPmxhdHZpZcWhdTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0ibGlldHV2acWzCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9Imx0Ij48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+bGlldHV2acWzPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJtYWd5YXIKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iaHUiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5tYWd5YXI8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9Ik1lbGF5dQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJtcyI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPk1lbGF5dTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iTmVkZXJsYW5kcwoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJubCI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPk5lZGVybGFuZHM8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9Im5vcnNrCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9Im5vIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+bm9yc2s8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9Im/igJh6YmVrCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InV6Ij48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+b+KAmHpiZWs8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9InBvbHNraQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJwbCI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPnBvbHNraTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCB6eU5yU2MiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iUG9ydHVndcOqcwpCcmFzaWwKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0icHQtQlIiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iZmNKcURiIj5Qb3J0dWd1w6pzPC9kaXY+PGRpdiBjbGFzcz0iQUtZOTAiPkJyYXNpbDwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCB6eU5yU2MiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iUG9ydHVndcOqcwpQb3J0dWdhbAoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJwdC1QVCI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSJmY0pxRGIiPlBvcnR1Z3XDqnM8L2Rpdj48ZGl2IGNsYXNzPSJBS1k5MCI+UG9ydHVnYWw8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9InJvbcOibsSDCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InJvIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+cm9tw6JuxIM8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9InNocWlwCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InNxIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+c2hxaXA8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IlNsb3ZlbsSNaW5hCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InNrIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+U2xvdmVuxI1pbmE8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9InNsb3ZlbsWhxI1pbmEKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ic2wiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5zbG92ZW7FocSNaW5hPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJzcnBza2kgKGxhdGluaWNhKQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJzci1MYXRuIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+c3Jwc2tpIChsYXRpbmljYSk8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IlN1b21pCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImZpIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+U3VvbWk8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IlN2ZW5za2EKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ic3YiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5TdmVuc2thPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJUaeG6v25nIFZp4buHdAoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJ2aSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPlRp4bq/bmcgVmnhu4d0PC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJUw7xya8OnZQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJ0ciI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPlTDvHJrw6dlPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLOlc67zrvOt869zrnOus6sCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImVsIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+zpXOu867zrfOvc65zrrOrDwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i0LHQtdC70LDRgNGD0YHQutCw0Y8KIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iYmUiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7QsdC10LvQsNGA0YPRgdC60LDRjzwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i0LHRitC70LPQsNGA0YHQutC4CiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImJnIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+0LHRitC70LPQsNGA0YHQutC4PC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLQutGL0YDQs9GL0LfRh9CwCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9Imt5Ij48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+0LrRi9GA0LPRi9C30YfQsDwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i0pvQsNC30LDSmyDRgtGW0LvRlgoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJrayI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPtKb0LDQt9Cw0psg0YLRltC70ZY8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9ItC80LDQutC10LTQvtC90YHQutC4CiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9Im1rIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+0LzQsNC60LXQtNC+0L3RgdC60Lg8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9ItC80L7QvdCz0L7QuwoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJtbiI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPtC80L7QvdCz0L7QuzwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i0KDRg9GB0YHQutC40LkKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0icnUiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7QoNGD0YHRgdC60LjQuTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i0YHRgNC/0YHQutC4CiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InNyIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+0YHRgNC/0YHQutC4PC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLQo9C60YDQsNGX0L3RgdGM0LrQsAoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJ1ayI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPtCj0LrRgNCw0ZfQvdGB0YzQutCwPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLhg6Xhg5Dhg6Dhg5fhg6Phg5rhg5gKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ia2EiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7hg6Xhg5Dhg6Dhg5fhg6Phg5rhg5g8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9ItWw1aHVtdWl1oDVpdW2CiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9Imh5Ij48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+1bDVodW11aXWgNWl1bY8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9Itei15HXqNeZ16oKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iaXciPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7XoteR16jXmdeqPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLYp9ix2K/ZiAoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJ1ciI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPtin2LHYr9mIPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLYp9mE2LnYsdio2YrYqQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJhciI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPtin2YTYudix2KjZitipPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLZgdin2LHYs9uMCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImZhIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+2YHYp9ix2LPbjDwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i4Yqg4Yib4Yit4YqbCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImFtIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+4Yqg4Yib4Yit4YqbPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLgpKjgpYfgpKrgpL7gpLLgpYAKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ibmUiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7gpKjgpYfgpKrgpL7gpLLgpYA8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IuCkruCksOCkvuCkoOClgAoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJtciI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPuCkruCksOCkvuCkoOClgDwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i4KS54KS/4KSo4KWN4KSm4KWACiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImhpIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+4KS54KS/4KSo4KWN4KSm4KWAPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLgpoXgprjgpq7gp4Dgpq/gprzgpr4KIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iYXMiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7gpoXgprjgpq7gp4Dgpq/gprzgpr48L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IuCmrOCmvuCmguCmsuCmvgoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJibiI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPuCmrOCmvuCmguCmsuCmvjwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i4Kiq4Kmw4Kic4Ki+4Kis4KmACiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InBhIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+4Kiq4Kmw4Kic4Ki+4Kis4KmAPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLgqpfgq4HgqpzgqrDgqr7gqqTgq4AKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iZ3UiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7gqpfgq4HgqpzgqrDgqr7gqqTgq4A8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IuCsk+CsoeCsvOCsv+CshgoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJvciI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPuCsk+CsoeCsvOCsv+CshjwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i4K6k4K6u4K6/4K604K+NCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InRhIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+4K6k4K6u4K6/4K604K+NPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLgsKTgsYbgsLLgsYHgsJfgsYEKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0idGUiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7gsKTgsYbgsLLgsYHgsJfgsYE8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IuCyleCyqOCzjeCyqOCyoQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJrbiI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPuCyleCyqOCzjeCyqOCyoTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i4LSu4LSy4LSv4LS+4LSz4LSCCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9Im1sIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+4LSu4LSy4LSv4LS+4LSz4LSCPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLgt4Pgt5LgtoLgt4Tgtr0KIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ic2kiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7gt4Pgt5LgtoLgt4Tgtr08L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IuC5hOC4l+C4ogoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJ0aCI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPuC5hOC4l+C4ojwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i4Lql4Lqy4LqnCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImxvIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+4Lql4Lqy4LqnPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLhgJnhgLzhgJThgLrhgJnhgKwKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ibXkiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7hgJnhgLzhgJThgLrhgJnhgKw8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IuGegeGfkuGemOGfguGemgoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJrbSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPuGegeGfkuGemOGfguGemjwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i7ZWc6rWt7Ja0CiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImtvIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+7ZWc6rWt7Ja0PC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLml6XmnKzoqp4KIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iamEiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7ml6XmnKzoqp48L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IueugOS9k+S4reaWhwoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJ6aC1DTiI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPueugOS9k+S4reaWhzwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i57mB6auU5Lit5paHCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InpoLVRXIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+57mB6auU5Lit5paHPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIHp5TnJTYyIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLnuYHpq5TkuK3mlocK6aaZ5rivCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InpoLUhLIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9ImZjSnFEYiI+57mB6auU5Lit5paHPC9kaXY+PGRpdiBjbGFzcz0iQUtZOTAiPummmea4rzwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJTYWx4bGUiPjxkaXYgY2xhc3M9IlZmUHBrZC1kZ2wySGYtcHBIbHJmLXNNNU1OYiIgZGF0YS1pcy10b3VjaC13cmFwcGVyPSJ0cnVlIj48ZGl2IGNsYXNzPSJWZlBwa2QtTGdic1NlIFZmUHBrZC1MZ2JzU2UtT1dYRVhlLWRnbDJIZiBMakR4Y2QgWGhQQTBiIE1WSWtpYyIganNjb250cm9sbGVyPSJuS3VGcGIiIGpzYWN0aW9uPSJjbGljazpjT3VDZ2Q7IG1vdXNlZG93bjpVWDd5WjsgbW91c2V1cDpsYnNEN2U7IG1vdXNlZW50ZXI6dGZPMVljOyBtb3VzZWxlYXZlOkp5d0d1ZTsgdG91Y2hzdGFydDpwNnAySDsgdG91Y2htb3ZlOkZ3dU5uZjsgdG91Y2hlbmQ6eWZxQnhjOyB0b3VjaGNhbmNlbDpKTXRSamQ7IGZvY3VzOkFIbXV3ZTsgYmx1cjpPMjJwM2U7IGNvbnRleHRtZW51Om1nOVBlZjsiPjxkaXYgY2xhc3M9IlZmUHBrZC1KaDlsR2MiPjwvZGl2PjxzcGFuIGpzbmFtZT0iVjY3YUdjIiBjbGFzcz0iVmZQcGtkLXZRemY4ZCIgYXJpYS1oaWRkZW49InRydWUiPlByaXZhY3k8L3NwYW4+PGEgY2xhc3M9IldwSGVMYyBWZlBwa2QtUkxtbkpiIiBocmVmPSJodHRwczovL3BvbGljaWVzLmdvb2dsZS5jb20vcHJpdmFjeT9obD1lbiIgdGFyZ2V0PSJfYmxhbmsiIGFyaWEtbGFiZWw9IlByaXZhY3kiIGpzbmFtZT0iaFNSR1BkIj48L2E+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iVmZQcGtkLWRnbDJIZi1wcEhscmYtc001TU5iIiBkYXRhLWlzLXRvdWNoLXdyYXBwZXI9InRydWUiPjxkaXYgY2xhc3M9IlZmUHBrZC1MZ2JzU2UgVmZQcGtkLUxnYnNTZS1PV1hFWGUtZGdsMkhmIExqRHhjZCBYaFBBMGIgTVZJa2ljIiBqc2NvbnRyb2xsZXI9Im5LdUZwYiIganNhY3Rpb249ImNsaWNrOmNPdUNnZDsgbW91c2Vkb3duOlVYN3laOyBtb3VzZXVwOmxic0Q3ZTsgbW91c2VlbnRlcjp0Zk8xWWM7IG1vdXNlbGVhdmU6Snl3R3VlOyB0b3VjaHN0YXJ0OnA2cDJIOyB0b3VjaG1vdmU6Rnd1Tm5mOyB0b3VjaGVuZDp5ZnFCeGM7IHRvdWNoY2FuY2VsOkpNdFJqZDsgZm9jdXM6QUhtdXdlOyBibHVyOk8yMnAzZTsgY29udGV4dG1lbnU6bWc5UGVmOyI+PGRpdiBjbGFzcz0iVmZQcGtkLUpoOWxHYyI+PC9kaXY+PHNwYW4ganNuYW1lPSJWNjdhR2MiIGNsYXNzPSJWZlBwa2QtdlF6ZjhkIiBhcmlhLWhpZGRlbj0idHJ1ZSI+VGVybXM8L3NwYW4+PGEgY2xhc3M9IldwSGVMYyBWZlBwa2QtUkxtbkpiIiBocmVmPSJodHRwczovL3BvbGljaWVzLmdvb2dsZS5jb20vdGVybXM/aGw9ZW4iIHRhcmdldD0iX2JsYW5rIiBhcmlhLWxhYmVsPSJUZXJtcyIganNuYW1lPSJoU1JHUGQiPjwvYT48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJjcklqM2UgcERwbThkIj48ZGl2IGNsYXNzPSJjUkhOTCI+PGRpdiBjbGFzcz0iRjRHMXUiPjxkaXYganNjb250cm9sbGVyPSJoWjlCdCIganNhY3Rpb249IkpJYnVRYzpVRW1vQmQ7IiBkYXRhLWxjPSJlbiI+PGRpdiByb2xlPSJidXR0b24iIGNsYXNzPSJVMjZmZ2IgYzdmcDViIEZTNGhnZCIganNjb250cm9sbGVyPSJpU3ZnNmUiIGpzYWN0aW9uPSJjbGljazpjT3VDZ2Q7IG1vdXNlZG93bjpVWDd5WjsgbW91c2V1cDpsYnNEN2U7IG1vdXNlZW50ZXI6dGZPMVljOyBtb3VzZWxlYXZlOkp5d0d1ZTsgZm9jdXM6QUhtdXdlOyBibHVyOk8yMnAzZTsgY29udGV4dG1lbnU6bWc5UGVmO3RvdWNoc3RhcnQ6cDZwMkg7IHRvdWNobW92ZTpGd3VObmY7IHRvdWNoZW5kOnlmcUJ4YyhwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZXxwcmV2ZW50RGVmYXVsdD10cnVlKTsgdG91Y2hjYW5jZWw6Sk10UmpkOztrZXlkb3duOkk0ODFsZTsiIGpzc2hhZG93IGFyaWEtZGlzYWJsZWQ9ImZhbHNlIiB0YWJpbmRleD0iMCIgYXJpYS1oYXNwb3B1cD0idHJ1ZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiIGRhdGEtYWxpZ25yaWdodD0idHJ1ZSIgZGF0YS1hbGlnbnRvcD0idHJ1ZSI+PGRpdiBjbGFzcz0ibFZZeG1iIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9Imc0alVWYyIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PjxzcGFuIGpzc2xvdCBjbGFzcz0iSTNFbkYgb0plV3VmIj48c3BhbiBjbGFzcz0iTmxXcmtiIHNuQnlhYyI+PGRpdiBjbGFzcz0iTVZJa2ljIj5FbmdsaXNoPGltZyBzcmM9Ii8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9pY29ucy9tYXRlcmlhbC9zeXN0ZW0vMXgva2V5Ym9hcmRfYXJyb3dfZG93bl9nbV9ncmV5XzE4ZHAucG5nIiBhbHQ9IkRvd24gYXJyb3ciIHNyY3NldD0iLy93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2ljb25zL21hdGVyaWFsL3N5c3RlbS8yeC9rZXlib2FyZF9hcnJvd19kb3duX2dtX2dyZXlfMThkcC5wbmcgMngiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgY2xhc3M9ImUxSmp3ZiI+PC9kaXY+PC9zcGFuPjwvc3Bhbj48ZGl2IGpzbmFtZT0ieGwwN09iIiBzdHlsZT0iZGlzcGxheTpub25lIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGRpdiBjbGFzcz0iSlBkUjZiIGU1RW1qYyBKaThKN2QgVnJYMkRkIiBqc2NvbnRyb2xsZXI9InVZM052ZCIganNhY3Rpb249IklwU1Z0YjpUdkQ5UGM7ZkVOMlplOnh6UzR1YjtmcnE5NWM6TE5lRm07Y0ZwcDllOko5b090ZDsgY2xpY2s6SDhuVThiOyBtb3VzZXVwOkg4blU4Yjsga2V5ZG93bjpJNDgxbGU7IGtleXByZXNzOktyMnc0YjsgYmx1cjpPMjJwM2U7IGZvY3VzOkg4blU4YiIgcm9sZT0ibWVudSIgdGFiaW5kZXg9IjAiIGpzc2hhZG93PjxkaXYgY2xhc3M9Ilh2aFkxZCIganNhY3Rpb249Im1vdXNlZG93bjpwOEVIMmM7IHRvdWNoc3RhcnQ6cDhFSDJjOyI+PGRpdiBjbGFzcz0iSkFQcXBlIEswTlB4Ij48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIFJEUFpFIGlTTzNFZCB6eU5yU2MgelZEZXpiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtZGlzYWJsZWQ9InRydWUiIGFyaWEtbGFiZWw9IkVuZ2xpc2gKVW5pdGVkIFN0YXRlcwoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJQQ2RPSWIgQ2UxWTFjIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGltZyBzcmM9Ii8vd3d3LmdzdGF0aWMuY29tL2ltYWdlcy9pY29ucy9tYXRlcmlhbC9zeXN0ZW0vMXgvY2hlY2tfYmxhY2tfMjRkcC5wbmciIHNyY3NldD0iLy93d3cuZ3N0YXRpYy5jb20vaW1hZ2VzL2ljb25zL21hdGVyaWFsL3N5c3RlbS8yeC9jaGVja19ibGFja18yNGRwLnBuZyAyeCIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0Ij48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJlbiI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSJmY0pxRGIiPkVuZ2xpc2g8L2Rpdj48ZGl2IGNsYXNzPSJBS1k5MCI+VW5pdGVkIFN0YXRlczwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48ZGl2IGNsYXNzPSJrQ3RZd2UgemtrclJkIiByb2xlPSJzZXBhcmF0b3IiPjwvZGl2PjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJEZXV0c2NoCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImRlIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+RGV1dHNjaDwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iRW5nbGlzaAoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJlbi1HQiI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPkVuZ2xpc2g8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IkVzcGHDsW9sCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImVzIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+RXNwYcOxb2w8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IkZyYW7Dp2FpcwoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJmciI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPkZyYW7Dp2FpczwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iSXRhbGlhbm8KIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iaXQiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5JdGFsaWFubzwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIFJEUFpFIGlTTzNFZCIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWRpc2FibGVkPSJ0cnVlIiBhcmlhLWxhYmVsPSJBbGwgbGFuZ3VhZ2VzIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiI+PGRpdiBjbGFzcz0iak83aDNjIj48c3BhbiBjbGFzcz0iV3pPZE5jIj5BbGwgbGFuZ3VhZ2VzPC9zcGFuPjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iQWZyaWthYW5zCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImFmIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+QWZyaWthYW5zPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJhesmZcmJheWNhbgoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJheiI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPmF6yZlyYmF5Y2FuPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJib3NhbnNraQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJicyI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPmJvc2Fuc2tpPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJjYXRhbMOgCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImNhIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+Y2F0YWzDoDwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0ixIxlxaF0aW5hCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImNzIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+xIxlxaF0aW5hPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJDeW1yYWVnCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImN5Ij48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+Q3ltcmFlZzwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iRGFuc2sKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iZGEiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5EYW5zazwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iRGV1dHNjaAoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJkZSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPkRldXRzY2g8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9ImVlc3RpCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImV0Ij48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+ZWVzdGk8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgenlOclNjIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IkVuZ2xpc2gKVW5pdGVkIEtpbmdkb20KIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iZW4tR0IiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iZmNKcURiIj5FbmdsaXNoPC9kaXY+PGRpdiBjbGFzcz0iQUtZOTAiPlVuaXRlZCBLaW5nZG9tPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIHp5TnJTYyIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJFc3Bhw7FvbApFc3Bhw7FhCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImVzIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9ImZjSnFEYiI+RXNwYcOxb2w8L2Rpdj48ZGl2IGNsYXNzPSJBS1k5MCI+RXNwYcOxYTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCB6eU5yU2MiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iRXNwYcOxb2wKTGF0aW5vYW3DqXJpY2EKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iZXMtNDE5Ij48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9ImZjSnFEYiI+RXNwYcOxb2w8L2Rpdj48ZGl2IGNsYXNzPSJBS1k5MCI+TGF0aW5vYW3DqXJpY2E8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9ImV1c2thcmEKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iZXUiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5ldXNrYXJhPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJGaWxpcGlubwoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJmaWwiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5GaWxpcGlubzwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCB6eU5yU2MiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iRnJhbsOnYWlzCkNhbmFkYQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJmci1DQSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSJmY0pxRGIiPkZyYW7Dp2FpczwvZGl2PjxkaXYgY2xhc3M9IkFLWTkwIj5DYW5hZGE8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgenlOclNjIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IkZyYW7Dp2FpcwpGcmFuY2UKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iZnIiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iZmNKcURiIj5GcmFuw6dhaXM8L2Rpdj48ZGl2IGNsYXNzPSJBS1k5MCI+RnJhbmNlPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJHYWVpbGdlCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImdhIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+R2FlaWxnZTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iZ2FsZWdvCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImdsIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+Z2FsZWdvPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJIcnZhdHNraQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJociI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPkhydmF0c2tpPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJJbmRvbmVzaWEKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iaWQiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5JbmRvbmVzaWE8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9ImlzaVp1bHUKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ienUiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5pc2ladWx1PC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLDrXNsZW5za2EKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iaXMiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7DrXNsZW5za2E8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9Ikl0YWxpYW5vCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9Iml0Ij48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+SXRhbGlhbm88L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9Iktpc3dhaGlsaQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJzdyI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPktpc3dhaGlsaTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0ibGF0dmllxaF1CiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9Imx2Ij48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+bGF0dmllxaF1PC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJsaWV0dXZpxbMKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ibHQiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5saWV0dXZpxbM8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9Im1hZ3lhcgoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJodSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPm1hZ3lhcjwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iTWVsYXl1CiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9Im1zIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+TWVsYXl1PC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJOZWRlcmxhbmRzCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9Im5sIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+TmVkZXJsYW5kczwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0ibm9yc2sKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ibm8iPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5ub3JzazwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0ib+KAmHpiZWsKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0idXoiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5v4oCYemJlazwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0icG9sc2tpCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InBsIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+cG9sc2tpPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIHp5TnJTYyIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJQb3J0dWd1w6pzCkJyYXNpbAoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJwdC1CUiI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSJmY0pxRGIiPlBvcnR1Z3XDqnM8L2Rpdj48ZGl2IGNsYXNzPSJBS1k5MCI+QnJhc2lsPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIHp5TnJTYyIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSJQb3J0dWd1w6pzClBvcnR1Z2FsCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InB0LVBUIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9ImZjSnFEYiI+UG9ydHVndcOqczwvZGl2PjxkaXYgY2xhc3M9IkFLWTkwIj5Qb3J0dWdhbDwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0icm9tw6JuxIMKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0icm8iPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5yb23Dom7EgzwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0ic2hxaXAKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ic3EiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5zaHFpcDwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iU2xvdmVuxI1pbmEKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ic2siPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5TbG92ZW7EjWluYTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0ic2xvdmVuxaHEjWluYQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJzbCI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPnNsb3ZlbsWhxI1pbmE8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9InNycHNraSAobGF0aW5pY2EpCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InNyLUxhdG4iPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5zcnBza2kgKGxhdGluaWNhKTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iU3VvbWkKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iZmkiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj5TdW9taTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0iU3ZlbnNrYQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJzdiI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPlN2ZW5za2E8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IlRp4bq/bmcgVmnhu4d0CiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InZpIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+VGnhur9uZyBWaeG7h3Q8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IlTDvHJrw6dlCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InRyIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+VMO8cmvDp2U8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9Is6VzrvOu863zr3Ouc66zqwKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iZWwiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7Olc67zrvOt869zrnOus6sPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLQsdC10LvQsNGA0YPRgdC60LDRjwoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJiZSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPtCx0LXQu9Cw0YDRg9GB0LrQsNGPPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLQsdGK0LvQs9Cw0YDRgdC60LgKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iYmciPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7QsdGK0LvQs9Cw0YDRgdC60Lg8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9ItC60YvRgNCz0YvQt9GH0LAKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ia3kiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7QutGL0YDQs9GL0LfRh9CwPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLSm9Cw0LfQsNKbINGC0ZbQu9GWCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImtrIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+0pvQsNC30LDSmyDRgtGW0LvRljwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i0LzQsNC60LXQtNC+0L3RgdC60LgKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ibWsiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7QvNCw0LrQtdC00L7QvdGB0LrQuDwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i0LzQvtC90LPQvtC7CiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9Im1uIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+0LzQvtC90LPQvtC7PC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLQoNGD0YHRgdC60LjQuQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJydSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPtCg0YPRgdGB0LrQuNC5PC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLRgdGA0L/RgdC60LgKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ic3IiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7RgdGA0L/RgdC60Lg8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9ItCj0LrRgNCw0ZfQvdGB0YzQutCwCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InVrIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+0KPQutGA0LDRl9C90YHRjNC60LA8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IuGDpeGDkOGDoOGDl+GDo+GDmuGDmAoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJrYSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPuGDpeGDkOGDoOGDl+GDo+GDmuGDmDwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i1bDVodW11aXWgNWl1bYKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iaHkiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7VsNWh1bXVpdaA1aXVtjwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i16LXkdeo15nXqgoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJpdyI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPtei15HXqNeZ16o8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9Itin2LHYr9mICiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InVyIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+2KfYsdiv2Yg8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9Itin2YTYudix2KjZitipCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImFyIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+2KfZhNi52LHYqNmK2Kk8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9ItmB2KfYsdiz24wKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iZmEiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7Zgdin2LHYs9uMPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLhiqDhiJvhiK3hipsKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iYW0iPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7hiqDhiJvhiK3hips8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IuCkqOClh+CkquCkvuCksuClgAoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJuZSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPuCkqOClh+CkquCkvuCksuClgDwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i4KSu4KSw4KS+4KSg4KWACiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9Im1yIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+4KSu4KSw4KS+4KSg4KWAPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLgpLngpL/gpKjgpY3gpKbgpYAKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iaGkiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7gpLngpL/gpKjgpY3gpKbgpYA8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IuCmheCmuOCmruCngOCmr+CmvOCmvgoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJhcyI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPuCmheCmuOCmruCngOCmr+CmvOCmvjwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i4Kas4Ka+4KaC4Kay4Ka+CiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImJuIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+4Kas4Ka+4KaC4Kay4Ka+PC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLgqKrgqbDgqJzgqL7gqKzgqYAKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0icGEiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7gqKrgqbDgqJzgqL7gqKzgqYA8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IuCql+CrgeCqnOCqsOCqvuCqpOCrgAoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJndSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPuCql+CrgeCqnOCqsOCqvuCqpOCrgDwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i4KyT4Kyh4Ky84Ky/4KyGCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9Im9yIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+4KyT4Kyh4Ky84Ky/4KyGPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLgrqTgrq7grr/grrTgr40KIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0idGEiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7grqTgrq7grr/grrTgr408L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IuCwpOCxhuCwsuCxgeCwl+CxgQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJ0ZSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPuCwpOCxhuCwsuCxgeCwl+CxgTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i4LKV4LKo4LON4LKo4LKhCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImtuIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+4LKV4LKo4LON4LKo4LKhPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLgtK7gtLLgtK/gtL7gtLPgtIIKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ibWwiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7gtK7gtLLgtK/gtL7gtLPgtII8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IuC3g+C3kuC2guC3hOC2vQoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJzaSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPuC3g+C3kuC2guC3hOC2vTwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i4LmE4LiX4LiiCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InRoIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+4LmE4LiX4LiiPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLguqXgurLguqcKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ibG8iPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7guqXgurLguqc8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IuGAmeGAvOGAlOGAuuGAmeGArAoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJteSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPuGAmeGAvOGAlOGAuuGAmeGArDwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i4Z6B4Z+S4Z6Y4Z+C4Z6aCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9ImttIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+4Z6B4Z+S4Z6Y4Z+C4Z6aPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLtlZzqta3slrQKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0ia28iPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7tlZzqta3slrQ8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgRGpNa3RiIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9IuaXpeacrOiqngoiIHJvbGU9Im1lbnVpdGVtIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImFCQmpiZCBNYmhVemQiIGpzbmFtZT0ia3NLc1pkIj48L2Rpdj48ZGl2IGNsYXNzPSJ1eVl1VmIgb0plV3VmIiBkYXRhLWxjPSJqYSI+PGRpdiBjbGFzcz0iak83aDNjIj48ZGl2IGNsYXNzPSIiPuaXpeacrOiqnjwvZGl2PjwvZGl2PjwvZGl2Pjwvc3Bhbj48c3BhbiBqc3Nsb3QgY2xhc3M9Ino4ME0xIGlTTzNFZCBEak1rdGIiIGpzYWN0aW9uPSJjbGljazpvNlphRihwcmV2ZW50RGVmYXVsdD10cnVlKTsgbW91c2Vkb3duOmxBaG56YjsgbW91c2V1cDpPc2d4Z2Y7IG1vdXNlZW50ZXI6U0t5REFlOyBtb3VzZWxlYXZlOnhxM0FQYjt0b3VjaHN0YXJ0OmpKaUJSYzsgdG91Y2htb3ZlOmtaZUJkZDsgdG91Y2hlbmQ6VmZBejgocHJldmVudE1vdXNlRXZlbnRzPXRydWUpIiBqc25hbWU9Imo3TEZsYiIgYXJpYS1sYWJlbD0i566A5L2T5Lit5paHCiIgcm9sZT0ibWVudWl0ZW0iIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iYUJCamJkIE1iaFV6ZCIganNuYW1lPSJrc0tzWmQiPjwvZGl2PjxkaXYgY2xhc3M9InV5WXVWYiBvSmVXdWYiIGRhdGEtbGM9InpoLUNOIj48ZGl2IGNsYXNzPSJqTzdoM2MiPjxkaXYgY2xhc3M9IiI+566A5L2T5Lit5paHPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjxzcGFuIGpzc2xvdCBjbGFzcz0iejgwTTEgaVNPM0VkIERqTWt0YiIganNhY3Rpb249ImNsaWNrOm82WmFGKHByZXZlbnREZWZhdWx0PXRydWUpOyBtb3VzZWRvd246bEFobnpiOyBtb3VzZXVwOk9zZ3hnZjsgbW91c2VlbnRlcjpTS3lEQWU7IG1vdXNlbGVhdmU6eHEzQVBiO3RvdWNoc3RhcnQ6akppQlJjOyB0b3VjaG1vdmU6a1plQmRkOyB0b3VjaGVuZDpWZkF6OChwcmV2ZW50TW91c2VFdmVudHM9dHJ1ZSkiIGpzbmFtZT0iajdMRmxiIiBhcmlhLWxhYmVsPSLnuYHpq5TkuK3mlocKIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iemgtVFciPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iIj7nuYHpq5TkuK3mloc8L2Rpdj48L2Rpdj48L2Rpdj48L3NwYW4+PHNwYW4ganNzbG90IGNsYXNzPSJ6ODBNMSBpU08zRWQgenlOclNjIiBqc2FjdGlvbj0iY2xpY2s6bzZaYUYocHJldmVudERlZmF1bHQ9dHJ1ZSk7IG1vdXNlZG93bjpsQWhuemI7IG1vdXNldXA6T3NneGdmOyBtb3VzZWVudGVyOlNLeURBZTsgbW91c2VsZWF2ZTp4cTNBUGI7dG91Y2hzdGFydDpqSmlCUmM7IHRvdWNobW92ZTprWmVCZGQ7IHRvdWNoZW5kOlZmQXo4KHByZXZlbnRNb3VzZUV2ZW50cz10cnVlKSIganNuYW1lPSJqN0xGbGIiIGFyaWEtbGFiZWw9Iue5gemrlOS4reaWhwrpppnmuK8KIiByb2xlPSJtZW51aXRlbSIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJhQkJqYmQgTWJoVXpkIiBqc25hbWU9ImtzS3NaZCI+PC9kaXY+PGRpdiBjbGFzcz0idXlZdVZiIG9KZVd1ZiIgZGF0YS1sYz0iemgtSEsiPjxkaXYgY2xhc3M9ImpPN2gzYyI+PGRpdiBjbGFzcz0iZmNKcURiIj7nuYHpq5TkuK3mloc8L2Rpdj48ZGl2IGNsYXNzPSJBS1k5MCI+6aaZ5rivPC9kaXY+PC9kaXY+PC9kaXY+PC9zcGFuPjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9IlNhbHhsZSI+PGRpdiBjbGFzcz0iVmZQcGtkLWRnbDJIZi1wcEhscmYtc001TU5iIiBkYXRhLWlzLXRvdWNoLXdyYXBwZXI9InRydWUiPjxkaXYgY2xhc3M9IlZmUHBrZC1MZ2JzU2UgVmZQcGtkLUxnYnNTZS1PV1hFWGUtZGdsMkhmIExqRHhjZCBYaFBBMGIgTVZJa2ljIiBqc2NvbnRyb2xsZXI9Im5LdUZwYiIganNhY3Rpb249ImNsaWNrOmNPdUNnZDsgbW91c2Vkb3duOlVYN3laOyBtb3VzZXVwOmxic0Q3ZTsgbW91c2VlbnRlcjp0Zk8xWWM7IG1vdXNlbGVhdmU6Snl3R3VlOyB0b3VjaHN0YXJ0OnA2cDJIOyB0b3VjaG1vdmU6Rnd1Tm5mOyB0b3VjaGVuZDp5ZnFCeGM7IHRvdWNoY2FuY2VsOkpNdFJqZDsgZm9jdXM6QUhtdXdlOyBibHVyOk8yMnAzZTsgY29udGV4dG1lbnU6bWc5UGVmOyI+PGRpdiBjbGFzcz0iVmZQcGtkLUpoOWxHYyI+PC9kaXY+PHNwYW4ganNuYW1lPSJWNjdhR2MiIGNsYXNzPSJWZlBwa2QtdlF6ZjhkIiBhcmlhLWhpZGRlbj0idHJ1ZSI+UHJpdmFjeSBQb2xpY3k8L3NwYW4+PGEgY2xhc3M9IldwSGVMYyBWZlBwa2QtUkxtbkpiIiBocmVmPSJodHRwczovL3BvbGljaWVzLmdvb2dsZS5jb20vcHJpdmFjeT9obD1lbiIgdGFyZ2V0PSJfYmxhbmsiIGFyaWEtbGFiZWw9IlByaXZhY3kgUG9saWN5IiBqc25hbWU9ImhTUkdQZCI+PC9hPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9IlZmUHBrZC1kZ2wySGYtcHBIbHJmLXNNNU1OYiIgZGF0YS1pcy10b3VjaC13cmFwcGVyPSJ0cnVlIj48ZGl2IGNsYXNzPSJWZlBwa2QtTGdic1NlIFZmUHBrZC1MZ2JzU2UtT1dYRVhlLWRnbDJIZiBMakR4Y2QgWGhQQTBiIE1WSWtpYyIganNjb250cm9sbGVyPSJuS3VGcGIiIGpzYWN0aW9uPSJjbGljazpjT3VDZ2Q7IG1vdXNlZG93bjpVWDd5WjsgbW91c2V1cDpsYnNEN2U7IG1vdXNlZW50ZXI6dGZPMVljOyBtb3VzZWxlYXZlOkp5d0d1ZTsgdG91Y2hzdGFydDpwNnAySDsgdG91Y2htb3ZlOkZ3dU5uZjsgdG91Y2hlbmQ6eWZxQnhjOyB0b3VjaGNhbmNlbDpKTXRSamQ7IGZvY3VzOkFIbXV3ZTsgYmx1cjpPMjJwM2U7IGNvbnRleHRtZW51Om1nOVBlZjsiPjxkaXYgY2xhc3M9IlZmUHBrZC1KaDlsR2MiPjwvZGl2PjxzcGFuIGpzbmFtZT0iVjY3YUdjIiBjbGFzcz0iVmZQcGtkLXZRemY4ZCIgYXJpYS1oaWRkZW49InRydWUiPlRlcm1zIG9mIFNlcnZpY2U8L3NwYW4+PGEgY2xhc3M9IldwSGVMYyBWZlBwa2QtUkxtbkpiIiBocmVmPSJodHRwczovL3BvbGljaWVzLmdvb2dsZS5jb20vdGVybXM/aGw9ZW4iIHRhcmdldD0iX2JsYW5rIiBhcmlhLWxhYmVsPSJUZXJtcyBvZiBTZXJ2aWNlIiBqc25hbWU9ImhTUkdQZCI+PC9hPjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjxjLWRhdGEgaWQ9ImkxIiBqc2RhdGE9IiBwSExPS2Q7XzsxIj48L2MtZGF0YT48L2Mtd2l6PjxzY3JpcHQgYXJpYS1oaWRkZW49InRydWUiIG5vbmNlPSJTaExIUEpiUUhQNGV1cXRhV2NwclBRIj53aW5kb3cud2l6X3Byb2dyZXNzJiZ3aW5kb3cud2l6X3Byb2dyZXNzKCk7d2luZG93Lndpel90aWNrJiZ3aW5kb3cud2l6X3RpY2soJ0RUdEQ0Jyk7PC9zY3JpcHQ+PHNjcmlwdCBub25jZT0iU2hMSFBKYlFIUDRldXF0YVdjcHJQUSI+KGZ1bmN0aW9uKCl7J3VzZSBzdHJpY3QnO3ZhciBjPXdpbmRvdyxkPVtdO2MuYWZ0X2NvdW50ZXI9ZDt2YXIgZT1bXSxmPTA7ZnVuY3Rpb24gX3JlY29yZElzQWJvdmVGb2xkKGEpe2lmKCFjLl9pc0xhenlJbWFnZShhKSYmIWEuaGFzQXR0cmlidXRlKCJkYXRhLW5vYWZ0IikmJmEuc3JjKXt2YXIgYj0oYy5faXNWaXNpYmxlfHxmdW5jdGlvbigpe30pKGMuZG9jdW1lbnQsYSk7YS5zZXRBdHRyaWJ1dGUoImRhdGEtYXRmIixiKTtiJiYoLTE9PT1lLmluZGV4T2YoYSkmJi0xPT09ZC5pbmRleE9mKGEpJiZkLnB1c2goYSksYS5oYXNBdHRyaWJ1dGUoImRhdGEtaW1sIikmJihhPU51bWJlcihhLmdldEF0dHJpYnV0ZSgiZGF0YS1pbWwiKSksYT5mJiYoZj1hKSkpfX0KYy5pbml0QWZ0PWZ1bmN0aW9uKCl7Zj0wO2U9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImltZyIpKS5maWx0ZXIoZnVuY3Rpb24oYSl7cmV0dXJuISFhLmdldEF0dHJpYnV0ZSgiZGF0YS1pbWwiKX0pO1tdLmZvckVhY2guY2FsbChkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaW1nIiksZnVuY3Rpb24oYSl7dHJ5e19yZWNvcmRJc0Fib3ZlRm9sZChhKX1jYXRjaChiKXt0aHJvdyBiLm1lc3NhZ2U9YS5oYXNBdHRyaWJ1dGUoImRhdGEtaWlkIik/Yi5tZXNzYWdlKyJcbnJlY29yZElzQWJvdmVGb2xkIGVycm9yIGZvciBkZWZlciBpbmxpbmVkIGltYWdlIjpiLm1lc3NhZ2UrKCJcbnJlY29yZElzQWJvdmVGb2xkIGVycm9yIGZvciBpbWcgZWxlbWVudCB3aXRoIDxzcmM6ICIrYS5zcmMrIj4iKSxiO319KTtpZigwPT09ZC5sZW5ndGgpYy5vbmFmdChmKX07fSkuY2FsbCh0aGlzKTsKaW5pdEFmdCgpPC9zY3JpcHQ+PHNjcmlwdCBpZD0iX2lqIiBub25jZT0iU2hMSFBKYlFIUDRldXF0YVdjcHJQUSI+d2luZG93LklKX3ZhbHVlcyA9IFtbbnVsbCxudWxsLCIiLGZhbHNlLG51bGwsbnVsbCx0cnVlLGZhbHNlXQosJzAnLCdodHRwczpcL1wvY29uc2VudC55b3V0dWJlLmNvbVwvJywgbnVsbCAsJ2JvcV9pZGVudGl0eWZyb250ZW5kdWlzZXJ2ZXJfMjAyMTAzMjguMTdfcDAnLCdjb25zZW50LnlvdXR1YmUuY29tJywgMC4wICwnJywnU2hMSFBKYlFIUDRldXF0YVdjcHJQUScsJ1NoTEhQSmJRSFA0ZXVxdGFXY3ByUFEnLCcnLCAyMDIxLjAgLCdodHRwczpcL1wvY29uc2VudC55b3V0dWJlLmNvbVwvbScsIG51bGwgLCdsdHInLCdodHRwczpcL1wvYWNjb3VudHMuZ29vZ2xlLmNvbVwvQWNjb3VudENob29zZXI/Y29udGludWVceDNkaHR0cHM6XC9cL2NvbnNlbnQueW91dHViZS5jb21cL20/Y29udGludWUlM0RodHRwczpcL1wvd3d3LnlvdXR1YmUuY29tXC9wbGF5bGlzdD9saXN0JTI1M0RVVU9HZVUtMUZpZzNyckRqaG05WnNfd2clMjZnbCUzRERFJTI2bSUzRDAlMjZwYyUzRHl0JTI2dXhlJTNEMjQwMjAzODglMjZobCUzRGVuJTI2c3JjJTNEMVx4MjZobFx4M2RlbicsJ2h0dHBzOlwvXC9hY2NvdW50cy5nb29nbGUuY29tXC9TZXJ2aWNlTG9naW4/aGxceDNkZW5ceDI2Y29udGludWVceDNkaHR0cHM6XC9cL2NvbnNlbnQueW91dHViZS5jb21cL20/Y29udGludWUlM0RodHRwczpcL1wvd3d3LnlvdXR1YmUuY29tXC9wbGF5bGlzdD9saXN0JTI1M0RVVU9HZVUtMUZpZzNyckRqaG05WnNfd2clMjZnbCUzRERFJTI2bSUzRDAlMjZwYyUzRHl0JTI2dXhlJTNEMjQwMjAzODglMjZobCUzRGVuJTI2c3JjJTNEMScsJ2h0dHBzOlwvXC9hY2NvdW50cy5nb29nbGUuY29tXC9TaWduT3V0T3B0aW9ucz9jb250aW51ZVx4M2RodHRwczpcL1wvY29uc2VudC55b3V0dWJlLmNvbVwvbT9jb250aW51ZSUzRGh0dHBzOlwvXC93d3cueW91dHViZS5jb21cL3BsYXlsaXN0P2xpc3QlMjUzRFVVT0dlVS0xRmlnM3JyRGpobTlac193ZyUyNmdsJTNEREUlMjZtJTNEMCUyNnBjJTNEeXQlMjZ1eGUlM0QyNDAyMDM4OCUyNmhsJTNEZW4lMjZzcmMlM0QxJywgZmFsc2UgLCdlbicsJ2VuJywnZW4nLCBudWxsICwnaHR0cHM6XC9cL215YWNjb3VudC5nb29nbGUuY29tXC9wcml2YWN5cG9saWN5P2hsXHgzZGVuJywgZmFsc2UgLCdodHRwczpcL1wvbXlhY2NvdW50Lmdvb2dsZS5jb21cL3Rlcm1zb2ZzZXJ2aWNlP2hsXHgzZGVuJywgbnVsbCAsIGZhbHNlICwgbnVsbCAsXTsgd2luZG93LklKX3ZhbHVlc0NiICYmIHdpbmRvdy5JSl92YWx1ZXNDYigpOzwvc2NyaXB0PjxzY3JpcHQgbm9uY2U9IlNoTEhQSmJRSFA0ZXVxdGFXY3ByUFEiPkFGX2luaXREYXRhQ2FsbGJhY2soe2tleTogJ2RzOjAnLCBpc0Vycm9yOiAgZmFsc2UgLCBoYXNoOiAnMScsIGRhdGE6W251bGwsbnVsbCxbWyJhZiIsIkFmcmlrYWFucyIsIiIsZmFsc2VdCixbImF6IiwiYXrJmXJiYXljYW4iLCIiLGZhbHNlXQosWyJicyIsImJvc2Fuc2tpIiwiIixmYWxzZV0KLFsiY2EiLCJjYXRhbMOgIiwiIixmYWxzZV0KLFsiY3MiLCLEjGXFoXRpbmEiLCIiLGZhbHNlXQosWyJjeSIsIkN5bXJhZWciLCIiLGZhbHNlXQosWyJkYSIsIkRhbnNrIiwiIixmYWxzZV0KLFsiZGUiLCJEZXV0c2NoIiwiIix0cnVlXQosWyJldCIsImVlc3RpIiwiIixmYWxzZV0KLFsiZW4tR0IiLCJFbmdsaXNoIiwiVW5pdGVkIEtpbmdkb20iLHRydWVdCixbImVuIiwiRW5nbGlzaCIsIlVuaXRlZCBTdGF0ZXMiLGZhbHNlXQosWyJlcyIsIkVzcGHDsW9sIiwiRXNwYcOxYSIsdHJ1ZV0KLFsiZXMtNDE5IiwiRXNwYcOxb2wiLCJMYXRpbm9hbcOpcmljYSIsZmFsc2VdCixbImV1IiwiZXVza2FyYSIsIiIsZmFsc2VdCixbImZpbCIsIkZpbGlwaW5vIiwiIixmYWxzZV0KLFsiZnItQ0EiLCJGcmFuw6dhaXMiLCJDYW5hZGEiLGZhbHNlXQosWyJmciIsIkZyYW7Dp2FpcyIsIkZyYW5jZSIsdHJ1ZV0KLFsiZ2EiLCJHYWVpbGdlIiwiIixmYWxzZV0KLFsiZ2wiLCJnYWxlZ28iLCIiLGZhbHNlXQosWyJociIsIkhydmF0c2tpIiwiIixmYWxzZV0KLFsiaWQiLCJJbmRvbmVzaWEiLCIiLGZhbHNlXQosWyJ6dSIsImlzaVp1bHUiLCIiLGZhbHNlXQosWyJpcyIsIsOtc2xlbnNrYSIsIiIsZmFsc2VdCixbIml0IiwiSXRhbGlhbm8iLCIiLHRydWVdCixbInN3IiwiS2lzd2FoaWxpIiwiIixmYWxzZV0KLFsibHYiLCJsYXR2aWXFoXUiLCIiLGZhbHNlXQosWyJsdCIsImxpZXR1dmnFsyIsIiIsZmFsc2VdCixbImh1IiwibWFneWFyIiwiIixmYWxzZV0KLFsibXMiLCJNZWxheXUiLCIiLGZhbHNlXQosWyJubCIsIk5lZGVybGFuZHMiLCIiLGZhbHNlXQosWyJubyIsIm5vcnNrIiwiIixmYWxzZV0KLFsidXoiLCJv4oCYemJlayIsIiIsZmFsc2VdCixbInBsIiwicG9sc2tpIiwiIixmYWxzZV0KLFsicHQtQlIiLCJQb3J0dWd1w6pzIiwiQnJhc2lsIixmYWxzZV0KLFsicHQtUFQiLCJQb3J0dWd1w6pzIiwiUG9ydHVnYWwiLGZhbHNlXQosWyJybyIsInJvbcOibsSDIiwiIixmYWxzZV0KLFsic3EiLCJzaHFpcCIsIiIsZmFsc2VdCixbInNrIiwiU2xvdmVuxI1pbmEiLCIiLGZhbHNlXQosWyJzbCIsInNsb3ZlbsWhxI1pbmEiLCIiLGZhbHNlXQosWyJzci1MYXRuIiwic3Jwc2tpIChsYXRpbmljYSkiLCIiLGZhbHNlXQosWyJmaSIsIlN1b21pIiwiIixmYWxzZV0KLFsic3YiLCJTdmVuc2thIiwiIixmYWxzZV0KLFsidmkiLCJUaeG6v25nIFZp4buHdCIsIiIsZmFsc2VdCixbInRyIiwiVMO8cmvDp2UiLCIiLGZhbHNlXQosWyJlbCIsIs6VzrvOu863zr3Ouc66zqwiLCIiLGZhbHNlXQosWyJiZSIsItCx0LXQu9Cw0YDRg9GB0LrQsNGPIiwiIixmYWxzZV0KLFsiYmciLCLQsdGK0LvQs9Cw0YDRgdC60LgiLCIiLGZhbHNlXQosWyJreSIsItC60YvRgNCz0YvQt9GH0LAiLCIiLGZhbHNlXQosWyJrayIsItKb0LDQt9Cw0psg0YLRltC70ZYiLCIiLGZhbHNlXQosWyJtayIsItC80LDQutC10LTQvtC90YHQutC4IiwiIixmYWxzZV0KLFsibW4iLCLQvNC+0L3Qs9C+0LsiLCIiLGZhbHNlXQosWyJydSIsItCg0YPRgdGB0LrQuNC5IiwiIixmYWxzZV0KLFsic3IiLCLRgdGA0L/RgdC60LgiLCIiLGZhbHNlXQosWyJ1ayIsItCj0LrRgNCw0ZfQvdGB0YzQutCwIiwiIixmYWxzZV0KLFsia2EiLCLhg6Xhg5Dhg6Dhg5fhg6Phg5rhg5giLCIiLGZhbHNlXQosWyJoeSIsItWw1aHVtdWl1oDVpdW2IiwiIixmYWxzZV0KLFsiaXciLCLXoteR16jXmdeqIiwiIixmYWxzZV0KLFsidXIiLCLYp9ix2K/ZiCIsIiIsZmFsc2VdCixbImFyIiwi2KfZhNi52LHYqNmK2KkiLCIiLGZhbHNlXQosWyJmYSIsItmB2KfYsdiz24wiLCIiLGZhbHNlXQosWyJhbSIsIuGKoOGIm+GIreGKmyIsIiIsZmFsc2VdCixbIm5lIiwi4KSo4KWH4KSq4KS+4KSy4KWAIiwiIixmYWxzZV0KLFsibXIiLCLgpK7gpLDgpL7gpKDgpYAiLCIiLGZhbHNlXQosWyJoaSIsIuCkueCkv+CkqOCljeCkpuClgCIsIiIsZmFsc2VdCixbImFzIiwi4KaF4Ka44Kau4KeA4Kav4Ka84Ka+IiwiIixmYWxzZV0KLFsiYm4iLCLgpqzgpr7gpoLgprLgpr4iLCIiLGZhbHNlXQosWyJwYSIsIuCoquCpsOConOCovuCorOCpgCIsIiIsZmFsc2VdCixbImd1Iiwi4KqX4KuB4Kqc4Kqw4Kq+4Kqk4KuAIiwiIixmYWxzZV0KLFsib3IiLCLgrJPgrKHgrLzgrL/grIYiLCIiLGZhbHNlXQosWyJ0YSIsIuCupOCuruCuv+CutOCvjSIsIiIsZmFsc2VdCixbInRlIiwi4LCk4LGG4LCy4LGB4LCX4LGBIiwiIixmYWxzZV0KLFsia24iLCLgspXgsqjgs43gsqjgsqEiLCIiLGZhbHNlXQosWyJtbCIsIuC0ruC0suC0r+C0vuC0s+C0giIsIiIsZmFsc2VdCixbInNpIiwi4LeD4LeS4LaC4LeE4La9IiwiIixmYWxzZV0KLFsidGgiLCLguYTguJfguKIiLCIiLGZhbHNlXQosWyJsbyIsIuC6peC6suC6pyIsIiIsZmFsc2VdCixbIm15Iiwi4YCZ4YC84YCU4YC64YCZ4YCsIiwiIixmYWxzZV0KLFsia20iLCLhnoHhn5Lhnpjhn4LhnpoiLCIiLGZhbHNlXQosWyJrbyIsIu2VnOq1reyWtCIsIiIsZmFsc2VdCixbImphIiwi5pel5pys6KqeIiwiIixmYWxzZV0KLFsiemgtQ04iLCLnroDkvZPkuK3mlociLCIiLGZhbHNlXQosWyJ6aC1UVyIsIue5gemrlOS4reaWhyIsIiIsZmFsc2VdCixbInpoLUhLIiwi57mB6auU5Lit5paHIiwi6aaZ5rivIixmYWxzZV0KXQpdCiwgc2lkZUNoYW5uZWw6IHt9fSk7PC9zY3JpcHQ+PHNjcmlwdCBpZD0id2l6X2pkIiBub25jZT0iU2hMSFBKYlFIUDRldXF0YVdjcHJQUSI+aWYgKHdpbmRvd1snX3dqZGMnXSkge2NvbnN0IHdqZCA9IHt9OyB3aW5kb3dbJ193amRjJ10od2pkKTsgZGVsZXRlIHdpbmRvd1snX3dqZGMnXTt9PC9zY3JpcHQ+PHNjcmlwdCBhcmlhLWhpZGRlbj0idHJ1ZSIgbm9uY2U9IlNoTEhQSmJRSFA0ZXVxdGFXY3ByUFEiPndpbmRvdy53aXpfcHJvZ3Jlc3MmJndpbmRvdy53aXpfcHJvZ3Jlc3MoKTsgd2luZG93LnN0b3BTY2FuRm9yQ3NzJiZ3aW5kb3cuc3RvcFNjYW5Gb3JDc3MoKTsgY2NUaWNrKCdibCcpOzwvc2NyaXB0PjwvYm9keT48L2h0bWw+
ERROR: Unable to extract yt initial data; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/usr/local/Cellar/youtube-dl/2021.3.31/libexec/lib/python3.9/site-packages/youtube_dl/YoutubeDL.py", line 806, in wrapper
    return func(self, *args, **kwargs)
  File "/usr/local/Cellar/youtube-dl/2021.3.31/libexec/lib/python3.9/site-packages/youtube_dl/YoutubeDL.py", line 827, in __extract_info
    ie_result = ie.extract(url)
  File "/usr/local/Cellar/youtube-dl/2021.3.31/libexec/lib/python3.9/site-packages/youtube_dl/extractor/common.py", line 534, in extract
    ie_result = self._real_extract(url)
  File "/usr/local/Cellar/youtube-dl/2021.3.31/libexec/lib/python3.9/site-packages/youtube_dl/extractor/youtube.py", line 2694, in _real_extract
    data = self._extract_yt_initial_data(item_id, webpage)
  File "/usr/local/Cellar/youtube-dl/2021.3.31/libexec/lib/python3.9/site-packages/youtube_dl/extractor/youtube.py", line 284, in _extract_yt_initial_data
    self._search_regex(
  File "/usr/local/Cellar/youtube-dl/2021.3.31/libexec/lib/python3.9/site-packages/youtube_dl/extractor/common.py", line 1012, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
youtube_dl.utils.RegexNotFoundError: Unable to extract yt initial data; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment