@co0ontty/wand 1.67.1 → 1.68.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,10 +3,10 @@ import { Buffer } from "node:buffer";
3
3
  function decode(value) {
4
4
  return Buffer.from(value, "base64").toString("utf8");
5
5
  }
6
- export const EMBEDDED_WEB_ASSET_VERSION = "0d040282ec9f";
6
+ export const EMBEDDED_WEB_ASSET_VERSION = "4789a1c9da04";
7
7
  export const EMBEDDED_WEB_ASSETS = {
8
- scriptsJs: decode("InVzZSBzdHJpY3QiOygoKT0+e3ZhciBvdT0id2FuZC1sZWdhY3ktcHdhLWNsZWFudXAtdjEiLERsPVsid2FuZC1zdGF0aWMtIiwid2FuZC1ydW50aW1lLSJdO2Z1bmN0aW9uIGpyKGUpe2lmKCFlKXJldHVybiExO3RyeXtjb25zdCB0PW5ldyBVUkwoZS5zY3JpcHRVUkwsbG9jYXRpb24uaHJlZik7cmV0dXJuIHQub3JpZ2luPT09bG9jYXRpb24ub3JpZ2luJiZ0LnBhdGhuYW1lPT09Ii9zdy5qcyJ9Y2F0Y2h7cmV0dXJuITF9fWZ1bmN0aW9uIGtsKGUpe3JldHVybiBqcihlLmluc3RhbGxpbmcpfHxqcihlLndhaXRpbmcpfHxqcihlLmFjdGl2ZSl9ZnVuY3Rpb24gQWwoKXt0cnl7cmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKG91KT09PSJkb25lIn1jYXRjaHtyZXR1cm4hMX19ZnVuY3Rpb24geGwoKXt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0ob3UsImRvbmUiKX1jYXRjaHt9fWFzeW5jIGZ1bmN0aW9uIFNsKCl7aWYoISgic2VydmljZVdvcmtlciJpbiBuYXZpZ2F0b3IpKXJldHVybiEwO3RyeXtjb25zdCB0PShhd2FpdCBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5nZXRSZWdpc3RyYXRpb25zKCkpLmZpbHRlcihrbCk7cmV0dXJuIGF3YWl0IFByb21pc2UuYWxsKHQubWFwKG49Pm4udW5yZWdpc3RlcigpKSksITB9Y2F0Y2h7cmV0dXJuITF9fWFzeW5jIGZ1bmN0aW9uIElsKCl7aWYoISgiY2FjaGVzImluIHdpbmRvdykpcmV0dXJuITA7dHJ5e2NvbnN0IHQ9KGF3YWl0IGNhY2hlcy5rZXlzKCkpLmZpbHRlcihuPT5EbC5zb21lKGk9Pm4uc3RhcnRzV2l0aChpKSkpO3JldHVybiBhd2FpdCBQcm9taXNlLmFsbCh0Lm1hcChuPT5jYWNoZXMuZGVsZXRlKG4pKSksITB9Y2F0Y2h7cmV0dXJuITF9fWFzeW5jIGZ1bmN0aW9uIFRsKCl7aWYoQWwoKSlyZXR1cm47Y29uc3QgZT0ic2VydmljZVdvcmtlciJpbiBuYXZpZ2F0b3ImJmpyKG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLmNvbnRyb2xsZXIpLFt0LG5dPWF3YWl0IFByb21pc2UuYWxsKFtTbCgpLElsKCldKTshdHx8IW58fCh4bCgpLGUmJmxvY2F0aW9uLnJlbG9hZCgpKX1UbCgpO3ZhciBRbT0iJHtlc2NhcGVIdG1sKGNvbmZpZ1BhdGgpfSIsUGk9IndhbmQtY2hhdC1leHBhbmQtc3RhdGUtdjEiLFJyPVtmdW5jdGlvbigpe31dOyhmdW5jdGlvbigpe3RyeXt2YXIgdD1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC1scy1zY2hlbWEiKSxuPXQ9PW51bGw/MDpwYXJzZUludCh0LDEwKTtuPj0wfHwobj0wKTtmb3IodmFyIGk9bjtpPFJyLmxlbmd0aDtpKyspdHJ5e1JyW2ldKCl9Y2F0Y2h7fW48UnIubGVuZ3RoJiZsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1scy1zY2hlbWEiLFN0cmluZyhSci5sZW5ndGgpKX1jYXRjaHt9fSkoKTtmdW5jdGlvbiBxaShlLHQpe3RyeXt2YXIgbj1sb2NhbFN0b3JhZ2UuZ2V0SXRlbShlKTtyZXR1cm4gbj09PSJ0cnVlIj8hMDpuPT09ImZhbHNlIj8hMTp0fWNhdGNoe3JldHVybiB0fX1mdW5jdGlvbiBTZShlLHQpe3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbShlLFN0cmluZyghIXQpKX1jYXRjaHt9fXZhciByPXtzZWxlY3RlZElkOihmdW5jdGlvbigpe3RyeXt2YXIgZT1uZXcgVVJMKHdpbmRvdy5sb2NhdGlvbi5ocmVmKSx0PWUuc2VhcmNoUGFyYW1zLmdldCgic2Vzc2lvbiIpO2lmKHQpcmV0dXJuIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLXNlbGVjdGVkLXNlc3Npb24iLHQpLGUuc2VhcmNoUGFyYW1zLmRlbGV0ZSgic2Vzc2lvbiIpLGhpc3RvcnkucmVwbGFjZVN0YXRlKGhpc3Rvcnkuc3RhdGUsIiIsZS50b1N0cmluZygpKSx0fWNhdGNoe310cnl7cmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLXNlbGVjdGVkLXNlc3Npb24iKXx8bnVsbH1jYXRjaHtyZXR1cm4gbnVsbH19KSgpLHBvbGxUaW1lcjpudWxsLGNvbmZpZzpudWxsLHNlc3Npb25zOltdLHN1Z2dlc3Rpb25UaW1lcjpudWxsLHRlcm1pbmFsOm51bGwsdGVybWluYWxGaXRJblByb2dyZXNzOiExLHRlcm1pbmFsU2Vzc2lvbklkOm51bGwsdGVybWluYWxPdXRwdXQ6IiIsdGVybWluYWxPdXRwdXRNYXJrZXI6MCx0ZXJtaW5hbExpdmVTdHJlYW1TZXNzaW9uczp7fSxzeW5jT3V0cHV0QnVmZmVyOm51bGwsc3luY091dHB1dERlYWRsaW5lOjAsc3luY0ZyYW1pbmdSZXNpZHVlOiExLGxhc3RDaHVua0F0OjAsdGVybWluYWxIZWFsdGhUaW1lcjpudWxsLGxhc3RUZXJtaW5hbFJlc3luY0F0OjAsdGVybWluYWxBdXRvRm9sbG93OiEwLHRlcm1pbmFsUHJvZ3JhbW1hdGljU2Nyb2xsVW50aWw6MCx0ZXJtaW5hbFNjcm9sbElkbGVUaW1lcjpudWxsLHRlcm1pbmFsU2Nyb2xsVGhyZXNob2xkOjEyLHNob3dUZXJtaW5hbEp1bXBUb0JvdHRvbTohMSx0ZXJtaW5hbFZpZXdwb3J0RWw6bnVsbCx0ZXJtaW5hbFZpZXdwb3J0U2Nyb2xsSGFuZGxlcjpudWxsLHRlcm1pbmFsVmlld3BvcnRUb3VjaEhhbmRsZXI6bnVsbCx0ZXJtaW5hbFZpZXdwb3J0VG91Y2hTdGFydEhhbmRsZXI6bnVsbCx0ZXJtaW5hbFRvdWNoU3RhcnRZOjAsdGVybWluYWxDb21wb3Npbmc6ITEscmVzaXplT2JzZXJ2ZXI6bnVsbCxyZXNpemVIYW5kbGVyOm51bGwscmVzaXplVGltZXI6bnVsbCxpbnB1dFF1ZXVlOlByb21pc2UucmVzb2x2ZSgpLHBlbmRpbmdNZXNzYWdlczpbXSxtZXNzYWdlUXVldWU6W10sY3Jvc3NTZXNzaW9uUXVldWU6KGZ1bmN0aW9uKCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLWNyb3NzLXNlc3Npb24tcXVldWUiKSx0PWU/SlNPTi5wYXJzZShlKTpbXTtyZXR1cm4gQXJyYXkuaXNBcnJheSh0KT90OltdfWNhdGNoe3JldHVybltdfX0pKCksc3RydWN0dXJlZElucHV0UXVldWU6W10scXVldWVCYXJFeHBhbmRlZDohMSxxdWV1ZUJhckhvdmVySW5kZXg6bnVsbCxxdWV1ZUJhckRyYWc6bnVsbCxxdWV1ZUJhclByb21vdGluZzohMSxkcmFmdHM6e30saXNTeW5jaW5nSW5wdXRCb3g6ITEsbG9naW5QZW5kaW5nOiExLGxvZ2luQ2hlY2tlZDohMSxib290c3RyYXBwaW5nOiEwLHNlc3Npb25zRHJhd2VyT3BlbjpxaSgid2FuZC1zaWRlYmFyLW9wZW4iLCExKSxzaWRlYmFyUGlubmVkOnFpKCJ3YW5kLXNpZGViYXItcGlubmVkIiwhMCksc2lkZWJhckNvbGxhcHNlZDpxaSgid2FuZC1zaWRlYmFyLWNvbGxhcHNlZCIsITEpLG1vZGFsT3BlbjohMSxwcmVzZXRWYWx1ZToiIixjd2RWYWx1ZToiIixtb2RlVmFsdWU6Im1hbmFnZWQiLGNoYXRNb2RlOiJtYW5hZ2VkIixjaGF0TW9kZWw6KGZ1bmN0aW9uKCl7dHJ5e3JldHVybiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC1jaGF0LW1vZGVsIil8fCIifWNhdGNoe3JldHVybiIifX0pKCksY2hhdFRoaW5raW5nOihmdW5jdGlvbigpe3RyeXt2YXIgZT1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC10aGlua2luZy1lZmZvcnQiKXx8Im9mZiI7cmV0dXJuIGU9PT0ib2ZmInx8ZT09PSJzdGFuZGFyZCJ8fGU9PT0iZGVlcCJ8fGU9PT0ibWF4Ij9lOiJvZmYifWNhdGNoe3JldHVybiJvZmYifX0pKCksYXZhaWxhYmxlTW9kZWxzOltdLGF2YWlsYWJsZUNvZGV4TW9kZWxzOltdLG1vZGVsc1JlZnJlc2hpbmc6ITEsc2Vzc2lvbkNyZWF0ZUtpbmQ6InN0cnVjdHVyZWQiLHNlc3Npb25DcmVhdGVXb3JrdHJlZTohMSxzZXNzaW9uVG9vbDoiY2xhdWRlIixhY3RpdmVXb3JrdHJlZU1lcmdlU2Vzc2lvbklkOm51bGwsd29ya3RyZWVNZXJnZUNoZWNrUmVzdWx0Om51bGwsd29ya3RyZWVNZXJnZUxvYWRpbmc6ITEsd29ya3RyZWVNZXJnZVN1Ym1pdHRpbmc6ITEsd29ya3RyZWVNZXJnZUVycm9yOiIiLHByZWZlcnJlZENvbW1hbmQ6ImNsYXVkZSIsc3RydWN0dXJlZFJ1bm5lcjoiY2xhdWRlLWNsaS1wcmludCIsbGFzdFJlc2l6ZTp7Y29sczowLHJvd3M6MH0saXNPbmxpbmU6bmF2aWdhdG9yLm9uTGluZSx3czpudWxsLHdzQ29ubmVjdGVkOiExLGxhc3RXc01lc3NhZ2VBdDowLHdzSGVhcnRiZWF0Q2hlY2tUaW1lcjpudWxsLF91cGRhdGVCdWJibGVTaG93bjohMSxub3RpZmljYXRpb25IaXN0b3J5Ont9LGRlbGF5ZWROb3RpZmljYXRpb25UaW1lcjpudWxsLG5vdGlmU291bmQ6KGZ1bmN0aW9uKCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLW5vdGlmLXNvdW5kIik7cmV0dXJuIGU9PT1udWxsPyEwOmU9PT0idHJ1ZSJ9Y2F0Y2h7cmV0dXJuITB9fSkoKSxub3RpZlZvbHVtZTooZnVuY3Rpb24oKXt0cnl7dmFyIGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtbm90aWYtdm9sdW1lIik7cmV0dXJuIGU9PT1udWxsPzgwOk1hdGgubWF4KDAsTWF0aC5taW4oMTAwLHBhcnNlSW50KGUsMTApfHw4MCkpfWNhdGNoe3JldHVybiA4MH19KSgpLG5vdGlmQnViYmxlOihmdW5jdGlvbigpe3RyeXt2YXIgZT1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC1ub3RpZi1idWJibGUiKTtyZXR1cm4gZT09PW51bGw/ITA6ZT09PSJ0cnVlIn1jYXRjaHtyZXR1cm4hMH19KSgpLHRvb2xDb250ZW50Q2FjaGU6e30sbGFzdFNlcUJ5U2Vzc2lvbjp7fSxjdXJyZW50VmlldzoidGVybWluYWwiLHRlcm1pbmFsU2NhbGU6KGZ1bmN0aW9uKCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLXRlcm1pbmFsLXNjYWxlIik7cmV0dXJuIGU/cGFyc2VGbG9hdChlKToxfWNhdGNoe3JldHVybiAxfX0pKCksdGVybWluYWxCYXNlRm9udFNpemU6MTMsa2V5Ym9hcmRQb3B1cE9wZW46ITEsZmlsZVBhbmVsT3BlbjooZnVuY3Rpb24oKXt0cnl7cmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLWZpbGUtcGFuZWwtb3BlbiIpPT09InRydWUifWNhdGNoe3JldHVybiExfX0pKCksdG9wYmFyTW9yZU9wZW46ITEsZ2l0U3RhdHVzOm51bGwsZ2l0U3RhdHVzU2Vzc2lvbklkOm51bGwsZ2l0U3RhdHVzTG9hZGluZzohMSxnaXRTdGF0dXNJbmZsaWdodDpudWxsLGdpdFN0YXR1c0xhc3RGZXRjaEF0OjAscXVpY2tDb21taXRPcGVuOiExLHF1aWNrQ29tbWl0U3VibWl0dGluZzohMSxxdWlja0NvbW1pdEdlbmVyYXRpbmc6ITEscXVpY2tDb21taXRFcnJvcjoiIixxdWlja0NvbW1pdEZvcm06e2N1c3RvbU1lc3NhZ2U6IiIsdGFnOiIiLHRhZ0VkaXRlZDohMX0scXVpY2tDb21taXRQdXNoaW5nOiExLHF1aWNrQ29tbWl0UHVzaEVycm9yOiIiLHF1aWNrQ29tbWl0UmVzdWx0Om51bGwscXVpY2tDb21taXREcmFnQWN0aW9uOiJjb21taXQiLHF1aWNrQ29tbWl0U3VibW9kdWxlSW50ZW50OiExLGNoYXRTdGlja1RvQm90dG9tOiEwLGNoYXRVbnJlYWRDb3VudDowLGNoYXRVbnJlYWRTdGFydEluZGV4Oi0xLGNoYXRTY3JvbGxUaHJlc2hvbGQ6MTYwLGNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbDohMSxjaGF0U2Nyb2xsRWxlbWVudDpudWxsLGNoYXRTY3JvbGxIYW5kbGVyOm51bGwsY2hhdFNjcm9sbFdoZWVsSGFuZGxlcjpudWxsLGNoYXRTY3JvbGxUb3VjaFN0YXJ0SGFuZGxlcjpudWxsLGNoYXRTY3JvbGxUb3VjaE1vdmVIYW5kbGVyOm51bGwsY2hhdFRvdWNoU3RhcnRZOjAsY2hhdEluaXRpYWxSZW5kZXJEb25lOiExLGxhc3RGb3JlZ3JvdW5kU3luY0F0OjAsZm9yZWdyb3VuZFN5bmNUaW1lcjpudWxsLHdzUmVjb25uZWN0QXR0ZW1wdHM6MCx3c1JlY29ubmVjdFRpbWVyOm51bGwsY3VycmVudE1lc3NhZ2VzOltdLGxhc3RSZW5kZXJlZEhhc2g6MCxsYXN0UmVuZGVyZWRNc2dDb3VudDowLGxhc3RSZW5kZXJlZEVtcHR5Om51bGwscmVuZGVyUGVuZGluZzohMSxjaGF0UGFnZVNpemU6MjAsY2hhdFJlbmRlcmVkQ291bnQ6MjAsY3VycmVudFRhc2s6bnVsbCx0ZXJtaW5hbEludGVyYWN0aXZlOiExLG1pbmlLZXlib2FyZFZpc2libGU6ITEsbW9kaWZpZXJzOntjdHJsOiExLGFsdDohMSxzaGlmdDohMX0sam95c3RpY2tQb3M6KGZ1bmN0aW9uKCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLWJhbGwtcG9zIik7aWYoIWUpcmV0dXJuIG51bGw7dmFyIHQ9SlNPTi5wYXJzZShlKTtyZXR1cm4gdCYmdHlwZW9mIHQ9PSJvYmplY3QiP3Q6bnVsbH1jYXRjaHtyZXR1cm4gbnVsbH19KSgpLGpveXN0aWNrUGlubmVkT3BlbjohMSxqb3lzdGlja1Jvb3RFbDpudWxsLGpveXN0aWNrUGFuZWxFbDpudWxsLGpveXN0aWNrQmFja2Ryb3BFbDpudWxsLGpveXN0aWNrQmFsbEVsOm51bGwsam95c3RpY2tQb2ludGVySWQ6bnVsbCxqb3lzdGlja0dlc3R1cmU6bnVsbCxqb3lzdGlja1ByZXNzU3RhcnQ6bnVsbCxqb3lzdGlja0xvbmdQcmVzc1RpbWVyOm51bGwsam95c3RpY2tNb3ZlSGFuZGxlcjpudWxsLGpveXN0aWNrVXBIYW5kbGVyOm51bGwsam95c3RpY2tSZXNpemVIYW5kbGVyOm51bGwsZmlsZVNlYXJjaFF1ZXJ5OiIiLGZpbGVFeHBsb3JlckxvYWRpbmc6ITEsYWxsRmlsZXM6W10sZmlsZUV4cGxvcmVyQ3dkOiIiLGZpbGVFeHBsb3JlclRydW5jYXRlZDohMSxmaWxlRXhwbG9yZXJUb3RhbDowLGNsYXVkZUhpc3Rvcnk6W10sY2xhdWRlSGlzdG9yeUxvYWRlZDohMSxjbGF1ZGVIaXN0b3J5RXhwYW5kZWQ6ITEsY2xhdWRlSGlzdG9yeUV4cGFuZGVkRGlyczp7fSxhcmNoaXZlZEV4cGFuZGVkOiExLHNlc3Npb25zTWFuYWdlTW9kZTohMSxzZWxlY3RlZFNlc3Npb25JZHM6e30sc2VsZWN0ZWRDbGF1ZGVIaXN0b3J5SWRzOnt9LGNvZGV4SGlzdG9yeTpbXSxjb2RleEhpc3RvcnlMb2FkZWQ6ITEsY29kZXhIaXN0b3J5RXhwYW5kZWREaXJzOnt9LHNlbGVjdGVkQ29kZXhIaXN0b3J5SWRzOnt9LGFza1VzZXJTZWxlY3Rpb25zOnt9LHF1ZXVlRXBvY2g6MCxwZW5kaW5nQXR0YWNobWVudHM6W10sd29ya2luZ0RpcjooZnVuY3Rpb24oKXt0cnl7dmFyIGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtd29ya2luZy1kaXIiKTtyZXR1cm4gZXx8IiJ9Y2F0Y2h7cmV0dXJuIiJ9fSkoKX0sSGk9Ilx1NEUyRFx1NjU4NyIsV3I9e1x1NEUyRFx1NjU4Nzp7InN1YmFnZW50LnRhZyI6Ilx1NUI1MFx1NEVFM1x1NzQwNiIsInN1YmFnZW50LmhhbmRvZmYiOiJ7cGFyZW50fSBcdThCQTkge3N1Yn0gXHU1RTJFXHU1RkQ5Iiwic3ViYWdlbnQuaGFuZG9mZi53aXRoX2Rlc2MiOiJ7cGFyZW50fSBcdThCQTkge3N1Yn0gXHU1RTJFXHU1RkQ5XHVGRjFBIiwic3ViYWdlbnQuY29udGludWVkIjoiXHU3RUU3XHU3RUVEXHU4RjkzXHU1MUZBIiwic3ViYWdlbnQudGFzay5kb25lIjoiXHU0RUZCXHU1MkExXHU1QjhDXHU2MjEwIiwic3ViYWdlbnQudGFzay5mYWlsZWQiOiJcdTRFRkJcdTUyQTFcdTU5MzFcdThEMjUiLCJzdWJhZ2VudC5ydW5uaW5nIjoiXHU4RkQwXHU4ODRDXHU0RTJEIiwic3ViYWdlbnQubm9fb3V0cHV0IjoiXHVGRjA4XHU2NUUwXHU4RjkzXHU1MUZBXHVGRjA5Iiwic3ViYWdlbnQuaGVscGVyX2ZhbGxiYWNrX3ByZWZpeCI6Ilx1NTM0Rlx1NEY1Q1x1NzMyQlx4QjciLCJzdWJhZ2VudC50aXRsZV9hcmlhIjoiXHU3MEI5XHU1MUZCXHU1QzU1XHU1RjAwIC8gXHU2NTM2XHU4RDc3XHU1QjUwXHU0RUUzXHU3NDA2XHU4RjkzXHU1MUZBIiwic3ViYWdlbnQudGFnX3RpdGxlIjoiXHU1QjUwXHU0RUUzXHU3NDA2IC8gc3ViYWdlbnQiLCJ1aS5leHBhbmQiOiJcdTVDNTVcdTVGMDAiLCJ1aS5jb2xsYXBzZSI6Ilx1NjUzNlx1OEQ3NyIsInVpLmV4cGFuZF9wYW5lbF9hcmlhIjoiXHU1QzU1XHU1RjAwXHU1QjUwXHU0RUUzXHU3NDA2XHU4RjkzXHU1MUZBIiwidWkuY29sbGFwc2VfcGFuZWxfYXJpYSI6Ilx1NjUzNlx1OEQ3N1x1NUI1MFx1NEVFM1x1NzQwNlx1OEY5M1x1NTFGQSIsInN0b3AuY29uZmlybS50aXRsZSI6Ilx1NTA1Q1x1NkI2Mlx1NEVGQlx1NTJBMSIsInN0b3AuY29uZmlybS5tZXNzYWdlIjoiXHU3ODZFXHU1QjlBXHU4OTgxXHU1MDVDXHU2QjYyXHU1RjUzXHU1MjREXHU2QjYzXHU1NzI4XHU4RkQwXHU4ODRDXHU3Njg0XHU0RUZCXHU1MkExXHU1NDE3XHVGRjFGIiwic3RvcC5jb25maXJtLm9rIjoiXHU1MDVDXHU2QjYyIiwic3RvcC5jb25maXJtLmNhbmNlbCI6Ilx1NTNENlx1NkQ4OCJ9LEVuZ2xpc2g6eyJzdWJhZ2VudC50YWciOiJTdWJhZ2VudCIsInN1YmFnZW50LmhhbmRvZmYiOiJ7cGFyZW50fSBhc2tlZCB7c3VifSBmb3IgaGVscCIsInN1YmFnZW50LmhhbmRvZmYud2l0aF9kZXNjIjoie3BhcmVudH0gYXNrZWQge3N1Yn0gZm9yIGhlbHAgd2l0aDogIiwic3ViYWdlbnQuY29udGludWVkIjoiY29udGludWVkIiwic3ViYWdlbnQudGFzay5kb25lIjoiVGFzayBjb21wbGV0ZSIsInN1YmFnZW50LnRhc2suZmFpbGVkIjoiVGFzayBmYWlsZWQiLCJzdWJhZ2VudC5ydW5uaW5nIjoiUnVubmluZyIsInN1YmFnZW50Lm5vX291dHB1dCI6IihubyBvdXRwdXQpIiwic3ViYWdlbnQuaGVscGVyX2ZhbGxiYWNrX3ByZWZpeCI6IkhlbHBlclx4QjciLCJzdWJhZ2VudC50aXRsZV9hcmlhIjoiQ2xpY2sgdG8gZXhwYW5kIC8gY29sbGFwc2Ugc3ViYWdlbnQgb3V0cHV0Iiwic3ViYWdlbnQudGFnX3RpdGxlIjoiU3ViYWdlbnQiLCJ1aS5leHBhbmQiOiJFeHBhbmQiLCJ1aS5jb2xsYXBzZSI6IkNvbGxhcHNlIiwidWkuZXhwYW5kX3BhbmVsX2FyaWEiOiJFeHBhbmQgc3ViYWdlbnQgb3V0cHV0IiwidWkuY29sbGFwc2VfcGFuZWxfYXJpYSI6IkNvbGxhcHNlIHN1YmFnZW50IG91dHB1dCIsInN0b3AuY29uZmlybS50aXRsZSI6IlN0b3AgdGFzayIsInN0b3AuY29uZmlybS5tZXNzYWdlIjoiU3RvcCB0aGUgdGFzayB0aGF0J3MgY3VycmVudGx5IHJ1bm5pbmc/Iiwic3RvcC5jb25maXJtLm9rIjoiU3RvcCIsInN0b3AuY29uZmlybS5jYW5jZWwiOiJDYW5jZWwifX07ZnVuY3Rpb24gbHUoKXt2YXIgZT1yLmNvbmZpZyYmdHlwZW9mIHIuY29uZmlnLmxhbmd1YWdlPT0ic3RyaW5nIj9yLmNvbmZpZy5sYW5ndWFnZS50cmltKCk6IiI7aWYoIWUpcmV0dXJuIEhpO2lmKFdyW2VdKXJldHVybiBlO3ZhciB0PWUudG9Mb3dlckNhc2UoKTtyZXR1cm4gdD09PSJlbmdsaXNoInx8dD09PSJlbiJ8fHQuaW5kZXhPZigiZW5nbGlzaCIpPT09MHx8dC5pbmRleE9mKCJcdTgyRjEiKT09PTA/IkVuZ2xpc2giOnQ9PT0iXHU0RTJEXHU2NTg3Inx8dD09PSJ6aCJ8fHQuaW5kZXhPZigiemgiKT09PTB8fHQuaW5kZXhPZigiXHU0RTJEIik9PT0wfHx0LmluZGV4T2YoImNoaW5lc2UiKT09PTA/Ilx1NEUyRFx1NjU4NyI6IkVuZ2xpc2gifWZ1bmN0aW9uIExlKGUsdCl7dmFyIG49bHUoKSxpPVdyW25dfHxXcltIaV0sYT1pJiZlIGluIGk/aVtlXTpudWxsO2lmKGE9PW51bGwpe3ZhciB1PVdyW0hpXTthPXUmJmUgaW4gdT91W2VdOmV9aWYodCYmdHlwZW9mIGE9PSJzdHJpbmciKWZvcih2YXIgcyBpbiB0KU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LHMpJiYoYT1hLnNwbGl0KCJ7IitzKyJ9Iikuam9pbih0W3NdKSk7cmV0dXJuIGF9dmFyIExsPXtzaGllbGQ6JzxwYXRoIGQ9Ik0xMiAyMnM4LTQgOC0xMFY1bC04LTMtOCAzdjdjMCA2IDggMTAgOCAxMHoiLz4nLHNoaWVsZENoZWNrOic8cGF0aCBkPSJNMTIgMjJzOC00IDgtMTBWNWwtOC0zLTggM3Y3YzAgNiA4IDEwIDggMTB6Ii8+PHBvbHlsaW5lIHBvaW50cz0iOSAxMiAxMSAxNCAxNSAxMCIvPicsa2V5Ym9hcmQ6JzxyZWN0IHg9IjIiIHk9IjYiIHdpZHRoPSIyMCIgaGVpZ2h0PSIxMiIgcng9IjIiLz48bGluZSB4MT0iNiIgeTE9IjEwIiB4Mj0iNiIgeTI9IjEwIi8+PGxpbmUgeDE9IjEwIiB5MT0iMTAiIHgyPSIxMCIgeTI9IjEwIi8+PGxpbmUgeDE9IjE0IiB5MT0iMTAiIHgyPSIxNCIgeTI9IjEwIi8+PGxpbmUgeDE9IjE4IiB5MT0iMTAiIHgyPSIxOCIgeTI9IjEwIi8+PGxpbmUgeDE9IjYiIHkxPSIxNCIgeDI9IjYiIHkyPSIxNCIvPjxsaW5lIHgxPSIxOCIgeTE9IjE0IiB4Mj0iMTgiIHkyPSIxNCIvPjxsaW5lIHgxPSI5IiB5MT0iMTQiIHgyPSIxNSIgeTI9IjE0Ii8+Jyx0ZXJtaW5hbDonPHBvbHlsaW5lIHBvaW50cz0iNCA3IDkgMTIgNCAxNyIvPjxsaW5lIHgxPSIxMiIgeTE9IjE3IiB4Mj0iMjAiIHkyPSIxNyIvPicsY2hhdDonPHBhdGggZD0iTTIxIDEyYTggOCAwIDAgMS0xMi45IDYuM0wzIDIwbDEuNy01LjFBOCA4IDAgMSAxIDIxIDEyeiIvPicsZm9sZGVyOic8cGF0aCBkPSJNMyA3YTIgMiAwIDAgMSAyLTJoNGwyIDJoOGEyIDIgMCAwIDEgMiAydjhhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJ6Ii8+Jyx0cmFzaDonPHBvbHlsaW5lIHBvaW50cz0iMyA2IDUgNiAyMSA2Ii8+PHBhdGggZD0iTTE5IDZsLTEgMTNhMiAyIDAgMCAxLTIgMkg4YTIgMiAwIDAgMS0yLTJMNSA2Ii8+PHBhdGggZD0iTTEwIDExdjYiLz48cGF0aCBkPSJNMTQgMTF2NiIvPjxwYXRoIGQ9Ik05IDZWNGExIDEgMCAwIDEgMS0xaDRhMSAxIDAgMCAxIDEgMXYyIi8+JyxjaGV2cm9uRG93bjonPHBvbHlsaW5lIHBvaW50cz0iNiA5IDEyIDE1IDE4IDkiLz4nLGJlbGw6JzxwYXRoIGQ9Ik0xOCAxNnYtNWE2IDYgMCAxIDAtMTIgMHY1bC0yIDJoMTZ6Ii8+PHBhdGggZD0iTTEwIDIxYTIgMiAwIDAgMCA0IDAiLz4nLG11c2ljOic8cGF0aCBkPSJNOSAxOFY1bDEyLTJ2MTMiLz48Y2lyY2xlIGN4PSI2IiBjeT0iMTgiIHI9IjMiLz48Y2lyY2xlIGN4PSIxOCIgY3k9IjE2IiByPSIzIi8+Jyx2aWJyYXRlOic8cmVjdCB4PSI5IiB5PSI0IiB3aWR0aD0iNiIgaGVpZ2h0PSIxNiIgcng9IjEiLz48cGF0aCBkPSJNNSA4djgiLz48cGF0aCBkPSJNMyAxMHY0Ii8+PHBhdGggZD0iTTE5IDh2OCIvPjxwYXRoIGQ9Ik0yMSAxMHY0Ii8+JyxnbG9iZTonPGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iOSIvPjxsaW5lIHgxPSIzIiB5MT0iMTIiIHgyPSIyMSIgeTI9IjEyIi8+PHBhdGggZD0iTTEyIDNhMTQgMTQgMCAwIDEgMCAxOCIvPjxwYXRoIGQ9Ik0xMiAzYTE0IDE0IDAgMCAwIDAgMTgiLz4nLHNtYXJ0cGhvbmU6JzxyZWN0IHg9IjYiIHk9IjIiIHdpZHRoPSIxMiIgaGVpZ2h0PSIyMCIgcng9IjIuNSIvPjxsaW5lIHgxPSIxMSIgeTE9IjE4IiB4Mj0iMTMiIHkyPSIxOCIvPicsZGVza3RvcDonPHJlY3QgeD0iMyIgeT0iNCIgd2lkdGg9IjE4IiBoZWlnaHQ9IjEyIiByeD0iMiIvPjxsaW5lIHgxPSI4IiB5MT0iMjAiIHgyPSIxNiIgeTI9IjIwIi8+PGxpbmUgeDE9IjEyIiB5MT0iMTYiIHgyPSIxMiIgeTI9IjIwIi8+JyxsaW5rOic8cGF0aCBkPSJNMTAgMTRhNC41IDQuNSAwIDAgMCA2LjM2IDBsMy0zYTQuNSA0LjUgMCAxIDAtNi4zNi02LjM2bC0xLjQyIDEuNDEiLz48cGF0aCBkPSJNMTQgMTBhNC41IDQuNSAwIDAgMC02LjM2IDBsLTMgM2E0LjUgNC41IDAgMSAwIDYuMzYgNi4zNmwxLjQyLTEuNDEiLz4nLHBhbGV0dGU6JzxjaXJjbGUgY3g9IjEzLjUiIGN5PSI2LjUiIHI9IjEiLz48Y2lyY2xlIGN4PSIxNy41IiBjeT0iMTAuNSIgcj0iMSIvPjxjaXJjbGUgY3g9IjguNSIgY3k9IjcuNSIgcj0iMSIvPjxjaXJjbGUgY3g9IjYuNSIgY3k9IjEyLjUiIHI9IjEiLz48cGF0aCBkPSJNMTIgM2E5IDkgMCAxIDAgMCAxOCAxLjUgMS41IDAgMCAwIDEuMS0yLjUgMS41IDEuNSAwIDAgMSAxLjEtMi41aDIuM0E0LjUgNC41IDAgMCAwIDIxIDExLjVDMjEgNi44IDE2Ljk3IDMgMTIgM3oiLz4nLHBsYXk6Jzxwb2x5Z29uIHBvaW50cz0iNiA0IDIwIDEyIDYgMjAgNiA0Ii8+Jyx3cmVuY2g6JzxwYXRoIGQ9Ik0xNC43IDYuM2E0IDQgMCAxIDEgNCA0bC05IDktMy41IDEgMS0zLjUgNy41LTcuNXoiLz4nLHBhdzonPGNpcmNsZSBjeD0iNy41IiBjeT0iOSIgcj0iMiIgZmlsbD0iY3VycmVudENvbG9yIiBzdHJva2U9Im5vbmUiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjYuOCIgcj0iMiIgZmlsbD0iY3VycmVudENvbG9yIiBzdHJva2U9Im5vbmUiLz48Y2lyY2xlIGN4PSIxNi41IiBjeT0iOSIgcj0iMiIgZmlsbD0iY3VycmVudENvbG9yIiBzdHJva2U9Im5vbmUiLz48Y2lyY2xlIGN4PSIxOCIgY3k9IjEzLjMiIHI9IjEuOCIgZmlsbD0iY3VycmVudENvbG9yIiBzdHJva2U9Im5vbmUiLz48cGF0aCBkPSJNNy4yIDE2LjNjLjUtMi45IDIuMy00LjggNC44LTQuOHM0LjMgMS45IDQuOCA0LjhjLjMgMS44LS45IDMuMi0yLjYgMi42LS44LS4zLTEuNC0uNi0yLjItLjZzLTEuNC4zLTIuMi42Yy0xLjcuNi0yLjktLjgtMi42LTIuNnoiIGZpbGw9ImN1cnJlbnRDb2xvciIgc3Ryb2tlPSJub25lIi8+JyxlZGl0Oic8cGF0aCBkPSJNMTIgMjBoOSIvPjxwYXRoIGQ9Ik0xNi41IDMuNWEyLjEyIDIuMTIgMCAwIDEgMyAzTDcgMTlsLTQgMSAxLTR6Ii8+JyxzaWduYWw6JzxwYXRoIGQ9Ik0yIDEyYTE1IDE1IDAgMCAxIDIwIDAiLz48cGF0aCBkPSJNNSAxNmExMCAxMCAwIDAgMSAxNCAwIi8+PHBhdGggZD0iTTkgMjBhNCA0IDAgMCAxIDYgMCIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMjAiIHI9IjAuNSIgZmlsbD0iY3VycmVudENvbG9yIi8+JyxmaWxlOic8cGF0aCBkPSJNMTQgM0g2YTIgMiAwIDAgMC0yIDJ2MTRhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0yVjl6Ii8+PHBvbHlsaW5lIHBvaW50cz0iMTQgMyAxNCA5IDIwIDkiLz4nLHNpZ21hOic8cG9seWxpbmUgcG9pbnRzPSIxOCA0IDYgNCAxMyAxMiA2IDIwIDE4IDIwIi8+Jyx4Oic8cGF0aCBkPSJNMTggNiA2IDE4Ii8+PHBhdGggZD0iTTYgNmwxMiAxMiIvPicscGx1czonPGxpbmUgeDE9IjEyIiB5MT0iNSIgeDI9IjEyIiB5Mj0iMTkiLz48bGluZSB4MT0iNSIgeTE9IjEyIiB4Mj0iMTkiIHkyPSIxMiIvPicsbWljOic8cmVjdCB4PSI5IiB5PSIzIiB3aWR0aD0iNiIgaGVpZ2h0PSIxMSIgcng9IjMiLz48cGF0aCBkPSJNNSAxMWE3IDcgMCAwIDAgMTQgMCIvPjxsaW5lIHgxPSIxMiIgeTE9IjE4IiB4Mj0iMTIiIHkyPSIyMSIvPjxsaW5lIHgxPSI5IiB5MT0iMjEiIHgyPSIxNSIgeTI9IjIxIi8+JyxwYXBlcmNsaXA6JzxwYXRoIGQ9Ik0yMS40NCAxMS4wNSAxMi4yNSAyMC4yNGE2IDYgMCAwIDEtOC40OS04LjQ5bDguODQtOC44NGE0IDQgMCAxIDEgNS42NiA1LjY2TDkuNDEgMTcuNDFhMiAyIDAgMSAxLTIuODMtMi44M2w4Ljg0LTguODMiLz4nfTtmdW5jdGlvbiBHKGUsdCl7dmFyIG49TGxbZV07aWYoIW4pcmV0dXJuIiI7dD10fHx7fTt2YXIgaT10LnNpemV8fDE0LGE9dC5zdHJva2VXaWR0aHx8MS44LHU9dC5jbHM/JyBjbGFzcz0iJyt0LmNscysnIic6IiIscz10LmZpbGx8fCJub25lIjtyZXR1cm4iPHN2ZyIrdSsnIHdpZHRoPSInK2krJyIgaGVpZ2h0PSInK2krJyIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSInK3MrJyIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iJythKyciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPicrbisiPC9zdmc+In1mdW5jdGlvbiBPbigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjaGF0LW91dHB1dCIpO2lmKCFlKXJldHVybiByLmNoYXRTY3JvbGxFbGVtZW50PW51bGwsbnVsbDt2YXIgdD1lLnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LW1lc3NhZ2VzIik7cmV0dXJuIHQ/KHIuY2hhdFNjcm9sbEVsZW1lbnQ9dCx0KTooci5jaGF0U2Nyb2xsRWxlbWVudD1udWxsLG51bGwpfWZ1bmN0aW9uIF9pKGUpe3ZhciB0PWV8fE9uKCk7cmV0dXJuIHQ/TWF0aC5hYnModC5zY3JvbGxUb3ApPHIuY2hhdFNjcm9sbFRocmVzaG9sZDohMH1mdW5jdGlvbiAkbShlKXtyLmNoYXRTdGlja1RvQm90dG9tPSEhZSxyLmNoYXRTdGlja1RvQm90dG9tJiZpcih7cmVtb3ZlRGl2aWRlcjohMH0pLFFlKCl9ZnVuY3Rpb24gaXIoZSl7ZT1lfHx7fTt2YXIgdD1yLmNoYXRVbnJlYWRDb3VudD4wfHxyLmNoYXRVbnJlYWRTdGFydEluZGV4Pj0wO2lmKHIuY2hhdFVucmVhZENvdW50PTAsci5jaGF0VW5yZWFkU3RhcnRJbmRleD0tMSxlLnJlbW92ZURpdmlkZXIhPT0hMSl7dmFyIG49T24oKTtpZihuKXt2YXIgaT1uLnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LXVucmVhZC1kaXZpZGVyIik7aSYmaS5wYXJlbnROb2RlJiZpLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoaSl9fXQmJlFlKCl9ZnVuY3Rpb24gTmkoZSl7aWYoZXx8KGU9T24oKSksISFlKXt2YXIgdD1lLnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LXVucmVhZC1kaXZpZGVyIik7aWYoci5jaGF0VW5yZWFkU3RhcnRJbmRleDwwfHxyLmNoYXRVbnJlYWRDb3VudDw9MCl7dCYmdC5wYXJlbnROb2RlJiZ0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCk7cmV0dXJufWZvcih2YXIgbj1yLmNoYXRVbnJlYWRTdGFydEluZGV4LGk9ZS5xdWVyeVNlbGVjdG9yQWxsKCIuY2hhdC1tZXNzYWdlIiksYT1udWxsLHU9MDt1PGkubGVuZ3RoO3UrKyl7dmFyIHM9aVt1XS5nZXRBdHRyaWJ1dGUoImRhdGEtbXNnLWluZGV4Iik7aWYocyE9PW51bGwpe3ZhciBvPXBhcnNlSW50KHMsMTApO2lmKCFpc05hTihvKSYmbzxuKXthPWlbdV07YnJlYWt9fX12YXIgbD1yLmNoYXRVbnJlYWRDb3VudCsiIFx1Njc2MVx1NjVCMFx1NkQ4OFx1NjA2RiI7dHx8KHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdC5jbGFzc05hbWU9ImNoYXQtdW5yZWFkLWRpdmlkZXIiLHQuc2V0QXR0cmlidXRlKCJyb2xlIiwic2VwYXJhdG9yIiksdC5pbm5lckhUTUw9JzxzcGFuIGNsYXNzPSJjaGF0LXVucmVhZC1kaXZpZGVyLWxpbmUiPjwvc3Bhbj48c3BhbiBjbGFzcz0iY2hhdC11bnJlYWQtZGl2aWRlci1sYWJlbCI+PC9zcGFuPjxzcGFuIGNsYXNzPSJjaGF0LXVucmVhZC1kaXZpZGVyLWxpbmUiPjwvc3Bhbj4nKSx0LnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LXVucmVhZC1kaXZpZGVyLWxhYmVsIikudGV4dENvbnRlbnQ9bCxhPyh0Lm5leHRTaWJsaW5nIT09YXx8dC5wYXJlbnROb2RlIT09ZSkmJmUuaW5zZXJ0QmVmb3JlKHQsYSk6KHQucGFyZW50Tm9kZSE9PWV8fHQubmV4dFNpYmxpbmchPT1udWxsKSYmZS5hcHBlbmRDaGlsZCh0KX19ZnVuY3Rpb24gUWUoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2hhdC11bnJlYWQtYnViYmxlIik7aWYoZSl7dmFyIHQ9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKG8pe3JldHVybiBvLmlkPT09ci5zZWxlY3RlZElkfSksbj0hX2koKSxpPSEhdCYmci5jdXJyZW50Vmlldz09PSJjaGF0IiYmbjtlLmNsYXNzTGlzdC50b2dnbGUoInZpc2libGUiLGkpLGUuY2xhc3NMaXN0LnRvZ2dsZSgiaGFzLXVucmVhZCIsci5jaGF0VW5yZWFkQ291bnQ+MCk7dmFyIGE9ZS5xdWVyeVNlbGVjdG9yKCIuY2hhdC11bnJlYWQtYnViYmxlLWNvdW50Iik7YSYmKHIuY2hhdFVucmVhZENvdW50PjA/KGEudGV4dENvbnRlbnQ9ci5jaGF0VW5yZWFkQ291bnQ+OTk/Ijk5KyI6U3RyaW5nKHIuY2hhdFVucmVhZENvdW50KSxhLmNsYXNzTGlzdC5hZGQoInZpc2libGUiKSk6KGEudGV4dENvbnRlbnQ9IiIsYS5jbGFzc0xpc3QucmVtb3ZlKCJ2aXNpYmxlIikpKTt2YXIgdT1yLmNoYXRVbnJlYWRDb3VudD4wP3IuY2hhdFVucmVhZENvdW50KyIgXHU2NzYxXHU2NUIwXHU2RDg4XHU2MDZGXHVGRjBDXHU3MEI5XHU1MUZCXHU2N0U1XHU3NzBCIjoiXHU1NkRFXHU1MjMwXHU2NzAwXHU2NUIwXHU2RDg4XHU2MDZGIjtlLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsdSksZS5zZXRBdHRyaWJ1dGUoInRpdGxlIix1KTt2YXIgcz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2hhdC1vdXRwdXQiKTtzJiZzLmNsYXNzTGlzdC50b2dnbGUoImhhcy1qdW1wLWJ0biIsaSl9fWZ1bmN0aW9uIE1sKGUpe3ZhciB0PU9uKCk7aWYoISghdHx8IXQuaXNDb25uZWN0ZWQpKXtyLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbD0hMDt2YXIgbj1mdW5jdGlvbigpe3IuY2hhdElzUHJvZ3JhbW1hdGljU2Nyb2xsPSExLHIuY2hhdFN0aWNrVG9Cb3R0b209ITAsaXIoe3JlbW92ZURpdmlkZXI6ITB9KSxRZSgpfTtpZihlJiZ0eXBlb2YgdC5zY3JvbGxUbz09ImZ1bmN0aW9uIil7dC5zY3JvbGxUbyh7dG9wOjAsYmVoYXZpb3I6InNtb290aCJ9KSxzZXRUaW1lb3V0KG4sMjYwKTtyZXR1cm59dC5zY3JvbGxUb3A9MCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUobil9fWZ1bmN0aW9uIGFyKCl7dmFyIGU9T24oKTtpZighKCFlfHwhZS5pc0Nvbm5lY3RlZCkpe2lmKHIuY2hhdFNjcm9sbEVsZW1lbnQ9PT1lJiZyLmNoYXRTY3JvbGxIYW5kbGVyKXtRZSgpO3JldHVybn1yLmNoYXRTY3JvbGxFbGVtZW50JiYoci5jaGF0U2Nyb2xsSGFuZGxlciYmci5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJzY3JvbGwiLHIuY2hhdFNjcm9sbEhhbmRsZXIpLHIuY2hhdFNjcm9sbFdoZWVsSGFuZGxlciYmci5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ3aGVlbCIsci5jaGF0U2Nyb2xsV2hlZWxIYW5kbGVyKSxyLmNoYXRTY3JvbGxUb3VjaFN0YXJ0SGFuZGxlciYmci5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixyLmNoYXRTY3JvbGxUb3VjaFN0YXJ0SGFuZGxlciksci5jaGF0U2Nyb2xsVG91Y2hNb3ZlSGFuZGxlciYmci5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLHIuY2hhdFNjcm9sbFRvdWNoTW92ZUhhbmRsZXIpKSxyLmNoYXRTY3JvbGxFbGVtZW50PWUsci5jaGF0U2Nyb2xsSGFuZGxlcj1mdW5jdGlvbigpe2lmKGUuaXNDb25uZWN0ZWQpe2lmKHIuY2hhdElzUHJvZ3JhbW1hdGljU2Nyb2xsKXtRZSgpO3JldHVybn12YXIgdD1faShlKTt0PyhyLmNoYXRTdGlja1RvQm90dG9tPSEwLGlyKHtyZW1vdmVEaXZpZGVyOiEwfSkpOnIuY2hhdFN0aWNrVG9Cb3R0b209ITEsUWUoKX19LHIuY2hhdFNjcm9sbFdoZWVsSGFuZGxlcj1mdW5jdGlvbih0KXtyLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbHx8dC5kZWx0YVk8MCYmKHIuY2hhdFN0aWNrVG9Cb3R0b209ITEsUWUoKSl9LHIuY2hhdFNjcm9sbFRvdWNoU3RhcnRIYW5kbGVyPWZ1bmN0aW9uKHQpeyF0LnRvdWNoZXN8fHQudG91Y2hlcy5sZW5ndGg9PT0wfHwoci5jaGF0VG91Y2hTdGFydFk9dC50b3VjaGVzWzBdLmNsaWVudFkpfSxyLmNoYXRTY3JvbGxUb3VjaE1vdmVIYW5kbGVyPWZ1bmN0aW9uKHQpe2lmKCFyLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbCYmISghdC50b3VjaGVzfHx0LnRvdWNoZXMubGVuZ3RoPT09MCkpe3ZhciBuPXQudG91Y2hlc1swXS5jbGllbnRZLXIuY2hhdFRvdWNoU3RhcnRZO24+NCYmKHIuY2hhdFN0aWNrVG9Cb3R0b209ITEsUWUoKSl9fSxlLmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsci5jaGF0U2Nyb2xsSGFuZGxlcix7cGFzc2l2ZTohMH0pLGUuYWRkRXZlbnRMaXN0ZW5lcigid2hlZWwiLHIuY2hhdFNjcm9sbFdoZWVsSGFuZGxlcix7cGFzc2l2ZTohMH0pLGUuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsci5jaGF0U2Nyb2xsVG91Y2hTdGFydEhhbmRsZXIse3Bhc3NpdmU6ITB9KSxlLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsci5jaGF0U2Nyb2xsVG91Y2hNb3ZlSGFuZGxlcix7cGFzc2l2ZTohMH0pLFFlKCl9fWZ1bmN0aW9uIGN1KCl7aWYoci5jaGF0UmVuZGVyZWRDb3VudDxyLmN1cnJlbnRNZXNzYWdlcy5sZW5ndGgpe3IuY2hhdFJlbmRlcmVkQ291bnQrPXIuY2hhdFBhZ2VTaXplLFVlKCEwKTtyZXR1cm59dmFyIGU9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHQpe3JldHVybiB0LmlkPT09ci5zZWxlY3RlZElkfSk7ZSYmdHlwZW9mIGUubWVzc2FnZU9mZnNldD09Im51bWJlciImJmUubWVzc2FnZU9mZnNldD4wJiZWdigpfXZhciB1cj1udWxsO2Z1bmN0aW9uIE9sKCl7dXImJih1ci5kaXNjb25uZWN0KCksdXI9bnVsbCk7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXQtbG9hZC1tb3JlLXNlbnRpbmVsIik7aWYoZSl7dmFyIHQ9ZS5xdWVyeVNlbGVjdG9yKCIuY2hhdC1sb2FkLW1vcmUtYnRuIik7dCYmKHQub25jbGljaz1mdW5jdGlvbigpe2N1KCl9KSwhKHR5cGVvZiBJbnRlcnNlY3Rpb25PYnNlcnZlcj4idSIpJiYodXI9bmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGZ1bmN0aW9uKG4pe2Zvcih2YXIgaT0wO2k8bi5sZW5ndGg7aSsrKWlmKG5baV0uaXNJbnRlcnNlY3Rpbmcpe2N1KCk7YnJlYWt9fSx7cm9vdDpPbigpLHJvb3RNYXJnaW46IjIwMHB4In0pLHVyLm9ic2VydmUoZSkpfX1mdW5jdGlvbiBGZSgpe3RyeXtyLnNlbGVjdGVkSWQ/bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtc2VsZWN0ZWQtc2Vzc2lvbiIsci5zZWxlY3RlZElkKTpsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgid2FuZC1zZWxlY3RlZC1zZXNzaW9uIil9Y2F0Y2h7fX1mdW5jdGlvbiBqaShlKXtyZXR1cm4gZSYmQXJyYXkuaXNBcnJheShlLnF1ZXVlZE1lc3NhZ2VzKT9lLnF1ZXVlZE1lc3NhZ2VzOnIuc3RydWN0dXJlZElucHV0UXVldWV9ZnVuY3Rpb24gUGwoKXt2YXIgZT1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odCl7cmV0dXJuIHQuaWQ9PT1yLnNlbGVjdGVkSWR9KTtyZXR1cm4gamkoZSl9ZnVuY3Rpb24genIoZSl7dmFyIHQ9amkoZSk7ci5zdHJ1Y3R1cmVkSW5wdXRRdWV1ZT1BcnJheS5pc0FycmF5KHQpP3Quc2xpY2UoKTpbXX1mdW5jdGlvbiBkdShlLHQpe3JldHVybiEhKGUmJkFycmF5LmlzQXJyYXkoZS5jb250ZW50KSYmZS5jb250ZW50LnNvbWUoZnVuY3Rpb24obil7cmV0dXJuIG4mJnR5cGVvZiBuPT0ib2JqZWN0IiYmblt0XX0pKX1mdW5jdGlvbiBxbChlKXtyZXR1cm4hIShlJiZlLnJvbGU9PT0idXNlciImJmR1KGUsIl9fcXVldWVkIikpfWZ1bmN0aW9uIEhsKGUpe3JldHVybiEhKGUmJmUucm9sZT09PSJhc3Npc3RhbnQiJiZkdShlLCJfX3Byb2Nlc3NpbmciKSl9ZnVuY3Rpb24gc3IoZSl7aWYoIUFycmF5LmlzQXJyYXkoZSkpcmV0dXJuW107Zm9yKHZhciB0PSExLG49W10saT0wO2k8ZS5sZW5ndGg7aSsrKXt2YXIgYT1lW2ldO2lmKHFsKGEpfHxIbChhKSl7dD0hMDtjb250aW51ZX1uLnB1c2goYSl9cmV0dXJuIHQ/bjplfWZ1bmN0aW9uIF9sKGUsdCl7aWYoIWV8fCFBcnJheS5pc0FycmF5KGUubWVzc2FnZXMpKXJldHVybiBlO3ZhciBuPWUuc2Vzc2lvbktpbmR8fHQmJnQuc2Vzc2lvbktpbmQ7aWYobiE9PSJzdHJ1Y3R1cmVkIilyZXR1cm4gZTt2YXIgaT1zcihlLm1lc3NhZ2VzKTtyZXR1cm4gaT09PWUubWVzc2FnZXM/ZTpPYmplY3QuYXNzaWduKHt9LGUse21lc3NhZ2VzOml9KX1mdW5jdGlvbiBmdSgpe3RyeXt2YXIgZT1QbCgpO2lmKCFyLnNlbGVjdGVkSWR8fGUubGVuZ3RoPT09MClyZXR1cm47bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtc3RydWN0dXJlZC1xdWV1ZSIsSlNPTi5zdHJpbmdpZnkoe3Nlc3Npb25JZDpyLnNlbGVjdGVkSWQsaXRlbXM6ZX0pKX1jYXRjaHt9fWZ1bmN0aW9uIHB1KGUpe3RyeXt2YXIgdD1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC1zdHJ1Y3R1cmVkLXF1ZXVlIik7aWYoIXQpcmV0dXJuO3ZhciBuPUpTT04ucGFyc2UodCk7KCFlfHwhbnx8bi5zZXNzaW9uSWQ9PT1lKSYmbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oIndhbmQtc3RydWN0dXJlZC1xdWV1ZSIpfWNhdGNoe2xvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCJ3YW5kLXN0cnVjdHVyZWQtcXVldWUiKX19ZnVuY3Rpb24gdnUoKXt2YXIgZT1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oaSl7cmV0dXJuIGkuaWQ9PT1yLnNlbGVjdGVkSWR9KTtpZihlJiZBcnJheS5pc0FycmF5KGUucXVldWVkTWVzc2FnZXMpKXt6cihlKSxmdSgpO3JldHVybn10cnl7dmFyIHQ9bG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtc3RydWN0dXJlZC1xdWV1ZSIpO2lmKCF0KXJldHVybjt2YXIgbj1KU09OLnBhcnNlKHQpO2lmKCFufHxuLnNlc3Npb25JZCE9PXIuc2VsZWN0ZWRJZHx8IUFycmF5LmlzQXJyYXkobi5pdGVtcykpcmV0dXJuO3Iuc3RydWN0dXJlZElucHV0UXVldWU9bi5pdGVtcy5zbGljZSgwLDEwKX1jYXRjaHtyLnN0cnVjdHVyZWRJbnB1dFF1ZXVlPVtdfX1mdW5jdGlvbiBKdCgpe3RyeXtpZihyLmNyb3NzU2Vzc2lvblF1ZXVlLmxlbmd0aD09PTApe2xvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCJ3YW5kLWNyb3NzLXNlc3Npb24tcXVldWUiKTtyZXR1cm59bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtY3Jvc3Mtc2Vzc2lvbi1xdWV1ZSIsSlNPTi5zdHJpbmdpZnkoci5jcm9zc1Nlc3Npb25RdWV1ZSkpfWNhdGNoe319ZnVuY3Rpb24gdG4oKXtyZXR1cm4gci5jb25maWcmJnIuY29uZmlnLmRlZmF1bHRDd2R8fCIvdG1wIn1mdW5jdGlvbiBtdSgpe3RyeXt2YXIgZT1sb2NhbFN0b3JhZ2UuZ2V0SXRlbShQaSk7aWYoIWUpcmV0dXJue307dmFyIHQ9SlNPTi5wYXJzZShlKTtyZXR1cm4gdCYmdHlwZW9mIHQ9PSJvYmplY3QiP3Q6e319Y2F0Y2h7cmV0dXJue319fWZ1bmN0aW9uIE5sKGUpe3RyeXtpZighZXx8T2JqZWN0LmtleXMoZSkubGVuZ3RoPT09MCl7bG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oUGkpO3JldHVybn1sb2NhbFN0b3JhZ2Uuc2V0SXRlbShQaSxKU09OLnN0cmluZ2lmeShlKSl9Y2F0Y2h7fX1mdW5jdGlvbiBqbCgpe3ZhciBlPXIuc2VsZWN0ZWRJZDtpZighZSlyZXR1cm57fTt2YXIgdD1tdSgpLG49dFtlXTtyZXR1cm4gbiYmdHlwZW9mIG49PSJvYmplY3QiP246e319ZnVuY3Rpb24gc3QoZSl7aWYoIWV8fCFyLnNlbGVjdGVkSWQpcmV0dXJuIG51bGw7dmFyIHQ9amwoKTtyZXR1cm4gdHlwZW9mIHRbZV09PSJib29sZWFuIj90W2VdOm51bGx9ZnVuY3Rpb24gUmwoZSx0KXtpZighKCFlfHwhci5zZWxlY3RlZElkKSl7dmFyIG49bXUoKSxpPXIuc2VsZWN0ZWRJZCxhPW5baV07KCFhfHx0eXBlb2YgYSE9Im9iamVjdCIpJiYoYT17fSksYVtlXT0hIXQsbltpXT1hLE5sKG4pfX1mdW5jdGlvbiBndShlLHQpe3JldHVybiBlP2UudXVpZD8ibXNnOiIrZS51dWlkOmUuaWQ/Im1zZzoiK2UuaWQ6ZS5tZXNzYWdlSWQ/Im1zZzoiK2UubWVzc2FnZUlkOmUudHVybklkPyJtc2c6IitlLnR1cm5JZDoibXNnOiIrKHR5cGVvZiB0PT0ibnVtYmVyIj90OjApOiJtc2c6dW5rbm93bi0iKyh0eXBlb2YgdD09Im51bWJlciI/dDowKX1mdW5jdGlvbiBHdChlLHQpe2Zvcih2YXIgbj1bXSxpPTA7aTx0Lmxlbmd0aDtpKyspe3ZhciBhPXRbaV07YT09bnVsbHx8YT09PSIifHxuLnB1c2goU3RyaW5nKGEpKX1yZXR1cm4gZSsiOiIrbi5qb2luKCI6Iil9ZnVuY3Rpb24gUG4oZSl7cmV0dXJuIWV8fCFlLmRhdGFzZXQ/IiI6ZS5kYXRhc2V0LmV4cGFuZEtleXx8IiJ9ZnVuY3Rpb24gV2woZSx0KXtpZighZSlyZXR1cm4hMTtzd2l0Y2godCl7Y2FzZSJ0b29sLWNhcmQiOmNhc2UiZGlmZiI6cmV0dXJuIWUuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb2xsYXBzZWQiKTtjYXNlInRoaW5raW5nIjpyZXR1cm4gZS5jbGFzc0xpc3QuY29udGFpbnMoImV4cGFuZGVkIikmJiFlLmNsYXNzTGlzdC5jb250YWlucygiY29sbGFwc2VkIik7Y2FzZSJpbmxpbmUtdG9vbCI6cmV0dXJuIGUuY2xhc3NMaXN0LmNvbnRhaW5zKCJpbmxpbmUtdG9vbC1vcGVuIik7Y2FzZSJ0ZXJtaW5hbCI6e3ZhciBuPWUucXVlcnlTZWxlY3RvcigiLnRlcm0tYm9keSIpO3JldHVybiBuP24uc3R5bGUuZGlzcGxheSE9PSJub25lIjplLmRhdGFzZXQuZXhwYW5kZWQ9PT0idHJ1ZSJ9Y2FzZSJ0b29sLWdyb3VwIjpyZXR1cm4gZS5nZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kZWQiKT09PSJ0cnVlIjtjYXNlInN1YmFnZW50LXJlcGx5IjpyZXR1cm4gZS5nZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kZWQiKT09PSJ0cnVlIjtjYXNlInN1YmFnZW50LXBhbmVsIjpyZXR1cm4gZS5nZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kZWQiKT09PSJ0cnVlIjtkZWZhdWx0OnJldHVybiExfX1mdW5jdGlvbiBSaShlLHQsbil7aWYoZSlzd2l0Y2godCl7Y2FzZSJ0b29sLWNhcmQiOmNhc2UiZGlmZiI6e2UuY2xhc3NMaXN0LnRvZ2dsZSgiY29sbGFwc2VkIiwhbik7YnJlYWt9Y2FzZSJ0aGlua2luZyI6e2UuY2xhc3NMaXN0LnRvZ2dsZSgiY29sbGFwc2VkIiwhbiksZS5jbGFzc0xpc3QudG9nZ2xlKCJleHBhbmRlZCIsISFuKTt2YXIgaT1lLnF1ZXJ5U2VsZWN0b3IoIi50aGlua2luZy1pbmxpbmUtcHJldmlldyIpO2lmKGkpe3ZhciBhPWUuZGF0YXNldC50aGlua2luZ3x8IiIsdT1hLnNsaWNlKDAsNTcpKyhhLmxlbmd0aD42MD8iXHUyMDI2IjoiIik7aS50ZXh0Q29udGVudD1uP2E6dX12YXIgcz1lLnF1ZXJ5U2VsZWN0b3IoIi50aGlua2luZy1pbmxpbmUtYWN0aW9uIik7cyYmKHMudGV4dENvbnRlbnQ9bj8iXHU2NTM2XHU4RDc3IjoiXHU1QzU1XHU1RjAwIik7YnJlYWt9Y2FzZSJpbmxpbmUtdG9vbCI6e2UuY2xhc3NMaXN0LnRvZ2dsZSgiaW5saW5lLXRvb2wtb3BlbiIsISFuKTt2YXIgbz1lLnF1ZXJ5U2VsZWN0b3IoIi5pbmxpbmUtdG9vbC1leHBhbmRlZCIpO28mJihvLnN0eWxlLmRpc3BsYXk9bj8iYmxvY2siOiJub25lIik7YnJlYWt9Y2FzZSJ0ZXJtaW5hbCI6e3ZhciBsPWUucXVlcnlTZWxlY3RvcigiLnRlcm0tYm9keSIpO2wmJihsLnN0eWxlLmRpc3BsYXk9bj8iYmxvY2siOiJub25lIiksZS5kYXRhc2V0LmV4cGFuZGVkPW4/InRydWUiOiJmYWxzZSI7dmFyIGM9ZS5xdWVyeVNlbGVjdG9yKCIudGVybS10b2dnbGUtaWNvbiIpO2MmJihjLnRleHRDb250ZW50PW4/Ilx1MjVCQyI6Ilx1MjVCNiIpO2JyZWFrfWNhc2UidG9vbC1ncm91cCI6e2Uuc2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIixuPyJ0cnVlIjoiZmFsc2UiKTt2YXIgZj1lLnF1ZXJ5U2VsZWN0b3IoIi50b29sLWdyb3VwLWJvZHkiKTtmJiYoZi5zdHlsZS5kaXNwbGF5PW4/ImJsb2NrIjoibm9uZSIpO3ZhciBkPWUucXVlcnlTZWxlY3RvcigiLnRvb2wtZ3JvdXAtY2hldnJvbiIpO2QmJihkLnN0eWxlLnRyYW5zZm9ybT1uPyJyb3RhdGUoMTgwZGVnKSI6IiIpO2JyZWFrfWNhc2Uic3ViYWdlbnQtcmVwbHkiOntlLnNldEF0dHJpYnV0ZSgiZGF0YS1leHBhbmRlZCIsbj8idHJ1ZSI6ImZhbHNlIik7dmFyIHY9ZS5xdWVyeVNlbGVjdG9yKCIuc3ViYWdlbnQtcmVwbHktdG9nZ2xlLWxhYmVsIik7diYmKHYudGV4dENvbnRlbnQ9bj8iXHU2NTM2XHU4RDc3IjoiXHU1QzU1XHU1RjAwIik7dmFyIGc9ZS5xdWVyeVNlbGVjdG9yKCIuc3ViYWdlbnQtcmVwbHktdG9nZ2xlIik7ZyYmKGcuc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIixuPyJ0cnVlIjoiZmFsc2UiKSxnLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsbj8iXHU2NTM2XHU4RDc3XHU1QjUwXHU0RUUzXHU3NDA2XHU1NkRFXHU1OTBEIjoiXHU1QzU1XHU1RjAwXHU1QjUwXHU0RUUzXHU3NDA2XHU1NkRFXHU1OTBEXHU1MTY4XHU2NTg3IikpO2JyZWFrfWNhc2Uic3ViYWdlbnQtcGFuZWwiOntlLnNldEF0dHJpYnV0ZSgiZGF0YS1leHBhbmRlZCIsbj8idHJ1ZSI6ImZhbHNlIik7Zm9yKHZhciBoPWUucXVlcnlTZWxlY3RvckFsbCgiLnN1YmFnZW50LXBhbmVsLXRvZ2dsZSIpLG09MDttPGgubGVuZ3RoO20rKyl7dmFyIEU9aFttXTtFLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsbj8idHJ1ZSI6ImZhbHNlIiksRS5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLG4/Ilx1NjUzNlx1OEQ3N1x1NUI1MFx1NEVFM1x1NzQwNlx1OEY5M1x1NTFGQSI6Ilx1NUM1NVx1NUYwMFx1NUI1MFx1NEVFM1x1NzQwNlx1OEY5M1x1NTFGQSIpO3ZhciBDPUUucXVlcnlTZWxlY3RvcigiLnN1YmFnZW50LXBhbmVsLXRvZ2dsZS1sYWJlbCIpO0MmJihDLnRleHRDb250ZW50PW4/Ilx1NjUzNlx1OEQ3NyI6Ilx1NUM1NVx1NUYwMCIpfXZhciBiPWUucXVlcnlTZWxlY3RvcigiLnN1YmFnZW50LXBhbmVsLWJvZHkiKTtiJiYobj9iLnNjcm9sbFRvcD0wOmIuc2Nyb2xsVG9wPWIuc2Nyb2xsSGVpZ2h0KTticmVha319fWZ1bmN0aW9uIEZuKGUsdCl7dmFyIG49UG4oZSk7biYmUmwobixXbChlLHQpKX1mdW5jdGlvbiBXaShlKXshZXx8IXIuc2VsZWN0ZWRJZHx8ZS5xdWVyeVNlbGVjdG9yQWxsKCJbZGF0YS1leHBhbmQta2V5XSIpLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIG49UG4odCksaT10LmRhdGFzZXQuZXhwYW5kS2luZHx8IiIsYT1zdChuKTthPT09bnVsbHx8IWl8fFJpKHQsaSxhKX0pfWZ1bmN0aW9uIF9lKCl7cmV0dXJuIHdpbmRvdy5pbm5lcldpZHRoPD03Njh9ZnVuY3Rpb24gaHUoKXtyZXR1cm4hIXIuc2Vzc2lvbnNEcmF3ZXJPcGVuJiYoX2UoKXx8IXIuc2lkZWJhclBpbm5lZCl9ZnVuY3Rpb24gemkoZSl7ci5maWxlUGFuZWxPcGVuPWU7dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLWZpbGUtcGFuZWwtb3BlbiIsU3RyaW5nKHIuZmlsZVBhbmVsT3BlbikpfWNhdGNoe31yLmZpbGVQYW5lbE9wZW4mJl9lKCkmJihyLnNlc3Npb25zRHJhd2VyT3Blbj0hMSxTZSgid2FuZC1zaWRlYmFyLW9wZW4iLCExKSksbm4oKSxyLmZpbGVQYW5lbE9wZW4mJk90KCl9ZnVuY3Rpb24gVXIoKXt6aSghci5maWxlUGFuZWxPcGVuKX1mdW5jdGlvbiB6bCgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLXNpZGUtcGFuZWwiKSx0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5tYWluLWNvbnRlbnQiKSxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLXBhbmVsLXRvZ2dsZS1idG4iKSxpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLXBhbmVsLWJhY2tkcm9wIik7ZSYmZS5jbGFzc0xpc3QudG9nZ2xlKCJvcGVuIixyLmZpbGVQYW5lbE9wZW4pLHQmJnQuY2xhc3NMaXN0LnRvZ2dsZSgiZmlsZS1wYW5lbC1vcGVuIixyLmZpbGVQYW5lbE9wZW4pLGkmJmkuY2xhc3NMaXN0LnRvZ2dsZSgib3BlbiIsci5maWxlUGFuZWxPcGVuKSxuJiZuLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsci5maWxlUGFuZWxPcGVuKX1mdW5jdGlvbiBubigpe1RyKCksemwoKX1mdW5jdGlvbiBVbChlKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1leHBsb3Jlci1jd2QiKTtpZih0KXt2YXIgbj1lJiZlLmN3ZD9lLmN3ZDp0bigpO3QudGFnTmFtZT09PSJJTlBVVCI/ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCE9PXQmJih0LnZhbHVlPW4sS20odCkpOnQudGV4dENvbnRlbnQ9bix0LnRpdGxlPW47dmFyIGk9dC5jbG9zZXN0KCIuZmlsZS1leHBsb3Jlci1oZWFkZXIiKTtpJiZJaShpKX19ZnVuY3Rpb24geXUoKXtyLmZpbGVQYW5lbE9wZW4mJnppKCExKX1mdW5jdGlvbiBFdShlKXt2YXIgdD1yLnRlcm1pbmFsU2NhbGUrZTtpZih0PU1hdGgubWF4KC41LE1hdGgubWluKDIsdCkpLHQ9TWF0aC5yb3VuZCh0KjQpLzQsdCE9PXIudGVybWluYWxTY2FsZSl7ci50ZXJtaW5hbFNjYWxlPXQ7dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLXRlcm1pbmFsLXNjYWxlIixTdHJpbmcodCkpfWNhdGNoe31idSgpLFZsKCl9fWZ1bmN0aW9uIGJ1KCl7aWYoISghci50ZXJtaW5hbHx8IXIudGVybWluYWwuZWxlbWVudCkpe3ZhciBlPXIudGVybWluYWxCYXNlRm9udFNpemUqci50ZXJtaW5hbFNjYWxlLHQ9TWF0aC5tYXgoMSxNYXRoLnJvdW5kKGUpKSxuPU1hdGgubWF4KDEsTWF0aC5yb3VuZChlKjEuNSkpO3IudGVybWluYWwuZWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgiLS10ZXJtLWZvbnQtc2l6ZSIsdCsicHgiKSxyLnRlcm1pbmFsLmVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoIi0tdGVybS1yb3ctaGVpZ2h0IixuKyJweCIpLHR5cGVvZiByLnRlcm1pbmFsLnJlbWVhc3VyZT09ImZ1bmN0aW9uIiYmcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7ci50ZXJtaW5hbCYmci50ZXJtaW5hbC5yZW1lYXN1cmUoKX0pfX1mdW5jdGlvbiBWbCgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXJtaW5hbC1zY2FsZS1sYWJlbC10b3AiKTtlJiYoZS50ZXh0Q29udGVudD1NYXRoLnJvdW5kKHIudGVybWluYWxTY2FsZSoxMDApKyIlIil9dmFyIEtsPXsiY2hldnJvbi1sZWZ0IjonPHBhdGggZD0iTTE1IDE4bC02LTYgNi02Ii8+JywiYXJyb3ctdXAiOic8cGF0aCBkPSJNMTIgMTlWNSIvPjxwYXRoIGQ9Ik01IDEybDctNyA3IDciLz4nLHJlZnJlc2g6JzxwYXRoIGQ9Ik0yMSAxMmE5IDkgMCAxIDEtMy02LjciLz48cGF0aCBkPSJNMjEgNHY1aC01Ii8+JyxleWU6JzxwYXRoIGQ9Ik0xIDEyczQtNyAxMS03IDExIDcgMTEgNy00IDctMTEgN1MxIDEyIDEgMTJ6Ii8+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMyIvPicsImV5ZS1vZmYiOic8cGF0aCBkPSJNMTcuOTQgMTcuOTRBMTAuOTQgMTAuOTQgMCAwIDEgMTIgMTljLTcgMC0xMS03LTExLTdhMTkuODYgMTkuODYgMCAwIDEgNC4yMi01LjE4Ii8+PHBhdGggZD0iTTEgMWwyMiAyMiIvPjxwYXRoIGQ9Ik05LjkgNC4yNEExMC45NCAxMC45NCAwIDAgMSAxMiA0YzcgMCAxMSA3IDExIDdhMTkuODMgMTkuODMgMCAwIDEtMy4zNiA0LjI3Ii8+PHBhdGggZD0iTTE0LjEyIDE0LjEyYTMgMyAwIDEgMS00LjI0LTQuMjQiLz4nLHg6JzxwYXRoIGQ9Ik0xOCA2TDYgMTgiLz48cGF0aCBkPSJNNiA2bDEyIDEyIi8+JyxzZWFyY2g6JzxjaXJjbGUgY3g9IjExIiBjeT0iMTEiIHI9IjciLz48cGF0aCBkPSJNMjEgMjFsLTQuMy00LjMiLz4nLGNvcHk6JzxyZWN0IHg9IjkiIHk9IjkiIHdpZHRoPSIxMSIgaGVpZ2h0PSIxMSIgcng9IjIiLz48cGF0aCBkPSJNNSAxNVY1YTIgMiAwIDAgMSAyLTJoMTAiLz4nLGNsaXBib2FyZDonPHJlY3QgeD0iOCIgeT0iMyIgd2lkdGg9IjgiIGhlaWdodD0iNCIgcng9IjEiLz48cGF0aCBkPSJNMTYgNWgyYTIgMiAwIDAgMSAyIDJ2MTJhMiAyIDAgMCAxLTIgMkg2YTIgMiAwIDAgMS0yLTJWN2EyIDIgMCAwIDEgMi0yaDIiLz4nLGRvd25sb2FkOic8cGF0aCBkPSJNMjEgMTV2NGEyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMnYtNCIvPjxwYXRoIGQ9Ik03IDEwbDUgNSA1LTUiLz48cGF0aCBkPSJNMTIgMTVWMyIvPicsZWRpdDonPHBhdGggZD0iTTEyIDIwaDkiLz48cGF0aCBkPSJNMTYuNSAzLjVhMi4xMjEgMi4xMjEgMCAwIDEgMyAzTDcgMTlsLTQgMSAxLTR6Ii8+JyxzYXZlOic8cGF0aCBkPSJNMTkgMjFINWEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmgxMWw1IDV2MTFhMiAyIDAgMCAxLTIgMnoiLz48cGF0aCBkPSJNMTcgMjF2LThIN3Y4Ii8+PHBhdGggZD0iTTcgM3Y1aDgiLz4nLCJyb3RhdGUtY2N3IjonPHBhdGggZD0iTTMgMTJhOSA5IDAgMSAwIDMtNi43Ii8+PHBhdGggZD0iTTMgNHY1aDUiLz4nLCJ3cmFwLXRleHQiOic8cGF0aCBkPSJNMyA2aDE4Ii8+PHBhdGggZD0iTTMgMTJoMTVhMyAzIDAgMSAxIDAgNmgtNCIvPjxwYXRoIGQ9Ik0xNiAxNmwtMiAyIDIgMiIvPjxwYXRoIGQ9Ik0zIDE4aDYiLz4nLHR5cGU6JzxwYXRoIGQ9Ik00IDdWNGgxNnYzIi8+PHBhdGggZD0iTTkgMjBoNiIvPjxwYXRoIGQ9Ik0xMiA0djE2Ii8+JyxtaW51czonPHBhdGggZD0iTTUgMTJoMTQiLz4nLHBsdXM6JzxwYXRoIGQ9Ik0xMiA1djE0Ii8+PHBhdGggZD0iTTUgMTJoMTQiLz4nLCJzZW5kLXRvLWlucHV0IjonPHBhdGggZD0iTTIyIDJMMTEgMTMiLz48cGF0aCBkPSJNMjIgMmwtNyAyMC00LTktOS00eiIvPicsdGVybWluYWw6Jzxwb2x5bGluZSBwb2ludHM9IjQgMTcgMTAgMTEgNCA1Ii8+PGxpbmUgeDE9IjEyIiB5MT0iMTkiIHgyPSIyMCIgeTI9IjE5Ii8+JywiZm9sZGVyLW9wZW4iOic8cGF0aCBkPSJNNiAxNGwxLjQ1LTIuOUEyIDIgMCAwIDEgOS4yNCAxMEgyMGEyIDIgMCAwIDEgMS45NCAyLjVsLTEuNTUgNmEyIDIgMCAwIDEtMS45NCAxLjVINGEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmgzLjkzYTIgMiAwIDAgMSAxLjY2LjlsLjgyIDEuMmEyIDIgMCAwIDAgMS42Ni45SDE4YTIgMiAwIDAgMSAyIDJ2MiIvPicsaW5mbzonPGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMTAiLz48bGluZSB4MT0iMTIiIHkxPSIxNiIgeDI9IjEyIiB5Mj0iMTIiLz48bGluZSB4MT0iMTIiIHkxPSI4IiB4Mj0iMTIuMDEiIHkyPSI4Ii8+J307ZnVuY3Rpb24gTWUoZSx0KXt0PXR8fHt9O3ZhciBuPUtsW2VdfHwiIixpPXQuc2l6ZXx8MTYsYT10LmNsYXNzTmFtZT8iICIrdC5jbGFzc05hbWU6IiI7cmV0dXJuJzxzdmcgY2xhc3M9IndhbmQtaWNvbiB3YW5kLWljb24tJytlK2ErJyIgd2lkdGg9IicraSsnIiBoZWlnaHQ9IicraSsnIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPicrbisiPC9zdmc+In1mdW5jdGlvbiBKbChlKXt2YXIgdD1lfHx0bigpO3JldHVybiB0Pyc8ZGl2IGNsYXNzPSJmaWxlLXRyZWUiIGlkPSJmaWxlLXRyZWUiIGRhdGEtY3dkPSInK3AodCkrJyI+PGRpdiBjbGFzcz0idHJlZS1sb2FkaW5nIj5cdTUyQTBcdThGN0RcdTRFMkRcdTIwMjY8L2Rpdj48L2Rpdj4nOic8ZGl2IGNsYXNzPSJmaWxlLWV4cGxvcmVyIGVtcHR5Ij5cdTY3MkFcdTkxNERcdTdGNkVcdTVERTVcdTRGNUNcdTc2RUVcdTVGNTVcdTMwMDI8L2Rpdj4nfXZhciBHbD17cG5nOiJcdXsxRjVCQ31cdUZFMEYiLGpwZzoiXHV7MUY1QkN9XHVGRTBGIixqcGVnOiJcdXsxRjVCQ31cdUZFMEYiLGdpZjoiXHV7MUY1QkN9XHVGRTBGIix3ZWJwOiJcdXsxRjVCQ31cdUZFMEYiLHN2ZzoiXHV7MUY1QkN9XHVGRTBGIixhdmlmOiJcdXsxRjVCQ31cdUZFMEYiLGJtcDoiXHV7MUY1QkN9XHVGRTBGIixpY286Ilx1ezFGNUJDfVx1RkUwRiIsaGVpYzoiXHV7MUY1QkN9XHVGRTBGIixoZWlmOiJcdXsxRjVCQ31cdUZFMEYiLHBkZjoiXHV7MUY0RDV9Iixkb2M6Ilx1ezFGNEQ4fSIsZG9jeDoiXHV7MUY0RDh9IixvZHQ6Ilx1ezFGNEQ4fSIseGxzOiJcdXsxRjRDQX0iLHhsc3g6Ilx1ezFGNENBfSIsY3N2OiJcdXsxRjRDQX0iLHRzdjoiXHV7MUY0Q0F9IixwcHQ6Ilx1ezFGNEQ5fSIscHB0eDoiXHV7MUY0RDl9IixtcDQ6Ilx1ezFGM0FDfSIsd2VibToiXHV7MUYzQUN9Iixtb3Y6Ilx1ezFGM0FDfSIsbWt2OiJcdXsxRjNBQ30iLG00djoiXHV7MUYzQUN9IixvZ3Y6Ilx1ezFGM0FDfSIsbXAzOiJcdXsxRjNCNX0iLHdhdjoiXHV7MUYzQjV9IixvZ2c6Ilx1ezFGM0I1fSIsbTRhOiJcdXsxRjNCNX0iLGZsYWM6Ilx1ezFGM0I1fSIsYWFjOiJcdXsxRjNCNX0iLG9wdXM6Ilx1ezFGM0I1fSIsemlwOiJcdXsxRjRFNn0iLHRhcjoiXHV7MUY0RTZ9IixnejoiXHV7MUY0RTZ9Iix0Z3o6Ilx1ezFGNEU2fSIsYnoyOiJcdXsxRjRFNn0iLCI3eiI6Ilx1ezFGNEU2fSIscmFyOiJcdXsxRjRFNn0iLHh6OiJcdXsxRjRFNn0iLG1kOiJcdXsxRjRERH0iLG1hcmtkb3duOiJcdXsxRjRERH0iLG1keDoiXHV7MUY0RER9Iixyc3Q6Ilx1ezFGNEREfSIsdHh0OiJcdXsxRjRERH0iLGxvZzoiXHV7MUY0RER9IixodG1sOiJcdXsxRjMxMH0iLGh0bToiXHV7MUYzMTB9Iix4bWw6Ilx1ezFGMzEwfSIsY3NzOiJcdXsxRjNBOH0iLHNjc3M6Ilx1ezFGM0E4fSIsbGVzczoiXHV7MUYzQTh9Iixqc29uOiJcdTI2OTlcdUZFMEYiLGpzb25jOiJcdTI2OTlcdUZFMEYiLHlhbWw6Ilx1MjY5OVx1RkUwRiIseW1sOiJcdTI2OTlcdUZFMEYiLHRvbWw6Ilx1MjY5OVx1RkUwRiIsaW5pOiJcdTI2OTlcdUZFMEYiLGNmZzoiXHUyNjk5XHVGRTBGIixjb25mOiJcdTI2OTlcdUZFMEYiLGVudjoiXHUyNjk5XHVGRTBGIixlZGl0b3Jjb25maWc6Ilx1MjY5OVx1RkUwRiIsdHM6Ilx1ezFGNERDfSIsdHN4OiJcdXsxRjREQ30iLGpzOiJcdXsxRjREQ30iLGpzeDoiXHV7MUY0REN9IixtanM6Ilx1ezFGNERDfSIsY2pzOiJcdXsxRjREQ30iLHB5OiJcdXsxRjREQ30iLHJiOiJcdXsxRjREQ30iLGdvOiJcdXsxRjREQ30iLHJzOiJcdXsxRjREQ30iLGphdmE6Ilx1ezFGNERDfSIsYzoiXHV7MUY0REN9IixjcHA6Ilx1ezFGNERDfSIsaDoiXHV7MUY0REN9IixocHA6Ilx1ezFGNERDfSIsY3M6Ilx1ezFGNERDfSIsc3dpZnQ6Ilx1ezFGNERDfSIsa3Q6Ilx1ezFGNERDfSIsc2NhbGE6Ilx1ezFGNERDfSIscGhwOiJcdXsxRjREQ30iLHNoOiJcdXsxRjREQ30iLGJhc2g6Ilx1ezFGNERDfSIsenNoOiJcdXsxRjREQ30iLGZpc2g6Ilx1ezFGNERDfSIsbHVhOiJcdXsxRjREQ30iLHNxbDoiXHV7MUY0REN9IixncmFwaHFsOiJcdXsxRjREQ30iLHByb3RvOiJcdXsxRjREQ30iLHZ1ZToiXHV7MUY0REN9IixzdmVsdGU6Ilx1ezFGNERDfSIsZGlmZjoiXHV7MUY0REN9IixwYXRjaDoiXHV7MUY0REN9Iix0dGY6Ilx1ezFGNTI0fSIsb3RmOiJcdXsxRjUyNH0iLHdvZmY6Ilx1ezFGNTI0fSIsd29mZjI6Ilx1ezFGNTI0fSIsZW90OiJcdXsxRjUyNH0ifTtmdW5jdGlvbiBGdShlKXtpZighZSlyZXR1cm4iXHV7MUY0QzR9IjtpZihlLnR5cGU9PT0iZGlyIilyZXR1cm4iXHV7MUY0QzF9Ijt2YXIgdD0oZS5uYW1lfHwiIikudG9Mb3dlckNhc2UoKTtpZih0PT09ImRvY2tlcmZpbGUiKXJldHVybiJcdXsxRjQzM30iO2lmKHQ9PT0ibWFrZWZpbGUiKXJldHVybiJcdXsxRjZFMH1cdUZFMEYiO2lmKHQ9PT0ibGljZW5zZSIpcmV0dXJuIlx1ezFGNERDfSI7aWYodD09PSJyZWFkbWUiKXJldHVybiJcdXsxRjRERH0iO3ZhciBuPXQubGFzdEluZGV4T2YoIi4iKTtpZihuPDB8fG49PT10Lmxlbmd0aC0xKXJldHVybiJcdXsxRjRDNH0iO3ZhciBpPXQuc2xpY2UobisxKTtyZXR1cm4gR2xbaV18fCJcdXsxRjRDNH0ifWZ1bmN0aW9uIHFuKGUpe2lmKHR5cGVvZiBlIT0ibnVtYmVyInx8IWlzRmluaXRlKGUpfHxlPDApcmV0dXJuIiI7aWYoZTwxMDI0KXJldHVybiBlKyIgQiI7dmFyIHQ9ZS8xMDI0O2lmKHQ8MTAyNClyZXR1cm4odD49MTA/TWF0aC5yb3VuZCh0KTp0LnRvRml4ZWQoMSkpKyIgS0IiO3ZhciBuPXQvMTAyNDtpZihuPDEwMjQpcmV0dXJuKG4+PTEwP01hdGgucm91bmQobik6bi50b0ZpeGVkKDEpKSsiIE1CIjt2YXIgaT1uLzEwMjQ7cmV0dXJuKGk+PTEwP01hdGgucm91bmQoaSk6aS50b0ZpeGVkKDEpKSsiIEdCIn1mdW5jdGlvbiBZbChlKXtpZighZSlyZXR1cm4iIjt2YXIgdD1EYXRlLnBhcnNlKGUpO3JldHVybiBpc05hTih0KT8iIjpuZXcgRGF0ZSh0KS50b0xvY2FsZVN0cmluZygpfWZ1bmN0aW9uIHd1KCl7aWYoci5maWxlRXhwbG9yZXJDd2QpcmV0dXJuIHIuZmlsZUV4cGxvcmVyQ3dkO2lmKHIuc2VsZWN0ZWRJZCl7dmFyIGU9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHQpe3JldHVybiB0LmlkPT09ci5zZWxlY3RlZElkfSk7aWYoZSYmZS5jd2QpcmV0dXJuIGUuY3dkfXJldHVybiB0bigpfWZ1bmN0aW9uIE90KGUpe2U9ZXx8e307dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtZXhwbG9yZXIiKSxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLWV4cGxvcmVyLWN3ZCIpO2lmKHQpe3ZhciBpPWUuY3dkfHx3dSgpO2lmKCFpKXt0LmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZmlsZS1leHBsb3JlciBlbXB0eSI+XHU2Q0ExXHU2NzA5XHU1M0VGXHU2NjNFXHU3OTNBXHU3Njg0XHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1XHUzMDAyPC9kaXY+JztyZXR1cm59ci5maWxlRXhwbG9yZXJDd2Q9aSxyLmZpbGVFeHBsb3JlckxvYWRpbmc9ITAsci5hbGxGaWxlcz1bXSxyLmZpbGVFeHBsb3JlclRydW5jYXRlZD0hMSxyLmZpbGVFeHBsb3JlclRvdGFsPTAsdC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZpbGUtZXhwbG9yZXIiPjxkaXYgY2xhc3M9InRyZWUtbG9hZGluZyIgc3R5bGU9InBhZGRpbmc6MTJweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6MC44MTI1cmVtOyI+XHU1MkEwXHU4RjdEXHU0RTJEXHUyMDI2PC9kaXY+PC9kaXY+JyxuJiYobi50YWdOYW1lPT09IklOUFVUIj9kb2N1bWVudC5hY3RpdmVFbGVtZW50IT09biYmKG4udmFsdWU9aSk6bi50ZXh0Q29udGVudD1pLG4udGl0bGU9aSk7dmFyIGE9Ii9hcGkvZGlyZWN0b3J5P3E9IitlbmNvZGVVUklDb21wb25lbnQoaSkrIiZnaXRTdGF0dXM9dHJ1ZSI7ZmV0Y2goYSx7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24odSl7aWYoIXUub2spdGhyb3cgbmV3IEVycm9yKCJGYWlsZWQgdG8gbG9hZCBkaXJlY3RvcnkuIik7cmV0dXJuIHUuanNvbigpfSkudGhlbihmdW5jdGlvbih1KXtyLmZpbGVFeHBsb3JlckxvYWRpbmc9ITE7dmFyIHMsbyxsO2lmKEFycmF5LmlzQXJyYXkodSk/KHM9dSxvPSExLGw9dS5sZW5ndGgpOihzPXUmJnUuaXRlbXN8fFtdLG89ISEodSYmdS50cnVuY2F0ZWQpLGw9dSYmdS50b3RhbHx8cy5sZW5ndGgpLCFzfHxzLmxlbmd0aD09PTApe3QuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLWV4cGxvcmVyIGVtcHR5Ij5cdTdBN0FcdTc2RUVcdTVGNTVcdTYyMTZcdTY1RTBcdTZDRDVcdThCQkZcdTk1RUVcdTMwMDI8L2Rpdj4nO3JldHVybn1yLmFsbEZpbGVzPXMsci5maWxlRXhwbG9yZXJUcnVuY2F0ZWQ9byxyLmZpbGVFeHBsb3JlclRvdGFsPWwsQ3UoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7ci5maWxlRXhwbG9yZXJMb2FkaW5nPSExLHQuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLWV4cGxvcmVyIGVtcHR5Ij5cdTUyQTBcdThGN0RcdTU5MzFcdThEMjVcdUZGMENcdThCRjdcdTY4QzBcdTY3RTVcdThERUZcdTVGODRcdTYyMTZcdTY3NDNcdTk2NTBcdTMwMDI8L2Rpdj4nfSl9fWZ1bmN0aW9uIEN1KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtZXhwbG9yZXIiKTtpZihlKXt2YXIgdD1yLmZpbGVFeHBsb3JlckN3ZHx8IiI7aWYodCl7dmFyIG49ci5maWxlU2VhcmNoUXVlcnksaT1yLmFsbEZpbGVzfHxbXSxhPWk7aWYobil7dmFyIHU9bi50b0xvd2VyQ2FzZSgpO2E9aS5maWx0ZXIoZnVuY3Rpb24obCl7cmV0dXJuIGwubmFtZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YodSkhPT0tMX0pfWlmKGEubGVuZ3RoPT09MCl7ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZpbGUtZXhwbG9yZXIgZW1wdHkiPicrKG4/Ilx1NkNBMVx1NjcwOVx1NjI3RVx1NTIzMFx1NTMzOVx1OTE0RFx1NzY4NFx1NjU4N1x1NEVGNiI6Ilx1N0E3QVx1NzZFRVx1NUY1NSIpKyI8L2Rpdj4iO3JldHVybn12YXIgcz0iIjtpZighbiYmci5maWxlRXhwbG9yZXJUcnVuY2F0ZWQpe3ZhciBvPWkubGVuZ3RoO3M9JzxkaXYgY2xhc3M9InRyZWUtdHJ1bmNhdGVkIiB0aXRsZT0iXHU1NDBFXHU3QUVGXHU2MzA5XHU1QjU3XHU2QkNEXHU1RThGXHU2NzAwXHU1OTFBXHU4RkQ0XHU1NkRFICcrbysnIFx1OTg3OSI+XHU2NjNFXHU3OTNBXHU1MjREICcrbysiIFx1OTg3OSAvIFx1NTE3MSAiK3IuZmlsZUV4cGxvcmVyVG90YWwrIiBcdTk4Nzk8L2Rpdj4ifWUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLXRyZWUiIGlkPSJmaWxlLXRyZWUiIGRhdGEtY3dkPSInK3AodCkrJyI+JythLm1hcChmdW5jdGlvbihsKXtyZXR1cm4gQnUobCl9KS5qb2luKCIiKSsiPC9kaXY+IitzLER1KCl9fX1mdW5jdGlvbiBCdShlLHQpe3Q9dHx8MDt2YXIgbj1wKGUubmFtZSksaT1lLnR5cGU9PT0iZGlyIixhPUZ1KGUpLHU9aT8iXHUyNUI4IjoiIixzPWk/IiI6IiBlbXB0eSIsbz1lLmdpdFN0YXR1cyxsPVFsKG8pLGM9IiI7cmV0dXJuIWkmJnR5cGVvZiBlLnNpemU9PSJudW1iZXIiJiYoYz0nPHNwYW4gY2xhc3M9InRyZWUtbWV0YSIgdGl0bGU9Ilx1NTkyN1x1NUMwRlx1RkYxQScrcChxbihlLnNpemUpKSsoZS5tdGltZT9gClx1NEZFRVx1NjUzOVx1NjVGNlx1OTVGNFx1RkYxQWArcChZbChlLm10aW1lKSk6IiIpKyciPicrcChxbihlLnNpemUpKSsiPC9zcGFuPiIpLCc8ZGl2IGNsYXNzPSJ0cmVlLWl0ZW0iIGRhdGEtcGF0aD0iJytwKGUucGF0aCkrJyIgZGF0YS10eXBlPSInK3AoZS50eXBlKSsnIiBkYXRhLW5hbWU9IicrcChlLm5hbWUpKyciIHRhYmluZGV4PSIwIj48c3BhbiBjbGFzcz0idHJlZS10b2dnbGUnK3MrJyI+Jyt1Kyc8L3NwYW4+PHNwYW4gY2xhc3M9InRyZWUtaWNvbiI+JythKyc8L3NwYW4+PHNwYW4gY2xhc3M9InRyZWUtbmFtZSI+JytuKyI8L3NwYW4+IitjKyhsPyc8c3BhbiBjbGFzcz0iZ2l0LXN0YXR1cy1iYWRnZSAnK2wuY2xhc3MrJyIgdGl0bGU9IicrbC50aXRsZSsnIj4nK2wudGV4dCsiPC9zcGFuPiI6IiIpKyI8L2Rpdj4ifWZ1bmN0aW9uIFFsKGUpe3JldHVybiBlP2Uuc3RhZ2VkPT09ImFkZGVkIj97dGV4dDoiQSIsY2xhc3M6ImdpdC1hZGRlZCIsdGl0bGU6Ilx1NURGMlx1NjY4Mlx1NUI1OFx1RkYwOFx1NjVCMFx1NTg5RVx1RkYwOSJ9OmUuc3RhZ2VkPT09Im1vZGlmaWVkIj97dGV4dDoiTSIsY2xhc3M6ImdpdC1tb2RpZmllZCIsdGl0bGU6Ilx1NURGMlx1NjY4Mlx1NUI1OFx1RkYwOFx1NEZFRVx1NjUzOVx1RkYwOSJ9OmUuc3RhZ2VkPT09ImRlbGV0ZWQiP3t0ZXh0OiJEIixjbGFzczoiZ2l0LWRlbGV0ZWQiLHRpdGxlOiJcdTVERjJcdTY2ODJcdTVCNThcdUZGMDhcdTUyMjBcdTk2NjRcdUZGMDkifTplLnN0YWdlZD09PSJyZW5hbWVkIj97dGV4dDoiUiIsY2xhc3M6ImdpdC1yZW5hbWVkIix0aXRsZToiXHU1REYyXHU2NjgyXHU1QjU4XHVGRjA4XHU5MUNEXHU1NDdEXHU1NDBEXHVGRjA5In06ZS51bnN0YWdlZD09PSJtb2RpZmllZCI/e3RleHQ6Ik0iLGNsYXNzOiJnaXQtdW5zdGFnZWQiLHRpdGxlOiJcdTY3MkFcdTY2ODJcdTVCNThcdUZGMDhcdTRGRUVcdTY1MzlcdUZGMDkifTplLnVuc3RhZ2VkPT09ImRlbGV0ZWQiP3t0ZXh0OiJEIixjbGFzczoiZ2l0LXVuc3RhZ2VkLWRlbGV0ZWQiLHRpdGxlOiJcdTY3MkFcdTY2ODJcdTVCNThcdUZGMDhcdTUyMjBcdTk2NjRcdUZGMDkifTplLnVudHJhY2tlZD97dGV4dDoiPyIsY2xhc3M6ImdpdC11bnRyYWNrZWQiLHRpdGxlOiJcdTY3MkFcdThEREZcdThFMkEifTpudWxsOm51bGx9ZnVuY3Rpb24gRHUoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS10cmVlIik7aWYoZSl7ZS5xdWVyeVNlbGVjdG9yQWxsKCIudHJlZS1pdGVtW2RhdGEtdHlwZT0nZGlyJ10iKS5mb3JFYWNoKGZ1bmN0aW9uKGkpe2kuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGEpeyRsKGkpfSl9KSxlLnF1ZXJ5U2VsZWN0b3JBbGwoIi50cmVlLWl0ZW1bZGF0YS10eXBlPSdmaWxlJ10iKS5mb3JFYWNoKGZ1bmN0aW9uKGkpe3ZhciBhPWZ1bmN0aW9uKCl7S3IoaS5kYXRhc2V0LnBhdGgpfTtpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixhKSxpLmFkZEV2ZW50TGlzdGVuZXIoImRibGNsaWNrIixhKX0pO3ZhciB0PW51bGwsbj0hMTtlLnF1ZXJ5U2VsZWN0b3JBbGwoIi50cmVlLWl0ZW0iKS5mb3JFYWNoKGZ1bmN0aW9uKGkpe2kuYWRkRXZlbnRMaXN0ZW5lcigiY29udGV4dG1lbnUiLGZ1bmN0aW9uKGEpe2EucHJldmVudERlZmF1bHQoKSxrdShhLmNsaWVudFgsYS5jbGllbnRZLGkpfSksaS5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixmdW5jdGlvbihhKXtuPSExLHQ9c2V0VGltZW91dChmdW5jdGlvbigpe249ITA7dmFyIHU9YS50b3VjaGVzJiZhLnRvdWNoZXNbMF07a3UodT91LmNsaWVudFg6MCx1P3UuY2xpZW50WTowLGkpfSw1MDApfSx7cGFzc2l2ZTohMH0pLGkuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hlbmQiLGZ1bmN0aW9uKCl7dCYmKGNsZWFyVGltZW91dCh0KSx0PW51bGwpfSksaS5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLGZ1bmN0aW9uKCl7dCYmKGNsZWFyVGltZW91dCh0KSx0PW51bGwpfSl9KX19ZnVuY3Rpb24gJGwoZSl7dmFyIHQ9ZS5kYXRhc2V0LnBhdGgsbj1lLnF1ZXJ5U2VsZWN0b3IoIi50cmVlLXRvZ2dsZSIpLGk9ZS5uZXh0RWxlbWVudFNpYmxpbmc7aWYoaSYmaS5jbGFzc0xpc3QuY29udGFpbnMoInRyZWUtY2hpbGRyZW4iKSl7dmFyIGE9aS5jbGFzc0xpc3QuY29udGFpbnMoIm9wZW4iKTtpLmNsYXNzTGlzdC50b2dnbGUoIm9wZW4iKSxuJiZuLmNsYXNzTGlzdC50b2dnbGUoIm9wZW4iLCFhKTt2YXIgdT1lLnF1ZXJ5U2VsZWN0b3IoIi50cmVlLWljb24iKTt1JiYodS50ZXh0Q29udGVudD1hPyJcdXsxRjRDMX0iOiJcdXsxRjRDMn0iKTtyZXR1cm59biYmbi5jbGFzc0xpc3QuYWRkKCJvcGVuIik7dmFyIHM9ZS5xdWVyeVNlbGVjdG9yKCIudHJlZS1pY29uIik7cyYmKHMudGV4dENvbnRlbnQ9Ilx1ezFGNEMyfSIpO3ZhciBvPSIvYXBpL2RpcmVjdG9yeT9xPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQpKyImZ2l0U3RhdHVzPXRydWUiO2ZldGNoKG8se2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGwpe3JldHVybiBsLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obCl7dmFyIGM7QXJyYXkuaXNBcnJheShsKT9jPWw6Yz1sJiZsLml0ZW1zfHxbXTt2YXIgZj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtmLmNsYXNzTmFtZT0idHJlZS1jaGlsZHJlbiBvcGVuIiwhY3x8Yy5sZW5ndGg9PT0wP2YuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJ0cmVlLWl0ZW0iIHN0eWxlPSJjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6ZGVmYXVsdDsiPjxzcGFuIGNsYXNzPSJ0cmVlLXRvZ2dsZSBlbXB0eSI+XHUyNUI4PC9zcGFuPjxzcGFuIGNsYXNzPSJ0cmVlLW5hbWUiPlx1RkYwOFx1N0E3QVx1NzZFRVx1NUY1NVx1RkYwOTwvc3Bhbj48L2Rpdj4nOmYuaW5uZXJIVE1MPWMubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBCdShkKX0pLmpvaW4oIiIpLGUucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZixlLm5leHRTaWJsaW5nKSxEdSgpfSkuY2F0Y2goZnVuY3Rpb24oKXt9KX1mdW5jdGlvbiBYbCgpe3ZhciBlPXd1KCk7aWYoZSl7dmFyIHQ9ZS5yZXBsYWNlKC9cLyskLywiIikucmVwbGFjZSgvXC9bXlwvXSskLywiIik7dHx8KHQ9Ii8iKSx0IT09ZSYmT3Qoe2N3ZDp0fSl9fWZ1bmN0aW9uIFVpKGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtpZighdClyZXR1cm4hMTt2YXIgbj10LnZhbHVlfHwiIixpPW4mJiFuLmVuZHNXaXRoKCIgIikmJiFuLmVuZHNXaXRoKGAKYCk/IiAiOiIiO3QudmFsdWU9bitpK2UsdC5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgiaW5wdXQiLHtidWJibGVzOiEwfSkpO3RyeXt0LmZvY3VzKCksdC5zZXRTZWxlY3Rpb25SYW5nZSh0LnZhbHVlLmxlbmd0aCx0LnZhbHVlLmxlbmd0aCl9Y2F0Y2h7fXJldHVybiEwfWZ1bmN0aW9uIFZyKGUpe2lmKG5hdmlnYXRvci5jbGlwYm9hcmQmJm5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KXJldHVybiBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChlKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuITB9KS5jYXRjaChmdW5jdGlvbigpe3JldHVybiB0KCl9KTtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHQoKSk7ZnVuY3Rpb24gdCgpe3RyeXt2YXIgbj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0ZXh0YXJlYSIpO24udmFsdWU9ZSxuLnN0eWxlLnBvc2l0aW9uPSJmaXhlZCIsbi5zdHlsZS5sZWZ0PSItOTk5OXB4Iixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKG4pLG4uc2VsZWN0KCk7dmFyIGk9ZG9jdW1lbnQuZXhlY0NvbW1hbmQoImNvcHkiKTtyZXR1cm4gZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChuKSxpfWNhdGNoe3JldHVybiExfX19ZnVuY3Rpb24gQnQoZSl7aWYodHlwZW9mIHdpbmRvdy5zaG93VG9hc3Q9PSJmdW5jdGlvbiIpe3dpbmRvdy5zaG93VG9hc3QoZSk7cmV0dXJufXZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3QuY2xhc3NOYW1lPSJ3YW5kLW1pbmktdG9hc3QiLHQudGV4dENvbnRlbnQ9ZSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHQpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0LmNsYXNzTGlzdC5hZGQoInNob3ciKX0sMTApLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0LmNsYXNzTGlzdC5yZW1vdmUoInNob3ciKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dC5yZW1vdmUoKX0sMjIwKX0sMTYwMCl9ZnVuY3Rpb24gSG4oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1jb250ZXh0LW1lbnUiKTtlJiZlLnJlbW92ZSgpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIixIbiwhMCksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixIbiwhMCl9ZnVuY3Rpb24ga3UoZSx0LG4pe0huKCk7dmFyIGk9bi5kYXRhc2V0LnBhdGh8fCIiLGE9bi5kYXRhc2V0LnR5cGV8fCJmaWxlIix1PXIuZmlsZUV4cGxvcmVyQ3dkfHwiIixzPWk7dSYmaS5pbmRleE9mKHUpPT09MCYmKHM9aS5zbGljZSh1Lmxlbmd0aCkucmVwbGFjZSgvXlwvKy8sIiIpfHwiLiIpO3ZhciBvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO28uaWQ9ImZpbGUtY29udGV4dC1tZW51IixvLmNsYXNzTmFtZT0iZmlsZS1jb250ZXh0LW1lbnUiO3ZhciBsPVtdO2E9PT0iZmlsZSI/bC5wdXNoKHtsYWJlbDoiXHU2MjUzXHU1RjAwXHU5ODg0XHU4OUM4IixpY29uOiJcdXsxRjQ0MX0iLHJ1bjpmdW5jdGlvbigpe0tyKGkpfX0pOmwucHVzaCh7bGFiZWw6Ilx1OEZEQlx1NTE2NVx1NkI2NFx1NzZFRVx1NUY1NSIsaWNvbjoiXHV7MUY0QzJ9IixydW46ZnVuY3Rpb24oKXtPdCh7Y3dkOml9KX19KSxsLnB1c2goe2xhYmVsOiJcdTU5MERcdTUyMzZcdTVCOENcdTY1NzRcdThERUZcdTVGODQiLGljb246Ilx1ezFGNENCfSIscnVuOmZ1bmN0aW9uKCl7VnIoaSkudGhlbihmdW5jdGlvbigpe0J0KCJcdTVERjJcdTU5MERcdTUyMzZcdThERUZcdTVGODQiKX0pfX0pLHMmJnMhPT1pJiZsLnB1c2goe2xhYmVsOiJcdTU5MERcdTUyMzZcdTc2RjhcdTVCRjlcdThERUZcdTVGODQiLGljb246Ilx1ezFGNENCfSIscnVuOmZ1bmN0aW9uKCl7VnIocykudGhlbihmdW5jdGlvbigpe0J0KCJcdTVERjJcdTU5MERcdTUyMzZcdTc2RjhcdTVCRjlcdThERUZcdTVGODQiKX0pfX0pLGwucHVzaCh7bGFiZWw6Ilx1N0M5OFx1OEQzNFx1OERFRlx1NUY4NFx1NTIzMFx1OEY5M1x1NTE2NVx1Njg0NiIsaWNvbjoiXHUyNzBGXHVGRTBGIixydW46ZnVuY3Rpb24oKXtVaShpKSYmQnQoIlx1NURGMlx1N0M5OFx1OEQzNFx1NTIzMFx1OEY5M1x1NTE2NVx1Njg0NiIpfX0pLGE9PT0iZmlsZSImJmwucHVzaCh7bGFiZWw6Ilx1NEUwQlx1OEY3RFx1NjU4N1x1NEVGNiIsaWNvbjoiXHUyQjA3IixydW46ZnVuY3Rpb24oKXt2YXIgaD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIik7aC5ocmVmPSIvYXBpL2ZpbGUtcmF3P2Rvd25sb2FkPTEmcGF0aD0iK2VuY29kZVVSSUNvbXBvbmVudChpKSxoLnJlbD0ibm9vcGVuZXIiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaCksaC5jbGljaygpLGgucmVtb3ZlKCl9fSksby5pbm5lckhUTUw9bC5tYXAoZnVuY3Rpb24oaCxtKXtyZXR1cm4nPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJmaWxlLWNvbnRleHQtbWVudS1pdGVtIiBkYXRhLWlkeD0iJyttKyciPjxzcGFuIGNsYXNzPSJjdHgtaWNvbiI+JytoLmljb24rJzwvc3Bhbj48c3BhbiBjbGFzcz0iY3R4LWxhYmVsIj4nK3AoaC5sYWJlbCkrIjwvc3Bhbj48L2J1dHRvbj4ifSkuam9pbigiIiksZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChvKTt2YXIgYz13aW5kb3cuaW5uZXJXaWR0aCxmPXdpbmRvdy5pbm5lckhlaWdodCxkPW8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksdj1NYXRoLm1pbihlLGMtZC53aWR0aC04KSxnPU1hdGgubWluKHQsZi1kLmhlaWdodC04KTtvLnN0eWxlLmxlZnQ9TWF0aC5tYXgoOCx2KSsicHgiLG8uc3R5bGUudG9wPU1hdGgubWF4KDgsZykrInB4IixvLnF1ZXJ5U2VsZWN0b3JBbGwoIi5maWxlLWNvbnRleHQtbWVudS1pdGVtIikuZm9yRWFjaChmdW5jdGlvbihoKXtoLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihtKXttLnN0b3BQcm9wYWdhdGlvbigpO3ZhciBFPXBhcnNlSW50KGguZGF0YXNldC5pZHgsMTApO0huKCksbFtFXSYmbFtFXS5ydW4oKX0pfSksc2V0VGltZW91dChmdW5jdGlvbigpe2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixIbiwhMCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixIbiwhMCl9LDApfXZhciBQPW51bGw7ZnVuY3Rpb24gS3IoZSl7dmFyIHQ9UCYmUC5vdmVybGF5O2lmKHQpe1AucGF0aD1lLFAuZWRpdGluZz0hMSxQLmRpcnR5PSExO3ZhciBzPXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy10aXRsZSIpO3MmJihzLmlubmVySFRNTD0nPHNwYW4gY2xhc3M9ImZpbGUtcHJldmlldy1pY29uIj5cdXsxRjRDNH08L3NwYW4+PGRpdiBjbGFzcz0iZmlsZS1wcmV2aWV3LW5hbWUtYmxvY2siPjxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy1uYW1lLXJvdyI+PHNwYW4gY2xhc3M9ImZpbGUtcHJldmlldy1maWxlbmFtZSI+XHU1MkEwXHU4RjdEXHU0RTJEXHUyMDI2PC9zcGFuPjwvZGl2PjxzcGFuIGNsYXNzPSJmaWxlLXByZXZpZXctcGF0aCIgdGl0bGU9IiI+PC9zcGFuPjwvZGl2PicpO3ZhciBvPXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy10b29sYmFyIik7byYmKG8uaW5uZXJIVE1MPSIiKTt2YXIgbD10LnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctcGF0aCIpO2wmJihsLnRleHRDb250ZW50PSIiLGwudGl0bGU9IiIpO3ZhciBjPXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1ib2R5Iik7YyYmKGMuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctbG9hZGluZyI+XHU1MkEwXHU4RjdEXHU5ODg0XHU4OUM4XHUyMDI2PC9kaXY+Jyl9ZWxzZXt0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHQuY2xhc3NOYW1lPSJmaWxlLXByZXZpZXctb3ZlcmxheSIsdC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy1tb2RhbCIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctaGVhZGVyIj48ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctdGl0bGUiPjxzcGFuIGNsYXNzPSJmaWxlLXByZXZpZXctaWNvbiI+XHV7MUY0QzR9PC9zcGFuPjxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy1uYW1lLWJsb2NrIj48ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctbmFtZS1yb3ciPjxzcGFuIGNsYXNzPSJmaWxlLXByZXZpZXctZmlsZW5hbWUiPlx1NTJBMFx1OEY3RFx1NEUyRFx1MjAyNjwvc3Bhbj48L2Rpdj48c3BhbiBjbGFzcz0iZmlsZS1wcmV2aWV3LXBhdGgiIHRpdGxlPSIiPjwvc3Bhbj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctdG9vbGJhciI+PC9kaXY+PGJ1dHRvbiBjbGFzcz0iZmlsZS1wcmV2aWV3LWNsb3NlIiB0aXRsZT0iXHU1MTczXHU5NUVEIChFc2MpIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RUQiPicrTWUoIngiLHtzaXplOjE4fSkrJzwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy1ib2R5Ij48ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctbG9hZGluZyI+XHU1MkEwXHU4RjdEXHU5ODg0XHU4OUM4XHUyMDI2PC9kaXY+PC9kaXY+PC9kaXY+Jyxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHQpO3ZhciBuPXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1jbG9zZSIpLGk9ZnVuY3Rpb24oKXtpZihQJiZQLmRpcnR5JiZ0eXBlb2Ygcm49PSJmdW5jdGlvbiIpe3JuKHt0eXBlOiJ3YXJuaW5nIix0aXRsZToiXHU2NTNFXHU1RjAzXHU2NzJBXHU0RkREXHU1QjU4XHU3Njg0XHU0RkVFXHU2NTM5XHVGRjFGIixtZXNzYWdlOiJcdTVGNTNcdTUyNERcdTY1ODdcdTRFRjZcdTY3MDlcdTY3MkFcdTRGRERcdTVCNThcdTc2ODRcdTY1MzlcdTUyQThcdUZGMENcdTUxNzNcdTk1RURcdTU0MEVcdTRGMUFcdTRFMjJcdTU5MzFcdTMwMDIiLGJ1dHRvbnM6W3tsYWJlbDoiXHU3RUU3XHU3RUVEXHU3RjE2XHU4RjkxIix2YWx1ZTohMSxraW5kOiJnaG9zdCJ9LHtsYWJlbDoiXHU2NTNFXHU1RjAzXHU0RkVFXHU2NTM5Iix2YWx1ZTohMCxraW5kOiJkYW5nZXIiLGF1dG9mb2N1czohMH1dLGNhbmNlbFZhbHVlOiExfSkudGhlbihmdW5jdGlvbihkKXtkJiZhKCl9KTtyZXR1cm59YSgpfSxhPWZ1bmN0aW9uKCl7dC5yZW1vdmUoKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIix1KSxQPW51bGx9O24uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGkpLHQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGQpe2QudGFyZ2V0PT09dCYmaSgpfSk7dmFyIHU9ZnVuY3Rpb24oZCl7aWYoKGQua2V5PT09InMifHxkLmtleT09PSJTIikmJihkLmN0cmxLZXl8fGQubWV0YUtleSkmJlAmJlAuZWRpdGluZyl7ZC5wcmV2ZW50RGVmYXVsdCgpLEx1KCk7cmV0dXJufWlmKGQua2V5PT09IkVzY2FwZSIpe2lmKFAmJlAuZWRpdGluZyl7ZC5wcmV2ZW50RGVmYXVsdCgpLFR1KCk7cmV0dXJufWkoKTtyZXR1cm59UCYmKGQudGFyZ2V0JiYoZC50YXJnZXQudGFnTmFtZT09PSJJTlBVVCJ8fGQudGFyZ2V0LnRhZ05hbWU9PT0iVEVYVEFSRUEiKXx8UC5lZGl0aW5nfHwoZC5rZXk9PT0iQXJyb3dMZWZ0Ij8oZC5wcmV2ZW50RGVmYXVsdCgpLEF1KC0xKSk6ZC5rZXk9PT0iQXJyb3dSaWdodCImJihkLnByZXZlbnREZWZhdWx0KCksQXUoMSkpKSl9O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLHUpLFA9e292ZXJsYXk6dCxjbG9zZTppLHBhdGg6ZSxkYXRhOm51bGwsZWRpdGluZzohMSxkaXJ0eTohMX19dmFyIGY9dC5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LXBhdGgiKTtmJiYoZi50ZXh0Q29udGVudD1lLGYudGl0bGU9ZSksZmV0Y2goIi9hcGkvZmlsZS1wcmV2aWV3P3BhdGg9IitlbmNvZGVVUklDb21wb25lbnQoZSkse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGQpe3JldHVybiBkLmpzb24oKS50aGVuKGZ1bmN0aW9uKHYpe3JldHVybntvazpkLm9rLHN0YXR1czpkLnN0YXR1cyxkYXRhOnZ9fSl9KS50aGVuKGZ1bmN0aW9uKGQpe3ZhciB2PXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1ib2R5Iik7aWYoIWQub2t8fGQuZGF0YSYmZC5kYXRhLmVycm9yKXt2YXIgZz1kLmRhdGEmJmQuZGF0YS5lcnJvcnx8Ilx1NTJBMFx1OEY3RFx1NTkzMVx1OEQyNSI7ZC5zdGF0dXM9PT00MTMmJmQuZGF0YSYmZC5kYXRhLnNpemUmJihnKz0iXHVGRjA4XHU2NTg3XHU0RUY2XHU1OTI3XHU1QzBGXHVGRjFBIitxbihkLmRhdGEuc2l6ZSkrIlx1RkYwOSIpLHYuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctZXJyb3IiPjxzcGFuIGNsYXNzPSJwcmV2aWV3LWVycm9yLWljb24iPlx1MjZBMDwvc3Bhbj48c3Bhbj4nK3AoZykrIjwvc3Bhbj48L2Rpdj4iLGQuc3RhdHVzPT09NDEzJiZWaSh0LHtraW5kOiJiaW5hcnkiLHBhdGg6ZSxuYW1lOmUuc3BsaXQoIi8iKS5wb3AoKXx8ZSxleHQ6IiIsc2l6ZTpkLmRhdGEmJmQuZGF0YS5zaXplfHwwfSk7cmV0dXJufVAuZGF0YT1kLmRhdGEseHUodCxkLmRhdGEpfSkuY2F0Y2goZnVuY3Rpb24oKXt2YXIgZD10LnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctYm9keSIpO2QuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctZXJyb3IiPjxzcGFuIGNsYXNzPSJwcmV2aWV3LWVycm9yLWljb24iPlx1MjZBMDwvc3Bhbj48c3Bhbj5cdTUyQTBcdThGN0RcdTk4ODRcdTg5QzhcdTU5MzFcdThEMjU8L3NwYW4+PC9kaXY+J30pfWZ1bmN0aW9uIEF1KGUpe2lmKFApe3ZhciB0PShyLmFsbEZpbGVzfHxbXSkuZmlsdGVyKGZ1bmN0aW9uKG8pe3JldHVybiBvLnR5cGU9PT0iZmlsZSJ9KTtpZih0Lmxlbmd0aCl7Zm9yKHZhciBuPVAucGF0aCxpPS0xLGE9MDthPHQubGVuZ3RoO2ErKylpZih0W2FdLnBhdGg9PT1uKXtpPWE7YnJlYWt9aWYoIShpPDApKXt2YXIgdT0oaStlK3QubGVuZ3RoKSV0Lmxlbmd0aCxzPXRbdV0ucGF0aDtzJiZzIT09biYmS3Iocyl9fX19ZnVuY3Rpb24geHUoZSx0KXt2YXIgbj1lLnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctZmlsZW5hbWUiKTtuJiYobi50ZXh0Q29udGVudD10Lm5hbWUpO3ZhciBpPWUucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1pY29uIik7aSYmKGkudGV4dENvbnRlbnQ9RnUoe25hbWU6dC5uYW1lLHR5cGU6ImZpbGUifSkpO3ZhciBhPWUucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy10aXRsZSIpLHU9ZS5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LWxhbmciKTt1JiZ1LnJlbW92ZSgpO3ZhciBzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtzLmNsYXNzTmFtZT0iZmlsZS1wcmV2aWV3LWxhbmciO3ZhciBvPXtpbWFnZToiXHU1NkZFXHU3MjQ3IixwZGY6IlBERiIsdmlkZW86Ilx1ODlDNlx1OTg5MSIsYXVkaW86Ilx1OTdGM1x1OTg5MSIsYmluYXJ5OiJcdTRFOENcdThGREJcdTUyMzYifTt0LmtpbmQ9PT0idGV4dCI/cy50ZXh0Q29udGVudD10Lmxhbmd8fCh0LmV4dHx8IiIpLnJlcGxhY2UoIi4iLCIiKXx8InRleHQiOnMudGV4dENvbnRlbnQ9b1t0LmtpbmRdfHwodC5leHR8fCIiKS5yZXBsYWNlKCIuIiwiIil8fHQua2luZCxhJiZhLmFwcGVuZENoaWxkKHMpLFZpKGUsdCk7dmFyIGw9ZS5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LWJvZHkiKTtsLmlubmVySFRNTD0iIixsLmNsYXNzTGlzdC5yZW1vdmUoImtpbmQtdGV4dCIsImtpbmQtaW1hZ2UiLCJraW5kLXBkZiIsImtpbmQtdmlkZW8iLCJraW5kLWF1ZGlvIiwia2luZC1iaW5hcnkiKSxsLmNsYXNzTGlzdC5hZGQoImtpbmQtIisodC5raW5kfHwidGV4dCIpKSx0LmtpbmQ9PT0iaW1hZ2UiP2VjKGwsdCk6dC5raW5kPT09InBkZiI/dGMobCx0KTp0LmtpbmQ9PT0idmlkZW8iP25jKGwsdCk6dC5raW5kPT09ImF1ZGlvIj9yYyhsLHQpOnQua2luZD09PSJiaW5hcnkiP2ljKGwsdCk6dC5sYW5nPT09Im1hcmtkb3duInx8L1wuKG1kfG1hcmtkb3dufG1keCkkL2kudGVzdCh0Lm5hbWV8fCIiKT9sLmlubmVySFRNTD0nPGRpdiBjbGFzcz0ibWFya2Rvd24tcHJldmlldyI+JytvYyh0LmNvbnRlbnR8fCIiKSsiPC9kaXY+IjpabChsLHQpfWZ1bmN0aW9uIFpsKGUsdCl7dmFyIG49T3UodC5jb250ZW50fHwiIix0LmxhbmcpLGk9bi5zcGxpdChgCmApLGE9aS5tYXAoZnVuY3Rpb24odSxzKXtyZXR1cm4gcysxfSk7ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImNvZGUtcHJldmlldy13cmFwcGVyIj48ZGl2IGNsYXNzPSJjb2RlLXByZXZpZXctbGluZXMiPicrYS5qb2luKGAKYCkrJzwvZGl2PjxkaXYgY2xhc3M9ImNvZGUtcHJldmlldy1jb250ZW50Ij48cHJlPicraS5qb2luKGAKYCkrIjwvcHJlPjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gZWMoZSx0KXt2YXIgbj0iL2FwaS9maWxlLXJhdz9wYXRoPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQucGF0aCk7ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImltYWdlLXByZXZpZXctd3JhcHBlciI+PGltZyBjbGFzcz0iaW1hZ2UtcHJldmlldy1pbWciIHNyYz0iJytuKyciIGFsdD0iJytwKHQubmFtZSkrJyIgLz48L2Rpdj4nO3ZhciBpPWUucXVlcnlTZWxlY3RvcigiLmltYWdlLXByZXZpZXctaW1nIik7aWYoaSl7dmFyIGE9ITE7aS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXthPSFhLGkuY2xhc3NMaXN0LnRvZ2dsZSgiem9vbWVkIixhKX0pfX1mdW5jdGlvbiB0YyhlLHQpe3ZhciBuPSIvYXBpL2ZpbGUtcmF3P3BhdGg9IitlbmNvZGVVUklDb21wb25lbnQodC5wYXRoKTtlLmlubmVySFRNTD0nPGlmcmFtZSBjbGFzcz0icGRmLXByZXZpZXctZnJhbWUiIHNyYz0iJytuKyciIHRpdGxlPSInK3AodC5uYW1lKSsnIj48L2lmcmFtZT4nfWZ1bmN0aW9uIG5jKGUsdCl7dmFyIG49Ii9hcGkvZmlsZS1yYXc/cGF0aD0iK2VuY29kZVVSSUNvbXBvbmVudCh0LnBhdGgpO2UuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJtZWRpYS1wcmV2aWV3LXdyYXBwZXIiPjx2aWRlbyBjbGFzcz0ibWVkaWEtcHJldmlldy12aWRlbyIgY29udHJvbHMgcHJlbG9hZD0ibWV0YWRhdGEiIHNyYz0iJytuKyciPlx1NjBBOFx1NzY4NFx1NkQ0Rlx1ODlDOFx1NTY2OFx1NEUwRFx1NjUyRlx1NjMwMSB2aWRlbyBcdTY4MDdcdTdCN0VcdTMwMDI8L3ZpZGVvPjxkaXYgY2xhc3M9Im1lZGlhLXByZXZpZXctbWV0YSI+JytwKHFuKHQuc2l6ZSkpKyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIHJjKGUsdCl7dmFyIG49Ii9hcGkvZmlsZS1yYXc/cGF0aD0iK2VuY29kZVVSSUNvbXBvbmVudCh0LnBhdGgpO2UuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJtZWRpYS1wcmV2aWV3LXdyYXBwZXIgYXVkaW8iPjxkaXYgY2xhc3M9Im1lZGlhLXByZXZpZXctaWNvbiI+XHV7MUYzQjV9PC9kaXY+PGRpdiBjbGFzcz0ibWVkaWEtcHJldmlldy1uYW1lIj4nK3AodC5uYW1lKSsnPC9kaXY+PGF1ZGlvIGNsYXNzPSJtZWRpYS1wcmV2aWV3LWF1ZGlvIiBjb250cm9scyBwcmVsb2FkPSJtZXRhZGF0YSIgc3JjPSInK24rJyI+XHU2MEE4XHU3Njg0XHU2RDRGXHU4OUM4XHU1NjY4XHU0RTBEXHU2NTJGXHU2MzAxIGF1ZGlvIFx1NjgwN1x1N0I3RVx1MzAwMjwvYXVkaW8+PGRpdiBjbGFzcz0ibWVkaWEtcHJldmlldy1tZXRhIj4nK3AocW4odC5zaXplKSkrIjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gaWMoZSx0KXt2YXIgbj0iL2FwaS9maWxlLXJhdz9kb3dubG9hZD0xJnBhdGg9IitlbmNvZGVVUklDb21wb25lbnQodC5wYXRoKTtlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iYmluYXJ5LXByZXZpZXctY2FyZCI+PGRpdiBjbGFzcz0iYmluYXJ5LXByZXZpZXctaWNvbiI+XHV7MUY0RTZ9PC9kaXY+PGRpdiBjbGFzcz0iYmluYXJ5LXByZXZpZXctbmFtZSI+JytwKHQubmFtZSkrJzwvZGl2PjxkaXYgY2xhc3M9ImJpbmFyeS1wcmV2aWV3LW1ldGEiPjxzcGFuPicrcCgodC5leHR8fCIiKS5yZXBsYWNlKC9eXC4vLCIiKXx8Ilx1NjcyQVx1NzdFNVx1NjgzQ1x1NUYwRiIpKyI8L3NwYW4+PHNwYW4+XHhCNzwvc3Bhbj48c3Bhbj4iK3AocW4odC5zaXplKSkrJzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJiaW5hcnktcHJldmlldy1wYXRoIiB0aXRsZT0iJytwKHQucGF0aCkrJyI+JytwKHQucGF0aCkrJzwvZGl2PjxkaXYgY2xhc3M9ImJpbmFyeS1wcmV2aWV3LWFjdGlvbnMiPjxhIGNsYXNzPSJiaW5hcnktcHJldmlldy1idG4iIGhyZWY9IicrbisnIiBkb3dubG9hZD0iJytwKHQubmFtZSkrJyI+XHU0RTBCXHU4RjdEXHU2NTg3XHU0RUY2PC9hPjxidXR0b24gY2xhc3M9ImJpbmFyeS1wcmV2aWV3LWJ0biIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdGlvbj0idmlldy1jYXQiPlx1NTcyOFx1N0VDOFx1N0FFRlx1NEUyRFx1NjdFNVx1NzcwQjwvYnV0dG9uPjwvZGl2PjwvZGl2Pic7dmFyIGk9ZS5xdWVyeVNlbGVjdG9yKCdbZGF0YS1hY3Rpb249InZpZXctY2F0Il0nKTtpJiZpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe1VpKCdjYXQgLS0gIicrdC5wYXRoKyciJykmJkJ0KCJcdTU0N0RcdTRFRTRcdTVERjJcdTdDOThcdThEMzRcdTUyMzBcdThGOTNcdTUxNjVcdTY4NDYiKX0pfWZ1bmN0aW9uIFZpKGUsdCl7dmFyIG49ZS5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LXRvb2xiYXIiKTtpZihuKXtpZihuLmlubmVySFRNTD0iIixuLmNsYXNzTGlzdC5yZW1vdmUoImVkaXRpbmciKSxQJiZQLmVkaXRpbmcpe24uY2xhc3NMaXN0LmFkZCgiZWRpdGluZyIpLG9yKGUsdCk7cmV0dXJufXZhciBpPVtdO3Qua2luZD09PSJ0ZXh0IiYmaS5wdXNoKHtsYWJlbDoiXHU3RjE2XHU4RjkxXHU2NTg3XHU0RUY2IChFKSIsaWNvbjpNZSgiZWRpdCIpLHByaW1hcnk6ITAsYWN0aW9uOmZ1bmN0aW9uKCl7YWMoKX19KSxpLnB1c2goe2xhYmVsOiJcdTU5MERcdTUyMzZcdThERUZcdTVGODQiLGljb246TWUoImNsaXBib2FyZCIpLGFjdGlvbjpmdW5jdGlvbigpe1ZyKHQucGF0aCkudGhlbihmdW5jdGlvbigpe0J0KCJcdTVERjJcdTU5MERcdTUyMzZcdThERUZcdTVGODQiKX0pfX0pLGkucHVzaCh7bGFiZWw6Ilx1N0M5OFx1OEQzNFx1NTIzMFx1OEY5M1x1NTE2NVx1Njg0NiIsaWNvbjpNZSgic2VuZC10by1pbnB1dCIpLGFjdGlvbjpmdW5jdGlvbigpe1VpKHQucGF0aCkmJkJ0KCJcdTVERjJcdTdDOThcdThEMzRcdTUyMzBcdThGOTNcdTUxNjVcdTY4NDYiKX19KSxpLnB1c2goe2xhYmVsOiJcdTRFMEJcdThGN0QiLGljb246TWUoImRvd25sb2FkIiksYWN0aW9uOmZ1bmN0aW9uKCl7dmFyIGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpO2EuaHJlZj0iL2FwaS9maWxlLXJhdz9kb3dubG9hZD0xJnBhdGg9IitlbmNvZGVVUklDb21wb25lbnQodC5wYXRoKSxhLmRvd25sb2FkPXQubmFtZXx8IiIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKSxhLmNsaWNrKCksYS5yZW1vdmUoKX19KSx0LmtpbmQ9PT0idGV4dCImJihpLnB1c2goe2xhYmVsOiJcdTU5MERcdTUyMzZcdTUxNjhcdTkwRThcdTUxODVcdTVCQjkiLGljb246TWUoImNvcHkiKSxhY3Rpb246ZnVuY3Rpb24oKXtWcih0LmNvbnRlbnR8fCIiKS50aGVuKGZ1bmN0aW9uKCl7QnQoIlx1NURGMlx1NTkwRFx1NTIzNlx1NTE4NVx1NUJCOSIpfSl9fSksaS5wdXNoKHtsYWJlbDoiXHU1MjA3XHU2MzYyXHU4MUVBXHU1MkE4XHU2MzYyXHU4ODRDIixpY29uOk1lKCJ3cmFwLXRleHQiKSx0b2dnbGVDbGFzczoidG9vbGJhci1hY3RpdmUiLGdldEluaXRpYWw6ZnVuY3Rpb24oKXt2YXIgYT1lLnF1ZXJ5U2VsZWN0b3IoIi5jb2RlLXByZXZpZXctY29udGVudCBwcmUiKTtyZXR1cm4gYSYmYS5jbGFzc0xpc3QuY29udGFpbnMoIndyYXAiKX0sYWN0aW9uOmZ1bmN0aW9uKGEpe3ZhciB1PWUucXVlcnlTZWxlY3RvcigiLmNvZGUtcHJldmlldy1jb250ZW50IHByZSIpO3UmJih1LmNsYXNzTGlzdC50b2dnbGUoIndyYXAiKSxhLmNsYXNzTGlzdC50b2dnbGUoInRvb2xiYXItYWN0aXZlIix1LmNsYXNzTGlzdC5jb250YWlucygid3JhcCIpKSl9fSksaS5wdXNoKHtraW5kOiJncm91cCIsY2xhc3NOYW1lOiJ0b29sYmFyLWdyb3VwLWZvbnRzaXplIixjaGlsZHJlbjpbe2xhYmVsOiJcdTdGMjlcdTVDMEZcdTVCNTdcdTUzRjciLGljb246TWUoIm1pbnVzIiksYWN0aW9uOmZ1bmN0aW9uKCl7TXUoZSwtMSl9fSx7a2luZDoibGFiZWwiLGljb246TWUoInR5cGUiKSxsYWJlbDoiXHU1QjU3XHU1M0Y3In0se2xhYmVsOiJcdTY1M0VcdTU5MjdcdTVCNTdcdTUzRjciLGljb246TWUoInBsdXMiKSxhY3Rpb246ZnVuY3Rpb24oKXtNdShlLDEpfX1dfSkpLFN1KG4saSxlKX19ZnVuY3Rpb24gU3UoZSx0LG4pe3QuZm9yRWFjaChmdW5jdGlvbihpKXtpZihpLmtpbmQ9PT0iZ3JvdXAiKXt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTthLmNsYXNzTmFtZT0iZmlsZS1wcmV2aWV3LXRvb2xiYXItZ3JvdXAiKyhpLmNsYXNzTmFtZT8iICIraS5jbGFzc05hbWU6IiIpLGkuY2hpbGRyZW4uZm9yRWFjaChmdW5jdGlvbih1KXtpZih1LmtpbmQ9PT0ibGFiZWwiKXt2YXIgcz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7cy5jbGFzc05hbWU9ImZpbGUtcHJldmlldy10b29sYmFyLWdyb3VwbGFiZWwiLHMudGl0bGU9dS5sYWJlbHx8IiIscy5pbm5lckhUTUw9dS5pY29ufHwiIixhLmFwcGVuZENoaWxkKHMpO3JldHVybn1hLmFwcGVuZENoaWxkKEl1KHUpKX0pLGUuYXBwZW5kQ2hpbGQoYSk7cmV0dXJufWUuYXBwZW5kQ2hpbGQoSXUoaSkpfSl9ZnVuY3Rpb24gSXUoZSl7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIik7cmV0dXJuIHQudHlwZT0iYnV0dG9uIix0LmNsYXNzTmFtZT0iZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuIixlLnByaW1hcnkmJnQuY2xhc3NMaXN0LmFkZCgicHJpbWFyeSIpLGUuZGFuZ2VyJiZ0LmNsYXNzTGlzdC5hZGQoImRhbmdlciIpLHQudGl0bGU9ZS5sYWJlbCx0LnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsZS5sYWJlbCksdC5pbm5lckhUTUw9JzxzcGFuIGNsYXNzPSJ0b29sYmFyLWljb24iPicrKGUuaWNvbnx8IiIpKyI8L3NwYW4+IisoZS50ZXh0Pyc8c3BhbiBjbGFzcz0idG9vbGJhci10ZXh0Ij4nK3AoZS50ZXh0KSsiPC9zcGFuPiI6IiIpLGUuZ2V0SW5pdGlhbCYmZS5nZXRJbml0aWFsKCkmJnQuY2xhc3NMaXN0LmFkZCgidG9vbGJhci1hY3RpdmUiKSx0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihuKXtuLnN0b3BQcm9wYWdhdGlvbigpLHR5cGVvZiBlLmFjdGlvbj09ImZ1bmN0aW9uIiYmZS5hY3Rpb24odCl9KSx0fWZ1bmN0aW9uIG9yKGUsdCl7dmFyIG49ZS5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LXRvb2xiYXIiKTtpZihuKXtuLmlubmVySFRNTD0iIjt2YXIgaT1QJiZQLnNhdmluZyxhPVt7bGFiZWw6Ilx1NEZERFx1NUI1OCAoQ3RybCtTKSIsaWNvbjpNZSgic2F2ZSIpLHRleHQ6Ilx1NEZERFx1NUI1OCIscHJpbWFyeTohMCxhY3Rpb246ZnVuY3Rpb24oKXtMdSgpfX0se2xhYmVsOiJcdTY0QTRcdTk1MDBcdTY1MzlcdTUyQTgiLGljb246TWUoInJvdGF0ZS1jY3ciKSxhY3Rpb246ZnVuY3Rpb24oKXt1YygpfX0se2xhYmVsOiJcdTkwMDBcdTUxRkFcdTdGMTZcdThGOTEgKEVzYykiLGljb246TWUoIngiKSxhY3Rpb246ZnVuY3Rpb24oKXtUdSgpfX1dO1N1KG4sYSxlKSxpJiZuLnF1ZXJ5U2VsZWN0b3JBbGwoIi5maWxlLXByZXZpZXctdG9vbGJhci1idG4iKS5mb3JFYWNoKGZ1bmN0aW9uKHUpe3UuZGlzYWJsZWQ9ITB9KX19ZnVuY3Rpb24gYWMoKXtpZighKCFQfHwhUC5kYXRhKSl7dmFyIGU9UC5kYXRhO2lmKGUua2luZD09PSJ0ZXh0Iil7UC5lZGl0aW5nPSEwLFAuZGlydHk9ITEsUC5vcmlnaW5hbENvbnRlbnQ9ZS5jb250ZW50fHwiIjt2YXIgdD1QLm92ZXJsYXksbj10LnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctYm9keSIpO2lmKG4pe24uY2xhc3NMaXN0LmFkZCgiZWRpdGluZyIpLG4uaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJjb2RlLWVkaXRvci13cmFwcGVyIj48dGV4dGFyZWEgY2xhc3M9ImNvZGUtZWRpdG9yLXRleHRhcmVhIiBzcGVsbGNoZWNrPSJmYWxzZSIgYXV0b2NvbXBsZXRlPSJvZmYiIGF1dG9jb3JyZWN0PSJvZmYiIGF1dG9jYXBpdGFsaXplPSJvZmYiIHdyYXA9Im9mZiI+PC90ZXh0YXJlYT48L2Rpdj4nO3ZhciBpPW4ucXVlcnlTZWxlY3RvcigiLmNvZGUtZWRpdG9yLXRleHRhcmVhIik7aSYmKGkudmFsdWU9ZS5jb250ZW50fHwiIixpLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbigpe3ZhciBhPWkudmFsdWUhPT0oUC5vcmlnaW5hbENvbnRlbnR8fCIiKTthIT09UC5kaXJ0eSYmKFAuZGlydHk9YSxscigpKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24oYSl7aWYoYS5rZXk9PT0iVGFiIil7YS5wcmV2ZW50RGVmYXVsdCgpO3ZhciB1PWkuc2VsZWN0aW9uU3RhcnQscz1pLnNlbGVjdGlvbkVuZCxvPSIgICI7aS52YWx1ZT1pLnZhbHVlLnNsaWNlKDAsdSkrbytpLnZhbHVlLnNsaWNlKHMpLGkuc2VsZWN0aW9uU3RhcnQ9aS5zZWxlY3Rpb25FbmQ9dStvLmxlbmd0aCxpLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJpbnB1dCIpKX19KSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aS5mb2N1cygpLGkuc2V0U2VsZWN0aW9uUmFuZ2UoMCwwKSxpLnNjcm9sbFRvcD0wfSwzMCkpLFZpKHQsZSksbHIoKX19fX1mdW5jdGlvbiBUdSgpe2lmKCEoIVB8fCFQLmVkaXRpbmcpKXt2YXIgZT1mdW5jdGlvbigpe1AuZWRpdGluZz0hMSxQLmRpcnR5PSExO3ZhciB0PVAub3ZlcmxheSxuPXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1ib2R5Iik7biYmbi5jbGFzc0xpc3QucmVtb3ZlKCJlZGl0aW5nIikseHUodCxQLmRhdGEpLGxyKCl9O2lmKFAuZGlydHkmJnR5cGVvZiBybj09ImZ1bmN0aW9uIil7cm4oe3R5cGU6Indhcm5pbmciLHRpdGxlOiJcdTY1M0VcdTVGMDNcdTY3MkFcdTRGRERcdTVCNThcdTc2ODRcdTRGRUVcdTY1MzlcdUZGMUYiLG1lc3NhZ2U6Ilx1NUY1M1x1NTI0RFx1NjU4N1x1NEVGNlx1NjcwOVx1NjcyQVx1NEZERFx1NUI1OFx1NzY4NFx1NjUzOVx1NTJBOFx1RkYwQ1x1OTAwMFx1NTFGQVx1N0YxNlx1OEY5MVx1NTQwRVx1NEYxQVx1NEUyMlx1NTkzMVx1MzAwMiIsYnV0dG9uczpbe2xhYmVsOiJcdTdFRTdcdTdFRURcdTdGMTZcdThGOTEiLHZhbHVlOiExLGtpbmQ6Imdob3N0In0se2xhYmVsOiJcdTY1M0VcdTVGMDNcdTRGRUVcdTY1MzkiLHZhbHVlOiEwLGtpbmQ6ImRhbmdlciIsYXV0b2ZvY3VzOiEwfV0sY2FuY2VsVmFsdWU6ITF9KS50aGVuKGZ1bmN0aW9uKHQpe3QmJmUoKX0pO3JldHVybn1lKCl9fWZ1bmN0aW9uIHVjKCl7aWYoISghUHx8IVAuZWRpdGluZykpe3ZhciBlPVAub3ZlcmxheSx0PWUucXVlcnlTZWxlY3RvcigiLmNvZGUtZWRpdG9yLXRleHRhcmVhIik7dCYmKHQudmFsdWU9UC5vcmlnaW5hbENvbnRlbnR8fCIiLFAuZGlydHk9ITEsbHIoKSx0LmZvY3VzKCkpfX1mdW5jdGlvbiBMdSgpe2lmKCEoIVB8fCFQLmVkaXRpbmcpJiYhUC5zYXZpbmcpe3ZhciBlPVAub3ZlcmxheSx0PWUucXVlcnlTZWxlY3RvcigiLmNvZGUtZWRpdG9yLXRleHRhcmVhIik7aWYodCl7dmFyIG49dC52YWx1ZTtpZihuPT09KFAub3JpZ2luYWxDb250ZW50fHwiIikpe0J0KCJcdTZDQTFcdTY3MDlcdTY1MzlcdTUyQTgiKTtyZXR1cm59UC5zYXZpbmc9ITAsb3IoZSxQLmRhdGEpLGZldGNoKCIvYXBpL2ZpbGUtd3JpdGUiLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxib2R5OkpTT04uc3RyaW5naWZ5KHtwYXRoOlAucGF0aCxjb250ZW50Om59KX0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpLnRoZW4oZnVuY3Rpb24oYSl7cmV0dXJue29rOmkub2ssc3RhdHVzOmkuc3RhdHVzLGRhdGE6YX19KX0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoUC5zYXZpbmc9ITEsIWkub2t8fGkuZGF0YSYmaS5kYXRhLmVycm9yKXt2YXIgYT1pLmRhdGEmJmkuZGF0YS5lcnJvcnx8Ilx1NEZERFx1NUI1OFx1NTkzMVx1OEQyNSAoIitpLnN0YXR1cysiKSI7QnQoYSksb3IoZSxQLmRhdGEpO3JldHVybn1pZihQLmRhdGEuY29udGVudD1uLFAuZGF0YS5zaXplPWkuZGF0YSYmaS5kYXRhLnNpemV8fG4ubGVuZ3RoLFAub3JpZ2luYWxDb250ZW50PW4sUC5kaXJ0eT0hMSxCdCgiXHU1REYyXHU0RkREXHU1QjU4IiksbHIoKSxvcihlLFAuZGF0YSksdHlwZW9mIE90PT0iZnVuY3Rpb24iKXRyeXtPdCgpfWNhdGNoe319KS5jYXRjaChmdW5jdGlvbihpKXtQLnNhdmluZz0hMSxCdCgiXHU0RkREXHU1QjU4XHU1OTMxXHU4RDI1XHVGRjFBIisoaSYmaS5tZXNzYWdlP2kubWVzc2FnZToiXHU3RjUxXHU3RURDXHU5NTE5XHU4QkVGIikpLG9yKGUsUC5kYXRhKX0pfX19ZnVuY3Rpb24gbHIoKXtpZihQKXt2YXIgZT1QLm92ZXJsYXk7aWYoZSl7dmFyIHQ9ZS5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LW5hbWUtcm93Iik7aWYodCl7dmFyIG49dC5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LWRpcnR5Iik7aWYoUC5kaXJ0eSl7aWYoIW4pe3ZhciBpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtpLmNsYXNzTmFtZT0iZmlsZS1wcmV2aWV3LWRpcnR5IixpLnRpdGxlPSJcdTY3MDlcdTY3MkFcdTRGRERcdTVCNThcdTc2ODRcdTRGRUVcdTY1MzkiLGkudGV4dENvbnRlbnQ9Ilx1MjVDRiBcdTY3MkFcdTRGRERcdTVCNTgiLHQuYXBwZW5kQ2hpbGQoaSl9fWVsc2UgbiYmbi5yZW1vdmUoKX19fX1mdW5jdGlvbiBNdShlLHQpe3ZhciBuPWUucXVlcnlTZWxlY3RvcigiLmNvZGUtcHJldmlldy1jb250ZW50IHByZSIpLGk9ZS5xdWVyeVNlbGVjdG9yKCIuY29kZS1wcmV2aWV3LWxpbmVzIik7aWYobil7dmFyIGE9cGFyc2VGbG9hdChnZXRDb21wdXRlZFN0eWxlKG4pLmZvbnRTaXplKXx8MTMsdT1NYXRoLm1heCgxMCxNYXRoLm1pbigyMixhK3QpKTtuLnN0eWxlLmZvbnRTaXplPXUrInB4IixpJiYoaS5zdHlsZS5mb250U2l6ZT11KyJweCIpfX1mdW5jdGlvbiBPdShlLHQpe3ZhciBuPWUucmVwbGFjZSgvJi9nLCImYW1wOyIpLnJlcGxhY2UoLzwvZywiJmx0OyIpLnJlcGxhY2UoLz4vZywiJmd0OyIpLGk9c2MoKTtpZighaSlyZXR1cm4gbjt2YXIgYT1bXTtmb3IodmFyIHUgaW4gaSl7dmFyIHM9aVt1XTtzJiZzLnBhdHRlcm4mJmEucHVzaCh7cGF0dGVybjpzLnBhdHRlcm4sY2xzOnMuY2xzLHByaW9yaXR5OnMucHJpb3JpdHl8fDV9KX1hLnNvcnQoZnVuY3Rpb24oYyxmKXtyZXR1cm4gZi5wcmlvcml0eS1jLnByaW9yaXR5fSk7dmFyIG89YS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuIigiK2MucGF0dGVybi5zb3VyY2UrIikifSksbD1uZXcgUmVnRXhwKG8uam9pbigifCIpLCJnbSIpO3JldHVybiBuLnJlcGxhY2UobCxmdW5jdGlvbihjKXtmb3IodmFyIGY9MDtmPGEubGVuZ3RoO2YrKyl7dmFyIGQ9YVtmXSx2PW5ldyBSZWdFeHAoIl4iK2QucGF0dGVybi5zb3VyY2UrIiQiLCJnbSIpO2lmKHYudGVzdChjKSlyZXR1cm4nPHNwYW4gY2xhc3M9IicrZC5jbHMrJyI+JytjKyI8L3NwYW4+In1yZXR1cm4gY30pfWZ1bmN0aW9uIHNjKCl7cmV0dXJue2NvbW1lbnQ6e3BhdHRlcm46L1wvXC8uKnwjW15cbl0qL3ksY2xzOiJzeW50YXgtY29tbWVudCIscHJpb3JpdHk6MX0sc3RyaW5nOntwYXR0ZXJuOi8iKD86W14iXFxdfFxcLikqInwnKD86W14nXFxdfFxcLikqJ3xgKD86W15gXFxdfFxcLikqYC95LGNsczoic3ludGF4LXN0cmluZyIscHJpb3JpdHk6Mn0sa2V5d29yZDp7cGF0dGVybjovXGIoPzphc3luY3xhd2FpdHxicmVha3xjYXNlfGNhdGNofGNsYXNzfGNvbnN0fGNvbnRpbnVlfGRlYnVnZ2VyfGRlY2xhcmV8ZGVmYXVsdHxkZWxldGV8ZG98ZWxzZXxlbnVtfGV4cG9ydHxleHRlbmRzfGZpbmFsbHl8Zm9yfGZyb218ZnVuY3Rpb258Z2V0fGlmfGltcGxlbWVudHN8aW1wb3J0fGlufGluc3RhbmNlb2Z8aW50ZXJmYWNlfGxldHxtb2R1bGV8bmFtZXNwYWNlfG5ld3xudWxsfG9mfG92ZXJyaWRlfHByaXZhdGV8cHJvdGVjdGVkfHB1YmxpY3xyZWFkb25seXxyZXR1cm58c2V0fHN0YXRpY3xzdXBlcnxzd2l0Y2h8dGhpc3x0aHJvd3x0cnl8dHlwZXx0eXBlb2Z8dW5kZWZpbmVkfHZhcnx2b2lkfHdoaWxlfHlpZWxkfGFic3RyYWN0fGFzfGJhc2V8Ym9vbHxieXRlfGNoYXJ8ZGVjaW1hbHxkb3VibGV8ZXZlbnR8ZXhwbGljaXR8ZXh0ZXJufGZhbHNlfGZpeGVkfGZsb2F0fGZvcmVhY2h8Z290b3xpbXBsaWNpdHxpbnxpbnR8aW50ZXJuYWx8aXN8bG9ja3xsb25nfG9iamVjdHxvcGVyYXRvcnxvdXR8cGFyYW1zfHBhcnRpYWx8cmVhZG9ubHl8cmVmfHNieXRlfHNlYWxlZHxzaG9ydHxzaXplb2Z8c3RhY2thbGxvY3xzdHJpbmd8c3RydWN0fHN3aXRjaHx0aHJvd3x0cnVlfHRyeXx1aW50fHVsb25nfHVuY2hlY2tlZHx1bnNhZmV8dXNob3J0fHVzaW5nfHZpcnR1YWx8dm9sYXRpbGV8d2hlcmV8d2hpbGV8d2l0aHx5aWVsZHxkZWZ8ZWxpZnxlbHNlfGV4Y2VwdHxleGVjfGZpbmFsbHl8Zm9yfGZyb218Z2xvYmFsfGlmfGltcG9ydHxsYW1iZGF8bm9ubG9jYWx8bm90fG9yfHBhc3N8cHJpbnR8cmFpc2V8cmV0dXJufHRyeXx3aGlsZXx3aXRofHlpZWxkfFRydWV8RmFsc2V8Tm9uZXxhbmR8aW58aXN8bGFtYmRhfG5vdHxvcnxmbnxwdWJ8dXNlfG1vZHxpbXBsfHRyYWl0fHN0cnVjdHxlbnVtfG1hdGNofGxvb3B8d2hpbGV8Zm9yfGlmfGVsc2V8cmV0dXJufHNlbGZ8c3VwZXJ8Y3JhdGV8d2hlcmV8YXN5bmN8YXdhaXR8bW92ZXxyZWZ8bXV0fHN0YXRpY3xjb25zdHx1bnNhZmV8ZXh0ZXJufHVzZXxhc3xpbXBsfHN0cnVjdHxlbnVtfHR5cGV8Zm58bGV0fGxvb3B8aWZ8ZWxzZXxtYXRjaHxyZXR1cm58c2VsZnxTZWxmfG1vZHxwdWJ8Y3JhdGV8bWFjcm98ZGVyaXZlfHdoZXJlfGFzeW5jfGF3YWl0fGR5bnxzZWxmfHBhY2thZ2V8ZnVuY3xnb3xyZXR1cm58ZGVmZXJ8Z298aWZ8ZWxzZXxzd2l0Y2h8Y2FzZXxkZWZhdWx0fGZvcnxyYW5nZXxzZWxlY3R8YnJlYWt8Y29udGludWV8ZmFsbHRocm91Z2h8Y29uc3R8c3RydWN0fGVudW18dHlwZXxpbnRlcmZhY2V8bWFwfGNoYW58dmFyfG5pbHx0cnVlfGZhbHNlfGlvdGF8bGVufGNhcHxhcHBlbmR8bWFrZXxuZXd8cGFuaWN8cmVjb3ZlcnxzZWxlY3R8ZWxzZXxpZnxlbGlmfGVuZHxmb3J8ZnVuY3Rpb258aWZ8aW58bG9jYWx8bmlsfG5vdHxvcnxyZXBlYXR8cmV0dXJufHRoZW58dHJ1ZXx1bnRpbHx3aGlsZXxlbmR8YW5kfGJlZ2lufGRvfGVuZHxmYWxzZXxmb3J8ZnVuY3Rpb258aWZ8aW58bG9jYWx8bmlsfG5vdHxvcnxyZXBlYXR8cmV0dXJufHRoZW58dHJ1ZXx1bnRpbHx3aGlsZSlcYi95LGNsczoic3ludGF4LWtleXdvcmQiLHByaW9yaXR5OjN9LG51bWJlcjp7cGF0dGVybjovXGIoPzoweFtcZGEtZkEtRl0rfDBiWzAxXSt8MG9bMC03XSt8XGQrXC4/XGQqKD86ZVsrLV0/XGQrKT8pXGIveSxjbHM6InN5bnRheC1udW1iZXIiLHByaW9yaXR5OjJ9LGZ1bmN0aW9uOntwYXR0ZXJuOi9cYltBLVpdW2EtekEtWjAtOV0qW2Etel1cdyooPz1ccypcKCkveSxjbHM6InN5bnRheC1mdW5jdGlvbiIscHJpb3JpdHk6NH0sdHlwZTp7cGF0dGVybjovXGIoPzpzdHJpbmd8bnVtYmVyfGJvb2xlYW58dm9pZHxhbnl8dW5rbm93bnxuZXZlcnxvYmplY3R8c3ltYm9sfGJpZ2ludHxBcnJheXxPYmplY3R8U3RyaW5nfE51bWJlcnxCb29sZWFufE1hcHxTZXR8V2Vha01hcHxXZWFrU2V0fFByb21pc2V8RXJyb3J8VHlwZXxJbnRlcmZhY2V8RW51bXxDbGFzc3xTdHJ1Y3R8SW1wbHxUcmFpdHxmbnxmbmN8ZnVuY3xmdW5jdGlvbnxkZWZ8cHJvY3xmdW58cHVifHN0YXRpY3xjb25zdHxsZXR8dmFyfGludHxmbG9hdHxkb3VibGV8Ym9vbHxjaGFyfGJ5dGV8c3RyaW5nfHU4fHUxNnx1MzJ8dTY0fGk4fGkxNnxpMzJ8aTY0fGYzMnxmNjR8dXNpemV8aXNpemV8c3RyfFZlY3xIYXNoTWFwfE9wdGlvbnxSZXN1bHR8Qm94fFJjfEFyY3xDZWxsfFJlZkNlbGwpXGIveSxjbHM6InN5bnRheC10eXBlIixwcmlvcml0eTo0fSxvcGVyYXRvcjp7cGF0dGVybjovWytcLSovJT08PiEmfF5+PzpdK3xcLlwuXC4/L3ksY2xzOiJzeW50YXgtb3BlcmF0b3IiLHByaW9yaXR5OjV9LHB1bmN0dWF0aW9uOntwYXR0ZXJuOi9be31bXF0oKTssXC5dL3ksY2xzOiJzeW50YXgtcHVuY3R1YXRpb24iLHByaW9yaXR5OjZ9fX1mdW5jdGlvbiBvYyhlKXtpZighZSlyZXR1cm4iIjt2YXIgdD1wKGUpO3Q9dC5yZXBsYWNlKC9gYGAoXHcqKVxuKFtcc1xTXSo/KWBgYC9nLGZ1bmN0aW9uKGksYSx1KXt2YXIgcz1PdSh1LnRyaW0oKSxhKSxvPXMucmVwbGFjZSgvXy9nLCImIzk1OyIpLnJlcGxhY2UoL1wqL2csIiYjNDI7Iik7cmV0dXJuJzxwcmU+PGNvZGUgY2xhc3M9Imxhbmd1YWdlLScrYSsnIj4nK28rIjwvY29kZT48L3ByZT4ifSksdD10LnJlcGxhY2UoL2AoW15gXSspYC9nLGZ1bmN0aW9uKGksYSl7cmV0dXJuIjxjb2RlPiIrYS5yZXBsYWNlKC9fL2csIiYjOTU7IikucmVwbGFjZSgvXCovZywiJiM0MjsiKSsiPC9jb2RlPiJ9KSx0PXQucmVwbGFjZSgvXiMjIyMjI1xzKyguKikkL2dtLCI8aDY+JDE8L2g2PiIpLHQ9dC5yZXBsYWNlKC9eIyMjIyNccysoLiopJC9nbSwiPGg1PiQxPC9oNT4iKSx0PXQucmVwbGFjZSgvXiMjIyNccysoLiopJC9nbSwiPGg0PiQxPC9oND4iKSx0PXQucmVwbGFjZSgvXiMjI1xzKyguKikkL2dtLCI8aDM+JDE8L2gzPiIpLHQ9dC5yZXBsYWNlKC9eIyNccysoLiopJC9nbSwiPGgyPiQxPC9oMj4iKSx0PXQucmVwbGFjZSgvXiNccysoLiopJC9nbSwiPGgxPiQxPC9oMT4iKSx0PXQucmVwbGFjZSgvXCpcKlwqKC4rPylcKlwqXCovZywiPHN0cm9uZz48ZW0+JDE8L2VtPjwvc3Ryb25nPiIpLHQ9dC5yZXBsYWNlKC9cKlwqKC4rPylcKlwqL2csIjxzdHJvbmc+JDE8L3N0cm9uZz4iKSx0PXQucmVwbGFjZSgvXCooLis/KVwqL2csIjxlbT4kMTwvZW0+IiksdD10LnJlcGxhY2UoLyhefFteXHddKV9fXyhcUyg/OlteXG5dKj9cUyk/KV9fXyg/IVx3KS9nLCIkMTxzdHJvbmc+PGVtPiQyPC9lbT48L3N0cm9uZz4iKSx0PXQucmVwbGFjZSgvKF58W15cd10pX18oXFMoPzpbXlxuXSo/XFMpPylfXyg/IVx3KS9nLCIkMTxzdHJvbmc+JDI8L3N0cm9uZz4iKSx0PXQucmVwbGFjZSgvKF58W15cd10pXyhcUyg/OlteXG5fXSo/XFMpPylfKD8hXHcpL2csIiQxPGVtPiQyPC9lbT4iKSx0PXQucmVwbGFjZSgvfn4oLis/KX5+L2csIjxkZWw+JDE8L2RlbD4iKSx0PXQucmVwbGFjZSgvXFsoW15cXV0rKVxdXCgoW14pXSspXCkvZywnPGEgaHJlZj0iJDIiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIj4kMTwvYT4nKSx0PXQucmVwbGFjZSgvIVxbKFteXF1dKilcXVwoKFteKV0rKVwpL2csJzxpbWcgc3JjPSIkMiIgYWx0PSIkMSI+JyksdD10LnJlcGxhY2UoL14mZ3Q7XHMrKC4qKSQvZ20sIjxibG9ja3F1b3RlPiQxPC9ibG9ja3F1b3RlPiIpLHQ9dC5yZXBsYWNlKC9eLS0tKyQvZ20sIjxocj4iKSx0PXQucmVwbGFjZSgvXlwqXCpcKiskL2dtLCI8aHI+IiksdD10LnJlcGxhY2UoL15bXC1cKl1ccysoLiopJC9nbSwiPGxpPiQxPC9saT4iKSx0PXQucmVwbGFjZSgvKDxsaT4uKjxcL2xpPlxuPykrL2csIjx1bD4kJjwvdWw+IiksdD10LnJlcGxhY2UoL15cZCtcLlxzKyguKikkL2dtLCI8bGk+JDE8L2xpPiIpLHQ9VG8odCk7dmFyIG49dC5zcGxpdCgvXG57Mix9Lyk7cmV0dXJuIHQ9bi5tYXAoZnVuY3Rpb24oaSl7cmV0dXJuIGk9aS50cmltKCksaT8vXjwoaFsxLTZdfHVsfG9sfGxpfGJsb2NrcXVvdGV8cHJlfHRhYmxlfGhyfGRpdikvLnRlc3QoaSk/aToiPHA+IitpLnJlcGxhY2UoL1xuL2csIjxicj4iKSsiPC9wPiI6IiJ9KS5qb2luKGAKYCksdH1mdW5jdGlvbiBQdSgpe2lmKCFyLnNlbGVjdGVkSWR8fCFyLmdpdFN0YXR1c3x8IXIuZ2l0U3RhdHVzLmlzR2l0fHxyLmdpdFN0YXR1c1Nlc3Npb25JZCE9PXIuc2VsZWN0ZWRJZClyZXR1cm4iIjt2YXIgZT1yLmdpdFN0YXR1cy5icmFuY2h8fCI/Iix0PXIuZ2l0U3RhdHVzLm1vZGlmaWVkQ291bnR8fDAsbj1lKyh0PyIgIFx4QjcgICIrdCsiIFx1NEUyQVx1NjU4N1x1NEVGNlx1NUY4NVx1NjNEMFx1NEVBNCI6IiAgXHhCNyAgXHU1REU1XHU0RjVDXHU1MzNBXHU1RTcyXHU1MUMwIik7cmV0dXJuJzxidXR0b24gaWQ9InRvcGJhci1naXQtYmFkZ2UiIGNsYXNzPSJ0b3BiYXItZ2l0LWJhZGdlIiB0eXBlPSJidXR0b24iIHRpdGxlPSInK3AobikrJyIgYXJpYS1sYWJlbD0iXHU1RkVCXHU2Mzc3XHU2M0QwXHU0RUE0Ij48c3ZnIGNsYXNzPSJ0b3BiYXItZ2l0LWljb24iIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48Y2lyY2xlIGN4PSI2IiBjeT0iNiIgcj0iMiIvPjxjaXJjbGUgY3g9IjYiIGN5PSIxOCIgcj0iMiIvPjxjaXJjbGUgY3g9IjE4IiBjeT0iOSIgcj0iMiIvPjxwYXRoIGQ9Ik02IDh2OCIvPjxwYXRoIGQ9Ik0xOCAxMXYxYTMgMyAwIDAgMS0zIDNIOSIvPjwvc3ZnPjxzcGFuIGNsYXNzPSJ0b3BiYXItZ2l0LWJyYW5jaCI+JytwKGUpKyI8L3NwYW4+IisodD4wPyc8c3BhbiBjbGFzcz0idG9wYmFyLWdpdC1jb3VudCI+XHhCNycrdCsiPC9zcGFuPiI6JzxzcGFuIGNsYXNzPSJ0b3BiYXItZ2l0LWNsZWFuIiBhcmlhLWhpZGRlbj0idHJ1ZSI+XHUyNzEzPC9zcGFuPicpKyI8L2J1dHRvbj4ifWZ1bmN0aW9uIEtpKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvcGJhci1naXQtc2xvdCIpO2lmKGUpe2UuaW5uZXJIVE1MPVB1KCk7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvcGJhci1naXQtYmFkZ2UiKTt0JiZ0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihuKXtuLnByZXZlbnREZWZhdWx0KCkscXUoKX0pfX1mdW5jdGlvbiBsYyhlKXtpZighZSlyZXR1cm4iIjt2YXIgdD1yLnRvcGJhck1vcmVPcGVuLG49ISFlLmNsYXVkZVNlc3Npb25JZCxpPSEhZS5jd2QsYT1lLndvcmt0cmVlRW5hYmxlZCYmZS53b3JrdHJlZSYmZS53b3JrdHJlZS5icmFuY2gmJmUud29ya3RyZWUucGF0aCx1PWUud29ya3RyZWVNZXJnZVN0YXR1cz09PSJtZXJnZWQiJiZlLndvcmt0cmVlTWVyZ2VJbmZvJiZlLndvcmt0cmVlTWVyZ2VJbmZvLmNsZWFudXBEb25lPT09ITEscz1lLnN0YXR1cz09PSJydW5uaW5nInx8ZS53b3JrdHJlZU1lcmdlU3RhdHVzPT09Im1lcmdpbmciLG89YSYmZS53b3JrdHJlZU1lcmdlU3RhdHVzIT09Im1lcmdlZCIsbD11LGM9bnx8aXx8ITAsZj1vfHxsfHwhMCxkPSc8c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxyZWN0IHg9IjkiIHk9IjkiIHdpZHRoPSIxMyIgaGVpZ2h0PSIxMyIgcng9IjIiIHJ5PSIyIi8+PHBhdGggZD0iTTUgMTVINGEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg5YTIgMiAwIDAgMSAyIDJ2MSIvPjwvc3ZnPicsdj0nPHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTcuNSAxOWE0LjUgNC41IDAgMSAwLTEuNS04Ljc0QTYgNiAwIDEgMCA2IDE0aDExLjV6Ii8+PC9zdmc+JyxnPSc8c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMiAxOWEyIDIgMCAwIDEtMiAySDRhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoNWwyIDNoOWEyIDIgMCAwIDEgMiAyeiIvPjwvc3ZnPicsaD0nPHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48bGluZSB4MT0iNCIgeTE9IjkiIHgyPSIyMCIgeTI9IjkiLz48bGluZSB4MT0iNCIgeTE9IjE1IiB4Mj0iMjAiIHkyPSIxNSIvPjxsaW5lIHgxPSIxMCIgeTE9IjMiIHgyPSI4IiB5Mj0iMjEiLz48bGluZSB4MT0iMTYiIHkxPSIzIiB4Mj0iMTQiIHkyPSIyMSIvPjwvc3ZnPicsbT0nPHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNNyA3aDEwIi8+PHBhdGggZD0iTTcgMTJoMTAiLz48cGF0aCBkPSJNNyAxN2gxMCIvPjxwYXRoIGQ9Ik01IDdsLTIgMiAyIDIiLz48cGF0aCBkPSJNMTkgMTVsMiAyLTIgMiIvPjwvc3ZnPicsRT0nPHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMyA2aDE4Ii8+PHBhdGggZD0iTTggNlY0YTIgMiAwIDAxMi0yaDRhMiAyIDAgMDEyIDJ2MiIvPjxwYXRoIGQ9Ik0xOSA2bC0xIDE0YTIgMiAwIDAxLTIgMkg4YTIgMiAwIDAxLTItMkw1IDYiLz48L3N2Zz4nLEM9IiI7aWYobil7dmFyIGI9ZS5wcm92aWRlcj09PSJjb2RleCI/Ilx1NTkwRFx1NTIzNiBDb2RleCB0aHJlYWQgSUQiOiJcdTU5MERcdTUyMzYgQ2xhdWRlIFx1NEYxQVx1OEJERCBJRCI7Qys9JzxidXR0b24gY2xhc3M9InRvcGJhci1tb3JlLWl0ZW0iIGRhdGEtYWN0aW9uPSJjb3B5LWNsYXVkZS1zZXNzaW9uLWlkIiB0eXBlPSJidXR0b24iIHJvbGU9Im1lbnVpdGVtIj4nK3YrIjxzcGFuPiIrYisiPC9zcGFuPjwvYnV0dG9uPiJ9aSYmKEMrPSc8YnV0dG9uIGNsYXNzPSJ0b3BiYXItbW9yZS1pdGVtIiBkYXRhLWFjdGlvbj0iY29weS1jd2QiIHR5cGU9ImJ1dHRvbiIgcm9sZT0ibWVudWl0ZW0iPicrZysiPHNwYW4+XHU1OTBEXHU1MjM2XHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1PC9zcGFuPjwvYnV0dG9uPiIpLEMrPSc8YnV0dG9uIGNsYXNzPSJ0b3BiYXItbW9yZS1pdGVtIiBkYXRhLWFjdGlvbj0iY29weS1zZXNzaW9uLWlkIiB0eXBlPSJidXR0b24iIHJvbGU9Im1lbnVpdGVtIj4nK2grIjxzcGFuPlx1NTkwRFx1NTIzNlx1NEYxQVx1OEJERCBJRDwvc3Bhbj48L2J1dHRvbj4iO3ZhciBCPSIiO28/Qis9JzxidXR0b24gY2xhc3M9InRvcGJhci1tb3JlLWl0ZW0iIGRhdGEtYWN0aW9uPSJ3b3JrdHJlZS1tZXJnZSIgdHlwZT0iYnV0dG9uIiByb2xlPSJtZW51aXRlbSInKyhzPyIgZGlzYWJsZWQiOiIiKSsiPiIrbSsiPHNwYW4+XHU1NDA4XHU1RTc2XHU1MjMwXHU0RTNCXHU1MjA2XHU2NTJGXHUyMDI2PC9zcGFuPjwvYnV0dG9uPiI6bCYmKEIrPSc8YnV0dG9uIGNsYXNzPSJ0b3BiYXItbW9yZS1pdGVtIiBkYXRhLWFjdGlvbj0id29ya3RyZWUtY2xlYW51cCIgdHlwZT0iYnV0dG9uIiByb2xlPSJtZW51aXRlbSI+JyttKyI8c3Bhbj5cdTkxQ0RcdThCRDUgd29ya3RyZWUgXHU2RTA1XHU3NDA2PC9zcGFuPjwvYnV0dG9uPiIpLEIrPSc8YnV0dG9uIGNsYXNzPSJ0b3BiYXItbW9yZS1pdGVtIHRvcGJhci1tb3JlLWl0ZW0tZGFuZ2VyIiBkYXRhLWFjdGlvbj0iZGVsZXRlLXNlc3Npb24iIHR5cGU9ImJ1dHRvbiIgcm9sZT0ibWVudWl0ZW0iPicrRSsiPHNwYW4+XHU1MjIwXHU5NjY0XHU1RjUzXHU1MjREXHU0RjFBXHU4QkREPC9zcGFuPjwvYnV0dG9uPiI7dmFyIEY9YyYmZj8nPGRpdiBjbGFzcz0idG9wYmFyLW1vcmUtZGl2aWRlciIgcm9sZT0ic2VwYXJhdG9yIj48L2Rpdj4nOiIiO3JldHVybic8ZGl2IGNsYXNzPSJ0b3BiYXItbW9yZS13cmFwIj48YnV0dG9uIGlkPSJ0b3BiYXItbW9yZS1idXR0b24iIGNsYXNzPSJ0b3BiYXItYnRuIHNxdWFyZScrKHQ/IiBhY3RpdmUiOiIiKSsnIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERFx1NjRDRFx1NEY1QyIgYXJpYS1oYXNwb3B1cD0ibWVudSIgYXJpYS1leHBhbmRlZD0iJysodD8idHJ1ZSI6ImZhbHNlIikrJyIgdGl0bGU9Ilx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERFx1NjRDRFx1NEY1QyI+PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxIi8+PGNpcmNsZSBjeD0iMTIiIGN5PSI1IiByPSIxIi8+PGNpcmNsZSBjeD0iMTIiIGN5PSIxOSIgcj0iMSIvPjwvc3ZnPjwvYnV0dG9uPjxkaXYgaWQ9InRvcGJhci1tb3JlLW1lbnUiIGNsYXNzPSJ0b3BiYXItbW9yZS1tZW51JysodD8iIjoiIGhpZGRlbiIpKyciIHJvbGU9Im1lbnUiIGFyaWEtbGFiZWw9Ilx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERCI+JytDK0YrQisiPC9kaXY+PC9kaXY+In1mdW5jdGlvbiB3bihlLHQpe2lmKCFlKXJldHVybiBQcm9taXNlLnJlc29sdmUobnVsbCk7dmFyIG49dCYmdC5mb3JjZSxpPURhdGUubm93KCk7aWYoIW4mJnIuZ2l0U3RhdHVzU2Vzc2lvbklkPT09ZSYmci5naXRTdGF0dXMmJmktci5naXRTdGF0dXNMYXN0RmV0Y2hBdDwxZTMpcmV0dXJuIFByb21pc2UucmVzb2x2ZShyLmdpdFN0YXR1cyk7aWYoci5naXRTdGF0dXNJbmZsaWdodCYmci5naXRTdGF0dXNJbmZsaWdodC5zZXNzaW9uSWQ9PT1lKXJldHVybiByLmdpdFN0YXR1c0luZmxpZ2h0LnByb21pc2U7ci5naXRTdGF0dXNMb2FkaW5nPSEwO3ZhciBhPWZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KGUpKyIvZ2l0LXN0YXR1cyIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiB1Lm9rP3UuanNvbigpOntpc0dpdDohMX19KS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiByLmdpdFN0YXR1cz11fHx7aXNHaXQ6ITF9LHIuZ2l0U3RhdHVzU2Vzc2lvbklkPWUsci5naXRTdGF0dXNMYXN0RmV0Y2hBdD1EYXRlLm5vdygpLEtpKCksdX0pLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJuIHIuZ2l0U3RhdHVzPXtpc0dpdDohMX0sci5naXRTdGF0dXNTZXNzaW9uSWQ9ZSxyLmdpdFN0YXR1c0xhc3RGZXRjaEF0PURhdGUubm93KCksS2koKSxudWxsfSkuZmluYWxseShmdW5jdGlvbigpe3IuZ2l0U3RhdHVzTG9hZGluZz0hMSxyLmdpdFN0YXR1c0luZmxpZ2h0JiZyLmdpdFN0YXR1c0luZmxpZ2h0LnNlc3Npb25JZD09PWUmJihyLmdpdFN0YXR1c0luZmxpZ2h0PW51bGwpfSk7cmV0dXJuIHIuZ2l0U3RhdHVzSW5mbGlnaHQ9e3Nlc3Npb25JZDplLHByb21pc2U6YX0sYX12YXIgQ249bnVsbCxCbj1udWxsLFhtPW51bGw7ZnVuY3Rpb24gY2MoZSl7cmV0dXJuIGU9PT0iY29tbWl0LXRhZyJ8fGU9PT0iY29tbWl0LXRhZy1wdXNoInx8ZT09PSJjb21taXQtcHVzaCI/ZToiY29tbWl0In1mdW5jdGlvbiBkYyhlKXtyZXR1cm4gZT1jYyhlKSxlPT09ImNvbW1pdC10YWctcHVzaCI/e2FjdGlvbjplLGxhYmVsOiJDb21taXQgKyBUYWcgKyBQdXNoIix2ZXJiOiJcdTYzRDBcdTRFQTRcdTMwMDFcdTYyNTMgVGFnIFx1NUU3Nlx1NjNBOFx1OTAwMSIsd2l0aFRhZzohMCxwdXNoOiEwLHRvbmU6ImFsbCJ9OmU9PT0iY29tbWl0LXRhZyI/e2FjdGlvbjplLGxhYmVsOiJDb21taXQgKyBUYWciLHZlcmI6Ilx1NjNEMFx1NEVBNFx1NUU3Nlx1NjI1MyBUYWciLHdpdGhUYWc6ITAscHVzaDohMSx0b25lOiJ0YWcifTplPT09ImNvbW1pdC1wdXNoIj97YWN0aW9uOmUsbGFiZWw6IkNvbW1pdCArIFB1c2giLHZlcmI6Ilx1NjNEMFx1NEVBNFx1NUU3Nlx1NjNBOFx1OTAwMSIsd2l0aFRhZzohMSxwdXNoOiEwLHRvbmU6InB1c2gifTp7YWN0aW9uOiJjb21taXQiLGxhYmVsOiJDb21taXQiLHZlcmI6Ilx1NEVDNVx1NjNEMFx1NEVBNCIsd2l0aFRhZzohMSxwdXNoOiExLHRvbmU6ImNvbW1pdCJ9fWZ1bmN0aW9uIHF1KCl7aWYoci5zZWxlY3RlZElkKXtyLnF1aWNrQ29tbWl0T3Blbj0hMCxyLnF1aWNrQ29tbWl0U3VibWl0dGluZz0hMSxyLnF1aWNrQ29tbWl0QXV0b0dlbmVyYXRpbmc9ITEsci5xdWlja0NvbW1pdEVycm9yPSIiLHIucXVpY2tDb21taXRGb3JtPXtjdXN0b21NZXNzYWdlOiIiLHRhZzoiIix0YWdFZGl0ZWQ6ITF9LHIucXVpY2tDb21taXRQdXNoaW5nPSExLHIucXVpY2tDb21taXRQdXNoRXJyb3I9IiIsci5xdWlja0NvbW1pdFJlc3VsdD1udWxsLHIucXVpY2tDb21taXREcmFnQWN0aW9uPSJjb21taXQiLFpuKCksdm4oKSxlcigpLFB0KCk7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1tb2RhbCIpO2UmJihlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLHIubGFzdEZvY3VzZWRFbGVtZW50PWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQsQWkoZSkpLENuJiZkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIixDbiksQ249ZnVuY3Rpb24odCl7dC5rZXk9PT0iRXNjYXBlIiYmci5xdWlja0NvbW1pdE9wZW4mJiFyLnF1aWNrQ29tbWl0U3VibWl0dGluZyYmIXIucXVpY2tDb21taXRQdXNoaW5nJiZfbigpfSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixDbiksd24oci5zZWxlY3RlZElkLHtmb3JjZTohMH0pLnRoZW4oZnVuY3Rpb24oKXtyLnF1aWNrQ29tbWl0T3BlbiYmUHQoKX0pfX1mdW5jdGlvbiBfbigpe3IucXVpY2tDb21taXRPcGVuPSExLHIucXVpY2tDb21taXRTdWJtaXR0aW5nPSExLHIucXVpY2tDb21taXRFcnJvcj0iIixyLnF1aWNrQ29tbWl0UmVzdWx0PW51bGwsci5xdWlja0NvbW1pdERyYWdBY3Rpb249ImNvbW1pdCI7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1tb2RhbCIpO2UmJmUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksci5mb2N1c1RyYXBIYW5kbGVyJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsci5mb2N1c1RyYXBIYW5kbGVyKSxyLmZvY3VzVHJhcEhhbmRsZXI9bnVsbCksQ24mJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIixDbiksQ249bnVsbCksQm4mJihCbigpLEJuPW51bGwpLHIubGFzdEZvY3VzZWRFbGVtZW50JiZ0eXBlb2Ygci5sYXN0Rm9jdXNlZEVsZW1lbnQuZm9jdXM9PSJmdW5jdGlvbiImJnIubGFzdEZvY3VzZWRFbGVtZW50LmZvY3VzKCl9ZnVuY3Rpb24gUHQoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LW1vZGFsIik7aWYoZSl7Qm4mJihCbigpLEJuPW51bGwpO3ZhciB0PU51KCksbj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtuLmlubmVySFRNTD10O3ZhciBpPW4ucXVlcnlTZWxlY3RvcigiI3F1aWNrLWNvbW1pdC1tb2RhbCIpO2kmJihlLmlubmVySFRNTD1pLmlubmVySFRNTCxIdSgpKX19ZnVuY3Rpb24gSHUoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LWNsb3NlLWJ0biIpO2UmJmUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLF9uKTt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LWNhbmNlbC1idG4iKTt0JiZ0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixfbik7dmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1haS1idG4iKTtuJiZuLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixtYyk7dmFyIGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1tZXNzYWdlIik7aSYmKGkuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLGZ1bmN0aW9uKCl7ci5xdWlja0NvbW1pdEZvcm0uY3VzdG9tTWVzc2FnZT1pLnZhbHVlfSksaS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbihzKXsocy5tZXRhS2V5fHxzLmN0cmxLZXkpJiZzLmtleT09PSJFbnRlciImJihzLnByZXZlbnREZWZhdWx0KCksTm4oImNvbW1pdCIpKX0pKTt2YXIgYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LXRhZyIpO2EmJihhLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbigpe3IucXVpY2tDb21taXRGb3JtLnRhZz1hLnZhbHVlLHIucXVpY2tDb21taXRGb3JtLnRhZ0VkaXRlZD0hMH0pLGEuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24ocyl7cy5rZXk9PT0iRW50ZXIiJiYocy5wcmV2ZW50RGVmYXVsdCgpLE5uKCJjb21taXQtdGFnIikpfSkpO3ZhciB1PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtcHVzaC1hZnRlci1idG4iKTt1JiZ1LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhciBzPXIucXVpY2tDb21taXRSZXN1bHR8fHt9O2djKHtwdXNoQ29tbWl0czohMCxwdXNoVGFnczohIXMudGFnTmFtZSxjbG9zZU9uU3VjY2VzczohMH0pfSksdmMoKX1mdW5jdGlvbiBmYyhlKXt2YXIgdD0hIShlJiZlLnRhZyksbj0hIShlJiZlLnB1c2gpO3JldHVybiB0JiZuPyJjb21taXQtdGFnLXB1c2giOnQ/ImNvbW1pdC10YWciOm4/ImNvbW1pdC1wdXNoIjoiY29tbWl0In12YXIgcGM9NTgsSnI9MTA7ZnVuY3Rpb24gX3UoZSl7cmV0dXJuIGU9PT0idGFnIj97YWN0aW9uOiJjb21taXQtdGFnIixzdWI6ITF9OmU9PT0icHVzaCI/e2FjdGlvbjoiY29tbWl0LXB1c2giLHN1YjohMX06ZT09PSJzdWIiP3thY3Rpb246ImNvbW1pdCIsc3ViOiEwfTp7YWN0aW9uOiJjb21taXQiLHN1YjohMX19ZnVuY3Rpb24gdmMoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicWMtZG9jay1maWVsZCIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInFjLWRvY2stc3RhZ2UiKSxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxYy1kb2NrLWxhdW5jaCIpLGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInFjLWRvY2stY2x1c3RlciIpO2lmKCFlfHwhdHx8IW58fCFpKXJldHVybjt2YXIgYT1bImNvbW1pdCIsInRhZyIsInB1c2giXSx1PXt9O2lmKGEuZm9yRWFjaChmdW5jdGlvbihEKXt1W0RdPWUucXVlcnlTZWxlY3RvcignW2RhdGEtY2hpcD0iJytEKyciXScpfSksIXUuY29tbWl0fHwhdS50YWd8fCF1LnB1c2gpcmV0dXJuO3Uuc3ViPWUucXVlcnlTZWxlY3RvcignW2RhdGEtY2hpcD0ic3ViIl0nKTt2YXIgcz0hIXUuc3ViLG89cz9hLmNvbmNhdChbInN1YiJdKTphO2Z1bmN0aW9uIGwoRCl7cmV0dXJuIHVbRF0/dVtEXS5vZmZzZXRXaWR0aDo5MH1mdW5jdGlvbiBjKCl7cmV0dXJuIHUuY29tbWl0P3UuY29tbWl0Lm9mZnNldEhlaWdodDozOH1mdW5jdGlvbiBmKCl7cmV0dXJuIHdpbmRvdy5tYXRjaE1lZGlhJiZ3aW5kb3cubWF0Y2hNZWRpYSgiKG1heC13aWR0aDogNzIwcHgpIikubWF0Y2hlc31mdW5jdGlvbiBkKCl7dmFyIEQ9ZS5jbGllbnRXaWR0aCxUPWUuY2xpZW50SGVpZ2h0LE89YygpLFU9bCgiY29tbWl0IiksVj1sKCJ0YWciKSxYPWwoInB1c2giKTtpZihmKCkmJnMpe3ZhciBlZT1NYXRoLm1heCg4LFQqLjItTy8yKSxaPU1hdGgubWluKFQtTy04LFQqLjctTy8yKSx1ZT1mdW5jdGlvbihvZSl7cmV0dXJuIE1hdGgubWF4KDgsRCouMjctb2UvMil9LEw9ZnVuY3Rpb24ob2Upe3JldHVybiBNYXRoLm1pbihELW9lLTgsRCouNzMtb2UvMil9O3JldHVybntjb21taXQ6e3g6dWUoVSkseTplZX0sdGFnOnt4OkwoVikseTplZX0scHVzaDp7eDp1ZShYKSx5Olp9LHN1Yjp7eDpMKGwoInN1YiIpKSx5Olp9fX12YXIgTT1mKCksTj1NP01hdGgubWF4KDgsVCouMTgtTy8yKTpNYXRoLm1heCg4LFQqLjEyKSxKPU0/TWF0aC5taW4oVC1PLTgsVCouNzItTy8yKTpNYXRoLm1pbihULU8tOCxUKi44OC1PKSxLPU0/LjI0Oi4yOCxpZT1NPy43NjouNzIsdGU9e2NvbW1pdDp7eDpNYXRoLm1heCg4LChELVUpLzIpLHk6Tn0sdGFnOnt4Ok1hdGgubWF4KDgsRCpLLVYvMikseTpKfSxwdXNoOnt4Ok1hdGgubWluKEQtWC04LEQqaWUtWC8yKSx5Okp9fTtpZihzKXt2YXIgc2U9bCgic3ViIik7dGUuc3ViPXt4Ok1hdGgubWluKEQtc2UtOCxEKi45NC1zZS8yKSx5Ok1hdGgubWF4KDgsTWF0aC5taW4oVC1PLTgsKFQtTykvMikpfX1yZXR1cm4gdGV9dmFyIHY9e307ZnVuY3Rpb24gZyhELFQsTyl7dVtEXSYmKHVbRF0uc3R5bGUudHJhbnNmb3JtPSJ0cmFuc2xhdGUoIitULnRvRml4ZWQoMSkrInB4LCIrTy50b0ZpeGVkKDEpKyJweCkiKX1mdW5jdGlvbiBoKEQpe3Y9ZCgpLG8uZm9yRWFjaChmdW5jdGlvbihUKXt1W1RdLmNsYXNzTGlzdC50b2dnbGUoInFjLWNoaXAtLWFuaW0iLCEhRCksZyhULHZbVF0ueCx2W1RdLnkpfSl9aCghMSk7dmFyIG09bnVsbDtmdW5jdGlvbiBFKEQsVCxPKXt2YXIgVT1jKCksVj0yNCxYPW8uZmlsdGVyKGZ1bmN0aW9uKE4pe3JldHVybiBELmluZGV4T2YoTik+PTB9KSxlZT1YLnJlZHVjZShmdW5jdGlvbihOLEope3JldHVybiBNYXRoLm1heChOLGwoSikpfSwwKSxaPWVlK01hdGgubWF4KDAsWC5sZW5ndGgtMSkqVix1ZT1lLmNsaWVudEhlaWdodCxMPVQtWi8yLE09TWF0aC5tYXgoMixNYXRoLm1pbih1ZS1VLTIsTy1VLzIpKTtyZXR1cm4gWC5mb3JFYWNoKGZ1bmN0aW9uKE4pe2coTixMLE0pLEwrPVZ9KSx7eDpULVovMi03LHk6TS03LHc6WisxNCxoOlUrMTR9fWZ1bmN0aW9uIEMoRCl7aS5jbGFzc0xpc3QuYWRkKCJpcy1hY3RpdmUiKSxpLnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlKCIrRC54LnRvRml4ZWQoMSkrInB4LCIrRC55LnRvRml4ZWQoMSkrInB4KSIsaS5zdHlsZS53aWR0aD1ELncudG9GaXhlZCgxKSsicHgiLGkuc3R5bGUuaGVpZ2h0PUQuaC50b0ZpeGVkKDEpKyJweCJ9ZnVuY3Rpb24gYigpe2kuY2xhc3NMaXN0LnJlbW92ZSgiaXMtYWN0aXZlIil9ZnVuY3Rpb24gQihEKXtyZXR1cm4gZmMoe2NvbW1pdDohMCx0YWc6RC5pbmRleE9mKCJ0YWciKT49MCxwdXNoOkQuaW5kZXhPZigicHVzaCIpPj0wfSl9ZnVuY3Rpb24gRihEKXtyZXR1cm4gRC5pbmRleE9mKCJzdWIiKT49MH1mdW5jdGlvbiB4KEQpe3ZhciBUPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxYy1kb2NrLWxhdW5jaC1sYWJlbCIpO1QmJihULnRleHRDb250ZW50PUQpfWZ1bmN0aW9uIFMoRCxUKXt2YXIgTz1uLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3JldHVybiBEPj1PLmxlZnQmJkQ8PU8ucmlnaHQmJlQ+PU8udG9wJiZUPD1PLmJvdHRvbX1mdW5jdGlvbiBqKEQpe3JldHVybiBmdW5jdGlvbihUKXtpZighKHVbRF0uZGlzYWJsZWR8fEdyKCkpKXttPXthbmNob3I6RCxwb2ludGVySWQ6VC5wb2ludGVySWQsc3RhcnRYOlQuY2xpZW50WCxzdGFydFk6VC5jbGllbnRZLG1vdmVkOiExLG1lbWJlcnM6W0RdfSxvLmZvckVhY2goZnVuY3Rpb24oTyl7dVtPXS5jbGFzc0xpc3QucmVtb3ZlKCJxYy1jaGlwLS1hbmltIil9KSx1W0RdLmNsYXNzTGlzdC5hZGQoImlzLWdyYWJiaW5nIik7dHJ5e3VbRF0uc2V0UG9pbnRlckNhcHR1cmUoVC5wb2ludGVySWQpfWNhdGNoe310LmNsYXNzTGlzdC5hZGQoImlzLWRyYWdnaW5nIiksVC5wcmV2ZW50RGVmYXVsdCgpfX19ZnVuY3Rpb24gUihEKXtpZighKCFtfHxtLnBvaW50ZXJJZCE9PUQucG9pbnRlcklkKSl7KE1hdGguYWJzKEQuY2xpZW50WC1tLnN0YXJ0WCk+M3x8TWF0aC5hYnMoRC5jbGllbnRZLW0uc3RhcnRZKT4zKSYmKG0ubW92ZWQ9ITApO3ZhciBUPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksTz1ELmNsaWVudFgtVC5sZWZ0LFU9RC5jbGllbnRZLVQudG9wO2lmKGEuZm9yRWFjaChmdW5jdGlvbihNKXtpZighKG0ubWVtYmVycy5pbmRleE9mKE0pPj0wKSl7dmFyIE49dltNXS54K2woTSkvMixKPXZbTV0ueStjKCkvMixLPU8tTixpZT1VLUo7TWF0aC5zcXJ0KEsqSytpZSppZSk8cGMmJihtLm1lbWJlcnMucHVzaChNKSx1W01dLmNsYXNzTGlzdC5yZW1vdmUoInFjLWNoaXAtLWFuaW0iKSx1W01dLmNsYXNzTGlzdC5hZGQoImlzLWF0dGFjaGVkIikpfX0pLHMmJm0ubWVtYmVycy5pbmRleE9mKCJzdWIiKTwwKXt2YXIgVj12LnN1Yi54LUpyLFg9di5zdWIueS1KcixlZT12LnN1Yi54K2woInN1YiIpK0pyLFo9di5zdWIueStjKCkrSnI7Tz49ViYmTzw9ZWUmJlU+PVgmJlU8PVomJihtLm1lbWJlcnMucHVzaCgic3ViIiksdS5zdWIuY2xhc3NMaXN0LnJlbW92ZSgicWMtY2hpcC0tYW5pbSIpLHUuc3ViLmNsYXNzTGlzdC5hZGQoImlzLWF0dGFjaGVkIikpfXZhciB1ZT1FKG0ubWVtYmVycyxPLFUpLEw9UyhELmNsaWVudFgsRC5jbGllbnRZKTt0LnNldEF0dHJpYnV0ZSgiZGF0YS1ob3QiLEw/IjEiOiIwIiksdC5zZXRBdHRyaWJ1dGUoImRhdGEtYWN0aW9uIixCKG0ubWVtYmVycykpLG0ubWVtYmVycy5sZW5ndGg+MT9DKHVlKTpiKCkseChMPyJcdTY3N0VcdTYyNEJcdTYyNjdcdTg4NEMiOiJcdTYzRDBcdTRFQTQiKX19ZnVuY3Rpb24gJChELFQpe2lmKCEoIW18fG0ucG9pbnRlcklkIT09RC5wb2ludGVySWQpKXt2YXIgTz1tO209bnVsbCx0LmNsYXNzTGlzdC5yZW1vdmUoImlzLWRyYWdnaW5nIiksdC5zZXRBdHRyaWJ1dGUoImRhdGEtaG90IiwiMCIpLHgoIlx1NjNEMFx1NEVBNCIpLGIoKSxvLmZvckVhY2goZnVuY3Rpb24oVil7dVtWXS5jbGFzc0xpc3QucmVtb3ZlKCJpcy1ncmFiYmluZyIsImlzLWF0dGFjaGVkIil9KTt0cnl7dVtPLmFuY2hvcl0ucmVsZWFzZVBvaW50ZXJDYXB0dXJlKE8ucG9pbnRlcklkKX1jYXRjaHt9aWYoIVQmJiFPLm1vdmVkKXt2YXIgVT1fdShPLmFuY2hvcik7Tm4oVS5hY3Rpb24sVS5zdWIpO3JldHVybn1pZighVCYmUyhELmNsaWVudFgsRC5jbGllbnRZKSl7Tm4oQihPLm1lbWJlcnMpLEYoTy5tZW1iZXJzKSk7cmV0dXJufXQuc2V0QXR0cmlidXRlKCJkYXRhLWFjdGlvbiIsImNvbW1pdCIpLGgoITApfX12YXIgST1mdW5jdGlvbigpe3IucXVpY2tDb21taXRPcGVuJiYhbSYmaCghMSl9O3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLEkpLG8uZm9yRWFjaChmdW5jdGlvbihEKXt2YXIgVD11W0RdO1QuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmRvd24iLGooRCkpLFQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcm1vdmUiLFIpLFQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIixmdW5jdGlvbihPKXskKE8sITEpfSksVC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVyY2FuY2VsIixmdW5jdGlvbihPKXskKE8sITApfSksVC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbihPKXtpZighKFQuZGlzYWJsZWR8fEdyKCkpJiYoTy5rZXk9PT0iRW50ZXIifHxPLmtleT09PSIgInx8Ty5rZXk9PT0iU3BhY2ViYXIiKSl7Ty5wcmV2ZW50RGVmYXVsdCgpO3ZhciBVPV91KEQpO05uKFUuYWN0aW9uLFUuc3ViKX19KX0pLG4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7bi5kaXNhYmxlZHx8R3IoKXx8bXx8Tm4oImNvbW1pdCIpfSksQm49ZnVuY3Rpb24oKXt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIixJKSxtPW51bGx9fWZ1bmN0aW9uIG1jKCl7aWYoISghci5zZWxlY3RlZElkfHxyLnF1aWNrQ29tbWl0R2VuZXJhdGluZykpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtbWVzc2FnZSIpO2UmJihyLnF1aWNrQ29tbWl0Rm9ybS5jdXN0b21NZXNzYWdlPWUudmFsdWUpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtdGFnIik7dCYmKHIucXVpY2tDb21taXRGb3JtLnRhZz10LnZhbHVlKSxyLnF1aWNrQ29tbWl0R2VuZXJhdGluZz0hMCxyLnF1aWNrQ29tbWl0RXJyb3I9IiIsUHQoKSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChyLnNlbGVjdGVkSWQpKyIvZ2VuZXJhdGUtY29tbWl0LW1lc3NhZ2UiLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxib2R5OkpTT04uc3RyaW5naWZ5KHt9KX0pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIG4uanNvbigpLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJue29rOm4ub2ssZGF0YTppfX0pfSkudGhlbihmdW5jdGlvbihuKXtpZighbi5vayl0aHJvdyBuZXcgRXJyb3Iobi5kYXRhJiZuLmRhdGEuZXJyb3J8fCJBSSBcdTc1MUZcdTYyMTBcdTU5MzFcdThEMjVcdTMwMDIiKTt2YXIgaT1uLmRhdGF8fHt9LGE9dHlwZW9mIGkubWVzc2FnZT09InN0cmluZyI/aS5tZXNzYWdlOiIiLHU9dHlwZW9mIGkuc3VnZ2VzdGVkVGFnPT0ic3RyaW5nIj9pLnN1Z2dlc3RlZFRhZy50cmltKCk6IiIscz0oci5xdWlja0NvbW1pdEZvcm0uY3VzdG9tTWVzc2FnZXx8IiIpLnRyaW0oKTshcyYmYSYmKHIucXVpY2tDb21taXRGb3JtLmN1c3RvbU1lc3NhZ2U9YSksdSYmKHIucXVpY2tDb21taXRGb3JtLnRhZ0VkaXRlZHx8KHIucXVpY2tDb21taXRGb3JtLnRhZz11KSxyLnF1aWNrQ29tbWl0RHJhZ0FjdGlvbj0iY29tbWl0LXRhZyIpfSkuY2F0Y2goZnVuY3Rpb24obil7ci5xdWlja0NvbW1pdEVycm9yPW4mJm4ubWVzc2FnZXx8IkFJIFx1NzUxRlx1NjIxMFx1NTkzMVx1OEQyNVx1MzAwMiJ9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ci5xdWlja0NvbW1pdEdlbmVyYXRpbmc9ITEsci5xdWlja0NvbW1pdE9wZW4mJlB0KCl9KX19ZnVuY3Rpb24gTm4oZSx0KXtpZighKCFyLnNlbGVjdGVkSWR8fHIucXVpY2tDb21taXRTdWJtaXR0aW5nKSl7dmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1tZXNzYWdlIik7biYmKHIucXVpY2tDb21taXRGb3JtLmN1c3RvbU1lc3NhZ2U9bi52YWx1ZSk7dmFyIGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC10YWciKTtpJiYoci5xdWlja0NvbW1pdEZvcm0udGFnPWkudmFsdWUpO3ZhciBhPXIucXVpY2tDb21taXRGb3JtfHx7fSx1PWRjKGV8fHIucXVpY2tDb21taXREcmFnQWN0aW9ufHwiY29tbWl0Iikscz11LndpdGhUYWcsbz1zPyhhLnRhZ3x8IiIpLnRyaW0oKToiIixsPShhLmN1c3RvbU1lc3NhZ2V8fCIiKS50cmltKCksYz0hbCxmPXticmFuY2g6KHIuZ2l0U3RhdHVzfHx7fSkuYnJhbmNofHwiIixjb21taXRIYXNoOihyLmdpdFN0YXR1c3x8e30pLmxhc3RDb21taXQmJihyLmdpdFN0YXR1c3x8e30pLmxhc3RDb21taXQuc2hvcnRIYXNoPyhyLmdpdFN0YXR1c3x8e30pLmxhc3RDb21taXQuc2hvcnRIYXNoOihyLmdpdFN0YXR1c3x8e30pLmhlYWQ/KHIuZ2l0U3RhdHVzfHx7fSkuaGVhZC5zdWJzdHJpbmcoMCw3KToiIixjb21taXRTdWJqZWN0OihyLmdpdFN0YXR1c3x8e30pLmxhc3RDb21taXQmJihyLmdpdFN0YXR1c3x8e30pLmxhc3RDb21taXQuc3ViamVjdD8oci5naXRTdGF0dXN8fHt9KS5sYXN0Q29tbWl0LnN1YmplY3Q6IiIsdGFnOihyLmdpdFN0YXR1c3x8e30pLmxhdGVzdFRhZ3x8IiJ9LGQ9e2F1dG9NZXNzYWdlOmMsY3VzdG9tTWVzc2FnZTpjPyIiOmwsdGFnOm8sYXV0b1RhZzohIShzJiYhbykscHVzaDohIXUucHVzaCxzdWJtb2R1bGU6ISF0fTtyLnF1aWNrQ29tbWl0U3VibWl0dGluZz0hMCxyLnF1aWNrQ29tbWl0U3VibW9kdWxlSW50ZW50PSEhdCxyLnF1aWNrQ29tbWl0QXV0b0dlbmVyYXRpbmc9Y3x8ZC5hdXRvVGFnLHIucXVpY2tDb21taXRFcnJvcj0iIixyLnF1aWNrQ29tbWl0UHVzaEVycm9yPSIiLHIucXVpY2tDb21taXRSZXN1bHQ9bnVsbCxyLnF1aWNrQ29tbWl0RHJhZ0FjdGlvbj11LmFjdGlvbixQdCgpLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KHIuc2VsZWN0ZWRJZCkrIi9xdWljay1jb21taXQiLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxib2R5OkpTT04uc3RyaW5naWZ5KGQpfSkudGhlbihmdW5jdGlvbih2KXtyZXR1cm4gdi5qc29uKCkudGhlbihmdW5jdGlvbihnKXtyZXR1cm57b2s6di5vayxkYXRhOmd9fSl9KS50aGVuKGZ1bmN0aW9uKHYpe2lmKCF2Lm9rKXRocm93IG5ldyBFcnJvcih2LmRhdGEmJnYuZGF0YS5lcnJvcnx8Ilx1NUZFQlx1NjM3N1x1NjNEMFx1NEVBNFx1NTkzMVx1OEQyNVx1MzAwMiIpO3ZhciBnPXYuZGF0YXx8e30saD1nLmNvbW1pdCYmZy5jb21taXQuaGFzaD9nLmNvbW1pdC5oYXNoLnN1YnN0cmluZygwLDcpOiIiLG09Zy50YWcmJmcudGFnLm5hbWU/Zy50YWcubmFtZToiIixFPUFycmF5LmlzQXJyYXkoZy5zdWJtb2R1bGVDb21taXRzKT9nLnN1Ym1vZHVsZUNvbW1pdHM6W10sQz1FLmxlbmd0aD4wPyJcdTVERjJcdTUxNDhcdTYzRDBcdTRFQTQgIitFLmxlbmd0aCsiIFx1NEUyQSBzdWJtb2R1bGVcdUZGMDgiK0UubWFwKGZ1bmN0aW9uKEIpe3JldHVybiBCLnBhdGh9KS5qb2luKCJcdTMwMDEiKSsiXHVGRjA5XHVGRjBDIjoiIixiPUMrIlx1NURGMlx1NjNEMFx1NEVBNCIrKGg/IiAiK2g6IiIpKyhtPyJcdUZGMENcdTVERjJcdTYyNTMgVGFnICIrbToiIik7ci5xdWlja0NvbW1pdFJlc3VsdD17YWN0aW9uOnUuYWN0aW9uLGluY2x1ZGVTdWJtb2R1bGU6ISF0LHB1c2hlZDohIWcucHVzaGVkLHB1c2hFcnJvcjpnLnB1c2hFcnJvcnx8IiIsY29tbWl0SGFzaDpoLGNvbW1pdE1lc3NhZ2U6Zy5jb21taXQmJmcuY29tbWl0Lm1lc3NhZ2U/Zy5jb21taXQubWVzc2FnZTpsLHRhZ05hbWU6bSxvbGRUYWc6Zi50YWcsb2xkQ29tbWl0SGFzaDpmLmNvbW1pdEhhc2gsb2xkQ29tbWl0U3ViamVjdDpmLmNvbW1pdFN1YmplY3Qsc3VibW9kdWxlQ291bnQ6RS5sZW5ndGh9LHUucHVzaCYmIWcucHVzaEVycm9yPyh0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmayhiKyJcdUZGMENcdTVERjJcdTYzQThcdTkwMDFcdTMwMDIiLCJzdWNjZXNzIiksX24oKSk6KHR5cGVvZiBrPT0iZnVuY3Rpb24iJiZrKGIrKGcucHVzaEVycm9yPyJcdUZGMUJwdXNoIFx1NTkzMVx1OEQyNVx1RkYxQSIrZy5wdXNoRXJyb3I6Ilx1MzAwMiIpLGcucHVzaEVycm9yPyJlcnJvciI6InN1Y2Nlc3MiKSxyLnNlbGVjdGVkSWQmJnduKHIuc2VsZWN0ZWRJZCx7Zm9yY2U6ITB9KS50aGVuKGZ1bmN0aW9uKCl7ci5xdWlja0NvbW1pdE9wZW4mJlB0KCl9KSl9KS5jYXRjaChmdW5jdGlvbih2KXtyLnF1aWNrQ29tbWl0RXJyb3I9diYmdi5tZXNzYWdlfHwiXHU1RkVCXHU2Mzc3XHU2M0QwXHU0RUE0XHU1OTMxXHU4RDI1XHUzMDAyIn0pLmZpbmFsbHkoZnVuY3Rpb24oKXtyLnF1aWNrQ29tbWl0U3VibWl0dGluZz0hMSxyLnF1aWNrQ29tbWl0QXV0b0dlbmVyYXRpbmc9ITEsci5xdWlja0NvbW1pdE9wZW4mJlB0KCl9KX19ZnVuY3Rpb24gZ2MoZSl7aWYoISghci5zZWxlY3RlZElkfHxyLnF1aWNrQ29tbWl0UHVzaGluZykpe3ZhciB0PSEhKGUmJmUucHVzaENvbW1pdHMpLG49ISEoZSYmZS5wdXNoVGFncyksaT0hIShlJiZlLmNsb3NlT25TdWNjZXNzKTtpZighKCF0JiYhbikpe3ZhciBhPXIucXVpY2tDb21taXRSZXN1bHR8fHt9LHU9ISFhLmluY2x1ZGVTdWJtb2R1bGU7ci5xdWlja0NvbW1pdFB1c2hpbmc9ITAsci5xdWlja0NvbW1pdFB1c2hFcnJvcj0iIixQdCgpLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KHIuc2VsZWN0ZWRJZCkrIi9naXQvcHVzaCIse21ldGhvZDoiUE9TVCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGJvZHk6SlNPTi5zdHJpbmdpZnkoe3B1c2hDb21taXRzOnQscHVzaFRhZ3M6bixzdWJtb2R1bGU6dSx0YWc6YS50YWdOYW1lfHwiIn0pfSkudGhlbihmdW5jdGlvbihzKXtyZXR1cm4gcy5qc29uKCkudGhlbihmdW5jdGlvbihvKXtyZXR1cm57b2s6cy5vayxkYXRhOm99fSl9KS50aGVuKGZ1bmN0aW9uKHMpe3ZhciBvPXMuZGF0YXx8e307aWYoIXMub2spdGhyb3cgbmV3IEVycm9yKG8mJm8uZXJyb3J8fCJcdTYzQThcdTkwMDFcdTU5MzFcdThEMjVcdTMwMDIiKTtpZihvLmVycm9yKXtyLnF1aWNrQ29tbWl0UHVzaEVycm9yPW8uZXJyb3IsdHlwZW9mIGs9PSJmdW5jdGlvbiImJmsoIlx1NjNBOFx1OTAwMVx1NTkzMVx1OEQyNVx1RkYxQSIrby5lcnJvciwiZXJyb3IiKTtyZXR1cm59dmFyIGw9W107by5wdXNoZWRDb21taXRzJiZsLnB1c2goImNvbW1pdHMiKSxvLnB1c2hlZFRhZ3MmJmwucHVzaCgidGFncyIpO3ZhciBjPWwubGVuZ3RoP2wuam9pbigiIFx1NTQ4QyAiKToiXHVGRjA4XHU2NUUwXHU1MTg1XHU1QkI5XHVGRjA5Ijt0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmaygiXHU1REYyXHU2M0E4XHU5MDAxICIrYywic3VjY2VzcyIpLHIucXVpY2tDb21taXRSZXN1bHQmJihyLnF1aWNrQ29tbWl0UmVzdWx0LnB1c2hlZD0hMCksaT8oX24oKSxyLnNlbGVjdGVkSWQmJnduKHIuc2VsZWN0ZWRJZCx7Zm9yY2U6ITB9KSk6ci5zZWxlY3RlZElkJiZ3bihyLnNlbGVjdGVkSWQse2ZvcmNlOiEwfSkudGhlbihmdW5jdGlvbigpe3IucXVpY2tDb21taXRPcGVuJiZQdCgpfSl9KS5jYXRjaChmdW5jdGlvbihzKXtyLnF1aWNrQ29tbWl0UHVzaEVycm9yPXMmJnMubWVzc2FnZXx8Ilx1NjNBOFx1OTAwMVx1NTkzMVx1OEQyNVx1MzAwMiIsdHlwZW9mIGs9PSJmdW5jdGlvbiImJmsoci5xdWlja0NvbW1pdFB1c2hFcnJvciwiZXJyb3IiKX0pLmZpbmFsbHkoZnVuY3Rpb24oKXtyLnF1aWNrQ29tbWl0UHVzaGluZz0hMSxyLnF1aWNrQ29tbWl0T3BlbiYmUHQoKX0pfX19ZnVuY3Rpb24gaGMoZSl7dmFyIHQ9KGV8fCIiKS50cmltKCk7aWYodD09PSI/PyIpcmV0dXJue2xldHRlcjoiVSIsY2xzOiJ1bnRyYWNrZWQiLHRpdGxlOiJcdTY3MkFcdThEREZcdThFMkEifTtpZih0PT09IiEhIilyZXR1cm57bGV0dGVyOiJJIixjbHM6Imlnbm9yZWQiLHRpdGxlOiJcdTVERjJcdTVGRkRcdTc1NjUifTtmb3IodmFyIG49IiIsaT0wO2k8ZS5sZW5ndGg7aSsrKWlmKGVbaV0mJmVbaV0hPT0iLiImJmVbaV0hPT0iICIpe249ZVtpXTticmVha31uPShufHx0WzBdfHwiPyIpLnRvVXBwZXJDYXNlKCk7dmFyIGE9e0E6e2NsczoiYWRkIix0aXRsZToiXHU2NUIwXHU1ODlFIn0sTTp7Y2xzOiJtb2QiLHRpdGxlOiJcdTRGRUVcdTY1MzkifSxEOntjbHM6ImRlbCIsdGl0bGU6Ilx1NTIyMFx1OTY2NCJ9LFI6e2NsczoicmVuIix0aXRsZToiXHU5MUNEXHU1NDdEXHU1NDBEIn0sQzp7Y2xzOiJyZW4iLHRpdGxlOiJcdTU5MERcdTUyMzYifSxUOntjbHM6Im1vZCIsdGl0bGU6Ilx1N0M3Qlx1NTc4Qlx1NTNEOFx1NjZGNCJ9LFU6e2NsczoiZGVsIix0aXRsZToiXHU1MUIyXHU3QTgxIn19LHU9YVtuXXx8e2Nsczoib3RoZXIiLHRpdGxlOiJcdTVERjJcdTY2RjRcdTY1MzkifTtyZXR1cm57bGV0dGVyOm4sY2xzOnUuY2xzLHRpdGxlOnUudGl0bGV9fWZ1bmN0aW9uIFptKGUpe3ZhciB0PWUubWFwKGZ1bmN0aW9uKG4pe3ZhciBpPWhjKG4uc3RhdHVzfHwiIiksYT1uLnBhdGh8fCIiLHU9YS5sYXN0SW5kZXhPZigiLyIpLHM9dT49MD9hLnNsaWNlKDAsdSsxKToiIixvPXU+PTA/YS5zbGljZSh1KzEpOmEsbD0iIjtpZihuLmlzU3VibW9kdWxlKXt2YXIgYz1uLnN1Ym1vZHVsZVN0YXRlfHx7fSxmPVtdO2MuY29tbWl0Q2hhbmdlZCYmZi5wdXNoKCJcdTY1QjBcdTYzMDdcdTk0ODgiKSxjLmhhc1RyYWNrZWRDaGFuZ2VzJiZmLnB1c2goImRpcnR5IiksYy5oYXNVbnRyYWNrZWQmJmYucHVzaCgiXHU2NzJBXHU4RERGXHU4RTJBIik7dmFyIGQ9Zi5sZW5ndGg/InN1Ym1vZHVsZSBceEI3ICIrZi5qb2luKCIgLyAiKToic3VibW9kdWxlIjtsPSc8c3BhbiBjbGFzcz0icWMtc3VibW9kdWxlLWJhZGdlIj4nK3AoZCkrIjwvc3Bhbj4ifXJldHVybic8ZGl2IGNsYXNzPSJxYy1maWxlLXJvdyIgdGl0bGU9IicrcChhKSsnIj48c3BhbiBjbGFzcz0icWMtZmlsZS1iYWRnZSBxYy1iYWRnZS0nK2kuY2xzKyciIHRpdGxlPSInK3AoaS50aXRsZSkrJyI+JytwKGkubGV0dGVyKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJxYy1maWxlLXBhdGgiPicrKHM/JzxzcGFuIGNsYXNzPSJxYy1maWxlLWRpciI+JytwKHMpKyI8L3NwYW4+IjoiIikrJzxzcGFuIGNsYXNzPSJxYy1maWxlLW5hbWUiPicrcChvKSsiPC9zcGFuPjwvc3Bhbj4iK2wrIjwvZGl2PiJ9KS5qb2luKCIiKTtyZXR1cm4gdHx8JzxkaXYgY2xhc3M9InFjLWVtcHR5Ij5cdTZDQTFcdTY3MDlcdTUzRUZcdTYzRDBcdTRFQTRcdTc2ODRcdTY1MzlcdTUyQThcdTMwMDI8L2Rpdj4nfWZ1bmN0aW9uIEdyKCl7cmV0dXJuIHIucXVpY2tDb21taXRTdWJtaXR0aW5nfHxyLnF1aWNrQ29tbWl0UHVzaGluZ31mdW5jdGlvbiBZcihlLHQsbixpKXtyZXR1cm4nPGRpdiBjbGFzcz0icWMtcGFpcicrKGk/IiAiK2k6IiIpKyciPjxkaXYgY2xhc3M9InFjLXBhaXItbGFiZWwiPicrcChlKSsnPC9kaXY+PGRpdiBjbGFzcz0icWMtcGFpci1mbG93Ij48ZGl2IGNsYXNzPSJxYy1wYWlyLXZhbHVlIHFjLXBhaXItdmFsdWUtLWZyb20iPicrdCsnPC9kaXY+PGRpdiBjbGFzcz0icWMtcGFpci1hcnJvdyIgYXJpYS1oaWRkZW49InRydWUiPlx1MjE5MjwvZGl2PjxkaXYgY2xhc3M9InFjLXBhaXItdmFsdWUgcWMtcGFpci12YWx1ZS0tdG8iPicrbisiPC9kaXY+PC9kaXY+PC9kaXY+In1mdW5jdGlvbiB5Yygpe3ZhciBlPXIuZ2l0U3RhdHVzfHx7fTtpZihlLmhhc1N1Ym1vZHVsZT09PSEwKXJldHVybiEwO2Zvcih2YXIgdD1lLmZpbGVzfHxbXSxuPTA7bjx0Lmxlbmd0aDtuKyspaWYodFtuXSYmdFtuXS5pc1N1Ym1vZHVsZT09PSEwKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIEVjKGUpe3ZhciB0PSFlfHxHcigpLG49eWMoKTtpZihyLnF1aWNrQ29tbWl0U3VibWl0dGluZyl7dmFyIGk9ci5xdWlja0NvbW1pdFN1Ym1vZHVsZUludGVudD8iXHVGRjA4XHU1NDJCIHN1Ym1vZHVsZVx1RkYwOSI6IiIsYT0oci5xdWlja0NvbW1pdEF1dG9HZW5lcmF0aW5nPyJBSSBcdTc1MUZcdTYyMTAgKyBcdTYzRDBcdTRFQTRcdTRFMkRcdTIwMjYiOiJcdTYyNjdcdTg4NENcdTRFMkRcdTIwMjYiKStpO3JldHVybic8ZGl2IGNsYXNzPSJxYy1kb2NrLXdyYXAiPjxkaXYgY2xhc3M9InFjLWRvY2stYnVzeSIgcm9sZT0ic3RhdHVzIj48c3BhbiBjbGFzcz0icWMtZG9jay1idXN5LWRvdCI+PC9zcGFuPicrcChhKSsiPC9kaXY+PC9kaXY+In1mdW5jdGlvbiB1KG8sbCxjKXtyZXR1cm4nPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJxYy1jaGlwIHFjLWNoaXAtLScrbysnIiBkYXRhLWNoaXA9IicrbysnIicrKGM/JyB0aXRsZT0iJytwKGMpKyciJzoiIikrKHQ/IiBkaXNhYmxlZCI6IiIpKyc+PHNwYW4gY2xhc3M9InFjLWNoaXAtZG90IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjxzcGFuIGNsYXNzPSJxYy1jaGlwLWxhYmVsIj4nK2wrIjwvc3Bhbj48L2J1dHRvbj4ifXZhciBzPXQ/ZT8iIjoiXHU1REU1XHU0RjVDXHU1MzNBXHU1RTcyXHU1MUMwXHVGRjBDXHU2NUUwXHU1M0VGXHU2M0QwXHU0RUE0IjoiXHU2MkQ2XHU1MkE4XHU3OEMxXHU1NDM4XHU3RUM0XHU1NDA4IFx4QjcgXHU0RTIyXHU4RkRCXHU2M0QwXHU0RUE0XHU1MzNBXHU2MjY3XHU4ODRDIFx4QjcgXHU1MzU1XHU1MUZCXHU3NkY0XHU2M0E1XHU2MjY3XHU4ODRDXHU4QkU1XHU5ODc5Iisobj8iIFx4QjcgU3ViIFx1NzQwM1x1NTNFRlx1OTAwOVx1RkYwQ1x1N0VCM1x1NTE2NVx1NTQwRVx1OTAxMlx1NUY1Mlx1NTkwNFx1NzQwNiBzdWJtb2R1bGUiOiIiKTtyZXR1cm4nPGRpdiBjbGFzcz0icWMtZG9jay13cmFwIHFjLWRvY2std3JhcC0tbWFnbmV0aWMiJysodD8nIGRhdGEtZGlzYWJsZWQ9IjEiJzoiIikrJz48ZGl2IGlkPSJxYy1kb2NrLXN0YWdlIiBjbGFzcz0icWMtZG9jay1zdGFnZSIgZGF0YS1hY3Rpb249ImNvbW1pdCIgZGF0YS1ob3Q9IjAiPjxkaXYgaWQ9InFjLWRvY2stZmllbGQiIGNsYXNzPSJxYy1kb2NrLWZpZWxkIj48ZGl2IGlkPSJxYy1kb2NrLWNsdXN0ZXIiIGNsYXNzPSJxYy1kb2NrLWNsdXN0ZXIiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj4nK3UoImNvbW1pdCIsIkNvbW1pdCIpK3UoInRhZyIsIlRhZyIpK3UoInB1c2giLCJQdXNoIikrKG4/dSgic3ViIiwiU3ViIiwiXHU2M0QwXHU0RUE0XHU3MjM2XHU0RUQzXHU1RTkzXHU1RTc2XHU5MDEyXHU1RjUyXHU4RkRCXHU1MTY1IHN1Ym1vZHVsZVx1RkYwOGNvbW1pdCAvIHRhZyAvIFx1NTIwNlx1NTIyQlx1NjNBOFx1OTAwMVx1RkYwOSIpOiIiKSsnPC9kaXY+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGlkPSJxYy1kb2NrLWxhdW5jaCIgY2xhc3M9InFjLWRvY2stbGF1bmNoIicrKHQ/IiBkaXNhYmxlZCI6IiIpKycgYXJpYS1sYWJlbD0iXHU2MjY3XHU4ODRDXHU2M0QwXHU0RUE0Ij48c3BhbiBjbGFzcz0icWMtZG9jay1sYXVuY2gtYXJyb3ciIGFyaWEtaGlkZGVuPSJ0cnVlIj48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjIyIiBoZWlnaHQ9IjIyIiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTUgMTJoMTJNMTMgNmw2IDYtNiA2Ii8+PC9zdmc+PC9zcGFuPjxzcGFuIGlkPSJxYy1kb2NrLWxhdW5jaC1sYWJlbCIgY2xhc3M9InFjLWRvY2stbGF1bmNoLWxhYmVsIj5cdTYzRDBcdTRFQTQ8L3NwYW4+PC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0icWMtZG9jay1oaW50Ij4nK3AocykrIjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gYmMoKXt2YXIgZT1yLnF1aWNrQ29tbWl0UmVzdWx0O2lmKCFlKXJldHVybiIiO3ZhciB0PWUub2xkQ29tbWl0SGFzaD8iPGNvZGU+IitwKGUub2xkQ29tbWl0SGFzaCkrIjwvY29kZT4iKyhlLm9sZENvbW1pdFN1YmplY3Q/IjxzcGFuPiIrcChlLm9sZENvbW1pdFN1YmplY3QpKyI8L3NwYW4+IjoiIik6JzxzcGFuIGNsYXNzPSJxYy1tdXRlZCI+XHU2NUUwPC9zcGFuPicsbj1lLmNvbW1pdEhhc2g/Ijxjb2RlPiIrcChlLmNvbW1pdEhhc2gpKyI8L2NvZGU+PHNwYW4+IitwKGUuY29tbWl0TWVzc2FnZXx8IiIpKyI8L3NwYW4+IjonPHNwYW4gY2xhc3M9InFjLW11dGVkIj5cdTY1RTA8L3NwYW4+JyxpPWUub2xkVGFnPyI8Y29kZT4iK3AoZS5vbGRUYWcpKyI8L2NvZGU+IjonPHNwYW4gY2xhc3M9InFjLW11dGVkIj5cdTY1RTAgdGFnPC9zcGFuPicsYT1lLnRhZ05hbWU/Ijxjb2RlPiIrcChlLnRhZ05hbWUpKyI8L2NvZGU+IjonPHNwYW4gY2xhc3M9InFjLW11dGVkIj5cdTY3MkFcdTYyNTMgdGFnPC9zcGFuPicsdT1lLnB1c2hlZD8nPHNwYW4gY2xhc3M9InFjLXJlc3VsdC1wdXNoZWQiPlx1NURGMlx1NjNBOFx1OTAwMTwvc3Bhbj4nOic8YnV0dG9uIGlkPSJxdWljay1jb21taXQtcHVzaC1hZnRlci1idG4iIGNsYXNzPSJidG4gYnRuLXByaW1hcnkgYnRuLXNtIiB0eXBlPSJidXR0b24iJysoci5xdWlja0NvbW1pdFB1c2hpbmc/IiBkaXNhYmxlZCI6IiIpKyI+Iisoci5xdWlja0NvbW1pdFB1c2hpbmc/Ilx1NjNBOFx1OTAwMVx1NEUyRC4uLiI6IlB1c2ggJiBDbG9zZSIpKyI8L2J1dHRvbj4iO3JldHVybic8c2VjdGlvbiBjbGFzcz0icWMtcmVzdWx0LXBhbmVsIj4nK1lyKCJDb21taXQiLHQsbiwiIikrWXIoIlRhZyIsaSxhLCJxYy1wYWlyLS10YWciKSsoZS5wdXNoRXJyb3J8fHIucXVpY2tDb21taXRQdXNoRXJyb3I/JzxwIGNsYXNzPSJlcnJvci1tZXNzYWdlIj4nK3AoZS5wdXNoRXJyb3J8fHIucXVpY2tDb21taXRQdXNoRXJyb3IpKyI8L3A+IjoiIikrJzxkaXYgY2xhc3M9InFjLXJlc3VsdC1hY3Rpb25zIj48YnV0dG9uIGlkPSJxdWljay1jb21taXQtY2FuY2VsLWJ0biIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtIiB0eXBlPSJidXR0b24iPlx1NTE3M1x1OTVFRDwvYnV0dG9uPicrdSsiPC9kaXY+PC9zZWN0aW9uPiJ9ZnVuY3Rpb24gTnUoKXt2YXIgZT1yLmdpdFN0YXR1c3x8e30sdD1yLnF1aWNrQ29tbWl0Rm9ybXx8e2N1c3RvbU1lc3NhZ2U6IiIsdGFnOiIiLHRhZ0VkaXRlZDohMX0sbj0oZS5tb2RpZmllZENvdW50fHwwKT4wLGk9ci5xdWlja0NvbW1pdEdlbmVyYXRpbmcsYT1lLmxhc3RDb21taXR8fHt9LHU9YS5zaG9ydEhhc2g/Ijxjb2RlPiIrcChhLnNob3J0SGFzaCkrIjwvY29kZT48c3Bhbj4iK3AoYS5zdWJqZWN0fHwiIikrIjwvc3Bhbj4iOmUuaGVhZD8iPGNvZGU+IitwKGUuaGVhZC5zdWJzdHJpbmcoMCw3KSkrIjwvY29kZT4iOic8c3BhbiBjbGFzcz0icWMtbXV0ZWQiPlx1NjVFMCBjb21taXQ8L3NwYW4+JyxzPWUubGF0ZXN0VGFnPyI8Y29kZT4iK3AoZS5sYXRlc3RUYWcpKyI8L2NvZGU+IjonPHNwYW4gY2xhc3M9InFjLW11dGVkIj5cdTY1RTAgdGFnPC9zcGFuPicsbz0nPGlucHV0IHR5cGU9InRleHQiIGlkPSJxdWljay1jb21taXQtdGFnIiBjbGFzcz0iZmllbGQtaW5wdXQgcWMtdGFnLWZpZWxkLWlucHV0IiBwbGFjZWhvbGRlcj0iXHU3NTU5XHU3QTdBXHU1MjE5IEFJIFx1NzUxRlx1NjIxMCIgdmFsdWU9IicrcCh0LnRhZ3x8IiIpKyciJysoci5xdWlja0NvbW1pdFN1Ym1pdHRpbmc/IiBkaXNhYmxlZCI6IiIpKyI+IixsPSc8dGV4dGFyZWEgaWQ9InF1aWNrLWNvbW1pdC1tZXNzYWdlIiBjbGFzcz0iZmllbGQtaW5wdXQgcWMtbWVzc2FnZS1pbnB1dCIgcm93cz0iMyIgcGxhY2Vob2xkZXI9Ik5ldyBjb21taXQgbWVzc2FnZSIgJysoci5xdWlja0NvbW1pdFN1Ym1pdHRpbmc/ImRpc2FibGVkIjoiIikrIj4iK3AodC5jdXN0b21NZXNzYWdlfHwiIikrIjwvdGV4dGFyZWE+IixjPVtdO2MucHVzaChlLmJyYW5jaHx8IihubyBicmFuY2gpIiksYy5wdXNoKG4/KGUubW9kaWZpZWRDb3VudHx8MCkrIiBcdTRFMkFcdTY1MzlcdTUyQTgiOiJcdTVERTVcdTRGNUNcdTUzM0FcdTVFNzJcdTUxQzAiKSx0eXBlb2YgZS5haGVhZD09Im51bWJlciImJmUuYWhlYWQ+MCYmYy5wdXNoKCJcdTIxOTEiK2UuYWhlYWQpLHR5cGVvZiBlLmJlaGluZD09Im51bWJlciImJmUuYmVoaW5kPjAmJmMucHVzaCgiXHUyMTkzIitlLmJlaGluZCk7dmFyIGY9ci5xdWlja0NvbW1pdFJlc3VsdD8iIjonPHNlY3Rpb24gY2xhc3M9InFjLXJlbGVhc2UtcGFuZWwiPjxkaXYgY2xhc3M9InFjLW1lc3NhZ2UtaGVhZGVyIj48c3BhbiBjbGFzcz0icWMtc2VjdGlvbi10aXRsZSI+TmV3PC9zcGFuPjxidXR0b24gdHlwZT0iYnV0dG9uIiBpZD0icXVpY2stY29tbWl0LWFpLWJ0biIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtIHFjLWFpLWJ0biInKyhpPyIgZGlzYWJsZWQiOiIiKSsnIHRpdGxlPSJBSSBcdTc1MUZcdTYyMTAgY29tbWl0IG1lc3NhZ2UgXHU0RTBFIHRhZyI+PHN2ZyB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxMyIgaGVpZ2h0PSIxMyIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik04IDEuNWwxLjQgMy42TDEzIDYuNSA5LjQgNy45IDggMTEuNSA2LjYgNy45IDMgNi41bDMuNi0xLjRMOCAxLjV6TTEyLjUgMTAuNWwuNyAxLjggMS44LjctMS44LjctLjcgMS44LS43LTEuOC0xLjgtLjcgMS44LS43LjctMS44eiIgZmlsbD0iY3VycmVudENvbG9yIi8+PC9zdmc+PHNwYW4+JysoaT8iXHU3NTFGXHU2MjEwXHU0RTJELi4uIjoiQUkiKSsiPC9zcGFuPjwvYnV0dG9uPjwvZGl2PiIrWXIoIkNvbW1pdCIsdSxsLCJxYy1wYWlyLS1jb21taXQiKStZcigiVGFnIixzLG8sInFjLXBhaXItLXRhZyIpKyhyLnF1aWNrQ29tbWl0RXJyb3I/JzxwIGNsYXNzPSJlcnJvci1tZXNzYWdlIj4nK3Aoci5xdWlja0NvbW1pdEVycm9yKSsiPC9wPiI6IiIpK0VjKG4pKyc8ZGl2IGNsYXNzPSJxYy1tb2RhbC1hY3Rpb25zIj48YnV0dG9uIGlkPSJxdWljay1jb21taXQtY2FuY2VsLWJ0biIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtIiB0eXBlPSJidXR0b24iPlx1NTNENlx1NkQ4ODwvYnV0dG9uPjwvZGl2Pjwvc2VjdGlvbj4nLGQ9YmMoKTtyZXR1cm4nPHNlY3Rpb24gaWQ9InF1aWNrLWNvbW1pdC1tb2RhbCIgY2xhc3M9Im1vZGFsLWJhY2tkcm9wJysoci5xdWlja0NvbW1pdE9wZW4/IiI6IiBoaWRkZW4iKSsnIj48ZGl2IGNsYXNzPSJtb2RhbCBxdWljay1jb21taXQtbW9kYWwiIHJvbGU9ImRpYWxvZyIgYXJpYS1sYWJlbGxlZGJ5PSJxdWljay1jb21taXQtdGl0bGUiPjxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+PGRpdj48aDIgaWQ9InF1aWNrLWNvbW1pdC10aXRsZSIgY2xhc3M9Im1vZGFsLXRpdGxlIj5cdTVGRUJcdTYzNzdcdTYzRDBcdTRFQTQ8L2gyPjxwIGNsYXNzPSJtb2RhbC1zdWJ0aXRsZSI+JytwKGMuam9pbigiIFx4QjcgIikpKyc8L3A+PC9kaXY+PGJ1dHRvbiBpZD0icXVpY2stY29tbWl0LWNsb3NlLWJ0biIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLWljb24gbW9kYWwtY2xvc2UtYnRuIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NTE3M1x1OTVFRCI+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48bGluZSB4MT0iNiIgeTE9IjYiIHgyPSIxOCIgeTI9IjE4Ii8+PGxpbmUgeDE9IjE4IiB5MT0iNiIgeDI9IjYiIHkyPSIxOCIvPjwvc3ZnPjwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9Im1vZGFsLWJvZHkiPicrZitkKyI8L2Rpdj48L2Rpdj48L3NlY3Rpb24+In1mdW5jdGlvbiBGYygpe3JldHVybic8c2VjdGlvbiBpZD0id29ya3RyZWUtbWVyZ2UtbW9kYWwiIGNsYXNzPSJtb2RhbC1iYWNrZHJvcCBoaWRkZW4iPjxkaXYgY2xhc3M9Im1vZGFsIHdvcmt0cmVlLW1lcmdlLW1vZGFsIj48ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIiPjxkaXY+PGgyIGNsYXNzPSJtb2RhbC10aXRsZSI+XHU1NDA4XHU1RTc2IFdvcmt0cmVlPC9oMj48cCBjbGFzcz0ibW9kYWwtc3VidGl0bGUiPlx1NjhDMFx1NjdFNVx1NUY1M1x1NTI0RFx1NEVGQlx1NTJBMVx1NTIwNlx1NjUyRlx1NUU3Nlx1NUZFQlx1NjM3N1x1NTQwOFx1NUU3Nlx1NTIzMFx1NEUzQlx1NTIwNlx1NjUyRlx1MzAwMjwvcD48L2Rpdj48YnV0dG9uIGlkPSJjbG9zZS13b3JrdHJlZS1tZXJnZS1idXR0b24iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1pY29uIG1vZGFsLWNsb3NlLWJ0biIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RUQiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjYiIHkxPSI2IiB4Mj0iMTgiIHkyPSIxOCIvPjxsaW5lIHgxPSIxOCIgeTE9IjYiIHgyPSI2IiB5Mj0iMTgiLz48L3N2Zz48L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1ib2R5Ij48ZGl2IGlkPSJ3b3JrdHJlZS1tZXJnZS1jb250ZW50IiBjbGFzcz0id29ya3RyZWUtbWVyZ2UtY29udGVudCI+PC9kaXY+PHAgaWQ9Indvcmt0cmVlLW1lcmdlLWVycm9yIiBjbGFzcz0iZXJyb3ItbWVzc2FnZSBoaWRkZW4iPjwvcD48ZGl2IGNsYXNzPSJ3b3JrdHJlZS1tZXJnZS1hY3Rpb25zIj48YnV0dG9uIGlkPSJ3b3JrdHJlZS1tZXJnZS1jYW5jZWwtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkiPlx1NTNENlx1NkQ4ODwvYnV0dG9uPjxidXR0b24gaWQ9Indvcmt0cmVlLW1lcmdlLWNvbmZpcm0tYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5Ij5cdTc4NkVcdThCQTRcdTU0MDhcdTVFNzZcdTVFNzZcdTZFMDVcdTc0MDY8L2J1dHRvbj48L2Rpdj48L2Rpdj48L2Rpdj48L3NlY3Rpb24+J31mdW5jdGlvbiB3Yygpe3JldHVybic8c2VjdGlvbiBpZD0ic2V0dGluZ3MtbW9kYWwiIGNsYXNzPSJtb2RhbC1iYWNrZHJvcCBoaWRkZW4iPjxkaXYgY2xhc3M9Im1vZGFsIHNldHRpbmdzLW1vZGFsIj48ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIgc2V0dGluZ3MtbW9kYWwtaGVhZGVyIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1tb2RhbC10aXRsZS1ncm91cCI+PGgyIGNsYXNzPSJtb2RhbC10aXRsZSI+XHU4QkJFXHU3RjZFPC9oMj48cCBjbGFzcz0ic2V0dGluZ3MtbW9kYWwtc3VidGl0bGUiPlx1OEMwM1x1NjU3NFx1NUU5NFx1NzUyOFx1OTE0RFx1N0Y2RVx1MzAwMVx1OTAxQVx1NzdFNVx1MzAwMVx1NUI4OVx1NTE2OFx1NTQ4Q1x1NjYzRVx1NzkzQVx1NTA0Rlx1NTk3RDwvcD48L2Rpdj48YnV0dG9uIGlkPSJjbG9zZS1zZXR0aW5ncy1idXR0b24iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1pY29uIG1vZGFsLWNsb3NlLWJ0biIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RUQiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjYiIHkxPSI2IiB4Mj0iMTgiIHkyPSIxOCIvPjxsaW5lIHgxPSIxOCIgeTE9IjYiIHgyPSI2IiB5Mj0iMTgiLz48L3N2Zz48L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1ib2R5IHNldHRpbmdzLW1vZGFsLWJvZHkiPjxkaXYgY2xhc3M9InNldHRpbmdzLWxheW91dCI+PGFzaWRlIGNsYXNzPSJzZXR0aW5ncy1zaWRlYmFyIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zaWRlYmFyLWhlYWRlciI+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2lkZWJhci10aXRsZSI+XHU1MDRGXHU1OTdEXHU4QkJFXHU3RjZFPC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2lkZWJhci1oaW50Ij5cdTVERTZcdTRGQTdcdTUyMDdcdTYzNjJcdTUyMDZcdTUzM0FcdUZGMENcdTUzRjNcdTRGQTdcdTY3RTVcdTc3MEJcdThCRTZcdTdFQzZcdThCRjRcdTY2MEVcdTRFMEVcdTkwMDlcdTk4NzlcdTMwMDI8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy10YWJzIiByb2xlPSJ0YWJsaXN0IiBhcmlhLWxhYmVsPSJcdThCQkVcdTdGNkVcdTUyMDZcdTdFQzQiIGFyaWEtb3JpZW50YXRpb249InZlcnRpY2FsIj48YnV0dG9uIGNsYXNzPSJzZXR0aW5ncy10YWIgYWN0aXZlIiBkYXRhLXRhYj0iYWJvdXQiIHJvbGU9InRhYiIgYXJpYS1zZWxlY3RlZD0idHJ1ZSIgYXJpYS1jb250cm9scz0ic2V0dGluZ3MtdGFiLWFib3V0Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdGFiLW1haW4iPlx1NTE3M1x1NEU4RTwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdGFiLW1ldGEiPlx1NzI0OFx1NjcyQ1x1MzAwMVx1NjZGNFx1NjVCMFx1NEUwRVx1OEZERVx1NjNBNVx1NjVCOVx1NUYwRjwvc3Bhbj48L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJzZXR0aW5ncy10YWIiIGRhdGEtdGFiPSJnZW5lcmFsIiByb2xlPSJ0YWIiIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIiBhcmlhLWNvbnRyb2xzPSJzZXR0aW5ncy10YWItZ2VuZXJhbCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRhYi1tYWluIj5cdTU3RkFcdTY3MkNcdTkxNERcdTdGNkU8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRhYi1tZXRhIj5cdTRFM0JcdTY3M0FcdTMwMDFcdTZBMjFcdTVGMEZcdTMwMDFcdThCRURcdThBMDBcdTMwMDFcdTc2RUVcdTVGNTU8L3NwYW4+PC9idXR0b24+PGJ1dHRvbiBjbGFzcz0ic2V0dGluZ3MtdGFiIiBkYXRhLXRhYj0ibm90aWZpY2F0aW9ucyIgcm9sZT0idGFiIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSIgYXJpYS1jb250cm9scz0ic2V0dGluZ3MtdGFiLW5vdGlmaWNhdGlvbnMiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10YWItbWFpbiI+XHU5MDFBXHU3N0U1PC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10YWItbWV0YSI+XHU2M0QwXHU3OTNBXHU5N0YzXHU0RTBFXHU2RDRGXHU4OUM4XHU1NjY4XHU5MDFBXHU3N0U1PC9zcGFuPjwvYnV0dG9uPjxidXR0b24gY2xhc3M9InNldHRpbmdzLXRhYiIgZGF0YS10YWI9InNlY3VyaXR5IiByb2xlPSJ0YWIiIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIiBhcmlhLWNvbnRyb2xzPSJzZXR0aW5ncy10YWItc2VjdXJpdHkiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10YWItbWFpbiI+XHU1Qjg5XHU1MTY4PC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10YWItbWV0YSI+XHU1QkM2XHU3ODAxXHU0RTBFXHU4QkMxXHU0RTY2PC9zcGFuPjwvYnV0dG9uPjxidXR0b24gY2xhc3M9InNldHRpbmdzLXRhYiIgZGF0YS10YWI9InByZXNldHMiIHJvbGU9InRhYiIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiIGFyaWEtY29udHJvbHM9InNldHRpbmdzLXRhYi1wcmVzZXRzIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdGFiLW1haW4iPlx1NTQ3RFx1NEVFNFx1OTg4NFx1OEJCRTwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdGFiLW1ldGEiPlx1NjdFNVx1NzcwQlx1NURGMlx1NjcwOVx1OTg4NFx1OEJCRTwvc3Bhbj48L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJzZXR0aW5ncy10YWIiIGRhdGEtdGFiPSJkaXNwbGF5IiByb2xlPSJ0YWIiIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIiBhcmlhLWNvbnRyb2xzPSJzZXR0aW5ncy10YWItZGlzcGxheSI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRhYi1tYWluIj5cdTY2M0VcdTc5M0E8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRhYi1tZXRhIj5cdTUzNjFcdTcyNDdcdTlFRDhcdThCQTRcdTVDNTVcdTVGMDBcdTg4NENcdTRFM0E8L3NwYW4+PC9idXR0b24+PC9kaXY+PC9hc2lkZT48ZGl2IGNsYXNzPSJzZXR0aW5ncy1jb250ZW50Ij48ZGl2IGNsYXNzPSJzZXR0aW5ncy1wYW5lbCBhY3RpdmUiIGlkPSJzZXR0aW5ncy10YWItYWJvdXQiIHJvbGU9InRhYnBhbmVsIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1wYW5lbC1oZWFkZXIiPjxoMyBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtdGl0bGUiPlx1NTE3M1x1NEU4RSBXYW5kPC9oMz48cCBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtZGVzYyI+XHU2N0U1XHU3NzBCXHU3MjQ4XHU2NzJDXHU0RkUxXHU2MDZGXHUzMDAxXHU2NkY0XHU2NUIwXHU3MkI2XHU2MDAxXHU1NDhDIEFuZHJvaWQgQXBwIFx1OEZERVx1NjNBNVx1NjVCOVx1NUYwRlx1MzAwMjwvcD48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1hYm91dC1pbmZvIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1hYm91dC1yb3ciPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1sYWJlbCI+XHU1MzA1XHU1NDBEPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy12YWx1ZSIgaWQ9InNldHRpbmdzLXBrZy1uYW1lIj4tPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWxhYmVsIj5cdTVGNTNcdTUyNERcdTcyNDhcdTY3MkM8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXZhbHVlIiBpZD0ic2V0dGluZ3MtdmVyc2lvbiI+LTwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1hYm91dC1yb3ciPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1sYWJlbCI+Tm9kZS5qcyBcdTg5ODFcdTZDNDI8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXZhbHVlIiBpZD0ic2V0dGluZ3Mtbm9kZS1yZXEiPi08L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtYWJvdXQtcm93Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtbGFiZWwiPlx1NEVEM1x1NUU5M1x1NTczMFx1NTc0MDwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdmFsdWUiIGlkPSJzZXR0aW5ncy1yZXBvLXVybCI+PGEgaHJlZj0iIyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiPi08L2E+PC9zcGFuPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXVwZGF0ZS1zZWN0aW9uIiBpZD0id2ViLXVwZGF0ZS1zZWN0aW9uIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWljb24iPicrRygiZ2xvYmUiLHtzaXplOjE4LHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkLXRleHQiPjxoNCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkaW5nIj5XZWIgXHU3QUVGPC9oND48cCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1zdWIiPlx1NkQ0Rlx1ODlDOFx1NTY2OFx1OEJCRlx1OTVFRVx1NzY4NFx1NjcwRFx1NTJBMVx1NzI0OFx1NjcyQzwvcD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1hYm91dC1yb3ciPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1sYWJlbCI+XHU2NzAwXHU2NUIwXHU3MjQ4XHU2NzJDPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy12YWx1ZSIgaWQ9InNldHRpbmdzLWxhdGVzdC12ZXJzaW9uIj4tPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXVwZGF0ZS1hY3Rpb25zIj48YnV0dG9uIGlkPSJjaGVjay11cGRhdGUtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkgYnRuLXNtIj5cdTY4QzBcdTY3RTVcdTY2RjRcdTY1QjA8L2J1dHRvbj48YnV0dG9uIGlkPSJkby11cGRhdGUtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zbSBoaWRkZW4iPlx1NjZGNFx1NjVCMFx1NTIzMFx1NjcwMFx1NjVCMFx1NzI0ODwvYnV0dG9uPjxidXR0b24gaWQ9ImRvLXJlc3RhcnQtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1zdWNjZXNzIGJ0bi1zbSBoaWRkZW4iPlx1OTFDRFx1NTQyRlx1NzUxRlx1NjU0ODwvYnV0dG9uPjwvZGl2PjxwIGlkPSJ1cGRhdGUtbWVzc2FnZSIgY2xhc3M9ImhpbnQgaGlkZGVuIj48L3A+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXJvdyI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRleHQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGl0bGUiPkJldGEgXHU5MDFBXHU5MDUzPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtZGVzYyI+XHU2NkY0XHU2NUIwXHU1MjMwIG5wbSBiZXRhIFx1NzI0OFx1NjcyQ1x1RkYwOHRhZyArIGNvbW1pdCBcdTVDM0VcdTY4MDdcdUZGMDlcdUZGMENcdTVDMURcdTlDOUNcdTY1QjBcdTUyOUZcdTgwRkRcdUZGMENcdTUzRUZcdTgwRkRcdTRFMERcdTdBMzNcdTVCOUFcdTMwMDI8L3NwYW4+PC9kaXY+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy1zd2l0Y2giPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9ImJldGEtY2hhbm5lbC10b2dnbGUiIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIj48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvbGFiZWw+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXJvdyI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRleHQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGl0bGUiPlx1ODFFQVx1NTJBOFx1NjZGNFx1NjVCMDwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLWRlc2MiPlx1NjhDMFx1NkQ0Qlx1NTIzMFx1NjVCMFx1NzI0OFx1NjcyQ1x1NUMwNlx1ODFFQVx1NTJBOFx1NEUwQlx1OEY3RFx1NUI4OVx1ODhDNVx1NUU3Nlx1OTFDRFx1NTQyRlx1NjcwRFx1NTJBMVx1MzAwMjwvc3Bhbj48L2Rpdj48bGFiZWwgY2xhc3M9InNldHRpbmdzLXN3aXRjaCI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBpZD0iYXV0by11cGRhdGUtd2ViLXRvZ2dsZSIgY2xhc3M9InN3aXRjaC10b2dnbGUiPjxzcGFuIGNsYXNzPSJzd2l0Y2gtc2xpZGVyIj48L3NwYW4+PC9sYWJlbD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy11cGRhdGUtc2VjdGlvbiBoaWRkZW4iIGlkPSJhbmRyb2lkLWFway1zZWN0aW9uIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWljb24iPicrRygic21hcnRwaG9uZSIse3NpemU6MTgsc3Ryb2tlV2lkdGg6MS43fSkrJzwvc3Bhbj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQtdGV4dCI+PGg0IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWRpbmciPkFuZHJvaWQgQXBwPC9oND48cCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1zdWIiPlx1NTM5Rlx1NzUxRlx1NUJBMlx1NjIzN1x1N0FFRlx1NzI0OFx1NjcyQ1x1NEUwRSBBUEsgXHU0RTBCXHU4RjdEPC9wPjwvZGl2PjwvZGl2PjxkaXYgaWQ9ImFuZHJvaWQtYXBrLWN1cnJlbnQtcm93IiBjbGFzcz0ic2V0dGluZ3MtYWJvdXQtcm93IGhpZGRlbiI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWxhYmVsIj5cdTVGNTNcdTUyNERcdTcyNDhcdTY3MkM8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXZhbHVlIiBpZD0ic2V0dGluZ3MtYW5kcm9pZC1hcGstY3VycmVudCI+LTwvc3Bhbj48L2Rpdj48ZGl2IGlkPSJhbmRyb2lkLWFway1naXRodWItcm93IiBjbGFzcz0ic2V0dGluZ3MtYWJvdXQtcm93IHNldHRpbmdzLWFib3V0LXJvdy1hY3Rpb24gaGlkZGVuIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtbGFiZWwiPlx1N0VCRlx1NEUwQVx1NzI0OFx1NjcyQzwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdmFsdWUgc2V0dGluZ3MtdmFsdWUtZmxleCIgaWQ9InNldHRpbmdzLWFuZHJvaWQtYXBrLWdpdGh1YiI+LTwvc3Bhbj48YnV0dG9uIGlkPSJkb3dubG9hZC1naXRodWItYXBrLWJ0biIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSBoaWRkZW4iIHR5cGU9ImJ1dHRvbiI+XHU0RTBCXHU4RjdEPC9idXR0b24+PC9kaXY+PGRpdiBpZD0iYW5kcm9pZC1hcGstbG9jYWwtcm93IiBjbGFzcz0ic2V0dGluZ3MtYWJvdXQtcm93IHNldHRpbmdzLWFib3V0LXJvdy1hY3Rpb24gaGlkZGVuIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtbGFiZWwiPlx1NjcyQ1x1NTczMFx1NzI0OFx1NjcyQzwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdmFsdWUgc2V0dGluZ3MtdmFsdWUtZmxleCIgaWQ9InNldHRpbmdzLWFuZHJvaWQtYXBrLWxvY2FsIj4tPC9zcGFuPjxidXR0b24gaWQ9ImRvd25sb2FkLWxvY2FsLWFway1idG4iIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20gaGlkZGVuIiB0eXBlPSJidXR0b24iPlx1NEUwQlx1OEY3RDwvYnV0dG9uPjwvZGl2PjxkaXYgaWQ9ImFuZHJvaWQtYXV0by11cGRhdGUtcm93IiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXJvdyBoaWRkZW4iPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10ZXh0Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRpdGxlIj5cdTgxRUFcdTUyQThcdTY2RjRcdTY1QjA8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1kZXNjIiBpZD0iYW5kcm9pZC1hdXRvLXVwZGF0ZS1oaW50Ij5cdTY4QzBcdTZENEJcdTUyMzBcdTY1QjBcdTcyNDggQVBLIFx1NjVGNlx1ODFFQVx1NTJBOFx1NjJDOVx1OEQ3N1x1NEUwQlx1OEY3RFx1RkYwQ1x1NUI4OVx1ODhDNVx1NEVDRFx1OTcwMFx1NTcyOFx1N0NGQlx1N0VERlx1NEUyRFx1Nzg2RVx1OEJBNFx1MzAwMjwvc3Bhbj48L2Rpdj48bGFiZWwgY2xhc3M9InNldHRpbmdzLXN3aXRjaCI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBpZD0iYXV0by11cGRhdGUtYXBrLXRvZ2dsZSIgY2xhc3M9InN3aXRjaC10b2dnbGUiPjxzcGFuIGNsYXNzPSJzd2l0Y2gtc2xpZGVyIj48L3NwYW4+PC9sYWJlbD48L2Rpdj48cCBpZD0iYW5kcm9pZC1hcGstbWVzc2FnZSIgY2xhc3M9ImhpbnQgaGlkZGVuIj48L3A+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdXBkYXRlLXNlY3Rpb24gaGlkZGVuIiBpZD0ibWFjb3MtZG1nLXNlY3Rpb24iPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taWNvbiI+JytHKCJkZXNrdG9wIix7c2l6ZToxOCxzdHJva2VXaWR0aDoxLjd9KSsnPC9zcGFuPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZC10ZXh0Ij48aDQgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZGluZyI+bWFjT1MgQXBwPC9oND48cCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1zdWIiPlx1NTM5Rlx1NzUxRlx1NUJBMlx1NjIzN1x1N0FFRlx1NzI0OFx1NjcyQ1x1NEUwRSBETUcgXHU0RTBCXHU4RjdEPC9wPjwvZGl2PjwvZGl2PjxkaXYgaWQ9Im1hY29zLWRtZy1jdXJyZW50LXJvdyIgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyBoaWRkZW4iPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1sYWJlbCI+XHU1RjUzXHU1MjREXHU3MjQ4XHU2NzJDPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy12YWx1ZSIgaWQ9InNldHRpbmdzLW1hY29zLWRtZy1jdXJyZW50Ij4tPC9zcGFuPjwvZGl2PjxkaXYgaWQ9Im1hY29zLWRtZy1naXRodWItcm93IiBjbGFzcz0ic2V0dGluZ3MtYWJvdXQtcm93IHNldHRpbmdzLWFib3V0LXJvdy1hY3Rpb24gaGlkZGVuIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtbGFiZWwiPlx1N0VCRlx1NEUwQVx1NzI0OFx1NjcyQzwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdmFsdWUgc2V0dGluZ3MtdmFsdWUtZmxleCIgaWQ9InNldHRpbmdzLW1hY29zLWRtZy1naXRodWIiPi08L3NwYW4+PGJ1dHRvbiBpZD0iZG93bmxvYWQtZ2l0aHViLWRtZy1idG4iIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20gaGlkZGVuIiB0eXBlPSJidXR0b24iPlx1NEUwQlx1OEY3RDwvYnV0dG9uPjwvZGl2PjxkaXYgaWQ9Im1hY29zLWRtZy1sb2NhbC1yb3ciIGNsYXNzPSJzZXR0aW5ncy1hYm91dC1yb3cgc2V0dGluZ3MtYWJvdXQtcm93LWFjdGlvbiBoaWRkZW4iPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1sYWJlbCI+XHU2NzJDXHU1NzMwXHU3MjQ4XHU2NzJDPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy12YWx1ZSBzZXR0aW5ncy12YWx1ZS1mbGV4IiBpZD0ic2V0dGluZ3MtbWFjb3MtZG1nLWxvY2FsIj4tPC9zcGFuPjxidXR0b24gaWQ9ImRvd25sb2FkLWxvY2FsLWRtZy1idG4iIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20gaGlkZGVuIiB0eXBlPSJidXR0b24iPlx1NEUwQlx1OEY3RDwvYnV0dG9uPjwvZGl2PjxkaXYgaWQ9Im1hY29zLWF1dG8tdXBkYXRlLXJvdyIgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1yb3cgaGlkZGVuIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGV4dCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10aXRsZSI+XHU4MUVBXHU1MkE4XHU2NkY0XHU2NUIwPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtZGVzYyIgaWQ9Im1hY29zLWF1dG8tdXBkYXRlLWhpbnQiPlx1NjhDMFx1NkQ0Qlx1NTIzMFx1NjVCMFx1NzI0OCBETUcgXHU1QzA2XHU4MUVBXHU1MkE4XHU0RTBCXHU4RjdEXHU1RTc2XHU2MzAyXHU4RjdEXHUzMDAyPC9zcGFuPjwvZGl2PjxsYWJlbCBjbGFzcz0ic2V0dGluZ3Mtc3dpdGNoIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJhdXRvLXVwZGF0ZS1kbWctdG9nZ2xlIiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSI+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2xhYmVsPjwvZGl2PjxwIGlkPSJtYWNvcy1kbWctbWVzc2FnZSIgY2xhc3M9ImhpbnQgaGlkZGVuIj48L3A+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdXBkYXRlLXNlY3Rpb24iIGlkPSJhbmRyb2lkLWNvbm5lY3Qtc2VjdGlvbiI+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1pY29uIj4nK0coImxpbmsiLHtzaXplOjE4LHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkLXRleHQiPjxoNCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkaW5nIj5BcHAgXHU4RkRFXHU2M0E1XHU3ODAxPC9oND48cCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1zdWIiPlx1N0M5OFx1OEQzNFx1NTIzMCBBbmRyb2lkIEFwcCBcdTUzNzNcdTUzRUZcdTgxRUFcdTUyQThcdThGREVcdTYzQTVcdUZGMENcdTY1RTBcdTk3MDBcdTVCQzZcdTc4MDFcdUZGMUJcdTY1MzlcdTVCQzZcdTc4MDFcdTU0MEVcdTU5MzFcdTY1NDhcdTMwMDI8L3A+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtY29ubmVjdC11cmwtYm94Ij48Y29kZSBpZD0iYW5kcm9pZC1jb25uZWN0LWNvZGUiIGNsYXNzPSJzZXR0aW5ncy1jb25uZWN0LXVybC10ZXh0Ij4tPC9jb2RlPjxidXR0b24gaWQ9ImNvcHktY29ubmVjdC1jb2RlLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU1OTBEXHU1MjM2XHU4RkRFXHU2M0E1XHU3ODAxIj5cdTU5MERcdTUyMzY8L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1jb25uZWN0LXFyLWJveCI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtY29ubmVjdC1xci13cmFwIiBpZD0iYW5kcm9pZC1jb25uZWN0LXFyLXdyYXAiIHRpdGxlPSJcdTcwQjlcdTUxRkJcdTY1M0VcdTU5MjciPjxjYW52YXMgaWQ9ImFuZHJvaWQtY29ubmVjdC1xciIgd2lkdGg9IjE4MCIgaGVpZ2h0PSIxODAiPjwvY2FudmFzPjxkaXYgY2xhc3M9InNldHRpbmdzLWNvbm5lY3QtcXItZW1wdHkiIGlkPSJhbmRyb2lkLWNvbm5lY3QtcXItZW1wdHkiPlx1NzUxRlx1NjIxMFx1NEUyRFx1MjAyNjwvZGl2PjwvZGl2PjxwIGNsYXNzPSJzZXR0aW5ncy1jb25uZWN0LXFyLWhpbnQiPlx1NzUyOCBXYW5kIEFwcCBcdTYyNkJcdTRFMDBcdTYyNkJcdUZGMENcdTUzNzNcdTUzRUZcdTRFMDBcdTk1MkVcdTU4NkJcdTUxNjVcdTY3MERcdTUyQTFcdTU2NjhcdTU3MzBcdTU3NDBcdTRFMEVcdThGREVcdTYzQTVcdTc4MDFcdTMwMDI8L3A+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtcGFuZWwiIGlkPSJzZXR0aW5ncy10YWItbm90aWZpY2F0aW9ucyIgcm9sZT0idGFicGFuZWwiPjxkaXYgY2xhc3M9InNldHRpbmdzLXBhbmVsLWhlYWRlciI+PGgzIGNsYXNzPSJzZXR0aW5ncy1wYW5lbC10aXRsZSI+XHU5MDFBXHU3N0U1PC9oMz48cCBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtZGVzYyI+XHU4QkJFXHU3RjZFXHU2M0QwXHU3OTNBXHU5N0YzXHUzMDAxXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHU1NDhDXHU2RDRGXHU4OUM4XHU1NjY4XHU5MDFBXHU3N0U1XHU3Njg0XHU4ODRDXHU0RTNBXHUzMDAyPC9wPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9uIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWljb24iPicrRygiYmVsbCIse3NpemU6MTgsc3Ryb2tlV2lkdGg6MS43fSkrJzwvc3Bhbj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQtdGV4dCI+PGg0IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWRpbmciPlx1OTAxQVx1NzdFNVx1NTA0Rlx1NTk3RDwvaDQ+PHAgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24tc3ViIj5cdTYzRDBcdTc5M0FcdTk3RjNcdTRFMEVcdTVFOTRcdTc1MjhcdTUxODVcdTkwMUFcdTc3RTVcdTZDMTRcdTZDRTE8L3A+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXJvdyI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRleHQiPjxsYWJlbCBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRpdGxlIiBmb3I9ImNmZy1ub3RpZi1zb3VuZCI+XHU2NEFEXHU2NTNFXHU2M0QwXHU3OTNBXHU5N0YzPC9sYWJlbD48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLWRlc2MiPlx1OTFDRFx1ODk4MVx1OTAxQVx1NzdFNVx1RkYwOFx1NzI0OFx1NjcyQ1x1NjZGNFx1NjVCMFx1MzAwMVx1Njc0M1x1OTY1MFx1N0I0OVx1NUY4NVx1N0I0OVx1RkYwOVx1NjVGNlx1NjRBRFx1NjUzRVx1NjdENFx1NTQ4Q1x1NjNEMFx1NzkzQVx1OTdGM1x1MzAwMjwvc3Bhbj48L2Rpdj48bGFiZWwgY2xhc3M9InNldHRpbmdzLXN3aXRjaCI+PGlucHV0IGlkPSJjZmctbm90aWYtc291bmQiIHR5cGU9ImNoZWNrYm94IiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSIgLz48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvbGFiZWw+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtcmFuZ2Utcm93IiBpZD0ibm90aWYtdm9sdW1lLWZpZWxkIj48bGFiZWwgY2xhc3M9InNldHRpbmdzLXJhbmdlLWxhYmVsIiBmb3I9ImNmZy1ub3RpZi12b2x1bWUiPlx1OTdGM1x1OTFDRjwvbGFiZWw+PGlucHV0IGlkPSJjZmctbm90aWYtdm9sdW1lIiB0eXBlPSJyYW5nZSIgbWluPSIwIiBtYXg9IjEwMCIgc3RlcD0iNSIgY2xhc3M9InNldHRpbmdzLXJhbmdlIiAvPjxzcGFuIGlkPSJjZmctbm90aWYtdm9sdW1lLXZhbCIgY2xhc3M9InNldHRpbmdzLXJhbmdlLXZhbHVlIj44MCU8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXJvdyI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRleHQiPjxsYWJlbCBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRpdGxlIiBmb3I9ImNmZy1ub3RpZi1idWJibGUiPlx1NUU5NFx1NzUyOFx1NTE4NVx1OTAxQVx1NzdFNVx1NkMxNFx1NkNFMTwvbGFiZWw+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1kZXNjIj5cdTU3MjhcdTk4NzVcdTk3NjJcdTk4NzZcdTkwRThcdTVGMzlcdTUxRkFcdTZENkVcdTUyQThcdTkwMUFcdTc3RTVcdTZDMTRcdTZDRTFcdTMwMDI8L3NwYW4+PC9kaXY+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy1zd2l0Y2giPjxpbnB1dCBpZD0iY2ZnLW5vdGlmLWJ1YmJsZSIgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIiAvPjxzcGFuIGNsYXNzPSJzd2l0Y2gtc2xpZGVyIj48L3NwYW4+PC9sYWJlbD48L2Rpdj48L2Rpdj48ZGl2IGlkPSJuYXRpdmUtc291bmQtc2VjdGlvbiIgY2xhc3M9InNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9uIGhpZGRlbiI+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1pY29uIj4nK0coIm11c2ljIix7c2l6ZToxOCxzdHJva2VXaWR0aDoxLjd9KSsnPC9zcGFuPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZC10ZXh0Ij48aDQgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZGluZyI+XHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHU5NEMzXHU1OEYwPC9oND48cCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1zdWIiPlx1OTAwOVx1NjJFOSBBbmRyb2lkIFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1NEY3Rlx1NzUyOFx1NzY4NFx1OTRDM1x1NThGMDwvcD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1yb3ctd2l0aC1hY3Rpb24iPjxzZWxlY3QgaWQ9Im5hdGl2ZS1zb3VuZC1zZWxlY3QiIGNsYXNzPSJmaWVsZC1pbnB1dCBmaWVsZC1zZWxlY3QiPjwvc2VsZWN0PjxidXR0b24gaWQ9Im5hdGl2ZS1zb3VuZC1wcmV2aWV3IiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkgYnRuLXNtIGJ0bi13aXRoLWljb24iIHR5cGU9ImJ1dHRvbiI+JytHKCJwbGF5Iix7c2l6ZToxMSxzdHJva2VXaWR0aDoxLjgsZmlsbDoiY3VycmVudENvbG9yIn0pKyc8c3Bhbj5cdThCRDVcdTU0MkM8L3NwYW4+PC9idXR0b24+PC9kaXY+PC9kaXY+PGRpdiBpZD0ibmF0aXZlLWhhcHRpYy1zZWN0aW9uIiBjbGFzcz0ic2V0dGluZ3Mtbm90aWZpY2F0aW9uLXNlY3Rpb24gaGlkZGVuIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWljb24iPicrRygidmlicmF0ZSIse3NpemU6MTgsc3Ryb2tlV2lkdGg6MS43fSkrJzwvc3Bhbj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQtdGV4dCI+PGg0IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWRpbmciPlx1ODlFNlx1NjExRlx1NTNDRFx1OTk4ODwvaDQ+PHAgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24tc3ViIj5cdTYzMDlcdTk0QUVcdTY0Q0RcdTRGNUNcdTU0OENcdTRFRkJcdTUyQTFcdTVCOENcdTYyMTBcdTY1RjZcdTYzRDBcdTRGOUJcdTYzMkZcdTUyQThcdTUzQ0RcdTk5ODg8L3A+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXJvdyI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRleHQiPjxsYWJlbCBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRpdGxlIiBmb3I9ImNmZy1oYXB0aWMtZW5hYmxlZCI+XHU1NDJGXHU3NTI4XHU4OUU2XHU2MTFGXHU1M0NEXHU5OTg4PC9sYWJlbD48L2Rpdj48bGFiZWwgY2xhc3M9InNldHRpbmdzLXN3aXRjaCI+PGlucHV0IGlkPSJjZmctaGFwdGljLWVuYWJsZWQiIHR5cGU9ImNoZWNrYm94IiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSIgLz48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvbGFiZWw+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtbm90aWZpY2F0aW9uLXNlY3Rpb24iPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taWNvbiI+JytHKCJnbG9iZSIse3NpemU6MTgsc3Ryb2tlV2lkdGg6MS43fSkrJzwvc3Bhbj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQtdGV4dCI+PGg0IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWRpbmciPlx1NkQ0Rlx1ODlDOFx1NTY2OFx1OTAxQVx1NzdFNTwvaDQ+PHAgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24tc3ViIj5cdTY3NjVcdTgxRUFcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdTRFMkRcdTVGQzNcdTc2ODRcdTVGMzlcdTdBOTc8L3A+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtYWJvdXQtcm93Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtbGFiZWwiPlx1NjM4OFx1Njc0M1x1NzJCNlx1NjAwMTwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdmFsdWUiIGlkPSJub3RpZmljYXRpb24tcGVybWlzc2lvbi1zdGF0dXMiPi08L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdXBkYXRlLWFjdGlvbnMiPjxidXR0b24gaWQ9Im5vdGlmaWNhdGlvbi1yZXF1ZXN0LWJ0biIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSBidG4tc20gaGlkZGVuIiB0eXBlPSJidXR0b24iPlx1NjM4OFx1Njc0M1x1OTAxQVx1NzdFNTwvYnV0dG9uPjxidXR0b24gaWQ9Im5vdGlmaWNhdGlvbi1yZXNldC1idG4iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSBoaWRkZW4iIHR5cGU9ImJ1dHRvbiI+XHU5MUNEXHU2NUIwXHU2Mzg4XHU2NzQzPC9idXR0b24+PGJ1dHRvbiBpZD0ibm90aWZpY2F0aW9uLXRlc3QtYnRuIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkgYnRuLXNtIiB0eXBlPSJidXR0b24iPlx1NTNEMVx1OTAwMVx1NkQ0Qlx1OEJENVx1OTAxQVx1NzdFNTwvYnV0dG9uPjxidXR0b24gaWQ9Im5vdGlmaWNhdGlvbi10ZXN0LWRlbGF5LWJ0biIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtIiB0eXBlPSJidXR0b24iPjEwIFx1NzlEMlx1NTQwRVx1NTNEMVx1OTAwMTwvYnV0dG9uPjwvZGl2PjxwIGlkPSJub3RpZmljYXRpb24tdGVzdC1tZXNzYWdlIiBjbGFzcz0iaGludCBoaWRkZW4iPjwvcD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1wYW5lbCIgaWQ9InNldHRpbmdzLXRhYi1nZW5lcmFsIiByb2xlPSJ0YWJwYW5lbCI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtaGVhZGVyIj48aDMgY2xhc3M9InNldHRpbmdzLXBhbmVsLXRpdGxlIj5cdTU3RkFcdTY3MkNcdTkxNERcdTdGNkU8L2gzPjxwIGNsYXNzPSJzZXR0aW5ncy1wYW5lbC1kZXNjIj5cdTkxNERcdTdGNkVcdTY3MERcdTUyQTFcdTc2RDFcdTU0MkNcdTU3MzBcdTU3NDBcdTMwMDFcdTlFRDhcdThCQTRcdTZBMjFcdTVGMEZcdTMwMDFcdThCRURcdThBMDBcdTU0OENcdTVERTVcdTRGNUNcdTc2RUVcdTVGNTVcdTMwMDI8L3A+PC9kaXY+PGRpdiBjbGFzcz0iZmllbGQtcm93Ij48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJjZmctaG9zdCI+XHU3NkQxXHU1NDJDXHU1NzMwXHU1NzQwIChob3N0KTwvbGFiZWw+PGlucHV0IGlkPSJjZmctaG9zdCIgdHlwZT0idGV4dCIgY2xhc3M9ImZpZWxkLWlucHV0IiBwbGFjZWhvbGRlcj0iMTI3LjAuMC4xIiAvPjwvZGl2PjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9ImNmZy1wb3J0Ij5cdTdBRUZcdTUzRTMgKHBvcnQpPC9sYWJlbD48aW5wdXQgaWQ9ImNmZy1wb3J0IiB0eXBlPSJudW1iZXIiIGNsYXNzPSJmaWVsZC1pbnB1dCIgcGxhY2Vob2xkZXI9Ijg0NDMiIG1pbj0iMSIgbWF4PSI2NTUzNSIgLz48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtcm93Ij48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGV4dCI+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGl0bGUiIGZvcj0iY2ZnLWh0dHBzIj5cdTU0MkZcdTc1MjggSFRUUFM8L2xhYmVsPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtZGVzYyI+XHU0RjdGXHU3NTI4XHU4MUVBXHU3QjdFXHU1NDBEXHU4QkMxXHU0RTY2XHU1MkEwXHU1QkM2XHU2RDRGXHU4OUM4XHU1NjY4XHU1MjMwXHU2NzBEXHU1MkExXHU3Njg0XHU4RkRFXHU2M0E1XHVGRjBDaG9zdCBcdTRFM0FcdTk3NUUgMTI3LjAuMC4xIFx1NjVGNlx1NUVGQVx1OEJBRVx1NUYwMFx1NTQyRlx1MzAwMjwvc3Bhbj48L2Rpdj48bGFiZWwgY2xhc3M9InNldHRpbmdzLXN3aXRjaCI+PGlucHV0IGlkPSJjZmctaHR0cHMiIHR5cGU9ImNoZWNrYm94IiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSIgLz48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvbGFiZWw+PC9kaXY+PGRpdiBjbGFzcz0iZmllbGQtcm93Ij48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJjZmctbW9kZSI+XHU5RUQ4XHU4QkE0XHU2MjY3XHU4ODRDXHU2QTIxXHU1RjBGPC9sYWJlbD48c2VsZWN0IGlkPSJjZmctbW9kZSIgY2xhc3M9ImZpZWxkLWlucHV0Ij48b3B0aW9uIHZhbHVlPSJkZWZhdWx0Ij5kZWZhdWx0PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iYXNzaXN0Ij5hc3Npc3Q8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJhZ2VudCI+YWdlbnQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJhZ2VudC1tYXgiPmFnZW50LW1heDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9ImF1dG8tZWRpdCI+YXV0by1lZGl0PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iZnVsbC1hY2Nlc3MiPmZ1bGwtYWNjZXNzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0ibmF0aXZlIj5uYXRpdmU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJtYW5hZ2VkIj5tYW5hZ2VkPC9vcHRpb24+PC9zZWxlY3Q+PC9kaXY+PGRpdiBjbGFzcz0iZmllbGQiPjxsYWJlbCBjbGFzcz0iZmllbGQtbGFiZWwiIGZvcj0iY2ZnLWxhbmd1YWdlIj5cdTU2REVcdTU5MERcdThCRURcdThBMDA8L2xhYmVsPjxzZWxlY3QgaWQ9ImNmZy1sYW5ndWFnZSIgY2xhc3M9ImZpZWxkLWlucHV0Ij48b3B0aW9uIHZhbHVlPSIiPlx1ODFFQVx1NTJBOFx1RkYwOFx1NEUwRFx1NjMwN1x1NUI5QVx1RkYwOTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9Ilx1NEUyRFx1NjU4NyI+XHU0RTJEXHU2NTg3PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iRW5nbGlzaCI+RW5nbGlzaDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9Ilx1NjVFNVx1NjcyQ1x1OEE5RSI+XHU2NUU1XHU2NzJDXHU4QTlFPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iXHVENTVDXHVBRDZEXHVDNUI0Ij5cdUQ1NUNcdUFENkRcdUM1QjQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJFc3BhXHhGMW9sIj5Fc3BhXHhGMW9sPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iRnJhblx4RTdhaXMiPkZyYW5ceEU3YWlzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iRGV1dHNjaCI+RGV1dHNjaDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9Ilx1MDQyMFx1MDQ0M1x1MDQ0MVx1MDQ0MVx1MDQzQVx1MDQzOFx1MDQzOSI+XHUwNDIwXHUwNDQzXHUwNDQxXHUwNDQxXHUwNDNBXHUwNDM4XHUwNDM5PC9vcHRpb24+PC9zZWxlY3Q+PC9kaXY+PC9kaXY+PHAgY2xhc3M9ImZpZWxkLWhpbnQiIHN0eWxlPSJtYXJnaW4tdG9wOi00cHg7Ij5cdThCQkVcdTdGNkVcdTU2REVcdTU5MERcdThCRURcdThBMDBcdTU0MEVcdUZGMENDbGF1ZGUgXHU1QzA2XHU1QzNEXHU5MUNGXHU0RjdGXHU3NTI4XHU2MzA3XHU1QjlBXHU4QkVEXHU4QTAwXHU1NkRFXHU1OTBEXHUzMDAyPC9wPjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9ImNmZy1zdHJ1Y3R1cmVkLXJ1bm5lciI+XHU3RUQzXHU2Nzg0XHU1MzE2XHU0RjFBXHU4QkREIFJ1bm5lcjwvbGFiZWw+PHNlbGVjdCBpZD0iY2ZnLXN0cnVjdHVyZWQtcnVubmVyIiBjbGFzcz0iZmllbGQtaW5wdXQiPjxvcHRpb24gdmFsdWU9InNkayI+U0RLXHVGRjA4QGFudGhyb3BpYy1haS9jbGF1ZGUtYWdlbnQtc2RrXHVGRjBDXHU5RUQ4XHU4QkE0XHVGRjA5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iY2xpIj5DTElcdUZGMDhzcGF3biBjbGF1ZGUgLXBcdUZGMDk8L29wdGlvbj48L3NlbGVjdD48cCBjbGFzcz0iZmllbGQtaGludCIgc3R5bGU9Im1hcmdpbi10b3A6NHB4OyI+U0RLIFx1NkEyMVx1NUYwRlx1NEY3Rlx1NzUyOFx1NUI5OFx1NjVCOSBBZ2VudCBTREsgXHU2NkZGXHU0RUUzIENMSSBzdWJwcm9jZXNzXHVGRjBDXHU2M0E1XHU1M0UzXHU2NkY0XHU2NTc0XHU2RDAxXHVGRjBDXHU1MjlGXHU4MEZEXHU3QjQ5XHU0RUY3XHUzMDAyXHU0RkREXHU1QjU4XHU1NDBFXHU1QkY5XHU2NUIwXHU1RUZBXHU0RjFBXHU4QkREXHU3QUNCXHU1MzczXHU3NTFGXHU2NTQ4XHUzMDAyPC9wPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1yb3ciPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10ZXh0Ij48bGFiZWwgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10aXRsZSIgZm9yPSJjZmctaW5oZXJpdC1lbnYiPlx1N0VFN1x1NjI3Rlx1NzNBRlx1NTg4M1x1NTNEOFx1OTFDRjwvbGFiZWw+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1kZXNjIj5cdTU0MkZcdTUyQTggUFRZIC8gXHU3RUQzXHU2Nzg0XHU1MzE2XHU1QjUwXHU4RkRCXHU3QTBCXHU2NUY2XHVGRjBDXHU2MjhBXHU1RjUzXHU1MjREXHU2NzBEXHU1MkExXHU4RkRCXHU3QTBCXHU3Njg0XHU3M0FGXHU1ODgzXHU1M0Q4XHU5MUNGXHU0RjIwXHU3RUQ5IGNsYXVkZSAvIGNvZGV4XHUzMDAyXHU1MTczXHU5NUVEXHU1NDBFXHU1QjUwXHU4RkRCXHU3QTBCXHU0RUM1XHU4M0I3XHU1Rjk3XHU2NzAwXHU1QzBGXHU1M0VGXHU3NTI4XHU3M0FGXHU1ODgzXHVGRjA4UEFUSC9IT01FL1NIRUxML0xBTkcvVEVSTSBcdTdCNDlcdUZGMDlcdUZGMENcdTUzRUZcdTc1MjhcdTRFOEVcdTk2OTRcdTc5QkIgQVBJIGtleSBcdTdCNDlcdTY1NEZcdTYxMUZcdTUxRURcdTYzNkVcdTMwMDI8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLWFzaWRlIj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgaWQ9ImNmZy12aWV3LWVudi1idG4iIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20iIHRpdGxlPSJcdTY3RTVcdTc3MEJcdTVCOUVcdTk2NDVcdTRGMUFcdTZDRThcdTUxNjVcdTUyMzBcdTVCNTBcdThGREJcdTdBMEJcdTc2ODRcdTczQUZcdTU4ODNcdTUzRDhcdTkxQ0YiPlx1NjdFNVx1NzcwQjwvYnV0dG9uPjxsYWJlbCBjbGFzcz0ic2V0dGluZ3Mtc3dpdGNoIj48aW5wdXQgaWQ9ImNmZy1pbmhlcml0LWVudiIgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIiAvPjxzcGFuIGNsYXNzPSJzd2l0Y2gtc2xpZGVyIj48L3NwYW4+PC9sYWJlbD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJjZmctZGVmYXVsdC1tb2RlbCI+XHU5RUQ4XHU4QkE0XHU2QTIxXHU1NzhCPC9sYWJlbD48ZGl2IGNsYXNzPSJzZXR0aW5ncy1yb3ctd2l0aC1hY3Rpb24iPjxzZWxlY3QgaWQ9ImNmZy1kZWZhdWx0LW1vZGVsIiBjbGFzcz0iZmllbGQtaW5wdXQgZmllbGQtc2VsZWN0Ij48b3B0aW9uIHZhbHVlPSIiPlx1OERERlx1OTY4RiBDbGF1ZGUgQ29kZSBcdTlFRDhcdThCQTQ8L29wdGlvbj48L3NlbGVjdD48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgaWQ9ImNmZy1kZWZhdWx0LW1vZGVsLXJlZnJlc2giIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20iIHRpdGxlPSJcdTUyMzdcdTY1QjBcdTZBMjFcdTU3OEJcdTUyMTdcdTg4NjgiPlx1NTIzN1x1NjVCMDwvYnV0dG9uPjwvZGl2PjxwIGNsYXNzPSJmaWVsZC1oaW50IiBpZD0iY2ZnLWRlZmF1bHQtbW9kZWwtdmVyc2lvbiI+XHU2NUIwXHU1RUZBXHU0RjFBXHU4QkREXHU2NUY2XHU5RUQ4XHU4QkE0XHU0RjdGXHU3NTI4XHU4QkU1XHU2QTIxXHU1NzhCXHVGRjFCXHU4RkQwXHU4ODRDXHU0RTJEXHU3Njg0XHU0RjFBXHU4QkREXHU1M0VGXHU1NzI4XHU4RjkzXHU1MTY1XHU2ODQ2XHU1MjA3XHU2MzYyXHUzMDAyPC9wPjwvZGl2PjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9ImNmZy1jd2QiPlx1OUVEOFx1OEJBNFx1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NTwvbGFiZWw+PGlucHV0IGlkPSJjZmctY3dkIiB0eXBlPSJ0ZXh0IiBjbGFzcz0iZmllbGQtaW5wdXQiIHBsYWNlaG9sZGVyPSIvaG9tZS91c2VyIiAvPjwvZGl2PjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9ImNmZy1zaGVsbCI+U2hlbGw8L2xhYmVsPjxpbnB1dCBpZD0iY2ZnLXNoZWxsIiB0eXBlPSJ0ZXh0IiBjbGFzcz0iZmllbGQtaW5wdXQiIHBsYWNlaG9sZGVyPSIvYmluL2Jhc2giIC8+PC9kaXY+JysodHlwZW9mIFdhbmROYXRpdmU8InUiJiZ0eXBlb2YgV2FuZE5hdGl2ZS5nZXRBcHBJY29uPT0iZnVuY3Rpb24iPyc8ZGl2IGNsYXNzPSJzZXR0aW5ncy1hcHAtaWNvbi1ibG9jayI+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1pY29uIj4nK0coInBhbGV0dGUiLHtzaXplOjE4LHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkLXRleHQiPjxoNCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkaW5nIj5cdTVFOTRcdTc1MjhcdTU2RkVcdTY4MDc8L2g0PjxwIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLXN1YiI+XHU5MDA5XHU2MkU5IEFwcCBcdTU0MkZcdTUyQThcdTU2NjhcdTU2RkVcdTY4MDdcdUZGMENcdThGRDRcdTU2REVcdTY4NENcdTk3NjJcdTU0MEVcdTc1MUZcdTY1NDg8L3A+PC9kaXY+PC9kaXY+PGRpdiBpZD0iYXBwLWljb24tcGlja2VyIiBjbGFzcz0ic2V0dGluZ3MtYXBwLWljb24tcGlja2VyIj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InNldHRpbmdzLWFwcC1pY29uLW9wdGlvbiIgZGF0YS1pY29uPSJzaG9ydGhhaXIiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1hcHAtaWNvbi1wcmV2aWV3Ij4nK3dpLnVzZXIrJzwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtYXBwLWljb24tbGFiZWwiPlx1OEQ1Qlx1NTM1QVx1ODY0RVx1NTk5RTwvc3Bhbj48L2J1dHRvbj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InNldHRpbmdzLWFwcC1pY29uLW9wdGlvbiIgZGF0YS1pY29uPSJnYXJmaWVsZCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWFwcC1pY29uLXByZXZpZXciPicrd2kuYXNzaXN0YW50Kyc8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLWFwcC1pY29uLWxhYmVsIj5cdTUyRTRcdTUyQjNcdTUyMURcdTRFOEM8L3NwYW4+PC9idXR0b24+PC9kaXY+PHAgaWQ9ImFwcC1pY29uLW1lc3NhZ2UiIGNsYXNzPSJoaW50IGhpZGRlbiI+PC9wPjwvZGl2Pic6IiIpKyc8ZGl2IGNsYXNzPSJzZXR0aW5ncy1hY3Rpb25zIHNldHRpbmdzLWFjdGlvbnMtc3RpY2t5Ij48YnV0dG9uIGlkPSJzYXZlLWNvbmZpZy1idXR0b24iIGNsYXNzPSJidG4gYnRuLXByaW1hcnkgYnRuLWJsb2NrIj5cdTRGRERcdTVCNThcdTkxNERcdTdGNkU8L2J1dHRvbj48L2Rpdj48cCBpZD0iY29uZmlnLW1lc3NhZ2UiIGNsYXNzPSJoaW50IGhpZGRlbiBzZXR0aW5ncy1zdGF0dXMtbWVzc2FnZSI+PC9wPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXBhbmVsIiBpZD0ic2V0dGluZ3MtdGFiLXNlY3VyaXR5IiByb2xlPSJ0YWJwYW5lbCI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtaGVhZGVyIj48aDMgY2xhc3M9InNldHRpbmdzLXBhbmVsLXRpdGxlIj5cdTVCODlcdTUxNjg8L2gzPjxwIGNsYXNzPSJzZXR0aW5ncy1wYW5lbC1kZXNjIj5cdTdCQTFcdTc0MDZcdTc2N0JcdTVGNTVcdTVCQzZcdTc4MDFcdTRFMEUgU1NMIFx1OEJDMVx1NEU2Nlx1RkYwQ1x1NjU0Rlx1NjExRlx1NTNEOFx1NjZGNFx1OEJGN1x1Nzg2RVx1OEJBNFx1NTQwRVx1NTE4RFx1NEZERFx1NUI1OFx1MzAwMjwvcD48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1jYXJkIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1jYXJkLWhlYWQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1jYXJkLWljb24iPlx1ezFGNTEyfTwvc3Bhbj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1jYXJkLWhlYWQtdGV4dCI+PGgzIGNsYXNzPSJzZXR0aW5ncy1jYXJkLXRpdGxlIj5cdTRGRUVcdTY1MzlcdTVCQzZcdTc4MDE8L2gzPjxwIGNsYXNzPSJzZXR0aW5ncy1jYXJkLWRlc2MiPlx1ODFGM1x1NUMxMSA2IFx1NEUyQVx1NUI1N1x1N0IyNlx1RkYxQlx1NEZERFx1NUI1OFx1NTQwRVx1NEUwQlx1NkIyMVx1NzY3Qlx1NUY1NVx1NzUxRlx1NjU0OFx1MzAwMjwvcD48L2Rpdj48L2Rpdj48Zm9ybSBpZD0iY2hhbmdlLXBhc3N3b3JkLWZvcm0iIGF1dG9jb21wbGV0ZT0ib24iIG9uc3VibWl0PSJyZXR1cm4gZmFsc2U7Ij48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0idXNlcm5hbWUiIGF1dG9jb21wbGV0ZT0idXNlcm5hbWUiIHZhbHVlPSJ3YW5kIiB0YWJpbmRleD0iLTEiIGFyaWEtaGlkZGVuPSJ0cnVlIiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7bGVmdDotOTk5OXB4O3dpZHRoOjFweDtoZWlnaHQ6MXB4O29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lIiByZWFkb25seSAvPjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9Im5ldy1wYXNzd29yZCI+XHU2NUIwXHU1QkM2XHU3ODAxPC9sYWJlbD48aW5wdXQgaWQ9Im5ldy1wYXNzd29yZCIgdHlwZT0icGFzc3dvcmQiIGNsYXNzPSJmaWVsZC1pbnB1dCIgcGxhY2Vob2xkZXI9Ilx1OEY5M1x1NTE2NVx1NjVCMFx1NUJDNlx1NzgwMVx1RkYwOFx1ODFGM1x1NUMxMSA2IFx1NEUyQVx1NUI1N1x1N0IyNlx1RkYwOSIgYXV0b2NvbXBsZXRlPSJuZXctcGFzc3dvcmQiIC8+PC9kaXY+PGRpdiBjbGFzcz0iZmllbGQiPjxsYWJlbCBjbGFzcz0iZmllbGQtbGFiZWwiIGZvcj0iY29uZmlybS1wYXNzd29yZCI+XHU3ODZFXHU4QkE0XHU1QkM2XHU3ODAxPC9sYWJlbD48aW5wdXQgaWQ9ImNvbmZpcm0tcGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBjbGFzcz0iZmllbGQtaW5wdXQiIHBsYWNlaG9sZGVyPSJcdTUxOERcdTZCMjFcdThGOTNcdTUxNjVcdTY1QjBcdTVCQzZcdTc4MDEiIGF1dG9jb21wbGV0ZT0ibmV3LXBhc3N3b3JkIiAvPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLWNhcmQtYWN0aW9ucyI+PGJ1dHRvbiBpZD0ic2F2ZS1wYXNzd29yZC1idXR0b24iIGNsYXNzPSJidG4gYnRuLXByaW1hcnkiIHR5cGU9InN1Ym1pdCI+XHU0RkREXHU1QjU4XHU1QkM2XHU3ODAxPC9idXR0b24+PC9kaXY+PHAgaWQ9InNldHRpbmdzLWVycm9yIiBjbGFzcz0iZXJyb3ItbWVzc2FnZSBoaWRkZW4iPjwvcD48cCBpZD0ic2V0dGluZ3Mtc3VjY2VzcyIgY2xhc3M9ImhpbnQgc2V0dGluZ3Mtc3VjY2Vzcy1tZXNzYWdlIGhpZGRlbiI+PC9wPjwvZm9ybT48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1jYXJkIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1jYXJkLWhlYWQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1jYXJkLWljb24iPlx1ezFGNTEwfTwvc3Bhbj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1jYXJkLWhlYWQtdGV4dCI+PGgzIGNsYXNzPSJzZXR0aW5ncy1jYXJkLXRpdGxlIj5TU0wgXHU4QkMxXHU0RTY2PC9oMz48cCBjbGFzcz0ic2V0dGluZ3MtY2FyZC1kZXNjIiBpZD0iY2VydC1zdGF0dXMiPlx1NTJBMFx1OEY3RFx1NEUyRC4uLjwvcD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJjZXJ0LWtleS1maWxlIj5cdTc5QzFcdTk0QTVcdTY1ODdcdTRFRjYgKC5rZXkpPC9sYWJlbD48ZGl2IGNsYXNzPSJmaWxlLXBpY2tlciI+PGlucHV0IGlkPSJjZXJ0LWtleS1maWxlIiB0eXBlPSJmaWxlIiBjbGFzcz0iZmlsZS1waWNrZXItaW5wdXQiIGFjY2VwdD0iLmtleSwucGVtIiAvPjxsYWJlbCBmb3I9ImNlcnQta2V5LWZpbGUiIGNsYXNzPSJmaWxlLXBpY2tlci10cmlnZ2VyIj48c3ZnIGNsYXNzPSJmaWxlLXBpY2tlci1pY29uIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik0yMS40NCAxMS4wNWwtOS4xOSA5LjE5YTYgNiAwIDAgMS04LjQ5LTguNDlsOS4xOS05LjE5YTQgNCAwIDAgMSA1LjY2IDUuNjZsLTkuMiA5LjE5YTIgMiAwIDAgMS0yLjgzLTIuODNsOC40OS04LjQ4Ij48L3BhdGg+PC9zdmc+PHNwYW4gY2xhc3M9ImZpbGUtcGlja2VyLWxhYmVsIj5cdTkwMDlcdTYyRTlcdTc5QzFcdTk0QTU8L3NwYW4+PC9sYWJlbD48c3BhbiBjbGFzcz0iZmlsZS1waWNrZXItbmFtZSIgZGF0YS1kZWZhdWx0PSJcdTY3MkFcdTkwMDlcdTYyRTlcdTY1ODdcdTRFRjYiPlx1NjcyQVx1OTAwOVx1NjJFOVx1NjU4N1x1NEVGNjwvc3Bhbj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJjZXJ0LWNlcnQtZmlsZSI+XHU4QkMxXHU0RTY2XHU2NTg3XHU0RUY2ICguY3J0Ly5wZW0pPC9sYWJlbD48ZGl2IGNsYXNzPSJmaWxlLXBpY2tlciI+PGlucHV0IGlkPSJjZXJ0LWNlcnQtZmlsZSIgdHlwZT0iZmlsZSIgY2xhc3M9ImZpbGUtcGlja2VyLWlucHV0IiBhY2NlcHQ9Ii5jcnQsLnBlbSwuY2VydCIgLz48bGFiZWwgZm9yPSJjZXJ0LWNlcnQtZmlsZSIgY2xhc3M9ImZpbGUtcGlja2VyLXRyaWdnZXIiPjxzdmcgY2xhc3M9ImZpbGUtcGlja2VyLWljb24iIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTE0IDJINmEyIDIgMCAwIDAtMiAydjE2YTIgMiAwIDAgMCAyIDJoMTJhMiAyIDAgMCAwIDItMlY4eiI+PC9wYXRoPjxwb2x5bGluZSBwb2ludHM9IjE0IDIgMTQgOCAyMCA4Ij48L3BvbHlsaW5lPjwvc3ZnPjxzcGFuIGNsYXNzPSJmaWxlLXBpY2tlci1sYWJlbCI+XHU5MDA5XHU2MkU5XHU4QkMxXHU0RTY2PC9zcGFuPjwvbGFiZWw+PHNwYW4gY2xhc3M9ImZpbGUtcGlja2VyLW5hbWUiIGRhdGEtZGVmYXVsdD0iXHU2NzJBXHU5MDA5XHU2MkU5XHU2NTg3XHU0RUY2Ij5cdTY3MkFcdTkwMDlcdTYyRTlcdTY1ODdcdTRFRjY8L3NwYW4+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtY2FyZC1hY3Rpb25zIj48YnV0dG9uIGlkPSJ1cGxvYWQtY2VydC1idXR0b24iIGNsYXNzPSJidG4gYnRuLXByaW1hcnkiPlx1NEUwQVx1NEYyMFx1OEJDMVx1NEU2NjwvYnV0dG9uPjwvZGl2PjxwIGlkPSJjZXJ0LW1lc3NhZ2UiIGNsYXNzPSJoaW50IGhpZGRlbiI+PC9wPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXBhbmVsIiBpZD0ic2V0dGluZ3MtdGFiLXByZXNldHMiIHJvbGU9InRhYnBhbmVsIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1wYW5lbC1oZWFkZXIiPjxoMyBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtdGl0bGUiPlx1NTQ3RFx1NEVFNFx1OTg4NFx1OEJCRTwvaDM+PHAgY2xhc3M9InNldHRpbmdzLXBhbmVsLWRlc2MiPlx1NUY1M1x1NTI0RFx1NTQ3RFx1NEVFNFx1OTg4NFx1OEJCRVx1NEVDRSBjb25maWcuanNvbiBcdThCRkJcdTUzRDZcdUZGMENcdTUzRUZcdTU3MjhcdThGRDlcdTkxQ0NcdTVGRUJcdTkwMUZcdTY3RTVcdTc3MEJcdTVERjJcdTY3MDlcdTkxNERcdTdGNkVcdTMwMDI8L3A+PC9kaXY+PGRpdiBpZD0icHJlc2V0cy1saXN0IiBjbGFzcz0icHJlc2V0cy1saXN0Ij48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1wYW5lbCIgaWQ9InNldHRpbmdzLXRhYi1kaXNwbGF5IiByb2xlPSJ0YWJwYW5lbCI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtaGVhZGVyIj48aDMgY2xhc3M9InNldHRpbmdzLXBhbmVsLXRpdGxlIj5cdTY2M0VcdTc5M0E8L2gzPjxwIGNsYXNzPSJzZXR0aW5ncy1wYW5lbC1kZXNjIj5cdTYzQTdcdTUyMzZcdTgwNEFcdTU5MjlcdTg5QzZcdTU2RkVcdTkxQ0NcdTRFMERcdTU0MENcdTUzNjFcdTcyNDdcdTdDN0JcdTU3OEJcdTc2ODRcdTlFRDhcdThCQTRcdTVDNTVcdTVGMDBcdTcyQjZcdTYwMDFcdTMwMDI8L3A+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi10aXRsZSI+XHU1MzYxXHU3MjQ3XHU5RUQ4XHU4QkE0XHU1QzU1XHU1RjAwXHU3MkI2XHU2MDAxPC9kaXY+PHAgY2xhc3M9ImhpbnQgc2V0dGluZ3MtaW5saW5lLWhpbnQiPlx1OEJCRVx1N0Y2RVx1N0VEM1x1Njc4NFx1NTMxNlx1ODA0QVx1NTkyOVx1ODlDNlx1NTZGRVx1NEUyRFx1NTQwNFx1N0M3Qlx1NTM2MVx1NzI0N1x1NzY4NFx1OUVEOFx1OEJBNFx1NUM1NVx1NUYwMC9cdTYyOThcdTUzRTBcdTcyQjZcdTYwMDFcdTMwMDJcdTYyNEJcdTUyQThcdTY0Q0RcdTRGNUNcdTc2ODRcdTVDNTVcdTVGMDBcdTcyQjZcdTYwMDFcdTRGMThcdTUxNDhcdTRFOEVcdTZCNjRcdTlFRDhcdThCQTRcdThCQkVcdTdGNkVcdTMwMDI8L3A+PGRpdiBjbGFzcz0ic3dpdGNoLWNhcmQtbGlzdCI+PGxhYmVsIGNsYXNzPSJzd2l0Y2gtY2FyZCIgZm9yPSJjZmctY2FyZC1lZGl0Ij48ZGl2IGNsYXNzPSJzd2l0Y2gtY2FyZC1oZWFkZXIiPjxzcGFuIGNsYXNzPSJzd2l0Y2gtY2FyZC10aXRsZSI+XHU3RjE2XHU4RjkxXHU1MzYxXHU3MjQ3IChFZGl0L1dyaXRlKTwvc3Bhbj48aW5wdXQgaWQ9ImNmZy1jYXJkLWVkaXQiIHR5cGU9ImNoZWNrYm94IiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSIgLz48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InN3aXRjaC1jYXJkLWRlc2MiPlx1NjU4N1x1NEVGNlx1N0YxNlx1OEY5MVx1NTQ4Q1x1NTE5OVx1NTE2NVx1NjRDRFx1NEY1Q1x1NzY4NCBkaWZmIFx1ODlDNlx1NTZGRTwvZGl2PjwvbGFiZWw+PGxhYmVsIGNsYXNzPSJzd2l0Y2gtY2FyZCIgZm9yPSJjZmctY2FyZC1pbmxpbmUiPjxkaXYgY2xhc3M9InN3aXRjaC1jYXJkLWhlYWRlciI+PHNwYW4gY2xhc3M9InN3aXRjaC1jYXJkLXRpdGxlIj5cdTUxODVcdTgwNTRcdTVERTVcdTUxNzcgKFJlYWQvR2xvYi9HcmVwKTwvc3Bhbj48aW5wdXQgaWQ9ImNmZy1jYXJkLWlubGluZSIgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIiAvPjxzcGFuIGNsYXNzPSJzd2l0Y2gtc2xpZGVyIj48L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ic3dpdGNoLWNhcmQtZGVzYyI+XHU2NTg3XHU0RUY2XHU4QkZCXHU1M0Q2XHUzMDAxXHU2NDFDXHU3RDIyXHU3QjQ5XHU1REU1XHU1MTc3XHU3Njg0XHU3RUQzXHU2NzlDPC9kaXY+PC9sYWJlbD48bGFiZWwgY2xhc3M9InN3aXRjaC1jYXJkIiBmb3I9ImNmZy1jYXJkLXRlcm1pbmFsIj48ZGl2IGNsYXNzPSJzd2l0Y2gtY2FyZC1oZWFkZXIiPjxzcGFuIGNsYXNzPSJzd2l0Y2gtY2FyZC10aXRsZSI+XHU3RUM4XHU3QUVGXHU4RjkzXHU1MUZBIChCYXNoKTwvc3Bhbj48aW5wdXQgaWQ9ImNmZy1jYXJkLXRlcm1pbmFsIiB0eXBlPSJjaGVja2JveCIgY2xhc3M9InN3aXRjaC10b2dnbGUiIC8+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzd2l0Y2gtY2FyZC1kZXNjIj5cdTU0N0RcdTRFRTRcdTg4NENcdTYyNjdcdTg4NENcdTdFRDNcdTY3OUM8L2Rpdj48L2xhYmVsPjxsYWJlbCBjbGFzcz0ic3dpdGNoLWNhcmQiIGZvcj0iY2ZnLWNhcmQtdGhpbmtpbmciPjxkaXYgY2xhc3M9InN3aXRjaC1jYXJkLWhlYWRlciI+PHNwYW4gY2xhc3M9InN3aXRjaC1jYXJkLXRpdGxlIj5cdTYwMURcdTgwMDNcdThGQzdcdTdBMEIgKFRoaW5raW5nKTwvc3Bhbj48aW5wdXQgaWQ9ImNmZy1jYXJkLXRoaW5raW5nIiB0eXBlPSJjaGVja2JveCIgY2xhc3M9InN3aXRjaC10b2dnbGUiIC8+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzd2l0Y2gtY2FyZC1kZXNjIj5DbGF1ZGUgXHU3Njg0XHU2MDFEXHU4MDAzXHU4RkM3XHU3QTBCXHU1NzU3PC9kaXY+PC9sYWJlbD48bGFiZWwgY2xhc3M9InN3aXRjaC1jYXJkIiBmb3I9ImNmZy1jYXJkLXRvb2xncm91cCI+PGRpdiBjbGFzcz0ic3dpdGNoLWNhcmQtaGVhZGVyIj48c3BhbiBjbGFzcz0ic3dpdGNoLWNhcmQtdGl0bGUiPlx1NURFNVx1NTE3N1x1N0VDNDwvc3Bhbj48aW5wdXQgaWQ9ImNmZy1jYXJkLXRvb2xncm91cCIgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIiAvPjxzcGFuIGNsYXNzPSJzd2l0Y2gtc2xpZGVyIj48L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ic3dpdGNoLWNhcmQtZGVzYyI+XHU4RkRFXHU3RUVEXHU1NDBDXHU3QzdCXHU1REU1XHU1MTc3XHU4QzAzXHU3NTI4XHU3Njg0XHU2Mjk4XHU1M0UwXHU3RUM0PC9kaXY+PC9sYWJlbD48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1hY3Rpb25zIHNldHRpbmdzLWFjdGlvbnMtc3RpY2t5Ij48YnV0dG9uIGlkPSJzYXZlLWRpc3BsYXktYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IGJ0bi1ibG9jayI+XHU0RkREXHU1QjU4XHU2NjNFXHU3OTNBXHU4QkJFXHU3RjZFPC9idXR0b24+PC9kaXY+PHAgaWQ9ImRpc3BsYXktbWVzc2FnZSIgY2xhc3M9ImhpbnQgaGlkZGVuIHNldHRpbmdzLXN0YXR1cy1tZXNzYWdlIj48L3A+PC9kaXY+PC9kaXY+PC9kaXY+PC9zZWN0aW9uPid9ZnVuY3Rpb24gZWcoZSl7dmFyIHQ9JGUoKTtyZXR1cm4gZS5zZWxlY3RlZElkPyIiOic8ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyLWNvbXBhY3QiIGlkPSJmb2xkZXItcGlja2VyLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0iZm9sZGVyLXBpY2tlci1jb21wYWN0LXJvdyI+PHNwYW4gY2xhc3M9ImZvbGRlci1waWNrZXItY29tcGFjdC1pY29uIj4nK0coImZvbGRlciIse3NpemU6MTMsc3Ryb2tlV2lkdGg6MS43fSkrJzwvc3Bhbj48aW5wdXQgdHlwZT0idGV4dCIgaWQ9ImZvbGRlci1waWNrZXItaW5wdXQiIGNsYXNzPSJmb2xkZXItcGlja2VyLWNvbXBhY3QtaW5wdXQiIHZhbHVlPSInK3AodCkrJyIgcGxhY2Vob2xkZXI9Ilx1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NSIgYXV0b2NvbXBsZXRlPSJvZmYiIC8+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGlkPSJmb2xkZXItcGlja2VyLXRvZ2dsZSIgY2xhc3M9ImZvbGRlci1waWNrZXItdG9nZ2xlIiB0aXRsZT0iXHU5MDA5XHU2MkU5XHU3NkVFXHU1RjU1IiBhcmlhLWxhYmVsPSJcdTkwMDlcdTYyRTlcdTc2RUVcdTVGNTUiPicrRygiY2hldnJvbkRvd24iLHtzaXplOjExLHN0cm9rZVdpZHRoOjJ9KSsnPC9idXR0b24+PC9kaXY+PGRpdiBpZD0iZm9sZGVyLXBpY2tlci1kcm9wZG93biIgY2xhc3M9ImZvbGRlci1waWNrZXItZHJvcGRvd24gaGlkZGVuIj48ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyLXF1aWNrLXJvdyI+PGJ1dHRvbiBjbGFzcz0iZm9sZGVyLXBpY2tlci1xdWljay1idG4iIGRhdGEtcGF0aD0iL3RtcCI+XHU0RTM0XHU2NUY2PC9idXR0b24+PGJ1dHRvbiBjbGFzcz0iZm9sZGVyLXBpY2tlci1xdWljay1idG4iIGRhdGEtcGF0aD0iLyI+XHU2ODM5XHU3NkVFXHU1RjU1PC9idXR0b24+PC9kaXY+PC9kaXY+PGRpdiBpZD0iZm9sZGVyLXBpY2tlci12YWxpZGF0aW9uIiBjbGFzcz0iZm9sZGVyLXBpY2tlci12YWxpZGF0aW9uIj48L2Rpdj48L2Rpdj4nfWZ1bmN0aW9uIHRnKGUpe3ZhciB0PSRlKCksbj10O2lmKGUuc2VsZWN0ZWRJZCl7dmFyIGk9ZS5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLmlkPT09ZS5zZWxlY3RlZElkfSk7bj1pJiZpLmN3ZD9pLmN3ZDp0fXJldHVybic8ZGl2IGNsYXNzPSJ3b3JraW5nLWRpci1pbmRpY2F0b3IiIGlkPSJ3b3JraW5nLWRpci1pbmRpY2F0b3IiIHRpdGxlPSInK3AobikrJyIgZGF0YS1wYXRoPSInK3AobikrJyI+PHNwYW4gY2xhc3M9IndvcmtpbmctZGlyLWluZGljYXRvci1pY29uIj4nK0coImZvbGRlciIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS43fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0id29ya2luZy1kaXItaW5kaWNhdG9yLXBhdGgiIGlkPSJ3b3JraW5nLWRpci1pbmRpY2F0b3ItcGF0aCI+JytwKG4pKyI8L3NwYW4+PC9kaXY+In1mdW5jdGlvbiBqdShlKXtpZighZSlyZXR1cm4iIjt2YXIgdD1EYXRlLm5vdygpLG49bmV3IERhdGUoZSkuZ2V0VGltZSgpLGk9TWF0aC5tYXgoMCx0LW4pLGE9TWF0aC5mbG9vcihpLzFlMyk7aWYoYTw2MClyZXR1cm4iXHU1MjFBXHU1MjFBIjt2YXIgdT1NYXRoLmZsb29yKGEvNjApO2lmKHU8NjApcmV0dXJuIHUrIlx1NTIwNlx1OTQ5Rlx1NTI0RCI7dmFyIHM9TWF0aC5mbG9vcih1LzYwKTtpZihzPDI0KXJldHVybiBzKyJcdTVDMEZcdTY1RjZcdTUyNEQiO3ZhciBvPU1hdGguZmxvb3Iocy8yNCk7cmV0dXJuIG88MzA/bysiXHU1OTI5XHU1MjREIjpNYXRoLmZsb29yKG8vMzApKyJcdTRFMkFcdTY3MDhcdTUyNEQifWZ1bmN0aW9uIFJ1KGUpe2lmKCFlKXJldHVybiIiO3ZhciB0PURhdGUubm93KCksbj1uZXcgRGF0ZShlKS5nZXRUaW1lKCksaT1NYXRoLm1heCgwLHQtbiksYT1NYXRoLmZsb29yKGkvMWUzKSx1PU1hdGguZmxvb3IoYS82MCkscz1NYXRoLmZsb29yKHUvNjApO3JldHVybiBzPjA/cysiaCIrKHUlNjA+MD91JTYwKyJtIjoiIik6dT4wP3UrIm0iOmErInMifWZ1bmN0aW9uIGNyKGUpe2lmKCFlKXJldHVybiIiO2lmKGUuYXJjaGl2ZWQpcmV0dXJuIlx1NURGMlx1NUY1Mlx1Njg2MyI7aWYoZS5wZXJtaXNzaW9uQmxvY2tlZClyZXR1cm4iXHU3QjQ5XHU1Rjg1XHU2Mzg4XHU2NzQzIjtpZihhZShlKSYmZS5zdHJ1Y3R1cmVkU3RhdGUmJmUuc3RydWN0dXJlZFN0YXRlLmluRmxpZ2h0KXJldHVybiJcdTYwMURcdTgwMDNcdTRFMkQiO3ZhciB0PXtpZGxlOiJcdTdBN0FcdTk1RjIiLHN0b3BwZWQ6Ilx1NURGMlx1NTA1Q1x1NkI2MiIscnVubmluZzoiXHU4RkQwXHU4ODRDXHU0RTJEIixleGl0ZWQ6Ilx1NURGMlx1OTAwMFx1NTFGQSIsZmFpbGVkOiJcdTVERjJcdTU5MzFcdThEMjUifTtyZXR1cm4gdFtlLnN0YXR1c118fGUuc3RhdHVzfWZ1bmN0aW9uIFd1KGUpe3JldHVybiBlP2UuYXJjaGl2ZWQ/ImFyY2hpdmVkIjplLnBlcm1pc3Npb25CbG9ja2VkPyJwZXJtaXNzaW9uLWJsb2NrZWQiOmFlKGUpJiZlLnN0cnVjdHVyZWRTdGF0ZSYmZS5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQ/InJ1bm5pbmciOmUuc3RhdHVzfHwiIjoiIn1mdW5jdGlvbiBDYyhlKXtyZXR1cm4gZT9lLnBlcm1pc3Npb25CbG9ja2VkPyJcdTdCNDlcdTVGODVcdTRGNjBcdTc2ODRcdTYzODhcdTY3NDMiOmUuc3RhdHVzIT09InJ1bm5pbmciPyIiOmUuaWQ9PT1yLnNlbGVjdGVkSWQmJnIuY3VycmVudFRhc2smJnIuY3VycmVudFRhc2sudGl0bGU/ci5jdXJyZW50VGFzay50aXRsZTplLmN1cnJlbnRUYXNrVGl0bGU/ZS5jdXJyZW50VGFza1RpdGxlOiIiOiIifWZ1bmN0aW9uIEJjKGUpe3ZhciB0PWUmJmUubWVzc2FnZXM7aWYoIXR8fHQubGVuZ3RoPT09MClyZXR1cm4iIjtmb3IodmFyIG49dC5sZW5ndGgtMTtuPj0wO24tLSl7dmFyIGk9dFtuXTtpZighKCFpfHxpLnJvbGUhPT0idXNlciIpKXt2YXIgYT1pLmNvbnRlbnQ7aWYodHlwZW9mIGE9PSJzdHJpbmciKXt2YXIgdT1hLnRyaW0oKTtpZih1KXJldHVybiB1O2NvbnRpbnVlfWlmKEFycmF5LmlzQXJyYXkoYSkpZm9yKHZhciBzPTA7czxhLmxlbmd0aDtzKyspe3ZhciBvPWFbc107aWYoISghb3x8by50eXBlIT09InRleHQifHwhby50ZXh0KSYmIW8uX19xdWV1ZWQpe3ZhciBsPVN0cmluZyhvLnRleHQpLnRyaW0oKTtpZihsKXJldHVybiBsfX19fXJldHVybiIifWZ1bmN0aW9uIERjKGUpe3ZhciB0PWUmJmUubWVzc2FnZXM7aWYoIXR8fHQubGVuZ3RoPT09MClyZXR1cm4iIjtmb3IodmFyIG49dC5sZW5ndGgtMTtuPj0wO24tLSl7dmFyIGk9dFtuXTtpZihpLnJvbGU9PT0iYXNzaXN0YW50Iil7Zm9yKHZhciBhPWkuY29udGVudHx8W10sdT0wO3U8YS5sZW5ndGg7dSsrKWlmKGFbdV0udHlwZT09PSJ0ZXh0IiYmYVt1XS50ZXh0JiZhW3VdLnRleHQudHJpbSgpKXt2YXIgcz1hW3VdLnRleHQudHJpbSgpO3M9cy5yZXBsYWNlKC9eIytccysvZ20sIiIpLnJlcGxhY2UoL1wqXCovZywiIikucmVwbGFjZSgvYC9nLCIiKTt2YXIgbz1zLnNwbGl0KGAKYClbMF0udHJpbSgpO3JldHVybiBvLnNsaWNlKDAsMTAwKX19fXJldHVybiIifWZ1bmN0aW9uIEppKGUsdCl7dmFyIG49ZS5pZD09PXIuc2VsZWN0ZWRJZD8iIGFjdGl2ZSI6IiIsaT1yLnNlc3Npb25zTWFuYWdlTW9kZSYmci5zZWxlY3RlZFNlc3Npb25JZHNbZS5pZF0/IiBzZWxlY3RlZCI6IiIsYT1jcihlKSx1PVd1KGUpLHM9IiIsbz0kdSgic2Vzc2lvbnMiLGUuaWQsIlx1OTAwOVx1NjJFOVx1NEYxQVx1OEJERCAiK2UuY29tbWFuZCk7aWYoKGUucHJvdmlkZXI9PT0iY2xhdWRlInx8ZS5wcm92aWRlcj09PSJjb2RleCIpJiZlLmNsYXVkZVNlc3Npb25JZCYmZS5zdGF0dXMhPT0icnVubmluZyImJiFyLnNlc3Npb25zTWFuYWdlTW9kZSYmIWFlKGUpKXt2YXIgbD1lLnByb3ZpZGVyPT09ImNvZGV4Ij8iXHU2MDYyXHU1OTBEIENvZGV4IFx1NEYxQVx1OEJERCI6Ilx1NjA2Mlx1NTkwRCBDbGF1ZGUgXHU0RjFBXHU4QkREIjtzPSc8YnV0dG9uIGNsYXNzPSJzZXNzaW9uLWFjdGlvbi1idG4iIGRhdGEtYWN0aW9uPSJyZXN1bWUiIGRhdGEtc2Vzc2lvbi1pZD0iJytlLmlkKyciIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iJytsKyciIHRpdGxlPSInK2wrJyI+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMSA0djZoNiIvPjxwYXRoIGQ9Ik0zLjUxIDE1YTkgOSAwIDEwNS42NC0xMS4zNkwzIDEwIi8+PC9zdmc+PC9idXR0b24+J312YXIgYz0hci5zZXNzaW9uc01hbmFnZU1vZGUmJmUud29ya3RyZWVFbmFibGVkJiZlLndvcmt0cmVlJiZlLndvcmt0cmVlLmJyYW5jaCYmZS53b3JrdHJlZS5wYXRoLGY9ZS53b3JrdHJlZU1lcmdlU3RhdHVzPT09Im1lcmdlZCImJmUud29ya3RyZWVNZXJnZUluZm8mJmUud29ya3RyZWVNZXJnZUluZm8uY2xlYW51cERvbmU9PT0hMSxkPWUuc3RhdHVzPT09InJ1bm5pbmcifHxlLndvcmt0cmVlTWVyZ2VTdGF0dXM9PT0ibWVyZ2luZyIsdj1mPyJcdTkxQ0RcdThCRDVcdTZFMDVcdTc0MDYgd29ya3RyZWUiOiJcdTU0MDhcdTVFNzZcdTUyMzBcdTRFM0JcdTUyMDZcdTY1MkYiLGc9YyYmZS53b3JrdHJlZU1lcmdlU3RhdHVzIT09Im1lcmdlZCI/JzxidXR0b24gY2xhc3M9InNlc3Npb24tYWN0aW9uLWJ0biBtZXJnZS1idG4iIGRhdGEtYWN0aW9uPSJ3b3JrdHJlZS1tZXJnZSIgZGF0YS1zZXNzaW9uLWlkPSInK2UuaWQrJyIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSInK3AodikrJyIgdGl0bGU9IicrcCh2KSsnIicrKGQ/IiBkaXNhYmxlZCI6IiIpKyc+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNNyA3aDEwIi8+PHBhdGggZD0iTTcgMTJoMTAiLz48cGF0aCBkPSJNNyAxN2gxMCIvPjxwYXRoIGQ9Ik01IDdsLTIgMiAyIDIiLz48cGF0aCBkPSJNMTkgMTVsMiAyLTIgMiIvPjwvc3ZnPjwvYnV0dG9uPic6Zj8nPGJ1dHRvbiBjbGFzcz0ic2Vzc2lvbi1hY3Rpb24tYnRuIG1lcmdlLWJ0biIgZGF0YS1hY3Rpb249Indvcmt0cmVlLWNsZWFudXAiIGRhdGEtc2Vzc2lvbi1pZD0iJytlLmlkKyciIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU5MUNEXHU4QkQ1XHU2RTA1XHU3NDA2IHdvcmt0cmVlIiB0aXRsZT0iXHU5MUNEXHU4QkQ1XHU2RTA1XHU3NDA2IHdvcmt0cmVlIj48c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0zIDZoMTgiLz48cGF0aCBkPSJNOCA2VjRhMiAyIDAgMDEyLTJoNGEyIDIgMCAwMTIgMnYyIi8+PHBhdGggZD0iTTE5IDZsLTEgMTRhMiAyIDAgMDEtMiAySDhhMiAyIDAgMDEtMi0yTDUgNiIvPjwvc3ZnPjwvYnV0dG9uPic6IiIsaD1yLnNlc3Npb25zTWFuYWdlTW9kZT8iIjonPGJ1dHRvbiBjbGFzcz0ic2Vzc2lvbi1hY3Rpb24tYnRuIGRlbGV0ZS1idG4iIGRhdGEtYWN0aW9uPSJkZWxldGUtc2Vzc2lvbiIgZGF0YS1zZXNzaW9uLWlkPSInK2UuaWQrJyIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTUyMjBcdTk2NjRcdTRGMUFcdThCREQiIHRpdGxlPSJcdTUyMjBcdTk2NjRcdTZCNjRcdTRGMUFcdThCREQiPjxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTMgNmgxOCIvPjxwYXRoIGQ9Ik04IDZWNGEyIDIgMCAwMTItMmg0YTIgMiAwIDAxMiAydjIiLz48cGF0aCBkPSJNMTkgNmwtMSAxNGEyIDIgMCAwMS0yIDJIOGEyIDIgMCAwMS0yLTJMNSA2Ii8+PC9zdmc+PC9idXR0b24+JyxtPSc8c3BhbiBjbGFzcz0ic2Vzc2lvbi1hY3Rpb25zIj4nK3MrZytoKyI8L3NwYW4+IixFPWUudGl0bGV8fGUuc3VtbWFyeT8nPGRpdiBjbGFzcz0ic2Vzc2lvbi10aXRsZSI+JytwKGUudGl0bGV8fGUuc3VtbWFyeSkrIjwvZGl2PiI6JzxkaXYgY2xhc3M9InNlc3Npb24tY29tbWFuZCI+JytwKGUucmVzdW1lZEZyb21TZXNzaW9uSWQ/ZS5jb21tYW5kLnJlcGxhY2UoL1xzKy0tcmVzdW1lXHMrXFMrLywiIikucmVwbGFjZSgvXHMrcmVzdW1lXHMrWzAtOWEtZi1dKy8sIiIpOmUuY29tbWFuZCkrIjwvZGl2PiIsQz1DYyhlKSxiPSIiO2Uuc3RhdHVzPT09InJ1bm5pbmciJiZDJiYoYj0nPGRpdiBjbGFzcz0ic2Vzc2lvbi1hY3Rpdml0eSI+JytwKEMpKyI8L2Rpdj4iKTt2YXIgQj1lLmRlc2NyaXB0aW9uPyc8ZGl2IGNsYXNzPSJzZXNzaW9uLWRlc2NyaXB0aW9uIj4nK3AoZS5kZXNjcmlwdGlvbikrIjwvZGl2PiI6IiIsRj0iIjtlLnN0YXR1cz09PSJydW5uaW5nIj9GPSc8c3BhbiBjbGFzcz0ic2Vzc2lvbi10aW1lIiB0aXRsZT0iXHU1REYyXHU4RkQwXHU4ODRDICcrcChSdShlLnN0YXJ0ZWRBdCkpKyciPicrcChSdShlLnN0YXJ0ZWRBdCkpKyI8L3NwYW4+IjplLmVuZGVkQXQ/Rj0nPHNwYW4gY2xhc3M9InNlc3Npb24tdGltZSIgdGl0bGU9IicrcChuZXcgRGF0ZShlLmVuZGVkQXQpLnRvTG9jYWxlU3RyaW5nKCkpKyciPicrcChqdShlLmVuZGVkQXQpKSsiPC9zcGFuPiI6ZS5zdGFydGVkQXQmJihGPSc8c3BhbiBjbGFzcz0ic2Vzc2lvbi10aW1lIiB0aXRsZT0iJytwKG5ldyBEYXRlKGUuc3RhcnRlZEF0KS50b0xvY2FsZVN0cmluZygpKSsnIj4nK3AoanUoZS5zdGFydGVkQXQpKSsiPC9zcGFuPiIpO3ZhciB4PXp1KGUpLFM9ZS5hdXRvUmVjb3ZlcmVkPyc8c3BhbiBjbGFzcz0ic2Vzc2lvbi1yZWNvdmVyeS1oaW50Ij5cdTgxRUFcdTUyQThcdTYwNjJcdTU5MEQ8L3NwYW4+JzoiIixqPXIuc2Vzc2lvbnNNYW5hZ2VNb2RlPyIiOic8ZGl2IGNsYXNzPSJzZXNzaW9uLXN3aXBlLWJnIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGJ1dHRvbiBjbGFzcz0ic2Vzc2lvbi1zd2lwZS1kZWxldGUiIGRhdGEtYWN0aW9uPSJzd2lwZS1kZWxldGUtc2Vzc2lvbiIgZGF0YS1zZXNzaW9uLWlkPSInK2UuaWQrJyIgdHlwZT0iYnV0dG9uIiB0YWJpbmRleD0iLTEiIGFyaWEtbGFiZWw9Ilx1NTIyMFx1OTY2NFx1NEYxQVx1OEJERCI+PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMyA2aDE4Ii8+PHBhdGggZD0iTTggNlY0YTIgMiAwIDAxMi0yaDRhMiAyIDAgMDEyIDJ2MiIvPjxwYXRoIGQ9Ik0xOSA2bC0xIDE0YTIgMiAwIDAxLTIgMkg4YTIgMiAwIDAxLTItMkw1IDYiLz48L3N2Zz48c3Bhbj5cdTUyMjBcdTk2NjQ8L3NwYW4+PC9idXR0b24+PC9kaXY+JztyZXR1cm4nPGRpdiBjbGFzcz0ic2Vzc2lvbi1pdGVtJytuK2krJyIgZGF0YS1zZXNzaW9uLWlkPSInK2UuaWQrJyIgcm9sZT0iYnV0dG9uIiB0YWJpbmRleD0iMCI+JytqKyc8ZGl2IGNsYXNzPSJzZXNzaW9uLWl0ZW0tY29udGVudCI+PGRpdiBjbGFzcz0ic2Vzc2lvbi1pdGVtLXJvdyI+JytvKyc8ZGl2IGNsYXNzPSJzZXNzaW9uLW1haW4iPjxkaXYgY2xhc3M9InNlc3Npb24tdGl0bGUtcm93Ij4nK0UrRisiPC9kaXY+IitCK2IrJzxkaXYgY2xhc3M9InNlc3Npb24tbWV0YSI+PHNwYW4gY2xhc3M9InNlc3Npb24tc3RhdHVzICcrdSsnIj4nK3AoYSkrIjwvc3Bhbj4iK3grUysiPC9kaXY+PC9kaXY+IittKyI8L2Rpdj48L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIGtjKGUpe2lmKCFlfHwhZS53b3JrdHJlZU1lcmdlU3RhdHVzKXJldHVybiIiO3ZhciB0PXtyZWFkeToiXHU1M0VGXHU1NDA4XHU1RTc2IixjaGVja2luZzoiXHU2OEMwXHU2N0U1XHU0RTJEIixtZXJnaW5nOiJcdTU0MDhcdTVFNzZcdTRFMkQiLG1lcmdlZDplLndvcmt0cmVlTWVyZ2VJbmZvJiZlLndvcmt0cmVlTWVyZ2VJbmZvLmNsZWFudXBEb25lPT09ITE/Ilx1NURGMlx1NTQwOFx1NUU3Nlx1NUY4NVx1NkUwNVx1NzQwNiI6Ilx1NURGMlx1NTQwOFx1NUU3NiIsZmFpbGVkOiJcdTU0MDhcdTVFNzZcdTU5MzFcdThEMjUifTtyZXR1cm4gdFtlLndvcmt0cmVlTWVyZ2VTdGF0dXNdfHwiIn1mdW5jdGlvbiBBYyhlKXt2YXIgdD1rYyhlKTtyZXR1cm4gdD8nPHNwYW4gY2xhc3M9InNlc3Npb24ta2luZC1iYWRnZSB3b3JrdHJlZS1tZXJnZSAnK3AoZS53b3JrdHJlZU1lcmdlU3RhdHVzfHwiIikrJyI+JytwKHQpKyI8L3NwYW4+IjoiIn1mdW5jdGlvbiB6dShlKXtpZighZXx8IWUud29ya3RyZWVFbmFibGVkKXJldHVybiIiO3ZhciB0PVtdO2Uud29ya3RyZWUmJmUud29ya3RyZWUuYnJhbmNoJiZ0LnB1c2goIldvcmt0cmVlOiAiK2Uud29ya3RyZWUuYnJhbmNoKSxlLndvcmt0cmVlJiZlLndvcmt0cmVlLnBhdGgmJnQucHVzaCgiUGF0aDogIitlLndvcmt0cmVlLnBhdGgpO3ZhciBuPXQubGVuZ3RoPjA/JyB0aXRsZT0iJytwKHQuam9pbihgCmApKSsnIic6IiI7cmV0dXJuJzxzcGFuIGNsYXNzPSJzZXNzaW9uLWtpbmQtYmFkZ2Ugd29ya3RyZWUiJytuKyI+V29ya3RyZWU8L3NwYW4+IitBYyhlKX1mdW5jdGlvbiBuZyhlKXtpZighZSlyZXR1cm4iIjt2YXIgdD1hZShlKT8nPHNwYW4gY2xhc3M9InNlc3Npb24ta2luZC1iYWRnZSBzdHJ1Y3R1cmVkIj5TdHJ1Y3R1cmVkPC9zcGFuPic6JzxzcGFuIGNsYXNzPSJzZXNzaW9uLWtpbmQtYmFkZ2UgcHR5Ij5QVFk8L3NwYW4+JztyZXR1cm4gdCt6dShlKX1mdW5jdGlvbiB4YyhlKXt2YXIgdD1be2lkOiJtYW5hZ2VkIixsYWJlbDoiXHU2MjU4XHU3QkExIixkZXNjOiJcdTUxNjhcdTgxRUFcdTUyQThcdTVCOENcdTYyMTBcdTRFRkJcdTUyQTEifSx7aWQ6ImZ1bGwtYWNjZXNzIixsYWJlbDoiXHU1MTY4XHU2NzQzXHU5NjUwIixkZXNjOiJcdTgxRUFcdTUyQThcdTc4NkVcdThCQTRcdTY3NDNcdTk2NTAifSx7aWQ6ImF1dG8tZWRpdCIsbGFiZWw6Ilx1ODFFQVx1NTJBOFx1N0YxNlx1OEY5MSIsZGVzYzoiXHU4MUVBXHU1MkE4XHU3ODZFXHU4QkE0XHU0RkVFXHU2NTM5In0se2lkOiJkZWZhdWx0IixsYWJlbDoiXHU2ODA3XHU1MUM2IixkZXNjOiJcdTkwMTBcdTZCNjVcdTc4NkVcdThCQTRcdTY0Q0RcdTRGNUMifSx7aWQ6Im5hdGl2ZSIsbGFiZWw6Ilx1NTM5Rlx1NzUxRiIsZGVzYzoiXHU1MzlGXHU3NTFGXHU3RUQzXHU2Nzg0XHU1MzE2XHU4RjkzXHU1MUZBIn1dO3JldHVybiB0Lm1hcChmdW5jdGlvbihuKXt2YXIgaT1uLmlkPT09ZT8iIGFjdGl2ZSI6IiI7cmV0dXJuJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ibW9kZS1jYXJkJytpKyciIGRhdGEtbW9kZT0iJytuLmlkKyciPjxzcGFuIGNsYXNzPSJtb2RlLWNhcmQtbGFiZWwiPicrbi5sYWJlbCsnPC9zcGFuPjxzcGFuIGNsYXNzPSJtb2RlLWNhcmQtZGVzYyI+JytuLmRlc2MrIjwvc3Bhbj48L2J1dHRvbj4ifSkuam9pbigiIil9ZnVuY3Rpb24gU2MoZSl7dmFyIHQ9W3tpZDoiY2xhdWRlIixsYWJlbDoiQ2xhdWRlIixkZXNjOiJcdTVCOENcdTY1NzQgQ2xhdWRlIFx1NEYxQVx1OEJERFx1ODBGRFx1NTI5QiJ9LHtpZDoiY29kZXgiLGxhYmVsOiJDb2RleCIsZGVzYzoiXHU3RUQzXHU2Nzg0XHU1MzE2IEpTT05MIFx1NjIxNiBQVFkgXHU0RjFBXHU4QkREIn1dO3JldHVybiB0Lm1hcChmdW5jdGlvbihuKXt2YXIgaT1uLmlkPT09ZT8iIGFjdGl2ZSI6IiI7cmV0dXJuJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ibW9kZS1jYXJkIHByb3ZpZGVyLWNhcmQnK2krJyIgZGF0YS1wcm92aWRlcj0iJytuLmlkKyciPjxzcGFuIGNsYXNzPSJtb2RlLWNhcmQtbGFiZWwiPicrbi5sYWJlbCsnPC9zcGFuPjxzcGFuIGNsYXNzPSJtb2RlLWNhcmQtZGVzYyI+JytuLmRlc2MrIjwvc3Bhbj48L2J1dHRvbj4ifSkuam9pbigiIil9ZnVuY3Rpb24gSWMoZSl7dmFyIHQ9W3tpZDoic3RydWN0dXJlZCIsbGFiZWw6Ilx1N0VEM1x1Njc4NFx1NTMxNiIsZGVzYzoiXHU2NjdBXHU4MEZEXHU1QkY5XHU4QkREXHU2QTIxXHU1RjBGIn0se2lkOiJwdHkiLGxhYmVsOiJQVFkiLGRlc2M6Ilx1NEVBNFx1NEU5Mlx1NUYwRlx1N0VDOFx1N0FFRlx1NEYxQVx1OEJERCJ9XTtyZXR1cm4gdC5tYXAoZnVuY3Rpb24obil7dmFyIGk9bi5pZD09PWU/IiBhY3RpdmUiOiIiLGE9IiI7cmV0dXJuJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ibW9kZS1jYXJkIHNlc3Npb24ta2luZC1jYXJkJytpK2ErJyIgZGF0YS1zZXNzaW9uLWtpbmQ9Iicrbi5pZCsnIj48c3BhbiBjbGFzcz0ibW9kZS1jYXJkLWxhYmVsIj4nK24ubGFiZWwrJzwvc3Bhbj48c3BhbiBjbGFzcz0ibW9kZS1jYXJkLWRlc2MiPicrbi5kZXNjKyI8L3NwYW4+PC9idXR0b24+In0pLmpvaW4oIiIpfWZ1bmN0aW9uIHJnKGUpe3JldHVybic8bGFiZWwgY2xhc3M9InNlc3Npb24taW5saW5lLXRvZ2dsZSIgZm9yPSJzZXNzaW9uLXdvcmt0cmVlLXRvZ2dsZSIgdGl0bGU9Ilx1NEUzQVx1OEJFNVx1NEYxQVx1OEJERFx1NTIxQlx1NUVGQVx1NzJFQ1x1N0FDQlx1NzY4NCBnaXQgd29ya3RyZWUgXHU1MjA2XHU2NTJGIj48c3ZnIGNsYXNzPSJzZXNzaW9uLWlubGluZS10b2dnbGUtaWNvbiIgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTMiIGhlaWdodD0iMTMiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxjaXJjbGUgY3g9IjYiIGN5PSI2IiByPSIyLjIiLz48Y2lyY2xlIGN4PSIxOCIgY3k9IjYiIHI9IjIuMiIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTgiIHI9IjIuMiIvPjxwYXRoIGQ9Ik02IDguMnYzLjRhMiAyIDAgMCAwIDIgMmg4YTIgMiAwIDAgMCAyLTJWOC4yIi8+PHBhdGggZD0iTTEyIDEzLjZ2Mi4yIi8+PC9zdmc+PHNwYW4gY2xhc3M9InNlc3Npb24taW5saW5lLXRvZ2dsZS1sYWJlbCI+V29ya3RyZWUgXHU2QTIxXHU1RjBGPC9zcGFuPjxpbnB1dCBpZD0ic2Vzc2lvbi13b3JrdHJlZS10b2dnbGUiIHR5cGU9ImNoZWNrYm94IiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSInKyhlPyIgY2hlY2tlZCI6IiIpKycgLz48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48L2xhYmVsPid9ZnVuY3Rpb24gVXUoZSl7dmFyIHQ9ci5zZXNzaW9uVG9vbHx8ImNsYXVkZSI7cmV0dXJuIGU9PT0ic3RydWN0dXJlZCI/dD09PSJjb2RleCI/IkNvZGV4IEpTT05MIFx1N0VEM1x1Njc4NFx1NTMxNlx1ODA0QVx1NTkyOVx1NzU0Q1x1OTc2Mlx1RkYwQ1x1NjUyRlx1NjMwMVx1NTkxQVx1OEY2RVx1NUJGOVx1OEJERFx1NTQ4Q1x1NURFNVx1NTE3N1x1OEMwM1x1NzUyOFx1NUM1NVx1NzkzQVx1MzAwMiI6Ilx1N0VEM1x1Njc4NFx1NTMxNlx1ODA0QVx1NTkyOVx1NzU0Q1x1OTc2Mlx1RkYwQ1x1NjUyRlx1NjMwMVx1NTkxQVx1OEY2RVx1NUJGOVx1OEJERFx1MzAwMVx1NkQ0MVx1NUYwRlx1OEY5M1x1NTFGQVx1NTQ4Q1x1NURFNVx1NTE3N1x1OEMwM1x1NzUyOFx1NUM1NVx1NzkzQVx1MzAwMiI6dD09PSJjb2RleCI/IkNvZGV4IFBUWSBcdTdFQzhcdTdBRUZcdTRGMUFcdThCRERcdUZGMUJ0ZXJtaW5hbCBcdTY2MkZcdTUzOUZcdTU5Q0JcdThGOTNcdTUxRkFcdUZGMENjaGF0IFx1NjYyRlx1ODlFM1x1Njc5MFx1NTQwRVx1NzY4NFx1OTYwNVx1OEJGQlx1ODlDNlx1NTZGRVx1MzAwMiI6Ilx1NTM5Rlx1NTlDQiBQVFkgXHU3RUM4XHU3QUVGXHU0RjFBXHU4QkREXHVGRjBDXHU2NTJGXHU2MzAxXHU2MzAxXHU3RUVEXHU0RUE0XHU0RTkyXHUzMDAxXHU3RUM4XHU3QUVGXHU4OUM2XHU1NkZFXHU1NDhDXHU2NzQzXHU5NjUwXHU2RDQxXHUzMDAyIn1mdW5jdGlvbiBUYygpe3ZhciBlPW10KCksdD14dChlLHIubW9kZVZhbHVlfHxyLmNoYXRNb2RlfHwiZGVmYXVsdCIpLG49ci5zZXNzaW9uQ3JlYXRlS2luZHx8InN0cnVjdHVyZWQiLGk9ci5zZXNzaW9uQ3JlYXRlV29ya3RyZWU9PT0hMDtyZXR1cm4nPHNlY3Rpb24gaWQ9InNlc3Npb24tbW9kYWwiIGNsYXNzPSJtb2RhbC1iYWNrZHJvcCBoaWRkZW4iPjxkaXYgY2xhc3M9Im1vZGFsIHNlc3Npb24tbW9kYWwiPjxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+PGRpdj48aDIgY2xhc3M9Im1vZGFsLXRpdGxlIj5cdTY1QjBcdTVCRjlcdThCREQ8L2gyPjxwIGNsYXNzPSJtb2RhbC1zdWJ0aXRsZSI+XHU1NDJGXHU1MkE4IENsYXVkZSBcdTYyMTYgQ29kZXggXHU0RjFBXHU4QkREXHVGRjBDXHU5MDA5XHU2MkU5IHByb3ZpZGVyXHUzMDAxXHU0RjFBXHU4QkREXHU3QzdCXHU1NzhCXHUzMDAxXHU2QTIxXHU1RjBGXHU1NDhDXHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1XHUzMDAyPC9wPjwvZGl2PjxidXR0b24gaWQ9ImNsb3NlLW1vZGFsLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLWljb24gbW9kYWwtY2xvc2UtYnRuIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NTE3M1x1OTVFRCI+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48bGluZSB4MT0iNiIgeTE9IjYiIHgyPSIxOCIgeTI9IjE4Ii8+PGxpbmUgeDE9IjE4IiB5MT0iNiIgeDI9IjYiIHkyPSIxOCIvPjwvc3ZnPjwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9Im1vZGFsLWJvZHkiPjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIj5Qcm92aWRlcjwvbGFiZWw+PGRpdiBpZD0icHJvdmlkZXItY2FyZHMiIGNsYXNzPSJtb2RlLWNhcmRzIj4nK1NjKGUpKyc8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCI+XHU0RjFBXHU4QkREXHU3QzdCXHU1NzhCPC9sYWJlbD48ZGl2IGlkPSJzZXNzaW9uLWtpbmQtY2FyZHMiIGNsYXNzPSJtb2RlLWNhcmRzIj4nK0ljKG4pKyc8L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZC1oaW50IHNlc3Npb24ta2luZC1oaW50LXJvdyI+PHNwYW4gaWQ9InNlc3Npb24ta2luZC1kZXNjcmlwdGlvbiI+JytwKFV1KG4pKSsnPC9zcGFuPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIj5cdTZBMjFcdTVGMEY8L2xhYmVsPjxkaXYgaWQ9Im1vZGUtY2FyZHMiIGNsYXNzPSJtb2RlLWNhcmRzIj4nK3hjKHQpKyc8L2Rpdj48cCBpZD0ibW9kZS1kZXNjcmlwdGlvbiIgY2xhc3M9ImZpZWxkLWhpbnQiPicrcChQbyhlLHQpKSsnPC9wPjwvZGl2PjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9ImN3ZCI+XHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1PC9sYWJlbD48ZGl2IGNsYXNzPSJzdWdnZXN0aW9ucy13cmFwIj48aW5wdXQgaWQ9ImN3ZCIgdHlwZT0idGV4dCIgY2xhc3M9ImZpZWxkLWlucHV0IiBhdXRvY29tcGxldGU9Im9mZiIgcGxhY2Vob2xkZXI9IicrcCgkZSgpKSsnIiAvPjxkaXYgaWQ9ImN3ZC1zdWdnZXN0aW9ucyIgY2xhc3M9InN1Z2dlc3Rpb25zIGhpZGRlbiI+PC9kaXY+PC9kaXY+PHAgY2xhc3M9ImZpZWxkLWhpbnQiPlx1NzU1OVx1N0E3QVx1NTIxOVx1NEY3Rlx1NzUyOFx1NEUwQVx1NjVCOVx1NzZFRVx1NUY1NVx1RkYwQ1x1NjUyRlx1NjMwMVx1OERFRlx1NUY4NFx1ODFFQVx1NTJBOFx1ODg2NVx1NTE2OFx1MzAwMjwvcD48ZGl2IGlkPSJyZWNlbnQtcGF0aHMtYnViYmxlcyIgY2xhc3M9InJlY2VudC1wYXRocy1idWJibGVzIj48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1mb290ZXIiPjxidXR0b24gaWQ9InJ1bi1idXR0b24iIGNsYXNzPSJidG4gYnRuLXByaW1hcnkgYnRuLWJsb2NrIj5cdTU0MkZcdTUyQThcdTRGMUFcdThCREQ8L2J1dHRvbj48cCBpZD0ibW9kYWwtZXJyb3IiIGNsYXNzPSJlcnJvci1tZXNzYWdlIGhpZGRlbiI+PC9wPjwvZGl2PjwvZGl2Pjwvc2VjdGlvbj4nfWZ1bmN0aW9uIFZ1KCl7dmFyIGU9RGF0ZS5ub3coKS04NjRlNSx0PVtdO3JldHVybiByLnNlc3Npb25zLmZvckVhY2goZnVuY3Rpb24obil7aWYoIW4uYXJjaGl2ZWQpe3ZhciBpPW4uc3RhcnRlZEF0P25ldyBEYXRlKG4uc3RhcnRlZEF0KS5nZXRUaW1lKCk6MDt0LnB1c2goe2tpbmQ6InNlc3Npb24iLHJlZjpuLHQ6aXNGaW5pdGUoaSk/aTowfSl9fSksci5jbGF1ZGVIaXN0b3J5TG9hZGVkJiZqbigpLmZvckVhY2goZnVuY3Rpb24obil7aWYobi50aW1lc3RhbXApe3ZhciBpPW5ldyBEYXRlKG4udGltZXN0YW1wKS5nZXRUaW1lKCk7IWlzRmluaXRlKGkpfHxpPD1lfHx0LnB1c2goe2tpbmQ6Imhpc3RvcnkiLHJlZjpuLHQ6aX0pfX0pLHQuc29ydChmdW5jdGlvbihuLGkpe3JldHVybiBpLnQtbi50fSksdH1mdW5jdGlvbiBMYygpe3ZhciBlPXIuc2Vzc2lvbnMuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBhLmFyY2hpdmVkfSksdD1bXTt0LnB1c2goS3UoKSk7dmFyIG49VnUoKSxpPV9jKCk7cmV0dXJuIG4ubGVuZ3RoPjAmJnQucHVzaChxYyhuKSksZS5sZW5ndGg+MCYmdC5wdXNoKFBjKGUpKSxuLmxlbmd0aD09PTAmJmUubGVuZ3RoPT09MCYmIWk/S3UoKSsnPGRpdiBjbGFzcz0iZW1wdHktc3RhdGUiPjxzdHJvbmc+XHU4RkQ4XHU2Q0ExXHU2NzA5XHU0RjFBXHU4QkREXHU4QkIwXHU1RjU1PC9zdHJvbmc+PGJyPlx1NzBCOVx1NTFGQlx1NEUwQVx1NjVCOVx1MzAwQ1x1NjVCMFx1NUJGOVx1OEJERFx1MzAwRFx1NUYwMFx1NTlDQlx1NEY2MFx1NzY4NFx1N0IyQ1x1NEUwMFx1NkIyMVx1NUJGOVx1OEJERFx1MzAwMjwvZGl2Pic6KGkmJnQucHVzaChpKSx0LmpvaW4oIiIpKX1mdW5jdGlvbiBNYygpe3JldHVybiEhci5zaWRlYmFyUGlubmVkJiYhIXIuc2lkZWJhckNvbGxhcHNlZH1mdW5jdGlvbiBPYygpe3ZhciBlPVZ1KCksdD1lLm1hcChmdW5jdGlvbihpLGEpe3ZhciB1PWErMTtpZihpLmtpbmQ9PT0ic2Vzc2lvbiIpe3ZhciBzPWkucmVmLG89cy5pZD09PXIuc2VsZWN0ZWRJZD8iIGFjdGl2ZSI6IiIsbD1zLnRpdGxlfHxzLmRlc2NyaXB0aW9ufHxzLnN1bW1hcnl8fHMuY29tbWFuZHx8Ilx1NEYxQVx1OEJERCAiK3U7cmV0dXJuJzxidXR0b24gY2xhc3M9InNpZGViYXItY29sbGFwc2VkLXRpbGUnK28rJyIgdHlwZT0iYnV0dG9uIiBkYXRhLWNvbGxhcHNlZC1zZXNzaW9uLWlkPSInK3Aocy5pZCkrJyIgdGl0bGU9IicrcChsKSsnIj4nK3UrIjwvYnV0dG9uPiJ9dmFyIGM9aS5yZWYsZj1jLmZpcnN0VXNlck1lc3NhZ2V8fCIoXHU3QTdBXHU0RjFBXHU4QkREKSIsZD1mKyIgXHhCNyAiK1h1KGMudGltZXN0YW1wKTtyZXR1cm4nPGJ1dHRvbiBjbGFzcz0ic2lkZWJhci1jb2xsYXBzZWQtdGlsZSBoaXN0b3J5IiB0eXBlPSJidXR0b24iIGRhdGEtY29sbGFwc2VkLWhpc3RvcnktaWQ9IicrcChjLmNsYXVkZVNlc3Npb25JZCkrJyIgZGF0YS1jd2Q9IicrcChjLmN3ZHx8IiIpKyciIHRpdGxlPSInK3AoZCkrJyI+Jyt1KyI8L2J1dHRvbj4ifSkuam9pbigiIiksbj0nPGJ1dHRvbiBjbGFzcz0ic2lkZWJhci1jb2xsYXBzZWQtdGlsZSBhZGQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1jb2xsYXBzZWQtbmV3LXNlc3Npb249IjEiIHRpdGxlPSJcdTY1QjBcdTVFRkFcdTRGMUFcdThCREQiIGFyaWEtbGFiZWw9Ilx1NjVCMFx1NUVGQVx1NEYxQVx1OEJERCI+PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi42IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48bGluZSB4MT0iMTIiIHkxPSI1IiB4Mj0iMTIiIHkyPSIxOSIvPjxsaW5lIHgxPSI1IiB5MT0iMTIiIHgyPSIxOSIgeTI9IjEyIi8+PC9zdmc+PC9idXR0b24+JztyZXR1cm4nPGRpdiBjbGFzcz0ic2lkZWJhci1jb2xsYXBzZWQtdGlsZXMiPicrdCtuKyI8L2Rpdj4ifWZ1bmN0aW9uIEdpKCl7cmV0dXJuIE1jKCk/T2MoKTpMYygpfWZ1bmN0aW9uIEt1KCl7aWYoIXIuc2Vzc2lvbnNNYW5hZ2VNb2RlKXJldHVybic8ZGl2IGNsYXNzPSJzZXNzaW9uLW1hbmFnZS1iYXIiPjxzcGFuIGNsYXNzPSJzaWRlYmFyLWludHJvIj5cdTY3MDBcdThGRDFcdTc2ODRcdTRGMUFcdThCRERcdThCQjBcdTVGNTU8L3NwYW4+PGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4teHMgc2Vzc2lvbi1tYW5hZ2UtdG9nZ2xlIiBkYXRhLWFjdGlvbj0idG9nZ2xlLW1hbmFnZS1tb2RlIiB0eXBlPSJidXR0b24iPjxzdmcgd2lkdGg9IjExIiBoZWlnaHQ9IjExIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTkgMTFsMyAzTDIyIDQiLz48cGF0aCBkPSJNMjEgMTJ2N2EyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoMTEiLz48L3N2Zz48c3Bhbj5cdTdCQTFcdTc0MDY8L3NwYW4+PC9idXR0b24+PC9kaXY+Jzt2YXIgZT1KdSgpLmxlbmd0aCx0PUd1KCkubGVuZ3RoLG49ZSt0LGk9bj4wLGE9UmMoKSx1PWE+MCYmbj49YSxzPXU/Ilx1NTNENlx1NkQ4OFx1NTE2OFx1OTAwOSI6Ilx1NTE2OFx1OTAwOSIsbz11PyJjbGVhci1zZWxlY3Rpb24iOiJzZWxlY3QtYWxsLXZpc2libGUiLGw9YT09PTA/IiBkaXNhYmxlZCI6IiIsYz0nPGJ1dHRvbiBjbGFzcz0ic2Vzc2lvbi1tYW5hZ2UtZXhpdCIgZGF0YS1hY3Rpb249InRvZ2dsZS1tYW5hZ2UtbW9kZSIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTkwMDBcdTUxRkFcdTdCQTFcdTc0MDZcdTZBMjFcdTVGMEYiIHRpdGxlPSJcdTkwMDBcdTUxRkFcdTdCQTFcdTc0MDZcdTZBMjFcdTVGMEYiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjYiIHkxPSI2IiB4Mj0iMTgiIHkyPSIxOCIvPjxsaW5lIHgxPSIxOCIgeTE9IjYiIHgyPSI2IiB5Mj0iMTgiLz48L3N2Zz48L2J1dHRvbj4nLGY9aT8nPHNwYW4gY2xhc3M9InNlc3Npb24tbWFuYWdlLWNvdW50Ij4nK24rJzwvc3Bhbj48c3BhbiBjbGFzcz0ic2Vzc2lvbi1tYW5hZ2Utc3VtbWFyeS1sYWJlbCI+XHU1REYyXHU5MDA5XHU2MkU5PC9zcGFuPic6JzxzcGFuIGNsYXNzPSJzZXNzaW9uLW1hbmFnZS1zdW1tYXJ5LWxhYmVsIG11dGVkIj5cdTkwMDlcdTYyRTlcdTg5ODFcdTdCQTFcdTc0MDZcdTc2ODRcdTk4NzlcdTc2RUU8L3NwYW4+JztyZXR1cm4nPGRpdiBjbGFzcz0ic2Vzc2lvbi1tYW5hZ2UtYmFyIGFjdGl2ZSI+JytjKyc8ZGl2IGNsYXNzPSJzZXNzaW9uLW1hbmFnZS1zdW1tYXJ5Ij4nK2YrJzwvZGl2PjxkaXYgY2xhc3M9InNlc3Npb24tbWFuYWdlLWFjdGlvbnMiPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXhzIiBkYXRhLWFjdGlvbj0iJytvKyciIHR5cGU9ImJ1dHRvbiInK2wrIj4iK3MrJzwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFuZ2VyIGJ0bi14cyIgZGF0YS1hY3Rpb249ImRlbGV0ZS1zZWxlY3RlZCIgdHlwZT0iYnV0dG9uIicrKGk/IiI6IiBkaXNhYmxlZCIpKyI+XHU1MjIwXHU5NjY0IisoaT8iICIrbjoiIikrIjwvYnV0dG9uPjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gaWcoZSx0LG4pe3JldHVybic8c2VjdGlvbiBjbGFzcz0ic2Vzc2lvbi1ncm91cCI+PGRpdiBjbGFzcz0ic2Vzc2lvbi1ncm91cC10aXRsZSI+JytwKGUpKyI8L2Rpdj4iK3QubWFwKGZ1bmN0aW9uKGkpe3JldHVybiBKaShpLG4pfSkuam9pbigiIikrIjwvc2VjdGlvbj4ifWZ1bmN0aW9uIFBjKGUpe3ZhciB0PSEhci5hcmNoaXZlZEV4cGFuZGVkLG49dD8iJiM5NjYyOyI6IiYjOTY1NjsiLGk9JzxkaXYgY2xhc3M9InNlc3Npb24tZ3JvdXAtdGl0bGUgY2xhdWRlLWhpc3RvcnktdG9nZ2xlIiBkYXRhLWFjdGlvbj0idG9nZ2xlLWFyY2hpdmVkLWdyb3VwIj48c3BhbiBjbGFzcz0iY2hldnJvbiI+JytuKyc8L3NwYW4+IFx1NURGMlx1NUY1Mlx1Njg2MyA8c3BhbiBjbGFzcz0iaGlzdG9yeS1jb3VudCI+JytlLmxlbmd0aCsiPC9zcGFuPjwvZGl2PiI7aWYoIXQpcmV0dXJuJzxzZWN0aW9uIGNsYXNzPSJzZXNzaW9uLWdyb3VwIj4nK2krIjwvc2VjdGlvbj4iO3ZhciBhPWUubWFwKGZ1bmN0aW9uKHUpe3JldHVybiBKaSh1LCJzZXNzaW9ucyIpfSkuam9pbigiIik7cmV0dXJuJzxzZWN0aW9uIGNsYXNzPSJzZXNzaW9uLWdyb3VwIj4nK2krYSsiPC9zZWN0aW9uPiJ9ZnVuY3Rpb24gcWMoZSl7dmFyIHQ9JzxzZWN0aW9uIGNsYXNzPSJzZXNzaW9uLWdyb3VwIHNlc3Npb24tZ3JvdXAtLXJlY2VudCI+JztyZXR1cm4gdCs9ZS5tYXAoZnVuY3Rpb24obil7cmV0dXJuIG4ua2luZD09PSJzZXNzaW9uIj9KaShuLnJlZiwic2Vzc2lvbnMiKTpZaShuLnJlZiwiaGlzdG9yeSIpfSkuam9pbigiIiksdCs9Ijwvc2VjdGlvbj4iLHR9ZnVuY3Rpb24gSGMoKXt2YXIgZT1EYXRlLm5vdygpLTg2NGU1O3JldHVybiBqbigpLmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4hdC50aW1lc3RhbXB8fG5ldyBEYXRlKHQudGltZXN0YW1wKS5nZXRUaW1lKCk8PWV9KX1mdW5jdGlvbiBfYygpe3ZhciBlPUhjKCksdD0hIXIuY2xhdWRlSGlzdG9yeUxvYWRlZCxuPVFjKCksaT0hIXIuY29kZXhIaXN0b3J5TG9hZGVkLGE9dCYmaSx1PSh0P2UubGVuZ3RoOjApKyhpP24ubGVuZ3RoOjApO2lmKGEmJnU9PT0wKXJldHVybiIiO3ZhciBzPSEhci5jbGF1ZGVIaXN0b3J5RXhwYW5kZWQsbz1zPyImIzk2NjI7IjoiJiM5NjU2OyIsbD1hP3U+OTk5PyI5OTkrIjpTdHJpbmcodSk6Ilx4QjdceEI3XHhCNyIsYz0nPGRpdiBjbGFzcz0ic2Vzc2lvbi1ncm91cC10aXRsZSBjbGF1ZGUtaGlzdG9yeS10b2dnbGUgc2Vzc2lvbi1oaXN0b3J5LXRvZ2dsZSIgaWQ9ImNsYXVkZS1oaXN0b3J5LXRvZ2dsZSIgcm9sZT0iYnV0dG9uIiB0YWJpbmRleD0iMCIgYXJpYS1leHBhbmRlZD0iJytzKyciIHRpdGxlPSInKyhzPyJcdTY1MzZcdThENzdcdTUzODZcdTUzRjJcdTRGMUFcdThCREQiOiJcdTVDNTVcdTVGMDBcdTUzODZcdTUzRjJcdTRGMUFcdThCREQiKSsnIj48c3BhbiBjbGFzcz0iY2hldnJvbiI+JytvKyc8L3NwYW4+IFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERCA8c3BhbiBjbGFzcz0iaGlzdG9yeS1jb3VudCcrKGE/IiI6IiBsb2FkaW5nIikrJyI+JytsKyI8L3NwYW4+PC9kaXY+IixmPXM/JzxkaXYgY2xhc3M9InNlc3Npb24taGlzdG9yeS1ib2R5Ij4nK05jKGUpK0tjKG4pKyI8L2Rpdj4iOiIiO3JldHVybic8c2VjdGlvbiBjbGFzcz0ic2Vzc2lvbi1ncm91cCBzZXNzaW9uLWdyb3VwLS1oaXN0b3J5Ij4nK2MrZisiPC9zZWN0aW9uPiJ9ZnVuY3Rpb24gTmMoZSl7aWYoIXIuY2xhdWRlSGlzdG9yeUxvYWRlZClyZXR1cm4nPGRpdiBjbGFzcz0iY2xhdWRlLWhpc3RvcnktbG9hZGluZyI+XHU2MjZCXHU2M0NGXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHU0RTJEXHUyMDI2PC9kaXY+JztpZihlLmxlbmd0aD09PTApcmV0dXJuIiI7dmFyIHQ9e30sbj1bXTtlLmZvckVhY2goZnVuY3Rpb24odSl7dFt1LmN3ZF18fCh0W3UuY3dkXT1bXSxuLnB1c2godS5jd2QpKSx0W3UuY3dkXS5wdXNoKHUpfSk7dmFyIGk9JzxkaXYgY2xhc3M9InNpZGViYXItaGlzdG9yeS10b29sYmFyIj48YnV0dG9uIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi14cyBzaWRlYmFyLWhpc3RvcnktY2xlYXIiIGRhdGEtYWN0aW9uPSJjbGVhci1hbGwtaGlzdG9yeSIgdHlwZT0iYnV0dG9uIj5cdTZFMDVcdTdBN0FcdTUxNjhcdTkwRTg8L2J1dHRvbj48L2Rpdj4nLGE9IiI7cmV0dXJuIG4uZm9yRWFjaChmdW5jdGlvbih1KXt2YXIgcz11LnNwbGl0KCIvIikuZmlsdGVyKEJvb2xlYW4pLnNsaWNlKC0zKS5qb2luKCIvIiksbz0hIXIuY2xhdWRlSGlzdG9yeUV4cGFuZGVkRGlyc1t1XTthKz1KYyh1LHMsdFt1XS5sZW5ndGgsbyksbyYmKGErPXRbdV0ubWFwKGZ1bmN0aW9uKGwpe3JldHVybiBZaShsLCJoaXN0b3J5Iil9KS5qb2luKCIiKSl9KSxpKyc8ZGl2IGNsYXNzPSJzaWRlYmFyLWhpc3Rvcnktc2Nyb2xsIj4nK2ErIjwvZGl2PiJ9ZnVuY3Rpb24gam4oKXt2YXIgZT1uZXcgU2V0O3JldHVybiByLnNlc3Npb25zLmZvckVhY2goZnVuY3Rpb24odCl7dC5jbGF1ZGVTZXNzaW9uSWQmJmUuYWRkKHQuY2xhdWRlU2Vzc2lvbklkKX0pLHIuY2xhdWRlSGlzdG9yeS5maWx0ZXIoZnVuY3Rpb24odCl7cmV0dXJuIHQuaGFzQ29udmVyc2F0aW9uJiYhdC5tYW5hZ2VkQnlXYW5kJiYhZS5oYXModC5jbGF1ZGVTZXNzaW9uSWQpfSl9ZnVuY3Rpb24gSnUoKXtyZXR1cm4gT2JqZWN0LmtleXMoci5zZWxlY3RlZFNlc3Npb25JZHMpLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4hIXIuc2VsZWN0ZWRTZXNzaW9uSWRzW2VdfSl9ZnVuY3Rpb24gR3UoKXtyZXR1cm4gT2JqZWN0LmtleXMoci5zZWxlY3RlZENsYXVkZUhpc3RvcnlJZHMpLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4hIXIuc2VsZWN0ZWRDbGF1ZGVIaXN0b3J5SWRzW2VdfSl9ZnVuY3Rpb24gUXIoKXtyLnNlbGVjdGVkU2Vzc2lvbklkcz17fSxyLnNlbGVjdGVkQ2xhdWRlSGlzdG9yeUlkcz17fX1mdW5jdGlvbiBqYyhlKXtyLnNlc3Npb25zTWFuYWdlTW9kZT10eXBlb2YgZT09ImJvb2xlYW4iP2U6IXIuc2Vzc2lvbnNNYW5hZ2VNb2RlLHIuc2Vzc2lvbnNNYW5hZ2VNb2RlJiYhci5jbGF1ZGVIaXN0b3J5TG9hZGVkJiYkcigpLnRoZW4odmUpLHIuc2Vzc2lvbnNNYW5hZ2VNb2RlfHwoUXIoKSxBcigpKSx2ZSgpfWZ1bmN0aW9uIFl1KCl7cmV0dXJuIHIuc2Vzc2lvbnMuc2xpY2UoKX1mdW5jdGlvbiBSYygpe3JldHVybiBZdSgpLmxlbmd0aCtqbigpLmxlbmd0aH1mdW5jdGlvbiBRdSgpe2lmKCFyLmNsYXVkZUhpc3RvcnlMb2FkZWQpeyRyKCkudGhlbihRdSk7cmV0dXJufXIuY2xhdWRlSGlzdG9yeUV4cGFuZGVkPSEwO3ZhciBlPXt9O1l1KCkuZm9yRWFjaChmdW5jdGlvbihuKXtlW24uaWRdPSEwfSk7dmFyIHQ9e307am4oKS5mb3JFYWNoKGZ1bmN0aW9uKG4pe3Rbbi5jbGF1ZGVTZXNzaW9uSWRdPSEwfSksci5zZWxlY3RlZFNlc3Npb25JZHM9ZSxyLnNlbGVjdGVkQ2xhdWRlSGlzdG9yeUlkcz10LHZlKCl9ZnVuY3Rpb24gV2MoKXtRcigpLHZlKCl9ZnVuY3Rpb24gZHIoZSx0KXtpZighKCFyLnNlc3Npb25zTWFuYWdlTW9kZXx8IXQpKXt2YXIgbj1lPT09Imhpc3RvcnkiP3Iuc2VsZWN0ZWRDbGF1ZGVIaXN0b3J5SWRzOnIuc2VsZWN0ZWRTZXNzaW9uSWRzO25bdF0/ZGVsZXRlIG5bdF06blt0XT0hMCx2ZSgpfX1mdW5jdGlvbiAkdShlLHQsbil7aWYoIXIuc2Vzc2lvbnNNYW5hZ2VNb2RlKXJldHVybiIiO3ZhciBpPWU9PT0iaGlzdG9yeSI/ISFyLnNlbGVjdGVkQ2xhdWRlSGlzdG9yeUlkc1t0XTohIXIuc2VsZWN0ZWRTZXNzaW9uSWRzW3RdO3JldHVybic8bGFiZWwgY2xhc3M9InNlc3Npb24tbWFuYWdlLWNoZWNrIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGRhdGEtYWN0aW9uPSJ0b2dnbGUtc2VsZWN0aW9uIiBkYXRhLWtpbmQ9IicrcChlKSsnIiBkYXRhLWlkPSInK3AodCkrJyInKyhpPyIgY2hlY2tlZCI6IiIpKycgYXJpYS1sYWJlbD0iJytwKG4pKyciPjxzcGFuPjwvc3Bhbj48L2xhYmVsPid9ZnVuY3Rpb24gRG4oZSx0KXtyZXR1cm4gdHlwZW9mIHdpbmRvdy53YW5kQ29uZmlybT09ImZ1bmN0aW9uIj93aW5kb3cud2FuZENvbmZpcm0oZSxPYmplY3QuYXNzaWduKHt0eXBlOiJkYW5nZXIiLGRhbmdlcjohMCxva0xhYmVsOiJcdTUyMjBcdTk2NjQifSx0fHx7fSkpOlByb21pc2UucmVzb2x2ZSh3aW5kb3cuY29uZmlybShlKSl9ZnVuY3Rpb24gemMoKXt2YXIgZT1KdSgpLHQ9R3UoKSxuPWUubGVuZ3RoK3QubGVuZ3RoO24mJkRuKCJcdTc4NkVcdThCQTRcdTUyMjBcdTk2NjRcdTYyNDBcdTkwMDkgIituKyIgXHU5ODc5XHU1NDE3XHVGRjFGXHU2QjY0XHU2NENEXHU0RjVDXHU2NUUwXHU2Q0Q1XHU2NEE0XHU5NTAwXHUzMDAyIix7dGl0bGU6Ilx1NTIyMFx1OTY2NFx1NjI0MFx1OTAwOSAiK24rIiBcdTk4NzkifSkudGhlbihmdW5jdGlvbihpKXtpZihpKXt2YXIgYT1bXTtlLmxlbmd0aD4wJiZhLnB1c2goZmV0Y2goIi9hcGkvc2Vzc2lvbnMvYmF0Y2gtZGVsZXRlIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7c2Vzc2lvbklkczplfSl9KS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiB1Lmpzb24oKX0pKSx0Lmxlbmd0aD4wJiZhLnB1c2goZmV0Y2goIi9hcGkvY2xhdWRlLWhpc3RvcnkvYmF0Y2gtZGVsZXRlIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7Y2xhdWRlU2Vzc2lvbklkczp0fSl9KS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiB1Lmpzb24oKX0pKSxQcm9taXNlLmFsbChhKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGUuaW5kZXhPZihyLnNlbGVjdGVkSWQpIT09LTEmJihyLnNlbGVjdGVkSWQ9bnVsbCxGZSgpKSxyLmNsYXVkZUhpc3Rvcnk9ci5jbGF1ZGVIaXN0b3J5LmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdC5pbmRleE9mKHUuY2xhdWRlU2Vzc2lvbklkKT09PS0xfSksUXIoKSxqdCgpfSkuY2F0Y2goZnVuY3Rpb24oKXt2YXIgdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYWN0aW9uLWVycm9yIik7UGUodSwiXHU2NUUwXHU2Q0Q1XHU2Mjc5XHU5MUNGXHU1MjIwXHU5NjY0XHU2MjQwXHU5MDA5XHU5ODc5XHU3NkVFXHUzMDAyIil9KX19KX1mdW5jdGlvbiBVYygpe3ZhciBlPURhdGUubm93KCktODY0ZTUsdD1qbigpLmZpbHRlcihmdW5jdGlvbihuKXtyZXR1cm4hbi50aW1lc3RhbXB8fG5ldyBEYXRlKG4udGltZXN0YW1wKS5nZXRUaW1lKCk8PWV9KTtpZih0Lmxlbmd0aClyZXR1cm4gRG4oIlx1Nzg2RVx1OEJBNFx1NkUwNVx1N0E3QVx1NUY1M1x1NTI0RFx1NjYzRVx1NzkzQVx1NzY4NCAiK3QubGVuZ3RoKyIgXHU2NzYxIENsYXVkZSBcdTUzODZcdTUzRjJcdTU0MTdcdUZGMUYiLHt0aXRsZToiXHU2RTA1XHU3QTdBIENsYXVkZSBcdTUzODZcdTUzRjIiLG9rTGFiZWw6Ilx1NkUwNVx1N0E3QSJ9KS50aGVuKGZ1bmN0aW9uKG4pe2lmKG4pe3ZhciBpPXQubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBhLmNsYXVkZVNlc3Npb25JZH0pO3JldHVybiBmZXRjaCgiL2FwaS9jbGF1ZGUtaGlzdG9yeS9iYXRjaC1kZWxldGUiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtjbGF1ZGVTZXNzaW9uSWRzOml9KX0pLnRoZW4oZnVuY3Rpb24oYSl7cmV0dXJuIGEuanNvbigpfSkudGhlbihmdW5jdGlvbihhKXtpZihhJiZhLmVycm9yKXRocm93IG5ldyBFcnJvcihhLmVycm9yKTtyLmNsYXVkZUhpc3Rvcnk9ci5jbGF1ZGVIaXN0b3J5LmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gaS5pbmRleE9mKHUuY2xhdWRlU2Vzc2lvbklkKT09PS0xfSksUXIoKSx2ZSgpfSkuY2F0Y2goZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYWN0aW9uLWVycm9yIik7UGUoYSwiXHU2NUUwXHU2Q0Q1XHU2RTA1XHU3QTdBXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHUzMDAyIil9KX19KX1mdW5jdGlvbiBWYyhlLHQsbixpKXt2YXIgYT1pPyJcdTI1QkUiOiJcdTI1QjgiO3JldHVybic8ZGl2IGNsYXNzPSJjbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktaGVhZGVyIGNvZGV4LWhpc3RvcnktZGlyZWN0b3J5LWhlYWRlciIgZGF0YS1hY3Rpb249InRvZ2dsZS1jb2RleC1oaXN0b3J5LWRpcmVjdG9yeSIgZGF0YS1jd2Q9IicrcChlKSsnIiByb2xlPSJidXR0b24iIHRhYmluZGV4PSIwIj48ZGl2IGNsYXNzPSJzZXNzaW9uLWdyb3VwLXRpdGxlIGNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS10aXRsZSI+PHNwYW4gY2xhc3M9ImNoZXZyb24iPicrYSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJjbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktbGFiZWwiPicrcCh0KSsiICgiK24rIik8L3NwYW4+PC9kaXY+PC9kaXY+In1mdW5jdGlvbiBLYyhlKXtpZighci5jb2RleEhpc3RvcnlMb2FkZWQpcmV0dXJuJzxkaXYgY2xhc3M9ImNsYXVkZS1oaXN0b3J5LWxvYWRpbmciPlx1NjI2Qlx1NjNDRiBDb2RleCBcdTUzODZcdTUzRjJcdTRGMUFcdThCRERcdTRFMkRcdTIwMjY8L2Rpdj4nO2lmKGUubGVuZ3RoPT09MClyZXR1cm4iIjt2YXIgdD17fSxuPVtdO2UuZm9yRWFjaChmdW5jdGlvbihhKXt0W2EuY3dkXXx8KHRbYS5jd2RdPVtdLG4ucHVzaChhLmN3ZCkpLHRbYS5jd2RdLnB1c2goYSl9KTt2YXIgaT0nPGRpdiBjbGFzcz0ic2lkZWJhci1oaXN0b3J5LXNlY3Rpb24tbGFiZWwiPkNvZGV4PC9kaXY+JztyZXR1cm4gbi5mb3JFYWNoKGZ1bmN0aW9uKGEpe3ZhciB1PWEuc3BsaXQoIi8iKS5maWx0ZXIoQm9vbGVhbikuc2xpY2UoLTMpLmpvaW4oIi8iKSxzPSEhci5jb2RleEhpc3RvcnlFeHBhbmRlZERpcnNbYV07aSs9VmMoYSx1LHRbYV0ubGVuZ3RoLHMpLHMmJihpKz10W2FdLm1hcChmdW5jdGlvbihvKXtyZXR1cm4gWWkobywiY29kZXgiKX0pLmpvaW4oIiIpKX0pLCc8ZGl2IGNsYXNzPSJzaWRlYmFyLWhpc3Rvcnktc2Nyb2xsIGNvZGV4LWhpc3Rvcnktc2Nyb2xsIj4nK2krIjwvZGl2PiJ9ZnVuY3Rpb24gSmMoZSx0LG4saSl7dmFyIGE9aT8iJiM5NjYyOyI6IiYjOTY1NjsiO3JldHVybic8ZGl2IGNsYXNzPSJjbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktaGVhZGVyIiBkYXRhLWFjdGlvbj0idG9nZ2xlLWhpc3RvcnktZGlyZWN0b3J5IiBkYXRhLWN3ZD0iJytwKGUpKyciIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiPjxkaXYgY2xhc3M9InNlc3Npb24tZ3JvdXAtdGl0bGUgY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LXRpdGxlIj48c3BhbiBjbGFzcz0iY2hldnJvbiI+JythKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS1sYWJlbCI+JytwKHQpKyIgKCIrbisnKTwvc3Bhbj48YnV0dG9uIGNsYXNzPSJidG4gYnRuLWRhbmdlciBidG4teHMgY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWNsZWFyLWJ0biIgZGF0YS1hY3Rpb249ImRlbGV0ZS1oaXN0b3J5LWRpcmVjdG9yeSIgZGF0YS1jd2Q9IicrcChlKSsnIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NkUwNVx1N0E3QVx1NkI2NFx1NzZFRVx1NUY1NVx1NzY4NFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERCIgdGl0bGU9Ilx1NkUwNVx1N0E3QVx1NkI2NFx1NzZFRVx1NUY1NVx1NzY4NFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERCI+XHU2RTA1XHU3QTdBXHU2QjY0XHU3NkVFXHU1RjU1PC9idXR0b24+PC9kaXY+PC9kaXY+J31mdW5jdGlvbiBZaShlLHQpe3ZhciBuPXQ9PT0iY29kZXgiLGk9bj8icmVzdW1lLWNvZGV4LWhpc3RvcnkiOiJyZXN1bWUtaGlzdG9yeSIsYT1uPyJkZWxldGUtY29kZXgtaGlzdG9yeSI6ImRlbGV0ZS1oaXN0b3J5Iix1PW4/ci5zZWxlY3RlZENvZGV4SGlzdG9yeUlkczpyLnNlbGVjdGVkQ2xhdWRlSGlzdG9yeUlkcyxzPWUuY2xhdWRlU2Vzc2lvbklkLnNsaWNlKDAsOCksbz1lLmZpcnN0VXNlck1lc3NhZ2V8fCIoXHU3QTdBXHU0RjFBXHU4QkREKSIsbD1YdShlLnRpbWVzdGFtcCksYz0kdSh0LGUuY2xhdWRlU2Vzc2lvbklkLCJcdTkwMDlcdTYyRTlcdTUzODZcdTUzRjJcdTRGMUFcdThCREQgIitvKSxmPXIuc2Vzc2lvbnNNYW5hZ2VNb2RlPyIiOic8YnV0dG9uIGNsYXNzPSJzZXNzaW9uLWFjdGlvbi1idG4gZGVsZXRlLWJ0biIgZGF0YS1hY3Rpb249IicrYSsnIiBkYXRhLWNsYXVkZS1zZXNzaW9uLWlkPSInK2UuY2xhdWRlU2Vzc2lvbklkKyciIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU1MjIwXHU5NjY0XHU0RjFBXHU4QkREIiB0aXRsZT0iXHU5NjkwXHU4NUNGXHU2QjY0XHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREIj48c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0zIDZoMTgiLz48cGF0aCBkPSJNOCA2VjRhMiAyIDAgMDEyLTJoNGEyIDIgMCAwMTIgMnYyIi8+PHBhdGggZD0iTTE5IDZsLTEgMTRhMiAyIDAgMDEtMiAySDhhMiAyIDAgMDEtMi0yTDUgNiIvPjwvc3ZnPjwvYnV0dG9uPicsZD1yLnNlc3Npb25zTWFuYWdlTW9kZT8iIjonPGJ1dHRvbiBjbGFzcz0ic2Vzc2lvbi1hY3Rpb24tYnRuIiBkYXRhLWFjdGlvbj0iJytpKyciIGRhdGEtY2xhdWRlLXNlc3Npb24taWQ9IicrZS5jbGF1ZGVTZXNzaW9uSWQrJyIgZGF0YS1jd2Q9IicrcChlLmN3ZCkrJyIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTYwNjJcdTU5MERcdTRGMUFcdThCREQiIHRpdGxlPSInKyhuPyJcdTYwNjJcdTU5MERcdTZCNjQgQ29kZXggXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREIjoiXHU2MDYyXHU1OTBEXHU2QjY0IENsYXVkZSBcdTUzODZcdTUzRjJcdTRGMUFcdThCREQiKSsnIj48c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0xIDR2Nmg2Ii8+PHBhdGggZD0iTTMuNTEgMTVhOSA5IDAgMTA1LjY0LTExLjM2TDMgMTAiLz48L3N2Zz48L2J1dHRvbj4nO3JldHVybic8ZGl2IGNsYXNzPSJzZXNzaW9uLWl0ZW0gY2xhdWRlLWhpc3RvcnktaXRlbScrKHIuc2Vzc2lvbnNNYW5hZ2VNb2RlJiZ1W2UuY2xhdWRlU2Vzc2lvbklkXT8iIHNlbGVjdGVkIjoiIikrJyIgZGF0YS1jbGF1ZGUtaGlzdG9yeS1pZD0iJytlLmNsYXVkZVNlc3Npb25JZCsnIiBkYXRhLWN3ZD0iJytwKGUuY3dkKSsnIiByb2xlPSJidXR0b24iIHRhYmluZGV4PSIwIj48ZGl2IGNsYXNzPSJzZXNzaW9uLWl0ZW0tY29udGVudCI+PGRpdiBjbGFzcz0ic2Vzc2lvbi1pdGVtLXJvdyI+JytjKyc8ZGl2IGNsYXNzPSJzZXNzaW9uLW1haW4iPjxkaXYgY2xhc3M9InNlc3Npb24tY29tbWFuZCBjbGF1ZGUtaGlzdG9yeS1wcmV2aWV3Ij4nK3AobykrJzwvZGl2PjxkaXYgY2xhc3M9InNlc3Npb24tbWV0YSI+PHNwYW4gY2xhc3M9InNlc3Npb24taWQiIHRpdGxlPSInK3AoZS5jbGF1ZGVTZXNzaW9uSWQpKyciPicrcChzKSsiPC9zcGFuPjxzcGFuPiIrcChsKSsnPC9zcGFuPjwvZGl2PjwvZGl2PjxzcGFuIGNsYXNzPSJzZXNzaW9uLWFjdGlvbnMiPicrZCtmKyI8L3NwYW4+PC9kaXY+PC9kaXY+PC9kaXY+In1mdW5jdGlvbiBYdShlKXtpZighZSlyZXR1cm4iIjt0cnl7dmFyIHQ9bmV3IERhdGUoZSksbj1uZXcgRGF0ZSxpPW4tdCxhPU1hdGguZmxvb3IoaS82ZTQpO2lmKGE8MSlyZXR1cm4iXHU1MjFBXHU1MjFBIjtpZihhPDYwKXJldHVybiBhKyIgXHU1MjA2XHU5NDlGXHU1MjREIjt2YXIgdT1NYXRoLmZsb29yKGEvNjApO2lmKHU8MjQpcmV0dXJuIHUrIiBcdTVDMEZcdTY1RjZcdTUyNEQiO3ZhciBzPU1hdGguZmxvb3IodS8yNCk7cmV0dXJuIHM8MzA/cysiIFx1NTkyOVx1NTI0RCI6dC50b0xvY2FsZURhdGVTdHJpbmcoKX1jYXRjaHtyZXR1cm4iIn19ZnVuY3Rpb24gWnUoKXtyZXR1cm4gZmV0Y2goIi9hcGkvY2xhdWRlLWhpc3RvcnkiLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihlKXtyZXR1cm4gZS5vaz9lLmpzb24oKTpbXX0pLnRoZW4oZnVuY3Rpb24oZSl7ci5jbGF1ZGVIaXN0b3J5PWV8fFtdLHIuY2xhdWRlSGlzdG9yeUxvYWRlZD0hMCx2ZSgpfSkuY2F0Y2goZnVuY3Rpb24oKXtyLmNsYXVkZUhpc3RvcnlMb2FkZWQ9ITAsci5jbGF1ZGVIaXN0b3J5PVtdLHZlKCl9KX12YXIgUm49bnVsbDtmdW5jdGlvbiAkcigpe3JldHVybiBZYygpLHIuY2xhdWRlSGlzdG9yeUxvYWRlZD9Qcm9taXNlLnJlc29sdmUoKTpSbnx8KFJuPVp1KCkudGhlbihmdW5jdGlvbigpe1JuPW51bGx9LGZ1bmN0aW9uKCl7Um49bnVsbH0pLFJuKX1mdW5jdGlvbiBHYygpe3JldHVybiBmZXRjaCgiL2FwaS9jb2RleC1oaXN0b3J5Iix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGUub2s/ZS5qc29uKCk6W119KS50aGVuKGZ1bmN0aW9uKGUpe3IuY29kZXhIaXN0b3J5PWV8fFtdLHIuY29kZXhIaXN0b3J5TG9hZGVkPSEwLHZlKCl9KS5jYXRjaChmdW5jdGlvbigpe3IuY29kZXhIaXN0b3J5TG9hZGVkPSEwLHIuY29kZXhIaXN0b3J5PVtdLHZlKCl9KX12YXIgV249bnVsbDtmdW5jdGlvbiBZYygpe3JldHVybiByLmNvZGV4SGlzdG9yeUxvYWRlZD9Qcm9taXNlLnJlc29sdmUoKTpXbnx8KFduPUdjKCkudGhlbihmdW5jdGlvbigpe1duPW51bGx9LGZ1bmN0aW9uKCl7V249bnVsbH0pLFduKX1mdW5jdGlvbiBRYygpe3ZhciBlPW5ldyBTZXQ7cmV0dXJuIHIuc2Vzc2lvbnMuZm9yRWFjaChmdW5jdGlvbih0KXt0LmNsYXVkZVNlc3Npb25JZCYmZS5hZGQodC5jbGF1ZGVTZXNzaW9uSWQpfSksci5jb2RleEhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmhhc0NvbnZlcnNhdGlvbiYmIXQubWFuYWdlZEJ5V2FuZCYmIWUuaGFzKHQuY2xhdWRlU2Vzc2lvbklkKX0pfWZ1bmN0aW9uIGVzKCl7dXMoKSwhWHIoKSYmKHIucG9sbFRpbWVyPXNldEludGVydmFsKGp0LDE2MDApKX1zZXRJbnRlcnZhbChmdW5jdGlvbigpe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXNzaW9uLXRpbWUiKTtlLmxlbmd0aD4wJiZLYSgpfSwzZTQpO2Z1bmN0aW9uIFFpKCl7ci53c1JlY29ubmVjdFRpbWVyJiYoY2xlYXJUaW1lb3V0KHIud3NSZWNvbm5lY3RUaW1lciksci53c1JlY29ubmVjdFRpbWVyPW51bGwpfXZhciAkYz0xZTQsWGM9NGU0O2Z1bmN0aW9uIFpjKCl7dHMoKSxyLndzSGVhcnRiZWF0Q2hlY2tUaW1lcj1zZXRJbnRlcnZhbChucywkYyl9ZnVuY3Rpb24gdHMoKXtyLndzSGVhcnRiZWF0Q2hlY2tUaW1lciYmKGNsZWFySW50ZXJ2YWwoci53c0hlYXJ0YmVhdENoZWNrVGltZXIpLHIud3NIZWFydGJlYXRDaGVja1RpbWVyPW51bGwpfWZ1bmN0aW9uIG5zKCl7aWYoISghci53c3x8ci53cy5yZWFkeVN0YXRlIT09V2ViU29ja2V0Lk9QRU4pJiZyLmxhc3RXc01lc3NhZ2VBdCl7dmFyIGU9RGF0ZS5ub3coKS1yLmxhc3RXc01lc3NhZ2VBdDtlPlhjJiYkaSgiaGVhcnRiZWF0LXN0YWxlLSIrTWF0aC5yb3VuZChlLzFlMykrInMiKX19ZnVuY3Rpb24gJGkoZSl7aWYoUWkoKSxyLndzKXt2YXIgdD1yLndzO3RyeXt0Lm9uY2xvc2U9bnVsbH1jYXRjaHt9dHJ5e3Qub25lcnJvcj1udWxsfWNhdGNoe310cnl7dC5vbm1lc3NhZ2U9bnVsbH1jYXRjaHt9dHJ5e3QuY2xvc2UoKX1jYXRjaHt9ci53cz1udWxsfXIud3NDb25uZWN0ZWQ9ITEsci53c1JlY29ubmVjdEF0dGVtcHRzPTAsWHIoZSl9ZnVuY3Rpb24gcnMoKXtpZighci53c1JlY29ubmVjdFRpbWVyJiYhZG9jdW1lbnQuaGlkZGVuKXt2YXIgZT1yLndzUmVjb25uZWN0QXR0ZW1wdHN8fDAsdD1bNTAwLDFlMywyZTMsNGUzLDhlM10sbj10W2U8dC5sZW5ndGg/ZTp0Lmxlbmd0aC0xXTtyLndzUmVjb25uZWN0QXR0ZW1wdHM9ZSsxLHIud3NSZWNvbm5lY3RUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci53c1JlY29ubmVjdFRpbWVyPW51bGwsci5jb25maWcmJiFyLndzJiYhZG9jdW1lbnQuaGlkZGVuJiZYcigiYmFja29mZiIpfSxuKX19ZnVuY3Rpb24gWHIoZSl7aWYoIXdpbmRvdy5XZWJTb2NrZXQpcmV0dXJuITE7aWYoci53cyl7dHJ5e3Iud3MuY2xvc2UoKX1jYXRjaHt9ci53cz1udWxsfXZhciB0PXdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbD09PSJodHRwczoiPyJ3c3M6Ijoid3M6IixuPXQrIi8vIit3aW5kb3cubG9jYXRpb24uaG9zdCsiL3dzIjt0cnl7dmFyIGk9bmV3IFdlYlNvY2tldChuKTtyZXR1cm4gaS5vbm9wZW49ZnVuY3Rpb24oKXtyLndzPWksci53c0Nvbm5lY3RlZD0hMCxyLmxhc3RXc01lc3NhZ2VBdD1EYXRlLm5vdygpLHIud3NSZWNvbm5lY3RBdHRlbXB0cz0wLFFpKCksci5sYXN0U2VxQnlTZXNzaW9uPXt9LFpjKCksVG4oci5zZWxlY3RlZElkKSxCcCgpLGhyKCJ3cy1yZWNvbm5lY3QiKX0saS5vbm1lc3NhZ2U9ZnVuY3Rpb24oYSl7ci5sYXN0V3NNZXNzYWdlQXQ9RGF0ZS5ub3coKTt0cnl7dmFyIHU9SlNPTi5wYXJzZShhLmRhdGEpO2lmKHUmJnUudHlwZT09PSJwaW5nIil7aWYoci53cyYmci53cy5yZWFkeVN0YXRlPT09V2ViU29ja2V0Lk9QRU4pdHJ5e3Iud3Muc2VuZChKU09OLnN0cmluZ2lmeSh7dHlwZToicG9uZyIsdDp1LnR9KSl9Y2F0Y2h7fXJldHVybn1pZih1JiZ1LnR5cGU9PT0icmVzeW5jX3JlcXVpcmVkIiYmdS5zZXNzaW9uSWQpe2lmKHIud3MmJnIud3MucmVhZHlTdGF0ZT09PVdlYlNvY2tldC5PUEVOKXRyeXtyLndzLnNlbmQoSlNPTi5zdHJpbmdpZnkoe3R5cGU6InJlc3luYyIsc2Vzc2lvbklkOnUuc2Vzc2lvbklkfSkpfWNhdGNoe31yLmxhc3RTZXFCeVNlc3Npb258fChyLmxhc3RTZXFCeVNlc3Npb249e30pLHIubGFzdFNlcUJ5U2Vzc2lvblt1LnNlc3Npb25JZF09MDtyZXR1cm59aWYodSYmKHUudHlwZT09PSJpbml0Inx8dS50eXBlPT09Im91dHB1dCIpJiZ1LnNlc3Npb25JZCYmdHlwZW9mIHUuc2VxPT0ibnVtYmVyIil7ci5sYXN0U2VxQnlTZXNzaW9ufHwoci5sYXN0U2VxQnlTZXNzaW9uPXt9KTt2YXIgcz1yLmxhc3RTZXFCeVNlc3Npb25bdS5zZXNzaW9uSWRdfHwwO2lmKHUudHlwZT09PSJpbml0IilyLmxhc3RTZXFCeVNlc3Npb25bdS5zZXNzaW9uSWRdPXUuc2VxO2Vsc2UgaWYodS5zZXE9PT1zKzEpci5sYXN0U2VxQnlTZXNzaW9uW3Uuc2Vzc2lvbklkXT11LnNlcTtlbHNlIGlmKHUuc2VxPnMrMSYmcz4wKXtpZihyLndzJiZyLndzLnJlYWR5U3RhdGU9PT1XZWJTb2NrZXQuT1BFTil0cnl7ci53cy5zZW5kKEpTT04uc3RyaW5naWZ5KHt0eXBlOiJyZXN5bmMiLHNlc3Npb25JZDp1LnNlc3Npb25JZH0pKX1jYXRjaHt9ci5sYXN0U2VxQnlTZXNzaW9uW3Uuc2Vzc2lvbklkXT0wO3JldHVybn1lbHNle2lmKHUuc2VxPHMpcmV0dXJuO3IubGFzdFNlcUJ5U2Vzc2lvblt1LnNlc3Npb25JZF09dS5zZXF9fWVkKHUpfWNhdGNoe319LGkub25jbG9zZT1mdW5jdGlvbigpe3Iud3M9bnVsbCxyLndzQ29ubmVjdGVkPSExLHRzKCkscnMoKX0saS5vbmVycm9yPWZ1bmN0aW9uKCl7aS5jbG9zZSgpfSwhMH1jYXRjaHtyZXR1cm4gcnMoKSwhMX19ZnVuY3Rpb24gZWQoZSl7c3dpdGNoKGUudHlwZSl7Y2FzZSJvdXRwdXQiOmlmKGUuZGF0YSYmZS5zZXNzaW9uSWQmJk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsImlzUmVzcG9uZGluZyIpJiYoci5fbGFzdElzUmVzcG9uZGluZ3x8KHIuX2xhc3RJc1Jlc3BvbmRpbmc9e30pLHIuX2xhc3RJc1Jlc3BvbmRpbmdbZS5zZXNzaW9uSWRdPSEhZS5kYXRhLmlzUmVzcG9uZGluZyksZS5kYXRhJiZlLnNlc3Npb25JZCl7dmFyIHQ9ISFlLmRhdGEuaW5jcmVtZW50YWwsbj17aWQ6ZS5zZXNzaW9uSWR9LGk9ITE7aWYoIXQmJmUuZGF0YS5vdXRwdXQhPT12b2lkIDAmJihuLm91dHB1dD1lLmRhdGEub3V0cHV0KSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJwZXJtaXNzaW9uQmxvY2tlZCIpJiYobi5wZXJtaXNzaW9uQmxvY2tlZD0hIWUuZGF0YS5wZXJtaXNzaW9uQmxvY2tlZCksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwicXVldWVkTWVzc2FnZXMiKSYmKG4ucXVldWVkTWVzc2FnZXM9ZS5kYXRhLnF1ZXVlZE1lc3NhZ2VzfHxbXSxyLnF1ZXVlRXBvY2grKyksZS5kYXRhLnN0cnVjdHVyZWRTdGF0ZSYmKG4uc3RydWN0dXJlZFN0YXRlPWUuZGF0YS5zdHJ1Y3R1cmVkU3RhdGUpLGUuZGF0YS5zZXNzaW9uS2luZCYmKG4uc2Vzc2lvbktpbmQ9ZS5kYXRhLnNlc3Npb25LaW5kKSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJ0aXRsZSIpJiYobi50aXRsZT1lLmRhdGEudGl0bGUsaT0hMCksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwiZGVzY3JpcHRpb24iKSYmKG4uZGVzY3JpcHRpb249ZS5kYXRhLmRlc2NyaXB0aW9uLGk9ITApLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsInN1bW1hcnkiKSYmKG4uc3VtbWFyeT1lLmRhdGEuc3VtbWFyeSksZS5kYXRhLm1lc3NhZ2VzKW4ubWVzc2FnZXM9ZS5kYXRhLm1lc3NhZ2VzLHR5cGVvZiBlLmRhdGEubWVzc2FnZU9mZnNldD09Im51bWJlciImJihuLm1lc3NhZ2VPZmZzZXQ9ZS5kYXRhLm1lc3NhZ2VPZmZzZXQpLHR5cGVvZiBlLmRhdGEubWVzc2FnZVRvdGFsPT0ibnVtYmVyIiYmKG4ubWVzc2FnZVRvdGFsPWUuZGF0YS5tZXNzYWdlVG90YWwpO2Vsc2UgaWYodCYmZS5kYXRhLmxhc3RNZXNzYWdlKXt2YXIgYT1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oTSl7cmV0dXJuIE0uaWQ9PT1lLnNlc3Npb25JZH0pO2lmKGEpe3ZhciB1PUFycmF5LmlzQXJyYXkoYS5tZXNzYWdlcyk/YS5tZXNzYWdlcy5zbGljZSgpOltdLHM9ZS5kYXRhLm1lc3NhZ2VDb3VudHx8MCxvPXR5cGVvZiBhLm1lc3NhZ2VPZmZzZXQ9PSJudW1iZXIiP2EubWVzc2FnZU9mZnNldDowLGw9dS5sZW5ndGg+MD91W3UubGVuZ3RoLTFdOm51bGwsYz1lLmRhdGEubGFzdE1lc3NhZ2U7bCYmYy5yb2xlJiZsLnJvbGU9PT1jLnJvbGU/dVt1Lmxlbmd0aC0xXT1HZihsLGMpOm8rdS5sZW5ndGg8cyYmdS5wdXNoKGMpLG4ubWVzc2FnZXM9dSxzPjAmJihuLm1lc3NhZ2VUb3RhbD1zKX19dmFyIGY9dCYmZS5kYXRhLmNodW5rJiYhZS5kYXRhLmxhc3RNZXNzYWdlJiYhbi5tZXNzYWdlcyYmbi5vdXRwdXQ9PT12b2lkIDAmJiFlLmRhdGEuc3RydWN0dXJlZFN0YXRlJiYhZS5kYXRhLnNlc3Npb25LaW5kO2lmKGYpe2lmKGUuZGF0YS5wZXJtaXNzaW9uQmxvY2tlZCE9PXZvaWQgMCl7dmFyIGQ9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKE0pe3JldHVybiBNLmlkPT09ZS5zZXNzaW9uSWR9KTtkJiYhIWQucGVybWlzc2lvbkJsb2NrZWQhPSEhZS5kYXRhLnBlcm1pc3Npb25CbG9ja2VkJiYoUShuKSxlLnNlc3Npb25JZD09PXIuc2VsZWN0ZWRJZCYmWXQoKSl9fWVsc2UgaWYoKG4ub3V0cHV0IT09dm9pZCAwfHxuLm1lc3NhZ2VzfHx0fHxlLmRhdGEucGVybWlzc2lvbkJsb2NrZWQhPT12b2lkIDB8fG4udGl0bGV8fG4uZGVzY3JpcHRpb24pJiYoUShuKSxpJiZLYSgpLGUuc2Vzc2lvbklkPT09ci5zZWxlY3RlZElkKSl7dmFyIHY9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKE0pe3JldHVybiBNLmlkPT09ZS5zZXNzaW9uSWR9KXx8bjtyLmN1cnJlbnRNZXNzYWdlcz1qZSh2LFhlKHYsdi5vdXRwdXQsITEpKSxZdCgpLHYuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCJ8fGUuZGF0YS5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkIj9mcigpOlhpKCl9fWUuc2Vzc2lvbklkPT09ci5zZWxlY3RlZElkJiZyLnRlcm1pbmFsJiZlLmRhdGEmJihlLmRhdGEuY2h1bmsmJmlwKGUuc2Vzc2lvbklkKT8oci5sYXN0Q2h1bmtBdD1EYXRlLm5vdygpLHIudGVybWluYWxMaXZlU3RyZWFtU2Vzc2lvbnNbZS5zZXNzaW9uSWRdPSEwLFZuKHIudGVybWluYWwsZS5kYXRhLmNodW5rKSxyLnRlcm1pbmFsU2Vzc2lvbklkPWUuc2Vzc2lvbklkLGUuZGF0YS5vdXRwdXQ/KHIudGVybWluYWxPdXRwdXQ9d3MoTmEoZS5kYXRhLm91dHB1dCkpLHIudGVybWluYWxPdXRwdXRNYXJrZXI9MCk6ci50ZXJtaW5hbE91dHB1dD13cygoci50ZXJtaW5hbE91dHB1dHx8IiIpK05hKGUuZGF0YS5jaHVuaykpLEV0KCJvdXRwdXQiKSx2dCgpKTohZS5kYXRhLmluY3JlbWVudGFsJiZPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJvdXRwdXQiKSYmaWkoZS5zZXNzaW9uSWQsZS5kYXRhLm91dHB1dHx8IiIse21vZGU6ImFwcGVuZCJ9KSk7YnJlYWs7Y2FzZSJzdGFydGVkIjpmbigpO2JyZWFrO2Nhc2UiZW5kZWQiOnt2YXIgZz1lLmRhdGEmJmUuZGF0YS5zdGF0dXM/ZS5kYXRhLnN0YXR1czoiZXhpdGVkIixoPWUuZGF0YSYmT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwicGVybWlzc2lvbkJsb2NrZWQiKT8hIWUuZGF0YS5wZXJtaXNzaW9uQmxvY2tlZDohMSxtPXtpZDplLnNlc3Npb25JZCxzdGF0dXM6ZyxwZXJtaXNzaW9uQmxvY2tlZDpofTtlLmRhdGEmJmUuZGF0YS5tZXNzYWdlcyYmKG0ubWVzc2FnZXM9ZS5kYXRhLm1lc3NhZ2VzLHR5cGVvZiBlLmRhdGEubWVzc2FnZU9mZnNldD09Im51bWJlciImJihtLm1lc3NhZ2VPZmZzZXQ9ZS5kYXRhLm1lc3NhZ2VPZmZzZXQpLHR5cGVvZiBlLmRhdGEubWVzc2FnZVRvdGFsPT0ibnVtYmVyIiYmKG0ubWVzc2FnZVRvdGFsPWUuZGF0YS5tZXNzYWdlVG90YWwpKSxlLmRhdGEmJmUuZGF0YS5zdHJ1Y3R1cmVkU3RhdGUmJihtLnN0cnVjdHVyZWRTdGF0ZT1lLmRhdGEuc3RydWN0dXJlZFN0YXRlKSxlLmRhdGEmJmUuZGF0YS5xdWV1ZWRNZXNzYWdlcyYmKG0ucXVldWVkTWVzc2FnZXM9ZS5kYXRhLnF1ZXVlZE1lc3NhZ2VzKSxRKG0pLGUuc2Vzc2lvbklkPT09ci5zZWxlY3RlZElkJiYoR24oIkVudGVyIFx1NTNEMVx1OTAwMSBceEI3IFNoaWZ0K0VudGVyIFx1NjM2Mlx1ODg0QyIpLFhpKCEwKSk7dmFyIEU9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKE0pe3JldHVybiBNLmlkPT09ZS5zZXNzaW9uSWR9KSxDPWUuZGF0YSYmZS5kYXRhLmV4aXRDb2RlLGI9QyE9bnVsbCYmQyE9PTAsQj1FJiZFLnN1bW1hcnl8fCIiLEY9RT9EYyhFKToiIix4PWI/Ilx1NEVGQlx1NTJBMVx1NUYwMlx1NUUzOFx1N0VEM1x1Njc1RiI6Ilx1NEVGQlx1NTJBMVx1NURGMlx1NUI4Q1x1NjIxMCIsUz0iIjtCPyhTPUIsRiYmIWImJihTKz1gCmArRikpOlM9RSYmRS5jb21tYW5kfHxlLnNlc3Npb25JZCxKbihiPyJlcnJvciI6InN1Y2Nlc3MiKSxtZihlLnNlc3Npb25JZCx4LFMpLFNzKGUuc2Vzc2lvbklkKSxmYSgpLChlLnNlc3Npb25JZCE9PXIuc2VsZWN0ZWRJZHx8ZG9jdW1lbnQuaGlkZGVuKSYmY2Eoe3RpdGxlOngsYm9keTpTLHR5cGU6Yj8id2FybmluZyI6InN1Y2Nlc3MiLGljb246Yj8iISI6Ilx1MjcxMyIsZHVyYXRpb246NmUzLGFjdGlvbkxhYmVsOiJcdTY3RTVcdTc3MEIiLGFjdGlvbjpmdW5jdGlvbigpe1J0KGUuc2Vzc2lvbklkKX19KSxyLm1lc3NhZ2VRdWV1ZT1bXSxyLnBlbmRpbmdNZXNzYWdlcz1bXTt2YXIgaj1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oTSl7cmV0dXJuIE0uaWQ9PT1lLnNlc3Npb25JZH0pLFI9ZS5zZXNzaW9uSWQ9PT1yLnNlbGVjdGVkSWQ/ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKE0pe3JldHVybiBNLmlkPT09ci5zZWxlY3RlZElkfSk6bnVsbCwkPSEhKGomJmouc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCJ8fFImJlIuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCIpOyQmJmUuc2Vzc2lvbklkPT09ci5zZWxlY3RlZElkPyh6cygpLHB1KGUuc2Vzc2lvbklkKSk6JHx8KHIuc3RydWN0dXJlZElucHV0UXVldWU9W10scHUoci5zZWxlY3RlZElkKSxzbigpKSxlLnNlc3Npb25JZD09PXIuc2VsZWN0ZWRJZCYmKCR8fEluKCExKSxyLmN1cnJlbnRUYXNrPW51bGwsWXQoKSksZS5zZXNzaW9uSWQ9PT1yLnNlbGVjdGVkSWQmJklyKCksZm4oKS50aGVuKGZ1bmN0aW9uKCl7Y2koKX0pLGUuc2Vzc2lvbklkPT09ci5zZWxlY3RlZElkJiYoJHx8cG4oZS5zZXNzaW9uSWQpKTticmVha31jYXNlImluaXQiOmlmKGUuc2Vzc2lvbklkPT09ci5zZWxlY3RlZElkJiZlLmRhdGEpe3IuY2hhdFJlbmRlclRpbWVyJiYoY2xlYXJUaW1lb3V0KHIuY2hhdFJlbmRlclRpbWVyKSxyLmNoYXRSZW5kZXJUaW1lcj1udWxsKSxRKGUuZGF0YSk7dmFyIEk9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKE0pe3JldHVybiBNLmlkPT09ZS5zZXNzaW9uSWR9KTtyLmN1cnJlbnRNZXNzYWdlcz1qZShJfHxlLmRhdGEsWGUoSXx8ZS5kYXRhLGUuZGF0YS5vdXRwdXQsITEpKSxmcighMCksWXQoKSxpcygpO3ZhciBEPWUuZGF0YS5vdXRwdXR8fCIiLFQ9ci50ZXJtaW5hbFNlc3Npb25JZD09PWUuc2Vzc2lvbklkLE89ci50ZXJtaW5hbE91dHB1dHx8IiIsVT1UJiZPLmxlbmd0aD4wJiZELmxlbmd0aD49Ty5sZW5ndGgmJkQuc3RhcnRzV2l0aChPKTtpZChELGUuc2Vzc2lvbklkLFU/ImFwcGVuZCI6InJlcGxhY2UiKSxocigiaW5pdCIpfWJyZWFrO2Nhc2UidXNhZ2UiOmJyZWFrO2Nhc2UidGFzayI6ZS5zZXNzaW9uSWQ9PT1yLnNlbGVjdGVkSWQmJihyLmN1cnJlbnRUYXNrPWUuZGF0YXx8bnVsbCxZdCgpKSxwZihlLnNlc3Npb25JZCxlLmRhdGF8fG51bGwpLHBhKGUuc2Vzc2lvbklkKSxLYSgpO2JyZWFrO2Nhc2Uic3RhdHVzIjppZihlLnNlc3Npb25JZCYmZS5kYXRhKXt2YXIgVj17aWQ6ZS5zZXNzaW9uSWR9O2lmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsInN0YXR1cyIpJiYoVi5zdGF0dXM9ZS5kYXRhLnN0YXR1cyksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwiZXhpdENvZGUiKSYmKFYuZXhpdENvZGU9ZS5kYXRhLmV4aXRDb2RlKSxlLmRhdGEuc3RydWN0dXJlZFN0YXRlKVYuc3RydWN0dXJlZFN0YXRlPWUuZGF0YS5zdHJ1Y3R1cmVkU3RhdGU7ZWxzZSBpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJzdGF0dXMiKSl7dmFyIGE9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKE4pe3JldHVybiBOLmlkPT09ZS5zZXNzaW9uSWR9KTthJiZhLnNlc3Npb25LaW5kPT09InN0cnVjdHVyZWQiJiYoVi5zdHJ1Y3R1cmVkU3RhdGU9T2JqZWN0LmFzc2lnbih7fSxhLnN0cnVjdHVyZWRTdGF0ZXx8e30se2luRmxpZ2h0OmUuZGF0YS5zdGF0dXM9PT0icnVubmluZyJ9KSl9aWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwicXVldWVkTWVzc2FnZXMiKSYmKFYucXVldWVkTWVzc2FnZXM9ZS5kYXRhLnF1ZXVlZE1lc3NhZ2VzfHxbXSxyLnF1ZXVlRXBvY2grKyksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwicGVybWlzc2lvbkJsb2NrZWQiKSYmKFYucGVybWlzc2lvbkJsb2NrZWQ9ISFlLmRhdGEucGVybWlzc2lvbkJsb2NrZWQpLGUuZGF0YS5wZXJtaXNzaW9uUmVxdWVzdCl7Vi5wZW5kaW5nRXNjYWxhdGlvbj17c2NvcGU6ZS5kYXRhLnBlcm1pc3Npb25SZXF1ZXN0LnNjb3BlLHRhcmdldDplLmRhdGEucGVybWlzc2lvblJlcXVlc3QudGFyZ2V0LHJlYXNvbjplLmRhdGEucGVybWlzc2lvblJlcXVlc3QucHJvbXB0fTt2YXIgWD1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oTSl7cmV0dXJuIE0uaWQ9PT1lLnNlc3Npb25JZH0pLGVlPVgmJihYLnN1bW1hcnl8fFguY29tbWFuZCl8fGUuc2Vzc2lvbklkLFo9ZS5kYXRhLnBlcm1pc3Npb25SZXF1ZXN0LnByb21wdHx8Ilx1OTcwMFx1ODk4MVx1Njc0M1x1OTY1MFx1NUJBMVx1NjI3OSIsdWU9ZS5kYXRhLnBlcm1pc3Npb25SZXF1ZXN0LnRhcmdldCxMPWVlO3VlP0wrPWAKYCtaKyIgXHhCNyAiK3VlOkwrPWAKYCtaLEpuKCJtZWRpdW0iKSx2ZihlLnNlc3Npb25JZCxMKSxlLnNlc3Npb25JZCE9PXIuc2VsZWN0ZWRJZCYmY2Eoe3RpdGxlOiJcdTk3MDBcdTg5ODFcdTRGNjBcdTc2ODRcdTYzODhcdTY3NDMiLGJvZHk6TCx0eXBlOiJ3YXJuaW5nIixpY29uOiIhIixkdXJhdGlvbjowLGFjdGlvbkxhYmVsOiJcdTUzQkJcdTU5MDRcdTc0MDYiLGFjdGlvbjpmdW5jdGlvbigpe1J0KGUuc2Vzc2lvbklkKX19KX1lLmRhdGEucGVybWlzc2lvbkJsb2NrZWQ9PT0hMSYmKFYucGVuZGluZ0VzY2FsYXRpb249bnVsbCksZS5kYXRhLmFwcHJvdmFsU3RhdHMmJihWLmFwcHJvdmFsU3RhdHM9ZS5kYXRhLmFwcHJvdmFsU3RhdHMpLFEoVikscGEoZS5zZXNzaW9uSWQpLGZhKCksZS5zZXNzaW9uSWQ9PT1yLnNlbGVjdGVkSWQmJihZdCgpLGUuZGF0YS5hcHByb3ZhbFN0YXRzJiZpcygpLFYuc3RydWN0dXJlZFN0YXRlJiYoVi5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHR8fChHbigiRW50ZXIgXHU1M0QxXHU5MDAxIFx4QjcgU2hpZnQrRW50ZXIgXHU2MzYyXHU4ODRDIiksenMoKSksWGkoKSkpfWJyZWFrO2Nhc2Uibm90aWZpY2F0aW9uIjplLmRhdGEmJihlLmRhdGEua2luZD09PSJ1cGRhdGUiP0FzKGUuZGF0YS5jdXJyZW50fHwiLSIsZS5kYXRhLmxhdGVzdHx8Ii0iKTplLmRhdGEua2luZD09PSJhdXRvLXVwZGF0ZS1zdGFydCI/RmYoZS5kYXRhLmN1cnJlbnR8fCItIixlLmRhdGEubGF0ZXN0fHwiLSIpOihlLmRhdGEua2luZD09PSJhdXRvLXVwZGF0ZS1yZXN0YXJ0Inx8ZS5kYXRhLmtpbmQ9PT0icmVzdGFydCIpJiZ1bigpKTticmVha319ZnVuY3Rpb24gWXQoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3VycmVudC10YXNrIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicGVybWlzc2lvbi1hY3Rpb25zIiksbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicGVybWlzc2lvbi1hY3Rpb25zLWxhYmVsIik7aWYoZSl7dmFyIGk9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHYpe3JldHVybiB2LmlkPT09ci5zZWxlY3RlZElkfSk7aSYmaS5wcm92aWRlcj09PSJjb2RleCImJih0JiZ0LmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGUuY2xhc3NMaXN0LnJlbW92ZSgicGVybWlzc2lvbi1ibG9ja2VkIikpO3ZhciBhPWkmJmkucGVuZGluZ0VzY2FsYXRpb24/aS5wZW5kaW5nRXNjYWxhdGlvbjpudWxsLHU9aSYmaS5wcm92aWRlciE9PSJjb2RleCI/YXx8aS5wZXJtaXNzaW9uQmxvY2tlZDohMTtpZih1KXt2YXIgcz1pJiZpLmF1dG9BcHByb3ZlUGVybWlzc2lvbnM7aWYobilpZihzKW4udGV4dENvbnRlbnQ9Ilx1ODFFQVx1NTJBOFx1NjI3OVx1NTFDNlx1NEUyRC4uLiI7ZWxzZSBpZihhKXt2YXIgbz1hLnJlYXNvbnx8Ilx1N0I0OVx1NUY4NVx1NjM4OFx1Njc0MyIsbD1hLnRhcmdldD8iIFx4QjcgIithLnRhcmdldDoiIjtuLnRleHRDb250ZW50PW8rbH1lbHNlIG4udGV4dENvbnRlbnQ9Ilx1N0I0OVx1NUY4NVx1NjM4OFx1Njc0MyI7aWYodCl7dC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTt2YXIgYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXBwcm92ZS1wZXJtaXNzaW9uLWJ0biIpLGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRlbnktcGVybWlzc2lvbi1idG4iKTtjJiZjLmNsYXNzTGlzdC50b2dnbGUoImhpZGRlbiIsISFzKSxmJiZmLmNsYXNzTGlzdC50b2dnbGUoImhpZGRlbiIsISFzKX1lLnRleHRDb250ZW50PSIiLGUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksZS5jbGFzc0xpc3QucmVtb3ZlKCJwZXJtaXNzaW9uLWJsb2NrZWQiKTtyZXR1cm59ZS5jbGFzc0xpc3QucmVtb3ZlKCJwZXJtaXNzaW9uLWJsb2NrZWQiKSx0JiZ0LmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpO3ZhciBkPXIuY3VycmVudFRhc2s7ZCYmZC50aXRsZT8oZS50ZXh0Q29udGVudD1kLnRpdGxlLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpOihlLnRleHRDb250ZW50PSIiLGUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIikpfX1mdW5jdGlvbiBpcygpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHByb3ZhbC1zdGF0cyIpO2lmKGUpe3ZhciB0PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihhKXtyZXR1cm4gYS5pZD09PXIuc2VsZWN0ZWRJZH0pLG49dCYmdC5hcHByb3ZhbFN0YXRzO2lmKCFufHxuLnRvdGFsPT09MCl7ZS5jbGFzc05hbWU9ImFwcHJvdmFsLXN0YXRzIGhpZGRlbiIsZS5pbm5lckhUTUw9IiI7cmV0dXJufWUuY2xhc3NOYW1lPSJhcHByb3ZhbC1zdGF0cyIsZS5pbm5lckhUTUw9JzxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1kaXZpZGVyIj48L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLWJhZGdlIiBpZD0iYXBwcm92YWwtc3RhdHMtYmFkZ2UiIHRpdGxlPSJcdTY3MkNcdTZCMjFcdTRGMUFcdThCRERcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTdFREZcdThCQTEiPjxzdmcgY2xhc3M9ImFwcHJvdmFsLXN0YXRzLWljb24iIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0xMiAyMnM4LTQgOC0xMFY1bC04LTMtOCAzdjdjMCA2IDggMTAgOCAxMHoiLz48L3N2Zz48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtdG90YWwiPicrbi50b3RhbCsnPC9zcGFuPjwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcG9wdXAiIGlkPSJhcHByb3ZhbC1zdGF0cy1wb3B1cCI+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXBvcHVwLXRpdGxlIj5cdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTdFREZcdThCQTE8L3NwYW4+Jysobi5jb21tYW5kPjA/JzxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ciPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctaWNvbiI+JytHKCJ0ZXJtaW5hbCIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWxhYmVsIj5cdTU0N0RcdTRFRTRcdTYyNjdcdTg4NEM8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1jb3VudCI+JytuLmNvbW1hbmQrIjwvc3Bhbj48L3NwYW4+IjoiIikrKG4uZmlsZT4wPyc8c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93Ij48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWljb24iPicrRygiZWRpdCIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWxhYmVsIj5cdTY1ODdcdTRFRjZcdTUxOTlcdTUxNjU8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1jb3VudCI+JytuLmZpbGUrIjwvc3Bhbj48L3NwYW4+IjoiIikrKG4udG9vbD4wPyc8c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93Ij48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWljb24iPicrRygid3JlbmNoIix7c2l6ZToxMixzdHJva2VXaWR0aDoxLjh9KSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctbGFiZWwiPlx1NTE3Nlx1NEVENlx1NURFNVx1NTE3Nzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWNvdW50Ij4nK24udG9vbCsiPC9zcGFuPjwvc3Bhbj4iOiIiKSsnPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdyBhcHByb3ZhbC1zdGF0cy1yb3ctdG90YWwiPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctaWNvbiI+JytHKCJzaWdtYSIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWxhYmVsIj5cdTU0MDhcdThCQTE8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1jb3VudCI+JytuLnRvdGFsKyI8L3NwYW4+PC9zcGFuPjwvc3Bhbj4iO3ZhciBpPWUucXVlcnlTZWxlY3RvcigiLmFwcHJvdmFsLXN0YXRzLWJhZGdlIik7aSYmKGkuY2xhc3NMaXN0LnJlbW92ZSgiYXBwcm92YWwtc3RhdHMtcHVsc2UiKSxpLm9mZnNldFdpZHRoLGkuY2xhc3NMaXN0LmFkZCgiYXBwcm92YWwtc3RhdHMtcHVsc2UiKSl9fWZ1bmN0aW9uIHRkKCl7aWYoSm4oImxpZ2h0IiksISFyLnNlbGVjdGVkSWQpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHByb3ZlLXBlcm1pc3Npb24tYnRuIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGVueS1wZXJtaXNzaW9uLWJ0biIpO2UmJihlLmRpc2FibGVkPSEwKSx0JiYodC5kaXNhYmxlZD0hMCksZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoci5zZWxlY3RlZElkKSsiL2FwcHJvdmUtcGVybWlzc2lvbiIse21ldGhvZDoiUE9TVCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIG4uanNvbigpfSkudGhlbihmdW5jdGlvbihuKXtpZihuJiZuLmVycm9yKXtrKG4uZXJyb3IsImVycm9yIik7cmV0dXJufVEobiksWXQoKX0pLmNhdGNoKGZ1bmN0aW9uKG4pe2sobiYmbi5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU2Mjc5XHU1MUM2XHU2Mzg4XHU2NzQzXHUzMDAyIiwiZXJyb3IiKX0pLmZpbmFsbHkoZnVuY3Rpb24oKXtlJiYoZS5kaXNhYmxlZD0hMSksdCYmKHQuZGlzYWJsZWQ9ITEpfSl9fWZ1bmN0aW9uIG5kKCl7aWYoSm4oImxpZ2h0IiksISFyLnNlbGVjdGVkSWQpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHByb3ZlLXBlcm1pc3Npb24tYnRuIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGVueS1wZXJtaXNzaW9uLWJ0biIpO2UmJihlLmRpc2FibGVkPSEwKSx0JiYodC5kaXNhYmxlZD0hMCksZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoci5zZWxlY3RlZElkKSsiL2RlbnktcGVybWlzc2lvbiIse21ldGhvZDoiUE9TVCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIG4uanNvbigpfSkudGhlbihmdW5jdGlvbihuKXtpZihuJiZuLmVycm9yKXtrKG4uZXJyb3IsImVycm9yIik7cmV0dXJufVEobiksWXQoKX0pLmNhdGNoKGZ1bmN0aW9uKG4pe2sobiYmbi5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU2MkQyXHU3RUREXHU2Mzg4XHU2NzQzXHUzMDAyIiwiZXJyb3IiKX0pLmZpbmFsbHkoZnVuY3Rpb24oKXtlJiYoZS5kaXNhYmxlZD0hMSksdCYmKHQuZGlzYWJsZWQ9ITEpfSl9fWZ1bmN0aW9uIHJkKCl7aWYoci5zZWxlY3RlZElkKXt2YXIgZT1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24obil7cmV0dXJuIG4uaWQ9PT1yLnNlbGVjdGVkSWR9KTtpZihlJiZlLnByb3ZpZGVyPT09ImNvZGV4Iil7aygiQ29kZXggXHU0RjFBXHU4QkREXHU1NkZBXHU1QjlBXHU0RUU1IGZ1bGwtYWNjZXNzIFBUWSBcdTU0MkZcdTUyQThcdUZGMENcdTRFMERcdTY1MkZcdTYzMDFcdTUyMDdcdTYzNjJcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTMwMDIiLCJpbmZvIik7cmV0dXJufXZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLWFwcHJvdmUtdG9nZ2xlIik7dCYmKHQuc3R5bGUub3BhY2l0eT0iMC41IiksZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoci5zZWxlY3RlZElkKSsiL3RvZ2dsZS1hdXRvLWFwcHJvdmUiLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obil7aWYobiYmbi5lcnJvcil7ayhuLmVycm9yLCJlcnJvciIpO3JldHVybn1RKG4pLGFzKCk7dmFyIGk9bi5hdXRvQXBwcm92ZVBlcm1pc3Npb25zO2soaT8iXHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHU1REYyXHU1RjAwXHU1NDJGIjoiXHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHU1REYyXHU1MTczXHU5NUVEIiwiaW5mbyIpfSkuY2F0Y2goZnVuY3Rpb24obil7ayhuJiZuLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTUyMDdcdTYzNjJcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTMwMDIiLCJlcnJvciIpfSkuZmluYWxseShmdW5jdGlvbigpe3QmJih0LnN0eWxlLm9wYWNpdHk9IiIpfSl9fWZ1bmN0aW9uIGFzKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF1dG8tYXBwcm92ZS10b2dnbGUiKSx0PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihhKXtyZXR1cm4gYS5pZD09PXIuc2VsZWN0ZWRJZH0pO2lmKFVvKHQpKXtlJiZlLnBhcmVudE5vZGUmJmUucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChlKTtyZXR1cm59aWYoZSl7dmFyIG49ImNvbXBvc2VyLXBpbGwgY29tcG9zZXItcGlsbC1jaGlwIGF1dG8tYXBwcm92ZS1pbmRpY2F0b3IiLGk9dCYmdC5hdXRvQXBwcm92ZVBlcm1pc3Npb25zO2k/KGUuY2xhc3NOYW1lPW4rIiBhY3RpdmUiLGUudGl0bGU9Ilx1ODFFQVx1NTJBOFx1NjI3OVx1NTFDNlx1NURGMlx1NTQyRlx1NzUyOCBcdTIwMTQgXHU3MEI5XHU1MUZCXHU1MTczXHU5NUVEIixlLmlubmVySFRNTD1HKCJzaGllbGRDaGVjayIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS43LGNsczoiY29tcG9zZXItcGlsbC1pY29uIn0pKyc8c3BhbiBjbGFzcz0iY29tcG9zZXItcGlsbC1sYWJlbCI+XHU4MUVBXHU1MkE4PC9zcGFuPicpOihlLmNsYXNzTmFtZT1uLGUudGl0bGU9Ilx1ODFFQVx1NTJBOFx1NjI3OVx1NTFDNlx1NURGMlx1NTE3M1x1OTVFRCBcdTIwMTQgXHU3MEI5XHU1MUZCXHU1RjAwXHU1NDJGIixlLmlubmVySFRNTD1HKCJzaGllbGQiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuNyxjbHM6ImNvbXBvc2VyLXBpbGwtaWNvbiJ9KSsnPHNwYW4gY2xhc3M9ImNvbXBvc2VyLXBpbGwtbGFiZWwiPlx1NjI0Qlx1NTJBODwvc3Bhbj4nKX19ZnVuY3Rpb24gaWQoZSx0LG4pe3JldHVybiByLnRlcm1pbmFsP2lpKHR8fHIuc2VsZWN0ZWRJZCxlLHttb2RlOm58fCJhcHBlbmQifSk6ITF9ZnVuY3Rpb24gdXMoKXtyLnBvbGxUaW1lciYmKGNsZWFySW50ZXJ2YWwoci5wb2xsVGltZXIpLHIucG9sbFRpbWVyPW51bGwpfWZ1bmN0aW9uIGFnKGUpe3IuY3VycmVudFZpZXc9ZXx8InRlcm1pbmFsIixyLmN1cnJlbnRWaWV3IT09InRlcm1pbmFsIiYmKEluKCExKSwkcygpKSxEaSgpLENhKCk7dmFyIHQ9X3QoKTt0JiYoci5jdXJyZW50TWVzc2FnZXM9amUodCxYZSh0LHQub3V0cHV0LCEwKSkpLHZ0KCksci5jdXJyZW50Vmlldz09PSJ0ZXJtaW5hbCImJihxdCghMCksci50ZXJtaW5hbCYmci50ZXJtaW5hbC5yZW1lYXN1cmUmJnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe3IudGVybWluYWwmJnIudGVybWluYWwucmVtZWFzdXJlKCl9KSl9ZnVuY3Rpb24gZnIoZSl7ci5yZW5kZXJQZW5kaW5nJiYhZXx8KHIucmVuZGVyUGVuZGluZz0hMCxlPyh5aSghMCksci5yZW5kZXJQZW5kaW5nPSExKTpyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXt5aSghMSksci5yZW5kZXJQZW5kaW5nPSExfSkpfXIuY2hhdFJlbmRlclRpbWVyPW51bGw7ZnVuY3Rpb24gWGkoZSl7aWYoIShyLmNoYXRSZW5kZXJUaW1lciYmIWUpKXtpZihyLmNoYXRSZW5kZXJUaW1lciYmY2xlYXJUaW1lb3V0KHIuY2hhdFJlbmRlclRpbWVyKSxlKXtyLmNoYXRSZW5kZXJUaW1lcj1udWxsLGZyKCk7cmV0dXJufXZhciB0PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihhKXtyZXR1cm4gYS5pZD09PXIuc2VsZWN0ZWRJZH0pLG49dCYmdC5zdGF0dXM9PT0icnVubmluZyImJnQuc2Vzc2lvbktpbmQhPT0ic3RydWN0dXJlZCIsaT1uP2JzOkZzO3IuY2hhdFJlbmRlclRpbWVyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtyLmNoYXRSZW5kZXJUaW1lcj1udWxsO3ZhciBhPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbih1KXtyZXR1cm4gdS5pZD09PXIuc2VsZWN0ZWRJZH0pO2EmJihyLmN1cnJlbnRNZXNzYWdlcz1qZShhLFhlKGEsYS5vdXRwdXQsITApKSksZnIoKX0saSl9fXZhciBaaT0wLFpyPTAsc3M9MCxwcj0wO2Z1bmN0aW9uIGVhKCl7cmV0dXJuIHdpbmRvdy5fX3dhbmRJb3NOYXRpdmU9PT0hMH1mdW5jdGlvbiBvcyhlKXtzcz1NYXRoLm1heChzcyxEYXRlLm5vdygpKyhlfHwxODAwKSl9ZnVuY3Rpb24gbHMoZSx0KXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIG49ZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtlaShuKSYmbiE9PXR8fG9zKGUpfSwzMCl9ZnVuY3Rpb24gYWQoZSl7cmV0dXJuIE1hdGgubWF4KHdpbmRvdy5pbm5lckhlaWdodHx8MCxlJiZlLmhlaWdodHx8MCxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHR8fDAsZG9jdW1lbnQuYm9keSYmZG9jdW1lbnQuYm9keS5jbGllbnRIZWlnaHR8fDApfWZ1bmN0aW9uIHVkKGUpe3ZhciB0PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudCxuPU1hdGgubWF4KHdpbmRvdy5pbm5lcldpZHRofHwwLGUmJmUud2lkdGh8fDAsdCYmdC5jbGllbnRXaWR0aHx8MCksaT1hZChlKTtyZXR1cm4hWml8fE1hdGguYWJzKG4tWmkpPjg/KFppPW4sWnI9aSk6aT5aciYmKFpyPWkpLE1hdGgubWF4KDEsTWF0aC5yb3VuZChacnx8aXx8MSkpfWZ1bmN0aW9uIHNkKGUsdCxuLGkpe3JldHVybiBlfHwhZWEoKT8hMTp0PjB8fGk+bisxfWZ1bmN0aW9uIHpuKGUpe3ZhciB0PXdpbmRvdy52aXN1YWxWaWV3cG9ydDtpZih0KXt2YXIgbj1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7aWYobi5jbGFzc0xpc3QudG9nZ2xlKCJpcy1rZXlib2FyZC1vcGVuIiwhIWUpLHdpbmRvdy5fX3dhbmRJbWVOYXRpdmUpe24uc3R5bGUuc2V0UHJvcGVydHkoIi0tYXBwLXZpZXdwb3J0LXRvcCIsIjBweCIpLG4uc3R5bGUuc2V0UHJvcGVydHkoIi0tYXBwLXZpZXdwb3J0LWhlaWdodCIsTWF0aC5yb3VuZCh0LmhlaWdodCkrInB4Iik7cmV0dXJufXZhciBpPXVkKHQpLGE9TWF0aC5tYXgoMCxNYXRoLnJvdW5kKHQub2Zmc2V0VG9wfHwwKSksdT1NYXRoLm1heCgxLE1hdGgucm91bmQodC5oZWlnaHQpKTsoIWUmJmVhKCl8fHNkKGUsYSx1LGkpKSYmKGE9MCx1PU1hdGgubWF4KHUsaSkpLG4uc3R5bGUuc2V0UHJvcGVydHkoIi0tYXBwLXZpZXdwb3J0LXRvcCIsYSsicHgiKSxuLnN0eWxlLnNldFByb3BlcnR5KCItLWFwcC12aWV3cG9ydC1oZWlnaHQiLHUrInB4IiksKGV8fCh3aW5kb3cuc2Nyb2xsWXx8MCk+MCkmJnhhKCl9fWZ1bmN0aW9uIGVpKGUpe2lmKCFlKXJldHVybiExO3ZhciB0PWUudGFnTmFtZTtpZih0PT09IlRFWFRBUkVBInx8dD09PSJTRUxFQ1QiKXJldHVybiEwO2lmKHQ9PT0iSU5QVVQiKXt2YXIgbj0oZS5nZXRBdHRyaWJ1dGUoInR5cGUiKXx8InRleHQiKS50b0xvd2VyQ2FzZSgpO3JldHVybiEvXihidXR0b258Y2hlY2tib3h8Y29sb3J8ZmlsZXxoaWRkZW58aW1hZ2V8cmFkaW98cmFuZ2V8cmVzZXR8c3VibWl0KSQvaS50ZXN0KG4pfXJldHVybiEhZS5pc0NvbnRlbnRFZGl0YWJsZX1mdW5jdGlvbiBvZCgpe2lmKCEoInZpc3VhbFZpZXdwb3J0ImluIHdpbmRvdyl8fHdpbmRvdy5fX3dhbmRWaWV3cG9ydEhhbmRsZXJzQm91bmQpcmV0dXJuO3dpbmRvdy5fX3dhbmRWaWV3cG9ydEhhbmRsZXJzQm91bmQ9ITA7dmFyIGU9d2luZG93LnZpc3VhbFZpZXdwb3J0LHQ9ZS5oZWlnaHQsbj0hMSxpPU1hdGgubWF4KHdpbmRvdy5pbm5lcldpZHRofHwwLGUud2lkdGh8fDApLGE9TWF0aC5tYXgod2luZG93LmlubmVySGVpZ2h0fHwwLGUuaGVpZ2h0fHwwKSx1PVtdO2Z1bmN0aW9uIHMoKXtyZXR1cm4gTWF0aC5tYXgod2luZG93LmlubmVySGVpZ2h0fHwwLGUuaGVpZ2h0fHwwKX1mdW5jdGlvbiBvKCl7dmFyIGg9TWF0aC5tYXgod2luZG93LmlubmVyV2lkdGh8fDAsZS53aWR0aHx8MCksbT1zKCk7aWYoTWF0aC5hYnMoaC1pKT44KXtpPWgsYT1tO3JldHVybn1tPmEmJihhPW0pfWZ1bmN0aW9uIGwoaCxtKXt2YXIgRT1kb2N1bWVudC5hY3RpdmVFbGVtZW50LEM9RT09PWh8fGVpKEUpLGI9YS1lLmhlaWdodCxCPWEtKHdpbmRvdy5pbm5lckhlaWdodHx8ZS5oZWlnaHR8fDApLEY9RGF0ZS5ub3coKTxwcjtyZXR1cm4gRj8hIShDJiYoYj4xMjB8fEI+MTIwKSk6ISEobT44MHx8QyYmKGI+MTIwfHxCPjEyMCl8fG4mJihiPjgwfHxtPjMyKSl9ZnVuY3Rpb24gYygpe3UuZm9yRWFjaChmdW5jdGlvbihoKXtjbGVhclRpbWVvdXQoaCl9KSx1PVs2MCwxODAsMzYwLDYyMCw5MDBdLm1hcChmdW5jdGlvbihoKXtyZXR1cm4gc2V0VGltZW91dChmdW5jdGlvbigpe3puKG4pfSxoKX0pfWZ1bmN0aW9uIGYoKXtbMCw1MCwxMjAsMjIwLDM2MCw1NjBdLmZvckVhY2goZnVuY3Rpb24oaCl7c2V0VGltZW91dChmdW5jdGlvbigpe2QoKTt2YXIgbT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7bSYmZG9jdW1lbnQuYWN0aXZlRWxlbWVudD09PW0mJmhpKG0pfSxoKX0pfWZ1bmN0aW9uIGQoKXtpZihlKXt2YXIgaD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94IiksbT13aW5kb3cuaW5uZXJIZWlnaHQtZS5oZWlnaHQtZS5vZmZzZXRUb3A7bygpO3ZhciBFPWwoaCxtKSxDPU1hdGguYWJzKGUuaGVpZ2h0LXQpPjg7aWYoem4oRSksRSYmKCFufHxDKSYmenAoZSxoKSYmaGkoaCksIW4mJkUpe3ZhciBiPXIudGVybWluYWxBdXRvRm9sbG93fHxhYSgpO290KCJrZXlib2FyZC1vcGVuIix7Zm9yY2VSZXBsYXk6ITB9KSx3aW5kb3cuX193YW5kSW1lTmF0aXZlfHxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7em4oITApfSwyMjApLGMoKSxiJiZzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci50ZXJtaW5hbCYmRXQoImZvcmNlIil9LDIyMCl9aWYobiYmIUUpe3ZhciBCPSEhd2luZG93Ll9fd2FuZEltZU5hdGl2ZTtCfHwob3MoMjIwMCkscHI9RGF0ZS5ub3coKSsxMjAwLHpuKCExKSx4YSgpKSxjKCksc2V0VGltZW91dChmdW5jdGlvbigpe0J8fCh6bighMSkseGEoKSksb3QoImtleWJvYXJkLWNsb3NlIix7Zm9yY2VSZXBsYXk6ITB9KSxFdCgia2V5Ym9hcmQiKX0sMjAwKX1DJiZuPT09RSYmb3QoInZpZXdwb3J0Iiksbj1FLHQ9ZS5oZWlnaHR9fXZhciB2PW51bGw7ZnVuY3Rpb24gZygpe3YhPT1udWxsJiZjYW5jZWxBbmltYXRpb25GcmFtZSh2KSx2PXJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe3Y9bnVsbCxkKCl9KX1lLmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsZyksZS5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLGcpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLGZ1bmN0aW9uKCl7ZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlPT09InZpc2libGUiJiYoZygpLHNldFRpbWVvdXQoZywyNDApLHNldFRpbWVvdXQoZyw3MjApKX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJwYWdlc2hvdyIsZnVuY3Rpb24oaCl7aCYmaC5wZXJzaXN0ZWQmJihnKCksc2V0VGltZW91dChnLDI0MCkpfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXNvdXQiLGZ1bmN0aW9uKGgpeyFofHwhaC50YXJnZXR8fGVpKGgudGFyZ2V0KSYmKGxzKDE2MDAsaC50YXJnZXQpLGVhKCkmJihwcj1NYXRoLm1heChwcixEYXRlLm5vdygpKzEyMDApKSxzZXRUaW1lb3V0KGcsODApLHNldFRpbWVvdXQoZyw0MjApKX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzaW4iLGZ1bmN0aW9uKGgpeyFofHwhaC50YXJnZXR8fCFlaShoLnRhcmdldCl8fGYoKX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ3YW5kLWlvcy1pbWUtc3RhdGUiLGZ1bmN0aW9uKGgpe3ZhciBtPWgmJmguZGV0YWlsJiZoLmRldGFpbC5zdGF0ZTttPT09ImhpZGRlbiImJihwcj1EYXRlLm5vdygpKzkwMCksZigpLGMoKX0pLGQoKX1mdW5jdGlvbiBsZCgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKTtpZihlKXt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0LmNsYXNzTmFtZT0idGVybWluYWwtcmVzaXplLWhhbmRsZSIsdC5pbm5lckhUTUw9IiYjODk0MjsiLGUuYXBwZW5kQ2hpbGQodCk7dmFyIG49ITEsaT0wLGE9MDt0LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsZnVuY3Rpb24odSl7bj0hMCxpPXUuY2xpZW50WSxhPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0LGRvY3VtZW50LmJvZHkuc3R5bGUuY3Vyc29yPSJucy1yZXNpemUiLGRvY3VtZW50LmJvZHkuc3R5bGUudXNlclNlbGVjdD0ibm9uZSIsdS5wcmV2ZW50RGVmYXVsdCgpfSksci5yZXNpemVNb3VzZU1vdmU9ZnVuY3Rpb24odSl7aWYobil7dmFyIHM9dS5jbGllbnRZLWksbz1NYXRoLm1heCgyMDAsTWF0aC5taW4oYStzLHdpbmRvdy5pbm5lckhlaWdodC0yMDApKTtlLnN0eWxlLmhlaWdodD1vKyJweCIsZS5zdHlsZS5mbGV4PSJub25lIixxdCgpfX0sZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIixyLnJlc2l6ZU1vdXNlTW92ZSksci5yZXNpemVNb3VzZVVwPWZ1bmN0aW9uKCl7biYmKG49ITEsZG9jdW1lbnQuYm9keS5zdHlsZS5jdXJzb3I9IiIsZG9jdW1lbnQuYm9keS5zdHlsZS51c2VyU2VsZWN0PSIiLHF0KCkpfSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXVwIixyLnJlc2l6ZU1vdXNlVXApLHQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsZnVuY3Rpb24odSl7bj0hMCxpPXUudG91Y2hlc1swXS5jbGllbnRZLGE9ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQsdS5wcmV2ZW50RGVmYXVsdCgpfSx7cGFzc2l2ZTohMX0pLHIucmVzaXplVG91Y2hNb3ZlPWZ1bmN0aW9uKHUpe2lmKG4pe3ZhciBzPXUudG91Y2hlc1swXS5jbGllbnRZLWksbz1NYXRoLm1heCgyMDAsTWF0aC5taW4oYStzLHdpbmRvdy5pbm5lckhlaWdodC0yMDApKTtlLnN0eWxlLmhlaWdodD1vKyJweCIsZS5zdHlsZS5mbGV4PSJub25lIixxdCgpLHUucHJldmVudERlZmF1bHQoKX19LGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsci5yZXNpemVUb3VjaE1vdmUse3Bhc3NpdmU6ITF9KSxyLnJlc2l6ZVRvdWNoRW5kPWZ1bmN0aW9uKCl7biYmKG49ITEscXQoKSl9LGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIixyLnJlc2l6ZVRvdWNoRW5kKX19ZnVuY3Rpb24gY3MoKXtyZXR1cm4hIV90KCl9ZnVuY3Rpb24gdGEoZSl7dmFyIHQ9TWF0aC5tYXgob24sd2luZG93LmlubmVyV2lkdGgtZmktb24pLG49TWF0aC5tYXgob24sd2luZG93LmlubmVySGVpZ2h0LWZpLW9uKTtyZXR1cm57cmlnaHQ6TWF0aC5taW4oTWF0aC5tYXgob24sZS5yaWdodCksdCksYm90dG9tOk1hdGgubWluKE1hdGgubWF4KG9uLGUuYm90dG9tKSxuKX19ZnVuY3Rpb24gZHMoKXtpZihyLmpveXN0aWNrQmFsbEVsKXt2YXIgZT10YShyLmpveXN0aWNrUG9zfHx7cmlnaHQ6MTgsYm90dG9tOjk2fSk7ci5qb3lzdGlja0JhbGxFbC5zdHlsZS5yaWdodD1lLnJpZ2h0KyJweCIsci5qb3lzdGlja0JhbGxFbC5zdHlsZS5ib3R0b209ZS5ib3R0b20rInB4In19ZnVuY3Rpb24gY2QoZSx0KXt2YXIgbj10YSh7cmlnaHQ6ZSxib3R0b206dH0pO3Iuam95c3RpY2tQb3M9bjt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtYmFsbC1wb3MiLEpTT04uc3RyaW5naWZ5KG4pKX1jYXRjaHt9fWZ1bmN0aW9uIGRkKCl7ZnVuY3Rpb24gZSh1LHMsbyl7cmV0dXJuJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0id2pwLWtleScrKG8/IiAiK286IiIpKyciIGRhdGEta2V5PSInK3UrJyI+JytzKyI8L2J1dHRvbj4ifXZhciB0PSc8ZGl2IGNsYXNzPSJ3anAtZHBhZCI+PGRpdiBjbGFzcz0id2pwLWRwYWQtcm93Ij4nK2UoInVwIiwiXHUyMTkxIiwid2pwLWRpciIpKyc8L2Rpdj48ZGl2IGNsYXNzPSJ3anAtZHBhZC1yb3ciPicrZSgibGVmdCIsIlx1MjE5MCIsIndqcC1kaXIiKStlKCJkb3duIiwiXHUyMTkzIiwid2pwLWRpciIpK2UoInJpZ2h0IiwiXHUyMTkyIiwid2pwLWRpciIpKyI8L2Rpdj48L2Rpdj4iLG49IiIsaTtmb3IoaT0wO2k8RmEubGVuZ3RoO2krKyluKz1lKEZhW2ldLmtleSxGYVtpXS5sYWJlbCwiIik7dmFyIGE9JzxkaXYgY2xhc3M9IndqcC1oZWFkZXIiPjxzcGFuIGNsYXNzPSJ3anAtdGl0bGUiPicrRygicGF3Iix7c2l6ZToxMyxzdHJva2VXaWR0aDoxLjYsY2xzOiJ3anAtdGl0bGUtaWNvbiJ9KSsnPHNwYW4+XHU5MDY1XHU2M0E3XHU5NzYyXHU2NzdGPC9zcGFuPjwvc3Bhbj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9IndqcC1jbG9zZSIgYXJpYS1sYWJlbD0iXHU1MTczXHU5NUVEXHU5MDY1XHU2M0E3XHU5NzYyXHU2NzdGIj4nK0coIngiLHtzaXplOjEzLHN0cm9rZVdpZHRoOjJ9KSsiPC9idXR0b24+PC9kaXY+Iit0Kyc8ZGl2IGNsYXNzPSJ3anAtZ3JpZCB3anAtZm5rZXlzIj4nK24rIjwvZGl2PiI7cmV0dXJuIGF9ZnVuY3Rpb24gZmQoKXtpZighci5qb3lzdGlja1Jvb3RFbCl7dmFyIGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7ZS5jbGFzc05hbWU9IndhbmQtam95c3RpY2stcm9vdCI7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5jbGFzc05hbWU9IndhbmQtam95c3RpY2stYmFja2Ryb3AiLGUuYXBwZW5kQ2hpbGQodCk7dmFyIG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7bi5jbGFzc05hbWU9IndhbmQtam95c3RpY2stcGFuZWwiLG4uaW5uZXJIVE1MPWRkKCksbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsYmQpLGUuYXBwZW5kQ2hpbGQobik7dmFyIGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7aS5jbGFzc05hbWU9IndhbmQtam95c3RpY2stYmFsbCIsaS5zZXRBdHRyaWJ1dGUoInJvbGUiLCJidXR0b24iKSxpLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsIldhbmQgXHU5MDY1XHU2M0E3XHU5NzYyXHU2NzdGIiksaS5zZXRBdHRyaWJ1dGUoInRpdGxlIiwiXHU3MEI5XHU1MUZCXHU2MjUzXHU1RjAwXHU5MDY1XHU2M0E3XHU5NzYyXHU2NzdGXHVGRjBDXHU2MkQ2XHU1MkE4XHU1M0VGXHU3OUZCXHU1MkE4XHU0RjREXHU3RjZFIiksaS5pbm5lckhUTUw9RygicGF3Iix7c2l6ZToyNSxzdHJva2VXaWR0aDoxLjYsY2xzOiJ3YW5kLWpveXN0aWNrLWxvZ28ifSksZS5hcHBlbmRDaGlsZChpKSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGUpLHIuam95c3RpY2tSb290RWw9ZSxyLmpveXN0aWNrQmFja2Ryb3BFbD10LHIuam95c3RpY2tQYW5lbEVsPW4sci5qb3lzdGlja0JhbGxFbD1pLGRzKCksaS5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVyZG93biIscGQpLGkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGEpe2EucHJldmVudERlZmF1bHQoKSxhLnN0b3BQcm9wYWdhdGlvbigpfSksdC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVyZG93biIsZnVuY3Rpb24oYSl7ci5qb3lzdGlja1Bpbm5lZE9wZW4mJnIuam95c3RpY2tHZXN0dXJlPT1udWxsJiYoYS5wcmV2ZW50RGVmYXVsdCgpLHZyKCkpfSksdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oYSl7YS5wcmV2ZW50RGVmYXVsdCgpLGEuc3RvcFByb3BhZ2F0aW9uKCl9KSxyLmpveXN0aWNrUmVzaXplSGFuZGxlcj1mdW5jdGlvbigpe2RzKCl9LHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLHIuam95c3RpY2tSZXNpemVIYW5kbGVyKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigib3JpZW50YXRpb25jaGFuZ2UiLHIuam95c3RpY2tSZXNpemVIYW5kbGVyKSxtcygpfX1mdW5jdGlvbiBwZChlKXtpZihjcygpJiYhKChlLnBvaW50ZXJUeXBlPT09Im1vdXNlInx8ZS5wb2ludGVyVHlwZT09PSJwZW4iKSYmZS5idXR0b24hPT0wKSYmci5qb3lzdGlja1BvaW50ZXJJZD09PW51bGwpe2UucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpO3ZhciB0PWUucG9pbnRlclR5cGU9PT0ibW91c2UifHxlLnBvaW50ZXJUeXBlPT09InBlbiI7ci5qb3lzdGlja1BvaW50ZXJJZD1lLnBvaW50ZXJJZCxyLmpveXN0aWNrUHJlc3NTdGFydD17eDplLmNsaWVudFgseTplLmNsaWVudFksdDpEYXRlLm5vdygpfSxyLmpveXN0aWNrR2VzdHVyZT0icGVuZGluZyI7dHJ5e3Iuam95c3RpY2tCYWxsRWwuc2V0UG9pbnRlckNhcHR1cmUoZS5wb2ludGVySWQpfWNhdGNoe310fHwoci5qb3lzdGlja0xvbmdQcmVzc1RpbWVyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtyLmpveXN0aWNrR2VzdHVyZT09PSJwZW5kaW5nIiYmZnMoKX0sc3ApKSxyLmpveXN0aWNrTW92ZUhhbmRsZXI9dmQsci5qb3lzdGlja1VwSGFuZGxlcj1tZCxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsci5qb3lzdGlja01vdmVIYW5kbGVyKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVydXAiLHIuam95c3RpY2tVcEhhbmRsZXIpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJjYW5jZWwiLHIuam95c3RpY2tVcEhhbmRsZXIpfX1mdW5jdGlvbiBmcygpe3Iuam95c3RpY2tHZXN0dXJlPSJtb3ZlIixyLmpveXN0aWNrUGlubmVkT3BlbiYmdnIoKSxyLmpveXN0aWNrQmFsbEVsJiZyLmpveXN0aWNrQmFsbEVsLmNsYXNzTGlzdC5hZGQoImRyYWdnaW5nIiksci5qb3lzdGlja0JhY2tkcm9wRWwmJnIuam95c3RpY2tCYWNrZHJvcEVsLmNsYXNzTGlzdC5hZGQoImFjdGl2ZSIpfWZ1bmN0aW9uIHBzKGUsdCl7aWYoci5qb3lzdGlja0JhbGxFbCl7dmFyIG49dGEoe3JpZ2h0OndpbmRvdy5pbm5lcldpZHRoLWUtZmkvMixib3R0b206d2luZG93LmlubmVySGVpZ2h0LXQtZmkvMn0pO3Iuam95c3RpY2tCYWxsRWwuc3R5bGUucmlnaHQ9bi5yaWdodCsicHgiLHIuam95c3RpY2tCYWxsRWwuc3R5bGUuYm90dG9tPW4uYm90dG9tKyJweCJ9fWZ1bmN0aW9uIHZkKGUpe2lmKCEoZS5wb2ludGVySWQhPT1yLmpveXN0aWNrUG9pbnRlcklkfHwhci5qb3lzdGlja0JhbGxFbCkpe2lmKGUucHJldmVudERlZmF1bHQoKSxyLmpveXN0aWNrR2VzdHVyZT09PSJtb3ZlIil7cHMoZS5jbGllbnRYLGUuY2xpZW50WSk7cmV0dXJufWlmKHIuam95c3RpY2tHZXN0dXJlPT09InBlbmRpbmciKXt2YXIgdD1lLmNsaWVudFgtci5qb3lzdGlja1ByZXNzU3RhcnQueCxuPWUuY2xpZW50WS1yLmpveXN0aWNrUHJlc3NTdGFydC55O01hdGguc3FydCh0KnQrbipuKTw9b3B8fChlLnBvaW50ZXJUeXBlPT09Im1vdXNlInx8ZS5wb2ludGVyVHlwZT09PSJwZW4iPyhmcygpLHBzKGUuY2xpZW50WCxlLmNsaWVudFkpKTooci5qb3lzdGlja0xvbmdQcmVzc1RpbWVyJiYoY2xlYXJUaW1lb3V0KHIuam95c3RpY2tMb25nUHJlc3NUaW1lciksci5qb3lzdGlja0xvbmdQcmVzc1RpbWVyPW51bGwpLHIuam95c3RpY2tHZXN0dXJlPSJjYW5jZWxsZWQiKSl9fX1mdW5jdGlvbiBtZChlKXtpZihlLnBvaW50ZXJJZD09PXIuam95c3RpY2tQb2ludGVySWQpe3Iuam95c3RpY2tMb25nUHJlc3NUaW1lciYmKGNsZWFyVGltZW91dChyLmpveXN0aWNrTG9uZ1ByZXNzVGltZXIpLHIuam95c3RpY2tMb25nUHJlc3NUaW1lcj1udWxsKTt2YXIgdD1yLmpveXN0aWNrR2VzdHVyZTtpZih0PT09InBlbmRpbmciKXt2YXIgbj1lLmNsaWVudFgtci5qb3lzdGlja1ByZXNzU3RhcnQueCxpPWUuY2xpZW50WS1yLmpveXN0aWNrUHJlc3NTdGFydC55O01hdGguc3FydChuKm4raSppKTw9bHAmJnlkKCl9ZWxzZSBpZih0PT09Im1vdmUiKXt2YXIgYT1yLmpveXN0aWNrQmFsbEVsP3Iuam95c3RpY2tCYWxsRWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk6bnVsbDthJiZjZCh3aW5kb3cuaW5uZXJXaWR0aC1hLnJpZ2h0LHdpbmRvdy5pbm5lckhlaWdodC1hLmJvdHRvbSl9dnMoKX19ZnVuY3Rpb24gdnMoKXtpZihyLmpveXN0aWNrTG9uZ1ByZXNzVGltZXImJihjbGVhclRpbWVvdXQoci5qb3lzdGlja0xvbmdQcmVzc1RpbWVyKSxyLmpveXN0aWNrTG9uZ1ByZXNzVGltZXI9bnVsbCksci5qb3lzdGlja0JhbGxFbCYmci5qb3lzdGlja1BvaW50ZXJJZCE9PW51bGwpdHJ5e3Iuam95c3RpY2tCYWxsRWwucmVsZWFzZVBvaW50ZXJDYXB0dXJlKHIuam95c3RpY2tQb2ludGVySWQpfWNhdGNoe31yLmpveXN0aWNrTW92ZUhhbmRsZXImJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsci5qb3lzdGlja01vdmVIYW5kbGVyKSxyLmpveXN0aWNrTW92ZUhhbmRsZXI9bnVsbCksci5qb3lzdGlja1VwSGFuZGxlciYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJ1cCIsci5qb3lzdGlja1VwSGFuZGxlciksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcmNhbmNlbCIsci5qb3lzdGlja1VwSGFuZGxlciksci5qb3lzdGlja1VwSGFuZGxlcj1udWxsKSxyLmpveXN0aWNrQmFsbEVsJiZyLmpveXN0aWNrQmFsbEVsLmNsYXNzTGlzdC5yZW1vdmUoImRyYWdnaW5nIiksci5qb3lzdGlja0JhY2tkcm9wRWwmJiFyLmpveXN0aWNrUGlubmVkT3BlbiYmci5qb3lzdGlja0JhY2tkcm9wRWwuY2xhc3NMaXN0LnJlbW92ZSgiYWN0aXZlIiksci5qb3lzdGlja1BvaW50ZXJJZD1udWxsLHIuam95c3RpY2tHZXN0dXJlPW51bGwsci5qb3lzdGlja1ByZXNzU3RhcnQ9bnVsbH1mdW5jdGlvbiBnZChlKXtpZihlPT09ImN0cmwifHxlPT09ImFsdCJ8fGU9PT0ic2hpZnQiKXtyLm1vZGlmaWVyc1tlXT0hci5tb2RpZmllcnNbZV0sbXIoKTtyZXR1cm59dmFyIHQ9X3QoKTtpZih0JiZhZSh0KSl7KGU9PT0iY3RybF9jInx8ZT09PSJlc2NhcGUiKSYmaGQodCxlKSx2aSgpLG1yKCk7cmV0dXJufXZhciBuPVhzKGUse2N0cmw6ci5tb2RpZmllcnMuY3RybCxhbHQ6ci5tb2RpZmllcnMuYWx0LHNoaWZ0OnIubW9kaWZpZXJzLnNoaWZ0fSk7biYmUXMobixlKSx2aSgpLG1yKCksRXAoKX1mdW5jdGlvbiBoZChlLHQpeyFlfHwhZS5pZHx8ZmV0Y2goIi9hcGkvc3RydWN0dXJlZC1zZXNzaW9ucy8iK2UuaWQrIi9tZXNzYWdlcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe2lucHV0OiIiLGludGVycnVwdDohMCxwcmVzZXJ2ZVF1ZXVlOiEwfSl9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLm9rP24uanNvbigpOm4uanNvbigpLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJue319KS50aGVuKGZ1bmN0aW9uKGkpe3Rocm93IG5ldyBFcnJvcihpJiZpLmVycm9yfHwiXHU0RTJEXHU2NUFEXHU1OTMxXHU4RDI1IChrZXk9Iit0KyIpIil9KX0pLnRoZW4oZnVuY3Rpb24obil7aWYobiYmbi5pZCYmKFEobiksbi5pZD09PXIuc2VsZWN0ZWRJZCkpe3ZhciBpPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihhKXtyZXR1cm4gYS5pZD09PW4uaWR9KXx8bjtyLmN1cnJlbnRNZXNzYWdlcz1qZShpLFhlKGksbi5vdXRwdXQsITEpKSxmcighMCksdHlwZW9mIGx0PT0iZnVuY3Rpb24iJiZsdCgpfX0pLmNhdGNoKGZ1bmN0aW9uKG4pe24mJm4ubWVzc2FnZSYmY29uc29sZS5kZWJ1ZygiW3dhbmRdIGpveXN0aWNrIGludGVycnVwdCBuby1vcDoiLG4ubWVzc2FnZSl9KX1mdW5jdGlvbiB5ZCgpe3Iuam95c3RpY2tQaW5uZWRPcGVuP3ZyKCk6RWQoKX1mdW5jdGlvbiBFZCgpe2lmKCEoIXIuam95c3RpY2tQYW5lbEVsfHwhci5qb3lzdGlja0JhbGxFbCkpe3Iuam95c3RpY2tQaW5uZWRPcGVuPSEwO3ZhciBlPXIuam95c3RpY2tCYWxsRWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7ci5qb3lzdGlja1BhbmVsRWwuc3R5bGUucmlnaHQ9TWF0aC5tYXgob24sd2luZG93LmlubmVyV2lkdGgtZS5yaWdodCkrInB4IixyLmpveXN0aWNrUGFuZWxFbC5zdHlsZS5ib3R0b209TWF0aC5tYXgob24sd2luZG93LmlubmVySGVpZ2h0LWUudG9wKzEwKSsicHgiLHIuam95c3RpY2tQYW5lbEVsLmNsYXNzTGlzdC5hZGQoImFjdGl2ZSIpLHIuam95c3RpY2tCYWxsRWwuY2xhc3NMaXN0LmFkZCgicGFuZWwtb3BlbiIpLHIuam95c3RpY2tCYWNrZHJvcEVsJiZyLmpveXN0aWNrQmFja2Ryb3BFbC5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKSxtcigpfX1mdW5jdGlvbiB2cigpe3Iuam95c3RpY2tQaW5uZWRPcGVuPSExLHIuam95c3RpY2tQYW5lbEVsJiZyLmpveXN0aWNrUGFuZWxFbC5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKSxyLmpveXN0aWNrQmFsbEVsJiZyLmpveXN0aWNrQmFsbEVsLmNsYXNzTGlzdC5yZW1vdmUoInBhbmVsLW9wZW4iKSxyLmpveXN0aWNrQmFja2Ryb3BFbCYmci5qb3lzdGlja0dlc3R1cmU9PW51bGwmJnIuam95c3RpY2tCYWNrZHJvcEVsLmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpfWZ1bmN0aW9uIG1yKCl7ci5qb3lzdGlja1BhbmVsRWwmJlsiY3RybCIsImFsdCJdLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9ci5qb3lzdGlja1BhbmVsRWwucXVlcnlTZWxlY3RvcignLndqcC1tb2RbZGF0YS1rZXk9IicrZSsnIl0nKTt0JiZ0LmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsISFyLm1vZGlmaWVyc1tlXSl9KX1mdW5jdGlvbiBiZChlKXt2YXIgdD1lLnRhcmdldCYmZS50YXJnZXQuY2xvc2VzdD9lLnRhcmdldC5jbG9zZXN0KCIud2pwLWNsb3NlIik6bnVsbDtpZih0KXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKSx2cigpO3JldHVybn12YXIgbj1lLnRhcmdldCYmZS50YXJnZXQuY2xvc2VzdD9lLnRhcmdldC5jbG9zZXN0KCIud2pwLWtleSIpOm51bGw7aWYobil7ZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCk7dmFyIGk9bi5nZXRBdHRyaWJ1dGUoImRhdGEta2V5Iik7aSYmZ2QoaSl9fWZ1bmN0aW9uIG1zKCl7dmFyIGU9ci5qb3lzdGlja1Jvb3RFbDtpZihlKXt2YXIgdD1jcygpO2UuY2xhc3NMaXN0LnRvZ2dsZSgidmlzaWJsZSIsdCksdHx8KChyLmpveXN0aWNrUG9pbnRlcklkIT09bnVsbHx8ci5qb3lzdGlja0dlc3R1cmUpJiZ2cygpLHIuam95c3RpY2tQaW5uZWRPcGVuJiZ2cigpLHIuam95c3RpY2tCYWNrZHJvcEVsJiZyLmpveXN0aWNrQmFja2Ryb3BFbC5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKSl9fWZ1bmN0aW9uIEZkKCl7ci5qb3lzdGlja0xvbmdQcmVzc1RpbWVyJiYoY2xlYXJUaW1lb3V0KHIuam95c3RpY2tMb25nUHJlc3NUaW1lciksci5qb3lzdGlja0xvbmdQcmVzc1RpbWVyPW51bGwpLHIuam95c3RpY2tNb3ZlSGFuZGxlciYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJtb3ZlIixyLmpveXN0aWNrTW92ZUhhbmRsZXIpLHIuam95c3RpY2tNb3ZlSGFuZGxlcj1udWxsKSxyLmpveXN0aWNrVXBIYW5kbGVyJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIixyLmpveXN0aWNrVXBIYW5kbGVyKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVyY2FuY2VsIixyLmpveXN0aWNrVXBIYW5kbGVyKSxyLmpveXN0aWNrVXBIYW5kbGVyPW51bGwpLHIuam95c3RpY2tSZXNpemVIYW5kbGVyJiYod2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsci5qb3lzdGlja1Jlc2l6ZUhhbmRsZXIpLHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJvcmllbnRhdGlvbmNoYW5nZSIsci5qb3lzdGlja1Jlc2l6ZUhhbmRsZXIpLHIuam95c3RpY2tSZXNpemVIYW5kbGVyPW51bGwpLHIuam95c3RpY2tSb290RWwmJnIuam95c3RpY2tSb290RWwucGFyZW50Tm9kZSYmci5qb3lzdGlja1Jvb3RFbC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHIuam95c3RpY2tSb290RWwpLHIuam95c3RpY2tSb290RWw9bnVsbCxyLmpveXN0aWNrUGFuZWxFbD1udWxsLHIuam95c3RpY2tCYWNrZHJvcEVsPW51bGwsci5qb3lzdGlja0JhbGxFbD1udWxsLHIuam95c3RpY2tQb2ludGVySWQ9bnVsbCxyLmpveXN0aWNrR2VzdHVyZT1udWxsLHIuam95c3RpY2tQcmVzc1N0YXJ0PW51bGwsci5qb3lzdGlja1Bpbm5lZE9wZW49ITF9ZnVuY3Rpb24gd2QoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7aWYoZSl7dmFyIHQ9IV9lKCk7ci5yZXNpemVIYW5kbGVyPWZ1bmN0aW9uKCl7cXQoITApO3ZhciBuPSFfZSgpO3QhPT1uJiYodD1uLCFuJiZyLnNpZGViYXJQaW5uZWQmJnIuc2Vzc2lvbnNEcmF3ZXJPcGVuPyhyLnNlc3Npb25zRHJhd2VyT3Blbj0hMSxTZSgid2FuZC1zaWRlYmFyLW9wZW4iLCExKSxUcigpKTpuJiZyLnNpZGViYXJQaW5uZWQmJiFyLnNlc3Npb25zRHJhd2VyT3BlbiYmKHIuc2Vzc2lvbnNEcmF3ZXJPcGVuPSEwLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsITApLFRyKCkpKX0sd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsci5yZXNpemVIYW5kbGVyKSx3aW5kb3cudmlzdWFsVmlld3BvcnQmJihyLnZpc3VhbFZpZXdwb3J0SGFuZGxlcj1mdW5jdGlvbigpe3F0KCEwKX0sd2luZG93LnZpc3VhbFZpZXdwb3J0LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsci52aXN1YWxWaWV3cG9ydEhhbmRsZXIpKSxyLnZpc2liaWxpdHlIYW5kbGVyPWZ1bmN0aW9uKCl7ZG9jdW1lbnQuaGlkZGVufHxvdCgidmlzaWJpbGl0eSIse2ZvcmNlUmVwbGF5OiEwfSl9LGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLHIudmlzaWJpbGl0eUhhbmRsZXIpLHIub3JpZW50YXRpb25IYW5kbGVyPWZ1bmN0aW9uKCl7b3QoIm9yaWVudGF0aW9uIix7Zm9yY2VSZXBsYXk6ITB9KX0sd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9yaWVudGF0aW9uY2hhbmdlIixyLm9yaWVudGF0aW9uSGFuZGxlcikscmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7cXQoITApfSl9fWZ1bmN0aW9uIENkKCl7ci50ZXJtaW5hbEhlYWx0aFRpbWVyfHwoci50ZXJtaW5hbEhlYWx0aFRpbWVyPXNldEludGVydmFsKGZ1bmN0aW9uKCl7aWYoISghci50ZXJtaW5hbHx8ci5jdXJyZW50VmlldyE9PSJ0ZXJtaW5hbCJ8fGRvY3VtZW50LmhpZGRlbikpe3ZhciBlPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbih1KXtyZXR1cm4gdS5pZD09PXIuc2VsZWN0ZWRJZH0pO2lmKCEoIWV8fGUuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCIpKXtvdCgiaGVhbHRoIik7dmFyIHQ9RGF0ZS5ub3coKSxuPXIubGFzdENodW5rQXQ+MCYmdC1yLmxhc3RDaHVua0F0PjMwMCxpPXQtci5sYXN0VGVybWluYWxSZXN5bmNBdD4zZTQsYT1yLmxhc3RDaHVua0F0PnIubGFzdFRlcm1pbmFsUmVzeW5jQXQ7aSYmYSYmKG58fGUuc3RhdHVzIT09InJ1bm5pbmciKSYmci50ZXJtaW5hbE91dHB1dCYma24oKX19fSw1ZTMpKX1mdW5jdGlvbiBCZCgpe3IudGVybWluYWxIZWFsdGhUaW1lciYmKGNsZWFySW50ZXJ2YWwoci50ZXJtaW5hbEhlYWx0aFRpbWVyKSxyLnRlcm1pbmFsSGVhbHRoVGltZXI9bnVsbCl9ZnVuY3Rpb24gZ3IoKXtCZCgpLHIucmVzaXplVGltZXImJihjbGVhclRpbWVvdXQoci5yZXNpemVUaW1lciksci5yZXNpemVUaW1lcj1udWxsKSxyLnJlc2l6ZU9ic2VydmVyJiYoci5yZXNpemVPYnNlcnZlci5kaXNjb25uZWN0KCksci5yZXNpemVPYnNlcnZlcj1udWxsKSxyLnJlc2l6ZUhhbmRsZXImJih3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIixyLnJlc2l6ZUhhbmRsZXIpLHIucmVzaXplSGFuZGxlcj1udWxsKSxyLnZpc3VhbFZpZXdwb3J0SGFuZGxlciYmd2luZG93LnZpc3VhbFZpZXdwb3J0JiYod2luZG93LnZpc3VhbFZpZXdwb3J0LnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsci52aXN1YWxWaWV3cG9ydEhhbmRsZXIpLHIudmlzdWFsVmlld3BvcnRIYW5kbGVyPW51bGwpLHIudmlzaWJpbGl0eUhhbmRsZXImJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIixyLnZpc2liaWxpdHlIYW5kbGVyKSxyLnZpc2liaWxpdHlIYW5kbGVyPW51bGwpLHIub3JpZW50YXRpb25IYW5kbGVyJiYod2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9yaWVudGF0aW9uY2hhbmdlIixyLm9yaWVudGF0aW9uSGFuZGxlciksci5vcmllbnRhdGlvbkhhbmRsZXI9bnVsbCksW1sibW91c2Vtb3ZlIiwicmVzaXplTW91c2VNb3ZlIl0sWyJtb3VzZXVwIiwicmVzaXplTW91c2VVcCJdLFsidG91Y2htb3ZlIiwicmVzaXplVG91Y2hNb3ZlIl0sWyJ0b3VjaGVuZCIsInJlc2l6ZVRvdWNoRW5kIl1dLmZvckVhY2goZnVuY3Rpb24oYSl7clthWzFdXSYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoYVswXSxyW2FbMV1dKSxyW2FbMV1dPW51bGwpfSksVW4oKTt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7aWYoci50ZXJtaW5hbFZpZXdwb3J0RWwmJihyLnRlcm1pbmFsVmlld3BvcnRTY3JvbGxIYW5kbGVyJiZyLnRlcm1pbmFsVmlld3BvcnRFbC5yZW1vdmVFdmVudExpc3RlbmVyKCJzY3JvbGwiLHIudGVybWluYWxWaWV3cG9ydFNjcm9sbEhhbmRsZXIpLHIudGVybWluYWxWaWV3cG9ydFRvdWNoSGFuZGxlciYmci50ZXJtaW5hbFZpZXdwb3J0RWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixyLnRlcm1pbmFsVmlld3BvcnRUb3VjaEhhbmRsZXIpLHIudGVybWluYWxWaWV3cG9ydFRvdWNoU3RhcnRIYW5kbGVyJiZyLnRlcm1pbmFsVmlld3BvcnRFbC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixyLnRlcm1pbmFsVmlld3BvcnRUb3VjaFN0YXJ0SGFuZGxlcikpLGUmJihyLnRlcm1pbmFsV2hlZWxIYW5kbGVyJiZlLnJlbW92ZUV2ZW50TGlzdGVuZXIoIndoZWVsIixyLnRlcm1pbmFsV2hlZWxIYW5kbGVyKSxyLnRlcm1pbmFsQ2xpY2tIYW5kbGVyJiZlLnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIixyLnRlcm1pbmFsQ2xpY2tIYW5kbGVyKSksci50ZXJtaW5hbFZpZXdwb3J0RWw9bnVsbCxyLnRlcm1pbmFsVmlld3BvcnRTY3JvbGxIYW5kbGVyPW51bGwsci50ZXJtaW5hbFZpZXdwb3J0VG91Y2hIYW5kbGVyPW51bGwsci50ZXJtaW5hbFZpZXdwb3J0VG91Y2hTdGFydEhhbmRsZXI9bnVsbCxyLnRlcm1pbmFsV2hlZWxIYW5kbGVyPW51bGwsci50ZXJtaW5hbENsaWNrSGFuZGxlcj1udWxsLHIudGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXImJihjbGVhclRpbWVvdXQoci50ZXJtaW5hbFNjcm9sbGJhckhpZGVUaW1lciksci50ZXJtaW5hbFNjcm9sbGJhckhpZGVUaW1lcj1udWxsKSxyLnRlcm1pbmFsU2Nyb2xsYmFyRWwmJnIudGVybWluYWxTY3JvbGxiYXJFbC5wYXJlbnROb2RlJiZyLnRlcm1pbmFsU2Nyb2xsYmFyRWwucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChyLnRlcm1pbmFsU2Nyb2xsYmFyRWwpLHIudGVybWluYWxTY3JvbGxiYXJFbD1udWxsLHIudGVybWluYWxTY3JvbGxiYXJUaHVtYkVsPW51bGwsci50ZXJtaW5hbFNjcm9sbGJhckRyYWdnaW5nPSExLHIudGVybWluYWxTY3JvbGxiYXJSYWZQZW5kaW5nPSExLHIudGVybWluYWwmJihyLnRlcm1pbmFsLmRlc3Ryb3koKSxyLnRlcm1pbmFsPW51bGwpLGUpZm9yKHZhciB0PWUucXVlcnlTZWxlY3RvckFsbCgiLnRlcm1pbmFsLXNjcm9sbC13cmFwIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgaT10W25dO2kucGFyZW50Tm9kZT09PWUmJmUucmVtb3ZlQ2hpbGQoaSl9b2EoKSxyLnN5bmNPdXRwdXRCdWZmZXI9bnVsbCxyLnN5bmNPdXRwdXREZWFkbGluZT0wLHIuc3luY0ZyYW1pbmdSZXNpZHVlPSExLHIudGVybWluYWxTZXNzaW9uSWQ9bnVsbCxyLnRlcm1pbmFsT3V0cHV0PSIiLHIudGVybWluYWxPdXRwdXRNYXJrZXI9MCxyLnRlcm1pbmFsQXV0b0ZvbGxvdz0hMCxyLnNob3dUZXJtaW5hbEp1bXBUb0JvdHRvbT0hMSx2dCgpLHIuc29mdFJlc3luY1RpbWVyJiYoY2xlYXJUaW1lb3V0KHIuc29mdFJlc3luY1RpbWVyKSxyLnNvZnRSZXN5bmNUaW1lcj1udWxsKSxyLl9yZXN5bmNDaHVua1RhaWxUaW1lciYmKGNsZWFyVGltZW91dChyLl9yZXN5bmNDaHVua1RhaWxUaW1lciksci5fcmVzeW5jQ2h1bmtUYWlsVGltZXI9bnVsbCksci5fcmVzeW5jQ2h1bmtMYXN0QXQ9MCxyLl9yZXN5bmNTdGF0c1dpbmRvd1N0YXJ0PTAsci5fcmVzeW5jU3RhdHNDb3VudD0wLHIuX3Jlc3luY0xhc3RXYXJuQXQ9MCxyLl9yZXN5bmNJblByb2dyZXNzPSExLHIubGFzdFJlc2l6ZT17Y29sczowLHJvd3M6MH0sRmQoKX1mdW5jdGlvbiB0aShlLHQpe2lmKHIuc2VsZWN0ZWRJZCl7dmFyIG49ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLmlkPT09ci5zZWxlY3RlZElkfSk7aWYoISghbnx8bi5zdGF0dXMhPT0icnVubmluZyIpJiYhYWUobikpe2U+MjU2JiYoZT0yNTYpLHQ+MTYwJiYodD0xNjApO3ZhciBpPXtjb2xzOmUscm93czp0fTsoci5sYXN0UmVzaXplLmNvbHMhPT1pLmNvbHN8fHIubGFzdFJlc2l6ZS5yb3dzIT09aS5yb3dzKSYmKHIubGFzdFJlc2l6ZT1pLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrci5zZWxlY3RlZElkKyIvcmVzaXplIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShpKX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSkpfX19ZnVuY3Rpb24gb3QoZSx0KXtpZighci50ZXJtaW5hbClyZXR1cm4hMTt2YXIgbj10fHx7fSxpPW4uZm9yY2VSZXBsYXk9PT0hMCxhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKTtpZighYXx8YS5vZmZzZXRXaWR0aD09PTB8fGEub2Zmc2V0SGVpZ2h0PT09MClyZXR1cm4gaHIoZXx8ImZpdC1yZXRyeSIse2ZvcmNlUmVwbGF5Oml9KSwhMTt2YXIgdT1yLnRlcm1pbmFsQXV0b0ZvbGxvd3x8YWEoKSxzPXIudGVybWluYWwuY29scyxvPXIudGVybWluYWwucm93cztyZXR1cm4gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7cmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7aWYoci50ZXJtaW5hbCl7dHlwZW9mIHIudGVybWluYWwucmVtZWFzdXJlPT0iZnVuY3Rpb24iJiZyLnRlcm1pbmFsLnJlbWVhc3VyZSgpLHRpKHIudGVybWluYWwuY29scyxyLnRlcm1pbmFsLnJvd3MpO3ZhciBsPXIudGVybWluYWwuY29scyE9PXN8fHIudGVybWluYWwucm93cyE9PW87IWwmJmkmJnIudGVybWluYWxPdXRwdXQmJmtuKHtza2lwRml0OiEwfSksdSYmRXQoImZvcmNlIil9fSl9KSwhMH1mdW5jdGlvbiBocihlLHQpe2lmKCFyLnRlcm1pbmFsKXJldHVybjt2YXIgbj10fHx7fSxpPW4uZm9yY2VSZXBsYXkhPT0hMSxhPTAsdT04O2Z1bmN0aW9uIHMoKXtpZihyLnRlcm1pbmFsKXt2YXIgbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7aWYobyYmby5vZmZzZXRIZWlnaHQsbyYmby5vZmZzZXRXaWR0aD4wJiZvLm9mZnNldEhlaWdodD4wKXtvdChlLHtmb3JjZVJlcGxheTppfSk7cmV0dXJufSsrYT49dXx8KGE8PTQ/cmVxdWVzdEFuaW1hdGlvbkZyYW1lKHMpOnNldFRpbWVvdXQocywzMikpfX1zKCl9ZnVuY3Rpb24gcXQoZSl7ci5yZXNpemVUaW1lciYmKGNsZWFyVGltZW91dChyLnJlc2l6ZVRpbWVyKSxyLnJlc2l6ZVRpbWVyPW51bGwpO3ZhciB0PWU/MDoxMDA7ci5yZXNpemVUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci5yZXNpemVUaW1lcj1udWxsLHJlcXVlc3RBbmltYXRpb25GcmFtZShEZCl9LHQpfWZ1bmN0aW9uIERkKCl7aWYoci50ZXJtaW5hbCl7dmFyIGU9ci50ZXJtaW5hbEF1dG9Gb2xsb3d8fGFhKCk7ZSYmRXQoImZvcmNlIiksdGkoci50ZXJtaW5hbC5jb2xzLHIudGVybWluYWwucm93cyl9fWZ1bmN0aW9uIFF0KGUpe3Iud29ya2luZ0Rpcj1lO3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC13b3JraW5nLWRpciIsZSl9Y2F0Y2h7fWtkKGUpfWZ1bmN0aW9uIG5hKGUpe2ZldGNoKCIvYXBpL3JlY2VudC1wYXRocyIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7ZSh0fHxbXSl9KS5jYXRjaChmdW5jdGlvbigpe2UoW10pfSl9ZnVuY3Rpb24ga2QoZSl7cmV0dXJuIGZldGNoKCIvYXBpL3JlY2VudC1wYXRocyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe3BhdGg6ZX0pfSkuY2F0Y2goZnVuY3Rpb24oKXt9KX1mdW5jdGlvbiByYShlKXt2YXIgdD1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24obil7cmV0dXJuIG4uaWQ9PT1lfSk7dCYmdC5zdGF0dXMhPT0icnVubmluZyImJiFhZSh0KT9pbyhlKTpSdChlKSxXdCgpfWZ1bmN0aW9uIEFkKGUpe3ZhciB0PWUudGFyZ2V0O2lmKCEoIXR8fCEodCBpbnN0YW5jZW9mIEVsZW1lbnQpKSl7dmFyIG49dC5jbG9zZXN0KCIuc2lkZWJhci1jb2xsYXBzZWQtdGlsZSIpO2lmKG4mJm4gaW5zdGFuY2VvZiBIVE1MRWxlbWVudCl7aWYobi5kYXRhc2V0LmNvbGxhcHNlZE5ld1Nlc3Npb24pe2UucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpLEdhKCk7cmV0dXJufWlmKG4uZGF0YXNldC5jb2xsYXBzZWRTZXNzaW9uSWQpe2UucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpLHJhKG4uZGF0YXNldC5jb2xsYXBzZWRTZXNzaW9uSWQpO3JldHVybn1pZihuLmRhdGFzZXQuY29sbGFwc2VkSGlzdG9yeUlkKXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKTt2YXIgaT1uLmRhdGFzZXQuY29sbGFwc2VkSGlzdG9yeUlkLGE9bi5kYXRhc2V0LmN3ZHx8IiI7bWkoaSxhKS50aGVuKGZ1bmN0aW9uKHYpe3YmJnYuaWQmJihyLnNlbGVjdGVkSWQ9di5pZCxGZSgpLHIuZHJhZnRzW3YuaWRdPSIiLGZuKCkudGhlbihmdW5jdGlvbigpe1J0KHYuaWQpfSkpfSk7cmV0dXJufX12YXIgdT10LmNsb3Nlc3QoIiNjbGF1ZGUtaGlzdG9yeS10b2dnbGUiKTtpZih1KXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKSxyLmNsYXVkZUhpc3RvcnlFeHBhbmRlZD0hci5jbGF1ZGVIaXN0b3J5RXhwYW5kZWQsci5jbGF1ZGVIaXN0b3J5RXhwYW5kZWQmJiFyLmNsYXVkZUhpc3RvcnlMb2FkZWQmJiRyKCksdmUoKTtyZXR1cm59dmFyIHM9dC5jbG9zZXN0KCJbZGF0YS1hY3Rpb25dIik7aWYocyYmcyBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KXtpZihlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKSxzLmRhdGFzZXQuYWN0aW9uPT09InRvZ2dsZS1tYW5hZ2UtbW9kZSIpamMoKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0ic2VsZWN0LWFsbC12aXNpYmxlIilRdSgpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJjbGVhci1zZWxlY3Rpb24iKVdjKCk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09ImRlbGV0ZS1zZWxlY3RlZCIpemMoKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0idG9nZ2xlLXNlbGVjdGlvbiIpZHIocy5kYXRhc2V0LmtpbmQscy5kYXRhc2V0LmlkKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0iZGVsZXRlLXNlc3Npb24iJiZzLmRhdGFzZXQuc2Vzc2lvbklkKShmdW5jdGlvbih2KXtEbigiXHU3ODZFXHU4QkE0XHU1MjIwXHU5NjY0XHU4RkQ5XHU0RTJBXHU0RjFBXHU4QkREXHU1NDE3XHVGRjFGXHU2QjY0XHU2NENEXHU0RjVDXHU2NUUwXHU2Q0Q1XHU2NEE0XHU5NTAwXHUzMDAyIix7dGl0bGU6Ilx1NTIyMFx1OTY2NFx1NEYxQVx1OEJERCJ9KS50aGVuKGZ1bmN0aW9uKGcpe2cmJlpzKHYpfSl9KShzLmRhdGFzZXQuc2Vzc2lvbklkKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0iZGVsZXRlLWhpc3RvcnkiJiZzLmRhdGFzZXQuY2xhdWRlU2Vzc2lvbklkKShmdW5jdGlvbih2LGcpe0RuKCJcdTc4NkVcdThCQTRcdTk2OTBcdTg1Q0ZcdThGRDlcdTY3NjEgQ2xhdWRlIFx1NTM4Nlx1NTNGMlx1NTQxN1x1RkYxRiIse3RpdGxlOiJcdTk2OTBcdTg1Q0ZcdTUzODZcdTUzRjJcdTRGMUFcdThCREQiLG9rTGFiZWw6Ilx1OTY5MFx1ODVDRiJ9KS50aGVuKGZ1bmN0aW9uKGgpe2gmJmVvKHYsZyl9KX0pKHMuZGF0YXNldC5jbGF1ZGVTZXNzaW9uSWQscy5jbG9zZXN0KCIuc2Vzc2lvbi1pdGVtIikpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJ0b2dnbGUtaGlzdG9yeS1kaXJlY3RvcnkiJiZzLmRhdGFzZXQuY3dkKXt2YXIgbz1zLmRhdGFzZXQuY3dkO3IuY2xhdWRlSGlzdG9yeUV4cGFuZGVkRGlyc1tvXT0hci5jbGF1ZGVIaXN0b3J5RXhwYW5kZWREaXJzW29dLHZlKCl9ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09ImRlbGV0ZS1oaXN0b3J5LWRpcmVjdG9yeSImJnMuZGF0YXNldC5jd2QpKGZ1bmN0aW9uKHYsZyl7dmFyIGg9QXAodiksbT1qbigpLmZpbHRlcihmdW5jdGlvbihFKXtyZXR1cm4gRS5jd2Q9PT12fSkubGVuZ3RoO0RuKCJcdTc4NkVcdThCQTRcdTZFMDVcdTdBN0FcdTZCNjRcdTc2RUVcdTVGNTVcdTRFMEJcdTc2ODQgIittKyIgXHU2NzYxIENsYXVkZSBcdTUzODZcdTUzRjJcdTU0MTdcdUZGMUYiLHt0aXRsZToiXHU2RTA1XHU3QTdBXHU3NkVFXHU1RjU1XHU1Mzg2XHU1M0YyIixva0xhYmVsOiJcdTZFMDVcdTdBN0EifSkudGhlbihmdW5jdGlvbihFKXtFJiYodG8oaCwhMCksa3AodixnLGgpKX0pfSkocy5kYXRhc2V0LmN3ZCxzKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0iY2xlYXItYWxsLWhpc3RvcnkiKVVjKCk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09InRvZ2dsZS1hcmNoaXZlZC1ncm91cCIpci5hcmNoaXZlZEV4cGFuZGVkPSFyLmFyY2hpdmVkRXhwYW5kZWQsdmUoKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0icmVzdW1lIiYmcy5kYXRhc2V0LnNlc3Npb25JZClJcChzKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0icmVzdW1lLWhpc3RvcnkiJiZzLmRhdGFzZXQuY2xhdWRlU2Vzc2lvbklkKU9wKHMpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJyZXN1bWUtY29kZXgtaGlzdG9yeSImJnMuZGF0YXNldC5jbGF1ZGVTZXNzaW9uSWQpVHAocyk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09ImRlbGV0ZS1jb2RleC1oaXN0b3J5IiYmcy5kYXRhc2V0LmNsYXVkZVNlc3Npb25JZClNcChzKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0idG9nZ2xlLWNvZGV4LWhpc3RvcnktZGlyZWN0b3J5IiYmcy5kYXRhc2V0LmN3ZCl7dmFyIGw9cy5kYXRhc2V0LmN3ZDtyLmNvZGV4SGlzdG9yeUV4cGFuZGVkRGlyc1tsXT0hci5jb2RleEhpc3RvcnlFeHBhbmRlZERpcnNbbF0sdmUoKX1lbHNlIHMuZGF0YXNldC5hY3Rpb249PT0id29ya3RyZWUtbWVyZ2UiJiZzLmRhdGFzZXQuc2Vzc2lvbklkP1FvKHMuZGF0YXNldC5zZXNzaW9uSWQpOnMuZGF0YXNldC5hY3Rpb249PT0id29ya3RyZWUtY2xlYW51cCImJnMuZGF0YXNldC5zZXNzaW9uSWQmJiRvKHMuZGF0YXNldC5zZXNzaW9uSWQpO3JldHVybn12YXIgYz10LmNsb3Nlc3QoIi5zZXNzaW9uLWl0ZW0iKTtpZihjKXtpZihyLnNlc3Npb25zTWFuYWdlTW9kZSl7Yy5kYXRhc2V0LnNlc3Npb25JZD9kcigic2Vzc2lvbnMiLGMuZGF0YXNldC5zZXNzaW9uSWQpOmMuZGF0YXNldC5jbGF1ZGVIaXN0b3J5SWQmJmRyKCJoaXN0b3J5IixjLmRhdGFzZXQuY2xhdWRlSGlzdG9yeUlkKTtyZXR1cm59aWYoYy5jbGFzc0xpc3QuY29udGFpbnMoInN3aXBlZCIpKXtBcigpO3JldHVybn1pZihubylyZXR1cm47aWYoYy5kYXRhc2V0LnNlc3Npb25JZClyYShjLmRhdGFzZXQuc2Vzc2lvbklkKTtlbHNlIGlmKGMuZGF0YXNldC5jbGF1ZGVIaXN0b3J5SWQpe3ZhciBmPWMuZGF0YXNldC5jbGF1ZGVIaXN0b3J5SWQsZD1jLmRhdGFzZXQuY3dkO21pKGYsZCkudGhlbihmdW5jdGlvbih2KXt2JiZ2LmlkJiYoci5zZWxlY3RlZElkPXYuaWQsRmUoKSxyLmRyYWZ0c1t2LmlkXT0iIixmbigpLnRoZW4oZnVuY3Rpb24oKXtSdCh2LmlkKSxXdCgpfSkpfSl9fX19ZnVuY3Rpb24geGQoZSl7aWYoIShlLmtleSE9PSJFbnRlciImJmUua2V5IT09IiAiKSl7dmFyIHQ9ZS50YXJnZXQuY2xvc2VzdCgiLnNlc3Npb24taXRlbSIpO2lmKHQpe2lmKGUucHJldmVudERlZmF1bHQoKSxyLnNlc3Npb25zTWFuYWdlTW9kZSl7dC5kYXRhc2V0LnNlc3Npb25JZD9kcigic2Vzc2lvbnMiLHQuZGF0YXNldC5zZXNzaW9uSWQpOnQuZGF0YXNldC5jbGF1ZGVIaXN0b3J5SWQmJmRyKCJoaXN0b3J5Iix0LmRhdGFzZXQuY2xhdWRlSGlzdG9yeUlkKTtyZXR1cm59aWYodC5kYXRhc2V0LnNlc3Npb25JZClyYSh0LmRhdGFzZXQuc2Vzc2lvbklkKTtlbHNlIGlmKHQuZGF0YXNldC5jbGF1ZGVIaXN0b3J5SWQpe3ZhciBuPXQuZGF0YXNldC5jbGF1ZGVIaXN0b3J5SWQsaT10LmRhdGFzZXQuY3dkO21pKG4saSkudGhlbihmdW5jdGlvbihhKXthJiZhLmlkJiYoci5zZWxlY3RlZElkPWEuaWQsRmUoKSxyLmRyYWZ0c1thLmlkXT0iIixmbigpLnRoZW4oZnVuY3Rpb24oKXtSdChhLmlkKSxXdCgpfSkpfSl9fX19ZnVuY3Rpb24gaWEoZSx0KXt2YXIgbj1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1yLnNlbGVjdGVkSWR9KTtpZihuKXt2YXIgaT1uW2VdO2lmKCFpKXtrKCJcdTVGNTNcdTUyNERcdTRGMUFcdThCRERcdTZDQTFcdTY3MDlcdTUzRUZcdTU5MERcdTUyMzZcdTc2ODRcdTUxODVcdTVCQjlcdTMwMDIiLCJlcnJvciIpO3JldHVybn1QcihTdHJpbmcoaSksbnVsbCxmdW5jdGlvbigpe2sodHx8Ilx1NURGMlx1NTkwRFx1NTIzNiIsImluZm8iKX0pfX1mdW5jdGlvbiBEdCgpe3JldHVybiFyLnRlcm1pbmFsfHwhci50ZXJtaW5hbC5lbGVtZW50P251bGw6KHIudGVybWluYWxWaWV3cG9ydEVsPXIudGVybWluYWwuZWxlbWVudCxyLnRlcm1pbmFsVmlld3BvcnRFbCl9ZnVuY3Rpb24gVW4oKXtyLnRlcm1pbmFsU2Nyb2xsSWRsZVRpbWVyJiYoY2xlYXJUaW1lb3V0KHIudGVybWluYWxTY3JvbGxJZGxlVGltZXIpLHIudGVybWluYWxTY3JvbGxJZGxlVGltZXI9bnVsbCl9ZnVuY3Rpb24gdnQoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVybWluYWwtanVtcC1ib3R0b20iKSx0PSEhci5zZWxlY3RlZElkJiZyLmN1cnJlbnRWaWV3PT09InRlcm1pbmFsIiYmIXIudGVybWluYWxBdXRvRm9sbG93JiYhZ3MoKTtyLnNob3dUZXJtaW5hbEp1bXBUb0JvdHRvbT10LGUmJmUuY2xhc3NMaXN0LnRvZ2dsZSgidmlzaWJsZSIsdCk7dmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO24mJm4uY2xhc3NMaXN0LnRvZ2dsZSgiaGFzLWp1bXAtYnRuIix0KX1mdW5jdGlvbiBhYSgpe3ZhciBlPUR0KCk7aWYoIWUpcmV0dXJuITA7dmFyIHQ9ZS5zY3JvbGxIZWlnaHQtZS5jbGllbnRIZWlnaHQtZS5zY3JvbGxUb3A7cmV0dXJuIHQ8PXIudGVybWluYWxTY3JvbGxUaHJlc2hvbGR9ZnVuY3Rpb24gZ3MoKXt2YXIgZT1EdCgpO2lmKCFlKXJldHVybiEwO3ZhciB0PWUuc2Nyb2xsSGVpZ2h0LWUuY2xpZW50SGVpZ2h0LWUuc2Nyb2xsVG9wO3JldHVybiB0PD0yfWZ1bmN0aW9uIGhzKGUpe2lmKHIudGVybWluYWwpe3ZhciB0PUR0KCk7aWYodCl7dmFyIG49ZT81MDA6MTIwO3IudGVybWluYWxQcm9ncmFtbWF0aWNTY3JvbGxVbnRpbD1NYXRoLm1heChyLnRlcm1pbmFsUHJvZ3JhbW1hdGljU2Nyb2xsVW50aWwsRGF0ZS5ub3coKStuKSxlP3Quc2Nyb2xsVG8oe3RvcDp0LnNjcm9sbEhlaWdodCxiZWhhdmlvcjoic21vb3RoIn0pOnQuc2Nyb2xsVG9wPXQuc2Nyb2xsSGVpZ2h0fX19ZnVuY3Rpb24gdWEoKXtyLnRlcm1pbmFsQXV0b0ZvbGxvdz0hMSxVbigpLHIudGVybWluYWxQcm9ncmFtbWF0aWNTY3JvbGxVbnRpbD0wLHIudGVybWluYWwmJiJfc2hvdWxkU2Nyb2xsVG9Cb3R0b20iaW4gci50ZXJtaW5hbCYmKHIudGVybWluYWwuX3Nob3VsZFNjcm9sbFRvQm90dG9tPSExKSx2dCgpfWZ1bmN0aW9uIEV0KGUpe2lmKHIudGVybWluYWwpe3ZhciB0PWU9PT0iZm9yY2UiO2lmKHQpe3IudGVybWluYWxBdXRvRm9sbG93PSEwLFVuKCksaHMoITEpLHZ0KCk7cmV0dXJufWlmKCFyLnRlcm1pbmFsQXV0b0ZvbGxvdyl7dnQoKTtyZXR1cm59aHMoITEpLHZ0KCl9fWZ1bmN0aW9uIFNkKGUpe3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3QuY2xhc3NOYW1lPSJ0ZXJtaW5hbC1zY3JvbGxiYXIiO3ZhciBuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO24uY2xhc3NOYW1lPSJ0ZXJtaW5hbC1zY3JvbGxiYXItdHJhY2siO3ZhciBpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2kuY2xhc3NOYW1lPSJ0ZXJtaW5hbC1zY3JvbGxiYXItdGh1bWIiLG4uYXBwZW5kQ2hpbGQoaSksdC5hcHBlbmRDaGlsZChuKSxlLmFwcGVuZENoaWxkKHQpLHIudGVybWluYWxTY3JvbGxiYXJFbD10LHIudGVybWluYWxTY3JvbGxiYXJUaHVtYkVsPWksci50ZXJtaW5hbFNjcm9sbGJhckhpZGVUaW1lcj1udWxsLHIudGVybWluYWxTY3JvbGxiYXJEcmFnZ2luZz0hMSxyLnRlcm1pbmFsU2Nyb2xsYmFyUmFmUGVuZGluZz0hMTtmdW5jdGlvbiBhKCl7ci50ZXJtaW5hbFNjcm9sbGJhckhpZGVUaW1lciYmKGNsZWFyVGltZW91dChyLnRlcm1pbmFsU2Nyb2xsYmFySGlkZVRpbWVyKSxyLnRlcm1pbmFsU2Nyb2xsYmFySGlkZVRpbWVyPW51bGwpLHQuY2xhc3NMaXN0LmFkZCgidmlzaWJsZSIpfWZ1bmN0aW9uIHUoKXtyLnRlcm1pbmFsU2Nyb2xsYmFyRHJhZ2dpbmd8fChyLnRlcm1pbmFsU2Nyb2xsYmFySGlkZVRpbWVyJiZjbGVhclRpbWVvdXQoci50ZXJtaW5hbFNjcm9sbGJhckhpZGVUaW1lciksci50ZXJtaW5hbFNjcm9sbGJhckhpZGVUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci50ZXJtaW5hbFNjcm9sbGJhckhpZGVUaW1lcj1udWxsLHIudGVybWluYWxTY3JvbGxiYXJEcmFnZ2luZ3x8dC5jbGFzc0xpc3QucmVtb3ZlKCJ2aXNpYmxlIil9LDE1MDApKX1mdW5jdGlvbiBzKCl7ci50ZXJtaW5hbFNjcm9sbGJhclJhZlBlbmRpbmc9ITE7dmFyIG09RHQoKTtpZihtKXt2YXIgRT1tLnNjcm9sbEhlaWdodCxDPW0uY2xpZW50SGVpZ2h0O2lmKEU8PUMpe3QuY2xhc3NMaXN0LnJlbW92ZSgidmlzaWJsZSIpO3JldHVybn12YXIgYj1uLmNsaWVudEhlaWdodCxCPU1hdGgubWF4KDI4LEMvRSpiKSxGPUUtQyx4PW0uc2Nyb2xsVG9wL0YsUz14KihiLUIpO2kuc3R5bGUuaGVpZ2h0PUIrInB4IixpLnN0eWxlLnRvcD1TKyJweCJ9fWZ1bmN0aW9uIG8oKXtyLnRlcm1pbmFsU2Nyb2xsYmFyUmFmUGVuZGluZ3x8KHIudGVybWluYWxTY3JvbGxiYXJSYWZQZW5kaW5nPSEwLHJlcXVlc3RBbmltYXRpb25GcmFtZShzKSl9dmFyIGw9RHQoKTtsJiZsLmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsZnVuY3Rpb24oKXthKCksbygpLHUoKX0se3Bhc3NpdmU6ITB9KSxuLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsZnVuY3Rpb24obSl7aWYobS50YXJnZXQhPT1pKXttLnByZXZlbnREZWZhdWx0KCk7dmFyIEU9RHQoKTtpZihFKXt2YXIgQz1uLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGI9KG0uY2xpZW50WS1DLnRvcCkvQy5oZWlnaHQsQj1FLnNjcm9sbEhlaWdodC1FLmNsaWVudEhlaWdodDtFLnNjcm9sbFRvcD1iKkJ9fX0pO3ZhciBjPTAsZj0wO2kuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixmdW5jdGlvbihtKXttLnByZXZlbnREZWZhdWx0KCksbS5zdG9wUHJvcGFnYXRpb24oKSxyLnRlcm1pbmFsU2Nyb2xsYmFyRHJhZ2dpbmc9ITAsaS5jbGFzc0xpc3QuYWRkKCJkcmFnZ2luZyIpLGM9bS5jbGllbnRZO3ZhciBFPUR0KCk7Zj1FP0Uuc2Nyb2xsVG9wOjAsZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIixkKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXVwIix2KX0pO2Z1bmN0aW9uIGQobSl7bS5wcmV2ZW50RGVmYXVsdCgpO3ZhciBFPUR0KCk7aWYoRSl7dmFyIEM9bi5jbGllbnRIZWlnaHQsYj1FLnNjcm9sbEhlaWdodCxCPUUuY2xpZW50SGVpZ2h0LEY9Yi1CO2lmKCEoRjw9MCkpe3ZhciB4PU1hdGgubWF4KDI4LEIvYipDKSxTPUMteDtpZighKFM8PTApKXt2YXIgaj1tLmNsaWVudFktYyxSPWovUypGO0Uuc2Nyb2xsVG9wPWYrUn19fX1mdW5jdGlvbiB2KCl7ci50ZXJtaW5hbFNjcm9sbGJhckRyYWdnaW5nPSExLGkuY2xhc3NMaXN0LnJlbW92ZSgiZHJhZ2dpbmciKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLGQpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLHYpLHUoKX1pLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLGZ1bmN0aW9uKG0pe2lmKG0udG91Y2hlcy5sZW5ndGg9PT0xKXttLnN0b3BQcm9wYWdhdGlvbigpLHIudGVybWluYWxTY3JvbGxiYXJEcmFnZ2luZz0hMCxpLmNsYXNzTGlzdC5hZGQoImRyYWdnaW5nIiksYz1tLnRvdWNoZXNbMF0uY2xpZW50WTt2YXIgRT1EdCgpO2Y9RT9FLnNjcm9sbFRvcDowLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsZyx7cGFzc2l2ZTohMX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIixoKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaGNhbmNlbCIsaCl9fSx7cGFzc2l2ZTohMX0pO2Z1bmN0aW9uIGcobSl7aWYobS50b3VjaGVzLmxlbmd0aD09PTEpe20ucHJldmVudERlZmF1bHQoKTt2YXIgRT1EdCgpO2lmKEUpe3ZhciBDPW4uY2xpZW50SGVpZ2h0LGI9RS5zY3JvbGxIZWlnaHQsQj1FLmNsaWVudEhlaWdodCxGPWItQjtpZighKEY8PTApKXt2YXIgeD1NYXRoLm1heCgyOCxCL2IqQyksUz1DLXg7aWYoIShTPD0wKSl7dmFyIGo9bS50b3VjaGVzWzBdLmNsaWVudFktYyxSPWovUypGO0Uuc2Nyb2xsVG9wPWYrUn19fX19ZnVuY3Rpb24gaCgpe3IudGVybWluYWxTY3JvbGxiYXJEcmFnZ2luZz0hMSxpLmNsYXNzTGlzdC5yZW1vdmUoImRyYWdnaW5nIiksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixnKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsaCksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2hjYW5jZWwiLGgpLHUoKX10LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZW50ZXIiLGZ1bmN0aW9uKCl7YSgpfSksdC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixmdW5jdGlvbigpe3IudGVybWluYWxTY3JvbGxiYXJEcmFnZ2luZ3x8dSgpfSksbygpfWZ1bmN0aW9uIElkKGUpe3JldHVybiBlPDQzNTI/ITE6ZT49NDM1MiYmZTw9NDQ0N3x8ZT49OTAwMSYmZTw9OTAwMnx8ZT49MTE5MDQmJmU8PTEyMzUwfHxlPj0xMjM1MyYmZTw9MTMzMTF8fGU+PTEzMzEyJiZlPD0xOTkwM3x8ZT49MTk5NjgmJmU8PTQwOTU5fHxlPj00MDk2MCYmZTw9NDIxOTF8fGU+PTQ0MDMyJiZlPD01NTIwM3x8ZT49NjM3NDQmJmU8PTY0MjU1fHxlPj02NTA3MiYmZTw9NjUxMDN8fGU+PTY1MjgwJiZlPD02NTM3Nnx8ZT49NjU1MDQmJmU8PTY1NTEwfHxlPj0xMjY5NzYmJmU8PTEyOTUzNXx8ZT49MTMxMDcyJiZlPD0xOTY2MDV8fGU+PTE5NjYwOCYmZTw9MjYyMTQxfXZhciB5cz0iXHUyMDYwIjtmdW5jdGlvbiBFcygpe3JldHVybnttb2RlOiJub3JtYWwifX1mdW5jdGlvbiBUZChlKXtyZXR1cm4hL1teXHgwMC1ceDdmXS8udGVzdChlKSYmZS5pbmRleE9mKCJceDFCIik9PT0tMX1mdW5jdGlvbiBMZChlLHQpe2lmKCFlKXJldHVybiIiO3ZhciBuPVN0cmluZyhlKTtpZih0Lm1vZGU9PT0ibm9ybWFsIiYmVGQobikpcmV0dXJuIG47Zm9yKHZhciBpPSIiLGE9MDthPG4ubGVuZ3RoO2ErKyl7dmFyIHU9bi5jaGFyQ29kZUF0KGEpLHM9dSxvPTE7aWYodT49NTUyOTYmJnU8PTU2MzE5JiZhKzE8bi5sZW5ndGgpe3ZhciBsPW4uY2hhckNvZGVBdChhKzEpO2w+PTU2MzIwJiZsPD01NzM0MyYmKHM9KHUtNTUyOTYpKjEwMjQrKGwtNTYzMjApKzY1NTM2LG89Mil9dmFyIGM9bz09PTI/bi5zdWJzdHIoYSwyKTpuLmNoYXJBdChhKTtzd2l0Y2godC5tb2RlKXtjYXNlIm5vcm1hbCI6cz09PTI3Pyh0Lm1vZGU9ImVzYyIsaSs9Yyk6cz09PTE1NT8odC5tb2RlPSJjc2kiLGkrPWMpOnM9PT0xNTd8fHM9PT0xNDR8fHM9PT0xNTh8fHM9PT0xNTk/KHQubW9kZT0ic3RyaW5nIixpKz1jKTooaSs9YyxJZChzKSYmKGkrPXlzKSk7YnJlYWs7Y2FzZSJlc2MiOmkrPWMscz09PTkxP3QubW9kZT0iY3NpIjpzPT09OTN8fHM9PT04MHx8cz09PTg4fHxzPT09OTR8fHM9PT05NT90Lm1vZGU9InN0cmluZyI6dC5tb2RlPSJub3JtYWwiO2JyZWFrO2Nhc2UiY3NpIjppKz1jLHM+PTY0JiZzPD0xMjYmJih0Lm1vZGU9Im5vcm1hbCIpO2JyZWFrO2Nhc2Uic3RyaW5nIjppKz1jLHM9PT03fHxzPT09MTU2P3QubW9kZT0ibm9ybWFsIjpzPT09MjcmJih0Lm1vZGU9InN0cmluZy1lc2MiKTticmVhaztjYXNlInN0cmluZy1lc2MiOmkrPWMscz09PTkyP3QubW9kZT0ibm9ybWFsIjp0Lm1vZGU9InN0cmluZyI7YnJlYWt9YSs9by0xfXJldHVybiBpfXZhciBuaT0iXHgxQls/MjAyNmgiLHNhPSJceDFCWz8yMDI2bCIsTWQ9MjAwLE9kPTI1NioxMDI0O2Z1bmN0aW9uIFBkKGUpe2lmKCFlfHxyLnN5bmNPdXRwdXRCdWZmZXI9PT1udWxsJiZlLmluZGV4T2YobmkpPT09LTEpcmV0dXJuIGU7Zm9yKHZhciB0PSIiLG49MDtuPGUubGVuZ3RoOylpZihyLnN5bmNPdXRwdXRCdWZmZXIhPT1udWxsKXt2YXIgaT1lLmluZGV4T2Yoc2Esbik7aWYoaT09PS0xKXJldHVybiByLnN5bmNPdXRwdXRCdWZmZXIrPWUuc2xpY2UobiksKHIuc3luY091dHB1dEJ1ZmZlci5sZW5ndGg+T2R8fERhdGUubm93KCk+ci5zeW5jT3V0cHV0RGVhZGxpbmUpJiYodCs9ci5zeW5jT3V0cHV0QnVmZmVyLHIuc3luY091dHB1dEJ1ZmZlcj1udWxsLHIuc3luY0ZyYW1pbmdSZXNpZHVlPSEwKSx0O3Iuc3luY091dHB1dEJ1ZmZlcis9ZS5zbGljZShuLGkrc2EubGVuZ3RoKSx0Kz1yLnN5bmNPdXRwdXRCdWZmZXIsci5zeW5jT3V0cHV0QnVmZmVyPW51bGwsbj1pK3NhLmxlbmd0aH1lbHNle3ZhciBhPWUuaW5kZXhPZihuaSxuKTtpZihhPT09LTEpcmV0dXJuIHQrPWUuc2xpY2UobiksdDt0Kz1lLnNsaWNlKG4sYSksci5zeW5jT3V0cHV0QnVmZmVyPW5pLHIuc3luY091dHB1dERlYWRsaW5lPURhdGUubm93KCkrTWQsbj1hK25pLmxlbmd0aH1yZXR1cm4gdH1mdW5jdGlvbiB1Zygpe2lmKHIuc3luY091dHB1dEJ1ZmZlciE9PW51bGwpe3ZhciBlPXIuc3luY091dHB1dEJ1ZmZlcjtyZXR1cm4gci5zeW5jT3V0cHV0QnVmZmVyPW51bGwsZX1yZXR1cm4iIn1mdW5jdGlvbiBWbihlLHQpe2lmKCEoIWV8fHQ9PW51bGwpKXtyLndpZGVQYXJzZXJTdGF0ZXx8KHIud2lkZVBhcnNlclN0YXRlPUVzKCkpO3ZhciBuPUxkKHQsci53aWRlUGFyc2VyU3RhdGUpLGk9UGQobiksYT1yLnRlcm1pbmFsQXV0b0ZvbGxvdyE9PSExOyJfc2hvdWxkU2Nyb2xsVG9Cb3R0b20iaW4gZSYmKGUuX3Nob3VsZFNjcm9sbFRvQm90dG9tPWEpLGkmJmUud3JpdGUoaSksIl9zaG91bGRTY3JvbGxUb0JvdHRvbSJpbiBlJiYoZS5fc2hvdWxkU2Nyb2xsVG9Cb3R0b209YSksYSYmKHIudGVybWluYWxQcm9ncmFtbWF0aWNTY3JvbGxVbnRpbD1NYXRoLm1heChyLnRlcm1pbmFsUHJvZ3JhbW1hdGljU2Nyb2xsVW50aWwsRGF0ZS5ub3coKSsxMjApKSxWZCh0KX19ZnVuY3Rpb24gb2EoKXtyLndpZGVQYXJzZXJTdGF0ZT1FcygpfWZ1bmN0aW9uIHFkKCl7dHlwZW9mIGRvY3VtZW50PiJ1Inx8ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY29weSIsZnVuY3Rpb24oZSl7dmFyIHQ9d2luZG93LmdldFNlbGVjdGlvbiYmd2luZG93LmdldFNlbGVjdGlvbigpO2lmKCEoIXR8fHQuaXNDb2xsYXBzZWQpKXt2YXIgbj10LmFuY2hvck5vZGUsaT1uJiZuLm5vZGVUeXBlPT09Mz9uLnBhcmVudE5vZGU6bixhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKTtpZighKCFhfHwhaXx8IWEuY29udGFpbnMoaSkpKXt2YXIgdT10LnRvU3RyaW5nKCkscz11LnNwbGl0KGAKYCkubWFwKGZ1bmN0aW9uKG8pe3JldHVybiBvLnNwbGl0KHlzKS5qb2luKCIiKS5yZXBsYWNlKC9bIFx0XSskLywiIil9KS5qb2luKGAKYCk7cyE9PXUmJmUuY2xpcGJvYXJkRGF0YSYmKGUuY2xpcGJvYXJkRGF0YS5zZXREYXRhKCJ0ZXh0L3BsYWluIixzKSxlLnByZXZlbnREZWZhdWx0KCkpfX19KX1xZCgpO3ZhciBicz0xNTAsRnM9MzAsSGQ9MTYwKjEwMjQsX2Q9MTkyKjEwMjQ7ZnVuY3Rpb24gd3MoZSl7aWYoIWV8fGUubGVuZ3RoPD1fZClyZXR1cm4gZTt2YXIgdD1lLmxlbmd0aCxuPWZ1bmN0aW9uKHgpe2lmKCEodHlwZW9mIHI+InUifHwhcikpe3ZhciBTPXIudGVybWluYWxPdXRwdXRNYXJrZXJ8MDtpZighKFM8PTApKXt2YXIgaj10LXg7ci50ZXJtaW5hbE91dHB1dE1hcmtlcj1TPmo/Uy1qOjB9fX0saT1lLmxlbmd0aC1IZDtpZihpPjAmJmk8ZS5sZW5ndGgpe3ZhciBhPWUuY2hhckNvZGVBdChpKTthPj01NjMyMCYmYTw9NTczNDMmJmkrK31mb3IodmFyIHU9NDA5NixzPU1hdGgubWluKGkrdSxlLmxlbmd0aCksbz1pO288cztvKyspaWYoZS5jaGFyQ29kZUF0KG8pPT09MTApe3ZhciBsPWUuc2xpY2UobysxKTtyZXR1cm4gbihsLmxlbmd0aCksbH1mb3IodmFyIGM9TWF0aC5tYXgoMCxpLTI1NiksZj0tMSxkPWktMTtkPj1jO2QtLSl7dmFyIHY9ZS5jaGFyQ29kZUF0KGQpO2lmKHY9PT0yNyl7Zj1kO2JyZWFrfWlmKHY9PT03fHx2Pj02NCYmdjw9MTI2KWJyZWFrfWlmKGYhPT0tMSl7Zm9yKHZhciBnPSExLGg9ZisxO2g8aTtoKyspe3ZhciBtPWUuY2hhckNvZGVBdChoKTtpZihtPT09Nyl7Zz0hMDticmVha31pZihtPj02NCYmbTw9MTI2KXtnPSEwO2JyZWFrfX1pZighZylmb3IodmFyIEU9TWF0aC5taW4oaSsyNTYsZS5sZW5ndGgpLEM9aTtDPEU7QysrKXt2YXIgYj1lLmNoYXJDb2RlQXQoQyk7aWYoYj09PTd8fGI+PTY0JiZiPD0xMjYpe3ZhciBCPWUuc2xpY2UoQysxKTtyZXR1cm4gbihCLmxlbmd0aCksQn19fXZhciBGPWUuc2xpY2UoaSk7cmV0dXJuIG4oRi5sZW5ndGgpLEZ9ZnVuY3Rpb24gcmkoKXtpZihyLnRlcm1pbmFsKXtpZih0eXBlb2Ygci50ZXJtaW5hbC5yZXNldD09ImZ1bmN0aW9uIil7ci50ZXJtaW5hbC5yZXNldCgpLG9hKCksci5zeW5jT3V0cHV0QnVmZmVyPW51bGwsci5zeW5jT3V0cHV0RGVhZGxpbmU9MDtyZXR1cm59dHlwZW9mIHIudGVybWluYWwud3JpdGU9PSJmdW5jdGlvbiImJnIudGVybWluYWwud3JpdGUoIlx4MUJjIiksb2EoKSxyLnN5bmNPdXRwdXRCdWZmZXI9bnVsbCxyLnN5bmNPdXRwdXREZWFkbGluZT0wfX1yLl9yZXN5bmNTdGF0c1dpbmRvd1N0YXJ0PTAsci5fcmVzeW5jU3RhdHNDb3VudD0wLHIuX3Jlc3luY0xhc3RXYXJuQXQ9MDt2YXIgTmQ9NWUzLGpkPTEyLFJkPTNlNDtyLl9yZXN5bmNJblByb2dyZXNzPSExO2Z1bmN0aW9uIGtuKGUpe2lmKCFyLnRlcm1pbmFsfHwhci50ZXJtaW5hbE91dHB1dClyZXR1cm4hMTt2YXIgdD1lfHx7fSxuPXIudGVybWluYWxPdXRwdXRNYXJrZXJ8MDtuPDAmJihuPTApLG4+ci50ZXJtaW5hbE91dHB1dC5sZW5ndGgmJihuPXIudGVybWluYWxPdXRwdXQubGVuZ3RoKTt2YXIgaT1uPjA/ci50ZXJtaW5hbE91dHB1dC5zbGljZShuKTpyLnRlcm1pbmFsT3V0cHV0LGE9aS5sZW5ndGgsdT10eXBlb2YgcGVyZm9ybWFuY2U8InUiJiZwZXJmb3JtYW5jZS5ub3c/cGVyZm9ybWFuY2Uubm93KCk6RGF0ZS5ub3coKTtyLl9yZXN5bmNJblByb2dyZXNzPSEwO3RyeXtyaSgpLFZuKHIudGVybWluYWwsaSl9ZmluYWxseXtyLl9yZXN5bmNJblByb2dyZXNzPSExfXIubGFzdFRlcm1pbmFsUmVzeW5jQXQ9RGF0ZS5ub3coKSxFdCgib3V0cHV0IiksdC5za2lwRml0fHxvdCgicmVmcmVzaCIpO3ZhciBzPURhdGUubm93KCk7aWYocy1yLl9yZXN5bmNTdGF0c1dpbmRvd1N0YXJ0Pk5kKXIuX3Jlc3luY1N0YXRzV2luZG93U3RhcnQ9cyxyLl9yZXN5bmNTdGF0c0NvdW50PTE7ZWxzZSBpZihyLl9yZXN5bmNTdGF0c0NvdW50Kyssci5fcmVzeW5jU3RhdHNDb3VudD5qZCYmcy1yLl9yZXN5bmNMYXN0V2FybkF0PlJkKXtyLl9yZXN5bmNMYXN0V2FybkF0PXM7dmFyIG89dHlwZW9mIHBlcmZvcm1hbmNlPCJ1IiYmcGVyZm9ybWFuY2Uubm93P3BlcmZvcm1hbmNlLm5vdygpOkRhdGUubm93KCk7Y29uc29sZS53YXJuKCJbd2FuZF0gc29mdFJlc3luY1Rlcm1pbmFsIGhpZ2ggZnJlcXVlbmN5IiwiY291bnQ9IityLl9yZXN5bmNTdGF0c0NvdW50KyIvIitNYXRoLnJvdW5kKChzLXIuX3Jlc3luY1N0YXRzV2luZG93U3RhcnQpLzEwMCkvMTArInMiLCJidWZMZW49IithLCJsYXN0UmVwbGF5TXM9IitNYXRoLnJvdW5kKG8tdSkpfXJldHVybiEwfWZ1bmN0aW9uIFdkKGUpe3Iuc29mdFJlc3luY1RpbWVyJiZjbGVhclRpbWVvdXQoci5zb2Z0UmVzeW5jVGltZXIpLHIuc29mdFJlc3luY1RpbWVyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtyLnNvZnRSZXN5bmNUaW1lcj1udWxsLGtuKCl9LHR5cGVvZiBlPT0ibnVtYmVyIj9lOjE1MCl9dmFyIHpkPS9ceDFiXFtcZCooPzo7XGQqKT9bQUJDRGZISktdLyxDcz0xNTAwLFVkPTgwMDtyLl9yZXN5bmNDaHVua0xhc3RBdD0wLHIuX3Jlc3luY0NodW5rVGFpbFRpbWVyPW51bGw7ZnVuY3Rpb24gVmQoZSl7aWYoIXIuX3Jlc3luY0luUHJvZ3Jlc3MmJnIuc3luY0ZyYW1pbmdSZXNpZHVlJiYoci5zeW5jRnJhbWluZ1Jlc2lkdWU9ITEsISghZXx8dHlwZW9mIGUhPSJzdHJpbmciKSYmZS5pbmRleE9mKCJceDFCWyIpIT09LTEmJnpkLnRlc3QoZSkpKXt2YXIgdD1EYXRlLm5vdygpLG49dC1yLl9yZXN5bmNDaHVua0xhc3RBdDtpZihuPj1Dcyl7ci5fcmVzeW5jQ2h1bmtUYWlsVGltZXImJihjbGVhclRpbWVvdXQoci5fcmVzeW5jQ2h1bmtUYWlsVGltZXIpLHIuX3Jlc3luY0NodW5rVGFpbFRpbWVyPW51bGwpLHIuX3Jlc3luY0NodW5rTGFzdEF0PXQsa24oKTtyZXR1cm59aWYoIXIuX3Jlc3luY0NodW5rVGFpbFRpbWVyKXt2YXIgaT1NYXRoLm1heChVZCxDcy1uKTtyLl9yZXN5bmNDaHVua1RhaWxUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci5fcmVzeW5jQ2h1bmtUYWlsVGltZXI9bnVsbCxyLl9yZXN5bmNDaHVua0xhc3RBdD1EYXRlLm5vdygpLGtuKCl9LGkpfX19ZnVuY3Rpb24gaWkoZSx0LG4pe2lmKCFyLnRlcm1pbmFsKXJldHVybiExO3ZhciBpPU5hKHR8fCIiKSxhPWV8fG51bGwsdT1ufHx7fSxzPXUubW9kZXx8ImFwcGVuZCIsbz11LnNjcm9sbCE9PSExLGw9ci50ZXJtaW5hbFNlc3Npb25JZCE9PWEsYz1yLnRlcm1pbmFsT3V0cHV0fHwiIixmPSEhKGEmJnIudGVybWluYWxMaXZlU3RyZWFtU2Vzc2lvbnNbYV0pLGQ9ITE7aWYoaT09PWMmJiFsKXJldHVybiBvJiZFdCgib3V0cHV0IiksdnQoKSwhMTtpZihsJiYocmkoKSxjPSIiLHIudGVybWluYWxPdXRwdXQ9IiIsci50ZXJtaW5hbE91dHB1dE1hcmtlcj0wLHIudGVybWluYWxBdXRvRm9sbG93PSEwLFVuKCksdnQoKSkscz09PSJyZXBsYWNlIilpIT09YyYmKHJpKCksaSYmVm4oci50ZXJtaW5hbCxpKSxkPSEwKTtlbHNle2lmKGkubGVuZ3RoPGMubGVuZ3RoJiYhbClyZXR1cm4hMTtpZihmJiYhbCYmcyE9PSJyZXBsYWNlIiYmYyYmIWkuc3RhcnRzV2l0aChjKSlyZXR1cm4hMTtpZihpLnN0YXJ0c1dpdGgoYykpe3ZhciB2PWkuc2xpY2UoYy5sZW5ndGgpO3YmJihWbihyLnRlcm1pbmFsLHYpLGQ9ITApfWVsc2V7aWYoYyYmYy5zdGFydHNXaXRoKGkpKXJldHVybiExO3JpKCksaSYmVm4oci50ZXJtaW5hbCxpKSxkPSEwfX1yZXR1cm4gci50ZXJtaW5hbFNlc3Npb25JZD1hLHIudGVybWluYWxPdXRwdXQ9aSxyLnRlcm1pbmFsT3V0cHV0TWFya2VyPTAsbyYmKGR8fGx8fHM9PT0icmVwbGFjZSIpP0V0KGx8fHM9PT0icmVwbGFjZSI/ImZvcmNlIjoib3V0cHV0Iik6dnQoKSxsJiZ0aShyLnRlcm1pbmFsLmNvbHMsci50ZXJtaW5hbC5yb3dzKSxkfHxsfWZ1bmN0aW9uIEtuKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2lmKCEoIWV8fHIudGVybWluYWx8fHIudGVybWluYWxJbml0aWFsaXppbmcpKXtpZih0eXBlb2YgV1Rlcm1MaWI+InUifHwhV1Rlcm1MaWIuV1Rlcm0pe3IudGVybWluYWxJbml0UmV0cmllc3x8KHIudGVybWluYWxJbml0UmV0cmllcz0wKSxyLnRlcm1pbmFsSW5pdFJldHJpZXM8MTAmJihyLnRlcm1pbmFsSW5pdFJldHJpZXMrKyxzZXRUaW1lb3V0KEtuLDIwMCkpO3JldHVybn1yLnRlcm1pbmFsSW5pdFJldHJpZXM9MCxyLnRlcm1pbmFsSW5pdGlhbGl6aW5nPSEwLHIuc2VsZWN0ZWRJZCYmKGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksZS5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKSk7Zm9yKHZhciB0PWUucXVlcnlTZWxlY3RvckFsbCgiLnRlcm1pbmFsLXNjcm9sbC13cmFwIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgaT10W25dO2kucGFyZW50Tm9kZT09PWUmJmUucmVtb3ZlQ2hpbGQoaSl9dmFyIGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7YS5jbGFzc05hbWU9InRlcm1pbmFsLXNjcm9sbC13cmFwIixlLmFwcGVuZENoaWxkKGEpO3ZhciB1PW5ldyBXVGVybUxpYi5XVGVybShhLHtjb2xzOjEyMCxyb3dzOjM2LGF1dG9SZXNpemU6ITAsY3Vyc29yQmxpbms6ITEsb25EYXRhOmZ1bmN0aW9uKCl7fSxvblJlc2l6ZTpmdW5jdGlvbihvLGwpe3RpKG8sbCksci50ZXJtaW5hbCYmci50ZXJtaW5hbE91dHB1dCYma24oe3NraXBGaXQ6ITB9KX19KSxzPWRvY3VtZW50LmZvbnRzJiZ0eXBlb2YgZG9jdW1lbnQuZm9udHMucmVhZHk9PSJvYmplY3QiP1Byb21pc2UucmFjZShbZG9jdW1lbnQuZm9udHMucmVhZHksbmV3IFByb21pc2UoZnVuY3Rpb24obyl7c2V0VGltZW91dChvLDgwMCl9KV0pOlByb21pc2UucmVzb2x2ZSgpO3MudGhlbihmdW5jdGlvbigpe3JldHVybiB1LmluaXQoKX0pLnRoZW4oZnVuY3Rpb24oKXtpZihyLnRlcm1pbmFsPXUsci50ZXJtaW5hbEluaXRpYWxpemluZz0hMSxidSgpLGEuaXNDb25uZWN0ZWQmJihhLm9mZnNldEhlaWdodCx0eXBlb2YgdS5yZW1lYXN1cmU9PSJmdW5jdGlvbiIpKXRyeXt1LnJlbWVhc3VyZSgpfWNhdGNoe31yLnRlcm1pbmFsQXV0b0ZvbGxvdz0hMCxVbigpO3ZhciBvPUR0KCk7aWYobyYmKHIudGVybWluYWxWaWV3cG9ydFNjcm9sbEhhbmRsZXI9ZnVuY3Rpb24oKXtpZihEYXRlLm5vdygpPHIudGVybWluYWxQcm9ncmFtbWF0aWNTY3JvbGxVbnRpbCl7dnQoKTtyZXR1cm59aWYoZ3MoKSl7ci50ZXJtaW5hbEF1dG9Gb2xsb3c9ITAsVW4oKSx2dCgpO3JldHVybn11YSgpfSxyLnRlcm1pbmFsVmlld3BvcnRUb3VjaFN0YXJ0SGFuZGxlcj1mdW5jdGlvbihjKXtjLnRvdWNoZXMmJmMudG91Y2hlcy5sZW5ndGg9PT0xJiYoci50ZXJtaW5hbFRvdWNoU3RhcnRZPWMudG91Y2hlc1swXS5jbGllbnRZKX0sci50ZXJtaW5hbFZpZXdwb3J0VG91Y2hIYW5kbGVyPWZ1bmN0aW9uKGMpeyFjLnRvdWNoZXN8fGMudG91Y2hlcy5sZW5ndGghPT0xfHx0eXBlb2Ygci50ZXJtaW5hbFRvdWNoU3RhcnRZPT0ibnVtYmVyIiYmYy50b3VjaGVzWzBdLmNsaWVudFktci50ZXJtaW5hbFRvdWNoU3RhcnRZPjQmJnVhKCl9LG8uYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixyLnRlcm1pbmFsVmlld3BvcnRTY3JvbGxIYW5kbGVyLHtwYXNzaXZlOiEwfSksby5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixyLnRlcm1pbmFsVmlld3BvcnRUb3VjaFN0YXJ0SGFuZGxlcix7cGFzc2l2ZTohMH0pLG8uYWRkRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixyLnRlcm1pbmFsVmlld3BvcnRUb3VjaEhhbmRsZXIse3Bhc3NpdmU6ITB9KSksci50ZXJtaW5hbFdoZWVsSGFuZGxlcj1mdW5jdGlvbihjKXtjLmRlbHRhWTwwJiZ1YSgpLGMuc3RvcFByb3BhZ2F0aW9uKCl9LGUuYWRkRXZlbnRMaXN0ZW5lcigid2hlZWwiLHIudGVybWluYWxXaGVlbEhhbmRsZXIse3Bhc3NpdmU6ITB9KSxTZChlKSxyLnNlbGVjdGVkSWQpe3ZhciBsPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihjKXtyZXR1cm4gYy5pZD09PXIuc2VsZWN0ZWRJZH0pO2wmJmlpKGwuaWQsbC5vdXRwdXR8fCIiLHttb2RlOiJhcHBlbmQiLHNjcm9sbDohMX0pfWVsc2UgVm4odSxgXHU3MEI5XHU1MUZCXHU0RTBBXHU2NUI5XHUzMDBDXHU2NUIwXHU1QkY5XHU4QkREXHUzMDBEXHU1RjAwXHU1OUNCXHU0RjYwXHU3Njg0XHU3QjJDXHU0RTAwXHU2QjIxXHU1QkY5XHU4QkREXHUzMDAyXHIKYCk7ci50ZXJtaW5hbENsaWNrSGFuZGxlcj1mdW5jdGlvbihjKXtwaSgpfHxOdChjKX0sZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsci50ZXJtaW5hbENsaWNrSGFuZGxlciksdnQoKSxsZCgpLGZkKCksd2QoKSxDZCgpLG90KCJtb3VudCIse2ZvcmNlUmVwbGF5OiEwfSl9KS5jYXRjaChmdW5jdGlvbihvKXtyLnRlcm1pbmFsSW5pdGlhbGl6aW5nPSExLGNvbnNvbGUuZXJyb3IoIlt3YW5kXSB3dGVybSBpbml0IGZhaWxlZDoiLG8pfSl9fWZ1bmN0aW9uIEtkKGUsdCl7aWYoISghci5zZWxlY3RlZElkfHwhZSkpe3ZhciBuPXIuc2VsZWN0ZWRJZCsiOiIrZTtpZihyLnRvb2xDb250ZW50Q2FjaGVbbl0pe3QobnVsbCxyLnRvb2xDb250ZW50Q2FjaGVbbl0pO3JldHVybn1mZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChyLnNlbGVjdGVkSWQpKyIvdG9vbC1jb250ZW50LyIrZW5jb2RlVVJJQ29tcG9uZW50KGUpLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGkpe2kuZXJyb3I/dChpLmVycm9yLG51bGwpOihyLnRvb2xDb250ZW50Q2FjaGVbbl09aSx0KG51bGwsaSkpfSkuY2F0Y2goZnVuY3Rpb24oKXt0KCJcdTUyQTBcdThGN0RcdTU5MzFcdThEMjUiLG51bGwpfSl9fWZ1bmN0aW9uIEFuKGUpe3JldHVybiEhKHIuY29uZmlnJiZyLmNvbmZpZy5jYXJkRGVmYXVsdHMmJnIuY29uZmlnLmNhcmREZWZhdWx0c1tlXSl9ZnVuY3Rpb24gbGEoZSx0LG4saSl7aWYoISghZXx8ZS5kYXRhc2V0LnRydW5jYXRlZCE9PSJ0cnVlInx8ZS5kYXRhc2V0LmxvYWRlZD09PSJ0cnVlIikpe3ZhciBhPWUuZGF0YXNldC50b29sVXNlSWQ7YSYmKHQmJih0LmlubmVySFRNTD0nPGRpdiBjbGFzcz0idG9vbC1jb250ZW50LWxvYWRpbmciPlx1NTJBMFx1OEY3RFx1NEUyRFx1MjAyNjwvZGl2PicpLGUuZGF0YXNldC5sb2FkZWQ9ImxvYWRpbmciLEtkKGEsZnVuY3Rpb24odSxzKXtpZih1KXt0JiYodC5pbm5lckhUTUw9aXx8JzxkaXYgY2xhc3M9InRvb2wtY29udGVudC1lcnJvciI+XHU1MkEwXHU4RjdEXHU1OTMxXHU4RDI1XHVGRjBDXHU3MEI5XHU1MUZCXHU5MUNEXHU4QkQ1PC9kaXY+JyksZS5kYXRhc2V0LmxvYWRlZD0iIjtyZXR1cm59ZS5kYXRhc2V0LnRydW5jYXRlZD0iZmFsc2UiLGUuZGF0YXNldC5sb2FkZWQ9InRydWUiO3ZhciBvPXR5cGVvZiBzLmNvbnRlbnQ9PSJzdHJpbmciP3MuY29udGVudDpKU09OLnN0cmluZ2lmeShzLmNvbnRlbnQpO24obyxzKX0pKX19d2luZG93Ll9fdGNUb2dnbGU9ZnVuY3Rpb24oZSx0KXt2YXIgbj10LmNsb3Nlc3QoIi50b29sLXVzZS1jYXJkIil8fHQuY2xvc2VzdCgiLmlubGluZS1kaWZmIik7aWYobil7dmFyIGk9bi5jbGFzc0xpc3QuY29udGFpbnMoImNvbGxhcHNlZCIpO24uY2xhc3NMaXN0LnRvZ2dsZSgiY29sbGFwc2VkIik7dmFyIGE9bi5kYXRhc2V0LmV4cGFuZEtpbmR8fCJ0b29sLWNhcmQiO2lmKEZuKG4sYSksaSl7dmFyIHU9bi5xdWVyeVNlbGVjdG9yKCIudG9vbC11c2UtcmVzdWx0Iik7bGEobix1LGZ1bmN0aW9uKHMpe3UmJih1LmlubmVySFRNTD0nPHByZSBjbGFzcz0idG9vbC11c2UtcmVzdWx0LWNvbnRlbnQiPicrcChzKSsiPC9wcmU+Iil9LGA8ZGl2IGNsYXNzPSJ0b29sLWNvbnRlbnQtZXJyb3IiIG9uY2xpY2s9Il9fdGNUb2dnbGUobnVsbCwgdGhpcy5jbG9zZXN0KCcudG9vbC11c2UtY2FyZCwuaW5saW5lLWRpZmYnKS5xdWVyeVNlbGVjdG9yKCcudG9vbC11c2UtaGVhZGVyLC5kaWZmLWhlYWRlcicpKSI+XHU1MkEwXHU4RjdEXHU1OTMxXHU4RDI1XHVGRjBDXHU3MEI5XHU1MUZCXHU5MUNEXHU4QkQ1PC9kaXY+YCl9fWUmJihlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKSl9LHdpbmRvdy5fX3RoaW5raW5nVG9nZ2xlPWZ1bmN0aW9uKGUpe3ZhciB0PWUuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb2xsYXBzZWQiKTtpZih0KXtlLmNsYXNzTGlzdC5yZW1vdmUoImNvbGxhcHNlZCIpLGUuY2xhc3NMaXN0LmFkZCgiZXhwYW5kZWQiKSxlLnF1ZXJ5U2VsZWN0b3IoIi50aGlua2luZy1pbmxpbmUtcHJldmlldyIpLnRleHRDb250ZW50PWUuZGF0YXNldC50aGlua2luZ3x8IiI7dmFyIG49ZS5xdWVyeVNlbGVjdG9yKCIudGhpbmtpbmctaW5saW5lLWFjdGlvbiIpO24mJihuLnRleHRDb250ZW50PSJcdTY1MzZcdThENzciKX1lbHNle2UuY2xhc3NMaXN0LnJlbW92ZSgiZXhwYW5kZWQiKSxlLmNsYXNzTGlzdC5hZGQoImNvbGxhcHNlZCIpO3ZhciBpPShlLmRhdGFzZXQudGhpbmtpbmd8fCIiKS5zbGljZSgwLDU3KSsoKGUuZGF0YXNldC50aGlua2luZ3x8IiIpLmxlbmd0aD42MD8iXHUyMDI2IjoiIik7ZS5xdWVyeVNlbGVjdG9yKCIudGhpbmtpbmctaW5saW5lLXByZXZpZXciKS50ZXh0Q29udGVudD1pO3ZhciBuPWUucXVlcnlTZWxlY3RvcigiLnRoaW5raW5nLWlubGluZS1hY3Rpb24iKTtuJiYobi50ZXh0Q29udGVudD0iXHU1QzU1XHU1RjAwIil9Rm4oZSwidGhpbmtpbmciKX0sd2luZG93Ll9fc3ViYWdlbnRSZXBseVRvZ2dsZT1mdW5jdGlvbihlLHQpe2UmJihlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKSk7dmFyIG49dCYmdC5jbG9zZXN0P3QuY2xvc2VzdCgiLnN1YmFnZW50LXJlcGx5Iik6bnVsbDtpZihuKXt2YXIgaT1uLmdldEF0dHJpYnV0ZSgiZGF0YS1leHBhbmRlZCIpPT09InRydWUiO1JpKG4sInN1YmFnZW50LXJlcGx5IiwhaSksRm4obiwic3ViYWdlbnQtcmVwbHkiKX19LHdpbmRvdy5fX3N1YmFnZW50UGFuZWxUb2dnbGU9ZnVuY3Rpb24oZSx0KXtlJiYoZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCkpO3ZhciBuPXQmJnQuY2xvc2VzdD90LmNsb3Nlc3QoIi5zdWJhZ2VudC1wYW5lbCIpOm51bGw7aWYobil7dmFyIGk9bi5nZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kZWQiKT09PSJ0cnVlIjtSaShuLCJzdWJhZ2VudC1wYW5lbCIsIWkpLEZuKG4sInN1YmFnZW50LXBhbmVsIil9fTtmdW5jdGlvbiBKZChlKXtpZihlKWZvcih2YXIgdD1lLnF1ZXJ5U2VsZWN0b3JBbGwoJy5zdWJhZ2VudC1wYW5lbFtkYXRhLWV4cGFuZGVkPSJmYWxzZSJdJyksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgaT10W25dLnF1ZXJ5U2VsZWN0b3IoIi5zdWJhZ2VudC1wYW5lbC1ib2R5Iik7aSYmKGkuc2Nyb2xsVG9wPWkuc2Nyb2xsSGVpZ2h0KX19d2luZG93Ll9fb3BlbkZpbGVQcmV2aWV3PWZ1bmN0aW9uKGUpe2UmJktyKGUpfSx3aW5kb3cuX19pbmxpbmVUb29sVG9nZ2xlPWZ1bmN0aW9uKGUpe3ZhciB0PWUuY2xhc3NMaXN0LnRvZ2dsZSgiaW5saW5lLXRvb2wtb3BlbiIpLG49ZS5xdWVyeVNlbGVjdG9yKCIuaW5saW5lLXRvb2wtZXhwYW5kZWQiKTtuJiYobi5zdHlsZS5kaXNwbGF5PXQ/ImJsb2NrIjoibm9uZSIpO3ZhciBpPWUucXVlcnlTZWxlY3RvcigiLmlubGluZS10b29sLXN0YXR1cyIpO2kmJihlLmRhdGFzZXQuc3RhdHVzPT09ImVycm9yIj9pLnRleHRDb250ZW50PSJcdTI3MTciOmUuZGF0YXNldC5zdGF0dXM9PT0iZG9uZSImJihpLnRleHRDb250ZW50PSJcdTI3MTMiKSksdCYmbGEoZSxuLGZ1bmN0aW9uKGEpe2UuZGF0YXNldC5yZXN1bHQ9YSxuJiYobi5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImlubGluZS10b29sLXJlc3VsdCI+JytTbyhhLCIiKSsiPC9kaXY+Iil9KSxGbihlLCJpbmxpbmUtdG9vbCIpfSx3aW5kb3cuX190ZXJtaW5hbEV4cGFuZD1mdW5jdGlvbihlKXt2YXIgdD1lLmNsb3Nlc3QoIi5pbmxpbmUtdGVybWluYWwiKTtpZih0KXt2YXIgbj10LnF1ZXJ5U2VsZWN0b3IoIi50ZXJtLWJvZHkiKTtpZihuKXt2YXIgaT1uLnN0eWxlLmRpc3BsYXk9PT0ibm9uZSI7bi5zdHlsZS5kaXNwbGF5PWk/ImJsb2NrIjoibm9uZSIsdC5kYXRhc2V0LmV4cGFuZGVkPWk/InRydWUiOiJmYWxzZSI7dmFyIGE9ZS5xdWVyeVNlbGVjdG9yKCIudGVybS10b2dnbGUtaWNvbiIpO2lmKGEmJihhLnRleHRDb250ZW50PWk/Ilx1MjVCQyI6Ilx1MjVCNiIpLEZuKHQsInRlcm1pbmFsIiksaSl7dmFyIHU9bi5xdWVyeVNlbGVjdG9yKCIudGVybS1vdXRwdXQiKTtsYSh0LHUsZnVuY3Rpb24ocyl7aWYodSl7Zm9yKHZhciBvPXMuc3BsaXQoYApgKSxsPSIiLGM9MDtjPG8ubGVuZ3RoO2MrKykhb1tjXSYmYz09PW8ubGVuZ3RoLTF8fChsKz0nPGRpdiBjbGFzcz0idGVybS1saW5lIj4nK3Aob1tjXSkrIjwvZGl2PiIpO3UuaW5uZXJIVE1MPWx9fSl9fX19O2Z1bmN0aW9uIHNnKGUpe3ZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi50aGlua2luZy1zdHJlYW1pbmciKTtpZih0KXt2YXIgbj10LnF1ZXJ5U2VsZWN0b3IoIi50aGlua2luZy1zdHJlYW1pbmctdGV4dCIpO2lmKG4pe3ZhciBpPWUuc3BsaXQoYApgKSxhPWkuc2xpY2UoLTMpO24udGV4dENvbnRlbnQ9YS5qb2luKGAKYCksbi5zY3JvbGxUb3A9bi5zY3JvbGxIZWlnaHR9fX13aW5kb3cuX19hc2tTZWxlY3Q9ZnVuY3Rpb24oZSx0LG4saSl7dmFyIGE9ci5hc2tVc2VyU2VsZWN0aW9uc1tlXTtpZihhfHwoYT17c3VibWl0dGVkOiExfSxyLmFza1VzZXJTZWxlY3Rpb25zW2VdPWEpLCFhLnN1Ym1pdHRlZCl7dmFyIHU9YVt0XXx8W107aWYoaSl7dmFyIHM9dS5pbmRleE9mKG4pO3M9PT0tMT91LnB1c2gobik6dS5zcGxpY2UocywxKX1lbHNlIHU9dVswXT09PW4/W106W25dO2FbdF09dSx3aW5kb3cuX19hc2tSZW5kZXIoZSl9fSx3aW5kb3cuX19hc2tSZW5kZXI9ZnVuY3Rpb24oZSl7dmFyIHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtdG9vbC11c2UtaWQ9IicrZSsnIl0nKTtpZih0KXt2YXIgbj1yLmFza1VzZXJTZWxlY3Rpb25zW2VdfHx7fTt0LnF1ZXJ5U2VsZWN0b3JBbGwoIi5hc2stdXNlci1vcHRpb24iKS5mb3JFYWNoKGZ1bmN0aW9uKHMpe3ZhciBvPXBhcnNlSW50KHMuZGF0YXNldC5xdWVzdGlvbkluZGV4LDEwKSxsPXBhcnNlSW50KHMuZGF0YXNldC5vcHRpb25JbmRleCwxMCksYz0obltvXXx8W10pLmluZGV4T2YobCkhPT0tMTtzLmNsYXNzTGlzdC50b2dnbGUoInNlbGVjdGVkIixjKX0pO3ZhciBpPXQucXVlcnlTZWxlY3RvcigiLmFzay11c2VyLXN1Ym1pdCIpO2lmKGkpe3ZhciBhPXQucXVlcnlTZWxlY3RvckFsbCgiLmFzay11c2VyLXF1ZXN0aW9uLWdyb3VwIiksdT0hMDthLmZvckVhY2goZnVuY3Rpb24ocyxvKXsoIW5bb118fG5bb10ubGVuZ3RoPT09MCkmJih1PSExKX0pLGkuZGlzYWJsZWQ9IXV8fCEhbi5zdWJtaXR0ZWQsbi5zdWJtaXR0ZWQmJihpLnRleHRDb250ZW50PSJcdTVERjJcdTYzRDBcdTRFQTQuLi4iLGkuY2xhc3NMaXN0LmFkZCgiYXNrLXVzZXItc3VibWl0dGVkIikpfX19LHdpbmRvdy5fX2Fza1N1Ym1pdD1mdW5jdGlvbihlKXt2YXIgdD1yLmFza1VzZXJTZWxlY3Rpb25zW2VdO2lmKCEoIXR8fHQuc3VibWl0dGVkfHwhci5zZWxlY3RlZElkKSl7dmFyIG49ZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtdG9vbC11c2UtaWQ9IicrZSsnIl0nKTtpZihuKXt2YXIgaT1uLnF1ZXJ5U2VsZWN0b3JBbGwoIi5hc2stdXNlci1xdWVzdGlvbi1ncm91cCIpLGE9W10sdT0hMDtpZihpLmZvckVhY2goZnVuY3Rpb24obyxsKXt2YXIgYz10W2xdfHxbXTtpZihjLmxlbmd0aD09PTApe3U9ITE7cmV0dXJufXZhciBmPVtdO2MuZm9yRWFjaChmdW5jdGlvbihkKXt2YXIgdj1vLnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLW9wdGlvbi1pbmRleD0iJytkKyciXScpO3YmJmYucHVzaCh2LmRhdGFzZXQub3B0aW9uTGFiZWwpfSksYS5wdXNoKGYuam9pbigiLCAiKSl9KSwhIXUpe3Quc3VibWl0dGVkPSEwLHdpbmRvdy5fX2Fza1JlbmRlcihlKTt2YXIgcz1hLmpvaW4oYApgKTtmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK3Iuc2VsZWN0ZWRJZCsiL2lucHV0Iix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7aW5wdXQ6cytgCmAsdmlldzpyLmN1cnJlbnRWaWV3fSl9KS5jYXRjaChmdW5jdGlvbihvKXtjb25zb2xlLmVycm9yKCJbd2FuZF0gRXJyb3Igc2VuZGluZyBhbnN3ZXI6IixvKSx0LnN1Ym1pdHRlZD0hMSx3aW5kb3cuX19hc2tSZW5kZXIoZSl9KX19fX07ZnVuY3Rpb24gR2QoKXtpZighci5fX2dsb2JhbExpc3RlbmVyc0JvdW5kKXtyLl9fZ2xvYmFsTGlzdGVuZXJzQm91bmQ9ITAsZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZGViYXItb3ZlcmZsb3ctbWVudSIpO3QmJnQuY2xhc3NMaXN0LnJlbW92ZSgib3BlbiIpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsZnVuY3Rpb24oKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2lkZWJhci1vdmVyZmxvdy1tZW51Iik7dCYmdC5jbGFzc0xpc3QucmVtb3ZlKCJvcGVuIil9KTt2YXIgZT1mdW5jdGlvbigpe3IudG9wYmFyTW9yZU9wZW49ITE7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvcGJhci1tb3JlLW1lbnUiKSxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b3BiYXItbW9yZS1idXR0b24iKTt0JiZ0LmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLG4mJihuLmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpLG4uc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIiwiZmFsc2UiKSl9O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih0KXtpZihyLnRvcGJhck1vcmVPcGVuKXt2YXIgbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLW1vcmUtbWVudSIpLGk9biYmbi5wYXJlbnRFbGVtZW50O2kmJiFpLmNvbnRhaW5zKHQudGFyZ2V0KSYmZSgpfX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKHQpe3Qua2V5PT09IkVzY2FwZSImJnIudG9wYmFyTW9yZU9wZW4mJmUoKX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih0KXtpZihyLnBsdXNQb3BvdmVyT3Blbil7dmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbXBvc2VyLXBsdXMtcG9wb3ZlciIpLGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF0dGFjaC1idG4iKTtuJiZuLmNvbnRhaW5zKHQudGFyZ2V0KXx8aSYmaS5jb250YWlucyh0LnRhcmdldCl8fGtpKCl9fSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24odCl7dC5rZXk9PT0iRXNjYXBlIiYmci5wbHVzUG9wb3Zlck9wZW4mJmtpKCl9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24odCl7aWYoIXQudGFyZ2V0LmNsb3Nlc3QoIi5mb2xkZXItcGlja2VyLWNvbnRhaW5lciIpKXt2YXIgbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci1kcm9wZG93biIpO24mJm4uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIil9fSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbih0KXt2YXIgbj10LnRhcmdldDtpZighKCFufHxuLm5vZGVUeXBlIT09MSkmJiEodHlwZW9mIG4ubWF0Y2hlcyE9ImZ1bmN0aW9uInx8IW4ubWF0Y2hlcygiW2RhdGEtbW9kZS1jb250cm9sXSIpKSl7dmFyIGk9bi5nZXRBdHRyaWJ1dGUoImRhdGEtbW9kZS1jb250cm9sIiksYT1uLnZhbHVlO2k9PT0ibW9kZSI/UnYoYSk6aT09PSJtb2RlbCI/anYoYSk6aT09PSJ0aGlua2luZyImJnF2KGEpLG4uY2xvc2VzdCYmbi5jbG9zZXN0KCIjY29tcG9zZXItcGx1cy1wb3BvdmVyIikmJmtpKCl9fSl9fWZ1bmN0aW9uIFlkKCl7R2QoKTt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9naW4tYnV0dG9uIik7aWYoZSl7ZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsamEpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2dpbi1mb3JtIik7dCYmdC5hZGRFdmVudExpc3RlbmVyKCJzdWJtaXQiLGZ1bmN0aW9uKHkpe3kucHJldmVudERlZmF1bHQoKSxqYSgpfSk7dmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ2luLXN3aXRjaC1zZXJ2ZXItYnV0dG9uIik7biYmbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsTG8pO3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwYXNzd29yZCIpLGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZ2dsZS1wYXNzd29yZC1idXR0b24iKTthJiZpJiZhLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhciB5PWkudHlwZT09PSJ0ZXh0IjtpLnR5cGU9eT8icGFzc3dvcmQiOiJ0ZXh0IixhLnRleHRDb250ZW50PXk/Ilx1NjYzRVx1NzkzQSI6Ilx1OTY5MFx1ODVDRiIsYS5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLHk/Ilx1NjYzRVx1NzkzQVx1NUJDNlx1NzgwMSI6Ilx1OTY5MFx1ODVDRlx1NUJDNlx1NzgwMSIpLGEuc2V0QXR0cmlidXRlKCJhcmlhLXByZXNzZWQiLHk/ImZhbHNlIjoidHJ1ZSIpLGkuZm9jdXMoKX0pLGkmJihpLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKHkpe3kua2V5PT09IkVudGVyIiYmamEoKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLGZ1bmN0aW9uKCl7aS5kYXRhc2V0LmVycm9yPSJmYWxzZSIsaS5zZXRBdHRyaWJ1dGUoImFyaWEtaW52YWxpZCIsImZhbHNlIik7dmFyIHk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ2luLWVycm9yIik7eSYmdWkoeSl9KSxpLmZvY3VzKCkpO3JldHVybn12YXIgdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid2VsY29tZS1pbnB1dCIpO3UmJih1LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKHkpe3kua2V5PT09IkVudGVyIiYmIXkuc2hpZnRLZXkmJih5LnByZXZlbnREZWZhdWx0KCksSHMoKSl9KSx1LmZvY3VzKCkpO3ZhciBzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3ZWxjb21lLXNlbmQtYnRuIik7cyYmcy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtIcygpfSk7dmFyIG89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndlbGNvbWUtdG9vbC1jbGF1ZGUiKTtvJiZvLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2FsKCl9KTt2YXIgbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid2VsY29tZS10b29sLWNvZGV4Iik7bCYmbC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtyLnNlc3Npb25Ub29sPSJjb2RleCIsci5wcmVmZXJyZWRDb21tYW5kPSJjb2RleCIsci5tb2RlVmFsdWU9ImZ1bGwtYWNjZXNzIixhbCgpfSk7dmFyIGM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndlbGNvbWUtdG9vbC1zdHJ1Y3R1cmVkIik7YyYmYy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtHbygpLnRoZW4oZnVuY3Rpb24oKXtOdCghMCl9KS5jYXRjaChmdW5jdGlvbih5KXtrKHkmJnkubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOFx1N0VEM1x1Njc4NFx1NTMxNlx1NEYxQVx1OEJERFx1MzAwMiIsImVycm9yIil9KX0pLEFtKCk7dmFyIGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb25zLWxpc3QiKTtmJiYoZi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsQWQpLGYuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIseGQpLGYuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VvdmVyIixadiksZi5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW91dCIsZW0pLHhwKGYpKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixadCwhMCksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsWnQpO3ZhciBkPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwcm92aWRlci1jYXJkcyIpO2QmJmQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3ZhciBBPXkudGFyZ2V0LmNsb3Nlc3QoIi5wcm92aWRlci1jYXJkIik7aWYoISghQXx8QS5jbGFzc0xpc3QuY29udGFpbnMoImRpc2FibGVkIikpKXt2YXIgVz1BLmdldEF0dHJpYnV0ZSgiZGF0YS1wcm92aWRlciIpO1cmJihyLnNlc3Npb25Ub29sPVcsci5wcmVmZXJyZWRDb21tYW5kPVcsU3IoKSl9fSk7dmFyIHY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb24ta2luZC1jYXJkcyIpO3YmJnYuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3ZhciBBPXkudGFyZ2V0LmNsb3Nlc3QoIi5zZXNzaW9uLWtpbmQtY2FyZCIpO2lmKCEoIUF8fEEuY2xhc3NMaXN0LmNvbnRhaW5zKCJkaXNhYmxlZCIpKSl7dmFyIFc9QS5nZXRBdHRyaWJ1dGUoImRhdGEtc2Vzc2lvbi1raW5kIik7VyYmKHIuc2Vzc2lvbkNyZWF0ZUtpbmQ9VyxTcigpKX19KTt2YXIgZz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibW9kZS1jYXJkcyIpO2cmJmcuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3ZhciBBPXkudGFyZ2V0LmNsb3Nlc3QoIi5tb2RlLWNhcmQiKTtpZihBKXt2YXIgVz1BLmdldEF0dHJpYnV0ZSgiZGF0YS1tb2RlIik7VyYmKHIubW9kZVZhbHVlPVcsU3IoKSl9fSk7dmFyIGg9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb24td29ya3RyZWUtdG9nZ2xlIik7aCYmaC5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7ci5zZXNzaW9uQ3JlYXRlV29ya3RyZWU9aC5jaGVja2VkfSk7dmFyIG09ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImN3ZCIpO20mJihtLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbigpe3IuY3dkVmFsdWU9bS52YWx1ZX0pLG0uYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe3IuY3dkVmFsdWU9bS52YWx1ZX0pLG0uYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLHNsKSxtLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIixzbCksbS5hZGRFdmVudExpc3RlbmVyKCJibHVyIixmdW5jdGlvbigpe3NldFRpbWVvdXQobnIsMTIwKX0pKTt2YXIgRT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbnMtdG9nZ2xlLWJ1dHRvbiIpO0UmJkUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLEp2KTt2YXIgQz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbnMtZHJhd2VyLWJhY2tkcm9wIik7QyYmQy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsTHIpO3ZhciBiPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjbG9zZS1kcmF3ZXItYnV0dG9uIik7YiYmYi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsTHIpO3ZhciBCPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWRlYmFyLWNvbGxhcHNlLWJ0biIpO0ImJkIuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHRtKTt2YXIgRj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2lkZWJhci1waW4tYnRuIik7RiYmRi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsbm0pO3ZhciB4PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWRlYmFyLW1vcmUtYnRuIiksUz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2lkZWJhci1vdmVyZmxvdy1tZW51Iik7eCYmUyYmeC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7eS5zdG9wUHJvcGFnYXRpb24oKTt2YXIgQT0hUy5jbGFzc0xpc3QuY29udGFpbnMoIm9wZW4iKTtTLmNsYXNzTGlzdC50b2dnbGUoIm9wZW4iLEEpLEEmJmltKFMpfSk7dmFyIGo9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZGViYXItaG9tZS1idG4iKTtqJiZqLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3Iuc2VsZWN0ZWRJZD1udWxsLEZlKCksa3QoKSxXdCgpLCR0KCl9KTt2YXIgUj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2lkZWJhci1yZWZyZXNoLWJ0biIpO1ImJlIuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7d2luZG93LmxvY2F0aW9uLnJlbG9hZCgpfSk7dmFyICQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ291dC1idXR0b24iKTskJiYkLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixNbyk7dmFyIEk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN3aXRjaC1zZXJ2ZXItYnV0dG9uIik7SSYmSS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsTG8pO3ZhciBEPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJiYWNrLXRvLW5hdGl2ZS1idXR0b24iKTtEJiZELmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix4dik7dmFyIFQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLWJ1dHRvbiIpO1QmJlQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHNtKTt2YXIgTz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2xvc2Utc2V0dGluZ3MtYnV0dG9uIik7TyYmTy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZXIpO3ZhciBVPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1tb2RhbCIpO1UmJlUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3kudGFyZ2V0LmlkPT09InNldHRpbmdzLW1vZGFsIiYmZXIoKX0pO3ZhciBWPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzYXZlLXBhc3N3b3JkLWJ1dHRvbiIpO1YmJlYuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLG9tKTtmb3IodmFyIFg9ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnNldHRpbmdzLXRhYiIpLGVlPTA7ZWU8WC5sZW5ndGg7ZWUrKylYW2VlXS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7dmFyIEE9eS5jdXJyZW50VGFyZ2V0fHx0aGlzLFc9QSYmQS5nZXRBdHRyaWJ1dGU/QS5nZXRBdHRyaWJ1dGUoImRhdGEtdGFiIik6bnVsbDtXJiZRYShXKX0pO3ZhciBaPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzYXZlLWNvbmZpZy1idXR0b24iKTtaJiZaLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix2bSk7dmFyIHVlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctZGVmYXVsdC1tb2RlbC1yZWZyZXNoIik7dWUmJnVlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixfdik7dmFyIEw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy12aWV3LWVudi1idG4iKTtMJiZMLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixOdik7dmFyIE09ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNhdmUtZGlzcGxheS1idXR0b24iKTtNJiZNLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixtbSk7dmFyIE49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcC1pY29uLXBpY2tlciIpO2lmKE4pZm9yKHZhciBKPU4ucXVlcnlTZWxlY3RvckFsbCgiLnNldHRpbmdzLWFwcC1pY29uLW9wdGlvbiIpLEs9MDtLPEoubGVuZ3RoO0srKylKW0tdLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhciB5PXRoaXMuZ2V0QXR0cmlidXRlKCJkYXRhLWljb24iKTtpZighKCF5fHx0eXBlb2YgV2FuZE5hdGl2ZT4idSJ8fHR5cGVvZiBXYW5kTmF0aXZlLnNldEFwcEljb24hPSJmdW5jdGlvbiIpKXRyeXtXYW5kTmF0aXZlLnNldEFwcEljb24oeSksdGwoeSk7dmFyIEE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcC1pY29uLW1lc3NhZ2UiKTtBJiYoQS50ZXh0Q29udGVudD0iXHU1NkZFXHU2ODA3XHU1REYyXHU1MjA3XHU2MzYyXHVGRjBDXHU4RkQ0XHU1NkRFXHU2ODRDXHU5NzYyXHU1NDBFXHU3NTFGXHU2NTQ4IixBLnN0eWxlLmNvbG9yPSJ2YXIoLS1zdWNjZXNzKSIsQS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7QS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKX0sM2UzKSl9Y2F0Y2h7fX0pO3ZhciBpZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidXBsb2FkLWNlcnQtYnV0dG9uIik7aWUmJmllLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixnbSk7Zm9yKHZhciB0ZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuZmlsZS1waWNrZXItaW5wdXQiKSxzZT0wO3NlPHRlLmxlbmd0aDtzZSsrKShmdW5jdGlvbih5KXt5LmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXt2YXIgQT15LmNsb3Nlc3QoIi5maWxlLXBpY2tlciIpO2lmKEEpe3ZhciBXPUEucXVlcnlTZWxlY3RvcigiLmZpbGUtcGlja2VyLW5hbWUiKTtXJiYoeS5maWxlcyYmeS5maWxlc1swXT8oVy50ZXh0Q29udGVudD15LmZpbGVzWzBdLm5hbWUsQS5jbGFzc0xpc3QuYWRkKCJmaWxlLXBpY2tlci1oYXMtZmlsZSIpKTooVy50ZXh0Q29udGVudD1XLmdldEF0dHJpYnV0ZSgiZGF0YS1kZWZhdWx0Iil8fCJcdTY3MkFcdTkwMDlcdTYyRTlcdTY1ODdcdTRFRjYiLEEuY2xhc3NMaXN0LnJlbW92ZSgiZmlsZS1waWNrZXItaGFzLWZpbGUiKSkpfX0pfSkodGVbc2VdKTt2YXIgb2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoZWNrLXVwZGF0ZS1idXR0b24iKTtvZSYmb2UuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGVsKTt2YXIgcWU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRvLXVwZGF0ZS1idXR0b24iKTtxZSYmcWUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGhtKTt2YXIgRWU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRvLXJlc3RhcnQtYnV0dG9uIik7RWUmJkVlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix5bSk7dmFyIGJlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS13ZWItdG9nZ2xlIik7YmUmJmJlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXskYSgid2ViIixiZS5jaGVja2VkKX0pO3ZhciBxPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS1hcGstdG9nZ2xlIik7cSYmcS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7JGEoImFwayIscS5jaGVja2VkKX0pO3ZhciBSZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by11cGRhdGUtZG1nLXRvZ2dsZSIpO1JlJiZSZS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7JGEoImRtZyIsUmUuY2hlY2tlZCl9KTt2YXIgej1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmV0YS1jaGFubmVsLXRvZ2dsZSIpO3omJnouYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe0ZtKHouY2hlY2tlZD8iYmV0YSI6InN0YWJsZSIpfSk7dmFyIGxlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb3B5LWNvbm5lY3QtY29kZS1idXR0b24iKTtsZSYmbGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7dmFyIHk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFuZHJvaWQtY29ubmVjdC1jb2RlIik7eSYmUHIoeS50ZXh0Q29udGVudCxsZSl9KTt2YXIgbWU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1ub3RpZi1zb3VuZCIpO21lJiYobWUuY2hlY2tlZD1yLm5vdGlmU291bmQsbWUuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe3Iubm90aWZTb3VuZD1tZS5jaGVja2VkO3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1ub3RpZi1zb3VuZCIsU3RyaW5nKHIubm90aWZTb3VuZCkpfWNhdGNoe31yLm5vdGlmU291bmQmJmxpKCk7dmFyIHk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmLXZvbHVtZS1maWVsZCIpO3kmJih5LnN0eWxlLmRpc3BsYXk9ci5ub3RpZlNvdW5kPyIiOiJub25lIil9KSk7dmFyIG5lPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtdm9sdW1lIiksY2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1ub3RpZi12b2x1bWUtdmFsIiksVmU9ZnVuY3Rpb24oeSl7aWYoeSl7dmFyIEE9TnVtYmVyKHkubWlufHwwKSxXPU51bWJlcih5Lm1heHx8MTAwKSxCZT1OdW1iZXIoeS52YWx1ZXx8MCksQ3Q9Vz5BP01hdGgubWF4KDAsTWF0aC5taW4oMTAwLChCZS1BKS8oVy1BKSoxMDApKTowO3kuc3R5bGUuc2V0UHJvcGVydHkoIi0tcmFuZ2UtZmlsbCIsQ3QrIiUiKX19O2lmKG5lKXtuZS52YWx1ZT1TdHJpbmcoci5ub3RpZlZvbHVtZSksY2UmJihjZS50ZXh0Q29udGVudD1yLm5vdGlmVm9sdW1lKyIlIiksVmUobmUpO3ZhciBkdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibm90aWYtdm9sdW1lLWZpZWxkIik7ZHQmJihkdC5zdHlsZS5kaXNwbGF5PXIubm90aWZTb3VuZD8iIjoibm9uZSIpO3ZhciBVdD1udWxsO25lLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbigpe3Iubm90aWZWb2x1bWU9cGFyc2VJbnQobmUudmFsdWUsMTApLGNlJiYoY2UudGV4dENvbnRlbnQ9ci5ub3RpZlZvbHVtZSsiJSIpLFZlKG5lKTt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtbm90aWYtdm9sdW1lIixTdHJpbmcoci5ub3RpZlZvbHVtZSkpfWNhdGNoe31pZihOZSYmdHlwZW9mIFdhbmROYXRpdmUuc2V0Tm90aWZpY2F0aW9uVm9sdW1lPT0iZnVuY3Rpb24iKXRyeXtXYW5kTmF0aXZlLnNldE5vdGlmaWNhdGlvblZvbHVtZShyLm5vdGlmVm9sdW1lKX1jYXRjaHt9fSksbmUuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe2xpKCl9KX12YXIgWmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1ub3RpZi1idWJibGUiKTtaZSYmKFplLmNoZWNrZWQ9ci5ub3RpZkJ1YmJsZSxaZS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7ci5ub3RpZkJ1YmJsZT1aZS5jaGVja2VkO3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1ub3RpZi1idWJibGUiLFN0cmluZyhyLm5vdGlmQnViYmxlKSl9Y2F0Y2h7fX0pKTt2YXIgZXQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1yZXF1ZXN0LWJ0biIpO2V0JiZldC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtpZihOZSl7d2luZG93Ll9vbk5hdGl2ZVBlcm1pc3Npb25SZXN1bHQ9ZnVuY3Rpb24oKXtnbigpLGRlbGV0ZSB3aW5kb3cuX29uTmF0aXZlUGVybWlzc2lvblJlc3VsdH07dHJ5e1dhbmROYXRpdmUucmVxdWVzdFBlcm1pc3Npb24oKX1jYXRjaHt9fWVsc2UgdHlwZW9mIE5vdGlmaWNhdGlvbjwidSImJk5vdGlmaWNhdGlvbi5yZXF1ZXN0UGVybWlzc2lvbigpLnRoZW4oZnVuY3Rpb24oKXtnbigpfSl9KTt2YXIgdHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1yZXNldC1idG4iKTt0dCYmdHQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHdtKTt2YXIgRnQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi10ZXN0LWJ0biIpO0Z0JiZGdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIscmwpO3ZhciBudD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibm90aWZpY2F0aW9uLXRlc3QtZGVsYXktYnRuIik7aWYobnQmJm50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixDbSksZ24oKSxOZSYmdHlwZW9mIFdhbmROYXRpdmUuZ2V0QXZhaWxhYmxlU291bmRzPT0iZnVuY3Rpb24iKXt2YXIgcnQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5hdGl2ZS1zb3VuZC1zZWN0aW9uIiksRGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5hdGl2ZS1zb3VuZC1zZWxlY3QiKSxkZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibmF0aXZlLXNvdW5kLXByZXZpZXciKTtpZihydCYmRGUpe3J0LmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3RyeXt2YXIgd2U9SlNPTi5wYXJzZShXYW5kTmF0aXZlLmdldEF2YWlsYWJsZVNvdW5kcygpKSx3PVdhbmROYXRpdmUuZ2V0Tm90aWZpY2F0aW9uU291bmQoKTtEZS5pbm5lckhUTUw9IiI7Zm9yKHZhciBpdD0wO2l0PHdlLmxlbmd0aDtpdCsrKXt2YXIgd3Q9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgib3B0aW9uIik7d3QudmFsdWU9d2VbaXRdLmlkLHd0LnRleHRDb250ZW50PXdlW2l0XS5uYW1lLHdlW2l0XS5pZD09PXcmJih3dC5zZWxlY3RlZD0hMCksRGUuYXBwZW5kQ2hpbGQod3QpfURlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXt0cnl7V2FuZE5hdGl2ZS5zZXROb3RpZmljYXRpb25Tb3VuZChEZS52YWx1ZSl9Y2F0Y2h7fX0pLGRlJiZkZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt0cnl7V2FuZE5hdGl2ZS5wcmV2aWV3U291bmQoRGUudmFsdWUpfWNhdGNoe319KX1jYXRjaHt9fX1pZihOZSYmdHlwZW9mIFdhbmROYXRpdmUuaXNIYXB0aWNFbmFibGVkPT0iZnVuY3Rpb24iKXt2YXIgU3Q9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5hdGl2ZS1oYXB0aWMtc2VjdGlvbiIpLHl0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctaGFwdGljLWVuYWJsZWQiKTtpZihTdCYmeXQpe1N0LmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3RyeXt5dC5jaGVja2VkPVdhbmROYXRpdmUuaXNIYXB0aWNFbmFibGVkKCl9Y2F0Y2h7fXl0LmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXt0cnl7V2FuZE5hdGl2ZS5zZXRIYXB0aWNFbmFibGVkKHl0LmNoZWNrZWQpfWNhdGNoe315dC5jaGVja2VkJiZKbigibWVkaXVtIil9KX19dmFyIEl0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b3BiYXItbmV3LXNlc3Npb24tYnV0dG9uIik7SXQmJkl0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixHYSk7dmFyIGF0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkcmF3ZXItbmV3LXNlc3Npb24tYnV0dG9uIik7YXQmJmF0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixHYSk7dmFyIFZ0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjbG9zZS1tb2RhbC1idXR0b24iKTtWdCYmVnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHZuKTt2YXIgSGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNsb3NlLXdvcmt0cmVlLW1lcmdlLWJ1dHRvbiIpO0hlJiZIZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsWm4pO3ZhciBrZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya3RyZWUtbWVyZ2UtY2FuY2VsLWJ1dHRvbiIpO2tlJiZrZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsWm4pO3ZhciBBZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya3RyZWUtbWVyZ2UtY29uZmlybS1idXR0b24iKTtBZSYmQWUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHVtKTt2YXIgZnQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJ1bi1idXR0b24iKTtmdCYmZnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLEJtKTt2YXIgcHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcHJvdmUtcGVybWlzc2lvbi1idG4iKTtwdCYmcHQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHRkKTt2YXIgV2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRlbnktcGVybWlzc2lvbi1idG4iKTtXZSYmV2UuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLG5kKTt2YXIgaG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF1dG8tYXBwcm92ZS10b2dnbGUiKTtobiYmaG4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHJkKTt2YXIgVHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlbmQtaW5wdXQtYnV0dG9uIik7VHQmJlR0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe1d0KCksTWYoKX0pO3ZhciBMbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3RvcC1idXR0b24iKTtMbiYmTG4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLERhKTt2YXIgdXQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb24tbW9kYWwiKTt1dCYmdXQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3kudGFyZ2V0LmlkPT09InNlc3Npb24tbW9kYWwiJiZ2bigpLHkudGFyZ2V0LmlkPT09Indvcmt0cmVlLW1lcmdlLW1vZGFsIiYmWm4oKX0pO3ZhciBmZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7ZmUmJihzbyhmZSksZmUuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsTG0pLGZlLmFkZEV2ZW50TGlzdGVuZXIoInBhc3RlIixqbSksZmUuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLGZ1bmN0aW9uKCl7ci50ZXJtaW5hbENvbXBvc2luZ3x8b2woZmUpfHwoV3AoZmUpLGN0KGZlLnZhbHVlLCEwKSx4aShmZSkpfSksZmUuYWRkRXZlbnRMaXN0ZW5lcigiY29tcG9zaXRpb25zdGFydCIsZnVuY3Rpb24oKXtyLnRlcm1pbmFsSW50ZXJhY3RpdmUmJihyLnRlcm1pbmFsQ29tcG9zaW5nPSEwKX0pLGZlLmFkZEV2ZW50TGlzdGVuZXIoImNvbXBvc2l0aW9uZW5kIixmdW5jdGlvbigpe3IudGVybWluYWxDb21wb3NpbmcmJihyLnRlcm1pbmFsQ29tcG9zaW5nPSExLHIudGVybWluYWxJbnRlcmFjdGl2ZSYmb2woZmUpKX0pLGZlLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIixmdW5jdGlvbigpe1d0KCksUHAoe3RhcmdldDpmZX0pfSksZmUuYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIscXApKTt2YXIgcmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF0dGFjaC1idG4iKSxnZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS11cGxvYWQtaW5wdXQiKSxPZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29tcG9zZXItcGx1cy1wb3BvdmVyIiksS2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBsdXMtYXR0YWNoLWl0ZW0iKTtyZSYmT2UmJnJlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt5LnN0b3BQcm9wYWdhdGlvbigpLFl2KCl9KSxLZSYmZ2UmJktlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2tpKCksZ2UuY2xpY2soKX0pLGdlJiZnZS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7dmFyIHk9Z2UuZmlsZXM7aWYoeSlmb3IodmFyIEE9MDtBPHkubGVuZ3RoO0ErKylYYSh5W0FdKTtnZS52YWx1ZT0iIn0pO3ZhciBKZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtYnRuIik7SmUmJkplLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2dhKCl9KTt2YXIgeGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLWNhbmNlbC1idG4iKTt4ZSYmeGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7Z2EoITEpfSk7dmFyIENlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS1yZWNvcmQtYnRuIik7Q2UmJihDZS5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVyZG93biIsQmYpLENlLmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJtb3ZlIixEZiksQ2UuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIixNcyksQ2UuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmNhbmNlbCIsTXMpKTt2YXIgTHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInByb21wdC1vcHRpbWl6ZS1idG4iKTtMdCYmTHQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7V20oKX0pO3ZhciBHZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuaW5wdXQtY29tcG9zZXIiKTtHZSYmKEdlLmFkZEV2ZW50TGlzdGVuZXIoImRyYWdvdmVyIixmdW5jdGlvbih5KXt5LnByZXZlbnREZWZhdWx0KCkseS5zdG9wUHJvcGFnYXRpb24oKSxHZS5jbGFzc0xpc3QuYWRkKCJkcmFnLW92ZXIiKX0pLEdlLmFkZEV2ZW50TGlzdGVuZXIoImRyYWdsZWF2ZSIsZnVuY3Rpb24oeSl7eS5wcmV2ZW50RGVmYXVsdCgpLHkuc3RvcFByb3BhZ2F0aW9uKCksR2UuY2xhc3NMaXN0LnJlbW92ZSgiZHJhZy1vdmVyIil9KSxHZS5hZGRFdmVudExpc3RlbmVyKCJkcm9wIixmdW5jdGlvbih5KXt5LnByZXZlbnREZWZhdWx0KCkseS5zdG9wUHJvcGFnYXRpb24oKSxHZS5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnLW92ZXIiKTt2YXIgQT15LmRhdGFUcmFuc2ZlciYmeS5kYXRhVHJhbnNmZXIuZmlsZXM7aWYoQSlmb3IodmFyIFc9MDtXPEEubGVuZ3RoO1crKylYYShBW1ddKX0pKTt2YXIgSD1bInRlcm1pbmFsLWludGVyYWN0aXZlLXRvZ2dsZS10b3AiXTtILmZvckVhY2goZnVuY3Rpb24oeSl7dmFyIEE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoeSk7QSYmQS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIseXApfSk7dmFyIF89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtcGFuZWwtdG9nZ2xlLWJ0biIpO18mJl8uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLFVyKTt2YXIgWT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1zaWRlLXBhbmVsLWNsb3NlIik7WSYmWS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIseXUpO3ZhciBwZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1wYW5lbC1iYWNrZHJvcCIpO3BlJiZwZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIseXUpO3ZhciBoZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLWZpbGUtYnV0dG9uIik7aGUmJmhlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixVcik7dmFyIFllPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b3BiYXItY3dkIik7WWUmJihZZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtyLmZpbGVQYW5lbE9wZW58fFVyKCl9KSxZZS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbih5KXsoeS5rZXk9PT0iRW50ZXIifHx5LmtleT09PSIgIikmJih5LnByZXZlbnREZWZhdWx0KCksci5maWxlUGFuZWxPcGVufHxVcigpKX0pKTt2YXIgeW49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvcGJhci1tb3JlLWJ1dHRvbiIpLE1uPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b3BiYXItbW9yZS1tZW51Iik7eW4mJk1uJiYoeW4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3kuc3RvcFByb3BhZ2F0aW9uKCksci50b3BiYXJNb3JlT3Blbj0hci50b3BiYXJNb3JlT3BlbixNbi5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLCFyLnRvcGJhck1vcmVPcGVuKSx5bi5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLHIudG9wYmFyTW9yZU9wZW4pLHluLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsci50b3BiYXJNb3JlT3Blbj8idHJ1ZSI6ImZhbHNlIil9KSxNbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7dmFyIEE9eS50YXJnZXQmJnkudGFyZ2V0LmNsb3Nlc3Q/eS50YXJnZXQuY2xvc2VzdCgiLnRvcGJhci1tb3JlLWl0ZW0iKTpudWxsO2lmKEEpe3ZhciBXPUEuZ2V0QXR0cmlidXRlKCJkYXRhLWFjdGlvbiIpO3N3aXRjaChyLnRvcGJhck1vcmVPcGVuPSExLE1uLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLHluLmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpLHluLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsImZhbHNlIiksVyl7Y2FzZSJjb3B5LWNsYXVkZS1zZXNzaW9uLWlkIjppYSgiY2xhdWRlU2Vzc2lvbklkIixfdCgpJiZfdCgpLnByb3ZpZGVyPT09ImNvZGV4Ij8iQ29kZXggdGhyZWFkIElEIFx1NURGMlx1NTkwRFx1NTIzNiI6IkNsYXVkZSBcdTRGMUFcdThCREQgSUQgXHU1REYyXHU1OTBEXHU1MjM2Iik7YnJlYWs7Y2FzZSJjb3B5LWN3ZCI6aWEoImN3ZCIsIlx1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NVx1NURGMlx1NTkwRFx1NTIzNiIpO2JyZWFrO2Nhc2UiY29weS1zZXNzaW9uLWlkIjppYSgiaWQiLCJcdTRGMUFcdThCREQgSUQgXHU1REYyXHU1OTBEXHU1MjM2Iik7YnJlYWs7Y2FzZSJ3b3JrdHJlZS1tZXJnZSI6ci5zZWxlY3RlZElkJiZRbyhyLnNlbGVjdGVkSWQpO2JyZWFrO2Nhc2Uid29ya3RyZWUtY2xlYW51cCI6ci5zZWxlY3RlZElkJiYkbyhyLnNlbGVjdGVkSWQpO2JyZWFrO2Nhc2UiZGVsZXRlLXNlc3Npb24iOnIuc2VsZWN0ZWRJZCYmKGZ1bmN0aW9uKEJlKXtEbigiXHU3ODZFXHU1QjlBXHU4OTgxXHU1MjIwXHU5NjY0XHU1RjUzXHU1MjREXHU0RjFBXHU4QkREXHU1NDE3XHVGRjFGXHU2QjY0XHU2NENEXHU0RjVDXHU2NUUwXHU2Q0Q1XHU2NEE0XHU5NTAwXHUzMDAyIix7dGl0bGU6Ilx1NTIyMFx1OTY2NFx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERCJ9KS50aGVuKGZ1bmN0aW9uKEN0KXtDdCYmWnMoQmUpfSl9KShyLnNlbGVjdGVkSWQpO2JyZWFrfX19KSk7dmFyIFRpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXJtaW5hbC1zY2FsZS1kb3duLXRvcCIpLGxsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXJtaW5hbC1zY2FsZS11cC10b3AiKTtUaSYmVGkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7RXUoLS4yNSl9KSxsbCYmbGwuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7RXUoLjI1KX0pO3ZhciBjbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicGFnZS1yZWZyZXNoLWJ0biIpO2NsJiZjbC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7aWYoeSYmeS5zaGlmdEtleSl7bG9jYXRpb24ucmVsb2FkKCk7cmV0dXJufWtuKCksa3Qoe3ByZXNlcnZlU3RpY2tTdGF0ZTohMH0pLGZvKCEwKX0pO3ZhciBkbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVybWluYWwtanVtcC1ib3R0b20iKTtkbCYmZGwuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7RXQoImZvcmNlIil9KTt2YXIgZmw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXQtdW5yZWFkLWJ1YmJsZSIpO2ZsJiZmbC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtNbCghMCl9KTt2YXIgcGw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtZXhwbG9yZXItcmVmcmVzaCIpO3BsJiZwbC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtPdCgpfSk7dmFyIHZsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLWV4cGxvcmVyLXVwIik7dmwmJnZsLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixYbCk7dmFyIHplPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLWV4cGxvcmVyLWN3ZCIpO2lmKHplJiZ6ZS50YWdOYW1lPT09IklOUFVUIil7dmFyIHJyPXplLnZhbHVlLG1sPWZ1bmN0aW9uKHkpe3ZhciBBPSh5fHwiIikudHJpbSgpO3JldHVybiBBPyhBPUEucmVwbGFjZSgvXC97Mix9L2csIi8iKSxBLmxlbmd0aD4xJiYoQT1BLnJlcGxhY2UoL1wvKyQvLCIiKSksQSk6IiJ9O3plLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIixmdW5jdGlvbigpe3JyPXplLnZhbHVlLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0cnl7emUuc2VsZWN0KCl9Y2F0Y2h7fX0sMCl9KSx6ZS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbih5KXtpZih5LmtleT09PSJFbnRlciIpe3kucHJldmVudERlZmF1bHQoKTt2YXIgQT1tbCh6ZS52YWx1ZSk7aWYoIUEpcmV0dXJuO3JyPUEsemUudmFsdWU9QSxPdCh7Y3dkOkF9KSx6ZS5ibHVyKCl9ZWxzZSB5LmtleT09PSJFc2NhcGUiJiYoeS5wcmV2ZW50RGVmYXVsdCgpLHplLnZhbHVlPXJyLHplLmJsdXIoKSl9KSx6ZS5hZGRFdmVudExpc3RlbmVyKCJibHVyIixmdW5jdGlvbigpe3ZhciB5PW1sKHplLnZhbHVlKTtpZigheSl7emUudmFsdWU9cnI7cmV0dXJufWlmKHk9PT1ycil7emUudmFsdWU9eTtyZXR1cm59cnI9eSx6ZS52YWx1ZT15LE90KHtjd2Q6eX0pfSl9dmFyIExpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLXNlYXJjaC1pbnB1dCIpLF9yPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLXNlYXJjaC1jbGVhciIpO0xpJiZMaS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsZnVuY3Rpb24oeSl7ci5maWxlU2VhcmNoUXVlcnk9eS50YXJnZXQudmFsdWUudHJpbSgpLF9yJiZfci5jbGFzc0xpc3QudG9nZ2xlKCJ2aXNpYmxlIixyLmZpbGVTZWFyY2hRdWVyeS5sZW5ndGg+MCksQ3UoKX0pLF9yJiZfci5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtyLmZpbGVTZWFyY2hRdWVyeT0iIixMaSYmKExpLnZhbHVlPSIiKSxfci5jbGFzc0xpc3QucmVtb3ZlKCJ2aXNpYmxlIil9KTt2YXIgeWU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItaW5wdXQiKSxUZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci1kcm9wZG93biIpLGF1PW51bGwsS3Q9LTEsRW49W107ZnVuY3Rpb24gZ2woeSl7eWUmJnllLmNsYXNzTGlzdC5hZGQoImludmFsaWQiKTt2YXIgQT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci12YWxpZGF0aW9uIik7QSYmKEEudGV4dENvbnRlbnQ9eSxBLmNsYXNzTGlzdC5hZGQoInZpc2libGUiKSl9ZnVuY3Rpb24gaGwoKXt5ZSYmeWUuY2xhc3NMaXN0LnJlbW92ZSgiaW52YWxpZCIpO3ZhciB5PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb2xkZXItcGlja2VyLXZhbGlkYXRpb24iKTt5JiYoeS50ZXh0Q29udGVudD0iIix5LmNsYXNzTGlzdC5yZW1vdmUoInZpc2libGUiKSl9ZnVuY3Rpb24gSm0oeSl7aWYoIXkubGVuZ3RoKXJldHVybiIiO3ZhciBBPSc8ZGl2IGNsYXNzPSJmb2xkZXItcmVjZW50LXNlY3Rpb24iPjxkaXYgY2xhc3M9ImZvbGRlci1yZWNlbnQtdGl0bGUiPlx1NjcwMFx1OEZEMVx1NEY3Rlx1NzUyODwvZGl2Pic7cmV0dXJuIHkuZm9yRWFjaChmdW5jdGlvbihXKXt2YXIgQmU9Vy5wYXRofHxXO0ErPSc8ZGl2IGNsYXNzPSJmb2xkZXItcmVjZW50LWl0ZW0iIGRhdGEtcGF0aD0iJytwKEJlKSsnIj48c3BhbiBjbGFzcz0iZm9sZGVyLXJlY2VudC1pdGVtLXBhdGgiPicrcChCZSkrIjwvc3Bhbj48L2Rpdj4ifSksQSs9IjwvZGl2PiIsQX1mdW5jdGlvbiBHbSgpe1RlJiZuYShmdW5jdGlvbih5KXt2YXIgQT1KbSh5KTtBPyhUZS5pbm5lckhUTUw9QSxUZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxUZS5xdWVyeVNlbGVjdG9yQWxsKCIuZm9sZGVyLXJlY2VudC1pdGVtIikuZm9yRWFjaChmdW5jdGlvbihXKXtXLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhciBCZT10aGlzLmRhdGFzZXQucGF0aDt5ZSYmKHllLnZhbHVlPUJlLFF0KEJlKSxlbihCZSkpfSl9KSk6TnIoKX0pfXZhciB5bD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya2luZy1kaXItaW5kaWNhdG9yIik7eWwmJnlsLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3Iuc2VsZWN0ZWRJZD1udWxsLEZlKCksci5kcmFmdHM9e30sJHQoKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIHk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItaW5wdXQiKTt5JiZ5LmZvY3VzKCl9LDUwKX0pO3ZhciB1dT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci10b2dnbGUiKSxUZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci1kcm9wZG93biIpO3V1JiZUZSYmdXUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7VGUuY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIiksdXUuY2xhc3NMaXN0LnRvZ2dsZSgib3BlbiIpfSk7dmFyIE1pPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5mb2xkZXItcGlja2VyLWNvbXBhY3QiKTtpZihNaSYmKE1pLmFkZEV2ZW50TGlzdGVuZXIoImRyYWdvdmVyIixmdW5jdGlvbih5KXt5LnByZXZlbnREZWZhdWx0KCkseS5zdG9wUHJvcGFnYXRpb24oKSx0aGlzLmNsYXNzTGlzdC5hZGQoImRyYWctb3ZlciIpfSksTWkuYWRkRXZlbnRMaXN0ZW5lcigiZHJhZ2xlYXZlIixmdW5jdGlvbih5KXt5LnByZXZlbnREZWZhdWx0KCkseS5zdG9wUHJvcGFnYXRpb24oKSx0aGlzLmNsYXNzTGlzdC5yZW1vdmUoImRyYWctb3ZlciIpfSksTWkuYWRkRXZlbnRMaXN0ZW5lcigiZHJvcCIsZnVuY3Rpb24oeSl7eS5wcmV2ZW50RGVmYXVsdCgpLHkuc3RvcFByb3BhZ2F0aW9uKCksdGhpcy5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnLW92ZXIiKTt2YXIgQT15LmRhdGFUcmFuc2ZlciYmeS5kYXRhVHJhbnNmZXIuaXRlbXM7aWYoQSlmb3IodmFyIFc9MDtXPEEubGVuZ3RoO1crKyl7dmFyIEJlPUFbV107aWYoQmUua2luZD09PSJmaWxlIiYmQmUud2Via2l0R2V0QXNFbnRyeSl7dmFyIEN0PUJlLndlYmtpdEdldEFzRW50cnkoKTtpZihDdCYmQ3QuaXNEaXJlY3RvcnkmJnllKXt2YXIgTXQ9Q3QuZnVsbFBhdGg7eWUudmFsdWU9TXQsUXQoTXQpLGVuKE10KTticmVha319fX0pKSxUZSYmVGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3ZhciBBPXkudGFyZ2V0LmNsb3Nlc3QoIi5mb2xkZXItcGlja2VyLXF1aWNrLWJ0biIpO2lmKEEmJnllKXt2YXIgVz1BLmRhdGFzZXQucGF0aDt5ZS52YWx1ZT1XLFF0KFcpLGVuKFcpLFRlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpO3ZhciBCZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci10b2dnbGUiKTtCZSYmQmUuY2xhc3NMaXN0LnJlbW92ZSgib3BlbiIpfX0pLHllKXt2YXIgWW09JGUoKTtlbihZbSkseWUuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLGZ1bmN0aW9uKCl7dmFyIHk9dGhpcy52YWx1ZS50cmltKCk7eT9lbih5KTpHbSgpfSkseWUuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLGZ1bmN0aW9uKHkpe3ZhciBBPXkudGFyZ2V0LnZhbHVlLnRyaW0oKTtLdD0tMSxhdSYmY2xlYXJUaW1lb3V0KGF1KSxhdT1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7QT9lbihBKTpOcigpfSwxNTApfSkseWUuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24oeSl7aWYoeS5rZXk9PT0iRXNjYXBlIilOcigpLHRoaXMuYmx1cigpO2Vsc2UgaWYoeS5rZXk9PT0iQXJyb3dEb3duIil5LnByZXZlbnREZWZhdWx0KCksRW4ubGVuZ3RoPjAmJihLdD1NYXRoLm1pbihLdCsxLEVuLmxlbmd0aC0xKSxFbCgpKTtlbHNlIGlmKHkua2V5PT09IkFycm93VXAiKXkucHJldmVudERlZmF1bHQoKSxLdD4wJiYoS3QtLSxFbCgpKTtlbHNlIGlmKHkua2V5PT09IkVudGVyIiYmS3Q+PTApe3kucHJldmVudERlZmF1bHQoKTt2YXIgQT1FbltLdF07aWYoQSl7dmFyIFc9QS5kYXRhc2V0LnBhdGg7aWYoVz09PSIuLiIpe3ZhciBCZT15ZS52YWx1ZS50cmltKCksQ3Q9QmUuc3Vic3RyaW5nKDAsQmUubGFzdEluZGV4T2YoIi8iKSk7Q3QmJih5ZS52YWx1ZT1DdHx8Ii8iLFF0KHllLnZhbHVlKSxlbihDdHx8Ii8iKSl9ZWxzZSB5ZS52YWx1ZT1XLFF0KFcpLE5yKCl9fX0pfWZ1bmN0aW9uIEVsKCl7RW4uZm9yRWFjaChmdW5jdGlvbih5LEEpe3kuY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIixBPT09S3QpfSl9ZnVuY3Rpb24gU2coeSl7fWZ1bmN0aW9uIGVuKHkpe1RlJiYoVGUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyLWxvYWRpbmciPlx1NTJBMFx1OEY3RFx1NEUyRC4uLjwvZGl2PicsVGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksS3Q9LTEsRW49W10sZmV0Y2goIi9hcGkvZm9sZGVycz9xPSIrZW5jb2RlVVJJQ29tcG9uZW50KHkpLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihBKXtyZXR1cm4gQS5qc29uKCkudGhlbihmdW5jdGlvbihXKXtyZXR1cm57b2s6QS5vayxzdGF0dXM6QS5zdGF0dXMsZGF0YTpXfX0pfSkudGhlbihmdW5jdGlvbihBKXt2YXIgVz1BLmRhdGE7aWYoIUEub2t8fFcuZXJyb3Ipe2dsKFcuZXJyb3J8fCJcdThERUZcdTVGODRcdTY1RTBcdTY1NDgiKSxUZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZvbGRlci1waWNrZXItZXJyb3IiPicrcChXLmVycm9yfHwiXHU4REVGXHU1Rjg0XHU2NUUwXHU2NTQ4IikrIjwvZGl2PiI7cmV0dXJufWhsKCksVy5jdXJyZW50UGF0aDt2YXIgQmU9Vy5pdGVtc3x8W10sQ3Q9Vy5jdXJyZW50UGF0aHx8eTtpZihCZS5sZW5ndGg9PT0wKXtUZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZvbGRlci1waWNrZXItbG9hZGluZyI+XHU3QTdBXHU3NkVFXHU1RjU1PC9kaXY+JztyZXR1cm59VGUuaW5uZXJIVE1MPUJlLm1hcChmdW5jdGlvbihNdCl7dmFyIE9pPU10LnR5cGU9PT0icGFyZW50Ij8iXHUyMUE5XHVGRTBGIjoiXHV7MUY0QzF9IixzdT1NdC50eXBlPT09InBhcmVudCI/Ii4uIChcdThGRDRcdTU2REVcdTRFMEFcdTdFQTcpIjpNdC5uYW1lO3JldHVybic8ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyLWl0ZW0iIGRhdGEtcGF0aD0iJytwKE10LnBhdGgpKyciIGRhdGEtdHlwZT0iJytNdC50eXBlKyciPjxzcGFuIGNsYXNzPSJmb2xkZXItcGlja2VyLWl0ZW0taWNvbiI+JytPaSsiPC9zcGFuPjxzcGFuPiIrcChzdSkrIjwvc3Bhbj48L2Rpdj4ifSkuam9pbigiIiksRW49QXJyYXkuZnJvbShUZS5xdWVyeVNlbGVjdG9yQWxsKCIuZm9sZGVyLXBpY2tlci1pdGVtIikpLEVuLmZvckVhY2goZnVuY3Rpb24oTXQpe010LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhciBPaT10aGlzLmRhdGFzZXQucGF0aCxzdT10aGlzLmRhdGFzZXQudHlwZTtpZih5ZSlpZihzdT09PSJwYXJlbnQiKXt2YXIgQ2w9eWUudmFsdWUudHJpbSgpLEJsPUNsLnN1YnN0cmluZygwLENsLmxhc3RJbmRleE9mKCIvIikpO3llLnZhbHVlPUJsfHwiLyIsUXQoeWUudmFsdWUpLGVuKEJsfHwiLyIpfWVsc2UgeWUudmFsdWU9T2ksUXQoT2kpLGhsKCksTnIoKX0pfSl9KS5jYXRjaChmdW5jdGlvbihBKXtnbCgiXHU1MkEwXHU4RjdEXHU1OTMxXHU4RDI1IiksVGUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyLWVycm9yIj5cdTUyQTBcdThGN0RcdTU5MzFcdThEMjU8L2Rpdj4nfSkpfWZ1bmN0aW9uIE5yKCl7VGUmJlRlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLEt0PS0xLEVuPVtdfXZhciBibj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci1tb2RhbCIpLGJsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjbG9zZS1mb2xkZXItcGlja2VyIik7ZnVuY3Rpb24gSWcoKXtpZihibil7Ym4uY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikseWUmJih5ZS52YWx1ZT0kZSgpKTt2YXIgeT0kZSgpO2VuKHkpfX1ibCYmYm4mJmJsLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2JuLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpfSksYm4mJmJuLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt5LnRhcmdldD09PWJuJiZibi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKX0pO3ZhciBGbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLWdpdC1iYWRnZSIpO0ZsJiZGbC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7eS5wcmV2ZW50RGVmYXVsdCgpLHF1KCl9KTt2YXIgd2w9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1tb2RhbCIpO3dsJiZ3bC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7eS50YXJnZXQuaWQ9PT0icXVpY2stY29tbWl0LW1vZGFsIiYmIXIucXVpY2tDb21taXRTdWJtaXR0aW5nJiZfbigpfSksSHUoKSxLbigpLFVwKCksb2QoKSxKZigpLGx0KCl9ZnVuY3Rpb24ga3QoZSl7dmFyIHQ9ZXx8e307ci5sYXN0UmVuZGVyZWRIYXNoPTAsci5sYXN0UmVuZGVyZWRNc2dDb3VudD0wLHIubGFzdFJlbmRlcmVkRW1wdHk9bnVsbCxyLnJlbmRlclBlbmRpbmc9ITEsci5jaGF0UmVuZGVyZWRDb3VudD1yLmNoYXRQYWdlU2l6ZSxyLmFza1VzZXJTZWxlY3Rpb25zPXt9LHIuY2hhdFNjcm9sbEVsZW1lbnQmJihyLmNoYXRTY3JvbGxIYW5kbGVyJiZyLmNoYXRTY3JvbGxFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInNjcm9sbCIsci5jaGF0U2Nyb2xsSGFuZGxlciksci5jaGF0U2Nyb2xsV2hlZWxIYW5kbGVyJiZyLmNoYXRTY3JvbGxFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIndoZWVsIixyLmNoYXRTY3JvbGxXaGVlbEhhbmRsZXIpLHIuY2hhdFNjcm9sbFRvdWNoU3RhcnRIYW5kbGVyJiZyLmNoYXRTY3JvbGxFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLHIuY2hhdFNjcm9sbFRvdWNoU3RhcnRIYW5kbGVyKSxyLmNoYXRTY3JvbGxUb3VjaE1vdmVIYW5kbGVyJiZyLmNoYXRTY3JvbGxFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsci5jaGF0U2Nyb2xsVG91Y2hNb3ZlSGFuZGxlcikpLHIuY2hhdFNjcm9sbEVsZW1lbnQ9bnVsbCxyLmNoYXRTY3JvbGxIYW5kbGVyPW51bGwsci5jaGF0U2Nyb2xsV2hlZWxIYW5kbGVyPW51bGwsci5jaGF0U2Nyb2xsVG91Y2hTdGFydEhhbmRsZXI9bnVsbCxyLmNoYXRTY3JvbGxUb3VjaE1vdmVIYW5kbGVyPW51bGwsci5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGw9ITEsdC5wcmVzZXJ2ZVN0aWNrU3RhdGV8fChyLmNoYXRTdGlja1RvQm90dG9tPSEwLHIuY2hhdFVucmVhZENvdW50PTAsci5jaGF0VW5yZWFkU3RhcnRJbmRleD0tMSxyLmNoYXRJbml0aWFsUmVuZGVyRG9uZT0hMSl9ZnVuY3Rpb24gJGUoKXtyZXR1cm4gci53b3JraW5nRGlyfHx0bigpfXdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJvbmxpbmUiLGZ1bmN0aW9uKCl7ci5pc09ubGluZT0hMCxhaSgpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9mZmxpbmUiLGZ1bmN0aW9uKCl7ci5pc09ubGluZT0hMSxhaSgpfSk7ZnVuY3Rpb24gYWkoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib2ZmbGluZS1iYW5uZXIiKTtpZighci5pc09ubGluZSYmIWUpe3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3QuaWQ9Im9mZmxpbmUtYmFubmVyIix0LmNsYXNzTmFtZT0ib2ZmbGluZS1iYW5uZXIiLHQudGV4dENvbnRlbnQ9IllvdSBhcmUgb2ZmbGluZSAtIHNvbWUgZmVhdHVyZXMgbWF5IGJlIGxpbWl0ZWQiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodCl9ZWxzZSByLmlzT25saW5lJiZlJiZlLnJlbW92ZSgpfWZ1bmN0aW9uIFFkKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcCIpO2UmJihlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iYm9vdC1sb2FkaW5nIj48ZGl2IGNsYXNzPSJib290LWxvYWRpbmctY2FyZCI+PGRpdiBjbGFzcz0iYm9vdC1sb2FkaW5nLXNwaW5uZXIiPjwvZGl2PjxkaXYgY2xhc3M9ImJvb3QtbG9hZGluZy10ZXh0Ij5cdTZCNjNcdTU3MjhcdThGREVcdTYzQTUgV2FuZFx1MjAyNjwvZGl2PjwvZGl2PjwvZGl2PicpfWZ1bmN0aW9uIHlyKGUsdCl7aWYoci5jb25maWcmJiFkb2N1bWVudC5oaWRkZW4pe3ZhciBuPXQmJnQuaW1tZWRpYXRlPT09ITAsaT1EYXRlLm5vdygpOyFuJiZpLXIubGFzdEZvcmVncm91bmRTeW5jQXQ8MTUwMHx8KHIubGFzdEZvcmVncm91bmRTeW5jQXQ9aSxyLmZvcmVncm91bmRTeW5jVGltZXImJihjbGVhclRpbWVvdXQoci5mb3JlZ3JvdW5kU3luY1RpbWVyKSxyLmZvcmVncm91bmRTeW5jVGltZXI9bnVsbCksJGQoZSxuKSl9fWZ1bmN0aW9uICRkKGUsdCl7cmV0dXJuIXIuY29uZmlnfHxkb2N1bWVudC5oaWRkZW4/UHJvbWlzZS5yZXNvbHZlKCk6KG5zKCksdD8kaSgicmVzdW1lLWZvcmNlIik6KCFyLndzfHxyLndzLnJlYWR5U3RhdGUhPT1XZWJTb2NrZXQuT1BFTiYmci53cy5yZWFkeVN0YXRlIT09V2ViU29ja2V0LkNPTk5FQ1RJTkcpJiZYcigpLHIuY2xhdWRlSGlzdG9yeUxvYWRlZCYmWnUoKSxmbih7c2tpcFNlbGVjdGVkT3V0cHV0UmVsb2FkOiEwfSkuY2F0Y2goZnVuY3Rpb24obil7Y29uc29sZS5lcnJvcigiW3dhbmRdIGZvcmVncm91bmQgc3luYyBmYWlsZWQ6IixlLG4pfSkpfWZ1bmN0aW9uIFhkKCl7d2luZG93Ll9fd2FuZEZvcmVncm91bmRTeW5jQm91bmR8fCh3aW5kb3cuX193YW5kRm9yZWdyb3VuZFN5bmNCb3VuZD0hMCxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIixmdW5jdGlvbigpe2RvY3VtZW50LmhpZGRlbj9RaSgpOih5cigidmlzaWJpbGl0eSIpLGhyKCJ2aXNpYmlsaXR5IikpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIixmdW5jdGlvbigpe3lyKCJmb2N1cyIpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInBhZ2VzaG93IixmdW5jdGlvbigpe3lyKCJwYWdlc2hvdyIpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc3VtZSIsZnVuY3Rpb24oKXt5cigicmVzdW1lIil9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigid2FuZC1hbmRyb2lkLXJlc3VtZSIsZnVuY3Rpb24oKXt5cigiYW5kcm9pZC1yZXN1bWUiLHtpbW1lZGlhdGU6ITB9KSxocigiYW5kcm9pZC1yZXN1bWUiKX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ3YW5kLWltZS1zdGF0ZSIsZnVuY3Rpb24oZSl7dmFyIHQ9ZSYmZS5kZXRhaWwmJmUuZGV0YWlsLnN0YXRlO2lmKHQ9PT0ic2hvd24ifHx0PT09ImhpZGRlbiIpdHJ5e290KCJuYXRpdmUtaW1lLSIrdCx7Zm9yY2VSZXBsYXk6ITB9KSxFdCgibmF0aXZlLWltZSIpfWNhdGNoe319KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigid2FuZC1hbmRyb2lkLW5ldHdvcmsiLGZ1bmN0aW9uKGUpe3ZhciB0PWUmJmUuZGV0YWlsJiZlLmRldGFpbC5zdGF0ZTtpZih0PT09Imxvc3QiKXtyLmlzT25saW5lPSExO3RyeXthaSgpfWNhdGNoe31yZXR1cm59aWYodD09PSJhdmFpbGFibGUifHx0PT09ImNoYW5nZWQifHx0PT09InZhbGlkYXRlZCIpe3IuaXNPbmxpbmU9ITA7dHJ5e2FpKCl9Y2F0Y2h7fSRpKCJhbmRyb2lkLW5ldHdvcmstIit0KX19KSl9ZnVuY3Rpb24gWmQoKXtmZXRjaCgiL2FwaS9zZXNzaW9uLWNoZWNrIix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGUub2s/ZS5qc29uKCk6e2F1dGhlZDohMX19KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiFlfHwhZS5hdXRoZWQ/KHIubG9naW5DaGVja2VkPSEwLCR0KCksbnVsbCk6ZmV0Y2goIi9hcGkvY29uZmlnIix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQub2s/dC5qc29uKCk6KHIubG9naW5DaGVja2VkPSEwLCR0KCksbnVsbCl9KX0pLnRoZW4oZnVuY3Rpb24oZSl7ZSYmKHIuY29uZmlnPWUsci5sb2dpbkNoZWNrZWQ9ITAscmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7dHJ5eyR0KHtza2lwU2hlbGxDaHJvbWU6ITB9KX1jYXRjaHt9WGQoKSxlcygpLGp0KCksVm8oKSxjZigpLGUudXBkYXRlQXZhaWxhYmxlJiZlLmxhdGVzdFZlcnNpb24mJkFzKGUuY3VycmVudFZlcnNpb258fCItIixlLmxhdGVzdFZlcnNpb24pLHhuJiZFbSgpLGFuJiZibSgpLHIuY2xhdWRlSGlzdG9yeUxvYWRlZHx8c2V0VGltZW91dChmdW5jdGlvbigpe3IuY2xhdWRlSGlzdG9yeUxvYWRlZHx8JHIoKX0sNjAwKX0pKX0pLmNhdGNoKGZ1bmN0aW9uKCl7aWYoci5sb2dpbkNoZWNrZWQ9ITAsIW5hdmlnYXRvci5vbkxpbmUpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHAiKTtlJiYoZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImJvb3QtbG9hZGluZyI+PGRpdiBjbGFzcz0iYm9vdC1sb2FkaW5nLWNhcmQiPjxkaXYgY2xhc3M9ImJvb3QtbG9hZGluZy10ZXh0IiBzdHlsZT0iZm9udC1zaXplOjEuM2VtO21hcmdpbi1ib3R0b206MTJweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Z2FwOjhweCI+JytHKCJzaWduYWwiLHtzaXplOjIwLHN0cm9rZVdpZHRoOjEuOH0pKyc8c3Bhbj5cdTY1RTBcdTZDRDVcdThGREVcdTYzQTVcdTUyMzBcdTY3MERcdTUyQTFcdTU2Njg8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0iYm9vdC1sb2FkaW5nLXRleHQiIHN0eWxlPSJvcGFjaXR5OjAuNztmb250LXNpemU6MC45NWVtIj5cdThCRjdcdTY4QzBcdTY3RTVcdTdGNTFcdTdFRENcdThGREVcdTYzQTVcdTYyMTZcdTc4NkVcdThCQTQgV2FuZCBcdTY3MERcdTUyQTFcdTZCNjNcdTU3MjhcdThGRDBcdTg4NENcdTMwMDI8L2Rpdj48YnV0dG9uIG9uY2xpY2s9ImxvY2F0aW9uLnJlbG9hZCgpIiBzdHlsZT0ibWFyZ2luLXRvcDoxOHB4O3BhZGRpbmc6OHB4IDI0cHg7Ym9yZGVyLXJhZGl1czo4cHg7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE1MCwxMTgsODUsMC4zKTtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC44KTtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MC45NWVtIj5cdTkxQ0RcdThCRDU8L2J1dHRvbj48L2Rpdj48L2Rpdj4nKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigib25saW5lIixmdW5jdGlvbigpe2xvY2F0aW9uLnJlbG9hZCgpfSx7b25jZTohMH0pO3JldHVybn0kdCgpfSl9ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGUpe2lmKCFfZSgpJiYhci5zaWRlYmFyUGlubmVkJiYhci5zaWRlYmFyQ29sbGFwc2VkJiZyLnNlc3Npb25zRHJhd2VyT3Blbil7dmFyIHQ9ZS50YXJnZXQ7IXR8fCEodCBpbnN0YW5jZW9mIEVsZW1lbnQpfHx0LmNsb3Nlc3QoIiNzZXNzaW9ucy1kcmF3ZXIiKXx8dC5jbG9zZXN0KCIjc2Vzc2lvbnMtdG9nZ2xlLWJ1dHRvbiIpfHx0LmNsb3Nlc3QoIi5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZSIpfHx0LmNsb3Nlc3QoIi5zaWRlYmFyLXRpbGUtYnViYmxlIil8fHQuY2xvc2VzdCgiLm1vZGFsLWJhY2tkcm9wLCAubW9kYWwtb3ZlcmxheSwgLm1vZGFsLWNvbnRhaW5lciwgW3JvbGU9J2RpYWxvZyddLCBbcm9sZT0nbWVudSddLCAudG9wYmFyLW1vcmUtbWVudSwgLnNpZGViYXItaGVhZGVyLW92ZXJmbG93LCAuZm9sZGVyLXBpY2tlci1kcm9wZG93biwgLnBhdGgtc3VnZ2VzdGlvbnMsIC5wZXJtaXNzaW9uLXByb21wdC1vdmVybGF5LCAucmVzdGFydC1vdmVybGF5Iil8fEd2KCl9fSwhMCksUWQoKSxaZCgpO2Z1bmN0aW9uICR0KGUpe3ZhciB0PWUmJmUuc2tpcFNoZWxsQ2hyb21lLG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcCIpLGk9ci5jb25maWchPT1udWxsLGE9ci5tb2RhbE9wZW4sdT0haXx8ISFkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7aWYodSYmZ3IoKSxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgibm8tdHJhbnNpdGlvbiIpLHIuc2lkZWJhclBpbm5lZCYmIXIuc2lkZWJhckNvbGxhcHNlZCYmIV9lKCkmJihyLnNlc3Npb25zRHJhd2VyT3Blbj0hMCxTZSgid2FuZC1zaWRlYmFyLW9wZW4iLCEwKSksbi5pbm5lckhUTUw9aT9uZigpOnRmKCksa3QoKSxZZCgpLFRyKCksQ2koKSxYbihfdCgpKSxEaSgpLHR8fElyKCksaSYmci5maWxlUGFuZWxPcGVuJiZPdCgpLGRvY3VtZW50LmJvZHkub2Zmc2V0SGVpZ2h0LHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCJuby10cmFuc2l0aW9uIil9KSxhJiZyLm1vZGFsT3Blbil7dmFyIHM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb24tbW9kYWwiKTtpZihzKXtzLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3ZhciBvPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2QiKTtvJiYoby52YWx1ZT1yLmN3ZFZhbHVlKSxTcigpfX1pZihpJiZyLnNlbGVjdGVkSWQmJnIuZ2l0U3RhdHVzU2Vzc2lvbklkIT09ci5zZWxlY3RlZElkJiZ3bihyLnNlbGVjdGVkSWQpLGkpe3ZhciBsPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihjKXtyZXR1cm4gYy5pZD09PXIuc2VsZWN0ZWRJZH0pO251KGwpfUlpKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b3BiYXItY3dkIikpLElpKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJibGFuay1jaGF0LWN3ZC1wYXRoIikpLElpKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3b3JraW5nLWRpci1pbmRpY2F0b3ItcGF0aCIpKX1mdW5jdGlvbiBlZigpe3ZhciBlPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihuKXtyZXR1cm4gbi5pZD09PXIuc2VsZWN0ZWRJZH0pLHQ9ZSYmZS5hcHByb3ZhbFN0YXRzO3JldHVybiF0fHx0LnRvdGFsPT09MD8nPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzIGhpZGRlbiIgaWQ9ImFwcHJvdmFsLXN0YXRzIj48L3NwYW4+JzonPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzIiBpZD0iYXBwcm92YWwtc3RhdHMiPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1kaXZpZGVyIj48L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLWJhZGdlIiBpZD0iYXBwcm92YWwtc3RhdHMtYmFkZ2UiIHRpdGxlPSJcdTY3MkNcdTZCMjFcdTRGMUFcdThCRERcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTdFREZcdThCQTEiPjxzdmcgY2xhc3M9ImFwcHJvdmFsLXN0YXRzLWljb24iIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0xMiAyMnM4LTQgOC0xMFY1bC04LTMtOCAzdjdjMCA2IDggMTAgOCAxMHoiLz48L3N2Zz48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtdG90YWwiPicrdC50b3RhbCsnPC9zcGFuPjwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcG9wdXAiIGlkPSJhcHByb3ZhbC1zdGF0cy1wb3B1cCI+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXBvcHVwLXRpdGxlIj5cdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTdFREZcdThCQTE8L3NwYW4+JysodC5jb21tYW5kPjA/JzxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ciPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctaWNvbiI+JytHKCJ0ZXJtaW5hbCIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWxhYmVsIj5cdTU0N0RcdTRFRTRcdTYyNjdcdTg4NEM8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1jb3VudCI+Jyt0LmNvbW1hbmQrIjwvc3Bhbj48L3NwYW4+IjoiIikrKHQuZmlsZT4wPyc8c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93Ij48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWljb24iPicrRygiZWRpdCIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWxhYmVsIj5cdTY1ODdcdTRFRjZcdTUxOTlcdTUxNjU8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1jb3VudCI+Jyt0LmZpbGUrIjwvc3Bhbj48L3NwYW4+IjoiIikrKHQudG9vbD4wPyc8c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93Ij48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWljb24iPicrRygid3JlbmNoIix7c2l6ZToxMixzdHJva2VXaWR0aDoxLjh9KSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctbGFiZWwiPlx1NTE3Nlx1NEVENlx1NURFNVx1NTE3Nzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWNvdW50Ij4nK3QudG9vbCsiPC9zcGFuPjwvc3Bhbj4iOiIiKSsnPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdyBhcHByb3ZhbC1zdGF0cy1yb3ctdG90YWwiPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctaWNvbiI+JytHKCJzaWdtYSIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWxhYmVsIj5cdTU0MDhcdThCQTE8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1jb3VudCI+Jyt0LnRvdGFsKyI8L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+In1mdW5jdGlvbiB0Zigpe3JldHVybiByLmxvZ2luQ2hlY2tlZD8nPGRpdiBjbGFzcz0ibG9naW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJsb2dpbi1jYXJkIj48ZGl2IGNsYXNzPSJsb2dpbi1oZWFkZXIiPjxkaXYgY2xhc3M9ImxvZ2luLWxvZ28iPjxkaXYgY2xhc3M9ImxvZ2luLWxvZ28taWNvbiI+VzwvZGl2PjxzcGFuIGNsYXNzPSJsb2dpbi1sb2dvLXRleHQiPldhbmQ8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ibG9naW4tc3VidGl0bGUiPlx1NTcyOFx1NkQ0Rlx1ODlDOFx1NTY2OFx1NEUyRFx1OEZEMFx1ODg0Q1x1NjcyQ1x1NjczQVx1N0VDOFx1N0FFRjwvZGl2PjwvZGl2Pjxmb3JtIGlkPSJsb2dpbi1mb3JtIiBjbGFzcz0ibG9naW4tYm9keSIgYXV0b2NvbXBsZXRlPSJvbiI+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InVzZXJuYW1lIiBhdXRvY29tcGxldGU9InVzZXJuYW1lIiB2YWx1ZT0id2FuZCIgdGFiaW5kZXg9Ii0xIiBhcmlhLWhpZGRlbj0idHJ1ZSIgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTk5OTlweDt3aWR0aDoxcHg7aGVpZ2h0OjFweDtvcGFjaXR5OjA7cG9pbnRlci1ldmVudHM6bm9uZSIgcmVhZG9ubHkgLz48cCBjbGFzcz0ibG9naW4taGludCI+XHU4RjkzXHU1MTY1IFdhbmQgXHU4QkJGXHU5NUVFXHU1QkM2XHU3ODAxXHU0RUU1XHU4RkRCXHU1MTY1XHU2M0E3XHU1MjM2XHU1M0YwXHUzMDAyPC9wPjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9InBhc3N3b3JkIj5cdTVCQzZcdTc4MDE8L2xhYmVsPjxkaXYgY2xhc3M9InBhc3N3b3JkLWZpZWxkIj48aW5wdXQgaWQ9InBhc3N3b3JkIiB0eXBlPSJwYXNzd29yZCIgY2xhc3M9ImZpZWxkLWlucHV0IHBhc3N3b3JkLWlucHV0IiBwbGFjZWhvbGRlcj0iXHU4RjkzXHU1MTY1XHU4QkJGXHU5NUVFXHU1QkM2XHU3ODAxIiBhdXRvY29tcGxldGU9ImN1cnJlbnQtcGFzc3dvcmQiIGRhdGEtZXJyb3I9ImZhbHNlIiBhcmlhLWRlc2NyaWJlZGJ5PSJwYXNzd29yZC1oaW50IGxvZ2luLWVycm9yIiBhcmlhLWludmFsaWQ9ImZhbHNlIiAvPjxidXR0b24gaWQ9InRvZ2dsZS1wYXNzd29yZC1idXR0b24iIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InBhc3N3b3JkLXRvZ2dsZSIgYXJpYS1sYWJlbD0iXHU2NjNFXHU3OTNBXHU1QkM2XHU3ODAxIiBhcmlhLXByZXNzZWQ9ImZhbHNlIj5cdTY2M0VcdTc5M0E8L2J1dHRvbj48L2Rpdj48cCBpZD0icGFzc3dvcmQtaGludCIgY2xhc3M9ImhpbnQiPlx1NEY3Rlx1NzUyOFx1NEY2MFx1NTcyOCBXYW5kIFx1NEUyRFx1OEJCRVx1N0Y2RVx1NzY4NFx1OEJCRlx1OTVFRVx1NUJDNlx1NzgwMVx1MzAwMjwvcD48cCBpZD0ibG9naW4tZXJyb3IiIGNsYXNzPSJlcnJvci1tZXNzYWdlIGhpZGRlbiIgcm9sZT0iYWxlcnQiPjwvcD48L2Rpdj48ZGl2IGlkPSJsb2dpbi1jZXJ0LWhpbnQiIGNsYXNzPSJsb2dpbi1jZXJ0LWhpbnQgaGlkZGVuIiByb2xlPSJhbGVydCI+PGRpdiBjbGFzcz0ibG9naW4tY2VydC1oaW50LXRpdGxlIj5cdThCQzFcdTRFNjZcdTRFMERcdTUzRDdcdTRGRTFcdTRFRkJcdUZGMENcdTc2N0JcdTVGNTVcdTYwMDFcdTY1RTBcdTZDRDVcdTRGRERcdTVCNTg8L2Rpdj48cCBjbGFzcz0ibG9naW4tY2VydC1oaW50LWJvZHkiPlx1NUJDNlx1NzgwMVx1NjYyRlx1NUJGOVx1NzY4NFx1RkYwQ1x1NEY0Nlx1NUY1M1x1NTI0RCBIVFRQUyBcdThCQzFcdTRFNjZcdTRFMERcdTUzRDdcdTZENEZcdTg5QzhcdTU2NjhcdTRGRTFcdTRFRkJcdUZGMENcdTZENEZcdTg5QzhcdTU2NjhcdTU2RTBcdTZCNjRcdTYyRDJcdTdFRERcdTRGRERcdTVCNThcdTc2N0JcdTVGNTUgQ29va2llXHVGRjBDXHU2MjQwXHU0RUU1XHU4RkRCXHU0RTBEXHU0RTg2XHU2M0E3XHU1MjM2XHU1M0YwXHUzMDAyPGJyLz5cdTg5RTNcdTUxQjNcdTUyOUVcdTZDRDVcdUZGMDhcdTRFRkJcdTkwMDlcdTUxNzZcdTRFMDBcdUZGMDlcdUZGMUFcdTY1MzlcdTc1MjggSFRUUCBcdThCQkZcdTk1RUVcdTY3MkNcdTY3MERcdTUyQTFcdUZGMUJcdTYyMTZcdTYyOEFcdTY3MkNcdTY3MERcdTUyQTFcdThCQzFcdTRFNjZcdThCQkVcdTRFM0FcdTMwMENcdTUzRDdcdTRGRTFcdTRFRkJcdTMwMERcdUZGMDhcdTYzQThcdTgzNTAgbWtjZXJ0XHVGRjA5XHVGRjFCXHU2MjE2XHU1NzI4XHU2NzJDXHU2NzNBXHU1QzA2XHU4QkU1XHU4MUVBXHU3QjdFXHU4QkMxXHU0RTY2XHU4QkJFXHU0RTNBXHU1QjhDXHU1MTY4XHU0RkUxXHU0RUZCXHU1NDBFXHU5MUNEXHU4QkQ1XHUzMDAyPC9wPjxhIGlkPSJsb2dpbi1jZXJ0LWh0dHAtbGluayIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLWJsb2NrIiBocmVmPSIjIiByZWw9Im5vb3BlbmVyIj5cdTY1MzlcdTc1MjggSFRUUCBcdThCQkZcdTk1RUU8L2E+PC9kaXY+PGJ1dHRvbiBpZD0ibG9naW4tYnV0dG9uIiB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLXByaW1hcnkgYnRuLWJsb2NrIj5cdThGREJcdTUxNjVcdTYzQTdcdTUyMzZcdTUzRjA8L2J1dHRvbj4nKyhSYSgpPyc8YnV0dG9uIGlkPSJsb2dpbi1zd2l0Y2gtc2VydmVyLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLWJsb2NrIGxvZ2luLXN3aXRjaC1zZXJ2ZXIiIHR5cGU9ImJ1dHRvbiI+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSIyIiB5PSIzIiB3aWR0aD0iMjAiIGhlaWdodD0iOCIgcng9IjIiLz48cmVjdCB4PSIyIiB5PSIxMyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjgiIHJ4PSIyIi8+PGxpbmUgeDE9IjYiIHkxPSI3IiB4Mj0iNi4wMSIgeTI9IjciLz48bGluZSB4MT0iNiIgeTE9IjE3IiB4Mj0iNi4wMSIgeTI9IjE3Ii8+PC9zdmc+PHNwYW4+XHU1MjA3XHU2MzYyXHU2NzBEXHU1MkExXHU1NjY4PC9zcGFuPjwvYnV0dG9uPic6IiIpKyI8L2Zvcm0+PC9kaXY+PC9kaXY+IjonPGRpdiBjbGFzcz0ibG9naW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJsb2dpbi1jYXJkIGxvZ2luLWNhcmQtbG9hZGluZyI+PGRpdiBjbGFzcz0ibG9naW4taGVhZGVyIj48ZGl2IGNsYXNzPSJsb2dpbi1sb2dvIj48ZGl2IGNsYXNzPSJsb2dpbi1sb2dvLWljb24iPlc8L2Rpdj48c3BhbiBjbGFzcz0ibG9naW4tbG9nby10ZXh0Ij5XYW5kPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImxvZ2luLXN1YnRpdGxlIj5cdTZCNjNcdTU3MjhcdTYwNjJcdTU5MERcdTc2N0JcdTVGNTVcdTcyQjZcdTYwMDE8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJsb2dpbi1ib2R5Ij48ZGl2IGNsYXNzPSJsb2dpbi1zdGF0dXMiPjxzcGFuIGNsYXNzPSJsb2dpbi1zcGlubmVyIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjxkaXY+PHAgY2xhc3M9ImxvZ2luLWhpbnQiPlx1NkI2M1x1NTcyOFx1NjhDMFx1NjdFNVx1NjcyQ1x1NTczMFx1NzY3Qlx1NUY1NVx1NEYxQVx1OEJERFx1RkYwQ1x1OEJGN1x1N0EwRFx1NTAxOVx1MzAwMjwvcD48cCBjbGFzcz0ibG9naW4tbXV0ZWQiPlx1NTk4Mlx1Njc5Q1x1NEY2MFx1NTIxQVx1NTIzN1x1NjVCMFx1OTg3NVx1OTc2Mlx1RkYwQ1x1OEZEOVx1NjYyRlx1NkI2M1x1NUUzOFx1NzNCMFx1OEM2MVx1MzAwMjwvcD48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj4nfWZ1bmN0aW9uIG5mKCl7dmFyIGU9IjxcL3NjcmlwdD4iLHQ9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGgpe3JldHVybiBoLmlkPT09ci5zZWxlY3RlZElkfSksbj10P1FuKHQuY29tbWFuZCk6Ilx1NjcyQVx1OTAwOVx1NjJFOVx1NEYxQVx1OEJERCIsaT10P3QubW9kZSsiIHwgIit0LnN0YXR1czoiXHU3MEI5XHU1MUZCXHU0RTBBXHU2NUI5XHUzMDBDXHU2NUIwXHU1QkY5XHU4QkREXHUzMDBEXHU1RjAwXHU1OUNCIixhPXIuc2VsZWN0ZWRJZCYmci5kcmFmdHNbci5zZWxlY3RlZElkXXx8IiIsdT1yLnNlc3Npb25zRHJhd2VyT3Blbj8iIG9wZW4iOiIiLHM9aHUoKT8iIG9wZW4iOiIiLG89SXYoKSxsPXh0KG8sci5jaGF0TW9kZSksYz1fZSgpLGY9ISFyLnNpZGViYXJQaW5uZWQmJiEhci5zaWRlYmFyQ29sbGFwc2VkLGQ9Znx8IWMmJighIXIuc2lkZWJhclBpbm5lZHx8ISFyLnNlc3Npb25zRHJhd2VyT3Blbiksdj1mPyIgc2lkZWJhci1jb2xsYXBzZWQiOiIiLGc9Zj8iIGNvbGxhcHNlZCI6IiI7cmV0dXJuJzxkaXYgY2xhc3M9ImFwcC1jb250YWluZXIiPjxkaXYgaWQ9InNlc3Npb25zLWRyYXdlci1iYWNrZHJvcCIgY2xhc3M9ImRyYXdlci1iYWNrZHJvcCcrcysnIj48L2Rpdj48ZGl2IGNsYXNzPSJtYWluLWxheW91dCcrKHIuc2Vzc2lvbnNEcmF3ZXJPcGVuPyIgc2lkZWJhci1vcGVuIjoiIikrKGQ/IiBzaWRlYmFyLXBpbm5lZCI6IiIpK3YrJyI+PGFzaWRlIGlkPSJzZXNzaW9ucy1kcmF3ZXIiIGNsYXNzPSJzaWRlYmFyJyt1KyhkPyIgcGlubmVkIjoiIikrZysnIj48ZGl2IGNsYXNzPSJzaWRlYmFyLWhlYWRlciI+PGRpdiBjbGFzcz0ic2lkZWJhci1oZWFkZXItbWFpbiI+PGRpdiBjbGFzcz0idG9wYmFyLWxvZ28taWNvbiI+VzwvZGl2PjxzcGFuIGNsYXNzPSJzaWRlYmFyLXRpdGxlIj5cdTRGMUFcdThCREQ8L3NwYW4+PHNwYW4gY2xhc3M9InNlc3Npb24tY291bnQiIGlkPSJzZXNzaW9uLWNvdW50Ij4nK1N0cmluZyhyLnNlc3Npb25zLmxlbmd0aCkrJzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzaWRlYmFyLWhlYWRlci1hY3Rpb25zIj48ZGl2IGNsYXNzPSJzaWRlYmFyLWhlYWRlci1tb3JlIj48YnV0dG9uIGlkPSJzaWRlYmFyLW1vcmUtYnRuIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NjZGNFx1NTkxQVx1NjRDRFx1NEY1QyI+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48Y2lyY2xlIGN4PSIxMiIgY3k9IjUiIHI9IjEuNSIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjEuNSIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTkiIHI9IjEuNSIvPjwvc3ZnPjwvYnV0dG9uPjxkaXYgY2xhc3M9InNpZGViYXItaGVhZGVyLW92ZXJmbG93IiBpZD0ic2lkZWJhci1vdmVyZmxvdy1tZW51Ij48YnV0dG9uIGNsYXNzPSJvdmVyZmxvdy1pdGVtIiBpZD0ic2lkZWJhci1ob21lLWJ0biIgdHlwZT0iYnV0dG9uIj48c3ZnIHdpZHRoPSIxNSIgaGVpZ2h0PSIxNSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0zIDlsOS03IDkgN3YxMWEyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMnoiLz48cG9seWxpbmUgcG9pbnRzPSI5IDIyIDkgMTIgMTUgMTIgMTUgMjIiLz48L3N2Zz48c3Bhbj5cdTU2REVcdTUyMzBcdTk5OTZcdTk4NzU8L3NwYW4+PC9idXR0b24+PGJ1dHRvbiBjbGFzcz0ib3ZlcmZsb3ctaXRlbSIgaWQ9InNpZGViYXItcmVmcmVzaC1idG4iIHR5cGU9ImJ1dHRvbiI+PHN2ZyB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cG9seWxpbmUgcG9pbnRzPSIyMyA0IDIzIDEwIDE3IDEwIi8+PHBhdGggZD0iTTIwLjQ5IDE1YTkgOSAwIDEgMS0yLjEyLTkuMzZMMjMgMTAiLz48L3N2Zz48c3Bhbj5cdTUyMzdcdTY1QjBcdTk4NzVcdTk3NjI8L3NwYW4+PC9idXR0b24+PC9kaXY+PC9kaXY+PGJ1dHRvbiBpZD0ic2lkZWJhci1waW4tYnRuIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20gc2lkZWJhci1waW4tdG9nZ2xlJysoci5zaWRlYmFyUGlubmVkPyIgcGlubmVkIjoiIikrJyIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iJysoci5zaWRlYmFyUGlubmVkPyJcdTVERjJcdTU2RkFcdTVCOUFcdTVFMzhcdTlBN0JcdUZGMDhcdTcwQjlcdTUxRkJcdTg5RTNcdTk2NjRcdTk1MDFcdTVCOUFcdUZGMDkiOiJcdTU2RkFcdTVCOUFcdTRGQTdcdTY4MEZcdTVFMzhcdTlBN0IiKSsnIiBhcmlhLWxhYmVsPSInKyhyLnNpZGViYXJQaW5uZWQ/Ilx1ODlFM1x1OTY2NFx1NTZGQVx1NUI5QVx1NUUzOFx1OUE3QiI6Ilx1NTZGQVx1NUI5QVx1NEZBN1x1NjgwRlx1NUUzOFx1OUE3QiIpKyciIGFyaWEtcHJlc3NlZD0iJysoci5zaWRlYmFyUGlubmVkPyJ0cnVlIjoiZmFsc2UiKSsnIj48c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48bGluZSB4MT0iMTIiIHkxPSIxNyIgeDI9IjEyIiB5Mj0iMjIiLz48cGF0aCBkPSJNNSAxN2gxNHYtMS43NmEyIDIgMCAwIDAtMS4xMS0xLjc5bC0xLjc4LS45QTIgMiAwIDAgMSAxNSAxMC43NlY2aDFhMiAyIDAgMCAwIDAtNEg4YTIgMiAwIDAgMCAwIDRoMXY0Ljc2YTIgMiAwIDAgMS0xLjExIDEuNzlsLTEuNzguOUEyIDIgMCAwIDAgNSAxNS4yNHoiLz48L3N2Zz48L2J1dHRvbj48YnV0dG9uIGlkPSJzaWRlYmFyLWNvbGxhcHNlLWJ0biIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtIHNpZGViYXItY29sbGFwc2UtdG9nZ2xlJysoZj8iIGNvbGxhcHNlZCI6IiIpKyciIHR5cGU9ImJ1dHRvbiIgdGl0bGU9IicrKGY/Ilx1NUM1NVx1NUYwMFx1NEUzQVx1NTE2OFx1NUMzQVx1NUJGOCI6Ilx1NjUzNlx1OEQ3N1x1NEUzQVx1N0E4NFx1Njc2MSIpKyciIGFyaWEtbGFiZWw9IicrKGY/Ilx1NUM1NVx1NUYwMFx1NEUzQVx1NTE2OFx1NUMzQVx1NUJGOCI6Ilx1NjUzNlx1OEQ3N1x1NEUzQVx1N0E4NFx1Njc2MSIpKyciPicrKGY/Jzxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBvbHlsaW5lIHBvaW50cz0iMTAgNiAxNiAxMiAxMCAxOCIvPjxsaW5lIHgxPSIyMCIgeTE9IjUiIHgyPSIyMCIgeTI9IjE5Ii8+PC9zdmc+JzonPHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cG9seWxpbmUgcG9pbnRzPSIxNCA2IDggMTIgMTQgMTgiLz48bGluZSB4MT0iNCIgeTE9IjUiIHgyPSI0IiB5Mj0iMTkiLz48L3N2Zz4nKSsnPC9idXR0b24+PGJ1dHRvbiBpZD0iY2xvc2UtZHJhd2VyLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLWljb24gc2lkZWJhci1jbG9zZSBkcmF3ZXItY2xvc2UtYnRuIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NTE3M1x1OTVFRFx1ODNEQ1x1NTM1NSI+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48bGluZSB4MT0iNiIgeTE9IjYiIHgyPSIxOCIgeTI9IjE4Ii8+PGxpbmUgeDE9IjE4IiB5MT0iNiIgeDI9IjYiIHkyPSIxOCIvPjwvc3ZnPjwvYnV0dG9uPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNpZGViYXItYm9keSI+PGRpdiBpZD0ic2Vzc2lvbnMtcGFuZWwiPjxkaXYgY2xhc3M9InNlc3Npb25zLWxpc3QiIGlkPSJzZXNzaW9ucy1saXN0Ij4nK0dpKCkrJzwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNpZGViYXItZm9vdGVyIj48YnV0dG9uIGlkPSJkcmF3ZXItbmV3LXNlc3Npb24tYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IGJ0bi1ibG9jayI+PHNwYW4+Kzwvc3Bhbj4gXHU2NUIwXHU0RjFBXHU4QkREPC9idXR0b24+PGRpdiBjbGFzcz0ic2lkZWJhci1mb290ZXItYWN0aW9ucyI+PGJ1dHRvbiBpZD0iZmlsZS1wYW5lbC10b2dnbGUtYnRuIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20nKyhyLmZpbGVQYW5lbE9wZW4/IiBhY3RpdmUiOiIiKSsnIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTY3RTVcdTc3MEJcdTY1ODdcdTRFRjYiPjxzdmcgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTIyIDE5YTIgMiAwIDAgMS0yIDJINGEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmg1bDIgM2g5YTIgMiAwIDAgMSAyIDJ6Ii8+PC9zdmc+PHNwYW4+XHU2NTg3XHU0RUY2PC9zcGFuPjwvYnV0dG9uPjxidXR0b24gaWQ9InNldHRpbmdzLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdThCQkVcdTdGNkUiPjxzdmcgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMyIvPjxwYXRoIGQ9Ik0xOS40IDE1YTEuNjUgMS42NSAwIDAgMCAuMzMgMS44MmwuMDYuMDZhMiAyIDAgMCAxLTIuODMgMi44M2wtLjA2LS4wNmExLjY1IDEuNjUgMCAwIDAtMS44Mi0uMzMgMS42NSAxLjY1IDAgMCAwLTEgMS41MVYyMWEyIDIgMCAwIDEtNCAwdi0uMDlBMS42NSAxLjY1IDAgMCAwIDkgMTkuNGExLjY1IDEuNjUgMCAwIDAtMS44Mi4zM2wtLjA2LjA2YTIgMiAwIDAgMS0yLjgzLTIuODNsLjA2LS4wNkExLjY1IDEuNjUgMCAwIDAgNC42OCAxNWExLjY1IDEuNjUgMCAwIDAtMS41MS0xSDNhMiAyIDAgMCAxIDAtNGguMDlBMS42NSAxLjY1IDAgMCAwIDQuNiA5YTEuNjUgMS42NSAwIDAgMC0uMzMtMS44MmwtLjA2LS4wNmEyIDIgMCAwIDEgMi44My0yLjgzbC4wNi4wNkExLjY1IDEuNjUgMCAwIDAgOSA0LjY4YTEuNjUgMS42NSAwIDAgMCAxLTEuNTFWM2EyIDIgMCAwIDEgNCAwdi4wOWExLjY1IDEuNjUgMCAwIDAgMSAxLjUxIDEuNjUgMS42NSAwIDAgMCAxLjgyLS4zM2wuMDYtLjA2YTIgMiAwIDAgMSAyLjgzIDIuODNsLS4wNi4wNkExLjY1IDEuNjUgMCAwIDAgMTkuNCA5YTEuNjUgMS42NSAwIDAgMCAxLjUxIDFIMjFhMiAyIDAgMCAxIDAgNGgtLjA5YTEuNjUgMS42NSAwIDAgMC0xLjUxIDF6Ii8+PC9zdmc+PHNwYW4+XHU4QkJFXHU3RjZFPC9zcGFuPjwvYnV0dG9uPicrKEF2KCk/JzxidXR0b24gaWQ9ImJhY2stdG8tbmF0aXZlLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtIHNpZGViYXItYmFjay10by1uYXRpdmUiIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1OEZENFx1NTZERSBBcHAgXHU1MzlGXHU3NTFGXHU3NTRDXHU5NzYyIj48c3ZnIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxyZWN0IHg9IjEwIiB5PSIzIiB3aWR0aD0iMTEiIGhlaWdodD0iMTgiIHJ4PSIyIi8+PGxpbmUgeDE9IjE0IiB5MT0iMTciIHgyPSIxNyIgeTI9IjE3Ii8+PHBvbHlsaW5lIHBvaW50cz0iNyA4IDMgMTIgNyAxNiIvPjwvc3ZnPjxzcGFuPlx1OEZENFx1NTZERUFwcDwvc3Bhbj48L2J1dHRvbj4nOiIiKSsoUmEoKT8nPGJ1dHRvbiBpZD0ic3dpdGNoLXNlcnZlci1idXR0b24iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSBzaWRlYmFyLXN3aXRjaC1zZXJ2ZXIiIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NTIwN1x1NjM2Mlx1NjcwRFx1NTJBMVx1NTY2OCI+PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSIyIiB5PSIzIiB3aWR0aD0iMjAiIGhlaWdodD0iOCIgcng9IjIiLz48cmVjdCB4PSIyIiB5PSIxMyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjgiIHJ4PSIyIi8+PGxpbmUgeDE9IjYiIHkxPSI3IiB4Mj0iNi4wMSIgeTI9IjciLz48bGluZSB4MT0iNiIgeTE9IjE3IiB4Mj0iNi4wMSIgeTI9IjE3Ii8+PC9zdmc+PHNwYW4+XHU1MjA3XHU2MzYyPC9zcGFuPjwvYnV0dG9uPic6IiIpKyc8YnV0dG9uIGlkPSJsb2dvdXQtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20gc2lkZWJhci1sb2dvdXQiIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1OTAwMFx1NTFGQVx1NzY3Qlx1NUY1NSI+PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNOSAyMUg1YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDQiLz48cG9seWxpbmUgcG9pbnRzPSIxNiAxNyAyMSAxMiAxNiA3Ii8+PGxpbmUgeDE9IjIxIiB5MT0iMTIiIHgyPSI5IiB5Mj0iMTIiLz48L3N2Zz48c3Bhbj5cdTkwMDBcdTUxRkE8L3NwYW4+PC9idXR0b24+PC9kaXY+PC9kaXY+PC9hc2lkZT48bWFpbiBjbGFzcz0ibWFpbi1jb250ZW50Ij48ZGl2IGNsYXNzPSJtYWluLWhlYWRlci1yb3ciPjxkaXYgY2xhc3M9InRvcGJhci1sZWZ0Ij48YnV0dG9uIGlkPSJzZXNzaW9ucy10b2dnbGUtYnV0dG9uIiBjbGFzcz0iZmxvYXRpbmctc2lkZWJhci10b2dnbGUnKyhyLnNlc3Npb25zRHJhd2VyT3Blbj8iIGFjdGl2ZSI6IiIpKyciIGFyaWEtbGFiZWw9Ilx1NTIwN1x1NjM2Mlx1NEYxQVx1OEJERFx1NEZBN1x1NjgwRiIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0iaGFtYnVyZ2VyLWljb24iPjxzcGFuPjwvc3Bhbj48c3Bhbj48L3NwYW4+PHNwYW4+PC9zcGFuPjwvc3Bhbj48L2J1dHRvbj48c3BhbiBjbGFzcz0idG9wYmFyLWJyYW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+Vzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ0b3BiYXItY2VudGVyIj4nKyh0Pyc8c3BhbiBjbGFzcz0idG9wYmFyLXNlc3Npb24tdGl0bGUiIHRpdGxlPSInK3AodC5kZXNjcmlwdGlvbnx8dC5jb21tYW5kfHwiIikrJyI+JytwKHQudGl0bGV8fFFuKHQuY29tbWFuZCkpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InNlc3Npb24tc3RhdHVzLXBpbGwgJytXdSh0KSsnIiB0aXRsZT0iJytwKGNyKHQpKSsnIj48c3BhbiBjbGFzcz0ic2Vzc2lvbi1zdGF0dXMtZG90Ij48L3NwYW4+PHNwYW4gY2xhc3M9InNlc3Npb24tc3RhdHVzLXRleHQiPicrcChjcih0KSkrJzwvc3Bhbj48L3NwYW4+PHNwYW4gY2xhc3M9ImN1cnJlbnQtdGFzayBoaWRkZW4iIGlkPSJjdXJyZW50LXRhc2siPjwvc3Bhbj4nKyh0LmN3ZD8nPHNwYW4gY2xhc3M9InRvcGJhci1jd2QiIGlkPSJ0b3BiYXItY3dkIiB0aXRsZT0iJytwKHQuY3dkKSsnIiByb2xlPSJidXR0b24iIHRhYmluZGV4PSIwIj4nK3AodC5jd2QpKyI8L3NwYW4+IjoiIik6JzxzcGFuIGNsYXNzPSJ0b3BiYXItdGFnbGluZSI+V2FuZCBcdTYzQTdcdTUyMzZcdTUzRjA8L3NwYW4+PHNwYW4gY2xhc3M9ImN1cnJlbnQtdGFzayBoaWRkZW4iIGlkPSJjdXJyZW50LXRhc2siPjwvc3Bhbj4nKSsnPC9kaXY+PGRpdiBjbGFzcz0idG9wYmFyLXJpZ2h0Ij48YnV0dG9uIGlkPSJ0b3BiYXItZmlsZS1idXR0b24iIGNsYXNzPSJ0b3BiYXItYnRuIHNxdWFyZScrKHIuZmlsZVBhbmVsT3Blbj8iIGFjdGl2ZSI6IiIpKyciIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU2NTg3XHU0RUY2IiB0aXRsZT0iXHU2N0U1XHU3NzBCXHU2NTg3XHU0RUY2XHVGRjA4XHU1M0VGXHU0RkVFXHU2NTM5XHU4REVGXHU1Rjg0XHVGRjA5Ij48c3ZnIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMiAxOWEyIDIgMCAwIDEtMiAySDRhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoNWwyIDNoOWEyIDIgMCAwIDEgMiAyeiIvPjwvc3ZnPjwvYnV0dG9uPjxzcGFuIGlkPSJ0b3BiYXItZ2l0LXNsb3QiIGNsYXNzPSJ0b3BiYXItZ2l0LXNsb3QiPicrUHUoKSsiPC9zcGFuPiIrKHQ/bGModCk6IiIpKyc8L2Rpdj48L2Rpdj48ZGl2IGlkPSJmaWxlLXBhbmVsLWJhY2tkcm9wIiBjbGFzcz0iZmlsZS1wYW5lbC1iYWNrZHJvcCcrKHIuZmlsZVBhbmVsT3Blbj8iIG9wZW4iOiIiKSsnIj48L2Rpdj48ZGl2IGlkPSJmaWxlLXNpZGUtcGFuZWwiIGNsYXNzPSJmaWxlLXNpZGUtcGFuZWwnKyhyLmZpbGVQYW5lbE9wZW4/IiBvcGVuIjoiIikrJyI+PGRpdiBjbGFzcz0iZmlsZS1zaWRlLXBhbmVsLWhlYWRlciI+PGRpdiBjbGFzcz0iZmlsZS1zaWRlLXBhbmVsLXRpdGxlLWdyb3VwIj48c3BhbiBjbGFzcz0iZmlsZS1zaWRlLXBhbmVsLWljb24iPicrTWUoImZvbGRlci1vcGVuIix7c2l6ZToxNn0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImZpbGUtc2lkZS1wYW5lbC10aXRsZSI+XHU2NTg3XHU0RUY2PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImZpbGUtc2lkZS1wYW5lbC1oZWFkZXItYWN0aW9ucyI+PGJ1dHRvbiBjbGFzcz0iZmlsZS1zaWRlLXBhbmVsLWljb25idG4iIGlkPSJmaWxlLWV4cGxvcmVyLXJlZnJlc2giIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NTIzN1x1NjVCMCIgYXJpYS1sYWJlbD0iXHU1MjM3XHU2NUIwXHU2NTg3XHU0RUY2XHU1MjE3XHU4ODY4Ij4nK01lKCJyZWZyZXNoIix7c2l6ZToxNX0pKyc8L2J1dHRvbj48YnV0dG9uIGlkPSJmaWxlLXNpZGUtcGFuZWwtY2xvc2UiIGNsYXNzPSJmaWxlLXNpZGUtcGFuZWwtaWNvbmJ0biBjbG9zZSIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RURcdTY1ODdcdTRFRjZcdTk3NjJcdTY3N0YiIHRpdGxlPSJcdTUxNzNcdTk1RUQiPicrTWUoIngiLHtzaXplOjE2fSkrJzwvYnV0dG9uPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImZpbGUtc2lkZS1wYW5lbC1ib2R5Ij48ZGl2IGNsYXNzPSJmaWxlLWV4cGxvcmVyLWhlYWRlciI+PGJ1dHRvbiBjbGFzcz0iZmlsZS1leHBsb3Jlci11cCIgaWQ9ImZpbGUtZXhwbG9yZXItdXAiIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1OEZENFx1NTZERVx1NEUwQVx1N0VBN1x1NzZFRVx1NUY1NSIgYXJpYS1sYWJlbD0iXHU4RkQ0XHU1NkRFXHU0RTBBXHU3RUE3XHU3NkVFXHU1RjU1Ij4nK01lKCJhcnJvdy11cCIse3NpemU6MTV9KSsnPC9idXR0b24+PGlucHV0IHR5cGU9InRleHQiIGNsYXNzPSJmaWxlLWV4cGxvcmVyLXBhdGgiIGlkPSJmaWxlLWV4cGxvcmVyLWN3ZCIgdmFsdWU9IicrcCh0JiZ0LmN3ZD90LmN3ZDp0bigpKSsnIiB0aXRsZT0iJytwKHQmJnQuY3dkP3QuY3dkOnRuKCkpKyciIHBsYWNlaG9sZGVyPSJcdThGOTNcdTUxNjVcdThERUZcdTVGODRcdTVFNzZcdTU2REVcdThGNjYuLi4iIHNwZWxsY2hlY2s9ImZhbHNlIiBhdXRvY29tcGxldGU9Im9mZiIgYXV0b2NhcGl0YWxpemU9Im9mZiIgYXV0b2NvcnJlY3Q9Im9mZiIgYXJpYS1sYWJlbD0iXHU1RjUzXHU1MjREXHU4REVGXHU1Rjg0XHVGRjBDXHU1M0VGXHU3NkY0XHU2M0E1XHU0RkVFXHU2NTM5XHU1NDBFXHU1NkRFXHU4RjY2IiAvPjwvZGl2PjxkaXYgY2xhc3M9ImZpbGUtc2VhcmNoLWJveCI+PHNwYW4gY2xhc3M9ImZpbGUtc2VhcmNoLWljb24iPicrTWUoInNlYXJjaCIse3NpemU6MTR9KSsnPC9zcGFuPjxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0iZmlsZS1zZWFyY2gtaW5wdXQiIGNsYXNzPSJmaWxlLXNlYXJjaC1pbnB1dCIgcGxhY2Vob2xkZXI9Ilx1NjQxQ1x1N0QyMlx1NUY1M1x1NTI0RFx1NzZFRVx1NUY1NVx1MjAyNiIgYXV0b2NvbXBsZXRlPSJvZmYiIGF1dG9jb3JyZWN0PSJvZmYiIGF1dG9jYXBpdGFsaXplPSJvZmYiIHNwZWxsY2hlY2s9ImZhbHNlIiAvPjxidXR0b24gY2xhc3M9ImZpbGUtc2VhcmNoLWNsZWFyIiBpZD0iZmlsZS1zZWFyY2gtY2xlYXIiIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU2RTA1XHU5NjY0XHU2NDFDXHU3RDIyIiB0aXRsZT0iXHU2RTA1XHU5NjY0Ij4nK01lKCJ4Iix7c2l6ZToxM30pKyc8L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJmaWxlLWV4cGxvcmVyIiBpZD0iZmlsZS1leHBsb3JlciI+JytKbCh0JiZ0LmN3ZD90LmN3ZDp0bigpKSsnPC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBpZD0ib3V0cHV0IiBjbGFzcz0idGVybWluYWwtY29udGFpbmVyJysoci5zZWxlY3RlZElkPyIiOiIgaGlkZGVuIikrJyBhY3RpdmUiPjxkaXYgY2xhc3M9InRlcm1pbmFsLXNjYWxlLW92ZXJsYXkiIGFyaWEtbGFiZWw9Ilx1N0VDOFx1N0FFRlx1N0YyOVx1NjUzRVx1NjNBN1x1NEVGNiI+PGJ1dHRvbiBpZD0idGVybWluYWwtc2NhbGUtZG93bi10b3AiIGNsYXNzPSJ0ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWJ0biB0ZXJtaW5hbC1zY2FsZS1idG4iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1N0YyOVx1NUMwRiI+XHUyMjEyPC9idXR0b24+PHNwYW4gY2xhc3M9InRlcm1pbmFsLXNjYWxlLW92ZXJsYXktbGFiZWwgdGVybWluYWwtc2NhbGUtbGFiZWwiIGlkPSJ0ZXJtaW5hbC1zY2FsZS1sYWJlbC10b3AiPicrTWF0aC5yb3VuZChyLnRlcm1pbmFsU2NhbGUqMTAwKSsnJTwvc3Bhbj48YnV0dG9uIGlkPSJ0ZXJtaW5hbC1zY2FsZS11cC10b3AiIGNsYXNzPSJ0ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWJ0biB0ZXJtaW5hbC1zY2FsZS1idG4iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NjUzRVx1NTkyNyI+KzwvYnV0dG9uPjxzcGFuIGNsYXNzPSJ0ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWRpdmlkZXIiPjwvc3Bhbj48YnV0dG9uIGlkPSJwYWdlLXJlZnJlc2gtYnRuIiBjbGFzcz0idGVybWluYWwtc2NhbGUtb3ZlcmxheS1idG4iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NTIzN1x1NjVCMFx1OTg3NVx1OTc2MiI+XHUyMUJCPC9idXR0b24+PC9kaXY+PGJ1dHRvbiBpZD0idGVybWluYWwtanVtcC1ib3R0b20iIGNsYXNzPSJ0ZXJtaW5hbC1qdW1wLWJvdHRvbScrKHIuc2hvd1Rlcm1pbmFsSnVtcFRvQm90dG9tPyIgdmlzaWJsZSI6IiIpKyciIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NTZERVx1NTIzMFx1NUU5NVx1OTBFOCIgYXJpYS1sYWJlbD0iXHU1NkRFXHU1MjMwXHU1RTk1XHU5MEU4Ij48c3ZnIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNOCAzLjV2OU0zLjUgOGw0LjUgNC41TDEyLjUgOCIvPjwvc3ZnPjwvYnV0dG9uPjwvZGl2PjxkaXYgaWQ9ImNoYXQtb3V0cHV0IiBjbGFzcz0iY2hhdC1jb250YWluZXIgaGlkZGVuIj48YnV0dG9uIGlkPSJjaGF0LXVucmVhZC1idWJibGUiIGNsYXNzPSJjaGF0LXVucmVhZC1idWJibGUiIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NTZERVx1NTIzMFx1NjcwMFx1NjVCMFx1NkQ4OFx1NjA2RiIgYXJpYS1sYWJlbD0iXHU1NkRFXHU1MjMwXHU2NzAwXHU2NUIwXHU2RDg4XHU2MDZGIj48c3BhbiBjbGFzcz0iY2hhdC11bnJlYWQtYnViYmxlLWljb24iPjxzdmcgdmlld0JveD0iMCAwIDE2IDE2IiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik04IDMuNXY5TTMuNSA4bDQuNSA0LjVMMTIuNSA4Ii8+PC9zdmc+PC9zcGFuPjxzcGFuIGNsYXNzPSJjaGF0LXVucmVhZC1idWJibGUtY291bnQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC9idXR0b24+PC9kaXY+PGRpdiBpZD0iYmxhbmstY2hhdCIgY2xhc3M9ImJsYW5rLWNoYXQnKyhyLnNlbGVjdGVkSWQ/IiBoaWRkZW4iOiIiKSsnIj48ZGl2IGNsYXNzPSJibGFuay1jaGF0LWlubmVyIj48ZGl2IGNsYXNzPSJibGFuay1jaGF0LWxvZ28iPlc8L2Rpdj48aDIgY2xhc3M9ImJsYW5rLWNoYXQtdGl0bGUiPldhbmQ8L2gyPjxwIGNsYXNzPSJibGFuay1jaGF0LXN1YnRpdGxlIj5cdTY1MkZcdTYzMDFcdTdFQzhcdTdBRUYgUFRZIFx1NEYxQVx1OEJERFx1NEUwRVx1N0VEM1x1Njc4NFx1NTMxNiBjaGF0IFx1NEYxQVx1OEJERFx1RkYwQ1x1NEUyNFx1NzlDRFx1NkEyMVx1NUYwRlx1NTNFRlx1NUU3Nlx1NUI1OFx1MzAwMjwvcD48ZGl2IGNsYXNzPSJibGFuay1jaGF0LXRvb2xzIj48YnV0dG9uIGNsYXNzPSJibGFuay1jaGF0LXRvb2wtYnRuIiBpZD0id2VsY29tZS10b29sLWNsYXVkZSIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idG9vbC1pY29uIj4nK0coInRlcm1pbmFsIix7c2l6ZToxNixzdHJva2VXaWR0aDoxLjh9KSsnPC9zcGFuPlx1NjVCMFx1NUVGQVx1N0VDOFx1N0FFRlx1NEYxQVx1OEJERDwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImJsYW5rLWNoYXQtdG9vbC1idG4iIGlkPSJ3ZWxjb21lLXRvb2wtY29kZXgiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InRvb2wtaWNvbiB0b29sLWljb24tdGV4dCI+XHUyMzE4PC9zcGFuPlx1NjVCMFx1NUVGQSBDb2RleCBcdTRGMUFcdThCREQ8L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJibGFuay1jaGF0LXRvb2wtYnRuIiBpZD0id2VsY29tZS10b29sLXN0cnVjdHVyZWQiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InRvb2wtaWNvbiI+JytHKCJjaGF0Iix7c2l6ZToxNixzdHJva2VXaWR0aDoxLjh9KSsnPC9zcGFuPlx1NjVCMFx1NUVGQVx1N0VEM1x1Njc4NFx1NTMxNlx1NEYxQVx1OEJERDwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9ImJsYW5rLWNoYXQtY3dkLXdyYXAiPjxkaXYgY2xhc3M9ImJsYW5rLWNoYXQtY3dkIiBpZD0iYmxhbmstY2hhdC1jd2QiIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIHRpdGxlPSJcdTcwQjlcdTUxRkJcdTUyMDdcdTYzNjJcdTVERTVcdTRGNUNcdTc2RUVcdTVGNTUiPjxzcGFuIGNsYXNzPSJibGFuay1jaGF0LWN3ZC1pY29uIj4nK0coImZvbGRlciIse3NpemU6MTMsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYmxhbmstY2hhdC1jd2QtcGF0aCIgaWQ9ImJsYW5rLWNoYXQtY3dkLXBhdGgiPicrcCgkZSgpKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJibGFuay1jaGF0LWN3ZC1hcnJvdyIgaWQ9ImJsYW5rLWNoYXQtY3dkLWFycm93Ij4nK0coImNoZXZyb25Eb3duIix7c2l6ZToxMSxzdHJva2VXaWR0aDoyfSkrJzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJibGFuay1jaGF0LWN3ZC1kcm9wZG93biBoaWRkZW4iIGlkPSJibGFuay1jaGF0LWN3ZC1kcm9wZG93biI+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iaW5wdXQtcGFuZWwnKyhyLnNlbGVjdGVkSWQ/IiI6IiBoaWRkZW4iKSsnIj48ZGl2IGNsYXNzPSJjb21wb3Nlci10b3Atcm93Ij48ZGl2IGlkPSJ0b2RvLXByb2dyZXNzIiBjbGFzcz0idG9kby1wcm9ncmVzcyBoaWRkZW4iPjxkaXYgY2xhc3M9InRvZG8tcHJvZ3Jlc3MtaGVhZGVyIiBpZD0idG9kby1wcm9ncmVzcy10b2dnbGUiPjxkaXYgY2xhc3M9InRvZG8tcHJvZ3Jlc3MtZmlsbCIgaWQ9InRvZG8tcHJvZ3Jlc3MtZmlsbCIgYXJpYS1oaWRkZW49InRydWUiIHN0eWxlPSItLXByb2dyZXNzOjAiPjwvZGl2PjxkaXYgY2xhc3M9InRvZG8tcHJvZ3Jlc3MtbGVmdCI+PHNwYW4gY2xhc3M9InRvZG8tcHJvZ3Jlc3MtcmluZyIgaWQ9InRvZG8tcHJvZ3Jlc3MtcmluZyIgYXJpYS1oaWRkZW49InRydWUiIHN0eWxlPSItLXByb2dyZXNzOjAiPjxzdmcgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMzYgMzYiPjxjaXJjbGUgY2xhc3M9InRvZG8tcmluZy10cmFjayIgY3g9IjE4IiBjeT0iMTgiIHI9IjE1LjUiIGZpbGw9Im5vbmUiIHN0cm9rZS13aWR0aD0iNCIvPjxjaXJjbGUgY2xhc3M9InRvZG8tcmluZy1maWxsIiBjeD0iMTgiIGN5PSIxOCIgcj0iMTUuNSIgZmlsbD0ibm9uZSIgc3Ryb2tlLXdpZHRoPSI0IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48L3N2Zz48L3NwYW4+PHNwYW4gY2xhc3M9InRvZG8tcHJvZ3Jlc3MtY291bnRlciIgaWQ9InRvZG8tcHJvZ3Jlc3MtY291bnRlciI+PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InRvZG8tcHJvZ3Jlc3MtdGFzay13cmFwIj48c3BhbiBjbGFzcz0idG9kby1wcm9ncmVzcy10YXNrIiBpZD0idG9kby1wcm9ncmVzcy10YXNrIj48L3NwYW4+PC9kaXY+PHN2ZyBjbGFzcz0idG9kby1wcm9ncmVzcy1jaGV2cm9uIiB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cG9seWxpbmUgcG9pbnRzPSI2IDE1IDEyIDkgMTggMTUiLz48L3N2Zz48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJ0b2RvLXByb2dyZXNzLWJvZHkgaGlkZGVuIiBpZD0idG9kby1wcm9ncmVzcy1ib2R5Ij48dWwgY2xhc3M9InRvZG8tcHJvZ3Jlc3MtbGlzdCIgaWQ9InRvZG8tcHJvZ3Jlc3MtbGlzdCI+PC91bD48L2Rpdj48L2Rpdj48ZGl2IGlkPSJxdWV1ZS1iYXItaG9zdCIgY2xhc3M9InF1ZXVlLWJhci1ob3N0IiBoaWRkZW4+PC9kaXY+PGRpdiBjbGFzcz0iaW5wdXQtY29tcG9zZXInKyhhPyIgaGFzLXRleHQiOiIiKSsnIj48ZGl2IGNsYXNzPSJjb21wb3Nlci1zdGF0dXMtcm93IiBpZD0iY29tcG9zZXItc3RhdHVzLXJvdyI+JytIdih0KSsnPHNwYW4gY2xhc3M9InBlcm1pc3Npb24tYWN0aW9ucyBoaWRkZW4iIGlkPSJwZXJtaXNzaW9uLWFjdGlvbnMiPjxzcGFuIGNsYXNzPSJwZXJtaXNzaW9uLWFjdGlvbnMtbGFiZWwiIGlkPSJwZXJtaXNzaW9uLWFjdGlvbnMtbGFiZWwiPlx1N0I0OVx1NUY4NVx1NjM4OFx1Njc0Mzwvc3Bhbj48YnV0dG9uIGlkPSJhcHByb3ZlLXBlcm1pc3Npb24tYnRuIiBjbGFzcz0iYnRuIGJ0bi1wZXJtaXNzaW9uIGJ0bi1wZXJtaXNzaW9uLWFwcHJvdmUiIHR5cGU9ImJ1dHRvbiI+XHU2Mjc5XHU1MUM2PC9idXR0b24+PGJ1dHRvbiBpZD0iZGVueS1wZXJtaXNzaW9uLWJ0biIgY2xhc3M9ImJ0biBidG4tcGVybWlzc2lvbiBidG4tcGVybWlzc2lvbi1kZW55IiB0eXBlPSJidXR0b24iPlx1NjJEMlx1N0VERDwvYnV0dG9uPjwvc3Bhbj4nK2VmKCkrJzwvZGl2PjxkaXYgY2xhc3M9ImNvbXBvc2VyLW1haW4tcm93Ij48ZGl2IGNsYXNzPSJjb21wb3Nlci1hY3Rpb25zLWxlZnQiPjxidXR0b24gaWQ9ImF0dGFjaC1idG4iIGNsYXNzPSJidG4tY2lyY2xlIGJ0bi1jaXJjbGUtYWN0aW9uIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTY2RjRcdTU5MUEiIGFyaWEtbGFiZWw9Ilx1NjZGNFx1NTkxQSIgYXJpYS1oYXNwb3B1cD0ibWVudSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPicrRygicGx1cyIse3NpemU6MTgsc3Ryb2tlV2lkdGg6Mi4yfSkrJzwvYnV0dG9uPjxpbnB1dCB0eXBlPSJmaWxlIiBpZD0iZmlsZS11cGxvYWQtaW5wdXQiIG11bHRpcGxlIHRhYmluZGV4PSItMSIgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlO3dpZHRoOjFweDtoZWlnaHQ6MXB4O29wYWNpdHk6MDtvdmVyZmxvdzpoaWRkZW47Y2xpcDpyZWN0KDAsMCwwLDApO3BvaW50ZXItZXZlbnRzOm5vbmUiPjwvZGl2PjxkaXYgY2xhc3M9ImNvbXBvc2VyLWlucHV0LXdyYXAiPjx0ZXh0YXJlYSBpZD0iaW5wdXQtYm94IiBjbGFzcz0iaW5wdXQtdGV4dGFyZWEiIHBsYWNlaG9sZGVyPSInK09vKHQsci50ZXJtaW5hbEludGVyYWN0aXZlKSsnIiByb3dzPSIxIiBhdXRvY29tcGxldGU9Im9mZiIgYXV0b2NvcnJlY3Q9Im9mZiIgYXV0b2NhcGl0YWxpemU9Im9mZiIgc3BlbGxjaGVjaz0iZmFsc2UiIGVudGVya2V5aGludD0ic2VuZCI+JytwKGEpKyc8L3RleHRhcmVhPjxidXR0b24gaWQ9InByb21wdC1vcHRpbWl6ZS1idG4iIGNsYXNzPSJwcm9tcHQtb3B0aW1pemUtYnRuIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTYzRDBcdTc5M0FcdThCQ0RcdTRGMThcdTUzMTZcdUZGMDhBSVx1RkYwOSIgYXJpYS1sYWJlbD0iXHU2M0QwXHU3OTNBXHU4QkNEXHU0RjE4XHU1MzE2Ij48c3ZnIGNsYXNzPSJwcm9tcHQtb3B0aW1pemUtaWNvbiIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik0xMiAzbDEuNiA0LjRMMTggOWwtNC40IDEuNkwxMiAxNWwtMS42LTQuNEw2IDlsNC40LTEuNnoiIGZpbGw9ImN1cnJlbnRDb2xvciIgb3BhY2l0eT0iMC4yNSIvPjxwYXRoIGQ9Ik0xMiAzbDEuNiA0LjRMMTggOWwtNC40IDEuNkwxMiAxNWwtMS42LTQuNEw2IDlsNC40LTEuNnoiLz48cGF0aCBkPSJNMTkgMTRsLjcgMS45TDIxLjYgMTdsLTEuOS43TDE5IDE5LjZsLS43LTEuOUwxNi40IDE3bDEuOS0uN3oiIGZpbGw9ImN1cnJlbnRDb2xvciIgb3BhY2l0eT0iMC4zNSIvPjxwYXRoIGQ9Ik01IDRsLjUgMS40TDcgNmwtMS41LjZMNSA4bC0uNS0xLjRMMyA2bDEuNS0uNnoiIGZpbGw9ImN1cnJlbnRDb2xvciIgb3BhY2l0eT0iMC4zNSIvPjwvc3ZnPjxzcGFuIGNsYXNzPSJwcm9tcHQtb3B0aW1pemUtc3Bpbm5lciIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48L2J1dHRvbj48ZGl2IGNsYXNzPSJ2b2ljZS1pbnB1dC1tb2RlIGhpZGRlbiIgaWQ9InZvaWNlLWlucHV0LW1vZGUiPjxidXR0b24gaWQ9InZvaWNlLXJlY29yZC1idG4iIGNsYXNzPSJ2b2ljZS1yZWNvcmQtYnRuIiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ2b2ljZS1yZWNvcmQtcHVsc2UiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PHNwYW4gY2xhc3M9InZvaWNlLXJlY29yZC1sYWJlbCI+XHU2MzA5XHU0RjRGIFx1OEJGNFx1OEJERDwvc3Bhbj48L2J1dHRvbj48YnV0dG9uIGlkPSJ2b2ljZS1jYW5jZWwtYnRuIiBjbGFzcz0idm9pY2UtY2FuY2VsLWJ0biIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU5MDAwXHU1MUZBXHU4QkVEXHU5N0YzXHU2QTIxXHU1RjBGIiBhcmlhLWxhYmVsPSJcdTkwMDBcdTUxRkFcdThCRURcdTk3RjNcdTZBMjFcdTVGMEYiPicrRygieCIse3NpemU6MTQsc3Ryb2tlV2lkdGg6Mn0pKyc8L2J1dHRvbj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJjb21wb3Nlci1hY3Rpb25zLXJpZ2h0Ij48YnV0dG9uIGlkPSJzdG9wLWJ1dHRvbiIgY2xhc3M9ImJ0bi1jaXJjbGUgYnRuLWNpcmNsZS1zdG9wIGhpZGRlbiIgdGl0bGU9Ilx1NTA1Q1x1NkI2MiI+PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0iY3VycmVudENvbG9yIj48cmVjdCB4PSIzIiB5PSIzIiB3aWR0aD0iMTAiIGhlaWdodD0iMTAiIHJ4PSIyIi8+PC9zdmc+PC9idXR0b24+PGJ1dHRvbiBpZD0ic2VuZC1pbnB1dC1idXR0b24iIGNsYXNzPSJidG4tY2lyY2xlIGJ0bi1jaXJjbGUtc2VuZCIgdGl0bGU9Ilx1NTNEMVx1OTAwMSI+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxsaW5lIHgxPSIyMiIgeTE9IjIiIHgyPSIxMSIgeTI9IjEzIi8+PHBvbHlnb24gcG9pbnRzPSIyMiAyIDE1IDIyIDExIDEzIDIgOSAyMiAyIi8+PC9zdmc+PC9idXR0b24+PC9kaXY+PC9kaXY+PGRpdiBpZD0iYXR0YWNobWVudC1wcmV2aWV3IiBjbGFzcz0iYXR0YWNobWVudC1wcmV2aWV3IGhpZGRlbiI+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iY29tcG9zZXItcGx1cy1wb3BvdmVyIGhpZGRlbiIgaWQ9ImNvbXBvc2VyLXBsdXMtcG9wb3ZlciIgcm9sZT0ibWVudSIgYXJpYS1sYWJlbD0iXHU2NkY0XHU1OTFBXHU2NENEXHU0RjVDIj48YnV0dG9uIGNsYXNzPSJwbHVzLXBvcG92ZXItaXRlbSIgaWQ9InBsdXMtYXR0YWNoLWl0ZW0iIHR5cGU9ImJ1dHRvbiIgcm9sZT0ibWVudWl0ZW0iPicrRygicGFwZXJjbGlwIix7c2l6ZToxNCxzdHJva2VXaWR0aDoxLjgsY2xzOiJwbHVzLXBvcG92ZXItaWNvbiJ9KSsnPHNwYW4gY2xhc3M9InBsdXMtcG9wb3Zlci1sYWJlbCI+XHU0RTBBXHU0RjIwXHU5NjQ0XHU0RUY2PC9zcGFuPjwvYnV0dG9uPjxidXR0b24gY2xhc3M9InBsdXMtcG9wb3Zlci1pdGVtJysoci50ZXJtaW5hbEludGVyYWN0aXZlPyIgaXMtb24iOiIiKSsnIiBpZD0idGVybWluYWwtaW50ZXJhY3RpdmUtdG9nZ2xlLXRvcCIgdHlwZT0iYnV0dG9uIiByb2xlPSJtZW51aXRlbWNoZWNrYm94IiBhcmlhLWNoZWNrZWQ9IicrKHIudGVybWluYWxJbnRlcmFjdGl2ZT8idHJ1ZSI6ImZhbHNlIikrJyI+JytHKCJrZXlib2FyZCIse3NpemU6MTQsc3Ryb2tlV2lkdGg6MS44LGNsczoicGx1cy1wb3BvdmVyLWljb24ifSkrJzxzcGFuIGNsYXNzPSJwbHVzLXBvcG92ZXItbGFiZWwiPlx1N0VDOFx1N0FFRlx1NEVBNFx1NEU5Mjwvc3Bhbj48c3BhbiBjbGFzcz0icGx1cy1wb3BvdmVyLXRvZ2dsZS1zdGF0ZSI+Jysoci50ZXJtaW5hbEludGVyYWN0aXZlPyJcdTVGMDAiOiJcdTUxNzMiKSsnPC9zcGFuPjwvYnV0dG9uPjxkaXYgY2xhc3M9InBsdXMtcG9wb3Zlci1zZXAiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj48ZGl2IGNsYXNzPSJwbHVzLXBvcG92ZXItdHJpby13cmFwIj4nK3phKHQse2tpbmQ6InBvcG92ZXIifSkrJzwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InZvaWNlLXRyYW5zY3JpcHQtYnViYmxlIGhpZGRlbiIgaWQ9InZvaWNlLXRyYW5zY3JpcHQtYnViYmxlIiBhcmlhLWxpdmU9InBvbGl0ZSI+PGRpdiBjbGFzcz0idm9pY2UtdHJhbnNjcmlwdC10ZXh0IiBpZD0idm9pY2UtdHJhbnNjcmlwdC10ZXh0Ij48L2Rpdj48ZGl2IGNsYXNzPSJ2b2ljZS10cmFuc2NyaXB0LWhpbnQiIGlkPSJ2b2ljZS10cmFuc2NyaXB0LWhpbnQiPjxzcGFuIGNsYXNzPSJ2b2ljZS13YXZlIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGk+PC9pPjxpPjwvaT48aT48L2k+PGk+PC9pPjwvc3Bhbj48c3BhbiBjbGFzcz0idm9pY2UtdHJhbnNjcmlwdC1zdGF0dXMiIGlkPSJ2b2ljZS10cmFuc2NyaXB0LXN0YXR1cyI+XHU2QjYzXHU1NzI4XHU4MDQ2XHU1NDJDXHUyMDI2XHU0RTBBXHU2RUQxXHU1M0Q2XHU2RDg4PC9zcGFuPjwvZGl2PjxzcGFuIGNsYXNzPSJ2b2ljZS1idWJibGUtYXJyb3ciIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC9kaXY+PHAgaWQ9ImFjdGlvbi1lcnJvciIgY2xhc3M9ImVycm9yLW1lc3NhZ2UgaGlkZGVuIj48L3A+PC9kaXY+PHNlY3Rpb24gaWQ9ImZvbGRlci1waWNrZXItbW9kYWwiIGNsYXNzPSJtb2RhbC1iYWNrZHJvcCBoaWRkZW4iPjxkaXYgY2xhc3M9Im1vZGFsIGZvbGRlci1waWNrZXItbW9kYWwiPjxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+PGgyIGNsYXNzPSJtb2RhbC10aXRsZSI+XHU5MDA5XHU2MkU5XHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1PC9oMj48YnV0dG9uIGlkPSJjbG9zZS1mb2xkZXItcGlja2VyIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4taWNvbiBtb2RhbC1jbG9zZS1idG4iIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU1MTczXHU5NUVEIj48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxsaW5lIHgxPSI2IiB5MT0iNiIgeDI9IjE4IiB5Mj0iMTgiLz48bGluZSB4MT0iMTgiIHkxPSI2IiB4Mj0iNiIgeTI9IjE4Ii8+PC9zdmc+PC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0ibW9kYWwtYm9keSI+PGRpdiBjbGFzcz0iZm9sZGVyLXBpY2tlci1xdWljay1yb3ciPjxidXR0b24gY2xhc3M9ImZvbGRlci1waWNrZXItcXVpY2stYnRuIGJ0bi13aXRoLWljb24iIGRhdGEtcGF0aD0iL3RtcCI+JytHKCJ0cmFzaCIse3NpemU6MTMsc3Ryb2tlV2lkdGg6MS43fSkrJzxzcGFuPlx1NEUzNFx1NjVGNlx1NzZFRVx1NUY1NTwvc3Bhbj48L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJmb2xkZXItcGlja2VyLXF1aWNrLWJ0biBidG4td2l0aC1pY29uIiBkYXRhLXBhdGg9Ii8iPicrRygiZm9sZGVyIix7c2l6ZToxMyxzdHJva2VXaWR0aDoxLjd9KSsnPHNwYW4+XHU2ODM5XHU3NkVFXHU1RjU1PC9zcGFuPjwvYnV0dG9uPjwvZGl2PjxkaXYgaWQ9ImZvbGRlci1icmVhZGNydW1iIiBjbGFzcz0iZm9sZGVyLWJyZWFkY3J1bWIiPjwvZGl2PjxkaXYgY2xhc3M9ImZvbGRlci1waWNrZXIiPjxzcGFuIGNsYXNzPSJmb2xkZXItcGlja2VyLWljb24iPicrRygiZm9sZGVyIix7c2l6ZToxNSxzdHJva2VXaWR0aDoxLjd9KSsnPC9zcGFuPjxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0iZm9sZGVyLXBpY2tlci1pbnB1dCIgY2xhc3M9ImZvbGRlci1waWNrZXItaW5wdXQiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJcdThGOTNcdTUxNjVcdTYyMTZcdTkwMDlcdTYyRTlcdTVERTVcdTRGNUNcdTc2RUVcdTVGNTUuLi4iIGF1dG9jb21wbGV0ZT0ib2ZmIiBhdXRvY29ycmVjdD0ib2ZmIiBhdXRvY2FwaXRhbGl6ZT0ib2ZmIiBzcGVsbGNoZWNrPSJmYWxzZSIgLz48L2Rpdj48ZGl2IGlkPSJmb2xkZXItcGlja2VyLWRyb3Bkb3duIiBjbGFzcz0iZm9sZGVyLXBpY2tlci1kcm9wZG93biBoaWRkZW4iPjwvZGl2PjxkaXYgaWQ9ImZvbGRlci1waWNrZXItdmFsaWRhdGlvbiIgY2xhc3M9ImZvbGRlci1waWNrZXItdmFsaWRhdGlvbiI+PC9kaXY+PC9kaXY+PC9kaXY+PC9zZWN0aW9uPjwvbWFpbj48L2Rpdj48L2Rpdj4nK1RjKCkrRmMoKSt3YygpK051KCl9ZnVuY3Rpb24gUGUoZSx0KXtpZihlKXtlLnRleHRDb250ZW50PXQsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTtmb3IodmFyIG49ZS5wcmV2aW91c0VsZW1lbnRTaWJsaW5nO247KXtpZihuLnRhZ05hbWU9PT0iSU5QVVQiKXtuLnNldEF0dHJpYnV0ZSgiZGF0YS1lcnJvciIsInRydWUiKTticmVha31uPW4ucHJldmlvdXNFbGVtZW50U2libGluZ319fWZ1bmN0aW9uIHVpKGUpe2lmKGUpe2UudGV4dENvbnRlbnQ9IiIsZS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKTtmb3IodmFyIHQ9ZS5wcmV2aW91c0VsZW1lbnRTaWJsaW5nO3Q7KXtpZih0LnRhZ05hbWU9PT0iSU5QVVQiKXt0LnNldEF0dHJpYnV0ZSgiZGF0YS1lcnJvciIsImZhbHNlIik7YnJlYWt9dD10LnByZXZpb3VzRWxlbWVudFNpYmxpbmd9fX1mdW5jdGlvbiBrKGUsdCl7dmFyIG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7bi5jbGFzc05hbWU9InRvYXN0LW1lc3NhZ2UiKyh0PT09ImVycm9yIj8iIHRvYXN0LWVycm9yIjoiIiksdCE9PSJlcnJvciImJihuLnN0eWxlLmJhY2tncm91bmQ9InZhcigtLWFjY2VudCkiLG4uc3R5bGUuY29sb3I9IndoaXRlIiksbi50ZXh0Q29udGVudD1lLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobiksc2V0VGltZW91dChmdW5jdGlvbigpe24ucmVtb3ZlKCl9LHQ9PT0iZXJyb3IiPzRlMzoyMjAwKX12YXIgRXI9W107ZnVuY3Rpb24gcmYoZSl7c3dpdGNoKGUpe2Nhc2Uid2FybmluZyI6cmV0dXJuIiEiO2Nhc2UiZGFuZ2VyIjpyZXR1cm4iXHUyNkEwXHVGRTBFIjtjYXNlInN1Y2Nlc3MiOnJldHVybiJcdTI3MTMiO2Nhc2UicXVlc3Rpb24iOnJldHVybiI/IjtkZWZhdWx0OnJldHVybiJpIn19ZnVuY3Rpb24gcm4oZSl7ZT1lfHx7fTt2YXIgdD1lLmRpc21pc3NhYmxlIT09ITEsbj1lLnR5cGV8fCJpbmZvIixpPWUuaWNvbnx8cmYobiksYT0hIWUuaW5wdXQ7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHUpe3ZhciBzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3MuY2xhc3NOYW1lPSJ3YW5kLWRpYWxvZy1iYWNrZHJvcCIscy5zZXRBdHRyaWJ1dGUoInJvbGUiLCJwcmVzZW50YXRpb24iKTt2YXIgbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtvLmNsYXNzTmFtZT0id2FuZC1kaWFsb2ciLG8uc2V0QXR0cmlidXRlKCJyb2xlIixhPyJkaWFsb2ciOiJhbGVydGRpYWxvZyIpLG8uc2V0QXR0cmlidXRlKCJhcmlhLW1vZGFsIiwidHJ1ZSIpLGUudGl0bGUmJm8uc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixlLnRpdGxlKTt2YXIgbD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtsLmNsYXNzTmFtZT0id2FuZC1kaWFsb2ctaGVhZGVyIjt2YXIgYz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtjLmNsYXNzTmFtZT0id2FuZC1kaWFsb2ctaWNvbiAiK24sYy50ZXh0Q29udGVudD1pLGwuYXBwZW5kQ2hpbGQoYyk7dmFyIGY9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7aWYoZi5jbGFzc05hbWU9IndhbmQtZGlhbG9nLXRleHR3cmFwIixlLnRpdGxlKXt2YXIgZD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtkLmNsYXNzTmFtZT0id2FuZC1kaWFsb2ctdGl0bGUiLGQudGV4dENvbnRlbnQ9ZS50aXRsZSxmLmFwcGVuZENoaWxkKGQpfWlmKGUubWVzc2FnZSl7dmFyIHY9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7di5jbGFzc05hbWU9IndhbmQtZGlhbG9nLW1lc3NhZ2UiLHYudGV4dENvbnRlbnQ9ZS5tZXNzYWdlLGYuYXBwZW5kQ2hpbGQodil9bC5hcHBlbmRDaGlsZChmKSxvLmFwcGVuZENoaWxkKGwpO3ZhciBnPW51bGw7aWYoYSl7dmFyIGg9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7aC5jbGFzc05hbWU9IndhbmQtZGlhbG9nLWJvZHkiLGc9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSxnLnR5cGU9InRleHQiLGcuY2xhc3NOYW1lPSJ3YW5kLWRpYWxvZy1pbnB1dCIsZS5pbnB1dFBsYWNlaG9sZGVyJiYoZy5wbGFjZWhvbGRlcj1lLmlucHV0UGxhY2Vob2xkZXIpLGUuaW5wdXRWYWx1ZSE9bnVsbCYmKGcudmFsdWU9U3RyaW5nKGUuaW5wdXRWYWx1ZSkpLGguYXBwZW5kQ2hpbGQoZyksby5hcHBlbmRDaGlsZChoKX12YXIgbT1lLmJ1dHRvbnMmJmUuYnV0dG9ucy5sZW5ndGg/ZS5idXR0b25zOlt7bGFiZWw6Ilx1NTk3RCIsdmFsdWU6ITAsa2luZDoicHJpbWFyeSIsYXV0b2ZvY3VzOiEwfV0sRT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtFLmNsYXNzTmFtZT0id2FuZC1kaWFsb2ctZm9vdGVyIjt2YXIgQz1udWxsLGI9bnVsbDtmdW5jdGlvbiBCKHgpe2lmKCFzLmNsYXNzTGlzdC5jb250YWlucygiY2xvc2luZyIpKXtzLmNsYXNzTGlzdC5hZGQoImNsb3NpbmciKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIixGLCEwKTt2YXIgUz1Fci5pbmRleE9mKEIpO1M+PTAmJkVyLnNwbGljZShTLDEpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtzLnBhcmVudE5vZGUmJnMucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChzKSx1KHgpfSwxNjApfX1tLmZvckVhY2goZnVuY3Rpb24oeCl7dmFyIFM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIiksaj14LmtpbmR8fCJzZWNvbmRhcnkiO1MuY2xhc3NOYW1lPSJidG4gYnRuLSIraixTLnR5cGU9ImJ1dHRvbiIsUy50ZXh0Q29udGVudD14LmxhYmVsLFMuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7YSYmeC5raW5kPT09InByaW1hcnkiP0IoZz9nLnZhbHVlOiIiKTpCKHgudmFsdWUpfSksQ3x8KEM9UykseC5hdXRvZm9jdXMmJihiPVMpLEUuYXBwZW5kQ2hpbGQoUyl9KSxvLmFwcGVuZENoaWxkKEUpLHMuYXBwZW5kQ2hpbGQobykscy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeCl7eC50YXJnZXQ9PT1zJiZ0JiZCKGUuY2FuY2VsVmFsdWUhPT12b2lkIDA/ZS5jYW5jZWxWYWx1ZTphP251bGw6ITEpfSk7ZnVuY3Rpb24gRih4KXtpZihFcltFci5sZW5ndGgtMV09PT1CKXtpZih4LmtleT09PSJFc2NhcGUiJiZ0KXt4LnByZXZlbnREZWZhdWx0KCkseC5zdG9wUHJvcGFnYXRpb24oKSxCKGUuY2FuY2VsVmFsdWUhPT12b2lkIDA/ZS5jYW5jZWxWYWx1ZTphP251bGw6ITEpO3JldHVybn1pZih4LmtleT09PSJFbnRlciIpe2Zvcih2YXIgUz1udWxsLGo9MDtqPG0ubGVuZ3RoO2orKylpZihtW2pdLmtpbmQ9PT0icHJpbWFyeSIpe1M9bVtqXTticmVha31TfHwoUz1tW20ubGVuZ3RoLTFdKSxTJiYoeC5wcmV2ZW50RGVmYXVsdCgpLHguc3RvcFByb3BhZ2F0aW9uKCksYSYmUy5raW5kPT09InByaW1hcnkiP0IoZz9nLnZhbHVlOiIiKTpCKFMudmFsdWUpKX19fWRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLEYsITApLEVyLnB1c2goQiksZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChzKSxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtpZihhJiZnKXtnLmZvY3VzKCk7dHJ5e2cuc2VsZWN0KCl9Y2F0Y2h7fX1lbHNlIGI/Yi5mb2N1cygpOkMmJkMuZm9jdXMoKX0pfSl9ZnVuY3Rpb24gYWYoZSx0KXtyZXR1cm4gdD10fHx7fSxybih7dGl0bGU6dC50aXRsZXx8Ilx1NjNEMFx1NzkzQSIsbWVzc2FnZTp0eXBlb2YgZT09InN0cmluZyI/ZTpTdHJpbmcoZT8/IiIpLHR5cGU6dC50eXBlfHwiaW5mbyIsYnV0dG9uczpbe2xhYmVsOnQub2tMYWJlbHx8Ilx1NTk3RCIsdmFsdWU6dm9pZCAwLGtpbmQ6InByaW1hcnkiLGF1dG9mb2N1czohMH1dfSl9ZnVuY3Rpb24gQnMoZSx0KXt0PXR8fHt9O3ZhciBuPSEhdC5kYW5nZXJ8fHQudHlwZT09PSJkYW5nZXIiO3JldHVybiBybih7dGl0bGU6dC50aXRsZXx8KG4/Ilx1Nzg2RVx1OEJBNFx1NjRDRFx1NEY1QyI6Ilx1OEJGN1x1Nzg2RVx1OEJBNCIpLG1lc3NhZ2U6dHlwZW9mIGU9PSJzdHJpbmciP2U6U3RyaW5nKGU/PyIiKSx0eXBlOnQudHlwZXx8KG4/ImRhbmdlciI6InF1ZXN0aW9uIiksY2FuY2VsVmFsdWU6ITEsYnV0dG9uczpbe2xhYmVsOnQuY2FuY2VsTGFiZWx8fCJcdTUzRDZcdTZEODgiLHZhbHVlOiExLGtpbmQ6InNlY29uZGFyeSJ9LHtsYWJlbDp0Lm9rTGFiZWx8fChuPyJcdTUyMjBcdTk2NjQiOiJcdTc4NkVcdTVCOUEiKSx2YWx1ZTohMCxraW5kOm4/ImRhbmdlciI6InByaW1hcnkiLGF1dG9mb2N1czohbn1dfSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaT09PSEwfSl9ZnVuY3Rpb24gdWYoZSx0LG4pe3JldHVybiBuPW58fHt9LHJuKHt0aXRsZTpuLnRpdGxlfHwiXHU4QkY3XHU4RjkzXHU1MTY1IixtZXNzYWdlOnR5cGVvZiBlPT0ic3RyaW5nIj9lOlN0cmluZyhlPz8iIiksdHlwZTpuLnR5cGV8fCJxdWVzdGlvbiIsaW5wdXQ6ITAsaW5wdXRWYWx1ZTp0PT1udWxsPyIiOlN0cmluZyh0KSxpbnB1dFBsYWNlaG9sZGVyOm4ucGxhY2Vob2xkZXJ8fCIiLGNhbmNlbFZhbHVlOm51bGwsYnV0dG9uczpbe2xhYmVsOm4uY2FuY2VsTGFiZWx8fCJcdTUzRDZcdTZEODgiLHZhbHVlOm51bGwsa2luZDoic2Vjb25kYXJ5In0se2xhYmVsOm4ub2tMYWJlbHx8Ilx1Nzg2RVx1NUI5QSIsdmFsdWU6dm9pZCAwLGtpbmQ6InByaW1hcnkifV19KX13aW5kb3cud2FuZEFsZXJ0PWFmLHdpbmRvdy53YW5kQ29uZmlybT1Ccyx3aW5kb3cud2FuZFByb21wdD11Zix3aW5kb3cub3BlbldhbmREaWFsb2c9cm47dmFyIFh0PVtdLERzPTAsc2Y9NixvZj0xNjtmdW5jdGlvbiBjYShlKXtpZigoZS5hY3Rpb25MYWJlbHx8ZS5wbGF5U291bmQpJiZJcygpLCFyLm5vdGlmQnViYmxlKXJldHVybntkaXNtaXNzOmZ1bmN0aW9uKCl7fX07dmFyIHQ9KytEcyxuPWUudHlwZXx8ImluZm8iLGk9ZS5pY29ufHwobj09PSJ3YXJuaW5nIj8iISI6bj09PSJzdWNjZXNzIj8iXHUyNzEzIjoiaSIpLGE9ZS5kdXJhdGlvbiE9PXZvaWQgMD9lLmR1cmF0aW9uOjhlMyx1PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3UuY2xhc3NOYW1lPSJub3RpZmljYXRpb24tYnViYmxlIix1LnNldEF0dHJpYnV0ZSgiZGF0YS1uaWQiLFN0cmluZyh0KSk7dmFyIHM9JzxkaXYgY2xhc3M9Im5vdGlmaWNhdGlvbi1idWJibGUtaGVhZGVyIj48c3BhbiBjbGFzcz0ibm90aWZpY2F0aW9uLWJ1YmJsZS1pY29uICcrbisnIj4nK2krJzwvc3Bhbj48c3BhbiBjbGFzcz0ibm90aWZpY2F0aW9uLWJ1YmJsZS10aXRsZSI+JytwKGUudGl0bGUpKyc8L3NwYW4+PGJ1dHRvbiBjbGFzcz0ibm90aWZpY2F0aW9uLWJ1YmJsZS1jbG9zZSIgdGl0bGU9Ilx1NTE3M1x1OTVFRCI+XHhENzwvYnV0dG9uPjwvZGl2Picsbz1lLmJvZHk/JzxkaXYgY2xhc3M9Im5vdGlmaWNhdGlvbi1idWJibGUtYm9keSI+JytwKGUuYm9keSkucmVwbGFjZSgvXG4vZywiPGJyPiIpKyI8L2Rpdj4iOiIiLGw9ZS5hY3Rpb25MYWJlbD8nPGRpdiBjbGFzcz0ibm90aWZpY2F0aW9uLWJ1YmJsZS1hY3Rpb25zIj48YnV0dG9uIGNsYXNzPSJwcmltYXJ5Ij4nK3AoZS5hY3Rpb25MYWJlbCkrIjwvYnV0dG9uPjwvZGl2PiI6IiI7dS5pbm5lckhUTUw9cytvK2wsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh1KTt2YXIgYz17aWQ6dCxlbDp1fTtYdC5wdXNoKGMpLGRhKCk7dmFyIGY9dS5xdWVyeVNlbGVjdG9yKCIubm90aWZpY2F0aW9uLWJ1YmJsZS1jbG9zZSIpO2lmKGYmJihmLm9uY2xpY2s9ZnVuY3Rpb24oKXticih0KX0pLGUuYWN0aW9uTGFiZWwmJmUuYWN0aW9uKXt2YXIgZD11LnF1ZXJ5U2VsZWN0b3IoIi5ub3RpZmljYXRpb24tYnViYmxlLWFjdGlvbnMgYnV0dG9uIik7ZCYmKGQub25jbGljaz1mdW5jdGlvbigpe2UuYWN0aW9uKCksYnIodCl9KX12YXIgdj1udWxsO3JldHVybiBhPjAmJih2PXNldFRpbWVvdXQoZnVuY3Rpb24oKXticih0KX0sYSkpLHtkaXNtaXNzOmZ1bmN0aW9uKCl7YnIodCl9fX1mdW5jdGlvbiBicihlKXtmb3IodmFyIHQ9LTEsbj0wO248WHQubGVuZ3RoO24rKylpZihYdFtuXS5pZD09PWUpe3Q9bjticmVha31pZih0IT09LTEpe3ZhciBpPVh0W3RdO2kuZWwuY2xhc3NMaXN0LmFkZCgic2xpZGUtb3V0IiksWHQuc3BsaWNlKHQsMSksZGEoKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aS5lbC5wYXJlbnROb2RlJiZpLmVsLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoaS5lbCl9LDMwMCl9fWZ1bmN0aW9uIGRhKCl7Zm9yKHZhciBlPW9mLHQ9MDt0PFh0Lmxlbmd0aDt0KyspWHRbdF0uZWwuc3R5bGUudG9wPWUrInB4IixlKz1YdFt0XS5lbC5vZmZzZXRIZWlnaHQrc2Z9dHJ5e0xzPW5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL1dhbmRQbGF0Zm9ybVwvbWFjT1MvKSx2YT13aW5kb3cud2Via2l0JiZ3aW5kb3cud2Via2l0Lm1lc3NhZ2VIYW5kbGVycyYmd2luZG93LndlYmtpdC5tZXNzYWdlSGFuZGxlcnMud2FuZE5hdGl2ZXx8bnVsbCxMcyYmdmEmJnR5cGVvZiB3aW5kb3cuV2FuZE5hdGl2ZT4idSImJih3aW5kb3cuV2FuZE5hdGl2ZT17ZG93bmxvYWRVcGRhdGU6ZnVuY3Rpb24oZSx0LG4pe3RyeXt2YS5wb3N0TWVzc2FnZSh7dHlwZToiZG93bmxvYWRVcGRhdGUiLHVybDpTdHJpbmcoZXx8IiIpLGZpbGVOYW1lOlN0cmluZyh0fHwid2FuZC11cGRhdGUuZG1nIiksc291cmNlOlN0cmluZyhufHwibG9jYWwiKX0pfWNhdGNoe319fSl9Y2F0Y2h7fXZhciBOZT10eXBlb2YgV2FuZE5hdGl2ZTwidSImJnR5cGVvZiBXYW5kTmF0aXZlLnNlbmROb3RpZmljYXRpb249PSJmdW5jdGlvbiIsRnI9bmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvV2FuZEFwcFwvKFteXHNdKykvKSxrcz0vV2FuZFBsYXRmb3JtXC9tYWNPUy8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSxsZj0hIUZyJiYha3MseG49RnImJmxmP0ZyWzFdOm51bGwsYW49RnImJmtzP0ZyWzFdOm51bGw7ZnVuY3Rpb24gSm4oZSl7aWYoISghTmV8fHR5cGVvZiBXYW5kTmF0aXZlLnZpYnJhdGUhPSJmdW5jdGlvbiIpKXRyeXtXYW5kTmF0aXZlLnZpYnJhdGUoZXx8ImxpZ2h0Iil9Y2F0Y2h7fX1mdW5jdGlvbiBmYSgpe2lmKE5lKXt2YXIgZT1yLnNlc3Npb25zLnNvbWUoZnVuY3Rpb24odCl7cmV0dXJuIXQuYXJjaGl2ZWQmJih0LnN0YXR1cz09PSJydW5uaW5nInx8dC5zdGF0dXM9PT0idGhpbmtpbmcifHx0LnN0YXR1cz09PSJpbml0aWFsaXppbmciKX0pO2lmKHR5cGVvZiBXYW5kTmF0aXZlLnNldEtlZXBTY3JlZW5Pbj09ImZ1bmN0aW9uIil0cnl7V2FuZE5hdGl2ZS5zZXRLZWVwU2NyZWVuT24oZSl9Y2F0Y2h7fWlmKGUpe2lmKHR5cGVvZiBXYW5kTmF0aXZlLnN0YXJ0S2VlcEFsaXZlPT0iZnVuY3Rpb24iKXRyeXtXYW5kTmF0aXZlLnN0YXJ0S2VlcEFsaXZlKCl9Y2F0Y2h7fX1lbHNlIGlmKHR5cGVvZiBXYW5kTmF0aXZlLnN0b3BLZWVwQWxpdmU9PSJmdW5jdGlvbiIpdHJ5e1dhbmROYXRpdmUuc3RvcEtlZXBBbGl2ZSgpfWNhdGNoe319fWZ1bmN0aW9uIHNpKCl7aWYoTmUmJnR5cGVvZiBXYW5kTmF0aXZlLmdldFBlcm1pc3Npb249PSJmdW5jdGlvbiIpdHJ5e3JldHVybiBXYW5kTmF0aXZlLmdldFBlcm1pc3Npb24oKX1jYXRjaHt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gY2YoKXtpZihOZSl7dmFyIGU9c2koKTtpZihlPT09ImRlZmF1bHQifHxlPT09ImRlbmllZCIpdHJ5e1dhbmROYXRpdmUucmVxdWVzdFBlcm1pc3Npb24oKX1jYXRjaHt9cmV0dXJufXR5cGVvZiBOb3RpZmljYXRpb248InUiJiZOb3RpZmljYXRpb24ucGVybWlzc2lvbj09PSJkZWZhdWx0IiYmTm90aWZpY2F0aW9uLnJlcXVlc3RQZXJtaXNzaW9uKCl9ZnVuY3Rpb24gZGYoZSl7dmFyIHQ9ZXx8e307cmV0dXJuISh0Lm9ubHlXaGVuSGlkZGVuJiYhZG9jdW1lbnQuaGlkZGVufHx0LnNraXBXaGVuU2VsZWN0ZWRTZXNzaW9uSWQmJnQuc2tpcFdoZW5TZWxlY3RlZFNlc3Npb25JZD09PXIuc2VsZWN0ZWRJZCYmIWRvY3VtZW50LmhpZGRlbil9ZnVuY3Rpb24gZmYoZSx0KXtpZighZXx8IXR8fHQ8PTApcmV0dXJuITE7dmFyIG49ci5ub3RpZmljYXRpb25IaXN0b3J5W2VdfHwwLGk9RGF0ZS5ub3coKTtyZXR1cm4gaS1uPHQ/ITA6KHIubm90aWZpY2F0aW9uSGlzdG9yeVtlXT1pLCExKX1mdW5jdGlvbiBvaShlLHQsbil7dmFyIGk9bnx8e30sYT1pLnRhZ3x8IiI7aWYoZGYoaSkmJiFmZihhLGkubWluSW50ZXJ2YWxNc3x8MCkpe2lmKE5lKXt2YXIgdT1zaSgpO2lmKHUhPT0iZ3JhbnRlZCIpcmV0dXJuO3RyeXt2YXIgcz1hO2kua2luZCYmKHM9aS5raW5kKyhhPyI6IithOiIiKSksV2FuZE5hdGl2ZS5zZW5kTm90aWZpY2F0aW9uKGV8fCJXYW5kIix0fHwiIixzfHwiIil9Y2F0Y2h7fXJldHVybn1pZighKHR5cGVvZiBOb3RpZmljYXRpb24+InUifHxOb3RpZmljYXRpb24ucGVybWlzc2lvbiE9PSJncmFudGVkIikmJmRvY3VtZW50LmhpZGRlbil0cnl7dmFyIG89bmV3IE5vdGlmaWNhdGlvbihlLHtib2R5OnR8fCIiLGljb246aS5pY29ufHwiL2Zhdmljb24uaWNvIix0YWc6YXx8dm9pZCAwfSk7by5vbmNsaWNrPWZ1bmN0aW9uKCl7d2luZG93LmZvY3VzKCksby5jbG9zZSgpLGkub25DbGljayYmaS5vbkNsaWNrKCl9LHNldFRpbWVvdXQoZnVuY3Rpb24oKXtvLmNsb3NlKCl9LDFlNCl9Y2F0Y2h7fX19ZnVuY3Rpb24gcGYoZSx0KXtpZighKCF0fHwhdC50aXRsZSkpe3ZhciBuPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihhKXtyZXR1cm4gYS5pZD09PWV9KTtpZihuKXt2YXIgaT1uLnN1bW1hcnl8fG4uY29tbWFuZHx8ZTtvaSgiXHU0RUZCXHU1MkExXHU4RkRCXHU4ODRDXHU0RTJEIixpK2AKYCt0LnRpdGxlLHtraW5kOiJ0YXNrIix0YWc6IndhbmQtdGFzay0iK2UrIi0iK3QudGl0bGUsbWluSW50ZXJ2YWxNczo5ZTQsb25seVdoZW5IaWRkZW46ITAsc2tpcFdoZW5TZWxlY3RlZFNlc3Npb25JZDplLG9uQ2xpY2s6ZnVuY3Rpb24oKXtlIT09ci5zZWxlY3RlZElkJiZSdChlKX19KX19fWZ1bmN0aW9uIEFzKGUsdCl7RWYoZXx8Ii0iLHR8fCItIiksb2koIldhbmQgXHU1M0QxXHU3M0IwXHU2NUIwXHU3MjQ4XHU2NzJDIiwiXHU1RjUzXHU1MjREICIrKGV8fCItIikrIiBcdTIxOTIgXHU2NzAwXHU2NUIwICIrKHR8fCItIikse2tpbmQ6InVwZGF0ZSIsdGFnOiJ3YW5kLXVwZGF0ZSIsbWluSW50ZXJ2YWxNczozZTV9KX1mdW5jdGlvbiB2ZihlLHQpe29pKCJcdTk3MDBcdTg5ODFcdTRGNjBcdTc2ODRcdTYzODhcdTY3NDMiLHQse2tpbmQ6InBlcm1pc3Npb24iLHRhZzoid2FuZC1wZXJtLSIrZSxtaW5JbnRlcnZhbE1zOjZlNCxvbmx5V2hlbkhpZGRlbjohMCxza2lwV2hlblNlbGVjdGVkU2Vzc2lvbklkOmUsb25DbGljazpmdW5jdGlvbigpe2UhPT1yLnNlbGVjdGVkSWQmJlJ0KGUpfX0pfWZ1bmN0aW9uIG1mKGUsdCxuKXtvaSh0LG4se2tpbmQ6InRhc2stZW5kZWQiLHRhZzoid2FuZC1lbmRlZC0iK2UsbWluSW50ZXJ2YWxNczoxZTQsb25DbGljazpmdW5jdGlvbigpe2UhPT1yLnNlbGVjdGVkSWQmJlJ0KGUpfX0pfXZhciBTbj17fSxnZj0zMDtmdW5jdGlvbiB4cyhlKXtpZighZSlyZXR1cm4iIjt2YXIgdD1TdHJpbmcoZSkucmVwbGFjZSgvXiMrXHMrL2dtLCIiKS5yZXBsYWNlKC9cKlwqL2csIiIpLnJlcGxhY2UoL2AvZywiIikudHJpbSgpLG49dC5zcGxpdChgCmApWzBdLnRyaW0oKTtyZXR1cm4gbi5sZW5ndGg+MTAwJiYobj1uLnNsaWNlKDAsMTAwKSsiXHUyMDI2Iiksbn1mdW5jdGlvbiBwYShlKXshTmV8fHR5cGVvZiBXYW5kTmF0aXZlLnVwZGF0ZVNlc3Npb25Qcm9ncmVzcyE9ImZ1bmN0aW9uInx8ZSYmKFNuW2VdJiZjbGVhclRpbWVvdXQoU25bZV0pLFNuW2VdPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtkZWxldGUgU25bZV0saGYoZSl9LGdmKSl9ZnVuY3Rpb24gaGYoZSl7dmFyIHQ9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHgpe3JldHVybiB4LmlkPT09ZX0pO2lmKHQpe3ZhciBuPXQuc3VtbWFyeXx8dC5jb21tYW5kfHxlLGk9dC5zdGF0dXN8fCJydW5uaW5nIjtpZihpPT09ImlkbGUifHxpPT09ImFyY2hpdmVkInx8aT09PSJleGl0ZWQiKXtTcyhlKTtyZXR1cm59Zm9yKHZhciBhPW51bGwsdT0iIixzPSIiLG89W10sbD10Lm1lc3NhZ2VzfHxbXSxjPWwubGVuZ3RoLTE7Yz49MDtjLS0pe3ZhciBmPWxbY107aWYoISghZi5jb250ZW50fHwhQXJyYXkuaXNBcnJheShmLmNvbnRlbnQpKSl7aWYoIXMmJmYucm9sZT09PSJhc3Npc3RhbnQiKWZvcih2YXIgZD1mLmNvbnRlbnQubGVuZ3RoLTE7ZD49MDtkLS0pe3ZhciB2PWYuY29udGVudFtkXTtpZih2JiZ2LnR5cGU9PT0idGV4dCImJnYudGV4dCYmdi50ZXh0LnRyaW0oKSl7cz14cyh2LnRleHQpO2JyZWFrfX1pZihmLnJvbGU9PT0idXNlciIpe3ZhciBnPWYuY29udGVudC5zb21lKGZ1bmN0aW9uKHgpe3JldHVybiB4JiZ4Ll9fcXVldWVkfSk7aWYoIWcpZm9yKHZhciBoPTA7aDxmLmNvbnRlbnQubGVuZ3RoO2grKyl7dmFyIG09Zi5jb250ZW50W2hdO2lmKG0mJm0udHlwZT09PSJ0ZXh0IiYmbS50ZXh0JiZtLnRleHQudHJpbSgpKXt2YXIgRT14cyhtLnRleHQpO3V8fCh1PUUpLG8ubGVuZ3RoPDQmJm8ucHVzaChFKTticmVha319fWlmKCFhKWZvcih2YXIgQz1mLmNvbnRlbnQubGVuZ3RoLTE7Qz49MDtDLS0pe3ZhciBiPWYuY29udGVudFtDXTtpZihiJiZiLnR5cGU9PT0idG9vbF91c2UiJiZiLm5hbWU9PT0iVG9kb1dyaXRlIiYmYi5pbnB1dCYmYi5pbnB1dC50b2Rvcyl7YT1iLmlucHV0LnRvZG9zO2JyZWFrfX1pZihhJiZvLmxlbmd0aD49NCYmcylicmVha319by5yZXZlcnNlKCk7dmFyIEI9IiI7ZT09PXIuc2VsZWN0ZWRJZCYmci5jdXJyZW50VGFzayYmci5jdXJyZW50VGFzay50aXRsZSYmKEI9ci5jdXJyZW50VGFzay50aXRsZSk7dmFyIEY9e3Nlc3Npb25MYWJlbDpuLHN0YXR1czppLGN1cnJlbnRUYXNrOkIsbGF0ZXN0VXNlclRleHQ6dSxsYXRlc3RBc3Npc3RhbnRUZXh0OnMsdG9kb3M6YXx8W10scmVjZW50VXNlclRleHRzOm99O3RyeXtXYW5kTmF0aXZlLnVwZGF0ZVNlc3Npb25Qcm9ncmVzcyhlLEpTT04uc3RyaW5naWZ5KEYpKX1jYXRjaHt9fX1mdW5jdGlvbiBTcyhlKXtpZighKCFOZXx8dHlwZW9mIFdhbmROYXRpdmUuY2xlYXJTZXNzaW9uUHJvZ3Jlc3MhPSJmdW5jdGlvbiIpKXtTbltlXSYmKGNsZWFyVGltZW91dChTbltlXSksZGVsZXRlIFNuW2VdKTt0cnl7V2FuZE5hdGl2ZS5jbGVhclNlc3Npb25Qcm9ncmVzcyhlKX1jYXRjaHt9fX13aW5kb3cuaGFuZGxlTmF0aXZlQmFjaz1mdW5jdGlvbigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1tb2RhbCIpO2lmKGUmJiFlLmNsYXNzTGlzdC5jb250YWlucygiaGlkZGVuIikpcmV0dXJuIGVyKCksITA7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb24tbW9kYWwiKTtpZih0JiYhdC5jbGFzc0xpc3QuY29udGFpbnMoImhpZGRlbiIpKXJldHVybiB2bigpLCEwO3ZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3b3JrdHJlZS1tZXJnZS1tb2RhbCIpO3JldHVybiBuJiYhbi5jbGFzc0xpc3QuY29udGFpbnMoImhpZGRlbiIpPyhabigpLCEwKTpyLmZpbGVQYW5lbE9wZW4mJl9lKCk/KHppKCExKSwhMCk6ci5zZXNzaW9uc0RyYXdlck9wZW4mJl9lKCk/KExyKCksITApOl9lKCkmJnIuc2VsZWN0ZWRJZD8oci5zZWxlY3RlZElkPW51bGwsRmUoKSxyLnNlc3Npb25zRHJhd2VyT3Blbj0hMCxTZSgid2FuZC1zaWRlYmFyLW9wZW4iLCEwKSwkdCgpLCEwKTohMX07ZnVuY3Rpb24gSXMoKXtyLm5vdGlmU291bmQmJmxpKCl9ZnVuY3Rpb24geWYoKXtyZXR1cm4gbGkoKX1mdW5jdGlvbiBsaSgpe3RyeXtsZXQgYT1mdW5jdGlvbih1LHMsbyl7dmFyIGw9bi5jcmVhdGVPc2NpbGxhdG9yKCksYz1uLmNyZWF0ZUdhaW4oKTtsLnR5cGU9InNpbmUiLGwuZnJlcXVlbmN5LnZhbHVlPXUsYy5nYWluLnNldFZhbHVlQXRUaW1lKDAsbi5jdXJyZW50VGltZStzKSxjLmdhaW4ubGluZWFyUmFtcFRvVmFsdWVBdFRpbWUoLjUqaSxuLmN1cnJlbnRUaW1lK3MrLjA0KSxjLmdhaW4uZXhwb25lbnRpYWxSYW1wVG9WYWx1ZUF0VGltZSguMDAxLG4uY3VycmVudFRpbWUrcytvKSxsLmNvbm5lY3QoYyksYy5jb25uZWN0KG4uZGVzdGluYXRpb24pLGwuc3RhcnQobi5jdXJyZW50VGltZStzKSxsLnN0b3Aobi5jdXJyZW50VGltZStzK28pfTt2YXIgZT1hLHQ9d2luZG93LkF1ZGlvQ29udGV4dHx8d2luZG93LndlYmtpdEF1ZGlvQ29udGV4dDtpZighdClyZXR1cm4hMTt2YXIgbj1uZXcgdDtuLnN0YXRlPT09InN1c3BlbmRlZCImJm4ucmVzdW1lKCk7dmFyIGk9KHIubm90aWZWb2x1bWV8fDApLzEwMDtyZXR1cm4gYSg1MjMsMCwuMjUpLGEoNjU5LC4xMiwuMyksc2V0VGltZW91dChmdW5jdGlvbigpe24uY2xvc2UoKX0sNjAwKSwhMH1jYXRjaHtyZXR1cm4hMX19ZnVuY3Rpb24gRWYoZSx0KXtpZihyLl91cGRhdGVCdWJibGVTaG93bilyZXR1cm47ci5fdXBkYXRlQnViYmxlU2hvd249ITAsSXMoKTt2YXIgbj0rK0RzLGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7aS5jbGFzc05hbWU9Im5vdGlmaWNhdGlvbi1idWJibGUgdXBkYXRlLWNhcmQiLGkuc2V0QXR0cmlidXRlKCJkYXRhLW5pZCIsU3RyaW5nKG4pKSxpLmlubmVySFRNTD0nPGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtc2hpbmUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj48ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC1oZWFkZXIiPjxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLWljb24iIGFyaWEtaGlkZGVuPSJ0cnVlIj48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTEyIDE5VjUiLz48cGF0aCBkPSJNNSAxMmw3LTcgNyA3Ii8+PC9zdmc+PC9kaXY+PGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtaGVhZGluZyI+PGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtdGl0bGUiPlx1NTNEMVx1NzNCMFx1NjVCMFx1NzI0OFx1NjcyQzwvZGl2PjxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLXN1YnRpdGxlIiBpZD0idXBkYXRlLWNhcmQtc3VidGl0bGUiPlx1NzBCOVx1NTFGQlx1NEUwQlx1NjVCOVx1NjMwOVx1OTRBRVx1NEUwMFx1OTUyRVx1NjZGNFx1NjVCMDwvZGl2PjwvZGl2PjxidXR0b24gY2xhc3M9InVwZGF0ZS1jYXJkLWNsb3NlIiB0aXRsZT0iXHU3QTBEXHU1NDBFXHU2M0QwXHU5MTkyIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RUQiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTggNkw2IDE4Ii8+PHBhdGggZD0iTTYgNmwxMiAxMiIvPjwvc3ZnPjwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLXZlcnNpb24iPjxzcGFuIGNsYXNzPSJ1cGRhdGUtY2FyZC12ZXJzaW9uLWNoaXAgdXBkYXRlLWNhcmQtdmVyc2lvbi1jdXJyZW50Ij52JytwKFN0cmluZyhlKS5yZXBsYWNlKC9edi8sIiIpKSsnPC9zcGFuPjxzdmcgY2xhc3M9InVwZGF0ZS1jYXJkLXZlcnNpb24tYXJyb3ciIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik01IDEyaDE0Ii8+PHBhdGggZD0iTTEzIDVsNyA3LTcgNyIvPjwvc3ZnPjxzcGFuIGNsYXNzPSJ1cGRhdGUtY2FyZC12ZXJzaW9uLWNoaXAgdXBkYXRlLWNhcmQtdmVyc2lvbi1sYXRlc3QiPnYnK3AoU3RyaW5nKHQpLnJlcGxhY2UoL152LywiIikpKyc8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtcHJvZ3Jlc3MiIGlkPSJ1cGRhdGUtY2FyZC1wcm9ncmVzcyIgYXJpYS1oaWRkZW49InRydWUiPjxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLXByb2dyZXNzLXRyYWNrIj48ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC1wcm9ncmVzcy1maWxsIj48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC1zdGF0dXMgaGlkZGVuIiBpZD0idXBkYXRlLWNhcmQtc3RhdHVzIj48L2Rpdj48ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC1hY3Rpb25zIj48YnV0dG9uIGNsYXNzPSJ1cGRhdGUtY2FyZC1hY3Rpb24gdXBkYXRlLWNhcmQtYWN0aW9uLXByaW1hcnkiIGlkPSJ1cGRhdGUtYnViYmxlLWFjdGlvbiIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idXBkYXRlLWNhcmQtYWN0aW9uLWxhYmVsIj5cdTdBQ0JcdTUzNzNcdTY2RjRcdTY1QjA8L3NwYW4+PC9idXR0b24+PC9kaXY+Jyxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGkpO3ZhciBhPXtpZDpuLGVsOml9O1h0LnB1c2goYSksZGEoKTt2YXIgdT1pLnF1ZXJ5U2VsZWN0b3IoIi51cGRhdGUtY2FyZC1jbG9zZSIpO3UmJih1Lm9uY2xpY2s9ZnVuY3Rpb24oKXticihuKSxyLl91cGRhdGVCdWJibGVTaG93bj0hMX0pO3ZhciBzPWkucXVlcnlTZWxlY3RvcigiI3VwZGF0ZS1idWJibGUtYWN0aW9uIiksbz1pLnF1ZXJ5U2VsZWN0b3IoIi51cGRhdGUtY2FyZC1hY3Rpb24tbGFiZWwiKSxsPWkucXVlcnlTZWxlY3RvcigiI3VwZGF0ZS1jYXJkLXN1YnRpdGxlIiksYz1pLnF1ZXJ5U2VsZWN0b3IoIiN1cGRhdGUtY2FyZC1zdGF0dXMiKSxmPWkucXVlcnlTZWxlY3RvcigiI3VwZGF0ZS1jYXJkLXByb2dyZXNzIik7ZnVuY3Rpb24gZChoLG0pe2lmKGMpe2lmKGMudGV4dENvbnRlbnQ9aHx8IiIsYy5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iLCJlcnJvciIsInN1Y2Nlc3MiKSwhaCl7Yy5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKTtyZXR1cm59bSYmYy5jbGFzc0xpc3QuYWRkKG0pfX1mdW5jdGlvbiB2KGgpe2wmJihsLnRleHRDb250ZW50PWh8fCIiKX1mdW5jdGlvbiBnKGgpe2YmJmYuY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIiwhIWgpfXMmJihzLm9uY2xpY2s9ZnVuY3Rpb24oKXtzLmRpc2FibGVkPSEwLGkuY2xhc3NMaXN0LmFkZCgiaXMtYnVzeSIpLG8mJihvLnRleHRDb250ZW50PSJcdTY2RjRcdTY1QjBcdTRFMkRcdTIwMjYiKSx2KCJcdTZCNjNcdTU3MjhcdTRFMEJcdThGN0RcdTVFNzZcdTVCODlcdTg4QzVcdTY1QjBcdTcyNDhcdTY3MkNcdTIwMjYiKSxnKCEwKSxkKCIiKSxmZXRjaCgiL2FwaS91cGRhdGUiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oaCl7cmV0dXJuIGguanNvbigpfSkudGhlbihmdW5jdGlvbihoKXtpZihoLmVycm9yKXtnKCExKSxpLmNsYXNzTGlzdC5yZW1vdmUoImlzLWJ1c3kiKSx2KCJcdTY2RjRcdTY1QjBcdTY3MkFcdTVCOENcdTYyMTAiKSxkKGguZXJyb3IsImVycm9yIikscy5kaXNhYmxlZD0hMSxvJiYoby50ZXh0Q29udGVudD0iXHU5MUNEXHU4QkQ1Iik7cmV0dXJufWlmKGkuY2xhc3NMaXN0LmFkZCgiaXMtc3VjY2VzcyIpLHYoKGgubWVzc2FnZXx8Ilx1NjZGNFx1NjVCMFx1NUI4Q1x1NjIxMCIpKyJcdUZGMENcdTZCNjNcdTU3MjhcdTkxQ0RcdTU0MkZcdTY3MERcdTUyQTFcdTIwMjYiKSxkKCIiKSxvJiYoby50ZXh0Q29udGVudD0iXHU2QjYzXHU1NzI4XHU5MUNEXHU1NDJGXHUyMDI2IiksaC5kZXRhY2hlZFVwZGF0ZSl7dW4oKTtyZXR1cm59aWYoaC5yZXN0YXJ0UmVxdWlyZWQ9PT0hMSl7ZyghMSksaS5jbGFzc0xpc3QucmVtb3ZlKCJpcy1idXN5Iikscy5kaXNhYmxlZD0hMSxvJiYoby50ZXh0Q29udGVudD0iXHU1REYyXHU1QjhDXHU2MjEwIik7cmV0dXJufWJmKHMsbyxsLGMsZil9KS5jYXRjaChmdW5jdGlvbigpe2coITEpLGkuY2xhc3NMaXN0LnJlbW92ZSgiaXMtYnVzeSIpLHYoIlx1NjZGNFx1NjVCMFx1NjcyQVx1NUI4Q1x1NjIxMCIpLGQoIlx1OEJGN1x1NjhDMFx1NjdFNVx1N0Y1MVx1N0VEQ1x1OEZERVx1NjNBNVx1NTQwRVx1OTFDRFx1OEJENSIsImVycm9yIikscy5kaXNhYmxlZD0hMSxvJiYoby50ZXh0Q29udGVudD0iXHU5MUNEXHU4QkQ1Iil9KX0pfWZ1bmN0aW9uIGJmKGUsdCxuLGksYSl7ZmV0Y2goIi9hcGkvcmVzdGFydCIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gdS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKCl7dW4oKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dW4oKX0pfWZ1bmN0aW9uIFRzKGUsdCl7ZSYmKGUuZGlzYWJsZWQ9ITAsZS50ZXh0Q29udGVudD0iXHU2QjYzXHU1NzI4XHU5MUNEXHU1NDJGXHUyMDI2IiksdCYmKHQudGV4dENvbnRlbnQ9Ilx1NjcwRFx1NTJBMVx1NkI2M1x1NTcyOFx1OTFDRFx1NTQyRlx1MjAyNiIsdC5zdHlsZS5jb2xvcj0idmFyKC0tdGV4dC1zZWNvbmRhcnkpIiksZmV0Y2goIi9hcGkvcmVzdGFydCIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihuKXtyZXR1cm4gbi5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKCl7dW4oKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dW4oKX0pfWZ1bmN0aW9uIHVuKCl7aWYoIWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN0YXJ0LW92ZXJsYXkiKSl7dmFyIGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7ZS5pZD0icmVzdGFydC1vdmVybGF5IixlLmNsYXNzTmFtZT0icmVzdGFydC1vdmVybGF5IixlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0icmVzdGFydC1vdmVybGF5LWNvbnRlbnQiPjxkaXYgY2xhc3M9InJlc3RhcnQtc3Bpbm5lciI+PC9kaXY+PGRpdiBjbGFzcz0icmVzdGFydC10aXRsZSI+XHU2NzBEXHU1MkExXHU2QjYzXHU1NzI4XHU5MUNEXHU1NDJGPC9kaXY+PGRpdiBjbGFzcz0icmVzdGFydC1zdWJ0aXRsZSI+XHU3QTBEXHU1NDBFXHU1QzA2XHU4MUVBXHU1MkE4XHU1MjM3XHU2NUIwXHU5ODc1XHU5NzYyXHUyMDI2PC9kaXY+PC9kaXY+Jyxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGUpO3ZhciB0PTAsbj0xODAsaT1zZXRJbnRlcnZhbChmdW5jdGlvbigpe2lmKHQrKyxmZXRjaCgiL2FwaS9jb25maWciLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbih1KXt1Lm9rJiYoY2xlYXJJbnRlcnZhbChpKSxsb2NhdGlvbi5yZWxvYWQoKSl9KS5jYXRjaChmdW5jdGlvbigpe30pLHQ+PW4pe2NsZWFySW50ZXJ2YWwoaSk7dmFyIGE9ZS5xdWVyeVNlbGVjdG9yKCIucmVzdGFydC1zdWJ0aXRsZSIpO2EmJihhLmlubmVySFRNTD0nXHU5MUNEXHU1NDJGXHU4RDg1XHU2NUY2XHVGRjBDXHU4QkY3IDxhIGhyZWY9ImphdmFzY3JpcHQ6bG9jYXRpb24ucmVsb2FkKCkiIHN0eWxlPSJjb2xvcjp2YXIoLS1hY2NlbnQpO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmUiPlx1NjI0Qlx1NTJBOFx1NTIzN1x1NjVCMDwvYT4gXHU5ODc1XHU5NzYyXHUzMDAyJyl9fSwyZTMpfX1mdW5jdGlvbiBGZihlLHQpe2lmKCFkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdGFydC1vdmVybGF5Iikpe3ZhciBuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO24uaWQ9InJlc3RhcnQtb3ZlcmxheSIsbi5jbGFzc05hbWU9InJlc3RhcnQtb3ZlcmxheSIsbi5pbm5lckhUTUw9JzxkaXYgY2xhc3M9InJlc3RhcnQtb3ZlcmxheS1jb250ZW50Ij48ZGl2IGNsYXNzPSJyZXN0YXJ0LXNwaW5uZXIiPjwvZGl2PjxkaXYgY2xhc3M9InJlc3RhcnQtdGl0bGUiPlx1ODFFQVx1NTJBOFx1NjZGNFx1NjVCMFx1NEUyRDwvZGl2PjxkaXYgY2xhc3M9InJlc3RhcnQtc3VidGl0bGUiPicrcChlKSsiIFx1MjE5MiAiK3AodCkrIjxicj5cdTZCNjNcdTU3MjhcdTRFMEJcdThGN0RcdTVFNzZcdTVCODlcdTg4QzVcdTY1QjBcdTcyNDhcdTY3MkNcdUZGMENcdTdBMERcdTU0MEVcdTVDMDZcdTgxRUFcdTUyQThcdTkxQ0RcdTU0MkZcdTIwMjY8L2Rpdj48L2Rpdj4iLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobil9fXZhciBMcyx2YSxJZT17cmVjb3JkaW5nOiExLGNhbmNlbGluZzohMSx0cmFuc2NyaXB0OiIiLHN0YXJ0WTowfSx3Zj02MDtmdW5jdGlvbiBDZihlKXtJZS50cmFuc2NyaXB0PWV8fCIiO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS10cmFuc2NyaXB0LXRleHQiKTt0JiYodC50ZXh0Q29udGVudD1JZS50cmFuc2NyaXB0KTt2YXIgbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtdHJhbnNjcmlwdC1idWJibGUiKTtuJiZuLmNsYXNzTGlzdC50b2dnbGUoImhhcy10ZXh0IiwhIUllLnRyYW5zY3JpcHQpfWZ1bmN0aW9uIEJmKGUpe2lmKGUpe2UucHJldmVudERlZmF1bHQoKSxJZS5zdGFydFk9dHlwZW9mIGUuY2xpZW50WT09Im51bWJlciI/ZS5jbGllbnRZOjA7dHJ5e2UucG9pbnRlcklkIT09dm9pZCAwJiZlLnRhcmdldCYmZS50YXJnZXQuc2V0UG9pbnRlckNhcHR1cmUmJmUudGFyZ2V0LnNldFBvaW50ZXJDYXB0dXJlKGUucG9pbnRlcklkKX1jYXRjaHt9fUllLnJlY29yZGluZz0hMCxJZS5jYW5jZWxpbmc9ITEsSWUudHJhbnNjcmlwdD0iIjt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtcmVjb3JkLWJ0biIpO2lmKHQpe3QuY2xhc3NMaXN0LmFkZCgiaXMtcmVjb3JkaW5nIik7dmFyIG49dC5xdWVyeVNlbGVjdG9yKCIudm9pY2UtcmVjb3JkLWxhYmVsIik7biYmKG4udGV4dENvbnRlbnQ9Ilx1Njc3RVx1NUYwMCBcdTUzRDFcdTkwMDEiKX12YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtdHJhbnNjcmlwdC1idWJibGUiKTtpJiZpLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIsImlzLWNhbmNlbGluZyIsImhhcy10ZXh0IiksQ2YoIiIpO3ZhciBhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS10cmFuc2NyaXB0LXN0YXR1cyIpO2EmJihhLnRleHRDb250ZW50PSJcdTdGNTFcdTk4NzVcdTdBRUZcdTY2ODJcdTRFMERcdTY1MkZcdTYzMDFcdThCRURcdTk3RjNcdThGOTNcdTUxNjVcdUZGMENcdThCRjdcdTRGN0ZcdTc1MjggQXBwIil9ZnVuY3Rpb24gRGYoZSl7aWYoISghSWUucmVjb3JkaW5nfHwhZSkpe3ZhciB0PUllLnN0YXJ0WS0odHlwZW9mIGUuY2xpZW50WT09Im51bWJlciI/ZS5jbGllbnRZOkllLnN0YXJ0WSksbj10PndmO2lmKG4hPT1JZS5jYW5jZWxpbmcpe0llLmNhbmNlbGluZz1uO3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS10cmFuc2NyaXB0LWJ1YmJsZSIpO2kmJmkuY2xhc3NMaXN0LnRvZ2dsZSgiaXMtY2FuY2VsaW5nIixuKTt2YXIgYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtcmVjb3JkLWJ0biIpLHU9YSYmYS5xdWVyeVNlbGVjdG9yKCIudm9pY2UtcmVjb3JkLWxhYmVsIik7dSYmKHUudGV4dENvbnRlbnQ9bj8iXHU2NzdFXHU1RjAwIFx1NTNENlx1NkQ4OCI6Ilx1Njc3RVx1NUYwMCBcdTUzRDFcdTkwMDEiKTt2YXIgcz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtdHJhbnNjcmlwdC1zdGF0dXMiKTtzJiYocy50ZXh0Q29udGVudD1uPyJcdTY3N0VcdTVGMDBcdTYyNEJcdTYzMDcgXHU1M0Q2XHU2RDg4IjoiXHU2QjYzXHU1NzI4XHU4MDQ2XHU1NDJDXHUyMDI2XHU0RTBBXHU2RUQxXHU1M0Q2XHU2RDg4Iil9fX1mdW5jdGlvbiBNcyhlKXtpZihJZS5yZWNvcmRpbmcpe2UmJmUucHJldmVudERlZmF1bHQoKSxJZS5yZWNvcmRpbmc9ITE7dmFyIHQ9IUllLmNhbmNlbGluZyYmISFJZS50cmFuc2NyaXB0LnRyaW0oKSxuPUllLnRyYW5zY3JpcHQ7bWEoKSx0JiYoa2YobiksZ2EoITEpKX19ZnVuY3Rpb24gbWEoKXtJZS5jYW5jZWxpbmc9ITE7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLXJlY29yZC1idG4iKTtpZihlKXtlLmNsYXNzTGlzdC5yZW1vdmUoImlzLXJlY29yZGluZyIpO3ZhciB0PWUucXVlcnlTZWxlY3RvcigiLnZvaWNlLXJlY29yZC1sYWJlbCIpO3QmJih0LnRleHRDb250ZW50PSJcdTYzMDlcdTRGNEYgXHU4QkY0XHU4QkREIil9dmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLXRyYW5zY3JpcHQtYnViYmxlIik7biYmbi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKX1mdW5jdGlvbiBrZihlKXt2YXIgdD0oZXx8IiIpLnRyaW0oKTtpZih0KXt2YXIgbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7aWYobil7dmFyIGk9bi52YWx1ZXx8IiIsYT1pP2kucmVwbGFjZSgvXHMrJC8sIiIpKyIgIit0OnQ7bi52YWx1ZT1hLGN0KGEsITApLEh0KG4pO3RyeXtuLnNldFNlbGVjdGlvblJhbmdlKGEubGVuZ3RoLGEubGVuZ3RoKX1jYXRjaHt9fX19ZnVuY3Rpb24gZ2EoZSl7dmFyIHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LWNvbXBvc2VyIik7aWYodCl7dmFyIG49dHlwZW9mIGU9PSJib29sZWFuIj9lOiF0LmNsYXNzTGlzdC5jb250YWlucygidm9pY2UtbW9kZSIpO2lmKHQuY2xhc3NMaXN0LnRvZ2dsZSgidm9pY2UtbW9kZSIsbiksIW4pe0llLnJlY29yZGluZz0hMSxtYSgpO3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtpZihpJiYhci50ZXJtaW5hbEludGVyYWN0aXZlKXRyeXtpLmZvY3VzKHtwcmV2ZW50U2Nyb2xsOiEwfSl9Y2F0Y2h7fX19fWZ1bmN0aW9uIEh0KGUpe2lmKGUpe3ZhciB0PTM2LG49MTIwLGk9eHIoKTtpZighZS52YWx1ZXx8ZS52YWx1ZS50cmltKCk9PT0iIil7ZS5zdHlsZS5oZWlnaHQ9dCsicHgiLGUuc3R5bGUubWluSGVpZ2h0PXQrInB4IixlLnN0eWxlLm92ZXJmbG93WT1pPyJhdXRvIjoiaGlkZGVuIixlLnNjcm9sbFRvcD0wLHhpKGUpO3JldHVybn12YXIgYT1lLnN0eWxlLm92ZXJmbG93WTtlLnN0eWxlLm92ZXJmbG93WT0iaGlkZGVuIixlLnN0eWxlLmhlaWdodD10KyJweCI7dmFyIHU9ZS5zY3JvbGxIZWlnaHQscz1NYXRoLm1heCh0LE1hdGgubWluKHUsbikpLG89dT5uO2Uuc3R5bGUuaGVpZ2h0PXMrInB4IixlLnN0eWxlLm1pbkhlaWdodD10KyJweCIsZS5zdHlsZS5vdmVyZmxvd1k9b3x8aT8iYXV0byI6ImhpZGRlbiIsbz9oaShlKTplLnNjcm9sbFRvcD0wLHhpKGUpfX1mdW5jdGlvbiBBZigpe2lmKCFyLnNlbGVjdGVkSWQpcmV0dXJuITE7dmFyIGU9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHQpe3JldHVybiB0LmlkPT09ci5zZWxlY3RlZElkfSk7cmV0dXJuIGFlKGUpPyEhKGUuc3RydWN0dXJlZFN0YXRlJiZlLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCk6ISFlJiZlLnN0YXR1cz09PSJydW5uaW5nIn12YXIgd3I9ITE7ZnVuY3Rpb24gT3MoZSl7cmV0dXJuIWV8fGUuYXJjaGl2ZWQ/ITE6YWUoZSk/ISEoZS5zdHJ1Y3R1cmVkU3RhdGUmJmUuc3RydWN0dXJlZFN0YXRlLmluRmxpZ2h0KTplLnN0YXR1cz09PSJydW5uaW5nIn1mdW5jdGlvbiBoYSgpe3JldHVybiByLnNlc3Npb25zLnNvbWUoT3MpfWZ1bmN0aW9uIHhmKCl7dmFyIGU9ci5zZXNzaW9ucy5maWx0ZXIoT3MpO2lmKGUubGVuZ3RoPT09MClyZXR1cm4gbnVsbDtpZihyLnNlbGVjdGVkSWQpe3ZhciB0PWUuZmluZChmdW5jdGlvbihuKXtyZXR1cm4gbi5pZD09PXIuc2VsZWN0ZWRJZH0pO2lmKHQpcmV0dXJuIHR9cmV0dXJuIGUuc29ydChmdW5jdGlvbihuLGkpe3JldHVybihEYXRlLnBhcnNlKGkuc3RhcnRlZEF0KXx8MCktKERhdGUucGFyc2Uobi5zdGFydGVkQXQpfHwwKX0pLGVbMF19ZnVuY3Rpb24gU2YoZSx0KXt2YXIgbj10eXBlb2YgY3J5cHRvPCJ1IiYmY3J5cHRvLnJhbmRvbVVVSUQ/Y3J5cHRvLnJhbmRvbVVVSUQoKTpEYXRlLm5vdygpLnRvU3RyaW5nKDM2KSsiLSIrTWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc2xpY2UoMiwxMCksaT1BcnJheS5pc0FycmF5KGUucXVldWVkTWVzc2FnZXMpP2UucXVldWVkTWVzc2FnZXMuc2xpY2UoKTpbXSxhPWkuc2xpY2UoKTthLnB1c2godCksUSh7aWQ6ZS5pZCxxdWV1ZWRNZXNzYWdlczphfSksZS5pZD09PXIuc2VsZWN0ZWRJZCYmbHQoKTt2YXIgdT1lLnRpdGxlfHxRbihlLmNvbW1hbmQpfHwiXHU1RjUzXHU1MjREXHU0RjFBXHU4QkREIjtyZXR1cm4gaygiXHU1REYyXHU1MkEwXHU1MTY1XHUzMDBDIit1KyJcdTMwMERcdTc2ODRcdTYzOTJcdTk2MUZcdUZGMENcdTU2REVcdTU5MERcdTdFRDNcdTY3NUZcdTU0MEVcdTgxRUFcdTUyQThcdTUzRDFcdTkwMDFcdUZGMDhcdTU0MkJcdTRFMEFcdTRFMEJcdTY1ODdcdUZGMDlcdTMwMDIiLCJpbmZvIiksZmV0Y2goIi9hcGkvc3RydWN0dXJlZC1zZXNzaW9ucy8iK2UuaWQrIi9tZXNzYWdlcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe2lucHV0OnQsaWRlbXBvdGVuY3lLZXk6bn0pfSkudGhlbihmdW5jdGlvbihzKXtyZXR1cm4gcy5vaz9zLmpzb24oKTpzLmpzb24oKS5jYXRjaChmdW5jdGlvbigpe3JldHVybntlcnJvcjoiXHU4QkY3XHU2QzQyXHU1OTMxXHU4RDI1In19KS50aGVuKGZ1bmN0aW9uKG8pe3Rocm93IG5ldyBFcnJvcihvJiZvLmVycm9yfHwiXHU2NUUwXHU2Q0Q1XHU2MzkyXHU5NjFGXHU2RDg4XHU2MDZGXHUzMDAyIil9KX0pLnRoZW4oZnVuY3Rpb24ocyl7cyYmcy5pZCYmKFEocykscy5pZD09PXIuc2VsZWN0ZWRJZCYmbHQoKSl9KS5jYXRjaChmdW5jdGlvbihzKXtRKHtpZDplLmlkLHF1ZXVlZE1lc3NhZ2VzOml9KSxlLmlkPT09ci5zZWxlY3RlZElkJiZsdCgpLGsocyYmcy5tZXNzYWdlfHwiXHU2MzkyXHU5NjFGXHU1OTMxXHU4RDI1XHVGRjBDXHU4QkY3XHU5MUNEXHU4QkQ1XHUzMDAyIiwiZXJyb3IiKX0pfWZ1bmN0aW9uIFBzKGUpe3ZhciB0PXhmKCk7aWYodCYmYWUodCkpe1NmKHQsZSk7cmV0dXJufWlmKHIuY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPj0xMCl7aygiXHU2MzkyXHU5NjFGXHU2RDg4XHU2MDZGXHU1REYyXHU2RUUxXHVGRjA4XHU2NzAwXHU1OTFBIDEwIFx1Njc2MVx1RkYwOVx1RkYwQ1x1OEJGN1x1N0I0OVx1NUY4NVx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERFx1NUI4Q1x1NjIxMFx1MzAwMiIsIndhcm5pbmciKTtyZXR1cm59dmFyIG49ImNzcS0iK0RhdGUubm93KCkrIi0iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIsOCk7ci5jcm9zc1Nlc3Npb25RdWV1ZS5wdXNoKHtpZDpuLHRleHQ6ZSxjd2Q6JGUoKSxtb2RlOnIuY2hhdE1vZGV8fCJtYW5hZ2VkIix0b29sOm10KCkscXVldWVkQXQ6RGF0ZS5ub3coKX0pLEp0KCksQXQoKSxrKCJcdTVERjJcdTYzOTJcdTk2MUZcdUZGMENcdTVDMDZcdTU3MjhcdTdBN0FcdTk1RjJcdTU0MEVcdTgxRUFcdTUyQThcdTVGMDBcdTU5Q0JcdTY1QjBcdTRGMUFcdThCRERcdTMwMDIiLCJpbmZvIil9ZnVuY3Rpb24gSWYoZSl7d3J8fCh3cj0hMCxmZXRjaCgiL2FwaS9jb21tYW5kcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoaHQoe2NvbW1hbmQ6ZS50b29sLGN3ZDplLmN3ZCxtb2RlOmUubW9kZSxpbml0aWFsSW5wdXQ6ZS50ZXh0fSkpfSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gdC5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB3cj0hMSx0LmVycm9yPyhrKHQuZXJyb3IsImVycm9yIiksci5jcm9zc1Nlc3Npb25RdWV1ZS51bnNoaWZ0KGUpLEp0KCksQXQoKSxudWxsKTpsbih0KX0pLmNhdGNoKGZ1bmN0aW9uKHQpe3dyPSExLGsodCYmdC5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU1NDJGXHU1MkE4XHU2MzkyXHU5NjFGXHU0RjFBXHU4QkREXHUzMDAyIiwiZXJyb3IiKSxyLmNyb3NzU2Vzc2lvblF1ZXVlLnVuc2hpZnQoZSksSnQoKSxBdCgpfSkpfWZ1bmN0aW9uIFRmKGUpe3ZhciB0PXIuY3Jvc3NTZXNzaW9uUXVldWUuZmluZEluZGV4KGZ1bmN0aW9uKGkpe3JldHVybiBpLmlkPT09ZX0pO2lmKCEodDwwKSl7dmFyIG49ci5jcm9zc1Nlc3Npb25RdWV1ZS5zcGxpY2UodCwxKVswXTtKdCgpLEF0KCksZmV0Y2goIi9hcGkvY29tbWFuZHMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGh0KHtjb21tYW5kOm4udG9vbCxjd2Q6bi5jd2QsbW9kZTpuLm1vZGUsaW5pdGlhbElucHV0Om4udGV4dH0pKX0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpfSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5lcnJvcj8oayhpLmVycm9yLCJlcnJvciIpLHIuY3Jvc3NTZXNzaW9uUXVldWUuc3BsaWNlKHQsMCxuKSxKdCgpLEF0KCksbnVsbCk6bG4oaSl9KS5jYXRjaChmdW5jdGlvbihpKXtrKGkmJmkubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOFx1NjM5Mlx1OTYxRlx1NEYxQVx1OEJERFx1MzAwMiIsImVycm9yIiksci5jcm9zc1Nlc3Npb25RdWV1ZS5zcGxpY2UodCwwLG4pLEp0KCksQXQoKX0pfX1mdW5jdGlvbiBMZihlKXt2YXIgdD1yLmNyb3NzU2Vzc2lvblF1ZXVlLmZpbmRJbmRleChmdW5jdGlvbihuKXtyZXR1cm4gbi5pZD09PWV9KTt0PDB8fChyLmNyb3NzU2Vzc2lvblF1ZXVlLnNwbGljZSh0LDEpLEp0KCksQXQoKSxyLmNyb3NzU2Vzc2lvblF1ZXVlLmxlbmd0aD09PTAmJmsoIlx1NjM5Mlx1OTYxRlx1NURGMlx1NkUwNVx1N0E3QVx1MzAwMiIsImluZm8iKSl9ZnVuY3Rpb24gY2koKXtpZihyLmNyb3NzU2Vzc2lvblF1ZXVlLmxlbmd0aCE9PTAmJiFoYSgpJiYhd3Ipe3ZhciBlPXIuY3Jvc3NTZXNzaW9uUXVldWUuc2hpZnQoKTtBdCgpLElmKGUpfX1mdW5jdGlvbiBxcyhlKXt2YXIgdD1NYXRoLmZsb29yKChEYXRlLm5vdygpLWUpLzFlMyk7aWYodDw2MClyZXR1cm4gdCsicyI7dmFyIG49TWF0aC5mbG9vcih0LzYwKTtyZXR1cm4gbjw2MD9uKyJtIjpNYXRoLmZsb29yKG4vNjApKyJoIn1mdW5jdGlvbiBBdCgpe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5jcm9zcy1zZXNzaW9uLXF1ZXVlIiksdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuaW5wdXQtcGFuZWwiKSxuPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXIiKSxpPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1jb21wb3NlciIpLGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQiKTtpZihyLmNyb3NzU2Vzc2lvblF1ZXVlLmxlbmd0aD09PTApe2UmJmUucmVtb3ZlKCksSnQoKTtyZXR1cm59dmFyIHU9dCYmIXQuY2xhc3NMaXN0LmNvbnRhaW5zKCJoaWRkZW4iKSxzPXU/dDphLG89dT9ufHxpOm51bGw7aWYocyl7ZSYmZS5wYXJlbnROb2RlIT09cyYmKGUucmVtb3ZlKCksZT1udWxsKSxlP3UmJm8mJmUubmV4dFNpYmxpbmchPT1vJiZzLmluc2VydEJlZm9yZShlLG8pOihlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLGUuY2xhc3NOYW1lPSJjcm9zcy1zZXNzaW9uLXF1ZXVlIixvP3MuaW5zZXJ0QmVmb3JlKGUsbyk6cy5hcHBlbmRDaGlsZChlKSk7dmFyIGw9ci5jcm9zc1Nlc3Npb25RdWV1ZS5sZW5ndGgsYz1yLmNyb3NzU2Vzc2lvblF1ZXVlLm1hcChmdW5jdGlvbihkLHYpe3ZhciBnPWQudGV4dC5sZW5ndGg+NjA/ZC50ZXh0LnNsaWNlKDAsNjApKyJcdTIwMjYiOmQudGV4dCxoPXFzKGQucXVldWVkQXQpO3JldHVybic8ZGl2IGNsYXNzPSJxdWV1ZS1pdGVtIiBkYXRhLXF1ZXVlLWlkPSInK3AoZC5pZCkrJyI+PHNwYW4gY2xhc3M9InF1ZXVlLWl0ZW0tZG90Ij48L3NwYW4+PHNwYW4gY2xhc3M9InF1ZXVlLWl0ZW0tdGV4dCIgdGl0bGU9IicrcChkLnRleHQpKyciPicrcChnKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJxdWV1ZS1pdGVtLWFnZSI+JytoKyc8L3NwYW4+PGJ1dHRvbiBjbGFzcz0icXVldWUtaXRlbS1zZW5kLW5vdyIgZGF0YS1xdWV1ZS1pZD0iJytwKGQuaWQpKyciIHRpdGxlPSJcdTdBQ0JcdTUzNzNcdTUzRDFcdTkwMDEiIHR5cGU9ImJ1dHRvbiI+XHU1M0QxXHU5MDAxPC9idXR0b24+PGJ1dHRvbiBjbGFzcz0icXVldWUtaXRlbS1jYW5jZWwiIGRhdGEtcXVldWUtaWQ9IicrcChkLmlkKSsnIiB0aXRsZT0iXHU1M0Q2XHU2RDg4IiB0eXBlPSJidXR0b24iPlx4RDc8L2J1dHRvbj48L2Rpdj4nfSkuam9pbigiIiksZj1sPjE/JzxkaXYgY2xhc3M9InF1ZXVlLWhlYWRlciI+PHNwYW4gY2xhc3M9InF1ZXVlLWhlYWRlci1sYWJlbCI+XHU2MzkyXHU5NjFGICcrbCsnIFx1Njc2MTwvc3Bhbj48YnV0dG9uIGNsYXNzPSJxdWV1ZS1oZWFkZXItY2xlYXIiIGlkPSJxdWV1ZS1jbGVhci1hbGwiIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NkUwNVx1N0E3QVx1NjM5Mlx1OTYxRiI+XHU2RTA1XHU3QTdBPC9idXR0b24+PC9kaXY+JzoiIjtlLmlubmVySFRNTD1mK2N9fXNldEludGVydmFsKGZ1bmN0aW9uKCl7aWYoci5jcm9zc1Nlc3Npb25RdWV1ZS5sZW5ndGg+MCl7dmFyIGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnF1ZXVlLWl0ZW0tYWdlIik7ci5jcm9zc1Nlc3Npb25RdWV1ZS5mb3JFYWNoKGZ1bmN0aW9uKHQsbil7ZVtuXSYmKGVbbl0udGV4dENvbnRlbnQ9cXModC5xdWV1ZWRBdCkpfSksY2koKX19LDVlMyksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGUpe3ZhciB0PWUudGFyZ2V0O2lmKHQuY2xvc2VzdCgiI3F1ZXVlLWNsZWFyLWFsbCIpKXtlLnByZXZlbnREZWZhdWx0KCksci5jcm9zc1Nlc3Npb25RdWV1ZT1bXSxKdCgpLEF0KCksaygiXHU2MzkyXHU5NjFGXHU1REYyXHU2RTA1XHU3QTdBXHUzMDAyIiwiaW5mbyIpO3JldHVybn12YXIgbj10LmNsb3Nlc3QoIi5xdWV1ZS1pdGVtLXNlbmQtbm93Iik7aWYobil7ZS5wcmV2ZW50RGVmYXVsdCgpLFRmKG4uZGF0YXNldC5xdWV1ZUlkKTtyZXR1cm59dmFyIGk9dC5jbG9zZXN0KCIucXVldWUtaXRlbS1jYW5jZWwiKTtpZihpKXtlLnByZXZlbnREZWZhdWx0KCksTGYoaS5kYXRhc2V0LnF1ZXVlSWQpO3JldHVybn19KTtmdW5jdGlvbiBIcygpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3ZWxjb21lLWlucHV0IiksdD1lP2UudmFsdWUudHJpbSgpOiIiO2lmKHQpe2lmKGhhKCkpe2UudmFsdWU9IiIsUHModCk7cmV0dXJufXZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzIik7biYmbi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxlLnZhbHVlPSIiLGUucGxhY2Vob2xkZXI9Ilx1NkI2M1x1NTcyOFx1NTQyRlx1NTJBOFx1MjAyNiIsZS5kaXNhYmxlZD0hMDt2YXIgaT1yLmNoYXRNb2RlfHwibWFuYWdlZCIsYT0kZSgpLHU9bXQoKTtmZXRjaCgiL2FwaS9jb21tYW5kcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoaHQoe2NvbW1hbmQ6dSxwcm92aWRlcjp1LGN3ZDphLG1vZGU6aSxpbml0aWFsSW5wdXQ6dH0pKX0pLnRoZW4oZnVuY3Rpb24ocyl7cmV0dXJuIHMuanNvbigpfSkudGhlbihmdW5jdGlvbihzKXtpZihzLmVycm9yKXtrKHMuZXJyb3IsImVycm9yIiksZS5wbGFjZWhvbGRlcj0iXHU4RjkzXHU1MTY1XHU2RDg4XHU2MDZGIixlLmRpc2FibGVkPSExO3JldHVybn1yLnNlbGVjdGVkSWQ9cy5pZCxGZSgpLHIuZHJhZnRzW3MuaWRdPSIiLGt0KCksUShzKSx2ZSgpLENyKHMuaWQpLFRuKHMuaWQpLHBuKHMuaWQpLnRoZW4oZnVuY3Rpb24oKXtlLnBsYWNlaG9sZGVyPSJcdThGOTNcdTUxNjVcdTZEODhcdTYwNkYiLGUuZGlzYWJsZWQ9ITEsTnQoITApfSl9KS5jYXRjaChmdW5jdGlvbihzKXtrKHMmJnMubWVzc2FnZXx8KHU9PT0iY29kZXgiPyJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQTggQ29kZXggXHU0RjFBXHU4QkREXHUzMDAyIjoiXHU2NUUwXHU2Q0Q1XHU1NDJGXHU1MkE4IENsYXVkZSBcdTRGMUFcdThCRERcdTMwMDIiKSwiZXJyb3IiKSxlLnBsYWNlaG9sZGVyPSJcdThGOTNcdTUxNjVcdTZEODhcdTYwNkYiLGUuZGlzYWJsZWQ9ITF9KX19ZnVuY3Rpb24gTWYoZSl7ZT1lfHx7fTt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid2VsY29tZS1pbnB1dCIpLG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpLGk9dCYmdC52YWx1ZS50cmltKCk/dC52YWx1ZS50cmltKCk6bj9uLnZhbHVlLnRyaW0oKToiIjtpZihyLnNlbGVjdGVkSWQpe2kmJl9zKGUpO3JldHVybn1pZihpJiZoYSgpKXtuJiYobi52YWx1ZT0iIiksdCYmKHQudmFsdWU9IiIpLHhpKG4pLFBzKGkpO3JldHVybn12YXIgYT1yLmNoYXRNb2RlfHwibWFuYWdlZCIsdT0kZSgpLHM9bXQoKTtmZXRjaCgiL2FwaS9jb21tYW5kcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoaHQoe2NvbW1hbmQ6cyxwcm92aWRlcjpzLGN3ZDp1LG1vZGU6YSxpbml0aWFsSW5wdXQ6aXx8dm9pZCAwfSkpfSkudGhlbihmdW5jdGlvbihvKXtyZXR1cm4gby5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKG8pe3JldHVybiBvLmVycm9yPyhrKG8uZXJyb3IsImVycm9yIiksbnVsbCk6KHIuc2VsZWN0ZWRJZD1vLmlkLEZlKCksci5kcmFmdHNbby5pZF09IiIsa3QoKSxuJiYobi52YWx1ZT0iIiksdCYmKHQudmFsdWU9IiIpLFEobyksdmUoKSxDcihvLmlkKSxUbihvLmlkKSxwbihvLmlkKSl9KS5jYXRjaChmdW5jdGlvbihvKXtrKG8mJm8ubWVzc2FnZXx8KHM9PT0iY29kZXgiPyJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQTggQ29kZXggXHU0RjFBXHU4QkREXHUzMDAyIjoiXHU2NUUwXHU2Q0Q1XHU1NDJGXHU1MkE4IENsYXVkZSBcdTRGMUFcdThCRERcdTMwMDIiKSwiZXJyb3IiKX0pfWZ1bmN0aW9uIENyKGUpe3ZhciB0PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbih2KXtyZXR1cm4gdi5pZD09PWV9KSxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJibGFuay1jaGF0IiksaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0IiksYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2hhdC1vdXRwdXQiKSx1PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzdG9wLWJ1dHRvbiIpLHM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlcm1pbmFsLXRpdGxlIiksbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVybWluYWwtaW5mbyIpLGw9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnNlc3Npb24tc3VtbWFyeS12YWx1ZSIpLGM9YWUodCk7biYmbi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxpJiZpLmNsYXNzTGlzdC50b2dnbGUoImhpZGRlbiIsYyksYSYmYS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxjP3IuY3VycmVudFZpZXc9ImNoYXQiOnIuY3VycmVudFZpZXc9InRlcm1pbmFsIjt2YXIgZj10P1FuKHQuY29tbWFuZCk6IldhbmQiLGQ9dD9jcih0KToiXHU1RjAwXHU1OUNCXHU1QkY5XHU4QkREIjtzJiYocy50ZXh0Q29udGVudD1mKSxvJiYoby50ZXh0Q29udGVudD1kKSxsJiYobC50ZXh0Q29udGVudD1mKSxjfHxyLnRlcm1pbmFsfHxLbigpLERpKCksTnQoITApLGN8fG90KCJ2aWV3LXN3aXRjaCIse2ZvcmNlUmVwbGF5OiEwfSl9ZnVuY3Rpb24gX3MoZSl7ZT1lfHx7fTt2YXIgdD0hIWUuaW50ZXJydXB0O2lmKHIudGVybWluYWxJbnRlcmFjdGl2ZSlyZXR1cm4gaygiXHU3RUM4XHU3QUVGXHU0RUE0XHU0RTkyXHU2QTIxXHU1RjBGXHU1RjAwXHU1NDJGXHU2NUY2XHVGRjBDXHU4QkY3XHU3NkY0XHU2M0E1XHU1NzI4XHU3RUM4XHU3QUVGXHU0RTJEXHU4RjkzXHU1MTY1XHUzMDAyIiwiaW5mbyIpLFByb21pc2UucmVzb2x2ZSgpO3ZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKSxpPW4/bi52YWx1ZToiIixhPV90KCksdT1yLnBlbmRpbmdBdHRhY2htZW50cy5sZW5ndGg+MDtpZihpfHx1KXt2YXIgcz11JiZyLnNlbGVjdGVkSWQ/X20oci5zZWxlY3RlZElkKS5jYXRjaChmdW5jdGlvbihvKXtrKCJcdTk2NDRcdTRFRjZcdTRFMEFcdTRGMjBcdTU5MzFcdThEMjU6ICIrKG8mJm8ubWVzc2FnZXx8byksImVycm9yIik7dmFyIGw9byBpbnN0YW5jZW9mIEVycm9yP286bmV3IEVycm9yKFN0cmluZyhvKSk7dGhyb3cgbC5fX3dhbmRUb2FzdGVkPSEwLGx9KTpQcm9taXNlLnJlc29sdmUoW10pO3JldHVybiBzLnRoZW4oZnVuY3Rpb24obyl7dmFyIGw9Tm0obyksYz1sKyhpfHwoby5sZW5ndGg/Ilx1OEJGN1x1NjdFNVx1NzcwQlx1OTY0NFx1NEVGNlx1MzAwMiI6IiIpKTtvLmxlbmd0aCYmSG0oKTt2YXIgZj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcyIpO2lmKGYmJmYuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksYWUoYSkpcmV0dXJuIE9mKGMsbixhLHtpbnRlcnJ1cHQ6dH0pO3ZhciBkPSRmKGEsYyksdj0hci53c0Nvbm5lY3RlZDtyZXR1cm4gdj8odHAoZCksbiYmKG4udmFsdWU9IiIsSHQobikpLGN0KCIiKSxQcm9taXNlLnJlc29sdmUoKSk6UWYoYSkudGhlbihmdW5jdGlvbihnKXtpZighZylyZXR1cm4gbnVsbDt2YXIgaD1yLmN1cnJlbnRWaWV3O2lmKGcmJmcucHJvdmlkZXI9PT0iY29kZXgiJiZyLnNlbGVjdGVkSWQhPT1nLmlkKXRocm93IG5ldyBFcnJvcigiQ29kZXggc2Vzc2lvbiBjaGFuZ2VkIGJlZm9yZSBpbnB1dCBzZW5kLiIpO3JldHVybiBYZihkLCJlbnRlcl90ZXh0IiwzMCxoKS50aGVuKGZ1bmN0aW9uKCl7biYmbi52YWx1ZT09PWkmJihuLnZhbHVlPSIiLEh0KG4pKSxjdCgiIil9KX0pLmNhdGNoKGZ1bmN0aW9uKGcpe3Rocm93IGsoVXMoZyksImVycm9yIiksZyYmKGcuX193YW5kVG9hc3RlZD0hMCksZ30pfSkuY2F0Y2goZnVuY3Rpb24obyl7dGhyb3cgbyYmby5fX3dhbmRUb2FzdGVkfHxrKFVzKG8pLCJlcnJvciIpLG99KX1yZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCl9dmFyIE5zPXt9LGpzPTM1MDtmdW5jdGlvbiBPZihlLHQsbixpKXtpPWl8fHt9O3ZhciBhPSEhaS5pbnRlcnJ1cHQ7aWYoIXIuc2VsZWN0ZWRJZHx8IWUpcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO2lmKCFuKXJldHVybiBrKCJcdTRGMUFcdThCRERcdTRFMERcdTVCNThcdTU3MjhcdUZGMENcdThCRjdcdTkxQ0RcdTY1QjBcdTkwMDlcdTYyRTlcdTYyMTZcdTY1QjBcdTVFRkFcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpLFByb21pc2UucmVzb2x2ZSgpO3ZhciB1PURhdGUubm93KCkscz1Oc1tuLmlkXXx8MDtpZih1LXM8anMpcmV0dXJuIGNvbnNvbGUubG9nKCJbd2FuZF0gcG9zdFN0cnVjdHVyZWRJbnB1dDogZHVwbGljYXRlIHN1Ym1pdCAod2l0aGluICIranMrIm1zKSBpZ25vcmVkIGZvciBzZXNzaW9uIixuLmlkKSxQcm9taXNlLnJlc29sdmUoKTtOc1tuLmlkXT11O3ZhciBvPSEhKG4uc3RydWN0dXJlZFN0YXRlJiZuLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCYmbi5zdGF0dXM9PT0icnVubmluZyIpLGw9byYmYSxjPW8mJiFhLGY9c3IoQXJyYXkuaXNBcnJheShuLm1lc3NhZ2VzKT9uLm1lc3NhZ2VzLnNsaWNlKCk6W10pLGQ7aWYoYyl7dmFyIHY9QXJyYXkuaXNBcnJheShuLnF1ZXVlZE1lc3NhZ2VzKT9uLnF1ZXVlZE1lc3NhZ2VzLnNsaWNlKCk6W107di5wdXNoKGUpLGQ9e2lkOm4uaWQscXVldWVkTWVzc2FnZXM6dn0sUShkKTt2YXIgZz1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYil7cmV0dXJuIGIuaWQ9PT1uLmlkfSl8fG47ci5jdXJyZW50TWVzc2FnZXM9amUoZyxYZShnLGcub3V0cHV0LCExKSksR24oIlx1NURGMlx1NTJBMFx1NTE2NVx1NjM5Mlx1OTYxRlx1MjAyNiIpLFVlKCEwKSxzbigpLGsodi5sZW5ndGg+MT8iXHU1REYyXHU1MkEwXHU1MTY1XHU2MzkyXHU5NjFGXHVGRjA4XHU1MTcxICIrdi5sZW5ndGgrIiBcdTY3NjFcdTdCNDlcdTVGODVcdUZGMDkiOiJcdTVERjJcdTUyQTBcdTUxNjVcdTYzOTJcdTk2MUZcdUZGMENcdTdCNDlcdTVGNTNcdTUyNERcdTU2REVcdTU5MERcdTVCOENcdTYyMTBcdTRGMUFcdTgxRUFcdTUyQThcdTUzRDFcdTkwMDFcdTMwMDIiLCJpbmZvIil9ZWxzZXt2YXIgaD17cm9sZToidXNlciIsY29udGVudDpbe3R5cGU6InRleHQiLHRleHQ6ZX1dfTtmLnB1c2goaCk7dmFyIG09T2JqZWN0LmFzc2lnbih7fSxuLnN0cnVjdHVyZWRTdGF0ZXx8e30se2luRmxpZ2h0OiEwfSk7USh7aWQ6bi5pZCxzdGF0dXM6InJ1bm5pbmciLG1lc3NhZ2VzOmYsc3RydWN0dXJlZFN0YXRlOm19KSxyLmN1cnJlbnRNZXNzYWdlcz1qZShPYmplY3QuYXNzaWduKHt9LG4se3N0YXR1czoicnVubmluZyIsbWVzc2FnZXM6ZixzdHJ1Y3R1cmVkU3RhdGU6bX0pLGYpLEduKGw/Ilx1NURGMlx1NEUyRFx1NjVBRFx1RkYwQ1x1NkI2M1x1NTcyOFx1NTkwNFx1NzQwNlx1NjVCMFx1NkQ4OFx1NjA2Rlx1MjAyNiI6Ilx1NjAxRFx1ODAwM1x1NEUyRFx1MjAyNiIpLFVlKCEwKSxsJiZrKCJcdTVERjJcdTRFMkRcdTY1QURcdTRFMEFcdTRFMDBcdTY3NjFcdTU2REVcdTU5MERcdUZGMENcdTZCNjNcdTU3MjhcdTU5MDRcdTc0MDZcdTY1QjBcdTZEODhcdTYwNkZcdTIwMjYiLCJpbmZvIil9dCYmKHQudmFsdWU9IiIsSHQodCkpLGN0KCIiKTt2YXIgRT1yLnF1ZXVlRXBvY2gsQz10eXBlb2YgY3J5cHRvPCJ1IiYmY3J5cHRvLnJhbmRvbVVVSUQ/Y3J5cHRvLnJhbmRvbVVVSUQoKTpEYXRlLm5vdygpLnRvU3RyaW5nKDM2KSsiLSIrTWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc2xpY2UoMiwxMCk7cmV0dXJuIGZldGNoKCIvYXBpL3N0cnVjdHVyZWQtc2Vzc2lvbnMvIituLmlkKyIvbWVzc2FnZXMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtpbnB1dDplLGludGVycnVwdDpsfHx2b2lkIDAsaWRlbXBvdGVuY3lLZXk6Q30pfSkudGhlbihmdW5jdGlvbihiKXtyZXR1cm4gYi5vaz9iLmpzb24oKTpiLmpzb24oKS5jYXRjaChmdW5jdGlvbigpe3JldHVybntlcnJvcjoiXHU4QkY3XHU2QzQyXHU1OTMxXHU4RDI1In19KS50aGVuKGZ1bmN0aW9uKEIpe3ZhciBGPW5ldyBFcnJvcihCJiZCLmVycm9yfHwiXHU2NUUwXHU2Q0Q1XHU1M0QxXHU5MDAxXHU3RUQzXHU2Nzg0XHU1MzE2XHU2RDg4XHU2MDZGXHUzMDAyIik7dGhyb3cgRi5lcnJvckNvZGU9QiYmQi5lcnJvckNvZGUsRi5odHRwU3RhdHVzPWIuc3RhdHVzLEZ9KX0pLnRoZW4oZnVuY3Rpb24oYil7aWYoYiYmYi5lcnJvcil0aHJvdyBuZXcgRXJyb3IoYi5lcnJvcik7aWYoYiYmYi5pZCYmKHIucXVldWVFcG9jaD5FJiZiLnF1ZXVlZE1lc3NhZ2VzJiZkZWxldGUgYi5xdWV1ZWRNZXNzYWdlcyxRKGIpLGIuaWQ9PT1yLnNlbGVjdGVkSWQpKXt2YXIgQj1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oRil7cmV0dXJuIEYuaWQ9PT1iLmlkfSl8fGI7ci5jdXJyZW50TWVzc2FnZXM9amUoQixYZShCLGIub3V0cHV0LCExKSksVWUoITApLHNuKCl9fSkuY2F0Y2goZnVuY3Rpb24oYil7aWYoYiYmYi5lcnJvckNvZGU9PT0iZHVwbGljYXRlX2lkZW1wb3RlbmN5X2tleSIpe2soYi5tZXNzYWdlfHwiXHU2OEMwXHU2RDRCXHU1MjMwXHU5MUNEXHU1OTBEXHU1M0QxXHU5MDAxXHVGRjBDXHU1REYyXHU2MkU2XHU2MjJBXHUzMDAyIiwid2FybmluZyIpLEduKCJFbnRlciBcdTUzRDFcdTkwMDEgXHhCNyBTaGlmdCtFbnRlciBcdTYzNjJcdTg4NEMiKTtyZXR1cm59aWYoYyl7dmFyIEI9QXJyYXkuaXNBcnJheShuLnF1ZXVlZE1lc3NhZ2VzKT9uLnF1ZXVlZE1lc3NhZ2VzLnNsaWNlKCk6W107aWYoUSh7aWQ6bi5pZCxxdWV1ZWRNZXNzYWdlczpCfSksbi5pZD09PXIuc2VsZWN0ZWRJZCl7dmFyIEY9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKFIpe3JldHVybiBSLmlkPT09bi5pZH0pfHxuO3IuY3VycmVudE1lc3NhZ2VzPWplKEYsWGUoRixGLm91dHB1dCwhMSkpLFVlKCEwKSxzbigpfX1lbHNle3ZhciB4PWYuc2xpY2UoMCwtMSk7USh7aWQ6bi5pZCxzdGF0dXM6bi5zdGF0dXMsbWVzc2FnZXM6eCxzdHJ1Y3R1cmVkU3RhdGU6T2JqZWN0LmFzc2lnbih7fSxuLnN0cnVjdHVyZWRTdGF0ZXx8e30se2luRmxpZ2h0OiExfSl9KSxuLmlkPT09ci5zZWxlY3RlZElkJiYoci5jdXJyZW50TWVzc2FnZXM9amUoT2JqZWN0LmFzc2lnbih7fSxuLHttZXNzYWdlczp4LHN0cnVjdHVyZWRTdGF0ZTpPYmplY3QuYXNzaWduKHt9LG4uc3RydWN0dXJlZFN0YXRlfHx7fSx7aW5GbGlnaHQ6ITF9KX0pLHgpLFVlKCEwKSl9dmFyIFM9YiYmYi5tZXNzYWdlfHwiIixqPVM9PT0iRmFpbGVkIHRvIGZldGNoInx8Uz09PSJOZXR3b3JrRXJyb3Igd2hlbiBhdHRlbXB0aW5nIHRvIGZldGNoIHJlc291cmNlLiJ8fFM9PT0iTG9hZCBmYWlsZWQifHwvYWJvcnRlZHxhYm9ydGVycm9yfG5ldHdvcmtlcnJvcnxmYWlsZWQgdG8gZmV0Y2gvaS50ZXN0KFMpO2p8fGsoYiYmYi5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU1M0QxXHU5MDAxXHU3RUQzXHU2Nzg0XHU1MzE2XHU2RDg4XHU2MDZGXHUzMDAyIiwiZXJyb3IiKSxHbigiRW50ZXIgXHU1M0QxXHU5MDAxIFx4QjcgU2hpZnQrRW50ZXIgXHU2MzYyXHU4ODRDIil9KX1mdW5jdGlvbiBHbihlKXt2YXIgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuaW5wdXQtaGludCIpO3QmJih0LnRleHRDb250ZW50PWUpfWZ1bmN0aW9uIHNuKCl7bHQoKX12YXIgUGY9MTAsUnM9MjY7ZnVuY3Rpb24gcWYoZSl7aWYodHlwZW9mIGUhPSJzdHJpbmciKXJldHVybiIiO3ZhciB0PWUucmVwbGFjZSgvXHMrL2csIiAiKS50cmltKCk7cmV0dXJuIHQubGVuZ3RoPD1Scz90OnQuc2xpY2UoMCxScykrIlx1MjAyNiJ9ZnVuY3Rpb24gSGYoKXtyZXR1cm4hIXIucXVldWVCYXJFeHBhbmRlZH1mdW5jdGlvbiBfZihlKXtpZighIXIucXVldWVCYXJFeHBhbmRlZCE9ISFlKXtyLnF1ZXVlQmFyRXhwYW5kZWQ9ISFlO3ZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5xdWV1ZS1iYXIiKTt0JiZ0LmNsYXNzTGlzdC50b2dnbGUoImV4cGFuZGVkIiwhIWUpfX1mdW5jdGlvbiBOZihlLHQsbil7dmFyIGk9ZS5sZW5ndGgsYT0icXVldWUtYmFyIjtuJiYoYSs9IiBxdWV1ZS1iYXItY2FwYWNpdHkiKSx0JiYoYSs9IiBxdWV1ZS1iYXItaW5mbGlnaHQiKTtmb3IodmFyIHU9dD8iXHU0RTJEXHU2NUFEXHU1RjUzXHU1MjREXHU1NkRFXHU1OTBEXHVGRjBDXHU3QUNCXHU1MzczXHU1M0QxXHU5MDAxXHU4RkQ5XHU2NzYxIjoiXHU3QUNCXHU1MzczXHU1M0QxXHU5MDAxXHU4RkQ5XHU2NzYxIixzPSIiLG89MDtvPGk7bysrKXt2YXIgbD1lW29dPT1udWxsPyIiOlN0cmluZyhlW29dKSxjPXFmKGwpLGY9bCsiXHVGRjA4XHU2MzA5XHU0RjRGXHU1M0VGXHU2MkQ2XHU1MkE4XHU4QzAzXHU1RThGXHVGRjA5IjtzKz0nPGxpIGNsYXNzPSJxdWV1ZS1iYXItaXRlbSIgZGF0YS1pbmRleD0iJytvKyciIGRhdGEtYWN0aW9uPSJkcmFnIiB0aXRsZT0iJytwKGYpKyciPjxzcGFuIGNsYXNzPSJxdWV1ZS1iYXItaXRlbS1pbmRleCIgYXJpYS1oaWRkZW49InRydWUiPicrKG8rMSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0icXVldWUtYmFyLWl0ZW0tdGV4dCI+JytwKGMpKyc8L3NwYW4+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJxdWV1ZS1iYXItaXRlbS1wcm9tb3RlIiBkYXRhLWFjdGlvbj0icHJvbW90ZS1pdGVtIiB0aXRsZT0iJytwKHUpKyciIGFyaWEtbGFiZWw9Ilx1N0FDQlx1NTM3M1x1NTNEMVx1OTAwMVx1N0IyQyAnKyhvKzEpKycgXHU2NzYxIj48c3ZnIHdpZHRoPSIxMSIgaGVpZ2h0PSIxMSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJjdXJyZW50Q29sb3IiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNMTMgMiBMNCAxNCBMMTEgMTQgTDEwIDIyIEwyMCA5IEwxMyA5IFoiLz48L3N2Zz48L2J1dHRvbj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InF1ZXVlLWJhci1pdGVtLWRlbGV0ZSIgZGF0YS1hY3Rpb249ImRlbGV0ZSIgYXJpYS1sYWJlbD0iXHU1MjIwXHU5NjY0XHU3QjJDICcrKG8rMSkrJyBcdTY3NjFcdTYzOTJcdTk2MUZcdTZEODhcdTYwNkYiIHRpdGxlPSJcdTUyMjBcdTk2NjQiPjxzdmcgd2lkdGg9IjExIiBoZWlnaHQ9IjExIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjYiIHkxPSI2IiB4Mj0iMTgiIHkyPSIxOCIvPjxsaW5lIHgxPSI2IiB5MT0iMTgiIHgyPSIxOCIgeTI9IjYiLz48L3N2Zz48L2J1dHRvbj48L2xpPid9dmFyIGQ9IiI7cmV0dXJuIGk+PTImJihkPSc8ZGl2IGNsYXNzPSJxdWV1ZS1iYXItaGVhZCI+PHNwYW4gY2xhc3M9InF1ZXVlLWJhci1oZWFkLWNvdW50Ij4nK2krJyBcdTY3NjFcdTYzOTJcdTk2MUY8L3NwYW4+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJxdWV1ZS1iYXItY2xlYXItYWxsIiBkYXRhLWFjdGlvbj0iY2xlYXItYWxsIiB0aXRsZT0iXHU2RTA1XHU3QTdBXHU1MTY4XHU5MEU4XHU2MzkyXHU5NjFGIiBhcmlhLWxhYmVsPSJcdTZFMDVcdTdBN0FcdTUxNjhcdTkwRTggJytpKycgXHU2NzYxXHU2MzkyXHU5NjFGXHU2RDg4XHU2MDZGIj5cdTZFMDVcdTdBN0E8L2J1dHRvbj48L2Rpdj4nKSwnPGRpdiBjbGFzcz0iJythKyciIGRhdGEtcXVldWUtYmFyPSIxIiB0aXRsZT0iXHU2MzkyXHU5NjFGICcraSsnIFx1Njc2MVx1RkYwOFx1NjMwOVx1NEY0Rlx1NkMxNFx1NkNFMVx1NTNFRlx1OEMwM1x1NUU4Rlx1RkYwOSI+JytkKyc8b2wgY2xhc3M9InF1ZXVlLWJhci1saXN0IiBkYXRhLXF1ZXVlLWxpc3Q9IjEiPicrcysiPC9vbD48L2Rpdj4ifWZ1bmN0aW9uIGx0KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1ZXVlLWJhci1ob3N0Iik7aWYoZSl7dmFyIHQ9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHMpe3JldHVybiBzLmlkPT09ci5zZWxlY3RlZElkfSksbj10JiZ0LnNlc3Npb25LaW5kPT09InN0cnVjdHVyZWQiLGk9bj9qaSh0KTpbXTtpZihpPUFycmF5LmlzQXJyYXkoaSk/aTpbXSwhbnx8aS5sZW5ndGg9PT0wKXtlLmhpZGRlbj0hMCxlLmlubmVySFRNTD0iIixyLnF1ZXVlQmFyRXhwYW5kZWQ9ITE7cmV0dXJufWlmKCFyLnF1ZXVlQmFyRHJhZyl7ZS5oaWRkZW49ITE7dmFyIGE9ISEodC5zdHJ1Y3R1cmVkU3RhdGUmJnQuc3RydWN0dXJlZFN0YXRlLmluRmxpZ2h0JiZ0LnN0YXR1cz09PSJydW5uaW5nIiksdT1pLmxlbmd0aD49UGY7ZS5pbm5lckhUTUw9TmYoaSxhLHUpfX19ZnVuY3Rpb24gZGkoZSx0KXtRKHtpZDplLmlkLHF1ZXVlZE1lc3NhZ2VzOnR9KTt2YXIgbj1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oaSl7cmV0dXJuIGkuaWQ9PT1lLmlkfSl8fGU7ci5jdXJyZW50TWVzc2FnZXM9amUobixYZShuLG4ub3V0cHV0LCExKSksVWUoITApLGx0KCl9ZnVuY3Rpb24gamYoZSl7dmFyIHQ9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHMpe3JldHVybiBzLmlkPT09ci5zZWxlY3RlZElkfSk7aWYodCl7dmFyIG49QXJyYXkuaXNBcnJheSh0LnF1ZXVlZE1lc3NhZ2VzKT90LnF1ZXVlZE1lc3NhZ2VzLnNsaWNlKCk6W107aWYoIShlPDB8fGU+PW4ubGVuZ3RoKSl7dmFyIGk9bi5zbGljZSgpLGE9bi5zbGljZSgwLGUpLmNvbmNhdChuLnNsaWNlKGUrMSkpO1Eoe2lkOnQuaWQscXVldWVkTWVzc2FnZXM6YX0pO3ZhciB1PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihzKXtyZXR1cm4gcy5pZD09PXQuaWR9KXx8dDtyLmN1cnJlbnRNZXNzYWdlcz1qZSh1LFhlKHUsdS5vdXRwdXQsITEpKSxVZSghMCksbHQoKSxmZXRjaCgiL2FwaS9zdHJ1Y3R1cmVkLXNlc3Npb25zLyIrdC5pZCsiL3F1ZXVlZC8iK2Use21ldGhvZDoiREVMRVRFIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihzKXtpZighcy5vaylyZXR1cm4gcy5qc29uKCkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm57fX0pLnRoZW4oZnVuY3Rpb24obyl7dGhyb3cgbmV3IEVycm9yKG8mJm8uZXJyb3J8fCJcdTUyMjBcdTk2NjRcdTU5MzFcdThEMjUiKX0pfSkuY2F0Y2goZnVuY3Rpb24ocyl7ZGkodCxpKSxrKHMmJnMubWVzc2FnZXx8Ilx1NTIyMFx1OTY2NFx1NjM5Mlx1OTYxRlx1NkQ4OFx1NjA2Rlx1NTkzMVx1OEQyNVx1MzAwMiIsImVycm9yIil9KX19fWZ1bmN0aW9uIFJmKCl7dmFyIGU9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGkpe3JldHVybiBpLmlkPT09ci5zZWxlY3RlZElkfSk7aWYoZSl7dmFyIHQ9QXJyYXkuaXNBcnJheShlLnF1ZXVlZE1lc3NhZ2VzKT9lLnF1ZXVlZE1lc3NhZ2VzLnNsaWNlKCk6W107aWYodC5sZW5ndGghPT0wKXtyLnF1ZXVlQmFyRXhwYW5kZWQ9ITEsUSh7aWQ6ZS5pZCxxdWV1ZWRNZXNzYWdlczpbXX0pO3ZhciBuPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihpKXtyZXR1cm4gaS5pZD09PWUuaWR9KXx8ZTtyLmN1cnJlbnRNZXNzYWdlcz1qZShuLFhlKG4sbi5vdXRwdXQsITEpKSxVZSghMCksbHQoKSxmZXRjaCgiL2FwaS9zdHJ1Y3R1cmVkLXNlc3Npb25zLyIrZS5pZCsiL3F1ZXVlZCIse21ldGhvZDoiREVMRVRFIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihpKXtpZighaS5vaylyZXR1cm4gaS5qc29uKCkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm57fX0pLnRoZW4oZnVuY3Rpb24oYSl7dGhyb3cgbmV3IEVycm9yKGEmJmEuZXJyb3J8fCJcdTZFMDVcdTdBN0FcdTU5MzFcdThEMjUiKX0pO2soIlx1NURGMlx1NkUwNVx1N0E3QSAiK3QubGVuZ3RoKyIgXHU2NzYxXHU2MzkyXHU5NjFGXHU2RDg4XHU2MDZGXHUzMDAyIiwiaW5mbyIpfSkuY2F0Y2goZnVuY3Rpb24oaSl7ZGkoZSx0KSxrKGkmJmkubWVzc2FnZXx8Ilx1NkUwNVx1N0E3QVx1NjM5Mlx1OTYxRlx1NkQ4OFx1NjA2Rlx1NTkzMVx1OEQyNVx1MzAwMiIsImVycm9yIil9KX19fWZ1bmN0aW9uIFdmKGUpe2lmKCFyLnF1ZXVlQmFyUHJvbW90aW5nKXt2YXIgdD1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24obCl7cmV0dXJuIGwuaWQ9PT1yLnNlbGVjdGVkSWR9KTtpZih0KXt2YXIgbj1BcnJheS5pc0FycmF5KHQucXVldWVkTWVzc2FnZXMpP3QucXVldWVkTWVzc2FnZXMuc2xpY2UoKTpbXTtpZighKGU8MHx8ZT49bi5sZW5ndGgpKXt2YXIgaT1uW2VdLGE9bi5zbGljZSgwLGUpLmNvbmNhdChuLnNsaWNlKGUrMSkpLHU9bi5zbGljZSgpLHM9ISEodC5zdHJ1Y3R1cmVkU3RhdGUmJnQuc3RydWN0dXJlZFN0YXRlLmluRmxpZ2h0JiZ0LnN0YXR1cz09PSJydW5uaW5nIik7ci5xdWV1ZUJhclByb21vdGluZz0hMCxhLmxlbmd0aD09PTAmJihyLnF1ZXVlQmFyRXhwYW5kZWQ9ITEpLFEoe2lkOnQuaWQscXVldWVkTWVzc2FnZXM6YX0pO3ZhciBvPXR5cGVvZiBjcnlwdG88InUiJiZjcnlwdG8ucmFuZG9tVVVJRD9jcnlwdG8ucmFuZG9tVVVJRCgpOkRhdGUubm93KCkudG9TdHJpbmcoMzYpKyItIitNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyLDEwKTtrKHM/Ilx1NURGMlx1OEJGN1x1NkM0Mlx1NEUyRFx1NjVBRFx1NUY1M1x1NTI0RFx1NTZERVx1NTkwRFx1RkYwQ1x1N0FDQlx1NTM3M1x1NTNEMVx1OTAwMVx1OEZEOVx1Njc2MVx1MzAwMiI6Ilx1NURGMlx1N0FDQlx1NTM3M1x1NTNEMVx1OTAwMVx1OEZEOVx1Njc2MVx1NkQ4OFx1NjA2Rlx1MzAwMiIsImluZm8iKSxmZXRjaCgiL2FwaS9zdHJ1Y3R1cmVkLXNlc3Npb25zLyIrdC5pZCsiL3F1ZXVlZC8iK2UrIi9wcm9tb3RlIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7ZXhwZWN0ZWRUZXh0OmksaWRlbXBvdGVuY3lLZXk6b30pfSkudGhlbihmdW5jdGlvbihsKXtyZXR1cm4gbC5vaz9sLmpzb24oKTpsLmpzb24oKS5jYXRjaChmdW5jdGlvbigpe3JldHVybnt9fSkudGhlbihmdW5jdGlvbihjKXt0aHJvdyBuZXcgRXJyb3IoYyYmYy5lcnJvcnx8Ilx1N0FDQlx1NTM3M1x1NTNEMVx1OTAwMVx1NTkzMVx1OEQyNSIpfSl9KS50aGVuKGZ1bmN0aW9uKGwpe2lmKGwmJmwuaWQmJihRKGwpLGwuaWQ9PT1yLnNlbGVjdGVkSWQpKXt2YXIgYz1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oZil7cmV0dXJuIGYuaWQ9PT1sLmlkfSl8fGw7ci5jdXJyZW50TWVzc2FnZXM9amUoYyxYZShjLGwub3V0cHV0LCExKSksVWUoITApLGx0KCl9ci5xdWV1ZUJhclByb21vdGluZz0hMX0pLmNhdGNoKGZ1bmN0aW9uKGwpe3IucXVldWVCYXJQcm9tb3Rpbmc9ITEsZGkodCx1KSxrKGwmJmwubWVzc2FnZXx8Ilx1N0FDQlx1NTM3M1x1NTNEMVx1OTAwMVx1NTkzMVx1OEQyNVx1MzAwMiIsImVycm9yIil9KX19fX1mdW5jdGlvbiB6ZihlLHQpe3ZhciBuPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihkKXtyZXR1cm4gZC5pZD09PXIuc2VsZWN0ZWRJZH0pO2lmKG4pe3ZhciBpPUFycmF5LmlzQXJyYXkobi5xdWV1ZWRNZXNzYWdlcyk/bi5xdWV1ZWRNZXNzYWdlcy5zbGljZSgpOltdO2lmKCEoaS5sZW5ndGg8PTEpJiZ0KXt2YXIgYT10LnBhcmVudEVsZW1lbnQ7aWYoYSl7dmFyIHU9TnVtYmVyKHQuZ2V0QXR0cmlidXRlKCJkYXRhLWluZGV4IikpLHM9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYS5jaGlsZHJlbiksbz1zLm1hcChmdW5jdGlvbihkKXtyZXR1cm4gZC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKX0pLGw9MztvLmxlbmd0aD49MiYmKGw9TWF0aC5tYXgoMCxvWzFdLnRvcC1vWzBdLnRvcC1vWzBdLmhlaWdodCkpLGUucHJldmVudERlZmF1bHQoKTt0cnl7dC5zZXRQb2ludGVyQ2FwdHVyZShlLnBvaW50ZXJJZCl9Y2F0Y2h7fWlmKG5hdmlnYXRvciYmbmF2aWdhdG9yLnZpYnJhdGUpdHJ5e25hdmlnYXRvci52aWJyYXRlKDgpfWNhdGNoe31yLnF1ZXVlQmFyRHJhZz17cG9pbnRlcklkOmUucG9pbnRlcklkLGhhbmRsZUVsOnQsaXRlbUVsOnQsbGlzdEVsOmEsc2libGluZ3M6cyxyZWN0czpvLG9yaWdJbmRleDp1LHRhcmdldEluZGV4OnUsc3RhcnRZOmUuY2xpZW50WSxnYXA6bCxxdWV1ZVNuYXBzaG90Oml9LHQuY2xhc3NMaXN0LmFkZCgiZHJhZ2dpbmciKSxzLmZvckVhY2goZnVuY3Rpb24oZCl7ZCE9PXQmJmQuY2xhc3NMaXN0LmFkZCgicXVldWUtYmFyLWl0ZW0tc2xpZGluZyIpfSk7dmFyIGM9ZnVuY3Rpb24oZCl7VmYoZCl9LGY9ZnVuY3Rpb24oZCl7S2YoZCl9O3IucXVldWVCYXJEcmFnLm1vdmVIYW5kbGVyPWMsci5xdWV1ZUJhckRyYWcudXBIYW5kbGVyPWYsdC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsYyksdC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVydXAiLGYpLHQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmNhbmNlbCIsZil9fX19ZnVuY3Rpb24gVWYoZSx0LG4saSl7Zm9yKHZhciBhPW4ubGVuZ3RoLHU9W10scz0wO3M8YTtzKyspdS5wdXNoKHMpO3Uuc3BsaWNlKGUsMSksdS5zcGxpY2UodCwwLGUpO2Zvcih2YXIgbz1uWzBdLnRvcCxsPW5bMF0udG9wLGM9MTtjPGE7YysrKW5bY10udG9wPGwmJihsPW5bY10udG9wKTtmb3IodmFyIGY9e30sZD1sLHY9MDt2PGE7disrKXt2YXIgZz11W3ZdO2ZbZ109ZCxkKz1uW2ddLmhlaWdodCtpfXJldHVybiBmfWZ1bmN0aW9uIFZmKGUpe3ZhciB0PXIucXVldWVCYXJEcmFnO2lmKCEoIXR8fGUucG9pbnRlcklkIT09dC5wb2ludGVySWQpKXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIG49ZS5jbGllbnRZLXQuc3RhcnRZO3QuaXRlbUVsLnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlWSgiK24rInB4KSI7Zm9yKHZhciBpPXQucmVjdHNbdC5vcmlnSW5kZXhdLnRvcCt0LnJlY3RzW3Qub3JpZ0luZGV4XS5oZWlnaHQvMituLGE9dC5vcmlnSW5kZXgsdT0wO3U8dC5yZWN0cy5sZW5ndGg7dSsrKWlmKHUhPT10Lm9yaWdJbmRleCl7dmFyIHM9dC5yZWN0c1t1XS50b3ArdC5yZWN0c1t1XS5oZWlnaHQvMjt1PHQub3JpZ0luZGV4JiZpPHM/YT1NYXRoLm1pbihhLHUpOnU+dC5vcmlnSW5kZXgmJmk+cyYmKGE9TWF0aC5tYXgoYSx1KSl9aWYoYSE9PXQudGFyZ2V0SW5kZXgpe3QudGFyZ2V0SW5kZXg9YTt2YXIgbz1VZih0Lm9yaWdJbmRleCxhLHQucmVjdHMsdC5nYXApO3Quc2libGluZ3MuZm9yRWFjaChmdW5jdGlvbihsLGMpe2lmKGMhPT10Lm9yaWdJbmRleCl7dmFyIGY9b1tjXS10LnJlY3RzW2NdLnRvcDtsLnN0eWxlLnRyYW5zZm9ybT1mPyJ0cmFuc2xhdGVZKCIrZisicHgpIjoiIn19KX19fWZ1bmN0aW9uIEtmKGUpe3ZhciB0PXIucXVldWVCYXJEcmFnO2lmKCEoIXR8fGUmJmUucG9pbnRlcklkIT09dC5wb2ludGVySWQpKXt0cnl7dC5oYW5kbGVFbC5yZWxlYXNlUG9pbnRlckNhcHR1cmUodC5wb2ludGVySWQpfWNhdGNoe310LmhhbmRsZUVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJtb3ZlIix0Lm1vdmVIYW5kbGVyKSx0LmhhbmRsZUVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJ1cCIsdC51cEhhbmRsZXIpLHQuaGFuZGxlRWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcmNhbmNlbCIsdC51cEhhbmRsZXIpO3ZhciBuPXQub3JpZ0luZGV4LGk9dC50YXJnZXRJbmRleCxhPXQucXVldWVTbmFwc2hvdDtpZih0LnNpYmxpbmdzLmZvckVhY2goZnVuY3Rpb24oYyl7Yy5zdHlsZS50cmFuc2Zvcm09IiIsYy5jbGFzc0xpc3QucmVtb3ZlKCJxdWV1ZS1iYXItaXRlbS1zbGlkaW5nIil9KSx0Lml0ZW1FbC5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnZ2luZyIpLHIucXVldWVCYXJEcmFnPW51bGwsbj09PWkpe2x0KCk7cmV0dXJufWZvcih2YXIgdT1bXSxzPTA7czxhLmxlbmd0aDtzKyspdS5wdXNoKHMpO3Uuc3BsaWNlKG4sMSksdS5zcGxpY2UoaSwwLG4pO3ZhciBvPXUubWFwKGZ1bmN0aW9uKGMpe3JldHVybiBhW2NdfSksbD1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYyl7cmV0dXJuIGMuaWQ9PT1yLnNlbGVjdGVkSWR9KTtpZighbCl7bHQoKTtyZXR1cm59USh7aWQ6bC5pZCxxdWV1ZWRNZXNzYWdlczpvfSksbHQoKSxmZXRjaCgiL2FwaS9zdHJ1Y3R1cmVkLXNlc3Npb25zLyIrbC5pZCsiL3F1ZXVlZCIse21ldGhvZDoiUEFUQ0giLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtvcmRlcjp1fSl9KS50aGVuKGZ1bmN0aW9uKGMpe2lmKCFjLm9rKXJldHVybiBjLmpzb24oKS5jYXRjaChmdW5jdGlvbigpe3JldHVybnt9fSkudGhlbihmdW5jdGlvbihmKXt0aHJvdyBuZXcgRXJyb3IoZiYmZi5lcnJvcnx8Ilx1NjM5Mlx1NUU4Rlx1NTkzMVx1OEQyNSIpfSl9KS5jYXRjaChmdW5jdGlvbihjKXtkaShsLGEpLGsoYyYmYy5tZXNzYWdlfHwiXHU4QzAzXHU2NTc0XHU2MzkyXHU5NjFGXHU5ODdBXHU1RThGXHU1OTMxXHU4RDI1XHUzMDAyIiwiZXJyb3IiKX0pfX1mdW5jdGlvbiBKZigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWV1ZS1iYXItaG9zdCIpOyFlfHxlLl9fcXVldWVEZWxlZ2F0ZWR8fChlLl9fcXVldWVEZWxlZ2F0ZWQ9ITAsZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24odCl7dmFyIG49dC50YXJnZXQsaT1uJiZuLmNsb3Nlc3Q/bi5jbG9zZXN0KCJbZGF0YS1hY3Rpb25dIik6bnVsbDtpZihpJiZlLmNvbnRhaW5zKGkpKXt2YXIgYT1pLmdldEF0dHJpYnV0ZSgiZGF0YS1hY3Rpb24iKTtpZihhPT09ImRyYWciKXJldHVybjtpZih0LnByZXZlbnREZWZhdWx0KCksdC5zdG9wUHJvcGFnYXRpb24oKSxhPT09InByb21vdGUtaXRlbSIpe3ZhciB1PWkuY2xvc2VzdCgiLnF1ZXVlLWJhci1pdGVtIik7dSYmV2YoTnVtYmVyKHUuZ2V0QXR0cmlidXRlKCJkYXRhLWluZGV4IikpKX1lbHNlIGlmKGE9PT0iZGVsZXRlIil7dmFyIHM9aS5jbG9zZXN0KCIucXVldWUtYmFyLWl0ZW0iKTtzJiZqZihOdW1iZXIocy5nZXRBdHRyaWJ1dGUoImRhdGEtaW5kZXgiKSkpfWVsc2UgYT09PSJjbGVhci1hbGwiJiZSZigpO3JldHVybn19KSxlLmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJkb3duIixmdW5jdGlvbih0KXtpZighKHQuYnV0dG9uIT09dm9pZCAwJiZ0LmJ1dHRvbiE9PTApKXt2YXIgbj10LnRhcmdldDtpZighKG4mJm4uY2xvc2VzdCYmbi5jbG9zZXN0KCdbZGF0YS1hY3Rpb249ImRlbGV0ZSJdLCBbZGF0YS1hY3Rpb249InByb21vdGUtaXRlbSJdLCBbZGF0YS1hY3Rpb249ImNsZWFyLWFsbCJdLCBbZGF0YS1hY3Rpb249ImV4cGFuZCJdJykpKXt2YXIgaT1uJiZuLmNsb3Nlc3Q/bi5jbG9zZXN0KCIucXVldWUtYmFyLWl0ZW0iKTpudWxsO2kmJnpmKHQsaSl9fX0pLGUuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24odCl7dC5rZXk9PT0iRXNjYXBlIiYmSGYoKSYmKHQuc3RvcFByb3BhZ2F0aW9uKCksX2YoITEpKX0pKX1mdW5jdGlvbiBXcyhlKXtpZighZXx8IUFycmF5LmlzQXJyYXkoZS5jb250ZW50KSlyZXR1cm4gMDtmb3IodmFyIHQ9MCxuPTA7bjxlLmNvbnRlbnQubGVuZ3RoO24rKyl7dmFyIGk9ZS5jb250ZW50W25dO2lmKGkpe2lmKHR5cGVvZiBpLnRleHQ9PSJzdHJpbmciJiYodCs9aS50ZXh0Lmxlbmd0aCksdHlwZW9mIGkudGhpbmtpbmc9PSJzdHJpbmciJiYodCs9aS50aGlua2luZy5sZW5ndGgpLHR5cGVvZiBpLmNvbnRlbnQ9PSJzdHJpbmciKXQrPWkuY29udGVudC5sZW5ndGg7ZWxzZSBpZihBcnJheS5pc0FycmF5KGkuY29udGVudCkpZm9yKHZhciBhPTA7YTxpLmNvbnRlbnQubGVuZ3RoO2ErKyl7dmFyIHU9aS5jb250ZW50W2FdO3UmJnR5cGVvZiB1LnRleHQ9PSJzdHJpbmciJiYodCs9dS50ZXh0Lmxlbmd0aCl9aWYoaS5pbnB1dCl0cnl7dCs9SlNPTi5zdHJpbmdpZnkoaS5pbnB1dCkubGVuZ3RofWNhdGNoe319fXJldHVybiB0fWZ1bmN0aW9uIEdmKGUsdCl7aWYoIWUpcmV0dXJuIHQ7aWYoIXQpcmV0dXJuIGU7dmFyIG49V3MoZSksaT1Xcyh0KTtyZXR1cm4gaT49bj90Ok9iamVjdC5hc3NpZ24oe30sZSx7dXNhZ2U6dC51c2FnZXx8ZS51c2FnZX0pfWZ1bmN0aW9uIGplKGUsdCl7dmFyIG49QXJyYXkuaXNBcnJheSh0KT9zcih0KTpbXSxpPUFycmF5LmlzQXJyYXkobik/bi5zbGljZSgpOltdO2lmKCFlfHxlLnNlc3Npb25LaW5kIT09InN0cnVjdHVyZWQiKXJldHVybiBpO2lmKGUuc3RydWN0dXJlZFN0YXRlJiZlLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCl7dmFyIGE9aVtpLmxlbmd0aC0xXTsoIWF8fGEucm9sZSE9PSJhc3Npc3RhbnQiKSYmaS5wdXNoKHtyb2xlOiJhc3Npc3RhbnQiLGNvbnRlbnQ6W3t0eXBlOiJ0ZXh0Iix0ZXh0OiIiLF9fcHJvY2Vzc2luZzohMH1dfSl9cmV0dXJuIGl9ZnVuY3Rpb24genMoKXt2YXIgZT1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odCl7cmV0dXJuIHQuaWQ9PT1yLnNlbGVjdGVkSWR9KTt6cihlKSxzbigpfWZ1bmN0aW9uIFVzKGUpe3ZhciB0PV90KCksbj10JiZ0LnByb3ZpZGVyPT09ImNvZGV4IjtyZXR1cm4gZSYmKGUuZXJyb3JDb2RlPT09IlNFU1NJT05fTk9UX1JVTk5JTkcifHxlLmVycm9yQ29kZT09PSJTRVNTSU9OX05PX1BUWSIpP24/IkNvZGV4IFx1NEYxQVx1OEJERFx1NURGMlx1N0VEM1x1Njc1Rlx1RkYxQlx1ODJFNVx1NUI1OFx1NTcyOCBDb2RleCBcdTUzODZcdTUzRjJcdTRGMUFcdThCRERcdUZGMENcdTVDMDZcdTU3MjhcdTRGNjBcdTRFMEJcdTZCMjFcdTUzRDFcdTkwMDFcdTZEODhcdTYwNkZcdTY1RjZcdTgxRUFcdTUyQThcdTYwNjJcdTU5MERcdTMwMDIiOiJcdTRGMUFcdThCRERcdTVERjJcdTdFRDNcdTY3NUZcdUZGMUJcdTgyRTVcdTVCNThcdTU3MjggQ2xhdWRlIFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERFx1RkYwQ1x1NUMwNlx1NTcyOFx1NEY2MFx1NEUwQlx1NkIyMVx1NTNEMVx1OTAwMVx1NkQ4OFx1NjA2Rlx1NjVGNlx1ODFFQVx1NTJBOFx1NjA2Mlx1NTkwRFx1MzAwMiI6ZSYmZS5lcnJvckNvZGU9PT0iU0VTU0lPTl9OT1RfRk9VTkQiPyJcdTRGMUFcdThCRERcdTRFMERcdTVCNThcdTU3MjhcdUZGMENcdThCRjdcdTkxQ0RcdTY1QjBcdTkwMDlcdTYyRTlcdTYyMTZcdTY1QjBcdTVFRkFcdTRGMUFcdThCRERcdTMwMDIiOmUmJmUubWVzc2FnZXx8KG4/IkNvZGV4IFx1NEYxQVx1OEJERFx1NjY4Mlx1NEUwRFx1NTNFRlx1NzUyOFx1RkYxQlx1ODJFNVx1NUI1OFx1NTcyOCBDb2RleCBcdTUzODZcdTUzRjJcdTRGMUFcdThCRERcdUZGMENcdTVDMDZcdTgxRUFcdTUyQThcdTVDMURcdThCRDVcdTYwNjJcdTU5MERcdTMwMDIiOiJcdTRGMUFcdThCRERcdTY2ODJcdTRFMERcdTUzRUZcdTc1MjhcdUZGMUJcdTgyRTVcdTVCNThcdTU3MjggQ2xhdWRlIFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERFx1RkYwQ1x1NUMwNlx1ODFFQVx1NTJBOFx1NUMxRFx1OEJENVx1NjA2Mlx1NTkwRFx1MzAwMiIpfWZ1bmN0aW9uIFZzKGUpe3ZhciB0PW5ldyBFcnJvcihlJiZlLmVycm9yfHwiXHU0RjFBXHU4QkREXHU1REYyXHU3RUQzXHU2NzVGXHUzMDAyIik7cmV0dXJuIGUmJnR5cGVvZiBlPT0ib2JqZWN0IiYmKHQuZXJyb3JDb2RlPWUuZXJyb3JDb2RlfHxudWxsLHQuc2Vzc2lvbklkPWUuc2Vzc2lvbklkfHxyLnNlbGVjdGVkSWR8fG51bGwsdC5zZXNzaW9uU3RhdHVzPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLCJzZXNzaW9uU3RhdHVzIik/ZS5zZXNzaW9uU3RhdHVzOm51bGwpLHR9ZnVuY3Rpb24gS3MoZSl7cmV0dXJuIGUmJihlLmVycm9yQ29kZT09PSJTRVNTSU9OX05PVF9SVU5OSU5HInx8ZS5lcnJvckNvZGU9PT0iU0VTU0lPTl9OT19QVFkifHxlLmVycm9yQ29kZT09PSJTRVNTSU9OX05PVF9GT1VORCIpfWZ1bmN0aW9uIFlmKGUsdCl7ZSYmUSh7aWQ6ZSxzdGF0dXM6dHx8ImV4aXRlZCJ9KX1mdW5jdGlvbiBvZyhlKXtpZighZXx8IUFycmF5LmlzQXJyYXkoZS5tZXNzYWdlcyl8fGUubWVzc2FnZXMubGVuZ3RoPDIpcmV0dXJuITE7dmFyIHQ9ZS5tZXNzYWdlcy5zb21lKGZ1bmN0aW9uKGkpe3JldHVybiBpJiZpLnJvbGU9PT0idXNlciImJkFycmF5LmlzQXJyYXkoaS5jb250ZW50KSYmaS5jb250ZW50LnNvbWUoZnVuY3Rpb24oYSl7cmV0dXJuIGEmJmEudHlwZT09PSJ0ZXh0IiYmdHlwZW9mIGEudGV4dD09InN0cmluZyImJmEudGV4dC50cmltKCkubGVuZ3RoPjB9KX0pLG49ZS5tZXNzYWdlcy5zb21lKGZ1bmN0aW9uKGkpe3JldHVybiBpJiZpLnJvbGU9PT0iYXNzaXN0YW50IiYmQXJyYXkuaXNBcnJheShpLmNvbnRlbnQpJiZpLmNvbnRlbnQuc29tZShmdW5jdGlvbihhKXtyZXR1cm4gYSYmYS50eXBlPT09InRleHQiJiZ0eXBlb2YgYS50ZXh0PT0ic3RyaW5nIiYmYS50ZXh0LnRyaW0oKS5sZW5ndGg+MH0pfSk7cmV0dXJuIHQmJm59ZnVuY3Rpb24geWEoZSl7cmV0dXJuISEoZSYmIWFlKGUpJiYoZS5wcm92aWRlcj09PSJjbGF1ZGUifHxlLnByb3ZpZGVyPT09ImNvZGV4IikmJmUuc3RhdHVzIT09InJ1bm5pbmciJiZlLmNsYXVkZVNlc3Npb25JZCl9ZnVuY3Rpb24gUWYoZSx0KXtpZighZSlyZXR1cm4gaygiXHU0RjFBXHU4QkREXHU0RTBEXHU1QjU4XHU1NzI4XHVGRjBDXHU4QkY3XHU5MUNEXHU2NUIwXHU5MDA5XHU2MkU5XHU2MjE2XHU2NUIwXHU1RUZBXHU0RjFBXHU4QkREXHUzMDAyIiwiZXJyb3IiKSxQcm9taXNlLnJlc29sdmUobnVsbCk7aWYoZS5zdGF0dXM9PT0icnVubmluZyIpcmV0dXJuIFByb21pc2UucmVzb2x2ZShlKTtpZigheWEoZSkpe3ZhciBuPWUmJmUucHJvdmlkZXI9PT0iY29kZXgiPyJDb2RleCI6IkNsYXVkZSI7cmV0dXJuIGsoIlx1OEJFNVx1NEYxQVx1OEJERFx1NkNBMVx1NjcwOVx1NTNFRlx1NjA2Mlx1NTkwRFx1NzY4NCAiK24rIiBcdTUzODZcdTUzRjJcdTRFMEFcdTRFMEJcdTY1ODdcdUZGMENcdThCRjdcdTY1QjBcdTVFRkFcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpLFByb21pc2UucmVzb2x2ZShudWxsKX1yZXR1cm4gcm8oZS5pZCx0KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpPyhRKGkpLHZlKCksVG4oaS5pZCkscG4oaS5pZCkudGhlbihmdW5jdGlvbigpe3JldHVybiBOdCghMCksaX0pKTpudWxsfSl9ZnVuY3Rpb24gJGYoZSx0KXtyZXR1cm5bdCwiXHIiXX1mdW5jdGlvbiBYZihlLHQsbixpKXt2YXIgYT1BcnJheS5pc0FycmF5KGUpP2UuZmlsdGVyKGZ1bmN0aW9uKHMpe3JldHVybiEhc30pOltdO2lmKGEubGVuZ3RoPT09MClyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7dmFyIHU9dHlwZW9mIG49PSJudW1iZXIiP246MDtyZXR1cm4gYS5yZWR1Y2UoZnVuY3Rpb24ocyxvLGwpe3JldHVybiBzLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gbD4wJiZ1PjA/bmV3IFByb21pc2UoZnVuY3Rpb24oYyl7c2V0VGltZW91dChjLHUpfSkudGhlbihmdW5jdGlvbigpe3JldHVybiBidChvLGw9PT1hLmxlbmd0aC0xP3Q6dm9pZCAwLGkpfSk6YnQobyxsPT09YS5sZW5ndGgtMT90OnZvaWQgMCxpKX0pfSxQcm9taXNlLnJlc29sdmUoKSl9dmFyIFpmPTVlMyxlcD0xMDA7ZnVuY3Rpb24gRWEoZSl7ZSYmKHIucGVuZGluZ01lc3NhZ2VzLmxlbmd0aD49ZXAmJnIucGVuZGluZ01lc3NhZ2VzLnNoaWZ0KCksci5wZW5kaW5nTWVzc2FnZXMucHVzaCh7aW5wdXQ6ZSxhdDpEYXRlLm5vdygpfSkpfWZ1bmN0aW9uIHRwKGUpe3ZhciB0PUFycmF5LmlzQXJyYXkoZSk/ZS5maWx0ZXIoZnVuY3Rpb24obil7cmV0dXJuISFufSk6W107dC5mb3JFYWNoKGZ1bmN0aW9uKG4pe0VhKG4pfSl9ZnVuY3Rpb24gbnAoZSl7aWYoISh0eXBlb2YgZSE9InN0cmluZyJ8fCFlKSl7dmFyIHQ9ZS5yZXBsYWNlKC9ceDFiXFsyMDB+L2csIiIpLnJlcGxhY2UoL1x4MWJcWzIwMX4vZywiIik7Lyg/Ol58XG4pXHMqXC9jbGVhclxzKig/OlxyfFxufCQpLy50ZXN0KHQpJiZ0eXBlb2YgcjwidSImJnImJihyLnRlcm1pbmFsT3V0cHV0TWFya2VyPShyLnRlcm1pbmFsT3V0cHV0JiZyLnRlcm1pbmFsT3V0cHV0Lmxlbmd0aCl8MCl9fWZ1bmN0aW9uIGJ0KGUsdCxuKXtyZXR1cm4hZXx8IXIuc2VsZWN0ZWRJZD9Qcm9taXNlLnJlc29sdmUoKToobnAoZSksci5tZXNzYWdlUXVldWUucHVzaChlKSxyLmlucHV0UXVldWU9ci5pbnB1dFF1ZXVlLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gcnAoZSx0LG4pLmZpbmFsbHkoZnVuY3Rpb24oKXt2YXIgaT1yLm1lc3NhZ2VRdWV1ZS5pbmRleE9mKGUpO2k+LTEmJnIubWVzc2FnZVF1ZXVlLnNwbGljZShpLDEpfSl9KSxyLmlucHV0UXVldWUpfWZ1bmN0aW9uIHJwKGUsdCxuKXtpZighci5zZWxlY3RlZElkKXJldHVybiBQcm9taXNlLnJlc29sdmUoKTt2YXIgaT1yLnNlbGVjdGVkSWQsYT1ufHxyLmN1cnJlbnRWaWV3O3JldHVybiBBZigpP3Iud3NDb25uZWN0ZWQ/ZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitpKyIvaW5wdXQiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtpbnB1dDplLHZpZXc6YSxzaG9ydGN1dEtleTp0fHx2b2lkIDB9KX0pLnRoZW4oZnVuY3Rpb24odSl7cmV0dXJuIHUub2s/dS5qc29uKCk6dS5qc29uKCkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm57ZXJyb3I6Ilx1OEJGN1x1NkM0Mlx1NTkzMVx1OEQyNSJ9fSkudGhlbihmdW5jdGlvbihzKXt2YXIgbz1WcyhzKTt0aHJvdyBvLmh0dHBTdGF0dXM9dS5zdGF0dXMsY29uc29sZS5lcnJvcigiW3dhbmRdIHBvc3RJbnB1dDogcmVxdWVzdCBmYWlsZWQiLHtzdGF0dXM6dS5zdGF0dXMsZXJyb3JDb2RlOm8uZXJyb3JDb2RlLG1lc3NhZ2U6by5tZXNzYWdlLHNlc3Npb25JZDppfSksS3MobykmJllmKGksby5zZXNzaW9uU3RhdHVzfHwiZXhpdGVkIiksb30pfSkudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gdSYmdS5pZCYmKFEodSksdS5pZD09PXIuc2VsZWN0ZWRJZCYmKHUubWVzc2FnZXMmJnUubWVzc2FnZXMubGVuZ3RoPjAmJihyLmN1cnJlbnRNZXNzYWdlcz11Lm1lc3NhZ2VzKSxVZSghMCkpKSx1fSk6KEVhKGUpLGNvbnNvbGUubG9nKCJbd2FuZF0gcG9zdElucHV0OiBXZWJTb2NrZXQgZGlzY29ubmVjdGVkLCBxdWV1ZWQgbWVzc2FnZSIse3Nlc3Npb25JZDpyLnNlbGVjdGVkSWQsaW5wdXRMZW5ndGg6ZS5sZW5ndGh9KSxQcm9taXNlLnJlc29sdmUoKSk6ci53c0Nvbm5lY3RlZD8oY29uc29sZS53YXJuKCJbd2FuZF0gcG9zdElucHV0OiBzZXNzaW9uIG5vdCBydW5uaW5nLCBza2lwcGluZyBzZW5kIix7c2Vzc2lvbklkOnIuc2VsZWN0ZWRJZH0pLGsoIlx1NEYxQVx1OEJERFx1NjcyQVx1OEZEMFx1ODg0Q1x1RkYwQ1x1NkI2M1x1NTcyOFx1N0I0OVx1NUY4NVx1ODFFQVx1NTJBOFx1NjA2Mlx1NTkwRFx1NTQwRVx1OTFDRFx1OEJENVx1MzAwMiIsImluZm8iKSxQcm9taXNlLnJlc29sdmUoKSk6KEVhKGUpLGNvbnNvbGUubG9nKCJbd2FuZF0gcG9zdElucHV0OiBzZXNzaW9uIG5vdCBydW5uaW5nLCBxdWV1ZWQgZm9yIHJlY29ubmVjdCIse3Nlc3Npb25JZDpyLnNlbGVjdGVkSWQsaW5wdXRMZW5ndGg6ZS5sZW5ndGh9KSxQcm9taXNlLnJlc29sdmUoKSl9ZnVuY3Rpb24gbGcoZSl7cmV0dXJuIGJ0KGUpfWZ1bmN0aW9uIF90KCl7cmV0dXJuIHIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihlKXtyZXR1cm4gZS5pZD09PXIuc2VsZWN0ZWRJZH0pfHxudWxsfWZ1bmN0aW9uIGNnKGUpe3JldHVybiBlJiZlLnByb3ZpZGVyPT09ImNvZGV4Ij9gCmA6IlxyIn1mdW5jdGlvbiBiYSgpe3JldHVybiEhci5zZWxlY3RlZElkJiZyLmN1cnJlbnRWaWV3PT09InRlcm1pbmFsIn1mdW5jdGlvbiBpcChlKXtyZXR1cm4hKCFyLnRlcm1pbmFsfHwhZXx8ZSE9PXIuc2VsZWN0ZWRJZHx8ci50ZXJtaW5hbFNlc3Npb25JZCYmci50ZXJtaW5hbFNlc3Npb25JZCE9PWUpfWZ1bmN0aW9uIEpzKGUpe2lmKCFyLnRlcm1pbmFsSW50ZXJhY3RpdmV8fCFiYSgpfHxlLmRlZmF1bHRQcmV2ZW50ZWR8fGUuaXNDb21wb3NpbmcpcmV0dXJuITE7dmFyIHQ9ZS50YXJnZXQ7cmV0dXJuIHQ/ISh0LmNsb3Nlc3QmJnQuY2xvc2VzdCgiI21pbmkta2V5Ym9hcmQiKXx8ZHAodCkpOiEwfXZhciBhcD17RXNjOiJlc2NhcGUiLEFycm93VXA6InVwIixBcnJvd0Rvd246ImRvd24iLEFycm93TGVmdDoibGVmdCIsQXJyb3dSaWdodDoicmlnaHQiLEVudGVyOiJlbnRlciIsVGFiOiJ0YWIiLEJhY2tzcGFjZToiYmFja3NwYWNlIixIb21lOiJob21lIixFbmQ6ImVuZCIsUGFnZVVwOiJwYWdldXAiLFBhZ2VEb3duOiJwYWdlZG93biIsRGVsZXRlOiJkZWxldGUiLEluc2VydDoiaW5zZXJ0IiwiICI6InNwYWNlIn0sdXA9e3NwYWNlOiIgIix0YWI6IgkiLHNoaWZ0X3RhYjoiXHgxQltaIixiYWNrc3BhY2U6Ilx4N0YiLGhvbWU6Ilx4MUJbSCIsZW5kOiJceDFCW0YiLHBhZ2V1cDoiXHgxQls1fiIscGFnZWRvd246Ilx4MUJbNn4iLGRlbGV0ZToiXHgxQlszfiIsaW5zZXJ0OiJceDFCWzJ+In0sR3M9eyIgIjowLCJbIjoyNywiXFwiOjI4LCJdIjoyOSwiXiI6MzAsXzozMX0sc3A9NDAwLG9wPTEwLGxwPTgsZmk9NTQsb249OCxGYT1be2tleToiZW50ZXIiLGxhYmVsOiJFbnRlciJ9LHtrZXk6ImN0cmxfYyIsbGFiZWw6IkN0cmwrQyJ9LHtrZXk6ImVzY2FwZSIsbGFiZWw6IkVzYyJ9LHtrZXk6InNoaWZ0X3RhYiIsbGFiZWw6IlNoaWZ0K1RhYiJ9XSxjcD1uZXcgU2V0KFsibWluaS1rZXlib2FyZC1mYWIiLCJtaW5pLWtleWJvYXJkLXRvZ2dsZSIsInRlcm1pbmFsLWludGVyYWN0aXZlLXRvZ2dsZSJdKTtmdW5jdGlvbiBkcChlKXtyZXR1cm4hIShlJiZjcC5oYXMoZS5pZCkpfXZhciBmcD1uZXcgU2V0KFsiY3RybCIsImFsdCIsInNoaWZ0Il0pO2Z1bmN0aW9uIFlzKGUpe3JldHVybiBmcC5oYXMoZSl9ZnVuY3Rpb24gcHAoZSl7cmV0dXJuIHVwW2VdfHwiIn1mdW5jdGlvbiB2cChlKXt2YXIgdD1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuIHQ+PSJhIiYmdDw9InoiP1N0cmluZy5mcm9tQ2hhckNvZGUodC5jaGFyQ29kZUF0KDApLTk2KTpPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoR3MsdCk/U3RyaW5nLmZyb21DaGFyQ29kZShHc1t0XSk6IiJ9ZnVuY3Rpb24gbXAoZSl7cmV0dXJuIGFwW2Uua2V5XXx8ZS5rZXl9ZnVuY3Rpb24gZ3AoZSx0KXtyZXR1cm57Y3RybDplLmN0cmxLZXksYWx0OmUuYWx0S2V5LHNoaWZ0OmUuc2hpZnRLZXkmJih0Lmxlbmd0aD09PTF8fHQ9PT0idGFiIiksbWV0YTplLm1ldGFLZXl9fWZ1bmN0aW9uIFFzKGUsdCl7ZSYmYnQoZSx0KS5jYXRjaChmdW5jdGlvbigpe30pfWZ1bmN0aW9uIGhwKCl7Y28oKX1mdW5jdGlvbiB3YShlKXtyLmtleWJvYXJkUG9wdXBPcGVuPSExLGUhPT0hMSYmdmkoKSxicCgpfWZ1bmN0aW9uIHlwKCl7YmEoKSYmSW4oIXIudGVybWluYWxJbnRlcmFjdGl2ZSl9ZnVuY3Rpb24gSW4oZSl7dmFyIHQ9ISFlJiZiYSgpO3IudGVybWluYWxJbnRlcmFjdGl2ZSE9PXQmJihyLnRlcm1pbmFsSW50ZXJhY3RpdmU9dCx0PyhGcCgpLHdhKCExKSxocCgpLGsoIlx1N0VDOFx1N0FFRlx1NEVBNFx1NEU5Mlx1NkEyMVx1NUYwRlx1NURGMlx1NUYwMFx1NTQyRiIsImluZm8iKSk6KHdwKCksdmkoKSksQnIoKSl9ZnVuY3Rpb24gQ2EoKXt2YXIgZT1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24obil7cmV0dXJuIG4uaWQ9PT1yLnNlbGVjdGVkSWR9KSx0PSFlfHxlLnN0YXR1cyE9PSJydW5uaW5nInx8ci5jdXJyZW50VmlldyE9PSJ0ZXJtaW5hbCI7aWYodCYmci50ZXJtaW5hbEludGVyYWN0aXZlKXtJbighMSk7cmV0dXJufSghZXx8ci5jdXJyZW50VmlldyE9PSJ0ZXJtaW5hbCIpJiZyLmtleWJvYXJkUG9wdXBPcGVuJiYoci5rZXlib2FyZFBvcHVwT3Blbj0hMSksQnIoKX1mdW5jdGlvbiBCcigpe3ZhciBlPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihFKXtyZXR1cm4gRS5pZD09PXIuc2VsZWN0ZWRJZH0pLHQ9YWUoZSksbj1lJiZlLnByb3ZpZGVyPT09ImNvZGV4IixpPXQ/ISEoZSYmZS5zdHJ1Y3R1cmVkU3RhdGUmJmUuc3RydWN0dXJlZFN0YXRlLmluRmxpZ2h0KTohIWUmJmUuc3RhdHVzPT09InJ1bm5pbmciLGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpLHU9WyJ0ZXJtaW5hbC1pbnRlcmFjdGl2ZS10b2dnbGUtdG9wIl07dS5mb3JFYWNoKGZ1bmN0aW9uKEUpe3ZhciBDPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKEUpO2lmKEMpe0MuY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIixyLnRlcm1pbmFsSW50ZXJhY3RpdmUpLEMuY2xhc3NMaXN0LnRvZ2dsZSgiaXMtb24iLHIudGVybWluYWxJbnRlcmFjdGl2ZSksQy5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLHR8fHIuY3VycmVudFZpZXchPT0idGVybWluYWwifHwhZSksQy5zZXRBdHRyaWJ1dGUoImFyaWEtY2hlY2tlZCIsci50ZXJtaW5hbEludGVyYWN0aXZlPyJ0cnVlIjoiZmFsc2UiKTt2YXIgYj1DLnF1ZXJ5U2VsZWN0b3IoIi5wbHVzLXBvcG92ZXItdG9nZ2xlLXN0YXRlIik7YiYmKGIudGV4dENvbnRlbnQ9ci50ZXJtaW5hbEludGVyYWN0aXZlPyJcdTVGMDAiOiJcdTUxNzMiKX19KTt2YXIgcz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuaW5wdXQtaGludCIpO3MmJihzLmNsYXNzTGlzdC50b2dnbGUoImhpZGRlbiIsdD8hMDpyLmN1cnJlbnRWaWV3PT09InRlcm1pbmFsIiksIXQmJmUmJihzLnRleHRDb250ZW50PW4/IkVudGVyIFx1NTNEMVx1OTAwMSBceEI3IGNoYXQgXHU0RTNBXHU4OUUzXHU2NzkwXHU4OUM2XHU1NkZFXHVGRjBDdGVybWluYWwgXHU0RTNBXHU1MzlGXHU1OUNCXHU4RjkzXHU1MUZBIjoiRW50ZXIgXHU1M0QxXHU5MDAxIFx4QjcgU2hpZnQrRW50ZXIgXHU2MzYyXHU4ODRDIikpO3ZhciBvPSF0JiYhaSYmeWEoZSk7YSYmKGEucGxhY2Vob2xkZXI9T28oZSxyLnRlcm1pbmFsSW50ZXJhY3RpdmUpLGEuZGlzYWJsZWQ9IXQmJiEhZSYmIWkmJiFvLGEuc2V0QXR0cmlidXRlKCJhcmlhLWRpc2FibGVkIixhLmRpc2FibGVkPyJ0cnVlIjoiZmFsc2UiKSxhLnJlYWRPbmx5PSExLGEuY2xhc3NMaXN0LnRvZ2dsZSgiaXMtdGVybWluYWwtcGFzc3Rocm91Z2giLCEhci50ZXJtaW5hbEludGVyYWN0aXZlKSk7dmFyIGw9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LWNvbXBvc2VyIik7bCYmci50ZXJtaW5hbEludGVyYWN0aXZlJiZsLmNsYXNzTGlzdC5jb250YWlucygidm9pY2UtbW9kZSIpJiYobC5jbGFzc0xpc3QucmVtb3ZlKCJ2b2ljZS1tb2RlIiksSWUucmVjb3JkaW5nPSExLG1hKCkpO3ZhciBjPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZW5kLWlucHV0LWJ1dHRvbiIpLGY9dCYmaTtjJiYoYy5kaXNhYmxlZD0hdCYmISFlJiYhaSYmIW8sYy5zZXRBdHRyaWJ1dGUoInRpdGxlIix0P2Y/Ilx1NjM5Mlx1OTYxRlx1NTNEMVx1OTAwMVx1RkYwOFx1NUY1M1x1NTI0RFx1NTZERVx1NTkwRFx1N0VEM1x1Njc1Rlx1NTQwRVx1NTkwNFx1NzQwNlx1RkYwOSI6Ilx1NTNEMVx1OTAwMSI6bj9pPyJcdTUzRDFcdTkwMDFcdTdFRDkgQ29kZXgiOiJDb2RleCBcdTRGMUFcdThCRERcdTVERjJcdTdFRDNcdTY3NUYiOiFlfHxpfHxvPyJcdTUzRDFcdTkwMDEiOiJcdTRGMUFcdThCRERcdTVERjJcdTdFRDNcdTY3NUYiKSxjLmNsYXNzTGlzdC50b2dnbGUoInF1ZXVlLW1vZGUiLGYpKTt2YXIgZD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3RvcC1idXR0b24iKTtpZihkKXt2YXIgdj10dShlKTtkLmNsYXNzTGlzdC50b2dnbGUoImhpZGRlbiIsIXYuYWN0aXZlKX12YXIgZz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3RvcC1idXR0b24iKTtpZihnKXt2YXIgaD10dShlKTtnLmNsYXNzTGlzdC50b2dnbGUoImhpZGRlbiIsIWguYWN0aXZlKX12YXIgbT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7bSYmbS5jbGFzc0xpc3QudG9nZ2xlKCJpbnRlcmFjdGl2ZSIsIXQmJnIudGVybWluYWxJbnRlcmFjdGl2ZSksbXMoKX1mdW5jdGlvbiBwaSgpe3ZhciBlPXdpbmRvdy5nZXRTZWxlY3Rpb24mJndpbmRvdy5nZXRTZWxlY3Rpb24oKTtpZighZXx8ZS5pc0NvbGxhcHNlZClyZXR1cm4hMTt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7aWYoIXQpcmV0dXJuITE7dmFyIG49ZS5hbmNob3JOb2RlO3JldHVybiBuJiZuLm5vZGVUeXBlPT09MyYmKG49bi5wYXJlbnROb2RlKSwhIShuJiZ0LmNvbnRhaW5zKG4pKX1mdW5jdGlvbiBCYShlKXtpZihKcyhlKSYmIWUubWV0YUtleSl7dmFyIHQ9bXAoZSk7aWYodCl7dmFyIG49Z3AoZSx0KTtpZighWXModCkmJiEobi5jdHJsJiZ0Lmxlbmd0aD09PTEmJnQudG9Mb3dlckNhc2UoKT09PSJjIiYmcGkoKSkpe3ZhciBpPVhzKHQsbik7aSYmKGUucHJldmVudERlZmF1bHQoKSxRcyhpLHQpKX19fX1mdW5jdGlvbiBFcCgpe3IudGVybWluYWwmJldkKDUwMCl9ZnVuY3Rpb24gYnAoKXttcigpfWZ1bmN0aW9uIGRnKGUpe2UucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpLCEoci5jdXJyZW50VmlldyE9PSJ0ZXJtaW5hbCJ8fCFyLnNlbGVjdGVkSWQpJiYoci5rZXlib2FyZFBvcHVwT3Blbj0hci5rZXlib2FyZFBvcHVwT3BlbixCcigpKX1mdW5jdGlvbiAkcygpe3Iua2V5Ym9hcmRQb3B1cE9wZW49ITEsQnIoKX1mdW5jdGlvbiBGcCgpe2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLEJhLCEwKX1mdW5jdGlvbiB3cCgpe2RvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLEJhLCEwKX1mdW5jdGlvbiBYcyhlLHQpe3ZhciBuPXR8fHtjdHJsOiExLGFsdDohMSxzaGlmdDohMX07aWYoWXMoZSkpcmV0dXJuIiI7aWYoZT09PSJ0YWIiJiZuLnNoaWZ0KXJldHVybiJceDFCW1oiO3ZhciBpPXBwKGUpO2lmKGkpcmV0dXJuIGk7aWYoZS5pbmRleE9mKCJjdHJsXyIpPT09MClyZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZShlLmNoYXJDb2RlQXQoZS5sZW5ndGgtMSktOTYpO3ZhciBhPURyKGUpO2lmKGEpcmV0dXJuIGE7aWYoIWUpcmV0dXJuIiI7dmFyIHU9ZS5sZW5ndGg9PT0xP2U6IiI7cmV0dXJuIHU/KG4uc2hpZnQmJih1PXUudG9VcHBlckNhc2UoKSksbi5jdHJsP3ZwKHUpOm4uYWx0PyJceDFCIit1OnUpOiIifWZ1bmN0aW9uIHZpKCl7ci5tb2RpZmllcnMuY3RybD0hMSxyLm1vZGlmaWVycy5hbHQ9ITEsci5tb2RpZmllcnMuc2hpZnQ9ITEsQ3AoKX1mdW5jdGlvbiBDcCgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtaW5pLWtleWJvYXJkIik7ZSYmWyJjdHJsIiwiYWx0Iiwic2hpZnQiXS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3ZhciBuPWUucXVlcnlTZWxlY3RvcignW2RhdGEta2V5PSInK3QrJyJdJyk7biYmbi5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLCEhci5tb2RpZmllcnNbdF0pfSl9ZnVuY3Rpb24gRHIoZSl7c3dpdGNoKGUpe2Nhc2UieWVzIjpyZXR1cm4ieVxyIjtjYXNlIm5vIjpyZXR1cm4iblxyIjtjYXNlInVwIjpyZXR1cm4iXHgxQltBIjtjYXNlImRvd24iOnJldHVybiJceDFCW0IiO2Nhc2UibGVmdCI6cmV0dXJuIlx4MUJbRCI7Y2FzZSJyaWdodCI6cmV0dXJuIlx4MUJbQyI7Y2FzZSJlbnRlciI6cmV0dXJuIlxyIjtjYXNlImN0cmxfYyI6cmV0dXJuIgMiO2Nhc2UiY3RybF9kIjpyZXR1cm4iBCI7Y2FzZSJjdHJsX2wiOnJldHVybiJcZiI7Y2FzZSJjdHJsX3UiOnJldHVybiIVIjtjYXNlImN0cmxfayI6cmV0dXJuIlx2IjtjYXNlImN0cmxfdyI6cmV0dXJuIhciO2Nhc2UiY3RybF96IjpyZXR1cm4iGiI7Y2FzZSJlc2NhcGUiOnJldHVybiJceDFCIjtkZWZhdWx0OnJldHVybiIifX1mdW5jdGlvbiBCcCgpe2lmKHIucGVuZGluZ01lc3NhZ2VzLmxlbmd0aCE9PTApe3ZhciBlPV90KCk7aWYoYWUoZSkpe3IucGVuZGluZ01lc3NhZ2VzPVtdO3JldHVybn12YXIgdD1EYXRlLm5vdygpLG49W10saT0wO3IucGVuZGluZ01lc3NhZ2VzLmZvckVhY2goZnVuY3Rpb24odSl7aWYodHlwZW9mIHU9PSJzdHJpbmciKXtuLnB1c2godSk7cmV0dXJufWlmKCEoIXV8fHR5cGVvZiB1LmlucHV0IT0ic3RyaW5nIikpe2lmKHQtKHUuYXR8fDApPlpmKXtpKys7cmV0dXJufW4ucHVzaCh1LmlucHV0KX19KSxyLnBlbmRpbmdNZXNzYWdlcz1bXSxpPjAmJmNvbnNvbGUubG9nKCJbd2FuZF0gZmx1c2hQZW5kaW5nTWVzc2FnZXM6IGRyb3BwZWQgIitpKyIgc3RhbGUgaW5wdXQocykiKTt2YXIgYT1Qcm9taXNlLnJlc29sdmUoKTtuLmZvckVhY2goZnVuY3Rpb24odSl7YT1hLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gRHAodSkuY2F0Y2goZnVuY3Rpb24oKXt9KX0pfSl9fWZ1bmN0aW9uIERwKGUpe2lmKCFlfHwhci5zZWxlY3RlZElkKXJldHVybiBQcm9taXNlLnJlc29sdmUoKTt2YXIgdD1yLnNlbGVjdGVkSWQ7cmV0dXJuIGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrdCsiL2lucHV0Iix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7aW5wdXQ6ZSx2aWV3OnIuY3VycmVudFZpZXd9KX0pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIG4ub2s/bi5qc29uKCk6bi5qc29uKCkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm57ZXJyb3I6Ilx1OEJGN1x1NkM0Mlx1NTkzMVx1OEQyNSJ9fSkudGhlbihmdW5jdGlvbihpKXt2YXIgYT1WcyhpKTtpZihhLmh0dHBTdGF0dXM9bi5zdGF0dXMsS3MoYSkpcmV0dXJuIGNvbnNvbGUubG9nKCJbd2FuZF0gc2VuZElucHV0RGlyZWN0OiBzZXNzaW9uIHVuYXZhaWxhYmxlLCBkcm9wcGluZyIse3Nlc3Npb25JZDp0LGVycm9yQ29kZTphLmVycm9yQ29kZX0pLG51bGw7dGhyb3cgYX0pfSkudGhlbihmdW5jdGlvbihuKXtyZXR1cm4gbiYmbi5pZCYmKFEobiksbi5pZD09PXIuc2VsZWN0ZWRJZCYmKG4ubWVzc2FnZXMmJm4ubWVzc2FnZXMubGVuZ3RoPjAmJihyLmN1cnJlbnRNZXNzYWdlcz1uLm1lc3NhZ2VzKSxVZSghMCkpKSxufSl9ZnVuY3Rpb24gRGEoKXtpZihyLnNlbGVjdGVkSWQpe3ZhciBlPXIuc2VsZWN0ZWRJZDtCcyhMZSgic3RvcC5jb25maXJtLm1lc3NhZ2UiKSx7dGl0bGU6TGUoInN0b3AuY29uZmlybS50aXRsZSIpLGRhbmdlcjohMCxva0xhYmVsOkxlKCJzdG9wLmNvbmZpcm0ub2siKSxjYW5jZWxMYWJlbDpMZSgic3RvcC5jb25maXJtLmNhbmNlbCIpfSkudGhlbihmdW5jdGlvbih0KXt0JiZyLnNlbGVjdGVkSWQ9PT1lJiZmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2UrIi9zdG9wIix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihqdCl9KX19ZnVuY3Rpb24gWnMoZSl7dmFyIHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLnNlc3Npb24taXRlbVtkYXRhLXNlc3Npb24taWQ9IicrZSsnIl0nKTt0JiZ0LmNsYXNzTGlzdC5hZGQoImRlbGV0aW5nIiksc2V0VGltZW91dChmdW5jdGlvbigpe2ZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZSx7bWV0aG9kOiJERUxFVEUiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obil7aWYobiYmbi5lcnJvcil0aHJvdyBuZXcgRXJyb3Iobi5lcnJvcik7cmV0dXJuIHIuc2VsZWN0ZWRJZD09PWUmJihyLnNlbGVjdGVkSWQ9bnVsbCxGZSgpKSxqdCgpfSkuY2F0Y2goZnVuY3Rpb24oKXt0JiZ0LmNsYXNzTGlzdC5yZW1vdmUoImRlbGV0aW5nIik7dmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFjdGlvbi1lcnJvciIpO1BlKG4sIlx1NjVFMFx1NkNENVx1NTIyMFx1OTY2NFx1NEYxQVx1OEJERFx1MzAwMiIpfSl9LDI1MCl9ZnVuY3Rpb24gZW8oZSx0KXt0JiZ0LmNsYXNzTGlzdC5hZGQoImRlbGV0aW5nIiksc2V0VGltZW91dChmdW5jdGlvbigpe2ZldGNoKCIvYXBpL2NsYXVkZS1oaXN0b3J5LyIrZW5jb2RlVVJJQ29tcG9uZW50KGUpLHttZXRob2Q6IkRFTEVURSIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIG4uanNvbigpfSkudGhlbihmdW5jdGlvbihuKXtpZihuJiZuLmVycm9yKXRocm93IG5ldyBFcnJvcihuLmVycm9yKTtyLmNsYXVkZUhpc3Rvcnk9ci5jbGF1ZGVIaXN0b3J5LmZpbHRlcihmdW5jdGlvbihpKXtyZXR1cm4gaS5jbGF1ZGVTZXNzaW9uSWQhPT1lfSksZGVsZXRlIHIuc2VsZWN0ZWRDbGF1ZGVIaXN0b3J5SWRzW2VdLHZlKCl9KS5jYXRjaChmdW5jdGlvbigpe3QmJnQuY2xhc3NMaXN0LnJlbW92ZSgiZGVsZXRpbmciKTt2YXIgbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYWN0aW9uLWVycm9yIik7UGUobiwiXHU2NUUwXHU2Q0Q1XHU1MjIwXHU5NjY0XHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHUzMDAyIil9KX0sMjUwKX1mdW5jdGlvbiBmZyhlLHQpe2VvKGUsdCl9ZnVuY3Rpb24ga3AoZSx0LG4pe2UmJmZldGNoKCIvYXBpL2NsYXVkZS1oaXN0b3J5P2N3ZD0iK2VuY29kZVVSSUNvbXBvbmVudChlKSx7bWV0aG9kOiJERUxFVEUiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoaSYmaS5lcnJvcil0aHJvdyBuZXcgRXJyb3IoaS5lcnJvcik7ci5jbGF1ZGVIaXN0b3J5PXIuY2xhdWRlSGlzdG9yeS5maWx0ZXIoZnVuY3Rpb24oYSl7cmV0dXJuIGEuY3dkIT09ZX0pLHZlKCl9KS5jYXRjaChmdW5jdGlvbigpe3RvKG4sITEpO3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhY3Rpb24tZXJyb3IiKTtQZShpLCJcdTY1RTBcdTZDRDVcdTZFMDVcdTc0MDZcdThCRTVcdTc2RUVcdTVGNTVcdTc2ODRcdTUzODZcdTUzRjJcdTRGMUFcdThCRERcdTMwMDIiKX0pfWZ1bmN0aW9uIHRvKGUsdCl7ZS5mb3JFYWNoKGZ1bmN0aW9uKG4pe24uY2xhc3NMaXN0LnRvZ2dsZSgiZGVsZXRpbmciLHQpfSl9ZnVuY3Rpb24gQXAoZSl7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5jbGF1ZGUtaGlzdG9yeS1pdGVtW2RhdGEtY3dkPSInK3dpbmRvdy5DU1MuZXNjYXBlKFN0cmluZyhlKSkrJyJdJykpfXZhciBubz1udWxsLGtyPW51bGw7ZnVuY3Rpb24gQXIoKXtpZihrcil7a3IuY2xhc3NMaXN0LnJlbW92ZSgic3dpcGVkIik7dmFyIGU9a3IucXVlcnlTZWxlY3RvcigiLnNlc3Npb24taXRlbS1jb250ZW50Iik7ZSYmKGUuc3R5bGUudHJhbnNmb3JtPSIiKSxrcj1udWxsfX1mdW5jdGlvbiB4cChlKXtubz1udWxsLGtyPW51bGx9ZnVuY3Rpb24gU3AoZSx0LG4pe2U9PT0iY2xhdWRlIiYmKHIucHJlZmVycmVkQ29tbWFuZD1lLHIuY2hhdE1vZGU9eHQoZSxyLmNoYXRNb2RlKSk7dmFyIGk9ci5jaGF0TW9kZWx8fHIuY29uZmlnJiZyLmNvbmZpZy5kZWZhdWx0TW9kZWx8fCIiO3JldHVybiBmZXRjaCgiL2FwaS9jb21tYW5kcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoaHQoe2NvbW1hbmQ6ZSxjd2Q6dHx8IiIsbW9kZTpyLmNoYXRNb2RlfHxyLmNvbmZpZy5kZWZhdWx0TW9kZXx8ImRlZmF1bHQiLG1vZGVsOml8fHZvaWQgMCx0aGlua2luZ0VmZm9ydDpyLmNoYXRUaGlua2luZ3x8dm9pZCAwfSkpfSkudGhlbihmdW5jdGlvbihhKXtyZXR1cm4gYS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGEpe3JldHVybiBhLmVycm9yPyhuJiZQZShuLGEuZXJyb3IpLG51bGwpOihyLnNlbGVjdGVkSWQ9YS5pZCxGZSgpLHIuZHJhZnRzW2EuaWRdPSIiLGEpfSl9dmFyIGthPSExO2Z1bmN0aW9uIHJvKGUsdCl7cmV0dXJuIWV8fGthP1Byb21pc2UucmVzb2x2ZShudWxsKTooa2E9ITAsZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoZSkrIi9yZXN1bWUiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGh0KHttb2RlOnIuY2hhdE1vZGV8fHIuY29uZmlnLmRlZmF1bHRNb2RlfHwiZGVmYXVsdCJ9KSl9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIG4uZXJyb3I/KHQ/UGUodCxuLmVycm9yKTprKG4uZXJyb3IsImVycm9yIiksbnVsbCk6KHIuc2VsZWN0ZWRJZD1uLmlkLEZlKCksci5kcmFmdHNbbi5pZF09IiIsbil9KS5jYXRjaChmdW5jdGlvbihuKXt2YXIgaT1uJiZuLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTYwNjJcdTU5MERcdTRGMUFcdThCRERcdTMwMDIiO3JldHVybiB0P1BlKHQsaSk6ayhpLCJlcnJvciIpLG51bGx9KS5maW5hbGx5KGZ1bmN0aW9uKCl7a2E9ITF9KSl9ZnVuY3Rpb24gcGcoZSx0KXtyZXR1cm4gZT9mZXRjaCgiL2FwaS9jbGF1ZGUtc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoZSkrIi9yZXN1bWUiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGh0KHttb2RlOnIuY2hhdE1vZGV8fHIuY29uZmlnLmRlZmF1bHRNb2RlfHwiZGVmYXVsdCJ9KSl9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIG4uZXJyb3I/KHQ/UGUodCxuLmVycm9yKTprKG4uZXJyb3IsImVycm9yIiksbnVsbCk6KHIuY2xhdWRlSGlzdG9yeT1yLmNsYXVkZUhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKGkpe3JldHVybiBpLmNsYXVkZVNlc3Npb25JZCE9PWV9KSxyLnNlbGVjdGVkSWQ9bi5pZCxGZSgpLHIuZHJhZnRzW24uaWRdPSIiLG4pfSkuY2F0Y2goZnVuY3Rpb24obil7dmFyIGk9biYmbi5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU2MzA5IENsYXVkZSBcdTRGMUFcdThCREQgSUQgXHU2MDYyXHU1OTBEXHU0RjFBXHU4QkREXHUzMDAyIjtyZXR1cm4gdD9QZSh0LGkpOmsoaSwiZXJyb3IiKSxudWxsfSk6UHJvbWlzZS5yZXNvbHZlKG51bGwpfWZ1bmN0aW9uIGxuKGUpe3JldHVybiFlfHwhZS5pZD9Qcm9taXNlLnJlc29sdmUoKTooci5zZWxlY3RlZElkPWUuaWQsRmUoKSxyLmN1cnJlbnRNZXNzYWdlcz1bXSxncigpLGt0KCksQ3IoZS5pZCksUShlKSx2ZSgpLFRuKGUuaWQpLHBuKGUuaWQpLnRoZW4oZnVuY3Rpb24oKXtOdCghMCl9KSl9ZnVuY3Rpb24gaW8oZSl7cmV0dXJuIHJvKGUpLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQ/KHQuY2xhdWRlU2Vzc2lvbklkJiYodC5wcm92aWRlcj09PSJjb2RleCI/ci5jb2RleEhpc3Rvcnk9ci5jb2RleEhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKG4pe3JldHVybiBuLmNsYXVkZVNlc3Npb25JZCE9PXQuY2xhdWRlU2Vzc2lvbklkfSk6ci5jbGF1ZGVIaXN0b3J5PXIuY2xhdWRlSGlzdG9yeS5maWx0ZXIoZnVuY3Rpb24obil7cmV0dXJuIG4uY2xhdWRlU2Vzc2lvbklkIT09dC5jbGF1ZGVTZXNzaW9uSWR9KSksbG4odCkudGhlbihmdW5jdGlvbigpe3JldHVybiB0fSkpOm51bGx9KX1mdW5jdGlvbiB2ZyhlLHQsbil7cmV0dXJuIFNwKGUsdCxuKS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpP2xuKGkpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gaX0pOm51bGx9KX1mdW5jdGlvbiBtZyhlKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid2VsY29tZS1pbnB1dCIpO2lmKHQpe3QucGxhY2Vob2xkZXI9Ilx1NkI2M1x1NTcyOFx1NjAxRFx1ODAwM1x1MjAyNiIsdC5kaXNhYmxlZD0hMDt2YXIgbj1yLmNoYXRNb2RlfHwibWFuYWdlZCIsaT0kZSgpLGE9bXQoKSx1PXIuY2hhdE1vZGVsfHxyLmNvbmZpZyYmci5jb25maWcuZGVmYXVsdE1vZGVsfHwiIjtmZXRjaCgiL2FwaS9jb21tYW5kcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoaHQoe2NvbW1hbmQ6YSxjd2Q6aSxtb2RlOm4saW5pdGlhbElucHV0OmUsbW9kZWw6dXx8dm9pZCAwLHRoaW5raW5nRWZmb3J0OnIuY2hhdFRoaW5raW5nfHx2b2lkIDB9KSl9KS50aGVuKGZ1bmN0aW9uKHMpe3JldHVybiBzLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24ocyl7cmV0dXJuIHMuZXJyb3I/KGsocy5lcnJvciwiZXJyb3IiKSx0LnBsYWNlaG9sZGVyPSJcdThGOTNcdTUxNjVcdTZEODhcdTYwNkYiLHQuZGlzYWJsZWQ9ITEsbnVsbCk6bG4ocyl9KS5jYXRjaChmdW5jdGlvbihzKXtrKHMmJnMubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOFx1NEYxQVx1OEJERFx1MzAwMiIsImVycm9yIiksdC5wbGFjZWhvbGRlcj0iXHU4RjkzXHU1MTY1XHU2RDg4XHU2MDZGIix0LmRpc2FibGVkPSExfSkuZmluYWxseShmdW5jdGlvbigpe3QucGxhY2Vob2xkZXI9Ilx1OEY5M1x1NTE2NVx1NkQ4OFx1NjA2RiIsdC5kaXNhYmxlZD0hMX0pfX1mdW5jdGlvbiBnZyhlLHQsbil7dmFyIGk9ci5jaGF0TW9kZXx8Im1hbmFnZWQiLGE9JGUoKSx1PW10KCkscz1yLmNoYXRNb2RlbHx8ci5jb25maWcmJnIuY29uZmlnLmRlZmF1bHRNb2RlbHx8IiI7ZmV0Y2goIi9hcGkvY29tbWFuZHMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGh0KHtjb21tYW5kOnUsY3dkOmEsbW9kZTppLGluaXRpYWxJbnB1dDplfHx2b2lkIDAsbW9kZWw6c3x8dm9pZCAwLHRoaW5raW5nRWZmb3J0OnIuY2hhdFRoaW5raW5nfHx2b2lkIDB9KSl9KS50aGVuKGZ1bmN0aW9uKG8pe3JldHVybiBvLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obyl7cmV0dXJuIG8uZXJyb3I/KGsoby5lcnJvciwiZXJyb3IiKSxudWxsKToodCYmKHQudmFsdWU9IiIpLG4mJihuLnZhbHVlPSIiKSxsbihvKSl9KS5jYXRjaChmdW5jdGlvbihvKXtrKG8mJm8ubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOFx1NEYxQVx1OEJERFx1MzAwMiIsImVycm9yIil9KX1mdW5jdGlvbiBJcChlKXtlLmRpc2FibGVkPSEwLGlvKGUuZGF0YXNldC5zZXNzaW9uSWQpLmZpbmFsbHkoZnVuY3Rpb24oKXtlLmRpc2FibGVkPSExfSl9ZnVuY3Rpb24gVHAoZSl7dmFyIHQ9ZS5kYXRhc2V0LmNsYXVkZVNlc3Npb25JZCxuPWUuZGF0YXNldC5jd2Q7dCYmKGUuZGlzYWJsZWQ9ITAsTHAodCxuKS50aGVuKGZ1bmN0aW9uKGkpe2kmJmkuaWQmJihyLmNvZGV4SGlzdG9yeT1yLmNvZGV4SGlzdG9yeS5maWx0ZXIoZnVuY3Rpb24oYSl7cmV0dXJuIGEuY2xhdWRlU2Vzc2lvbklkIT09dH0pLHIuc2VsZWN0ZWRJZD1pLmlkLEZlKCksci5kcmFmdHNbaS5pZF09IiIsbG4oaSkudGhlbihmdW5jdGlvbigpe1d0KCl9KSl9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ZS5kaXNhYmxlZD0hMX0pKX1mdW5jdGlvbiBMcChlLHQpe3JldHVybiBmZXRjaCgiL2FwaS9jb2RleC1zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChlKSsiL3Jlc3VtZSIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoaHQoe21vZGU6ci5jaGF0TW9kZXx8ci5jb25maWcmJnIuY29uZmlnLmRlZmF1bHRNb2RlfHwiZGVmYXVsdCIsY3dkOnR9KSl9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIG4uZXJyb3I/KGsobi5lcnJvciwiZXJyb3IiKSxudWxsKTpufSkuY2F0Y2goZnVuY3Rpb24obil7cmV0dXJuIGsobiYmbi5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU2MDYyXHU1OTBEXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHUzMDAyIiwiZXJyb3IiKSxudWxsfSl9ZnVuY3Rpb24gTXAoZSl7dmFyIHQ9ZS5kYXRhc2V0LmNsYXVkZVNlc3Npb25JZDt0JiZEbigiXHU3ODZFXHU4QkE0XHU5NjkwXHU4NUNGXHU4RkQ5XHU2NzYxIENvZGV4IFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERFx1NTQxN1x1RkYxRiIse3RpdGxlOiJcdTk2OTBcdTg1Q0YgQ29kZXggXHU1Mzg2XHU1M0YyIixva0xhYmVsOiJcdTk2OTBcdTg1Q0YifSkudGhlbihmdW5jdGlvbihuKXtpZihuKXt2YXIgaT1lLmNsb3Nlc3QoIi5jbGF1ZGUtaGlzdG9yeS1pdGVtIik7aSYmKGkuc3R5bGUub3BhY2l0eT0iMC41IiksZmV0Y2goIi9hcGkvY29kZXgtaGlzdG9yeS8iK2VuY29kZVVSSUNvbXBvbmVudCh0KSx7bWV0aG9kOiJERUxFVEUiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGEpe3JldHVybiBhLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oYSl7YSYmYS5vaz8oci5jb2RleEhpc3Rvcnk9ci5jb2RleEhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKHUpe3JldHVybiB1LmNsYXVkZVNlc3Npb25JZCE9PXR9KSx2ZSgpKTppJiYoaS5zdHlsZS5vcGFjaXR5PSIxIil9KS5jYXRjaChmdW5jdGlvbigpe2kmJihpLnN0eWxlLm9wYWNpdHk9IjEiKX0pfX0pfWZ1bmN0aW9uIE9wKGUpe3ZhciB0PWUuZGF0YXNldC5jbGF1ZGVTZXNzaW9uSWQsbj1lLmRhdGFzZXQuY3dkO3QmJihlLmRpc2FibGVkPSEwLG1pKHQsbikudGhlbihmdW5jdGlvbihpKXtpJiZpLmlkJiYoci5jbGF1ZGVIaXN0b3J5PXIuY2xhdWRlSGlzdG9yeS5maWx0ZXIoZnVuY3Rpb24oYSl7cmV0dXJuIGEuY2xhdWRlU2Vzc2lvbklkIT09dH0pLHIuc2VsZWN0ZWRJZD1pLmlkLEZlKCksci5kcmFmdHNbaS5pZF09IiIsbG4oaSkudGhlbihmdW5jdGlvbigpe1d0KCl9KSl9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ZS5kaXNhYmxlZD0hMX0pKX1mdW5jdGlvbiBtaShlLHQpe3JldHVybiBmZXRjaCgiL2FwaS9jbGF1ZGUtc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoZSkrIi9yZXN1bWUiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGh0KHttb2RlOnIuY2hhdE1vZGV8fHIuY29uZmlnJiZyLmNvbmZpZy5kZWZhdWx0TW9kZXx8ImRlZmF1bHQiLGN3ZDp0fSkpfSkudGhlbihmdW5jdGlvbihuKXtyZXR1cm4gbi5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLmVycm9yPyhrKG4uZXJyb3IsImVycm9yIiksbnVsbCk6bn0pLmNhdGNoKGZ1bmN0aW9uKG4pe3JldHVybiBrKG4mJm4ubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NjA2Mlx1NTkwRFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERFx1MzAwMiIsImVycm9yIiksbnVsbH0pfWZ1bmN0aW9uIHhyKCl7cmV0dXJuIm9udG91Y2hzdGFydCJpbiB3aW5kb3d8fG5hdmlnYXRvci5tYXhUb3VjaFBvaW50cz4wfWZ1bmN0aW9uIE50KGUpe2lmKCFyLnRlcm1pbmFsSW50ZXJhY3RpdmUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTshdHx8IXIuc2VsZWN0ZWRJZHx8ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCE9PXQmJihlJiZ4cigpfHxBYSh0KSl9fWZ1bmN0aW9uIGhnKCl7dmFyIGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmNoYXQtbWVzc2FnZXMiKTtlJiYoZS5zY3JvbGxUb3A9MCl9ZnVuY3Rpb24gYW8oKXt2YXIgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuaW5wdXQtcGFuZWwiKTtlJiZlLnN0eWxlLnJlbW92ZVByb3BlcnR5KCItLWtleWJvYXJkLW9mZnNldCIpfWZ1bmN0aW9uIHVvKCl7dmFyIGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LXBhbmVsIik7ZSYmZS5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgiLS1rZXlib2FyZC1vZmZzZXQiKX1mdW5jdGlvbiBnaShlKXtpZihlKXt2YXIgdD1lLnNlbGVjdGlvblN0YXJ0LG49ZS5zZWxlY3Rpb25FbmQ7aGkoZSksdHlwZW9mIHQ9PSJudW1iZXIiJiZ0eXBlb2Ygbj09Im51bWJlciImJmUuc2V0U2VsZWN0aW9uUmFuZ2UodCxuKX19ZnVuY3Rpb24gc28oZSl7IWV8fGUuZGF0YXNldC50b3VjaFNjcm9sbEJvdW5kPT09InRydWUifHwoZS5kYXRhc2V0LnRvdWNoU2Nyb2xsQm91bmQ9InRydWUiLGUuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsZnVuY3Rpb24oKXtlLnNjcm9sbEhlaWdodDw9ZS5jbGllbnRIZWlnaHQrMXx8KGUuc2Nyb2xsVG9wPD0wP2Uuc2Nyb2xsVG9wPTE6ZS5zY3JvbGxUb3ArZS5jbGllbnRIZWlnaHQ+PWUuc2Nyb2xsSGVpZ2h0JiYoZS5zY3JvbGxUb3A9TWF0aC5tYXgoMSxlLnNjcm9sbEhlaWdodC1lLmNsaWVudEhlaWdodC0xKSkpfSx7cGFzc2l2ZTohMH0pKX1mdW5jdGlvbiBvbyhlKXtlJiYoSHQoZSksZ2koZSkpfWZ1bmN0aW9uIFBwKGUpe3ZhciB0PWUmJmUudGFyZ2V0P2UudGFyZ2V0OmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTt0JiYoYW8oKSxvbyh0KSl9ZnVuY3Rpb24gcXAoZSl7dmFyIHQ9ZSYmZS50YXJnZXQ/ZS50YXJnZXQ6ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO3VvKCksbHMoMjIwMCx0KTt2YXIgbj1bODAsMjAwLDM4MCw2MjAsOTAwXTtuLmZvckVhY2goZnVuY3Rpb24oaSxhKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7em4oITEpLGE9PT0xJiZ4cigpJiYob3QoImtleWJvYXJkLWJsdXIiLHtmb3JjZVJlcGxheTohMH0pLEV0KCJrZXlib2FyZCIpKX0saSl9KX1mdW5jdGlvbiBIcChlKXtlJiYoZS5zZXRTZWxlY3Rpb25SYW5nZShlLnZhbHVlLmxlbmd0aCxlLnZhbHVlLmxlbmd0aCksZ2koZSkpfWZ1bmN0aW9uIEFhKGUpe2UmJihlLmZvY3VzKHtwcmV2ZW50U2Nyb2xsOiEwfSksSHAoZSkpfWZ1bmN0aW9uIF9wKGUpe3NvKGUpLG9vKGUpfWZ1bmN0aW9uIE5wKGUpe0FhKGUpfWZ1bmN0aW9uIHlnKGUpe2FvKCksZ2koZSl9ZnVuY3Rpb24ganAoKXt1bygpfWZ1bmN0aW9uIFJwKGUpe2dpKGUpfWZ1bmN0aW9uIEVnKGUpe05wKGUpfWZ1bmN0aW9uIFdwKGUpe19wKGUpfWZ1bmN0aW9uIGJnKCl7anAoKX1mdW5jdGlvbiBGZyhlKXtScChlKX1mdW5jdGlvbiB6cChlLHQpe2lmKCFlfHwhdHx8ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCE9PXQpcmV0dXJuITE7dmFyIG49d2luZG93LmlubmVySGVpZ2h0LWUuaGVpZ2h0LWUub2Zmc2V0VG9wO2lmKG48PTUwKXJldHVybiExO3ZhciBpPXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7cmV0dXJuIGkuYm90dG9tPmUuaGVpZ2h0LTEyfWZ1bmN0aW9uIGhpKGUpe2lmKGUpe3ZhciB0PWUuc2Nyb2xsSGVpZ2h0PmUuY2xpZW50SGVpZ2h0KzE7aWYoIXQpe2Uuc2Nyb2xsVG9wPTA7cmV0dXJufWUuc2Nyb2xsVG9wPWUuc2Nyb2xsSGVpZ2h0fX1mdW5jdGlvbiBsbygpe2lmKHIudGVybWluYWxJbnRlcmFjdGl2ZSl7Y28oKTtyZXR1cm59aWYoIXhyKCkpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTshZXx8IXIuc2VsZWN0ZWRJZHx8ZG9jdW1lbnQuYWN0aXZlRWxlbWVudD09PWV8fEFhKGUpfX1mdW5jdGlvbiBjbygpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKTtlJiYoZS5zZXRBdHRyaWJ1dGUoInRhYmluZGV4IiwiMCIpLGUuZm9jdXMoKSxyLnRlcm1pbmFsJiZyLnRlcm1pbmFsLmZvY3VzJiZyLnRlcm1pbmFsLmZvY3VzKCkpfWZ1bmN0aW9uIFVwKCl7dmFyIGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LXBhbmVsIiksdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlcyIpO2lmKCJ2aXJ0dWFsS2V5Ym9hcmQiaW4gbmF2aWdhdG9yKXt2YXIgbj1uYXZpZ2F0b3IudmlydHVhbEtleWJvYXJkO24uYWRkRXZlbnRMaXN0ZW5lcigiZ2VvbWV0cnljaGFuZ2UiLGZ1bmN0aW9uKCl7ZSYmZS5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgicGFkZGluZy1ib3R0b20iKX0pfXZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKTtpJiZpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2xvKCl9KSx0JiZ0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihhKXt2YXIgdT1hLnRhcmdldDt1LnRhZ05hbWUhPT0iQSImJnUudGFnTmFtZSE9PSJCVVRUT04iJiYhdS5jbG9zZXN0KCJidXR0b24iKSYmIXUuY2xvc2VzdCgiW2RhdGEtdG9vbC10b2dnbGVdIikmJmxvKCl9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oYSl7aWYoeHIoKSl7dmFyIHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO2lmKCEoIXV8fGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPT11KSl7dmFyIHM9YS50YXJnZXQ7IXN8fHR5cGVvZiBzLmNsb3Nlc3QhPSJmdW5jdGlvbiJ8fHMuY2xvc2VzdCgiLmlucHV0LXBhbmVsIil8fHMuY2xvc2VzdCgiI21pbmkta2V5Ym9hcmQiKXx8cy5jbG9zZXN0KCIjbWluaS1rZXlib2FyZC1mYWIiKXx8cy5jbG9zZXN0KCIjbWluaS1rZXlib2FyZC10b2dnbGUiKXx8cy5jbG9zZXN0KCIjdGVybWluYWwtaW50ZXJhY3RpdmUtdG9nZ2xlIil8fHMuY2xvc2VzdCgiLndhbmQtam95c3RpY2stcm9vdCIpfHx1LmJsdXIoKX19fSwhMCl9ZnVuY3Rpb24geGEoKXt0cnl7d2luZG93LnNjcm9sbFRvKDAsMCl9Y2F0Y2h7fWRvY3VtZW50LnNjcm9sbGluZ0VsZW1lbnQmJihkb2N1bWVudC5zY3JvbGxpbmdFbGVtZW50LnNjcm9sbFRvcD0wKSxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJihkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wPTApLGRvY3VtZW50LmJvZHkmJihkb2N1bWVudC5ib2R5LnNjcm9sbFRvcD0wKX1mdW5jdGlvbiBVZShlKXtyLnJlbmRlclBlbmRpbmcmJiFlfHwoci5yZW5kZXJQZW5kaW5nPSEwLGU/KHlpKCEwKSxyLnJlbmRlclBlbmRpbmc9ITEpOnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe3lpKCExKSxyLnJlbmRlclBlbmRpbmc9ITF9KSl9ci5jaGF0UmVuZGVyVGltZXI9bnVsbDtmdW5jdGlvbiBmbyhlKXtpZighKHIuY2hhdFJlbmRlclRpbWVyJiYhZSkpe2lmKHIuY2hhdFJlbmRlclRpbWVyJiZjbGVhclRpbWVvdXQoci5jaGF0UmVuZGVyVGltZXIpLGUpe3IuY2hhdFJlbmRlclRpbWVyPW51bGwsVWUoKTtyZXR1cm59dmFyIHQ9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLmlkPT09ci5zZWxlY3RlZElkfSksbj10JiZ0LnN0YXR1cz09PSJydW5uaW5nIiYmdC5zZXNzaW9uS2luZCE9PSJzdHJ1Y3R1cmVkIixpPW4/YnM6RnM7ci5jaGF0UmVuZGVyVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe3IuY2hhdFJlbmRlclRpbWVyPW51bGw7dmFyIGE9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHUpe3JldHVybiB1LmlkPT09ci5zZWxlY3RlZElkfSk7YSYmKHIuY3VycmVudE1lc3NhZ2VzPWplKGEsWGUoYSxhLm91dHB1dCwhMCkpKSxVZSgpfSxpKX19ZnVuY3Rpb24gVnAoZSx0KXtpZighZXx8IXR8fHQubGVuZ3RoPT09MClyZXR1cm5bXTtmdW5jdGlvbiBuKEMpe3JldHVybiBDLnJlcGxhY2UoL1x4MUIoPzpbQC1aXFwtX118XFtbMC0/XSpbIC0vXSpbQC1+XSkvZywiIil9Zm9yKHZhciBpPW4oZSksYT1bXSx1PVtdLHM9MDtzPHQubGVuZ3RoO3MrKylpZih0W3NdLnJvbGU9PT0idXNlciIpe3ZhciBvPSIiLGw9dFtzXS5jb250ZW50O2lmKHR5cGVvZiBsPT0ic3RyaW5nIilvPWw7ZWxzZSBpZihBcnJheS5pc0FycmF5KGwpKXtmb3IodmFyIGM9MDtjPGwubGVuZ3RoO2MrKylpZihsW2NdLnR5cGU9PT0idGV4dCIpe289bFtjXS50ZXh0O2JyZWFrfX1vJiZ1LnB1c2goe3RleHQ6byxpbmRleDpzfSl9Zm9yKHZhciBmPTAscz0wO3M8dS5sZW5ndGg7cysrKXt2YXIgZD11W3NdLHY9aS5pbmRleE9mKCJcdTI3NkYgIitkLnRleHQsZik7aWYodj09PS0xJiYodj1pLmluZGV4T2YoYApcdTI3NkYgYCtkLnRleHQsZiksdiE9PS0xJiYodis9MSkpLHY+Zil7Zm9yKHZhciBnPWkuc3Vic3RyaW5nKGYsdiksaD1nLnNwbGl0KGAKYCksbT1bXSxjPTA7YzxoLmxlbmd0aDtjKyspe3ZhciBFPWhbY10udHJpbSgpOyFFfHxFLnN0YXJ0c1dpdGgoIlx1MjUwMFx1MjUwMFx1MjUwMFx1MjUwMCIpfHxFPT09Ilx1Mjc2RiJ8fEU9PT0iPyJ8fEU9PT0iInx8RS5pbmNsdWRlcygiQ2xhdWRlIENvZGUgdiIpfHxFLmluY2x1ZGVzKCJPcHVzIikmJkUuaW5jbHVkZXMoIndpdGgiKXx8RS5pbmNsdWRlcygiU29ubmV0IikmJkUuaW5jbHVkZXMoIndpdGgiKXx8RS5pbmNsdWRlcygiQVBJIFVzYWdlIil8fEUuaW5jbHVkZXMoIkJpbGxpbmciKXx8RS5pbmNsdWRlcygiZm9yIHNob3J0Y3V0cyIpfHxFLmluY2x1ZGVzKCIvZWZmb3J0Iil8fEUubWF0Y2goL15b4pa44paQ4pad4paY4paX4paW4paI4paM4paN4paO4paP4paU4paB4paC4paD4paE4paF4paG4paH4paI4paIXS8pfHxFLm1hdGNoKC9eW+KWuOKWkOKWneKWmOKWl+KWluKWiOKWjOKWjeKWjuKWj+KWlOKWgeKWguKWg+KWhOKWheKWhuKWh+KWiOKWiF17Myx9Lyl8fEUubGVuZ3RoPjMmJm0ucHVzaChFKX1tLmxlbmd0aD4wJiZhLnB1c2goe2JlZm9yZU1lc3NhZ2U6ZC5pbmRleCxjb250ZW50Om0uam9pbihgCmApfSl9Zj12K2QudGV4dC5sZW5ndGgrMn1yZXR1cm4gYX1mdW5jdGlvbiBTYShlKXtpZighZSlyZXR1cm4gbnVsbDt2YXIgdD1lLnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LW1lc3NhZ2VzIik7cmV0dXJuIHR8fCh0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHQuY2xhc3NOYW1lPSJjaGF0LW1lc3NhZ2VzIixlLmFwcGVuZENoaWxkKHQpLHQpfWZ1bmN0aW9uIHBvKGUsdCl7dmFyIG49U2EoZSk7cmV0dXJuIG4/KG4uaW5uZXJIVE1MPXQsYXIoKSxRZSgpLG4pOm51bGx9ZnVuY3Rpb24geWkoZSl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXQtb3V0cHV0Iik7aWYoIXQpcmV0dXJuO3ZhciBuPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbih6KXtyZXR1cm4gei5pZD09PXIuc2VsZWN0ZWRJZH0pO2lmKCFuKXtyLmxhc3RSZW5kZXJlZEVtcHR5IT09Im5vbmUiJiYocG8odCwnPGRpdiBjbGFzcz0iZW1wdHktc3RhdGUiPjxzdHJvbmc+XHU2NzJBXHU5MDA5XHU2MkU5XHU0RjFBXHU4QkREPC9zdHJvbmc+PGJyPlx1NzBCOVx1NTFGQlx1NEUwQVx1NjVCOVx1MzAwQ1x1NjVCMFx1NUJGOVx1OEJERFx1MzAwRFx1NUYwMFx1NTlDQlx1NEY2MFx1NzY4NFx1N0IyQ1x1NEUwMFx1NkIyMVx1NUJGOVx1OEJERFx1MzAwMjwvZGl2PicpLHIubGFzdFJlbmRlcmVkRW1wdHk9Im5vbmUiLHIubGFzdFJlbmRlcmVkTXNnQ291bnQ9MCk7cmV0dXJufXZhciBpPXIuY3VycmVudE1lc3NhZ2VzLGE9ZHYoaSk7aWYoTGE9ZnYoaSksaS5sZW5ndGg9PT0wKXtpZihyLmxhc3RSZW5kZXJlZEVtcHR5IT09ImVtcHR5Iil7dmFyIHU9IiI7YWUobikmJih1PSc8ZGl2IGNsYXNzPSJlbXB0eS1zdGF0ZS10cmlvLXdyYXAiPjxkaXYgY2xhc3M9ImVtcHR5LXN0YXRlLXRyaW8taGludCI+XHU5RUQ4XHU4QkE0XHU0RjFBXHU2MzA5XHU0RUU1XHU0RTBCXHU4QkJFXHU3RjZFXHU1M0QxXHU5MDAxXHVGRjBDXHU1M0VGXHU3MEI5XHU1MUZCXHU4QzAzXHU2NTc0XHVGRjFBPC9kaXY+Jyt6YShuLHtraW5kOiJkcm9wZG93biJ9KSsiPC9kaXY+IikscG8odCwnPGRpdiBjbGFzcz0iZW1wdHktc3RhdGUiPjxzdHJvbmc+XHU1QkY5XHU4QkREXHU1REYyXHU1RjAwXHU1OUNCPC9zdHJvbmc+PGJyPlx1NTcyOFx1NEUwQlx1NjVCOVx1OEY5M1x1NTE2NVx1Njg0Nlx1NTNEMVx1OTAwMVx1NkQ4OFx1NjA2Rlx1RkYwQ0NsYXVkZSBcdTRGMUFcdTgxRUFcdTUyQThcdTU2REVcdTU5MERcdTMwMDI8L2Rpdj4nK3UpLHIubGFzdFJlbmRlcmVkRW1wdHk9ImVtcHR5IixyLmxhc3RSZW5kZXJlZE1zZ0NvdW50PTB9cnUobnVsbCxuKSxUYShbXSk7cmV0dXJufXZhciBzPWkubGVuZ3RoO3M+ci5jaGF0UmVuZGVyZWRDb3VudCYmKHIuY2hhdFJlbmRlcmVkQ291bnQ9cyk7dmFyIG89TWF0aC5tYXgoMCxzLXIuY2hhdFJlbmRlcmVkQ291bnQpLGw9bz4wP2kuc2xpY2Uobyk6aSxjPXR5cGVvZiBuLm1lc3NhZ2VPZmZzZXQ9PSJudW1iZXIiJiZuLm1lc3NhZ2VPZmZzZXQ+MCxmPW8+MHx8YyxkPWwubGVuZ3RoLHY9bi5vdXRwdXQ/bi5vdXRwdXQubGVuZ3RoOjA7aWYobi5tZXNzYWdlcyYmbi5tZXNzYWdlcy5sZW5ndGg+MCl7Zm9yKHZhciBnPTAsaD0wLG09MDttPG4ubWVzc2FnZXMubGVuZ3RoO20rKyl7dmFyIEU9bi5tZXNzYWdlc1ttXS5jb250ZW50O2lmKEUpaWYoQXJyYXkuaXNBcnJheShFKSl7Zys9RS5sZW5ndGg7Zm9yKHZhciBDPTA7QzxFLmxlbmd0aDtDKyspe3ZhciBiPUVbQ107Yi50ZXh0JiYoaCs9Yi50ZXh0Lmxlbmd0aCksYi50aGlua2luZyYmKGgrPWIudGhpbmtpbmcubGVuZ3RoKSxiLmNvbnRlbnQmJihoKz1iLmNvbnRlbnQubGVuZ3RoKSxiLmlkJiYoaCs9Yi5pZC5sZW5ndGgpLGIudG9vbF91c2VfaWQmJihoKz1iLnRvb2xfdXNlX2lkLmxlbmd0aCksYi5kZXNjcmlwdGlvbiYmKGgrPWIuZGVzY3JpcHRpb24ubGVuZ3RoKSxiLmlucHV0JiYoaCs9SlNPTi5zdHJpbmdpZnkoYi5pbnB1dCkubGVuZ3RoKX19ZWxzZSBnKz0xLGg9U3RyaW5nKEUpLmxlbmd0aH12PWQqMWU1K2cqMWUzK2h9dmFyIEI9ZXx8ZCE9PXIubGFzdFJlbmRlcmVkTXNnQ291bnQ7aWYoIUImJmQ9PT1yLmxhc3RSZW5kZXJlZE1zZ0NvdW50JiZ2PT09ci5sYXN0UmVuZGVyZWRIYXNoKXt2YXIgRj10LnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LW1lc3NhZ2VzIik7RiYmcnUoRixuKSxUYShpKTtyZXR1cm59dmFyIHg9ci5sYXN0UmVuZGVyZWRIYXNoLFM9ci5sYXN0UmVuZGVyZWRNc2dDb3VudDtpZihyLmxhc3RSZW5kZXJlZE1zZ0NvdW50PWQsci5sYXN0UmVuZGVyZWRIYXNoPXYsRj1TYSh0KSwhRilyZXR1cm47dmFyIGo9X2koRiksUj1GLnF1ZXJ5U2VsZWN0b3JBbGwoIi5jaGF0LW1lc3NhZ2U6bm90KC5zeXN0ZW0taW5mbykiKS5sZW5ndGgsJD1CfHxSPT09MHx8ZCE9PVI7ZnVuY3Rpb24gSSgpe2Zvcih2YXIgej1WcChuLm91dHB1dCxsKSxsZT0iIixtZT1sLnNsaWNlKCkucmV2ZXJzZSgpLG5lPWwubGVuZ3RoLGNlPTA7Y2U8bWUubGVuZ3RoO2NlKyspe2Zvcih2YXIgVmU9bWVbY2VdLGR0PW5lLTEtY2UsVXQ9ZHQrbyxaZT1udWxsLGV0PTA7ZXQ8ei5sZW5ndGg7ZXQrKylpZih6W2V0XS5iZWZvcmVNZXNzYWdlPT09ZHQpe1plPXpbZXRdO2JyZWFrfVplJiYobGUrPSc8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2Ugc3lzdGVtLWluZm8iPjxkaXYgY2xhc3M9InN5c3RlbS1pbmZvLWNhcmQiPjxkaXYgY2xhc3M9InN5c3RlbS1pbmZvLWhlYWRlciI+XHUyMTM5XHVGRTBGIFx1N0NGQlx1N0VERlx1NEZFMVx1NjA2RjwvZGl2PjxkaXYgY2xhc3M9InN5c3RlbS1pbmZvLWNvbnRlbnQiPicrcChaZS5jb250ZW50KSsiPC9kaXY+PC9kaXY+PC9kaXY+IiksbGUrPU9hKFZlLFRbVXRdfHxudWxsLFV0LGEpfWlmKGYpe3ZhciB0dD1vPjA/Ilx1NTJBMFx1OEY3RFx1NjZGNFx1NjVFOVx1NzY4NCAiK01hdGgubWluKHIuY2hhdFBhZ2VTaXplLG8pKyIgXHU2NzYxXHU2RDg4XHU2MDZGIjoiXHU1MkEwXHU4RjdEXHU2NkY0XHU2NUU5XHU3Njg0XHU2RDg4XHU2MDZGIjtsZSs9JzxkaXYgY2xhc3M9ImNoYXQtbG9hZC1tb3JlIiBpZD0iY2hhdC1sb2FkLW1vcmUtc2VudGluZWwiPjxidXR0b24gY2xhc3M9ImNoYXQtbG9hZC1tb3JlLWJ0biIgdHlwZT0iYnV0dG9uIj4nK3R0KyI8L2J1dHRvbj48L2Rpdj4ifXZhciBGdD0tMSxudD0wO2lmKFI+MCYmIWopZm9yKHZhciBydD1GLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCxEZT1GLnF1ZXJ5U2VsZWN0b3JBbGwoIi5jaGF0LW1lc3NhZ2U6bm90KC5zeXN0ZW0taW5mbykiKSxkZT0wO2RlPERlLmxlbmd0aDtkZSsrKXt2YXIgd2U9RGVbZGVdLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2lmKHdlLmJvdHRvbT49cnQpe3ZhciB3PURlW2RlXS5nZXRBdHRyaWJ1dGUoImRhdGEtbXNnLWluZGV4Iik7dyE9bnVsbCYmKEZ0PXBhcnNlSW50KHcsMTApLG50PXdlLnRvcC1ydCk7YnJlYWt9fWlmKEYuaW5uZXJIVE1MPWxlLChmdW5jdGlvbigpe2Zvcih2YXIgZnQ9Ri5xdWVyeVNlbGVjdG9yQWxsKCIuY2hhdC1tZXNzYWdlOm5vdCguc3lzdGVtLWluZm8pIikscHQ9ZnQubGVuZ3RoLFdlPTA7V2U8cHQ7V2UrKylmdFtXZV0uc2V0QXR0cmlidXRlKCJkYXRhLW1zZy1pbmRleCIsU3RyaW5nKG8rcHQtMS1XZSkpfSkoKSxTPT09MCYmIXIuY2hhdEluaXRpYWxSZW5kZXJEb25lKUYuc2Nyb2xsVG9wPTAsci5jaGF0U3RpY2tUb0JvdHRvbT0hMCxpcih7cmVtb3ZlRGl2aWRlcjohMH0pLHIuY2hhdEluaXRpYWxSZW5kZXJEb25lPSEwO2Vsc2UgaWYoUz09PTAmJnIuY2hhdFN0aWNrVG9Cb3R0b20pRi5zY3JvbGxUb3A9MDtlbHNlIGlmKGopRi5zY3JvbGxUb3A9MDtlbHNlIGlmKEZ0Pj0wKXt2YXIgaXQ9Ri5xdWVyeVNlbGVjdG9yKCcuY2hhdC1tZXNzYWdlW2RhdGEtbXNnLWluZGV4PSInK0Z0KyciXScpO2lmKGl0KXt2YXIgd3Q9Ri5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3AsU3Q9aXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkseXQ9U3QudG9wLXd0LW50O01hdGguYWJzKHl0KT4uNSYmKHIuY2hhdElzUHJvZ3JhbW1hdGljU2Nyb2xsPSEwLEYuc2Nyb2xsVG9wKz15dCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtyLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbD0hMX0pKX19dm8oRiksYXIoKSxXaShGKTt2YXIgSXQ9Ri5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlOm5vdCguc3lzdGVtLWluZm8pIik7aWYoSXQpe3ZhciBhdD1JdC5xdWVyeVNlbGVjdG9yQWxsKCIudG9vbC11c2UtY2FyZCwgLmlubGluZS1kaWZmW2RhdGEtZXhwYW5kLWtleV0iKTtpZihhdC5sZW5ndGg+MCl7dmFyIFZ0PWF0WzBdLEhlPVBuKFZ0KTtzdChIZSk9PT1udWxsJiZWdC5jbGFzc0xpc3QucmVtb3ZlKCJjb2xsYXBzZWQiKTtmb3IodmFyIGtlPTE7a2U8YXQubGVuZ3RoO2tlKyspe3ZhciBBZT1QbihhdFtrZV0pO2lmKHN0KEFlKT09PW51bGwpe2lmKGF0W2tlXS5jbGFzc0xpc3QuY29udGFpbnMoImFzay11c2VyIikmJiFhdFtrZV0uY2xhc3NMaXN0LmNvbnRhaW5zKCJhc2stdXNlci1hbnN3ZXJlZCIpKWNvbnRpbnVlO2F0W2tlXS5jbGFzc0xpc3QuYWRkKCJjb2xsYXBzZWQiKX19fX1yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtOaShGKSxRZSgpLE9sKCl9KX1mdW5jdGlvbiBEKHosbGUpe3ZhciBtZT16LnF1ZXJ5U2VsZWN0b3JBbGwoIi50b29sLXVzZS1jYXJkLCAuaW5saW5lLWRpZmZbZGF0YS1leHBhbmQta2V5XSIpO21lLmZvckVhY2goZnVuY3Rpb24obmUpe3ZhciBjZT1QbihuZSk7aWYoc3QoY2UpPT09bnVsbCYmIShuZS5jbGFzc0xpc3QuY29udGFpbnMoImFzay11c2VyIikmJiFuZS5jbGFzc0xpc3QuY29udGFpbnMoImFzay11c2VyLWFuc3dlcmVkIikpKXtpZihsZSl7Zm9yKHZhciBWZT0wO1ZlPGxlLmxlbmd0aDtWZSsrKWlmKGxlW1ZlXS5jb250YWlucyhuZSkpcmV0dXJufW5lLmNsYXNzTGlzdC5hZGQoImNvbGxhcHNlZCIpfX0pfXZhciBUPXt9O2lmKChmdW5jdGlvbigpe2Zvcih2YXIgej17aW5wdXRUb2tlbnM6MCxvdXRwdXRUb2tlbnM6MCxjYWNoZVJlYWRJbnB1dFRva2VuczowLHRvdGFsQ29zdFVzZDowfSxsZT0tMSxtZT0wO21lPGkubGVuZ3RoO21lKyspe3ZhciBuZT1pW21lXTtpZihuZS5yb2xlPT09InVzZXIiKWxlPj0wJiYoei5pbnB1dFRva2Vucz4wfHx6Lm91dHB1dFRva2Vucz4wfHx6LnRvdGFsQ29zdFVzZD4wKSYmKFRbbGVdPXtpbnB1dFRva2Vuczp6LmlucHV0VG9rZW5zLG91dHB1dFRva2Vuczp6Lm91dHB1dFRva2VucyxjYWNoZVJlYWRJbnB1dFRva2Vuczp6LmNhY2hlUmVhZElucHV0VG9rZW5zLHRvdGFsQ29zdFVzZDp6LnRvdGFsQ29zdFVzZH0pLHo9e2lucHV0VG9rZW5zOjAsb3V0cHV0VG9rZW5zOjAsY2FjaGVSZWFkSW5wdXRUb2tlbnM6MCx0b3RhbENvc3RVc2Q6MH0sbGU9LTE7ZWxzZSBpZihuZS5yb2xlPT09ImFzc2lzdGFudCImJm5lLnVzYWdlKXt2YXIgY2U9bmUudXNhZ2U7ei5pbnB1dFRva2Vucys9Y2UuaW5wdXRUb2tlbnN8fDAsei5vdXRwdXRUb2tlbnMrPWNlLm91dHB1dFRva2Vuc3x8MCx6LmNhY2hlUmVhZElucHV0VG9rZW5zKz1jZS5jYWNoZVJlYWRJbnB1dFRva2Vuc3x8MCx6LnRvdGFsQ29zdFVzZCs9Y2UudG90YWxDb3N0VXNkfHwwLGxlPW1lfWVsc2UgbmUucm9sZT09PSJhc3Npc3RhbnQiJiYobGU9bWUpfWxlPj0wJiYoei5pbnB1dFRva2Vucz4wfHx6Lm91dHB1dFRva2Vucz4wfHx6LnRvdGFsQ29zdFVzZD4wKSYmKFRbbGVdPXtpbnB1dFRva2Vuczp6LmlucHV0VG9rZW5zLG91dHB1dFRva2Vuczp6Lm91dHB1dFRva2VucyxjYWNoZVJlYWRJbnB1dFRva2Vuczp6LmNhY2hlUmVhZElucHV0VG9rZW5zLHRvdGFsQ29zdFVzZDp6LnRvdGFsQ29zdFVzZH0pfSkoKSwkKUkoKTtlbHNlIGlmKGQ+Uil7dmFyIE89bC5zbGljZShSKTtPLnJldmVyc2UoKTtmb3IodmFyIFU9ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLFY9W10sWD1bXSxlZT1vK1IsWj0wO1o8Ty5sZW5ndGg7WisrKXt2YXIgdWU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksTD1vK1IrKE8ubGVuZ3RoLTEtWik7dWUuaW5uZXJIVE1MPU9hKE9bWl0sVFtMXXx8bnVsbCxMLGEpO3ZhciBNPXVlLmZpcnN0RWxlbWVudENoaWxkO00mJihNLmNsYXNzTGlzdC5hZGQoImFuaW1hdGUtaW4iKSxNLnNldEF0dHJpYnV0ZSgiZGF0YS1tc2ctaW5kZXgiLFN0cmluZyhMKSksVi5wdXNoKE0pLFgucHVzaChMKSxVLmFwcGVuZENoaWxkKE0pKX1GLmluc2VydEJlZm9yZShVLEYuZmlyc3RDaGlsZCksYXIoKSx2byhGKSxXaShGKSxEKEYsViksaj9yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtGLmlzQ29ubmVjdGVkJiZNYXRoLmFicyhGLnNjcm9sbFRvcCk+MSYmKHIuY2hhdElzUHJvZ3JhbW1hdGljU2Nyb2xsPSEwLEYuc2Nyb2xsVG9wPTAscmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7ci5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGw9ITF9KSksaXIoe3JlbW92ZURpdmlkZXI6ITB9KSxRZSgpfSk6KHIuY2hhdFVucmVhZFN0YXJ0SW5kZXg8MCYmKHIuY2hhdFVucmVhZFN0YXJ0SW5kZXg9ZWUpLHIuY2hhdFVucmVhZENvdW50Kz1WLmxlbmd0aCxOaShGKSxRZSgpKX1lbHNlIGlmKGQ9PT1SJiZ2IT09eCl7Zm9yKHZhciBOPUFycmF5LmZyb20oRi5xdWVyeVNlbGVjdG9yQWxsKCIuY2hhdC1tZXNzYWdlOm5vdCguc3lzdGVtLWluZm8pIikpLEo9bC5zbGljZSgpLnJldmVyc2UoKSxLPSExLGllPU1hdGgubWluKDQsSi5sZW5ndGgsTi5sZW5ndGgpLHRlPTA7dGU8aWU7dGUrKyl7dmFyIHNlPU5bdGVdLG9lPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHFlPW8rSi5sZW5ndGgtMS10ZTtvZS5pbm5lckhUTUw9T2EoSlt0ZV0sVFtxZV18fG51bGwscWUsYSk7dmFyIEVlPW9lLmZpcnN0RWxlbWVudENoaWxkO2lmKEVlKXtpZihzZS5pbm5lckhUTUwhPT1FZS5pbm5lckhUTUx8fHNlLmNsYXNzTmFtZSE9PUVlLmNsYXNzTmFtZSlGLnJlcGxhY2VDaGlsZChFZSxzZSksR3AoRWUpLEs9ITA7ZWxzZSBpZih0ZT4wKWJyZWFrfX1pZighSyYmSi5sZW5ndGg+aWUmJkkoKSxLKXthcigpLFdpKEYpLHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe2omJkYuaXNDb25uZWN0ZWQmJk1hdGguYWJzKEYuc2Nyb2xsVG9wKT4xJiYoci5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGw9ITAsRi5zY3JvbGxUb3A9MCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtyLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbD0hMX0pKSxOaShGKSxRZSgpfSk7dmFyIGJlPUYucXVlcnlTZWxlY3RvcigiLmNoYXQtbWVzc2FnZSIpLHE9Ri5xdWVyeVNlbGVjdG9yQWxsKCIudG9vbC11c2UtY2FyZCwgLmlubGluZS1kaWZmW2RhdGEtZXhwYW5kLWtleV0iKSxSZT1udWxsO3EuZm9yRWFjaChmdW5jdGlvbih6KXt2YXIgbGU9UG4oeik7c3QobGUpPT09bnVsbCYmKHouY2xhc3NMaXN0LmNvbnRhaW5zKCJhc2stdXNlciIpJiYhei5jbGFzc0xpc3QuY29udGFpbnMoImFzay11c2VyLWFuc3dlcmVkIil8fChiZSYmYmUuY29udGFpbnMoeik/UmU/ei5jbGFzc0xpc3QuYWRkKCJjb2xsYXBzZWQiKTpSZT16OnouY2xhc3NMaXN0LmFkZCgiY29sbGFwc2VkIikpKX0pfX1lbHNlIGQ8UiYmSSgpO0pkKEYpLHJ1KEYsbiksVGEoaSl9dmFyIElhPSExO2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihlKXt2YXIgdD1lLnRhcmdldDtpZighKCF0fHwhKHQgaW5zdGFuY2VvZiBFbGVtZW50KSkpe3ZhciBuPXQuY2xvc2VzdCgiI3RvZG8tcHJvZ3Jlc3MtdG9nZ2xlIik7aWYobil7ZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCksSWE9IUlhO3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzIiksYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcy1ib2R5Iik7aSYmYSYmKElhPyhpLmNsYXNzTGlzdC5hZGQoImV4cGFuZGVkIiksYS5jbGFzc0xpc3QuYWRkKCJleHBhbmRlZCIpKTooaS5jbGFzc0xpc3QucmVtb3ZlKCJleHBhbmRlZCIpLGEuY2xhc3NMaXN0LnJlbW92ZSgiZXhwYW5kZWQiKSkpLEVpKCl9fX0pO2Z1bmN0aW9uIEVpKCl7dmFyIGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2NoYXQtb3V0cHV0IC5jaGF0LW1lc3NhZ2VzIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcy1ib2R5Iik7aWYoISghZXx8IXQpKXt2YXIgbj1lLGk9IXQuY2xhc3NMaXN0LmNvbnRhaW5zKCJoaWRkZW4iKSxhPXQuY2xhc3NMaXN0LmNvbnRhaW5zKCJleHBhbmRlZCIpLHU9dC5vZmZzZXRIZWlnaHQ7aSYmYSYmdT4wP24uc3R5bGUucGFkZGluZ0JvdHRvbT11KzgrInB4IjpuLnN0eWxlLnBhZGRpbmdCb3R0b209IiJ9fWZ1bmN0aW9uIEtwKGUpe2lmKHR5cGVvZiBlPT0ic3RyaW5nIilyZXR1cm4gZTtpZihBcnJheS5pc0FycmF5KGUpKXtmb3IodmFyIHQ9W10sbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dO3R5cGVvZiBpPT0ic3RyaW5nIj90LnB1c2goaSk6aSYmdHlwZW9mIGkudGV4dD09InN0cmluZyImJnQucHVzaChpLnRleHQpfXJldHVybiB0LmpvaW4oIiIpfXJldHVybiIifWZ1bmN0aW9uIEpwKGUsdCl7Zm9yKHZhciBuPXt9LGk9dDtpPGUubGVuZ3RoO2krKyl7dmFyIGE9ZVtpXTtpZighKCFhfHwhQXJyYXkuaXNBcnJheShhLmNvbnRlbnQpKSlmb3IodmFyIHU9MDt1PGEuY29udGVudC5sZW5ndGg7dSsrKXt2YXIgcz1hLmNvbnRlbnRbdV07cyYmcy50eXBlPT09InRvb2xfcmVzdWx0IiYmcy50b29sX3VzZV9pZCYmKG5bcy50b29sX3VzZV9pZF09S3Aocy5jb250ZW50KSl9fWZvcih2YXIgbz17fSxsPTAsYz0wLGY9ITEsZD10O2Q8ZS5sZW5ndGg7ZCsrKXt2YXIgdj1lW2RdO2lmKCEoIXZ8fCFBcnJheS5pc0FycmF5KHYuY29udGVudCkpKWZvcih2YXIgZz0wO2c8di5jb250ZW50Lmxlbmd0aDtnKyspe3ZhciBoPXYuY29udGVudFtnXTtpZighKCFofHxoLnR5cGUhPT0idG9vbF91c2UiKSl7dmFyIG09aC5pbnB1dHx8e307aWYoaC5uYW1lPT09IlRhc2tDcmVhdGUiKXtmPSEwLGMrKzt2YXIgRT1uW2guaWRdfHwiIixDPUUubWF0Y2goLyMoXGQrKS8pLGI9Qz9DWzFdOlN0cmluZyhjKTtvW2JdPXtpZDpiLGNvbnRlbnQ6bS5zdWJqZWN0fHwiIixhY3RpdmVGb3JtOm0uYWN0aXZlRm9ybXx8IiIsc3RhdHVzOiJwZW5kaW5nIixvcmRlcjpsKyt9fWVsc2UgaWYoaC5uYW1lPT09IlRhc2tVcGRhdGUiKXtmPSEwO3ZhciBCPVN0cmluZyhtLnRhc2tJZCksRj1vW0JdO0Z8fChGPXtpZDpCLGNvbnRlbnQ6IiIsYWN0aXZlRm9ybToiIixzdGF0dXM6InBlbmRpbmciLG9yZGVyOmwrK30sb1tCXT1GKSxtLnN0YXR1cyYmKEYuc3RhdHVzPW0uc3RhdHVzKSxtLnN1YmplY3QmJihGLmNvbnRlbnQ9bS5zdWJqZWN0KSxtLmFjdGl2ZUZvcm0mJihGLmFjdGl2ZUZvcm09bS5hY3RpdmVGb3JtKX19fX1pZighZilyZXR1cm4gbnVsbDt2YXIgeD1bXTtmb3IodmFyIFMgaW4gbylPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobyxTKSYmb1tTXS5zdGF0dXMhPT0iZGVsZXRlZCImJngucHVzaChvW1NdKTtyZXR1cm4geC5zb3J0KGZ1bmN0aW9uKGosUil7cmV0dXJuIGoub3JkZXItUi5vcmRlcn0pLHgubGVuZ3RoP3g6bnVsbH1mdW5jdGlvbiBUYShlKXtmb3IodmFyIHQ9MCxuPWUubGVuZ3RoLTE7bj49MDtuLS0paWYoZVtuXSYmZVtuXS5yb2xlPT09InVzZXIiKXt0PW4rMTticmVha31mb3IodmFyIGk9bnVsbCxhPWUubGVuZ3RoLTE7YT49dDthLS0pe3ZhciB1PWVbYV07aWYoISghdS5jb250ZW50fHwhQXJyYXkuaXNBcnJheSh1LmNvbnRlbnQpKSl7Zm9yKHZhciBzPXUuY29udGVudC5sZW5ndGgtMTtzPj0wO3MtLSl7dmFyIG89dS5jb250ZW50W3NdO2lmKG8udHlwZT09PSJ0b29sX3VzZSImJm8ubmFtZT09PSJUb2RvV3JpdGUiJiZvLmlucHV0JiZvLmlucHV0LnRvZG9zKXtpPW8uaW5wdXQudG9kb3M7YnJlYWt9fWlmKGkpYnJlYWt9fWl8fChpPUpwKGUsdCkpO3ZhciBsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzIiksYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcy1ib2R5Iik7aWYobCl7aWYoIWl8fGkubGVuZ3RoPT09MCl7bC5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxjJiZjLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLEVpKCk7cmV0dXJufWZvcih2YXIgZj0wLGQ9MCx2PSIiLGc9MDtnPGkubGVuZ3RoO2crKylpW2ddLnN0YXR1cz09PSJjb21wbGV0ZWQiJiZmKyssaVtnXS5zdGF0dXM9PT0iaW5fcHJvZ3Jlc3MiJiYoZCsrLHZ8fCh2PWlbZ10uYWN0aXZlRm9ybXx8aVtnXS5jb250ZW50fHwiIikpO3ZhciBoPWY9PT1pLmxlbmd0aCxtPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihWKXtyZXR1cm4gVi5pZD09PXIuc2VsZWN0ZWRJZH0pLEU9ISFtJiZtLnN0YXR1cz09PSJydW5uaW5nIjtpZighRXx8aCl7bC5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxjJiZjLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLEVpKCk7cmV0dXJufWwuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksbC5jbGFzc0xpc3QucmVtb3ZlKCJhbGwtZG9uZSIpLGMmJmMuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik7dmFyIEM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZG8tcHJvZ3Jlc3MtY291bnRlciIpO0MmJihDLnRleHRDb250ZW50PWYrIi8iK2kubGVuZ3RoKTt2YXIgYj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcy10YXNrIik7aWYoYil7aWYoIXYpe2Zvcih2YXIgQj0wO0I8aS5sZW5ndGg7QisrKWlmKGlbQl0uc3RhdHVzPT09InBlbmRpbmciJiYoaVtCXS5hY3RpdmVGb3JtfHxpW0JdLmNvbnRlbnQpKXt2PWlbQl0uYWN0aXZlRm9ybXx8aVtCXS5jb250ZW50O2JyZWFrfX1iLnRleHRDb250ZW50PXZ8fCJcdTUxQzZcdTU5MDdcdTRFMkRcdTIwMjYifXZhciBGPWkubGVuZ3RoPjA/Zi9pLmxlbmd0aDowLHg9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZG8tcHJvZ3Jlc3MtcmluZyIpO3gmJnguc3R5bGUuc2V0UHJvcGVydHkoIi0tcHJvZ3Jlc3MiLEYudG9GaXhlZCgzKSk7dmFyIFM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZG8tcHJvZ3Jlc3MtZmlsbCIpO1MmJlMuc3R5bGUuc2V0UHJvcGVydHkoIi0tcHJvZ3Jlc3MiLEYudG9GaXhlZCgzKSk7dmFyIGo9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZG8tcHJvZ3Jlc3MtbGlzdCIpO2lmKGope2Zvcih2YXIgUj0iIiwkPTA7JDxpLmxlbmd0aDskKyspe3ZhciBJPWlbJF0sRD1JLnN0YXR1c3x8InBlbmRpbmciLFQ9RD09PSJpbl9wcm9ncmVzcyI/ImFjdGl2ZSI6RD09PSJjb21wbGV0ZWQiPyJkb25lIjoiIixPPUQ9PT0iaW5fcHJvZ3Jlc3MiPyJhY3RpdmUiOkQ9PT0iY29tcGxldGVkIj8iZG9uZSI6InBlbmRpbmciLFU9RD09PSJjb21wbGV0ZWQiPyJcdTI3MTMiOkQ9PT0iaW5fcHJvZ3Jlc3MiPyJcdTIwM0EiOiJcdTI1Q0IiO1IrPSc8bGkgY2xhc3M9InRvZG8tcHJvZ3Jlc3MtaXRlbSAnK1QrJyI+PHNwYW4gY2xhc3M9InRvZG8taXRlbS1pY29uICcrTysnIj4nK1UrIjwvc3Bhbj48c3Bhbj4iK3AoSS5jb250ZW50fHwiIikrIjwvc3Bhbj48L2xpPiJ9ai5pbm5lckhUTUw9Un1yLnNlbGVjdGVkSWQmJnBhKHIuc2VsZWN0ZWRJZCksRWkoKX19ZnVuY3Rpb24gR3AoZSl7ZS5xdWVyeVNlbGVjdG9yQWxsKCIuY29kZS1jb3B5IikuZm9yRWFjaChmdW5jdGlvbih0KXt0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhciBuPXQuY2xvc2VzdCgiLmNvZGUtYmxvY2siKSxpPW4/bi5xdWVyeVNlbGVjdG9yKCJjb2RlIik6bnVsbDtpJiZQcihpLnRleHRDb250ZW50fHwiIixudWxsLGZ1bmN0aW9uKCl7dC50ZXh0Q29udGVudD0iQ29waWVkISIsdC5jbGFzc0xpc3QuYWRkKCJjb3BpZWQiKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dC50ZXh0Q29udGVudD0iQ29weSIsdC5jbGFzc0xpc3QucmVtb3ZlKCJjb3BpZWQiKX0sMmUzKX0pfSl9KX1mdW5jdGlvbiB2byhlKXtlLnF1ZXJ5U2VsZWN0b3JBbGwoIi5jb2RlLWNvcHkiKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3ZhciBuPXQuY2xvbmVOb2RlKCEwKTt0LnBhcmVudE5vZGUucmVwbGFjZUNoaWxkKG4sdCksbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgaT1uLmNsb3Nlc3QoIi5jb2RlLWJsb2NrIiksYT1pP2kucXVlcnlTZWxlY3RvcigiY29kZSIpOm51bGw7YSYmUHIoYS50ZXh0Q29udGVudHx8IiIsbnVsbCxmdW5jdGlvbigpe24udGV4dENvbnRlbnQ9IkNvcGllZCEiLG4uY2xhc3NMaXN0LmFkZCgiY29waWVkIiksc2V0VGltZW91dChmdW5jdGlvbigpe24udGV4dENvbnRlbnQ9IkNvcHkiLG4uY2xhc3NMaXN0LnJlbW92ZSgiY29waWVkIil9LDJlMyl9KX0pfSksWXAoZSl9dmFyIHdnPXt0aW1lcjpudWxsLGFjdGl2ZUJ0bjpudWxsfTtmdW5jdGlvbiBZcChlKXt2YXIgdD13aW5kb3cubWF0Y2hNZWRpYSgiKHBvaW50ZXI6IGNvYXJzZSkiKS5tYXRjaGVzO3QmJmUucXVlcnlTZWxlY3RvckFsbCgiLmNoYXQtbWVzc2FnZSIpLmZvckVhY2goZnVuY3Rpb24obil7aWYoIW4ucXVlcnlTZWxlY3RvcigiLm1zZy1jb3B5LWJ0biIpKXt2YXIgaT1uLnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LW1lc3NhZ2UtYnViYmxlIik7aWYoaSl7dmFyIGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIik7YS5jbGFzc05hbWU9Im1zZy1jb3B5LWJ0biIsYS50ZXh0Q29udGVudD0iXHU1OTBEXHU1MjM2IixhLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih1KXt1LnN0b3BQcm9wYWdhdGlvbigpO3ZhciBzPWkuaW5uZXJUZXh0fHxpLnRleHRDb250ZW50fHwiIjtQcihzLnRyaW0oKSxudWxsLGZ1bmN0aW9uKCl7YS50ZXh0Q29udGVudD0iXHU1REYyXHU1OTBEXHU1MjM2IixhLmNsYXNzTGlzdC5hZGQoImNvcGllZCIpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXthLnRleHRDb250ZW50PSJcdTU5MERcdTUyMzYiLGEuY2xhc3NMaXN0LnJlbW92ZSgiY29waWVkIiksYS5jbGFzc0xpc3QucmVtb3ZlKCJ2aXNpYmxlIil9LDE1MDApfSl9KSxuLmFwcGVuZENoaWxkKGEpfX19KX0oZnVuY3Rpb24oKXt2YXIgdD13aW5kb3cubWF0Y2hNZWRpYSgiKHBvaW50ZXI6IGNvYXJzZSkiKS5tYXRjaGVzO2lmKHQpe3ZhciBuPW51bGwsaT0wO2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLGZ1bmN0aW9uKGEpe3ZhciB1PWEudGFyZ2V0LmNsb3Nlc3QoIi5jaGF0LW1lc3NhZ2UiKTtpZih1KXt2YXIgcz11LnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LW1lc3NhZ2UtYnViYmxlIik7cyYmKGk9YS50b3VjaGVzWzBdLmNsaWVudFksbj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIG89dS5xdWVyeVNlbGVjdG9yKCIubXNnLWNvcHktYnRuIik7byYmKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5tc2ctY29weS1idG4udmlzaWJsZSIpLmZvckVhY2goZnVuY3Rpb24obCl7bC5jbGFzc0xpc3QucmVtb3ZlKCJ2aXNpYmxlIil9KSxvLmNsYXNzTGlzdC5hZGQoInZpc2libGUiKSl9LDUwMCkpfX0se3Bhc3NpdmU6ITB9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLGZ1bmN0aW9uKGEpe24mJk1hdGguYWJzKGEudG91Y2hlc1swXS5jbGllbnRZLWkpPjEwJiYoY2xlYXJUaW1lb3V0KG4pLG49bnVsbCl9LHtwYXNzaXZlOiEwfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hlbmQiLGZ1bmN0aW9uKCl7biYmKGNsZWFyVGltZW91dChuKSxuPW51bGwpfSx7cGFzc2l2ZTohMH0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihhKXthLnRhcmdldC5jbG9zZXN0KCIubXNnLWNvcHktYnRuIil8fGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5tc2ctY29weS1idG4udmlzaWJsZSIpLmZvckVhY2goZnVuY3Rpb24odSl7dS5jbGFzc0xpc3QucmVtb3ZlKCJ2aXNpYmxlIil9KX0pfX0pKCk7ZnVuY3Rpb24gUXAoZSl7aWYoIWUpcmV0dXJuITE7dmFyIHQ9U3RyaW5nKGUpLnRyaW0oKTtyZXR1cm4gdD8hISh0LmluZGV4T2YoIlx1MjUwMFx1MjUwMFx1MjUwMFx1MjUwMCIpPT09MHx8dD09PSJcdTI3NkYifHx0PT09Ilx1MjAzQSJ8fC9eW+KVreKVsOKUguKUjOKUlOKUkOKUmOKUnOKUpOKUrOKUtOKUvOKUgOKVkF17Mix9JC8udGVzdCh0KXx8L15b4paB4paC4paD4paE4paF4paG4paH4paI4paU4paV4paP4paQXSskLy50ZXN0KHQpfHx0LmluZGV4T2YoImVzYyB0byBpbnRlcnJ1cHQiKSE9PS0xfHx0LmluZGV4T2YoIkNsYXVkZSBDb2RlIHYiKSE9PS0xfHwvXlNvbm5ldFxiLy50ZXN0KHQpfHx0LmluZGV4T2YoIkZhaWxlZCB0byBpbnN0YWxsIEFudGhyb3BpYyIpIT09LTF8fHQuaW5kZXhPZigiQ2xhdWRlIENvZGUgaGFzIHN3aXRjaGVkIikhPT0tMXx8dC5pbmRleE9mKCI/IGZvciBzaG9ydGN1dHMiKSE9PS0xfHx0LmluZGV4T2YoIkNsYXVkZSBpcyB3YWl0aW5nIikhPT0tMXx8dC5pbmRleE9mKCJbd2FuZF0iKSE9PS0xfHx0LmluZGV4T2YoIjA7Iik9PT0wfHx0LmluZGV4T2YoIjk7Iik9PT0wfHx0LmluZGV4T2YoImN0cmwrZyIpIT09LTF8fHQuaW5kZXhPZigiL2VmZm9ydCIpIT09LTF8fC9eVXNpbmcgLiogZm9yIC4qIHNlc3Npb24vLnRlc3QodCl8fHQuaW5kZXhPZigiUHJlc3MgIik9PT0wJiZ0LmluZGV4T2YoIiBmb3IiKSE9PS0xfHx0LmluZGV4T2YoInR5cGUgIik9PT0wJiZ0LmluZGV4T2YoIiB0byAiKSE9PS0xfHx0LmluZGV4T2YoImF1dG8gbW9kZSBpcyB1bmF2YWlsYWJsZSIpIT09LTF8fC9NQ1Agc2VydmVyLipmYWlsZWQvaS50ZXN0KHQpfHx0LmluZGV4T2YoIkdlcm1pbmF0aW5nIikhPT0tMXx8dC5pbmRleE9mKCJEb29kbGluZyIpIT09LTF8fHQuaW5kZXhPZigiQnJld2luZyIpIT09LTF8fHQuaW5kZXhPZigiUGVybWlzc2lvbnMiKSE9PS0xJiZ0LmluZGV4T2YoIm1vZGUiKSE9PS0xfHx0LmluZGV4T2YoIlx1MjVDRiIpPT09MCYmdC5pbmRleE9mKCJceEI3IikhPT0tMXx8dC5pbmRleE9mKCJbPiIpPT09MHx8dC5pbmRleE9mKCJbPCIpPT09MHx8dC5pbmRleE9mKCJDYXB0dXJlZCBDbGF1ZGUgc2Vzc2lvbiBJRCIpIT09LTF8fC9ePl9ccypPcGVuQUkgQ29kZXhcYi8udGVzdCh0KXx8L15PcGVuQUkgQ29kZXhcYi9pLnRlc3QodCl8fC9eKG1vZGVsfGRpcmVjdG9yeSk6XHMrL2kudGVzdCh0KXx8L14odGlwfGNvbnRleHQpOlxzKy9pLnRlc3QodCl8fC9ed29yayh0cmVlfHNwYWNlKTpccysvaS50ZXN0KHQpfHwvXihhcHByb3ZhbHM/fHNhbmRib3h8cHJvdmlkZXJ8c2Vzc2lvbiBpZCk6XHMrL2kudGVzdCh0KXx8L14odGhpbmtpbmd8d29ya2luZykoXC5cLlwufOKApik/JC9pLnRlc3QodCl8fC9eW+KAouKXpsK3XVxzK1dvcmtpbmdcYi9pLnRlc3QodCl8fC9eW+KAouKXpsK3XVxzKyhSdW5uaW5nfFBsYW5uaW5nfEFwcGx5aW5nfFJlYWRpbmd8U2VhcmNoaW5nKVxiL2kudGVzdCh0KXx8L15b4oCi4pemwrddXHMrKEluc3BlY3Rpbmd8UmV2aWV3aW5nfFN1bW1hcml6aW5nfEVkaXRpbmd8VXBkYXRpbmd8V3JpdGluZylcYi9pLnRlc3QodCl8fC9eW+KAouKXpsK3XVxzK0NvbXBsZXRlZFxiL2kudGVzdCh0KXx8L14oY3RybHxlbnRlcnx0YWJ8c2hpZnR8ZXNjfGFsdClcKy9pLnRlc3QodCl8fC9cYihvcGVufGNsb3NlfHRvZ2dsZSkgKGNoYXR8dGVybWluYWwpXGIvaS50ZXN0KHQpfHwvXGIoYXBwcm92ZXxkZW55KVxiLipcYihwZXJtaXNzaW9ufGFwcHJvdmFsKVxiL2kudGVzdCh0KXx8L14odXNlfHByZXNzKSAuKiAodG98Zm9yKSAuKi9pLnRlc3QodCl8fC9eKD86dG9rZW58Y29udGV4dCB3aW5kb3d8cmVtYWluaW5nIGNvbnRleHR8Y29udmVyc2F0aW9uKTpccysvaS50ZXN0KHQpfHwvXig/OmN3ZHxwYXRoKTpccytcLy9pLnRlc3QodCl8fC9eWzw+4pSC4pSG4pWOXS4qWzw+4pSC4pSG4pWOXSQvLnRlc3QodCkmJnQubGVuZ3RoPDgpOiExfWZ1bmN0aW9uICRwKGUpe3JldHVybiBTdHJpbmcoZXx8IiIpLnJlcGxhY2UoL1x4MWJcXVteXHgwN10qKFx4MDd8XHgxYlxcKS9nLCIiKS5yZXBsYWNlKC9ceDFiXFsoXGQrKUMvZyxmdW5jdGlvbih0LG4pe3JldHVybiIgIi5yZXBlYXQoTnVtYmVyKG4pfHwxKX0pLnJlcGxhY2UoL1x4MWJcW1swLTk7P10qW0FCXS9nLGAKYCkucmVwbGFjZSgvXHgxYlxbWzAtOTs/XSpbc3VdL2csIiIpLnJlcGxhY2UoL1x4MWJcW1swLTk7P10qW0hmSktyXS9nLGAKYCkucmVwbGFjZSgvXHgxYk0vZyxgCmApLnJlcGxhY2UoL1x4MWJcW1swLTk7P10qW1NUXS9nLGAKYCkucmVwbGFjZSgvXHgxYlxbWzAtOTs/XSpbYS16QS1aXS9nLCIiKS5yZXBsYWNlKC9ceDFiWz48PWVQWF5fXS9nLCIiKS5yZXBsYWNlKC9bXHUwMGEwXHUyMDBiLVx1MjAwZFx1ZmVmZl0vZywiICIpLnJlcGxhY2UoL1tceDAwLVx4MDhceDBiXHgwY1x4MGUtXHgxZl0vZywiIikucmVwbGFjZSgvXHJcbj8vZyxgCmApLnJlcGxhY2UoL1sgXHRdK1xuL2csYApgKS5yZXBsYWNlKC9cbnszLH0vZyxgCgpgKX1mdW5jdGlvbiBYcChlLHQpe3ZhciBuPVtdO2lmKCFlKXJldHVybiBuO3ZhciBpPVN0cmluZyhlfHwiIiksYT1gCmAsdT0iXHIiLHM9Ilx4MUIiO2lmKC9eY29kZXhcYi8udGVzdChTdHJpbmcodHx8IiIpLnRyaW0oKSkpe2xldCB1dD1mdW5jdGlvbihIKXtyZXR1cm4gU3RyaW5nKEh8fCIiKS5yZXBsYWNlKC9ceDFiXF1bXlx4MDddKihceDA3fFx4MWJcXCkvZywiIikucmVwbGFjZSgvXHgxYlxbKFxkKylDL2csZnVuY3Rpb24oXyxZKXtyZXR1cm4iICIucmVwZWF0KE51bWJlcihZKXx8MSl9KS5yZXBsYWNlKC9ceDFiXFtbMC05Oz9dKltBQl0vZyxhKS5yZXBsYWNlKC9ceDFiXFtbMC05Oz9dKltzdV0vZywiIikucmVwbGFjZSgvXHgxYlxbWzAtOTs/XSpbSGZKS3JdL2csYSkucmVwbGFjZSgvXHgxYk0vZyxhKS5yZXBsYWNlKC9ceDFiXFtbMC05Oz9dKltTVF0vZyxhKS5yZXBsYWNlKC9ceDFiXFtbMC05Oz9dKlthLXpBLVpdL2csIiIpLnJlcGxhY2UoL1x4MWJbPjw9ZVBYXl9dL2csIiIpLnJlcGxhY2UoL1tcdTAwYTBcdTIwMGItXHUyMDBkXHVmZWZmXS9nLCIgIikucmVwbGFjZSgvW1x4MDAtXHgwOFx4MGJceDBjXHgwZS1ceDFmXS9nLCIiKS5yZXBsYWNlKC9bIFx0XStcbi9nLGEpfSxmZT1mdW5jdGlvbihIKXtyZXR1cm4gU3RyaW5nKEh8fCIiKS5yZXBsYWNlKC9ccysvZywiICIpLnJlcGxhY2UoL1tNXSskL2csIiIpLnRyaW0oKX0scmU9ZnVuY3Rpb24oSCl7cmV0dXJuIFN0cmluZyhIfHwiIikucmVwbGFjZSgvXuKAulxzKi8sIiIpLnJlcGxhY2UoL14+XHMqLywiIikudHJpbSgpfSxnZT1mdW5jdGlvbihIKXt2YXIgXz1TdHJpbmcoSHx8IiIpLnRyaW0oKTtyZXR1cm4hISghX3x8UXAoXyl8fGIudGVzdChfKXx8L15b4pWt4pWw4pSC4pSM4pSU4pSQ4pSY4pSc4pSk4pSs4pS04pS84pSA4pWQXS8udGVzdChfKXx8L15cWz5bMC05Oz9dKnUkL2kudGVzdChfKXx8L15NKyQvaS50ZXN0KF8pfHwvXig/Ok9wZW5BSSBDb2RleHxDb2RleClcYi9pLnRlc3QoXyl8fC9eKD86dG9rZW5zP3xjb250ZXh0IHdpbmRvd3xyZW1haW5pbmcgY29udGV4dHxhcHByb3ZhbHM/fHNhbmRib3h8cHJvdmlkZXJ8c2Vzc2lvbiBpZCk6XHMqL2kudGVzdChfKXx8L14oPzp0aGlua2luZ3x3b3JraW5nKVxzKig/OlwuXC5cLnzigKYpPyQvaS50ZXN0KF8pfHwvXlvigKLil6bCt11ccysoPzp0aGlua2luZ3x3b3JraW5nfHJ1bm5pbmd8cGxhbm5pbmd8YXBwbHlpbmd8cmVhZGluZ3xzZWFyY2hpbmd8aW5zcGVjdGluZ3xyZXZpZXdpbmd8c3VtbWFyaXppbmd8ZWRpdGluZ3x1cGRhdGluZ3x3cml0aW5nfGNvbXBsZXRlZClcYi9pLnRlc3QoXyl8fC9eKD86bW9kZWx8ZGlyZWN0b3J5fHRpcHxjb250ZXh0fGN3ZHxwYXRoKTpccysvaS50ZXN0KF8pKX0sT2U9ZnVuY3Rpb24oSCl7dmFyIF89U3RyaW5nKEh8fCIiKS50cmltKCk7aWYoIS9e4oC6KD86XHN8JCkvLnRlc3QoXyl8fGIudGVzdChfKSlyZXR1cm4gbnVsbDt2YXIgWT1mZShyZShfKSk7cmV0dXJuIVl8fGdlKFkpP251bGw6WX0sS2U9ZnVuY3Rpb24oSCl7dmFyIF89U3RyaW5nKEh8fCIiKS50cmltKCk7aWYoIS9eW+KAouKXpsK34o+6XS8udGVzdChfKSlyZXR1cm4gbnVsbDt2YXIgWT1fLnJlcGxhY2UoL15b4oCi4pemwrddXHMqLywiIikucmVwbGFjZSgvXuKPulxzKy8sIiIpLnJlcGxhY2UoL17ilIJccyovLCIiKS50cmltKCk7cmV0dXJuIVl8fC9eW+KAouKXpsK34o+6XSQvLnRlc3QoWSl8fChZPVkucmVwbGFjZSgvXHMqXChcZCtbc21oXT9ccyrigKJccyplc2MgdG8gaW50ZXJydXB0XClbXHNcU10qJC9pLCIiKS5yZXBsYWNlKC8oPzpbYS16XXsxLDZ9KT/igLpbXHNcU10qJC8sIiIpLnJlcGxhY2UoL1xzezIsfWdwdC1cZFtcc1xTXSokL2ksIiIpLnJlcGxhY2UoL1xiKD86T3BlbkFJIENvZGV4fG1vZGVsOnxkaXJlY3Rvcnk6fFRpcDopXGJbXHNcU10qJC9pLCIiKSxZPWZlKFkpLCFZfHxZLmxlbmd0aDwyfHxCLnRlc3QoWSl8fGdlKFkpKT9udWxsOll9LEplPWZ1bmN0aW9uKEgpe3ZhciBfPWZlKEgpO3JldHVybiFffHxnZShfKXx8L15b4oCi4pemwrfij7rigLpdLy50ZXN0KF8pfHwvXltcW1xdPD4wLTk7P10rdT8kL2kudGVzdChfKXx8L15b4pWt4pWw4pSC4pSM4pSU4pSQ4pSY4pSc4pSk4pSs4pS04pS84pSA4pWQXS8udGVzdChfKXx8Xy5sZW5ndGg+NTAwP251bGw6X30seGU9ZnVuY3Rpb24oSCxfKXtpZihILmluZGV4T2YoXykhPT0wKXJldHVybiExO3ZhciBZPUguc2xpY2UoXy5sZW5ndGgpO3JldHVybi9eW2Etel17MSw0fSQvaS50ZXN0KFkpfSxDZT1mdW5jdGlvbihIKXtmb3IodmFyIF89W10sWT0wO1k8SC5sZW5ndGg7WSsrKXt2YXIgcGU9ZmUoSFtZXSk7aWYoISghcGV8fHBlLmxlbmd0aDwyfHxnZShwZSkpKXt2YXIgaGU9X1tfLmxlbmd0aC0xXTtpZighaGUpe18ucHVzaChwZSk7Y29udGludWV9aWYocGUhPT1oZSl7aWYocGUuaW5kZXhPZihoZSk9PT0wKXtfW18ubGVuZ3RoLTFdPXBlO2NvbnRpbnVlfWlmKGhlLmluZGV4T2YocGUpPT09MCl7eGUoaGUscGUpJiYoX1tfLmxlbmd0aC0xXT1wZSk7Y29udGludWV9Xy5wdXNoKHBlKX19fXJldHVybiBfLmpvaW4oYSkudHJpbSgpfSxMdD1mdW5jdGlvbihIKXtmb3IodmFyIF89MDtfPEgubGVuZ3RoO18rKyl7dmFyIFk9U3RyaW5nKEhbX118fCIiKS50cmltKCk7aWYoWSl7dmFyIHBlPU9lKFkpO2lmKHBlKXJldHVybiBwZTtpZihZPT09Ilx1MjAzQSIpZm9yKHZhciBoZT1fKzE7aGU8SC5sZW5ndGg7aGUrKyl7dmFyIFllPWZlKEhbaGVdKTtpZighKCFZZXx8Yi50ZXN0KFllKXx8Z2UoWWUpKSlyZXR1cm4gWWV9fX1yZXR1cm4gbnVsbH0sR2U9ZnVuY3Rpb24oSCl7Zm9yKHZhciBfPVtdLFk9ITEscGU9MDtwZTxILmxlbmd0aDtwZSsrKXt2YXIgaGU9U3RyaW5nKEhbcGVdfHwiIikudHJpbSgpO2lmKCFoZSl7aWYoWSlicmVhaztjb250aW51ZX12YXIgWWU9S2UoaGUpO2lmKFllKXtfLnB1c2goWWUpLFk9ITA7Y29udGludWV9aWYoWSl7aWYoaGU9PT0iXHUyMDNBInx8L17igLooPzpcc3wkKS8udGVzdChoZSl8fGIudGVzdChoZSl8fGdlKGhlKSlicmVhaztfLnB1c2goZmUoaGUpKX19cmV0dXJuIF99O2Zvcih2YXIgbz11dCxsPWZlLGM9cmUsZj1nZSxkPU9lLHY9S2UsZz1KZSxoPXhlLG09Q2UsRT1MdCxDPUdlLGI9L1xiZ3B0LVxkKyg/OlwuXGQrKT8oPzpccytbYS16MC05Li1dKyk/XHMrwrdccytcZCslXHMrbGVmdFxzK8K3XHMrKD86XC98flwvKS4rL2ksQj0vXig/OnRoaW5raW5nfHdvcmtpbmd8cnVubmluZ3xwbGFubmluZ3xhcHBseWluZ3xyZWFkaW5nfHNlYXJjaGluZ3xpbnNwZWN0aW5nfHJldmlld2luZ3xzdW1tYXJpemluZ3xlZGl0aW5nfHVwZGF0aW5nfHdyaXRpbmd8Y29tcGxldGVkKVxiL2ksRj1bXSx4PTAsUz1pLnJlcGxhY2UoL1xyXG4/L2csYSkuc3BsaXQoYSksaj0wO2o8Uy5sZW5ndGg7aisrKWZvcih2YXIgUj11dChTW2pdKSwkPVIuc3BsaXQoYSksST0wO0k8JC5sZW5ndGg7SSsrKXt2YXIgRD1TdHJpbmcoJFtJXXx8IiIpLnRyaW0oKTtpZihEKXt2YXIgVD1PZShEKTtpZihUKXtGLnB1c2goe2tpbmQ6InVzZXIiLG9yZGVyOngrKyx0ZXh0OlR9KTtjb250aW51ZX12YXIgTz1LZShEKTtpZihPKXtGLnB1c2goe2tpbmQ6ImFzc2lzdGFudCIsb3JkZXI6eCsrLHRleHQ6T30pO2NvbnRpbnVlfXZhciBVPUplKEQpO1UmJkYucHVzaCh7a2luZDoiZWNobyIsb3JkZXI6eCsrLHRleHQ6VX0pfX1mb3IodmFyIFY9Ri5maWx0ZXIoZnVuY3Rpb24oSCxfLFkpe3ZhciBwZT1ZW18tMV07cmV0dXJuIXBlfHxwZS5raW5kIT09SC5raW5kfHxwZS50ZXh0IT09SC50ZXh0fSksWD1WLmZpbHRlcihmdW5jdGlvbihIKXtyZXR1cm4gSC5raW5kPT09InVzZXIifSksZWU9Vi5maWx0ZXIoZnVuY3Rpb24oSCl7cmV0dXJuIEgua2luZD09PSJhc3Npc3RhbnQifSksWj1WLmZpbHRlcihmdW5jdGlvbihIKXtyZXR1cm4gSC5raW5kPT09ImVjaG8ifSksdWU9JHAoaSksTD11ZS5zcGxpdChhKS5tYXAoZnVuY3Rpb24oSCl7cmV0dXJuIFN0cmluZyhIfHwiIikudHJpbUVuZCgpfSksTT1MdChMKSxOPVgubGVuZ3RoP1hbWC5sZW5ndGgtMV06bnVsbCxKPVoubWFwKGZ1bmN0aW9uKEgpe3JldHVybiBILnRleHR9KS5maWx0ZXIoZnVuY3Rpb24oSCl7cmV0dXJuIEgubGVuZ3RoPj0zfSksSz1udWxsLGllPUoubGVuZ3RoLTE7aWU+PTA7aWUtLSlpZihKW2llXSE9PU0pe0s9SltpZV07YnJlYWt9IUsmJkoubGVuZ3RoJiYoSz1KW0oubGVuZ3RoLTFdKTtmb3IodmFyIHRlPU4/Ti50ZXh0Okssc2U9ZWUuZmlsdGVyKGZ1bmN0aW9uKEgpe3JldHVybiFOfHxILm9yZGVyPk4ub3JkZXJ9KS5tYXAoZnVuY3Rpb24oSCl7cmV0dXJuIEgudGV4dH0pLG9lPVtdLHFlPXVlLm1hdGNoKC9eWyBcdF0qW+KAouKXpsK34o+6XVsgXHRdKiguKykkL2dtKXx8W10sRWU9MDtFZTxxZS5sZW5ndGg7RWUrKyl7dmFyIGJlPWZlKHFlW0VlXS5yZXBsYWNlKC9eWyBcdF0qW+KAouKXpsK34o+6XVsgXHRdKi8sIiIpKTtiZSYmKEIudGVzdChiZSl8fGIudGVzdChiZSl8fC9cYig/Ok9wZW5BSSBDb2RleHxtb2RlbDp8ZGlyZWN0b3J5OnxUaXA6fGVzYyB0byBpbnRlcnJ1cHQpXGIvaS50ZXN0KGJlKXx8b2UucHVzaChiZSkpfXZhciBxPUNlKHNlKXx8Q2UoR2UoTCkpfHwob2UubGVuZ3RoP29lW29lLmxlbmd0aC0xXTpudWxsKTtyZXR1cm4gdGUmJm4ucHVzaCh7cm9sZToidXNlciIsY29udGVudDp0ZX0pLHEmJm4ucHVzaCh7cm9sZToiYXNzaXN0YW50Iixjb250ZW50OnF9KSwhbi5sZW5ndGgmJk4/bi5wdXNoKHtyb2xlOiJ1c2VyIixjb250ZW50Ok4udGV4dH0pOiFuLmxlbmd0aCYmSyYmbi5wdXNoKHtyb2xlOiJ1c2VyIixjb250ZW50Okt9KSxufWZvcih2YXIgUmU9IlwwIix6PSJcYiIsbGU9Ilx2IixtZT0iXGYiLG5lPSIOIixjZT0iHyIsVmU9Ilx4QTAiLGR0PSJceDA3IixVdD1uZXcgUmVnRXhwKHMrIlxcW1swLTk7P10qW2EtekEtWl18IitzKyJcXF1bXiIrZHQrIl0qKCIrZHQrInwiK3MrIlxcXFxcXFxcKXwiK3MrIls+PD1lUF9YXl18WyIrUmUrIi0iK3orbGUrbWUrbmUrIi0iK2NlKyJdfCIrVmUrInwiK3UsImciKSxaZT1pLnJlcGxhY2UoVXQsZnVuY3Rpb24odXQpe3JldHVybiB1dD09PVZlPyIgIjp1dD09PXU/YToiIn0pLnNwbGl0KHUpLmpvaW4oYSksZXQ9WmUuc3BsaXQoYSkubWFwKGZ1bmN0aW9uKHV0KXtyZXR1cm4gdXQudHJpbSgpfSkuZmlsdGVyKEJvb2xlYW4pLHR0PVsvdGhpbmtpbmcgd2l0aCBoaWdoIGVmZm9ydC9pLC90aGlua2luZyB3aXRoIG1lZGl1bSBlZmZvcnQvaSwvdGhpbmtpbmcgd2l0aCBsb3cgZWZmb3J0L2ksbmV3IFJlZ0V4cCgidGhvdWdodCBmb3IgWzAtOV0rcyIsImkiKSxuZXcgUmVnRXhwKCJTYXV0ZWVkIGZvciBbMC05XSttIiwiaSIpLC9HZXJtaW5hdGluZy9pLC9Eb29kbGluZy9pLC9CcmV3aW5nL2ldLEZ0PW51bGwsbnQ9LTEscnQ9W10sRGU9W10sZGU9W10sd2U9MDt3ZTxldC5sZW5ndGg7d2UrKyl7dmFyIHc9ZXRbd2VdLGl0PXcucmVwbGFjZSgvXuKdr1xzKi8sIiIpO2lmKGl0LmluZGV4T2YoJ1RyeSInKT09PTB8fGl0LmluZGV4T2YoJ1RyeSAiJyk9PT0wKXtydC5wdXNoKGl0KTtjb250aW51ZX1mb3IodmFyIHd0PSExLFN0PTA7U3Q8dHQubGVuZ3RoO1N0KyspaWYodHRbU3RdLnRlc3Qodykpe3d0PSEwLGRlLnB1c2godyk7YnJlYWt9aWYoIXd0JiZ3JiZ3LmluZGV4T2YoIlx1MjUwMFx1MjUwMFx1MjUwMFx1MjUwMFx1MjUwMFx1MjUwMFx1MjUwMFx1MjUwMFx1MjUwMFx1MjUwMFx1MjUwMFx1MjUwMFx1MjUwMFx1MjUwMFx1MjUwMFx1MjUwMCIpIT09MCYmdyE9PSJcdTI3NkYiJiZ3LmluZGV4T2YoImVzYyB0byBpbnRlcnJ1cHQiKT09PS0xJiZ3LmluZGV4T2YoIkNsYXVkZSBDb2RlIHYiKT09PS0xJiZ3LmluZGV4T2YoIlNvbm5ldCIpPT09LTEmJncuaW5kZXhPZigifi8iKSE9PTAmJncuaW5kZXhPZigiXHUyNUNGIGhpZ2giKT09PS0xJiZ3LmluZGV4T2YoIkZhaWxlZCB0byBpbnN0YWxsIEFudGhyb3BpYyBtYXJrZXRwbGFjZSIpPT09LTEmJncuaW5kZXhPZigiQ2xhdWRlIENvZGUgaGFzIHN3aXRjaGVkIGZyb20gbnBtIHRvIG5hdGl2ZSBpbnN0YWxsZXIiKT09PS0xJiZ3LmluZGV4T2YoIkZsdXR0ZXJpbmciKT09PS0xJiZ3LmluZGV4T2YoIj8gZm9yIHNob3J0Y3V0cyIpPT09LTEmJncuaW5kZXhPZigiMDsiKSE9PTAmJncuaW5kZXhPZigiOTsiKSE9PTAmJncuaW5kZXhPZigiQ2xhdWRlIGlzIHdhaXRpbmciKT09PS0xJiYhKHcuaW5kZXhPZigiXHUyNzIyIikhPT0tMXx8dy5pbmRleE9mKCJcdTI3MzMiKSE9PS0xfHx3LmluZGV4T2YoIlx1MjczNiIpIT09LTF8fHcuaW5kZXhPZigiXHUyNzNCIikhPT0tMXx8dy5pbmRleE9mKCJcdTI3M0QiKSE9PS0xKSYmISh3LmluZGV4T2YoIlx1MjU5MCIpPT09MHx8dy5pbmRleE9mKCJcdTI1OUQiKT09PTB8fHcuaW5kZXhPZigiXHUyNTk4Iik9PT0wKSYmISgodz09PSJsdSJ8fHc9PT0idWUifHx3PT09InRyInx8dz09PSJ0aSJ8fHc9PT0iZyJ8fHc9PT0ibiJ8fHc9PT0iaVx1MjAyNiJ8fHc9PT0iXHUyMDI2Inx8dz09PSJ1dHMifHx3PT09Imx0Inx8dz09PSJyZyJ8fHc9PT0iXHhCNyIpJiZ3Lmxlbmd0aDw0KSYmISh3LmluZGV4T2YoIlx1MjczREYiKT09PTB8fHcuaW5kZXhPZigiXHUyNzNCRiIpPT09MCkmJncuaW5kZXhPZigibnBtIFdBUk4iKT09PS0xJiZ3LmluZGV4T2YoIm5wbSBub3RpY2UiKT09PS0xJiYhKHcuaW5kZXhPZigiYWRkZWQgIikhPT0tMSYmdy5pbmRleE9mKCIgcGFja2FnZXMiKSE9PS0xKSYmdy5pbmRleE9mKCJhdWRpdGVkICIpPT09LTEmJiEody5pbmRleE9mKCJmb3VuZCAiKSE9PS0xJiZ3LmluZGV4T2YoIiB2dWxuZXJhYmlsaXRpZXMiKSE9PS0xKSYmISh3LmluZGV4T2YoIlVzaW5nICIpIT09LTEmJncuaW5kZXhPZigiIGZvciAiKSE9PS0xJiZ3LmluZGV4T2YoInNlc3Npb24iKSE9PS0xKSYmdy5pbmRleE9mKCJZb3UgY2FuIHVzZSIpPT09LTEmJiEody5pbmRleE9mKCJQcmVzcyAiKSE9PS0xJiZ3LmluZGV4T2YoIiBmb3IiKSE9PS0xKSYmISh3LmluZGV4T2YoInR5cGUgIik9PT0wJiZ3LmluZGV4T2YoIiB0byAiKSE9PS0xKSYmdy5pbmRleE9mKCJbd2FuZF0iKSE9PTAmJncuaW5kZXhPZigiQ2FwdHVyZWQgQ2xhdWRlIHNlc3Npb24gSUQiKT09PS0xJiZ3LmluZGV4T2YoIlx1MjNGNSIpPT09LTEmJncuaW5kZXhPZigiYWNjZXB0ZWRpdCIpPT09LTEmJncuaW5kZXhPZigic2hpZnQrdGFiIik9PT0tMSYmdy5pbmRleE9mKCJ0YWJ0b2N5Y2xlIik9PT0tMSYmdy5pbmRleE9mKCJjdHJsK2ciKT09PS0xJiZ3LmluZGV4T2YoIi9lZmZvcnQiKT09PS0xJiYhKHcuaW5kZXhPZigiT3B1cyIpIT09LTEmJncuaW5kZXhPZigibW9kZWwiKSE9PS0xKSYmdy5pbmRleE9mKCJIYWlrdSIpPT09LTEmJncuaW5kZXhPZigidG8gY3ljbGUiKT09PS0xJiYhKHcuaW5kZXhPZigiaGlnaCBceEI3IikhPT0tMXx8dy5pbmRleE9mKCJoaWdoXHhCNyIpIT09LTEpJiYhKHcuaW5kZXhPZigibWVkaXVtIFx4QjciKSE9PS0xfHx3LmluZGV4T2YoIm1lZGl1bVx4QjciKSE9PS0xKSYmISh3LmluZGV4T2YoImxvdyBceEI3IikhPT0tMXx8dy5pbmRleE9mKCJsb3dceEI3IikhPT0tMSkpe2lmKHcuaW5kZXhPZigiXHUyNUNGIik9PT0wKXtpZih3PXcuc2xpY2UoMSkudHJpbSgpLCF3KWNvbnRpbnVlO0RlLnB1c2godyk7Y29udGludWV9dy5sZW5ndGg8MyYmIS9eW2EtekEtWl17M30kLy50ZXN0KHcpfHxEZS5wdXNoKHcpfX1pZihkZS5sZW5ndGg+MCl7dmFyIHl0PWRlW2RlLmxlbmd0aC0xXSxJdD15dC5tYXRjaChuZXcgUmVnRXhwKCJmb3IgKFswLTldK1ttc10rfCBbMC05XSttIFswLTldK3MpIiwiaSIpKSxhdD1JdD8iXHU2REYxXHU1RUE2XHU2MDFEXHU4MDAzICIrSXRbMF0ucmVwbGFjZSgvZm9yIC9pLCIiKToiXHU2REYxXHU1RUE2XHU2MDFEXHU4MDAzXHU0RTJELi4uIjtuLnB1c2goe3JvbGU6InRoaW5raW5nIixjb250ZW50OmF0LHR5cGU6ImRlZXAtdGhvdWdodCJ9KX1pZihydC5sZW5ndGg+MCl7dmFyIFZ0PXJ0W3J0Lmxlbmd0aC0xXS5yZXBsYWNlKC9eVHJ5XHMqLywiIikudHJpbSgpO24ucHVzaCh7cm9sZToicHJvbXB0Iixjb250ZW50OlZ0LHR5cGU6InN1Z2dlc3Rpb24ifSl9aWYoIURlLmxlbmd0aClyZXR1cm4gbjtmb3IodmFyIEhlPVtdLGtlPW51bGwsQWU9W10sd2U9MDt3ZTxEZS5sZW5ndGg7d2UrKylpZih3PURlW3dlXSx3LmluZGV4T2YoIlx1Mjc2RiIpPT09MCl7dmFyIGZ0PXcucmVwbGFjZSgvXuKdr1xzKi8sIiIpLnRyaW0oKTtpZihmdC5pbmRleE9mKCdUcnkiJyk9PT0wfHxmdC5pbmRleE9mKCdUcnkgIicpPT09MCljb250aW51ZTtrZSE9PW51bGwmJkFlLmxlbmd0aD4wJiYoSGUucHVzaCh7dXNlcjprZSxhc3Npc3RhbnRMaW5lczpBZX0pLEFlPVtdKSxmdD9rZT1mdDooa2UhPT1udWxsJiZBZS5sZW5ndGg+MCYmKEhlLnB1c2goe3VzZXI6a2UsYXNzaXN0YW50TGluZXM6QWV9KSxBZT1bXSksa2U9bnVsbCl9ZWxzZSBrZSE9PW51bGwmJih3LmluZGV4T2YoIlx1MjNGQSIpIT09LTEmJih3LmluZGV4T2YoIkhpISIpIT09LTF8fHcuaW5kZXhPZigiSGVsbG8iKSE9PS0xfHx3LmluZGV4T2YoIldoYXQiKSE9PS0xfHx3LmluZGV4T2YoIndvcmtpbmciKSE9PS0xKT9BZS5wdXNoKHcpOncuaW5kZXhPZigiXHUyM0ZBIik9PT0wP0FlLnB1c2gody5zbGljZSgxKS50cmltKCl8fHcpOncubGVuZ3RoPj04JiZ3LmluZGV4T2YoIlx1MjcyMiIpPT09LTEmJncuaW5kZXhPZigiXHUyNzMzIik9PT0tMSYmdy5pbmRleE9mKCJcdTI3MzYiKT09PS0xJiZ3LmluZGV4T2YoIlx1MjczQiIpPT09LTEmJncuaW5kZXhPZigiXHUyNzNEIik9PT0tMSYmdy5pbmRleE9mKCJcdTI1OTAiKSE9PTAmJncuaW5kZXhPZigiXHUyNTlEIikhPT0wJiZ3LmluZGV4T2YoIlx1MjU5OCIpIT09MCYmdy5pbmRleE9mKCJlc2N0b2ludGVycnVwdCIpPT09LTEmJncuaW5kZXhPZigiP2ZvciIpIT09MCYmdy5pbmRleE9mKCI/IGZvciIpIT09MCYmQWUucHVzaCh3KSk7aWYoa2UhPT1udWxsJiZBZS5sZW5ndGg+MCYmSGUucHVzaCh7dXNlcjprZSxhc3Npc3RhbnRMaW5lczpBZX0pLEhlLmxlbmd0aD09PTApe2Zvcih2YXIgcHQ9IiIsV2U9LTEsd2U9MDt3ZTxEZS5sZW5ndGg7d2UrKylpZih3PURlW3dlXSwhKHcuaW5kZXhPZignVHJ5IicpPT09MHx8dy5pbmRleE9mKCdUcnkgIicpPT09MCkmJncuaW5kZXhPZigiRmFpbGVkIHRvIGluc3RhbGwiKT09PS0xJiZ3LmluZGV4T2YoImN0cmwrZyIpPT09LTEmJncuaW5kZXhPZigiXHUyNUNGICIpIT09MCYmISh3Lmxlbmd0aDwyfHx3Lmxlbmd0aD4xMDApJiYvXlthLXpBLVpdLy50ZXN0KHcpKXtwdD13LnRyaW0oKSxXZT13ZTticmVha31pZihwdCYmV2U+PTApe3ZhciBobj1EZS5zbGljZShXZSsxKS5maWx0ZXIoZnVuY3Rpb24odXQpe3JldHVybiB1dC5sZW5ndGg+PTh9KTtobi5sZW5ndGg+MCYmSGUucHVzaCh7dXNlcjpwdCxhc3Npc3RhbnRMaW5lczpobn0pfX1mb3IodmFyIFR0PTA7VHQ8SGUubGVuZ3RoO1R0KyspaWYobi5wdXNoKHtyb2xlOiJ1c2VyIixjb250ZW50OkhlW1R0XS51c2VyfSksSGVbVHRdLmFzc2lzdGFudExpbmVzLmxlbmd0aD4wKXt2YXIgTG49Q3YoSGVbVHRdLmFzc2lzdGFudExpbmVzLmpvaW4oYSkpO24ucHVzaCh7cm9sZToiYXNzaXN0YW50Iixjb250ZW50OkxufSl9cmV0dXJuIG59dmFyIG1vPSJ0cmFuc3BhcmVudCI7ZnVuY3Rpb24gYmkoZSx0KXtmb3IodmFyIG49dHx8MyxpPWVbMF0ubGVuZ3RoKm4sYT1lLmxlbmd0aCpuLHU9IiIscz0wO3M8ZS5sZW5ndGg7cysrKWZvcih2YXIgbz0wO288ZVtzXS5sZW5ndGg7bysrKWVbc11bb10hPT1tbyYmKHUrPSc8cmVjdCB4PSInK28qbisnIiB5PSInK3MqbisnIiB3aWR0aD0iJytuKyciIGhlaWdodD0iJytuKyciIGZpbGw9IicrZVtzXVtvXSsnIi8+Jyk7cmV0dXJuJzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgJytpKyIgIithKyciIGNsYXNzPSJwaXhlbC1hdmF0YXItc3ZnIj4nK3UrIjwvc3ZnPiJ9ZnVuY3Rpb24gRmkoZSl7dmFyIHQ9bW8sbj1lLmJhc2UsaT1lLmRhcmssYT1lLmxpZ2h0fHxlLmJhc2UsdT1lLmFjY2VudHx8IiNGRkZGRkYiLHM9ZS5leWV8fCIjMkQyRDJEIixvPWUubW91dGh8fCIjRjI4QjlBIixsPWUubm9zZXx8ZS5kYXJrO3JldHVybltbdCxpLHQsdCx0LHQsdCx0LGksdF0sW2ksbixpLHQsdCx0LHQsaSxuLGldLFtpLG4sbixuLG4sbixuLG4sbixpXSxbbixuLHUscyxuLG4sdSxzLG4sbl0sW24sbix1LHUsbixuLHUsdSxuLG5dLFtuLG4sbixuLG8sbyxuLG4sbixuXSxbbixsLG4sYSxuLG4sYSxuLGwsbl0sW3QsbixuLG4sbixuLG4sbixuLHRdLFt0LHQsbixpLG4sbixpLG4sdCx0XSxbdCx0LHQsbix0LHQsbix0LHQsdF1dfXZhciBacD17YmFzZToiI0YwOTIzQSIsZGFyazoiI0M0NkExQSIsbGlnaHQ6IiNGMDkyM0EiLGFjY2VudDoiI0ZGRkZGRiIsZXllOiIjMkQyRDJEIixtb3V0aDoiI0YyOEI5QSIsbm9zZToiI0U4N0Q1QSJ9LGV2PXtiYXNlOiIjOUVBQUI4IixkYXJrOiIjNkI3QjhEIixsaWdodDoiI0M1Q0VEOCIsYWNjZW50OiIjRkZGRkZGIixleWU6IiM3RUM4OEIiLG1vdXRoOiIjRjI4QjlBIn0sZ289W3tiYXNlOiIjNUE4RkUwIixkYXJrOiIjMkU1QkIzIixsaWdodDoiIzlDQzBGMiIsYWNjZW50OiIjRkZGRkZGIixleWU6IiNGRkQ2NkUiLG1vdXRoOiIjRjI4QjlBIixwcmltYXJ5OiIjNUE4RkUwIn0se2Jhc2U6IiNBMDZGRTAiLGRhcms6IiM2QjQ1QTgiLGxpZ2h0OiIjQzhBNEYyIixhY2NlbnQ6IiNGRkZGRkYiLGV5ZToiI0ZGRTM2RSIsbW91dGg6IiNGMjhCOUEiLHByaW1hcnk6IiNBMDZGRTAifSx7YmFzZToiIzdCQjc2QiIsZGFyazoiIzRGOEE0MCIsbGlnaHQ6IiNBOUQ0OUMiLGFjY2VudDoiI0ZGRkZGRiIsZXllOiIjMkQyRDJEIixtb3V0aDoiI0YyOEI5QSIscHJpbWFyeToiIzdCQjc2QiJ9LHtiYXNlOiIjRDg2QTg4IixkYXJrOiIjOUMzQTU3IixsaWdodDoiI0U4QTRCNSIsYWNjZW50OiIjRkZGRkZGIixleWU6IiMyRDJEMkQiLG1vdXRoOiIjRkZGRkZGIixwcmltYXJ5OiIjRDg2QTg4In0se2Jhc2U6IiM1QkI3QjAiLGRhcms6IiMyRTc4NzMiLGxpZ2h0OiIjOUNENkQyIixhY2NlbnQ6IiNGRkZGRkYiLGV5ZToiI0ZGRDY2RSIsbW91dGg6IiNGMjhCOUEiLHByaW1hcnk6IiM1QkI3QjAifSx7YmFzZToiIzRBNEE2MCIsZGFyazoiIzFGMUYyRSIsbGlnaHQ6IiM2RTZFODQiLGFjY2VudDoiI0Y1RjVGNSIsZXllOiIjRkZENjZFIixtb3V0aDoiI0YyOEI5QSIscHJpbWFyeToiIzRBNEE2MCJ9LHtiYXNlOiIjRDhBODVBIixkYXJrOiIjOUM3MDI4IixsaWdodDoiI0VCQzc4QSIsYWNjZW50OiIjRkZGRkZGIixleWU6IiMyRDJEMkQiLG1vdXRoOiIjRjI4QjlBIixwcmltYXJ5OiIjRDhBODVBIn1dO2Z1bmN0aW9uIHR2KGUsdCl7Zm9yKHZhciBuPVN0cmluZyhlfHwiIiksaT0wLGE9MDthPG4ubGVuZ3RoO2ErKylpPShpPDw1KS1pK24uY2hhckNvZGVBdChhKXwwO3JldHVybiBNYXRoLmFicyhpKSV0fXZhciBobz17ImdlbmVyYWwtcHVycG9zZSI6Ilx1NEUwN1x1ODBGRFx1NzMyQiIsRXhwbG9yZToiXHU0RkE2XHU2M0EyXHU3MzJCIiwiY29kZS1leHBsb3JlciI6Ilx1NEZBNlx1NjNBMlx1NzMyQiIsImNvZGUtcmV2aWV3ZXIiOiJcdTVCQTFcdTY3RTVcdTczMkIiLCJjb2RlLWFyY2hpdGVjdCI6Ilx1NjdCNlx1Njc4NFx1NzMyQiIsImNvZGUtc2ltcGxpZmllciI6Ilx1N0I4MFx1NTMxNlx1NzMyQiIsImNvZGUtZ3VpZGUiOiJcdTU0MTFcdTVCRkNcdTczMkIiLFBsYW46Ilx1N0I1Nlx1NTIxMlx1NzMyQiIsImZlYXR1cmUtZGV2IjoiXHU1RjAwXHU1M0QxXHU3MzJCIiwicHItdGVzdC1hbmFseXplciI6Ilx1NkQ0Qlx1OEJENVx1NzMyQiIsInNpbGVudC1mYWlsdXJlLWh1bnRlciI6Ilx1NjJBNFx1NTM2Qlx1NzMyQiIsInR5cGUtZGVzaWduLWFuYWx5emVyIjoiXHU3QzdCXHU1NzhCXHU3MzJCIiwiY29tbWVudC1hbmFseXplciI6Ilx1NkNFOFx1OTFDQVx1NzMyQiJ9LExhPW51bGw7ZnVuY3Rpb24geW8oZSl7aWYoIWUpcmV0dXJuIiI7dmFyIHQ9ZS5hZ2VudFR5cGV8fCIiO2lmKHQmJmhvW3RdKXJldHVybiBob1t0XTtpZih0KXJldHVybiB0O3ZhciBuPShlLnRhc2tJZHx8IiIpLnNsaWNlKC00KXx8KGx1KCk9PT0iRW5nbGlzaCI/Ij8iOiJcdTY3MkFcdTc3RTUiKTtyZXR1cm4gTGUoInN1YmFnZW50LmhlbHBlcl9mYWxsYmFja19wcmVmaXgiKStufWZ1bmN0aW9uIEVvKGUpe3ZhciB0PXlvKGUpO2lmKCF0KXJldHVybiB0O3ZhciBuPUxhJiZlJiZlLnRhc2tJZD9MYS5nZXQoZS50YXNrSWQpOm51bGw7cmV0dXJuIG4/dCtuOnR9ZnVuY3Rpb24gYm8oZSl7dmFyIHQ9ZSYmKGUuYWdlbnRUeXBlfHxlLnRhc2tJZCl8fCJzdWJhZ2VudCI7cmV0dXJuIGdvW3R2KHQsZ28ubGVuZ3RoKV19ZnVuY3Rpb24gQ2coZSl7dmFyIHQ9Ym8oZSksbj1FbyhlKSxpPWJpKEZpKHQpKTtyZXR1cm4nPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlLWF2YXRhciBhc3Npc3RhbnQgc3ViYWdlbnQiIHN0eWxlPSItLWFnZW50LWNvbG9yOicrdC5wcmltYXJ5KyciPjxkaXYgY2xhc3M9InBpeGVsLWF2YXRhciI+JytpKyc8L2Rpdj48c3BhbiBjbGFzcz0iYXZhdGFyLW5hbWUiPicrcChuKSsiPC9zcGFuPjwvZGl2PiJ9ZnVuY3Rpb24gbnYoZSx0KXtpZighZXx8ZS50eXBlIT09InRvb2xfcmVzdWx0IilyZXR1cm4iIjt2YXIgbj1jbihlLmNvbnRlbnQpLGk9ZS5pc19lcnJvcj09PSEwLGE9dHlwZW9mIG49PSJzdHJpbmciP246bj09bnVsbD8iIjpTdHJpbmcobik7aWYoIWkmJiFhLnRyaW0oKSlyZXR1cm4nPGRpdiBjbGFzcz0ic3ViYWdlbnQtcmVwbHkgcGVuZGluZyI+PHNwYW4gY2xhc3M9InN1YmFnZW50LXJlcGx5LW1hcmtlciBwZW5kaW5nIj4nK3AoTGUoInN1YmFnZW50LnJ1bm5pbmciKSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0idHlwaW5nLWluZGljYXRvciI+PHNwYW4+PC9zcGFuPjxzcGFuPjwvc3Bhbj48c3Bhbj48L3NwYW4+PC9zcGFuPjwvZGl2Pic7dmFyIHU9YS50cmltKCk/YTpMZSgic3ViYWdlbnQubm9fb3V0cHV0Iikscz1hLnRyaW0oKT9fYSh1KTpwKHUpLG89TGUoaT8ic3ViYWdlbnQudGFzay5mYWlsZWQiOiJzdWJhZ2VudC50YXNrLmRvbmUiKSxsPWk/Ilx1MjcxNyI6Ilx1MjcxMyI7cmV0dXJuJzxkaXYgY2xhc3M9InN1YmFnZW50LXJlcGx5IGZpbmFsJysoaT8iIGVycm9yIjoiIikrJyI+PGRpdiBjbGFzcz0ic3ViYWdlbnQtcmVwbHktbWFya2VyICcrKGk/ImVycm9yIjoiZG9uZSIpKyciPjxzcGFuIGNsYXNzPSJzdWJhZ2VudC1yZXBseS1tYXJrZXItaWNvbiIgYXJpYS1oaWRkZW49InRydWUiPicrbCsnPC9zcGFuPjxzcGFuIGNsYXNzPSJzdWJhZ2VudC1yZXBseS1tYXJrZXItbGFiZWwiPicrcChvKSsnPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InN1YmFnZW50LXJlcGx5LWNvbnRlbnQiPicrcysiPC9kaXY+PC9kaXY+In12YXIgd2k9e2Fzc2lzdGFudDpiaShGaShacCkpLHVzZXI6YmkoRmkoZXYpKX0sRm89e3VzZXI6e25hbWU6Ilx1OEQ1Qlx1NTM1QVx1ODY0RVx1NTk5RSIsYXZhdGFyU3ZnOndpLnVzZXJ9LGFzc2lzdGFudDp7bmFtZToiXHU1MkU0XHU1MkIzXHU1MjFEXHU0RThDIixhdmF0YXJTdmc6d2kuYXNzaXN0YW50fX07ZnVuY3Rpb24gTWEoZSl7dmFyIHQ9ci5jb25maWcmJnIuY29uZmlnLnN0cnVjdHVyZWRDaGF0UGVyc29uYSxuPXQmJnRbZV0/dFtlXTpudWxsLGk9Rm9bZV18fEZvLmFzc2lzdGFudDtyZXR1cm57bmFtZTpuJiZ0eXBlb2Ygbi5uYW1lPT0ic3RyaW5nIiYmbi5uYW1lLnRyaW0oKT9uLm5hbWUudHJpbSgpOmkubmFtZSxhdmF0YXI6biYmdHlwZW9mIG4uYXZhdGFyPT0ic3RyaW5nIiYmbi5hdmF0YXIudHJpbSgpP24uYXZhdGFyLnRyaW0oKTpudWxsLGF2YXRhclN2ZzppLmF2YXRhclN2Z319ZnVuY3Rpb24gd28oZSl7cmV0dXJuJzxkaXYgY2xhc3M9InBpeGVsLWF2YXRhciI+JytlKyI8L2Rpdj4ifWZ1bmN0aW9uIEJnKGUsdCl7aWYoISghZXx8IWUucGFyZW50Tm9kZSkpe3ZhciBuPU1hKHQ9PT0idXNlciI/InVzZXIiOiJhc3Npc3RhbnQiKTtlLm91dGVySFRNTD13byhuLmF2YXRhclN2Zyl9fWZ1bmN0aW9uIFluKGUsdCl7dD10fHx7fTt2YXIgbj1lPT09InVzZXIiPyJ1c2VyIjoiYXNzaXN0YW50IixpPU1hKG4pLGE9aS5hdmF0YXI/JzxpbWcgY2xhc3M9InBpeGVsLWF2YXRhci1pbWFnZSIgc3JjPSInK3AoaS5hdmF0YXIpKyciIGFsdD0iJytwKGkubmFtZSkrJyIgb25lcnJvcj0iaGFuZGxlQ2hhdEF2YXRhckltYWdlRXJyb3IodGhpcywgJytKU09OLnN0cmluZ2lmeShuKSsnKSIgLz4nOndvKGkuYXZhdGFyU3ZnKSx1PXQubGVmdFNsb3Q/dC5sZWZ0U2xvdDoiIjtyZXR1cm4nPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlLWF2YXRhciAnK2UrJyI+JythKyc8c3BhbiBjbGFzcz0iYXZhdGFyLW5hbWUiPicrcChpLm5hbWUpKyI8L3NwYW4+Iit1KyI8L2Rpdj4ifWZ1bmN0aW9uIHJ2KCl7dmFyIGU9X3QoKTtyZXR1cm4hZXx8IWFlKGUpPyIiOnphKGUse2tpbmQ6ImNvbXBhY3QifSl9ZnVuY3Rpb24gT2EoZSx0LG4saSl7aWYoZS5yb2xlPT09InRoaW5raW5nIil7dmFyIGE9dHlwZW9mIGUuY29udGVudD09InN0cmluZyI/ZS5jb250ZW50OiIiO2lmKCFhLnRyaW0oKSlyZXR1cm4iIjt2YXIgdT1HdCgidGhpbmtpbmciLFtndShlLG4pLCJwdHkiXSkscz1zdCh1KSxvPXM9PT1udWxsP0FuKCJ0aGlua2luZyIpOnM7cmV0dXJuJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZSB0aGlua2luZyI+PGRpdiBjbGFzcz0idGhpbmtpbmctaW5saW5lIHRoaW5raW5nLXB0eSAnKyhvPyJleHBhbmRlZCI6ImNvbGxhcHNlZCIpKyciIGRhdGEtZXhwYW5kLWtpbmQ9InRoaW5raW5nIiBkYXRhLWV4cGFuZC1rZXk9IicrcCh1KSsnIiBkYXRhLXRoaW5raW5nPSInK3AoYSkrJyIgb25jbGljaz0iX190aGlua2luZ1RvZ2dsZSh0aGlzKSI+PHNwYW4gY2xhc3M9InRoaW5raW5nLWlubGluZS1pY29uIj5cdTI5QkY8L3NwYW4+PHNwYW4gY2xhc3M9InRoaW5raW5nLWlubGluZS1wcmV2aWV3Ij4nK3AoYSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0idGhpbmtpbmctaW5saW5lLWFjdGlvbiI+Jysobz8iXHU2NTM2XHU4RDc3IjoiXHU1QzU1XHU1RjAwIikrIjwvc3Bhbj48L2Rpdj48L2Rpdj4ifWlmKGUucm9sZT09PSJwcm9tcHQiKXJldHVybic8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UgcHJvbXB0Ij48ZGl2IGNsYXNzPSJwcm9tcHQtY2FyZCI+PGRpdiBjbGFzcz0icHJvbXB0LWljb24iPlx1MjE5MjwvZGl2PjxkaXYgY2xhc3M9InByb21wdC1jb250ZW50Ij5cdThCRDVcdThCRDVcdUZGMUE8c3BhbiBjbGFzcz0icHJvbXB0LXRleHQiPicrcChlLmNvbnRlbnQpKyI8L3NwYW4+PC9kaXY+PC9kaXY+PC9kaXY+IjtpZihBcnJheS5pc0FycmF5KGUuY29udGVudCkpcmV0dXJuIHZ2KGUsdCxuLGkpO3ZhciBsPVluKGUucm9sZSksYz1lLnJvbGU9PT0iYXNzaXN0YW50Ij9fYShlLmNvbnRlbnQpOmUucm9sZT09PSJ1c2VyIj9BbyhlLmNvbnRlbnQpOnAoZS5jb250ZW50KTtyZXR1cm4nPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlICcrZS5yb2xlKyciPicrbCsnPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlLWJ1YmJsZSI+JytjKyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIGl2KGUpe3ZhciB0PXt9O2lmKCFBcnJheS5pc0FycmF5KGUpKXJldHVybiB0O2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dO2lmKGkmJmkudHlwZT09PSJ0b29sX3Jlc3VsdCIpe3ZhciBhPWkudG9vbF91c2VfaWQ7aWYoIWEpY29udGludWU7dFthXXx8KHRbYV09W10pLHRbYV0ucHVzaChpKX19cmV0dXJuIHR9ZnVuY3Rpb24gQ28oZSx0KXt2YXIgbj1lJiZ0P2VbdF06bnVsbDtpZighbnx8IW4ubGVuZ3RoKXJldHVybiBudWxsO2Zvcih2YXIgaT0wO2k8bi5sZW5ndGgtMTtpKyspaWYoSG8obltpXSxuW2krMV0pKXJldHVybiBuW2krMV07cmV0dXJuIG5bbi5sZW5ndGgtMV19ZnVuY3Rpb24gYXYoZSx0KXt2YXIgbj1lJiZ0P2VbdF06bnVsbDtpZighbnx8bi5sZW5ndGg8MilyZXR1cm4hMTtmb3IodmFyIGk9MDtpPG4ubGVuZ3RoLTE7aSsrKWlmKEhvKG5baV0sbltpKzFdKSlyZXR1cm4hMDtyZXR1cm4hMX1mdW5jdGlvbiB1dihlKXtyZXR1cm4nPGRpdiBjbGFzcz0ic3RydWN0dXJlZC10b29sLWhpbnQiPlx1NURGMlx1ODFFQVx1NTJBOFx1NjA2Mlx1NTkwRFx1NEUwMFx1NkIyMSAnK3AoSGEoZSkpKyIgXHU1M0MyXHU2NTcwXHU5NUVFXHU5ODk4PC9kaXY+In12YXIgc3Y9e1JlYWQ6MSxHbG9iOjEsR3JlcDoxLFdlYkZldGNoOjEsV2ViU2VhcmNoOjEsVG9kb1JlYWQ6MX07ZnVuY3Rpb24gQm8oZSl7aWYoIWV8fGUudHlwZSE9PSJ0b29sX3VzZSJ8fCFzdltlLm5hbWVdKXJldHVybiExO2lmKGUubmFtZT09PSJSZWFkIil7dmFyIHQ9ZS5pbnB1dHx8e307aWYoaXUodC5maWxlX3BhdGh8fHQucGF0aHx8IiIpKXJldHVybiExfXJldHVybiEwfWZ1bmN0aW9uIG92KGUpe2Zvcih2YXIgdD1bXSxuPTA7bjxlLmxlbmd0aDspe3ZhciBpPWVbbl07aWYoaS50eXBlPT09InRvb2xfcmVzdWx0Iil7bisrO2NvbnRpbnVlfWlmKEJvKGkpKXtmb3IodmFyIGE9W3tibG9jazppLGluZGV4Om59XSx1PW4rMTt1PGUubGVuZ3RoOyl7aWYoZVt1XS50eXBlPT09InRvb2xfcmVzdWx0Iil7dSsrO2NvbnRpbnVlfWlmKEJvKGVbdV0pKWEucHVzaCh7YmxvY2s6ZVt1XSxpbmRleDp1fSksdSsrO2Vsc2UgYnJlYWt9YS5sZW5ndGg+PTI/dC5wdXNoKHt0eXBlOiJncm91cCIsaXRlbXM6YSxlbmRJbmRleDp1fSk6dC5wdXNoKHt0eXBlOiJzaW5nbGUiLGJsb2NrOmksaW5kZXg6bn0pLG49dX1lbHNlIHQucHVzaCh7dHlwZToic2luZ2xlIixibG9jazppLGluZGV4Om59KSxuKyt9cmV0dXJuIHR9dmFyIGx2PXtSZWFkOiJcdThCRkJcdTUzRDYiLEdsb2I6Ilx1NjQxQ1x1N0QyMiIsR3JlcDoiXHU2NDFDXHU3RDIyIixXZWJGZXRjaDoiXHU2MjkzXHU1M0Q2IixXZWJTZWFyY2g6Ilx1NjQxQ1x1N0QyMiIsVG9kb1JlYWQ6Ilx1NUY4NVx1NTI5RSJ9O2Z1bmN0aW9uIGN2KGUsdCxuLGkpe2Zvcih2YXIgYT17fSx1PTA7dTxlLmxlbmd0aDt1Kyspe3ZhciBzPWVbdV0uYmxvY2submFtZTthW3NdPShhW3NdfHwwKSsxfWZvcih2YXIgbz0hMCxsPSExLHU9MDt1PGUubGVuZ3RoO3UrKyl7dmFyIGM9ZVt1XS5ibG9jayxmPUNvKG4sYy5pZCk7Zj9mLmlzX2Vycm9yJiYobD0hMCk6bz0hMX12YXIgZD1vP2w/Ilx1MjcxNyI6Ilx1MjcxMyI6Ilx1MjAyNiIsdj1vP2w/ImVycm9yIjoiZG9uZSI6InBlbmRpbmciLGc9W107Zm9yKHZhciBoIGluIGEpZy5wdXNoKGFbaF0rIiAiKyhsdltoXXx8aCkpO2Zvcih2YXIgbT1nLmpvaW4oIiBceEI3ICIpLEU9R3QoInRvb2wtZ3JvdXAiLFtpLGVbMF0mJmVbMF0uaW5kZXgsZS5sZW5ndGhdKSxDPXN0KEUpLGI9Qz09PW51bGw/QW4oInRvb2xHcm91cCIpOkMsQj0iIix1PTA7dTxlLmxlbmd0aDt1KyspdHJ5e0IrPXhvKGVbdV0uYmxvY2ssdCxuLGVbdV0uaW5kZXgsaSl9Y2F0Y2h7Qis9JzxkaXYgY2xhc3M9InJlbmRlci1lcnJvciI+XHU1REU1XHU1MTc3XHU2RTMyXHU2N0QzXHU1OTMxXHU4RDI1PC9kaXY+J31yZXR1cm4nPGRpdiBjbGFzcz0idG9vbC1ncm91cCIgZGF0YS1leHBhbmQta2luZD0idG9vbC1ncm91cCIgZGF0YS1leHBhbmQta2V5PSInK3AoRSkrJyIgZGF0YS1leHBhbmRlZD0iJysoYj8idHJ1ZSI6ImZhbHNlIikrJyIgZGF0YS1zdGF0dXM9IicrdisnIj48ZGl2IGNsYXNzPSJ0b29sLWdyb3VwLXN1bW1hcnkiIG9uY2xpY2s9Il9fdG9vbEdyb3VwVG9nZ2xlKHRoaXMucGFyZW50Tm9kZSkiPjxzcGFuIGNsYXNzPSJ0b29sLWdyb3VwLXN0YXR1cyI+JytkKyc8L3NwYW4+PHNwYW4gY2xhc3M9InRvb2wtZ3JvdXAtdGV4dCI+JytwKG0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9InRvb2wtZ3JvdXAtY291bnQiPicrZS5sZW5ndGgrJyBcdTRFMkFcdThDMDNcdTc1Mjg8L3NwYW4+PHN2ZyBjbGFzcz0idG9vbC1ncm91cC1jaGV2cm9uIiB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHlsZT0idHJhbnNmb3JtOicrKGI/InJvdGF0ZSgxODBkZWcpIjoiIikrJyI+PHBvbHlsaW5lIHBvaW50cz0iNiA5IDEyIDE1IDE4IDkiLz48L3N2Zz48L2Rpdj48ZGl2IGNsYXNzPSJ0b29sLWdyb3VwLWJvZHkiIHN0eWxlPSJkaXNwbGF5OicrKGI/ImJsb2NrIjoibm9uZSIpKyc7Ij4nK0IrIjwvZGl2PjwvZGl2PiJ9d2luZG93Ll9fdG9vbEdyb3VwVG9nZ2xlPWZ1bmN0aW9uKGUpe2lmKGUpe3ZhciB0PWUuZ2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIik9PT0idHJ1ZSI7ZS5zZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kZWQiLHQ/ImZhbHNlIjoidHJ1ZSIpO3ZhciBuPWUucXVlcnlTZWxlY3RvcigiLnRvb2wtZ3JvdXAtYm9keSIpO24mJihuLnN0eWxlLmRpc3BsYXk9dD8ibm9uZSI6ImJsb2NrIik7dmFyIGk9ZS5xdWVyeVNlbGVjdG9yKCIudG9vbC1ncm91cC1jaGV2cm9uIik7aSYmKGkuc3R5bGUudHJhbnNmb3JtPXQ/IiI6InJvdGF0ZSgxODBkZWcpIiksRm4oZSwidG9vbC1ncm91cCIpfX07ZnVuY3Rpb24gUGEoZSl7aWYoIWV8fGUudHlwZSE9PSJ0b29sX3VzZSIpcmV0dXJuIG51bGw7dmFyIHQ9ZS5pbnB1dHx8e30sbj10eXBlb2YgdC5zdWJhZ2VudF90eXBlPT0ic3RyaW5nIj90LnN1YmFnZW50X3R5cGU6bnVsbDtyZXR1cm4hbiYmZS5uYW1lIT09IlRhc2siJiZlLm5hbWUhPT0iQWdlbnQiP251bGw6e3Rhc2tJZDplLmlkLGFnZW50VHlwZTpufHx2b2lkIDAsdGFza0Rlc2NyaXB0aW9uOnR5cGVvZiB0LmRlc2NyaXB0aW9uPT0ic3RyaW5nIj90LmRlc2NyaXB0aW9uOnZvaWQgMH19ZnVuY3Rpb24gZHYoZSl7dmFyIHQ9bmV3IE1hcDtpZighQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gdDtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIGk9ZVtuXTtpZighKCFpfHxpLnJvbGUhPT0iYXNzaXN0YW50Inx8IUFycmF5LmlzQXJyYXkoaS5jb250ZW50KSkpZm9yKHZhciBhPTA7YTxpLmNvbnRlbnQubGVuZ3RoO2ErKyl7dmFyIHU9aS5jb250ZW50W2FdO2lmKCEoIXV8fHUudHlwZSE9PSJ0b29sX3VzZSIpKXt2YXIgcz11Ll9fc3ViYWdlbnR8fFBhKHUpO3MmJnQuc2V0KHUuaWQscyl9fX1yZXR1cm4gdH1mdW5jdGlvbiBmdihlKXt2YXIgdD1uZXcgTWFwO2lmKCFBcnJheS5pc0FycmF5KGUpKXJldHVybiB0O3ZhciBuPW5ldyBNYXAsaT1uZXcgU2V0O2Z1bmN0aW9uIGEoZil7aWYoISghZnx8IWYudGFza0lkKSYmIWkuaGFzKGYudGFza0lkKSl7aS5hZGQoZi50YXNrSWQpO3ZhciBkPXlvKGYpO2QmJihuLmhhcyhkKXx8bi5zZXQoZCxbXSksbi5nZXQoZCkucHVzaChmLnRhc2tJZCkpfX1mb3IodmFyIHU9MDt1PGUubGVuZ3RoO3UrKyl7dmFyIHM9ZVt1XTtpZighKCFzfHwhQXJyYXkuaXNBcnJheShzLmNvbnRlbnQpKSlmb3IodmFyIG89MDtvPHMuY29udGVudC5sZW5ndGg7bysrKXt2YXIgbD1zLmNvbnRlbnRbb107aWYobCl7dmFyIGM9bC5fX3N1YmFnZW50fHwobC50eXBlPT09InRvb2xfdXNlIj9QYShsKTpudWxsKTtjJiZhKGMpfX19cmV0dXJuIG4uZm9yRWFjaChmdW5jdGlvbihmKXtpZighKGYubGVuZ3RoPDIpKWZvcih2YXIgZD0wO2Q8Zi5sZW5ndGg7ZCsrKXQuc2V0KGZbZF0sIiAjIisoZCsxKSl9KSx0fWZ1bmN0aW9uIERvKGUsdCl7dmFyIG49W107aWYoIUFycmF5LmlzQXJyYXkoZSl8fCFlLmxlbmd0aClyZXR1cm4gbjtmb3IodmFyIGk9bnVsbCxhPTA7YTxlLmxlbmd0aDthKyspe3ZhciB1PWVbYV0scz11JiZ1LnR5cGU9PT0idGV4dCImJnUuX19wcm9jZXNzaW5nPT09ITA7aWYocyYmaSl7aS5ibG9ja3MucHVzaCh1KTtjb250aW51ZX12YXIgbz11JiZ1Ll9fc3ViYWdlbnQ/dS5fX3N1YmFnZW50Om51bGw7b3x8KG89UGEodSkpLCFvJiZ1JiZ1LnR5cGU9PT0idG9vbF9yZXN1bHQiJiZ0JiZ0Lmhhcyh1LnRvb2xfdXNlX2lkKSYmKG89dC5nZXQodS50b29sX3VzZV9pZCkpO3ZhciBsPW8/by50YXNrSWQ6bnVsbDsoIWl8fGkua2V5IT09bCkmJihpPXtrZXk6bCxzdWJhZ2VudDpvLGJsb2NrczpbXSxmaXJzdEluZGV4OmF9LG4ucHVzaChpKSksaS5ibG9ja3MucHVzaCh1KX1yZXR1cm4gbn1mdW5jdGlvbiBxYShlLHQsbixpLGEpe3ZhciB1PSIiO3RyeXtmb3IodmFyIHM9b3YoZSksbz0wO288cy5sZW5ndGg7bysrKXt2YXIgbD1zW29dO3RyeXtpZihsLnR5cGU9PT0iZ3JvdXAiKXtmb3IodmFyIGM9W10sZj0wO2Y8bC5pdGVtcy5sZW5ndGg7ZisrKWMucHVzaCh7YmxvY2s6bC5pdGVtc1tmXS5ibG9jayxpbmRleDpsLml0ZW1zW2ZdLmluZGV4K3R9KTt1Kz1jdihjLG4saSxhKX1lbHNlIHUrPXhvKGwuYmxvY2ssbixpLGwuaW5kZXgrdCxhKX1jYXRjaHt1Kz0nPGRpdiBjbGFzcz0icmVuZGVyLWVycm9yIj5cdTZEODhcdTYwNkZcdTU3NTdcdTZFMzJcdTY3RDNcdTU5MzFcdThEMjU8L2Rpdj4nfX19Y2F0Y2h7dSs9JzxkaXYgY2xhc3M9InJlbmRlci1lcnJvciI+XHU2RDg4XHU2MDZGXHU2RTMyXHU2N0QzXHU1OTMxXHU4RDI1PC9kaXY+J31yZXR1cm4gdX1mdW5jdGlvbiBrbyhlLHQsbixpLGEsdSl7Zm9yKHZhciBzPXV8fHt9LG89cy5zaG93SGFuZG9mZiE9PSExLGw9IiIsYz1udWxsLGY9MDtmPGUubGVuZ3RoO2YrKyl7dmFyIGQ9ZVtmXSx2PXFhKGQuYmxvY2tzLGQuZmlyc3RJbmRleCx0LGksYSk7aWYoISghdnx8IXYudHJpbSgpKSlpZihkLnN1YmFnZW50KXt2YXIgZz1vJiZjIT09ZC5zdWJhZ2VudC50YXNrSWQ7bCs9cHYoZCxuLHYsYSxnKSxjPWQuc3ViYWdlbnQudGFza0lkfWVsc2UgbCs9JzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1zZWdtZW50IHBhcmVudCI+JytZbih0KSsnPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlLWNvbnRlbnQiPicrdisiPC9kaXY+PC9kaXY+IixjPW51bGx9cmV0dXJuIGx9ZnVuY3Rpb24gcHYoZSx0LG4saSxhKXt2YXIgdT1lLnN1YmFnZW50LHM9Ym8odSksbz1Fbyh1KSxsPXUudGFza0lkfHwiIixjPWJpKEZpKHMpKSxmO2lmKGEpe3ZhciBkPSc8c3Ryb25nIGNsYXNzPSJzdWJhZ2VudC1wYW5lbC1uYW1lIj4nK3AobykrJzwvc3Ryb25nPjxzcGFuIGNsYXNzPSJzdWJhZ2VudC1wYW5lbC10YWciIHRpdGxlPSInK3AoTGUoInN1YmFnZW50LnRhZ190aXRsZSIpKSsnIj4nK3AoTGUoInN1YmFnZW50LnRhZyIpKSsiPC9zcGFuPiIsdj0hISh1LnRhc2tEZXNjcmlwdGlvbiYmU3RyaW5nKHUudGFza0Rlc2NyaXB0aW9uKS50cmltKCkpLGc9dj9MZSgic3ViYWdlbnQuaGFuZG9mZi53aXRoX2Rlc2MiLHtwYXJlbnQ6cCh0KSxzdWI6ZH0pOkxlKCJzdWJhZ2VudC5oYW5kb2ZmIix7cGFyZW50OnAodCksc3ViOmR9KSxoPXY/JzxzcGFuIGNsYXNzPSJzdWJhZ2VudC1wYW5lbC10YXNrLWRlc2MiPicrcCh1LnRhc2tEZXNjcmlwdGlvbikrIjwvc3Bhbj4iOiIiO2Y9JzxzcGFuIGNsYXNzPSJzdWJhZ2VudC1wYW5lbC1hcnJvdyIgYXJpYS1oaWRkZW49InRydWUiPlx1MjFCMzwvc3Bhbj48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtYXR0cmlidXRpb24iPicrZytoKyI8L3NwYW4+In1lbHNlIGY9JzxzcGFuIGNsYXNzPSJzdWJhZ2VudC1wYW5lbC1hdHRyaWJ1dGlvbiI+PHN0cm9uZyBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtbmFtZSI+JytwKG8pKyc8L3N0cm9uZz48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtdGFzay1kZXNjIj4gJytwKExlKCJzdWJhZ2VudC5jb250aW51ZWQiKSkrIjwvc3Bhbj48L3NwYW4+Ijt2YXIgbT1HdCgic3ViYWdlbnQtcGFuZWwiLFtpLGxdKSxFPXN0KG0pLEM9RT09PW51bGw/ITE6ISFFO2Z1bmN0aW9uIGIoQil7cmV0dXJuJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtdG9nZ2xlIiBkYXRhLXBvc2l0aW9uPSInK0IrJyIgb25jbGljaz0iX19zdWJhZ2VudFBhbmVsVG9nZ2xlKGV2ZW50LCB0aGlzKSIgYXJpYS1leHBhbmRlZD0iJysoQz8idHJ1ZSI6ImZhbHNlIikrJyIgYXJpYS1sYWJlbD0iJytwKExlKEM/InVpLmNvbGxhcHNlX3BhbmVsX2FyaWEiOiJ1aS5leHBhbmRfcGFuZWxfYXJpYSIpKSsnIj48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtdG9nZ2xlLWxhYmVsIj4nK3AoTGUoQz8idWkuY29sbGFwc2UiOiJ1aS5leHBhbmQiKSkrJzwvc3Bhbj48c3ZnIGNsYXNzPSJzdWJhZ2VudC1wYW5lbC10b2dnbGUtaWNvbiIgd2lkdGg9IjEwIiBoZWlnaHQ9IjEwIiB2aWV3Qm94PSIwIDAgMTAgMTAiIGZpbGw9Im5vbmUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNMi41IDMuNzVMNSA2LjI1TDcuNSAzLjc1IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPjwvYnV0dG9uPid9cmV0dXJuJzxkaXYgY2xhc3M9InN1YmFnZW50LXBhbmVsIiBkYXRhLWV4cGFuZC1raW5kPSJzdWJhZ2VudC1wYW5lbCIgZGF0YS1leHBhbmQta2V5PSInK3AobSkrJyIgZGF0YS1hZ2VudC1pZD0iJytwKGwpKyciIGRhdGEtZXhwYW5kZWQ9IicrKEM/InRydWUiOiJmYWxzZSIpKyciIHN0eWxlPSItLWFnZW50LWNvbG9yOicrcy5wcmltYXJ5KyciPjxkaXYgY2xhc3M9InN1YmFnZW50LXBhbmVsLWhlYWRlciIgb25jbGljaz0iX19zdWJhZ2VudFBhbmVsVG9nZ2xlKGV2ZW50LCB0aGlzKSIgcm9sZT0iYnV0dG9uIiB0YWJpbmRleD0iMCIgYXJpYS1sYWJlbD0iJytwKExlKCJzdWJhZ2VudC50aXRsZV9hcmlhIikpKyciPjxzcGFuIGNsYXNzPSJzdWJhZ2VudC1wYW5lbC1hdmF0YXIiIGFyaWEtaGlkZGVuPSJ0cnVlIj4nK2MrIjwvc3Bhbj4iK2YrYigidG9wIikrJzwvZGl2PjxkaXYgY2xhc3M9InN1YmFnZW50LXBhbmVsLWJvZHkiPicrbisnPC9kaXY+PGRpdiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtZm9vdGVyIj48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtZm9vdGVyLWhpbnQiIGFyaWEtaGlkZGVuPSJ0cnVlIj5cdTIwMTQgJytwKG8pKyIgXHUyMDE0PC9zcGFuPiIrYigiYm90dG9tIikrIjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gdnYoZSx0LG4saSl7dmFyIGE9ZS5yb2xlLHU9Z3UoZSxuKSxzPWE9PT0idXNlciImJmUuY29udGVudCYmZS5jb250ZW50LnNvbWUoZnVuY3Rpb24oRil7cmV0dXJuIEYuX19xdWV1ZWR9KTtpZighZS5jb250ZW50fHxlLmNvbnRlbnQubGVuZ3RoPT09MClyZXR1cm4gYT09PSJhc3Npc3RhbnQiPyc8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UgJythKyciPicrWW4oYSkrJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1idWJibGUiPjxkaXYgY2xhc3M9InR5cGluZy1pbmRpY2F0b3IiPjxzcGFuPjwvc3Bhbj48c3Bhbj48L3NwYW4+PHNwYW4+PC9zcGFuPjwvZGl2PjwvZGl2PjwvZGl2Pic6JzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZSAnK2ErJyBlbXB0eS1tZXNzYWdlIiBkYXRhLW1lc3NhZ2Uta2V5PSInK3AodSkrJyI+JytZbihhKSsnPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlLWNvbnRlbnQiPjxzcGFuIGNsYXNzPSJlbXB0eS1tZXNzYWdlLWhpbnQiPlx1RkYwOFx1N0E3QVx1NkQ4OFx1NjA2Rlx1RkYwOTwvc3Bhbj48L2Rpdj48L2Rpdj4nO3ZhciBvPWl2KGUuY29udGVudCksbD1NYSgiYXNzaXN0YW50Iik7aWYoYSE9PSJhc3Npc3RhbnQiKXt2YXIgYz1EbyhlLmNvbnRlbnQsaSksZj1jLnNvbWUoZnVuY3Rpb24oRil7cmV0dXJuIEYuc3ViYWdlbnR9KSxkPXM/IiBxdWV1ZWQiOiIiLHY9cz8nPHNwYW4gY2xhc3M9InF1ZXVlZC1iYWRnZSI+XHU2MzkyXHU5NjFGXHU0RTJEPC9zcGFuPic6IiIsZz1ydigpO2lmKGYpe3ZhciBoPWtvKGMsYSxsLm5hbWUsbyx1LHtzaG93SGFuZG9mZjohMX0pO3JldHVybic8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UgJythK2QrJyBtdWx0aS1hZ2VudCIgZGF0YS1tZXNzYWdlLWtleT0iJytwKHUpKyciPicraCt2KyI8L2Rpdj4ifXZhciBtPXFhKGUuY29udGVudCwwLGEsbyx1KTtyZXR1cm4nPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlICcrYStkKyciIGRhdGEtbWVzc2FnZS1rZXk9IicrcCh1KSsnIj4nK1luKGEse2xlZnRTbG90Omd9KSsnPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlLWNvbnRlbnQiPicrbSt2KyI8L2Rpdj48L2Rpdj4ifXZhciBFPURvKGUuY29udGVudCxpKSxDPUUuc29tZShmdW5jdGlvbihGKXtyZXR1cm4gRi5zdWJhZ2VudH0pO2lmKCFDKXt2YXIgYj1xYShlLmNvbnRlbnQsMCxhLG8sdSk7cmV0dXJuJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZSAnK2ErJyIgZGF0YS1tZXNzYWdlLWtleT0iJytwKHUpKyciPicrWW4oYSkrJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1jb250ZW50Ij4nK2IrIjwvZGl2PjwvZGl2PiJ9dmFyIEI9JzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZSAnK2ErJyBtdWx0aS1hZ2VudCIgZGF0YS1tZXNzYWdlLWtleT0iJytwKHUpKyciPic7cmV0dXJuIEIrPWtvKEUsYSxsLm5hbWUsbyx1LHtzaG93SGFuZG9mZjohMH0pLEIrPSI8L2Rpdj4iLEJ9dmFyIG12PS9eXHMqXFvpmYTku7blt7LkuIrkvKDvvIzor7fmn6XnnIvku6XkuIvmlofku7Y6XG4oW1xzXFNdKj8pXF1cbisvO2Z1bmN0aW9uIGd2KGUpe3ZhciB0PShlfHwiIikudHJpbSgpO2lmKCF0KXJldHVybiIiO3ZhciBuPXQuc3BsaXQoIi8iKS5wb3AoKXx8dDtpZihpdSh0KSl7dmFyIGk9Ii9hcGkvZmlsZS1yYXc/cGF0aD0iK2VuY29kZVVSSUNvbXBvbmVudCh0KTtyZXR1cm4nPGRpdiBjbGFzcz0idXNlci1hdHRhY2htZW50LWltYWdlIj48aW1nIGNsYXNzPSJ1c2VyLWF0dGFjaG1lbnQtdGh1bWIiIGxvYWRpbmc9ImxhenkiIHNyYz0iJytpKyciIGFsdD0iJytwKG4pKyciIGRhdGEtcGF0aD0iJytwKHQpK2AiIG9uY2xpY2s9ImV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyBpZih3aW5kb3cuX19vcGVuRmlsZVByZXZpZXcpd2luZG93Ll9fb3BlbkZpbGVQcmV2aWV3KHRoaXMuZ2V0QXR0cmlidXRlKCdkYXRhLXBhdGgnKSk7IiBvbmVycm9yPSJ2YXIgdz10aGlzLmNsb3Nlc3QoJy51c2VyLWF0dGFjaG1lbnQtaW1hZ2UnKTsgaWYodyl3LnN0eWxlLmRpc3BsYXk9J25vbmUnOyIgLz48L2Rpdj5gfXJldHVybic8ZGl2IGNsYXNzPSJ1c2VyLWF0dGFjaG1lbnQtZmlsZSIgZGF0YS1wYXRoPSInK3AodCkrYCIgb25jbGljaz0iZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IGlmKHdpbmRvdy5fX29wZW5GaWxlUHJldmlldyl3aW5kb3cuX19vcGVuRmlsZVByZXZpZXcodGhpcy5nZXRBdHRyaWJ1dGUoJ2RhdGEtcGF0aCcpKTsiPjxzcGFuIGNsYXNzPSJ1c2VyLWF0dGFjaG1lbnQtZmlsZS1pY29uIj48c3ZnIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjEzIiBoZWlnaHQ9IjEzIiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiPjxwYXRoIGQ9Ik05IDEuNUg0YTEgMSAwIDAgMC0xIDF2MTFhMSAxIDAgMCAwIDEgMWg4YTEgMSAwIDAgMCAxLTFWNS41TDkgMS41eiIvPjxwYXRoIGQ9Ik05IDEuNVY1LjVoNCIvPjwvc3ZnPjwvc3Bhbj48c3BhbiBjbGFzcz0idXNlci1hdHRhY2htZW50LWZpbGUtbmFtZSI+YCtwKG4pKyI8L3NwYW4+PC9kaXY+In1mdW5jdGlvbiBBbyhlKXt2YXIgdD1lfHwiIixuPXQubWF0Y2gobXYpO2lmKCFuKXJldHVybiBwKHQpO2Zvcih2YXIgaT0iIixhPW5bMV0uc3BsaXQoYApgKSx1PTA7dTxhLmxlbmd0aDt1KyspaSs9Z3YoYVt1XSk7dmFyIHM9dC5zbGljZShuWzBdLmxlbmd0aCksbz1pPyc8ZGl2IGNsYXNzPSJ1c2VyLWF0dGFjaG1lbnRzIj4nK2krIjwvZGl2PiI6IiIsbD1zLnRyaW0oKT8nPGRpdiBjbGFzcz0idXNlci1hdHRhY2htZW50LXRleHQiPicrcChzKSsiPC9kaXY+IjoiIjtyZXR1cm4gbytsfWZ1bmN0aW9uIHhvKGUsdCxuLGksYSl7aWYoIWV8fCFlLnR5cGV8fGUudHlwZT09PSJ0b29sX3VzZSImJmUuX19zdWJhZ2VudCYmZS5fX3N1YmFnZW50LnRhc2tJZD09PWUuaWQpcmV0dXJuIiI7aWYoZS50eXBlPT09InRvb2xfcmVzdWx0IiYmZS5fX3N1YmFnZW50JiZlLl9fc3ViYWdlbnQudGFza0lkPT09ZS50b29sX3VzZV9pZClyZXR1cm4gbnYoZSx0KTtzd2l0Y2goZS50eXBlKXtjYXNlInRleHQiOnJldHVybiB0PT09ImFzc2lzdGFudCImJmUuX19wcm9jZXNzaW5nPyc8ZGl2IGNsYXNzPSJ0eXBpbmctaW5kaWNhdG9yIj48c3Bhbj48L3NwYW4+PHNwYW4+PC9zcGFuPjxzcGFuPjwvc3Bhbj48L2Rpdj4nOnQ9PT0iYXNzaXN0YW50Ij9fYShlLnRleHR8fCIiKTpBbyhlLnRleHR8fCIiKTtjYXNlInRoaW5raW5nIjp2YXIgdT1lLnRoaW5raW5nfHwiIixzPWUudGhpbmtpbmc9PT12b2lkIDAmJmUudHlwZT09PSJ0aGlua2luZyI7aWYocylyZXR1cm4nPGRpdiBjbGFzcz0idGhpbmtpbmctaW5saW5lIHRoaW5raW5nLXN0cmVhbWluZyIgZGF0YS10aGlua2luZz0iIj48ZGl2IGNsYXNzPSJ0aGlua2luZy1zdHJlYW1pbmctaW5uZXIiPjxzcGFuIGNsYXNzPSJ0aGlua2luZy1zdHJlYW1pbmctaWNvbiBzcGlubmluZyI+XHUyOUJGPC9zcGFuPjxkaXYgY2xhc3M9InRoaW5raW5nLXN0cmVhbWluZy10ZXh0Ij48L2Rpdj48L2Rpdj48L2Rpdj4nO2lmKCF1LnRyaW0oKSlyZXR1cm4iIjt2YXIgbz11Lmxlbmd0aD42MD91LnNsaWNlKDAsNTcpKyJcdTIwMjYiOnUsbD1HdCgidGhpbmtpbmciLFthLGldKSxjPXN0KGwpLGY9Yz09PW51bGw/QW4oInRoaW5raW5nIik6YztyZXR1cm4nPGRpdiBjbGFzcz0idGhpbmtpbmctaW5saW5lICcrKGY/ImV4cGFuZGVkIjoiY29sbGFwc2VkIikrJyIgZGF0YS1leHBhbmQta2luZD0idGhpbmtpbmciIGRhdGEtZXhwYW5kLWtleT0iJytwKGwpKyciIGRhdGEtdGhpbmtpbmc9IicrcCh1KSsnIiBvbmNsaWNrPSJfX3RoaW5raW5nVG9nZ2xlKHRoaXMpIj48c3BhbiBjbGFzcz0idGhpbmtpbmctaW5saW5lLWljb24iPlx1MjlCRjwvc3Bhbj48c3BhbiBjbGFzcz0idGhpbmtpbmctaW5saW5lLXByZXZpZXciPicrcChmP3U6bykrJzwvc3Bhbj48c3BhbiBjbGFzcz0idGhpbmtpbmctaW5saW5lLWFjdGlvbiI+JysoZj8iXHU2NTM2XHU4RDc3IjoiXHU1QzU1XHU1RjAwIikrIjwvc3Bhbj48L2Rpdj4iO2Nhc2UidG9vbF91c2UiOnZhciBkPUNvKG4sZS5pZCksdj1idihlLGQsaSxhKTtyZXR1cm4gYXYobixlLmlkKSYmKHY9dXYoZS5uYW1lfHwiXHU1REU1XHU1MTc3IikrdiksdjtjYXNlInRvb2xfcmVzdWx0IjpyZXR1cm4iIjtkZWZhdWx0OnZhciBnPWUmJmUudHlwZT9TdHJpbmcoZS50eXBlKToiXHU2NzJBXHU3N0U1IixoPSIiO3RyeXtoPUpTT04uc3RyaW5naWZ5KGUsbnVsbCwyKX1jYXRjaHtoPSJ7fSJ9cmV0dXJuYDxkaXYgY2xhc3M9InVua25vd24tYmxvY2sgY29sbGFwc2VkIiBvbmNsaWNrPSJ0aGlzLmNsYXNzTGlzdC50b2dnbGUoJ2NvbGxhcHNlZCcpIj48ZGl2IGNsYXNzPSJ1bmtub3duLWJsb2NrLWhlYWRlciI+PHNwYW4gY2xhc3M9InVua25vd24tYmxvY2staWNvbiI+Pzwvc3Bhbj48c3BhbiBjbGFzcz0idW5rbm93bi1ibG9jay1sYWJlbCI+XHU2NzJBXHU4QkM2XHU1MjJCXHU3Njg0XHU1MTg1XHU1QkI5XHU1NzU3XHVGRjFBYCtwKGcpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InVua25vd24tYmxvY2stdG9nZ2xlIj5cdTI1QkM8L3NwYW4+PC9kaXY+PHByZSBjbGFzcz0idW5rbm93bi1ibG9jay1ib2R5Ij4nK3AoaCkrIjwvcHJlPjwvZGl2PiJ9fWZ1bmN0aW9uIGh2KGUsdCxuLGksYSx1LHMpe3ZhciBvPWUuaWR8fCJ0b29sLSIrbixsPUd0KCJpbmxpbmUtdG9vbCIsW3Usb3x8cyxzXSksYz1zdChsKSxmPWUuaW5wdXR8fHt9LGQ9Y24odCYmdC5jb250ZW50KSx2PXQmJnQuaXNfZXJyb3IsZz1kLmxlbmd0aD4wLGg9dj8iXHUyNzE3IjpnPyJcdTI3MTMiOiJcdTIwMjYiLG09IiIsRT0iIixDPSIiLGI9IiI7aWYobj09PSJSZWFkIil7bT0nPHN2ZyBjbGFzcz0iaW5saW5lLXRvb2wtaWNvbiIgdmlld0JveD0iMCAwIDE2IDE2IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSI+PHBhdGggZD0iTTEgMy41QTEuNSAxLjUgMCAwIDEgMi41IDJoMi43NjRjLjk1OCAwIDEuNzYuNTYgMi4zMTEgMS4xODRDOC40MDUgMy43NyA5LjE0NiA0IDEwIDRoMy41QTEuNSAxLjUgMCAwIDEgMTUgNS41djdhMS41IDEuNSAwIDAgMS0xLjUgMS41aC0xMUExLjUgMS41IDAgMCAxIDEgMTIuNXYtOXoiLz48cGF0aCBkPSJNMiA1LjVoMTJNMiA4aDhNMiAxMC41aDUiLz48L3N2Zz4nO3ZhciBCPWYuZmlsZV9wYXRofHxmLnBhdGh8fGl8fCIiLEY9IiI7Zi5saW1pdCYmKEY9IiAiK2Yub2Zmc2V0KyItIisoZi5vZmZzZXQrZi5saW1pdCkpLEU9QixDPUZ9ZWxzZSBpZihuPT09Ikdsb2IiKXttPSc8c3ZnIGNsYXNzPSJpbmxpbmUtdG9vbC1pY29uIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ij48Y2lyY2xlIGN4PSI3IiBjeT0iNyIgcj0iNSIvPjxwYXRoIGQ9Ik0xMC41IDEwLjVMMTQgMTQiLz48L3N2Zz4nO3ZhciB4PWYucGF0dGVybnx8IiIsUz1mLnBhdGh8fGl8fCIiO0U9eCxDPVN9ZWxzZSBpZihuPT09IkdyZXAiKXttPSc8c3ZnIGNsYXNzPSJpbmxpbmUtdG9vbC1pY29uIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ij48Y2lyY2xlIGN4PSI2LjUiIGN5PSI2LjUiIHI9IjQuNSIvPjxwYXRoIGQ9Ik0xMS41IDExLjVMMTUgMTUiLz48L3N2Zz4nO3ZhciB4PWYucGF0dGVybnx8IiIsUz1mLnBhdGh8fGl8fCIiO0U9eCxDPVMsZi5jb250ZXh0JiYoQys9IiAtQyIrZi5jb250ZXh0KX1lbHNlIGlmKG49PT0iV2ViRmV0Y2giKXttPSc8c3ZnIGNsYXNzPSJpbmxpbmUtdG9vbC1pY29uIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ij48Y2lyY2xlIGN4PSI4IiBjeT0iOCIgcj0iNi41Ii8+PHBhdGggZD0iTTggMS41djEzTTEuNSA4aDEzIi8+PC9zdmc+Jzt2YXIgaj1mLnVybHx8IiI7RT1qLEM9YXx8IiJ9ZWxzZSBpZihuPT09IldlYlNlYXJjaCIpe209JzxzdmcgY2xhc3M9ImlubGluZS10b29sLWljb24iIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiPjxjaXJjbGUgY3g9IjciIGN5PSI3IiByPSI1Ii8+PHBhdGggZD0iTTEwLjUgMTAuNUwxNCAxNCIvPjxwYXRoIGQ9Ik01IDdoNE03IDV2NCIvPjwvc3ZnPic7dmFyIFI9Zi5xdWVyeXx8IiI7RT1SLEM9YXx8IiJ9ZWxzZSBuPT09IlRvZG9SZWFkIj8obT0nPHN2ZyBjbGFzcz0iaW5saW5lLXRvb2wtaWNvbiIgdmlld0JveD0iMCAwIDE2IDE2IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSI+PHJlY3QgeD0iMiIgeT0iMiIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiByeD0iMiIvPjxwYXRoIGQ9Ik01IDhsMiAyIDQtNCIvPjwvc3ZnPicsRT0iXHU4QkZCXHU1M0Q2XHU1Rjg1XHU1MjlFXHU1MjE3XHU4ODY4IixDPWF8fCIiKToobT0nPHN2ZyBjbGFzcz0iaW5saW5lLXRvb2wtaWNvbiIgdmlld0JveD0iMCAwIDE2IDE2IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSI+PGNpcmNsZSBjeD0iOCIgY3k9IjgiIHI9IjYuNSIvPjxwYXRoIGQ9Ik04IDV2My41TTggMTFoLjAxIi8+PC9zdmc+JyxFPUhhKG4pLEM9YXx8IiIpO2lmKGcpe3ZhciAkPWQuc3BsaXQoYApgKTskLmxlbmd0aD4xMD9iPSQuc2xpY2UoMCwxMCkuam9pbihgCmApK2AKXHUyMDI2YDpiPWR9dmFyIEk9cChkKSxEPXAoYiksVD1kLE89IiIsVT1jPT09bnVsbD9BbigiaW5saW5lVG9vbHMiKTpjO2c/Tz0nPGRpdiBjbGFzcz0iaW5saW5lLXRvb2wtZXhwYW5kZWQiIHN0eWxlPSJkaXNwbGF5OiAnKyhVPyJibG9jayI6Im5vbmUiKSsnOyI+PGRpdiBjbGFzcz0iaW5saW5lLXRvb2wtcmVzdWx0Ij4nK1NvKGQsbikrIjwvZGl2PjwvZGl2PiI6dj9PPSc8ZGl2IGNsYXNzPSJpbmxpbmUtdG9vbC1leHBhbmRlZCIgc3R5bGU9ImRpc3BsYXk6ICcrKFU/ImJsb2NrIjoibm9uZSIpKyc7Ij48ZGl2IGNsYXNzPSJpbmxpbmUtdG9vbC1yZXN1bHQgaW5saW5lLXRvb2wtZXJyb3IiPicrcChkfHwiXHU2NENEXHU0RjVDXHU1OTMxXHU4RDI1IikrIjwvZGl2PjwvZGl2PiI6dHx8KE89JzxkaXYgY2xhc3M9ImlubGluZS10b29sLWV4cGFuZGVkIiBzdHlsZT0iZGlzcGxheTogJysoVT8iYmxvY2siOiJub25lIikrJzsiPjxkaXYgY2xhc3M9ImlubGluZS10b29sLWxvYWRpbmciPlx1N0I0OVx1NUY4NVx1NTRDRFx1NUU5NFx1MjAyNjwvZGl2PjwvZGl2PicpO3ZhciBWPXQmJnQuX3RydW5jYXRlZD09PSEwLFg9IiI7aWYobj09PSJSZWFkIil7dmFyIGVlPWYuZmlsZV9wYXRofHxmLnBhdGh8fGl8fCIiO2lmKGVlJiZpdShlZSkpe3ZhciBaPSIvYXBpL2ZpbGUtcmF3P3BhdGg9IitlbmNvZGVVUklDb21wb25lbnQoZWUpO1g9JzxkaXYgY2xhc3M9ImlubGluZS10b29sLWltYWdlIiBvbmNsaWNrPSJldmVudC5zdG9wUHJvcGFnYXRpb24oKTsiPjxpbWcgY2xhc3M9ImlubGluZS10b29sLWltYWdlLXRodW1iIiBsb2FkaW5nPSJsYXp5IiBzcmM9IicrWisnIiBhbHQ9IicrcChCKSsnIiBkYXRhLXBhdGg9IicrcChlZSkrYCIgb25jbGljaz0iZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IGlmKHdpbmRvdy5fX29wZW5GaWxlUHJldmlldyl3aW5kb3cuX19vcGVuRmlsZVByZXZpZXcodGhpcy5nZXRBdHRyaWJ1dGUoJ2RhdGEtcGF0aCcpKTsiIG9uZXJyb3I9InZhciB3PXRoaXMuY2xvc2VzdCgnLmlubGluZS10b29sLWltYWdlJyk7IGlmKHcpdy5zdHlsZS5kaXNwbGF5PSdub25lJzsiIC8+PC9kaXY+YH19dmFyIHVlPUM/JzxzcGFuIGNsYXNzPSJpbmxpbmUtdG9vbC1tZXRhIj4nK3AoQykrIjwvc3Bhbj4iOiIiLEw9dj8iaW5saW5lLXRvb2wtZXJyb3ItaW5saW5lIjoiIjtVJiYoTCs9IiBpbmxpbmUtdG9vbC1vcGVuIik7dmFyIE09Vj8nZGF0YS10cnVuY2F0ZWQ9InRydWUiIGRhdGEtdG9vbC11c2UtaWQ9IicrcChlLmlkfHwiIikrJyIgJzoiIjtyZXR1cm4nPGRpdiBjbGFzcz0iaW5saW5lLXRvb2wgJytMKyciIGRhdGEtZXhwYW5kLWtpbmQ9ImlubGluZS10b29sIiBkYXRhLWV4cGFuZC1rZXk9IicrcChsKSsnIiBkYXRhLXJlc3VsdD0iJytwKFQpKyciIGRhdGEtcHJldmlldz0iJytEKyciIGRhdGEtc3RhdHVzPSInKyh2PyJlcnJvciI6Zz8iZG9uZSI6InBlbmRpbmciKSsnIiAnK00rJ29uY2xpY2s9Il9faW5saW5lVG9vbFRvZ2dsZSh0aGlzKSI+PGRpdiBjbGFzcz0iaW5saW5lLXRvb2wtcm93Ij48c3BhbiBjbGFzcz0iaW5saW5lLXRvb2wtc3RhdHVzIj4nK2grIjwvc3Bhbj4iK20rJzxzcGFuIGNsYXNzPSJpbmxpbmUtdG9vbC10aXRsZSI+JytwKEUpKyI8L3NwYW4+Iit1ZSsiPC9kaXY+IitYK08rIjwvZGl2PiJ9ZnVuY3Rpb24geXYoZSx0LG4saSxhKXt2YXIgdT1lLmlucHV0fHx7fSxzPXUuY29tbWFuZHx8dS5jbWR8fCIiLG89Y24odCYmdC5jb250ZW50KSxsPWUuaWR8fCJ0b29sLSIrbixjPUd0KCJ0ZXJtaW5hbCIsW2ksbHx8YSxhXSksZj1zdChjKSxkPXQmJnQuaXNfZXJyb3Isdj11LmV4aXRDb2RlLGc9by5sZW5ndGg+MCxoPSIiO3Q/ZD9oPSc8c3BhbiBjbGFzcz0idGVybS1zdGF0dXMtZG90IHRlcm0tZXJyb3IiPjwvc3Bhbj4nOnY9PT0wfHx2PT09dm9pZCAwP2g9JzxzcGFuIGNsYXNzPSJ0ZXJtLXN0YXR1cy1kb3QgdGVybS1zdWNjZXNzIj48L3NwYW4+JzpoPSc8c3BhbiBjbGFzcz0idGVybS1zdGF0dXMtZG90IHRlcm0td2FybiI+PC9zcGFuPic6aD0nPHNwYW4gY2xhc3M9InRlcm0tc3RhdHVzLWRvdCB0ZXJtLXJ1bm5pbmciPjwvc3Bhbj4nO2Zvcih2YXIgbT0nPHNwYW4gY2xhc3M9InRlcm0tcHJvbXB0Ij4kPC9zcGFuPicsRT1wKHMpLEM9by5zcGxpdChgCmApLGI9IiIsQj0wO0I8Qy5sZW5ndGg7QisrKXt2YXIgRj1DW0JdOyFGJiZCPT09Qy5sZW5ndGgtMXx8KGIrPSc8ZGl2IGNsYXNzPSJ0ZXJtLWxpbmUiPicrcChGKSsiPC9kaXY+Iil9dmFyIHg9IiI7aWYodCYmdiE9PXZvaWQgMCl7dmFyIFM9dj09PTA/InRlcm0tZXhpdC1zdWNjZXNzIjoidGVybS1leGl0LWVycm9yIjt4PSc8ZGl2IGNsYXNzPSJ0ZXJtLWV4aXQgJytTKyciPmV4aXQgJyt2KyI8L2Rpdj4ifXZhciBqPXMubGVuZ3RoPjgwP3Muc2xpY2UoMCw3NykrIlx1MjAyNiI6cyxSPWY9PT1udWxsP0FuKCJ0ZXJtaW5hbCIpOmYsJD10JiZ0Ll90cnVuY2F0ZWQ9PT0hMCxJPSQ/JyBkYXRhLXRydW5jYXRlZD0idHJ1ZSIgZGF0YS10b29sLXVzZS1pZD0iJytwKGUuaWR8fCIiKSsnIic6IiI7cmV0dXJuJzxkaXYgY2xhc3M9ImlubGluZS10ZXJtaW5hbCIgZGF0YS1leHBhbmQta2luZD0idGVybWluYWwiIGRhdGEtZXhwYW5kLWtleT0iJytwKGMpKyciIGRhdGEtZXhwYW5kZWQ9IicrKFI/InRydWUiOiJmYWxzZSIpKyciJytJKyc+PGRpdiBjbGFzcz0idGVybS1oZWFkZXIiIG9uY2xpY2s9Il9fdGVybWluYWxFeHBhbmQodGhpcykiPicraCsnPHNwYW4gY2xhc3M9InRlcm0tY21kLXByZXZpZXciPjxzcGFuIGNsYXNzPSJ0ZXJtLXByb21wdCI+JDwvc3Bhbj4gJytwKGopKyc8L3NwYW4+PHNwYW4gY2xhc3M9InRlcm0tdG9nZ2xlLWljb24iPicrKFI/Ilx1MjVCQyI6Ilx1MjVCNiIpKyc8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0idGVybS1ib2R5IiBzdHlsZT0iZGlzcGxheTonKyhSPyJibG9jayI6Im5vbmUiKSsnOyI+PGRpdiBjbGFzcz0idGVybS1jb21tYW5kIj48c3BhbiBjbGFzcz0idGVybS1wcm9tcHQiPiQ8L3NwYW4+ICcrRSsiPC9kaXY+IisoYj8nPGRpdiBjbGFzcz0idGVybS1vdXRwdXQiPicrYisiPC9kaXY+IjoiIikreCsiPC9kaXY+PC9kaXY+In1mdW5jdGlvbiBjbihlKXtyZXR1cm4gZT90eXBlb2YgZT09InN0cmluZyI/ZTpBcnJheS5pc0FycmF5KGUpP2UubWFwKGZ1bmN0aW9uKHQpe2lmKCF0fHx0eXBlb2YgdCE9Im9iamVjdCIpcmV0dXJuIiI7aWYodC50eXBlPT09InRleHQiJiZ0eXBlb2YgdC50ZXh0PT0ic3RyaW5nIilyZXR1cm4gdC50ZXh0O3RyeXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkodCl9Y2F0Y2h7cmV0dXJuIiJ9fSkuZmlsdGVyKEJvb2xlYW4pLmpvaW4oYApgKToiIjoiIn1mdW5jdGlvbiBFdihlLHQsbixpLGEpe3ZhciB1PWUuaW5wdXR8fHt9LHM9dS5maWxlX3BhdGh8fHUucGF0aHx8IiIsbz1zLnNwbGl0KCIvIikucG9wKCl8fHMsbD1lLmlkfHwidG9vbC0iK24rIi0iKyh0eXBlb2YgYT09Im51bWJlciI/YTowKSxjPXUub2xkX3N0cmluZ3x8IiIsZj11Lm5ld19zdHJpbmd8fHUuY29udGVudHx8IiIsZD11Lm9sZF9jb250ZW50fHwiIix2PXUubmV3X2NvbnRlbnR8fCIiLGc9bj09PSJXcml0ZSJ8fG49PT0iTXVsdGlFZGl0IixoPXQmJnQuaXNfZXJyb3IsbT1jbih0JiZ0LmNvbnRlbnQpLEU9ISEobSYmbS50cmltKCkubGVuZ3RoPjApLEM9IiIsYj0iIjtnP2I9JzxkaXYgY2xhc3M9ImRpZmYtbGluZSBkaWZmLWFkZCI+KyAnK3AodikrIjwvZGl2PiI6KGMmJihDPSc8ZGl2IGNsYXNzPSJkaWZmLWxpbmUgZGlmZi1yZW1vdmUiPi0gJytwKGMpKyI8L2Rpdj4iKSxmJiYoYj0nPGRpdiBjbGFzcz0iZGlmZi1saW5lIGRpZmYtYWRkIj4rICcrcChmKSsiPC9kaXY+IikpO3ZhciBCPSIiLEY9IiI7dD9oPyhCPSJkaWZmLWVycm9yIixGPW0uaW5kZXhPZigiaGF2ZW4ndCBncmFudGVkIikhPT0tMXx8bS5pbmRleE9mKCJwZXJtaXNzaW9uIikhPT0tMT8iXHU3QjQ5XHU1Rjg1XHU2Mzg4XHU2NzQzIjoiXHU1OTMxXHU4RDI1Iik6KEI9ImRpZmYtc3VjY2VzcyIsRj0iXHU1REYyXHU0RkVFXHU2NTM5Iik6KEI9ImRpZmYtcGVuZGluZyIsRj0iXHU2MjY3XHU4ODRDXHU0RTJEIik7dmFyIHg9R3QoImRpZmYiLFtpLGx8fGEsYV0pLFM9c3QoeCksaj1BbigiZWRpdENhcmRzIiksUj1TPT09bnVsbD9CPT09ImRpZmYtcGVuZGluZyJ8fGo6UywkPVI/IiI6IiBjb2xsYXBzZWQiLEk9QyYmYixEPUk/ImRpZmYtY29sLWhhbGYiOiJkaWZmLWNvbC1mdWxsIjtyZXR1cm4nPGRpdiBjbGFzcz0iaW5saW5lLWRpZmYnKyQrJyIgZGF0YS10b29sLW5hbWU9IicrcChuKSsnIiBkYXRhLWV4cGFuZC1raW5kPSJkaWZmIiBkYXRhLWV4cGFuZC1rZXk9IicrcCh4KSsnIiBkYXRhLXRvb2wtdXNlLWlkPSInK3AobCkrJyI+PGRpdiBjbGFzcz0iZGlmZi1oZWFkZXIiIG9uY2xpY2s9Il9fdGNUb2dnbGUoZXZlbnQsdGhpcykiPjxzcGFuIGNsYXNzPSJkaWZmLWZpbGUtaWNvbiI+PC9zcGFuPjxzcGFuIGNsYXNzPSJkaWZmLWZpbGUtbmFtZSI+JytwKG8pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImRpZmYtcGF0aCI+JytwKHMpKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImRpZmYtc3RhdHVzICcrQisnIj4nK0YrJzwvc3Bhbj48c3BhbiBjbGFzcz0iZGlmZi10b2dnbGUiPlx1MjVCQzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJkaWZmLWJvZHkiPjxkaXYgY2xhc3M9ImRpZmYtY29sdW1ucyI+JysoST8nPGRpdiBjbGFzcz0iZGlmZi1jb2wgJytEKyciPjxkaXYgY2xhc3M9ImRpZmYtY29sLWxhYmVsIj5cdTY1RTc8L2Rpdj4nK0MrIjwvZGl2PiI6IiIpKyc8ZGl2IGNsYXNzPSJkaWZmLWNvbCAnK0QrJyI+PGRpdiBjbGFzcz0iZGlmZi1jb2wtbGFiZWwiPicrKEk/Ilx1NjVCMCI6IiIpKyI8L2Rpdj4iKyhifHxDKSsiPC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+In1mdW5jdGlvbiBTbyhlLHQpe3JldHVybiBlPyc8cHJlIGNsYXNzPSJpbmxpbmUtdG9vbC1yZXN1bHQtdGV4dCIgc3R5bGU9Im1heC1oZWlnaHQ6IDMwMHB4OyBvdmVyZmxvdy15OiBhdXRvOyI+JytwKGUpKyI8L3ByZT4iOic8c3BhbiBjbGFzcz0iaW5saW5lLXRvb2wtZW1wdHkiPlx1NjVFMFx1OEY5M1x1NTFGQTwvc3Bhbj4nfWZ1bmN0aW9uIGJ2KGUsdCxuLGkpe3ZhciBhPWUubmFtZXx8InVua25vd24iLHU9ZS5pZHx8InRvb2wtIithKyItIisodHlwZW9mIG49PSJudW1iZXIiP246MCkscz13dihhLGUuaW5wdXQpO2lmKGE9PT0iUmVhZCJ8fGE9PT0iR2xvYiJ8fGE9PT0iR3JlcCJ8fGE9PT0iV2ViRmV0Y2gifHxhPT09IldlYlNlYXJjaCJ8fGE9PT0iVG9kb1JlYWQiKXJldHVybiBodihlLHQsYSxzLCIiLGksbik7aWYoYT09PSJCYXNoIilyZXR1cm4geXYoZSx0LGEsaSxuKTtpZihhPT09IkVkaXQifHxhPT09IldyaXRlInx8YT09PSJNdWx0aUVkaXQiKXJldHVybiBFdihlLHQsYSxpLG4pO2lmKGE9PT0iQXNrVXNlclF1ZXN0aW9uIiYmZS5pbnB1dCYmZS5pbnB1dC5xdWVzdGlvbnMpe3ZhciBvPWUuaW5wdXQucXVlc3Rpb25zO2lmKG8mJm8ubGVuZ3RoPjApe2Zvcih2YXIgbD0hIXQsYz1yLmFza1VzZXJTZWxlY3Rpb25zW3VdfHx7fSxmPSEhYy5zdWJtaXR0ZWQsZD1sP2NuKHQuY29udGVudCk6IiIsdj1kP2QudHJpbSgpLnNwbGl0KGAKYCk6W10sZz0iIixoPTA7aDxvLmxlbmd0aDtoKyspaWYob1toXS5oZWFkZXIpe2c9b1toXS5oZWFkZXI7YnJlYWt9dmFyIG09Zz8nPHNwYW4gY2xhc3M9InRvb2wtdXNlLXN1bW1hcnkiPicrcChnKSsiPC9zcGFuPiI6IiIsRT0iIjtvLmZvckVhY2goZnVuY3Rpb24ocSxSZSl7dmFyIHo9ISFxLm11bHRpU2VsZWN0LGxlPXEucXVlc3Rpb24/JzxkaXYgY2xhc3M9ImFzay11c2VyLXRpdGxlIj4nK3AocS5xdWVzdGlvbikrIjwvZGl2PiI6IiIsbWU9IiI7cS5vcHRpb25zJiZxLm9wdGlvbnMubGVuZ3RoPjAmJihtZT0nPGRpdiBjbGFzcz0iYXNrLXVzZXItb3B0aW9ucyIgZGF0YS1tdWx0aS1zZWxlY3Q9IicreisnIj4nLHEub3B0aW9ucy5mb3JFYWNoKGZ1bmN0aW9uKG5lLGNlKXt2YXIgVmU9bmUubGFiZWw/cChuZS5sYWJlbCk6Ilx1OTAwOVx1OTg3OSAiKyhjZSsxKSxkdD1uZS5kZXNjcmlwdGlvbj8nPGRpdiBjbGFzcz0iYXNrLXVzZXItb3B0aW9uLWRlc2MiPicrcChuZS5kZXNjcmlwdGlvbikrIjwvZGl2PiI6IiI7aWYobCl7dmFyIFV0PXZbUmVdfHx2WzBdfHwiIixaZT1VdC5zcGxpdCgiLCIpLm1hcChmdW5jdGlvbihudCl7cmV0dXJuIG50LnRyaW0oKX0pLGV0PVplLmluZGV4T2YobmUubGFiZWx8fCIiKSE9PS0xO21lKz0nPGRpdiBjbGFzcz0iYXNrLXVzZXItb3B0aW9uIGFzay11c2VyLW9wdGlvbi1yZWFkb25seScrKGV0PyIgYXNrLXVzZXItb3B0aW9uLWNob3NlbiI6IiIpKyciPjxzcGFuIGNsYXNzPSJhc2stdXNlci1pbmRpY2F0b3IiPjwvc3Bhbj48ZGl2IGNsYXNzPSJhc2stdXNlci1vcHRpb24tY29udGVudCI+PGRpdiBjbGFzcz0iYXNrLXVzZXItb3B0aW9uLWxhYmVsIj4nK1ZlKyI8L2Rpdj4iK2R0KyI8L2Rpdj48L2Rpdj4ifWVsc2V7dmFyIHR0PShjW1JlXXx8W10pLmluZGV4T2YoY2UpIT09LTEsRnQ9Zj8iIGRpc2FibGVkIjoiIjttZSs9JzxidXR0b24gY2xhc3M9ImFzay11c2VyLW9wdGlvbicrKHR0PyIgc2VsZWN0ZWQiOiIiKSsnIiBkYXRhLW9wdGlvbi1pbmRleD0iJytjZSsnIiBkYXRhLXF1ZXN0aW9uLWluZGV4PSInK1JlKyciIGRhdGEtb3B0aW9uLWxhYmVsPSInK3AobmUubGFiZWx8fCJcdTkwMDlcdTk4NzkgIisoY2UrMSkpK2AiIG9uY2xpY2s9Il9fYXNrU2VsZWN0KCdgK3AodSkrIicsIitSZSsiLCIrY2UrIiwiK3orJykiJytGdCsnPjxzcGFuIGNsYXNzPSJhc2stdXNlci1pbmRpY2F0b3IiPjwvc3Bhbj48ZGl2IGNsYXNzPSJhc2stdXNlci1vcHRpb24tY29udGVudCI+PGRpdiBjbGFzcz0iYXNrLXVzZXItb3B0aW9uLWxhYmVsIj4nK1ZlKyI8L2Rpdj4iK2R0KyI8L2Rpdj48L2J1dHRvbj4ifX0pLG1lKz0iPC9kaXY+IiksRSs9JzxkaXYgY2xhc3M9ImFzay11c2VyLXF1ZXN0aW9uLWdyb3VwIiBkYXRhLXF1ZXN0aW9uLWluZGV4PSInK1JlKyciPicrbGUrbWUrIjwvZGl2PiJ9KTt2YXIgQz0iIjtpZighbCl7Zm9yKHZhciBiPSEwLEI9MDtCPG8ubGVuZ3RoO0IrKylpZighY1tCXXx8Y1tCXS5sZW5ndGg9PT0wKXtiPSExO2JyZWFrfXZhciBGPSFifHxmPyIgZGlzYWJsZWQiOiIiLHg9Zj8iIGFzay11c2VyLXN1Ym1pdHRlZCI6IiIsUz1mPyJcdTVERjJcdTYzRDBcdTRFQTQuLi4iOiJcdTc4NkVcdThCQTRcdTYzRDBcdTRFQTQiO0M9JzxkaXYgY2xhc3M9ImFzay11c2VyLWFjdGlvbnMiPjxidXR0b24gY2xhc3M9ImFzay11c2VyLXN1Ym1pdCcreCsnIiBkYXRhLXRvb2wtdXNlLWlkPSInK3AodSkrYCIgb25jbGljaz0iX19hc2tTdWJtaXQoJ2ArcCh1KStgJykiYCtGKyI+IitTKyI8L2J1dHRvbj48L2Rpdj4ifXZhciBqPSIiO2lmKGwmJmQpe3ZhciBSPWQudHJpbSgpLnJlcGxhY2UoL1xuL2csIiwgIik7Ui5sZW5ndGg+NDAmJihSPVIuc2xpY2UoMCwzNykrIi4uLiIpLGo9JzxzcGFuIGNsYXNzPSJ0b29sLXVzZS1maWxlIj4nK3AoUikrIjwvc3Bhbj4ifXZhciAkPUd0KCJ0b29sLWNhcmQiLFtpLHVdKSxJPXN0KCQpLEQ9ST09PW51bGw/IWw6SSxUPUQ/IiI6IiBjb2xsYXBzZWQiLE89bD8iIGFzay11c2VyLWFuc3dlcmVkIjoiIjtyZXR1cm4nPGRpdiBjbGFzcz0idG9vbC11c2UtY2FyZCBhc2stdXNlcicrTytUKyciIGRhdGEtdG9vbC11c2UtaWQ9IicrcCh1KSsnIiBkYXRhLWV4cGFuZC1raW5kPSJ0b29sLWNhcmQiIGRhdGEtZXhwYW5kLWtleT0iJytwKCQpKyciPjxkaXYgY2xhc3M9InRvb2wtdXNlLWhlYWRlciIgZGF0YS10b29sLXRvZ2dsZSBvbmNsaWNrPSJfX3RjVG9nZ2xlKGV2ZW50LHRoaXMpIj48c3BhbiBjbGFzcz0idG9vbC11c2UtaWNvbiI+JysobD8iXHUyNzEzIjoiPyIpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InRvb2wtdXNlLW5hbWUiPlx1NjNEMFx1OTVFRTwvc3Bhbj4nK20raisnPHNwYW4gY2xhc3M9InRvb2wtdXNlLXRvZ2dsZSI+XHUyNUJDPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InRvb2wtdXNlLWJvZHkgYXNrLXVzZXItYm9keSI+JytFK0MrIjwvZGl2PjwvZGl2PiJ9fXZhciBVPWUuZGVzY3JpcHRpb258fGUuaW5wdXQmJmUuaW5wdXQuZGVzY3JpcHRpb258fCIiLFY9RnYoZS5uYW1lLGUuaW5wdXQpLFg9IiIsZWU9IiI7VT8oWD1VLmxlbmd0aD44MD9VLnNsaWNlKDAsNzcpKyIuLi4iOlUscyYmKGVlPSc8c3BhbiBjbGFzcz0idG9vbC11c2UtZmlsZSI+JytwKHMpKyI8L3NwYW4+IikpOihYPUhhKGEpLHMmJihlZT0nPHNwYW4gY2xhc3M9InRvb2wtdXNlLWZpbGUiPicrcChzKSsiPC9zcGFuPiIpLFYmJihlZSs9JzxzcGFuIGNsYXNzPSJ0b29sLXVzZS1zdW1tYXJ5Ij4nK3AoVikrIjwvc3Bhbj4iKSk7dmFyIFo9ZS5pbnB1dD9KU09OLnN0cmluZ2lmeShlLmlucHV0LG51bGwsMik6Int9Iix1ZT0ibG9hZGluZyIsTD0nPHNwYW4gY2xhc3M9InRvb2wtdXNlLXNwaW5uZXIiPjwvc3Bhbj4nLE09IiI7aWYodCl7dmFyIE49dC5pc19lcnJvcixKPWNuKHQuY29udGVudCk7dWU9Tj8iZXJyb3IiOiJzdWNjZXNzIixMPUlvKGEpO3ZhciBLPUomJkoudHJpbSgpLmxlbmd0aD4wO0s/TT0nPHByZSBjbGFzcz0idG9vbC11c2UtcmVzdWx0LWNvbnRlbnQiPicrcChKKSsiPC9wcmU+IjpNPSc8c3BhbiBjbGFzcz0idG9vbC11c2UtcmVzdWx0LWVtcHR5Ij5cdTY1RTBcdThGOTNcdTUxRkE8L3NwYW4+J31lbHNlIEw9SW8oYSk7dmFyIGllPUd0KCJ0b29sLWNhcmQiLFtpLHVdKSx0ZT1zdChpZSksc2U9QW4oImVkaXRDYXJkcyIpLG9lPXRlPT09bnVsbD91ZT09PSJsb2FkaW5nInx8c2U6dGUscWU9dCYmdC5fdHJ1bmNhdGVkPT09ITAsRWU9b2U/IiI6IiBjb2xsYXBzZWQiLGJlPSc8c3BhbiBjbGFzcz0idG9vbC11c2UtdG9nZ2xlIj5cdTI1QkM8L3NwYW4+JztyZXR1cm4nPGRpdiBjbGFzcz0idG9vbC11c2UtY2FyZCAnK3VlK0VlKyciIGRhdGEtZXhwYW5kLWtpbmQ9InRvb2wtY2FyZCIgZGF0YS1leHBhbmQta2V5PSInK3AoaWUpKyciIGRhdGEtdG9vbC11c2UtaWQ9IicrcCh1KSsnIicrKHFlPycgZGF0YS10cnVuY2F0ZWQ9InRydWUiJzoiIikrJz48ZGl2IGNsYXNzPSJ0b29sLXVzZS1oZWFkZXIiIGRhdGEtdG9vbC10b2dnbGUgb25jbGljaz0iX190Y1RvZ2dsZShldmVudCx0aGlzKSI+PHNwYW4gY2xhc3M9InRvb2wtdXNlLWljb24iPicrTCsnPC9zcGFuPjxzcGFuIGNsYXNzPSJ0b29sLXVzZS1uYW1lIj4nK3AoWCkrIjwvc3Bhbj4iK2VlK2JlKyc8L2Rpdj48ZGl2IGNsYXNzPSJ0b29sLXVzZS1ib2R5Ij4nKyhVPyc8ZGl2IGNsYXNzPSJ0b29sLXVzZS1tZXRhIj48c3BhbiBjbGFzcz0idG9vbC11c2UtbWV0YS1sYWJlbCI+XHU1REU1XHU1MTc3XHVGRjFBPC9zcGFuPicrcChhKSsiPC9kaXY+IjoiIikrJzxwcmUgY2xhc3M9InRvb2wtdXNlLWNvbnRlbnQiPicrcChaKSsiPC9wcmU+IisoTT8nPGRpdiBjbGFzcz0idG9vbC11c2UtcmVzdWx0Ij4nK00rIjwvZGl2PiI6IiIpKyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIEhhKGUpe3ZhciB0PXtSZWFkOiJcdThCRkJcdTUzRDZcdTY1ODdcdTRFRjYiLFdyaXRlOiJcdTUxOTlcdTUxNjVcdTY1ODdcdTRFRjYiLEVkaXQ6Ilx1N0YxNlx1OEY5MVx1NjU4N1x1NEVGNiIsTXVsdGlFZGl0OiJcdTU5MUFcdTU5MDRcdTdGMTZcdThGOTEiLEJhc2g6Ilx1NjI2N1x1ODg0Q1x1NTQ3RFx1NEVFNCIsR3JlcDoiXHU2NDFDXHU3RDIyXHU1MTg1XHU1QkI5IixHbG9iOiJcdTY3RTVcdTYyN0VcdTY1ODdcdTRFRjYiLFdlYkZldGNoOiJcdTgzQjdcdTUzRDZcdTdGNTFcdTk4NzUiLFdlYlNlYXJjaDoiXHU2NDFDXHU3RDIyXHU3RjUxXHU5ODc1IixUYXNrOiJcdTRFRkJcdTUyQTEiLFRvZG9Xcml0ZToiXHU2NkY0XHU2NUIwXHU1Rjg1XHU1MjlFIixUb2RvUmVhZDoiXHU4QkZCXHU1M0Q2XHU1Rjg1XHU1MjlFIixOb3RlYm9va0VkaXQ6Ilx1N0YxNlx1OEY5MVx1N0IxNFx1OEJCMFx1NjcyQyIsQWdlbnQ6Ilx1NUI1MFx1NEVFM1x1NzQwNiIsQXNrVXNlclF1ZXN0aW9uOiJcdTYzRDBcdTk1RUUiLEV4aXQ6Ilx1OTAwMFx1NTFGQSJ9O3JldHVybiB0W2VdfHxlfWZ1bmN0aW9uIElvKGUpe3ZhciB0PXtSZWFkOiJSIixXcml0ZToiVyIsRWRpdDoiRSIsTXVsdGlFZGl0OiJFIixCYXNoOiIkIixHcmVwOiJHIixHbG9iOiJGIixXZWJGZXRjaDoiXHUyMUUzIixXZWJTZWFyY2g6Ilx1MjFFMiIsVGFzazoiVCIsVG9kb1dyaXRlOiJcdTI2MTAiLFRvZG9SZWFkOiJcdTI2MTEiLE5vdGVib29rRWRpdDoiTiIsQWdlbnQ6IkEiLEV4aXQ6Ilx4RDcifTtyZXR1cm4gdFtlXXx8Ilx4QjcifWZ1bmN0aW9uIEZ2KGUsdCl7aWYoIXR8fHR5cGVvZiB0IT0ib2JqZWN0IilyZXR1cm4iIjt2YXIgbj1PYmplY3Qua2V5cyh0KTtpZihuLmxlbmd0aD09PTApcmV0dXJuInt9IjtpZihlPT09IlJlYWQiKXJldHVybiJcdThCRkJcdTUzRDZcdTY1ODdcdTRFRjYiO2lmKGU9PT0iV3JpdGUiKXJldHVybiJcdTUxOTlcdTUxNjVcdTY1ODdcdTRFRjYiO2lmKGU9PT0iRWRpdCIpe3ZhciBpPXQuZWRpdHM/dC5lZGl0cy5sZW5ndGg6MDtyZXR1cm4iXHU3RjE2XHU4RjkxICgiK2krIiBcdTU5MDRcdTRGRUVcdTY1MzkpIn1pZihlPT09IkJhc2giKXt2YXIgYT10LmNvbW1hbmR8fCIiO2lmKGEpe3ZhciB1PWEubGVuZ3RoPjYwP2Euc2xpY2UoMCw2MCkrIi4uLiI6YTtyZXR1cm4iXHU1NDdEXHU0RUU0XHVGRjFBIit1fX1pZihlPT09IkdyZXAiKXt2YXIgcz10LnBhdHRlcm58fCIiLG89dC5wYXRofHwiIjtpZihzKXJldHVybiJcdTY0MUNcdTdEMjJcdUZGMUEiK3MrKG8/IiAoXHU1NzI4ICIrbysiKSI6IiIpfWlmKGU9PT0iR2xvYiIpe3ZhciBzPXQucGF0dGVybnx8IiI7aWYocylyZXR1cm4iXHU2N0U1XHU2MjdFXHVGRjFBIitzfWlmKGU9PT0iQWdlbnQiKXt2YXIgbD10LnByb21wdHx8dC50YXNrfHwiIjtpZihsKXt2YXIgYz1sLmxlbmd0aD40MD9sLnNsaWNlKDAsNDApKyIuLi4iOmw7cmV0dXJuIlx1NEVGQlx1NTJBMVx1RkYxQSIrY319aWYoZT09PSJUYXNrIil7dmFyIGw9dC50YXNrfHx0LmRlc2NyaXB0aW9ufHwiIjtpZihsKXt2YXIgYz1sLmxlbmd0aD40MD9sLnNsaWNlKDAsNDApKyIuLi4iOmw7cmV0dXJuIlx1NEVGQlx1NTJBMVx1RkYxQSIrY319aWYoZT09PSJUb2RvV3JpdGUiKXt2YXIgZj10LnRvZG9zfHxbXTtyZXR1cm4iXHU2NkY0XHU2NUIwXHU1Rjg1XHU1MjlFICgiK2YubGVuZ3RoKyIgXHU5ODc5KSJ9aWYoZT09PSJXZWJTZWFyY2giKXt2YXIgZD10LnF1ZXJ5fHwiIjtpZihkKXJldHVybiJcdTY0MUNcdTdEMjJcdUZGMUEiK2R9dmFyIHY9blswXSxnPXRbdl07aWYodHlwZW9mIGc9PSJzdHJpbmciKXt2YXIgaD1nLmxlbmd0aD41MD9nLnNsaWNlKDAsNTApKyIuLi4iOmc7cmV0dXJuIHYrIjogIitofXJldHVybiBuLmxlbmd0aCsiIFx1NEUyQVx1NTNDMlx1NjU3MCJ9ZnVuY3Rpb24gd3YoZSx0KXtpZighdClyZXR1cm4gbnVsbDt2YXIgbj10LmZpbGVfcGF0aHx8dC5wYXRofHx0LmN3ZDtyZXR1cm4gbj9uLmxlbmd0aD41MD8iLi4uIituLnNsaWNlKC00Nyk6bjpudWxsfWZ1bmN0aW9uIEN2KGUpe2lmKCFlKXJldHVybiIiO2Zvcih2YXIgdD1gCmAsbj1lLnNwbGl0KHQpLGk9W10sYT0hMSx1PTA7dTxuLmxlbmd0aDt1Kyspe3ZhciBzPW5bdV0sbz1zLnRyaW0oKTtpZighKCFhJiYhbykpe2lmKGE9ITAsby5pbmRleE9mKCJcdTIzRkEiKT09PTAmJm8ubGVuZ3RoPjIpe2kucHVzaChvLnNsaWNlKDEpLnRyaW0oKSk7Y29udGludWV9aWYoby5pbmRleE9mKCJcdTI1Q0YiKT09PTApe2lmKG89by5zbGljZSgxKS50cmltKCksIW8pY29udGludWU7cz1vfWkucHVzaChzKX19Zm9yKDtpLmxlbmd0aD4wJiYhaVtpLmxlbmd0aC0xXS50cmltKCk7KWkucG9wKCk7Zm9yKHZhciBsPVtdLGM9e30sZj0wO2Y8aS5sZW5ndGg7ZisrKXt2YXIgZD1pW2ZdLnJlcGxhY2UoL1xzKy9nLCIiKTtkLmxlbmd0aD41JiZjW2RdfHwoZC5sZW5ndGg+NSYmKGNbZF09ITApLGwucHVzaChpW2ZdKSl9cmV0dXJuIGwuam9pbih0KX1mdW5jdGlvbiBUbyhlKXt2YXIgdD1gCmAsbj1lLnNwbGl0KHQpLGk9W10sYT0wO2Z1bmN0aW9uIHUobSl7dmFyIEU9bS50cmltKCk7cmV0dXJuIEUuY2hhckF0KDApPT09InwiJiYoRT1FLnNsaWNlKDEpKSxFLmNoYXJBdChFLmxlbmd0aC0xKT09PSJ8IiYmKEU9RS5zbGljZSgwLC0xKSksRS5zcGxpdCgifCIpfWZ1bmN0aW9uIHMobSl7cmV0dXJuIG0/JyBzdHlsZT0idGV4dC1hbGlnbjonK20rJyInOiIifWZ1bmN0aW9uIG8obSxFLEMpe3ZhciBiPSI8dGhlYWQ+PHRyPiIrbS5tYXAoZnVuY3Rpb24oRix4KXtyZXR1cm4iPHRoIitzKEVbeF0pKyI+IitGLnRyaW0oKSsiPC90aD4ifSkuam9pbigiIikrIjwvdHI+PC90aGVhZD4iLEI9Qy5sZW5ndGg/Ijx0Ym9keT4iK0MubWFwKGZ1bmN0aW9uKEYpe3JldHVybiI8dHI+IitGLm1hcChmdW5jdGlvbih4LFMpe3JldHVybiI8dGQiK3MoRVtTXSkrIj4iK3gudHJpbSgpKyI8L3RkPiJ9KS5qb2luKCIiKSsiPC90cj4ifSkuam9pbigiIikrIjwvdGJvZHk+IjoiIjtyZXR1cm4nPGRpdiBjbGFzcz0ibWQtdGFibGUtd3JhcCI+PHRhYmxlIGNsYXNzPSJtZC10YWJsZSI+JytiK0IrIjwvdGFibGU+PC9kaXY+In1mb3IoO2E8bi5sZW5ndGg7KXt2YXIgbD1uW2FdO2lmKGwuaW5kZXhPZigifCIpIT09LTEmJmErMTxuLmxlbmd0aCl7dmFyIGM9blthKzFdLnRyaW0oKTtpZigvXlx8P1xzKjo/LSs6PyhccypcfFxzKjo/LSs6PykrXHMqXHw/JC8udGVzdChjKSl7Zm9yKHZhciBmPXUobCksZD11KGMpLm1hcChmdW5jdGlvbihtKXt2YXIgRT1tLnRyaW0oKSxDPUUuY2hhckF0KDApPT09IjoiLGI9RS5jaGFyQXQoRS5sZW5ndGgtMSk9PT0iOiI7cmV0dXJuIEMmJmI/ImNlbnRlciI6Yj8icmlnaHQiOkM/ImxlZnQiOiIifSksdj1bXSxnPWErMjtnPG4ubGVuZ3RoOyl7dmFyIGg9bltnXS50cmltKCk7aWYoIWh8fGguaW5kZXhPZigifCIpPT09LTEpYnJlYWs7di5wdXNoKHUobltnXSkpLGcrPTF9aS5wdXNoKCIiLG8oZixkLHYpLCIiKSxhPWc7Y29udGludWV9fWkucHVzaChsKSxhKz0xfXJldHVybiBpLmpvaW4odCl9ZnVuY3Rpb24gX2EoZSl7aWYoIWUpcmV0dXJuIiI7dmFyIHQ9cChlKSxuPSJgIixpPWAKYDtmdW5jdGlvbiBhKEwsTSxOLEope2Zvcih2YXIgSz0wOzspe3ZhciBpZT1MLmluZGV4T2YoTSxLKTtpZihpZT09PS0xKWJyZWFrO3ZhciB0ZT1MLmluZGV4T2YoTSxpZStNLmxlbmd0aCk7aWYodGU9PT0tMSlicmVhazt2YXIgc2U9TC5zbGljZShpZStNLmxlbmd0aCx0ZSk7aWYoIXNlKXtLPXRlK00ubGVuZ3RoO2NvbnRpbnVlfXZhciBvZT1OK3NlK0o7TD1MLnNsaWNlKDAsaWUpK29lK0wuc2xpY2UodGUrTS5sZW5ndGgpLEs9aWUrb2UubGVuZ3RofXJldHVybiBMfWZ1bmN0aW9uIHUoTCl7cmV0dXJuIEw+PTQ4JiZMPD01N3x8TD49NjUmJkw8PTkwfHxMPj05NyYmTDw9MTIyfHxMPT09OTV9ZnVuY3Rpb24gcyhMLE0sTil7Zm9yKHZhciBKPTA7SjxMLmxlbmd0aDspe3ZhciBLPUwuaW5kZXhPZigiXyIsSik7aWYoSz09PS0xKWJyZWFrO3ZhciBpZT1LPjA/TC5jaGFyQ29kZUF0KEstMSk6MDtpZih1KGllKSl7Sj1LKzE7Y29udGludWV9Zm9yKHZhciB0ZT1LKzEsc2U9LTE7dGU8TC5sZW5ndGg7KXt2YXIgb2U9TC5pbmRleE9mKCJfIix0ZSk7aWYob2U9PT0tMSlicmVhazt2YXIgcWU9b2UrMSxFZT1xZTxMLmxlbmd0aD9MLmNoYXJDb2RlQXQocWUpOjA7aWYoIXUoRWUpKXtzZT1vZTticmVha310ZT1vZSsxfWlmKHNlPT09LTEpYnJlYWs7dmFyIGJlPUwuc2xpY2UoSysxLHNlKTtpZighYmUpe0o9c2UrMTtjb250aW51ZX12YXIgcT1NK2JlK047TD1MLnNsaWNlKDAsSykrcStMLnNsaWNlKHNlKzEpLEo9SytxLmxlbmd0aH1yZXR1cm4gTH1mdW5jdGlvbiBvKEwsTSxOLEope3JldHVybiBMLnNwbGl0KGkpLm1hcChmdW5jdGlvbihLKXtyZXR1cm4gSy5pbmRleE9mKE0pIT09MD9LOk4rSy5zbGljZShNLmxlbmd0aCkrSn0pLmpvaW4oaSl9ZnVuY3Rpb24gbChMKXtyZXR1cm4gTC5zcGxpdChpKS5tYXAoZnVuY3Rpb24oTSl7dmFyIE49TS5pbmRleE9mKCIuICIpO2lmKE48PTApcmV0dXJuIE07Zm9yKHZhciBKPTA7SjxOO0orPTEpe3ZhciBLPU0uY2hhckNvZGVBdChKKTtpZihLPDQ4fHxLPjU3KXJldHVybiBNfXJldHVybiI8bGk+IitNLnNsaWNlKE4rMikrIjwvbGk+In0pLmpvaW4oaSl9ZnVuY3Rpb24gYyhMKXtyZXR1cm4gTC5zcGxpdChpK2kpLm1hcChmdW5jdGlvbihNKXt2YXIgTj1NLnRyaW0oKTtyZXR1cm4gTj9OLmluZGV4T2YoIjxkaXYiKT09PTB8fE4uaW5kZXhPZigiPGgxIik9PT0wfHxOLmluZGV4T2YoIjxoMiIpPT09MHx8Ti5pbmRleE9mKCI8aDMiKT09PTB8fE4uaW5kZXhPZigiPGg0Iik9PT0wfHxOLmluZGV4T2YoIjxoNSIpPT09MHx8Ti5pbmRleE9mKCI8aDYiKT09PTB8fE4uaW5kZXhPZigiPHVsIik9PT0wfHxOLmluZGV4T2YoIjxvbCIpPT09MHx8Ti5pbmRleE9mKCI8bGkiKT09PTB8fE4uaW5kZXhPZigiPGJsb2NrcXVvdGUiKT09PTB8fE4uaW5kZXhPZigiPHByZSIpPT09MD9OOiI8cD4iK04uc3BsaXQoaSkuam9pbigiPGJyPiIpKyI8L3A+IjoiIn0pLmpvaW4oIiIpfWZvcih2YXIgZj0wOzspe3ZhciBkPXQuaW5kZXhPZihuK24rbixmKTtpZihkPT09LTEpYnJlYWs7dmFyIHY9dC5pbmRleE9mKG4rbituLGQrMyk7aWYodj09PS0xKWJyZWFrO3ZhciBnPXQuc2xpY2UoZCszLHYpLGg9Zy5pbmRleE9mKGkpLG09IiIsRT1nO2lmKGghPT0tMSYmaDwzMCl7Zm9yKHZhciBDPWcuc2xpY2UoMCxoKS50cmltKCksYj1DLmxlbmd0aD4wLEI9MDtCPEMubGVuZ3RoO0IrPTEpe3ZhciBGPUMuY2hhckNvZGVBdChCKSx4PUY+PTQ4JiZGPD01NyxTPUY+PTY1JiZGPD05MCxqPUY+PTk3JiZGPD0xMjI7aWYoIXgmJiFTJiYhail7Yj0hMTticmVha319YiYmKG09QyxFPWcuc2xpY2UoaCsxKSl9dmFyIFI9QnYoRS50cmltKCksbSksJD1SLnJlcGxhY2UoL18vZywiJiM5NTsiKS5yZXBsYWNlKC9cKi9nLCImIzQyOyIpLEk9JzxkaXYgY2xhc3M9ImNvZGUtYmxvY2siPjxkaXYgY2xhc3M9ImNvZGUtYmxvY2staGVhZGVyIj48c3BhbiBjbGFzcz0iY29kZS1sYW5nIj4nKyhtfHwiY29kZSIpKyc8L3NwYW4+PGJ1dHRvbiBjbGFzcz0iY29kZS1jb3B5Ij5Db3B5PC9idXR0b24+PC9kaXY+PHByZT48Y29kZT4nKyQrIjwvY29kZT48L3ByZT48L2Rpdj4iO3Q9dC5zbGljZSgwLGQpK0krdC5zbGljZSh2KzMpLGY9ZCtJLmxlbmd0aH1mb3IoZj0wOzspe3ZhciBEPXQuaW5kZXhPZihuLGYpO2lmKEQ9PT0tMSlicmVhazt2YXIgVD10LmluZGV4T2YobixEKzEpO2lmKFQ9PT0tMSlicmVhaztpZihUPT09RCsxKXtmPVQrMTtjb250aW51ZX12YXIgTz10LnNsaWNlKEQrMSxUKSxVPU8ucmVwbGFjZSgvXy9nLCImIzk1OyIpLnJlcGxhY2UoL1wqL2csIiYjNDI7IiksVj0nPGNvZGUgY2xhc3M9ImNvZGUtaW5saW5lIj4nK1UrIjwvY29kZT4iO3Q9dC5zbGljZSgwLEQpK1YrdC5zbGljZShUKzEpLGY9RCtWLmxlbmd0aH10PWEodCwiKioiLCI8c3Ryb25nPiIsIjwvc3Ryb25nPiIpLHQ9YSh0LCIqIiwiPGVtPiIsIjwvZW0+IiksdD1zKHQsIjxlbT4iLCI8L2VtPiIpLHQ9byh0LCIjIyMgIiwiPGgzPiIsIjwvaDM+IiksdD1vKHQsIiMjICIsIjxoMj4iLCI8L2gyPiIpLHQ9byh0LCIjICIsIjxoMT4iLCI8L2gxPiIpLHQ9byh0LCImZ3Q7ICIsIjxibG9ja3F1b3RlPiIsIjwvYmxvY2txdW90ZT4iKSx0PW8odCwiLSAiLCI8bGk+IiwiPC9saT4iKSx0PW8odCwiKiAiLCI8bGk+IiwiPC9saT4iKSx0PWwodCksdD1Ubyh0KTt2YXIgWD10LnNwbGl0KGkpLGVlPVtdLFo9W107ZnVuY3Rpb24gdWUoKXtaLmxlbmd0aCYmKGVlLnB1c2goIjx1bD4iK1ouam9pbigiIikrIjwvdWw+IiksWj1bXSl9cmV0dXJuIFguZm9yRWFjaChmdW5jdGlvbihMKXtpZihMLmluZGV4T2YoIjxsaT4iKT09PTAmJkwubGFzdEluZGV4T2YoIjwvbGk+Iik9PT1MLmxlbmd0aC01KXtaLnB1c2goTCk7cmV0dXJufXVlKCksZWUucHVzaChMKX0pLHVlKCksdD1jKGVlLmpvaW4oaSkpLCc8ZGl2IGNsYXNzPSJtYXJrZG93bi1jb250ZW50Ij4nK3QrIjwvZGl2PiJ9ZnVuY3Rpb24gQnYoZSx0KXtyZXR1cm4gZT1lLnJlcGxhY2UoLyYvZywiJmFtcDsiKS5yZXBsYWNlKC88L2csIiZsdDsiKS5yZXBsYWNlKC8+L2csIiZndDsiKSxlfWZ1bmN0aW9uIFFuKGUpe3ZhciB0PVN0cmluZyhlfHwiIikudHJpbSgpO3JldHVybiB0Lmxlbmd0aDw9MjQ/dHx8Ilx1NjcyQVx1OTAwOVx1NjJFOVx1NEYxQVx1OEJERCI6dC5zbGljZSgwLDIxKSsiLi4uIn1mdW5jdGlvbiBOYShlKXtyZXR1cm4gU3RyaW5nKGV8fCIiKS5yZXBsYWNlKC9cclxyXG4vZyxgXHIKYCkucmVwbGFjZSgvXHUwMDAwL2csIiIpfWZ1bmN0aW9uIER2KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ2luLWNlcnQtaGludCIpO2UmJmUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ2luLWNlcnQtaHR0cC1saW5rIik7dCYmKHQuaHJlZj0iaHR0cDovLyIrbG9jYXRpb24uaG9zdCtsb2NhdGlvbi5wYXRobmFtZSx0LnN0eWxlLmRpc3BsYXk9bG9jYXRpb24ucHJvdG9jb2w9PT0iaHR0cHM6Ij8iIjoibm9uZSIpfWZ1bmN0aW9uIGt2KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ2luLWNlcnQtaGludCIpO2UmJmUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIil9ZnVuY3Rpb24gamEoKXtpZighci5sb2dpblBlbmRpbmcpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwYXNzd29yZCIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ2luLWJ1dHRvbiIpLG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ2luLWVycm9yIik7IWV8fCF0fHwhbnx8KHVpKG4pLGt2KCksZS5kYXRhc2V0LmVycm9yPSJmYWxzZSIsZS5zZXRBdHRyaWJ1dGUoImFyaWEtaW52YWxpZCIsImZhbHNlIiksci5sb2dpblBlbmRpbmc9ITAsdC5kaXNhYmxlZD0hMCx0LnRleHRDb250ZW50PSJcdTc2N0JcdTVGNTVcdTRFMkQuLi4iLGZldGNoKCIvYXBpL2xvZ2luIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGJvZHk6SlNPTi5zdHJpbmdpZnkoe3Bhc3N3b3JkOmUudmFsdWV9KSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5zdGF0dXM9PT00Mjk/KFBlKG4sIlx1NzY3Qlx1NUY1NVx1NUMxRFx1OEJENVx1NkIyMVx1NjU3MFx1OEZDN1x1NTkxQVx1RkYwQ1x1OEJGN1x1N0EwRFx1NTQwRVx1NTE4RFx1OEJENVx1MzAwMiIpLFByb21pc2UucmVqZWN0KCJoYW5kbGVkIikpOmkub2s/ZmV0Y2goIi9hcGkvY29uZmlnIix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pOihlLmRhdGFzZXQuZXJyb3I9InRydWUiLGUuc2V0QXR0cmlidXRlKCJhcmlhLWludmFsaWQiLCJ0cnVlIiksUGUobiwiXHU1QkM2XHU3ODAxXHU5NTE5XHU4QkVGXHVGRjBDXHU4QkY3XHU5MUNEXHU4QkQ1XHUzMDAyIiksUHJvbWlzZS5yZWplY3QoImhhbmRsZWQiKSl9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLm9rP2kuanNvbigpOihsb2NhdGlvbi5wcm90b2NvbD09PSJodHRwczoiP0R2KCk6UGUobiwiXHU3NjdCXHU1RjU1XHU1OTMxXHU4RDI1XHVGRjBDXHU4QkY3XHU5MUNEXHU4QkQ1XHUzMDAyIiksUHJvbWlzZS5yZWplY3QoImhhbmRsZWQiKSl9KS50aGVuKGZ1bmN0aW9uKGkpe3IuY29uZmlnPWk7dmFyIGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0YXR1cy1kb3QiKSx1PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzdGF0dXMtdGV4dCIpO3JldHVybiBhJiZhLmNsYXNzTGlzdC5hZGQoImFjdGl2ZSIpLHUmJih1LnRleHRDb250ZW50PSJcdTVERjJcdTc2N0JcdTVGNTUiKSxqdCgpfSkudGhlbihmdW5jdGlvbigpe2VzKCksJHQoKX0pLmNhdGNoKGZ1bmN0aW9uKGkpe2khPT0iaGFuZGxlZCImJihjb25zb2xlLmVycm9yKCJbd2FuZF0gTG9naW4gZXJyb3I6IixpKSxQZShuLCJcdTc2N0JcdTVGNTVcdTU5MzFcdThEMjVcdUZGMENcdThCRjdcdTkxQ0RcdThCRDVcdTMwMDIiKSl9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ci5sb2dpblBlbmRpbmc9ITEsdC5kaXNhYmxlZD0hMSx0LnRleHRDb250ZW50PSJcdThGREJcdTUxNjVcdTYzQTdcdTUyMzZcdTUzRjAifSkpfX1mdW5jdGlvbiBSYSgpe3JldHVybiB0eXBlb2YgV2FuZE5hdGl2ZTwidSImJnR5cGVvZiBXYW5kTmF0aXZlLnN3aXRjaFNlcnZlcj09ImZ1bmN0aW9uIn1mdW5jdGlvbiBMbygpe2lmKFJhKCkpdHJ5e1dhbmROYXRpdmUuc3dpdGNoU2VydmVyKCl9Y2F0Y2h7fX1mdW5jdGlvbiBBdigpe3JldHVybiB0eXBlb2YgV2FuZE5hdGl2ZTwidSImJnR5cGVvZiBXYW5kTmF0aXZlLmJhY2tUb05hdGl2ZT09ImZ1bmN0aW9uIj8hMDp0eXBlb2Ygd2luZG93Ll9fd2FuZEJhY2tUb05hdGl2ZT09ImZ1bmN0aW9uIn1mdW5jdGlvbiB4digpe3RyeXtpZih0eXBlb2YgV2FuZE5hdGl2ZTwidSImJnR5cGVvZiBXYW5kTmF0aXZlLmJhY2tUb05hdGl2ZT09ImZ1bmN0aW9uIil7V2FuZE5hdGl2ZS5iYWNrVG9OYXRpdmUoKTtyZXR1cm59dHlwZW9mIHdpbmRvdy5fX3dhbmRCYWNrVG9OYXRpdmU9PSJmdW5jdGlvbiImJndpbmRvdy5fX3dhbmRCYWNrVG9OYXRpdmUoKX1jYXRjaHt9fWZ1bmN0aW9uIE1vKCl7ZmV0Y2goIi9hcGkvbG9nb3V0Iix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkuY2F0Y2goZnVuY3Rpb24oKXt9KSx1cygpLEluKCExKSx3YSgpLGdyKCksci5jb25maWc9bnVsbCxyLnNlbGVjdGVkSWQ9bnVsbCxGZSgpLHIuc2Vzc2lvbnM9W10sci5jbGF1ZGVIaXN0b3J5PVtdLHIuY2xhdWRlSGlzdG9yeUxvYWRlZD0hMSxyLmNsYXVkZUhpc3RvcnlFeHBhbmRlZD0hMSxyLmNsYXVkZUhpc3RvcnlFeHBhbmRlZERpcnM9e30sci5zZXNzaW9uc0RyYXdlck9wZW49ITEsU2UoIndhbmQtc2lkZWJhci1vcGVuIiwhMSksJHQoKX1mdW5jdGlvbiBqdCgpe3JldHVybiBmbigpfWZ1bmN0aW9uIFN2KGUpe3JldHVybiBlPT09ImZ1bGwtYWNjZXNzIj8iXHU1MTY4XHU2NzQzXHU5NjUwIjplPT09ImRlZmF1bHQiPyJcdTlFRDhcdThCQTQiOmU9PT0ibmF0aXZlIj8iXHU1MzlGXHU3NTFGIjplPT09ImF1dG8tZWRpdCI/Ilx1ODFFQVx1NTJBOFx1N0YxNlx1OEY5MSI6ZT09PSJtYW5hZ2VkIj8iXHU2MjU4XHU3QkExIjplfWZ1bmN0aW9uIG10KCl7cmV0dXJuIHIuc2Vzc2lvblRvb2x8fHIucHJlZmVycmVkQ29tbWFuZHx8ImNsYXVkZSJ9ZnVuY3Rpb24gSXYoKXt2YXIgZT1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odCl7cmV0dXJuIHQuaWQ9PT1yLnNlbGVjdGVkSWR9KTtyZXR1cm4gZSYmZS5wcm92aWRlcnx8ci5wcmVmZXJyZWRDb21tYW5kfHwiY2xhdWRlIn1mdW5jdGlvbiBPbyhlLHQpe3JldHVybiB0PyJcdTk1MkVcdTc2RDhcdThGOTNcdTUxNjVcdTVDMDZcdTUzRDFcdTkwMDFcdTUyMzBcdTdFQzhcdTdBRUYiOmUmJihlLnN0YXR1cz09PSJleGl0ZWQifHxlLnN0YXR1cz09PSJmYWlsZWQifHxlLnN0YXR1cz09PSJzdG9wcGVkIik/eWEoZSk/Ilx1OEY5M1x1NTE2NVx1NkQ4OFx1NjA2Rlx1NEVFNVx1N0VFN1x1N0VFRFx1NEYxQVx1OEJERCI6Ilx1NEYxQVx1OEJERFx1NURGMlx1N0VEM1x1Njc1RiI6YWUoZSkmJmUuc3RydWN0dXJlZFN0YXRlJiZlLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodD8iXHU1NkRFXHU1OTBEXHU0RTJEXHVGRjBDXHU1M0VGXHU3RUU3XHU3RUVEXHU4RjkzXHU1MTY1IjoiXHU4RjkzXHU1MTY1XHU2RDg4XHU2MDZGIn1mdW5jdGlvbiBQbyhlLHQpe3JldHVybiBlPT09ImNvZGV4Ij8iQ29kZXggXHU2NTJGXHU2MzAxIFBUWSBcdTdFQzhcdTdBRUZcdTRFMEVcdTdFRDNcdTY3ODRcdTUzMTZcdUZGMDhKU09OTFx1RkYwOVx1NEUyNFx1NzlDRFx1NEYxQVx1OEJERFx1RkYwQ1x1N0VEM1x1Njc4NFx1NTMxNlx1NkEyMVx1NUYwRlx1NjMwOSBmdWxsLWFjY2VzcyBcdTU0MkZcdTUyQThcdTMwMDIiOnQ9PT0iZnVsbC1hY2Nlc3MiPyJcdTgxRUFcdTUyQThcdTc4NkVcdThCQTRcdTY3NDNcdTk2NTBcdThCRjdcdTZDNDJcdTRFMEVcdTlBRDhcdTY3NDNcdTk2NTBcdTY0Q0RcdTRGNUNcdUZGMENcdTkwMDJcdTU0MDhcdTRGNjBcdTc4NkVcdThCQTRcdTczQUZcdTU4ODNcdTVCODlcdTUxNjhcdTU0MEVcdTc2ODRcdThGREVcdTdFRURcdTRGRUVcdTY1MzlcdTMwMDIiOnQ9PT0iYXV0by1lZGl0Ij8iXHU0RkREXHU3NTU5XHU0RUE0XHU0RTkyXHU1RjBGXHU0RjFBXHU4QkREXHVGRjBDXHU1NDBDXHU2NUY2XHU2NkY0XHU1MDRGXHU1NDExXHU3NkY0XHU2M0E1XHU3RjE2XHU4RjkxXHU0RUUzXHU3ODAxXHUzMDAyIjp0PT09Im5hdGl2ZSI/Ilx1OEMwM1x1NzUyOCBDbGF1ZGUgXHU1MzlGXHU3NTFGIEFQSSBcdThGOTNcdTUxRkFcdUZGMENcdTkwMDJcdTU0MDhcdTVGRUJcdTkwMUZcdTk1RUVcdTdCNTRcdTYyMTZcdTRFMDBcdTZCMjFcdTYwMjdcdTc1MUZcdTYyMTBcdTMwMDIiOnQ9PT0ibWFuYWdlZCI/IkFJIFx1ODFFQVx1NTJBOFx1NUI4Q1x1NjIxMFx1NjI0MFx1NjcwOVx1NURFNVx1NEY1Q1x1RkYwQ1x1NjVFMFx1OTcwMFx1NEUyRFx1OTAxNFx1Nzg2RVx1OEJBNFx1RkYwQ1x1OTAwMlx1NTQwOFx1NjcwOVx1NjYwRVx1Nzg2RVx1NzZFRVx1NjgwN1x1NzY4NFx1NEVGQlx1NTJBMVx1MzAwMiI6Ilx1NEZERFx1NzU1OVx1NjgwN1x1NTFDNlx1NEVBNFx1NEU5Mlx1NkQ0MVx1N0EwQlx1RkYwQ1x1OTAwMlx1NTQwOFx1NjI0Qlx1NTJBOFx1Nzg2RVx1OEJBNFx1NkJDRlx1NEUwMFx1NkI2NVx1MzAwMiJ9ZnVuY3Rpb24gV2EoZSl7cmV0dXJuIGU9PT0iY29kZXgiP1siZnVsbC1hY2Nlc3MiXTpbImRlZmF1bHQiLCJmdWxsLWFjY2VzcyIsImF1dG8tZWRpdCIsIm5hdGl2ZSIsIm1hbmFnZWQiXX1mdW5jdGlvbiB4dChlLHQpe3ZhciBuPVdhKGUpO2lmKG4uaW5kZXhPZih0KSE9PS0xKXJldHVybiB0O3ZhciBpPXIuY29uZmlnJiZyLmNvbmZpZy5kZWZhdWx0TW9kZT9yLmNvbmZpZy5kZWZhdWx0TW9kZToiZGVmYXVsdCI7cmV0dXJuIG4uaW5kZXhPZihpKSE9PS0xP2k6blswXX1mdW5jdGlvbiBEZyhlLHQpe3JldHVybiBXYShlKS5tYXAoZnVuY3Rpb24obil7dmFyIGk9cW8obik7cmV0dXJuJzxvcHRpb24gdmFsdWU9IicrcChuKSsnIicrKG49PT10PyIgc2VsZWN0ZWQiOiIiKSsnIHRpdGxlPSInK2krJyI+JytwKFN2KG4pKSsiPC9vcHRpb24+In0pLmpvaW4oIiIpfWZ1bmN0aW9uIHFvKGUpe3ZhciB0PXtkZWZhdWx0OiJcdTY4MDdcdTUxQzZcdTZBMjFcdTVGMEYgLSBcdTk3MDBcdTg5ODFcdTc4NkVcdThCQTRcdTY1ODdcdTRFRjZcdTRGRUVcdTY1MzkiLCJmdWxsLWFjY2VzcyI6Ilx1NUI4Q1x1NTE2OFx1OEJCRlx1OTVFRSAtIFx1ODFFQVx1NTJBOFx1Nzg2RVx1OEJBNFx1Njc0M1x1OTY1MFx1NEUwRVx1NjRDRFx1NEY1QyIsImF1dG8tZWRpdCI6Ilx1ODFFQVx1NTJBOFx1N0YxNlx1OEY5MSAtIFx1ODFFQVx1NTJBOFx1Nzg2RVx1OEJBNFx1NjU4N1x1NEVGNlx1NEZFRVx1NjUzOSIsbmF0aXZlOiJcdTUzOUZcdTc1MUZcdTZBMjFcdTVGMEYgLSBcdThGRDRcdTU2REVcdTdFRDNcdTY3ODRcdTUzMTZcdThGOTNcdTUxRkEiLG1hbmFnZWQ6Ilx1NjI1OFx1N0JBMVx1NkEyMVx1NUYwRiAtIEFJIFx1ODFFQVx1NTJBOFx1NUI4Q1x1NjIxMFx1NjI0MFx1NjcwOVx1NURFNVx1NEY1QyJ9O3JldHVybiB0W2VdfHwiIn1mdW5jdGlvbiBUdihlKXt2YXIgdD1lJiZlLnByb3ZpZGVyP2UucHJvdmlkZXI6ImNsYXVkZSI7cmV0dXJuKGFlKGUpPyJcdTdFRDNcdTY3ODRcdTUzMTYiOiJcdTdFQzhcdTdBRUYiKSsiIFx4QjcgIit0fWZ1bmN0aW9uIEx2KGUpe3JldHVybiBhZShlKT8iXHU3RUQzXHU2Nzg0XHU1MzE2IFx4QjcgXHU1NzU3XHU3RUE3XHU4QkIwXHU1RjU1IjplJiZlLnByb3ZpZGVyPT09ImNvZGV4Ij8iXHU3RUM4XHU3QUVGIFx4QjcgQ29kZXggUFRZXHVGRjA4Y2hhdCBcdTRFM0FcdTg5RTNcdTY3OTBcdTg5QzZcdTU2RkVcdUZGMDkiOiJcdTdFQzhcdTdBRUYgXHhCNyBQVFkgXHU0RjFBXHU4QkREIn1mdW5jdGlvbiBNdihlKXtyZXR1cm4gZT9hZShlKXx8ZS5wcm92aWRlcj09PSJjb2RleCI6ITF9ZnVuY3Rpb24gSG8oZSx0KXtpZighZXx8IWUuaXNfZXJyb3J8fCF0fHx0LmlzX2Vycm9yKXJldHVybiExO3ZhciBuPWNuKGUuY29udGVudCkudG9Mb3dlckNhc2UoKSxpPWNuKHQuY29udGVudCkudG9Mb3dlckNhc2UoKTtyZXR1cm4gbj9uLmluZGV4T2YoImludmFsaWQgcGFnZXMgcGFyYW1ldGVyIikhPT0tMSYmaS5sZW5ndGg+MDohMX1mdW5jdGlvbiBhZShlKXtyZXR1cm4hIWUmJihlLnNlc3Npb25LaW5kPT09InN0cnVjdHVyZWQifHxlLnJ1bm5lcj09PSJjbGF1ZGUtY2xpLXByaW50Iil9ZnVuY3Rpb24gQ2koKXtyLmNoYXRNb2RlPXh0KCJjbGF1ZGUiLHIuY2hhdE1vZGUpO3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtb2RlLWhpbnQiKTtlJiYoZS50ZXh0Q29udGVudD1xbyhyLmNoYXRNb2RlKSksJG4oKX1mdW5jdGlvbiB6YShlLHQpe3Q9dHx8e307dmFyIG49dC5raW5kPT09ImNvbXBhY3QifHx0LmtpbmQ9PT0icG9wb3ZlciI/dC5raW5kOiJkcm9wZG93biIsaT1tdCgpLGE9ci5jaGF0TW9kZXx8ImRlZmF1bHQiLHU9Tm8oZSl8fCJkZWZhdWx0IixzPVdvKGUpO2Z1bmN0aW9uIG8obCxjLGYsZCl7dmFyIHY9bj09PSJjb21wYWN0Ij8iIjonPHNwYW4gY2xhc3M9ImNoYXQtbW9kZS10cmlvLXRhZyI+JytwKGMpKyI8L3NwYW4+IjtyZXR1cm4nPHNwYW4gY2xhc3M9ImNvbXBvc2VyLXRleHQtcGlsbCBjaGF0LW1vZGUtdHJpby1waWxsIiBkYXRhLW1vZGUtY29udHJvbC1waWxsPSInK2wrJyIgdGl0bGU9IicrcChjKSsnIj4nK3YrJzxzcGFuIGNsYXNzPSJjb21wb3Nlci10ZXh0LWxhYmVsIj4nK3AoZikrJzwvc3Bhbj48c2VsZWN0IGNsYXNzPSJjb21wb3Nlci10ZXh0LWhpZGRlbi1zZWxlY3QiIGRhdGEtbW9kZS1jb250cm9sPSInK2wrJyIgdGFiaW5kZXg9Ii0xIiBhcmlhLWxhYmVsPSInK3AoYykrJyI+JytkKyI8L3NlbGVjdD48L3NwYW4+In1yZXR1cm4nPGRpdiBjbGFzcz0iY2hhdC1tb2RlLXRyaW8gY2hhdC1tb2RlLXRyaW8tJytuKyciIHJvbGU9Imdyb3VwIiBhcmlhLWxhYmVsPSJcdTRGMUFcdThCRERcdThCQkVcdTdGNkUiPicrbygibW9kZSIsIlx1NkEyMVx1NUYwRiIsYSxfbyhpLGEpKSsnPHNwYW4gY2xhc3M9ImNvbXBvc2VyLXRleHQtc2VwIiBhcmlhLWhpZGRlbj0idHJ1ZSI+XHhCNzwvc3Bhbj4nK28oIm1vZGVsIiwiXHU2QTIxXHU1NzhCIix1LFJvKHUsZSkpKyc8c3BhbiBjbGFzcz0iY29tcG9zZXItdGV4dC1zZXAiIGFyaWEtaGlkZGVuPSJ0cnVlIj5ceEI3PC9zcGFuPicrbygidGhpbmtpbmciLCJcdTYwMURcdTgwMDMiLHMsem8ocykpKyI8L2Rpdj4ifWZ1bmN0aW9uICRuKCl7dmFyIGU9Z3QoKSx0PW10KCksbj1yLmNoYXRNb2RlfHwiZGVmYXVsdCIsaT1ObyhlKXx8ImRlZmF1bHQiLGE9V28oZSksdT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuY2hhdC1tb2RlLXRyaW8iKTt1LmZvckVhY2goZnVuY3Rpb24ocyl7ZnVuY3Rpb24gbyhsLGMsZil7dmFyIGQ9cy5xdWVyeVNlbGVjdG9yKCdbZGF0YS1tb2RlLWNvbnRyb2wtcGlsbD0iJytsKyciXScpO2lmKGQpe3ZhciB2PWQucXVlcnlTZWxlY3RvcigiLmNvbXBvc2VyLXRleHQtbGFiZWwiKTt2JiYodi50ZXh0Q29udGVudD1jKTt2YXIgZz1kLnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLW1vZGUtY29udHJvbD0iJytsKyciXScpO2cmJihmJiYoZy5pbm5lckhUTUw9ZiksZy52YWx1ZSE9PWMmJihnLnZhbHVlPWMpKX19bygibW9kZSIsbixfbyh0LG4pKSxvKCJtb2RlbCIsaSxSbyhpLGUpKSxvKCJ0aGlua2luZyIsYSx6byhhKSl9KX1mdW5jdGlvbiBfbyhlLHQpe3JldHVybiBXYShlKS5tYXAoZnVuY3Rpb24obil7cmV0dXJuJzxvcHRpb24gdmFsdWU9IicrcChuKSsnIicrKG49PT10PyIgc2VsZWN0ZWQiOiIiKSsiPiIrcChuKSsiPC9vcHRpb24+In0pLmpvaW4oIiIpfWZ1bmN0aW9uIE5vKGUpe3JldHVybiBlJiZlLnNlbGVjdGVkTW9kZWw/ZS5zZWxlY3RlZE1vZGVsOnIuY2hhdE1vZGVsP3IuY2hhdE1vZGVsOnIuY29uZmlnJiZyLmNvbmZpZy5kZWZhdWx0TW9kZWw/ci5jb25maWcuZGVmYXVsdE1vZGVsOiIifWZ1bmN0aW9uIGpvKGUpe3ZhciB0PWUmJmUucHJvdmlkZXJ8fHIuc2Vzc2lvblRvb2x8fCJjbGF1ZGUiO3JldHVybiB0PT09ImNvZGV4Ij9yLmF2YWlsYWJsZUNvZGV4TW9kZWxzfHxbXTpyLmF2YWlsYWJsZU1vZGVsc3x8W119ZnVuY3Rpb24gT3YoZSx0KXtmb3IodmFyIG49am8odCksaT0nPG9wdGlvbiB2YWx1ZT0iIj5cdTlFRDhcdThCQTRcdUZGMDhcdThEREZcdTk2OEZcdThCQkVcdTdGNkVcdUZGMDk8L29wdGlvbj4nLGE9MDthPG4ubGVuZ3RoO2ErKyl7dmFyIHU9blthXSxzPXUubGFiZWx8fHUuaWQ7aSs9JzxvcHRpb24gdmFsdWU9IicrcCh1LmlkKSsnIicrKHUuaWQ9PT1lPyIgc2VsZWN0ZWQiOiIiKSsiPiIrcChzKSsiPC9vcHRpb24+In1yZXR1cm4gZSYmIW4uc29tZShmdW5jdGlvbihvKXtyZXR1cm4gby5pZD09PWV9KSYmKGkrPSc8b3B0aW9uIHZhbHVlPSInK3AoZSkrJyIgc2VsZWN0ZWQ+JytwKGUpKyJcdUZGMDhcdTgxRUFcdTVCOUFcdTRFNDlcdUZGMDk8L29wdGlvbj4iKSxpfWZ1bmN0aW9uIFJvKGUsdCl7Zm9yKHZhciBuPWpvKHQpLGk9JzxvcHRpb24gdmFsdWU9IiI+ZGVmYXVsdDwvb3B0aW9uPicsYT0wO2E8bi5sZW5ndGg7YSsrKXt2YXIgdT1uW2FdO2krPSc8b3B0aW9uIHZhbHVlPSInK3AodS5pZCkrJyInKyh1LmlkPT09ZT8iIHNlbGVjdGVkIjoiIikrIj4iK3AodS5pZCkrIjwvb3B0aW9uPiJ9cmV0dXJuIGUmJiFuLnNvbWUoZnVuY3Rpb24ocyl7cmV0dXJuIHMuaWQ9PT1lfSkmJihpKz0nPG9wdGlvbiB2YWx1ZT0iJytwKGUpKyciIHNlbGVjdGVkPicrcChlKSsiPC9vcHRpb24+IiksaX1mdW5jdGlvbiBYbihlKXskbigpfXZhciBkbj1be2lkOiJvZmYiLGxhYmVsOiJvZmYiLGhpbnQ6Ilx1NEUwRFx1NTQyRlx1NzUyOFx1NjAxRFx1ODAwM1x1RkYwOENMSSBcdTY1RTBcdTUyNERcdTdGMDBcdUZGMUJTREsgXHU1MTczXHU5NUVEIHRoaW5raW5nXHVGRjFCQ29kZXggbWluaW1hbFx1RkYwOSJ9LHtpZDoic3RhbmRhcmQiLGxhYmVsOiJ0aGluayIsaGludDoiQ2xhdWRlIENMSTogdGhpbmsgXHhCNyBTREsgYnVkZ2V0IDQwOTYgXHhCNyBDb2RleCBsb3cifSx7aWQ6ImRlZXAiLGxhYmVsOiJ0aGluayBoYXJkIixoaW50OiJDbGF1ZGUgQ0xJOiB0aGluayBoYXJkIFx4QjcgU0RLIGJ1ZGdldCAxNjAwMCBceEI3IENvZGV4IG1lZGl1bSJ9LHtpZDoibWF4IixsYWJlbDoidWx0cmF0aGluayIsaGludDoiQ2xhdWRlIENMSTogdWx0cmF0aGluayBceEI3IFNESyBidWRnZXQgMzE5OTkgXHhCNyBDb2RleCBoaWdoIn1dO2Z1bmN0aW9uIFB2KGUpe2Zvcih2YXIgdD0wO3Q8ZG4ubGVuZ3RoO3QrKylpZihkblt0XS5pZD09PWUpcmV0dXJuIGRuW3RdLmxhYmVsO3JldHVybiBkblswXS5sYWJlbH1mdW5jdGlvbiBXbyhlKXtyZXR1cm4gZSYmZS50aGlua2luZ0VmZm9ydD9lLnRoaW5raW5nRWZmb3J0OnIuY2hhdFRoaW5raW5nP3IuY2hhdFRoaW5raW5nOiJvZmYifWZ1bmN0aW9uIGtnKGUpe2Zvcih2YXIgdD1lfHwib2ZmIixuPSIiLGk9MDtpPGRuLmxlbmd0aDtpKyspe3ZhciBhPWRuW2ldO24rPSc8b3B0aW9uIHZhbHVlPSInK3AoYS5pZCkrJyInKyhhLmlkPT09dD8iIHNlbGVjdGVkIjoiIikrJyB0aXRsZT0iJytwKGEuaGludCkrJyI+JytwKGEubGFiZWwpKyI8L29wdGlvbj4ifXJldHVybiBufWZ1bmN0aW9uIHpvKGUpe2Zvcih2YXIgdD1lfHwib2ZmIixuPSIiLGk9MDtpPGRuLmxlbmd0aDtpKyspe3ZhciBhPWRuW2ldO24rPSc8b3B0aW9uIHZhbHVlPSInK3AoYS5pZCkrJyInKyhhLmlkPT09dD8iIHNlbGVjdGVkIjoiIikrIj4iK3AoYS5pZCkrIjwvb3B0aW9uPiJ9cmV0dXJuIG59ZnVuY3Rpb24gQWcoZSl7JG4oKX1mdW5jdGlvbiBxdihlKXt2YXIgdD0oZXx8Im9mZiIpLnRyaW0oKTt0IT09Im9mZiImJnQhPT0ic3RhbmRhcmQiJiZ0IT09ImRlZXAiJiZ0IT09Im1heCImJih0PSJvZmYiKSxyLmNoYXRUaGlua2luZz10O3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC10aGlua2luZy1lZmZvcnQiLHQpfWNhdGNoe30kbigpO3ZhciBuPWd0KCk7biYmZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQobi5pZCkrIi90aGlua2luZy1lZmZvcnQiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHt0aGlua2luZ0VmZm9ydDp0fSl9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoaSYmaS5lcnJvcil7ayhpLmVycm9yLCJlcnJvciIpO3JldHVybn1pJiZpLmlkJiYoUShpKSx0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmaygiXHU1REYyXHU1MjA3XHU2MzYyXHU2MDFEXHU4MDAzXHU2REYxXHU1RUE2IFx1MjE5MiAiK1B2KHQpLCJzdWNjZXNzIikpfSkuY2F0Y2goZnVuY3Rpb24oKXtrKCJcdTUyMDdcdTYzNjJcdTYwMURcdTgwMDNcdTZERjFcdTVFQTZcdTU5MzFcdThEMjUiLCJlcnJvciIpfSl9ZnVuY3Rpb24gVW8oZSl7aWYoIWUpcmV0dXJuITE7dmFyIHQ9ZS5tb2RlO3JldHVybiB0PT09Im1hbmFnZWQifHx0PT09ImZ1bGwtYWNjZXNzIn1mdW5jdGlvbiBIdihlKXtpZighZXx8VW8oZSkpcmV0dXJuIiI7dmFyIHQ9ISFlLmF1dG9BcHByb3ZlUGVybWlzc2lvbnM7cmV0dXJuIHQ/JzxzcGFuIGlkPSJhdXRvLWFwcHJvdmUtdG9nZ2xlIiBjbGFzcz0iY29tcG9zZXItcGlsbCBjb21wb3Nlci1waWxsLWNoaXAgYXV0by1hcHByb3ZlLWluZGljYXRvciBhY3RpdmUiIHRpdGxlPSJcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTVERjJcdTU0MkZcdTc1MjggXHUyMDE0IFx1NzBCOVx1NTFGQlx1NTE3M1x1OTVFRCI+JytHKCJzaGllbGRDaGVjayIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS43LGNsczoiY29tcG9zZXItcGlsbC1pY29uIn0pKyc8c3BhbiBjbGFzcz0iY29tcG9zZXItcGlsbC1sYWJlbCI+XHU4MUVBXHU1MkE4PC9zcGFuPjwvc3Bhbj4nOic8c3BhbiBpZD0iYXV0by1hcHByb3ZlLXRvZ2dsZSIgY2xhc3M9ImNvbXBvc2VyLXBpbGwgY29tcG9zZXItcGlsbC1jaGlwIGF1dG8tYXBwcm92ZS1pbmRpY2F0b3IiIHRpdGxlPSJcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTVERjJcdTUxNzNcdTk1RUQgXHUyMDE0IFx1NzBCOVx1NTFGQlx1NUYwMFx1NTQyRiI+JytHKCJzaGllbGQiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuNyxjbHM6ImNvbXBvc2VyLXBpbGwtaWNvbiJ9KSsnPHNwYW4gY2xhc3M9ImNvbXBvc2VyLXBpbGwtbGFiZWwiPlx1NjI0Qlx1NTJBODwvc3Bhbj48L3NwYW4+J31mdW5jdGlvbiBWbygpe3JldHVybiBmZXRjaCgiL2FwaS9tb2RlbHMiLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihlKXtyZXR1cm4gZS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlJiZBcnJheS5pc0FycmF5KGUubW9kZWxzKSYmKHIuYXZhaWxhYmxlTW9kZWxzPWUubW9kZWxzLHIuYXZhaWxhYmxlQ29kZXhNb2RlbHM9QXJyYXkuaXNBcnJheShlLmNvZGV4TW9kZWxzKT9lLmNvZGV4TW9kZWxzOltdLFhuKGd0KCkpLEJpKGUpKSxlfSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0pfWZ1bmN0aW9uIF92KCl7aWYoci5tb2RlbHNSZWZyZXNoaW5nKXJldHVybiBQcm9taXNlLnJlc29sdmUobnVsbCk7ci5tb2RlbHNSZWZyZXNoaW5nPSEwO3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctZGVmYXVsdC1tb2RlbC1yZWZyZXNoIik7cmV0dXJuIGUmJihlLmRpc2FibGVkPSEwLGUudGV4dENvbnRlbnQ9Ilx1NTIzN1x1NjVCMFx1NEUyRC4uLiIpLGZldGNoKCIvYXBpL21vZGVscy9yZWZyZXNoIix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gdC5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0JiZBcnJheS5pc0FycmF5KHQubW9kZWxzKSYmKHIuYXZhaWxhYmxlTW9kZWxzPXQubW9kZWxzLHIuYXZhaWxhYmxlQ29kZXhNb2RlbHM9QXJyYXkuaXNBcnJheSh0LmNvZGV4TW9kZWxzKT90LmNvZGV4TW9kZWxzOltdLFhuKGd0KCkpLEJpKHQpLHR5cGVvZiBrPT0iZnVuY3Rpb24iJiZrKCJcdTZBMjFcdTU3OEJcdTUyMTdcdTg4NjhcdTVERjJcdTUyMzdcdTY1QjAiKyh0LmNsYXVkZVZlcnNpb24/Ilx1RkYwOGNsYXVkZSAiK3QuY2xhdWRlVmVyc2lvbisiXHVGRjA5IjoiIiksInN1Y2Nlc3MiKSksdH0pLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJuIHR5cGVvZiBrPT0iZnVuY3Rpb24iJiZrKCJcdTUyMzdcdTY1QjBcdTZBMjFcdTU3OEJcdTUyMTdcdTg4NjhcdTU5MzFcdThEMjUiLCJlcnJvciIpLG51bGx9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ci5tb2RlbHNSZWZyZXNoaW5nPSExLGUmJihlLmRpc2FibGVkPSExLGUudGV4dENvbnRlbnQ9Ilx1NTIzN1x1NjVCMCIpfSl9ZnVuY3Rpb24gTnYoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZW52LXByZXZpZXctbW9kYWwiKTtpZighZSl7ZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzZWN0aW9uIiksZS5pZD0iZW52LXByZXZpZXctbW9kYWwiLGUuY2xhc3NOYW1lPSJtb2RhbC1iYWNrZHJvcCBoaWRkZW4iLGUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJtb2RhbCBlbnYtcHJldmlldy1tb2RhbCIgcm9sZT0iZGlhbG9nIiBhcmlhLWxhYmVsbGVkYnk9ImVudi1wcmV2aWV3LXRpdGxlIiBhcmlhLW1vZGFsPSJ0cnVlIj48ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIiPjxkaXY+PGgyIGNsYXNzPSJtb2RhbC10aXRsZSIgaWQ9ImVudi1wcmV2aWV3LXRpdGxlIj5cdTVDMDZcdTZDRThcdTUxNjVcdTVCNTBcdThGREJcdTdBMEJcdTc2ODRcdTczQUZcdTU4ODNcdTUzRDhcdTkxQ0Y8L2gyPjxwIGNsYXNzPSJtb2RhbC1zdWJ0aXRsZSIgaWQ9ImVudi1wcmV2aWV3LXN1YnRpdGxlIj5cdThGRDlcdTRFOUJcdTUzRDhcdTkxQ0ZcdTRGMUFcdTg4QUJcdTRGMjBcdTdFRDkgY2xhdWRlIC8gY29kZXhcdUZGMDhQVFkgXHU0RTBFXHU3RUQzXHU2Nzg0XHU1MzE2XHU4RkQwXHU4ODRDXHU1NjY4XHU0RTAwXHU4MUY0XHVGRjA5XHUzMDAyPC9wPjwvZGl2PjxidXR0b24gaWQ9ImVudi1wcmV2aWV3LWNsb3NlIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4taWNvbiBtb2RhbC1jbG9zZS1idG4iIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU1MTczXHU5NUVEIj48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxsaW5lIHgxPSI2IiB5MT0iNiIgeDI9IjE4IiB5Mj0iMTgiLz48bGluZSB4MT0iMTgiIHkxPSI2IiB4Mj0iNiIgeTI9IjE4Ii8+PC9zdmc+PC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0ibW9kYWwtYm9keSBlbnYtcHJldmlldy1ib2R5Ij48ZGl2IGNsYXNzPSJlbnYtcHJldmlldy10b29sYmFyIj48ZGl2IGNsYXNzPSJlbnYtcHJldmlldy1tZXRhIiBpZD0iZW52LXByZXZpZXctbWV0YSI+XHU1MkEwXHU4RjdEXHU0RTJEXHUyMDI2PC9kaXY+PGRpdiBjbGFzcz0iZW52LXByZXZpZXctY29udHJvbHMiPjxpbnB1dCBpZD0iZW52LXByZXZpZXctc2VhcmNoIiBjbGFzcz0iZW52LXByZXZpZXctc2VhcmNoIiB0eXBlPSJzZWFyY2giIHBsYWNlaG9sZGVyPSJcdTY0MUNcdTdEMjJcdTUzRDhcdTkxQ0ZcdTU0MERcdTIwMjYiIC8+PGxhYmVsIGNsYXNzPSJlbnYtcHJldmlldy1yZXZlYWwiPjxpbnB1dCBpZD0iZW52LXByZXZpZXctcmV2ZWFsLXRvZ2dsZSIgdHlwZT0iY2hlY2tib3giIC8+PHNwYW4+XHU2NjNFXHU3OTNBXHU2NTRGXHU2MTFGXHU1MDNDPC9zcGFuPjwvbGFiZWw+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZW52LXByZXZpZXctbGlzdCIgaWQ9ImVudi1wcmV2aWV3LWxpc3QiIHRhYmluZGV4PSIwIj48ZGl2IGNsYXNzPSJlbnYtcHJldmlldy1sb2FkaW5nIj5cdTUyQTBcdThGN0RcdTRFMkRcdTIwMjY8L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1mb290ZXIgZW52LXByZXZpZXctZm9vdGVyIj48c3BhbiBjbGFzcz0iZW52LXByZXZpZXctaGludCI+XHU2NTRGXHU2MTFGXHU1QjU3XHU2QkI1XHVGRjA4XHU1NDJCIEtFWS9UT0tFTi9TRUNSRVQgXHU3QjQ5XHVGRjA5XHU5RUQ4XHU4QkE0XHU2M0E5XHU3ODAxXHVGRjBDXHU1M0VGXHU1MkZFXHU5MDA5XHUzMDBDXHU2NjNFXHU3OTNBXHU2NTRGXHU2MTFGXHU1MDNDXHUzMDBEXHU0RTM0XHU2NUY2XHU4RkQ4XHU1MzlGXHUzMDAyPC9zcGFuPjxidXR0b24gaWQ9ImVudi1wcmV2aWV3LWNsb3NlLTIiIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20iIHR5cGU9ImJ1dHRvbiI+XHU1MTczXHU5NUVEPC9idXR0b24+PC9kaXY+PC9kaXY+Jyxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGUpLGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKG8pe28udGFyZ2V0PT09ZSYmVWEoKX0pO3ZhciB0PWUucXVlcnlTZWxlY3RvcigiI2Vudi1wcmV2aWV3LWNsb3NlIik7dCYmdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsVWEpO3ZhciBuPWUucXVlcnlTZWxlY3RvcigiI2Vudi1wcmV2aWV3LWNsb3NlLTIiKTtuJiZuLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixVYSk7dmFyIGE9ZS5xdWVyeVNlbGVjdG9yKCIjZW52LXByZXZpZXctc2VhcmNoIik7YSYmYS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsZnVuY3Rpb24oKXtKbygpfSk7dmFyIGk9ZS5xdWVyeVNlbGVjdG9yKCIjZW52LXByZXZpZXctcmV2ZWFsLXRvZ2dsZSIpO2kmJmkuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe0tvKGkuY2hlY2tlZCl9KX1lLmNsYXNzTGlzdC5yZW1vdmUoImNsb3NpbmciKSxlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3ZhciBpPWUucXVlcnlTZWxlY3RvcigiI2Vudi1wcmV2aWV3LXJldmVhbC10b2dnbGUiKTtpJiYoaS5jaGVja2VkPSExKTt2YXIgYT1lLnF1ZXJ5U2VsZWN0b3IoIiNlbnYtcHJldmlldy1zZWFyY2giKTthJiYoYS52YWx1ZT0iIiksS28oITEpfWZ1bmN0aW9uIFVhKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImVudi1wcmV2aWV3LW1vZGFsIik7ZSYmWWEoZSl9ZnVuY3Rpb24gS28oZSl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImVudi1wcmV2aWV3LWxpc3QiKSxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJlbnYtcHJldmlldy1tZXRhIik7dCYmKHQuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJlbnYtcHJldmlldy1sb2FkaW5nIj5cdTUyQTBcdThGN0RcdTRFMkRcdTIwMjY8L2Rpdj4nKSxuJiYobi50ZXh0Q29udGVudD0iXHU1MkEwXHU4RjdEXHU0RTJEXHUyMDI2Iik7dmFyIGk9Ii9hcGkvc2V0dGluZ3MvZW52LXByZXZpZXciKyhlPyI/cmV2ZWFsPTEiOiIiKTtmZXRjaChpLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihhKXtyZXR1cm4gYS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGEpe2lmKCFhfHwhQXJyYXkuaXNBcnJheShhLmVudHJpZXMpKXt0JiYodC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LWVtcHR5Ij5cdThCRkJcdTUzRDZcdTU5MzFcdThEMjVcdTMwMDI8L2Rpdj4nKSxuJiYobi50ZXh0Q29udGVudD0iXHU4QkZCXHU1M0Q2XHU1OTMxXHU4RDI1Iik7cmV0dXJufWlmKHIuX2VudlByZXZpZXc9YSxuKXt2YXIgdT1hLmluaGVyaXRFbnY/Ilx1N0VFN1x1NjI3Rlx1NzIzNlx1OEZEQlx1N0EwQiI6Ilx1NjcwMFx1NUMwRlx1NzY3RFx1NTQwRFx1NTM1NSI7bi5pbm5lckhUTUw9JzxzcGFuIGNsYXNzPSJlbnYtcHJldmlldy1waWxsICcrKGEuaW5oZXJpdEVudj8iaXMtaW5oZXJpdCI6ImlzLW1pbmltYWwiKSsnIj4nK3UrJzwvc3Bhbj48c3BhbiBjbGFzcz0iZW52LXByZXZpZXctY291bnQiPlx1NTE3MSAnK2EudG90YWwrIiBcdTk4Nzk8L3NwYW4+In1KbygpfSkuY2F0Y2goZnVuY3Rpb24oKXt0JiYodC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LWVtcHR5Ij5cdThCRkJcdTUzRDZcdTU5MzFcdThEMjVcdUZGMENcdThCRjdcdTdBMERcdTU0MEVcdTkxQ0RcdThCRDVcdTMwMDI8L2Rpdj4nKSxuJiYobi50ZXh0Q29udGVudD0iXHU4QkZCXHU1M0Q2XHU1OTMxXHU4RDI1Iil9KX1mdW5jdGlvbiBKbygpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJlbnYtcHJldmlldy1saXN0Iik7aWYoZSl7dmFyIHQ9ci5fZW52UHJldmlldztpZighdHx8IUFycmF5LmlzQXJyYXkodC5lbnRyaWVzKSl7ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LWVtcHR5Ij5cdTVDMUFcdTY3MkFcdTUyQTBcdThGN0RcdTMwMDI8L2Rpdj4nO3JldHVybn1mb3IodmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImVudi1wcmV2aWV3LXNlYXJjaCIpLGk9KG4mJm4udmFsdWV8fCIiKS50cmltKCkudG9Mb3dlckNhc2UoKSxhPSIiLHU9MCxzPTA7czx0LmVudHJpZXMubGVuZ3RoO3MrKyl7dmFyIG89dC5lbnRyaWVzW3NdO2lmKCEoaSYmby5uYW1lLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihpKT09PS0xKSl7dSsrO3ZhciBsPXR5cGVvZiBvLnZhbHVlPT0ic3RyaW5nIiYmby52YWx1ZS5jaGFyQXQoMCk9PT0iPCImJm8udmFsdWUuY2hhckF0KG8udmFsdWUubGVuZ3RoLTEpPT09Ij4iO2ErPSc8ZGl2IGNsYXNzPSJlbnYtcHJldmlldy1yb3cnKyhvLnNlbnNpdGl2ZT8iIGlzLXNlbnNpdGl2ZSI6IiIpKyciPjxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LW5hbWUiPicrcChvLm5hbWUpKyhvLnNlbnNpdGl2ZT8nPHNwYW4gY2xhc3M9ImVudi1wcmV2aWV3LWJhZGdlIiB0aXRsZT0iXHU4OEFCXHU4QkM2XHU1MjJCXHU0RTNBXHU2NTRGXHU2MTFGXHU1QjU3XHU2QkI1Ij5cdTY1NEZcdTYxMUY8L3NwYW4+JzoiIikrKGw/JzxzcGFuIGNsYXNzPSJlbnYtcHJldmlldy1iYWRnZSBlbnYtcHJldmlldy1iYWRnZS1ydW50aW1lIiB0aXRsZT0iXHU2MzA5XHU0RjFBXHU4QkREXHU1MkE4XHU2MDAxXHU2Q0U4XHU1MTY1Ij5cdThGRDBcdTg4NENcdTY1RjY8L3NwYW4+JzoiIikrJzwvZGl2PjxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LXZhbHVlJysobD8iIGlzLXJ1bnRpbWUiOiIiKSsnIiB0aXRsZT0iJytwKFN0cmluZyhvLnZhbHVlKSkrJyI+JytwKFN0cmluZyhvLnZhbHVlKSkrJzwvZGl2PjxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LWxlbiI+JytvLmxlbmd0aCsiIFx1NUI1N1x1N0IyNjwvZGl2PjwvZGl2PiJ9fXU9PT0wJiYoYT0nPGRpdiBjbGFzcz0iZW52LXByZXZpZXctZW1wdHkiPlx1NkNBMVx1NjcwOVx1NTMzOVx1OTE0RFx1NzY4NFx1NTNEOFx1OTFDRlx1MzAwMjwvZGl2PicpLGUuaW5uZXJIVE1MPWF9fWZ1bmN0aW9uIEJpKGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctZGVmYXVsdC1tb2RlbCIpO2lmKHQpe3ZhciBuPXQudmFsdWUsaT1ufHxyLmNvbmZpZ0RlZmF1bHRNb2RlbHx8ci5jb25maWcmJnIuY29uZmlnLmRlZmF1bHRNb2RlbHx8IiI7dC5pbm5lckhUTUw9T3YoaSx7cHJvdmlkZXI6ImNsYXVkZSJ9KSx0LnZhbHVlPWk7dmFyIGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1kZWZhdWx0LW1vZGVsLXZlcnNpb24iKTthJiZlJiYoYS50ZXh0Q29udGVudD1lLmNsYXVkZVZlcnNpb24/Ilx1NURGMlx1NjhDMFx1NkQ0Qlx1NTIzMCBjbGF1ZGUgIitlLmNsYXVkZVZlcnNpb246Ilx1NjVCMFx1NUVGQVx1NEYxQVx1OEJERFx1NjVGNlx1OUVEOFx1OEJBNFx1NEY3Rlx1NzUyOFx1OEJFNVx1NkEyMVx1NTc4Qlx1MzAwMiIpfX1mdW5jdGlvbiBndCgpe2lmKCFyLnNlbGVjdGVkSWQpcmV0dXJuIG51bGw7Zm9yKHZhciBlPTA7ZTxyLnNlc3Npb25zLmxlbmd0aDtlKyspaWYoci5zZXNzaW9uc1tlXS5pZD09PXIuc2VsZWN0ZWRJZClyZXR1cm4gci5zZXNzaW9uc1tlXTtyZXR1cm4gbnVsbH1mdW5jdGlvbiBqdihlKXt2YXIgdD0oZXx8IiIpLnRyaW0oKTtyLmNoYXRNb2RlbD10O3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1jaGF0LW1vZGVsIix0KX1jYXRjaHt9JG4oKTt2YXIgbj1ndCgpO24mJmZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KG4uaWQpKyIvbW9kZWwiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHttb2RlbDp0fHxudWxsfSl9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoaSYmaS5lcnJvcil7ayhpLmVycm9yLCJlcnJvciIpO3JldHVybn1pZihpJiZpLmlkJiYoUShpKSx0eXBlb2Ygaz09ImZ1bmN0aW9uIikpe3ZhciBhPXR8fCJcdTlFRDhcdThCQTQiLHU9bi5wcm92aWRlcj09PSJjb2RleCI/Ilx1RkYwOFx1NEUwQlx1NkIyMVx1NUJGOVx1OEJERFx1NzUxRlx1NjU0OFx1RkYwOSI6IiI7aygiXHU1REYyXHU1MjA3XHU2MzYyXHU2QTIxXHU1NzhCIFx1MjE5MiAiK2ErdSwic3VjY2VzcyIpfX0pLmNhdGNoKGZ1bmN0aW9uKCl7aygiXHU1MjA3XHU2MzYyXHU2QTIxXHU1NzhCXHU1OTMxXHU4RDI1IiwiZXJyb3IiKX0pfWZ1bmN0aW9uIFJ2KGUpe3ZhciB0PXh0KG10KCksKGV8fCJkZWZhdWx0IikudHJpbSgpKTtyLmNoYXRNb2RlPXQsJG4oKTt2YXIgbj1ndCgpO2lmKCFufHwhbi5pZHx8bi5zZXNzaW9uS2luZCE9PSJzdHJ1Y3R1cmVkIil7ayYmaygiXHU2NUIwXHU0RjFBXHU4QkREXHU2QTIxXHU1RjBGXHVGRjFBIit0LCJpbmZvIik7cmV0dXJufWZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KG4uaWQpKyIvbW9kZSIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe21vZGU6dH0pfSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGkpe2lmKGkmJmkuZXJyb3Ipe2soaS5lcnJvciwiZXJyb3IiKTtyZXR1cm59aWYoaSYmaS5pZCYmKFEoaSksdHlwZW9mIGs9PSJmdW5jdGlvbiIpKXt2YXIgYT1uLnByb3ZpZGVyPT09ImNvZGV4Ij8iXHVGRjA4Q29kZXggXHU1NkZBXHU1QjlBXHU1MTY4XHU2NzQzXHU5NjUwXHVGRjA5IjoiIjtrKCJcdTVERjJcdTUyMDdcdTYzNjJcdTZBMjFcdTVGMEYgXHUyMTkyICIrdCthLCJzdWNjZXNzIil9fSkuY2F0Y2goZnVuY3Rpb24oKXtrKCJcdTUyMDdcdTYzNjJcdTZBMjFcdTVGMEZcdTU5MzFcdThEMjUiLCJlcnJvciIpfSl9ZnVuY3Rpb24gR28oZSx0LG4saSl7dmFyIGE9ci5zZXNzaW9uVG9vbD09PSJjb2RleCI/ImNvZGV4IjoiY2xhdWRlIix1PXIuY2hhdE1vZGVsfHxyLmNvbmZpZyYmci5jb25maWcuZGVmYXVsdE1vZGVsfHwiIixzPXIuY2hhdFRoaW5raW5nfHwib2ZmIixvPXtjd2Q6dHx8JGUoKSxtb2RlOm58fHIuY2hhdE1vZGV8fHIuY29uZmlnJiZyLmNvbmZpZy5kZWZhdWx0TW9kZXx8ImRlZmF1bHQiLHByb3ZpZGVyOmEscnVubmVyOmE9PT0iY29kZXgiPyJjb2RleC1jbGktZXhlYyI6ci5jb25maWcmJnIuY29uZmlnLnN0cnVjdHVyZWRSdW5uZXI9PT0ic2RrIj8iY2xhdWRlLXNkayI6ci5zdHJ1Y3R1cmVkUnVubmVyfHwiY2xhdWRlLWNsaS1wcmludCIscHJvbXB0OmV8fHZvaWQgMCx3b3JrdHJlZUVuYWJsZWQ6aT09PSEwLG1vZGVsOnV8fHZvaWQgMCx0aGlua2luZ0VmZm9ydDpzfTtyZXR1cm4gZmV0Y2goIi9hcGkvc3RydWN0dXJlZC1zZXNzaW9ucyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkobyl9KS50aGVuKGZ1bmN0aW9uKGwpe3JldHVybiBsLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obCl7aWYobC5lcnJvcil0aHJvdyBuZXcgRXJyb3IobC5lcnJvcik7cmV0dXJuIHIuc2VsZWN0ZWRJZD1sLmlkLEZlKCksci5kcmFmdHNbbC5pZF09IiIsa3QoKSxRKGwpLHZlKCksQ3IobC5pZCksVG4obC5pZCkscG4obC5pZCkudGhlbihmdW5jdGlvbigpe3JldHVybiBsfSl9KX1mdW5jdGlvbiBEaSgpe3ZhciBlPSEhci5zZWxlY3RlZElkLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpLG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXQtb3V0cHV0IiksaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdCIpLGE9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGwpe3JldHVybiBsLmlkPT09ci5zZWxlY3RlZElkfSksdT1hZShhKSxzPWUmJiF1JiZyLmN1cnJlbnRWaWV3PT09InRlcm1pbmFsIixvPWUmJih1fHxyLmN1cnJlbnRWaWV3IT09InRlcm1pbmFsIik7dT9yLmN1cnJlbnRWaWV3PSJjaGF0IjplfHwoci5jdXJyZW50Vmlldz0idGVybWluYWwiKSx0JiYodC5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLHMpLHQuY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIiwhcykpLG4mJihuLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsbyksbi5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLCFvKSksaSYmaS5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLGUpLG4mJm8mJlNhKG4pLGFyKCksUWUoKSxCcigpfWZ1bmN0aW9uIFNyKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1vZGUtZGVzY3JpcHRpb24iKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLWtpbmQtZGVzY3JpcHRpb24iKSxuPXIuc2Vzc2lvblRvb2x8fCJjbGF1ZGUiLGk9ci5zZXNzaW9uQ3JlYXRlS2luZHx8InN0cnVjdHVyZWQiO3Iuc2Vzc2lvblRvb2w9bixyLm1vZGVWYWx1ZT14dChuLHIubW9kZVZhbHVlfHxyLmNoYXRNb2RlfHwiZGVmYXVsdCIpO3ZhciBhPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIiNwcm92aWRlci1jYXJkcyAucHJvdmlkZXItY2FyZCIpO2EubGVuZ3RoJiZhLmZvckVhY2goZnVuY3Rpb24obyl7dmFyIGw9by5nZXRBdHRyaWJ1dGUoImRhdGEtcHJvdmlkZXIiKTtvLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsbD09PW4pLG8uY2xhc3NMaXN0LnJlbW92ZSgiZGlzYWJsZWQiKX0pO3ZhciB1PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIiNzZXNzaW9uLWtpbmQtY2FyZHMgLnNlc3Npb24ta2luZC1jYXJkIik7dS5sZW5ndGgmJnUuZm9yRWFjaChmdW5jdGlvbihvKXt2YXIgbD1vLmdldEF0dHJpYnV0ZSgiZGF0YS1zZXNzaW9uLWtpbmQiKSxjPSExO28uY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIixsPT09aSksby5jbGFzc0xpc3QudG9nZ2xlKCJkaXNhYmxlZCIsYyl9KTt2YXIgcz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIjbW9kZS1jYXJkcyAubW9kZS1jYXJkIik7cy5sZW5ndGgmJnMuZm9yRWFjaChmdW5jdGlvbihvKXtvLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsby5nZXRBdHRyaWJ1dGUoImRhdGEtbW9kZSIpPT09ci5tb2RlVmFsdWUpfSksdCYmKHQudGV4dENvbnRlbnQ9VXUoaSkpLGUmJihlLnRleHRDb250ZW50PVBvKG4sci5tb2RlVmFsdWUpKX1mdW5jdGlvbiBXdihlLHQsbixpKXt2YXIgYT1ufHwwLHU9dHlwZW9mIGk9PSJudW1iZXIiP2k6TWF0aC5tYXgoYSt0Lmxlbmd0aCx0Lmxlbmd0aCkscz1lJiZBcnJheS5pc0FycmF5KGUubWVzc2FnZXMpP2UubWVzc2FnZXM6W10sbz1lJiZ0eXBlb2YgZS5tZXNzYWdlT2Zmc2V0PT0ibnVtYmVyIj9lLm1lc3NhZ2VPZmZzZXQ6MDtpZih0Lmxlbmd0aD09PTAmJnMubGVuZ3RoPjAmJnU9PT0wKXJldHVybnttZXNzYWdlczpzLG1lc3NhZ2VPZmZzZXQ6byxtZXNzYWdlVG90YWw6ZSYmZS5tZXNzYWdlVG90YWx8fHMubGVuZ3RofTtpZihzLmxlbmd0aD09PTApcmV0dXJue21lc3NhZ2VzOnQsbWVzc2FnZU9mZnNldDphLG1lc3NhZ2VUb3RhbDp1fTtpZihvPD1hKXt2YXIgbD1NYXRoLm1pbihNYXRoLm1heChhLW8sMCkscy5sZW5ndGgpLGM9cy5zbGljZSgwLGwpLmNvbmNhdCh0KTtyZXR1cm57bWVzc2FnZXM6YyxtZXNzYWdlT2Zmc2V0Om8sbWVzc2FnZVRvdGFsOk1hdGgubWF4KHUsbytjLmxlbmd0aCl9fXJldHVybnttZXNzYWdlczp0LG1lc3NhZ2VPZmZzZXQ6YSxtZXNzYWdlVG90YWw6dX19ZnVuY3Rpb24gUShlKXtpZighKCFlfHwhZS5pZCkpe3ZhciB0PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihvKXtyZXR1cm4gby5pZD09PWUuaWR9KXx8bnVsbCxuPV9sKGUsdCk7aWYoQXJyYXkuaXNBcnJheShuLm1lc3NhZ2VzKSYmdHlwZW9mIG4ubWVzc2FnZU9mZnNldD09Im51bWJlciIpe3ZhciBpPVd2KHQsbi5tZXNzYWdlcyxuLm1lc3NhZ2VPZmZzZXQsbi5tZXNzYWdlVG90YWwpO24ubWVzc2FnZXM9aS5tZXNzYWdlcyxuLm1lc3NhZ2VPZmZzZXQ9aS5tZXNzYWdlT2Zmc2V0LG4ubWVzc2FnZVRvdGFsPWkubWVzc2FnZVRvdGFsfXZhciBhPSExLHU9bnVsbDtyLnNlc3Npb25zPXIuc2Vzc2lvbnMubWFwKGZ1bmN0aW9uKG8pe3JldHVybiBvLmlkIT09bi5pZD9vOih1PW8sYT0hMCxPYmplY3QuYXNzaWduKHt9LG8sbikpfSksYXx8ci5zZXNzaW9ucy51bnNoaWZ0KG4pO3ZhciBzPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihvKXtyZXR1cm4gby5pZD09PW4uaWR9KXx8bjtzJiZBcnJheS5pc0FycmF5KHMucXVldWVkTWVzc2FnZXMpJiZuLmlkPT09ci5zZWxlY3RlZElkJiYoenIocyksZnUoKSxzbigpKSxuLmlkPT09ci5zZWxlY3RlZElkJiYoQ2EoKSxZdCgpKSxuLnN0YXR1cyYmbi5zdGF0dXMhPT0icnVubmluZyImJnIuY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPjAmJnNldFRpbWVvdXQoY2ksMCl9fWZ1bmN0aW9uIFRuKGUpeyFlfHwhci53c3x8ci53cy5yZWFkeVN0YXRlIT09V2ViU29ja2V0Lk9QRU58fHIud3Muc2VuZChKU09OLnN0cmluZ2lmeSh7dHlwZToic3Vic2NyaWJlIixzZXNzaW9uSWQ6ZX0pKX1mdW5jdGlvbiB6dihlLHQpe2lmKCFlKXJldHVybiB0O3ZhciBuPU9iamVjdC5hc3NpZ24oe30sZSx0KSxpPWUub3V0cHV0fHwiIixhPXQub3V0cHV0fHwiIix1PWkubGVuZ3RoPmEubGVuZ3RoLHM9ZS5zdHJ1Y3R1cmVkU3RhdGV8fG51bGwsbz10LnN0cnVjdHVyZWRTdGF0ZXx8bnVsbCxsPWUuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCJ8fHQuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCIsYz0hIShlLm1lc3NhZ2VzJiZlLm1lc3NhZ2VzLmxlbmd0aCYmKGZ1bmN0aW9uKCl7dmFyIG09ZS5tZXNzYWdlc1tlLm1lc3NhZ2VzLmxlbmd0aC0xXTtyZXR1cm4gbSYmbS5yb2xlPT09ImFzc2lzdGFudCImJkFycmF5LmlzQXJyYXkobS5jb250ZW50KSYmbS5jb250ZW50LnNvbWUoZnVuY3Rpb24oRSl7cmV0dXJuIEUmJkUuX19wcm9jZXNzaW5nfSl9KSgpKSxmPUFycmF5LmlzQXJyYXkoZS5tZXNzYWdlcyk/bD9zcihlLm1lc3NhZ2VzKTplLm1lc3NhZ2VzOltdLGQ9QXJyYXkuaXNBcnJheSh0Lm1lc3NhZ2VzKT9sP3NyKHQubWVzc2FnZXMpOnQubWVzc2FnZXM6W10sdj1kLmxlbmd0aD4wJiYoZnVuY3Rpb24oKXt2YXIgbT1kW2QubGVuZ3RoLTFdO3JldHVybiBtJiZtLnJvbGU9PT0iYXNzaXN0YW50IiYmQXJyYXkuaXNBcnJheShtLmNvbnRlbnQpJiYhbS5jb250ZW50LnNvbWUoZnVuY3Rpb24oRSl7cmV0dXJuIEUmJkUuX19wcm9jZXNzaW5nfSl9KSgpLGc9ZS5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkIiYmISFzJiZzLmluRmxpZ2h0PT09ITAmJighb3x8by5pbkZsaWdodCE9PSEwKSYmYyYmISFzLmFjdGl2ZVJlcXVlc3RJZCYmISFvJiYhIW8uYWN0aXZlUmVxdWVzdElkJiZvLmFjdGl2ZVJlcXVlc3RJZD09PXMuYWN0aXZlUmVxdWVzdElkJiYhdixoPWYubGVuZ3RoPmQubGVuZ3RofHxmLmxlbmd0aD4wJiZkLmxlbmd0aD4wJiZKU09OLnN0cmluZ2lmeShmW2YubGVuZ3RoLTFdKSE9PUpTT04uc3RyaW5naWZ5KGRbZC5sZW5ndGgtMV0pJiZKU09OLnN0cmluZ2lmeShmKS5sZW5ndGg+SlNPTi5zdHJpbmdpZnkoZCkubGVuZ3RoO3JldHVybiB1JiYobi5vdXRwdXQ9aSksZyYmKG4uc3RhdHVzPWUuc3RhdHVzfHxuLnN0YXR1cyxuLnN0cnVjdHVyZWRTdGF0ZT1PYmplY3QuYXNzaWduKHt9LG98fHt9LHMse2luRmxpZ2h0OiEwfSksbi5tZXNzYWdlcz1lLm1lc3NhZ2VzKSxoJiYobi5tZXNzYWdlcz1mKSxlLmlkPT09ci5zZWxlY3RlZElkJiYoZS5wZXJtaXNzaW9uQmxvY2tlZCYmdC5wZXJtaXNzaW9uQmxvY2tlZD09PSExfHxlLnBlcm1pc3Npb25CbG9ja2VkJiYhdC5wZXJtaXNzaW9uQmxvY2tlZCYmKG4ucGVybWlzc2lvbkJsb2NrZWQ9ITApLGUucGVuZGluZ0VzY2FsYXRpb24mJiF0LnBlbmRpbmdFc2NhbGF0aW9uJiZ0LnBlcm1pc3Npb25CbG9ja2VkIT09ITEmJihuLnBlbmRpbmdFc2NhbGF0aW9uPWUucGVuZGluZ0VzY2FsYXRpb24pLGUubWVzc2FnZXMmJmUubWVzc2FnZXMubGVuZ3RoPjAmJighdC5tZXNzYWdlc3x8dC5tZXNzYWdlcy5sZW5ndGg9PT0wKSYmKG4ubWVzc2FnZXM9ZS5tZXNzYWdlcykpLG59ZnVuY3Rpb24gWGUoZSx0LG4pe2lmKGUmJmUubWVzc2FnZXMmJmUubWVzc2FnZXMubGVuZ3RoPjApcmV0dXJuIGUubWVzc2FnZXM7aWYoZSYmZS5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkIilyZXR1cm5bXTtpZighbilyZXR1cm5bXTt2YXIgaT10eXBlb2YgdD09InN0cmluZyI/dDplJiZlLm91dHB1dHx8IiI7cmV0dXJuIGk/WHAoaSxlJiZlLmNvbW1hbmQpOltdfWZ1bmN0aW9uIFV2KGUpe2lmKCFlfHwhZS5sZW5ndGgpcmV0dXJuIG51bGw7aWYoci5zZWxlY3RlZElkKXt2YXIgdD1lLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1yLnNlbGVjdGVkSWR9KTtyZXR1cm4gdD90LmlkOm51bGx9dmFyIG49ZS5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLnN0YXR1cz09PSJydW5uaW5nIn0pO2lmKG4pcmV0dXJuIG4uaWQ7dmFyIGk9ZS5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiFhLmFyY2hpdmVkfSk7cmV0dXJuIGk/aS5pZDplWzBdLmlkfWZ1bmN0aW9uIGZuKGUpe3ZhciB0PWV8fHt9O3JldHVybiBmZXRjaCgiL2FwaS9zZXNzaW9ucyIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKG4pe2lmKG4uc3RhdHVzPT09NDAxKXtNbygpO3JldHVybn1yZXR1cm4gbi5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKG4pe3ZhciBpPW58fFtdLGE9bmV3IFNldChpLm1hcChmdW5jdGlvbihkKXtyZXR1cm4gZC5pZH0pKTtPYmplY3Qua2V5cyhyLmRyYWZ0cykuZm9yRWFjaChmdW5jdGlvbihkKXthLmhhcyhkKXx8ZGVsZXRlIHIuZHJhZnRzW2RdfSksci5zZXNzaW9ucz1pLm1hcChmdW5jdGlvbihkKXt2YXIgdj1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oZyl7cmV0dXJuIGcuaWQ9PT1kLmlkfSk7cmV0dXJuIHp2KHYsZCl9KTt2YXIgdT1VdihyLnNlc3Npb25zKTtpZih1IT09dm9pZCAwJiYoci5zZWxlY3RlZElkPXUpLHZ1KCksc24oKSxyLmJvb3RzdHJhcHBpbmc9ITEsRmUoKSxyLm1vZGFsT3Blbil2ZSgpO2Vsc2V7dmFyIHM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb25zLWxpc3QiKSxvPUdpKCk7aWYocyYmcy5pbm5lckhUTUw9PT1vKXt2YXIgbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbi1jb3VudCIpO2wmJihsLnRleHRDb250ZW50PVN0cmluZyhyLnNlc3Npb25zLmxlbmd0aCkpfWVsc2V7cyYmKHMuaW5uZXJIVE1MPW8pO3ZhciBsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLWNvdW50Iik7bCYmKGwudGV4dENvbnRlbnQ9U3RyaW5nKHIuc2Vzc2lvbnMubGVuZ3RoKSl9fUlyKCksci5zZWxlY3RlZElkJiZyLmdpdFN0YXR1c1Nlc3Npb25JZCE9PXIuc2VsZWN0ZWRJZCYmd24oci5zZWxlY3RlZElkKTt2YXIgYz1Qcm9taXNlLnJlc29sdmUoKTtpZighdC5za2lwU2VsZWN0ZWRPdXRwdXRSZWxvYWQmJnIuc2VsZWN0ZWRJZCljPXBuKHIuc2VsZWN0ZWRJZCk7ZWxzZSBpZihyLnNlbGVjdGVkSWQpe3ZhciBmPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihkKXtyZXR1cm4gZC5pZD09PXIuc2VsZWN0ZWRJZH0pO2FlKGYpJiYoa3Qoe3ByZXNlcnZlU3RpY2tTdGF0ZTohMH0pLGZvKCEwKSl9cmV0dXJuIGMudGhlbihmdW5jdGlvbigpe3IuY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPjAmJmNpKCksQXQoKSxmYSgpfSl9KS5jYXRjaChmdW5jdGlvbihuKXt2YXIgaT1uJiZuLm1lc3NhZ2V8fCIiLGE9aT09PSJGYWlsZWQgdG8gZmV0Y2gifHxpPT09Ik5ldHdvcmtFcnJvciB3aGVuIGF0dGVtcHRpbmcgdG8gZmV0Y2ggcmVzb3VyY2UuInx8aT09PSJMb2FkIGZhaWxlZCJ8fC9hYm9ydGVkfGFib3J0ZXJyb3J8bmV0d29ya2Vycm9yfGZhaWxlZCB0byBmZXRjaC9pLnRlc3QoaSk7YXx8Y29uc29sZS5lcnJvcigiW3dhbmRdIGxvYWRTZXNzaW9ucyBmYWlsZWQ6IixuKX0pfXZhciBWYT1udWxsO2Z1bmN0aW9uIEthKCl7VmF8fChWYT1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7VmE9bnVsbCx2ZSgpfSwyMDApKX1mdW5jdGlvbiB2ZSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy1saXN0IiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbi1jb3VudCIpO2UmJihlLmlubmVySFRNTD1HaSgpKSx0JiYodC50ZXh0Q29udGVudD1TdHJpbmcoci5zZXNzaW9ucy5sZW5ndGgpKSx0eXBlb2YgWnQ9PSJmdW5jdGlvbiImJlp0KCksSXIoKSxyLmNyb3NzU2Vzc2lvblF1ZXVlLmxlbmd0aD4wJiZBdCgpfWZ1bmN0aW9uIElyKCl7dmFyIGU9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGgpe3JldHVybiBoLmlkPT09ci5zZWxlY3RlZElkfSk7ZXx8KEluKCExKSx3YSgpLCRzKCkpO3ZhciB0PWU/UW4oZS5jb21tYW5kKToiV2FuZCIsbj1lP2NyKGUpOiJcdTVGMDBcdTU5Q0JcdTVCRjlcdThCREQiLGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnNlc3Npb24tc3VtbWFyeS12YWx1ZSIpLGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlcm1pbmFsLXRpdGxlIiksdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVybWluYWwtaW5mbyIpLHM9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnRvcGJhci1zZXNzaW9uLXRpdGxlLCAudG9wYmFyLXRhZ2xpbmUiKTtzJiZlJiYocy5jbGFzc0xpc3QucmVtb3ZlKCJ0b3BiYXItdGFnbGluZSIpLHMuY2xhc3NMaXN0LmFkZCgidG9wYmFyLXNlc3Npb24tdGl0bGUiKSxzLnRleHRDb250ZW50PWUudGl0bGV8fFFuKGUuY29tbWFuZCkscy5zZXRBdHRyaWJ1dGUoInRpdGxlIixlLmRlc2NyaXB0aW9ufHxlLmNvbW1hbmR8fCIiKSk7dmFyIG89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQiKSxsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKSxjPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjaGF0LW91dHB1dCIpLGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0b3AtYnV0dG9uIik7aSYmaS50ZXh0Q29udGVudCE9PXQmJihpLnRleHRDb250ZW50PXQpLGEmJmEudGV4dENvbnRlbnQhPT10JiYoYS50ZXh0Q29udGVudD10KSx1JiYodS50ZXh0Q29udGVudD1lP24rIiBceEI3ICIrTHYoZSk6bik7dmFyIGQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb24ta2luZC1kaXNwbGF5Iiksdj1lP1R2KGUpOiJcdTdFQzhcdTdBRUYiO2QmJmQudGV4dENvbnRlbnQhPT12JiYoZC50ZXh0Q29udGVudD12KSxhcygpLCFyLnRlcm1pbmFsJiZsJiZlJiZLbigpLHIudGVybWluYWwmJmwmJiFsLmNvbnRhaW5zKHIudGVybWluYWwuZWxlbWVudCkmJihncigpLEtuKCkpLGV8fChyLnRlcm1pbmFsU2Vzc2lvbklkPW51bGwsci50ZXJtaW5hbE91dHB1dD0iIixyLnRlcm1pbmFsT3V0cHV0TWFya2VyPTApLHIudGVybWluYWwmJmUmJnIuY3VycmVudFZpZXc9PT0idGVybWluYWwiJiZFdCgidmlldyIpO3ZhciBnPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1wYW5lbCIpO2U/KG8mJm8uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksbCYmbC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxjJiZjLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGcmJmcuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpOihvJiZvLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGwmJmwuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksYyYmYy5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxmJiZmLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGcmJmcuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIikpLENpKCksWG4oZ3QoKSksRGkoKSxDYSgpfWZ1bmN0aW9uIHBuKGUpe3IuY2hhdFJlbmRlclRpbWVyJiYoY2xlYXJUaW1lb3V0KHIuY2hhdFJlbmRlclRpbWVyKSxyLmNoYXRSZW5kZXJUaW1lcj1udWxsKTt2YXIgdD1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oaSl7cmV0dXJuIGkuaWQ9PT1lfSksbj0iL2FwaS9zZXNzaW9ucy8iK2U7cmV0dXJuIE12KHQpJiYobis9Ij9mb3JtYXQ9Y2hhdCIpLGZldGNoKG4se2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoaS5lcnJvcil7ci5zZWxlY3RlZElkPT09ZSYmKHIuc2VsZWN0ZWRJZD1udWxsLEZlKCkpLGZuKCk7cmV0dXJufWlmKFEoaSksSXIoKSxyLnRlcm1pbmFsJiZlPT09ci5zZWxlY3RlZElkJiZpLm91dHB1dCE9PXZvaWQgMCl7dmFyIGE9ISFyLndzJiYoci53cy5yZWFkeVN0YXRlPT09V2ViU29ja2V0Lk9QRU58fHIud3MucmVhZHlTdGF0ZT09PVdlYlNvY2tldC5DT05ORUNUSU5HKTthP290KCJzZXNzaW9uLXN3aXRjaCIpOihpaShlLGkub3V0cHV0LHttb2RlOiJhcHBlbmQifSksb3QoInNlc3Npb24tc3dpdGNoIix7Zm9yY2VSZXBsYXk6ITB9KSl9dmFyIHU9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHMpe3JldHVybiBzLmlkPT09ZX0pO3IuY3VycmVudE1lc3NhZ2VzPWplKHUsWGUodSxpLm91dHB1dCwhMSkpLFVlKCExKX0pfXZhciBKYT0hMTtmdW5jdGlvbiBWdigpe2lmKEphKXJldHVybiExO3ZhciBlPXIuc2VsZWN0ZWRJZDtpZighZSlyZXR1cm4hMTt2YXIgdD1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24ocyl7cmV0dXJuIHMuaWQ9PT1lfSk7aWYoIXQpcmV0dXJuITE7dmFyIG49dHlwZW9mIHQubWVzc2FnZU9mZnNldD09Im51bWJlciI/dC5tZXNzYWdlT2Zmc2V0OjA7aWYobjw9MClyZXR1cm4hMTt2YXIgaT00MCxhPU1hdGgubWF4KDAsbi1pKSx1PW4tYTtyZXR1cm4gSmE9ITAsZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoZSkrIi9tZXNzYWdlcz9vZmZzZXQ9IithKyImbGltaXQ9Iit1LHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihzKXtyZXR1cm4gcy5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHMpe2lmKHMmJkFycmF5LmlzQXJyYXkocy5tZXNzYWdlcykmJnQubWVzc2FnZU9mZnNldD09PW4pe3ZhciBvPUFycmF5LmlzQXJyYXkodC5tZXNzYWdlcyk/dC5tZXNzYWdlczpbXTt0Lm1lc3NhZ2VzPXMubWVzc2FnZXMuY29uY2F0KG8pLHQubWVzc2FnZU9mZnNldD1hLHR5cGVvZiBzLnRvdGFsPT0ibnVtYmVyIiYmKHQubWVzc2FnZVRvdGFsPXMudG90YWwpLGU9PT1yLnNlbGVjdGVkSWQmJihyLmN1cnJlbnRNZXNzYWdlcz1qZSh0LFhlKHQsdC5vdXRwdXQsITEpKSxyLmNoYXRSZW5kZXJlZENvdW50PXIuY3VycmVudE1lc3NhZ2VzLmxlbmd0aCxVZSghMCkpfX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSkuZmluYWxseShmdW5jdGlvbigpe0phPSExfSksITB9ZnVuY3Rpb24gUnQoZSl7dmFyIHQ9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHMpe3JldHVybiBzLmlkPT09ZX0pO2lmKHQpe3Iuc2VsZWN0ZWRJZCE9PWUmJmdyKCksci5zZWxlY3RlZElkPWUsRmUoKSxyLnRvb2xDb250ZW50Q2FjaGU9e30sci5tZXNzYWdlUXVldWU9W10sci5wZW5kaW5nTWVzc2FnZXM9W10senIodCksdnUoKSxzbigpLGt0KCksci5jdXJyZW50TWVzc2FnZXM9W10sci5jaGF0UmVuZGVyVGltZXImJihjbGVhclRpbWVvdXQoci5jaGF0UmVuZGVyVGltZXIpLHIuY2hhdFJlbmRlclRpbWVyPW51bGwpO3ZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzIik7biYmbi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKTt2YXIgaT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuc3RydWN0dXJlZC1zdGF0dXMtYmFyIik7aSYmaS5yZW1vdmUoKSxyLl9zdGF0dXNCYXJUaW1lcklkJiYoY2xlYXJJbnRlcnZhbChyLl9zdGF0dXNCYXJUaW1lcklkKSxyLl9zdGF0dXNCYXJUaW1lcklkPW51bGwpLHIuX3N0YXR1c0JhclN0YXJ0VGltZT0wO3ZhciBhPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1jb21wb3NlciIpO2EmJmEuY2xhc3NMaXN0LnJlbW92ZSgiaW4tZmxpZ2h0Iik7dmFyIHU9dDtyLnByZWZlcnJlZENvbW1hbmQ9bXQoKSxyLmNoYXRNb2RlPXh0KCJjbGF1ZGUiLHUmJnUubW9kZT91Lm1vZGU6ci5jaGF0TW9kZSksci50ZXJtaW5hbEludGVyYWN0aXZlJiZ1JiZ1LnN0YXR1cyE9PSJydW5uaW5nIiYmSW4oITEpLHZlKCksQ3IoZSksci5maWxlUGFuZWxPcGVuJiYoVWwodSksT3QoKSkscG4oZSkudGhlbihmdW5jdGlvbigpe050KCEwKX0pLFRuKGUpLHIuZ2l0U3RhdHVzPW51bGwsci5naXRTdGF0dXNTZXNzaW9uSWQ9bnVsbCxLaSgpLHduKGUse2ZvcmNlOiEwfSl9fWZ1bmN0aW9uIEt2KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb25zLWRyYXdlciIpLHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLm1haW4tbGF5b3V0Iiksbj1fZSgpLGk9ISFyLnNpZGViYXJQaW5uZWQmJiEhci5zaWRlYmFyQ29sbGFwc2VkLGE9aXx8IW4mJighIXIuc2lkZWJhclBpbm5lZHx8ISFyLnNlc3Npb25zRHJhd2VyT3Blbik7ZSYmKGUuY2xhc3NMaXN0LnRvZ2dsZSgicGlubmVkIixhKSxlLmNsYXNzTGlzdC50b2dnbGUoImNvbGxhcHNlZCIsaSkpLHQmJih0LmNsYXNzTGlzdC50b2dnbGUoInNpZGViYXItcGlubmVkIixhKSx0LmNsYXNzTGlzdC50b2dnbGUoInNpZGViYXItY29sbGFwc2VkIixpKSk7dmFyIHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZGViYXItcGluLWJ0biIpO3UmJih1LmNsYXNzTGlzdC50b2dnbGUoInBpbm5lZCIsISFyLnNpZGViYXJQaW5uZWQpLHUudGl0bGU9ci5zaWRlYmFyUGlubmVkPyJcdTVERjJcdTU2RkFcdTVCOUFcdTVFMzhcdTlBN0JcdUZGMDhcdTcwQjlcdTUxRkJcdTg5RTNcdTk2NjRcdTk1MDFcdTVCOUFcdUZGMDkiOiJcdTU2RkFcdTVCOUFcdTRGQTdcdTY4MEZcdTVFMzhcdTlBN0IiLHUuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixyLnNpZGViYXJQaW5uZWQ/Ilx1ODlFM1x1OTY2NFx1NTZGQVx1NUI5QVx1NUUzOFx1OUE3QiI6Ilx1NTZGQVx1NUI5QVx1NEZBN1x1NjgwRlx1NUUzOFx1OUE3QiIpLHUuc2V0QXR0cmlidXRlKCJhcmlhLXByZXNzZWQiLHIuc2lkZWJhclBpbm5lZD8idHJ1ZSI6ImZhbHNlIikpfWZ1bmN0aW9uIFRyKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb25zLWRyYXdlciIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb25zLWRyYXdlci1iYWNrZHJvcCIpLG49ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLm1haW4tbGF5b3V0Iik7ZSYmZS5jbGFzc0xpc3QudG9nZ2xlKCJvcGVuIixyLnNlc3Npb25zRHJhd2VyT3BlbiksdCYmdC5jbGFzc0xpc3QudG9nZ2xlKCJvcGVuIixodSgpKSxuJiZuLmNsYXNzTGlzdC50b2dnbGUoInNpZGViYXItb3BlbiIsci5zZXNzaW9uc0RyYXdlck9wZW4pO3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy10b2dnbGUtYnV0dG9uIik7aSYmaS5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLHIuc2Vzc2lvbnNEcmF3ZXJPcGVuKSxLdigpfWZ1bmN0aW9uIEp2KCl7dmFyIGU9X2UoKTtpZighZSl7dmFyIHQ9ci5zaWRlYmFyUGlubmVkPyExOiFyLnNlc3Npb25zRHJhd2VyT3BlbjtyLnNlc3Npb25zRHJhd2VyT3Blbj10LHQmJihyLnNpZGViYXJDb2xsYXBzZWQ9ITEsU2UoIndhbmQtc2lkZWJhci1jb2xsYXBzZWQiLCExKSksU2UoIndhbmQtc2lkZWJhci1vcGVuIixyLnNlc3Npb25zRHJhd2VyT3Blbiksbm4oKSxNcigpO3JldHVybn1pZihyLnNlc3Npb25zRHJhd2VyT3Blbj0hci5zZXNzaW9uc0RyYXdlck9wZW4sU2UoIndhbmQtc2lkZWJhci1vcGVuIixyLnNlc3Npb25zRHJhd2VyT3Blbiksci5zZXNzaW9uc0RyYXdlck9wZW4pe3IuZmlsZVBhbmVsT3Blbj0hMTt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtZmlsZS1wYW5lbC1vcGVuIiwiZmFsc2UiKX1jYXRjaHt9fW5uKCl9ZnVuY3Rpb24gTHIoKXt2YXIgZT1fZSgpO2lmKCFlKXtpZighci5zaWRlYmFyUGlubmVkJiYhci5zZXNzaW9uc0RyYXdlck9wZW4pcmV0dXJuO0FyKCksci5zaWRlYmFyUGlubmVkPSExLHIuc2Vzc2lvbnNEcmF3ZXJPcGVuPSExLFNlKCJ3YW5kLXNpZGViYXItcGlubmVkIiwhMSksU2UoIndhbmQtc2lkZWJhci1vcGVuIiwhMSksbm4oKSxNcigpO3JldHVybn1yLnNlc3Npb25zRHJhd2VyT3BlbiYmKEFyKCksci5zZXNzaW9uc0RyYXdlck9wZW49ITEsU2UoIndhbmQtc2lkZWJhci1vcGVuIiwhMSksbm4oKSl9ZnVuY3Rpb24gR3YoKXtpZihfZSgpKXtMcigpO3JldHVybn1yLnNpZGViYXJQaW5uZWR8fHIuc2lkZWJhckNvbGxhcHNlZHx8IXIuc2Vzc2lvbnNEcmF3ZXJPcGVufHwoQXIoKSxyLnNlc3Npb25zRHJhd2VyT3Blbj0hMSxTZSgid2FuZC1zaWRlYmFyLW9wZW4iLCExKSxubigpLE1yKCkpfWZ1bmN0aW9uIFlvKGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb21wb3Nlci1wbHVzLXBvcG92ZXIiKSxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdHRhY2gtYnRuIik7ci5wbHVzUG9wb3Zlck9wZW49ISFlLHQmJnQuY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIiwhZSksbiYmKG4uY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIiwhIWUpLG4uc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIixlPyJ0cnVlIjoiZmFsc2UiKSl9ZnVuY3Rpb24gWXYoKXtZbyghci5wbHVzUG9wb3Zlck9wZW4pfWZ1bmN0aW9uIGtpKCl7ci5wbHVzUG9wb3Zlck9wZW4mJllvKCExKX1mdW5jdGlvbiBXdCgpe19lKCkmJnIuc2Vzc2lvbnNEcmF3ZXJPcGVuJiZMcigpfWZ1bmN0aW9uIE1yKCl7dmFyIGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLm1haW4tbGF5b3V0Iik7aWYoZSl7dmFyIHQ9ZnVuY3Rpb24obil7bi5wcm9wZXJ0eU5hbWU9PT0icGFkZGluZy1sZWZ0IiYmKGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigidHJhbnNpdGlvbmVuZCIsdCkscXQoITApKX07ZS5hZGRFdmVudExpc3RlbmVyKCJ0cmFuc2l0aW9uZW5kIix0KX1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cXQoITApfSwzNTApfXZhciB6dD1udWxsO2Z1bmN0aW9uIFF2KCl7cmV0dXJuIHp0JiZkb2N1bWVudC5ib2R5LmNvbnRhaW5zKHp0KXx8KHp0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHp0LmNsYXNzTmFtZT0ic2lkZWJhci10aWxlLWJ1YmJsZSIsenQuc2V0QXR0cmlidXRlKCJyb2xlIiwidG9vbHRpcCIpLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoenQpKSx6dH1mdW5jdGlvbiBadCgpe3p0JiZ6dC5jbGFzc0xpc3QucmVtb3ZlKCJ2aXNpYmxlIil9ZnVuY3Rpb24gJHYoZSx0KXtpZighdCl7WnQoKTtyZXR1cm59dmFyIG49UXYoKTtuLnRleHRDb250ZW50PXQubGVuZ3RoPjQwMD90LnNsaWNlKDAsNDAwKSsiXHUyMDI2Ijp0O3ZhciBpPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7bi5jbGFzc0xpc3QuYWRkKCJ2aXNpYmxlIik7dmFyIGE9bi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSx1PWkudG9wK2kuaGVpZ2h0LzIscz11LWEuaGVpZ2h0LzIsbz04LGw9d2luZG93LmlubmVySGVpZ2h0LWEuaGVpZ2h0LTg7czxvJiYocz1vKSxzPmwmJihzPU1hdGgubWF4KG8sbCkpLG4uc3R5bGUubGVmdD1pLnJpZ2h0KzEyKyJweCIsbi5zdHlsZS50b3A9cysicHgiLG4uc3R5bGUuc2V0UHJvcGVydHkoIi0tYnViYmxlLXRhaWwteSIsdS1zKyJweCIpfWZ1bmN0aW9uIFh2KGUpe2lmKGUuZGF0YXNldC5jb2xsYXBzZWRTZXNzaW9uSWQpe3ZhciB0PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihhKXtyZXR1cm4gYS5pZD09PWUuZGF0YXNldC5jb2xsYXBzZWRTZXNzaW9uSWR9KTtpZighdClyZXR1cm4iIjt2YXIgbj1CYyh0KTtyZXR1cm4gbnx8dC5zdW1tYXJ5fHx0LmNvbW1hbmR8fCIifWlmKGUuZGF0YXNldC5jb2xsYXBzZWRIaXN0b3J5SWQpe3ZhciBpPXIuY2xhdWRlSGlzdG9yeS5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLmNsYXVkZVNlc3Npb25JZD09PWUuZGF0YXNldC5jb2xsYXBzZWRIaXN0b3J5SWR9KTtpZihpJiZpLmZpcnN0VXNlck1lc3NhZ2UpcmV0dXJuIGkuZmlyc3RVc2VyTWVzc2FnZX1yZXR1cm4iIn1mdW5jdGlvbiBadihlKXt2YXIgdD1lLnRhcmdldDtpZighKCF0fHwhKHQgaW5zdGFuY2VvZiBFbGVtZW50KSkpe3ZhciBuPXQuY2xvc2VzdCgiLnNpZGViYXItY29sbGFwc2VkLXRpbGUiKTtpZighbil7WnQoKTtyZXR1cm59dmFyIGk9WHYobik7aWYoIWkpe1p0KCk7cmV0dXJufSR2KG4saSl9fWZ1bmN0aW9uIGVtKGUpe3ZhciB0PWUucmVsYXRlZFRhcmdldDt0JiZ0IGluc3RhbmNlb2YgRWxlbWVudCYmdC5jbG9zZXN0KCIuc2lkZWJhci1jb2xsYXBzZWQtdGlsZSIpfHxadCgpfWZ1bmN0aW9uIHRtKCl7dmFyIGU9X2UoKTtyLnNpZGViYXJQaW5uZWR8fChyLnNpZGViYXJQaW5uZWQ9ITAsU2UoIndhbmQtc2lkZWJhci1waW5uZWQiLCEwKSksci5zaWRlYmFyQ29sbGFwc2VkPSFyLnNpZGViYXJDb2xsYXBzZWQsU2UoIndhbmQtc2lkZWJhci1jb2xsYXBzZWQiLHIuc2lkZWJhckNvbGxhcHNlZCksci5zaWRlYmFyQ29sbGFwc2VkP3Iuc2Vzc2lvbnNEcmF3ZXJPcGVuPSExOmU/KHIuc2lkZWJhclBpbm5lZD0hMSxyLnNlc3Npb25zRHJhd2VyT3Blbj0hMCxTZSgid2FuZC1zaWRlYmFyLXBpbm5lZCIsITEpKTpyLnNlc3Npb25zRHJhd2VyT3Blbj0hMCxTZSgid2FuZC1zaWRlYmFyLW9wZW4iLHIuc2Vzc2lvbnNEcmF3ZXJPcGVuKSxubigpLHZlKCkscm0oKSxadCgpLE1yKCl9ZnVuY3Rpb24gbm0oKXtfZSgpfHwoci5zaWRlYmFyUGlubmVkPSFyLnNpZGViYXJQaW5uZWQsci5zZXNzaW9uc0RyYXdlck9wZW49ITAsU2UoIndhbmQtc2lkZWJhci1waW5uZWQiLHIuc2lkZWJhclBpbm5lZCksU2UoIndhbmQtc2lkZWJhci1vcGVuIiwhMCksbm4oKSxNcigpKX1mdW5jdGlvbiBybSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWRlYmFyLWNvbGxhcHNlLWJ0biIpO2lmKGUpe3ZhciB0PSEhci5zaWRlYmFyUGlubmVkJiYhIXIuc2lkZWJhckNvbGxhcHNlZDtlLmNsYXNzTGlzdC50b2dnbGUoImNvbGxhcHNlZCIsdCksZS50aXRsZT10PyJcdTVDNTVcdTVGMDBcdTRGQTdcdTY4MEYiOiJcdTY1MzZcdThENzdcdTRFM0FcdTdBODRcdTY3NjEiLGUuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIix0PyJcdTVDNTVcdTVGMDBcdTRGQTdcdTY4MEYiOiJcdTY1MzZcdThENzdcdTRFM0FcdTdBODRcdTY3NjEiKSxlLmlubmVySFRNTD10Pyc8c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwb2x5bGluZSBwb2ludHM9IjEwIDYgMTYgMTIgMTAgMTgiLz48bGluZSB4MT0iMjAiIHkxPSI1IiB4Mj0iMjAiIHkyPSIxOSIvPjwvc3ZnPic6Jzxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBvbHlsaW5lIHBvaW50cz0iMTQgNiA4IDEyIDE0IDE4Ii8+PGxpbmUgeDE9IjQiIHkxPSI1IiB4Mj0iNCIgeTI9IjE5Ii8+PC9zdmc+J319ZnVuY3Rpb24gaW0oZSl7aWYoZSl7ZS5zdHlsZS5sZWZ0PSIiLGUuc3R5bGUucmlnaHQ9IiI7dmFyIHQ9ZS5vZmZzZXRQYXJlbnR8fGUucGFyZW50RWxlbWVudDtpZih0KXt2YXIgbj04LGk9dC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxhPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksdT13aW5kb3cuaW5uZXJXaWR0aDthLmxlZnQ8bj8oZS5zdHlsZS5yaWdodD0iYXV0byIsZS5zdHlsZS5sZWZ0PW4taS5sZWZ0KyJweCIpOmEucmlnaHQ+dS1uJiYoZS5zdHlsZS5sZWZ0PSJhdXRvIixlLnN0eWxlLnJpZ2h0PWkucmlnaHQtKHUtbikrInB4Iil9fX1mdW5jdGlvbiBHYSgpe2VyKCksci5tb2RhbE9wZW49ITAsci5zZXNzaW9uc0RyYXdlck9wZW49ITEsU2UoIndhbmQtc2lkZWJhci1vcGVuIiwhMSksVHIoKTt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbi1tb2RhbCIpO2UmJihlLl93YW5kQ2xvc2VUaW1lciYmKGNsZWFyVGltZW91dChlLl93YW5kQ2xvc2VUaW1lciksZS5fd2FuZENsb3NlVGltZXI9bnVsbCksZS5jbGFzc0xpc3QucmVtb3ZlKCJjbG9zaW5nIiksZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxyLmxhc3RGb2N1c2VkRWxlbWVudD1kb2N1bWVudC5hY3RpdmVFbGVtZW50LHIuc2Vzc2lvblRvb2w9bXQoKSxyLnByZWZlcnJlZENvbW1hbmQ9ci5zZXNzaW9uVG9vbCxyLnNlc3Npb25DcmVhdGVLaW5kPSJzdHJ1Y3R1cmVkIixyLnNlc3Npb25DcmVhdGVXb3JrdHJlZT0hMSxyLm1vZGVWYWx1ZT14dChyLnNlc3Npb25Ub29sLHIubW9kZVZhbHVlfHxyLmNoYXRNb2RlKSxTcigpLFNtKCksc2V0VGltZW91dChmdW5jdGlvbigpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtb2RlLWNhcmRzIik7dCYmdC5mb2N1cygpfSwyMCksQWkoZSkpfWZ1bmN0aW9uIHZuKCl7ci5tb2RhbE9wZW49ITE7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb24tbW9kYWwiKTtlJiYoci5mb2N1c1RyYXBIYW5kbGVyJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsci5mb2N1c1RyYXBIYW5kbGVyKSxyLmZvY3VzVHJhcEhhbmRsZXI9bnVsbCksci5sYXN0Rm9jdXNlZEVsZW1lbnQmJnR5cGVvZiByLmxhc3RGb2N1c2VkRWxlbWVudC5mb2N1cz09ImZ1bmN0aW9uIiYmci5sYXN0Rm9jdXNlZEVsZW1lbnQuZm9jdXMoKSxZYShlKSksbnIoKX1mdW5jdGlvbiBZYShlKXtpZihlJiYhZS5jbGFzc0xpc3QuY29udGFpbnMoImhpZGRlbiIpKXt2YXIgdD0hMTt0cnl7dD13aW5kb3cubWF0Y2hNZWRpYSYmd2luZG93Lm1hdGNoTWVkaWEoIihwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIikubWF0Y2hlc31jYXRjaHt9aWYodHx8ZG9jdW1lbnQuaGlkZGVuKXtlLmNsYXNzTGlzdC5yZW1vdmUoImNsb3NpbmciKSxlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpO3JldHVybn1lLl93YW5kQ2xvc2VUaW1lciYmKGNsZWFyVGltZW91dChlLl93YW5kQ2xvc2VUaW1lciksZS5fd2FuZENsb3NlVGltZXI9bnVsbCksZS5jbGFzc0xpc3QuYWRkKCJjbG9zaW5nIiksZS5fd2FuZENsb3NlVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe2UuY2xhc3NMaXN0LnJlbW92ZSgiY2xvc2luZyIpLGUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksZS5fd2FuZENsb3NlVGltZXI9bnVsbH0sMTcwKX19ZnVuY3Rpb24gQWkoZSl7ci5mb2N1c1RyYXBIYW5kbGVyJiZkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIixyLmZvY3VzVHJhcEhhbmRsZXIpO3ZhciB0PSdidXR0b246bm90KFtkaXNhYmxlZF0pLCBpbnB1dDpub3QoW2Rpc2FibGVkXSksIHNlbGVjdDpub3QoW2Rpc2FibGVkXSksIHRleHRhcmVhOm5vdChbZGlzYWJsZWRdKSwgYVtocmVmXSwgW3RhYmluZGV4XTpub3QoW3RhYmluZGV4PSItMSJdKSc7ci5mb2N1c1RyYXBIYW5kbGVyPWZ1bmN0aW9uKG4pe2lmKG4ua2V5PT09IlRhYiIpe3ZhciBpPWUucXVlcnlTZWxlY3RvckFsbCh0KSxhPWlbMF0sdT1pW2kubGVuZ3RoLTFdOyFhfHwhdXx8KG4uc2hpZnRLZXk/ZG9jdW1lbnQuYWN0aXZlRWxlbWVudD09PWEmJihuLnByZXZlbnREZWZhdWx0KCksdS5mb2N1cygpKTpkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09dSYmKG4ucHJldmVudERlZmF1bHQoKSxhLmZvY3VzKCkpKX19LGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLHIuZm9jdXNUcmFwSGFuZGxlcil9ZnVuY3Rpb24gYW0oKXtyZXR1cm4gci5hY3RpdmVXb3JrdHJlZU1lcmdlU2Vzc2lvbklkJiZyLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oZSl7cmV0dXJuIGUuaWQ9PT1yLmFjdGl2ZVdvcmt0cmVlTWVyZ2VTZXNzaW9uSWR9KXx8bnVsbH1mdW5jdGlvbiBPcigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3b3JrdHJlZS1tZXJnZS1jb250ZW50IiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya3RyZWUtbWVyZ2UtY29uZmlybS1idXR0b24iKSxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3b3JrdHJlZS1tZXJnZS1lcnJvciIpLGk9YW0oKSxhPXIud29ya3RyZWVNZXJnZUNoZWNrUmVzdWx0O2lmKCEoIWV8fCF0KSl7aWYoIWl8fCFpLndvcmt0cmVlKXtlLmlubmVySFRNTD0nPHAgY2xhc3M9ImZpZWxkLWhpbnQiPlx1NjcyQVx1NjI3RVx1NTIzMFx1NTNFRlx1NTQwOFx1NUU3Nlx1NzY4NCB3b3JrdHJlZSBcdTRGMUFcdThCRERcdTMwMDI8L3A+Jyx0LmRpc2FibGVkPSEwO3JldHVybn1uJiYoci53b3JrdHJlZU1lcmdlRXJyb3I/UGUobixyLndvcmt0cmVlTWVyZ2VFcnJvcik6dWkobikpO3ZhciB1PVsnPGRpdiBjbGFzcz0id29ya3RyZWUtbWVyZ2Utcm93Ij48c3Bhbj5cdTY3NjVcdTZFOTBcdTUyMDZcdTY1MkY8L3NwYW4+PHN0cm9uZz4nK3AoaS53b3JrdHJlZS5icmFuY2h8fCItIikrIjwvc3Ryb25nPjwvZGl2PiIsJzxkaXYgY2xhc3M9Indvcmt0cmVlLW1lcmdlLXJvdyI+PHNwYW4+XHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1PC9zcGFuPjxzdHJvbmc+JytwKGkud29ya3RyZWUucGF0aHx8Ii0iKSsiPC9zdHJvbmc+PC9kaXY+Il07YT8odS5wdXNoKCc8ZGl2IGNsYXNzPSJ3b3JrdHJlZS1tZXJnZS1yb3ciPjxzcGFuPlx1NzZFRVx1NjgwN1x1NTIwNlx1NjUyRjwvc3Bhbj48c3Ryb25nPicrcChhLnRhcmdldEJyYW5jaHx8Ii0iKSsiPC9zdHJvbmc+PC9kaXY+IiksdS5wdXNoKCc8ZGl2IGNsYXNzPSJ3b3JrdHJlZS1tZXJnZS1yb3ciPjxzcGFuPlx1NUY4NVx1NTQwOFx1NUU3Nlx1NjNEMFx1NEVBNDwvc3Bhbj48c3Ryb25nPicrcChTdHJpbmcoYS5haGVhZENvdW50fHwwKSkrIjwvc3Ryb25nPjwvZGl2PiIpLHUucHVzaCgnPGRpdiBjbGFzcz0id29ya3RyZWUtbWVyZ2Utcm93Ij48c3Bhbj5cdTY3MkFcdTYzRDBcdTRFQTRcdTY1MzlcdTUyQTg8L3NwYW4+PHN0cm9uZz4nK3AoYS5oYXNVbmNvbW1pdHRlZENoYW5nZXM/Ilx1NjcwOSI6Ilx1NjVFMCIpKyI8L3N0cm9uZz48L2Rpdj4iKSx1LnB1c2goJzxkaXYgY2xhc3M9Indvcmt0cmVlLW1lcmdlLXJvdyI+PHNwYW4+XHU1MUIyXHU3QTgxXHU5OENFXHU5NjY5PC9zcGFuPjxzdHJvbmc+JytwKGEuaGFzQ29uZmxpY3RzPyJcdTY3MDkiOiJcdTY1RTAiKSsiPC9zdHJvbmc+PC9kaXY+IiksYS5yZWFzb24mJnUucHVzaCgnPHAgY2xhc3M9ImZpZWxkLWhpbnQiPicrcChhLnJlYXNvbikrIjwvcD4iKSk6ci53b3JrdHJlZU1lcmdlTG9hZGluZyYmdS5wdXNoKCc8cCBjbGFzcz0iZmllbGQtaGludCI+XHU2QjYzXHU1NzI4XHU2OEMwXHU2N0U1IHdvcmt0cmVlIFx1NTQwOFx1NUU3Nlx1NzJCNlx1NjAwMVx1MjAyNjwvcD4nKSxlLmlubmVySFRNTD11LmpvaW4oIiIpLHQuZGlzYWJsZWQ9ci53b3JrdHJlZU1lcmdlTG9hZGluZ3x8ci53b3JrdHJlZU1lcmdlU3VibWl0dGluZ3x8IWF8fGEub2shPT0hMCx0LnRleHRDb250ZW50PXIud29ya3RyZWVNZXJnZVN1Ym1pdHRpbmc/Ilx1NTQwOFx1NUU3Nlx1NEUyRC4uLiI6Ilx1Nzg2RVx1OEJBNFx1NTQwOFx1NUU3Nlx1NUU3Nlx1NkUwNVx1NzQwNiJ9fWZ1bmN0aW9uIFFvKGUpe3IuYWN0aXZlV29ya3RyZWVNZXJnZVNlc3Npb25JZD1lLHIud29ya3RyZWVNZXJnZUNoZWNrUmVzdWx0PW51bGwsci53b3JrdHJlZU1lcmdlTG9hZGluZz0hMCxyLndvcmt0cmVlTWVyZ2VTdWJtaXR0aW5nPSExLHIud29ya3RyZWVNZXJnZUVycm9yPSIiLHZuKCksZXIoKTt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya3RyZWUtbWVyZ2UtbW9kYWwiKTt0JiYodC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxyLmxhc3RGb2N1c2VkRWxlbWVudD1kb2N1bWVudC5hY3RpdmVFbGVtZW50LEFpKHQpKSxPcigpLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KGUpKyIvd29ya3RyZWUvbWVyZ2UvY2hlY2siLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obil7aWYobiYmbi5lcnJvcil0aHJvdyBuZXcgRXJyb3Iobi5lcnJvcik7biYmbi5zZXNzaW9uJiZRKG4uc2Vzc2lvbiksci53b3JrdHJlZU1lcmdlQ2hlY2tSZXN1bHQ9bi5yZXN1bHR8fG51bGwsci53b3JrdHJlZU1lcmdlRXJyb3I9IiJ9KS5jYXRjaChmdW5jdGlvbihuKXtyLndvcmt0cmVlTWVyZ2VFcnJvcj1uJiZuLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTY4QzBcdTY3RTUgd29ya3RyZWUgXHU1NDA4XHU1RTc2XHU3MkI2XHU2MDAxXHUzMDAyIn0pLmZpbmFsbHkoZnVuY3Rpb24oKXtyLndvcmt0cmVlTWVyZ2VMb2FkaW5nPSExLE9yKCl9KX1mdW5jdGlvbiBabigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3b3JrdHJlZS1tZXJnZS1tb2RhbCIpO3IuYWN0aXZlV29ya3RyZWVNZXJnZVNlc3Npb25JZD1udWxsLHIud29ya3RyZWVNZXJnZUNoZWNrUmVzdWx0PW51bGwsci53b3JrdHJlZU1lcmdlTG9hZGluZz0hMSxyLndvcmt0cmVlTWVyZ2VTdWJtaXR0aW5nPSExLHIud29ya3RyZWVNZXJnZUVycm9yPSIiLGUmJmUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksci5mb2N1c1RyYXBIYW5kbGVyJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsci5mb2N1c1RyYXBIYW5kbGVyKSxyLmZvY3VzVHJhcEhhbmRsZXI9bnVsbCksci5sYXN0Rm9jdXNlZEVsZW1lbnQmJnR5cGVvZiByLmxhc3RGb2N1c2VkRWxlbWVudC5mb2N1cz09ImZ1bmN0aW9uIiYmci5sYXN0Rm9jdXNlZEVsZW1lbnQuZm9jdXMoKX1mdW5jdGlvbiB1bSgpeyFyLmFjdGl2ZVdvcmt0cmVlTWVyZ2VTZXNzaW9uSWR8fHIud29ya3RyZWVNZXJnZVN1Ym1pdHRpbmd8fChyLndvcmt0cmVlTWVyZ2VTdWJtaXR0aW5nPSEwLHIud29ya3RyZWVNZXJnZUVycm9yPSIiLE9yKCksZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoci5hY3RpdmVXb3JrdHJlZU1lcmdlU2Vzc2lvbklkKSsiL3dvcmt0cmVlL21lcmdlIix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeSh7fSl9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oZSl7aWYoZSYmZS5lcnJvcil0aHJvdyBuZXcgRXJyb3IoZS5lcnJvcik7cmV0dXJuIGUmJmUuc2Vzc2lvbiYmUShlLnNlc3Npb24pLGsoIlx1NURGMlx1NTQwOFx1NUU3Nlx1NTIzMCAiK3AoZS5yZXN1bHQmJmUucmVzdWx0LnRhcmdldEJyYW5jaHx8Ilx1NEUzQlx1NTIwNlx1NjUyRiIpKyhlLnJlc3VsdCYmZS5yZXN1bHQuY2xlYW51cERvbmU9PT0hMT8iXHVGRjBDXHU0RjQ2XHU1REU1XHU0RjVDXHU2ODExXHU1Rjg1XHU2RTA1XHU3NDA2XHUzMDAyIjoiXHUzMDAyIiksImluZm8iKSxabigpLGp0KCl9KS5jYXRjaChmdW5jdGlvbihlKXtyLndvcmt0cmVlTWVyZ2VFcnJvcj1lJiZlLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTU0MDhcdTVFNzYgd29ya3RyZWVcdTMwMDIiLE9yKCl9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ci53b3JrdHJlZU1lcmdlU3VibWl0dGluZz0hMSxPcigpfSkpfWZ1bmN0aW9uICRvKGUpe2ZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KGUpKyIvd29ya3RyZWUvY2xlYW51cCIse21ldGhvZDoiUE9TVCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQuanNvbigpfSkudGhlbihmdW5jdGlvbih0KXtpZih0JiZ0LmVycm9yKXRocm93IG5ldyBFcnJvcih0LmVycm9yKTtyZXR1cm4gdCYmdC5zZXNzaW9uJiZRKHQuc2Vzc2lvbiksaygiXHU1REYyXHU1QjhDXHU2MjEwIHdvcmt0cmVlIFx1NkUwNVx1NzQwNlx1MzAwMiIsImluZm8iKSxqdCgpfSkuY2F0Y2goZnVuY3Rpb24odCl7ayh0JiZ0Lm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTZFMDVcdTc0MDYgd29ya3RyZWVcdTMwMDIiLCJlcnJvciIpfSl9ZnVuY3Rpb24gc20oKXt2bigpO3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1tb2RhbCIpO2lmKGUpe2UuX3dhbmRDbG9zZVRpbWVyJiYoY2xlYXJUaW1lb3V0KGUuX3dhbmRDbG9zZVRpbWVyKSxlLl93YW5kQ2xvc2VUaW1lcj1udWxsKSxlLmNsYXNzTGlzdC5yZW1vdmUoImNsb3NpbmciKSxlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLHIubGFzdEZvY3VzZWRFbGVtZW50PWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5ldy1wYXNzd29yZCIpLG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbmZpcm0tcGFzc3dvcmQiKTt0JiYodC52YWx1ZT0iIiksbiYmKG4udmFsdWU9IiIpLFhvKCksQWkoZSksbG0oKSxRYSgiYWJvdXQiKSxwbSgpO3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtc291bmQiKSxhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtYnViYmxlIik7aSYmKGkuY2hlY2tlZD1yLm5vdGlmU291bmQpLGEmJihhLmNoZWNrZWQ9ci5ub3RpZkJ1YmJsZSk7dmFyIHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1ub3RpZi12b2x1bWUiKSxzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtdm9sdW1lLXZhbCIpO2lmKHUpe3UudmFsdWU9ci5ub3RpZlZvbHVtZSxzJiYocy50ZXh0Q29udGVudD1yLm5vdGlmVm9sdW1lKyIlIik7dHJ5e3UuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoImlucHV0Iix7YnViYmxlczohMH0pKX1jYXRjaHt9fXZhciBvPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZi12b2x1bWUtZmllbGQiKTtpZihvJiYoby5zdHlsZS5kaXNwbGF5PXIubm90aWZTb3VuZD8iIjoibm9uZSIpLGduKCksdHlwZW9mIFdhbmROYXRpdmU8InUiJiZ0eXBlb2YgV2FuZE5hdGl2ZS5nZXRBcHBJY29uPT0iZnVuY3Rpb24iKXRyeXt0bChXYW5kTmF0aXZlLmdldEFwcEljb24oKXx8InNob3J0aGFpciIpfWNhdGNoe31pZihOZSYmdHlwZW9mIFdhbmROYXRpdmUuZ2V0Tm90aWZpY2F0aW9uU291bmQ9PSJmdW5jdGlvbiIpdHJ5e3ZhciBsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJuYXRpdmUtc291bmQtc2VsZWN0Iik7bCYmKGwudmFsdWU9V2FuZE5hdGl2ZS5nZXROb3RpZmljYXRpb25Tb3VuZCgpKX1jYXRjaHt9aWYoTmUmJnR5cGVvZiBXYW5kTmF0aXZlLmdldE5vdGlmaWNhdGlvblZvbHVtZT09ImZ1bmN0aW9uIil0cnl7dmFyIGM9V2FuZE5hdGl2ZS5nZXROb3RpZmljYXRpb25Wb2x1bWUoKTtpZihyLm5vdGlmVm9sdW1lPWMsdSYmKHUudmFsdWU9U3RyaW5nKGMpKSxzJiYocy50ZXh0Q29udGVudD1jKyIlIiksdSl0cnl7dS5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgiaW5wdXQiLHtidWJibGVzOiEwfSkpfWNhdGNoe310cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtbm90aWYtdm9sdW1lIixTdHJpbmcoYykpfWNhdGNoe319Y2F0Y2h7fWlmKE5lJiZ0eXBlb2YgV2FuZE5hdGl2ZS5pc0hhcHRpY0VuYWJsZWQ9PSJmdW5jdGlvbiIpdHJ5e3ZhciBmPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctaGFwdGljLWVuYWJsZWQiKTtmJiYoZi5jaGVja2VkPVdhbmROYXRpdmUuaXNIYXB0aWNFbmFibGVkKCkpfWNhdGNoe319fWZ1bmN0aW9uIGVyKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLW1vZGFsIik7ZSYmKHIuZm9jdXNUcmFwSGFuZGxlciYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLHIuZm9jdXNUcmFwSGFuZGxlciksci5mb2N1c1RyYXBIYW5kbGVyPW51bGwpLHIubGFzdEZvY3VzZWRFbGVtZW50JiZ0eXBlb2Ygci5sYXN0Rm9jdXNlZEVsZW1lbnQuZm9jdXM9PSJmdW5jdGlvbiImJnIubGFzdEZvY3VzZWRFbGVtZW50LmZvY3VzKCksWWEoZSkpfWZ1bmN0aW9uIFhvKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLWVycm9yIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3Mtc3VjY2VzcyIpO2UmJmUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksdCYmdC5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKX1mdW5jdGlvbiBvbSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJuZXctcGFzc3dvcmQiKS52YWx1ZSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25maXJtLXBhc3N3b3JkIikudmFsdWUsbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtZXJyb3IiKSxpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1zdWNjZXNzIik7aWYoWG8oKSwhZXx8ZS5sZW5ndGg8Nil7bi50ZXh0Q29udGVudD0iXHU1QkM2XHU3ODAxXHU5NTdGXHU1RUE2XHU4MUYzXHU1QzExXHU0RTNBIDYgXHU0RTJBXHU1QjU3XHU3QjI2XHUzMDAyIixuLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3JldHVybn1pZihlIT09dCl7bi50ZXh0Q29udGVudD0iXHU0RTI0XHU2QjIxXHU4RjkzXHU1MTY1XHU3Njg0XHU1QkM2XHU3ODAxXHU0RTBEXHU0RTAwXHU4MUY0XHUzMDAyIixuLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3JldHVybn1mZXRjaCgiL2FwaS9zZXQtcGFzc3dvcmQiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeSh7cGFzc3dvcmQ6ZX0pLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGEpe3JldHVybiBhLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oYSl7aWYoYS5lcnJvcil7bi50ZXh0Q29udGVudD1hLmVycm9yLG4uY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik7cmV0dXJufWkudGV4dENvbnRlbnQ9Ilx1NUJDNlx1NzgwMVx1NEZFRVx1NjUzOVx1NjIxMFx1NTI5Rlx1RkYwMSIsaS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibmV3LXBhc3N3b3JkIikudmFsdWU9IiIsZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbmZpcm0tcGFzc3dvcmQiKS52YWx1ZT0iIn0pLmNhdGNoKGZ1bmN0aW9uKCl7bi50ZXh0Q29udGVudD0iRmFpbGVkIHRvIHNhdmUgcGFzc3dvcmQuIixuLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpfSl9ZnVuY3Rpb24gUWEoZSl7Zm9yKHZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXR0aW5ncy10YWIiKSxuPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXR0aW5ncy1wYW5lbCIpLGk9MDtpPHQubGVuZ3RoO2krKyl7dmFyIGE9dFtpXS5nZXRBdHRyaWJ1dGUoImRhdGEtdGFiIik9PT1lO2E/dFtpXS5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKTp0W2ldLmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpLHRbaV0uc2V0QXR0cmlidXRlKCJhcmlhLXNlbGVjdGVkIixhPyJ0cnVlIjoiZmFsc2UiKSx0W2ldLnNldEF0dHJpYnV0ZSgidGFiaW5kZXgiLGE/IjAiOiItMSIpfWZvcih2YXIgdT0wO3U8bi5sZW5ndGg7dSsrKXt2YXIgcz1uW3VdLmlkPT09InNldHRpbmdzLXRhYi0iK2U7cz8oblt1XS5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKSxuW3VdLnJlbW92ZUF0dHJpYnV0ZSgiaGlkZGVuIikpOihuW3VdLmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpLG5bdV0uc2V0QXR0cmlidXRlKCJoaWRkZW4iLCJoaWRkZW4iKSl9fWZ1bmN0aW9uIFpvKGUpe2lmKGUmJiEoZS5rZXkhPT0iQXJyb3dVcCImJmUua2V5IT09IkFycm93RG93biImJmUua2V5IT09IkhvbWUiJiZlLmtleSE9PSJFbmQiKSl7dmFyIHQ9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnNldHRpbmdzLXRhYiIpKTtpZih0Lmxlbmd0aCl7dmFyIG49dC5pbmRleE9mKGUuY3VycmVudFRhcmdldCk7aWYobiE9PS0xKXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIGk9bjtlLmtleT09PSJBcnJvd1VwIiYmKGk9bj4wP24tMTp0Lmxlbmd0aC0xKSxlLmtleT09PSJBcnJvd0Rvd24iJiYoaT1uPHQubGVuZ3RoLTE/bisxOjApLGUua2V5PT09IkhvbWUiJiYoaT0wKSxlLmtleT09PSJFbmQiJiYoaT10Lmxlbmd0aC0xKTt2YXIgYT10W2ldO2lmKGEpe3ZhciB1PWEuZ2V0QXR0cmlidXRlKCJkYXRhLXRhYiIpO3UmJlFhKHUpLHR5cGVvZiBhLmZvY3VzPT0iZnVuY3Rpb24iJiZhLmZvY3VzKCl9fX19fWZ1bmN0aW9uIGxtKCl7Zm9yKHZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXR0aW5ncy10YWIiKSx0PTA7dDxlLmxlbmd0aDt0KyspZVt0XS5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIixabyksZVt0XS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixabyl9ZnVuY3Rpb24gY20oZSl7aWYoZSl7dmFyIHQ9ZS5jb25maWd8fHt9LG49e2Fib3V0OmUudmVyc2lvbj8iXHU1RjUzXHU1MjREIHYiK2UudmVyc2lvbjoiXHU3MjQ4XHU2NzJDXHU0RTBFXHU2NkY0XHU2NUIwXHU0RkUxXHU2MDZGIixnZW5lcmFsOlt0LmRlZmF1bHRNb2RlfHwiZGVmYXVsdCIsdC5sYW5ndWFnZXx8Ilx1ODFFQVx1NTJBOFx1OEJFRFx1OEEwMCJdLmZpbHRlcihCb29sZWFuKS5qb2luKCIgXHhCNyAiKSxub3RpZmljYXRpb25zOnIubm90aWZTb3VuZD8iXHU2M0QwXHU3OTNBXHU5N0YzICIrci5ub3RpZlZvbHVtZSsiJSI6Ilx1NjNEMFx1NzkzQVx1OTdGM1x1NURGMlx1NTE3M1x1OTVFRCIsc2VjdXJpdHk6ZS5oYXNDZXJ0PyJcdTVERjJcdTVCODlcdTg4QzUgU1NMIFx1OEJDMVx1NEU2NiI6Ilx1NUJDNlx1NzgwMVx1NEUwRVx1OEJDMVx1NEU2Nlx1N0JBMVx1NzQwNiIscHJlc2V0czp0LmNvbW1hbmRQcmVzZXRzJiZ0LmNvbW1hbmRQcmVzZXRzLmxlbmd0aD90LmNvbW1hbmRQcmVzZXRzLmxlbmd0aCsiIFx1Njc2MVx1OTg4NFx1OEJCRSI6Ilx1NjY4Mlx1NjVFMFx1OTg4NFx1OEJCRSIsZGlzcGxheToiXHU2M0E3XHU1MjM2XHU1MzYxXHU3MjQ3XHU5RUQ4XHU4QkE0XHU1QzU1XHU1RjAwIn07Zm9yKHZhciBpIGluIG4paWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4saSkpe3ZhciBhPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5zZXR0aW5ncy10YWJbZGF0YS10YWI9IicraSsnIl0gLnNldHRpbmdzLXRhYi1tZXRhJyk7YSYmKGEudGV4dENvbnRlbnQ9bltpXXx8IiIpfX19ZnVuY3Rpb24gZG0oZSl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFuZHJvaWQtY29ubmVjdC1xciIpLG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFuZHJvaWQtY29ubmVjdC1xci1lbXB0eSIpLGk9d2luZG93LlFSQ29kZUxpYjtpZih0KXtpZighaXx8dHlwZW9mIGkudG9DYW52YXMhPSJmdW5jdGlvbiIpe24mJihuLnRleHRDb250ZW50PSJcdTRFOENcdTdFRjRcdTc4MDFcdTVFOTNcdTY3MkFcdTUyQTBcdThGN0QiKTtyZXR1cm59dHJ5e2kudG9DYW52YXModCxlLHt3aWR0aDoyMjAsbWFyZ2luOjEsZXJyb3JDb3JyZWN0aW9uTGV2ZWw6Ik0iLGNvbG9yOntkYXJrOiIjMWYxYjE3IixsaWdodDoiI2ZmZmZmZjAwIn19LGZ1bmN0aW9uKGEpe2lmKGEpe24mJihuLnRleHRDb250ZW50PSJcdTRFOENcdTdFRjRcdTc4MDFcdTc1MUZcdTYyMTBcdTU5MzFcdThEMjUiLG4uc3R5bGUuZGlzcGxheT0iIiksdC5zdHlsZS52aXNpYmlsaXR5PSJoaWRkZW4iO3JldHVybn1uJiYobi5zdHlsZS5kaXNwbGF5PSJub25lIiksdC5zdHlsZS52aXNpYmlsaXR5PSJ2aXNpYmxlIn0pfWNhdGNoe24mJihuLnRleHRDb250ZW50PSJcdTRFOENcdTdFRjRcdTc4MDFcdTc1MUZcdTYyMTBcdTU5MzFcdThEMjUiLG4uc3R5bGUuZGlzcGxheT0iIiksdC5zdHlsZS52aXNpYmlsaXR5PSJoaWRkZW4ifX19ZnVuY3Rpb24gZm0oZSl7dmFyIHQ9d2luZG93LlFSQ29kZUxpYjtpZighdHx8dHlwZW9mIHQudG9DYW52YXMhPSJmdW5jdGlvbiIpcmV0dXJuO3ZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25uZWN0LXFyLW1vZGFsIik7biYmbi5yZW1vdmUoKTt2YXIgaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpLmlkPSJjb25uZWN0LXFyLW1vZGFsIixpLmNsYXNzTmFtZT0iY29ubmVjdC1xci1tb2RhbC1vdmVybGF5IixpLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iY29ubmVjdC1xci1tb2RhbC1jYXJkIj48Y2FudmFzIGlkPSJjb25uZWN0LXFyLW1vZGFsLWNhbnZhcyI+PC9jYW52YXM+PHAgY2xhc3M9ImNvbm5lY3QtcXItbW9kYWwtaGludCI+XHU3NTI4IFdhbmQgQXBwIFx1NjI2Qlx1NEUwMFx1NjI2Qlx1RkYwQ1x1OEZERVx1NjNBNVx1NUY1M1x1NTI0RFx1NjcwRFx1NTJBMVx1NTY2ODwvcD48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSBjb25uZWN0LXFyLW1vZGFsLWNsb3NlIj5cdTUxNzNcdTk1RUQ8L2J1dHRvbj48L2Rpdj4nLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaSk7dmFyIGE9aS5xdWVyeVNlbGVjdG9yKCIjY29ubmVjdC1xci1tb2RhbC1jYW52YXMiKSx1PU1hdGgubWluKHdpbmRvdy5pbm5lcldpZHRoLHdpbmRvdy5pbm5lckhlaWdodCkqLjc7dTwyNDAmJih1PTI0MCksdT40ODAmJih1PTQ4MCk7dHJ5e3QudG9DYW52YXMoYSxlLHt3aWR0aDp1LG1hcmdpbjoyLGVycm9yQ29ycmVjdGlvbkxldmVsOiJNIixjb2xvcjp7ZGFyazoiIzFmMWIxNyIsbGlnaHQ6IiNmZmZmZmYifX0pfWNhdGNoe31mdW5jdGlvbiBzKCl7aS5yZW1vdmUoKX1pLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihsKXtsLnRhcmdldD09PWkmJnMoKX0pO3ZhciBvPWkucXVlcnlTZWxlY3RvcigiLmNvbm5lY3QtcXItbW9kYWwtY2xvc2UiKTtvJiZvLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixzKX1mdW5jdGlvbiBQcihlLHQsbil7aWYoIWUpcmV0dXJuO2Z1bmN0aW9uIGkoKXtpZihKbigibGlnaHQiKSxuKXtuKCk7cmV0dXJufWlmKHQpe3ZhciBhPXQudGV4dENvbnRlbnQ7dC50ZXh0Q29udGVudD0iXHU1REYyXHU1OTBEXHU1MjM2IixzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dC50ZXh0Q29udGVudD1hfSwxNTAwKX19aWYoTmUmJnR5cGVvZiBXYW5kTmF0aXZlLmNvcHlUb0NsaXBib2FyZD09ImZ1bmN0aW9uIil0cnl7aWYoV2FuZE5hdGl2ZS5jb3B5VG9DbGlwYm9hcmQoZSk9PT0ib2siKXtpKCk7cmV0dXJufX1jYXRjaHt9bmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoZSkudGhlbihpKS5jYXRjaChmdW5jdGlvbigpe3ZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRleHRhcmVhIik7YS52YWx1ZT1lLGEuc3R5bGUucG9zaXRpb249ImZpeGVkIixhLnN0eWxlLm9wYWNpdHk9IjAiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSksYS5zZWxlY3QoKSxkb2N1bWVudC5leGVjQ29tbWFuZCgiY29weSIpLGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoYSksaSgpfSl9ZnVuY3Rpb24gbW4oZSl7aWYodHlwZW9mIGUhPSJudW1iZXIifHwhaXNGaW5pdGUoZSl8fGU8MClyZXR1cm4iLSI7aWYoZTwxMDI0KXJldHVybiBlKyIgQiI7Zm9yKHZhciB0PVsiS0IiLCJNQiIsIkdCIiwiVEIiXSxuPWUvMTAyNCxpPTA7bj49MTAyNCYmaTx0Lmxlbmd0aC0xOyluPW4vMTAyNCxpKz0xO3ZhciBhPW4+PTEwP24udG9GaXhlZCgwKTpuLnRvRml4ZWQoMSk7cmV0dXJuIGErIiAiK3RbaV19ZnVuY3Rpb24gcG0oKXtmZXRjaCgiL2FwaS9zZXR0aW5ncyIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oZSl7Y20oZSk7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLXBrZy1uYW1lIiksbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtdmVyc2lvbiIpLGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLW5vZGUtcmVxIiksYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtcmVwby11cmwiKTt0JiYodC50ZXh0Q29udGVudD1lLnBhY2thZ2VOYW1lfHwiLSIpLG4mJihuLnRleHRDb250ZW50PWUudmVyc2lvbnx8Ii0iKSxpJiYoaS50ZXh0Q29udGVudD1lLm5vZGVWZXJzaW9ufHwiLSIpLGEmJmUucmVwb1VybCYmKGEuaW5uZXJIVE1MPSc8YSBocmVmPSInK3AoZS5yZXBvVXJsKSsnIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciI+JytwKGUucmVwb1VybCkrIjwvYT4iKTt2YXIgdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtbGF0ZXN0LXZlcnNpb24iKSxzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkby11cGRhdGUtYnV0dG9uIik7ZS5sYXRlc3RWZXJzaW9uJiZ1JiYodS50ZXh0Q29udGVudD1lLmxhdGVzdFZlcnNpb24sZS51cGRhdGVBdmFpbGFibGUmJnMmJnMuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpO3ZhciBvPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJiZXRhLWNoYW5uZWwtdG9nZ2xlIik7byYmKG8uY2hlY2tlZD1lLnVwZGF0ZUNoYW5uZWw9PT0iYmV0YSIpO3ZhciBsPWUuYXV0b1VwZGF0ZXx8e30sYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by11cGRhdGUtd2ViLXRvZ2dsZSIpO2MmJihjLmNoZWNrZWQ9ISFsLndlYik7dmFyIGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF1dG8tdXBkYXRlLWFway10b2dnbGUiKTtmJiYoZi5jaGVja2VkPSEheG4mJiEhbC5hcGspO3ZhciBkPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS1kbWctdG9nZ2xlIik7ZCYmKGQuY2hlY2tlZD0hIWFuJiYhIWwuZG1nKTtmdW5jdGlvbiB2KHJlLGdlKXt0eXBlb2Ygd2luZG93LndhbmRBbGVydD09ImZ1bmN0aW9uIj93aW5kb3cud2FuZEFsZXJ0KHJlLHt0eXBlOmdlPT09ImVycm9yIj8iZGFuZ2VyIjoiaW5mbyJ9KTp0eXBlb2Ygaz09ImZ1bmN0aW9uIj9rKHJlLGdlPT09ImVycm9yIj8iZXJyb3IiOiJpbmZvIik6Z2U9PT0iZXJyb3IiJiZhbGVydChyZSl9ZnVuY3Rpb24gZyhyZSxnZSxPZSl7dmFyIEtlPU9lP09lLnRleHRDb250ZW50OiIiO09lJiYoT2UuZGlzYWJsZWQ9ITAsT2UudGV4dENvbnRlbnQ9Ilx1NEUwQlx1OEY3RFx1NEUyRFx1MjAyNiIpO2Z1bmN0aW9uIEplKCl7T2UmJihPZS5kaXNhYmxlZD0hMSxPZS50ZXh0Q29udGVudD1LZSl9ZmV0Y2gocmUse21ldGhvZDoiSEVBRCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oeGUpe2lmKCF4ZS5vayl7dih4ZS5zdGF0dXM9PT00MDQ/Ilx1NEUwQlx1OEY3RFx1NjcyQVx1NTQyRlx1NzUyOFx1NjIxNlx1NjU4N1x1NEVGNlx1NURGMlx1NzlGQlx1OTY2NCI6Ilx1NEUwQlx1OEY3RFx1NTkzMVx1OEQyNSAoSFRUUCAiK3hlLnN0YXR1cysiKSIsImVycm9yIiksSmUoKTtyZXR1cm59dmFyIENlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTtDZS5ocmVmPXJlLENlLmRvd25sb2FkPWdlfHwiIixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKENlKSxDZS5jbGljaygpLGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoQ2UpLHYoIlx1NURGMlx1NUYwMFx1NTlDQlx1NEUwQlx1OEY3RFx1RkYwQ1x1OEJGN1x1NTcyOFx1OTAxQVx1NzdFNVx1NjgwRi9cdTRFMEJcdThGN0RcdTdCQTFcdTc0MDZcdTRFMkRcdTY3RTVcdTc3MEIiLCJpbmZvIiksSmUoKX0pLmNhdGNoKGZ1bmN0aW9uKHhlKXt2KCJcdTRFMEJcdThGN0RcdTU5MzFcdThEMjU6ICIrKHhlJiZ4ZS5tZXNzYWdlP3hlLm1lc3NhZ2U6eGUpLCJlcnJvciIpLEplKCl9KX1mdW5jdGlvbiBoKHJlLGdlKXtmdW5jdGlvbiBPZShwZSl7dmFyIGhlPVN0cmluZyhwZXx8IiIpLnJlcGxhY2UoL152LywiIiksWWU9aGUuaW5kZXhPZigiLSIpLHluPVllPj0wP2hlLnNsaWNlKDAsWWUpOmhlLE1uPVllPj0wP2hlLnNsaWNlKFllKzEpOiIiO3JldHVybntwYXJ0czp5bi5zcGxpdCgiLiIpLm1hcChmdW5jdGlvbihUaSl7cmV0dXJuIHBhcnNlSW50KFRpLDEwKXx8MH0pLHByZTpNbixpc0RlYnVnOk1uLmluZGV4T2YoImRlYnVnIik9PT0wfX1mb3IodmFyIEtlPU9lKHJlKSxKZT1PZShnZSkseGU9MDt4ZTwzO3hlKyspe3ZhciBDZT0oS2UucGFydHNbeGVdfHwwKS0oSmUucGFydHNbeGVdfHwwKTtpZihDZSE9PTApcmV0dXJuIENlPjA/MTotMX1pZihLZS5pc0RlYnVnIT09SmUuaXNEZWJ1ZylyZXR1cm4gS2UuaXNEZWJ1Zz8xOi0xO2lmKEtlLmlzRGVidWcmJkplLmlzRGVidWcpZm9yKHZhciBMdD1LZS5wcmUuc3BsaXQoIi4iKSxHZT1KZS5wcmUuc3BsaXQoIi4iKSxIPTA7SDxNYXRoLm1heChMdC5sZW5ndGgsR2UubGVuZ3RoKTtIKyspe2lmKEx0W0hdPT09dm9pZCAwKXJldHVybi0xO2lmKEdlW0hdPT09dm9pZCAwKXJldHVybiAxO3ZhciBfPXBhcnNlSW50KEx0W0hdLDEwKSxZPXBhcnNlSW50KEdlW0hdLDEwKTtpZighaXNOYU4oXykmJiFpc05hTihZKSl7aWYoXyE9PVkpcmV0dXJuIF8+WT8xOi0xfWVsc2UgaWYoTHRbSF0hPT1HZVtIXSlyZXR1cm4gTHRbSF0+R2VbSF0/MTotMX1yZXR1cm4gMH1mdW5jdGlvbiBtKHJlLGdlLE9lLEtlLEplLHhlKXtyZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxyZS5kaXNhYmxlZD0hMSxnZT4wP3JlLnRleHRDb250ZW50PSJcdTUzNDdcdTdFQTciOmdlPT09MD8ocmUudGV4dENvbnRlbnQ9Ilx1NURGMlx1NjYyRlx1NjcwMFx1NjVCMCIscmUuZGlzYWJsZWQ9ITApOnhlP3JlLnRleHRDb250ZW50PSJcdTkxQ0RcdTY1QjBcdTVCODlcdTg4QzUiOihyZS50ZXh0Q29udGVudD0iXHU3MjQ4XHU2NzJDXHU4RjgzXHU2NUU3IixyZS5kaXNhYmxlZD0hMCkscmUub25jbGljaz1yZS5kaXNhYmxlZD9udWxsOmZ1bmN0aW9uKCl7dHJ5e1dhbmROYXRpdmUuZG93bmxvYWRVcGRhdGUoT2UsS2UsSmUpfWNhdGNoKENlKXt2KCJcdThDMDNcdTc1MjhcdTRFMEJcdThGN0RcdTU5MzFcdThEMjU6ICIrKENlJiZDZS5tZXNzYWdlP0NlLm1lc3NhZ2U6Q2UpLCJlcnJvciIpfX19dmFyIEU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFuZHJvaWQtYXBrLXNlY3Rpb24iKSxDPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWFway1jdXJyZW50LXJvdyIpLGI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLWFuZHJvaWQtYXBrLWN1cnJlbnQiKSxCPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWFway1naXRodWItcm93IiksRj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtYW5kcm9pZC1hcGstZ2l0aHViIikseD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG93bmxvYWQtZ2l0aHViLWFway1idG4iKSxTPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWFway1sb2NhbC1yb3ciKSxqPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1hbmRyb2lkLWFway1sb2NhbCIpLFI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRvd25sb2FkLWxvY2FsLWFway1idG4iKSwkPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWFway1tZXNzYWdlIiksST1lLmFuZHJvaWRBcGt8fHt9LEQ9ISF4bixUPUkuZW5hYmxlZCE9PSExLE89RHx8VCYmKCEhSS5naXRodWJ8fCEhSS5sb2NhbCk7aWYoRSYmKE8/RS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTpFLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpKSxEKXtpZihDJiZiJiYoYi50ZXh0Q29udGVudD0idiIreG4sQy5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSksSS5naXRodWImJkImJkYpe3ZhciBVPUkuZ2l0aHViLnZlcnNpb24/InYiK0kuZ2l0aHViLnZlcnNpb246SS5naXRodWIuZmlsZU5hbWU7aWYodHlwZW9mIEkuZ2l0aHViLnNpemU9PSJudW1iZXIiJiYoVSs9IiBceEI3ICIrbW4oSS5naXRodWIuc2l6ZSkpLEYudGV4dENvbnRlbnQ9VSxCLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLHgpe3ZhciBWPUkuZ2l0aHViLnZlcnNpb24/aChJLmdpdGh1Yi52ZXJzaW9uLHhuKToxO20oeCxWLEkuZ2l0aHViLmRvd25sb2FkVXJsLEkuZ2l0aHViLmZpbGVOYW1lfHwid2FuZC11cGRhdGUuYXBrIiwiZ2l0aHViIiwhMSl9fWlmKEkubG9jYWwmJlMmJmope3ZhciBYPUkubG9jYWwudmVyc2lvbj8idiIrSS5sb2NhbC52ZXJzaW9uOkkubG9jYWwuZmlsZU5hbWU7aWYodHlwZW9mIEkubG9jYWwuc2l6ZT09Im51bWJlciImJihYKz0iIFx4QjcgIittbihJLmxvY2FsLnNpemUpKSxqLnRleHRDb250ZW50PVgsUy5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxSKXt2YXIgZWU9SS5sb2NhbC52ZXJzaW9uP2goSS5sb2NhbC52ZXJzaW9uLHhuKToxO20oUixlZSxJLmxvY2FsLmRvd25sb2FkVXJsLEkubG9jYWwuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5hcGsiLCJsb2NhbCIsITEpfX0hSS5naXRodWImJiFJLmxvY2FsJiYkJiYoJC50ZXh0Q29udGVudD0iXHU2NjgyXHU2NUUwXHU1M0VGXHU3NTI4XHU2NkY0XHU2NUIwIiwkLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKTt2YXIgWj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hdXRvLXVwZGF0ZS1yb3ciKSx1ZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hdXRvLXVwZGF0ZS1oaW50Iik7WiYmWi5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSx1ZSYmdWUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIil9ZWxzZXtpZihJLmdpdGh1YiYmQiYmRil7dmFyIEw9SS5naXRodWIudmVyc2lvbj8idiIrSS5naXRodWIudmVyc2lvbjpJLmdpdGh1Yi5maWxlTmFtZTt0eXBlb2YgSS5naXRodWIuc2l6ZT09Im51bWJlciImJihMKz0iIFx4QjcgIittbihJLmdpdGh1Yi5zaXplKSksRi50ZXh0Q29udGVudD1MLEIuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikseCYmKHgudGV4dENvbnRlbnQ9Ilx1NEUwQlx1OEY3RCIseC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSx4Lm9uY2xpY2s9ZnVuY3Rpb24oKXt3aW5kb3cub3BlbihJLmdpdGh1Yi5kb3dubG9hZFVybCwiX2JsYW5rIiksdigiXHU2QjYzXHU1NzI4XHU2MjUzXHU1RjAwXHU0RTBCXHU4RjdEXHU5ODc1XHUyMDI2IiwiaW5mbyIpfSl9aWYoSS5sb2NhbCYmUyYmail7dmFyIE09SS5sb2NhbC52ZXJzaW9uPyJ2IitJLmxvY2FsLnZlcnNpb246SS5sb2NhbC5maWxlTmFtZTt0eXBlb2YgSS5sb2NhbC5zaXplPT0ibnVtYmVyIiYmKE0rPSIgXHhCNyAiK21uKEkubG9jYWwuc2l6ZSkpLGoudGV4dENvbnRlbnQ9TSxTLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLFImJihSLnRleHRDb250ZW50PSJcdTRFMEJcdThGN0QiLFIuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksUi5vbmNsaWNrPWZ1bmN0aW9uKCl7ZyhJLmxvY2FsLmRvd25sb2FkVXJsLEkubG9jYWwuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5hcGsiLFIpfSl9IUkuZ2l0aHViJiYhSS5sb2NhbCYmJCYmKCQudGV4dENvbnRlbnQ9VD8iXHU1NzI4XHU3RUJGXHU3MjQ4XHU2NzJDXHU2NjgyXHU2NUY2XHU4M0I3XHU1M0Q2XHU1OTMxXHU4RDI1XHVGRjBDXHU1M0VGXHU3QTBEXHU1NDBFXHU5MUNEXHU4QkQ1IjoiQW5kcm9pZCBcdTRFMEJcdThGN0RcdTY3MkFcdTU3MjhcdTY3MERcdTUyQTFcdTdBRUZcdTU0MkZcdTc1MjgiLCQuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpfXZhciBOPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWNvcy1kbWctc2VjdGlvbiIpLEo9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1hY29zLWRtZy1jdXJyZW50LXJvdyIpLEs9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLW1hY29zLWRtZy1jdXJyZW50IiksaWU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1hY29zLWRtZy1naXRodWItcm93IiksdGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLW1hY29zLWRtZy1naXRodWIiKSxzZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG93bmxvYWQtZ2l0aHViLWRtZy1idG4iKSxvZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibWFjb3MtZG1nLWxvY2FsLXJvdyIpLHFlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1tYWNvcy1kbWctbG9jYWwiKSxFZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG93bmxvYWQtbG9jYWwtZG1nLWJ0biIpLGJlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWNvcy1kbWctbWVzc2FnZSIpLHE9ZS5tYWNvc0RtZ3x8e30sUmU9ISFhbix6PXEuZW5hYmxlZCE9PSExLGxlPVJlfHx6JiYoISFxLmdpdGh1Ynx8ISFxLmxvY2FsKTtpZihOJiYobGU/Ti5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTpOLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpKSxSZSl7aWYoSiYmSyYmKEsudGV4dENvbnRlbnQ9InYiK2FuLEouY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLHEuZ2l0aHViJiZpZSYmdGUpe3ZhciBtZT1xLmdpdGh1Yi52ZXJzaW9uPyJ2IitxLmdpdGh1Yi52ZXJzaW9uOnEuZ2l0aHViLmZpbGVOYW1lO2lmKHR5cGVvZiBxLmdpdGh1Yi5zaXplPT0ibnVtYmVyIiYmKG1lKz0iIFx4QjcgIittbihxLmdpdGh1Yi5zaXplKSksdGUudGV4dENvbnRlbnQ9bWUsaWUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksc2Upe3ZhciBuZT1xLmdpdGh1Yi52ZXJzaW9uP2gocS5naXRodWIudmVyc2lvbixhbik6MTttKHNlLG5lLHEuZ2l0aHViLmRvd25sb2FkVXJsLHEuZ2l0aHViLmZpbGVOYW1lfHwid2FuZC11cGRhdGUuZG1nIiwiZ2l0aHViIiwhMCl9fWlmKHEubG9jYWwmJm9lJiZxZSl7dmFyIGNlPXEubG9jYWwudmVyc2lvbj8idiIrcS5sb2NhbC52ZXJzaW9uOnEubG9jYWwuZmlsZU5hbWU7aWYodHlwZW9mIHEubG9jYWwuc2l6ZT09Im51bWJlciImJihjZSs9IiBceEI3ICIrbW4ocS5sb2NhbC5zaXplKSkscWUudGV4dENvbnRlbnQ9Y2Usb2UuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksRWUpe3ZhciBWZT1xLmxvY2FsLnZlcnNpb24/aChxLmxvY2FsLnZlcnNpb24sYW4pOjE7bShFZSxWZSxxLmxvY2FsLmRvd25sb2FkVXJsLHEubG9jYWwuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5kbWciLCJsb2NhbCIsITApfX0hcS5naXRodWImJiFxLmxvY2FsJiZiZSYmKGJlLnRleHRDb250ZW50PSJcdTY2ODJcdTY1RTBcdTUzRUZcdTc1MjhcdTY2RjRcdTY1QjAiLGJlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKTt2YXIgZHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1hY29zLWF1dG8tdXBkYXRlLXJvdyIpLFV0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWNvcy1hdXRvLXVwZGF0ZS1oaW50Iik7ZHQmJmR0LmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLFV0JiZVdC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX1lbHNle2lmKHEuZ2l0aHViJiZpZSYmdGUpe3ZhciBaZT1xLmdpdGh1Yi52ZXJzaW9uPyJ2IitxLmdpdGh1Yi52ZXJzaW9uOnEuZ2l0aHViLmZpbGVOYW1lO3R5cGVvZiBxLmdpdGh1Yi5zaXplPT0ibnVtYmVyIiYmKFplKz0iIFx4QjcgIittbihxLmdpdGh1Yi5zaXplKSksdGUudGV4dENvbnRlbnQ9WmUsaWUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksc2UmJihzZS50ZXh0Q29udGVudD0iXHU0RTBCXHU4RjdEIixzZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxzZS5vbmNsaWNrPWZ1bmN0aW9uKCl7d2luZG93Lm9wZW4ocS5naXRodWIuZG93bmxvYWRVcmwsIl9ibGFuayIpLHYoIlx1NkI2M1x1NTcyOFx1NjI1M1x1NUYwMFx1NEUwQlx1OEY3RFx1OTg3NVx1MjAyNiIsImluZm8iKX0pfWlmKHEubG9jYWwmJm9lJiZxZSl7dmFyIGV0PXEubG9jYWwudmVyc2lvbj8idiIrcS5sb2NhbC52ZXJzaW9uOnEubG9jYWwuZmlsZU5hbWU7dHlwZW9mIHEubG9jYWwuc2l6ZT09Im51bWJlciImJihldCs9IiBceEI3ICIrbW4ocS5sb2NhbC5zaXplKSkscWUudGV4dENvbnRlbnQ9ZXQsb2UuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksRWUmJihFZS50ZXh0Q29udGVudD0iXHU0RTBCXHU4RjdEIixFZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxFZS5vbmNsaWNrPWZ1bmN0aW9uKCl7ZyhxLmxvY2FsLmRvd25sb2FkVXJsLHEubG9jYWwuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5kbWciLEVlKX0pfSFxLmdpdGh1YiYmIXEubG9jYWwmJmJlJiYoYmUudGV4dENvbnRlbnQ9ej8iXHU1NzI4XHU3RUJGXHU3MjQ4XHU2NzJDXHU2NjgyXHU2NUY2XHU4M0I3XHU1M0Q2XHU1OTMxXHU4RDI1XHVGRjBDXHU1M0VGXHU3QTBEXHU1NDBFXHU5MUNEXHU4QkQ1IjoibWFjT1MgXHU0RTBCXHU4RjdEXHU2NzJBXHU1NzI4XHU2NzBEXHU1MkExXHU3QUVGXHU1NDJGXHU3NTI4IixiZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSl9dmFyIHR0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWNvbm5lY3QtY29kZSIpLEZ0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWNvbm5lY3QtcXIiKSxudD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1jb25uZWN0LXFyLWVtcHR5IikscnQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFuZHJvaWQtY29ubmVjdC1xci13cmFwIik7aWYodHQpe3R0LnRleHRDb250ZW50PSJcdTUyQTBcdThGN0RcdTRFMkQuLi4iLG50JiYobnQudGV4dENvbnRlbnQ9Ilx1NzUxRlx1NjIxMFx1NEUyRFx1MjAyNiIpLEZ0JiYoRnQuc3R5bGUudmlzaWJpbGl0eT0iaGlkZGVuIik7dmFyIERlPSIvYXBpL2FwcC1jb25uZWN0LWNvZGUiO3dpbmRvdy5sb2NhdGlvbiYmd2luZG93LmxvY2F0aW9uLm9yaWdpbiYmKERlKz0iP29yaWdpbj0iK2VuY29kZVVSSUNvbXBvbmVudCh3aW5kb3cubG9jYXRpb24ub3JpZ2luKSksZmV0Y2goRGUse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHJlKXtyZXR1cm4gcmUuanNvbigpfSkudGhlbihmdW5jdGlvbihyZSl7cmUuY29kZT8odHQudGV4dENvbnRlbnQ9cmUuY29kZSxyLmFuZHJvaWRDb25uZWN0Q29kZT1yZS5jb2RlLGRtKHJlLmNvZGUpKToodHQudGV4dENvbnRlbnQ9Ilx1NzUxRlx1NjIxMFx1NTkzMVx1OEQyNSIsbnQmJihudC50ZXh0Q29udGVudD0iXHU3NTFGXHU2MjEwXHU1OTMxXHU4RDI1IikpfSkuY2F0Y2goZnVuY3Rpb24oKXt0dC50ZXh0Q29udGVudD0iXHU4M0I3XHU1M0Q2XHU1OTMxXHU4RDI1IixudCYmKG50LnRleHRDb250ZW50PSJcdTgzQjdcdTUzRDZcdTU5MzFcdThEMjUiKX0pfXJ0JiYhcnQuZGF0YXNldC5ib3VuZCYmKHJ0LmRhdGFzZXQuYm91bmQ9IjEiLHJ0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3IuYW5kcm9pZENvbm5lY3RDb2RlJiZmbShyLmFuZHJvaWRDb25uZWN0Q29kZSl9KSk7dmFyIGRlPWUuY29uZmlnfHx7fSx3ZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWhvc3QiKSx3PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctcG9ydCIpLGl0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctaHR0cHMiKSx3dD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLW1vZGUiKSxTdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWN3ZCIpLHl0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctc2hlbGwiKTt3ZSYmKHdlLnZhbHVlPWRlLmhvc3R8fCIiKSx3JiYody52YWx1ZT1kZS5wb3J0fHwiIiksaXQmJihpdC5jaGVja2VkPWRlLmh0dHBzPT09ITApLHd0JiYod3QudmFsdWU9ZGUuZGVmYXVsdE1vZGV8fCJkZWZhdWx0IiksU3QmJihTdC52YWx1ZT1kZS5kZWZhdWx0Q3dkfHwiIikseXQmJih5dC52YWx1ZT1kZS5zaGVsbHx8IiIpO3ZhciBJdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWxhbmd1YWdlIik7SXQmJihJdC52YWx1ZT1kZS5sYW5ndWFnZXx8IiIpO3ZhciBhdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLXN0cnVjdHVyZWQtcnVubmVyIik7YXQmJihhdC52YWx1ZT1kZS5zdHJ1Y3R1cmVkUnVubmVyfHwiY2xpIik7dmFyIFZ0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctaW5oZXJpdC1lbnYiKTtWdCYmKFZ0LmNoZWNrZWQ9ZGUuaW5oZXJpdEVudiE9PSExKSxyLmNvbmZpZ0RlZmF1bHRNb2RlbD1kZS5kZWZhdWx0TW9kZWx8fCIiLEJpKCksVm8oKS50aGVuKGZ1bmN0aW9uKCl7QmkoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSk7dmFyIEhlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZXJ0LXN0YXR1cyIpO0hlJiYoSGUudGV4dENvbnRlbnQ9ZS5oYXNDZXJ0PyJcdTVERjJcdTVCODlcdTg4QzUgU1NMIFx1OEJDMVx1NEU2NiI6Ilx1NjcyQVx1NUI4OVx1ODhDNVx1OEJDMVx1NEU2Nlx1RkYwOFx1NEY3Rlx1NzUyOFx1ODFFQVx1N0I3RVx1NTQwRFx1NjIxNiBIVFRQXHVGRjA5IixIZS5zdHlsZS5jb2xvcj1lLmhhc0NlcnQ/InZhcigtLXN1Y2Nlc3MpIjoidmFyKC0tdGV4dC1zZWNvbmRhcnkpIik7dmFyIGtlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwcmVzZXRzLWxpc3QiKTtpZihrZSYmZGUuY29tbWFuZFByZXNldHMpe2Zvcih2YXIgQWU9IiIsZnQ9MDtmdDxkZS5jb21tYW5kUHJlc2V0cy5sZW5ndGg7ZnQrKyl7dmFyIHB0PWRlLmNvbW1hbmRQcmVzZXRzW2Z0XTtBZSs9JzxkaXYgY2xhc3M9InByZXNldC1pdGVtIj48c3BhbiBjbGFzcz0icHJlc2V0LWxhYmVsIj4nK3AocHQubGFiZWwpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InByZXNldC1kZXRhaWwiPicrcChwdC5jb21tYW5kKSsocHQubW9kZT8iICgiK3AocHQubW9kZSkrIikiOiIiKSsiPC9zcGFuPjwvZGl2PiJ9QWV8fChBZT0nPGRpdiBjbGFzcz0iZW1wdHktc3RhdGUtY29tcGFjdCI+PHNwYW4gY2xhc3M9ImVtcHR5LWljb24iPlx1MjY5OTwvc3Bhbj48c3Bhbj5cdTZDQTFcdTY3MDlcdTU0N0RcdTRFRTRcdTk4ODRcdThCQkU8L3NwYW4+PHNwYW4gY2xhc3M9ImhpbnQiPlx1NTcyOCBjb25maWcuanNvbiBcdTc2ODQgY29tbWFuZFByZXNldHMgXHU0RTJEXHU5MTREXHU3RjZFPC9zcGFuPjwvZGl2PicpLGtlLmlubmVySFRNTD1BZX12YXIgV2U9ZGUuY2FyZERlZmF1bHRzfHx7fSxobj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtZWRpdCIpLFR0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctY2FyZC1pbmxpbmUiKSxMbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdGVybWluYWwiKSx1dD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdGhpbmtpbmciKSxmZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdG9vbGdyb3VwIik7aG4mJihobi5jaGVja2VkPVdlLmVkaXRDYXJkcz09PSEwKSxUdCYmKFR0LmNoZWNrZWQ9V2UuaW5saW5lVG9vbHM9PT0hMCksTG4mJihMbi5jaGVja2VkPVdlLnRlcm1pbmFsPT09ITApLHV0JiYodXQuY2hlY2tlZD1XZS50aGlua2luZz09PSEwKSxmZSYmKGZlLmNoZWNrZWQ9V2UudG9vbEdyb3VwPT09ITApfSkuY2F0Y2goZnVuY3Rpb24oKXt9KX1mdW5jdGlvbiB2bSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25maWctbWVzc2FnZSIpO2UmJihlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGUudGV4dENvbnRlbnQ9IiIpO3ZhciB0PXtob3N0Oihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWhvc3QiKXx8e30pLnZhbHVlLHBvcnQ6TnVtYmVyKChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLXBvcnQiKXx8e30pLnZhbHVlKSxodHRwczooZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1odHRwcyIpfHx7fSkuY2hlY2tlZCxkZWZhdWx0TW9kZTooZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1tb2RlIil8fHt9KS52YWx1ZSxkZWZhdWx0Q3dkOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWN3ZCIpfHx7fSkudmFsdWUsc2hlbGw6KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctc2hlbGwiKXx8e30pLnZhbHVlLGxhbmd1YWdlOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWxhbmd1YWdlIil8fHt9KS52YWx1ZXx8IiIsZGVmYXVsdE1vZGVsOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWRlZmF1bHQtbW9kZWwiKXx8e30pLnZhbHVlfHwiIixzdHJ1Y3R1cmVkUnVubmVyOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLXN0cnVjdHVyZWQtcnVubmVyIil8fHt9KS52YWx1ZXx8ImNsaSIsaW5oZXJpdEVudjooZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1pbmhlcml0LWVudiIpfHx7fSkuY2hlY2tlZCE9PSExfSxuPXIuY29uZmlnJiZyLmNvbmZpZy5kZWZhdWx0TW9kZWx8fCIiLGk9dC5kZWZhdWx0TW9kZWx8fCIiO2ZldGNoKCIvYXBpL3NldHRpbmdzL2NvbmZpZyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkodCl9KS50aGVuKGZ1bmN0aW9uKGEpe3JldHVybiBhLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oYSl7aWYoZSYmKGEuZXJyb3I/KGUudGV4dENvbnRlbnQ9YS5lcnJvcixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiKTooZS50ZXh0Q29udGVudD1hLnJlc3RhcnRSZXF1aXJlZD8iXHU5MTREXHU3RjZFXHU1REYyXHU0RkREXHU1QjU4XHVGRjBDXHU5MEU4XHU1MjA2XHU5MEU4XHU3RjcyXHU1QjU3XHU2QkI1XHVGRjA4aG9zdC9wb3J0L2h0dHBzL3NoZWxsXHVGRjA5XHU5NzAwXHU4OTgxXHU5MUNEXHU1NDJGXHU2NzBEXHU1MkExXHU2MjREXHU3NTFGXHU2NTQ4XHUzMDAyIjoiXHU5MTREXHU3RjZFXHU1REYyXHU0RkREXHU1QjU4XHUzMDAyIixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1zdWNjZXNzKSIpLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLCghYXx8IWEuZXJyb3IpJiYoci5jb25maWcmJihyLmNvbmZpZy5kZWZhdWx0TW9kZWw9aSksci5jb25maWdEZWZhdWx0TW9kZWw9aSxpIT09bikpe3IuY2hhdE1vZGVsPSIiO3RyeXtsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgid2FuZC1jaGF0LW1vZGVsIil9Y2F0Y2h7fVhuKGd0KCkpfX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZSYmKGUudGV4dENvbnRlbnQ9Ilx1NEZERFx1NUI1OFx1NTkzMVx1OEQyNVx1MzAwMiIsZS5zdHlsZS5jb2xvcj0idmFyKC0tZXJyb3IpIixlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKX0pfWZ1bmN0aW9uIG1tKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpc3BsYXktbWVzc2FnZSIpO2UmJihlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGUudGV4dENvbnRlbnQ9IiIpO3ZhciB0PXtjYXJkRGVmYXVsdHM6e2VkaXRDYXJkczohIShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtZWRpdCIpfHx7fSkuY2hlY2tlZCxpbmxpbmVUb29sczohIShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtaW5saW5lIil8fHt9KS5jaGVja2VkLHRlcm1pbmFsOiEhKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctY2FyZC10ZXJtaW5hbCIpfHx7fSkuY2hlY2tlZCx0aGlua2luZzohIShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdGhpbmtpbmciKXx8e30pLmNoZWNrZWQsdG9vbEdyb3VwOiEhKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctY2FyZC10b29sZ3JvdXAiKXx8e30pLmNoZWNrZWR9fTtmZXRjaCgiL2FwaS9zZXR0aW5ncy9jb25maWciLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHQpfSkudGhlbihmdW5jdGlvbihuKXtyZXR1cm4gbi5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKG4pe2UmJihuLmVycm9yPyhlLnRleHRDb250ZW50PW4uZXJyb3IsZS5zdHlsZS5jb2xvcj0idmFyKC0tZXJyb3IpIik6KGUudGV4dENvbnRlbnQ9Ilx1NjYzRVx1NzkzQVx1OEJCRVx1N0Y2RVx1NURGMlx1NEZERFx1NUI1OCIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiKSxlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKSwhbi5lcnJvciYmci5jb25maWcmJihyLmNvbmZpZy5jYXJkRGVmYXVsdHM9dC5jYXJkRGVmYXVsdHMpfSkuY2F0Y2goZnVuY3Rpb24oKXtlJiYoZS50ZXh0Q29udGVudD0iXHU0RkREXHU1QjU4XHU1OTMxXHU4RDI1XHUzMDAyIixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpfSl9ZnVuY3Rpb24gZ20oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2VydC1rZXktZmlsZSIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNlcnQtY2VydC1maWxlIiksbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2VydC1tZXNzYWdlIik7aWYobiYmKG4uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksbi50ZXh0Q29udGVudD0iIiksIWV8fCFlLmZpbGVzfHwhZS5maWxlc1swXXx8IXR8fCF0LmZpbGVzfHwhdC5maWxlc1swXSl7biYmKG4udGV4dENvbnRlbnQ9Ilx1OEJGN1x1OTAwOVx1NjJFOVx1NzlDMVx1OTRBNVx1NTQ4Q1x1OEJDMVx1NEU2Nlx1NjU4N1x1NEVGNlx1MzAwMiIsbi5zdHlsZS5jb2xvcj0idmFyKC0tZXJyb3IpIixuLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKTtyZXR1cm59dmFyIGk9bmV3IEZpbGVSZWFkZXI7aS5vbmxvYWQ9ZnVuY3Rpb24oKXt2YXIgYT1pLnJlc3VsdCx1PW5ldyBGaWxlUmVhZGVyO3Uub25sb2FkPWZ1bmN0aW9uKCl7dmFyIHM9dS5yZXN1bHQ7ZmV0Y2goIi9hcGkvc2V0dGluZ3MvdXBsb2FkLWNlcnQiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtrZXk6YSxjZXJ0OnN9KX0pLnRoZW4oZnVuY3Rpb24obyl7cmV0dXJuIG8uanNvbigpfSkudGhlbihmdW5jdGlvbihvKXtpZihuKXtpZihvLmVycm9yKW4udGV4dENvbnRlbnQ9by5lcnJvcixuLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiO2Vsc2V7bi50ZXh0Q29udGVudD0iXHU4QkMxXHU0RTY2XHU1REYyXHU0RTBBXHU0RjIwXHVGRjBDXHU5MUNEXHU1NDJGXHU1NDBFXHU3NTFGXHU2NTQ4XHUzMDAyIixuLnN0eWxlLmNvbG9yPSJ2YXIoLS1zdWNjZXNzKSI7dmFyIGw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNlcnQtc3RhdHVzIik7bCYmKGwudGV4dENvbnRlbnQ9Ilx1NURGMlx1NUI4OVx1ODhDNSBTU0wgXHU4QkMxXHU0RTY2IixsLnN0eWxlLmNvbG9yPSJ2YXIoLS1zdWNjZXNzKSIpfW4uY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIil9fSkuY2F0Y2goZnVuY3Rpb24oKXtuJiYobi50ZXh0Q29udGVudD0iXHU0RTBBXHU0RjIwXHU1OTMxXHU4RDI1XHUzMDAyIixuLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiLG4uY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpfSl9LHUucmVhZEFzVGV4dCh0LmZpbGVzWzBdKX0saS5yZWFkQXNUZXh0KGUuZmlsZXNbMF0pfWZ1bmN0aW9uIGVsKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLWxhdGVzdC12ZXJzaW9uIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG8tdXBkYXRlLWJ1dHRvbiIpLG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInVwZGF0ZS1tZXNzYWdlIik7ZSYmKGUudGV4dENvbnRlbnQ9Ilx1NjhDMFx1NjdFNVx1NEUyRC4uLiIpLG4mJm4uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksdCYmdC5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxmZXRjaCgiL2FwaS9jaGVjay11cGRhdGUiLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGkpe2lmKGkuZXJyb3Ipe2UmJihlLnRleHRDb250ZW50PSJcdTY4QzBcdTY3RTVcdTU5MzFcdThEMjUiKTtyZXR1cm59dmFyIGE9aS5jaGFubmVsPT09ImJldGEiO2lmKGUmJihlLnRleHRDb250ZW50PWkubGF0ZXN0fHwoYT8iYmV0YSBcdTY3MkFcdTUzRDFcdTVFMDMiOiItIikpLCFpLmxhdGVzdCl7biYmKG4udGV4dENvbnRlbnQ9YT8iXHU2NUUwXHU2Q0Q1XHU4QkZCXHU1M0Q2IG5wbSBiZXRhIFx1NzI0OFx1NjcyQ1x1MzAwMiI6Ilx1NjVFMFx1NkNENVx1OEZERVx1NjNBNVx1NTIzMCBucG0gcmVnaXN0cnlcdTMwMDIiLG4uc3R5bGUuY29sb3I9InZhcigtLWVycm9yKSIsbi5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSk7cmV0dXJufWkudXBkYXRlQXZhaWxhYmxlJiZ0JiYodC50ZXh0Q29udGVudD1hPyJcdTY2RjRcdTY1QjBcdTUyMzAgQmV0YSI6Ilx1NjZGNFx1NjVCMFx1NTIzMFx1NjcwMFx1NjVCMFx1NzI0OCIsdC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSksIWkudXBkYXRlQXZhaWxhYmxlJiZuJiYobi50ZXh0Q29udGVudD1hPyJcdTVERjJcdTY2MkZcdTY3MDBcdTY1QjAgQmV0YSBcdTcyNDhcdTY3MkNcdTMwMDIiOiJcdTVERjJcdTY2MkZcdTY3MDBcdTY1QjBcdTcyNDhcdTY3MkNcdTMwMDIiLG4uc3R5bGUuY29sb3I9InZhcigtLXN1Y2Nlc3MpIixuLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZSYmKGUudGV4dENvbnRlbnQ9Ilx1NjhDMFx1NjdFNVx1NTkzMVx1OEQyNSIpfSl9ZnVuY3Rpb24gaG0oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidXBkYXRlLW1lc3NhZ2UiKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkby11cGRhdGUtYnV0dG9uIik7dCYmKHQuZGlzYWJsZWQ9ITAsZSYmKGUudGV4dENvbnRlbnQ9Ilx1NkI2M1x1NTcyOFx1NjZGNFx1NjVCMFx1RkYwQ1x1OEJGN1x1N0EwRFx1NTAxOS4uLiIsZS5zdHlsZS5jb2xvcj0idmFyKC0tdGV4dC1zZWNvbmRhcnkpIixlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKSxmZXRjaCgiL2FwaS91cGRhdGUiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIG4uanNvbigpfSkudGhlbihmdW5jdGlvbihuKXtpZihuLmVycm9yKXtlJiYoZS50ZXh0Q29udGVudD1uLmVycm9yLGUuc3R5bGUuY29sb3I9InZhcigtLWVycm9yKSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSksdC5kaXNhYmxlZD0hMTtyZXR1cm59aWYoZSYmKGUudGV4dENvbnRlbnQ9KG4ubWVzc2FnZXx8Ilx1NjZGNFx1NjVCMFx1NUI4Q1x1NjIxMCIpKyJcdUZGMENcdTZCNjNcdTU3MjhcdTkxQ0RcdTU0MkZcdTY3MERcdTUyQTFcdTIwMjYiLGUuc3R5bGUuY29sb3I9InZhcigtLXN1Y2Nlc3MpIixlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKSx0LmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLG4uZGV0YWNoZWRVcGRhdGUpdW4oKTtlbHNlIGlmKG4ucmVzdGFydFJlcXVpcmVkIT09ITEpVHMobnVsbCxlKTtlbHNle3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkby1yZXN0YXJ0LWJ1dHRvbiIpO2kmJmkuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIil9fSkuY2F0Y2goZnVuY3Rpb24oKXtlJiYoZS50ZXh0Q29udGVudD0iXHU2NkY0XHU2NUIwXHU1OTMxXHU4RDI1XHUzMDAyIixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLHQuZGlzYWJsZWQ9ITF9KSl9ZnVuY3Rpb24geW0oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG8tcmVzdGFydC1idXR0b24iKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ1cGRhdGUtbWVzc2FnZSIpO1RzKGUsdCl9ZnVuY3Rpb24gRW0oKXtmZXRjaCgiL2FwaS9hdXRvLXVwZGF0ZSIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oZSl7aWYoZS5hcGspcmV0dXJuIGZldGNoKCIvYXBpL2FuZHJvaWQtYXBrLXVwZGF0ZT9jdXJyZW50VmVyc2lvbj0iK2VuY29kZVVSSUNvbXBvbmVudCh4bikse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7aWYoISghdC51cGRhdGVBdmFpbGFibGV8fCF0LmRvd25sb2FkVXJsKSl0cnl7V2FuZE5hdGl2ZS5kb3dubG9hZFVwZGF0ZSh0LmRvd25sb2FkVXJsLHQuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5hcGsiLHQuc291cmNlfHwibG9jYWwiKX1jYXRjaHt9fSl9KS5jYXRjaChmdW5jdGlvbigpe30pfWZ1bmN0aW9uIGJtKCl7YW4mJmZldGNoKCIvYXBpL2F1dG8tdXBkYXRlIix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGUuanNvbigpfSkudGhlbihmdW5jdGlvbihlKXtpZihlLmRtZylyZXR1cm4gZmV0Y2goIi9hcGkvbWFjb3MtZG1nLXVwZGF0ZT9jdXJyZW50VmVyc2lvbj0iK2VuY29kZVVSSUNvbXBvbmVudChhbikse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7aWYoISghdC51cGRhdGVBdmFpbGFibGV8fCF0LmRvd25sb2FkVXJsKSl0cnl7V2FuZE5hdGl2ZS5kb3dubG9hZFVwZGF0ZSh0LmRvd25sb2FkVXJsLHQuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5kbWciLHQuc291cmNlfHwibG9jYWwiKX1jYXRjaHt9fSl9KS5jYXRjaChmdW5jdGlvbigpe30pfWZ1bmN0aW9uICRhKGUsdCl7dmFyIG49e307bltlXT10LGZldGNoKCIvYXBpL2F1dG8tdXBkYXRlIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShuKX0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpfSkudGhlbihmdW5jdGlvbihpKXt2YXIgYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by11cGRhdGUtd2ViLXRvZ2dsZSIpLHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF1dG8tdXBkYXRlLWFway10b2dnbGUiKSxzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS1kbWctdG9nZ2xlIik7YSYmKGEuY2hlY2tlZD0hIWkud2ViKSx1JiYodS5jaGVja2VkPSEhaS5hcGspLHMmJihzLmNoZWNrZWQ9ISFpLmRtZyl9KS5jYXRjaChmdW5jdGlvbigpe3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS0iK2UrIi10b2dnbGUiKTtpJiYoaS5jaGVja2VkPSF0KX0pfWZ1bmN0aW9uIEZtKGUpe2ZldGNoKCIvYXBpL3VwZGF0ZS1jaGFubmVsIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7Y2hhbm5lbDplfSl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7dmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJldGEtY2hhbm5lbC10b2dnbGUiKTtuJiYobi5jaGVja2VkPXQuY2hhbm5lbD09PSJiZXRhIiksZWwoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJldGEtY2hhbm5lbC10b2dnbGUiKTt0JiYodC5jaGVja2VkPWUhPT0iYmV0YSIpfSl9ZnVuY3Rpb24gdGwoZSl7Zm9yKHZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXR0aW5ncy1hcHAtaWNvbi1vcHRpb24iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciBpPXRbbl0uZ2V0QXR0cmlidXRlKCJkYXRhLWljb24iKT09PWU7dFtuXS5jbGFzc0xpc3QudG9nZ2xlKCJzZWxlY3RlZCIsaSksdFtuXS5zZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIsaT8idHJ1ZSI6ImZhbHNlIil9fWZ1bmN0aW9uIGduKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1wZXJtaXNzaW9uLXN0YXR1cyIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1yZXF1ZXN0LWJ0biIpLG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1yZXNldC1idG4iKSxpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1tZXNzYWdlIik7aWYoZSl7dmFyIGE9c2koKTtpZihhPT09bnVsbCl7aWYodHlwZW9mIE5vdGlmaWNhdGlvbj4idSIpe2UudGV4dENvbnRlbnQ9Ilx1NEUwRFx1NjUyRlx1NjMwMSIsZS5zdHlsZS5jb2xvcj0idmFyKC0tZmctbXV0ZWQpIix0JiZ0LmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLG4mJm4uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIik7cmV0dXJufWE9Tm90aWZpY2F0aW9uLnBlcm1pc3Npb259YT09PSJncmFudGVkIj8oZS50ZXh0Q29udGVudD0iXHU1REYyXHU2Mzg4XHU2NzQzIFx1MjcxMyIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiLHQmJnQuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksbiYmbi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSk6YT09PSJkZW5pZWQiPyhlLnRleHRDb250ZW50PSJcdTVERjJcdTYyRDJcdTdFREQiLGUuc3R5bGUuY29sb3I9InZhcigtLWRhbmdlcikiLHQmJnQuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksbiYmbi5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSk6KGUudGV4dENvbnRlbnQ9Ilx1NjcyQVx1NjM4OFx1Njc0MyIsZS5zdHlsZS5jb2xvcj0idmFyKC0td2FybmluZykiLHQmJnQuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksbiYmbi5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSl9fWZ1bmN0aW9uIHdtKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi10ZXN0LW1lc3NhZ2UiKTtpZihOZSl7d2luZG93Ll9vbk5hdGl2ZVBlcm1pc3Npb25SZXN1bHQ9ZnVuY3Rpb24odCl7Z24oKSxlJiYodD09PSJncmFudGVkIj8oZS50ZXh0Q29udGVudD0iXHUyNzEzIFx1NURGMlx1NjM4OFx1Njc0MyIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiKTooZS50ZXh0Q29udGVudD0iXHUyNzE3IFx1NjcyQVx1NjM4OFx1Njc0M1x1RkYwQ1x1OEJGN1x1NTcyOFx1N0NGQlx1N0VERlx1OEJCRVx1N0Y2RVx1NEUyRFx1NUYwMFx1NTQyRiBXYW5kIFx1NzY4NFx1OTAxQVx1NzdFNVx1Njc0M1x1OTY1MCIsZS5zdHlsZS5jb2xvcj0idmFyKC0tZGFuZ2VyKSIpLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLGRlbGV0ZSB3aW5kb3cuX29uTmF0aXZlUGVybWlzc2lvblJlc3VsdH07dHJ5e1dhbmROYXRpdmUucmVxdWVzdFBlcm1pc3Npb24oKX1jYXRjaHt9cmV0dXJufXR5cGVvZiBOb3RpZmljYXRpb24+InUifHxOb3RpZmljYXRpb24ucmVxdWVzdFBlcm1pc3Npb24oKS50aGVuKGZ1bmN0aW9uKHQpe2lmKGduKCksdD09PSJncmFudGVkIillJiYoZS50ZXh0Q29udGVudD0iXHUyNzEzIFx1NURGMlx1NjM4OFx1Njc0MyIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpO2Vsc2UgaWYodD09PSJkZW5pZWQiJiZlKXt2YXIgbj1sb2NhdGlvbi5vcmlnaW47ZS5pbm5lckhUTUw9J1x1NkQ0Rlx1ODlDOFx1NTY2OFx1NURGMlx1NjJFNlx1NjIyQVx1NjM4OFx1Njc0M1x1NUYzOVx1N0E5N1x1RkYwQ1x1OEJGN1x1NjI0Qlx1NTJBOFx1OTFDRFx1N0Y2RVx1RkYxQTxicj48c3BhbiBzdHlsZT0iZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDttYXJnaW46NHB4IDAiPlx1MjQ2MCBcdTcwQjlcdTUxRkJcdTU3MzBcdTU3NDBcdTY4MEZcdTVERTZcdTRGQTdcdTc2ODQgPHNwYW4gc3R5bGU9ImRpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Zm9udC1zaXplOjExcHg7dmVydGljYWwtYWxpZ246bWlkZGxlIj5pPC9zcGFuPiBcdTYyMTZcdTk1MDFcdTU2RkVcdTY4MDc8L3NwYW4+PGJyPlx1MjQ2MSBcdTYyN0VcdTUyMzBcdTMwMENcdTkwMUFcdTc3RTVcdTMwMERcdTIxOTIgXHU2NTM5XHU0RTNBXHUzMDBDXHU1MTQxXHU4QkI4XHUzMDBEPGJyPlx1MjQ2MiBcdTUyMzdcdTY1QjBcdTk4NzVcdTk3NjJcdTUzNzNcdTUzRUYnLGUuc3R5bGUuY29sb3I9InZhcigtLWZnLW11dGVkKSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX19KX1mdW5jdGlvbiBubCgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1kZWxheS1idG4iKTtlJiYoZS5kaXNhYmxlZD0hMSxlLnRleHRDb250ZW50PSIxMCBcdTc5RDJcdTU0MEVcdTUzRDFcdTkwMDEiKX1mdW5jdGlvbiBDbSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1tZXNzYWdlIik7ci5kZWxheWVkTm90aWZpY2F0aW9uVGltZXImJihjbGVhclRpbWVvdXQoci5kZWxheWVkTm90aWZpY2F0aW9uVGltZXIpLHIuZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyPW51bGwpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1kZWxheS1idG4iKTt0JiYodC5kaXNhYmxlZD0hMCx0LnRleHRDb250ZW50PSJcdTVERjJcdTVCODlcdTYzOTJcdUZGMDgxMHNcdUZGMDkiKSxlJiYoZS5pbm5lckhUTUw9Ilx1NURGMlx1NUI4OVx1NjM5MiAxMCBcdTc5RDJcdTU0MEVcdTUzRDFcdTkwMDFcdTZENEJcdThCRDVcdTkwMUFcdTc3RTVcdUZGMENcdThCRjdcdTUyMDdcdTUyMzBcdTU0MEVcdTUzRjBcdTdCNDlcdTVGODVcdTMwMDIiLGUuc3R5bGUuY29sb3I9InZhcigtLXRleHQtc2Vjb25kYXJ5KSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSksci5kZWxheWVkTm90aWZpY2F0aW9uVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe3IuZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyPW51bGwsbmwoKSxybCgpfSwxZTQpfWZ1bmN0aW9uIHJsKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi10ZXN0LW1lc3NhZ2UiKSx0PVtdO3IuZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyJiYoY2xlYXJUaW1lb3V0KHIuZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyKSxyLmRlbGF5ZWROb3RpZmljYXRpb25UaW1lcj1udWxsLG5sKCkpO3ZhciBuPXlmKCk7dC5wdXNoKG4/Ilx1MjcxMyBcdTYzRDBcdTc5M0FcdTk3RjMiOiJcdTI3MTcgXHU2M0QwXHU3OTNBXHU5N0YzXHVGRjA4XHU2NUUwXHU2Q0Q1XHU2NEFEXHU2NTNFXHVGRjA5Iik7dmFyIGk9ci5ub3RpZkJ1YmJsZTtpZihjYSh7dGl0bGU6Ilx1NkQ0Qlx1OEJENVx1OTAxQVx1NzdFNSIsYm9keToiXHU4RkQ5XHU2NjJGXHU0RTAwXHU2NzYxXHU2RDRCXHU4QkQ1XHU5MDFBXHU3N0U1XHUzMDAyIix0eXBlOiJpbmZvIixpY29uOiJcdTI2NkEiLGR1cmF0aW9uOjVlMyxwbGF5U291bmQ6ITF9KSx0LnB1c2goaT8iXHUyNzEzIFx1NUU5NFx1NzUyOFx1NTE4NVx1NkMxNFx1NkNFMSI6Ilx1MjAxMyBcdTVFOTRcdTc1MjhcdTUxODVcdTZDMTRcdTZDRTFcdUZGMDhcdTVERjJcdTUxNzNcdTk1RURcdUZGMDkiKSxOZSl7dmFyIGE9c2koKTtpZihhPT09ImdyYW50ZWQiKXRyeXtXYW5kTmF0aXZlLnNlbmROb3RpZmljYXRpb24oIldhbmQgXHU2RDRCXHU4QkQ1XHU5MDFBXHU3N0U1IiwiXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHU1REYyXHU2QjYzXHU1RTM4XHU1REU1XHU0RjVDXHUzMDAyIiwid2FuZC10ZXN0IiksdC5wdXNoKCJcdTI3MTMgXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1Iil9Y2F0Y2h7dC5wdXNoKCJcdTI3MTcgXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHVGRjA4XHU1M0QxXHU5MDAxXHU1OTMxXHU4RDI1XHVGRjA5Iil9ZWxzZSBpZihhPT09ImRlbmllZCIpdC5wdXNoKCJcdTI3MTcgXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHVGRjA4XHU1REYyXHU2MkQyXHU3RUREXHVGRjBDXHU4QkY3XHU1NzI4XHU3Q0ZCXHU3RURGXHU4QkJFXHU3RjZFXHU0RTJEXHU1RjAwXHU1NDJGXHVGRjA5Iik7ZWxzZXt3aW5kb3cuX29uTmF0aXZlUGVybWlzc2lvblJlc3VsdD1mdW5jdGlvbihvKXtpZihnbigpLG89PT0iZ3JhbnRlZCIpdHJ5e1dhbmROYXRpdmUuc2VuZE5vdGlmaWNhdGlvbigiV2FuZCBcdTZENEJcdThCRDVcdTkwMUFcdTc3RTUiLCJcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdTVERjJcdTZCNjNcdTVFMzhcdTVERTVcdTRGNUNcdTMwMDIiLCJ3YW5kLXRlc3QiKSx0LnB1c2goIlx1MjcxMyBcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdUZGMDhcdTVERjJcdTYzODhcdTY3NDNcdUZGMDkiKX1jYXRjaHt0LnB1c2goIlx1MjcxNyBcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdUZGMDhcdTUzRDFcdTkwMDFcdTU5MzFcdThEMjVcdUZGMDkiKX1lbHNlIHQucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NjcyQVx1NjM4OFx1Njc0M1x1RkYwOSIpO3RyKGUsdCksZGVsZXRlIHdpbmRvdy5fb25OYXRpdmVQZXJtaXNzaW9uUmVzdWx0fTt0cnl7V2FuZE5hdGl2ZS5yZXF1ZXN0UGVybWlzc2lvbigpfWNhdGNoe31yZXR1cm59dHIoZSx0KTtyZXR1cm59aWYodHlwZW9mIE5vdGlmaWNhdGlvbj4idSIpe3QucHVzaCgiXHUyMDEzIFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NEUwRFx1NjUyRlx1NjMwMVx1RkYwOSIpLHRyKGUsdCk7cmV0dXJufXZhciB1PU5vdGlmaWNhdGlvbi5wZXJtaXNzaW9uO2lmKHU9PT0iZ3JhbnRlZCIpe3RyeXt2YXIgcz1uZXcgTm90aWZpY2F0aW9uKCJXYW5kIFx1NkQ0Qlx1OEJENVx1OTAxQVx1NzdFNSIse2JvZHk6Ilx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1NURGMlx1NkI2M1x1NUUzOFx1NURFNVx1NEY1Q1x1MzAwMiIsaWNvbjoiL2Zhdmljb24uaWNvIix0YWc6IndhbmQtdGVzdCJ9KTtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cy5jbG9zZSgpfSw1ZTMpLHQucHVzaCgiXHUyNzEzIFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNSIpfWNhdGNoe3QucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NTNEMVx1OTAwMVx1NTkzMVx1OEQyNVx1RkYwQ1x1NTNFRlx1ODBGRFx1OTcwMFx1ODk4MSBIVFRQU1x1RkYwOSIpfXRyKGUsdCl9ZWxzZSB1PT09ImRlbmllZCI/KHQucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NURGMlx1NjJEMlx1N0VERFx1RkYwOSIpLHRyKGUsdCkpOk5vdGlmaWNhdGlvbi5yZXF1ZXN0UGVybWlzc2lvbigpLnRoZW4oZnVuY3Rpb24obyl7Z24oKSxvPT09ImdyYW50ZWQiP3QucHVzaCgiXHUyNzEzIFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NURGMlx1NjM4OFx1Njc0M1x1RkYwOSIpOnQucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NjcyQVx1NjM4OFx1Njc0M1x1RkYwOSIpLHRyKGUsdCl9KX1mdW5jdGlvbiB0cihlLHQpe2lmKGUpe2UuaW5uZXJIVE1MPXQubWFwKGZ1bmN0aW9uKGkpe3JldHVybiBwKGkpfSkuam9pbigiPGJyPiIpO3ZhciBuPXQuZXZlcnkoZnVuY3Rpb24oaSl7cmV0dXJuIGkuaW5kZXhPZigiXHUyNzEzIik9PT0wfHxpLmluZGV4T2YoIlx1MjAxMyIpPT09MH0pO2Uuc3R5bGUuY29sb3I9bj8idmFyKC0tc3VjY2VzcykiOiJ2YXIoLS13YXJuaW5nKSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX19ZnVuY3Rpb24gaHQoZSl7aWYoIWV8fHR5cGVvZiBlIT0ib2JqZWN0Inx8IXIudGVybWluYWwpcmV0dXJuIGU7dHJ5e3R5cGVvZiByLnRlcm1pbmFsLnJlbWVhc3VyZT09ImZ1bmN0aW9uIiYmci50ZXJtaW5hbC5yZW1lYXN1cmUoKX1jYXRjaHt9dmFyIHQ9ci50ZXJtaW5hbC5jb2xzLG49ci50ZXJtaW5hbC5yb3dzO3JldHVybiB0eXBlb2YgdD09Im51bWJlciImJnR5cGVvZiBuPT0ibnVtYmVyIiYmTnVtYmVyLmlzRmluaXRlKHQpJiZOdW1iZXIuaXNGaW5pdGUobikmJnQ+MCYmbj4wJiYoZS5jb2xzPXQsZS5yb3dzPW4pLGV9ZnVuY3Rpb24gaWwoKXtyZXR1cm4gci50ZXJtaW5hbCYmci50ZXJtaW5hbC5jb2xzP1Byb21pc2UucmVzb2x2ZSgpOm5ldyBQcm9taXNlKGZ1bmN0aW9uKGUpe3ZhciB0PSExLG49ZnVuY3Rpb24oKXt0fHwodD0hMCxlKCkpfSxpPXNldFRpbWVvdXQobiwyZTMpO3RyeXtLbigpfWNhdGNoe31yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtyLnRlcm1pbmFsJiZyLnRlcm1pbmFsLmNvbHMmJihjbGVhclRpbWVvdXQoaSksbigpKX0pfSl9KX1mdW5jdGlvbiBhbCgpe3ZhciBlPW10KCksdD0kZSgpLG49eHQoZSxyLmNvbmZpZyYmci5jb25maWcuZGVmYXVsdE1vZGU/ci5jb25maWcuZGVmYXVsdE1vZGU6ImRlZmF1bHQiKTtyLnByZWZlcnJlZENvbW1hbmQ9ZSxyLmNoYXRNb2RlPXh0KGUsci5jaGF0TW9kZSksaWwoKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGZldGNoKCIvYXBpL2NvbW1hbmRzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShodCh7Y29tbWFuZDplLHByb3ZpZGVyOmUsY3dkOnQsbW9kZTpufSkpfSl9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoaS5lcnJvcil7ayhpLmVycm9yLCJlcnJvciIpO3JldHVybn1yZXR1cm4gci5zZWxlY3RlZElkPWkuaWQsRmUoKSxyLmRyYWZ0c1tpLmlkXT0iIixrdCgpLGp0KCl9KS50aGVuKGZ1bmN0aW9uKCl7TnQoITApfSkuY2F0Y2goZnVuY3Rpb24oKXtrKCJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQThcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpfSl9dmFyIHFyPSExO2Z1bmN0aW9uIEJtKCl7aWYoIXFyKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3dkIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibW9kYWwtZXJyb3IiKSxuPW10KCksaT1yLnNlc3Npb25DcmVhdGVLaW5kfHwic3RydWN0dXJlZCIsYT1yLnNlc3Npb25DcmVhdGVXb3JrdHJlZT09PSEwO3VpKHQpO3ZhciB1PSRlKCkscz0oZT9lLnZhbHVlLnRyaW0oKToiIil8fHUsbz14dChuLHIubW9kZVZhbHVlKTtpZihpPT09InN0cnVjdHVyZWQiKXtEbShzLG8sYSx0KTtyZXR1cm59a20obixzLG8sYSx0KX19ZnVuY3Rpb24gRG0oZSx0LG4saSl7dmFyIGE9ci5zZXNzaW9uVG9vbD09PSJjb2RleCI/ImNvZGV4IjoiY2xhdWRlIjtyZXR1cm4gcXI9ITAsci5tb2RlVmFsdWU9dCxyLmNoYXRNb2RlPXQsci5zZXNzaW9uVG9vbD1hLHIucHJlZmVycmVkQ29tbWFuZD1hLENpKCksWG4oZ3QoKSksR28odm9pZCAwLGUsdCxuKS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiBRdChlKSx2bigpLFd0KCksdX0pLnRoZW4oZnVuY3Rpb24oKXtOdCghMCl9KS5jYXRjaChmdW5jdGlvbih1KXtQZShpLHUmJnUubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOFx1N0VEM1x1Njc4NFx1NTMxNlx1NEYxQVx1OEJERFx1RkYwQ1x1OEJGN1x1Nzg2RVx1OEJBNCBDbGF1ZGUgXHU1REYyXHU2QjYzXHU3ODZFXHU1Qjg5XHU4OEM1XHUzMDAyIil9KS5maW5hbGx5KGZ1bmN0aW9uKCl7cXI9ITF9KX1mdW5jdGlvbiBrbShlLHQsbixpLGEpe3FyPSEwLHIubW9kZVZhbHVlPW4sci5jaGF0TW9kZT1uLHIuc2Vzc2lvblRvb2w9ZSxyLnByZWZlcnJlZENvbW1hbmQ9ZSxDaSgpLGlsKCkudGhlbihmdW5jdGlvbigpe3JldHVybiBmZXRjaCgiL2FwaS9jb21tYW5kcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoaHQoe2NvbW1hbmQ6ZSxwcm92aWRlcjplLGN3ZDp0LG1vZGU6bix3b3JrdHJlZUVuYWJsZWQ6aX0pKX0pfSkudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gdS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHUpe2lmKHUuZXJyb3Ipe1BlKGEsdS5lcnJvcik7cmV0dXJufXJldHVybiByLnNlbGVjdGVkSWQ9dS5pZCxGZSgpLFF0KHQpLHIuZHJhZnRzW3UuaWRdPSIiLGt0KCksdm4oKSxXdCgpLGp0KCl9KS50aGVuKGZ1bmN0aW9uKCl7ci5zZWxlY3RlZElkP1J0KHIuc2VsZWN0ZWRJZCk6TnQoITApfSkuY2F0Y2goZnVuY3Rpb24oKXtQZShhLGU9PT0iY29kZXgiPyJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQTggQ29kZXggXHU0RjFBXHU4QkREXHVGRjBDXHU4QkY3XHU3ODZFXHU4QkE0IGNvZGV4IFx1NURGMlx1NkI2M1x1Nzg2RVx1NUI4OVx1ODhDNVx1NUU3Nlx1NTNFRlx1NTcyOFx1N0VDOFx1N0FFRlx1NEUyRFx1NjI2N1x1ODg0Q1x1MzAwMiI6Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOCBDbGF1ZGUgXHU0RjFBXHU4QkREXHVGRjBDXHU4QkY3XHU3ODZFXHU4QkE0IENsYXVkZSBcdTVERjJcdTZCNjNcdTc4NkVcdTVCODlcdTg4QzVcdTMwMDIiKX0pLmZpbmFsbHkoZnVuY3Rpb24oKXtxcj0hMX0pfWZ1bmN0aW9uIEFtKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQtY3dkIik7ZSYmKGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHVsKSxlLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKHQpeyh0LmtleT09PSJFbnRlciJ8fHQua2V5PT09IiAiKSYmKHQucHJldmVudERlZmF1bHQoKSx1bCgpKX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih0KXt2YXIgbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtZHJvcGRvd24iKTtpZighKCFufHxuLmNsYXNzTGlzdC5jb250YWlucygiaGlkZGVuIikpJiYhdC50YXJnZXQuY2xvc2VzdCgiLmJsYW5rLWNoYXQtY3dkLXdyYXAiKSl7bi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtYXJyb3ciKTtpJiYoaS50ZXh0Q29udGVudD0iXHUyNUJDIil9fSkpfWZ1bmN0aW9uIHVsKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQtY3dkLWRyb3Bkb3duIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtYXJyb3ciKTtpZihlKXt2YXIgbj1lLmNsYXNzTGlzdC5jb250YWlucygiaGlkZGVuIik7bj8oeG0oZSksZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSx0JiYodC50ZXh0Q29udGVudD0iXHUyNUIyIikpOihlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLHQmJih0LnRleHRDb250ZW50PSJcdTI1QkMiKSl9fWZ1bmN0aW9uIHhtKGUpe3ZhciB0PXRuKCk7ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWxvYWRpbmciPlx1NTJBMFx1OEY3RFx1NEUyRC4uLjwvZGl2PicsbmEoZnVuY3Rpb24obil7dmFyIGk9IiIsYT1yLndvcmtpbmdEaXJ8fHQ7aWYoaSs9JzxkaXYgY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWl0ZW0nKyhhPT09dD8iIGFjdGl2ZSI6IiIpKyciIGRhdGEtcGF0aD0iJytwKHQpKyciPjxzcGFuIGNsYXNzPSJibGFuay1jaGF0LWN3ZC1pdGVtLWxhYmVsIj5cdTlFRDhcdThCQTQ8L3NwYW4+PHNwYW4gY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWl0ZW0tcGF0aCI+JytwKHQpKyI8L3NwYW4+PC9kaXY+IixuLmxlbmd0aCl7dmFyIHU9e307dVt0XT0hMCxuLmZvckVhY2goZnVuY3Rpb24ocyl7dVtzLnBhdGhdfHwodVtzLnBhdGhdPSEwLGkrPSc8ZGl2IGNsYXNzPSJibGFuay1jaGF0LWN3ZC1pdGVtJysoYT09PXMucGF0aD8iIGFjdGl2ZSI6IiIpKyciIGRhdGEtcGF0aD0iJytwKHMucGF0aCkrJyI+PHNwYW4gY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWl0ZW0tcGF0aCI+JytwKHMucGF0aCkrIjwvc3Bhbj48L2Rpdj4iKX0pfWUuaW5uZXJIVE1MPWksZS5xdWVyeVNlbGVjdG9yQWxsKCIuYmxhbmstY2hhdC1jd2QtaXRlbSIpLmZvckVhY2goZnVuY3Rpb24ocyl7cy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24obyl7by5zdG9wUHJvcGFnYXRpb24oKTt2YXIgbD1zLmRhdGFzZXQucGF0aDtyLndvcmtpbmdEaXI9bDt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtd29ya2luZy1kaXIiLGwpfWNhdGNoe312YXIgYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtcGF0aCIpO2MmJihjLnRleHRDb250ZW50PWwpLGUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIik7dmFyIGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQtY3dkLWFycm93Iik7ZiYmKGYudGV4dENvbnRlbnQ9Ilx1MjVCQyIpO3ZhciBkPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb2xkZXItcGlja2VyLWlucHV0Iik7ZCYmKGQudmFsdWU9bCl9KX0pfSl9ZnVuY3Rpb24gU20oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVjZW50LXBhdGhzLWJ1YmJsZXMiKTtlJiZuYShmdW5jdGlvbih0KXtpZighdC5sZW5ndGgpe2UuaW5uZXJIVE1MPSIiO3JldHVybn1lLmlubmVySFRNTD10Lm1hcChmdW5jdGlvbihuKXtyZXR1cm4nPGJ1dHRvbiBjbGFzcz0icmVjZW50LXBhdGgtYnViYmxlIiBkYXRhLXBhdGg9IicrcChuLnBhdGgpKyciIHRpdGxlPSInK3Aobi5wYXRoKSsnIj4nK3Aobi5uYW1lKSsiPC9idXR0b24+In0pLmpvaW4oIiIpLGUucXVlcnlTZWxlY3RvckFsbCgiLnJlY2VudC1wYXRoLWJ1YmJsZSIpLmZvckVhY2goZnVuY3Rpb24obil7bi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3dkIik7aSYmKGkudmFsdWU9bi5kYXRhc2V0LnBhdGh8fCIiLHIuY3dkVmFsdWU9bi5kYXRhc2V0LnBhdGh8fCIiKX0pfSl9KX1mdW5jdGlvbiBzbCgpe3Iuc3VnZ2VzdGlvblRpbWVyJiZjbGVhclRpbWVvdXQoci5zdWdnZXN0aW9uVGltZXIpLHIuc3VnZ2VzdGlvblRpbWVyPXNldFRpbWVvdXQoSW0sMTIwKX1mdW5jdGlvbiBJbSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLW1vZGFsIik7aWYoZSYmZS5jbGFzc0xpc3QuY29udGFpbnMoImhpZGRlbiIpKXtucigpO3JldHVybn12YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3dkIik7dCYmZmV0Y2goIi9hcGkvcGF0aC1zdWdnZXN0aW9ucz9xPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQudmFsdWUudHJpbSgpKSx7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIG4uanNvbigpfSkudGhlbihUbSkuY2F0Y2gobnIpfWZ1bmN0aW9uIFRtKGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2Qtc3VnZ2VzdGlvbnMiKTtpZighdHx8IWUubGVuZ3RoKXtucigpO3JldHVybn10LmlubmVySFRNTD1lLm1hcChmdW5jdGlvbihuKXtyZXR1cm4nPGJ1dHRvbiBjbGFzcz0ic3VnZ2VzdGlvbi1pdGVtIiBkYXRhLXBhdGg9IicrcChuLnBhdGgpKyciPjxzdHJvbmc+JytwKG4ubmFtZSkrIjwvc3Ryb25nPjxzbWFsbD4iK3Aobi5wYXRoKSsiPC9zbWFsbD48L2J1dHRvbj4ifSkuam9pbigiIiksdC5xdWVyeVNlbGVjdG9yQWxsKCIuc3VnZ2VzdGlvbi1pdGVtIikuZm9yRWFjaChmdW5jdGlvbihuKXtuLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2QiKS52YWx1ZT1uLmRhdGFzZXQucGF0aHx8IiIsci5jd2RWYWx1ZT1uLmRhdGFzZXQucGF0aHx8IiIsbnIoKX0pfSksdC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX1mdW5jdGlvbiBucigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2Qtc3VnZ2VzdGlvbnMiKTtlJiYoZS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxlLmlubmVySFRNTD0iIil9ZnVuY3Rpb24gTG0oZSl7aWYoIWUuaXNDb21wb3Npbmcpe2lmKEpzKGUpKXtCYShlKTtyZXR1cm59aWYoZS5rZXk9PT0iRW50ZXIiKXtpZihlLnNoaWZ0S2V5KXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO2lmKHQpe3ZhciBuPXQuc2VsZWN0aW9uU3RhcnR8fDAsaT10LnZhbHVlLGE9aS5zbGljZSgwLG4pK2AKYCtpLnNsaWNlKG4pO3QudmFsdWU9YSx0LnNlbGVjdGlvblN0YXJ0PW4rMSx0LnNlbGVjdGlvbkVuZD1uKzEsY3QoYSwhMCksSHQodCl9cmV0dXJufWUucHJldmVudERlZmF1bHQoKTt2YXIgdT0hIShlLm1ldGFLZXl8fGUuY3RybEtleSk7X3ModT97aW50ZXJydXB0OiEwfTp2b2lkIDApO3JldHVybn1pZihlLmtleT09PSJCYWNrc3BhY2UiKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIG09ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO20mJmN0KG0udmFsdWUsITApfSwwKTtyZXR1cm59aWYoZS5rZXk9PT0iVGFiIil7ZS5wcmV2ZW50RGVmYXVsdCgpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtpZih0KXt2YXIgbj10LnNlbGVjdGlvblN0YXJ0fHwwLGk9dC52YWx1ZSxhPWkuc2xpY2UoMCxuKSsiCSIraS5zbGljZShuKTt0LnZhbHVlPWEsY3QoYSwhMCl9cmV0dXJufWlmKGUua2V5PT09IkVzY2FwZSIpe2UucHJldmVudERlZmF1bHQoKTt2YXIgcz1ndCgpO2FlKHMpP3MmJnMuc3RydWN0dXJlZFN0YXRlJiZzLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCYmRGEoKTpidChEcigiZXNjYXBlIiksImVzY2FwZSIpO3JldHVybn1pZigoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09ImMiKXt2YXIgbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94IiksbD1vJiZvLnNlbGVjdGlvblN0YXJ0IT09by5zZWxlY3Rpb25FbmR8fHBpKCk7aWYobClyZXR1cm47dmFyIGM9Z3QoKTtpZihhZShjKSl7ZS5wcmV2ZW50RGVmYXVsdCgpLGMmJmMuc3RydWN0dXJlZFN0YXRlJiZjLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCYmRGEoKTtyZXR1cm59ZS5wcmV2ZW50RGVmYXVsdCgpLGJ0KERyKCJjdHJsX2MiKSwiY3RybF9jIik7cmV0dXJufWlmKChlLm1ldGFLZXl8fGUuY3RybEtleSkmJmUua2V5LnRvTG93ZXJDYXNlKCk9PT0iZCIpe3ZhciBmPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKSxkPWYmJmYuc2VsZWN0aW9uU3RhcnQhPT1mLnNlbGVjdGlvbkVuZHx8cGkoKTtpZihkKXJldHVybjt2YXIgdj1ndCgpO2lmKGFlKHYpKXtlLnByZXZlbnREZWZhdWx0KCk7cmV0dXJufWUucHJldmVudERlZmF1bHQoKSxidChEcigiY3RybF9kIiksImN0cmxfZCIpO3JldHVybn1pZigoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09ImwiKXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIGc9Z3QoKTtpZihhZShnKSlyZXR1cm47YnQoRHIoImN0cmxfbCIpLCJjdHJsX2wiKTtyZXR1cm59aWYoISgoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09ImEiKSYmISgoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09InYiKSl7aWYoKGUubWV0YUtleXx8ZS5jdHJsS2V5KSYmZS5rZXkudG9Mb3dlckNhc2UoKT09PSJ4Iil7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpLGg9dCYmdC5zZWxlY3Rpb25TdGFydCE9PXQuc2VsZWN0aW9uRW5kO2lmKGgpcmV0dXJuO2UucHJldmVudERlZmF1bHQoKSxidCgiGCIsImN0cmxfeCIpO3JldHVybn1lLmtleS5sZW5ndGg9PT0xJiYhZS5jdHJsS2V5JiYhZS5tZXRhS2V5JiYhZS5hbHRLZXkmJnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgbT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7bSYmY3QobS52YWx1ZSl9LDApfX19dmFyIE1tPTEwKjEwMjQqMTAyNDtmdW5jdGlvbiBPbShlKXtyZXR1cm4gZTwxMDI0P2UrIiBCIjplPDEwMjQqMTAyND8oZS8xMDI0KS50b0ZpeGVkKDEpKyIgS0IiOihlLygxMDI0KjEwMjQpKS50b0ZpeGVkKDEpKyIgTUIifWZ1bmN0aW9uIFBtKGUpe3JldHVybi9eaW1hZ2VcLyhwbmd8anBlP2d8Z2lmfHdlYnB8Ym1wfHN2Z1wreG1sKS8udGVzdChlKX1mdW5jdGlvbiBYYShlKXtpZihlKXtpZihlLnNpemU+TW0pe2soIlx1NjU4N1x1NEVGNlx1OEZDN1x1NTkyN1x1RkYwOFx1NEUwQVx1OTY1MCAxMCBNQlx1RkYwOTogIitlLm5hbWUsImVycm9yIik7cmV0dXJufXZhciB0PXtmaWxlOmUsbmFtZTplLm5hbWUsc2l6ZTplLnNpemUscHJldmlld1VybDpudWxsfTtQbShlLnR5cGUpJiYodC5wcmV2aWV3VXJsPVVSTC5jcmVhdGVPYmplY3RVUkwoZSkpLHIucGVuZGluZ0F0dGFjaG1lbnRzLnB1c2godCksWmEoKX19ZnVuY3Rpb24gcW0oZSl7dmFyIHQ9ci5wZW5kaW5nQXR0YWNobWVudHMuc3BsaWNlKGUsMSk7dC5sZW5ndGgmJnRbMF0ucHJldmlld1VybCYmVVJMLnJldm9rZU9iamVjdFVSTCh0WzBdLnByZXZpZXdVcmwpLFphKCl9ZnVuY3Rpb24gSG0oKXtyLnBlbmRpbmdBdHRhY2htZW50cy5mb3JFYWNoKGZ1bmN0aW9uKGUpe2UucHJldmlld1VybCYmVVJMLnJldm9rZU9iamVjdFVSTChlLnByZXZpZXdVcmwpfSksci5wZW5kaW5nQXR0YWNobWVudHM9W10sWmEoKX1mdW5jdGlvbiBaYSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdHRhY2htZW50LXByZXZpZXciKTtpZihlKXt2YXIgdD1yLnBlbmRpbmdBdHRhY2htZW50cztpZih0Lmxlbmd0aD09PTApe2UuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksZS5pbm5lckhUTUw9IiI7cmV0dXJufWUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik7Zm9yKHZhciBuPSIiLGk9MDtpPHQubGVuZ3RoO2krKyl7dmFyIGE9dFtpXSx1PWEucHJldmlld1VybD8nPGltZyBzcmM9IicrcChhLnByZXZpZXdVcmwpKyciIGFsdD0iIj4nOic8c3BhbiBjbGFzcz0iYXR0LWljb24iPicrRygiZmlsZSIse3NpemU6MTMsc3Ryb2tlV2lkdGg6MS43fSkrIjwvc3Bhbj4iO24rPSc8c3BhbiBjbGFzcz0iYXR0YWNobWVudC1waWxsIiBkYXRhLWluZGV4PSInK2krJyI+Jyt1Kyc8c3BhbiBjbGFzcz0iYXR0LW5hbWUiIHRpdGxlPSInK3AoYS5uYW1lKSsnIj4nK3AoYS5uYW1lKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJhdHQtc2l6ZSI+JytPbShhLnNpemUpKyc8L3NwYW4+PGJ1dHRvbiBjbGFzcz0iYXR0LXJlbW92ZSIgZGF0YS1pbmRleD0iJytpKyciIHRpdGxlPSJcdTc5RkJcdTk2NjQiPlx4RDc8L2J1dHRvbj48L3NwYW4+J31lLmlubmVySFRNTD1uLGUucXVlcnlTZWxlY3RvckFsbCgiLmF0dC1yZW1vdmUiKS5mb3JFYWNoKGZ1bmN0aW9uKHMpe3MuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKG8pe28ucHJldmVudERlZmF1bHQoKSxvLnN0b3BQcm9wYWdhdGlvbigpLHFtKHBhcnNlSW50KHMuZ2V0QXR0cmlidXRlKCJkYXRhLWluZGV4IiksMTApKX0pfSl9fWZ1bmN0aW9uIF9tKGUpe2lmKCFyLnBlbmRpbmdBdHRhY2htZW50cy5sZW5ndGgpcmV0dXJuIFByb21pc2UucmVzb2x2ZShbXSk7dmFyIHQ9bmV3IEZvcm1EYXRhO3JldHVybiByLnBlbmRpbmdBdHRhY2htZW50cy5mb3JFYWNoKGZ1bmN0aW9uKG4pe3QuYXBwZW5kKCJmaWxlcyIsbi5maWxlLG4ubmFtZSl9KSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChlKSsiL3VwbG9hZCIse21ldGhvZDoiUE9TVCIsYm9keTp0LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLm9rP24uanNvbigpOm4uanNvbigpLnRoZW4oZnVuY3Rpb24oaSl7dGhyb3cgbmV3IEVycm9yKGkuZXJyb3J8fCJcdTRFMEFcdTRGMjBcdTU5MzFcdThEMjUiKX0pfSkudGhlbihmdW5jdGlvbihuKXtyZXR1cm4gbi5maWxlc3x8W119KX1mdW5jdGlvbiBObShlKXtpZighZXx8IWUubGVuZ3RoKXJldHVybiIiO3ZhciB0PWUubWFwKGZ1bmN0aW9uKG4pe3JldHVybiBuLnNhdmVkUGF0aH0pO3JldHVybmBbXHU5NjQ0XHU0RUY2XHU1REYyXHU0RTBBXHU0RjIwXHVGRjBDXHU4QkY3XHU2N0U1XHU3NzBCXHU0RUU1XHU0RTBCXHU2NTg3XHU0RUY2OgpgK3Quam9pbihgCmApK2BdCgpgfWZ1bmN0aW9uIG9sKGUpe2lmKCFyLnRlcm1pbmFsSW50ZXJhY3RpdmV8fCFlKXJldHVybiExO3ZhciB0PWUudmFsdWV8fCIiO3JldHVybiB0PyhidCh0LCJpbnRlcmFjdGl2ZV90ZXh0IikuY2F0Y2goZnVuY3Rpb24oKXt9KSxlLnZhbHVlPSIiLEh0KGUpLGN0KCIiLCEwKSwhMCk6ITF9ZnVuY3Rpb24gam0oZSl7dmFyIHQ9ZS5jbGlwYm9hcmREYXRhJiZlLmNsaXBib2FyZERhdGEuaXRlbXM7aWYodCYmIXIudGVybWluYWxJbnRlcmFjdGl2ZSl7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspaWYodFtuXS50eXBlLmluZGV4T2YoImltYWdlLyIpPT09MCl7ZS5wcmV2ZW50RGVmYXVsdCgpO3ZhciBpPXRbbl0uZ2V0QXNGaWxlKCk7aSYmWGEoaSk7cmV0dXJufX12YXIgYT1lLmNsaXBib2FyZERhdGEmJmUuY2xpcGJvYXJkRGF0YS5nZXREYXRhKCJ0ZXh0Iik7aWYoYSl7aWYoZS5wcmV2ZW50RGVmYXVsdCgpLHIudGVybWluYWxJbnRlcmFjdGl2ZSl7YnQoYSwicGFzdGUiKS5jYXRjaChmdW5jdGlvbigpe30pO3JldHVybn12YXIgdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7aWYodSl7dmFyIHM9dS5zZWxlY3Rpb25TdGFydHx8MCxvPXUuc2VsZWN0aW9uRW5kfHwwLGw9dS52YWx1ZSxjPWwuc2xpY2UoMCxzKSthK2wuc2xpY2Uobyk7dS52YWx1ZT1jLGN0KGMpfX19ZnVuY3Rpb24geGcoZSl7YnQoZSksY3QoUm0oKStlKX1mdW5jdGlvbiBSbSgpe2lmKHIuc2VsZWN0ZWRJZCl7aWYoci5kcmFmdHNbci5zZWxlY3RlZElkXSE9PXZvaWQgMClyZXR1cm4gci5kcmFmdHNbci5zZWxlY3RlZElkXTt0cnl7dmFyIGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtZHJhZnQtIityLnNlbGVjdGVkSWQpO2lmKGUpcmV0dXJuIGV9Y2F0Y2h7fX1yZXR1cm4iIn1mdW5jdGlvbiBjdChlLHQpe2lmKHIuc2VsZWN0ZWRJZCl7ci5kcmFmdHNbci5zZWxlY3RlZElkXT1lO3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1kcmFmdC0iK3Iuc2VsZWN0ZWRJZCxlKX1jYXRjaHt9aWYoIXQpe3ZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtuJiYobi52YWx1ZT1lKX19fXZhciBldT0hMTtmdW5jdGlvbiBXbSgpe2lmKCFldSl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInByb21wdC1vcHRpbWl6ZS1idG4iKSxuPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1jb21wb3NlciIpO2lmKGUpe3ZhciBpPShlLnZhbHVlfHwiIikudHJpbSgpO2lmKCFpKXt0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmaygiXHU4QkY3XHU1MTQ4XHU4RjkzXHU1MTY1XHU4OTgxXHU0RjE4XHU1MzE2XHU3Njg0XHU1MTg1XHU1QkI5XHUzMDAyIiwiaW5mbyIpLGUuZm9jdXMoKTtyZXR1cm59ZXU9ITAsdCYmKHQuY2xhc3NMaXN0LmFkZCgiaXMtbG9hZGluZyIpLHQuZGlzYWJsZWQ9ITAsdC5zZXRBdHRyaWJ1dGUoInRpdGxlIiwiXHU2QjYzXHU1NzI4XHU0RjE4XHU1MzE2XHUyMDI2IikpLG4mJm4uY2xhc3NMaXN0LmFkZCgiaXMtb3B0aW1pemluZyIpLGUuc2V0QXR0cmlidXRlKCJhcmlhLWJ1c3kiLCJ0cnVlIik7dmFyIGE9ZS5yZWFkT25seTtlLnJlYWRPbmx5PSEwO3ZhciB1PXt0ZXh0Oml9O3ImJnIuc2VsZWN0ZWRJZCYmKHUuc2Vzc2lvbklkPXIuc2VsZWN0ZWRJZCksZmV0Y2goIi9hcGkvb3B0aW1pemUtcHJvbXB0Iix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeSh1KX0pLnRoZW4oZnVuY3Rpb24ocyl7cmV0dXJuIHMuanNvbigpLnRoZW4oZnVuY3Rpb24obyl7cmV0dXJue29rOnMub2ssZGF0YTpvfX0pfSkudGhlbihmdW5jdGlvbihzKXtpZighcy5vayl0aHJvdyBuZXcgRXJyb3Iocy5kYXRhJiZzLmRhdGEuZXJyb3J8fCJcdTYzRDBcdTc5M0FcdThCQ0RcdTRGMThcdTUzMTZcdTU5MzFcdThEMjVcdTMwMDIiKTt2YXIgbz1zLmRhdGEmJnMuZGF0YS5vcHRpbWl6ZWR8fCIiO2lmKCFvKXRocm93IG5ldyBFcnJvcigiQ2xhdWRlIFx1OEZENFx1NTZERVx1NEUzQVx1N0E3QVx1MzAwMiIpO3ptKGUsbyl9KS5jYXRjaChmdW5jdGlvbihzKXt0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmayhzJiZzLm1lc3NhZ2V8fCJcdTYzRDBcdTc5M0FcdThCQ0RcdTRGMThcdTUzMTZcdTU5MzFcdThEMjVcdTMwMDIiLCJlcnJvciIpLHQmJih0LmNsYXNzTGlzdC5yZW1vdmUoImlzLWxvYWRpbmciKSx0LmNsYXNzTGlzdC5hZGQoImlzLXNoYWtlIiksc2V0VGltZW91dChmdW5jdGlvbigpe3QmJnQuY2xhc3NMaXN0LnJlbW92ZSgiaXMtc2hha2UiKX0sNDAwKSl9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ZXU9ITEsdCYmKHQuY2xhc3NMaXN0LnJlbW92ZSgiaXMtbG9hZGluZyIpLHQuZGlzYWJsZWQ9ITEsdC5zZXRBdHRyaWJ1dGUoInRpdGxlIiwiXHU2M0QwXHU3OTNBXHU4QkNEXHU0RjE4XHU1MzE2XHVGRjA4QUlcdUZGMDkiKSksbiYmbi5jbGFzc0xpc3QucmVtb3ZlKCJpcy1vcHRpbWl6aW5nIiksZS5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtYnVzeSIpLGUucmVhZE9ubHk9YX0pfX19ZnVuY3Rpb24gem0oZSx0KXtpZighZSlyZXR1cm47dmFyIG49QXJyYXkuZnJvbSh0KSxpPW4ubGVuZ3RoO2lmKGk9PT0wKXtlLnZhbHVlPSIiLGN0KCIiLCEwKSxIdChlKTtyZXR1cm59dmFyIGE9TWF0aC5taW4oNzAwLE1hdGgubWF4KDIyMCxpKjgpKSx1PU1hdGgubWluKGksNjApLHM9TWF0aC5jZWlsKGkvdSksbz1hL3UsbD0wO2UudmFsdWU9IiIsSHQoZSk7ZnVuY3Rpb24gYygpe2lmKGw9TWF0aC5taW4oaSxsK3MpLGUudmFsdWU9bi5zbGljZSgwLGwpLmpvaW4oIiIpLEh0KGUpLGw8aSlzZXRUaW1lb3V0KGMsbyk7ZWxzZXtjdCh0LCEwKTt0cnl7ZS5zZXRTZWxlY3Rpb25SYW5nZSh0Lmxlbmd0aCx0Lmxlbmd0aCl9Y2F0Y2h7fX19YygpfWZ1bmN0aW9uIHhpKGUpe3ZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1jb21wb3NlciIpO2lmKHQpe3ZhciBuPWV8fGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKSxpPSEhKG4mJm4udmFsdWUmJm4udmFsdWUubGVuZ3RoPjApO3QuY2xhc3NMaXN0LnRvZ2dsZSgiaGFzLXRleHQiLGkpfX1yLl9zdGF0dXNCYXJUaW1lcklkPW51bGwsci5fc3RhdHVzQmFyU3RhcnRUaW1lPTA7dmFyIEhyPW51bGwsU2k9MDtmdW5jdGlvbiB0dShlKXtpZighZSlyZXR1cm57YWN0aXZlOiExfTtpZihlLmFyY2hpdmVkKXJldHVybnthY3RpdmU6ITF9O3ZhciB0PSEhZS5wZXJtaXNzaW9uQmxvY2tlZCxuPSEhKGFlKGUpJiZlLnN0cnVjdHVyZWRTdGF0ZSYmZS5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQpLGk9IWFlKGUpJiZlLnN0YXR1cz09PSJydW5uaW5nIjtyZXR1cm57YWN0aXZlOm58fGl8fHQsaW5GbGlnaHQ6bixwdHlSdW5uaW5nOmkscGVybWlzc2lvbkJsb2NrZWQ6dH19ZnVuY3Rpb24gVW0oZSl7dmFyIHQ9TWF0aC5tYXgoMCxNYXRoLmZsb29yKGUvMWUzKSk7aWYodDw2MClyZXR1cm4gdCsicyI7dmFyIG49TWF0aC5mbG9vcih0LzYwKSxpPXQlNjA7aWYobjw2MClyZXR1cm4gbisibSIrKGk/IiAiK2krInMiOiIiKTt2YXIgYT1NYXRoLmZsb29yKG4vNjApLHU9biU2MDtyZXR1cm4gYSsiaCIrKHU/IiAiK3UrIm0iOiIiKX1mdW5jdGlvbiBudShlKXt2YXIgdD10dShlKSxuPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5tYWluLWhlYWRlci1yb3ciKSxpPW4/bi5xdWVyeVNlbGVjdG9yKCIuc2Vzc2lvbi1zdGF0dXMtcGlsbCIpOm51bGwsYT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlcyIpO2lmKG4mJihuLmNsYXNzTGlzdC50b2dnbGUoImlzLXJ1bm5pbmciLHQuYWN0aXZlKSxuLmNsYXNzTGlzdC50b2dnbGUoImlzLXBlcm1pc3Npb24tYmxvY2tlZCIsdC5wZXJtaXNzaW9uQmxvY2tlZCkpLGkpe3ZhciB1PWkucXVlcnlTZWxlY3RvcigiLnNlc3Npb24tc3RhdHVzLWVsYXBzZWQiKTtpZih0LmluRmxpZ2h0KXtTaXx8KFNpPXIuX3N0YXR1c0JhclN0YXJ0VGltZT4wP3IuX3N0YXR1c0JhclN0YXJ0VGltZTpEYXRlLm5vdygpKTt2YXIgcz1VbShEYXRlLm5vdygpLVNpKTt1fHwodT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdS5jbGFzc05hbWU9InNlc3Npb24tc3RhdHVzLWVsYXBzZWQiLGkuYXBwZW5kQ2hpbGQodSkpLHUudGV4dENvbnRlbnQ9c31lbHNlIFNpPTAsdSYmdS5yZW1vdmUoKX10LmFjdGl2ZT9Icnx8KEhyPXNldEludGVydmFsKGZ1bmN0aW9uKCl7dmFyIG89ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGwpe3JldHVybiBsLmlkPT09ci5zZWxlY3RlZElkfSk7bnUobyl9LDFlMykpOkhyJiYoY2xlYXJJbnRlcnZhbChIciksSHI9bnVsbCl9ZnVuY3Rpb24gcnUoZSx0KXtudSh0KTt2YXIgbj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuY29tcG9zZXItdG9wLXJvdyIpLGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnN0cnVjdHVyZWQtc3RhdHVzLWJhciIpLGE9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LWNvbXBvc2VyIik7aWYoIXR8fCFhZSh0KSl7aSYmaS5yZW1vdmUoKSxhJiZhLmNsYXNzTGlzdC5yZW1vdmUoImluLWZsaWdodCIpLGNsZWFySW50ZXJ2YWwoci5fc3RhdHVzQmFyVGltZXJJZCksci5fc3RhdHVzQmFyVGltZXJJZD1udWxsO3JldHVybn12YXIgdT10LnN0cnVjdHVyZWRTdGF0ZSYmdC5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQ7aWYodSl7aWYoci5fc3RhdHVzQmFyVGltZXJJZHx8KHIuX3N0YXR1c0JhclN0YXJ0VGltZT1EYXRlLm5vdygpKSxhJiZhLmNsYXNzTGlzdC5hZGQoImluLWZsaWdodCIpLCFpJiZuKXt2YXIgcz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtzLmNsYXNzTmFtZT0ic3RydWN0dXJlZC1zdGF0dXMtYmFyIixzLmlubmVySFRNTD0nPHNwYW4gY2xhc3M9InN0YXR1cy1iYXItZG90Ij48L3NwYW4+PHNwYW4gY2xhc3M9InN0YXR1cy1iYXItbGFiZWwiPlx1NTZERVx1NTkwRFx1NEUyRDwvc3Bhbj48c3BhbiBjbGFzcz0ic3RhdHVzLWJhci10aW1lciI+MC4wczwvc3Bhbj4nLG4uYXBwZW5kQ2hpbGQocyksaT1zfWVsc2UgaWYoaSYmaS5jbGFzc0xpc3QuY29udGFpbnMoImNvbXBsZXRlZCIpKXtpLmNsYXNzTGlzdC5yZW1vdmUoImNvbXBsZXRlZCIpLGkuc3R5bGUuYW5pbWF0aW9uPSJub25lIixpLnF1ZXJ5U2VsZWN0b3IoIi5zdGF0dXMtYmFyLWxhYmVsIikudGV4dENvbnRlbnQ9Ilx1NTZERVx1NTkwRFx1NEUyRCI7dmFyIG89aS5xdWVyeVNlbGVjdG9yKCIuc3RhdHVzLWJhci1kb3QiKTtvJiYoby5zdHlsZS5kaXNwbGF5PSIiKSxyLl9zdGF0dXNCYXJTdGFydFRpbWU9RGF0ZS5ub3coKX1yLl9zdGF0dXNCYXJUaW1lcklkfHwoci5fc3RhdHVzQmFyVGltZXJJZD1zZXRJbnRlcnZhbChmdW5jdGlvbigpe3ZhciBjPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXI6bm90KC5jb21wbGV0ZWQpIik7aWYoIWMpe2NsZWFySW50ZXJ2YWwoci5fc3RhdHVzQmFyVGltZXJJZCksci5fc3RhdHVzQmFyVGltZXJJZD1udWxsO3JldHVybn12YXIgZj0oKERhdGUubm93KCktci5fc3RhdHVzQmFyU3RhcnRUaW1lKS8xZTMpLnRvRml4ZWQoMSksZD1jLnF1ZXJ5U2VsZWN0b3IoIi5zdGF0dXMtYmFyLXRpbWVyIik7ZCYmKGQudGV4dENvbnRlbnQ9ZisicyIpfSwxMDApKX1lbHNlIGlmKGNsZWFySW50ZXJ2YWwoci5fc3RhdHVzQmFyVGltZXJJZCksci5fc3RhdHVzQmFyVGltZXJJZD1udWxsLGEmJmEuY2xhc3NMaXN0LnJlbW92ZSgiaW4tZmxpZ2h0IiksaSYmIWkuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21wbGV0ZWQiKSl7dmFyIGw9ci5fc3RhdHVzQmFyU3RhcnRUaW1lPygoRGF0ZS5ub3coKS1yLl9zdGF0dXNCYXJTdGFydFRpbWUpLzFlMykudG9GaXhlZCgxKToiMC4wIjtpLmNsYXNzTGlzdC5hZGQoImNvbXBsZXRlZCIpLGkucXVlcnlTZWxlY3RvcigiLnN0YXR1cy1iYXItbGFiZWwiKS50ZXh0Q29udGVudD0iXHU1QjhDXHU2MjEwIixpLnF1ZXJ5U2VsZWN0b3IoIi5zdGF0dXMtYmFyLXRpbWVyIikudGV4dENvbnRlbnQ9bCsicyI7dmFyIG89aS5xdWVyeVNlbGVjdG9yKCIuc3RhdHVzLWJhci1kb3QiKTtvJiYoby5zdHlsZS5kaXNwbGF5PSJub25lIiksci5fc3RhdHVzQmFyU3RhcnRUaW1lPTAsc2V0VGltZW91dChmdW5jdGlvbigpe2kucGFyZW50Tm9kZSYmaS5yZW1vdmUoKX0sM2UzKX19ZnVuY3Rpb24gcChlKXtyZXR1cm4gU3RyaW5nKGUpLnJlcGxhY2UoLyYvZywiJmFtcDsiKS5yZXBsYWNlKC88L2csIiZsdDsiKS5yZXBsYWNlKC8+L2csIiZndDsiKS5yZXBsYWNlKC8iL2csIiZxdW90OyIpLnJlcGxhY2UoLycvZywiJiMzOTsiKX12YXIgVm09L1wuKHBuZ3xqcGU/Z3xnaWZ8d2VicHxzdmd8YXZpZnxibXB8aWNvfGhlaWN8aGVpZikkL2k7ZnVuY3Rpb24gaXUoZSl7aWYodHlwZW9mIGUhPSJzdHJpbmciKXJldHVybiExO3ZhciB0PWUudHJpbSgpLnNwbGl0KC9bPyNdLylbMF07cmV0dXJuIFZtLnRlc3QodCl9ZnVuY3Rpb24gSWkoZSl7aWYoZSl7dmFyIHQ9ZnVuY3Rpb24oKXt0cnl7ZS5zY3JvbGxXaWR0aD5lLmNsaWVudFdpZHRoJiYoZS5zY3JvbGxMZWZ0PWUuc2Nyb2xsV2lkdGgpfWNhdGNoe319O3QoKSx0eXBlb2YgcmVxdWVzdEFuaW1hdGlvbkZyYW1lPT0iZnVuY3Rpb24iJiZyZXF1ZXN0QW5pbWF0aW9uRnJhbWUodCl9fWZ1bmN0aW9uIEttKGUpe2lmKGUpe3ZhciB0PWZ1bmN0aW9uKCl7dHJ5e2lmKHR5cGVvZiBlLnNldFNlbGVjdGlvblJhbmdlPT0iZnVuY3Rpb24iJiZlLnZhbHVlIT1udWxsKXt2YXIgbj1lLnZhbHVlLmxlbmd0aDt0cnl7ZS5zZXRTZWxlY3Rpb25SYW5nZShuLG4pfWNhdGNoe319ZS5zY3JvbGxXaWR0aD5lLmNsaWVudFdpZHRoJiYoZS5zY3JvbGxMZWZ0PWUuc2Nyb2xsV2lkdGgpfWNhdGNoe319O3QoKSx0eXBlb2YgcmVxdWVzdEFuaW1hdGlvbkZyYW1lPT0iZnVuY3Rpb24iJiZyZXF1ZXN0QW5pbWF0aW9uRnJhbWUodCl9fShmdW5jdGlvbigpe3RyeXt2YXIgZT1uYXZpZ2F0b3ImJm5hdmlnYXRvci51c2VyQWdlbnR8fCIiOy9XYW5kQXBwXC8vLnRlc3QoZSkmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QuYWRkKCJpcy13YW5kLWFwcCIpLC9XYW5kUGxhdGZvcm1cL2lPUy8udGVzdChlKSYmZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoImlzLXdhbmQtaW9zIil9Y2F0Y2h7fXRyeXt3aW5kb3cuX193YW5kTmF0aXZlQmFja0hvb2tlZD0hMH1jYXRjaHt9fSkoKX0pKCk7Cg=="),
9
- stylesCss: decode("OnJvb3R7LS1iZy1wcmltYXJ5OiAjZjZmMWU4Oy0tYmctc2Vjb25kYXJ5OiByZ2JhKDI1NSwgMjUxLCAyNDUsIC45Mik7LS1iZy10ZXJ0aWFyeTogI2YwZTVkNzstLWJnLWVsZXZhdGVkOiAjZmZmYWYyOy0tYmctc3VyZmFjZTogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNik7LS1iZy10ZXJtaW5hbDogIzFmMWIxNzstLWJnLW92ZXJsYXk6IHJnYmEoNDIsIDI4LCAxOCwgLjQpOy0tYm9yZGVyLXN1YnRsZTogcmdiYSgxNTAsIDExOCwgODUsIC4xMik7LS1ib3JkZXItZGVmYXVsdDogcmdiYSgxMjUsIDkxLCA1NywgLjI1KTstLWJvcmRlci1zdHJvbmc6IHJnYmEoMTI1LCA5MSwgNTcsIC40KTstLWJvcmRlcjogdmFyKC0tYm9yZGVyLWRlZmF1bHQpOy0tYm9yZGVyLWZvY3VzOiByZ2JhKDE5NywgMTAxLCA2MSwgLjUpOy0tdGV4dC1wcmltYXJ5OiAjMmExZjE2Oy0tdGV4dC1zZWNvbmRhcnk6ICM1YTQ1MzU7LS10ZXh0LXRlcnRpYXJ5OiAjN2E2MzUwOy0tdGV4dC1tdXRlZDogIzhjNzM1ZjstLXRleHQtaW52ZXJzZTogI2ZmZmZmZjstLXRleHQtbGluazogI2M1NjUzZDstLWFjY2VudDogI2M1NjUzZDstLWFjY2VudC1ob3ZlcjogI2Q0NzU1MDstLWFjY2VudC1hY3RpdmU6ICNhZjUzMzA7LS1hY2NlbnQtc29mdDogI2U4YzVhZTstLWFjY2VudC1tdXRlZDogcmdiYSgxOTcsIDEwMSwgNjEsIC4xMik7LS1hY2NlbnQtZ2xvdzogcmdiYSgxOTcsIDEwMSwgNjEsIC4yNSk7LS1zdWNjZXNzOiAjNGY3YTU4Oy0tc3VjY2Vzcy1ob3ZlcjogIzVhOGY2NjstLXN1Y2Nlc3MtbXV0ZWQ6IHJnYmEoNzksIDEyMiwgODgsIC4xNCk7LS1zdWNjZXNzLWdsb3c6IHJnYmEoNzksIDEyMiwgODgsIC4zKTstLXdhcm5pbmc6ICNhOTZhMmY7LS13YXJuaW5nLWhvdmVyOiAjYzA3YTM1Oy0td2FybmluZy1tdXRlZDogcmdiYSgxNjksIDEwNiwgNDcsIC4xNCk7LS13YXJuaW5nLWdsb3c6IHJnYmEoMTY5LCAxMDYsIDQ3LCAuMjUpOy0tZGFuZ2VyOiAjYjI0ZjQ1Oy0tZGFuZ2VyLWhvdmVyOiAjYzk2MDU1Oy0tZGFuZ2VyLW11dGVkOiByZ2JhKDE3OCwgNzksIDY5LCAuMTQpOy0tZGFuZ2VyLWdsb3c6IHJnYmEoMTc4LCA3OSwgNjksIC4yNSk7LS1pbmZvOiAjNGE2ZmE1Oy0taW5mby1tdXRlZDogcmdiYSg3NCwgMTExLCAxNjUsIC4xNCk7LS1zaGFkb3cteHM6IDAgMXB4IDNweCByZ2JhKDg5LCA1OCwgMzIsIC4wNCk7LS1zaGFkb3ctc206IDAgMnB4IDhweCByZ2JhKDg5LCA1OCwgMzIsIC4wNik7LS1zaGFkb3ctbWQ6IDAgNHB4IDE2cHggcmdiYSg4OSwgNTgsIDMyLCAuMDgpOy0tc2hhZG93LWxnOiAwIDhweCAzMnB4IHJnYmEoODksIDU4LCAzMiwgLjEyKTstLXNoYWRvdy14bDogMCAxMnB4IDQ4cHggcmdiYSg4OSwgNTgsIDMyLCAuMTYpOy0tc2hhZG93LXNvZnQ6IDAgMjBweCA1MHB4IHJnYmEoODksIDU4LCAzMiwgLjEyKTstLXNoYWRvdy1lbGV2YXRlZDogMCA4cHggMjRweCByZ2JhKDg5LCA1OCwgMzIsIC4wOCk7LS1zaGFkb3ctZ2xvdzogMCAwIDI0cHggdmFyKC0tYWNjZW50LWdsb3cpOy0tc2hhZG93LWdsb3ctc3VjY2VzczogMCAwIDIwcHggdmFyKC0tc3VjY2Vzcy1nbG93KTstLXJhZGl1cy14czogNnB4Oy0tcmFkaXVzLXNtOiAxMHB4Oy0tcmFkaXVzLW1kOiAxNHB4Oy0tcmFkaXVzLWxnOiAyMHB4Oy0tcmFkaXVzLXhsOiAyOHB4Oy0tcmFkaXVzLWZ1bGw6IDk5OTlweDstLWZvbnQtc2FuczogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAiU2Vnb2UgVUkiLCAiSGVsdmV0aWNhIE5ldWUiLCAiUGluZ0ZhbmcgU0MiLCAiTm90byBTYW5zIFNDIiwgIk1pY3Jvc29mdCBZYUhlaSIsIHNhbnMtc2VyaWY7LS1mb250LW1vbm86ICJTRiBNb25vIiwgIkZpcmEgQ29kZSIsICJDYXNjYWRpYSBDb2RlIiwgIkpldEJyYWlucyBNb25vIiwgTWVubG8sIE1vbmFjbywgIkNvbnNvbGFzIiwgbW9ub3NwYWNlOy0tZm9udC1zaXplLXhzOiAuNjg3NXJlbTstLWZvbnQtc2l6ZS1zbTogLjgxMjVyZW07LS1mb250LXNpemUtYmFzZTogLjkzNzVyZW07LS1mb250LXNpemUtbGc6IDEuMDYyNXJlbTstLWZvbnQtc2l6ZS14bDogMS4yNXJlbTstLWZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwOy0tZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7LS1mb250LXdlaWdodC1zZW1pYm9sZDogNjAwOy0tZm9udC13ZWlnaHQtYm9sZDogNzAwOy0tbGluZS1oZWlnaHQtdGlnaHQ6IDEuMzstLWxpbmUtaGVpZ2h0LWJhc2U6IDEuNjstLWxpbmUtaGVpZ2h0LXJlbGF4ZWQ6IDEuNzU7LS10cmFuc2l0aW9uLWZhc3Q6IC4xNXMgZWFzZTstLXRyYW5zaXRpb24tbm9ybWFsOiAuMjVzIGVhc2U7LS10cmFuc2l0aW9uLXNsb3c6IC40cyBlYXNlOy0tdHJhbnNpdGlvbi1zcHJpbmc6IC41cyBjdWJpYy1iZXppZXIoLjM0LCAxLjU2LCAuNjQsIDEpOy0tc2lkZWJhci13aWR0aDogMzAwcHg7LS1zaWRlYmFyLWNvbGxhcHNlZC13aWR0aDogNTZweDstLWZpbGUtcGFuZWwtd2lkdGg6IDMyMHB4Oy0tc2FmZS1ib3R0b206IDBweDstLWVhc2Utb3V0LWV4cG86IGN1YmljLWJlemllciguMTYsIDEsIC4zLCAxKTstLWVhc2Utb3V0LWJhY2s6IGN1YmljLWJlemllciguMzQsIDEuNTYsIC42NCwgMSk7LS1lYXNlLWluLW91dC1zbW9vdGg6IGN1YmljLWJlemllciguNCwgMCwgLjIsIDEpOy0tZWFzZS1zcHJpbmc6IGN1YmljLWJlemllciguMTc1LCAuODg1LCAuMzIsIDEuMjc1KTstLWVhc2Utc3ByaW5nLWJvdW5jeTogY3ViaWMtYmV6aWVyKC4xNzUsIC44ODUsIC4zMiwgMS40KTstLWVhc2UtYm91bmNlOiBjdWJpYy1iZXppZXIoLjY4LCAtLjU1LCAuMjY1LCAxLjU1KX1AbWVkaWEocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upe2h0bWw6bm90KC5pcy13YW5kLWFwcCkgKixodG1sOm5vdCguaXMtd2FuZC1hcHApICo6YmVmb3JlLGh0bWw6bm90KC5pcy13YW5kLWFwcCkgKjphZnRlcnthbmltYXRpb24tZHVyYXRpb246LjAxbXMhaW1wb3J0YW50O2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6MSFpbXBvcnRhbnQ7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDFtcyFpbXBvcnRhbnQ7c2Nyb2xsLWJlaGF2aW9yOmF1dG8haW1wb3J0YW50fX06cm9vdHstLWFwcC1pbnNldC10b3A6IDBweDstLWFwcC1pbnNldC1ib3R0b206IDBweDstLWFwcC1pbnNldC1sZWZ0OiAwcHg7LS1hcHAtaW5zZXQtcmlnaHQ6IDBweDstLXdhbmQtc2FmZS10b3A6IG1heCh2YXIoLS1hcHAtaW5zZXQtdG9wKSwgZW52KHNhZmUtYXJlYS1pbnNldC10b3AsIDBweCkpOy0td2FuZC1zYWZlLWJvdHRvbTogbWF4KHZhcigtLWFwcC1pbnNldC1ib3R0b20pLCBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSwgMHB4KSk7LS13YW5kLXNhZmUtbGVmdDogbWF4KHZhcigtLWFwcC1pbnNldC1sZWZ0KSwgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0LCAwcHgpKTstLXdhbmQtc2FmZS1yaWdodDogbWF4KHZhcigtLWFwcC1pbnNldC1yaWdodCksIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQsIDBweCkpOy0tc2FmZS1ib3R0b206IHZhcigtLXdhbmQtc2FmZS1ib3R0b20pOy0taW5wdXQtc2FmZS1ib3R0b206IHZhcigtLXNhZmUtYm90dG9tKX0uaXMtd2FuZC1hcHB7LS13YW5kLXNhZmUtdG9wOiBtYXgodmFyKC0tYXBwLWluc2V0LXRvcCksIGVudihzYWZlLWFyZWEtaW5zZXQtdG9wLCAwcHgpLCAzMnB4KTstLXdhbmQtc2FmZS1ib3R0b206IG1heCh2YXIoLS1hcHAtaW5zZXQtYm90dG9tKSwgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20sIDBweCksIDBweCl9LmlzLXdhbmQtYXBwLW5hdGl2ZS1pbnNldHN7LS13YW5kLXNhZmUtdG9wOiAwcHg7LS13YW5kLXNhZmUtYm90dG9tOiAwcHg7LS13YW5kLXNhZmUtbGVmdDogMHB4Oy0td2FuZC1zYWZlLXJpZ2h0OiAwcHh9LmlzLXdhbmQtaW9zLmlzLWtleWJvYXJkLW9wZW57LS1pbnB1dC1zYWZlLWJvdHRvbTogMHB4fS5pcy13YW5kLWFwcCAuc2lkZWJhci1oZWFkZXIsaHRtbC5pcy13YW5kLWFwcCAuc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWhlYWRlcntwYWRkaW5nLXRvcDpjYWxjKDE0cHggKyB2YXIoLS13YW5kLXNhZmUtdG9wKSl9LmFwcC1jb250YWluZXJ7cGFkZGluZy10b3A6dmFyKC0td2FuZC1zYWZlLXRvcCl9aHRtbC5uby10cmFuc2l0aW9uLGh0bWwubm8tdHJhbnNpdGlvbiAqLGh0bWwubm8tdHJhbnNpdGlvbiAqOmJlZm9yZSxodG1sLm5vLXRyYW5zaXRpb24gKjphZnRlcnt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50O2FuaW1hdGlvbjpub25lIWltcG9ydGFudH0qe2JveC1zaXppbmc6Ym9yZGVyLWJveDttYXJnaW46MDtwYWRkaW5nOjB9aHRtbHtmb250LXNpemU6MTRweDstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZTt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHk7bWluLWhlaWdodDoxMDAlO2hlaWdodDoxMDAlO2JhY2tncm91bmQtY29sb3I6I2Y2ZjFlOH1ib2R5e2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LHJnYmEoMjA4LDEzOCw5MiwuMTgpLHRyYW5zcGFyZW50IDM1JSkscmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCBib3R0b20gcmlnaHQscmdiYSgxNDgsMTA3LDc0LC4xKSx0cmFuc3BhcmVudCA0MCUpLGxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZiZjdmMSwjZjZmMWU4KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO21pbi1oZWlnaHQ6MTAwdmg7bWluLWhlaWdodDoxMDBkdmg7aGVpZ2h0OjEwMHZoO2hlaWdodDoxMDBkdmg7bGluZS1oZWlnaHQ6dmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7b3ZlcmZsb3c6aGlkZGVufTo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6OHB4O2hlaWdodDo4cHh9Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM5Njc2NTU0MDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX06Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6Izk2NzY1NTY2fTo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9OjpzZWxlY3Rpb257YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtc29mdCk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX06Oi1tb3otc2VsZWN0aW9ue2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LXNvZnQpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmFwcC1jb250YWluZXJ7LS1sYXlvdXQtbWFpbi1maWxlLXBhbmVsLXdpZHRoOiB2YXIoLS1maWxlLXBhbmVsLXdpZHRoKTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3Bvc2l0aW9uOmZpeGVkO3RvcDp2YXIoLS1hcHAtdmlld3BvcnQtdG9wLCAwcHgpO2xlZnQ6MDtyaWdodDowO2hlaWdodDp2YXIoLS1hcHAtdmlld3BvcnQtaGVpZ2h0LCAxMDBkdmgpO292ZXJmbG93OmhpZGRlbn0uZmxvYXRpbmctc2lkZWJhci10b2dnbGV7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO3dpZHRoOjM0cHg7aGVpZ2h0OjM0cHg7cGFkZGluZzowO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ZmxleC1zaHJpbms6MDtiYWNrZ3JvdW5kOiNmZmZiZjVkOTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtjdXJzb3I6cG9pbnRlcjtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KSBzYXR1cmF0ZSgxODAlKTtib3gtc2hhZG93OjAgMnB4IDhweCAjMDAwMDAwMGY7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0ubWFpbi1oZWFkZXItcm93IC5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZXttYXJnaW4tcmlnaHQ6MnB4fS5tYWluLWhlYWRlci1yb3cgLmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlLmFjdGl2ZXtvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6YXV0b30ubWFpbi1oZWFkZXItcm93IC5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZS5hY3RpdmUgLmhhbWJ1cmdlci1pY29uIHNwYW46bnRoLWNoaWxkKDEpe3RyYW5zZm9ybTp0cmFuc2xhdGVZKDVweCkgcm90YXRlKDQ1ZGVnKX0ubWFpbi1oZWFkZXItcm93IC5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZS5hY3RpdmUgLmhhbWJ1cmdlci1pY29uIHNwYW46bnRoLWNoaWxkKDIpe29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGVYKDApfS5tYWluLWhlYWRlci1yb3cgLmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlLmFjdGl2ZSAuaGFtYnVyZ2VyLWljb24gc3BhbjpudGgtY2hpbGQoMyl7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTVweCkgcm90YXRlKC00NWRlZyl9Lm1haW4taGVhZGVyLXJvdyAuZmxvYXRpbmctc2lkZWJhci10b2dnbGU6aG92ZXJ7YmFja2dyb3VuZDojZmZmYmY1ZjI7Ym94LXNoYWRvdzowIDNweCAxMnB4ICMwMDAwMDAxYX0ubWFpbi1oZWFkZXItcm93IC5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZTphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45Mil9Lm1haW4taGVhZGVyLXJvdyAuZmxvYXRpbmctc2lkZWJhci10b2dnbGUuYWN0aXZlOmhvdmVyIC5oYW1idXJnZXItaWNvbiBzcGFuLC5tYWluLWhlYWRlci1yb3cgLmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlOmhvdmVyIC5oYW1idXJnZXItaWNvbiBzcGFue2JhY2tncm91bmQ6dmFyKC0tdGV4dC1wcmltYXJ5KX0uZmxvYXRpbmctc2lkZWJhci10b2dnbGU6aG92ZXJ7YmFja2dyb3VuZDojZmZmYmY1ZjI7Ym94LXNoYWRvdzowIDNweCAxMnB4ICMwMDAwMDAxYX0uZmxvYXRpbmctc2lkZWJhci10b2dnbGUuYWN0aXZle29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb246b3BhY2l0eSAuMTVzIGVhc2V9LmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjkyKX0uaGFtYnVyZ2VyLWljb257d2lkdGg6MTZweDtoZWlnaHQ6MTJweDtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS5oYW1idXJnZXItaWNvbiBzcGFue2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtoZWlnaHQ6MnB4O2JhY2tncm91bmQ6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyB2YXIoLS1lYXNlLW91dC1leHBvKSxvcGFjaXR5IC4ycyBlYXNlLGJhY2tncm91bmQgLjE1cyBlYXNlO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyfS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZTpob3ZlciAuaGFtYnVyZ2VyLWljb24gc3BhbntiYWNrZ3JvdW5kOnZhcigtLXRleHQtcHJpbWFyeSl9LmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlLmFjdGl2ZSAuaGFtYnVyZ2VyLWljb24gc3BhbjpudGgtY2hpbGQoMSl7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNXB4KSByb3RhdGUoNDVkZWcpfS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZS5hY3RpdmUgLmhhbWJ1cmdlci1pY29uIHNwYW46bnRoLWNoaWxkKDIpe29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGVYKDApfS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZS5hY3RpdmUgLmhhbWJ1cmdlci1pY29uIHNwYW46bnRoLWNoaWxkKDMpe3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01cHgpIHJvdGF0ZSgtNDVkZWcpfS50b3BiYXItbG9nby1pY29ue3dpZHRoOjIycHg7aGVpZ2h0OjIycHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCNkNDc4NWEsI2I4NTczYSwjYTA0YTJlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy14cyk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZToxMHB4O2NvbG9yOiNmZmY7Zm9udC13ZWlnaHQ6ODAwO2JveC1zaGFkb3c6MCAxcHggNHB4ICNiODVjMzc0MCxpbnNldCAwIDFweCAjZmZmMztsZXR0ZXItc3BhY2luZzotLjAyZW07ZmxleC1zaHJpbms6MH0uc3RhdHVzLWRvdHt3aWR0aDo2cHg7aGVpZ2h0OjZweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnZhcigtLXRleHQtbXV0ZWQpfS5zdGF0dXMtZG90LmFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLXN1Y2Nlc3MpO2JveC1zaGFkb3c6MCAwIDhweCB2YXIoLS1zdWNjZXNzKX0ubWFpbi1sYXlvdXR7ZGlzcGxheTpmbGV4O2ZsZXg6MTttaW4taGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctbGVmdDowO3RyYW5zaXRpb246cGFkZGluZy1sZWZ0IHZhcigtLXRyYW5zaXRpb24tbm9ybWFsKX0uc2lkZWJhci1vcGVuOm5vdCguc2lkZWJhci1waW5uZWQpIC5pbnB1dC1wYW5lbHtvcGFjaXR5OjA7dmlzaWJpbGl0eTpoaWRkZW47cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2UsdmlzaWJpbGl0eSAwcyBsaW5lYXIgLjJzfS5tYWluLWxheW91dC5zaWRlYmFyLXBpbm5lZHtwYWRkaW5nLWxlZnQ6dmFyKC0tc2lkZWJhci13aWR0aCk7dHJhbnNpdGlvbjpwYWRkaW5nLWxlZnQgLjNzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5tYWluLWxheW91dC5zaWRlYmFyLXBpbm5lZCAuZmxvYXRpbmctc2lkZWJhci10b2dnbGV7ZGlzcGxheTpub25lfS5tYWluLWxheW91dC5zaWRlYmFyLXBpbm5lZC5zaWRlYmFyLWNvbGxhcHNlZHtwYWRkaW5nLWxlZnQ6dmFyKC0tc2lkZWJhci1jb2xsYXBzZWQtd2lkdGgpfS5kcmF3ZXItYmFja2Ryb3B7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDt6LWluZGV4OjQ0O2JhY2tncm91bmQ6dmFyKC0tYmctb3ZlcmxheSk7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpvcGFjaXR5IC4zNXMgdmFyKC0tZWFzZS1pbi1vdXQtc21vb3RoKTtiYWNrZHJvcC1maWx0ZXI6Ymx1cig0cHgpfS5kcmF3ZXItYmFja2Ryb3Aub3BlbntvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6YXV0bztiYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpfS5zaWRlYmFye3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDtib3R0b206MDt6LWluZGV4OjQ1O3dpZHRoOm1pbih2YXIoLS1zaWRlYmFyLXdpZHRoKSxjYWxjKDEwMHZ3IC0gMjBweCkpO21heC13aWR0aDo5MHZ3O2JhY2tncm91bmQ6I2ZmZmJmNWY1O2JvcmRlci1yaWdodDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttaW4taGVpZ2h0OjA7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMjBweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzo0cHggMCAzMnB4ICM1OTNhMjAxNDt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMDAlKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMzVzIHZhcigtLWVhc2Utb3V0LWV4cG8pLGJveC1zaGFkb3cgLjM1cyBlYXNlLG9wYWNpdHkgLjI1cyBlYXNlO3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowfS5zaWRlYmFyLm9wZW57dHJhbnNmb3JtOnRyYW5zbGF0ZSgwKTtib3gtc2hhZG93OjhweCAwIDQwcHggIzU5M2EyMDI2O3BvaW50ZXItZXZlbnRzOmF1dG87b3BhY2l0eToxfS5zaWRlYmFyLnBpbm5lZHt0cmFuc2Zvcm06dHJhbnNsYXRlKDApO3BvaW50ZXItZXZlbnRzOmF1dG87b3BhY2l0eToxO2JveC1zaGFkb3c6bm9uZTt0cmFuc2l0aW9uOndpZHRoIC4zcyB2YXIoLS1lYXNlLW91dC1leHBvKSx0cmFuc2Zvcm0gLjM1cyB2YXIoLS1lYXNlLW91dC1leHBvKSxib3gtc2hhZG93IC4zNXMgZWFzZSxvcGFjaXR5IC4yNXMgZWFzZX0uc2lkZWJhci5jb2xsYXBzZWQgLnNpZGViYXItaGVhZGVyLWFjdGlvbnMgLnNpZGViYXItY2xvc2V7ZGlzcGxheTpub25lfS5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWR7d2lkdGg6dmFyKC0tc2lkZWJhci1jb2xsYXBzZWQtd2lkdGgpfS5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWQgLnNpZGViYXItaGVhZGVye3BhZGRpbmc6MTRweCA4cHg7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6MH0uc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWhlYWRlci1tYWluLC5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWQgLnNpZGViYXItaGVhZGVyLW1vcmUsLnNpZGViYXIucGlubmVkLmNvbGxhcHNlZCAuc2lkZWJhci1waW4tdG9nZ2xlLC5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWQgLnNpZGViYXItZm9vdGVye2Rpc3BsYXk6bm9uZX0uc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWhlYWRlci1hY3Rpb25ze2dhcDowO3dpZHRoOjEwMCU7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWJvZHl7cGFkZGluZzo4cHggNHB4O292ZXJmbG93LXk6YXV0bztvdmVyZmxvdy14OmhpZGRlbn0uc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjB9LnNpZGViYXItY29sbGFwc2VkLXRpbGVze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjhweDthbGlnbi1pdGVtczpjZW50ZXJ9LnNpZGViYXItY29sbGFwc2VkLXRpbGV7d2lkdGg6MzZweDtoZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjExcHg7Ym9yZGVyOi41cHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMzIpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0NWRlZywjZDQ3ODVhLCNiODU3M2EsI2EwNGEyZSk7Y29sb3I6I2ZmZjtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo3MDA7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zO2xldHRlci1zcGFjaW5nOi0uMDFlbTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MDtib3gtc2hhZG93OjAgMXB4IDJweCAjYjg1YzM3MzgsaW5zZXQgMCAxcHggI2ZmZmZmZjQ3O3RyYW5zaXRpb246ZmlsdGVyIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm94LXNoYWRvdyAuMjJzIGVhc2UsdHJhbnNmb3JtIC4yMnMgdmFyKC0tZWFzZS1vdXQtZXhwbyl9LnNpZGViYXItY29sbGFwc2VkLXRpbGU6aG92ZXJ7ZmlsdGVyOmJyaWdodG5lc3MoMS4wNik7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzowIDRweCAxMHB4IC0zcHggI2I4NWMzNzVjLGluc2V0IDAgMXB4ICNmZmZmZmY1Mn0uc2lkZWJhci1jb2xsYXBzZWQtdGlsZS5oaXN0b3J5e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0NWRlZywjZThkM2MwLCNkM2I2OWQsI2I4OTQ3OCk7Y29sb3I6IzU5M2EyMGUwO2JveC1zaGFkb3c6MCAxcHggMnB4ICM3ODU4MzgyZSxpbnNldCAwIDFweCAjZmZmZmZmNmJ9LnNpZGViYXItY29sbGFwc2VkLXRpbGUuaGlzdG9yeTpob3Zlcntib3gtc2hhZG93OjAgNHB4IDEwcHggLTNweCAjNzg1ODM4NGQsaW5zZXQgMCAxcHggI2ZmZmZmZjdhfS5zaWRlYmFyLWNvbGxhcHNlZC10aWxlLmFkZHtiYWNrZ3JvdW5kOiNiODVjMzcwZjtib3JkZXI6MS41cHggZGFzaGVkIHJnYmEoMTg0LDkyLDU1LC41KTtjb2xvcjojYTA0YTJlO2JveC1zaGFkb3c6bm9uZTttYXJnaW4tdG9wOjJweH0uc2lkZWJhci1jb2xsYXBzZWQtdGlsZS5hZGQ6aG92ZXJ7ZmlsdGVyOm5vbmU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7YmFja2dyb3VuZDojYjg1YzM3MWY7Ym9yZGVyLWNvbG9yOiNiODVjMzdiODtib3gtc2hhZG93OjAgM3B4IDhweCAtM3B4ICNiODVjMzc1Mn0uc2lkZWJhci1jb2xsYXBzZWQtdGlsZS5hZGQ6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKC45NCl9LnNpZGViYXItY29sbGFwc2VkLXRpbGUuYWN0aXZle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0NWRlZywjZDI3MzU4LCNiMzU0MzQsIzkzNDEyOCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzowIDAgMCAycHggI2M1NjUzZDRkLDAgNXB4IDE0cHggLTRweCAjYTA0YTJlNzMsaW5zZXQgMCAxcHggI2ZmZjZ9LnNpZGViYXItY29sbGFwc2VkLXRpbGU6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKC45NCk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDhzfS5zaWRlYmFyLXRpbGUtYnViYmxle3Bvc2l0aW9uOmZpeGVkO21heC13aWR0aDozMjBweDttaW4td2lkdGg6ODBweDtwYWRkaW5nOjlweCAxM3B4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0NWRlZywjZmZmYmY1ZmMsI2ZjZjRlOWZjKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUsIHJnYmEoMTIwLCA4OCwgNTYsIC4xOCkpO2JvcmRlci1yYWRpdXM6MTRweDtib3gtc2hhZG93OjAgNnB4IDI0cHggLTRweCAjNTkzYTIwMzgsMCAycHggNnB4ICM1OTNhMjAxNCxpbnNldCAwIDFweCAjZmZmZmZmYTY7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MS40Njtjb2xvcjojMzgyNDEyZWI7ei1pbmRleDoyMDA7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNHB4KTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE2cyBlYXNlLHRyYW5zZm9ybSAuMThzIHZhcigtLWVhc2Utb3V0LWV4cG8sIGVhc2UpO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZDtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxMnB4KSBzYXR1cmF0ZSgxNjAlKX0uc2lkZWJhci10aWxlLWJ1YmJsZS52aXNpYmxle29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlKDApfS5zaWRlYmFyLXRpbGUtYnViYmxlOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTZweDt0b3A6dmFyKC0tYnViYmxlLXRhaWwteSwgNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO3dpZHRoOjExcHg7aGVpZ2h0OjExcHg7YmFja2dyb3VuZDppbmhlcml0O2JvcmRlci1sZWZ0OjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlLCByZ2JhKDEyMCwgODgsIDU2LCAuMTgpKTtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlLCByZ2JhKDEyMCwgODgsIDU2LCAuMTgpKTtib3gtc2hhZG93Oi0ycHggMnB4IDVweCAtMnB4ICM1OTNhMjAxNH0uc2lkZWJhci1jb2xsYXBzZS10b2dnbGV7ZmxleC1zaHJpbms6MDt0cmFuc2l0aW9uOmNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnNpZGViYXItY29sbGFwc2UtdG9nZ2xlLmNvbGxhcHNlZHtjb2xvcjp2YXIoLS1wcmltYXJ5KX0uc2lkZWJhci1waW4tdG9nZ2xle2ZsZXgtc2hyaW5rOjA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLHRyYW5zZm9ybSAuM3MgdmFyKC0tZWFzZS1vdXQtZXhwbyl9LnNpZGViYXItcGluLXRvZ2dsZS5waW5uZWR7YmFja2dyb3VuZDojYzU2NTNkMWY7Y29sb3I6dmFyKC0tYWNjZW50KTt0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKX0uc2lkZWJhci1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nOjEycHggMTRweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOiNmZmZiZjVjYztmbGV4LXNocmluazowO21pbi1oZWlnaHQ6NTJweDtnYXA6MTBweH0uc2lkZWJhci1oZWFkZXItbWFpbntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo5cHg7bWluLXdpZHRoOjA7ZmxleDoxfS5zaWRlYmFyLWhlYWRlci1hY3Rpb25ze2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtmbGV4LXNocmluazowfS5zaWRlYmFyLWhlYWRlci1tb3Jle3Bvc2l0aW9uOnJlbGF0aXZlfS5zaWRlYmFyLWhlYWRlci1vdmVyZmxvd3tkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOmNhbGMoMTAwJSArIDZweCk7cmlnaHQ6MDttaW4td2lkdGg6MTUwcHg7YmFja2dyb3VuZDojZmZmYmY1ZmE7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCkgc2F0dXJhdGUoMTgwJSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym94LXNoYWRvdzowIDRweCAyMHB4ICM1OTNhMjAxZjtwYWRkaW5nOjRweDt6LWluZGV4OjYwfS5zaWRlYmFyLWhlYWRlci1vdmVyZmxvdy5vcGVue2Rpc3BsYXk6YmxvY2s7YW5pbWF0aW9uOmZhZGVTbGlkZURvd24gLjE1cyB2YXIoLS1lYXNlLW91dC1leHBvKX0uc2lkZWJhci1oZWFkZXItb3ZlcmZsb3cgLm92ZXJmbG93LWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3dpZHRoOjEwMCU7cGFkZGluZzo5cHggMTJweDtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOm5vbmU7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2N1cnNvcjpwb2ludGVyO2JvcmRlci1yYWRpdXM6NnB4O3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVtOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVtOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk3KX1Aa2V5ZnJhbWVzIGZhZGVTbGlkZURvd257MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC00cHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX19LnNpZGViYXItbG9nb3V0e2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO29wYWNpdHk6Ljc7dHJhbnNpdGlvbjpvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uc2lkZWJhci1sb2dvdXQ6aG92ZXJ7b3BhY2l0eToxO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uc2lkZWJhci1zd2l0Y2gtc2VydmVye2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO29wYWNpdHk6Ljc7dHJhbnNpdGlvbjpvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uc2lkZWJhci1zd2l0Y2gtc2VydmVyOmhvdmVye29wYWNpdHk6MTtjb2xvcjp2YXIoLS1wcmltYXJ5LCB2YXIoLS10ZXh0LXNlY29uZGFyeSkpfS5sb2dpbi1zd2l0Y2gtc2VydmVye21hcmdpbi10b3A6MTBweDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo2cHg7Zm9udC1zaXplOjEzcHg7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS5sb2dpbi1zd2l0Y2gtc2VydmVyIHN2Z3tvcGFjaXR5Oi43NX0ubG9naW4tc3dpdGNoLXNlcnZlcjpob3Zlcntjb2xvcjp2YXIoLS1wcmltYXJ5LCB2YXIoLS10ZXh0LXByaW1hcnkpKX0uc2lkZWJhci10aXRsZXtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsZXR0ZXItc3BhY2luZzotLjAxZW07d2hpdGUtc3BhY2U6bm93cmFwO2ZsZXgtc2hyaW5rOjB9LnNlc3Npb24tY291bnR7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7cGFkZGluZzozcHggOHB4O2JvcmRlci1yYWRpdXM6MTBweDtmb250LXdlaWdodDo2MDB9LnNpZGViYXItY2xvc2V7ZmxleC1zaHJpbms6MH0uZmlsZS1leHBsb3JlcntmbGV4OjE7b3ZlcmZsb3cteTphdXRvO3BhZGRpbmc6OHB4IDA7bWluLWhlaWdodDowfS5maWxlLWV4cGxvcmVyLmVtcHR5e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjI0cHg7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi44MTI1cmVtO3RleHQtYWxpZ246Y2VudGVyfS5maWxlLXRyZWV7Zm9udC1zaXplOi44MTI1cmVtfS50cmVlLWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O3BhZGRpbmc6NHB4IDEycHg7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czo2cHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7dXNlci1zZWxlY3Q6bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9LnRyZWUtaXRlbTpob3ZlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmZmZmIzLCNmZmZjZjc2Nik7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmZmZmYjN9LnRyZWUtaXRlbS5hY3RpdmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjdlYiwjZmZmNGU4YmYpO2NvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzowIDAgMCAxcHggI2M1NjUzZDM4LDAgM3B4IDEwcHggLTNweCAjYzU2NTNkNDAsaW5zZXQgMCAxcHggI2ZmZmZmZmQ5fS50cmVlLXRvZ2dsZXtmbGV4LXNocmluazowO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZTouNjI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RyYW5zaXRpb246dHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnRyZWUtdG9nZ2xlLm9wZW57dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyl9LnRyZWUtdG9nZ2xlLmVtcHR5e3Zpc2liaWxpdHk6aGlkZGVufS50cmVlLWljb257ZmxleC1zaHJpbms6MDtmb250LXNpemU6MXJlbTttYXJnaW4tcmlnaHQ6NnB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXJ9LnRyZWUtbmFtZXtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmbGV4OjE7bWluLXdpZHRoOjB9LnRyZWUtY2hpbGRyZW57ZGlzcGxheTpub25lfS50cmVlLWNoaWxkcmVuLm9wZW57ZGlzcGxheTpibG9ja30uZmlsZS1leHBsb3Jlci1oZWFkZXJ7cGFkZGluZzoxMHB4IDE0cHggNnB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtmbGV4LXNocmluazowO292ZXJmbG93LXg6YXV0bztvdmVyZmxvdy15OmhpZGRlbjtzY3JvbGxiYXItd2lkdGg6dGhpbn0uZmlsZS1leHBsb3Jlci1wYXRoe2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7ZmxleDoxO21pbi13aWR0aDowO2ZvbnQtd2VpZ2h0OjUwMH1pbnB1dC5maWxlLWV4cGxvcmVyLXBhdGh7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czo4cHg7cGFkZGluZzo2cHggMTBweDtoZWlnaHQ6MzBweDtsaW5lLWhlaWdodDoxLjI7Y3Vyc29yOnRleHQ7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTtvdXRsaW5lOm5vbmU7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aWR0aDptYXgtY29udGVudDttaW4td2lkdGg6MTAwJTtib3gtc2l6aW5nOmJvcmRlci1ib3h9aW5wdXQuZmlsZS1leHBsb3Jlci1wYXRoOjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtvcGFjaXR5Oi42fWlucHV0LmZpbGUtZXhwbG9yZXItcGF0aDpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXIpO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX1pbnB1dC5maWxlLWV4cGxvcmVyLXBhdGg6Zm9jdXN7YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3RleHQtb3ZlcmZsb3c6Y2xpcDtib3gtc2hhZG93OjAgMCAwIDNweCAjZDQ5ODYzMWZ9LmZpbGUtZXhwbG9yZXItcmVmcmVzaHtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOm5vbmU7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjFyZW07cGFkZGluZzo0cHg7Ym9yZGVyLXJhZGl1czo0cHg7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmZpbGUtZXhwbG9yZXItcmVmcmVzaDpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyl9LmZpbGUtc2lkZS1wYW5lbHtwb3NpdGlvbjpmaXhlZDtyaWdodDpjYWxjKC0xICogdmFyKC0tZmlsZS1wYW5lbC13aWR0aCkpO3RvcDowO2JvdHRvbTowO3dpZHRoOnZhcigtLWZpbGUtcGFuZWwtd2lkdGgpO2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSk7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7ei1pbmRleDo1NTt0cmFuc2l0aW9uOnJpZ2h0IC4zcyB2YXIoLS1lYXNlLW91dC1leHBvKSxib3gtc2hhZG93IC4zcyBlYXNlO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Ym94LXNoYWRvdzotNHB4IDAgMjRweCAjMDAwMDAwMWE7cGFkZGluZy10b3A6dmFyKC0td2FuZC1zYWZlLXRvcCk7cGFkZGluZy1ib3R0b206dmFyKC0td2FuZC1zYWZlLWJvdHRvbSl9LmZpbGUtc2lkZS1wYW5lbC5vcGVue3JpZ2h0OjA7Ym94LXNoYWRvdzotOHB4IDAgMzJweCAjNTkzYTIwMjZ9LmZpbGUtcGFuZWwtYmFja2Ryb3B7ZGlzcGxheTpub25lfUBtZWRpYShtYXgtd2lkdGg6NzY4cHgpey5maWxlLXBhbmVsLWJhY2tkcm9we2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDtiYWNrZ3JvdW5kOiMyYTFjMTI0ZDt6LWluZGV4OjU0O29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb246b3BhY2l0eSAuM3MgZWFzZTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigycHgpfS5maWxlLXBhbmVsLWJhY2tkcm9wLm9wZW57b3BhY2l0eToxO3BvaW50ZXItZXZlbnRzOmF1dG99LnNpZGViYXItcGluLXRvZ2dsZXtkaXNwbGF5Om5vbmV9fS5maWxlLXNpZGUtcGFuZWwtaGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cGFkZGluZzoxMnB4IDE0cHggMTBweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtmbGV4LXNocmluazowO2dhcDo4cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCNmZmY2LCNmZmYwKX0uZmlsZS1zaWRlLXBhbmVsLXRpdGxlLWdyb3Vwe2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDttaW4td2lkdGg6MDtmbGV4OjF9LmZpbGUtc2lkZS1wYW5lbC1pY29ue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Y29sb3I6dmFyKC0tYWNjZW50KTtvcGFjaXR5Oi44NX0uZmlsZS1zaWRlLXBhbmVsLXRpdGxle2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi4wMWVtfS5maWxlLXNpZGUtcGFuZWwtaGVhZGVyLWFjdGlvbnN7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MnB4O2ZsZXgtc2hyaW5rOjB9LmZpbGUtc2lkZS1wYW5lbC1pY29uYnRue3dpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6OHB4O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmZpbGUtc2lkZS1wYW5lbC1pY29uYnRuOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1zdWJ0bGUpfS5maWxlLXNpZGUtcGFuZWwtaWNvbmJ0bjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NCl9LmZpbGUtc2lkZS1wYW5lbC1pY29uYnRuLmFjdGl2ZXtjb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtib3JkZXItY29sb3I6I2Q0OTg2MzU5fS5maWxlLXNpZGUtcGFuZWwtaWNvbmJ0bi5jbG9zZTpob3Zlcntjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JhY2tncm91bmQ6I2RjNDY0NjE0O2JvcmRlci1jb2xvcjojZGM0NjQ2NDB9LmZpbGUtc2lkZS1wYW5lbC1pY29uYnRuIC53YW5kLWljb257ZGlzcGxheTpibG9ja30uZmlsZS1zaWRlLXBhbmVsLWljb25idG46aG92ZXIgLndhbmQtaWNvbi1yZWZyZXNoe3RyYW5zZm9ybTpyb3RhdGUoNjBkZWcpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4yNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyl9LmZpbGUtc2lkZS1wYW5lbC1ib2R5e2ZsZXg6MTttaW4taGVpZ2h0OjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtvdmVyZmxvdzpoaWRkZW59LmdpdC1zdGF0dXMtYmFkZ2V7ZmxleC1zaHJpbms6MDtmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NjAwO3BhZGRpbmc6MXB4IDVweDtib3JkZXItcmFkaXVzOjNweDttaW4td2lkdGg6MThweDt0ZXh0LWFsaWduOmNlbnRlcjtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pfS5naXQtYWRkZWR7YmFja2dyb3VuZDojMjI4YjIyMjY7Y29sb3I6IzIyOGIyMn0uZ2l0LW1vZGlmaWVke2JhY2tncm91bmQ6I2ZmYTUwMDI2O2NvbG9yOm9yYW5nZX0uZ2l0LWRlbGV0ZWR7YmFja2dyb3VuZDojZGMxNDNjMjY7Y29sb3I6I2RjMTQzY30uZ2l0LXJlbmFtZWR7YmFja2dyb3VuZDojNDY4MmI0MjY7Y29sb3I6IzQ2ODJiNH0uZ2l0LXVuc3RhZ2Vke2JhY2tncm91bmQ6I2ZmOGMwMDI2O2NvbG9yOiNmZjhjMDB9LmdpdC11bnN0YWdlZC1kZWxldGVke2JhY2tncm91bmQ6I2RjMTQzYzI2O2NvbG9yOiNkYzE0M2N9LmdpdC11bnRyYWNrZWR7YmFja2dyb3VuZDojODA4MDgwMjY7Y29sb3I6Z3JheX0uZmlsZS1zZWFyY2gtYm94e3BhZGRpbmc6OHB4IDEycHggMTBweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDowO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2ZsZXgtc2hyaW5rOjA7cG9zaXRpb246cmVsYXRpdmV9LmZpbGUtc2VhcmNoLWljb257cG9zaXRpb246YWJzb2x1dGU7bGVmdDoyMnB4O3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7cG9pbnRlci1ldmVudHM6bm9uZTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtvcGFjaXR5Oi43fS5maWxlLXNlYXJjaC1pbnB1dHtmbGV4OjE7cGFkZGluZzo3cHggMzJweCA3cHggMzBweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czo4cHg7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7b3V0bGluZTpub25lO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4xNXMgZWFzZSxiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZSxib3gtc2hhZG93IC4xNXMgZWFzZX0uZmlsZS1zZWFyY2gtaW5wdXQ6Zm9jdXN7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KTtib3gtc2hhZG93OjAgMCAwIDNweCAjZDQ5ODYzMWZ9LmZpbGUtc2VhcmNoLWlucHV0OjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uZmlsZS1zZWFyY2gtY2xlYXJ7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MThweDt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2JhY2tncm91bmQ6bm9uZTtib3JkZXI6bm9uZTtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjRweDt3aWR0aDoyMnB4O2hlaWdodDoyMnB4O2JvcmRlci1yYWRpdXM6NTAlO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2Rpc3BsYXk6bm9uZTthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1cyBlYXNlLGNvbG9yIC4xNXMgZWFzZX0uZmlsZS1zZWFyY2gtY2xlYXI6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uZmlsZS1zZWFyY2gtY2xlYXIudmlzaWJsZXtkaXNwbGF5OmlubGluZS1mbGV4fS5maWxlLXNlYXJjaC1jbGVhcjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LnNpZGViYXItYm9keXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXg6MTttaW4taGVpZ2h0OjA7b3ZlcmZsb3cteTphdXRvOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNoO3Bvc2l0aW9uOnJlbGF0aXZlfS5zaWRlYmFyLWludHJve2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZsZXgtc2hyaW5rOjB9LnNlc3Npb25zLWxpc3R7ZmxleDoxIDAgYXV0bzttaW4taGVpZ2h0OjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtvdmVyZmxvdzp2aXNpYmxlO3BhZGRpbmc6MTBweCAxMHB4IDEycHh9I3Nlc3Npb25zLXBhbmVse2Rpc3BsYXk6Y29udGVudHN9LnNlc3Npb25zLWxpc3Q6ZW1wdHk6YmVmb3Jle2NvbnRlbnQ6Ilw2NjgyXDY1ZTBcNGYxYVw4YmRkIjtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWluLWhlaWdodDoyMDBweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6Ljg3NXJlbX0uc2Vzc2lvbi1ncm91cHttYXJnaW4tYm90dG9tOjE0cHh9LnNlc3Npb24tZ3JvdXA6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LnNlc3Npb24tZ3JvdXAtdGl0bGV7cGFkZGluZzo0cHggNnB4IDEwcHg7Zm9udC1zaXplOi42ODc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDhlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweH0uc2Vzc2lvbi1ncm91cC10aXRsZTpiZWZvcmV7Y29udGVudDoiIjt3aWR0aDozcHg7aGVpZ2h0OjEycHg7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO29wYWNpdHk6LjY1O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpfS5jbGF1ZGUtaGlzdG9yeS10b2dnbGV7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZTt0cmFuc2l0aW9uOmNvbG9yIC4xNXMgZWFzZX0uY2xhdWRlLWhpc3RvcnktdG9nZ2xlOmhvdmVye2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmNsYXVkZS1oaXN0b3J5LXRvZ2dsZSAuY2hldnJvbntkaXNwbGF5OmlubGluZS1ibG9jazt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIHZhcigtLWVhc2Utb3V0LWV4cG8pO2ZvbnQtc2l6ZTouNjg3NXJlbTttYXJnaW4tcmlnaHQ6NHB4fS5jbGF1ZGUtaGlzdG9yeS10b2dnbGUgLmhpc3RvcnktY291bnR7Zm9udC1zaXplOi42ODc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7cGFkZGluZzoycHggN3B4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO21hcmdpbi1sZWZ0OjZweH0uY2xhdWRlLWhpc3RvcnktbG9hZGluZ3twYWRkaW5nOjE2cHggOHB4O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouODEyNXJlbTt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXN0eWxlOml0YWxpY30uc2lkZWJhci1oaXN0b3J5LXNlY3Rpb24tbGFiZWx7cGFkZGluZzo4cHggMTBweCA0cHg7Zm9udC1zaXplOi42ODc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMDRlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7b3BhY2l0eTouNX0uY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWhlYWRlcnttYXJnaW4tdG9wOjZweDtjdXJzb3I6cG9pbnRlcjt1c2VyLXNlbGVjdDpub25lfS5jbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktaGVhZGVyIC5jaGV2cm9ue2ZvbnQtc2l6ZTouNjg3NXJlbTttYXJnaW4tcmlnaHQ6NHB4fS5jbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktdGl0bGV7Zm9udC1zaXplOi42ODc1cmVtO3BhZGRpbmc6NnB4IDhweCA2cHggMTJweDtvcGFjaXR5Oi44O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS5jbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktaGVhZGVyIC5jbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktdGl0bGU6YmVmb3Jle2Rpc3BsYXk6bm9uZX0uY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWxhYmVse21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0uY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWNsZWFyLWJ0bntvcGFjaXR5Oi45O2ZsZXgtc2hyaW5rOjB9LmNsYXVkZS1oaXN0b3J5LXByZXZpZXd7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5jbGF1ZGUtaGlzdG9yeS1pdGVte29wYWNpdHk6Ljg1O3RyYW5zaXRpb246b3BhY2l0eSAuMTVzIGVhc2UsYmFja2dyb3VuZCAuMTVzIGVhc2V9LmNsYXVkZS1oaXN0b3J5LWl0ZW06aG92ZXJ7b3BhY2l0eToxO2JhY2tncm91bmQ6I2ZmZmRmYWY1fS5zZXNzaW9uLWl0ZW17d2lkdGg6MTAwJTt0ZXh0LWFsaWduOmxlZnQ7YmFja2dyb3VuZDojZmZmY2Y3ZWI7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjEwcHg7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtwYWRkaW5nOjEwcHggMTJweDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCAuMnMgZWFzZSx0cmFuc2Zvcm0gLjFzIGVhc2U7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTttYXJnaW4tYm90dG9tOjZweDtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW59LnNlc3Npb24taXRlbTpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjZweDtib3R0b206NnB4O3dpZHRoOjNweDtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZVkoMCk7dHJhbnNpdGlvbjphbGwgLjJzIGVhc2U7Ym9yZGVyLXJhZGl1czoycHh9LnNlc3Npb24taXRlbS1yb3d7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxfS5zZXNzaW9uLWl0ZW0tY29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjI7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOmluaGVyaXQ7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIHZhcigtLWVhc2Utb3V0LWV4cG8pLGJhY2tncm91bmQgLjE4cyBlYXNlO3dpbGwtY2hhbmdlOnRyYW5zZm9ybX0uc2Vzc2lvbi1pdGVtLnN3aXBlZCAuc2Vzc2lvbi1pdGVtLWNvbnRlbnR7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNzJweCk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjdmNSwjZmNmNmVkZjApfS5zZXNzaW9uLXN3aXBlLWJne3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7ei1pbmRleDoxO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpzdHJldGNoO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjE4cyBlYXNlfS5zZXNzaW9uLWl0ZW0uc3dpcGVkIC5zZXNzaW9uLXN3aXBlLWJne29wYWNpdHk6MTtwb2ludGVyLWV2ZW50czphdXRvfS5zZXNzaW9uLXN3aXBlLWRlbGV0ZXt3aWR0aDo3MnB4O2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MDtiYWNrZ3JvdW5kOnZhcigtLWRhbmdlcik7Y29sb3I6dmFyKC0tdGV4dC1pbnZlcnNlKTtkaXNwbGF5OmlubGluZS1mbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6M3B4O2ZvbnQ6aW5oZXJpdDtmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NzAwO2N1cnNvcjpwb2ludGVyfS5zZXNzaW9uLXN3aXBlLWRlbGV0ZSBzdmd7ZmxleC1zaHJpbms6MH0uc2Vzc2lvbi1tYW5hZ2UtY2hlY2t7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmbGV4LXNocmluazowO3dpZHRoOjIycHg7aGVpZ2h0OjIycHg7bWFyZ2luLXJpZ2h0OjhweDtwb3NpdGlvbjpyZWxhdGl2ZX0uc2Vzc2lvbi1tYW5hZ2UtY2hlY2sgaW5wdXR7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtvcGFjaXR5OjA7Y3Vyc29yOnBvaW50ZXJ9LnNlc3Npb24tbWFuYWdlLWNoZWNrIHNwYW57d2lkdGg6MThweDtoZWlnaHQ6MThweDtib3JkZXItcmFkaXVzOjZweDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4yMik7YmFja2dyb3VuZDojZmZmYmY1OGM7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmNjtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZX0uc2Vzc2lvbi1tYW5hZ2UtY2hlY2s6aG92ZXIgc3BhbntiYWNrZ3JvdW5kOiNmZmZiZjVjYztib3JkZXItY29sb3I6IzdkNWIzOTU5fS5zZXNzaW9uLW1hbmFnZS1jaGVjayBpbnB1dDpjaGVja2VkK3NwYW57YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfS5zZXNzaW9uLW1hbmFnZS1jaGVjayBpbnB1dDpjaGVja2VkK3NwYW46YWZ0ZXJ7Y29udGVudDoiXDI3MTMiO2NvbG9yOiNmZmY7Zm9udC1zaXplOi43NXJlbTtmb250LXdlaWdodDo3MDB9LnNlc3Npb24taXRlbS5zZWxlY3RlZHtib3JkZXItY29sb3I6I2M1NjUzZDU5O2JhY2tncm91bmQ6I2ZmZjVlZWY1fS5zZXNzaW9uLWl0ZW0tcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fUBrZXlmcmFtZXMgc2Vzc2lvbi1kZWxldGUtY29sbGFwc2V7dG97bWF4LWhlaWdodDowO29wYWNpdHk6MDttYXJnaW4tYm90dG9tOjA7cGFkZGluZy10b3A6MDtwYWRkaW5nLWJvdHRvbTowO2JvcmRlci13aWR0aDowfX0uc2Vzc2lvbi1pdGVtLmRlbGV0aW5ne2FuaW1hdGlvbjpzZXNzaW9uLWRlbGV0ZS1jb2xsYXBzZSAuM3MgZWFzZS1vdXQgZm9yd2FyZHM7b3ZlcmZsb3c6aGlkZGVuO21heC1oZWlnaHQ6MTIwcHg7cG9pbnRlci1ldmVudHM6bm9uZX0uc2Vzc2lvbi1tYWlue2ZsZXg6MTttaW4td2lkdGg6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDozcHg7cGFkZGluZy1yaWdodDo2MHB4fS5zZXNzaW9uLXRpdGxlLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6OHB4fS5zZXNzaW9uLXRpdGxlLXJvdyAuc2Vzc2lvbi10aXRsZSwuc2Vzc2lvbi10aXRsZS1yb3cgLnNlc3Npb24tY29tbWFuZHtmbGV4OjE7bWluLXdpZHRoOjB9LnNlc3Npb24tdGltZXtmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt3aGl0ZS1zcGFjZTpub3dyYXA7bGluZS1oZWlnaHQ6MS40O3BhZGRpbmctdG9wOjFweH0uc2Vzc2lvbi1hY3Rpdml0eXtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tYWNjZW50KTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bGluZS1oZWlnaHQ6MS4zO29wYWNpdHk6Ljg1fS5zZXNzaW9uLWRlc2NyaXB0aW9ue2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bGluZS1oZWlnaHQ6MS4zNX0uc2Vzc2lvbi1yZWNvdmVyeS1oaW50e2ZvbnQtc2l6ZTouNjI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2JhY2tncm91bmQ6Izk2NzY1NTE0O3BhZGRpbmc6MXB4IDVweDtib3JkZXItcmFkaXVzOjNweH0uc2Vzc2lvbi1hY3Rpb25ze3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjRweDt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHg7ZmxleC1zaHJpbms6MH0uc2Vzc2lvbi1hY3Rpb24tYnRue3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7bWluLWhlaWdodDoyOHB4O21pbi13aWR0aDoyOHB4O3BhZGRpbmc6MDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOi44MTI1cmVtO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7dHJhbnNpdGlvbjphbGwgLjJzIGVhc2U7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Y3Vyc29yOnBvaW50ZXJ9LnNlc3Npb24tYWN0aW9uLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiM5Njc2NTUxYTtjb2xvcjp2YXIoLS1hY2NlbnQpfS5zZXNzaW9uLWFjdGlvbi1idG46YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOSk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMXN9LnNlc3Npb24tYWN0aW9uLWJ0biBzdmd7ZmxleC1zaHJpbms6MH0uc2Vzc2lvbi1hY3Rpb24tYnRuLmRlbGV0ZS1idG46aG92ZXJ7YmFja2dyb3VuZDojZTc0YzNjMTQ7Y29sb3I6I2QzNTI0NH0uc2Vzc2lvbi1hY3Rpb24tYnRuLm1lcmdlLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiMyZjgwZWQxYTtjb2xvcjojMmY4MGVkfS5zZXNzaW9uLWtpbmQtYmFkZ2Uud29ya3RyZWUtbWVyZ2V7YmFja2dyb3VuZDojMmY4MGVkMWY7Y29sb3I6IzJmODBlZH0uc2Vzc2lvbi1raW5kLWJhZGdlLndvcmt0cmVlLW1lcmdlLmZhaWxlZHtiYWNrZ3JvdW5kOiNlNzRjM2MxZjtjb2xvcjojZDM1MjQ0fS5zZXNzaW9uLWtpbmQtYmFkZ2Uud29ya3RyZWUtbWVyZ2UubWVyZ2Vke2JhY2tncm91bmQ6IzI3YWU2MDFmO2NvbG9yOiMyMTk2NTN9LnNlc3Npb24ta2luZC1iYWRnZS53b3JrdHJlZS1tZXJnZS5tZXJnaW5nLC5zZXNzaW9uLWtpbmQtYmFkZ2Uud29ya3RyZWUtbWVyZ2UuY2hlY2tpbmd7YmFja2dyb3VuZDojZjI5OTRhMWY7Y29sb3I6I2MxN2MyYn0ud29ya3RyZWUtbWVyZ2UtY29udGVudHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMHB4fS53b3JrdHJlZS1tZXJnZS1yb3d7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxNnB4O3BhZGRpbmc6MTBweCAxMnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQ6I2ZmZmZmZjgwO2ZvbnQtc2l6ZTouODc1cmVtfS53b3JrdHJlZS1tZXJnZS1yb3cgc3Bhbntjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9Lndvcmt0cmVlLW1lcmdlLXJvdyBzdHJvbmd7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt3b3JkLWJyZWFrOmJyZWFrLWFsbDt0ZXh0LWFsaWduOnJpZ2h0fS53b3JrdHJlZS1tZXJnZS1hY3Rpb25ze2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7Z2FwOjEwcHg7bWFyZ2luLXRvcDoxNnB4fS53b3JrdHJlZS1tZXJnZS1tb2RhbHttYXgtd2lkdGg6NjIwcHh9Lm1vZGFsLXN1YnRpdGxle21hcmdpbi10b3A6NHB4O2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uc2Vzc2lvbi1hY3Rpb24tYnRuW2Rpc2FibGVkXXtvcGFjaXR5Oi40NTtjdXJzb3I6bm90LWFsbG93ZWR9LnNlc3Npb24tYWN0aW9uLWJ0bltkaXNhYmxlZF06aG92ZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ud29ya3RyZWUtbWVyZ2UtYWN0aW9ucyAuYnRuW2Rpc2FibGVkXXtvcGFjaXR5Oi41O2N1cnNvcjpub3QtYWxsb3dlZH0ud29ya3RyZWUtbWVyZ2UtYWN0aW9ucyAuYnRuW2Rpc2FibGVkXTpob3Zlciwud29ya3RyZWUtbWVyZ2UtYWN0aW9ucyAuYnRuW2Rpc2FibGVkXTphY3RpdmV7dHJhbnNmb3JtOm5vbmV9Lndvcmt0cmVlLW1lcmdlLWFjdGlvbnMgLmJ0bnttaW4td2lkdGg6MTIwcHh9Lndvcmt0cmVlLW1lcmdlLW1vZGFsIC5tb2RhbC1ib2R5e21pbi1oZWlnaHQ6MjYwcHh9Lndvcmt0cmVlLW1lcmdlLW1vZGFsIC5lcnJvci1tZXNzYWdle21hcmdpbi10b3A6MTJweH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludHttYXJnaW4tdG9wOjB9Lndvcmt0cmVlLW1lcmdlLXJvdysuZmllbGQtaGludHttYXJnaW4tdG9wOjJweH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludCsuZmllbGQtaGludHttYXJnaW4tdG9wOjRweH0ud29ya3RyZWUtbWVyZ2UtbW9kYWwgLm1vZGFsLXN1YnRpdGxle21heC13aWR0aDo0MjBweH0ud29ya3RyZWUtbWVyZ2UtbW9kYWwgc3Ryb25ne2ZvbnQtd2VpZ2h0OjYwMH0ud29ya3RyZWUtbWVyZ2UtbW9kYWwgLm1vZGFsLWhlYWRlcnthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS53b3JrdHJlZS1tZXJnZS1jb250ZW50IHB7bWFyZ2luOjB9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLmZpZWxkLWhpbnQgc3Ryb25ne2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9Lndvcmt0cmVlLW1lcmdlLXJvdyBzdHJvbmc6ZW1wdHk6YWZ0ZXJ7Y29udGVudDoiLSI7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLmZpZWxkLWhpbnQgY29kZXtmb250LWZhbWlseTppbmhlcml0fS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC5maWVsZC1oaW50Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS53b3JrdHJlZS1tZXJnZS1yb3c6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDoycHh9Lndvcmt0cmVlLW1lcmdlLXJvdzpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludC5tdXRlZHtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludC5lcnJvcntjb2xvcjojZDM1MjQ0fS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC5maWVsZC1oaW50LnN1Y2Nlc3N7Y29sb3I6IzIxOTY1M30ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludC53YXJuaW5ne2NvbG9yOiNjMTdjMmJ9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLmZpZWxkLWhpbnQuaW5mb3tjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLmZpZWxkLWhpbnQrLndvcmt0cmVlLW1lcmdlLXJvd3ttYXJnaW4tdG9wOjJweH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93Ky53b3JrdHJlZS1tZXJnZS1yb3d7bWFyZ2luLXRvcDowfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgc3Ryb25nIHNtYWxse2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgc3Ryb25nIGNvZGUsLndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyBzcGFuIGNvZGV7Zm9udC1mYW1pbHk6aW5oZXJpdH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IGNvZGV7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtwYWRkaW5nOjB9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyBlbXtmb250LXN0eWxlOm5vcm1hbDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IHNtYWxsLC53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLm11dGVke2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLndhcm5pbmd7Y29sb3I6I2MxN2MyYn0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5zdWNjZXNze2NvbG9yOiMyMTk2NTN9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyAuZXJyb3J7Y29sb3I6I2QzNTI0NH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5pbmZve2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC50cnVuY2F0ZXtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5tb25vc3BhY2V7Zm9udC1mYW1pbHk6dWktbW9ub3NwYWNlLFNGTW9uby1SZWd1bGFyLE1lbmxvLE1vbmFjbyxDb25zb2xhcyxtb25vc3BhY2V9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyAuc21hbGx7Zm9udC1zaXplOi44MTI1cmVtfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLm5vcm1hbHtmb250LXNpemU6Ljg3NXJlbX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5ibG9ja3tkaXNwbGF5OmJsb2NrfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLmlubGluZXtkaXNwbGF5OmlubGluZX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5mbGV4e2Rpc3BsYXk6ZmxleH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5ncmlke2Rpc3BsYXk6Z3JpZH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5yb3VuZGVke2JvcmRlci1yYWRpdXM6OHB4fUBtZWRpYShob3Zlcjpob3Zlcil7LnNlc3Npb24taXRlbSAuc2Vzc2lvbi1hY3Rpb25ze29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2V9LnNlc3Npb24taXRlbTpob3ZlciAuc2Vzc2lvbi1hY3Rpb25zLC5zZXNzaW9uLWl0ZW0uYWN0aXZlIC5zZXNzaW9uLWFjdGlvbnMsLnNlc3Npb24taXRlbS5zd2lwZWQgLnNlc3Npb24tYWN0aW9uc3tvcGFjaXR5OjF9LnNlc3Npb24taXRlbSAuc2Vzc2lvbi1hY3Rpb25zOmhhcyguc2Vzc2lvbi1hY3Rpb24tYnRuW2RhdGEtYWN0aW9uPXJlc3VtZV0pe29wYWNpdHk6MX19QG1lZGlhKGhvdmVyOm5vbmUpey5zZXNzaW9uLWl0ZW0gLnNlc3Npb24tYWN0aW9uc3tvcGFjaXR5OjF9fS5zZXNzaW9uLWl0ZW06aG92ZXJ7YmFja2dyb3VuZDojZmZmZGZhZjU7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1kZWZhdWx0KTtib3gtc2hhZG93OjAgMnB4IDhweCAjNTkzYTIwMTJ9LnNlc3Npb24taXRlbTpob3ZlcjpiZWZvcmV7b3BhY2l0eTouNTt0cmFuc2Zvcm06c2NhbGVZKDEpfS5zZXNzaW9uLWl0ZW0uYWN0aXZle2JhY2tncm91bmQ6I2ZmZjdmMGY1O2JvcmRlci1jb2xvcjojYzU2NTNkNGQ7Ym94LXNoYWRvdzowIDJweCA4cHggI2M1NjUzZDFhfS5zZXNzaW9uLWl0ZW06YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTkpO3RyYW5zaXRpb24tZHVyYXRpb246LjFzfS5zZXNzaW9uLWNvbW1hbmR7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZTouODEyNXJlbTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi0uMDFlbX0uc2Vzc2lvbi10aXRsZXtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOi44MTI1cmVtO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi0uMDFlbTtsaW5lLWhlaWdodDoxLjN9LnNlc3Npb24tbWV0YXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO2ZsZXgtd3JhcDp3cmFwfS5zZXNzaW9uLXN0YXR1c3tkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O3BhZGRpbmc6M3B4IDhweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOi42ODc1cmVtO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnNlc3Npb24tc3RhdHVzLWRvdHt3aWR0aDo2cHg7aGVpZ2h0OjZweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjtmbGV4LXNocmluazowfS5zZXNzaW9uLXN0YXR1cy5ydW5uaW5nIC5zZXNzaW9uLXN0YXR1cy1kb3R7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzKTtib3gtc2hhZG93OjAgMCA1cHggdmFyKC0tc3VjY2Vzcy1nbG93KTthbmltYXRpb246c3RhdHVzLXB1bHNlIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlfS5zZXNzaW9uLXN0YXR1cy5leGl0ZWQgLnNlc3Npb24tc3RhdHVzLWRvdHtiYWNrZ3JvdW5kOnZhcigtLXRleHQtbXV0ZWQpfS5zZXNzaW9uLXN0YXR1cy5mYWlsZWQgLnNlc3Npb24tc3RhdHVzLWRvdHtiYWNrZ3JvdW5kOnZhcigtLWRhbmdlcil9LnNlc3Npb24tc3RhdHVzLnN0b3BwZWQgLnNlc3Npb24tc3RhdHVzLWRvdHtiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmcpfS5zZXNzaW9uLXN0YXR1cy5ydW5uaW5ne2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcy1tdXRlZCk7Y29sb3I6dmFyKC0tc3VjY2Vzcyl9LnNlc3Npb24tc3RhdHVzLmZhaWxlZHtiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Y29sb3I6dmFyKC0tZGFuZ2VyKX0uc2Vzc2lvbi1zdGF0dXMuc3RvcHBlZHtiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmctbXV0ZWQpO2NvbG9yOnZhcigtLXdhcm5pbmcpfS5zZXNzaW9uLXN0YXR1cy5wZXJtaXNzaW9uLWJsb2NrZWR7YmFja2dyb3VuZDojZjBhNTAwMjQ7Y29sb3I6I2QxOGIwMH0uc2Vzc2lvbi1zdGF0dXMuZXhpdGVkLC5zZXNzaW9uLXN0YXR1cy5hcmNoaXZlZHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MH1Aa2V5ZnJhbWVzIHN0YXR1cy1wdWxzZXswJSx0b3tvcGFjaXR5OjF9NTAle29wYWNpdHk6LjV9fS5zZXNzaW9uLWlke2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi42MjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7YmFja2dyb3VuZDojOTY3NjU1MWY7cGFkZGluZzoycHggNnB4O2JvcmRlci1yYWRpdXM6NHB4O2ZvbnQtd2VpZ2h0OjUwMH0uc2Vzc2lvbi1ncm91cC0taGlzdG9yeXttYXJnaW4tdG9wOmF1dG87cGFkZGluZy10b3A6NnB4fS5zZXNzaW9uLWhpc3RvcnktdG9nZ2xlIC5oaXN0b3J5LWNvdW50LmxvYWRpbmd7bGV0dGVyLXNwYWNpbmc6LjEyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtwYWRkaW5nLWxlZnQ6MnB4O3BhZGRpbmctcmlnaHQ6MnB4fS5zZXNzaW9uLWhpc3RvcnktYm9keXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo0cHg7cGFkZGluZzoycHggMCA0cHg7YW5pbWF0aW9uOmhpc3RvcnlCb2R5RmFkZUluIC4yMnMgdmFyKC0tZWFzZS1vdXQtZXhwbyl9QGtleWZyYW1lcyBoaXN0b3J5Qm9keUZhZGVJbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTJweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfX0uc2lkZWJhci1oaXN0b3J5LXRvb2xiYXJ7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtwYWRkaW5nOjJweCA0cHggNnB4O2ZsZXgtc2hyaW5rOjB9LnNpZGViYXItaGlzdG9yeS1jbGVhcntjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXdlaWdodDo1MDB9LnNpZGViYXItaGlzdG9yeS1jbGVhcjpob3Zlcntjb2xvcjp2YXIoLS1kYW5nZXIpO2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKX0uc2lkZWJhci1oaXN0b3J5LXNjcm9sbHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHh9LnNpZGViYXItZm9vdGVye3BhZGRpbmc6MTJweCAxMnB4IDE0cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTBweDtiYWNrZ3JvdW5kOiNmZmZiZjViM30uc2lkZWJhci1mb290ZXItYWN0aW9uc3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdChhdXRvLWZpdCxtaW5tYXgoNTZweCwxZnIpKTtnYXA6NHB4fS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG57ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6NHB4O2ZvbnQtc2l6ZTouNjI1cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtwYWRkaW5nOjdweCA0cHg7bWluLWhlaWdodDo0NnB4O2JvcmRlci1yYWRpdXM6OXB4O3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0biBzdmd7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtmbGV4LXNocmluazowO29wYWNpdHk6Ljg1O3RyYW5zaXRpb246b3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG46aG92ZXJ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtiYWNrZ3JvdW5kOiM5Njc2NTUxNDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRuOmhvdmVyIHN2Z3tvcGFjaXR5OjF9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NSk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMXN9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bi5oaWRkZW57ZGlzcGxheTpub25lfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5zaWRlYmFyLWxvZ291dHtwb3NpdGlvbjpyZWxhdGl2ZX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuc2lkZWJhci1sb2dvdXQ6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDotM3B4O3RvcDoyMiU7Ym90dG9tOjIyJTt3aWR0aDoxcHg7YmFja2dyb3VuZDp2YXIoLS1ib3JkZXItc3VidGxlKTtwb2ludGVyLWV2ZW50czpub25lfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5zaWRlYmFyLWxvZ291dDpob3Zlcntjb2xvcjp2YXIoLS1kYW5nZXIpO2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuc2lkZWJhci1sb2dvdXQ6aG92ZXIgc3Zne2NvbG9yOnZhcigtLWRhbmdlcil9LnRvcGJhci1idG57ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6NXB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi43NXJlbTtmb250LXdlaWdodDo1MDA7cGFkZGluZzo2cHggMTBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2hlaWdodDozMnB4O21pbi1oZWlnaHQ6MzJweDt3aGl0ZS1zcGFjZTpub3dyYXA7Ym94LXNpemluZzpib3JkZXItYm94O2xpbmUtaGVpZ2h0OjE7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LnRvcGJhci1idG46aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmODA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0udG9wYmFyLWJ0bjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NSl9LnRvcGJhci1idG4uYWN0aXZle2JhY2tncm91bmQ6I2ZmZmZmZmIzO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC13ZWlnaHQ6NjAwO2JveC1zaGFkb3c6MCAxcHggNHB4ICM1OTNhMjAxYX0udG9wYmFyLWJ0bi5zcXVhcmV7d2lkdGg6MzJweDtwYWRkaW5nOjA7Zm9udC1zaXplOi44NzVyZW19I3Rlcm1pbmFsLWludGVyYWN0aXZlLXRvZ2dsZS10b3AuYWN0aXZle2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtjb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjojYzU2NTNkMzN9I3Rlcm1pbmFsLWludGVyYWN0aXZlLXRvZ2dsZS10b3AuYWN0aXZlOmhvdmVye2JhY2tncm91bmQ6I2M1NjUzZDJlfS5idG57ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6NnB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi44NzVyZW07Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi0uMDA1ZW07cGFkZGluZzowIDE2cHg7aGVpZ2h0OjM4cHg7bWluLWhlaWdodDozOHB4O2JvcmRlci1yYWRpdXM6MTBweDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO3doaXRlLXNwYWNlOm5vd3JhcDtwb3NpdGlvbjpyZWxhdGl2ZTt1c2VyLXNlbGVjdDpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZSxjb2xvciAuMTVzIGVhc2UsYm94LXNoYWRvdyAuMThzIGVhc2UsdHJhbnNmb3JtIC4xOHMgY3ViaWMtYmV6aWVyKC4zNCwxLjQsLjY0LDEpOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0uYnRuOmZvY3Vze291dGxpbmU6bm9uZX0uYnRuOmZvY3VzLXZpc2libGV7b3V0bGluZTpub25lO2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWJnLXByaW1hcnkpLDAgMCAwIDRweCB2YXIoLS1hY2NlbnQpfS5idG46ZGlzYWJsZWQsLmJ0bltkaXNhYmxlZF17b3BhY2l0eTouNDU7Y3Vyc29yOm5vdC1hbGxvd2VkO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNmb3JtOm5vbmUhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnR9LmJ0bi1wcmltYXJ5e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1hY2NlbnQtaG92ZXIpIDAlLHZhcigtLWFjY2VudCkgMTAwJSk7Y29sb3I6dmFyKC0tdGV4dC1pbnZlcnNlKTtib3gtc2hhZG93OjAgMXB4IDJweCAjYzU2NTNkNTIsMCA0cHggMTBweCAtMnB4ICNjNTY1M2Q1MixpbnNldCAwIDFweCAjZmZmZmZmMzgsaW5zZXQgMCAtMXB4ICM1OTNhMjAyZX0uYnRuLXByaW1hcnk6aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNkNjg1NWUgMCUsdmFyKC0tYWNjZW50LWhvdmVyKSAxMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgMnB4IDRweCAjYzU2NTNkNTIsMCA4cHggMjBweCAtNHB4ICNjNTY1M2Q2NixpbnNldCAwIDFweCAjZmZmZmZmNDcsaW5zZXQgMCAtMXB4ICM1OTNhMjAyZX0uYnRuLXByaW1hcnk6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1hY2NlbnQpIDAlLHZhcigtLWFjY2VudC1hY3RpdmUpIDEwMCUpO2JveC1zaGFkb3c6MCAxcHggMnB4ICNjNTY1M2Q0NyxpbnNldCAwIDFweCAjNTkzYTIwMmU7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5idG4tc2Vjb25kYXJ5e2JhY2tncm91bmQ6IzdkNWIzOTE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5idG4tc2Vjb25kYXJ5OmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTI0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmJ0bi1zZWNvbmRhcnk6YWN0aXZle2JhY2tncm91bmQ6IzdkNWIzOTMzO3RyYW5zaXRpb24tZHVyYXRpb246LjA2c30uYnRuLWdob3N0e2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH0uYnRuLWdob3N0OmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmJ0bi1naG9zdDphY3RpdmV7YmFja2dyb3VuZDojN2Q1YjM5MjQ7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5idG4tZGFuZ2Vye2JhY2tncm91bmQ6I2IyNGY0NTE0O2NvbG9yOnZhcigtLWRhbmdlcik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5idG4tZGFuZ2VyOmhvdmVye2JhY2tncm91bmQ6I2IyNGY0NTI5O2NvbG9yOnZhcigtLWRhbmdlcil9LmJ0bi1kYW5nZXI6YWN0aXZle2JhY2tncm91bmQ6I2IyNGY0NTNkO3RyYW5zaXRpb24tZHVyYXRpb246LjA2c30uYnRuLWRhbmdlcjpmb2N1cy12aXNpYmxle2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWJnLXByaW1hcnkpLDAgMCAwIDRweCB2YXIoLS1kYW5nZXIpfS5idG4tc3VjY2Vzc3tiYWNrZ3JvdW5kOiM0ZjdhNTgxYTtjb2xvcjp2YXIoLS1zdWNjZXNzKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LmJ0bi1zdWNjZXNzOmhvdmVye2JhY2tncm91bmQ6IzRmN2E1ODJlO2NvbG9yOnZhcigtLXN1Y2Nlc3MpfS5idG4tc3VjY2VzczphY3RpdmV7YmFja2dyb3VuZDojNGY3YTU4NDI7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5idG4tc3VjY2Vzczpmb2N1cy12aXNpYmxle2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWJnLXByaW1hcnkpLDAgMCAwIDRweCB2YXIoLS1zdWNjZXNzKX0uYnRuLWJsb2Nre3dpZHRoOjEwMCV9LmJ0bi14c3toZWlnaHQ6MjZweDttaW4taGVpZ2h0OjI2cHg7cGFkZGluZzowIDEwcHg7Zm9udC1zaXplOi43NXJlbTtib3JkZXItcmFkaXVzOjdweDtnYXA6NHB4fS5idG4tc217aGVpZ2h0OjMycHg7bWluLWhlaWdodDozMnB4O3BhZGRpbmc6MCAxMnB4O2ZvbnQtc2l6ZTouODEyNXJlbTtib3JkZXItcmFkaXVzOjhweDtnYXA6NXB4fS5idG4taWNvbntwYWRkaW5nOjA7d2lkdGg6MzZweDttaW4td2lkdGg6MzZweDtoZWlnaHQ6MzZweDttaW4taGVpZ2h0OjM2cHg7Ym9yZGVyLXJhZGl1czo4cHg7Z2FwOjB9LmJ0bi1pY29uLmJ0bi1zbXt3aWR0aDozMHB4O21pbi13aWR0aDozMHB4O2hlaWdodDozMHB4O21pbi1oZWlnaHQ6MzBweDtib3JkZXItcmFkaXVzOjdweH0uYnRuLWljb24gc3Zne2ZsZXgtc2hyaW5rOjB9Lm1haW4tY29udGVudHtmbGV4OjE7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttaW4td2lkdGg6MDttaW4taGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7cG9zaXRpb246cmVsYXRpdmV9Lm1haW4tY29udGVudC5maWxlLXBhbmVsLW9wZW57bWFyZ2luLXJpZ2h0OnZhcigtLWxheW91dC1tYWluLWZpbGUtcGFuZWwtd2lkdGgpO3RyYW5zaXRpb246bWFyZ2luLXJpZ2h0IC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9LnRlcm1pbmFsLWluZm97Zm9udC1zaXplOi42MjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC13ZWlnaHQ6NTAwfS5tYWluLWhlYWRlci1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjZweCAxMHB4O2ZsZXgtc2hyaW5rOjA7bWluLWhlaWdodDo0NHB4O2dhcDo4cHg7cG9zaXRpb246cmVsYXRpdmV9Lm1haW4taGVhZGVyLXJvdzphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO2hlaWdodDoycHg7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyx0cmFuc3BhcmVudCAwJSxyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjg1KSAzNSUscmdiYSh2YXIoLS1hY2NlbnQtcmdiLCAxOTcsIDEwMSwgNjEpLDEpIDUwJSxyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjg1KSA2NSUsdHJhbnNwYXJlbnQgMTAwJSk7YmFja2dyb3VuZC1zaXplOjIyMCUgMTAwJTtiYWNrZ3JvdW5kLXBvc2l0aW9uOjEwMCUgY2VudGVyO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBlYXNlfS5tYWluLWhlYWRlci1yb3cuaXMtcnVubmluZzphZnRlcntvcGFjaXR5OjE7YW5pbWF0aW9uOnRvcGJhclByb2dyZXNzRmxvdyAxLjZzIGxpbmVhciBpbmZpbml0ZX0ubWFpbi1oZWFkZXItcm93LmlzLXBlcm1pc3Npb24tYmxvY2tlZDphZnRlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyx0cmFuc3BhcmVudCAwJSxyZ2JhKDE2OSwxMDYsNDcsLjg1KSAzNSUscmdiYSgxNjksMTA2LDQ3LDEpIDUwJSxyZ2JhKDE2OSwxMDYsNDcsLjg1KSA2NSUsdHJhbnNwYXJlbnQgMTAwJSk7YmFja2dyb3VuZC1zaXplOjIyMCUgMTAwJTthbmltYXRpb24tZHVyYXRpb246Mi40c31Aa2V5ZnJhbWVzIHRvcGJhclByb2dyZXNzRmxvd3swJXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjEwMCUgY2VudGVyfXRve2JhY2tncm91bmQtcG9zaXRpb246LTEwMCUgY2VudGVyfX1AbWVkaWEocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5tYWluLWhlYWRlci1yb3cuaXMtcnVubmluZzphZnRlcnthbmltYXRpb246bm9uZTtvcGFjaXR5Oi43fX0udG9wYmFyLWxlZnR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O2ZsZXgtc2hyaW5rOjB9LnRvcGJhci1jZW50ZXJ7ZmxleDoxO21pbi13aWR0aDowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtvdmVyZmxvdzpoaWRkZW59LnRvcGJhci1yaWdodHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHg7ZmxleC1zaHJpbms6MH0udG9wYmFyLWJyYW5ke2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MjZweDtoZWlnaHQ6MjZweDtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsdmFyKC0tYWNjZW50KSx2YXIoLS1hY2NlbnQtYWN0aXZlKSk7Y29sb3I6I2ZmZjtmb250LXdlaWdodDo3MDA7Zm9udC1zaXplOi44NXJlbTtsZXR0ZXItc3BhY2luZzouMDJlbTtib3gtc2hhZG93OjAgMXB4IDNweCAjNTkzYTIwMmU7dXNlci1zZWxlY3Q6bm9uZTtmbGV4LXNocmluazowfS50b3BiYXItc2Vzc2lvbi10aXRsZXtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOi44NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmbGV4LXNocmluazowO21heC13aWR0aDoyNDBweH0udG9wYmFyLWN3ZHtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6LjcycmVtO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgbW9ub3NwYWNlKTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3cteDphdXRvO292ZXJmbG93LXk6aGlkZGVuO3Njcm9sbGJhci13aWR0aDp0aGluO21pbi13aWR0aDowO2ZsZXg6MSAxIDA7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzoycHggNnB4O2JvcmRlci1yYWRpdXM6NnB4O2RpcmVjdGlvbjpsdHI7dGV4dC1hbGlnbjpsZWZ0O3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnRvcGJhci1jd2Q6Oi13ZWJraXQtc2Nyb2xsYmFye2hlaWdodDo0cHh9LnRvcGJhci1jd2Q6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6Izk2NzY1NTQ3O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpfS50b3BiYXItY3dkOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOiM5Njc2NTU4MH0udG9wYmFyLWN3ZDpob3ZlcntiYWNrZ3JvdW5kOiNmZmZmZmY4Yztjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LnRvcGJhci10YWdsaW5le2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouNzhyZW07d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5zZXNzaW9uLXN0YXR1cy1waWxse2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo1cHg7Zm9udC1zaXplOi43cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YmFja2dyb3VuZDp2YXIoLS1iZy1lbGV2YXRlZCk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjIwcHg7cGFkZGluZzoycHggOXB4IDJweCA3cHg7ZmxleC1zaHJpbms6MDttYXgtd2lkdGg6MTQwcHg7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbn0uc2Vzc2lvbi1zdGF0dXMtcGlsbCAuc2Vzc2lvbi1zdGF0dXMtZG90e3dpZHRoOjZweDtoZWlnaHQ6NnB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tdGV4dC1tdXRlZCk7ZmxleC1zaHJpbms6MH0uc2Vzc2lvbi1zdGF0dXMtcGlsbCAuc2Vzc2lvbi1zdGF0dXMtdGV4dHtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30uc2Vzc2lvbi1zdGF0dXMtcGlsbC5ydW5uaW5ne2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcy1tdXRlZCk7Ym9yZGVyLWNvbG9yOiM0ZjdhNTg0ZDtjb2xvcjp2YXIoLS1zdWNjZXNzKX0uc2Vzc2lvbi1zdGF0dXMtcGlsbC5ydW5uaW5nIC5zZXNzaW9uLXN0YXR1cy1kb3R7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzKTthbmltYXRpb246dGFzay1wdWxzZSAxLjJzIGVhc2UtaW4tb3V0IGluZmluaXRlfS5zZXNzaW9uLXN0YXR1cy1waWxsLnBlcm1pc3Npb24tYmxvY2tlZHtiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmctbXV0ZWQpO2JvcmRlci1jb2xvcjojYTk2YTJmNTk7Y29sb3I6dmFyKC0td2FybmluZyl9LnNlc3Npb24tc3RhdHVzLXBpbGwucGVybWlzc2lvbi1ibG9ja2VkIC5zZXNzaW9uLXN0YXR1cy1kb3R7YmFja2dyb3VuZDp2YXIoLS13YXJuaW5nKTthbmltYXRpb246dGFzay1wdWxzZSAxLjJzIGVhc2UtaW4tb3V0IGluZmluaXRlfS5zZXNzaW9uLXN0YXR1cy1waWxsLmV4aXRlZCwuc2Vzc2lvbi1zdGF0dXMtcGlsbC5zdG9wcGVke2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5zZXNzaW9uLXN0YXR1cy1waWxsLmZhaWxlZHtiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Ym9yZGVyLWNvbG9yOiNiMjRmNDU0ZDtjb2xvcjp2YXIoLS1kYW5nZXIpfS5zZXNzaW9uLXN0YXR1cy1waWxsLmZhaWxlZCAuc2Vzc2lvbi1zdGF0dXMtZG90e2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyKX0uc2Vzc2lvbi1zdGF0dXMtcGlsbC5hcmNoaXZlZHtvcGFjaXR5Oi43fS5zZXNzaW9uLXN0YXR1cy1waWxsIC5zZXNzaW9uLXN0YXR1cy1lbGFwc2Vke2ZsZXgtc2hyaW5rOjA7bWFyZ2luLWxlZnQ6NHB4O3BhZGRpbmctbGVmdDo2cHg7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtvcGFjaXR5Oi43NTtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXM7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCBtb25vc3BhY2UpO2ZvbnQtc2l6ZTouNjVyZW07bGV0dGVyLXNwYWNpbmc6LS4wMWVtfS5jdXJyZW50LXRhc2t7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4O2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTcsMTAxLDYxLC4yKTtib3JkZXItcmFkaXVzOjIwcHg7cGFkZGluZzoycHggOHB4IDJweCA1cHg7Zm9udC13ZWlnaHQ6NTAwO21heC13aWR0aDoyNDBweDttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47ZmxleC1zaHJpbms6MTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0uY3VycmVudC10YXNrOmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjZweDtoZWlnaHQ6NnB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtmbGV4LXNocmluazowO2FuaW1hdGlvbjp0YXNrLXB1bHNlIDEuMnMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyB0YXNrLXB1bHNlezAlLHRve29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUoMSl9NTAle29wYWNpdHk6LjU7dHJhbnNmb3JtOnNjYWxlKC44KX19LnRvcGJhci1tb3JlLXdyYXB7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtZmxleH0udG9wYmFyLW1vcmUtbWVudXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6Y2FsYygxMDAlICsgNnB4KTtyaWdodDowO21pbi13aWR0aDoxNjhweDtiYWNrZ3JvdW5kOnZhcigtLWJnLWVsZXZhdGVkKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7cGFkZGluZzo0cHg7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctbGcpO3otaW5kZXg6NjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MXB4fS50b3BiYXItbW9yZS1tZW51LmhpZGRlbntkaXNwbGF5Om5vbmV9LnRvcGJhci1tb3JlLWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OXB4O3dpZHRoOjEwMCU7cGFkZGluZzo4cHggMTJweDtib3JkZXI6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjgycmVtO2ZvbnQtd2VpZ2h0OjUwMDtjdXJzb3I6cG9pbnRlcjtib3JkZXItcmFkaXVzOjhweDt0ZXh0LWFsaWduOmxlZnQ7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udG9wYmFyLW1vcmUtaXRlbTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Y29sb3I6dmFyKC0tYWNjZW50KX0udG9wYmFyLW1vcmUtaXRlbSBzdmd7ZmxleC1zaHJpbms6MDtvcGFjaXR5Oi44NX0udG9wYmFyLW1vcmUtaXRlbS50b3BiYXItbW9yZS1pdGVtLWRhbmdlcntjb2xvcjp2YXIoLS1kYW5nZXIpfS50b3BiYXItbW9yZS1pdGVtLnRvcGJhci1tb3JlLWl0ZW0tZGFuZ2VyOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKTtjb2xvcjp2YXIoLS1kYW5nZXItaG92ZXIpfS50b3BiYXItbW9yZS1pdGVtLmhpZGRlbntkaXNwbGF5Om5vbmV9LnRvcGJhci1tb3JlLWl0ZW1bZGlzYWJsZWRde29wYWNpdHk6LjU7Y3Vyc29yOm5vdC1hbGxvd2VkfS50b3BiYXItbW9yZS1pdGVtW2Rpc2FibGVkXTpob3ZlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnRvcGJhci1tb3JlLWRpdmlkZXJ7aGVpZ2h0OjFweDttYXJnaW46NHB4IDZweDtiYWNrZ3JvdW5kOnZhcigtLWJvcmRlci1kZWZhdWx0KTtvcGFjaXR5Oi42fS50ZXJtaW5hbC1jb250YWluZXJ7ZmxleDoxO2Rpc3BsYXk6bm9uZTtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIHJpZ2h0LHJnYmEoOTEsNTgsMzQsLjIpLHRyYW5zcGFyZW50IDM1JSkscmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCBib3R0b20gbGVmdCxyZ2JhKDE5NywxMDEsNjEsLjA4KSx0cmFuc3BhcmVudCA0MCUpLGxpbmVhci1ncmFkaWVudCgxODBkZWcsIzJhMjIxYywjMWYxYjE3LCMxYTE2MTMpO292ZXJmbG93OmhpZGRlbjttaW4taGVpZ2h0OjA7bWluLXdpZHRoOjA7bWFyZ2luOjAgNnB4IDZweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE0MCwxMTAsODUsLjM1KTtib3gtc2hhZG93Omluc2V0IDAgMXB4ICNmZmZmZmYwZiwwIDhweCAzMnB4ICMwMDAwMDA1OSwwIDJweCA4cHggIzAwMDM7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1ub3JtYWwpLGJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1ub3JtYWwpfS50ZXJtaW5hbC1jb250YWluZXIuYWN0aXZle2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpzdHJldGNofS50ZXJtaW5hbC1zY3JvbGwtd3JhcHtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO292ZXJmbG93LXk6YXV0bztvdmVyZmxvdy14OmhpZGRlbjtzY3JvbGxiYXItd2lkdGg6bm9uZTtwYWRkaW5nOjEycHg7Ym9yZGVyLXJhZGl1czowO2JveC1zaGFkb3c6bm9uZTstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZTt0ZXh0LXJlbmRlcmluZzpnZW9tZXRyaWNQcmVjaXNpb247Zm9udC12YXJpYW50LWxpZ2F0dXJlczpub25lO2ZvbnQtZmVhdHVyZS1zZXR0aW5nczoibGlnYSIgMCwiY2xpZyIgMCwiY2FsdCIgMCwiZGxpZyIgMDtmb250LWtlcm5pbmc6bm9uZTstLXRlcm0tZmc6ICNmNWVhZGM7LS10ZXJtLWJnOiB0cmFuc3BhcmVudDstLXRlcm0tY3Vyc29yOiAjZDY3YjUyOy0tdGVybS1mb250LWZhbWlseTogIkdlaXN0IE1vbm8iLCAiU0YgTW9ubyIsIG1vbm9zcGFjZTstLXRlcm0tZm9udC1zaXplOiAxM3B4Oy0tdGVybS1saW5lLWhlaWdodDogdmFyKC0tdGVybS1yb3ctaGVpZ2h0KTstLXRlcm0tcm93LWhlaWdodDogMjBweDstLXRlcm0tY29sb3ItMDogIzFmMWIxNzstLXRlcm0tY29sb3ItMTogI2QyNzc2NjstLXRlcm0tY29sb3ItMjogIzdmYTM2ZjstLXRlcm0tY29sb3ItMzogI2Q1YTM1YjstLXRlcm0tY29sb3ItNDogIzg3YTlkOTstLXRlcm0tY29sb3ItNTogI2M1OTVjNzstLXRlcm0tY29sb3ItNjogIzdmYjNiMTstLXRlcm0tY29sb3ItNzogI2Y1ZWFkYzstLXRlcm0tY29sb3ItODogIzYyNTM0NzstLXRlcm0tY29sb3ItOTogI2UzOWE4OTstLXRlcm0tY29sb3ItMTA6ICM5Y2MwOGE7LS10ZXJtLWNvbG9yLTExOiAjZWJiYjZlOy0tdGVybS1jb2xvci0xMjogI2E4YzFlYTstLXRlcm0tY29sb3ItMTM6ICNkYmIxZGM7LS10ZXJtLWNvbG9yLTE0OiAjOWFjYmNhOy0tdGVybS1jb2xvci0xNTogI2ZmZjdlZn0udGVybWluYWwtc2Nyb2xsLXdyYXA6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0udGVybWluYWwtc2Nyb2xsLXdyYXAgOjpzZWxlY3Rpb257YmFja2dyb3VuZDojZDY3YjUyNDd9LnRlcm1pbmFsLXNjcm9sbC13cmFwIC50ZXJtLWdyaWR7bWluLWhlaWdodDoxMDAlfS50ZXJtaW5hbC1zY3JvbGxiYXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjRweDtyaWdodDoycHg7Ym90dG9tOjRweDt3aWR0aDoxNHB4O3otaW5kZXg6MTA7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuM3MgZWFzZTtwb2ludGVyLWV2ZW50czpub25lfS50ZXJtaW5hbC1zY3JvbGxiYXIudmlzaWJsZXtvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6YXV0b30udGVybWluYWwtc2Nyb2xsYmFyLXRyYWNre3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7d2lkdGg6MTRweDtib3JkZXItcmFkaXVzOjdweH0udGVybWluYWwtc2Nyb2xsYmFyLXRodW1ie3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjNweDt3aWR0aDo4cHg7bWluLWhlaWdodDoyOHB4O2JvcmRlci1yYWRpdXM6NHB4O2JhY2tncm91bmQ6I2I0OTY3ODU5O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2Usd2lkdGggLjE1cyBlYXNlLHJpZ2h0IC4xNXMgZWFzZX0udGVybWluYWwtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6I2M4YWE4YzhjO3dpZHRoOjEwcHg7cmlnaHQ6MnB4fS50ZXJtaW5hbC1zY3JvbGxiYXItdGh1bWIuZHJhZ2dpbmcsLnRlcm1pbmFsLXNjcm9sbGJhci10aHVtYjphY3RpdmV7YmFja2dyb3VuZDojZGNiOTk2YjM7d2lkdGg6MTBweDtyaWdodDoycHh9QG1lZGlhKHBvaW50ZXI6Y29hcnNlKXsudGVybWluYWwtc2Nyb2xsYmFyLC50ZXJtaW5hbC1zY3JvbGxiYXItdHJhY2t7d2lkdGg6MjBweH0udGVybWluYWwtc2Nyb2xsYmFyLXRodW1ie3dpZHRoOjEycHg7cmlnaHQ6NHB4O21pbi1oZWlnaHQ6MzZweH0udGVybWluYWwtc2Nyb2xsYmFyLXRodW1iOmhvdmVyLC50ZXJtaW5hbC1zY3JvbGxiYXItdGh1bWIuZHJhZ2dpbmd7d2lkdGg6MTRweDtyaWdodDozcHh9fS50ZXJtaW5hbC1jb250YWluZXI6Zm9jdXMtd2l0aGlue2JvcmRlci1jb2xvcjojYzU2NTNkODA7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmZmZmMTQsMCA4cHggMzJweCAjMDAwNiwwIDAgMCAycHggI2M1NjUzZDI2fS50ZXJtaW5hbC1yZXNpemUtaGFuZGxle3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTozcHg7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTt3aWR0aDo0OHB4O2hlaWdodDo1cHg7YmFja2dyb3VuZDojZmZmZmZmMTQ7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7Y3Vyc29yOm5zLXJlc2l6ZTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOjdweDtjb2xvcjojZmZmZmZmNDA7b3BhY2l0eTowO3RyYW5zaXRpb246YWxsIC4yNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyk7ei1pbmRleDoxMDtwb2ludGVyLWV2ZW50czphdXRvfS50ZXJtaW5hbC1yZXNpemUtaGFuZGxlOmJlZm9yZXtjb250ZW50OiJcMjJlZVwyMmVlIjtsZXR0ZXItc3BhY2luZzo4cHg7Zm9udC1zaXplOjZweH0udGVybWluYWwtcmVzaXplLWhhbmRsZTpob3ZlcntvcGFjaXR5OjE7YmFja2dyb3VuZDojZmZmZmZmMjY7Y29sb3I6I2ZmZmZmZjgwO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgc2NhbGUoMS4xKX0udGVybWluYWwtY29udGFpbmVyOmhvdmVyIC50ZXJtaW5hbC1yZXNpemUtaGFuZGxle29wYWNpdHk6Ljd9LnRlcm1pbmFsLWNvbnRhaW5lci5pbnRlcmFjdGl2ZXtib3JkZXItY29sb3I6IzRmN2E1ODhjO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggI2ZmZmZmZjBmLDAgMCAwIDJweCAjNGY3YTU4NDAsMCA4cHggMzJweCAjMDAwMDAwNTl9LnRlcm1pbmFsLWNvbnRhaW5lci5pbnRlcmFjdGl2ZTpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtoZWlnaHQ6MnB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHRyYW5zcGFyZW50LHZhcigtLXN1Y2Nlc3MpLHRyYW5zcGFyZW50KTthbmltYXRpb246dGVybWluYWwtYWN0aXZlLXB1bHNlIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlfUBrZXlmcmFtZXMgdGVybWluYWwtYWN0aXZlLXB1bHNlezAlLHRve29wYWNpdHk6LjV9NTAle29wYWNpdHk6MX19LnRlcm1pbmFsLWNvbnRhaW5lcjphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO2hlaWdodDo0OHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHRvcCxyZ2JhKDI2LDIyLDE5LC41KSx0cmFuc3BhcmVudCk7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBlYXNlO3otaW5kZXg6MTI7Ym9yZGVyLXJhZGl1czowIDAgdmFyKC0tcmFkaXVzLW1kKSB2YXIoLS1yYWRpdXMtbWQpfS50ZXJtaW5hbC1jb250YWluZXIuaGFzLWp1bXAtYnRuOmFmdGVye29wYWNpdHk6MX0udGVybWluYWwtc2NhbGUtYnRue21pbi13aWR0aDoyNHB4O2hlaWdodDoyNHB4O3BhZGRpbmc6MCA0cHg7Zm9udC1zaXplOi44NzVyZW07Zm9udC13ZWlnaHQ6NjAwfS50ZXJtaW5hbC1zY2FsZS1sYWJlbHtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bWluLXdpZHRoOjMycHg7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzowIDJweH0udGVybWluYWwtc2NhbGUtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6OHB4O3JpZ2h0OjhweDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MXB4O3BhZGRpbmc6MnB4O2JvcmRlci1yYWRpdXM6N3B4O2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDYpO2JhY2tncm91bmQ6IzE4MTQxMTYxO2JhY2tkcm9wLWZpbHRlcjpibHVyKDhweCk7Ym94LXNoYWRvdzowIDZweCAxOHB4ICMwMDAwMDAyZTtvcGFjaXR5Oi43Mjt0cmFuc2l0aW9uOm9wYWNpdHkgLjE4cyBlYXNlLGJhY2tncm91bmQgLjE4cyBlYXNlLGJvcmRlci1jb2xvciAuMThzIGVhc2U7ei1pbmRleDoxMjtwb2ludGVyLWV2ZW50czphdXRvfS50ZXJtaW5hbC1jb250YWluZXI6aG92ZXIgLnRlcm1pbmFsLXNjYWxlLW92ZXJsYXksLnRlcm1pbmFsLXNjYWxlLW92ZXJsYXk6Zm9jdXMtd2l0aGlue29wYWNpdHk6MTtiYWNrZ3JvdW5kOiMxODE0MTE4Zjtib3JkZXItY29sb3I6I2ZmZmZmZjFhfS50ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWJ0bnttaW4td2lkdGg6MjJweDtoZWlnaHQ6MjJweDtwYWRkaW5nOjAgM3B4O2NvbG9yOiNmNWVhZGNlMDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6NXB4O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMThzIGVhc2UsY29sb3IgLjE4cyBlYXNlfS50ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiNkNjdiNTIyZTtjb2xvcjojZmZmN2VmZjV9LnRlcm1pbmFsLXNjYWxlLW92ZXJsYXktbGFiZWx7Zm9udC1zaXplOi42MjVyZW07Y29sb3I6I2Y1ZWFkY2E4O21pbi13aWR0aDozNHB4O3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmc6MCAzcHh9LnRlcm1pbmFsLXNjYWxlLW92ZXJsYXktZGl2aWRlcnt3aWR0aDoxcHg7aGVpZ2h0OjE0cHg7YmFja2dyb3VuZDojZjVlYWRjMzM7bWFyZ2luOjAgMnB4fS50ZXJtaW5hbC1qdW1wLWJvdHRvbXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxNHB4O2JvdHRvbToxNnB4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MzRweDtoZWlnaHQ6MzRweDtwYWRkaW5nOjA7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4wOCk7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDojMWMxNjEyYzc7Y29sb3I6I2ZmZjdlZmViO2JveC1zaGFkb3c6MCAxcHggMnB4ICMwMDAwMDA0MCwwIDhweCAyMnB4ICMwMDAwMDA1MixpbnNldCAwIDFweCAjZmZmZmZmMGY7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTJweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxMnB4KTtjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjEzO29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxMHB4KSBzY2FsZSguODYpO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNnMgdmFyKC0tZWFzZS1vdXQtZXhwbyksdHJhbnNmb3JtIC4zMnMgdmFyKC0tZWFzZS1zcHJpbmcpLGJhY2tncm91bmQgLjE4cyBlYXNlLGJvcmRlci1jb2xvciAuMThzIGVhc2UsYm94LXNoYWRvdyAuMnMgZWFzZX0udGVybWluYWwtanVtcC1ib3R0b20udmlzaWJsZXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7cG9pbnRlci1ldmVudHM6YXV0b30udGVybWluYWwtanVtcC1ib3R0b20gc3Zne3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyB2YXIoLS1lYXNlLW91dC1leHBvKX0udGVybWluYWwtanVtcC1ib3R0b206aG92ZXJ7YmFja2dyb3VuZDojZDY3YjUyZWI7Ym9yZGVyLWNvbG9yOiNmZmZmZmYyZTtjb2xvcjojZmZmO2JveC1zaGFkb3c6MCAxcHggMnB4ICMwMDAwMDA0NywwIDEwcHggMjZweCAjYjg1YzM3NWMsaW5zZXQgMCAxcHggI2ZmZmZmZjJlfS50ZXJtaW5hbC1qdW1wLWJvdHRvbTpob3ZlciBzdmd7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMS41cHgpfS50ZXJtaW5hbC1qdW1wLWJvdHRvbTphY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoLjkyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wOHN9LnRlcm1pbmFsLWp1bXAtYm90dG9tOmZvY3VzLXZpc2libGV7b3V0bGluZTpub25lO2JveC1zaGFkb3c6MCAxcHggMnB4ICMwMDAwMDA0NywwIDEwcHggMjZweCAjYjg1YzM3NWMsaW5zZXQgMCAxcHggI2ZmZmZmZjJlLDAgMCAwIDNweCAjZDY3YjUyNTl9LnRlcm1pbmFsLWNvbnRhaW5lci5pbnRlcmFjdGl2ZXtib3JkZXItY29sb3I6IzRmN2E1ODgwO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggI2ZmZmZmZjBhLDAgMCAwIDJweCAjNGY3YTU4NDAsdmFyKC0tc2hhZG93LXNvZnQpfS5taW5pLWtleWJvYXJkLWZhYntwb3NpdGlvbjpmaXhlZDtib3R0b206NjBweDtyaWdodDoxNnB4O3dpZHRoOjQ0cHg7aGVpZ2h0OjQ0cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2NvbG9yOiNmZmY7Ym9yZGVyOm5vbmU7Zm9udC1zaXplOjEuMTI1cmVtO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6bm9uZTthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3gtc2hhZG93OjAgNHB4IDE2cHggI2I4NWMzNzU5O3otaW5kZXg6MTAwO3RyYW5zaXRpb246YWxsIC4ycyB2YXIoLS1lYXNlLXNwcmluZyl9Lm1pbmkta2V5Ym9hcmQtZmFiLnZpc2libGV7ZGlzcGxheTpmbGV4fS5taW5pLWtleWJvYXJkLWZhYjpob3Zlcnt0cmFuc2Zvcm06c2NhbGUoMS4xKTtib3gtc2hhZG93OjAgNnB4IDIwcHggI2I4NWMzNzczfS5taW5pLWtleWJvYXJkLWZhYjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NSl9Lm1pbmkta2V5Ym9hcmR7cG9zaXRpb246Zml4ZWQ7Ym90dG9tOjYwcHg7cmlnaHQ6MTZweDtiYWNrZ3JvdW5kOiMyYTFmMTZmNTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTIyLDkxLDY0LC41KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1sZyk7Ym94LXNoYWRvdzowIDhweCAzMnB4ICMwMDA2O3otaW5kZXg6MTAwMDtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KTtvdmVyZmxvdzpoaWRkZW47bWluLXdpZHRoOjI2MHB4O2FuaW1hdGlvbjpta1NsaWRlVXAgLjJzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5taW5pLWtleWJvYXJkLmhpZGRlbntkaXNwbGF5Om5vbmV9QGtleWZyYW1lcyBta1NsaWRlVXB7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDEycHgpIHNjYWxlKC45Nil9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpfX1AbWVkaWEobWF4LXdpZHRoOjY0MHB4KXsubWluaS1rZXlib2FyZHtib3R0b206MjBweDtyaWdodDoxMHB4O2xlZnQ6MTBweDttaW4td2lkdGg6MH0ubWluaS1rZXlib2FyZC1mYWJ7Ym90dG9tOjIwcHg7cmlnaHQ6MTZweH19LmNoYXQtY29udGFpbmVye3Bvc2l0aW9uOnJlbGF0aXZlO2ZsZXg6MTtkaXNwbGF5Om5vbmU7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21pbi1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowIDIwcHggMTZweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiYSgyNTUsMjUyLDI0OCwuNSkgMCUsdHJhbnNwYXJlbnQgMTAwJSl9LmNoYXQtdW5yZWFkLWJ1YmJsZXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxNHB4O2JvdHRvbToxMHB4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Z2FwOjZweDtoZWlnaHQ6MzJweDttaW4td2lkdGg6MzJweDtwYWRkaW5nOjAgMTBweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC43Mik7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOiNmZmZjZjhlYjtjb2xvcjp2YXIoLS1hY2NlbnQpO2ZvbnQtc2l6ZTouNzhyZW07Zm9udC13ZWlnaHQ6NjAwO2xpbmUtaGVpZ2h0OjE7bGV0dGVyLXNwYWNpbmc6LjAxZW07d2hpdGUtc3BhY2U6bm93cmFwO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE0cHgpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTRweCk7Ym94LXNoYWRvdzowIDFweCAzcHggIzU5M2EyMDFmLDAgMTBweCAyNHB4ICNiODVjMzcyZSxpbnNldCAwIDFweCAjZmZmOTtjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjEzO29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg4cHgpIHNjYWxlKC45KTtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb246b3BhY2l0eSAuMjZzIHZhcigtLWVhc2Utb3V0LWV4cG8pLHRyYW5zZm9ybSAuMzJzIHZhcigtLWVhc2Utc3ByaW5nKSxiYWNrZ3JvdW5kIC4xOHMgZWFzZSxib3JkZXItY29sb3IgLjE4cyBlYXNlLGJveC1zaGFkb3cgLjJzIGVhc2UsY29sb3IgLjE4cyBlYXNlLHBhZGRpbmcgLjIycyB2YXIoLS1lYXNlLW91dC1leHBvKX0uY2hhdC11bnJlYWQtYnViYmxlLnZpc2libGV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpO3BvaW50ZXItZXZlbnRzOmF1dG99LmNoYXQtdW5yZWFkLWJ1YmJsZS5oYXMtdW5yZWFke2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtjb2xvcjojZmZmO2JvcmRlci1jb2xvcjojZmZmZmZmYzc7cGFkZGluZzowIDEycHggMCAxMHB4O2JveC1zaGFkb3c6MCAxcHggM3B4ICM1OTNhMjAyZSwwIDEycHggMjhweCAjYjg1YzM3NTIsaW5zZXQgMCAxcHggI2ZmZmZmZjQ3fS5jaGF0LXVucmVhZC1idWJibGUtaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZsZXgtc2hyaW5rOjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5jaGF0LXVucmVhZC1idWJibGU6aG92ZXJ7YmFja2dyb3VuZDojZmZmYWYyO2JveC1zaGFkb3c6MCAycHggNHB4ICM1OTNhMjAyOSwwIDE0cHggMzBweCAjYjg1YzM3M2QsaW5zZXQgMCAxcHggI2ZmZmZmZmIzfS5jaGF0LXVucmVhZC1idWJibGUuaGFzLXVucmVhZDpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1ob3Zlcik7Ym94LXNoYWRvdzowIDJweCA1cHggIzU5M2EyMDM4LDAgMTRweCAzMnB4ICNiODVjMzc2YixpbnNldCAwIDFweCAjZmZmZmZmNTJ9LmNoYXQtdW5yZWFkLWJ1YmJsZTpob3ZlciAuY2hhdC11bnJlYWQtYnViYmxlLWljb257dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMS41cHgpfS5jaGF0LXVucmVhZC1idWJibGU6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKC45NCk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDhzfS5jaGF0LXVucmVhZC1idWJibGU6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOm5vbmU7Ym94LXNoYWRvdzowIDJweCA0cHggIzU5M2EyMDMzLDAgMTJweCAyOHB4ICNiODVjMzc1MixpbnNldCAwIDFweCAjZmZmZmZmNTIsMCAwIDAgM3B4ICNjNTY1M2Q1Mn0uY2hhdC11bnJlYWQtYnViYmxlLWNvdW50e2Rpc3BsYXk6bm9uZTthbGlnbi1pdGVtczpjZW50ZXI7Zm9udC1zaXplOi43OHJlbTtmb250LXdlaWdodDo2MDA7bGluZS1oZWlnaHQ6MTtsZXR0ZXItc3BhY2luZzouMDFlbTtwb2ludGVyLWV2ZW50czpub25lfS5jaGF0LXVucmVhZC1idWJibGUtY291bnQudmlzaWJsZXtkaXNwbGF5OmlubGluZS1mbGV4O2FuaW1hdGlvbjpjaGF0VW5yZWFkQ291bnRQb3AgLjIycyB2YXIoLS1lYXNlLW91dC1iYWNrLCBjdWJpYy1iZXppZXIoLjM0LCAxLjU2LCAuNjQsIDEpKX0uY2hhdC11bnJlYWQtYnViYmxlLWNvdW50OmFmdGVye2NvbnRlbnQ6IiBcNjc2MVw2NWIwXDZkODhcNjA2ZiI7bWFyZ2luLWxlZnQ6MnB4O2ZvbnQtd2VpZ2h0OjUwMDtvcGFjaXR5Oi45NX1Aa2V5ZnJhbWVzIGNoYXRVbnJlYWRDb3VudFBvcHswJXt0cmFuc2Zvcm06c2NhbGUoLjYpO29wYWNpdHk6MH10b3t0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfX0uY2hhdC11bnJlYWQtZGl2aWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMnB4O21hcmdpbjo2cHggNHB4IDJweDtwYWRkaW5nOjAgMnB4O2ZvbnQtc2l6ZTouNzJyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLWFjY2VudCk7bGV0dGVyLXNwYWNpbmc6LjA0ZW07dXNlci1zZWxlY3Q6bm9uZTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDthbmltYXRpb246Y2hhdFVucmVhZERpdmlkZXJJbiAuMzJzIHZhcigtLWVhc2Utb3V0LWV4cG8pIGZvcndhcmRzfS5jaGF0LXVucmVhZC1kaXZpZGVyLWxpbmV7ZmxleDoxO2hlaWdodDoxcHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsI2M1NjUzZDBkLCNjNTY1M2Q1MiwjYzU2NTNkMGQpfS5jaGF0LXVucmVhZC1kaXZpZGVyLWxhYmVse2ZsZXgtc2hyaW5rOjA7cGFkZGluZzozcHggMTBweDtiYWNrZ3JvdW5kOiNmZmY4ZjBmMjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTk3LDEwMSw2MSwuMTgpO2JvcmRlci1yYWRpdXM6OTk5cHg7Ym94LXNoYWRvdzowIDFweCAzcHggI2I4NWMzNzFhO3doaXRlLXNwYWNlOm5vd3JhcH1Aa2V5ZnJhbWVzIGNoYXRVbnJlYWREaXZpZGVySW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0ycHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX19LmNoYXQtY29udGFpbmVyLmFjdGl2ZXtkaXNwbGF5OmZsZXh9LmNoYXQtY29udGFpbmVyOmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7aGVpZ2h0OjQ4cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gdG9wLHJnYmEoMjU1LDI1MiwyNDgsLjYpLHRyYW5zcGFyZW50KTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGVhc2U7ei1pbmRleDoxMn0uY2hhdC1jb250YWluZXIuaGFzLWp1bXAtYnRuOmFmdGVye29wYWNpdHk6MX0uY2hhdC1tZXNzYWdlc3tmbGV4OjE7b3ZlcmZsb3cteTphdXRvO292ZXJmbG93LXg6aGlkZGVuO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZTtnYXA6MTZweDtwYWRkaW5nOjIwcHggNHB4IDEycHg7bWluLWhlaWdodDowO21pbi13aWR0aDowO3Njcm9sbGJhci1ndXR0ZXI6c3RhYmxlO292ZXJzY3JvbGwtYmVoYXZpb3I6Y29udGFpbn0uY2hhdC1sb2FkLW1vcmV7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzo4cHggMH0uY2hhdC1sb2FkLW1vcmUtYnRue2JhY2tncm91bmQ6dmFyKC0tYmctaG92ZXIpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXNpemU6Ljc1cmVtO3BhZGRpbmc6NnB4IDE2cHg7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjphbGwgLjJzIGVhc2V9LmNoYXQtbG9hZC1tb3JlLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Y29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX1Aa2V5ZnJhbWVzIG1lc3NhZ2VTbGlkZXswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTZweCkgc2NhbGUoLjk3KTtmaWx0ZXI6Ymx1cig2cHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSgxKTtmaWx0ZXI6Ymx1cigwKX19QGtleWZyYW1lcyBtZXNzYWdlU2xpZGVVc2VyezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlKDIwcHgpIHRyYW5zbGF0ZVkoOHB4KSBzY2FsZSguOTYpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlKDApIHRyYW5zbGF0ZVkoMCkgc2NhbGUoMSl9fUBrZXlmcmFtZXMgbWVzc2FnZUZsb2F0ezAlLHRve3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfTUwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtM3B4KX19LmNoYXQtbWVzc2FnZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO21hcmdpbjo0cHggMDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2UsdHJhbnNmb3JtIC4ycyB2YXIoLS1lYXNlLW91dC1leHBvKTstLWNoYXQtY2FyZC1tYXgtd2lkdGg6IDcyMHB4fS5jaGF0LW1lc3NhZ2U6aG92ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCl9QG1lZGlhKGhvdmVyOm5vbmUpey5jaGF0LW1lc3NhZ2U6aG92ZXJ7dHJhbnNmb3JtOm5vbmV9LmNoYXQtbWVzc2FnZTpob3ZlciAuY2hhdC1tZXNzYWdlLWJ1YmJsZXtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1zbSl9LmNoYXQtbWVzc2FnZS5hc3Npc3RhbnQ6aG92ZXIgLmNoYXQtbWVzc2FnZS1idWJibGV7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1zdWJ0bGUpO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXNtKX19LmNoYXQtbWVzc2FnZS51c2Vye2FsaWduLXNlbGY6ZmxleC1lbmR9LmNoYXQtbWVzc2FnZS5hc3Npc3RhbnR7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0O21heC13aWR0aDoxMDAlO3dpZHRoOjEwMCV9LmNoYXQtbWVzc2FnZS5zeXN0ZW0taW5mb3thbGlnbi1zZWxmOmNlbnRlcjttYXgtd2lkdGg6MTAwJTt3aWR0aDoxMDAlO21hcmdpbjoxMHB4IDA7YW5pbWF0aW9uOm1lc3NhZ2VGbG9hdCAzcyBlYXNlLWluLW91dCBpbmZpbml0ZX0uc3lzdGVtLWluZm8tY2FyZHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsIzYzNjZmMTE0LCM2MzY2ZjEwYSk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDk5LDEwMiwyNDEsLjIpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtwYWRkaW5nOjEycHggMTZweDtmb250LXNpemU6LjgxMjVyZW07Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3cteHMpfS5zeXN0ZW0taW5mby1oZWFkZXJ7Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOiM2MzY2ZjFmMjttYXJnaW4tYm90dG9tOjhweDtmb250LXNpemU6LjY4NzVyZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOi4wOGVtO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweH0uc3lzdGVtLWluZm8taGVhZGVyOmJlZm9yZXtjb250ZW50OiIiO3dpZHRoOjhweDtoZWlnaHQ6OHB4O2JhY2tncm91bmQ6IzYzNjZmMTk5O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpfS5zeXN0ZW0taW5mby1jb250ZW50e2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt3b3JkLXdyYXA6YnJlYWstd29yZDtsaW5lLWhlaWdodDp2YXIoLS1saW5lLWhlaWdodC1iYXNlKTttYXgtaGVpZ2h0OjIwMHB4O292ZXJmbG93LXk6YXV0b30uY2hhdC1tZXNzYWdlLmFuaW1hdGUtaW57YW5pbWF0aW9uOm1lc3NhZ2VTbGlkZSAuNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyk7d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm0sZmlsdGVyfS5jaGF0LW1lc3NhZ2UudXNlci5hbmltYXRlLWlue2FuaW1hdGlvbjptZXNzYWdlU2xpZGVVc2VyIC40cyB2YXIoLS1lYXNlLW91dC1iYWNrKX0uY2hhdC1tZXNzYWdlLWF2YXRhcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzowIDJweCA0cHh9LmNoYXQtbWVzc2FnZS1hdmF0YXIuYXNzaXN0YW50e2ZsZXgtZGlyZWN0aW9uOnJvd30uY2hhdC1tZXNzYWdlLWF2YXRhci51c2Vye2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS5waXhlbC1hdmF0YXJ7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtmbGV4LXNocmluazowO2JvcmRlci1yYWRpdXM6NnB4O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtib3gtc2hhZG93OjAgMXB4IDNweCAjMDAwMDAwMjZ9LnBpeGVsLWF2YXRhci1pbWFnZXtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb3Zlcn0ucGl4ZWwtYXZhdGFyLXN2Z3tkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7aW1hZ2UtcmVuZGVyaW5nOnBpeGVsYXRlZH0uYXZhdGFyLW5hbWV7Zm9udC1zaXplOi43cmVtO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMDNlbTtsaW5lLWhlaWdodDoxfS5jaGF0LW1lc3NhZ2UuYXNzaXN0YW50IC5hdmF0YXItbmFtZXtjb2xvcjp2YXIoLS1hY2NlbnQpfS5jaGF0LW1lc3NhZ2UudXNlciAuYXZhdGFyLW5hbWV7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSl9LmNoYXQtbWVzc2FnZS1idWJibGV7cGFkZGluZzoxMnB4IDE2cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO2ZvbnQtc2l6ZTouODc1cmVtO2xpbmUtaGVpZ2h0OnZhcigtLWxpbmUtaGVpZ2h0LXJlbGF4ZWQpO3dvcmQtd3JhcDpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay13b3JkO3doaXRlLXNwYWNlOnByZS13cmFwO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVuO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXNtKTt0cmFuc2l0aW9uOmJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uY2hhdC1tZXNzYWdlOmhvdmVyIC5jaGF0LW1lc3NhZ2UtYnViYmxle2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LW1kKX0uY2hhdC1tZXNzYWdlLnVzZXIgLmNoYXQtbWVzc2FnZS1idWJibGV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHZhcigtLWFjY2VudCkgMCUsdmFyKC0tYWNjZW50LWhvdmVyKSAxMDAlKTtjb2xvcjp2YXIoLS10ZXh0LWludmVyc2UpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWxnKSB2YXIoLS1yYWRpdXMtbGcpIHZhcigtLXJhZGl1cy1zbSkgdmFyKC0tcmFkaXVzLWxnKTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODEyNXJlbTttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstd29yZDtib3gtc2hhZG93OjAgNHB4IDE2cHggI2M1NjUzZDRkLGluc2V0IDAgMXB4ICNmZmZmZmYyNn0uY2hhdC1tZXNzYWdlLnVzZXJ7bWF4LXdpZHRoOjEwMCV9LnVzZXItYXR0YWNobWVudHN7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtnYXA6NnB4O21hcmdpbi1ib3R0b206NnB4fS51c2VyLWF0dGFjaG1lbnQtaW1hZ2V7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDowfS51c2VyLWF0dGFjaG1lbnQtdGh1bWJ7ZGlzcGxheTpibG9jazttYXgtd2lkdGg6bWluKDEwMCUsMjQwcHgpO21heC1oZWlnaHQ6MjAwcHg7d2lkdGg6YXV0bztoZWlnaHQ6YXV0bztib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4yNSk7b2JqZWN0LWZpdDpjb250YWluO2N1cnNvcjp6b29tLWluO2JveC1zaGFkb3c6MCAycHggOHB4ICMwMDAwMDAyNDt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMTZzIGVhc2UsYm94LXNoYWRvdyAuMTZzIGVhc2UsdHJhbnNmb3JtIC4xNnMgZWFzZX0udXNlci1hdHRhY2htZW50LXRodW1iOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCA0cHggMTRweCAjMDAwMzt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KX0udXNlci1hdHRhY2htZW50LWZpbGV7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjVweCAxMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtiYWNrZ3JvdW5kOnZhcigtLWJnLXN1cmZhY2UpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc2l6ZTouNzVyZW07Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE2cyBlYXNlLGNvbG9yIC4xNnMgZWFzZX0udXNlci1hdHRhY2htZW50LWZpbGU6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0udXNlci1hdHRhY2htZW50LWZpbGUtaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2ZsZXgtc2hyaW5rOjA7Y29sb3I6dmFyKC0tYWNjZW50KX0udXNlci1hdHRhY2htZW50LWZpbGUtbmFtZXtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LnVzZXItYXR0YWNobWVudC10ZXh0e3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZDtvdmVyZmxvdy13cmFwOmFueXdoZXJlfS5jaGF0LW1lc3NhZ2UuYXNzaXN0YW50IC5jaGF0LW1lc3NhZ2UtYnViYmxle2JhY2tncm91bmQ6dmFyKC0tYmctc3VyZmFjZSk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtwYWRkaW5nOjE0cHggMThweDttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt3b3JkLXdyYXA6YnJlYWstd29yZDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstd29yZDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXNtKX0uY2hhdC1tZXNzYWdlLmFzc2lzdGFudDpob3ZlciAuY2hhdC1tZXNzYWdlLWJ1YmJsZXtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50LXNvZnQpO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LW1kKX0uY2hhdC1tZXNzYWdlLWNvbnRlbnR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MnB4O3dpZHRoOjEwMCU7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7b3ZlcmZsb3cteDpoaWRkZW47Zm9udC1zaXplOi44NzVyZW07bGluZS1oZWlnaHQ6dmFyKC0tbGluZS1oZWlnaHQtcmVsYXhlZCk7d29yZC13cmFwOmJyZWFrLXdvcmQ7d29yZC1icmVhazpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YW55d2hlcmU7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtib3gtc2l6aW5nOmJvcmRlci1ib3h9LmNoYXQtbWVzc2FnZS1jb250ZW50Pi50aGlua2luZy1pbmxpbmUsLmNoYXQtbWVzc2FnZS1jb250ZW50Pi5pbmxpbmUtdG9vbCwuY2hhdC1tZXNzYWdlLWNvbnRlbnQ+LnRvb2wtdXNlLWNhcmQsLmNoYXQtbWVzc2FnZS1jb250ZW50Pi50b29sLWdyb3Vwe21hcmdpbjozcHggMH0uY2hhdC1tZXNzYWdlLm11bHRpLWFnZW50e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjZweDt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO2JveC1zaXppbmc6Ym9yZGVyLWJveH0uY2hhdC1tZXNzYWdlLnVzZXIubXVsdGktYWdlbnR7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9LmNoYXQtbWVzc2FnZS5tdWx0aS1hZ2VudCAuY2hhdC1tZXNzYWdlLXNlZ21lbnR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1zZWxmOmZsZXgtc3RhcnQ7d2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDtib3gtc2l6aW5nOmJvcmRlci1ib3h9LmNoYXQtbWVzc2FnZS5tdWx0aS1hZ2VudCAuY2hhdC1tZXNzYWdlLXNlZ21lbnQuc3ViYWdlbnR7cGFkZGluZy1sZWZ0OjEwcHg7bWFyZ2luLWxlZnQ6NnB4O2JvcmRlci1sZWZ0OjJweCBzb2xpZCB2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYm9yZGVyLXN1YnRsZSkpO2JvcmRlci1yYWRpdXM6MCA0cHggNHB4IDA7d2lkdGg6Y2FsYygxMDAlIC0gNnB4KTttYXgtd2lkdGg6Y2FsYygxMDAlIC0gNnB4KX0uY2hhdC1tZXNzYWdlLm11bHRpLWFnZW50IC5jaGF0LW1lc3NhZ2Utc2VnbWVudC5zdWJhZ2VudCAuY2hhdC1tZXNzYWdlLWNvbnRlbnR7b3BhY2l0eTouOTZ9LmNoYXQtbWVzc2FnZS5tdWx0aS1hZ2VudCAuY2hhdC1tZXNzYWdlLXNlZ21lbnQgLmNoYXQtbWVzc2FnZS1hdmF0YXJ7cGFkZGluZy1ib3R0b206NHB4fS5jaGF0LW1lc3NhZ2UtYXZhdGFyLnN1YmFnZW50IC5hdmF0YXItbmFtZXtjb2xvcjp2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSl9LnN1YmFnZW50LXJlcGx5e2JhY2tncm91bmQ6I2M1NjUzZDBmO2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDYlLHZhcigtLWJnLXN1cmZhY2UpKTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTk3LDEwMSw2MSwuMik7Ym9yZGVyOjFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMjAlLHRyYW5zcGFyZW50KTtib3JkZXItcmFkaXVzOjEwcHg7cGFkZGluZzoxMHB4IDE0cHg7bWFyZ2luOjRweCAwO2xpbmUtaGVpZ2h0OjEuNTU7Zm9udC1zaXplOi44NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTtib3gtc2l6aW5nOmJvcmRlci1ib3g7d2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDtvdmVyZmxvdy14OmhpZGRlbn0uc3ViYWdlbnQtcmVwbHk+OmZpcnN0LWNoaWxke21hcmdpbi10b3A6MH0uc3ViYWdlbnQtcmVwbHk+Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5zdWJhZ2VudC1yZXBseS5lcnJvcntiYWNrZ3JvdW5kOiNlMjU3NGMxNDtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWRhbmdlciwgI2UyNTc0YykgOCUsdmFyKC0tYmctc3VyZmFjZSkpO2JvcmRlci1jb2xvcjojZTI1NzRjNTk7Ym9yZGVyLWNvbG9yOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWRhbmdlciwgI2UyNTc0YykgMzUlLHRyYW5zcGFyZW50KX0uc3ViYWdlbnQtcmVwbHkucGVuZGluZ3tvcGFjaXR5Oi43O3BhZGRpbmc6MTRweCAxNnB4fS5zdWJhZ2VudC1yZXBseTpub3QoLmNvbGxhcHNpYmxlKXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6NnB4fS5zdWJhZ2VudC1yZXBseSBwcmUsLnN1YmFnZW50LXJlcGx5IGNvZGV7Zm9udC1zaXplOi44MnJlbX0uc3ViYWdlbnQtcmVwbHkgcHJle2JhY2tncm91bmQ6IzAwMDAwMDBhO3BhZGRpbmc6MTBweCAxMnB4O2JvcmRlci1yYWRpdXM6NnB4O292ZXJmbG93LXg6aGlkZGVuO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO21hcmdpbjo4cHggMDttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MH0uc3ViYWdlbnQtcGFuZWx7bWFyZ2luOjhweCAwO2JvcmRlcjoxcHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDI1JSx0cmFuc3BhcmVudCk7Ym9yZGVyLWxlZnQ6M3B4IHNvbGlkIGNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA1NSUsdHJhbnNwYXJlbnQpO2JvcmRlci1yYWRpdXM6MTBweDtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMyUsdmFyKC0tYmctc3VyZmFjZSkpO2JveC1zaGFkb3c6MCAxcHggMnB4ICMwMDAwMDAwOH0uc3ViYWdlbnQtcGFuZWwtaGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjhweCAxMnB4O2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDEwJSx2YXIoLS1iZy1zdXJmYWNlKSk7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDE2JSx0cmFuc3BhcmVudCk7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZTtmb250LXNpemU6Ljc4cmVtO2xpbmUtaGVpZ2h0OjEuMzU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMgZWFzZX0uc3ViYWdlbnQtcGFuZWwtaGVhZGVyOmhvdmVye2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDE0JSx2YXIoLS1iZy1zdXJmYWNlKSl9LnN1YmFnZW50LXBhbmVsLWhlYWRlcjpmb2N1cy12aXNpYmxle291dGxpbmU6MnB4IHNvbGlkIGNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA1NSUsdHJhbnNwYXJlbnQpO291dGxpbmUtb2Zmc2V0Oi0ycHh9LnN1YmFnZW50LXBhbmVsLWF2YXRhcntmbGV4OjAgMCBhdXRvO3dpZHRoOjIycHg7aGVpZ2h0OjIycHg7Ym9yZGVyLXJhZGl1czo1cHg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDE4JSx0cmFuc3BhcmVudCk7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uc3ViYWdlbnQtcGFuZWwtYXZhdGFyIHN2Zywuc3ViYWdlbnQtcGFuZWwtYXZhdGFyIGltZ3t3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2Rpc3BsYXk6YmxvY2t9LnN1YmFnZW50LXBhbmVsLWFycm93e2ZsZXg6MCAwIGF1dG87Y29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDY1JSx2YXIoLS10ZXh0LXByaW1hcnkpKTtvcGFjaXR5Oi44O2ZvbnQtd2VpZ2h0OjYwMH0uc3ViYWdlbnQtcGFuZWwtYXR0cmlidXRpb257ZmxleDoxIDEgYXV0bzttaW4td2lkdGg6MDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0uc3ViYWdlbnQtcGFuZWwtbmFtZXtjb2xvcjpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgODglLHZhcigtLXRleHQtcHJpbWFyeSkpO2ZvbnQtd2VpZ2h0OjYwMH0uc3ViYWdlbnQtcGFuZWwtdGFne2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbjowIDZweDtwYWRkaW5nOjAgNnB4O2ZvbnQtc2l6ZTouNjJyZW07Zm9udC13ZWlnaHQ6NTAwO2xldHRlci1zcGFjaW5nOi4wNGVtO2NvbG9yOnZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKTtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSAxMiUsdHJhbnNwYXJlbnQpO2JvcmRlcjoxcHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDMwJSx0cmFuc3BhcmVudCk7Ym9yZGVyLXJhZGl1czo0cHg7dmVydGljYWwtYWxpZ246MXB4O2xpbmUtaGVpZ2h0OjEuNDt3aGl0ZS1zcGFjZTpub3dyYXB9LnN1YmFnZW50LXBhbmVsLXRhc2stZGVzY3tjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXdlaWdodDo0MDB9LnN1YmFnZW50LXBhbmVsLXRvZ2dsZXtmbGV4OjAgMCBhdXRvO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHg7cGFkZGluZzozcHggMTBweDtmb250LXNpemU6LjdyZW07Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjEuMztjb2xvcjpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgNzglLHZhcigtLXRleHQtcHJpbWFyeSkpO2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDglLHZhcigtLWJnLXN1cmZhY2UpKTtib3JkZXI6MXB4IHNvbGlkIGNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSAzMCUsdHJhbnNwYXJlbnQpO2JvcmRlci1yYWRpdXM6OTk5cHg7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1cyBlYXNlLGJvcmRlci1jb2xvciAuMTVzIGVhc2UsdHJhbnNmb3JtIC4xcyBlYXNlfS5zdWJhZ2VudC1wYW5lbC10b2dnbGU6aG92ZXJ7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTglLHZhcigtLWJnLXN1cmZhY2UpKTtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDQ1JSx0cmFuc3BhcmVudCl9LnN1YmFnZW50LXBhbmVsLXRvZ2dsZTphY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMXB4KX0uc3ViYWdlbnQtcGFuZWwtdG9nZ2xlLWljb257dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIHZhcigtLWVhc2Utb3V0LWV4cG8sIGN1YmljLWJlemllciguMTYsIDEsIC4zLCAxKSl9LnN1YmFnZW50LXBhbmVsW2RhdGEtZXhwYW5kZWQ9dHJ1ZV0gLnN1YmFnZW50LXBhbmVsLXRvZ2dsZS1pY29ue3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0uc3ViYWdlbnQtcGFuZWwtYm9keXtwYWRkaW5nOjEwcHggMTRweDtvdmVyZmxvdy15OmF1dG87b3ZlcmZsb3cteDpoaWRkZW47bWluLXdpZHRoOjA7bWF4LXdpZHRoOjEwMCU7dHJhbnNpdGlvbjptYXgtaGVpZ2h0IC4yOHMgdmFyKC0tZWFzZS1vdXQtZXhwbywgY3ViaWMtYmV6aWVyKC4xNiwgMSwgLjMsIDEpKTtzY3JvbGxiYXItZ3V0dGVyOnN0YWJsZX0uc3ViYWdlbnQtcGFuZWxbZGF0YS1leHBhbmRlZD1mYWxzZV0gLnN1YmFnZW50LXBhbmVsLWJvZHl7bWF4LWhlaWdodDoyMmVtfS5zdWJhZ2VudC1wYW5lbFtkYXRhLWV4cGFuZGVkPXRydWVdIC5zdWJhZ2VudC1wYW5lbC1ib2R5e21heC1oZWlnaHQ6NzB2aH0uc3ViYWdlbnQtcGFuZWwtYm9keT46Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDowfS5zdWJhZ2VudC1wYW5lbC1ib2R5PjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uc3ViYWdlbnQtcGFuZWwtYm9keSAudG9vbC11c2UtY2FyZCwuc3ViYWdlbnQtcGFuZWwtYm9keSAudG9vbC1ncm91cCwuc3ViYWdlbnQtcGFuZWwtYm9keSAuaW5saW5lLXRvb2wsLnN1YmFnZW50LXBhbmVsLWJvZHkgLmlubGluZS10ZXJtaW5hbCwuc3ViYWdlbnQtcGFuZWwtYm9keSAuaW5saW5lLWRpZmZ7bWFyZ2luOjRweCAwfS5zdWJhZ2VudC1wYW5lbC1ib2R5IC5tYXJrZG93bi1jb250ZW50e2ZvbnQtc2l6ZTouODc1cmVtfS5zdWJhZ2VudC1wYW5lbC1ib2R5Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo3cHg7aGVpZ2h0OjdweH0uc3ViYWdlbnQtcGFuZWwtYm9keTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMzIlLHRyYW5zcGFyZW50KTtib3JkZXItcmFkaXVzOjRweH0uc3ViYWdlbnQtcGFuZWwtYm9keTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXJ7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgNTAlLHRyYW5zcGFyZW50KX0uc3ViYWdlbnQtcGFuZWwtYm9keTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2t7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0uc3ViYWdlbnQtcGFuZWwtZm9vdGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7cGFkZGluZzo2cHggMTJweDtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA2JSx2YXIoLS1iZy1zdXJmYWNlKSk7Ym9yZGVyLXRvcDoxcHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDE0JSx0cmFuc3BhcmVudCk7Zm9udC1zaXplOi43cmVtfS5zdWJhZ2VudC1wYW5lbC1mb290ZXItaGludHtmbGV4OjEgMSBhdXRvO21pbi13aWR0aDowO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO29wYWNpdHk6Ljc7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtsZXR0ZXItc3BhY2luZzouMDRlbTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LnN1YmFnZW50LXJlcGx5LmNvbGxhcHNpYmxle3BhZGRpbmc6MDtvdmVyZmxvdzpoaWRkZW59LnN1YmFnZW50LXJlcGx5LmZpbmFse21hcmdpbjo2cHggMCAwO3BhZGRpbmc6MTBweCAxMnB4O2JvcmRlci1yYWRpdXM6OHB4O2JvcmRlci1sZWZ0OjNweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgNjAlLHRyYW5zcGFyZW50KTtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA1JSx2YXIoLS1iZy1zdXJmYWNlKSl9LnN1YmFnZW50LXJlcGx5LmZpbmFsLmVycm9ye2JvcmRlci1sZWZ0LWNvbG9yOnZhcigtLWRhbmdlciwgI2UyNTc0Yyk7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1kYW5nZXIsICNlMjU3NGMpIDUlLHZhcigtLWJnLXN1cmZhY2UpKX0uc3ViYWdlbnQtcmVwbHktbWFya2Vye2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHg7bWFyZ2luLWJvdHRvbTo0cHg7Zm9udC1zaXplOi42OHJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjA0ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2NvbG9yOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA3OCUsdmFyKC0tdGV4dC1wcmltYXJ5KSl9LnN1YmFnZW50LXJlcGx5LW1hcmtlci5lcnJvcntjb2xvcjp2YXIoLS1kYW5nZXIsICNlMjU3NGMpfS5zdWJhZ2VudC1yZXBseS1tYXJrZXIucGVuZGluZ3tjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt0ZXh0LXRyYW5zZm9ybTpub25lO2xldHRlci1zcGFjaW5nOjA7Zm9udC13ZWlnaHQ6NTAwfS5zdWJhZ2VudC1yZXBseS1tYXJrZXItaWNvbntmb250LXdlaWdodDo3MDB9LnN1YmFnZW50LXJlcGx5LmZpbmFsIC5zdWJhZ2VudC1yZXBseS1jb250ZW50PjpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjB9LnN1YmFnZW50LXJlcGx5LmZpbmFsIC5zdWJhZ2VudC1yZXBseS1jb250ZW50PjpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uZW1wdHktbWVzc2FnZSAuZW1wdHktbWVzc2FnZS1oaW50e2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO2ZvbnQtc3R5bGU6aXRhbGljO2ZvbnQtc2l6ZTouODEyNXJlbTtvcGFjaXR5Oi43fS51bmtub3duLWJsb2Nre21hcmdpbjo0cHggMDtib3JkZXI6MXB4IGRhc2hlZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS10ZXh0LW11dGVkKSA2JSx0cmFuc3BhcmVudCk7Zm9udC1zaXplOi43NXJlbTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udW5rbm93bi1ibG9jazpob3ZlcntiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLXRleHQtbXV0ZWQpIDEwJSx0cmFuc3BhcmVudCl9LnVua25vd24tYmxvY2staGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjZweCAxMHB4O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0udW5rbm93bi1ibG9jay1pY29ue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MThweDtoZWlnaHQ6MThweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnZhcigtLXRleHQtbXV0ZWQpO2NvbG9yOnZhcigtLWJnLXN1cmZhY2UpO2ZvbnQtc2l6ZTouN3JlbTtmb250LXdlaWdodDo2MDB9LnVua25vd24tYmxvY2stbGFiZWx7ZmxleDoxO2ZvbnQtd2VpZ2h0OjUwMH0udW5rbm93bi1ibG9jay10b2dnbGV7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7Zm9udC1zaXplOi43cmVtO3RyYW5zaXRpb246dHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnVua25vd24tYmxvY2suY29sbGFwc2VkIC51bmtub3duLWJsb2NrLXRvZ2dsZXt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyl9LnVua25vd24tYmxvY2stYm9keXttYXJnaW46MDtwYWRkaW5nOjhweCAxMHB4IDEwcHg7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjdyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO3doaXRlLXNwYWNlOnByZS13cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGw7bWF4LWhlaWdodDoyNDBweDttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDtvdmVyZmxvdy14OmhpZGRlbjtvdmVyZmxvdy15OmF1dG87Ym9yZGVyLXRvcDoxcHggZGFzaGVkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JveC1zaXppbmc6Ym9yZGVyLWJveH0udW5rbm93bi1ibG9jay5jb2xsYXBzZWQgLnVua25vd24tYmxvY2stYm9keXtkaXNwbGF5Om5vbmV9LnRvb2wtdXNlLWNhcmRbZGF0YS10cnVuY2F0ZWQ9dHJ1ZV0gLnRvb2wtdXNlLW5hbWU6YWZ0ZXIsLmlubGluZS10b29sW2RhdGEtdHJ1bmNhdGVkPXRydWVdIC5pbmxpbmUtdG9vbC10aXRsZTphZnRlcntjb250ZW50OiJcNWRmMlw2MjJhXDY1YWQiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1sZWZ0OjZweDtwYWRkaW5nOjFweCA2cHg7Zm9udC1zaXplOi42cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LWludmVyc2UsICNmZmYpO2JhY2tncm91bmQ6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7Ym9yZGVyLXJhZGl1czo5OTlweDtsZXR0ZXItc3BhY2luZzouMDJlbTt2ZXJ0aWNhbC1hbGlnbjoxcHg7b3BhY2l0eTouODV9LmNoYXQtbWVzc2FnZS50aGlua2luZ3thbGlnbi1zZWxmOmZsZXgtc3RhcnQ7bWF4LXdpZHRoOjEwMCU7bWFyZ2luOjRweCAwfS5jaGF0LW1lc3NhZ2UucHJvbXB0e2FsaWduLXNlbGY6Y2VudGVyO21heC13aWR0aDoxMDAlO21hcmdpbjo0cHggMH0ucHJvbXB0LWNhcmR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6NHB4IDhweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Y3Vyc29yOmRlZmF1bHQ7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ucHJvbXB0LWljb257Zm9udC1zaXplOi44NzVyZW19LnByb21wdC1jb250ZW50e2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zdHlsZTppdGFsaWN9LnByb21wdC10ZXh0e2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Y29sb3I6I2M1NjUzZGNjO2ZvbnQtd2VpZ2h0OjUwMH0udHlwaW5nLWluZGljYXRvcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo1cHg7cGFkZGluZzo2cHggMH0udHlwaW5nLWluZGljYXRvciBzcGFue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjdweDtoZWlnaHQ6N3B4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LXNvZnQpO2FuaW1hdGlvbjp0eXBpbmdCb3VuY2UgMS4ycyBlYXNlLWluLW91dCBpbmZpbml0ZX0udHlwaW5nLWluZGljYXRvciBzcGFuOm50aC1jaGlsZCgyKXthbmltYXRpb24tZGVsYXk6LjE1c30udHlwaW5nLWluZGljYXRvciBzcGFuOm50aC1jaGlsZCgzKXthbmltYXRpb24tZGVsYXk6LjNzfUBrZXlmcmFtZXMgdHlwaW5nQm91bmNlezAlLDYwJSx0b3tvcGFjaXR5Oi4zNTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX0zMCV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01cHgpfX0udG9vbC11c2UtY2FyZHttYXJnaW46NHB4IDA7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjEwMCU7bWF4LXdpZHRoOnZhcigtLWNoYXQtY2FyZC1tYXgtd2lkdGgsIDcyMHB4KTttaW4td2lkdGg6MDtib3gtc2l6aW5nOmJvcmRlci1ib3g7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZiZjVlMCwjZmZmNmVhYjgpO2JveC1zaGFkb3c6MCAxcHggMnB4ICM1OTNhMjAwYTt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMjJzIGVhc2UsYm94LXNoYWRvdyAuMjJzIGVhc2UsdHJhbnNmb3JtIC4yMnMgZWFzZX0udG9vbC11c2UtY2FyZDpob3Zlcntib3JkZXItY29sb3I6IzRmN2E1ODRkO2JveC1zaGFkb3c6MCAzcHggMTJweCAjNGY3YTU4MTR9LnRvb2wtdXNlLWNhcmQubG9hZGluZ3tib3JkZXItY29sb3I6I2E5NmEyZjRkO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmNGUyZTAsI2ZmZjFkYWI4KX0udG9vbC11c2UtY2FyZC5zdWNjZXNze2JvcmRlci1jb2xvcjojNGY3YTU4NTJ9LnRvb2wtdXNlLWNhcmQuZXJyb3J7Ym9yZGVyLWNvbG9yOiNiMjRmNDU1MjtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZjZjBlZWUwLCNmY2ViZTliOCl9LnRvb2wtdXNlLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O3BhZGRpbmc6OXB4IDE0cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6LjgxMjVyZW07dXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50O3RvdWNoLWFjdGlvbjptYW5pcHVsYXRpb247dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xOHMgZWFzZTttaW4taGVpZ2h0OjM4cHg7ZmxleC13cmFwOm5vd3JhcH0udG9vbC11c2UtaGVhZGVyOmhvdmVye2JhY2tncm91bmQ6I2M1NjUzZDBhfS50b29sLXVzZS1oZWFkZXI6YWN0aXZle2JhY2tncm91bmQ6I2M1NjUzZDEyfS50b29sLXVzZS1jYXJkLmxvYWRpbmcgLnRvb2wtdXNlLWhlYWRlcjpob3ZlcntiYWNrZ3JvdW5kOiNhOTZhMmYwZn0udG9vbC11c2UtY2FyZC5zdWNjZXNzIC50b29sLXVzZS1oZWFkZXI6aG92ZXJ7YmFja2dyb3VuZDojNGY3YTU4MGZ9LnRvb2wtdXNlLWNhcmQuZXJyb3IgLnRvb2wtdXNlLWhlYWRlcjpob3ZlcntiYWNrZ3JvdW5kOiNiMjRmNDUwZn0udG9vbC11c2UtaWNvbntmb250LXNpemU6LjY4NzVyZW07Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXdlaWdodDo3MDA7ZmxleC1zaHJpbms6MDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21pbi13aWR0aDoyMnB4O2hlaWdodDoyMnB4O2JvcmRlci1yYWRpdXM6NnB4O2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcy1tdXRlZCk7Y29sb3I6dmFyKC0tc3VjY2Vzcyk7bGV0dGVyLXNwYWNpbmc6LS4wMmVtfS50b29sLXVzZS1jYXJkLmxvYWRpbmcgLnRvb2wtdXNlLWljb257YmFja2dyb3VuZDp2YXIoLS13YXJuaW5nLW11dGVkKTtjb2xvcjp2YXIoLS13YXJuaW5nKX0udG9vbC11c2UtY2FyZC5lcnJvciAudG9vbC11c2UtaWNvbntiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Y29sb3I6dmFyKC0tZGFuZ2VyKX0udG9vbC11c2Utc3Bpbm5lcntkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDoxNHB4O2hlaWdodDoxNHB4O2JvcmRlcjoycHggc29saWQgdmFyKC0td2FybmluZy1tdXRlZCk7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS13YXJuaW5nKTtib3JkZXItcmFkaXVzOjUwJTthbmltYXRpb246dG9vbC1zcGluIC44cyBsaW5lYXIgaW5maW5pdGV9QGtleWZyYW1lcyB0b29sLXNwaW57dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX0udG9vbC11c2UtbmFtZXtmb250LWZhbWlseTp2YXIoLS1mb250LXNhbnMpO2ZvbnQtd2VpZ2h0OjYwMDtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmbGV4OjAgMSBhdXRvO21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtsZXR0ZXItc3BhY2luZzotLjAwNWVtfS50b29sLXVzZS1maWxle2ZvbnQtc2l6ZTouNzVyZW07Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTttYXgtd2lkdGg6MzIwcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZsZXg6MCAxIGF1dG87bWluLXdpZHRoOjB9LnRvb2wtdXNlLXN1bW1hcnl7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7ZmxleDowIDEgYXV0bzttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7bWFyZ2luLWxlZnQ6MnB4fS50b29sLXVzZS10b2dnbGV7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuM3MgdmFyKC0tZWFzZS1zcHJpbmcpLGNvbG9yIC4xOHMgZWFzZTtmbGV4LXNocmluazowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7b3BhY2l0eTouNn0udG9vbC11c2UtY2FyZDpob3ZlciAudG9vbC11c2UtdG9nZ2xle2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtvcGFjaXR5OjF9LnRvb2wtdXNlLWNhcmQuY29sbGFwc2VkIC50b29sLXVzZS10b2dnbGV7dHJhbnNmb3JtOnJvdGF0ZSgtOTBkZWcpfS50b29sLXVzZS1ib2R5e3BhZGRpbmc6MTJweCAxNHB4O2JhY2tncm91bmQ6I2ZmZmRmOGE2O2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCk7bWF4LWhlaWdodDo2MDBweDtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjptYXgtaGVpZ2h0IC4zNXMgdmFyKC0tZWFzZS1vdXQtZXhwbykscGFkZGluZyAuMzVzIHZhcigtLWVhc2Utb3V0LWV4cG8pLG9wYWNpdHkgLjI1cyBlYXNlLHRyYW5zZm9ybSAuMzVzIHZhcigtLWVhc2Utb3V0LWV4cG8pO29wYWNpdHk6MTt0cmFuc2Zvcm0tb3JpZ2luOnRvcH0udG9vbC11c2UtY2FyZC5jb2xsYXBzZWQgLnRvb2wtdXNlLWJvZHl7bWF4LWhlaWdodDowO3BhZGRpbmctdG9wOjA7cGFkZGluZy1ib3R0b206MDtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlWSguOTUpfS50b29sLXVzZS1jb250ZW50e21hcmdpbjowO2ZvbnQtc2l6ZTouNzVyZW07Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7bWF4LWhlaWdodDo0MDBweDttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDtvdmVyZmxvdy14OmhpZGRlbjtvdmVyZmxvdy15OmF1dG87bGluZS1oZWlnaHQ6MS41NX0udG9vbC11c2UtcmVzdWx0e21hcmdpbi10b3A6MTBweDtwYWRkaW5nLXRvcDoxMHB4O2JvcmRlci10b3A6MXB4IGRhc2hlZCByZ2JhKDEyNSw5MSw1NywuMTQpfS50b29sLXVzZS1yZXN1bHQtY29udGVudHttYXJnaW46MDtmb250LXNpemU6Ljc1cmVtO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO3doaXRlLXNwYWNlOnByZS13cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGw7bWF4LWhlaWdodDozMjBweDttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDtvdmVyZmxvdy14OmhpZGRlbjtvdmVyZmxvdy15OmF1dG87bGluZS1oZWlnaHQ6MS41NTtiYWNrZ3JvdW5kOiM3ZDViMzkwOTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy14cyk7cGFkZGluZzo4cHggMTBweDtib3gtc2l6aW5nOmJvcmRlci1ib3h9LnRvb2wtdXNlLXJlc3VsdC1lbXB0eXtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc3R5bGU6aXRhbGljfS50b29sLXVzZS1tZXRhe2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTttYXJnaW4tYm90dG9tOjhweDtwYWRkaW5nLWJvdHRvbTo4cHg7Ym9yZGVyLWJvdHRvbToxcHggZGFzaGVkIHJnYmEoMTI1LDkxLDU3LC4xNCl9LnRvb2wtdXNlLW1ldGEtbGFiZWx7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtd2VpZ2h0OjYwMH0udG9vbC11c2UtY2FyZC5hc2stdXNlcntib3JkZXItY29sb3I6I2M1NjUzZDRkO2JhY2tncm91bmQ6I2M1NjUzZDBhfS50b29sLXVzZS1jYXJkLmFzay11c2VyIC50b29sLXVzZS1oZWFkZXJ7YmFja2dyb3VuZDojYzU2NTNkMTR9LmFzay11c2VyLWJvZHl7cGFkZGluZzoxMHB4IDEycHh9LmFzay11c2VyLXF1ZXN0aW9uLWdyb3Vwe21hcmdpbi1ib3R0b206MTBweH0uYXNrLXVzZXItcXVlc3Rpb24tZ3JvdXA6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LmFzay11c2VyLXRpdGxle2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO21hcmdpbi1ib3R0b206MTBweH0uYXNrLXVzZXItb3B0aW9uc3tkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo2cHh9LmFzay11c2VyLW9wdGlvbntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O3BhZGRpbmc6OHB4IDEycHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO3RleHQtYWxpZ246bGVmdH0uYXNrLXVzZXItb3B0aW9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpe2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6I2M1NjUzZDBmfS5hc2stdXNlci1vcHRpb246ZGlzYWJsZWR7b3BhY2l0eTouNTtjdXJzb3I6bm90LWFsbG93ZWR9LmFzay11c2VyLW9wdGlvbi5zZWxlY3RlZHtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOiNjNTY1M2QyZTtib3gtc2hhZG93OjAgMCAwIDFweCAjYzU2NTNkNTkgaW5zZXR9LnRvb2wtdXNlLWNhcmQuYXNrLXVzZXIuYXNrLXVzZXItYW5zd2VyZWR7Ym9yZGVyLXRvcDoycHggc29saWQgdmFyKC0tc3VjY2VzcywgIzRjYWY1MCl9LmFzay11c2VyLW9wdGlvbi5hc2stdXNlci1vcHRpb24tY2hvc2Vue2JhY2tncm91bmQ6I2M1NjUzZDI5O2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfS5hc2stdXNlci1pbmRpY2F0b3J7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtmbGV4LXNocmluazowO2JvcmRlcjoycHggc29saWQgdmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JvcmRlci1yYWRpdXM6NTAlO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5hc2stdXNlci1vcHRpb25zW2RhdGEtbXVsdGktc2VsZWN0PXRydWVdIC5hc2stdXNlci1pbmRpY2F0b3J7Ym9yZGVyLXJhZGl1czozcHh9LmFzay11c2VyLW9wdGlvbi5zZWxlY3RlZCAuYXNrLXVzZXItaW5kaWNhdG9ye2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KX0uYXNrLXVzZXItb3B0aW9uLnNlbGVjdGVkIC5hc2stdXNlci1pbmRpY2F0b3I6YWZ0ZXJ7Y29udGVudDoiIjt3aWR0aDo2cHg7aGVpZ2h0OjZweDtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLXJhZGl1czo1MCV9LmFzay11c2VyLW9wdGlvbnNbZGF0YS1tdWx0aS1zZWxlY3Q9dHJ1ZV0gLmFzay11c2VyLW9wdGlvbi5zZWxlY3RlZCAuYXNrLXVzZXItaW5kaWNhdG9yOmFmdGVye3dpZHRoOjRweDtoZWlnaHQ6OHB4O2JvcmRlcjpzb2xpZCB3aGl0ZTtib3JkZXItd2lkdGg6MCAycHggMnB4IDA7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQ6bm9uZTt0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKTttYXJnaW4tYm90dG9tOjJweH0uYXNrLXVzZXItb3B0aW9uLWNvbnRlbnR7ZmxleDoxO21pbi13aWR0aDowfS5hc2stdXNlci1vcHRpb24tbGFiZWx7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS5hc2stdXNlci1vcHRpb24tZGVzY3tmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTttYXJnaW4tdG9wOjJweDtsaW5lLWhlaWdodDoxLjR9LmFzay11c2VyLWFjdGlvbnN7bWFyZ2luLXRvcDoxMHB4O2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LmFzay11c2VyLXN1Ym1pdHtwYWRkaW5nOjZweCAxNnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYWNjZW50KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2NvbG9yOiNmZmY7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5hc2stdXNlci1zdWJtaXQ6aG92ZXI6bm90KDpkaXNhYmxlZCl7ZmlsdGVyOmJyaWdodG5lc3MoMS4xKX0uYXNrLXVzZXItc3VibWl0OmRpc2FibGVke29wYWNpdHk6LjQ7Y3Vyc29yOm5vdC1hbGxvd2VkfS5hc2stdXNlci1zdWJtaXQuYXNrLXVzZXItc3VibWl0dGVke2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLWRlZmF1bHQpO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3BvaW50ZXItZXZlbnRzOm5vbmV9LmFzay11c2VyLWFuc3dlcmVkIC5hc2stdXNlci1vcHRpb257Y3Vyc29yOmRlZmF1bHQ7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5Oi42fS5hc2stdXNlci1hbnN3ZXJlZCAuYXNrLXVzZXItb3B0aW9uLmFzay11c2VyLW9wdGlvbi1jaG9zZW57b3BhY2l0eToxO2JvcmRlci1jb2xvcjp2YXIoLS1zdWNjZXNzKTtiYWNrZ3JvdW5kOiM0ZjdhNTgwZn0uYXNrLXVzZXItYW5zd2VyZWQgLmFzay11c2VyLW9wdGlvbi5hc2stdXNlci1vcHRpb24tY2hvc2VuIC5hc2stdXNlci1pbmRpY2F0b3J7Ym9yZGVyLWNvbG9yOnZhcigtLXN1Y2Nlc3MpO2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcyl9LmFzay11c2VyLW9wdGlvbi1yZWFkb25seXtwb2ludGVyLWV2ZW50czpub25lfW92ZXJmbG93LXk6IGF1dG87IC50aGlua2luZy1pbmxpbmV7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmJhc2VsaW5lO2dhcDo1cHg7bWFyZ2luOjJweCAwO3dpZHRoOjEwMCU7bWF4LXdpZHRoOnZhcigtLWNoYXQtY2FyZC1tYXgtd2lkdGgsIDcyMHB4KTtib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzozcHggOHB4O2JvcmRlci1yYWRpdXM6NnB4O2JhY2tncm91bmQ6IzhhNmNiMjBhO2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZTouNzVyZW07bGluZS1oZWlnaHQ6MS40O2NvbG9yOiM4YTZjYjI4Yzt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO3dvcmQtYnJlYWs6YnJlYWstd29yZDtvdmVyZmxvdy13cmFwOmJyZWFrLXdvcmR9LnRoaW5raW5nLWlubGluZTpob3ZlcntiYWNrZ3JvdW5kOiM4YTZjYjIxNDtjb2xvcjojOGE2Y2IyY2N9LnRoaW5raW5nLWlubGluZS5leHBhbmRlZHtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7d2hpdGUtc3BhY2U6cHJlLXdyYXA7bGluZS1oZWlnaHQ6MS42O21heC1oZWlnaHQ6MzAwcHg7b3ZlcmZsb3cteTphdXRvfS50aGlua2luZy1pbmxpbmUtaWNvbntmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouNjI1cmVtfS50aGlua2luZy1pbmxpbmUtcHJldmlld3tmbGV4OjE7bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS50aGlua2luZy1pbmxpbmUuZXhwYW5kZWQgLnRoaW5raW5nLWlubGluZS1wcmV2aWV3e3doaXRlLXNwYWNlOnByZS13cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay13b3JkfS50aGlua2luZy1pbmxpbmUtYWN0aW9ue2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi42MjVyZW07Y29sb3I6IzhhNmNiMjY2O3BhZGRpbmc6MCA0cHg7Ym9yZGVyLXJhZGl1czozcHg7YmFja2dyb3VuZDojOGE2Y2IyMTQ7bWFyZ2luLWxlZnQ6YXV0b30udGhpbmtpbmctaW5saW5lOmhvdmVyIC50aGlua2luZy1pbmxpbmUtYWN0aW9ue2NvbG9yOiM4YTZjYjJiM30udGhpbmtpbmctaW5saW5lLnRoaW5raW5nLXB0eXtiYWNrZ3JvdW5kOiM4YTZjYjIwOH0udGhpbmtpbmctc3RyZWFtaW5ne2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo1cHg7bWFyZ2luOjJweCAwO3BhZGRpbmc6M3B4IDhweDtib3JkZXItcmFkaXVzOjZweDtiYWNrZ3JvdW5kOiM4YTZjYjIwYTtjdXJzb3I6ZGVmYXVsdDtmb250LXNpemU6Ljc1cmVtO2xpbmUtaGVpZ2h0OjEuNDtjb2xvcjojOGE2Y2IyOGN9LnRoaW5raW5nLXN0cmVhbWluZy1pbm5lcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6NXB4O3dpZHRoOjEwMCV9LnRoaW5raW5nLXN0cmVhbWluZy1pY29ue2ZvbnQtc2l6ZTouNjI1cmVtO2ZsZXgtc2hyaW5rOjA7bWFyZ2luLXRvcDoxcHh9LnRoaW5raW5nLXN0cmVhbWluZy10ZXh0e2ZsZXg6MTttaW4td2lkdGg6MDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouNzVyZW07bGluZS1oZWlnaHQ6MS41O2NvbG9yOiM4YTZjYjJjYzt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7bWF4LWhlaWdodDo0LjVlbTtvdmVyZmxvdy15OmF1dG87c2Nyb2xsYmFyLXdpZHRoOnRoaW47c2Nyb2xsYmFyLWNvbG9yOnJnYmEoMTM4LDEwOCwxNzgsLjMpIHRyYW5zcGFyZW50fS50aGlua2luZy1zdHJlYW1pbmctdGV4dDo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6NHB4fS50aGlua2luZy1zdHJlYW1pbmctdGV4dDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZDojOGE2Y2IyNGQ7Ym9yZGVyLXJhZGl1czoycHh9LnRvb2wtZ3JvdXB7bWFyZ2luOjRweCAwO3dpZHRoOjEwMCU7bWF4LXdpZHRoOnZhcigtLWNoYXQtY2FyZC1tYXgtd2lkdGgsIDcyMHB4KTttaW4td2lkdGg6MDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZiZjVkOSwjZmZmOGVlYjMpO2JveC1zaGFkb3c6MCAxcHggMnB4ICM1OTNhMjAwODtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE4cyBlYXNlLGJveC1zaGFkb3cgLjIycyBlYXNlLHRyYW5zZm9ybSAuMjJzIGVhc2V9LnRvb2wtZ3JvdXA6aG92ZXJ7Ym9yZGVyLWNvbG9yOiM3ZDViMzkyZTtib3gtc2hhZG93OjAgMnB4IDhweCAjNTkzYTIwMGZ9LnRvb2wtZ3JvdXBbZGF0YS1zdGF0dXM9cGVuZGluZ117Ym9yZGVyLWNvbG9yOiNhOTZhMmYzODtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZjRlMmQ5LCNmZmYxZGFiMyl9LnRvb2wtZ3JvdXBbZGF0YS1zdGF0dXM9ZXJyb3Jde2JvcmRlci1jb2xvcjojYjI0ZjQ1NDc7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmY2YwZWVkOSwjZmNlY2VhYjMpfS50b29sLWdyb3VwLXN1bW1hcnl7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OXB4O3BhZGRpbmc6OHB4IDEycHg7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7dXNlci1zZWxlY3Q6bm9uZTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE4cyBlYXNlfS50b29sLWdyb3VwLXN1bW1hcnk6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMGF9LnRvb2wtZ3JvdXAtc3RhdHVze2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MThweDtoZWlnaHQ6MThweDtib3JkZXItcmFkaXVzOjUwJTtmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NzAwO2xpbmUtaGVpZ2h0OjE7ZmxleC1zaHJpbms6MDtsZXR0ZXItc3BhY2luZzowfS50b29sLWdyb3VwW2RhdGEtc3RhdHVzPWRvbmVdIC50b29sLWdyb3VwLXN0YXR1c3tiYWNrZ3JvdW5kOnZhcigtLXN1Y2Nlc3MtbXV0ZWQpO2NvbG9yOnZhcigtLXN1Y2Nlc3MpfS50b29sLWdyb3VwW2RhdGEtc3RhdHVzPWVycm9yXSAudG9vbC1ncm91cC1zdGF0dXN7YmFja2dyb3VuZDp2YXIoLS1kYW5nZXItbXV0ZWQpO2NvbG9yOnZhcigtLWRhbmdlcil9LnRvb2wtZ3JvdXBbZGF0YS1zdGF0dXM9cGVuZGluZ10gLnRvb2wtZ3JvdXAtc3RhdHVze2JhY2tncm91bmQ6dmFyKC0td2FybmluZy1tdXRlZCk7Y29sb3I6dmFyKC0td2FybmluZyk7YW5pbWF0aW9uOnRvb2wtZ3JvdXAtcHVsc2UgMS42cyBlYXNlLWluLW91dCBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHRvb2wtZ3JvdXAtcHVsc2V7MCUsdG97b3BhY2l0eToxfTUwJXtvcGFjaXR5Oi41NX19LnRvb2wtZ3JvdXAtdGV4dHtmbGV4OjE7bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi0uMDA1ZW19LnRvb2wtZ3JvdXAtY291bnR7ZmxleC1zaHJpbms6MDtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7cGFkZGluZzoycHggOHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO2JhY2tncm91bmQ6IzdkNWIzOTEyO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30udG9vbC1ncm91cC1jaGV2cm9ue2ZsZXgtc2hyaW5rOjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI1cyB2YXIoLS1lYXNlLW91dC1leHBvKTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtvcGFjaXR5Oi42fS50b29sLWdyb3VwOmhvdmVyIC50b29sLWdyb3VwLWNoZXZyb257b3BhY2l0eToxfS50b29sLWdyb3VwW2RhdGEtZXhwYW5kZWQ9dHJ1ZV0gLnRvb2wtZ3JvdXAtY2hldnJvbnt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyl9LnRvb2wtZ3JvdXAtYm9keXtkaXNwbGF5Om5vbmU7cGFkZGluZzo0cHggOHB4IDhweCAxOHB4O2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wNik7Ym9yZGVyLWxlZnQ6MnB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCk7YmFja2dyb3VuZDojZmZmZGY4OGN9LnRvb2wtZ3JvdXAtYm9keT4uaW5saW5lLXRvb2x7bWFyZ2luOjB9LnRvb2wtZ3JvdXAtYm9keT4uaW5saW5lLXRvb2wrLmlubGluZS10b29se2JvcmRlci10b3A6MXB4IGRhc2hlZCByZ2JhKDEyNSw5MSw1NywuMDYpfS50b29sLWdyb3VwW2RhdGEtZXhwYW5kZWQ9dHJ1ZV0gLnRvb2wtZ3JvdXAtYm9keXtkaXNwbGF5OmJsb2NrO2FuaW1hdGlvbjp0b29sLWdyb3VwLXJldmVhbCAuMjJzIHZhcigtLWVhc2Utb3V0LWV4cG8pfUBrZXlmcmFtZXMgdG9vbC1ncm91cC1yZXZlYWx7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0ycHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX19LmlubGluZS10b29se2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWFyZ2luOjFweCAwO3dpZHRoOjEwMCU7bWF4LXdpZHRoOnZhcigtLWNoYXQtY2FyZC1tYXgtd2lkdGgsIDcyMHB4KTttaW4td2lkdGg6MDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMteHMpO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTZzIGVhc2V9LnRvb2wtZ3JvdXAtYm9keT4uaW5saW5lLXRvb2x7bWF4LXdpZHRoOjEwMCV9LmlubGluZS10b29sLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7cGFkZGluZzo1cHggMTBweDtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2xpbmUtaGVpZ2h0OjEuNDU7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMteHMpO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTZzIGVhc2UsY29sb3IgLjE2cyBlYXNlfS5pbmxpbmUtdG9vbDpob3ZlciAuaW5saW5lLXRvb2wtcm93e2JhY2tncm91bmQ6I2M1NjUzZDBmO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmlubGluZS10b29sLXN0YXR1c3tkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjE0cHg7aGVpZ2h0OjE0cHg7ZmxleC1zaHJpbms6MDtmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOnZhcigtLXN1Y2Nlc3MpO2xpbmUtaGVpZ2h0OjF9LmlubGluZS10b29sW2RhdGEtc3RhdHVzPXBlbmRpbmddIC5pbmxpbmUtdG9vbC1zdGF0dXN7Y29sb3I6dmFyKC0td2FybmluZyl9LmlubGluZS10b29sW2RhdGEtc3RhdHVzPWVycm9yXSAuaW5saW5lLXRvb2wtc3RhdHVzLC5pbmxpbmUtdG9vbC1lcnJvci1pbmxpbmUgLmlubGluZS10b29sLXN0YXR1c3tjb2xvcjp2YXIoLS1kYW5nZXIpfS5pbmxpbmUtdG9vbC1pY29ue2ZsZXgtc2hyaW5rOjA7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7b3BhY2l0eTouODV9LmlubGluZS10b29sOmhvdmVyIC5pbmxpbmUtdG9vbC1pY29ue2NvbG9yOnZhcigtLWFjY2VudCk7b3BhY2l0eToxfS5pbmxpbmUtdG9vbC10aXRsZXtmbGV4OjE7bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXNpemU6Ljc1cmVtfS5pbmxpbmUtdG9vbDpob3ZlciAuaW5saW5lLXRvb2wtdGl0bGV7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uaW5saW5lLXRvb2wtbWV0YXtmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTttYXgtd2lkdGg6MjIwcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtcztsZXR0ZXItc3BhY2luZzotLjAxZW19LmlubGluZS10b29sLWltYWdle3BhZGRpbmc6MnB4IDEwcHggOHB4IDMycHg7Y3Vyc29yOmRlZmF1bHR9LmlubGluZS10b29sLWltYWdlLXRodW1ie2Rpc3BsYXk6YmxvY2s7bWF4LXdpZHRoOm1pbigxMDAlLDM2MHB4KTttYXgtaGVpZ2h0OjI0MHB4O3dpZHRoOmF1dG87aGVpZ2h0OmF1dG87Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMteHMpO2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjE0KTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg0NWRlZyxyZ2JhKDEyNSw5MSw1NywuMDUpIDI1JSx0cmFuc3BhcmVudCAyNSUsdHJhbnNwYXJlbnQgNzUlLHJnYmEoMTI1LDkxLDU3LC4wNSkgNzUlKSAwIDAgLyAxNnB4IDE2cHgsbGluZWFyLWdyYWRpZW50KDQ1ZGVnLHJnYmEoMTI1LDkxLDU3LC4wNSkgMjUlLHRyYW5zcGFyZW50IDI1JSx0cmFuc3BhcmVudCA3NSUscmdiYSgxMjUsOTEsNTcsLjA1KSA3NSUpIDhweCA4cHggLyAxNnB4IDE2cHg7b2JqZWN0LWZpdDpjb250YWluO2N1cnNvcjp6b29tLWluO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4xNnMgZWFzZSxib3gtc2hhZG93IC4xNnMgZWFzZX0uaW5saW5lLXRvb2wtaW1hZ2UtdGh1bWI6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzowIDJweCAxMHB4ICMwMDAwMDAxZn0uaW5saW5lLXRvb2wtZXhwYW5kZWR7ZGlzcGxheTpub25lO3BhZGRpbmc6MCAxMHB4IDhweH0uaW5saW5lLXRvb2wtb3BlbiAuaW5saW5lLXRvb2wtZXhwYW5kZWR7ZGlzcGxheTpibG9jazthbmltYXRpb246dG9vbC1ncm91cC1yZXZlYWwgLjJzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5pbmxpbmUtdG9vbC1yZXN1bHR7YmFja2dyb3VuZDojN2Q1YjM5MGE7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMDcpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXhzKTtwYWRkaW5nOjEwcHggMTJweDttYXJnaW4tdG9wOjZweDttYXgtaGVpZ2h0OjMyMHB4O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bztzY3JvbGxiYXItd2lkdGg6dGhpbjtzY3JvbGxiYXItY29sb3I6cmdiYSgxMjUsOTEsNTcsLjIpIHRyYW5zcGFyZW50fS5pbmxpbmUtdG9vbC1yZXN1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjZweH0uaW5saW5lLXRvb2wtcmVzdWx0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM3ZDViMzkzMztib3JkZXItcmFkaXVzOjNweH0uaW5saW5lLXRvb2wtcmVzdWx0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOiM3ZDViMzk1Mn0uaW5saW5lLXRvb2wtcmVzdWx0LXRleHR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6Ljc1cmVtO2xpbmUtaGVpZ2h0OjEuNTU7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO3doaXRlLXNwYWNlOnByZS13cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGw7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7bWFyZ2luOjB9LmlubGluZS10b29sLWVycm9yLWlubGluZXtib3JkZXItbGVmdDoycHggc29saWQgdmFyKC0tZGFuZ2VyKTtwYWRkaW5nLWxlZnQ6MnB4O21hcmdpbi1sZWZ0Oi0ycHh9LmlubGluZS10b29sLWVycm9yLWlubGluZSAuaW5saW5lLXRvb2wtcm93e2NvbG9yOnZhcigtLWRhbmdlcil9LmlubGluZS10b29sLXJlc3VsdC5pbmxpbmUtdG9vbC1lcnJvcntjb2xvcjp2YXIoLS1kYW5nZXIpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi43NXJlbTtiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Ym9yZGVyLWNvbG9yOiNiMjRmNDUyZX0uaW5saW5lLXRvb2wtbG9hZGluZ3tmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXdhcm5pbmcpO2ZvbnQtc3R5bGU6aXRhbGljO3BhZGRpbmc6NnB4IDA7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweH0uaW5saW5lLXRvb2wtbG9hZGluZzpiZWZvcmV7Y29udGVudDoiIjtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDoxMHB4O2hlaWdodDoxMHB4O2JvcmRlcjoxLjVweCBzb2xpZCB2YXIoLS13YXJuaW5nLW11dGVkKTtib3JkZXItdG9wLWNvbG9yOnZhcigtLXdhcm5pbmcpO2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjp0b29sLWNvbnRlbnQtc3BpbiAuN3MgbGluZWFyIGluZmluaXRlfS5pbmxpbmUtdG9vbC1lbXB0eXtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc3R5bGU6aXRhbGljfS50b29sLWNvbnRlbnQtbG9hZGluZ3tmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc3R5bGU6aXRhbGljO3BhZGRpbmc6OHB4IDB9LnRvb2wtY29udGVudC1sb2FkaW5nOmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjEycHg7aGVpZ2h0OjEycHg7Ym9yZGVyOjJweCBzb2xpZCB2YXIoLS10ZXh0LW11dGVkKTtib3JkZXItdG9wLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjp0b29sLWNvbnRlbnQtc3BpbiAuNnMgbGluZWFyIGluZmluaXRlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW4tcmlnaHQ6NnB4fUBrZXlmcmFtZXMgdG9vbC1jb250ZW50LXNwaW57dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX0udG9vbC1jb250ZW50LWVycm9ye2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tZXJyb3IpO3BhZGRpbmc6OHB4IDA7Y3Vyc29yOnBvaW50ZXJ9LnRvb2wtY29udGVudC1lcnJvcjpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5pbmxpbmUtdGVybWluYWx7bWFyZ2luOjRweCAwO3dpZHRoOjEwMCU7bWF4LXdpZHRoOnZhcigtLWNoYXQtY2FyZC1tYXgtd2lkdGgsIDcyMHB4KTttaW4td2lkdGg6MDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE1LDEyLDksLjYpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtiYWNrZ3JvdW5kOiMxZjFiMTc7Ym94LXNoYWRvdzowIDFweCAjZmZmZmZmMGEgaW5zZXQsMCAycHggMTJweCAjMGYwYzA5MmU7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246Ym94LXNoYWRvdyAuMjJzIGVhc2UsdHJhbnNmb3JtIC4yMnMgZWFzZSxib3JkZXItY29sb3IgLjIycyBlYXNlfS5pbmxpbmUtdGVybWluYWw6aG92ZXJ7Ym94LXNoYWRvdzowIDFweCAjZmZmZmZmMGQgaW5zZXQsMCA0cHggMThweCAjMGYwYzA5M2Q7Ym9yZGVyLWNvbG9yOiNmZmZmZmYxYX0udGVybS1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nOjhweCAxNHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmZmZmMGEsI2ZmZmZmZjA0KSwjMDAwMDAwMmU7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDQpO2ZvbnQtc2l6ZTouNzVyZW07Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZTttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MH0udGVybS1oZWFkZXI6aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZmZmYwZiwjZmZmZmZmMDYpLCMwMDAwMDAyZX0udGVybS1zdGF0dXMtZG90e3dpZHRoOjlweDtoZWlnaHQ6OXB4O2JvcmRlci1yYWRpdXM6NTAlO2ZsZXgtc2hyaW5rOjA7Ym94LXNoYWRvdzowIDAgMCAxcHggIzAwMDAwMDQwIGluc2V0fS50ZXJtLXN0YXR1cy1kb3QudGVybS1zdWNjZXNze2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAzNSUgMzAlLCNiNmYwYzQsIzZlZTA5YSwjM2FhNzY1KTtib3gtc2hhZG93OjAgMCAwIDFweCAjMDAwMDAwNDAgaW5zZXQsMCAwIDZweCAjNmVlMDlhNTl9LnRlcm0tc3RhdHVzLWRvdC50ZXJtLWVycm9ye2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAzNSUgMzAlLCNmZmI1YjksI2YwNzE3OCwjYjUzYjQxKTtib3gtc2hhZG93OjAgMCAwIDFweCAjMDAwMDAwNDAgaW5zZXQsMCAwIDZweCAjZjA3MTc4NTl9LnRlcm0tc3RhdHVzLWRvdC50ZXJtLXdhcm57YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDM1JSAzMCUsI2ZmZDA3YSwjZjBhNTAwLCNhZDc0MDApO2JveC1zaGFkb3c6MCAwIDAgMXB4ICMwMDAwMDA0MCBpbnNldCwwIDAgNnB4ICNmMGE1MDA1OX0udGVybS1zdGF0dXMtZG90LnRlcm0tcnVubmluZ3tiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMzUlIDMwJSwjZDFkNWRiLCM5Y2EzYWYsIzRiNTU2Myk7YW5pbWF0aW9uOnRlcm0tcHVsc2UgMXMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyB0ZXJtLXB1bHNlezAlLHRve29wYWNpdHk6MTtib3gtc2hhZG93OjAgMCAwIDFweCAjMDAwMDAwNDAgaW5zZXQsMCAwICM5Y2EzYWYwMH01MCV7b3BhY2l0eTouNTU7Ym94LXNoYWRvdzowIDAgMCAxcHggIzAwMDAwMDQwIGluc2V0LDAgMCA4cHggIzljYTNhZjU5fX0udGVybS1jbWQtcHJldmlld3tmbGV4OjE7bWluLXdpZHRoOjA7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6Ljc1cmVtO2NvbG9yOiNlOGRjYzhjNztvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbX0udGVybS1jbWQtcHJldmlldyAudGVybS1wcm9tcHR7Y29sb3I6IzZlZTA5YTtmb250LXdlaWdodDo2MDA7bWFyZ2luLXJpZ2h0OjZweDtmb250LXNpemU6Ljc1cmVtO29wYWNpdHk6Ljl9LnRlcm0tdG9nZ2xlLWljb257Zm9udC1zaXplOi42MjVyZW07Y29sb3I6I2ZmZmZmZjU5O3RyYW5zaXRpb246Y29sb3IgLjE4cyBlYXNlO2ZsZXgtc2hyaW5rOjB9LnRlcm0taGVhZGVyOmhvdmVyIC50ZXJtLXRvZ2dsZS1pY29ue2NvbG9yOiNmZmZmZmZhNn0udGVybS1ib2R5e3BhZGRpbmc6MTJweCAxNHB4IDE0cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCMwMDAwMDAyZSwjMDAwMCAyNHB4KSwjMWYxYjE3fS50ZXJtLWNvbW1hbmR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6I2Y0ZTlkNDtsaW5lLWhlaWdodDoxLjU1O21hcmdpbi1ib3R0b206NnB4O3doaXRlLXNwYWNlOnByZS13cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGw7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjB9LnRlcm0tcHJvbXB0e2NvbG9yOiM2ZWUwOWE7Zm9udC13ZWlnaHQ6NjAwO21hcmdpbi1yaWdodDo2cHg7dGV4dC1zaGFkb3c6MCAwIDZweCByZ2JhKDExMCwyMjQsMTU0LC4yNSl9LnRlcm0tb3V0cHV0e21hcmdpbi10b3A6OHB4O3BhZGRpbmctdG9wOjhweDtib3JkZXItdG9wOjFweCBkYXNoZWQgcmdiYSgyNTUsMjU1LDI1NSwuMDYpO21heC1oZWlnaHQ6MzYwcHg7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7b3ZlcmZsb3cteDpoaWRkZW47b3ZlcmZsb3cteTphdXRvO3Njcm9sbGJhci13aWR0aDp0aGluO3Njcm9sbGJhci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgdHJhbnNwYXJlbnR9LnRlcm0tb3V0cHV0Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo2cHh9LnRlcm0tb3V0cHV0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiNmZmZmZmYyNjtib3JkZXItcmFkaXVzOjNweH0udGVybS1vdXRwdXQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZjQwfS50ZXJtLWxpbmV7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6I2Q0YzJhMztsaW5lLWhlaWdodDoxLjU1O3doaXRlLXNwYWNlOnByZS13cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGw7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjB9LnRlcm0tZXhpdHttYXJnaW4tdG9wOjEwcHg7cGFkZGluZy10b3A6OHB4O2JvcmRlci10b3A6MXB4IGRhc2hlZCByZ2JhKDI1NSwyNTUsMjU1LC4wNik7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjY4NzVyZW07bGluZS1oZWlnaHQ6MS41O2xldHRlci1zcGFjaW5nOi4wNGVtfS50ZXJtLWV4aXQtc3VjY2Vzc3tjb2xvcjojNmVlMDlhYmZ9LnRlcm0tZXhpdC1lcnJvcntjb2xvcjojZjA3MTc4Yzd9LmlubGluZS1kaWZme21hcmdpbjo0cHggMDt3aWR0aDoxMDAlO21heC13aWR0aDp2YXIoLS1jaGF0LWNhcmQtbWF4LXdpZHRoLCA3MjBweCk7bWluLXdpZHRoOjA7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmJmNWUwLCNmZmY2ZWFiOCk7Ym94LXNoYWRvdzowIDFweCAycHggIzU5M2EyMDBhO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4yMnMgZWFzZSxib3gtc2hhZG93IC4yMnMgZWFzZX0uaW5saW5lLWRpZmY6aG92ZXJ7Ym9yZGVyLWNvbG9yOiM3ZDViMzkzODtib3gtc2hhZG93OjAgM3B4IDEycHggIzU5M2EyMDBmfS5kaWZmLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O3BhZGRpbmc6OHB4IDE0cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtmb250LXNpemU6LjgxMjVyZW07Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xOHMgZWFzZTttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MH0uZGlmZi1oZWFkZXI6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMGF9LmRpZmYtdG9nZ2xle2ZvbnQtc2l6ZTouNjI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyB2YXIoLS1lYXNlLXNwcmluZyksY29sb3IgLjE4cyBlYXNlO2ZsZXgtc2hyaW5rOjA7bWFyZ2luLWxlZnQ6YXV0bztvcGFjaXR5Oi42fS5pbmxpbmUtZGlmZjpob3ZlciAuZGlmZi10b2dnbGV7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO29wYWNpdHk6MX0uaW5saW5lLWRpZmYuY29sbGFwc2VkIC5kaWZmLXRvZ2dsZXt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyl9LmlubGluZS1kaWZmLmNvbGxhcHNlZCAuZGlmZi1ib2R5e21heC1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47b3BhY2l0eTowO3RyYW5zaXRpb246bWF4LWhlaWdodCAuMzVzIHZhcigtLWVhc2Utb3V0LWV4cG8pLG9wYWNpdHkgLjI1cyBlYXNlfS5kaWZmLWZpbGUtaWNvbntkaXNwbGF5Om5vbmV9LmRpZmYtZmlsZS1uYW1le2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7ZmxleC1zaHJpbms6MDtmb250LXNpemU6LjgxMjVyZW07bGV0dGVyLXNwYWNpbmc6LS4wMDVlbX0uZGlmZi1wYXRoe2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7ZmxleDoxO21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmb250LXNpemU6LjY4NzVyZW19LmRpZmYtc3RhdHVze2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi42ODc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtwYWRkaW5nOjNweCAxMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO2xldHRlci1zcGFjaW5nOi4wMWVtfS5kaWZmLXN0YXR1cy5kaWZmLXN1Y2Nlc3N7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzLW11dGVkKTtjb2xvcjp2YXIoLS1zdWNjZXNzKX0uZGlmZi1zdGF0dXMuZGlmZi1lcnJvcntiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Y29sb3I6dmFyKC0tZGFuZ2VyKX0uZGlmZi1zdGF0dXMuZGlmZi1wZW5kaW5ne2JhY2tncm91bmQ6dmFyKC0td2FybmluZy1tdXRlZCk7Y29sb3I6dmFyKC0td2FybmluZyl9LmRpZmYtYm9keXtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KTtiYWNrZ3JvdW5kOiNmZmZkZjhhNn0uZGlmZi1jb2x1bW5ze2Rpc3BsYXk6ZmxleDtnYXA6MXB4O2JhY2tncm91bmQ6IzdkNWIzOTE0O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowfS5kaWZmLWNvbHtmbGV4OjEgMSAwO21pbi13aWR0aDowO21heC13aWR0aDoxMDAlO2JhY2tncm91bmQ6I2ZmZmRmOGQ5O292ZXJmbG93OmhpZGRlbn0uZGlmZi1jb2wtaGFsZntmbGV4OjF9LmRpZmYtY29sLWZ1bGx7ZmxleDpub25lO3dpZHRoOjEwMCV9LmRpZmYtY29sLWxhYmVse2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi42MjVyZW07Zm9udC13ZWlnaHQ6NzAwO3BhZGRpbmc6NHB4IDEycHg7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOi4wOGVtO2JhY2tncm91bmQ6IzdkNWIzOTBkO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCl9LmRpZmYtbGluZXtwYWRkaW5nOjNweCAxMnB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi43NXJlbTtsaW5lLWhlaWdodDoxLjU1O3doaXRlLXNwYWNlOnByZS13cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGw7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7Ym94LXNpemluZzpib3JkZXItYm94fS5kaWZmLWFkZHtiYWNrZ3JvdW5kOiM0ZjdhNTgxNDtjb2xvcjojMmM1NTM1O2JvcmRlci1sZWZ0OjJweCBzb2xpZCByZ2JhKDc5LDEyMiw4OCwuNSl9LmRpZmYtcmVtb3Zle2JhY2tncm91bmQ6I2IyNGY0NTBmO2NvbG9yOiM3YzJhMjM7Ym9yZGVyLWxlZnQ6MnB4IHNvbGlkIHJnYmEoMTc4LDc5LDY5LC40NSl9Lm1hcmtkb3duLWNvbnRlbnR7Y29sb3I6aW5oZXJpdDt3aGl0ZS1zcGFjZTpub3JtYWw7b3ZlcmZsb3cteDpoaWRkZW47bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgLmNvZGUtYmxvY2sgcHJle292ZXJmbG93LXg6aGlkZGVuO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowfS5tYXJrZG93bi1jb250ZW50IHB7bWFyZ2luOjAgMCA4cHg7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgcDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0ubWFya2Rvd24tY29udGVudCBzdHJvbmd7Zm9udC13ZWlnaHQ6NjAwfS5tYXJrZG93bi1jb250ZW50IGVte2ZvbnQtc3R5bGU6aXRhbGljfS5tYXJrZG93bi1jb250ZW50IHVsLC5tYXJrZG93bi1jb250ZW50IG9se21hcmdpbjo4cHggMDtwYWRkaW5nLWxlZnQ6MjBweH0ubWFya2Rvd24tY29udGVudCBsaXttYXJnaW46NHB4IDA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgaDEsLm1hcmtkb3duLWNvbnRlbnQgaDIsLm1hcmtkb3duLWNvbnRlbnQgaDN7bWFyZ2luOjE2cHggMCA4cHg7Zm9udC13ZWlnaHQ6NjAwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay13b3JkfS5tYXJrZG93bi1jb250ZW50IGgxe2ZvbnQtc2l6ZToxLjI1cmVtfS5tYXJrZG93bi1jb250ZW50IGgye2ZvbnQtc2l6ZToxLjFyZW19Lm1hcmtkb3duLWNvbnRlbnQgaDN7Zm9udC1zaXplOjFyZW19Lm1hcmtkb3duLWNvbnRlbnQgYmxvY2txdW90ZXttYXJnaW46OHB4IDA7cGFkZGluZzo4cHggMTJweDtib3JkZXItbGVmdDozcHggc29saWQgdmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOiNjNTY1M2QwZjtib3JkZXItcmFkaXVzOjAgdmFyKC0tcmFkaXVzLXNtKSB2YXIoLS1yYWRpdXMtc20pIDA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgYXtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstYWxsfS5tYXJrZG93bi1jb250ZW50IGltZ3ttYXgtd2lkdGg6MTAwJTtoZWlnaHQ6YXV0b30ubWFya2Rvd24tY29udGVudCBjb2RlOm5vdCguY29kZS1ibG9jayk6bm90KC5jb2RlLWlubGluZSl7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjgxMjVyZW07YmFja2dyb3VuZDojOTY3NjU1MWY7cGFkZGluZzoycHggNXB4O2JvcmRlci1yYWRpdXM6NHB4O292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGx9Lm1hcmtkb3duLWNvbnRlbnQgY29kZS5jb2RlLWlubGluZXtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODEyNXJlbTtiYWNrZ3JvdW5kOiM5Njc2NTUxZjtwYWRkaW5nOjJweCA1cHg7Ym9yZGVyLXJhZGl1czo0cHg7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLWFsbH0ubWFya2Rvd24tY29udGVudCAubWQtdGFibGUtd3JhcHttYXJnaW46MTJweCAwO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6YXV0bztib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNofS5tYXJrZG93bi1jb250ZW50IC5tZC10YWJsZXtib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7d2lkdGg6MTAwJTt0YWJsZS1sYXlvdXQ6Zml4ZWQ7Zm9udC1zaXplOi44MTI1cmVtO3doaXRlLXNwYWNlOm5vcm1hbH0ubWFya2Rvd24tY29udGVudCAubWQtdGFibGUgdGgsLm1hcmtkb3duLWNvbnRlbnQgLm1kLXRhYmxlIHRke2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtwYWRkaW5nOjZweCAxMHB4O3RleHQtYWxpZ246bGVmdDt2ZXJ0aWNhbC1hbGlnbjp0b3A7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgLm1kLXRhYmxlIHRoe2JhY2tncm91bmQ6Izk2NzY1NTFhO2ZvbnQtd2VpZ2h0OjYwMH0ubWFya2Rvd24tY29udGVudCAubWQtdGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKDJuKXtiYWNrZ3JvdW5kOiM5Njc2NTUwYX0ubWFya2Rvd24tY29udGVudCAuY29kZS1ibG9ja3ttYXJnaW46MTJweCAwO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDojMWYxYjE3O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjIsOTEsNjQsLjM1KTtib3gtc2hhZG93OjAgMnB4IDhweCAjMDAwMDAwMjZ9Lm1hcmtkb3duLWNvbnRlbnQgLmNvZGUtYmxvY2staGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cGFkZGluZzo2cHggMTJweDtiYWNrZ3JvdW5kOiM3YTViNDAzMztib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDEyMiw5MSw2NCwuMik7Z2FwOjhweH0ubWFya2Rvd24tY29udGVudCAuY29kZS1sYW5ne2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi43cmVtO2NvbG9yOiM4YzczNWY7dGV4dC10cmFuc2Zvcm06bG93ZXJjYXNlO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ubWFya2Rvd24tY29udGVudCAuY29kZS1jb3B5e2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi43cmVtO3BhZGRpbmc6NHB4IDEwcHg7Ym9yZGVyLXJhZGl1czo2cHg7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4xNSk7YmFja2dyb3VuZDojZmZmZmZmMWE7Y29sb3I6I2Q5YzRiMDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO3doaXRlLXNwYWNlOm5vd3JhcDtmbGV4LXNocmluazowfS5tYXJrZG93bi1jb250ZW50IC5jb2RlLWNvcHk6aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmMmU7Y29sb3I6I2ZmZjtib3JkZXItY29sb3I6I2ZmZmZmZjQwfS5tYXJrZG93bi1jb250ZW50IC5jb2RlLWNvcHkuY29waWVke2NvbG9yOiM3ZmEzNmY7Ym9yZGVyLWNvbG9yOiM3ZmEzNmY4MDtiYWNrZ3JvdW5kOiM3ZmEzNmYyNn0ubWFya2Rvd24tY29udGVudCBwcmV7bWFyZ2luOjA7cGFkZGluZzoxMnB4O292ZXJmbG93LXg6aGlkZGVuO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowfS5tYXJrZG93bi1jb250ZW50IHByZSBjb2Rle2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44MTI1cmVtO2xpbmUtaGVpZ2h0OjEuNTtjb2xvcjojZjVlYWRjO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7cGFkZGluZzowO21heC13aWR0aDoxMDAlO2Rpc3BsYXk6YmxvY2t9LmlucHV0LXBhbmVse3BhZGRpbmc6NnB4IDEwcHg7cGFkZGluZy1ib3R0b206Y2FsYyg2cHggKyB2YXIoLS1pbnB1dC1zYWZlLWJvdHRvbSwgdmFyKC0tc2FmZS1ib3R0b20sIDBweCkpKTtmbGV4LXNocmluazowO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MjY7b3ZlcnNjcm9sbC1iZWhhdmlvcjpjb250YWluO3RvdWNoLWFjdGlvbjpwYW4teTtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2UsdmlzaWJpbGl0eSAwc30uaW5wdXQtY29tcG9zZXJ7YmFja2dyb3VuZDojZmZmZmZmZTA7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czoyMnB4O3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7b3ZlcnNjcm9sbC1iZWhhdmlvcjpjb250YWlufS5pbnB1dC1jb21wb3Nlcjpmb2N1cy13aXRoaW57Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzowIDAgMCAycHggdmFyKC0tYWNjZW50LW11dGVkKSwwIDAgMTZweCAjYzU2NTNkMTQ7YmFja2dyb3VuZDojZmZmZmZmZmF9LmNvbXBvc2VyLXN0YXR1cy1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2ZsZXgtd3JhcDp3cmFwO3BhZGRpbmc6MCAxMHB4O21pbi1oZWlnaHQ6MDt0cmFuc2l0aW9uOnBhZGRpbmcgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uY29tcG9zZXItc3RhdHVzLXJvdz4qe2ZsZXgtc2hyaW5rOjB9LmNvbXBvc2VyLXN0YXR1cy1yb3c6aGFzKD4qOm5vdCguaGlkZGVuKSl7cGFkZGluZy10b3A6NnB4O3BhZGRpbmctYm90dG9tOjB9QHN1cHBvcnRzIG5vdCBzZWxlY3Rvcig6aGFzKCopKXsuY29tcG9zZXItc3RhdHVzLXJvdzpub3QoOmVtcHR5KXtwYWRkaW5nLXRvcDo0cHh9fS5jb21wb3Nlci1tYWluLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHg7cGFkZGluZzo0cHggNnB4O21pbi1oZWlnaHQ6NDRweH0uY29tcG9zZXItYWN0aW9ucy1sZWZ0LC5jb21wb3Nlci1hY3Rpb25zLXJpZ2h0e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjJweDtmbGV4LXNocmluazowfS5jb21wb3Nlci1pbnB1dC13cmFwe3Bvc2l0aW9uOnJlbGF0aXZlO2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcn0uY29tcG9zZXItdGV4dC1waWxse3Bvc2l0aW9uOnJlbGF0aXZlO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi43cmVtO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxO3BhZGRpbmc6MnB4O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXA7Ym94LXNpemluZzpib3JkZXItYm94O3VzZXItc2VsZWN0Om5vbmU7bWF4LXdpZHRoOjExMHB4O2xldHRlci1zcGFjaW5nOi4wMWVtfS5jb21wb3Nlci10ZXh0LXBpbGw6aG92ZXIsLmNvbXBvc2VyLXRleHQtcGlsbDpmb2N1cy13aXRoaW57Y29sb3I6dmFyKC0tYWNjZW50KX0uY29tcG9zZXItdGV4dC1sYWJlbHtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczttYXgtd2lkdGg6MTAwJX0uY29tcG9zZXItdGV4dC1oaWRkZW4tc2VsZWN0e3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTttYXJnaW46MDtwYWRkaW5nOjA7Ym9yZGVyOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp0cmFuc3BhcmVudDtmb250OmluaGVyaXQ7b3BhY2l0eTowO2N1cnNvcjpwb2ludGVyO2FwcGVhcmFuY2U6bm9uZTstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX0uY29tcG9zZXItdGV4dC1oaWRkZW4tc2VsZWN0OmZvY3Vze291dGxpbmU6bm9uZX0uY29tcG9zZXItdGV4dC1zZXB7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSwgI2I1YTg5YSk7Zm9udC1zaXplOi43cmVtO2xpbmUtaGVpZ2h0OjE7dXNlci1zZWxlY3Q6bm9uZTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6LjY1fS5wZXJtaXNzaW9uLWFjdGlvbnN7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDthbmltYXRpb246cGVybWlzc2lvbi1mYWRlLWluIC4ycyBlYXNlLW91dH0ucGVybWlzc2lvbi1hY3Rpb25zLmhpZGRlbntkaXNwbGF5Om5vbmV9LnBlcm1pc3Npb24tYWN0aW9ucy1sYWJlbHtmb250LXNpemU6LjdyZW07Y29sb3I6I2QxOGIwMDttYXgtd2lkdGg6MTgwcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5idG4tcGVybWlzc2lvbntmb250LXNpemU6LjY1cmVtO3BhZGRpbmc6MXB4IDhweDtib3JkZXItcmFkaXVzOjRweDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO2xpbmUtaGVpZ2h0OjEuNDtmb250LXdlaWdodDo1MDA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMsYm9yZGVyLWNvbG9yIC4xNXN9LmJ0bi1wZXJtaXNzaW9uOmRpc2FibGVke29wYWNpdHk6LjU7Y3Vyc29yOm5vdC1hbGxvd2VkfS5idG4tcGVybWlzc2lvbi1hcHByb3Zle2JhY2tncm91bmQ6I2YwYTUwMDI2O2NvbG9yOiNkMThiMDA7Ym9yZGVyLWNvbG9yOiNmMGE1MDA0ZH0uYnRuLXBlcm1pc3Npb24tYXBwcm92ZTpob3Zlcjpub3QoOmRpc2FibGVkKXtiYWNrZ3JvdW5kOiNmMGE1MDA0MH0uYnRuLXBlcm1pc3Npb24tZGVueXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXIpfS5idG4tcGVybWlzc2lvbi1kZW55OmhvdmVyOm5vdCg6ZGlzYWJsZWQpe2JhY2tncm91bmQ6I2RjMzIzMjE0O2NvbG9yOnZhcigtLWRhbmdlcik7Ym9yZGVyLWNvbG9yOiNkYzMyMzI0ZH1Aa2V5ZnJhbWVzIHBlcm1pc3Npb24tZmFkZS1pbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNHB4KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZSgwKX19LmF1dG8tYXBwcm92ZS1pbmRpY2F0b3IuYWN0aXZle2NvbG9yOiMyMmM1NWU7Ym9yZGVyLWNvbG9yOiMyMmM1NWU4MDtiYWNrZ3JvdW5kOiMyMmM1NWUxZn0uYXV0by1hcHByb3ZlLWluZGljYXRvci5hY3RpdmU6aG92ZXJ7YmFja2dyb3VuZDojMjJjNTVlMzM7Ym9yZGVyLWNvbG9yOiMyMmM1NWV9LmFwcHJvdmFsLXN0YXRze2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlfS5hcHByb3ZhbC1zdGF0cy5oaWRkZW57ZGlzcGxheTpub25lfS5hcHByb3ZhbC1zdGF0cy1kaXZpZGVye3dpZHRoOjA7aGVpZ2h0OjE2cHg7bWFyZ2luOjAgMXB4fS5hcHByb3ZhbC1zdGF0cy1iYWRnZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6M3B4O21pbi1oZWlnaHQ6MjJweDtwYWRkaW5nOjFweCA4cHg7Ym9yZGVyLXJhZGl1czoxMHB4O2JhY2tncm91bmQ6IzIyYzU1ZTFhO2NvbG9yOiMyMmM1NWU7Zm9udC1zaXplOi42MjVyZW07Zm9udC13ZWlnaHQ6NjAwO2N1cnNvcjpkZWZhdWx0O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzO2xpbmUtaGVpZ2h0OjE7Ym94LXNpemluZzpib3JkZXItYm94fS5hcHByb3ZhbC1zdGF0cy1iYWRnZTpob3ZlcntiYWNrZ3JvdW5kOiMyMmM1NWUyZX0uYXBwcm92YWwtc3RhdHMtaWNvbntzdHJva2U6IzIyYzU1ZTtmbGV4LXNocmluazowfS5hcHByb3ZhbC1zdGF0cy10b3RhbHtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXN9QGtleWZyYW1lcyBhcHByb3ZhbC1wdWxzZXswJXt0cmFuc2Zvcm06c2NhbGUoMSl9NTAle3RyYW5zZm9ybTpzY2FsZSgxLjE1KX10b3t0cmFuc2Zvcm06c2NhbGUoMSl9fS5hcHByb3ZhbC1zdGF0cy1wdWxzZXthbmltYXRpb246YXBwcm92YWwtcHVsc2UgLjNzIGVhc2Utb3V0fS5hcHByb3ZhbC1zdGF0cy1wb3B1cHtkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOmNhbGMoMTAwJSArIDZweCk7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTtiYWNrZ3JvdW5kOnZhcigtLWJnLWVsZXZhdGVkLCAjMWUxZTJlKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czo4cHg7cGFkZGluZzo4cHggMTBweDttaW4td2lkdGg6MTQwcHg7Ym94LXNoYWRvdzowIDRweCAxNnB4ICMwMDAwMDA0MDt6LWluZGV4OjEwMDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjRweH0uYXBwcm92YWwtc3RhdHM6aG92ZXIgLmFwcHJvdmFsLXN0YXRzLXBvcHVwe2Rpc3BsYXk6ZmxleH0uYXBwcm92YWwtc3RhdHMtcG9wdXAtdGl0bGV7Zm9udC1zaXplOi42NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXdlaWdodDo1MDA7bWFyZ2luLWJvdHRvbToycHg7d2hpdGUtc3BhY2U6bm93cmFwfS5hcHByb3ZhbC1zdGF0cy1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSwgI2NjYyk7d2hpdGUtc3BhY2U6bm93cmFwfS5hcHByb3ZhbC1zdGF0cy1yb3ctaWNvbnt3aWR0aDoxNnB4O3RleHQtYWxpZ246Y2VudGVyO2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi43MnJlbX0uYXBwcm92YWwtc3RhdHMtcm93LWxhYmVse2ZsZXg6MX0uYXBwcm92YWwtc3RhdHMtcm93LWNvdW50e2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnksICNlZWUpO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtczttaW4td2lkdGg6MjBweDt0ZXh0LWFsaWduOnJpZ2h0fS5hcHByb3ZhbC1zdGF0cy1yb3ctdG90YWx7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtwYWRkaW5nLXRvcDo0cHg7bWFyZ2luLXRvcDoycHg7Y29sb3I6IzIyYzU1ZX0uYXBwcm92YWwtc3RhdHMtcm93LXRvdGFsIC5hcHByb3ZhbC1zdGF0cy1yb3ctY291bnR7Y29sb3I6IzIyYzU1ZX0ucXVldWUtYmFyey0tcWItYmc6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjE0KTstLXFiLWJnLXN0cm9uZzogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMjIpOy0tcWItYm9yZGVyOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4yNCk7LS1xYi10ZXh0OiB2YXIoLS10ZXh0LXByaW1hcnksICMxZjFkMWEpOy0tcWItdGV4dC1tdXRlZDogdmFyKC0tdGV4dC1tdXRlZCwgIzZiNjU1Yyk7LS1xYi1zaGFkb3c6IDAgNHB4IDE4cHggcmdiYSgwLCAwLCAwLCAuMSksIDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIC4wNik7LS1xYi1zaGFkb3ctaG92ZXI6IDAgOHB4IDI0cHggcmdiYSgwLCAwLCAwLCAuMTQpLCAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAuMDYpfVtkYXRhLXRoZW1lPWRhcmtdIC5xdWV1ZS1iYXIsLnRoZW1lLWRhcmsgLnF1ZXVlLWJhcnstLXFiLWJnOiByZ2JhKDQwLCAzOCwgMzQsIC42KTstLXFiLWJnLXN0cm9uZzogcmdiYSg2MCwgNTYsIDUwLCAuNzQpOy0tcWItYm9yZGVyOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xMil9LmlucHV0LXBhbmVsPi5xdWV1ZS1iYXItaG9zdHtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxMHB4O2xlZnQ6YXV0bztib3R0b206Y2FsYygxMDAlICsgNnB4KTt6LWluZGV4OjMwO21heC13aWR0aDptaW4oNDQwcHgsY2FsYygxMDAlIC0gMjBweCkpO3BvaW50ZXItZXZlbnRzOm5vbmV9LnF1ZXVlLWJhci1ob3N0W2hpZGRlbl17ZGlzcGxheTpub25lfS5xdWV1ZS1iYXJ7cG9pbnRlci1ldmVudHM6bm9uZTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtZW5kO2dhcDo1cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtib3gtc2hhZG93Om5vbmU7cGFkZGluZzowO21hcmdpbjowfUBrZXlmcmFtZXMgcXVldWVCYXJJdGVtRW50ZXJ7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDZweCkgc2NhbGUoLjk2KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoMSl9fS5xdWV1ZS1iYXItaGVhZHtwb2ludGVyLWV2ZW50czphdXRvO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7cGFkZGluZzozcHggNnB4IDNweCAxMHB4O2JhY2tncm91bmQ6dmFyKC0tcWItYmcpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDIwcHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMjBweCkgc2F0dXJhdGUoMTgwJSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1xYi1ib3JkZXIpO2JvcmRlci1yYWRpdXM6MTNweDtib3gtc2hhZG93OnZhcigtLXFiLXNoYWRvdyksaW5zZXQgMCAxcHggI2ZmZjM7YW5pbWF0aW9uOnF1ZXVlQmFySXRlbUVudGVyIC4yMnMgY3ViaWMtYmV6aWVyKC4yLC44LC4yLDEpIGJvdGh9LnF1ZXVlLWJhci1oZWFkLWNvdW50e2ZvbnQtc2l6ZToxMC41cHg7Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXFiLXRleHQtbXV0ZWQpO2xldHRlci1zcGFjaW5nOi4wMmVtO3VzZXItc2VsZWN0Om5vbmU7d2hpdGUtc3BhY2U6bm93cmFwfS5xdWV1ZS1iYXItY2xlYXItYWxse2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6MnB4IDlweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMik7Y29sb3I6dmFyKC0tcWItdGV4dC1tdXRlZCk7Ym9yZGVyLXJhZGl1czoxMHB4O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2UsY29sb3IgLjE1cyBlYXNlLGJvcmRlci1jb2xvciAuMTVzIGVhc2V9LnF1ZXVlLWJhci1jbGVhci1hbGw6aG92ZXJ7YmFja2dyb3VuZDojZGM1MDQ2MWY7Ym9yZGVyLWNvbG9yOiNkYzUwNDY1OTtjb2xvcjojZDg0ODNjfS5xdWV1ZS1iYXItbGlzdHtsaXN0LXN0eWxlOm5vbmU7bWFyZ2luOjA7cGFkZGluZzowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1lbmQ7Z2FwOjVweDt3aWR0aDoxMDAlfS5xdWV1ZS1iYXItaXRlbXtwb2ludGVyLWV2ZW50czphdXRvO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo0cHggNnB4IDRweCA1cHg7bWF4LXdpZHRoOjEwMCU7Ym94LXNpemluZzpib3JkZXItYm94O2JhY2tncm91bmQ6dmFyKC0tcWItYmcpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDIwcHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMjBweCkgc2F0dXJhdGUoMTgwJSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1xYi1ib3JkZXIpO2JvcmRlci1yYWRpdXM6MTVweDtib3gtc2hhZG93OnZhcigtLXFiLXNoYWRvdyksaW5zZXQgMCAxcHggI2ZmZjM7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MS4zNTtjb2xvcjp2YXIoLS1xYi10ZXh0KTtjdXJzb3I6Z3JhYjt1c2VyLXNlbGVjdDpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMThzIGVhc2UsdHJhbnNmb3JtIC4xOHMgZWFzZSxib3gtc2hhZG93IC4xOHMgZWFzZTthbmltYXRpb246cXVldWVCYXJJdGVtRW50ZXIgLjIycyBjdWJpYy1iZXppZXIoLjIsLjgsLjIsMSkgYm90aH0ucXVldWUtYmFyLWl0ZW06aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1xYi1iZy1zdHJvbmcpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpO2JveC1zaGFkb3c6dmFyKC0tcWItc2hhZG93LWhvdmVyKSxpbnNldCAwIDFweCAjZmZmZmZmNDB9LnF1ZXVlLWJhci1pdGVtLmRyYWdnaW5ne2N1cnNvcjpncmFiYmluZzt0cmFuc2Zvcm06c2NhbGUoMS4wNCk7Ym94LXNoYWRvdzowIDhweCAyMnB4ICMwMDAzO3otaW5kZXg6NTA7b3BhY2l0eTouOTR9LnF1ZXVlLWJhci1pdGVtLXNsaWRpbmd7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjE2cyBjdWJpYy1iZXppZXIoLjIsLjcsLjIsMSl9LnF1ZXVlLWJhci1pdGVtLWluZGV4e2ZsZXg6MCAwIGF1dG87d2lkdGg6MThweDtoZWlnaHQ6MThweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQsICNjNTY1M2QpO2NvbG9yOnZhcigtLXRleHQtaW52ZXJzZSwgI2ZmZik7Ym9yZGVyLXJhZGl1czo1MCU7Zm9udC1zaXplOjEwcHg7Zm9udC13ZWlnaHQ6NzAwO2xpbmUtaGVpZ2h0OjF9LnF1ZXVlLWJhci1pdGVtLXRleHR7ZmxleDoxIDEgYXV0bzttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Y29sb3I6dmFyKC0tcWItdGV4dCk7Zm9udC13ZWlnaHQ6NTAwfS5xdWV1ZS1iYXItaXRlbS1wcm9tb3RlLC5xdWV1ZS1iYXItaXRlbS1kZWxldGV7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoyNHB4O2hlaWdodDoyNHB4O2JvcmRlcjpub25lO2JhY2tncm91bmQ6I2ZmZmZmZjI5O2NvbG9yOnZhcigtLXFiLXRleHQpO2JvcmRlci1yYWRpdXM6NTAlO2N1cnNvcjpwb2ludGVyO2ZsZXg6MCAwIGF1dG87dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMgZWFzZSx0cmFuc2Zvcm0gLjE1cyBlYXNlLGNvbG9yIC4xNXMgZWFzZSxmaWx0ZXIgLjE1cyBlYXNlO3BhZGRpbmc6MH0ucXVldWUtYmFyLWl0ZW0tcHJvbW90ZXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCwgI2M1NjUzZCk7Y29sb3I6dmFyKC0tdGV4dC1pbnZlcnNlLCAjZmZmKX0ucXVldWUtYmFyLWl0ZW0tcHJvbW90ZTpob3ZlcntmaWx0ZXI6YnJpZ2h0bmVzcygxLjA4KTt0cmFuc2Zvcm06c2NhbGUoMS4wNil9LnF1ZXVlLWJhci1pdGVtLWRlbGV0ZTpob3ZlcntiYWNrZ3JvdW5kOiNkYzUwNDYyZTtjb2xvcjojZDg0ODNjfS5xdWV1ZS1iYXItaXRlbS1kZWxldGU6YWN0aXZlLC5xdWV1ZS1iYXItaXRlbS1wcm9tb3RlOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk0KX0ucXVldWUtYmFyLWl0ZW0tcHJvbW90ZSBzdmcsLnF1ZXVlLWJhci1pdGVtLWRlbGV0ZSBzdmd7ZmxleC1zaHJpbms6MH0ucXVldWUtYmFyLnF1ZXVlLWJhci1jYXBhY2l0eSAucXVldWUtYmFyLWl0ZW17LS1xYi1iZzogcmdiYSgyMjAsIDEyMCwgNjAsIC4yKTstLXFiLWJnLXN0cm9uZzogcmdiYSgyMjAsIDEyMCwgNjAsIC4yOCl9LnF1ZXVlLWJhci5xdWV1ZS1iYXItaW5mbGlnaHQgLnF1ZXVlLWJhci1pdGVte2JveC1zaGFkb3c6dmFyKC0tcWItc2hhZG93KSxpbnNldCAwIDFweCAjZmZmZmZmNDAsMCAwIDAgMXB4ICNjNTY1M2QyZX1AbWVkaWEobWF4LXdpZHRoOjU2MHB4KXsuaW5wdXQtcGFuZWw+LnF1ZXVlLWJhci1ob3N0e3JpZ2h0OjhweDttYXgtd2lkdGg6Y2FsYygxMDAlIC0gMTZweCl9fS5pbnB1dC1oaW50e2ZvbnQtc2l6ZTouNXJlbTtsaW5lLWhlaWdodDoxLjI7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7d2hpdGUtc3BhY2U6bm93cmFwO3VzZXItc2VsZWN0Om5vbmU7b3BhY2l0eTouNzttYXgtd2lkdGg6MzhjaDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30uY29tcG9zZXItdG9wLXJvd3twb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7bWluLXdpZHRoOjB9LmNvbXBvc2VyLXRvcC1yb3c6aGFzKD4udG9kby1wcm9ncmVzczpub3QoLmhpZGRlbikpLC5jb21wb3Nlci10b3Atcm93Omhhcyg+LnN0cnVjdHVyZWQtc3RhdHVzLWJhcil7bWFyZ2luLWJvdHRvbTo2cHh9LnRvZG8tcHJvZ3Jlc3N7bWFyZ2luLWJvdHRvbTo2cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udG9kby1wcm9ncmVzcy5oaWRkZW57ZGlzcGxheTpub25lfS5jb21wb3Nlci10b3Atcm93Pi50b2RvLXByb2dyZXNze2ZsZXg6MTttaW4td2lkdGg6MDttYXJnaW4tYm90dG9tOjB9LnRvZG8tcHJvZ3Jlc3MtaGVhZGVye3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cGFkZGluZzo0cHggOHB4O2N1cnNvcjpwb2ludGVyO3VzZXItc2VsZWN0Om5vbmU7Z2FwOjhweDtib3JkZXItcmFkaXVzOjEwcHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnRvZG8tcHJvZ3Jlc3MtaGVhZGVyOmhvdmVye2JhY2tncm91bmQ6I2M1NjUzZDE0fS50b2RvLXByb2dyZXNzLWxlZnR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O21pbi13aWR0aDowO2ZsZXgtc2hyaW5rOjA7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxfS50b2RvLXByb2dyZXNzLXJpbmd7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O21pbi13aWR0aDoxNnB4O2ZsZXgtc2hyaW5rOjB9LnRvZG8tcHJvZ3Jlc3MtcmluZyBzdmd7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyl9LnRvZG8tcmluZy10cmFja3tzdHJva2U6I2M1NjUzZDJlfS50b2RvLXJpbmctZmlsbHtzdHJva2U6dmFyKC0tYWNjZW50KTtzdHJva2UtZGFzaGFycmF5Ojk3LjM5O3N0cm9rZS1kYXNob2Zmc2V0OmNhbGMoOTcuMzkgKiAoMSAtIHZhcigtLXByb2dyZXNzLCAwKSkpO3RyYW5zaXRpb246c3Ryb2tlLWRhc2hvZmZzZXQgLjM1cyBlYXNlfS50b2RvLXByb2dyZXNzLXJpbmc6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDo0cHg7aGVpZ2h0OjRweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7b3BhY2l0eTouNjthbmltYXRpb246cmluZ1B1bHNlIDEuNHMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyByaW5nUHVsc2V7MCUsdG97b3BhY2l0eTouMzU7dHJhbnNmb3JtOnNjYWxlKC44NSl9NTAle29wYWNpdHk6Ljk1O3RyYW5zZm9ybTpzY2FsZSgxLjA1KX19LnRvZG8tcHJvZ3Jlc3MtY291bnRlcntmb250LXNpemU6Ljc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3doaXRlLXNwYWNlOm5vd3JhcDtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXN9LnRvZG8tcHJvZ3Jlc3MtZmlsbHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7Ym90dG9tOjA7d2lkdGg6Y2FsYyh2YXIoLS1wcm9ncmVzcywgMCkgKiAxMDAlKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCwjYzU2NTNkNDcsI2M1NjUzZDFhKTtib3JkZXItcmFkaXVzOjEwcHggMCAwIDEwcHg7dHJhbnNpdGlvbjp3aWR0aCAuMzVzIGVhc2U7cG9pbnRlci1ldmVudHM6bm9uZTt6LWluZGV4OjB9LnRvZG8tcHJvZ3Jlc3MtZmlsbDphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0cHg7Ym90dG9tOjRweDtyaWdodDotMXB4O3dpZHRoOjJweDtiYWNrZ3JvdW5kOiNjNTY1M2Q5OTtib3JkZXItcmFkaXVzOjFweH0udG9kby1wcm9ncmVzcy10YXNrLXdyYXB7ZmxleDoxO21pbi13aWR0aDowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2dhcDo2cHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO3BhZGRpbmctbGVmdDo4cHh9LnRvZG8tcHJvZ3Jlc3MtdGFza3tmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmbGV4OjE7bWluLXdpZHRoOjA7dGV4dC1hbGlnbjpyaWdodH0udG9kby1wcm9ncmVzcy1oZWFkZXI6aGFzKC50b2RvLXByb2dyZXNzLXRhc2s6bm90KDplbXB0eSkpIC50b2RvLXByb2dyZXNzLXRhc2t7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsI2ZmZjAsI2ZmZmZmZjhjIDEyJSA4OCUsI2ZmZjApO3BhZGRpbmc6MXB4IDZweDtib3JkZXItcmFkaXVzOjZweH0udG9kby1wcm9ncmVzcy1jaGV2cm9ue2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZsZXgtc2hyaW5rOjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGVhc2U7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxfS50b2RvLXByb2dyZXNzLmV4cGFuZGVkIC50b2RvLXByb2dyZXNzLWNoZXZyb257dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS50b2RvLXByb2dyZXNzLWJvZHl7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOmNhbGMoMTAwJSArIDZweCk7YmFja2dyb3VuZDojZmZmYmY2ZmE7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czoxMnB4O3BhZGRpbmc6OHB4IDEwcHg7Ym94LXNoYWRvdzowIDhweCAyNHB4ICMwMDAwMDAxNCwwIDJweCA2cHggIzAwMDAwMDBhO2JhY2tkcm9wLWZpbHRlcjpibHVyKDhweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpO21heC1oZWlnaHQ6MzIwcHg7b3ZlcmZsb3cteTphdXRvO3otaW5kZXg6MzA7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDZweCk7cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE4cyBlYXNlLHRyYW5zZm9ybSAuMThzIGVhc2V9LnRvZG8tcHJvZ3Jlc3MtYm9keS5oaWRkZW57ZGlzcGxheTpub25lfS50b2RvLXByb2dyZXNzLWJvZHkuZXhwYW5kZWR7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApO3BvaW50ZXItZXZlbnRzOmF1dG99LnRvZG8tcHJvZ3Jlc3MtbGlzdHtsaXN0LXN0eWxlOm5vbmU7bWFyZ2luOjA7cGFkZGluZzowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjFweH0udG9kby1wcm9ncmVzcy1pdGVte2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7cGFkZGluZzo2cHggOHB4O2JvcmRlci1yYWRpdXM6OHB4O2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7bGluZS1oZWlnaHQ6MS4zNTt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udG9kby1wcm9ncmVzcy1pdGVtKy50b2RvLXByb2dyZXNzLWl0ZW17Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czowfS50b2RvLXByb2dyZXNzLWl0ZW06Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo4cHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6OHB4fS50b2RvLXByb2dyZXNzLWl0ZW06bGFzdC1jaGlsZHtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjhweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo4cHh9LnRvZG8tcHJvZ3Jlc3MtaXRlbS5hY3RpdmV7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LXdlaWdodDo1MDA7YmFja2dyb3VuZDojYzU2NTNkMTJ9LnRvZG8tcHJvZ3Jlc3MtaXRlbS5kb25le2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RleHQtZGVjb3JhdGlvbjpsaW5lLXRocm91Z2g7dGV4dC1kZWNvcmF0aW9uLWNvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS50b2RvLXByb2dyZXNzLWl0ZW0+c3BhbjpsYXN0LWNoaWxke2ZsZXg6MTttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LnRvZG8taXRlbS1pY29ue3dpZHRoOjE2cHg7bWluLXdpZHRoOjE2cHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOi43NXJlbTtmbGV4LXNocmluazowfS50b2RvLWl0ZW0taWNvbi5wZW5kaW5ne2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS50b2RvLWl0ZW0taWNvbi5hY3RpdmV7Y29sb3I6dmFyKC0tYWNjZW50KX0udG9kby1pdGVtLWljb24uZG9uZXtjb2xvcjojNGE3YTRmfS5mb2xkZXItcGlja2VyLWNvbnRhaW5lcnttYXJnaW4tYm90dG9tOjhweH0uZm9sZGVyLXBpY2tlci1xdWljay1idG57ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O3BhZGRpbmc6NHB4IDhweDtiYWNrZ3JvdW5kOiNmZmY5O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmZvbGRlci1waWNrZXItcXVpY2stYnRuOmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZmU2O2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2NvbG9yOnZhcigtLWFjY2VudCl9LmZvbGRlci1icmVhZGNydW1ie2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7ZmxleC13cmFwOndyYXA7Z2FwOjJweDtwYWRkaW5nOjRweCA4cHg7YmFja2dyb3VuZDojZmZmNjtib3JkZXItcmFkaXVzOjZweDtmb250LXNpemU6LjY4NzVyZW07Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTttYXJnaW4tYm90dG9tOjRweH0uZm9sZGVyLXBpY2tlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo2cHggOHB4O2JhY2tncm91bmQ6I2ZmZmZmZjgwO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pfS5mb2xkZXItcGlja2VyLWljb257Zm9udC1zaXplOjFyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7ZmxleC1zaHJpbms6MH0uZm9sZGVyLXBpY2tlci1pbnB1dHtmbGV4OjE7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO291dGxpbmU6bm9uZTtwYWRkaW5nOjRweH0uZm9sZGVyLXBpY2tlci1pbnB1dDpmb2N1c3tiYWNrZ3JvdW5kOiNmZmZjO2JvcmRlci1yYWRpdXM6NHB4fS5mb2xkZXItcGlja2VyLWRyb3Bkb3due3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMDAlO2xlZnQ6MDtyaWdodDowO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctZWxldmF0ZWQpO3otaW5kZXg6NTA7bWF4LWhlaWdodDoyNDBweDtvdmVyZmxvdy15OmF1dG87bWFyZ2luLXRvcDo0cHh9LmZvbGRlci1waWNrZXItaXRlbXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7cGFkZGluZzo4cHggMTBweDtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6LjgxMjVyZW07dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmZvbGRlci1waWNrZXItaXRlbTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KX0uZm9sZGVyLXBpY2tlci1pdGVtLmFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCl9LmZvbGRlci1waWNrZXItaXRlbS1pY29ue2ZvbnQtc2l6ZTouODc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5mb2xkZXItcGlja2VyLWxvYWRpbmd7cGFkZGluZzo4cHggMTBweDt0ZXh0LWFsaWduOmNlbnRlcjtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6Ljc1cmVtfS5mb2xkZXItcGlja2VyLWVycm9ye3BhZGRpbmc6OHB4IDEwcHg7Y29sb3I6dmFyKC0tZGFuZ2VyKTtmb250LXNpemU6Ljc1cmVtO2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKTtib3JkZXItcmFkaXVzOjRweDttYXJnaW46NHB4IDhweH0uZm9sZGVyLXBpY2tlci1jb250YWluZXIuZHJhZy1vdmVye2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSl9LmZvbGRlci1waWNrZXItY29udGFpbmVyLmRyYWctb3ZlciAuZm9sZGVyLXBpY2tlcntib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX0uZm9sZGVyLXJlY2VudC1zZWN0aW9ue3BhZGRpbmc6NHB4IDhweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTttYXJnaW4tYm90dG9tOjRweH0uZm9sZGVyLXJlY2VudC10aXRsZXtmb250LXNpemU6LjY4NzVyZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOi4wNWVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO21hcmdpbi1ib3R0b206NHB4fS5mb2xkZXItcmVjZW50LWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6NnB4IDhweDtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6Ljc1cmVtO2JvcmRlci1yYWRpdXM6NHB4O3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5mb2xkZXItcmVjZW50LWl0ZW06aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSl9LmZvbGRlci1yZWNlbnQtaXRlbS1wYXRoe2ZsZXg6MTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKX0uZm9sZGVyLXBpY2tlci1pbnB1dC5pbnZhbGlke2JvcmRlci1jb2xvcjp2YXIoLS1kYW5nZXIpO2JhY2tncm91bmQ6I2IyNGY0NTE0fS5mb2xkZXItcGlja2VyLWlucHV0LmludmFsaWQ6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAycHggI2IyNGY0NTMzfS5mb2xkZXItcGlja2VyLXZhbGlkYXRpb257Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLWRhbmdlcik7cGFkZGluZzoycHggNHB4O21hcmdpbi10b3A6MnB4O2Rpc3BsYXk6bm9uZX0uZm9sZGVyLXBpY2tlci12YWxpZGF0aW9uLnZpc2libGV7ZGlzcGxheTpibG9ja30uZm9sZGVyLXBpY2tlci1jb21wYWN0e3Bvc2l0aW9uOnN0aWNreTttYXJnaW4tYm90dG9tOjhweH0uZm9sZGVyLXBpY2tlci1jb21wYWN0LXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo2cHggMTBweDtiYWNrZ3JvdW5kOiNmZmZmZmY4MDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5mb2xkZXItcGlja2VyLWNvbXBhY3Qtcm93OmZvY3VzLXdpdGhpbntiYWNrZ3JvdW5kOiNmZmZjO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfS5mb2xkZXItcGlja2VyLWNvbXBhY3QtaWNvbntmb250LXNpemU6Ljg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmbGV4LXNocmluazowfS5mb2xkZXItcGlja2VyLWNvbXBhY3QtaW5wdXR7ZmxleDoxO2JvcmRlcjpub25lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtvdXRsaW5lOm5vbmU7cGFkZGluZzoycHggMDttaW4td2lkdGg6MH0uZm9sZGVyLXBpY2tlci1jb21wYWN0LWlucHV0OjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uZm9sZGVyLXBpY2tlci10b2dnbGV7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lO3BhZGRpbmc6NHB4IDZweDtmb250LXNpemU6LjYyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjtib3JkZXItcmFkaXVzOjRweDt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5mb2xkZXItcGlja2VyLXRvZ2dsZTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LmZvbGRlci1waWNrZXItcXVpY2stcm93e2Rpc3BsYXk6ZmxleDtnYXA6NnB4O3BhZGRpbmc6NnB4IDhweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKX0uZm9sZGVyLXBpY2tlci1xdWljay1yb3cgLmZvbGRlci1waWNrZXItcXVpY2stYnRue2ZsZXg6MTtwYWRkaW5nOjRweCA4cHg7Zm9udC1zaXplOi42ODc1cmVtfS53b3JraW5nLWRpci1pbmRpY2F0b3J7cG9zaXRpb246YWJzb2x1dGU7bGVmdDoxMHB4O2JvdHRvbTo1cHg7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtwYWRkaW5nOjJweCA2cHg7YmFja2dyb3VuZDojYzU2NTNkMTQ7Ym9yZGVyLXJhZGl1czo0cHg7Zm9udC1zaXplOi42NXJlbTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7bWF4LXdpZHRoOjE4MHB4O3otaW5kZXg6Mjtwb2ludGVyLWV2ZW50czphdXRvfS53b3JraW5nLWRpci1pbmRpY2F0b3I6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2NvbG9yOnZhcigtLWFjY2VudCl9LndvcmtpbmctZGlyLWluZGljYXRvci1pY29ue2ZvbnQtc2l6ZTouNzVyZW07ZmxleC1zaHJpbms6MH0ud29ya2luZy1kaXItaW5kaWNhdG9yLXBhdGh7b3ZlcmZsb3cteDphdXRvO292ZXJmbG93LXk6aGlkZGVuO3Njcm9sbGJhci13aWR0aDpub25lfS53b3JraW5nLWRpci1pbmRpY2F0b3ItcGF0aDo6LXdlYmtpdC1zY3JvbGxiYXJ7aGVpZ2h0OjNweH0ud29ya2luZy1kaXItaW5kaWNhdG9yLXBhdGg6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6Izk2NzY1NTUyO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpfS53b3JraW5nLWRpci1pbmRpY2F0b3I6aG92ZXIgLndvcmtpbmctZGlyLWluZGljYXRvci1wYXRoe3Njcm9sbGJhci13aWR0aDp0aGlufS53b3JraW5nLWRpci1pbmRpY2F0b3I6aG92ZXIgLndvcmtpbmctZGlyLWluZGljYXRvci1wYXRoOjotd2Via2l0LXNjcm9sbGJhcntoZWlnaHQ6NHB4fS5pbnB1dC10ZXh0YXJlYXstLWlucHV0LW1heC1oZWlnaHQ6IDEyMHB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44MTI1cmVtO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtwYWRkaW5nOjlweCA4cHg7b3V0bGluZTpub25lO3Jlc2l6ZTpub25lO21pbi1oZWlnaHQ6MzZweDttYXgtaGVpZ2h0OnZhcigtLWlucHV0LW1heC1oZWlnaHQpO3dpZHRoOjEwMCU7ZGlzcGxheTpibG9jaztvdmVyZmxvdy15OmhpZGRlbjtvdmVyc2Nyb2xsLWJlaGF2aW9yOmNvbnRhaW47LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2g7dHJhbnNpdGlvbjpoZWlnaHQgLjE1cyBlYXNlLW91dDtib3gtc2l6aW5nOmJvcmRlci1ib3g7bGluZS1oZWlnaHQ6MS40O3RvdWNoLWFjdGlvbjpwYW4teTtzY3JvbGxiYXItZ3V0dGVyOnN0YWJsZX1AbWVkaWEocG9pbnRlcjpjb2Fyc2Upey5pbnB1dC10ZXh0YXJlYXstLWlucHV0LW1heC1oZWlnaHQ6IG1pbigxNjBweCwgMzVkdmgpO292ZXJmbG93LXk6YXV0b319QHN1cHBvcnRzIG5vdCAoaGVpZ2h0OiAxZHZoKXtAbWVkaWEocG9pbnRlcjpjb2Fyc2Upey5pbnB1dC10ZXh0YXJlYXstLWlucHV0LW1heC1oZWlnaHQ6IG1pbigxNjBweCwgMzV2aCl9fX0uaW5wdXQtdGV4dGFyZWE6Zm9jdXN7b3V0bGluZTpub25lfS5pbnB1dC10ZXh0YXJlYTo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXdlaWdodDo1MDA7bGV0dGVyLXNwYWNpbmc6MDtvcGFjaXR5Oi42Mn0uaW5wdXQtdGV4dGFyZWEuaXMtdGVybWluYWwtcGFzc3Rocm91Z2h7b3BhY2l0eTouNztjdXJzb3I6ZGVmYXVsdH0uaW5wdXQtdGV4dGFyZWEuaXMtdGVybWluYWwtcGFzc3Rocm91Z2g6OnBsYWNlaG9sZGVye2ZvbnQtc3R5bGU6aXRhbGljfS5jb21wb3Nlci1waWxse2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi42MjVyZW07Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE7bWluLWhlaWdodDoyMnB4O3BhZGRpbmc6MXB4IDhweDtib3JkZXItcmFkaXVzOjEwcHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOiNmNmYxZThiMztjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo0cHg7d2hpdGUtc3BhY2U6bm93cmFwO2JveC1zaXppbmc6Ym9yZGVyLWJveDt1c2VyLXNlbGVjdDpub25lfS5jb21wb3Nlci1waWxsOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQtY29sb3I6I2Y2ZjFlOH0uY29tcG9zZXItcGlsbDpmb2N1cywuY29tcG9zZXItcGlsbDpmb2N1cy12aXNpYmxle2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWFjY2VudC1tdXRlZCk7b3V0bGluZTpub25lfS5jb21wb3Nlci1waWxsLmRpc2FibGVkLC5jb21wb3Nlci1waWxsW2Rpc2FibGVkXXtvcGFjaXR5Oi41NTtjdXJzb3I6bm90LWFsbG93ZWR9LmNvbXBvc2VyLXBpbGwtY2hpcHtwYWRkaW5nOjFweCA4cHg7Zm9udC1zaXplOi42MjVyZW19LmNvbXBvc2VyLXBpbGwtY2hpcC5hY3RpdmV7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQsIHJnYmEoMTk3LCAxMDEsIDYxLCAuMTIpKTtjb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfS5jb21wb3Nlci1waWxsLWNoaXAuYWN0aXZlOmhvdmVye2JhY2tncm91bmQ6I2M1NjUzZDJlfS5jaGF0LW1vZGUtc2VsZWN0e21heC13aWR0aDo3OHB4fS5idG4tY2lyY2xle3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7bWluLXdpZHRoOjI4cHg7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOm5vbmU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2ZsZXgtc2hyaW5rOjA7cGFkZGluZzowfS5idG4tY2lyY2xlLXNlbmR7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWFjY2VudCkgMCUsI2E4NTIyZiAxMDAlKTtjb2xvcjojZmZmO2JveC1zaGFkb3c6MCAxcHggNnB4ICNjNTY1M2Q0MH0uYnRuLWNpcmNsZS1zZW5kOmhvdmVye3RyYW5zZm9ybTpzY2FsZSgxLjA4KTtib3gtc2hhZG93OjAgM3B4IDEwcHggI2M1NjUzZDU5fS5idG4tY2lyY2xlLXNlbmQ6YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTUpfS5idG4tY2lyY2xlLXN0b3B7YmFja2dyb3VuZDojYjI0ZjQ1MWY7Y29sb3I6dmFyKC0tZGFuZ2VyKX0uYnRuLWNpcmNsZS1zdG9wOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyKTtjb2xvcjojZmZmO3RyYW5zZm9ybTpzY2FsZSgxLjA4KX0uYnRuLWNpcmNsZS1zdG9wOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk1KX0uYnRuLWNpcmNsZS1zZW5kLnF1ZXVlLW1vZGV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNjNTY1M2Q4YywjYTg1MjJmOGMpO2JveC1zaGFkb3c6MCAxcHggNHB4ICNjNTY1M2QyNn0uYnRuLWNpcmNsZS1zZW5kLnF1ZXVlLW1vZGU6aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWFjY2VudCkgMCUsI2E4NTIyZiAxMDAlKTtib3gtc2hhZG93OjAgM3B4IDEwcHggI2M1NjUzZDU5fS5wcm9tcHQtb3B0aW1pemUtYnRue3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1cHg7cmlnaHQ6NnB4O3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE5NywxMDEsNjEsLjIyKTtwYWRkaW5nOjA7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2ZmZmFmMmYyLCNlOGM1YWU1OSk7Y29sb3I6dmFyKC0tYWNjZW50KTt6LWluZGV4OjQ7Ym94LXNoYWRvdzowIDFweCA0cHggI2M1NjUzZDFhO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5wcm9tcHQtb3B0aW1pemUtYnRuOmhvdmVye2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjZmZmYWYyLCNlOGM1YWU4Yyk7Y29sb3I6dmFyKC0tYWNjZW50LWhvdmVyKTt0cmFuc2Zvcm06c2NhbGUoMS4xMik7Ym9yZGVyLWNvbG9yOiNjNTY1M2Q1OTtib3gtc2hhZG93OjAgMnB4IDEwcHggI2M1NjUzZDM4LDAgMCAwIDNweCAjYzU2NTNkMGZ9LnByb21wdC1vcHRpbWl6ZS1idG46YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTIpO2JveC1zaGFkb3c6MCAxcHggM3B4ICNjNTY1M2QyNn0ucHJvbXB0LW9wdGltaXplLWJ0bjpkaXNhYmxlZHtjdXJzb3I6bm90LWFsbG93ZWQ7b3BhY2l0eTouNn0ucHJvbXB0LW9wdGltaXplLWJ0bjpkaXNhYmxlZDpob3Zlcnt0cmFuc2Zvcm06bm9uZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2ZmZmFmMmYyLCNlOGM1YWU1OSk7Ym94LXNoYWRvdzowIDFweCA0cHggI2M1NjUzZDFhO2JvcmRlci1jb2xvcjojYzU2NTNkMzh9LnByb21wdC1vcHRpbWl6ZS1pY29ue3RyYW5zaXRpb246dHJhbnNmb3JtIC4yNXMgZWFzZSxvcGFjaXR5IC4ycyBlYXNlO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMTk3LDEwMSw2MSwuMykpfS5wcm9tcHQtb3B0aW1pemUtYnRuOmhvdmVyIC5wcm9tcHQtb3B0aW1pemUtaWNvbnthbmltYXRpb246cHJvbXB0LW9wdGltaXplLXR3aW5rbGUgMS40cyBlYXNlLWluLW91dCBpbmZpbml0ZTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDNweCByZ2JhKDE5NywxMDEsNjEsLjQpKX1Aa2V5ZnJhbWVzIHByb21wdC1vcHRpbWl6ZS10d2lua2xlezAlLHRve3RyYW5zZm9ybTpyb3RhdGUoMCkgc2NhbGUoMSl9NTAle3RyYW5zZm9ybTpyb3RhdGUoMTJkZWcpIHNjYWxlKDEuMTIpfX0ucHJvbXB0LW9wdGltaXplLXNwaW5uZXJ7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtib3JkZXItcmFkaXVzOjUwJTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDtiYWNrZ3JvdW5kOmNvbmljLWdyYWRpZW50KGZyb20gMGRlZyx0cmFuc3BhcmVudCAwZGVnLHZhcigtLWFjY2VudCkgMjcwZGVnLHRyYW5zcGFyZW50IDM2MGRlZyk7bWFzazpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlLHRyYW5zcGFyZW50IDEwcHgsYmxhY2sgMTFweCk7LXdlYmtpdC1tYXNrOnJhZGlhbC1ncmFkaWVudChjaXJjbGUsdHJhbnNwYXJlbnQgMTBweCxibGFjayAxMXB4KTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBlYXNlfS5wcm9tcHQtb3B0aW1pemUtYnRuLmlzLWxvYWRpbmd7Y29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2ZmZmFmMiwjZThjNWFlODApO2JvcmRlci1jb2xvcjojYzU2NTNkNjY7Ym94LXNoYWRvdzowIDJweCAxMnB4ICNjNTY1M2Q0MCwwIDAgMCAzcHggI2M1NjUzZDE0fS5wcm9tcHQtb3B0aW1pemUtYnRuLmlzLWxvYWRpbmcgLnByb21wdC1vcHRpbWl6ZS1pY29ue2FuaW1hdGlvbjpwcm9tcHQtb3B0aW1pemUtcHVsc2UgMS4xcyBlYXNlLWluLW91dCBpbmZpbml0ZX0ucHJvbXB0LW9wdGltaXplLWJ0bi5pcy1sb2FkaW5nIC5wcm9tcHQtb3B0aW1pemUtc3Bpbm5lcntvcGFjaXR5OjE7YW5pbWF0aW9uOnByb21wdC1vcHRpbWl6ZS1zcGluIC45cyBsaW5lYXIgaW5maW5pdGV9QGtleWZyYW1lcyBwcm9tcHQtb3B0aW1pemUtc3Bpbnt0b3t0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fUBrZXlmcmFtZXMgcHJvbXB0LW9wdGltaXplLXB1bHNlezAlLHRve3RyYW5zZm9ybTpzY2FsZSguODgpO29wYWNpdHk6Ljh9NTAle3RyYW5zZm9ybTpzY2FsZSgxLjE1KTtvcGFjaXR5OjF9fS5pbnB1dC1jb21wb3Nlci5pcy1vcHRpbWl6aW5ne2JvcmRlci1jb2xvcjojYzU2NTNkNmI7Ym94LXNoYWRvdzowIDAgMCAycHggI2M1NjUzZDFhLDAgMCAxOHB4ICNjNTY1M2QyNH0uaW5wdXQtY29tcG9zZXIuaXMtb3B0aW1pemluZyAuY29tcG9zZXItaW5wdXQtd3JhcDpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTAwZGVnLHRyYW5zcGFyZW50IDAlLHRyYW5zcGFyZW50IDM4JSxyZ2JhKDIxNCwxMjMsODIsLjE2KSA1MCUsdHJhbnNwYXJlbnQgNjIlLHRyYW5zcGFyZW50IDEwMCUpO2JhY2tncm91bmQtc2l6ZToyMjAlIDEwMCU7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246MjIwJSAwO2FuaW1hdGlvbjpwcm9tcHQtb3B0aW1pemUtZmxvdyAxLjZzIGxpbmVhciBpbmZpbml0ZTt6LWluZGV4OjB9QGtleWZyYW1lcyBwcm9tcHQtb3B0aW1pemUtZmxvd3swJXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjIyMCUgMH10b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOi0xMjAlIDB9fS5wcm9tcHQtb3B0aW1pemUtYnRuLmlzLXNoYWtle2FuaW1hdGlvbjpwcm9tcHQtb3B0aW1pemUtc2hha2UgLjRzIGVhc2Utb3V0O2NvbG9yOnZhcigtLWRhbmdlcil9QGtleWZyYW1lcyBwcm9tcHQtb3B0aW1pemUtc2hha2V7MCUsdG97dHJhbnNmb3JtOnRyYW5zbGF0ZSgwKX0yMCV7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtM3B4KX00MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZSgzcHgpfTYwJXt0cmFuc2Zvcm06dHJhbnNsYXRlKC0ycHgpfTgwJXt0cmFuc2Zvcm06dHJhbnNsYXRlKDJweCl9fUBtZWRpYShtYXgtd2lkdGg6NzIwcHgpey5wcm9tcHQtb3B0aW1pemUtYnRue3dpZHRoOjI2cHg7aGVpZ2h0OjI2cHh9LnByb21wdC1vcHRpbWl6ZS1pY29ue3dpZHRoOjE0cHg7aGVpZ2h0OjE0cHh9fS5idG4tY2lyY2xlLWFjdGlvbntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7bWluLXdpZHRoOjMycHg7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOm5vbmU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2ZsZXgtc2hyaW5rOjA7cGFkZGluZzowfS5idG4tY2lyY2xlLWFjdGlvbjpob3ZlcntiYWNrZ3JvdW5kOiNjNTY1M2QxYTtjb2xvcjp2YXIoLS1hY2NlbnQpO3RyYW5zZm9ybTpzY2FsZSgxLjA4KX0uYnRuLWNpcmNsZS1hY3Rpb246YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTQpfS5idG4tY2lyY2xlLWFjdGlvbi5hY3RpdmV7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQsIHJnYmEoMTk3LCAxMDEsIDYxLCAuMTQpKTtjb2xvcjp2YXIoLS1hY2NlbnQpfS5idG4tY2lyY2xlLWFjdGlvbi5hY3RpdmU6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMzh9LmNoYXQtbW9kZS10cmlve2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7ZmxleC13cmFwOndyYXB9LmNoYXQtbW9kZS10cmlvLXBpbGx7cG9zaXRpb246cmVsYXRpdmU7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZX0uY2hhdC1tb2RlLXRyaW8tdGFne2ZvbnQtc2l6ZTouNjI1cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5LCAjYjVhODlhKTtsZXR0ZXItc3BhY2luZzouMDRlbTttYXJnaW4tcmlnaHQ6NHB4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtvcGFjaXR5Oi43NX0uZW1wdHktc3RhdGUtdHJpby13cmFwe21hcmdpbi10b3A6MTRweDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O2FuaW1hdGlvbjplbXB0eVN0YXRlVHJpb0ZhZGVJbiAuNHMgZWFzZS1vdXR9LmVtcHR5LXN0YXRlLXRyaW8taGludHtmb250LXNpemU6LjcycmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xldHRlci1zcGFjaW5nOi4wMmVtfS5jaGF0LW1vZGUtdHJpby1kcm9wZG93bntnYXA6NHB4O3BhZGRpbmc6NnB4IDEycHg7YmFja2dyb3VuZDojZjZmMWU4OTk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjEycHg7Ym94LXNoYWRvdzowIDFweCAzcHggIzAwMDAwMDBhfS5jaGF0LW1vZGUtdHJpby1kcm9wZG93biAuY2hhdC1tb2RlLXRyaW8tcGlsbHtmb250LXNpemU6Ljc4cmVtO3BhZGRpbmc6M3B4IDZweDtib3JkZXItcmFkaXVzOjhweDt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uY2hhdC1tb2RlLXRyaW8tZHJvcGRvd24gLmNoYXQtbW9kZS10cmlvLXBpbGw6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMGZ9LmNoYXQtbW9kZS10cmlvLWRyb3Bkb3duIC5jaGF0LW1vZGUtdHJpby1waWxsOmZvY3VzLXdpdGhpbntiYWNrZ3JvdW5kOiNjNTY1M2QxNH0uY2hhdC1tb2RlLXRyaW8tZHJvcGRvd24gLmNvbXBvc2VyLXRleHQtbGFiZWx7Zm9udC1zaXplOi44cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO21heC13aWR0aDoxNDBweH1Aa2V5ZnJhbWVzIGVtcHR5U3RhdGVUcmlvRmFkZUluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg0cHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX19LmNoYXQtbWVzc2FnZS1hdmF0YXIudXNlciAuY2hhdC1tb2RlLXRyaW8tY29tcGFjdHttYXJnaW4tcmlnaHQ6NHB4O2dhcDozcHg7b3BhY2l0eTouNTU7dHJhbnNpdGlvbjpvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmNoYXQtbWVzc2FnZS1hdmF0YXIudXNlcjpob3ZlciAuY2hhdC1tb2RlLXRyaW8tY29tcGFjdCwuY2hhdC1tZXNzYWdlLWF2YXRhci51c2VyIC5jaGF0LW1vZGUtdHJpby1jb21wYWN0OmZvY3VzLXdpdGhpbiwuY2hhdC1tZXNzYWdlLWF2YXRhci51c2VyIC5jaGF0LW1vZGUtdHJpby1jb21wYWN0OmhvdmVye29wYWNpdHk6MX0uY2hhdC1tb2RlLXRyaW8tY29tcGFjdCAuY2hhdC1tb2RlLXRyaW8tcGlsbHtmb250LXNpemU6LjY4NzVyZW07cGFkZGluZzoycHggNnB4O2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOiNmNmYxZTg4Yztib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2xpbmUtaGVpZ2h0OjF9LmNoYXQtbW9kZS10cmlvLWNvbXBhY3QgLmNoYXQtbW9kZS10cmlvLXBpbGw6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMWE7Y29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX0uY2hhdC1tb2RlLXRyaW8tY29tcGFjdCAuY29tcG9zZXItdGV4dC1sYWJlbHtmb250LXNpemU6LjY4NzVyZW07bWF4LXdpZHRoOjg4cHg7bGV0dGVyLXNwYWNpbmc6LjAxZW19LmNoYXQtbW9kZS10cmlvLWNvbXBhY3QgLmNvbXBvc2VyLXRleHQtc2Vwe2Rpc3BsYXk6bm9uZX1AbWVkaWEobWF4LXdpZHRoOjcyMHB4KXsuY2hhdC1tb2RlLXRyaW8tZHJvcGRvd257cGFkZGluZzo2cHggMTBweDtnYXA6MnB4fS5jaGF0LW1vZGUtdHJpby1kcm9wZG93biAuY29tcG9zZXItdGV4dC1sYWJlbHttYXgtd2lkdGg6MTAwcHh9LmNoYXQtbW9kZS10cmlvLWNvbXBhY3QgLmNoYXQtbW9kZS10cmlvLXBpbGx7Zm9udC1zaXplOi42MjVyZW07cGFkZGluZzoycHggNXB4fS5jaGF0LW1vZGUtdHJpby1jb21wYWN0IC5jb21wb3Nlci10ZXh0LWxhYmVse21heC13aWR0aDo2NHB4fX0uY29tcG9zZXItcGx1cy1wb3BvdmVye3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MTRweDtib3R0b206Y2FsYyh2YXIoLS1zYWZlLWJvdHRvbSwgMHB4KSArIDU2cHgpO3otaW5kZXg6Mjg7bWluLXdpZHRoOjI0MHB4O21heC13aWR0aDpjYWxjKDEwMCUgLSAyOHB4KTtiYWNrZ3JvdW5kOiNmZmZmZmZmYTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOjE2cHg7Ym94LXNoYWRvdzowIDEycHggMjhweCAjMDAwMDAwMmUsMCAycHggNnB4ICMwMDAwMDAxNDtwYWRkaW5nOjZweDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHg7YW5pbWF0aW9uOnBsdXNQb3BvdmVySW4gLjE4cyBlYXNlLW91dDt0cmFuc2Zvcm0tb3JpZ2luOjE2cHggY2FsYygxMDAlICsgOHB4KX0uY29tcG9zZXItcGx1cy1wb3BvdmVyLmhpZGRlbntkaXNwbGF5Om5vbmV9QGtleWZyYW1lcyBwbHVzUG9wb3ZlckluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg2cHgpIHNjYWxlKC45Nil9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpfX0ucGx1cy1wb3BvdmVyLWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nOjhweCAxMHB4O2JvcmRlcjpub25lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoxMHB4O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC1zaXplOi44MnJlbTtmb250LWZhbWlseTppbmhlcml0O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7dGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEwMCV9LnBsdXMtcG9wb3Zlci1pdGVtOmhvdmVye2JhY2tncm91bmQ6I2M1NjUzZDE0fS5wbHVzLXBvcG92ZXItaXRlbTphY3RpdmV7YmFja2dyb3VuZDojYzU2NTNkMjR9LnBsdXMtcG9wb3Zlci1pY29ue2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmbGV4LXNocmluazowfS5wbHVzLXBvcG92ZXItbGFiZWx7ZmxleDoxO2xpbmUtaGVpZ2h0OjEuMn0ucGx1cy1wb3BvdmVyLXRvZ2dsZS1zdGF0ZXtmb250LXNpemU6LjY4cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3BhZGRpbmc6MnB4IDhweDtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOiMwMDAwMDAwZDtsaW5lLWhlaWdodDoxLjI7bGV0dGVyLXNwYWNpbmc6LjAyZW19LnBsdXMtcG9wb3Zlci1pdGVtLmlzLW9uLC5wbHVzLXBvcG92ZXItaXRlbS5pcy1vbiAucGx1cy1wb3BvdmVyLWljb257Y29sb3I6dmFyKC0tYWNjZW50KX0ucGx1cy1wb3BvdmVyLWl0ZW0uaXMtb24gLnBsdXMtcG9wb3Zlci10b2dnbGUtc3RhdGV7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCl9LnBsdXMtcG9wb3Zlci1zZXB7aGVpZ2h0OjFweDttYXJnaW46NHB4IDZweDtiYWNrZ3JvdW5kOnZhcigtLWJvcmRlci1zdWJ0bGUpfS5wbHVzLXBvcG92ZXItdHJpby13cmFwe2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweH0uY2hhdC1tb2RlLXRyaW8tcG9wb3ZlcntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOnN0cmV0Y2g7Z2FwOjJweH0uY2hhdC1tb2RlLXRyaW8tcG9wb3ZlciAuY29tcG9zZXItdGV4dC1zZXB7ZGlzcGxheTpub25lfS5jaGF0LW1vZGUtdHJpby1wb3BvdmVyIC5jaGF0LW1vZGUtdHJpby1waWxse2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjdweCAxMHB4O2JvcmRlci1yYWRpdXM6MTBweDtmb250LXNpemU6LjgycmVtO21heC13aWR0aDpub25lO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmNoYXQtbW9kZS10cmlvLXBvcG92ZXIgLmNoYXQtbW9kZS10cmlvLXBpbGw6aG92ZXIsLmNoYXQtbW9kZS10cmlvLXBvcG92ZXIgLmNoYXQtbW9kZS10cmlvLXBpbGw6Zm9jdXMtd2l0aGlue2JhY2tncm91bmQ6I2M1NjUzZDE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmNoYXQtbW9kZS10cmlvLXBvcG92ZXIgLmNoYXQtbW9kZS10cmlvLXRhZ3tmb250LXNpemU6LjcycmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7bGV0dGVyLXNwYWNpbmc6MDt0ZXh0LXRyYW5zZm9ybTpub25lO29wYWNpdHk6MTttYXJnaW4tcmlnaHQ6MDtmbGV4LXNocmluazowO3dpZHRoOjM2cHh9LmNoYXQtbW9kZS10cmlvLXBvcG92ZXIgLmNvbXBvc2VyLXRleHQtbGFiZWx7ZmxleDoxO2ZvbnQtc2l6ZTouODJyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt0ZXh0LWFsaWduOnJpZ2h0O21heC13aWR0aDoxMDAlO2ZvbnQtd2VpZ2h0OjUwMH1AbWVkaWEobWF4LXdpZHRoOjcyMHB4KXsuY29tcG9zZXItcGx1cy1wb3BvdmVye21pbi13aWR0aDoyMjBweDtsZWZ0OjEwcHg7Ym90dG9tOmNhbGModmFyKC0tc2FmZS1ib3R0b20sIDBweCkgKyA2MHB4KX19LnByb21wdC1vcHRpbWl6ZS1idG57ZGlzcGxheTpub25lO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OmF1dG8gNHB4IDRweCBhdXRvO3RyYW5zZm9ybTpub25lO3dpZHRoOjI2cHg7aGVpZ2h0OjI2cHg7ei1pbmRleDo0fS5pbnB1dC1jb21wb3Nlci5oYXMtdGV4dCAucHJvbXB0LW9wdGltaXplLWJ0bntkaXNwbGF5OmlubGluZS1mbGV4fS5pbnB1dC1jb21wb3Nlci5oYXMtdGV4dCAucHJvbXB0LW9wdGltaXplLWJ0bjpob3Zlcnt0cmFuc2Zvcm06c2NhbGUoMS4xMil9LmlucHV0LWNvbXBvc2VyLmhhcy10ZXh0IC5wcm9tcHQtb3B0aW1pemUtYnRuOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjkyKX0uaW5wdXQtY29tcG9zZXIuaGFzLXRleHQgLmlucHV0LXRleHRhcmVhe3BhZGRpbmctcmlnaHQ6MzZweH0udm9pY2UtaW5wdXQtbW9kZXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtwYWRkaW5nOjAgNHB4fS52b2ljZS1pbnB1dC1tb2RlLmhpZGRlbntkaXNwbGF5Om5vbmV9LnZvaWNlLXJlY29yZC1idG57ZmxleDoxIDEgYXV0bzttaW4td2lkdGg6MDtoZWlnaHQ6MzBweDtib3JkZXItcmFkaXVzOjk5OXB4O2JvcmRlcjoxcHggZGFzaGVkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtiYWNrZ3JvdW5kOiNmNmYxZTg4MDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NTAwO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Z2FwOjhweDt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3RvdWNoLWFjdGlvbjptYW5pcHVsYXRpb259LnZvaWNlLXJlY29yZC1idG46aG92ZXJ7YmFja2dyb3VuZDojZjZmMWU4ZTY7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tYWNjZW50KX0udm9pY2UtcmVjb3JkLWJ0bjphY3RpdmUsLnZvaWNlLXJlY29yZC1idG4uaXMtcmVjb3JkaW5ne2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkLCByZ2JhKDE5NywgMTAxLCA2MSwgLjE0KSk7Y29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItc3R5bGU6c29saWR9LnZvaWNlLXJlY29yZC1wdWxzZXt3aWR0aDo4cHg7aGVpZ2h0OjhweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjtvcGFjaXR5Oi41NX0udm9pY2UtcmVjb3JkLWJ0bi5pcy1yZWNvcmRpbmcgLnZvaWNlLXJlY29yZC1wdWxzZXtvcGFjaXR5OjE7YW5pbWF0aW9uOnZvaWNlLXB1bHNlIDEuMXMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyB2b2ljZS1wdWxzZXswJSx0b3t0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfTUwJXt0cmFuc2Zvcm06c2NhbGUoMS40NSk7b3BhY2l0eTouNDV9fS52b2ljZS1jYW5jZWwtYnRue3dpZHRoOjI2cHg7aGVpZ2h0OjI2cHg7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZsZXgtc2hyaW5rOjA7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udm9pY2UtY2FuY2VsLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiNiMjRmNDUxYTtjb2xvcjp2YXIoLS1kYW5nZXIpfS5pbnB1dC1jb21wb3Nlci52b2ljZS1tb2RlIC5pbnB1dC10ZXh0YXJlYXt2aXNpYmlsaXR5OmhpZGRlbn0uaW5wdXQtY29tcG9zZXIudm9pY2UtbW9kZSAucHJvbXB0LW9wdGltaXplLWJ0bntkaXNwbGF5Om5vbmV9LmlucHV0LWNvbXBvc2VyLnZvaWNlLW1vZGUgLnZvaWNlLWlucHV0LW1vZGV7ZGlzcGxheTpmbGV4fSN2b2ljZS1idG57ZGlzcGxheTpub25lfS5pbnB1dC1jb21wb3Nlci52b2ljZS1tb2RlICN2b2ljZS1idG57YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQsIHJnYmEoMTk3LCAxMDEsIDYxLCAuMTgpKTtjb2xvcjp2YXIoLS1hY2NlbnQpfS52b2ljZS10cmFuc2NyaXB0LWJ1YmJsZXtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjEycHg7cmlnaHQ6MTJweDtib3R0b206Y2FsYygxMDAlICsgOHB4KTt6LWluZGV4OjQwO3BhZGRpbmc6MTJweCAxNnB4IDEwcHg7Ym9yZGVyLXJhZGl1czoxNnB4O2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LCAjYzU2NTNkKTtjb2xvcjojZmZmO2JveC1zaGFkb3c6MCA2cHggMjRweCAjMDAwMDAwMmU7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6OHB4O3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNmb3JtLW9yaWdpbjpib3R0b20gY2VudGVyO2FuaW1hdGlvbjp2b2ljZS1idWJibGUtaW4gLjE4cyBlYXNlfS52b2ljZS10cmFuc2NyaXB0LWJ1YmJsZS5oaWRkZW57ZGlzcGxheTpub25lfUBrZXlmcmFtZXMgdm9pY2UtYnViYmxlLWluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg4cHgpIHNjYWxlKC45Nil9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpfX0udm9pY2UtdHJhbnNjcmlwdC10ZXh0e2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi45NXJlbTtsaW5lLWhlaWdodDoxLjU7Zm9udC13ZWlnaHQ6NTAwO3dvcmQtYnJlYWs6YnJlYWstd29yZDt3aGl0ZS1zcGFjZTpwcmUtd3JhcDttaW4taGVpZ2h0OjEuNGVtO2NvbG9yOiNmZmZ9LnZvaWNlLXRyYW5zY3JpcHQtYnViYmxlOm5vdCguaGFzLXRleHQpIC52b2ljZS10cmFuc2NyaXB0LXRleHQ6YmVmb3Jle2NvbnRlbnQ6Ilw4YmY3XDVmMDBcNTljYlw4YmY0XDhiZGRcMjAyNiI7b3BhY2l0eTouNn0udm9pY2UtdHJhbnNjcmlwdC1oaW50e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtmb250LXNpemU6LjcycmVtO29wYWNpdHk6Ljg1fS52b2ljZS10cmFuc2NyaXB0LXN0YXR1c3tsZXR0ZXItc3BhY2luZzouMDJlbX0udm9pY2Utd2F2ZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmZsZXgtZW5kO2dhcDoycHg7aGVpZ2h0OjEycHh9LnZvaWNlLXdhdmU+aXt3aWR0aDoyLjVweDtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjthbmltYXRpb246dm9pY2Utd2F2ZS1ib3VuY2UgLjlzIGVhc2UtaW4tb3V0IGluZmluaXRlfS52b2ljZS13YXZlPmk6bnRoLWNoaWxkKDEpe2hlaWdodDo1cHg7YW5pbWF0aW9uLWRlbGF5OjBzfS52b2ljZS13YXZlPmk6bnRoLWNoaWxkKDIpe2hlaWdodDoxMnB4O2FuaW1hdGlvbi1kZWxheTouMTVzfS52b2ljZS13YXZlPmk6bnRoLWNoaWxkKDMpe2hlaWdodDo4cHg7YW5pbWF0aW9uLWRlbGF5Oi4zc30udm9pY2Utd2F2ZT5pOm50aC1jaGlsZCg0KXtoZWlnaHQ6MTFweDthbmltYXRpb24tZGVsYXk6LjQ1c31Aa2V5ZnJhbWVzIHZvaWNlLXdhdmUtYm91bmNlezAlLHRve3RyYW5zZm9ybTpzY2FsZVkoLjQpO29wYWNpdHk6LjZ9NTAle3RyYW5zZm9ybTpzY2FsZVkoMSk7b3BhY2l0eToxfX0udm9pY2UtYnViYmxlLWFycm93e3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMDAlO2xlZnQ6MjhweDt3aWR0aDowO2hlaWdodDowO2JvcmRlci1sZWZ0OjdweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6N3B4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci10b3A6OHB4IHNvbGlkIHZhcigtLWFjY2VudCwgI2M1NjUzZCl9LnZvaWNlLXRyYW5zY3JpcHQtYnViYmxlLmlzLWNhbmNlbGluZ3tiYWNrZ3JvdW5kOnZhcigtLWRhbmdlciwgI2IyNGY0NSl9LnZvaWNlLXRyYW5zY3JpcHQtYnViYmxlLmlzLWNhbmNlbGluZyAudm9pY2UtYnViYmxlLWFycm93e2JvcmRlci10b3AtY29sb3I6dmFyKC0tZGFuZ2VyLCAjYjI0ZjQ1KX1AbWVkaWEobWF4LXdpZHRoOjcyMHB4KXsuYnRuLWNpcmNsZS1hY3Rpb257d2lkdGg6MzBweDtoZWlnaHQ6MzBweDttaW4td2lkdGg6MzBweH0uY29tcG9zZXItbWFpbi1yb3d7cGFkZGluZzozcHggNHB4O21pbi1oZWlnaHQ6NDJweDtnYXA6MnB4fX0uYXR0YWNobWVudC1wcmV2aWV3e2Rpc3BsYXk6ZmxleDtnYXA6NnB4O3BhZGRpbmc6NnB4IDEwcHg7ZmxleC13cmFwOndyYXA7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSl9LmF0dGFjaG1lbnQtcHJldmlldy5oaWRkZW57ZGlzcGxheTpub25lfS5hdHRhY2htZW50LXBpbGx7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtwYWRkaW5nOjNweCA4cHg7YmFja2dyb3VuZDojYzU2NTNkMGY7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE5NywxMDEsNjEsLjE4KTtib3JkZXItcmFkaXVzOjhweDtmb250LXNpemU6LjcycmVtO21heC13aWR0aDoyMDBweDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YW5pbWF0aW9uOnBlcm1pc3Npb24tZmFkZS1pbiAuMnMgZWFzZS1vdXR9LmF0dGFjaG1lbnQtcGlsbCBpbWd7d2lkdGg6MjhweDtoZWlnaHQ6MjhweDtvYmplY3QtZml0OmNvdmVyO2JvcmRlci1yYWRpdXM6NHB4O2ZsZXgtc2hyaW5rOjB9LmF0dGFjaG1lbnQtcGlsbCAuYXR0LWljb257d2lkdGg6MThweDtoZWlnaHQ6MThweDtmbGV4LXNocmluazowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6Ljg1cmVtfS5hdHRhY2htZW50LXBpbGwgLmF0dC1uYW1le292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmbGV4OjE7bWluLXdpZHRoOjB9LmF0dGFjaG1lbnQtcGlsbCAuYXR0LXNpemV7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi42NXJlbTtmbGV4LXNocmluazowfS5hdHRhY2htZW50LXBpbGwgLmF0dC1yZW1vdmV7Y3Vyc29yOnBvaW50ZXI7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi44cmVtO2xpbmUtaGVpZ2h0OjE7cGFkZGluZzowIDJweDtmbGV4LXNocmluazowO2JvcmRlcjpub25lO2JhY2tncm91bmQ6bm9uZX0uYXR0YWNobWVudC1waWxsIC5hdHQtcmVtb3ZlOmhvdmVye2NvbG9yOnZhcigtLWRhbmdlcil9LmlucHV0LWNvbXBvc2VyLmRyYWctb3Zlcntib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KSFpbXBvcnRhbnQ7YmFja2dyb3VuZDojYzU2NTNkMGEhaW1wb3J0YW50O2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWFjY2VudC1tdXRlZCksaW5zZXQgMCAwIDIwcHggI2M1NjUzZDA4fS5mb2xkZXItcGlja2VyLW1vZGFse21heC13aWR0aDo0ODBweH0uZm9sZGVyLXBpY2tlci1tb2RhbCAubW9kYWwtYm9keXtwYWRkaW5nOjE2cHh9LmxvZ2luLWNvbnRhaW5lcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWluLWhlaWdodDoxMDB2aDttaW4taGVpZ2h0OjEwMGR2aDtwYWRkaW5nOjI0cHh9LmxvZ2luLWNhcmR7d2lkdGg6MTAwJTttYXgtd2lkdGg6MzgwcHg7YmFja2dyb3VuZDojZmZmYmY1ZWI7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE1MCwxMTgsODUsLjE2KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1sZyk7b3ZlcmZsb3c6aGlkZGVuO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXNvZnQpfS5sb2dpbi1oZWFkZXJ7cGFkZGluZzoyOHB4IDI0cHggMjJweDt0ZXh0LWFsaWduOmNlbnRlcjtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wLHJnYmEoMjE0LDE0NCwxMDAsLjI2KSx0cmFuc3BhcmVudCA0NSUpLGxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZjZlYmQ5LCNmZmZiZjVkOSl9LmJvb3QtbG9hZGluZ3ttaW4taGVpZ2h0OjEwMHZoO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjI0cHh9LmJvb3QtbG9hZGluZy1jYXJke2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEycHg7cGFkZGluZzoxNnB4IDE4cHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjE2cHg7YmFja2dyb3VuZDp2YXIoLS1zdXJmYWNlLWVsZXZhdGVkKTtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1zbSk7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS5ib290LWxvYWRpbmctc3Bpbm5lcnt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2ZsZXgtc2hyaW5rOjA7Ym9yZGVyOjJweCBzb2xpZCByZ2JhKDE5NywxMDEsNjEsLjE2KTtib3JkZXItdG9wLWNvbG9yOnZhcigtLWFjY2VudCk7Ym9yZGVyLXJhZGl1czo5OTlweDthbmltYXRpb246bG9naW5TcGluIC44cyBsaW5lYXIgaW5maW5pdGV9LmJvb3QtbG9hZGluZy10ZXh0e2ZvbnQtc2l6ZTouOTM3NXJlbTtmb250LXdlaWdodDo1MDB9LmxvZ2luLWxvZ297ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDoxMHB4O21hcmdpbi1ib3R0b206OHB4fS5sb2dpbi1sb2dvLWljb257d2lkdGg6NDJweDtoZWlnaHQ6NDJweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2Q2N2I1MiwjYWI1MjJlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggI2ZmZmZmZjU5O2ZvbnQtc2l6ZToxOHB4O2NvbG9yOiNmZmY7Zm9udC13ZWlnaHQ6NzAwfS5sb2dpbi1sb2dvLXRleHR7Zm9udC1zaXplOjEuNnJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LS4wMmVtfS5sb2dpbi1zdWJ0aXRsZXtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6Ljg3NXJlbX0ubG9naW4tYm9keXtwYWRkaW5nOjIycHggMjRweCAyNHB4fS5sb2dpbi1jYXJkLWxvYWRpbmcgLmxvZ2luLWJvZHl7cGFkZGluZy10b3A6MThweDtwYWRkaW5nLWJvdHRvbToyNHB4fS5sb2dpbi1oaW50e2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7bWFyZ2luLWJvdHRvbToxNnB4O2xpbmUtaGVpZ2h0OjEuNX0ubG9naW4tbXV0ZWR7bWFyZ2luOjRweCAwIDA7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjQ1fS5sb2dpbi1zdGF0dXN7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjE0cHg7cGFkZGluZzoycHggMH0ubG9naW4tc3Bpbm5lcnt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2ZsZXgtc2hyaW5rOjA7bWFyZ2luLXRvcDoycHg7Ym9yZGVyOjJweCBzb2xpZCByZ2JhKDE5NywxMDEsNjEsLjE2KTtib3JkZXItdG9wLWNvbG9yOnZhcigtLWFjY2VudCk7Ym9yZGVyLXJhZGl1czo5OTlweDthbmltYXRpb246bG9naW5TcGluIC44cyBsaW5lYXIgaW5maW5pdGV9LnBhc3N3b3JkLWZpZWxke3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXJ9LnBhc3N3b3JkLWlucHV0e3BhZGRpbmctcmlnaHQ6NzhweDttaW4taGVpZ2h0OjQ2cHh9LnBhc3N3b3JkLXRvZ2dsZXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDo4cHg7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXNpemU6Ljc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtwYWRkaW5nOjZweCA4cHg7Ym9yZGVyLXJhZGl1czo4cHg7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0ucGFzc3dvcmQtdG9nZ2xlOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnBhc3N3b3JkLXRvZ2dsZTpmb2N1cy12aXNpYmxle291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWFjY2VudCk7b3V0bGluZS1vZmZzZXQ6MnB4fUBrZXlmcmFtZXMgbG9naW5TcGluezAle3RyYW5zZm9ybTpyb3RhdGUoMCl9dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX0uYnRuOmRpc2FibGVke2N1cnNvcjpub3QtYWxsb3dlZDtvcGFjaXR5Oi43Mjt0cmFuc2Zvcm06bm9uZTtib3gtc2hhZG93Om5vbmV9LmxvZ2luLWJvZHkgLmZpZWxke21hcmdpbi1ib3R0b206MjBweH0ubG9naW4tYm9keSAuaGludHttYXJnaW4tdG9wOjEwcHh9LmxvZ2luLWJvZHkgLmVycm9yLW1lc3NhZ2V7bWFyZ2luLXRvcDoxMHB4O21hcmdpbi1ib3R0b206MH0ubG9naW4tY2VydC1oaW50e21hcmdpbi10b3A6MTRweDtwYWRkaW5nOjE0cHggMTZweDtib3JkZXItcmFkaXVzOjEycHg7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE5MCwxMjAsNDAsLjMyKTtiYWNrZ3JvdW5kOiNkYzk2M2MxYTt0ZXh0LWFsaWduOmxlZnR9LmxvZ2luLWNlcnQtaGludC10aXRsZXtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTttYXJnaW4tYm90dG9tOjZweH0ubG9naW4tY2VydC1oaW50LWJvZHl7Zm9udC1zaXplOi44MTI1cmVtO2xpbmUtaGVpZ2h0OjEuNjtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7bWFyZ2luOjAgMCAxMnB4fS5sb2dpbi1jZXJ0LWhpbnQgLmJ0bnttYXJnaW4tdG9wOjB9Lm1vZGFsLXN1YnRpdGxle21hcmdpbi10b3A6NHB4O2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGluZS1oZWlnaHQ6MS41fS5zZXNzaW9uLW1vZGFsIC5tb2RhbC1ib2R5e3BhZGRpbmctdG9wOjE2cHg7cGFkZGluZy1ib3R0b206OHB4fS5zZXNzaW9uLW1vZGFsIC5maWVsZDpsYXN0LW9mLXR5cGV7bWFyZ2luLWJvdHRvbTo2cHh9LnNlc3Npb24tbW9kYWwgLm1vZGFsLWZvb3RlcntmbGV4LXNocmluazowO3BhZGRpbmc6MTJweCAyMnB4IDE4cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSl9LnNlc3Npb24tbW9kYWwgLm1vZGFsLWZvb3RlciAuZXJyb3ItbWVzc2FnZXttYXJnaW4tdG9wOjhweDttYXJnaW4tYm90dG9tOjB9Lm1vZGUtY2FyZHN7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDo2cHh9Lm1vZGUtY2FyZHtmbGV4OjEgMSAwO21pbi13aWR0aDowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2dhcDozcHg7cGFkZGluZzoxMHB4IDhweDtib3JkZXI6MS41cHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjIpO2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOiNmZmY5O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTt0ZXh0LWFsaWduOmNlbnRlcjtvdXRsaW5lOm5vbmV9Lm1vZGUtY2FyZDpob3Zlcntib3JkZXItY29sb3I6I2M1NjUzZDU5O2JhY2tncm91bmQ6I2ZmZmN9Lm1vZGUtY2FyZC5hY3RpdmV7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDojZmZmN2VmZjI7Ym94LXNoYWRvdzowIDAgMCAxLjVweCB2YXIoLS1hY2NlbnQtbXV0ZWQpfS5tb2RlLWNhcmQ6Zm9jdXMtdmlzaWJsZXtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMCAwIDEuNXB4IHZhcigtLWFjY2VudC1tdXRlZCl9Lm1vZGUtY2FyZC1sYWJlbHtmb250LXNpemU6LjhyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGluZS1oZWlnaHQ6MS4zfS5tb2RlLWNhcmQtZGVzY3tmb250LXNpemU6LjY4cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xpbmUtaGVpZ2h0OjEuM30ubW9kZS1jYXJkLmFjdGl2ZSAubW9kZS1jYXJkLWxhYmVse2NvbG9yOnZhcigtLWFjY2VudCl9Lm1vZGUtY2FyZC5kaXNhYmxlZHtvcGFjaXR5Oi40NTtjdXJzb3I6bm90LWFsbG93ZWQ7cG9pbnRlci1ldmVudHM6bm9uZX0ubW9kZS1jYXJkLmRpc2FibGVkOmhvdmVye2JvcmRlci1jb2xvcjojN2Q1YjM5MzM7YmFja2dyb3VuZDojZmZmOX0ubW9kZS1jYXJkLmRpc2FibGVkIC5tb2RlLWNhcmQtbGFiZWwsLm1vZGUtY2FyZC5kaXNhYmxlZCAubW9kZS1jYXJkLWRlc2N7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9Lm1vZGUtY2FyZC5hY3RpdmUuZGlzYWJsZWR7Ym94LXNoYWRvdzpub25lfS5wYXNzd29yZC1pbnB1dFtkYXRhLWVycm9yPXRydWVdLC5wYXNzd29yZC1pbnB1dFthcmlhLWludmFsaWQ9dHJ1ZV17Ym9yZGVyLWNvbG9yOnZhcigtLWRhbmdlcik7Ym94LXNoYWRvdzowIDAgMCAzcHggdmFyKC0tZGFuZ2VyLW11dGVkKX0ucGFzc3dvcmQtaW5wdXRbZGF0YS1lcnJvcj10cnVlXSsucGFzc3dvcmQtdG9nZ2xlLC5wYXNzd29yZC1pbnB1dFthcmlhLWludmFsaWQ9dHJ1ZV0rLnBhc3N3b3JkLXRvZ2dsZXtjb2xvcjp2YXIoLS1kYW5nZXIpfS5wYXNzd29yZC1pbnB1dDpmb2N1cysucGFzc3dvcmQtdG9nZ2xle2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnBhc3N3b3JkLXRvZ2dsZTphY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoLjk4KX0ucGFzc3dvcmQtaW5wdXQ6Oi1tcy1yZXZlYWwsLnBhc3N3b3JkLWlucHV0OjotbXMtY2xlYXJ7ZGlzcGxheTpub25lfS5wYXNzd29yZC1pbnB1dDo6LXdlYmtpdC1jcmVkZW50aWFscy1hdXRvLWZpbGwtYnV0dG9uLC5wYXNzd29yZC1pbnB1dDo6LXdlYmtpdC1jb250YWN0cy1hdXRvLWZpbGwtYnV0dG9ue3Zpc2liaWxpdHk6aGlkZGVuO2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnQ7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDowfS5wYXNzd29yZC1pbnB1dFt0eXBlPXRleHRde2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyl9LmZpZWxke21hcmdpbi1ib3R0b206MThweH0uZmllbGQtbGFiZWx7ZGlzcGxheTpibG9jaztmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTttYXJnaW4tYm90dG9tOjhweH0uZmllbGQtaW5wdXR7d2lkdGg6MTAwJTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODc1cmVtO2JhY2tncm91bmQ6I2ZmZmZmZmJmO2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjIyKTtib3JkZXItcmFkaXVzOjEycHg7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtwYWRkaW5nOjEycHggMTRweDtvdXRsaW5lOm5vbmU7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZmFzdCksYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO21pbi1oZWlnaHQ6NDRweH0uZmllbGQtaW5wdXQ6Zm9jdXN7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzowIDAgMCAzcHggdmFyKC0tYWNjZW50LW11dGVkKSwwIDAgMjBweCAjYzU2NTNkMTQ7YmFja2dyb3VuZDojZmZmZmZmZTZ9LmZpZWxkLWlucHV0OjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ubW9kYWwtYmFja2Ryb3B7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDt6LWluZGV4OjUwMDtiYWNrZ3JvdW5kOiMxNDBlMDg1NztiYWNrZHJvcC1maWx0ZXI6Ymx1cigxOHB4KSBzYXR1cmF0ZSgxNDAlKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE4cHgpIHNhdHVyYXRlKDE0MCUpO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nLXRvcDptYXgoMzJweCx2YXIoLS13YW5kLXNhZmUtdG9wKSk7cGFkZGluZy1ib3R0b206bWF4KDMycHgsdmFyKC0td2FuZC1zYWZlLWJvdHRvbSkpO3BhZGRpbmctbGVmdDptYXgoMzJweCx2YXIoLS13YW5kLXNhZmUtbGVmdCkpO3BhZGRpbmctcmlnaHQ6bWF4KDMycHgsdmFyKC0td2FuZC1zYWZlLXJpZ2h0KSk7YW5pbWF0aW9uOmxpcXVpZEJhY2tkcm9wSW4gLjI4cyB2YXIoLS1lYXNlLW91dC1leHBvLCBjdWJpYy1iZXppZXIoLjE2LCAxLCAuMywgMSkpIGJvdGh9Lm1vZGFsLWJhY2tkcm9wLmNsb3Npbmd7YW5pbWF0aW9uOmxpcXVpZEJhY2tkcm9wT3V0IC4xOHMgdmFyKC0tZWFzZS1pbi1vdXQtc21vb3RoLCBjdWJpYy1iZXppZXIoLjQsIDAsIC4yLCAxKSkgYm90aDtwb2ludGVyLWV2ZW50czpub25lfUBrZXlmcmFtZXMgbGlxdWlkQmFja2Ryb3BJbnswJXtvcGFjaXR5OjB9dG97b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIGxpcXVpZEJhY2tkcm9wT3V0ezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjB9fS5tb2RhbHtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO21heC13aWR0aDo1NjBweDttYXgtaGVpZ2h0Ojg4dmg7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtiYWNrZ3JvdW5kOiNmZmZjZjdiZDtib3JkZXI6LjVweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC42KTtib3JkZXItcmFkaXVzOjI2cHg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tkcm9wLWZpbHRlcjpibHVyKDQwcHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoNDBweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzowIDMycHggODBweCAtMTZweCAjMTQwZTA4NTcsMCA4cHggMjRweCAtOHB4ICMxNDBlMDgyZSwwIDAgMCAuNXB4ICM3ZDViMzkxNCxpbnNldCAwIDFweCAjZmZmZmZmYjM7YW5pbWF0aW9uOmxpcXVpZE1vZGFsSW4gLjMycyBjdWJpYy1iZXppZXIoLjM0LDEuNCwuNjQsMSkgYm90aH0ubW9kYWwtYmFja2Ryb3AuY2xvc2luZyAubW9kYWx7YW5pbWF0aW9uOmxpcXVpZE1vZGFsT3V0IC4xOHMgdmFyKC0tZWFzZS1pbi1vdXQtc21vb3RoLCBjdWJpYy1iZXppZXIoLjQsIDAsIC4yLCAxKSkgYm90aH1Aa2V5ZnJhbWVzIGxpcXVpZE1vZGFsSW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZSguOTQpIHRyYW5zbGF0ZVkoMTJweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGVZKDApfX1Aa2V5ZnJhbWVzIGxpcXVpZE1vZGFsT3V0ezAle29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgwKX10b3tvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC45NykgdHJhbnNsYXRlWSg0cHgpfX1AbWVkaWEocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5tb2RhbC1iYWNrZHJvcCwubW9kYWwtYmFja2Ryb3AuY2xvc2luZywubW9kYWwsLm1vZGFsLWJhY2tkcm9wLmNsb3NpbmcgLm1vZGFse2FuaW1hdGlvbjpub25lIWltcG9ydGFudH19QHN1cHBvcnRzIG5vdCAoKGJhY2tkcm9wLWZpbHRlcjogYmx1cigxcHgpKSBvciAoLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMXB4KSkpey5tb2RhbC1iYWNrZHJvcHtiYWNrZ3JvdW5kOiMxNDBlMDg5OX0ubW9kYWx7YmFja2dyb3VuZDojZmZmYWYyO2JvcmRlci1jb2xvcjojN2Q1YjM5MmV9fUBtZWRpYShwcmVmZXJzLWNvbG9yLXNjaGVtZTpkYXJrKXsubW9kYWwtYmFja2Ryb3B7YmFja2dyb3VuZDojMDgwNTAyODB9QHN1cHBvcnRzIG5vdCAoKGJhY2tkcm9wLWZpbHRlcjogYmx1cigxcHgpKSBvciAoLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMXB4KSkpey5tb2RhbC1iYWNrZHJvcHtiYWNrZ3JvdW5kOiMwODA1MDJjN319fS5zZXNzaW9uLW1vZGFsIC5tb2RhbC1oZWFkZXIsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1tb2RhbC1oZWFkZXJ7cGFkZGluZzoyNHB4IDI4cHggMThweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMDgpO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjE2cHg7bWluLWhlaWdodDowfS5zZXNzaW9uLW1vZGFsIC5tb2RhbC10aXRsZSwuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLW1vZGFsLXRpdGxlLWdyb3VwIC5tb2RhbC10aXRsZXtmb250LXNpemU6MS4zMTI1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzotLjAyMmVtO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGluZS1oZWlnaHQ6MS4yfS5zZXNzaW9uLW1vZGFsIC5tb2RhbC1zdWJ0aXRsZSwuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLW1vZGFsLXN1YnRpdGxle21hcmdpbi10b3A6NXB4O2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo0MDA7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGluZS1oZWlnaHQ6MS41O21heC13aWR0aDo0NGNofS5tb2RhbC1jbG9zZS1idG4sLnNlc3Npb24tbW9kYWwgLm1vZGFsLWhlYWRlcj4uYnRuLWljb24uYnRuLWdob3N0LC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtaGVhZGVyPi5idG4taWNvbi5idG4tZ2hvc3R7d2lkdGg6MzJweDtoZWlnaHQ6MzJweDttaW4td2lkdGg6MzJweDttaW4taGVpZ2h0OjMycHg7cGFkZGluZzowO2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6IzdkNWIzOTEyO2JvcmRlcjpub25lO2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO2ZsZXgtc2hyaW5rOjA7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE4cyBlYXNlLGNvbG9yIC4xOHMgZWFzZSx0cmFuc2Zvcm0gLjI4cyBjdWJpYy1iZXppZXIoLjM0LDEuNCwuNjQsMSksYm94LXNoYWRvdyAuMThzIGVhc2V9Lm1vZGFsLWNsb3NlLWJ0biBzdmd7ZGlzcGxheTpibG9jaztwb2ludGVyLWV2ZW50czpub25lfS5tb2RhbC1jbG9zZS1idG46aG92ZXIsLnNlc3Npb24tbW9kYWwgLm1vZGFsLWhlYWRlcj4uYnRuLWljb24uYnRuLWdob3N0OmhvdmVyLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtaGVhZGVyPi5idG4taWNvbi5idG4tZ2hvc3Q6aG92ZXJ7YmFja2dyb3VuZDojYjI0ZjQ1MWY7Y29sb3I6dmFyKC0tZGFuZ2VyKTt0cmFuc2Zvcm06cm90YXRlKDkwZGVnKTtib3gtc2hhZG93OjAgMnB4IDhweCAjYjI0ZjQ1MmV9Lm1vZGFsLWNsb3NlLWJ0bjphY3RpdmUsLnNlc3Npb24tbW9kYWwgLm1vZGFsLWhlYWRlcj4uYnRuLWljb24uYnRuLWdob3N0OmFjdGl2ZSwuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLW1vZGFsLWhlYWRlcj4uYnRuLWljb24uYnRuLWdob3N0OmFjdGl2ZXtiYWNrZ3JvdW5kOiNiMjRmNDUzMzt0cmFuc2Zvcm06cm90YXRlKDkwZGVnKSBzY2FsZSguOTIpO3RyYW5zaXRpb24tZHVyYXRpb246LjA2c30ubW9kYWwtY2xvc2UtYnRuOmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgdmFyKC0tYWNjZW50KTtvdXRsaW5lLW9mZnNldDozcHh9LnNlc3Npb24tbW9kYWwgLm1vZGFsLWJvZHksLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1tb2RhbC1ib2R5e3BhZGRpbmc6MjBweCAyOHB4fS5zZXNzaW9uLW1vZGFsIC5tb2RhbC1mb290ZXJ7cGFkZGluZzoxNnB4IDI4cHggMjJweDtib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMDgpfS5zZXNzaW9uLW1vZGFsIC5maWVsZC1pbnB1dCwuc2V0dGluZ3MtbW9kYWwgLmZpZWxkLWlucHV0LC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtY2FyZCAuZmllbGQtaW5wdXQsLnNlc3Npb24tbW9kYWwgc2VsZWN0LmZpZWxkLWlucHV0LC5zZXR0aW5ncy1tb2RhbCBzZWxlY3QuZmllbGQtaW5wdXR7YmFja2dyb3VuZDojZmZmZmZmYzc7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMTQpO2JvcmRlci1yYWRpdXM6MTJweDtwYWRkaW5nOjExcHggMTRweDtib3gtc2hhZG93Omluc2V0IDAgMXB4IDEuNXB4ICM3ZDViMzkwYTt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMTVzIGVhc2UsYm94LXNoYWRvdyAuMTVzIGVhc2UsYmFja2dyb3VuZCAuMTVzIGVhc2U7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2Vzc2lvbi1tb2RhbCAuZmllbGQtaW5wdXQ6aG92ZXIsLnNldHRpbmdzLW1vZGFsIC5maWVsZC1pbnB1dDpob3Zlcntib3JkZXItY29sb3I6IzdkNWIzOTNkO2JhY2tncm91bmQ6I2ZmZmZmZmVifS5zZXNzaW9uLW1vZGFsIC5maWVsZC1pbnB1dDpmb2N1cywuc2V0dGluZ3MtbW9kYWwgLmZpZWxkLWlucHV0OmZvY3VzLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtY2FyZCAuZmllbGQtaW5wdXQ6Zm9jdXMsLnNlc3Npb24tbW9kYWwgc2VsZWN0LmZpZWxkLWlucHV0OmZvY3VzLC5zZXR0aW5ncy1tb2RhbCBzZWxlY3QuZmllbGQtaW5wdXQ6Zm9jdXN7YmFja2dyb3VuZDojZmZmO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMS41cHggIzdkNWIzOTBhLDAgMCAwIDNweCB2YXIoLS1hY2NlbnQtbXV0ZWQpfS5zZXNzaW9uLW1vZGFsIC5tb2RlLWNhcmRze2dhcDo4cHh9LnNlc3Npb24tbW9kYWwgLm1vZGUtY2FyZHtwYWRkaW5nOjEycHggMTBweDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xKTtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZDojZmZmOTtib3gtc2hhZG93OjAgMXB4IDJweCAjN2Q1YjM5MDg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxib3JkZXItY29sb3IgLjE2cyBlYXNlLGJveC1zaGFkb3cgLjE2cyBlYXNlLHRyYW5zZm9ybSAuMTZzIGVhc2U7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2Vzc2lvbi1tb2RhbCAubW9kZS1jYXJkOmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZmViO2JvcmRlci1jb2xvcjojN2Q1YjM5MzM7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzowIDRweCAxMnB4ICM3ZDViMzkxNH0uc2Vzc2lvbi1tb2RhbCAubW9kZS1jYXJkLmFjdGl2ZXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmNmN2YyLCNmZmYwZTBkMSk7Ym9yZGVyOi41cHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuOCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCkgc2F0dXJhdGUoMTgwJSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KSBzYXR1cmF0ZSgxODAlKTtib3gtc2hhZG93OjAgMCAwIDFweCAjYzU2NTNkNTIsMCAwIDAgNHB4ICNjNTY1M2QyNCwwIDhweCAyMnB4IC00cHggI2M1NjUzZDRkLGluc2V0IDAgMXB4ICNmZmZmZmZmMixpbnNldCAwIC0xcHggI2M1NjUzZDE0O3RyYW5zZm9ybTpub25lfS5zZXNzaW9uLW1vZGFsIC5tb2RlLWNhcmQuYWN0aXZlIC5tb2RlLWNhcmQtbGFiZWx7Y29sb3I6dmFyKC0tYWNjZW50KX0uc2Vzc2lvbi1tb2RhbCAudG9vbC1jYXJke2JhY2tncm91bmQ6I2ZmZmZmZmIzO2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEyKTtib3JkZXItcmFkaXVzOjE0cHg7cGFkZGluZzoxNHB4IDE2cHg7Ym94LXNoYWRvdzowIDFweCAycHggIzdkNWIzOTA4O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMThzIGVhc2UsYm9yZGVyLWNvbG9yIC4xOHMgZWFzZSxib3gtc2hhZG93IC4xOHMgZWFzZSx0cmFuc2Zvcm0gLjE4cyBlYXNlO2JhY2tkcm9wLWZpbHRlcjpub25lOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOm5vbmV9LnNlc3Npb24tbW9kYWwgLnRvb2wtY2FyZDpob3ZlcntiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLWNvbG9yOiM3ZDViMzkzODt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMnB4KTtib3gtc2hhZG93OjAgOHB4IDIwcHggIzdkNWIzOTFhfS5zZXNzaW9uLW1vZGFsIC50b29sLWNhcmQuYWN0aXZle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmY2Y3ZjIsI2ZmZjBlMGQxKTtib3JkZXI6LjVweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC44KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KSBzYXR1cmF0ZSgxODAlKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpIHNhdHVyYXRlKDE4MCUpO2JveC1zaGFkb3c6MCAwIDAgMXB4ICNjNTY1M2Q0ZCwwIDAgMCA0cHggI2M1NjUzZDI0LDAgMTBweCAyOHB4IC02cHggI2M1NjUzZDRkLGluc2V0IDAgMXB4ICNmZmZmZmZmMixpbnNldCAwIC0xcHggI2M1NjUzZDE0O3RyYW5zZm9ybTpub25lfS5zZXNzaW9uLW1vZGFsIC5yZWNlbnQtcGF0aC1idWJibGV7YmFja2dyb3VuZDojZmZmZmZmOGM7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMTIpO2JveC1zaGFkb3c6MCAxcHggMnB4ICM3ZDViMzkwODt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE2cyBlYXNlLGJvcmRlci1jb2xvciAuMTZzIGVhc2UsY29sb3IgLjE2cyBlYXNlLHRyYW5zZm9ybSAuMTZzIGVhc2V9LnNlc3Npb24tbW9kYWwgLnJlY2VudC1wYXRoLWJ1YmJsZTpob3ZlcntiYWNrZ3JvdW5kOiNmZmY3ZWY7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tYWNjZW50KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KX0uc2Vzc2lvbi1tb2RhbCAuc2Vzc2lvbi1pbmxpbmUtdG9nZ2xle3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7cGFkZGluZzo2cHggOHB4IDZweCAxMnB4O2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDojN2Q1YjM5MGQ7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMDgpO2N1cnNvcjpwb2ludGVyO3VzZXItc2VsZWN0Om5vbmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xOHMgZWFzZSxib3JkZXItY29sb3IgLjE4cyBlYXNlLGJveC1zaGFkb3cgLjE4cyBlYXNlLGNvbG9yIC4xOHMgZWFzZTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZTpob3ZlcntiYWNrZ3JvdW5kOiM3ZDViMzkxNztib3JkZXItY29sb3I6IzdkNWIzOTI5fS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGU6aGFzKC5zd2l0Y2gtdG9nZ2xlOmNoZWNrZWQpe2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmN2VmLCNmZmVlZDgpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2NvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzowIDAgMCAzcHggdmFyKC0tYWNjZW50LW11dGVkKSwwIDRweCAxMnB4ICNjNTY1M2QxZn0uc2Vzc2lvbi1tb2RhbCAuc2Vzc2lvbi1pbmxpbmUtdG9nZ2xlLWljb257ZmxleC1zaHJpbms6MDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt0cmFuc2l0aW9uOmNvbG9yIC4xOHMgZWFzZSx0cmFuc2Zvcm0gLjI4cyBjdWJpYy1iZXppZXIoLjM0LDEuNCwuNjQsMSl9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZTpoYXMoLnN3aXRjaC10b2dnbGU6Y2hlY2tlZCkgLnNlc3Npb24taW5saW5lLXRvZ2dsZS1pY29ue2NvbG9yOnZhcigtLWFjY2VudCk7dHJhbnNmb3JtOnJvdGF0ZSg4ZGVnKX0uc2Vzc2lvbi1tb2RhbCAuc2Vzc2lvbi1pbmxpbmUtdG9nZ2xlLWxhYmVse2ZvbnQtc2l6ZTouNzVyZW07Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi4wMDVlbTtjb2xvcjppbmhlcml0O3RyYW5zaXRpb246Y29sb3IgLjE4cyBlYXNlfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGUgLnN3aXRjaC10b2dnbGV7cG9zaXRpb246YWJzb2x1dGU7b3BhY2l0eTowO3dpZHRoOjA7aGVpZ2h0OjA7cG9pbnRlci1ldmVudHM6bm9uZX0uc2Vzc2lvbi1tb2RhbCAuc2Vzc2lvbi1pbmxpbmUtdG9nZ2xlIC5zd2l0Y2gtc2xpZGVye3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjMycHg7aGVpZ2h0OjIwcHg7bWluLXdpZHRoOjMycHg7Ym9yZGVyLXJhZGl1czoxMHB4O2JhY2tncm91bmQ6IzdkNWIzOTM4O2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4ICM3ZDViMzkyZTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjIycyBlYXNlLGJveC1zaGFkb3cgLjIycyBlYXNlfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGUgLnN3aXRjaC1zbGlkZXI6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MnB4O2xlZnQ6MnB4O3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDojZmZmO2JveC1zaGFkb3c6MCAxLjVweCAzcHggIzE0MGUwODM4LDAgMCAwIC41cHggIzdkNWIzOTBmO3RyYW5zaXRpb246dHJhbnNmb3JtIC4yNHMgY3ViaWMtYmV6aWVyKC4zNCwxLjQsLjY0LDEpfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGUgLnN3aXRjaC10b2dnbGU6Y2hlY2tlZCsuc3dpdGNoLXNsaWRlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggIzAwMDAwMDFhfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGUgLnN3aXRjaC10b2dnbGU6Y2hlY2tlZCsuc3dpdGNoLXNsaWRlcjphZnRlcnt0cmFuc2Zvcm06dHJhbnNsYXRlKDEycHgpfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGUgLnN3aXRjaC10b2dnbGU6Zm9jdXMtdmlzaWJsZSsuc3dpdGNoLXNsaWRlcntvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1hY2NlbnQpO291dGxpbmUtb2Zmc2V0OjJweH0uc2Vzc2lvbi1tb2RhbCAuc2Vzc2lvbi1raW5kLWhpbnQtcm93e2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTRweH0uc2Vzc2lvbi1tb2RhbCAuc3VnZ2VzdGlvbnN7YmFja2dyb3VuZDojZmZmY2Y3ZjU7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMTQpO2JvcmRlci1yYWRpdXM6MTJweDtib3gtc2hhZG93OjAgMCAwIC41cHggIzdkNWIzOTBkLDAgMTJweCAyOHB4IC04cHggIzE0MGUwODJlO2JhY2tkcm9wLWZpbHRlcjpibHVyKDIwcHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMjBweCkgc2F0dXJhdGUoMTgwJSk7b3ZlcmZsb3c6aGlkZGVufS5zZXNzaW9uLW1vZGFsIC5zdWdnZXN0aW9uLWl0ZW06aG92ZXJ7YmFja2dyb3VuZDojZThjNWFlNTJ9LnNlc3Npb24tbW9kYWwgLmVycm9yLW1lc3NhZ2UsLnNldHRpbmdzLW1vZGFsIC5lcnJvci1tZXNzYWdle2JhY2tncm91bmQ6I2IyNGY0NTFhO2JvcmRlcjoxcHggc29saWQgcmdiYSgxNzgsNzksNjksLjIpO2NvbG9yOnZhcigtLWRhbmdlcik7Ym9yZGVyLXJhZGl1czoxMHB4O3BhZGRpbmc6MTBweCAxMnB4O2JhY2tkcm9wLWZpbHRlcjpub25lOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOm5vbmV9LnNlc3Npb24tbW9kYWwgLmZpZWxkLWxhYmVsLC5zZXR0aW5ncy1tb2RhbCAuZmllbGQtbGFiZWx7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtd2VpZ2h0OjYwMDtmb250LXNpemU6LjgxMjVyZW07bWFyZ2luLWJvdHRvbTo4cHh9LnNlc3Npb24tbW9kYWwgLm1vZGFsLWZvb3RlciAuYnRuLXByaW1hcnksLnNldHRpbmdzLW1vZGFsIC5idG4tcHJpbWFyeXtib3gtc2hhZG93OjAgNnB4IDE2cHggLTRweCAjYzU2NTNkNjYsMCAycHggNnB4IC0ycHggI2M1NjUzZDRkLGluc2V0IDAgMXB4ICNmZmYzO2JvcmRlci1yYWRpdXM6MTJweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtZm9vdGVyIC5idG4tcHJpbWFyeTpob3Zlciwuc2V0dGluZ3MtbW9kYWwgLmJ0bi1wcmltYXJ5OmhvdmVye2JveC1zaGFkb3c6MCAxMHB4IDI0cHggLTRweCAjYzU2NTNkNzUsMCA0cHggMTBweCAtMnB4ICNjNTY1M2Q1NyxpbnNldCAwIDFweCAjZmZmZmZmNDB9LnNlc3Npb24tbW9kYWwgLmJ0bi1zZWNvbmRhcnksLnNldHRpbmdzLW1vZGFsIC5idG4tc2Vjb25kYXJ5e2JhY2tncm91bmQ6I2ZmZmZmZmM3O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjE0KTtib3gtc2hhZG93OjAgMXB4IDJweCAjN2Q1YjM5MGE7Ym9yZGVyLXJhZGl1czoxMnB4fS5zZXNzaW9uLW1vZGFsIC5idG4tc2Vjb25kYXJ5OmhvdmVyLC5zZXR0aW5ncy1tb2RhbCAuYnRuLXNlY29uZGFyeTpob3ZlcntiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLWNvbG9yOiM3ZDViMzkzZDtib3gtc2hhZG93OjAgNHB4IDEycHggIzdkNWIzOTE0fS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3Mtc2lkZWJhcntib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCk7cGFkZGluZy1yaWdodDoxMnB4fS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3Mtc2lkZWJhci10aXRsZXtmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NjAwO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtsZXR0ZXItc3BhY2luZzouMDhlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXRhYnN7Z2FwOjJweH0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXRhYntwYWRkaW5nOjExcHggMTRweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3gtc2hhZG93Om5vbmU7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTRzIGVhc2UsY29sb3IgLjE0cyBlYXNlLHRyYW5zZm9ybSAuMTRzIGVhc2U7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXRhYjpiZWZvcmV7ZGlzcGxheTpub25lfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdGFiOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTBmO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7dHJhbnNmb3JtOm5vbmU7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdGFiLmFjdGl2ZXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmNmN2YyLCNmZmY0ZThjNyk7Y29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNHB4KSBzYXR1cmF0ZSgxODAlKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE0cHgpIHNhdHVyYXRlKDE4MCUpO2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICNjNTY1M2Q0MCxpbnNldCAwIDFweCAjZmZmZmZmZTYsaW5zZXQgMCAtMXB4ICNjNTY1M2QxNCwwIDRweCAxNHB4IC00cHggI2M1NjUzZDM4LDAgMXB4IDNweCAjN2Q1YjM5MGZ9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy10YWIuYWN0aXZlIC5zZXR0aW5ncy10YWItbWV0YXtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy10YWItbWFpbntmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXRhYi1tZXRhe2ZvbnQtc2l6ZTouNzEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXBhbmVsLWhlYWRlcnttYXJnaW46MCAwIDE2cHg7cGFkZGluZy1ib3R0b206MTRweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMDgpfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtcGFuZWwtdGl0bGV7Zm9udC1zaXplOjEuMTg3NXJlbTtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LS4wMmVtfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtcGFuZWwtZGVzY3tmb250LXNpemU6LjgxMjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1jYXJkLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdXBkYXRlLXNlY3Rpb24sLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1ub3RpZmljYXRpb24tc2VjdGlvbiwuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLWFib3V0LWluZm8sLnNldHRpbmdzLW1vZGFsIC5wcmVzZXQtaXRlbXtiYWNrZ3JvdW5kOiNmZmZmZmZhNjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xKTtib3JkZXItcmFkaXVzOjE2cHg7Ym94LXNoYWRvdzowIDFweCAycHggIzdkNWIzOTA4O2JhY2tkcm9wLWZpbHRlcjpub25lOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOm5vbmV9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1hYm91dC1yb3d7Ym9yZGVyLWJvdHRvbS1jb2xvcjojN2Q1YjM5MTR9LnNldHRpbmdzLW1vZGFsIC5zd2l0Y2gtY2FyZC1saXN0e2dhcDo4cHh9LnNldHRpbmdzLW1vZGFsIC5zd2l0Y2gtY2FyZHtiYWNrZ3JvdW5kOiNmZmY5O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEpO2JvcmRlci1yYWRpdXM6MTRweDtib3gtc2hhZG93OjAgMXB4IDJweCAjN2Q1YjM5MDg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxib3JkZXItY29sb3IgLjE2cyBlYXNlLHRyYW5zZm9ybSAuMTZzIGVhc2UsYm94LXNoYWRvdyAuMTZzIGVhc2U7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2V0dGluZ3MtbW9kYWwgLnN3aXRjaC1jYXJkOmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZmQ5O2JvcmRlci1jb2xvcjojN2Q1YjM5MmU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzowIDRweCAxMnB4ICM3ZDViMzkwZn0uc2V0dGluZ3MtbW9kYWwgLnN3aXRjaC1jYXJkOmhhcyguc3dpdGNoLXRvZ2dsZTpjaGVja2VkKXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZjdlZiwjZmZmMWRlKTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMCAwIDFweCB2YXIoLS1hY2NlbnQtbXV0ZWQpLDAgNHB4IDEycHggI2M1NjUzZDFhfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdG9nZ2xlLXJvdywuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXJhbmdlLXJvd3tiYWNrZ3JvdW5kOiNmZmZmZmY4Yztib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCk7Ym9yZGVyLXJhZGl1czoxMnB4O2JveC1zaGFkb3c6MCAxcHggMXB4ICM3ZDViMzkwNTtiYWNrZHJvcC1maWx0ZXI6bm9uZTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpub25lfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtY2FyZC1pY29uLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3Mtc2VjdGlvbi1pY29ue2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjYzU2NTNkMjksI2M1NjUzZDBmKTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTk3LDEwMSw2MSwuMTgpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggI2ZmZjk7Y29sb3I6dmFyKC0tYWNjZW50KX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLWFwcC1pY29uLW9wdGlvbntiYWNrZ3JvdW5kOiNmZmZmZmZhNjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xKTtib3JkZXItcmFkaXVzOjE0cHg7Ym94LXNoYWRvdzowIDFweCAycHggIzdkNWIzOTA4O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTZzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNnMgZWFzZSxib3gtc2hhZG93IC4xNnMgZWFzZSx0cmFuc2Zvcm0gLjE2cyBlYXNlO2JhY2tkcm9wLWZpbHRlcjpub25lOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOm5vbmV9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1hcHAtaWNvbi1vcHRpb246aG92ZXJ7YmFja2dyb3VuZDojZmZmO2JvcmRlci1jb2xvcjojN2Q1YjM5MzM7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzowIDRweCAxMnB4ICM3ZDViMzkxNH0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLWFwcC1pY29uLW9wdGlvbi5zZWxlY3RlZCwuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLWFwcC1pY29uLW9wdGlvblthcmlhLXByZXNzZWQ9dHJ1ZV17YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmY3ZWYsI2ZmZjFkZSk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzowIDAgMCAzcHggdmFyKC0tYWNjZW50LW11dGVkKSwwIDRweCAxMnB4ICNjNTY1M2QxZn0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLWNvbm5lY3QtdXJsLWJveHtiYWNrZ3JvdW5kOiM3ZDViMzkwZDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xMik7Ym9yZGVyLXJhZGl1czoxMnB4fS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtYWN0aW9ucy1zdGlja3l7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjcwMCwjZmZmY2Y3ZDkgMjhweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoOHB4KTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDhweCl9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1zZWN0aW9uLXRpdGxle2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LjAwNWVtO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9QG1lZGlhKG1heC13aWR0aDo2NDBweCl7LnNlc3Npb24tbW9kYWwgLm1vZGFsLWhlYWRlciwuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLW1vZGFsLWhlYWRlcntwYWRkaW5nOjE2cHggMThweCAxNHB4fS5zZXNzaW9uLW1vZGFsIC5tb2RhbC1ib2R5LC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtYm9keXtwYWRkaW5nOjE0cHggMThweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtZm9vdGVye3BhZGRpbmc6MTJweCAxOHB4IDE4cHh9LnNlc3Npb24tbW9kYWwgLm1vZGFsLXRpdGxlLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtdGl0bGUtZ3JvdXAgLm1vZGFsLXRpdGxle2ZvbnQtc2l6ZToxLjEyNXJlbX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXBhbmVsLXRpdGxle2ZvbnQtc2l6ZToxLjA2MjVyZW19fS5zaWRlYmFye2JhY2tncm91bmQ6I2ZmZmNmN2I4O2JvcmRlci1yaWdodDouNXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjU1KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigzNnB4KSBzYXR1cmF0ZSgxODAlKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDM2cHgpIHNhdHVyYXRlKDE4MCUpO2JveC1zaGFkb3c6MCAwIDAgLjVweCAjN2Q1YjM5MGYsNHB4IDAgMzJweCAtOHB4ICMxNDBlMDgyZX0uc2lkZWJhci5vcGVue2JveC1zaGFkb3c6MCAwIDAgLjVweCAjN2Q1YjM5MGYsMTJweCAwIDQ4cHggLTEycHggIzE0MGUwODQ3fS5zaWRlYmFyLnBpbm5lZHtib3gtc2hhZG93OjAgMCAwIC41cHggIzdkNWIzOTBmLDJweCAwIDEycHggLThweCAjMTQwZTA4MWZ9LmRyYXdlci1iYWNrZHJvcHtiYWNrZ3JvdW5kOiMxNDBlMDg1MjtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxMnB4KTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDEycHgpfS5kcmF3ZXItYmFja2Ryb3Aub3BlbntiYWNrZHJvcC1maWx0ZXI6Ymx1cigxOHB4KSBzYXR1cmF0ZSgxNDAlKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE4cHgpIHNhdHVyYXRlKDE0MCUpfS5zaWRlYmFyLWhlYWRlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wNik7cGFkZGluZzoxNHB4IDE2cHh9LnNpZGViYXItdGl0bGV7Zm9udC1zaXplOi45Mzc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzotLjAxMmVtO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnNlc3Npb24tY291bnR7YmFja2dyb3VuZDojN2Q1YjM5MTQ7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO3BhZGRpbmc6MnB4IDlweDtib3JkZXItcmFkaXVzOjk5OXB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo3MDA7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zO2xpbmUtaGVpZ2h0OjEuNX0uc2lkZWJhci1oZWFkZXItYWN0aW9ucyAuYnRuLWdob3N0LmJ0bi1zbSwuZHJhd2VyLWNsb3NlLWJ0bnt3aWR0aDozMnB4O2hlaWdodDozMnB4O21pbi13aWR0aDozMnB4O21pbi1oZWlnaHQ6MzJweDtwYWRkaW5nOjA7Ym9yZGVyLXJhZGl1czo1MCU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO2JvcmRlcjpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTZzIGVhc2UsY29sb3IgLjE2cyBlYXNlLHRyYW5zZm9ybSAuMjJzIGN1YmljLWJlemllciguMzQsMS40LC42NCwxKX0uc2lkZWJhci1oZWFkZXItYWN0aW9ucyAuYnRuLWdob3N0LmJ0bi1zbTpob3ZlcntiYWNrZ3JvdW5kOiM3ZDViMzkxNDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS5kcmF3ZXItY2xvc2UtYnRue2JhY2tncm91bmQ6IzdkNWIzOTEyfS5kcmF3ZXItY2xvc2UtYnRuOmhvdmVye2JhY2tncm91bmQ6I2IyNGY0NTFmO2NvbG9yOnZhcigtLWRhbmdlcik7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyl9LmRyYXdlci1jbG9zZS1idG46YWN0aXZle2JhY2tncm91bmQ6I2IyNGY0NTMzO3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpIHNjYWxlKC45Mik7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5kcmF3ZXItY2xvc2UtYnRuOmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgdmFyKC0tYWNjZW50KTtvdXRsaW5lLW9mZnNldDozcHh9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93e2JhY2tncm91bmQ6I2ZmZmNmN2RiO2JvcmRlcjouNXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjU1KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigyNHB4KSBzYXR1cmF0ZSgxODAlKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDI0cHgpIHNhdHVyYXRlKDE4MCUpO2JveC1zaGFkb3c6MCAwIDAgLjVweCAjN2Q1YjM5MTQsMCAxMnB4IDI4cHggLThweCAjMTQwZTA4Mzg7Ym9yZGVyLXJhZGl1czoxMnB4O3BhZGRpbmc6NnB4fS5zaWRlYmFyLWhlYWRlci1vdmVyZmxvdyAub3ZlcmZsb3ctaXRlbXtib3JkZXItcmFkaXVzOjlweDtwYWRkaW5nOjlweCAxMHB4O2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo1MDA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxjb2xvciAuMTZzIGVhc2UsYm94LXNoYWRvdyAuMThzIGVhc2UsdHJhbnNmb3JtIC4xOHMgdmFyKC0tZWFzZS1vdXQtZXhwbyl9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVtOmhvdmVye2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmZmZmZTYsI2ZmZmNmNzk5KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JveC1zaGFkb3c6MCAwIDAgLjVweCAjN2Q1YjM5MTQsaW5zZXQgMCAxcHggI2ZmZmZmZmQ5fS5zaWRlYmFyLWhlYWRlci1vdmVyZmxvdyAub3ZlcmZsb3ctaXRlbTphY3RpdmV7YmFja2dyb3VuZDojYzU2NTNkMWY7Y29sb3I6dmFyKC0tYWNjZW50KTt0cmFuc2Zvcm06c2NhbGUoLjk4KX0uc2Vzc2lvbi1tYW5hZ2UtYmFye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjhweDtwYWRkaW5nOjRweCA0cHggNHB4IDEwcHg7Ym9yZGVyLXJhZGl1czoxMHB4O21hcmdpbi1ib3R0b206MTBweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTZzIGVhc2V9LnNlc3Npb24tbWFuYWdlLWJhcjpob3ZlcntiYWNrZ3JvdW5kOiM3ZDViMzkwZH0uc2Vzc2lvbi1tYW5hZ2UtYmFyIC5zaWRlYmFyLWludHJve2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGV0dGVyLXNwYWNpbmc6LjAwNWVtfS5zZXNzaW9uLW1hbmFnZS1iYXIuYWN0aXZle3Bvc2l0aW9uOnN0aWNreTt0b3A6MDt6LWluZGV4OjY7bWFyZ2luOi0xMHB4IC0xMHB4IDhweDtwYWRkaW5nOjlweCAxMHB4IDlweCA2cHg7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQ6I2ZmZmJmNWYwOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOnNhdHVyYXRlKDEuMikgYmx1cig4cHgpO2JhY2tkcm9wLWZpbHRlcjpzYXR1cmF0ZSgxLjIpIGJsdXIoOHB4KTtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3gtc2hhZG93Om5vbmV9LnNlc3Npb24tbWFuYWdlLWJhci5hY3RpdmU6aG92ZXJ7YmFja2dyb3VuZDojZmZmYmY1ZjB9LnNlc3Npb24tbWFuYWdlLWV4aXR7ZmxleC1zaHJpbms6MDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjI2cHg7aGVpZ2h0OjI2cHg7cGFkZGluZzowO2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6OHB4O2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNHMgZWFzZSxjb2xvciAuMTRzIGVhc2U7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fS5zZXNzaW9uLW1hbmFnZS1leGl0OmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTFhO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnNlc3Npb24tbWFuYWdlLXN1bW1hcnl7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDttaW4td2lkdGg6MDtmbGV4OjE7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC13ZWlnaHQ6NTAwfS5zZXNzaW9uLW1hbmFnZS1jb3VudHtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21pbi13aWR0aDoyMHB4O2hlaWdodDoxOHB4O3BhZGRpbmc6MCA2cHg7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2NvbG9yOnZhcigtLXRleHQtaW52ZXJzZSk7Zm9udC1zaXplOi42ODc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtib3JkZXItcmFkaXVzOjk5OXB4O2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30uc2Vzc2lvbi1tYW5hZ2Utc3VtbWFyeS1sYWJlbHtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC13ZWlnaHQ6NjAwfS5zZXNzaW9uLW1hbmFnZS1zdW1tYXJ5LWxhYmVsLm11dGVke2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtd2VpZ2h0OjUwMH0uc2Vzc2lvbi1tYW5hZ2UtYWN0aW9uc3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7ZmxleC1zaHJpbms6MH0uc2Vzc2lvbi1tYW5hZ2UtdG9nZ2xle2dhcDo1cHh9LmNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS1jbGVhci1idG57bWFyZ2luLWxlZnQ6YXV0b30uc2Vzc2lvbi1ncm91cC10aXRsZXtwYWRkaW5nOjEwcHggNnB4IDhweDtmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi4xZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LnNlc3Npb24tZ3JvdXAtdGl0bGU6YmVmb3Jle3dpZHRoOjNweDtoZWlnaHQ6MTJweDtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1hY2NlbnQpLHJnYmEoMTk3LDEwMSw2MSwuNCkpO29wYWNpdHk6MX0uc2Vzc2lvbi1pdGVte2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjExcHg7cGFkZGluZzo5cHggMTJweDttYXJnaW4tYm90dG9tOjJweDtib3gtc2hhZG93Om5vbmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxib3JkZXItY29sb3IgLjE2cyBlYXNlfS5zZXNzaW9uLWl0ZW06YmVmb3Jle2xlZnQ6NHB4O3RvcDo5cHg7Ym90dG9tOjlweDt3aWR0aDozcHg7Ym9yZGVyLXJhZGl1czoycHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWFjY2VudCkscmdiYSgxOTcsMTAxLDYxLC41KSl9LnNlc3Npb24taXRlbTpob3ZlcntiYWNrZ3JvdW5kOiM3ZDViMzkwZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LnNlc3Npb24taXRlbTpob3ZlcjpiZWZvcmV7b3BhY2l0eTowfS5zZXNzaW9uLWl0ZW0uYWN0aXZle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmY2Y3ZWIsI2ZmZjRlOGJkKTtib3JkZXItY29sb3I6I2M1NjUzZDQ3O2JveC1zaGFkb3c6aW5zZXQgMCAxcHggI2ZmZmZmZjhjfS5zZXNzaW9uLWl0ZW0uYWN0aXZlOmJlZm9yZXtvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlWSgxKX0uc2Vzc2lvbi1pdGVtLnNlbGVjdGVke2JhY2tncm91bmQ6I2M1NjUzZDE3O2JvcmRlci1jb2xvcjojYzU2NTNkMmV9LnNlc3Npb24taXRlbS5zZWxlY3RlZDpiZWZvcmV7b3BhY2l0eTouNzt0cmFuc2Zvcm06c2NhbGVZKDEpfS5zZXNzaW9uLWl0ZW06YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTkyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wOHN9LnNlc3Npb24tdGl0bGUsLnNlc3Npb24tY29tbWFuZHtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi0uMDA1ZW19LnNlc3Npb24tdGl0bGUtcm93e2dhcDoxMHB4fS5zZXNzaW9uLXRpbWV7Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30uc2Vzc2lvbi1hY3Rpdml0eXtvcGFjaXR5OjE7Y29sb3I6dmFyKC0tYWNjZW50KTtmb250LXdlaWdodDo1MDB9LnNlc3Npb24tc3RhdHVze3BhZGRpbmc6MnB4IDhweDtmb250LXNpemU6LjYyNXJlbTtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LjAyZW19LnNlc3Npb24taWR7YmFja2dyb3VuZDojN2Q1YjM5MTQ7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7Zm9udC1zaXplOi42MjVyZW07cGFkZGluZzoxLjVweCA2cHg7Ym9yZGVyLXJhZGl1czo0cHh9LnNlc3Npb24tYWN0aW9uLWJ0bnt3aWR0aDoyOHB4O2hlaWdodDoyOHB4O21pbi13aWR0aDoyOHB4O21pbi1oZWlnaHQ6MjhweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOiM3ZDViMzkwZjtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtib3JkZXI6bm9uZTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE2cyBlYXNlLGNvbG9yIC4xNnMgZWFzZSx0cmFuc2Zvcm0gLjE4cyBjdWJpYy1iZXppZXIoLjM0LDEuNCwuNjQsMSl9LnNlc3Npb24tYWN0aW9uLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiM3ZDViMzkyNDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpfS5zZXNzaW9uLWFjdGlvbi1idG4uZGVsZXRlLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiNiMjRmNDUyNDtjb2xvcjp2YXIoLS1kYW5nZXIpfS5zZXNzaW9uLWFjdGlvbi1idG4ubWVyZ2UtYnRuOmhvdmVye2JhY2tncm91bmQ6IzRmN2E1ODI5O2NvbG9yOnZhcigtLXN1Y2Nlc3MpfS5zZXNzaW9uLWFjdGlvbi1idG46YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOSk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5zZXNzaW9uLWFjdGlvbi1idG46Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1hY2NlbnQpO291dGxpbmUtb2Zmc2V0OjJweH0uc2Vzc2lvbi1tYW5hZ2UtY2hlY2sgc3Bhbnt3aWR0aDoyMHB4O2hlaWdodDoyMHB4O2JvcmRlci1yYWRpdXM6NnB4O2JvcmRlcjoxLjVweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMjIpO2JhY2tncm91bmQ6I2ZmZjk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggIzdkNWIzOTBhO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTZzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNnMgZWFzZSxib3gtc2hhZG93IC4xNnMgZWFzZX0uc2Vzc2lvbi1tYW5hZ2UtY2hlY2sgaW5wdXQ6Y2hlY2tlZCtzcGFue2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMXB4IDNweCAjYzU2NTNkNGQsaW5zZXQgMCAxcHggI2ZmZjN9LnNlc3Npb24tbWFuYWdlLWNoZWNrIGlucHV0OmNoZWNrZWQrc3BhbjphZnRlcntjb250ZW50OiIiO3dpZHRoOjZweDtoZWlnaHQ6MTBweDtib3JkZXItcmlnaHQ6MnB4IHNvbGlkICNmZmY7Ym9yZGVyLWJvdHRvbToycHggc29saWQgI2ZmZjt0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoLTFweCwtMXB4KX0uc2lkZWJhci1mb290ZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMDYpO3BhZGRpbmc6MTRweH0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRue2JhY2tncm91bmQ6I2ZmZmZmZjczO2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA2KTtib3JkZXItcmFkaXVzOjEwcHg7cGFkZGluZzo4cHggNHB4O2dhcDo0cHg7Zm9udC1zaXplOi42MjVyZW07Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi4wMWVtO2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTZzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNnMgZWFzZSxjb2xvciAuMTZzIGVhc2UsdHJhbnNmb3JtIC4xNnMgZWFzZSxib3gtc2hhZG93IC4xNnMgZWFzZX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRuOmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZmQ5O2JvcmRlci1jb2xvcjojN2Q1YjM5Mjk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgMnB4IDhweCAjN2Q1YjM5MGZ9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45Nik7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG4uYWN0aXZle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmY2Y3ZjIsI2ZmZjJlNGM3KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTk3LDEwMSw2MSwuMjgpO2NvbG9yOnZhcigtLWFjY2VudCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCkgc2F0dXJhdGUoMTgwJSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KSBzYXR1cmF0ZSgxODAlKTtib3gtc2hhZG93OjAgM3B4IDEwcHggLTNweCAjYzU2NTNkMzgsaW5zZXQgMCAxcHggI2ZmZmZmZmIzfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG4uc2lkZWJhci1sb2dvdXQ6aG92ZXJ7YmFja2dyb3VuZDojYjI0ZjQ1MTQ7Ym9yZGVyLWNvbG9yOiNiMjRmNDUzMztjb2xvcjp2YXIoLS1kYW5nZXIpO29wYWNpdHk6MX0uc2lkZWJhci1mb290ZXIgLmJ0bi1wcmltYXJ5e2JveC1zaGFkb3c6MCA2cHggMTZweCAtNHB4ICNjNTY1M2Q2NiwwIDJweCA2cHggLTJweCAjYzU2NTNkNGQsaW5zZXQgMCAxcHggI2ZmZjM7Ym9yZGVyLXJhZGl1czoxMnB4fS5zaWRlYmFyLWZvb3RlciAuYnRuLXByaW1hcnk6aG92ZXJ7Ym94LXNoYWRvdzowIDEwcHggMjRweCAtNHB4ICNjNTY1M2Q3NSwwIDRweCAxMHB4IC0ycHggI2M1NjUzZDU3LGluc2V0IDAgMXB4ICNmZmZmZmY0MH0uc2Vzc2lvbnMtbGlzdDplbXB0eTpiZWZvcmV7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi44MTI1cmVtO2xldHRlci1zcGFjaW5nOi4wMWVtfUBzdXBwb3J0cyBub3QgKChiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMXB4KSkgb3IgKC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDFweCkpKXsuc2lkZWJhcntiYWNrZ3JvdW5kOiNmZmZiZjVmYX0uZHJhd2VyLWJhY2tkcm9we2JhY2tncm91bmQ6IzE0MGUwODhjfS5zaWRlYmFyLWhlYWRlci1vdmVyZmxvd3tiYWNrZ3JvdW5kOiNmZmZhZjJ9fS5tb2RhbC1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nOjE4cHggMjJweCAxNnB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2ZsZXgtc2hyaW5rOjA7bWluLWhlaWdodDo1NnB4fS5tb2RhbC10aXRsZXtmb250LXNpemU6MS4wNjI1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi0uMDFlbX0ubW9kYWwtYm9keXtwYWRkaW5nOjIycHg7b3ZlcmZsb3cteTphdXRvO2ZsZXg6MSAxIGF1dG87bWluLWhlaWdodDowfS5tb2RhbC1ib2R5IC5maWVsZHttYXJnaW4tYm90dG9tOjE0cHh9Lm1vZGFsLWJvZHkgLmZpZWxkOmxhc3Qtb2YtdHlwZXttYXJnaW4tYm90dG9tOjE2cHh9LnNlc3Npb24ta2luZC1oaW50LXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxMnB4fS5zZXNzaW9uLWtpbmQtaGludC1yb3cgI3Nlc3Npb24ta2luZC1kZXNjcmlwdGlvbntmbGV4OjEgMSBhdXRvfS5zZXNzaW9uLWlubGluZS10b2dnbGV7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDt3aGl0ZS1zcGFjZTpub3dyYXA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2N1cnNvcjpwb2ludGVyO3VzZXItc2VsZWN0Om5vbmV9LnNlc3Npb24taW5saW5lLXRvZ2dsZS1sYWJlbHtmb250LXNpemU6Ljc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LmZpZWxkLWhpbnR7bWFyZ2luLXRvcDo2cHg7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjV9LnRvb2wtY2FyZHt3aWR0aDoxMDAlO3RleHQtYWxpZ246bGVmdDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4yKTtib3JkZXItcmFkaXVzOjE0cHg7YmFja2dyb3VuZDojZmZmZmZmYTY7cGFkZGluZzoxNHB4O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udG9vbC1jYXJkOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQtc29mdCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTJweCk7Ym94LXNoYWRvdzowIDhweCAyNHB4ICM1OTNhMjAxYTtiYWNrZ3JvdW5kOiNmZmZmZmZkOX0udG9vbC1jYXJkLmFjdGl2ZXtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOiNmZmY3ZWZmYTtib3gtc2hhZG93OjAgMCAwIDJweCB2YXIoLS1hY2NlbnQtbXV0ZWQpLDAgNnB4IDIwcHggIzU5M2EyMDE0fXNlbGVjdC5maWVsZC1pbnB1dHthcHBlYXJhbmNlOm5vbmU7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7YmFja2dyb3VuZC1pbWFnZTp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTQnIGhlaWdodD0nMTQnIHZpZXdCb3g9JzAgMCAyNCAyNCcgZmlsbD0nbm9uZScgc3Ryb2tlPSclMjM4YzczNWYnIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyUzRSUzQ3BhdGggZD0nTTYgOWw2IDYgNi02Jy8lM0UlM0Mvc3ZnJTNFIik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246cmlnaHQgMTRweCBjZW50ZXI7cGFkZGluZy1yaWdodDo0MHB4O2N1cnNvcjpwb2ludGVyfS5zdWdnZXN0aW9ucy13cmFwe3Bvc2l0aW9uOnJlbGF0aXZlfS5zdWdnZXN0aW9uc3twb3NpdGlvbjphYnNvbHV0ZTt0b3A6Y2FsYygxMDAlICsgNHB4KTtsZWZ0OjA7cmlnaHQ6MDt6LWluZGV4OjUwO2JhY2tncm91bmQ6I2ZmZmFmNGZhO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTttYXgtaGVpZ2h0OjIwMHB4O292ZXJmbG93LXk6YXV0b30uc3VnZ2VzdGlvbi1pdGVte3dpZHRoOjEwMCU7dGV4dC1hbGlnbjpsZWZ0O3BhZGRpbmc6MTBweCAxMnB4O2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtjdXJzb3I6cG9pbnRlcjtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODEyNXJlbTt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uc3VnZ2VzdGlvbi1pdGVtOmhvdmVye2JhY2tncm91bmQ6I2U4YzVhZTU3fS5zdWdnZXN0aW9uLWl0ZW0gc21hbGx7ZGlzcGxheTpibG9jaztmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bWFyZ2luLXRvcDoycHh9LnJlY2VudC1wYXRocy1idWJibGVze2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtnYXA6NXB4O21hcmdpbi10b3A6NnB4fS5yZWNlbnQtcGF0aHMtYnViYmxlczplbXB0eXtkaXNwbGF5Om5vbmV9LnJlY2VudC1wYXRoLWJ1YmJsZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjJweCAxMHB4O2JhY2tncm91bmQ6I2U4YzVhZTJlO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JvcmRlci1yYWRpdXM6OTk5cHg7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi42ODc1cmVtO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO3doaXRlLXNwYWNlOm5vd3JhcDttYXgtd2lkdGg6MTgwcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9LnJlY2VudC1wYXRoLWJ1YmJsZTpob3ZlcntiYWNrZ3JvdW5kOiNlOGM1YWU2Njtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLWhvdmVyLCB2YXIoLS1ib3JkZXItZGVmYXVsdCkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmVycm9yLW1lc3NhZ2V7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS1kYW5nZXIpO3BhZGRpbmc6MTBweCAxMnB4O2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7bWFyZ2luLXRvcDoxMnB4O2FuaW1hdGlvbjpzaGFrZSAuM3MgZWFzZX1Aa2V5ZnJhbWVzIHNoYWtlezAlLHRve3RyYW5zZm9ybTp0cmFuc2xhdGUoMCl9MjUle3RyYW5zZm9ybTp0cmFuc2xhdGUoLTRweCl9NzUle3RyYW5zZm9ybTp0cmFuc2xhdGUoNHB4KX19LmZpZWxkLWlucHV0W2RhdGEtZXJyb3I9dHJ1ZV17Ym9yZGVyLWNvbG9yOnZhcigtLWRhbmdlcik7Ym94LXNoYWRvdzowIDAgMCAzcHggdmFyKC0tZGFuZ2VyLW11dGVkKX0uaGludHtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bWFyZ2luLXRvcDoxMnB4fS5lbXB0eS1zdGF0ZXt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nOjQwcHggMjBweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6LjgxMjVyZW19LmVtcHR5LXN0YXRlIHN0cm9uZ3tkaXNwbGF5OmJsb2NrO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXNpemU6Ljk1cmVtO21hcmdpbi1ib3R0b206OHB4O2ZvbnQtd2VpZ2h0OjYwMH0uaGlkZGVue2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9Lm9mZmxpbmUtYmFubmVye3Bvc2l0aW9uOmZpeGVkO2JvdHRvbTo4MHB4O2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSk7YmFja2dyb3VuZDp2YXIoLS13YXJuaW5nKTtjb2xvcjojZmZmO3BhZGRpbmc6OHB4IDE2cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo1MDA7ei1pbmRleDoxMDA7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctZWxldmF0ZWQpO2FuaW1hdGlvbjpzbGlkZVVwIC4zcyBlYXNlfUBrZXlmcmFtZXMgc2xpZGVVcHswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKSB0cmFuc2xhdGVZKDIwcHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpIHRyYW5zbGF0ZVkoMCl9fTo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6NnB4O2hlaWdodDo2cHh9Ojotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZDojOTY3NjU1NGQ7Ym9yZGVyLXJhZGl1czozcHh9Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOiM5Njc2NTU4MH0uc2Vzc2lvbnMtbGlzdDo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6NHB4fS5zZXNzaW9ucy1saXN0Ojotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5zZXNzaW9ucy1saXN0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM5Njc2NTU0MDtib3JkZXItcmFkaXVzOjJweH0uc2Vzc2lvbnMtbGlzdDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXJ7YmFja2dyb3VuZDojOTY3NjU1NjZ9OmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgdmFyKC0tYWNjZW50KTtvdXRsaW5lLW9mZnNldDoycHh9YnV0dG9uOmZvY3VzLXZpc2libGV7b3V0bGluZS1vZmZzZXQ6MH1AbWVkaWEobWF4LXdpZHRoOjc2OHB4KXsuc2lkZWJhci5waW5uZWQ6bm90KC5jb2xsYXBzZWQpOm5vdCgub3Blbil7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtMTAwJSk7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjB9Lm1haW4tbGF5b3V0LnNpZGViYXItcGlubmVkOm5vdCguc2lkZWJhci1jb2xsYXBzZWQpe3BhZGRpbmctbGVmdDowfS5hcHAtY29udGFpbmVyey0tbGF5b3V0LW1haW4tZmlsZS1wYW5lbC13aWR0aDogMHB4fS5zaWRlYmFye3dpZHRoOm1pbigzMDBweCxjYWxjKDEwMHZ3IC0gMjBweCkpO3RvcDowfS50ZXJtaW5hbC1jb250YWluZXJ7bWFyZ2luOjAgNnB4IDZweDttaW4taGVpZ2h0OjB9LmJ0bnttaW4taGVpZ2h0OjQwcHh9LmJ0bi1zbXttaW4taGVpZ2h0OjM2cHg7cGFkZGluZzowIDEwcHg7Zm9udC1zaXplOi43NXJlbTtoZWlnaHQ6MzZweH0uYnRuLWljb257d2lkdGg6MzZweDtoZWlnaHQ6MzZweDttaW4taGVpZ2h0OjM2cHh9LmNoYXQtY29udGFpbmVye3BhZGRpbmc6MCAxMnB4IDEycHh9LmNoYXQtbWVzc2FnZXttYXgtd2lkdGg6MTAwJX0uc2Vzc2lvbi1pdGVte21pbi1oZWlnaHQ6NTJweDtwYWRkaW5nOjEycHh9LnNlc3Npb24tYWN0aW9uLWJ0bnt3aWR0aDozNnB4O2hlaWdodDozNnB4O21pbi13aWR0aDozNnB4O21pbi1oZWlnaHQ6MzZweH0uc2Vzc2lvbi1tYW5hZ2UtYmFyIC5idG57bWluLWhlaWdodDozMnB4fS5jbGF1ZGUtaGlzdG9yeS10b2dnbGV7bWluLWhlaWdodDo0MHB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXJ9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bnttaW4taGVpZ2h0OjQ0cHh9LnRyZWUtaXRlbXttaW4taGVpZ2h0OjQ0cHg7cGFkZGluZzo4cHggMTJweH0uZm9sZGVyLXBpY2tlci1pdGVte21pbi1oZWlnaHQ6NDRweH19QG1lZGlhKG1pbi13aWR0aDo3NjlweCl7LmRyYXdlci1iYWNrZHJvcHtkaXNwbGF5Om5vbmV9fUBtZWRpYShtYXgtd2lkdGg6NjQwcHgpezpyb290ey0tc2lkZWJhci13aWR0aDogMjgwcHg7LS1maWxlLXBhbmVsLXdpZHRoOiAxMDAlfS5hcHAtY29udGFpbmVyey0tbGF5b3V0LW1haW4tZmlsZS1wYW5lbC13aWR0aDogMHB4fWh0bWwsYm9keXttaW4taGVpZ2h0OjEwMGR2aDtoZWlnaHQ6MTAwZHZofWJvZHl7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNofS5hcHAtY29udGFpbmVye292ZXJmbG93OmhpZGRlbn0uZmxvYXRpbmctc2lkZWJhci10b2dnbGV7d2lkdGg6MzBweDtoZWlnaHQ6MzBweDtib3JkZXItcmFkaXVzOjZweH0uZmxvYXRpbmctc2lkZWJhci10b2dnbGUgLmhhbWJ1cmdlci1pY29ue3dpZHRoOjEzcHg7aGVpZ2h0OjlweH0uc2lkZWJhcnt0b3A6MH0uc2lkZWJhci1oZWFkZXJ7cGFkZGluZzoxMHB4IDEycHg7bWluLWhlaWdodDo0OHB4O2dhcDo4cHh9LnNpZGViYXItaGVhZGVyLWFjdGlvbnN7Z2FwOjRweH0uc2lkZWJhci1mb290ZXItYWN0aW9uc3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDQsMWZyKTtnYXA6NHB4fS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zOmhhcyguc2lkZWJhci1iYWNrLXRvLW5hdGl2ZSk6aGFzKC5zaWRlYmFyLXN3aXRjaC1zZXJ2ZXIpe2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNSwxZnIpfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG57bWluLWhlaWdodDo0MHB4O3BhZGRpbmc6NnB4IDRweH0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRuIHNwYW57ZGlzcGxheTpub25lfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG4gc3Zne3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHh9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93e21pbi13aWR0aDoxODBweDttYXgtd2lkdGg6Y2FsYygxMDB2dyAtIDI0cHgpfS5zaWRlYmFyLWhlYWRlci1vdmVyZmxvdyAub3ZlcmZsb3ctaXRlbXtwYWRkaW5nOjExcHggMTRweDtmb250LXNpemU6Ljg3NXJlbX0udGVybWluYWwtaGVhZGVye3BhZGRpbmc6NXB4IDhweDttaW4taGVpZ2h0OjMycHh9LnRlcm1pbmFsLXRpdGxle2dhcDo0cHg7Zm9udC1zaXplOi42ODc1cmVtfS50ZXJtaW5hbC1pbmZve2ZvbnQtc2l6ZTouNTYyNXJlbX0uY3VycmVudC10YXNre2ZvbnQtc2l6ZTouNTYyNXJlbTtwYWRkaW5nOjFweCA2cHggMXB4IDRweDtnYXA6M3B4fS5tYWluLWhlYWRlci1yb3d7cGFkZGluZzoycHggNnB4O2dhcDo0cHh9LnRvcGJhci1icmFuZCwudG9wYmFyLWN3ZHtkaXNwbGF5Om5vbmV9LnRvcGJhci1zZXNzaW9uLXRpdGxle21heC13aWR0aDoxNDBweDtmb250LXNpemU6Ljc4cmVtfS5zZXNzaW9uLXN0YXR1cy1waWxse2ZvbnQtc2l6ZTouNjI1cmVtO3BhZGRpbmc6MXB4IDdweCAxcHggNXB4O21heC13aWR0aDoxMTBweH0uc2Vzc2lvbi1zdGF0dXMtcGlsbCAuc2Vzc2lvbi1zdGF0dXMtZG90e3dpZHRoOjVweDtoZWlnaHQ6NXB4fS50b3BiYXItbW9yZS1tZW51e21pbi13aWR0aDoxNTZweH0udGVybWluYWwtc2NhbGUtb3ZlcmxheXt0b3A6NnB4O3JpZ2h0OjZweDtwYWRkaW5nOjJweDtnYXA6MXB4fS50ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWJ0bnttaW4td2lkdGg6MjZweDtoZWlnaHQ6MjZweDtmb250LXNpemU6Ljc1cmVtfS50ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWxhYmVse21pbi13aWR0aDoyOHB4O2ZvbnQtc2l6ZTouNTYyNXJlbTtwYWRkaW5nOjAgMnB4fS5tYWluLWxheW91dHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleDoxO21pbi1oZWlnaHQ6MDtoZWlnaHQ6MTAwJTtvdmVyZmxvdzpoaWRkZW47cGFkZGluZy1sZWZ0OjB9LnNpZGViYXJ7dG9wOjA7d2lkdGg6bWluKDI2MHB4LGNhbGMoMTAwdncgLSAxMnB4KSk7bWF4LWhlaWdodDpub25lO2JvcmRlci1ib3R0b206bm9uZX0ubWFpbi1jb250ZW50e2ZsZXg6MTttaW4taGVpZ2h0OjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtvdmVyZmxvdzpoaWRkZW59LnRlcm1pbmFsLWNvbnRhaW5lcntmbGV4OjEgMSBhdXRvO21pbi1oZWlnaHQ6MDttYXgtaGVpZ2h0Om5vbmV9LnNlc3Npb25zLWxpc3R7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4OjEgMCBhdXRvO21pbi1oZWlnaHQ6MDtvdmVyZmxvdzp2aXNpYmxlO3BhZGRpbmc6NHB4fS5zZXNzaW9uLWl0ZW17d2lkdGg6MTAwJTttYXgtd2lkdGg6bm9uZTttYXJnaW4tYm90dG9tOjRweDtwYWRkaW5nOjhweCAxMHB4O21pbi1oZWlnaHQ6NDRweDtib3JkZXItcmFkaXVzOjZweH0uc2Vzc2lvbi1hY3Rpb24tYnRue3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7bWluLWhlaWdodDozMnB4O21pbi13aWR0aDozMnB4O2JvcmRlci1yYWRpdXM6NnB4fS5pbnB1dC1wYW5lbHt6LWluZGV4OjMwO3BhZGRpbmc6NHB4IDZweDtwYWRkaW5nLWJvdHRvbTpjYWxjKDZweCArIHZhcigtLWlucHV0LXNhZmUtYm90dG9tLCB2YXIoLS1zYWZlLWJvdHRvbSwgMHB4KSkgKyB2YXIoLS1rZXlib2FyZC1vZmZzZXQsIDBweCkpO2ZsZXg6MCAwIGF1dG87bWFyZ2luLXRvcDphdXRvO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZjZmMWU4ODAsI2Y2ZjFlOGUwIDMwJSwjZjZmMWU4KSwjZjZmMWU4O2JhY2tkcm9wLWZpbHRlcjpibHVyKDEycHgpfS5pbnB1dC10ZXh0YXJlYXtwYWRkaW5nLWJvdHRvbTo0cHh9LmlucHV0LWNvbXBvc2Vye2JvcmRlci1yYWRpdXM6MTRweDtib3gtc2hhZG93OjAgM3B4IDE0cHggIzU5M2EyMDEyfS5idG4tY2lyY2xle3dpZHRoOjI2cHg7aGVpZ2h0OjI2cHg7Ym9yZGVyLXJhZGl1czo1MCV9LmJ0bi1jaXJjbGUtc2VuZCBzdmcsLmJ0bi1jaXJjbGUtc3RvcCBzdmd7d2lkdGg6MTJweDtoZWlnaHQ6MTJweH0uaW5wdXQtdGV4dGFyZWEsLmZpZWxkLWlucHV0e2ZvbnQtc2l6ZToxNnB4fS5pbnB1dC10ZXh0YXJlYXttaW4taGVpZ2h0OjMycHg7cGFkZGluZzo3cHggMzBweCA1cHggOHB4O2ZvbnQtc2l6ZToxNnB4O2xpbmUtaGVpZ2h0OjEuMzV9LmlucHV0LXRleHRhcmVhOjpwbGFjZWhvbGRlcntmb250LXNpemU6MTVweH0uY2hhdC1tb2RlLXNlbGVjdHttYXgtd2lkdGg6NjVweDtmb250LXNpemU6LjU2MjVyZW07aGVpZ2h0OjIycHg7bWluLWhlaWdodDoyMnB4O3BhZGRpbmc6MCAxNHB4IDAgNHB4O2JvcmRlci1yYWRpdXM6NXB4fS5pbnB1dC1oaW50e2ZvbnQtc2l6ZTouNDVyZW07bWF4LXdpZHRoOjE4Y2g7b3BhY2l0eTouNn0udGVybWluYWwtanVtcC1ib3R0b217d2lkdGg6MzJweDtoZWlnaHQ6MzJweDtwYWRkaW5nOjA7cmlnaHQ6MTBweDtib3R0b206MTJweH0uY2hhdC11bnJlYWQtYnViYmxle2hlaWdodDozMHB4O21pbi13aWR0aDozMHB4O3JpZ2h0OjEwcHg7Ym90dG9tOjhweDtwYWRkaW5nOjAgOXB4O2ZvbnQtc2l6ZTouNzJyZW19LmNoYXQtdW5yZWFkLWJ1YmJsZS5oYXMtdW5yZWFke3BhZGRpbmc6MCAxMXB4IDAgOXB4fS5jaGF0LXVucmVhZC1idWJibGUtY291bnR7Zm9udC1zaXplOi43MnJlbX0ubWluaS1rZXlib2FyZC1mYWJ7d2lkdGg6NDBweDtoZWlnaHQ6NDBweDtib3R0b206NTBweDtyaWdodDoxMHB4O2ZvbnQtc2l6ZToxcmVtfS5taW5pLWtleWJvYXJke2JvdHRvbTo1MHB4O3JpZ2h0OjhweDtsZWZ0OjhweDttaW4td2lkdGg6MDtib3JkZXItcmFkaXVzOjEwcHh9LmNoYXQtY29udGFpbmVye21pbi1oZWlnaHQ6MDtmbGV4OjEgMSBhdXRvO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5Om5vbmU7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5jaGF0LWNvbnRhaW5lci5hY3RpdmV7ZGlzcGxheTpmbGV4fS5mb2xkZXItcGlja2VyLWNvbnRhaW5lcnttYXJnaW4tYm90dG9tOjRweH0uZm9sZGVyLXBpY2tlci1xdWljay1idG57bWluLWhlaWdodDozMnB4O3BhZGRpbmc6NnB4IDEwcHg7Zm9udC1zaXplOi42ODc1cmVtO2JvcmRlci1yYWRpdXM6NnB4fS5mb2xkZXItYnJlYWRjcnVtYntwYWRkaW5nOjRweCA2cHg7Zm9udC1zaXplOi41NjI1cmVtO21hcmdpbi1ib3R0b206M3B4O292ZXJmbG93LXg6YXV0bzstd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaDt3aGl0ZS1zcGFjZTpub3dyYXA7ZmxleC13cmFwOm5vd3JhcH0uZm9sZGVyLXBpY2tlcntwYWRkaW5nOjhweCAxMHB4O21pbi1oZWlnaHQ6MzZweH0uZm9sZGVyLXBpY2tlci1pbnB1dHtmb250LXNpemU6MTZweDtwYWRkaW5nOjZweH0uZm9sZGVyLXBpY2tlci1kcm9wZG93bnttYXgtaGVpZ2h0OjE4MHB4fS5mb2xkZXItcGlja2VyLWl0ZW17cGFkZGluZzo4cHggMTBweDttaW4taGVpZ2h0OjM2cHh9LmZvbGRlci1yZWNlbnQtaXRlbXtwYWRkaW5nOjZweCAxMHB4O21pbi1oZWlnaHQ6MzZweH0uZm9sZGVyLXBpY2tlci1jb21wYWN0LXJvd3twYWRkaW5nOjZweH0uZm9sZGVyLXBpY2tlci1jb21wYWN0LWlucHV0e2ZvbnQtc2l6ZTouNjI1cmVtfS53b3JraW5nLWRpci1pbmRpY2F0b3J7Zm9udC1zaXplOi41NjI1cmVtO3BhZGRpbmc6MXB4IDRweDttYXgtd2lkdGg6MTIwcHh9LnRvZG8tcHJvZ3Jlc3MtaGVhZGVye3BhZGRpbmc6M3B4IDZweDtnYXA6NHB4fS50b2RvLXByb2dyZXNzLWNvdW50ZXIsLnRvZG8tcHJvZ3Jlc3MtdGFza3tmb250LXNpemU6LjU2MjVyZW19LnRvZG8tcHJvZ3Jlc3MtY2hldnJvbnt3aWR0aDoxMnB4O2hlaWdodDoxMnB4fS50b2RvLXByb2dyZXNzLWJvZHl7cGFkZGluZzo0cHggNnB4fS5sb2dpbi1jb250YWluZXJ7bWluLWhlaWdodDoxMDBkdmg7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtwYWRkaW5nOjhweCA4cHggY2FsYyg4cHggKyB2YXIoLS1zYWZlLWJvdHRvbSwgMHB4KSl9LmxvZ2luLWNhcmR7bWFyZ2luLXRvcDptYXgoNnB4LGVudihzYWZlLWFyZWEtaW5zZXQtdG9wLDBweCkpfS5sb2dpbi1oZWFkZXJ7cGFkZGluZzoxNHB4IDEycHggMTBweH0ubG9naW4tYm9keXtwYWRkaW5nOjEycHh9LmJ0bnttaW4taGVpZ2h0OjQwcHh9LmJ0bi1zbXttaW4taGVpZ2h0OjMycHh9LmNoYXQtbWVzc2FnZS1idWJibGV7cGFkZGluZzo4cHggMTBweDtmb250LXNpemU6Ljc1cmVtfS5jaGF0LW1lc3NhZ2UtYXZhdGFye2ZvbnQtc2l6ZTouNjg3NXJlbX0ubW9kYWwtYmFja2Ryb3B7cGFkZGluZzo4cHg7cGFkZGluZy10b3A6bWF4KDhweCx2YXIoLS13YW5kLXNhZmUtdG9wKSk7cGFkZGluZy1sZWZ0Om1heCg4cHgsdmFyKC0td2FuZC1zYWZlLWxlZnQpKTtwYWRkaW5nLXJpZ2h0Om1heCg4cHgsdmFyKC0td2FuZC1zYWZlLXJpZ2h0KSk7YWxpZ24taXRlbXM6ZmxleC1lbmR9Lm1vZGFse21heC13aWR0aDoxMDAlO21heC1oZWlnaHQ6ODV2aDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCkgdmFyKC0tcmFkaXVzLW1kKSAwIDA7bWFyZ2luLWJvdHRvbTp2YXIoLS1zYWZlLWJvdHRvbSwgMHB4KX0ubW9kYWwtaGVhZGVye3BhZGRpbmc6MTBweCAxMnB4O21pbi1oZWlnaHQ6NDBweH0ubW9kYWwtYm9keXtwYWRkaW5nOjEwcHggMTJweH0ubW9kYWwtZm9vdGVye3BhZGRpbmc6OHB4IDEycHh9LnNlc3Npb24tbW9kYWwgLm1vZGFsLWZvb3RlcntwYWRkaW5nOjEwcHggMTJweCAxNHB4fS50b29sLWNhcmR7cGFkZGluZzoxMHB4O21pbi1oZWlnaHQ6MzZweH0ubWFpbi1jb250ZW50LmZpbGUtcGFuZWwtb3BlbnttYXJnaW4tcmlnaHQ6MH0uZmlsZS1zaWRlLXBhbmVse3dpZHRoOjEwMCV9LmZpbGUtc2lkZS1wYW5lbC1oZWFkZXJ7cGFkZGluZzoxMHB4IDEycHg7bWluLWhlaWdodDo0OHB4fS5maWxlLXNpZGUtcGFuZWwtaWNvbmJ0bnt3aWR0aDozNHB4O2hlaWdodDozNHB4fS5maWxlLWV4cGxvcmVyLWhlYWRlcntwYWRkaW5nOjZweCAxMHB4IDRweDtnYXA6NnB4fS5maWxlLWV4cGxvcmVyLXVwe3dpZHRoOjMycHg7aGVpZ2h0OjMycHh9LmZpbGUtc2VhcmNoLWJveHtwYWRkaW5nOjZweCAxMHB4IDhweH0uZmlsZS1zZWFyY2gtaWNvbntsZWZ0OjIwcHh9LmZpbGUtc2VhcmNoLWNsZWFye3JpZ2h0OjE2cHh9LmZpbGUtc2VhcmNoLWlucHV0e21pbi1oZWlnaHQ6MzRweDtmb250LXNpemU6MTZweDtwYWRkaW5nOjdweCAzMnB4IDdweCAzMHB4fS5ibGFuay1jaGF0e3BhZGRpbmc6MTZweCAxMnB4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9LmJsYW5rLWNoYXQtaW5uZXJ7bWF4LXdpZHRoOjEwMCV9LmJsYW5rLWNoYXQtbG9nb3t3aWR0aDo0OHB4O2hlaWdodDo0OHB4O2ZvbnQtc2l6ZToyNHB4O2JvcmRlci1yYWRpdXM6MTJweDttYXJnaW4tYm90dG9tOjEwcHh9LmJsYW5rLWNoYXQtdGl0bGV7Zm9udC1zaXplOjEuMTI1cmVtfS5ibGFuay1jaGF0LXN1YnRpdGxle2ZvbnQtc2l6ZTouNzVyZW07bWFyZ2luLWJvdHRvbToxNnB4fS5ibGFuay1jaGF0LXRvb2xze2dhcDo0cHg7bWFyZ2luLWJvdHRvbTo4cHh9LmJsYW5rLWNoYXQtdG9vbC1idG57cGFkZGluZzo2cHggMTBweDtmb250LXNpemU6Ljc1cmVtO21pbi1oZWlnaHQ6NDRweH0ubm90aWZpY2F0aW9uLWJ1YmJsZXttYXgtd2lkdGg6Y2FsYygxMDB2dyAtIDI0cHgpfS5ibGFuay1jaGF0LWN3ZC1kcm9wZG93bnttaW4td2lkdGg6MDt3aWR0aDpjYWxjKDEwMHZ3IC0gMzJweCk7bWF4LXdpZHRoOjMyMHB4fS50b2FzdC1tZXNzYWdle21heC13aWR0aDpjYWxjKDEwMHZ3IC0gMzJweCl9fUBtZWRpYShtaW4td2lkdGg6MzkxcHgpYW5kIChtYXgtd2lkdGg6NDIwcHgpey50ZXJtaW5hbC1jb250YWluZXJ7bWFyZ2luOjAgNnB4IDZweDtwYWRkaW5nOjZweH0uaW5wdXQtcGFuZWx7cGFkZGluZzo2cHggMTBweDtwYWRkaW5nLWJvdHRvbTpjYWxjKDhweCArIHZhcigtLWlucHV0LXNhZmUtYm90dG9tLCB2YXIoLS1zYWZlLWJvdHRvbSwgMHB4KSkpfX1AbWVkaWEobWF4LXdpZHRoOjM5MHB4KXsuZmxvYXRpbmctc2lkZWJhci10b2dnbGV7d2lkdGg6MjhweDtoZWlnaHQ6MjhweH0uZmxvYXRpbmctc2lkZWJhci10b2dnbGUgLmhhbWJ1cmdlci1pY29ue3dpZHRoOjExcHg7aGVpZ2h0OjhweH0udGVybWluYWwtaGVhZGVye3BhZGRpbmc6NHB4IDZweDttaW4taGVpZ2h0OjI4cHh9LnRlcm1pbmFsLWluZm97ZGlzcGxheTpub25lfS50ZXJtaW5hbC1jb250YWluZXJ7bWFyZ2luOjAgNHB4IDRweDtwYWRkaW5nOjRweH0uaW5wdXQtcGFuZWx7cGFkZGluZzo1cHggNnB4O3BhZGRpbmctYm90dG9tOmNhbGMoNnB4ICsgdmFyKC0taW5wdXQtc2FmZS1ib3R0b20sIHZhcigtLXNhZmUtYm90dG9tLCAwcHgpKSl9LmlucHV0LWNvbXBvc2Vye2JvcmRlci1yYWRpdXM6OHB4fS5pbnB1dC10ZXh0YXJlYXttaW4taGVpZ2h0OjI4cHg7cGFkZGluZzo1cHggMjhweCAycHggNnB4O2ZvbnQtc2l6ZToxNnB4fS5idG4tY2lyY2xle3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7bWluLXdpZHRoOjI4cHh9LnNlc3Npb24taXRlbXtwYWRkaW5nOjZweCA4cHg7bWluLWhlaWdodDo0MHB4fS5zZXNzaW9uLWFjdGlvbi1idG57d2lkdGg6MzBweDtoZWlnaHQ6MzBweDttaW4td2lkdGg6MzBweDttaW4taGVpZ2h0OjMwcHh9LnNpZGViYXJ7dG9wOjA7d2lkdGg6bWluKDI0MHB4LGNhbGMoMTAwdncgLSAxMHB4KSl9LnNpZGViYXItZm9vdGVyLWFjdGlvbnN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg0LDFmcil9LnNpZGViYXItZm9vdGVyLWFjdGlvbnM6aGFzKC5zaWRlYmFyLWJhY2stdG8tbmF0aXZlKTpoYXMoLnNpZGViYXItc3dpdGNoLXNlcnZlcil7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg1LDFmcil9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0biBzcGFue2Rpc3BsYXk6bm9uZX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRue21pbi1oZWlnaHQ6MzZweDtwYWRkaW5nOjZweH0ubW9kYWx7bWF4LWhlaWdodDo4MHZofS5tb2RhbC1oZWFkZXJ7cGFkZGluZzo4cHggMTBweDttaW4taGVpZ2h0OjM2cHh9Lm1vZGFsLWJvZHl7cGFkZGluZzo4cHggMTBweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtZm9vdGVye3BhZGRpbmc6OHB4IDEwcHggMTJweH0uZmllbGQtcm93e2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnI7Z2FwOjB9LmJ0bnttaW4taGVpZ2h0OjM2cHg7cGFkZGluZzo4cHggMTJweH0uYnRuLXNte21pbi1oZWlnaHQ6MjhweDtwYWRkaW5nOjRweCA4cHh9fUBtZWRpYShtaW4td2lkdGg6NjQxcHgpYW5kIChtYXgtd2lkdGg6NzY4cHgpey5zaWRlYmFye3RvcDowO3dpZHRoOm1pbigzMjBweCxjYWxjKDEwMHZ3IC0gNDBweCkpfS5zZXNzaW9uLWl0ZW17bWluLWhlaWdodDo1MnB4O3BhZGRpbmc6MTFweCAxMnB4fS5zZXNzaW9uLWFjdGlvbi1idG57d2lkdGg6MzRweDtoZWlnaHQ6MzRweDttaW4td2lkdGg6MzRweDttaW4taGVpZ2h0OjM0cHh9LmJ0bnttaW4taGVpZ2h0OjQycHh9LmJ0bi1zbXttaW4taGVpZ2h0OjM2cHh9LmZsb2F0aW5nLXRvZ2dsZXttaW4td2lkdGg6NDhweDttaW4taGVpZ2h0OjQ4cHh9fUBtZWRpYShtYXgtaGVpZ2h0OjQyMHB4KWFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsuZmxvYXRpbmctc2lkZWJhci10b2dnbGV7d2lkdGg6MjhweDtoZWlnaHQ6MjhweH0uc2lkZWJhcnt0b3A6MH0udGVybWluYWwtY29udGFpbmVye21pbi1oZWlnaHQ6NTV2aDttYXJnaW46NnB4O3BhZGRpbmc6OHB4fS5jaGF0LWNvbnRhaW5lcntwYWRkaW5nOjAgMTBweCA4cHh9LmlucHV0LXBhbmVse3BhZGRpbmc6OHB4O3BhZGRpbmctYm90dG9tOmNhbGMoOHB4ICsgdmFyKC0taW5wdXQtc2FmZS1ib3R0b20sIHZhcigtLXNhZmUtYm90dG9tLCAwcHgpKSl9fUBtZWRpYShtYXgtd2lkdGg6NDgwcHgpey5jaGF0LWNvbnRhaW5lcntwYWRkaW5nOjAgNnB4IDhweH0uY2hhdC1tZXNzYWdlc3twYWRkaW5nLWxlZnQ6MnB4O3BhZGRpbmctcmlnaHQ6MnB4O2dhcDoxMnB4fS5jaGF0LW1lc3NhZ2V7LS1jaGF0LWNhcmQtbWF4LXdpZHRoOiAxMDAlfS50b29sLXVzZS1oZWFkZXJ7ZmxleC13cmFwOndyYXA7cm93LWdhcDo0cHg7cGFkZGluZzo4cHggMTJweH0udG9vbC11c2UtZmlsZXttYXgtd2lkdGg6MTAwJX0udG9vbC11c2UtYm9keXtwYWRkaW5nOjEwcHggMTJweH0uc3ViYWdlbnQtcmVwbHl7cGFkZGluZzo5cHggMTJweH0uc3ViYWdlbnQtcmVwbHkuY29sbGFwc2libGV7cGFkZGluZzowfS5zdWJhZ2VudC1yZXBseS5maW5hbHtwYWRkaW5nOjlweCAxMXB4fS5zdWJhZ2VudC1wYW5lbHttYXJnaW46NnB4IDB9LnN1YmFnZW50LXBhbmVsLWhlYWRlcntwYWRkaW5nOjdweCAxMHB4O2dhcDo2cHg7Zm9udC1zaXplOi43NHJlbX0uc3ViYWdlbnQtcGFuZWwtYXR0cmlidXRpb257d2hpdGUtc3BhY2U6bm9ybWFsO2xpbmUtaGVpZ2h0OjEuNH0uc3ViYWdlbnQtcGFuZWwtdGFne21hcmdpbjowIDRweDtwYWRkaW5nOjAgNHB4fS5zdWJhZ2VudC1wYW5lbC1ib2R5e3BhZGRpbmc6OXB4IDExcHh9LnN1YmFnZW50LXBhbmVsW2RhdGEtZXhwYW5kZWQ9ZmFsc2VdIC5zdWJhZ2VudC1wYW5lbC1ib2R5e21heC1oZWlnaHQ6MThlbX0uc3ViYWdlbnQtcGFuZWxbZGF0YS1leHBhbmRlZD10cnVlXSAuc3ViYWdlbnQtcGFuZWwtYm9keXttYXgtaGVpZ2h0OjYwdmh9LnN1YmFnZW50LXBhbmVsLWZvb3RlcntwYWRkaW5nOjVweCAxMHB4fS5zdWJhZ2VudC1wYW5lbC1mb290ZXItaGludHtkaXNwbGF5Om5vbmV9Lm1hcmtkb3duLWNvbnRlbnQgLmNvZGUtYmxvY2t7bWFyZ2luOjhweCAwfS5tYXJrZG93bi1jb250ZW50IHByZSwubWFya2Rvd24tY29udGVudCAuY29kZS1ibG9jayBwcmUsLnN1YmFnZW50LXJlcGx5IHByZXtwYWRkaW5nOjEwcHh9LmRpZmYtY29sdW1uc3tmbGV4LWRpcmVjdGlvbjpjb2x1bW59LmRpZmYtY29sLC5kaWZmLWNvbC1oYWxmLC5kaWZmLWNvbC1mdWxse2ZsZXg6MSAxIGF1dG87d2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJX0udGVybS1oZWFkZXIsLmRpZmYtaGVhZGVye2ZsZXgtd3JhcDp3cmFwO3Jvdy1nYXA6NHB4fS5kaWZmLXBhdGh7ZmxleC1iYXNpczoxMDAlO29yZGVyOjk5fS5pbmxpbmUtdG9vbC1yb3d7ZmxleC13cmFwOndyYXA7cm93LWdhcDoycHh9LmlubGluZS10b29sLW1ldGF7bWF4LXdpZHRoOjEwMCU7ZmxleC1iYXNpczoxMDAlO3BhZGRpbmctbGVmdDoyMnB4fX0uc2Vzc2lvbi1raW5kLWJhZGdle2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2hlaWdodDoxOHB4O3BhZGRpbmc6MCA2cHg7Ym9yZGVyLXJhZGl1czo5OTlweDtmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi4wMWVtO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7ZmxleC1zaHJpbms6MH0uc2Vzc2lvbi1raW5kLWJhZGdlLnB0eXtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YmFja2dyb3VuZDojNzg4MDhjMWY7Ym9yZGVyLWNvbG9yOiM3ODgwOGMyZX0uc2Vzc2lvbi1raW5kLWJhZGdlLnN0cnVjdHVyZWR7Y29sb3I6I2QxOGI1MjtiYWNrZ3JvdW5kOiNkNzdhNTIxYTtib3JkZXItY29sb3I6I2Q3N2E1MjM4fS5zZXNzaW9uLWtpbmQtYmFkZ2Uud29ya3RyZWV7Y29sb3I6IzJmNmY1NDtiYWNrZ3JvdW5kOiM0ZjdhNTgxZjtib3JkZXItY29sb3I6IzRmN2E1ODM4fS5zZXNzaW9uLWtpbmQtZGlzcGxheXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjFweCA2cHg7Ym9yZGVyLXJhZGl1czo5OTlweDtmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOiM4YTRiMjQ7YmFja2dyb3VuZDojZDc3YTUyMWY7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDIxNSwxMjIsODIsLjIpfS5zdHJ1Y3R1cmVkLXRvb2wtaGludHttYXJnaW46NHB4IDAgOHB4O3BhZGRpbmc6NnB4IDEwcHg7Ym9yZGVyLXJhZGl1czoxMHB4O2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7YmFja2dyb3VuZDojZDc3YTUyMTQ7Ym9yZGVyOjFweCBkYXNoZWQgcmdiYSgyMTUsMTIyLDgyLC4xOCl9LmJsYW5rLWNoYXR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZsZXg6MTtwYWRkaW5nOjIwcHggMTZweDttaW4taGVpZ2h0OjA7b3ZlcmZsb3c6YXV0b30uYmxhbmstY2hhdC1pbm5lcnt3aWR0aDoxMDAlO21heC13aWR0aDo1NjBweDt0ZXh0LWFsaWduOmNlbnRlcn0uYmxhbmstY2hhdC1sb2dve3dpZHRoOjU2cHg7aGVpZ2h0OjU2cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCNkNzdhNTIsI2E5NTEzMCk7Ym9yZGVyLXJhZGl1czoxNnB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MjhweDtmb250LXdlaWdodDo3MDA7Y29sb3I6I2ZmZjttYXJnaW46MCBhdXRvIDE0cHg7Ym94LXNoYWRvdzowIDRweCAxNnB4ICNjNTY1M2QzOH0uYmxhbmstY2hhdC10aXRsZXtmb250LXNpemU6MS4zNzVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bWFyZ2luOjAgMCA2cHh9LmJsYW5rLWNoYXQtc3VidGl0bGV7Zm9udC1zaXplOi44MTI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO21hcmdpbjowIDAgMjBweH0uYmxhbmstY2hhdC10b29sc3tkaXNwbGF5OmZsZXg7Z2FwOjhweDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbi1ib3R0b206MTJweDtmbGV4LXdyYXA6d3JhcH0uYmxhbmstY2hhdC10b29sLWJ0bntwYWRkaW5nOjhweCAxNHB4O2JvcmRlcjoxLjVweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czoxMHB4O2JhY2tncm91bmQ6I2ZmZmZmZmIzO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo1MDA7Zm9udC1mYW1pbHk6aW5oZXJpdDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDttaW4taGVpZ2h0OjQwcHh9LmJsYW5rLWNoYXQtdG9vbC1idG46aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2NvbG9yOnZhcigtLWFjY2VudCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzowIDRweCAxMnB4ICM1OTNhMjAxNH0uYmxhbmstY2hhdC10b29sLWJ0biAudG9vbC1pY29ue2ZvbnQtc2l6ZToxLjEyNXJlbX0uYmxhbmstY2hhdC1jd2Qtd3JhcHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW4tdG9wOjhweH0uYmxhbmstY2hhdC1jd2R7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3BhZGRpbmc6NHB4IDhweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7dHJhbnNpdGlvbjpjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTt1c2VyLXNlbGVjdDpub25lfS5ibGFuay1jaGF0LWN3ZDpob3Zlcntjb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKX0uYmxhbmstY2hhdC1jd2QtaWNvbntmb250LXNpemU6LjgxMjVyZW19LmJsYW5rLWNoYXQtY3dkLXBhdGh7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTttYXgtd2lkdGg6MjgwcHg7b3ZlcmZsb3cteDphdXRvO292ZXJmbG93LXk6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDtzY3JvbGxiYXItd2lkdGg6bm9uZX0uYmxhbmstY2hhdC1jd2QtcGF0aDo6LXdlYmtpdC1zY3JvbGxiYXJ7aGVpZ2h0OjNweH0uYmxhbmstY2hhdC1jd2QtcGF0aDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZDojOTY3NjU1NTI7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCl9LmJsYW5rLWNoYXQtY3dkOmhvdmVyIC5ibGFuay1jaGF0LWN3ZC1wYXRoe3Njcm9sbGJhci13aWR0aDp0aGlufS5ibGFuay1jaGF0LWN3ZDpob3ZlciAuYmxhbmstY2hhdC1jd2QtcGF0aDo6LXdlYmtpdC1zY3JvbGxiYXJ7aGVpZ2h0OjRweH0uYmxhbmstY2hhdC1jd2QtYXJyb3d7Zm9udC1zaXplOi42MjVyZW07b3BhY2l0eTouNjt0cmFuc2l0aW9uOnRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5ibGFuay1jaGF0LWN3ZC1kcm9wZG93bntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTAwJTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpO21pbi13aWR0aDoyNjBweDttYXgtd2lkdGg6NDAwcHg7bWF4LWhlaWdodDoyNDBweDtvdmVyZmxvdy15OmF1dG87YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7Ym94LXNoYWRvdzowIDRweCAxNnB4ICMwMDAwMDAxYTt6LWluZGV4OjUwO21hcmdpbi10b3A6NHB4O3BhZGRpbmc6NHB4fS5ibGFuay1jaGF0LWN3ZC1pdGVte2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtwYWRkaW5nOjZweCAxMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uYmxhbmstY2hhdC1jd2QtaXRlbTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Y29sb3I6dmFyKC0tYWNjZW50KX0uYmxhbmstY2hhdC1jd2QtaXRlbS5hY3RpdmV7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2NvbG9yOnZhcigtLWFjY2VudCk7Zm9udC13ZWlnaHQ6NTAwfS5ibGFuay1jaGF0LWN3ZC1pdGVtLWxhYmVse2ZvbnQtc2l6ZTouNjI1cmVtO2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtjb2xvcjp2YXIoLS1hY2NlbnQpO3BhZGRpbmc6MXB4IDVweDtib3JkZXItcmFkaXVzOjNweDtmb250LXdlaWdodDo1MDA7d2hpdGUtc3BhY2U6bm93cmFwfS5ibGFuay1jaGF0LWN3ZC1pdGVtLXBhdGh7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LmJsYW5rLWNoYXQtY3dkLWxvYWRpbmd7cGFkZGluZzo4cHggMTBweDtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RleHQtYWxpZ246Y2VudGVyfS5jaGF0LW1vZGUtc2VsZWN0e2ZvbnQtZmFtaWx5OmluaGVyaXQ7Y3Vyc29yOnBvaW50ZXI7b3V0bGluZTpub25lfS5jaGF0LW1vZGUtc2VsZWN0OmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfS50b2FzdC1tZXNzYWdle3Bvc2l0aW9uOmZpeGVkO3RvcDoyNHB4O2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSk7cGFkZGluZzoxMHB4IDIwcHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO2ZvbnQtc2l6ZTouODc1cmVtO3otaW5kZXg6OTk5OTtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1sZyk7YW5pbWF0aW9uOnRvYXN0LWluIC4yMnMgY3ViaWMtYmV6aWVyKC4zNCwxLjU2LC42NCwxKX0udG9hc3QtZXJyb3J7YmFja2dyb3VuZDp2YXIoLS1kYW5nZXIpO2NvbG9yOiNmZmZ9QGtleWZyYW1lcyB0b2FzdC1pbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKSB0cmFuc2xhdGVZKC0xMnB4KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKSB0cmFuc2xhdGVZKDApfX0ubm90aWZpY2F0aW9uLWJ1YmJsZXtwb3NpdGlvbjpmaXhlZDtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpO3otaW5kZXg6MTAwMDA7bWluLXdpZHRoOjIyMHB4O21heC13aWR0aDozMjBweDtiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cyk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctbGcpO3BhZGRpbmc6OHB4IDEycHg7YW5pbWF0aW9uOm5vdGlmaWNhdGlvbi1zbGlkZS1pbiAuM3MgY3ViaWMtYmV6aWVyKC4zNCwxLjU2LC42NCwxKTt0cmFuc2l0aW9uOnRvcCAuMjVzIGVhc2Usb3BhY2l0eSAuMjVzIGVhc2V9Lm5vdGlmaWNhdGlvbi1idWJibGUuc2xpZGUtb3V0e2FuaW1hdGlvbjpub3RpZmljYXRpb24tc2xpZGUtb3V0IC4yNXMgZWFzZSBmb3J3YXJkczt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpfS5ub3RpZmljYXRpb24tYnViYmxlLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7bWFyZ2luLWJvdHRvbToycHh9Lm5vdGlmaWNhdGlvbi1idWJibGUtaWNvbnt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2ZsZXgtc2hyaW5rOjA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtmb250LXNpemU6MTBweH0ubm90aWZpY2F0aW9uLWJ1YmJsZS1pY29uLmluZm97YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2NvbG9yOiNmZmZ9Lm5vdGlmaWNhdGlvbi1idWJibGUtaWNvbi53YXJuaW5ne2JhY2tncm91bmQ6dmFyKC0td2FybmluZyk7Y29sb3I6I2ZmZn0ubm90aWZpY2F0aW9uLWJ1YmJsZS1pY29uLnN1Y2Nlc3N7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzKTtjb2xvcjojZmZmfS5ub3RpZmljYXRpb24tYnViYmxlLXRpdGxle2ZvbnQtc2l6ZTouNzVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLWZnLXByaW1hcnkpO2ZsZXg6MTttaW4td2lkdGg6MH0ubm90aWZpY2F0aW9uLWJ1YmJsZS1jbG9zZXtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOm5vbmU7Y29sb3I6dmFyKC0tZmctbXV0ZWQpO2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjE7cGFkZGluZzoxcHggM3B4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtmbGV4LXNocmluazowfS5ub3RpZmljYXRpb24tYnViYmxlLWNsb3NlOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctaG92ZXIpO2NvbG9yOnZhcigtLWZnLXByaW1hcnkpfS5ub3RpZmljYXRpb24tYnViYmxlLWJvZHl7Zm9udC1zaXplOi43cmVtO2NvbG9yOnZhcigtLWZnLXNlY29uZGFyeSk7bGluZS1oZWlnaHQ6MS40O21hcmdpbi1ib3R0b206MDttYXgtaGVpZ2h0OjQuMmVtO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtbGluZS1jbGFtcDozOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbH0ubm90aWZpY2F0aW9uLWJ1YmJsZS1hY3Rpb25ze21hcmdpbi10b3A6NnB4O2Rpc3BsYXk6ZmxleDtnYXA6NnB4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ubm90aWZpY2F0aW9uLWJ1YmJsZS1hY3Rpb25zIGJ1dHRvbntmb250LXNpemU6LjdyZW07cGFkZGluZzoycHggMTBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtjb2xvcjp2YXIoLS1mZy1wcmltYXJ5KTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1c30ubm90aWZpY2F0aW9uLWJ1YmJsZS1hY3Rpb25zIGJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLWhvdmVyKX0ubm90aWZpY2F0aW9uLWJ1YmJsZS1hY3Rpb25zIGJ1dHRvbi5wcmltYXJ5e2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtjb2xvcjojZmZmO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfS5ub3RpZmljYXRpb24tYnViYmxlLWFjdGlvbnMgYnV0dG9uLnByaW1hcnk6aG92ZXJ7ZmlsdGVyOmJyaWdodG5lc3MoMS4xKX1Aa2V5ZnJhbWVzIG5vdGlmaWNhdGlvbi1zbGlkZS1pbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKSB0cmFuc2xhdGVZKC0yMHB4KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKSB0cmFuc2xhdGVZKDApfX1Aa2V5ZnJhbWVzIG5vdGlmaWNhdGlvbi1zbGlkZS1vdXR7MCV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgdHJhbnNsYXRlWSgwKX10b3tvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKSB0cmFuc2xhdGVZKC0yMHB4KX19Lm5vdGlmaWNhdGlvbi1idWJibGUtYWN0aW9ucyBidXR0b246ZGlzYWJsZWR7b3BhY2l0eTouNjtjdXJzb3I6bm90LWFsbG93ZWQ7ZmlsdGVyOm5vbmV9Lm5vdGlmaWNhdGlvbi1idWJibGUtYWN0aW9ucyBidXR0b24uc3VjY2Vzc3tiYWNrZ3JvdW5kOnZhcigtLXN1Y2Nlc3MpO2NvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOnZhcigtLXN1Y2Nlc3MpfS5ub3RpZmljYXRpb24tYnViYmxlLWFjdGlvbnMgYnV0dG9uLnN1Y2Nlc3M6aG92ZXI6bm90KDpkaXNhYmxlZCl7ZmlsdGVyOmJyaWdodG5lc3MoMS4xKX0ubm90aWZpY2F0aW9uLWJ1YmJsZS51cGRhdGUtY2FyZHt3aWR0aDptaW4oMzYwcHgsY2FsYygxMDB2dyAtIDI0cHgpKTttYXgtd2lkdGg6bWluKDM2MHB4LGNhbGMoMTAwdncgLSAyNHB4KSk7bWluLXdpZHRoOjA7cGFkZGluZzoxNHB4IDE0cHggMTJweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoMTIwJSAxMjAlIGF0IDAlIDAlLHZhcigtLWFjY2VudC1tdXRlZCkgMCUsdHJhbnNwYXJlbnQgNTUlKSxsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWJnLWVsZXZhdGVkKSAwJSx2YXIoLS1iZy1wcmltYXJ5KSAxMDAlKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdHJvbmcpO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXhsKSwwIDAgMCAxcHggI2ZmZjYgaW5zZXQ7b3ZlcmZsb3c6aGlkZGVuO2lzb2xhdGlvbjppc29sYXRlfS51cGRhdGUtY2FyZC1zaGluZXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTE1ZGVnLHRyYW5zcGFyZW50IDAlLHJnYmEoMjU1LDI1NSwyNTUsLjE4KSA0NSUscmdiYSgyNTUsMjU1LDI1NSwuMzIpIDUwJSxyZ2JhKDI1NSwyNTUsMjU1LC4xOCkgNTUlLHRyYW5zcGFyZW50IDEwMCUpO2JhY2tncm91bmQtc2l6ZToyMjAlIDEwMCU7YmFja2dyb3VuZC1wb3NpdGlvbjoxMjAlIDA7bWl4LWJsZW5kLW1vZGU6b3ZlcmxheTtvcGFjaXR5Oi42NTthbmltYXRpb246dXBkYXRlLWNhcmQtc2hpbmUgNnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7ei1pbmRleDowfUBrZXlmcmFtZXMgdXBkYXRlLWNhcmQtc2hpbmV7MCV7YmFja2dyb3VuZC1wb3NpdGlvbjoxMjAlIDB9NTUle2JhY2tncm91bmQtcG9zaXRpb246LTIwJSAwfXRve2JhY2tncm91bmQtcG9zaXRpb246LTIwJSAwfX0udXBkYXRlLWNhcmQuaXMtc3VjY2Vzc3tiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudCgxMjAlIDEyMCUgYXQgMCUgMCUsdmFyKC0tc3VjY2Vzcy1tdXRlZCkgMCUsdHJhbnNwYXJlbnQgNTUlKSxsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWJnLWVsZXZhdGVkKSAwJSx2YXIoLS1iZy1wcmltYXJ5KSAxMDAlKTtib3JkZXItY29sb3I6dmFyKC0tc3VjY2Vzcyk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3cteGwpLDAgMCAwIDFweCAjZmZmNiBpbnNldCx2YXIoLS1zaGFkb3ctZ2xvdy1zdWNjZXNzKX0udXBkYXRlLWNhcmQtaGVhZGVye3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6MTBweH0udXBkYXRlLWNhcmQtaWNvbnt3aWR0aDozMnB4O2hlaWdodDozMnB4O2ZsZXgtc2hyaW5rOjA7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjb2xvcjojZmZmO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZyx2YXIoLS1hY2NlbnQpIDAlLHZhcigtLWFjY2VudC1ob3ZlcikgMTAwJSk7Ym94LXNoYWRvdzowIDRweCAxMnB4IHZhcigtLWFjY2VudC1nbG93KSxpbnNldCAwIDFweCAjZmZmZmZmNTl9LnVwZGF0ZS1jYXJkLmlzLXN1Y2Nlc3MgLnVwZGF0ZS1jYXJkLWljb257YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHZhcigtLXN1Y2Nlc3MpIDAlLHZhcigtLXN1Y2Nlc3MtaG92ZXIpIDEwMCUpO2JveC1zaGFkb3c6MCA0cHggMTJweCB2YXIoLS1zdWNjZXNzLWdsb3cpLGluc2V0IDAgMXB4ICNmZmZmZmY1OX0udXBkYXRlLWNhcmQtaGVhZGluZ3tmbGV4OjE7bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MnB4fS51cGRhdGUtY2FyZC10aXRsZXtmb250LXNpemU6Ljg4cmVtO2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi4wMWVtO2xpbmUtaGVpZ2h0OjEuMjV9LnVwZGF0ZS1jYXJkLXN1YnRpdGxle2ZvbnQtc2l6ZTouNzJyZW07Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7bGluZS1oZWlnaHQ6MS4zNX0udXBkYXRlLWNhcmQtY2xvc2V7ZmxleC1zaHJpbms6MDt3aWR0aDoyNHB4O2hlaWdodDoyNHB4O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMsY29sb3IgLjE1c30udXBkYXRlLWNhcmQtY2xvc2U6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0udXBkYXRlLWNhcmQtdmVyc2lvbntwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7bWFyZ2luOjEycHggMCAxMHB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtmbGV4LXdyYXA6bm93cmFwfS51cGRhdGUtY2FyZC12ZXJzaW9uLWNoaXB7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCB1aS1tb25vc3BhY2UsICJTRiBNb25vIiwgTWVubG8sIENvbnNvbGFzLCBtb25vc3BhY2UpO2ZvbnQtc2l6ZTouNzRyZW07Zm9udC13ZWlnaHQ6NjAwO3BhZGRpbmc6M3B4IDEwcHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTt3aGl0ZS1zcGFjZTpub3dyYXB9LnVwZGF0ZS1jYXJkLXZlcnNpb24tY3VycmVudHtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KX0udXBkYXRlLWNhcmQtdmVyc2lvbi1sYXRlc3R7Y29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzowIDFweCA2cHggdmFyKC0tYWNjZW50LWdsb3cpfS51cGRhdGUtY2FyZC5pcy1zdWNjZXNzIC51cGRhdGUtY2FyZC12ZXJzaW9uLWxhdGVzdHtjb2xvcjp2YXIoLS1zdWNjZXNzKTtiYWNrZ3JvdW5kOnZhcigtLXN1Y2Nlc3MtbXV0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1zdWNjZXNzKTtib3gtc2hhZG93OjAgMXB4IDZweCB2YXIoLS1zdWNjZXNzLWdsb3cpfS51cGRhdGUtY2FyZC12ZXJzaW9uLWFycm93e2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZsZXgtc2hyaW5rOjB9LnVwZGF0ZS1jYXJkLXByb2dyZXNze3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTtoZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47bWFyZ2luOjA7dHJhbnNpdGlvbjpoZWlnaHQgLjI1cyBlYXNlLG1hcmdpbiAuMjVzIGVhc2V9LnVwZGF0ZS1jYXJkLXByb2dyZXNzLmFjdGl2ZXtoZWlnaHQ6NnB4O21hcmdpbjowIDAgMTBweH0udXBkYXRlLWNhcmQtcHJvZ3Jlc3MtdHJhY2t7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTtvdmVyZmxvdzpoaWRkZW59LnVwZGF0ZS1jYXJkLXByb2dyZXNzLWZpbGx7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDotNDAlO3dpZHRoOjQwJTtoZWlnaHQ6MTAwJTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyx2YXIoLS1hY2NlbnQpIDAlLHZhcigtLWFjY2VudC1ob3ZlcikgMTAwJSk7Ym94LXNoYWRvdzowIDAgMTBweCB2YXIoLS1hY2NlbnQtZ2xvdyk7YW5pbWF0aW9uOnVwZGF0ZS1jYXJkLXByb2dyZXNzLXN3ZWVwIDEuNHMgY3ViaWMtYmV6aWVyKC42NSwuMDUsLjM1LDEpIGluZmluaXRlfUBrZXlmcmFtZXMgdXBkYXRlLWNhcmQtcHJvZ3Jlc3Mtc3dlZXB7MCV7bGVmdDotNDUlO3dpZHRoOjQwJX01MCV7bGVmdDoyNSU7d2lkdGg6NTUlfXRve2xlZnQ6MTA1JTt3aWR0aDo0MCV9fS51cGRhdGUtY2FyZC1zdGF0dXN7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO2ZvbnQtc2l6ZTouNzJyZW07bGluZS1oZWlnaHQ6MS40O3BhZGRpbmc6NnB4IDEwcHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO21hcmdpbi1ib3R0b206MTBweDtiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKX0udXBkYXRlLWNhcmQtc3RhdHVzLmVycm9ye2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKTtjb2xvcjp2YXIoLS1kYW5nZXIpO2JvcmRlci1jb2xvcjp2YXIoLS1kYW5nZXIpfS51cGRhdGUtY2FyZC1zdGF0dXMuc3VjY2Vzc3tiYWNrZ3JvdW5kOnZhcigtLXN1Y2Nlc3MtbXV0ZWQpO2NvbG9yOnZhcigtLXN1Y2Nlc3MpO2JvcmRlci1jb2xvcjp2YXIoLS1zdWNjZXNzKX0udXBkYXRlLWNhcmQtYWN0aW9uc3twb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtnYXA6OHB4fS51cGRhdGUtY2FyZC1hY3Rpb257Zm9udC1zaXplOi43OHJlbTtmb250LXdlaWdodDo2MDA7cGFkZGluZzo3cHggMTZweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3RyYW5zaXRpb246dHJhbnNmb3JtIC4xMnMgZWFzZSxmaWx0ZXIgLjE1cyBlYXNlLGJveC1zaGFkb3cgLjE1cyBlYXNlfS51cGRhdGUtY2FyZC1hY3Rpb24tcHJpbWFyeXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsdmFyKC0tYWNjZW50KSAwJSx2YXIoLS1hY2NlbnQtaG92ZXIpIDEwMCUpO2NvbG9yOiNmZmY7Ym94LXNoYWRvdzowIDRweCAxMnB4IHZhcigtLWFjY2VudC1nbG93KSxpbnNldCAwIDFweCAjZmZmZmZmNDB9LnVwZGF0ZS1jYXJkLWFjdGlvbi1wcmltYXJ5OmhvdmVyOm5vdCg6ZGlzYWJsZWQpe2ZpbHRlcjpicmlnaHRuZXNzKDEuMDUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpO2JveC1zaGFkb3c6MCA2cHggMTZweCB2YXIoLS1hY2NlbnQtZ2xvdyksaW5zZXQgMCAxcHggI2ZmZmZmZjRkfS51cGRhdGUtY2FyZC1hY3Rpb24tcHJpbWFyeTphY3RpdmU6bm90KDpkaXNhYmxlZCl7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7ZmlsdGVyOmJyaWdodG5lc3MoLjk2KX0udXBkYXRlLWNhcmQtYWN0aW9uOmRpc2FibGVke29wYWNpdHk6Ljc7Y3Vyc29yOnByb2dyZXNzO2ZpbHRlcjpub25lO3RyYW5zZm9ybTpub25lfS51cGRhdGUtY2FyZC5pcy1zdWNjZXNzIC51cGRhdGUtY2FyZC1hY3Rpb24tcHJpbWFyeXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsdmFyKC0tc3VjY2VzcykgMCUsdmFyKC0tc3VjY2Vzcy1ob3ZlcikgMTAwJSk7Ym94LXNoYWRvdzowIDRweCAxMnB4IHZhcigtLXN1Y2Nlc3MtZ2xvdyksaW5zZXQgMCAxcHggI2ZmZmZmZjQwfS51cGRhdGUtY2FyZC5pcy1zdWNjZXNzIC51cGRhdGUtY2FyZC1hY3Rpb24tcHJpbWFyeTpob3Zlcjpub3QoOmRpc2FibGVkKXtib3gtc2hhZG93OjAgNnB4IDE2cHggdmFyKC0tc3VjY2Vzcy1nbG93KSxpbnNldCAwIDFweCAjZmZmZmZmNGR9LnJlc3RhcnQtb3ZlcmxheXtwb3NpdGlvbjpmaXhlZDtpbnNldDowO3otaW5kZXg6OTk5OTk7YmFja2dyb3VuZDojMDAwMDAwYTY7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JhY2tkcm9wLWZpbHRlcjpibHVyKDRweCk7YW5pbWF0aW9uOnJlc3RhcnQtZmFkZS1pbiAuM3MgZWFzZX0ucmVzdGFydC1vdmVybGF5LWNvbnRlbnR7dGV4dC1hbGlnbjpjZW50ZXI7Y29sb3I6I2ZmZn0ucmVzdGFydC10aXRsZXtmb250LXNpemU6MS4yNXJlbTtmb250LXdlaWdodDo2MDA7bWFyZ2luLWJvdHRvbTo4cHh9LnJlc3RhcnQtc3VidGl0bGV7Zm9udC1zaXplOi45cmVtO29wYWNpdHk6Ljh9LnJlc3RhcnQtc3Bpbm5lcnt3aWR0aDozNnB4O2hlaWdodDozNnB4O21hcmdpbjowIGF1dG8gMTZweDtib3JkZXI6M3B4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjI1KTtib3JkZXItdG9wLWNvbG9yOiNmZmY7Ym9yZGVyLXJhZGl1czo1MCU7YW5pbWF0aW9uOnJlc3RhcnQtc3BpbiAuOHMgbGluZWFyIGluZmluaXRlfUBrZXlmcmFtZXMgcmVzdGFydC1zcGlue3Rve3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKX19QGtleWZyYW1lcyByZXN0YXJ0LWZhZGUtaW57MCV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19LmZpbGUtcHJldmlldy1vdmVybGF5e3Bvc2l0aW9uOmZpeGVkO2luc2V0OjA7YmFja2dyb3VuZDojMDAwMDAwODA7ei1pbmRleDoxMDAwO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjthbmltYXRpb246ZmFkZS1pbiAuMTVzIGVhc2V9QGtleWZyYW1lcyBmYWRlLWluezAle29wYWNpdHk6MH10b3tvcGFjaXR5OjF9fS5zZXR0aW5ncy1tb2RhbHt3aWR0aDptaW4oMTA4MHB4LDEwMCUpO21heC13aWR0aDoxMDgwcHg7aGVpZ2h0Om1pbig4OHZoLDkyMHB4KTttYXgtaGVpZ2h0Om1pbig4OHZoLDkyMHB4KTttaW4taGVpZ2h0Om1pbig4OHZoLDkyMHB4KTtvdmVyZmxvdzpoaWRkZW59LnNldHRpbmdzLW1vZGFsLWhlYWRlcnthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDoxNnB4O3BhZGRpbmctYm90dG9tOjE0cHh9LnNldHRpbmdzLW1vZGFsLXRpdGxlLWdyb3Vwe2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjRweDttaW4td2lkdGg6MH0uc2V0dGluZ3MtbW9kYWwtc3VidGl0bGV7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjV9LnNldHRpbmdzLW1vZGFsLWJvZHl7cGFkZGluZy10b3A6MThweDtmbGV4OjEgMSBhdXRvO21pbi1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uc2V0dGluZ3MtbGF5b3V0e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MjYwcHggbWlubWF4KDAsMWZyKTtnYXA6MjJweDttaW4taGVpZ2h0OjA7ZmxleDoxIDEgYXV0bzthbGlnbi1pdGVtczpzdHJldGNofS5zZXR0aW5ncy1sYXlvdXQ+KnttaW4taGVpZ2h0OjB9LnNldHRpbmdzLXNpZGViYXJ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTRweDttaW4td2lkdGg6MDttaW4taGVpZ2h0OjA7cGFkZGluZy1yaWdodDo2cHg7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtvdmVyZmxvdzpoaWRkZW59LnNldHRpbmdzLXNpZGViYXItaGVhZGVyLC5zZXR0aW5ncy1zaWRlYmFyLXRpdGxlLC5zZXR0aW5ncy1zaWRlYmFyLWhpbnR7ZmxleC1zaHJpbms6MH0uc2V0dGluZ3Mtc2lkZWJhci1oZWFkZXJ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NHB4O3BhZGRpbmc6MnB4IDRweCAwfS5zZXR0aW5ncy1zaWRlYmFyLXRpdGxle2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi4wMWVtfS5zZXR0aW5ncy1zaWRlYmFyLWhpbnR7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjV9LnNldHRpbmdzLXRhYnN7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6OHB4O21hcmdpbjowO3BhZGRpbmc6MCAxMHB4IDAgMDttaW4taGVpZ2h0OjA7b3ZlcmZsb3c6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjI7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0uc2V0dGluZ3MtdGFiczo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6NnB4O2hlaWdodDo2cHh9LnNldHRpbmdzLXRhYnM6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6Izk2NzY1NTM4O2JvcmRlci1yYWRpdXM6OTk5cHh9LnNldHRpbmdzLXRhYnM6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6Izk2NzY1NTVjfS5zZXR0aW5ncy10YWJze3Njcm9sbGJhci13aWR0aDp0aGlufS5zZXR0aW5ncy10YWJ7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo0cHg7d2lkdGg6MTAwJTtwYWRkaW5nOjEycHggMTRweCAxMnB4IDE2cHg7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YmFja2dyb3VuZDojZmZmZmZmOGM7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjE2cHg7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpjb2xvciAuMTVzLGJvcmRlci1jb2xvciAuMTVzLGJhY2tncm91bmQgLjE1cyxib3gtc2hhZG93IC4xNXMsdHJhbnNmb3JtIC4xNXM7dGV4dC1hbGlnbjpsZWZ0fS5zZXR0aW5ncy10YWI6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDoxMHB4O2JvdHRvbToxMHB4O3dpZHRoOjNweDtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMgZWFzZX0uc2V0dGluZ3MtdGFiOmhvdmVye2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7YmFja2dyb3VuZDojYzU2NTNkMTQ7Ym9yZGVyLWNvbG9yOiNjNTY1M2QxZjt0cmFuc2Zvcm06dHJhbnNsYXRlKDJweCl9LnNldHRpbmdzLXRhYjpmb2N1cy12aXNpYmxle291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWFjY2VudCk7b3V0bGluZS1vZmZzZXQ6MnB4fS5zZXR0aW5ncy10YWIuYWN0aXZle2NvbG9yOnZhcigtLWFjY2VudCk7Ym9yZGVyLWNvbG9yOiNmZmZmZmZiMztiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmNmN2ViLCNmZmY0ZThiOCk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTRweCkgc2F0dXJhdGUoMTgwJSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxNHB4KSBzYXR1cmF0ZSgxODAlKTtib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCAjYzU2NTNkMzgsaW5zZXQgMCAxcHggI2ZmZmZmZmU2LGluc2V0IDAgLTFweCAjYzU2NTNkMGYsMCA0cHggMTRweCAtNHB4ICNjNTY1M2QzOCwwIDFweCAzcHggIzdkNWIzOTBhfS5zZXR0aW5ncy10YWIuYWN0aXZlOmJlZm9yZXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCl9LnNldHRpbmdzLXRhYi1tYWlue2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjppbmhlcml0O2xpbmUtaGVpZ2h0OjEuM30uc2V0dGluZ3MtdGFiLW1ldGF7Zm9udC1zaXplOi43NXJlbTtmb250LXdlaWdodDo1MDA7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGluZS1oZWlnaHQ6MS40NX0uc2V0dGluZ3MtdGFiLmFjdGl2ZSAuc2V0dGluZ3MtdGFiLW1ldGF7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS5zZXR0aW5ncy1jb250ZW50e21pbi13aWR0aDowO21pbi1oZWlnaHQ6MDtoZWlnaHQ6MTAwJTtvdmVyZmxvdzphdXRvO3BhZGRpbmctcmlnaHQ6NHB4fS5zZXR0aW5ncy1wYW5lbHtkaXNwbGF5Om5vbmU7bWluLWhlaWdodDoxMDAlO3BhZGRpbmc6MnB4IDJweCA4cHh9LnNldHRpbmdzLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjhweH0uc2V0dGluZ3MtY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZDojOTY3NjU1M2Q7Ym9yZGVyLXJhZGl1czo5OTlweH0uc2V0dGluZ3MtY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXJ7YmFja2dyb3VuZDojOTY3NjU1NjF9LnNldHRpbmdzLWNvbnRlbnR7c2Nyb2xsYmFyLXdpZHRoOnRoaW59LnNldHRpbmdzLXBhbmVsLmFjdGl2ZXtkaXNwbGF5OmJsb2NrO2FuaW1hdGlvbjpmYWRlLWluIC4xOHMgZWFzZX0uc2V0dGluZ3MtcGFuZWwtaGVhZGVye2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjZweDttYXJnaW46MCAwIDE0cHg7cGFkZGluZy1ib3R0b206MTJweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMTIpfS5zZXR0aW5ncy1wYW5lbC10aXRsZXtmb250LXNpemU6MS4wNjI1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xpbmUtaGVpZ2h0OjEuMjtsZXR0ZXItc3BhY2luZzotLjAxZW19LnNldHRpbmdzLXBhbmVsLWRlc2N7Zm9udC1zaXplOi44MTI1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtsaW5lLWhlaWdodDoxLjU1fS5zZXR0aW5ncy1wYW5lbD4uc2V0dGluZ3Mtc2VjdGlvbi10aXRsZXttYXJnaW4tdG9wOjE4cHh9LnNldHRpbmdzLXBhbmVsPi5zZXR0aW5ncy1zZWN0aW9uLXRpdGxlOmZpcnN0LW9mLXR5cGV7bWFyZ2luLXRvcDowfS5zZXR0aW5ncy1wYW5lbD4uZmllbGQtcm93LC5zZXR0aW5ncy1wYW5lbD4uZmllbGQsLnNldHRpbmdzLXBhbmVsPi5maWVsZC1oaW50e21heC13aWR0aDo3NjBweH0uc2V0dGluZ3MtcGFuZWw+LnN3aXRjaC1jYXJkLWxpc3QsLnNldHRpbmdzLXBhbmVsPi5zZXR0aW5ncy1jYXJkLC5zZXR0aW5ncy1wYW5lbD4uc2V0dGluZ3MtdXBkYXRlLXNlY3Rpb24sLnNldHRpbmdzLXBhbmVsPi5zZXR0aW5ncy1ub3RpZmljYXRpb24tc2VjdGlvbiwuc2V0dGluZ3MtcGFuZWw+I3ByZXNldHMtbGlzdHttYXgtd2lkdGg6ODYwcHh9LnNldHRpbmdzLXBhbmVsPi5zZXR0aW5ncy1jYXJkKy5zZXR0aW5ncy1jYXJkLC5zZXR0aW5ncy1wYW5lbD4uc2V0dGluZ3MtdXBkYXRlLXNlY3Rpb24rLnNldHRpbmdzLXVwZGF0ZS1zZWN0aW9uLC5zZXR0aW5ncy1wYW5lbD4uc2V0dGluZ3Mtbm90aWZpY2F0aW9uLXNlY3Rpb24rLnNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9ue21hcmdpbi10b3A6MTRweH0uc2V0dGluZ3MtcGFuZWxbaGlkZGVuXXtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fUBtZWRpYShtYXgtd2lkdGg6OTAwcHgpey5zZXR0aW5ncy1sYXlvdXR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjIyMHB4IG1pbm1heCgwLDFmcik7Z2FwOjE4cHh9fUBtZWRpYShtYXgtd2lkdGg6NzY4cHgpey5zZXR0aW5ncy1tb2RhbHt3aWR0aDptaW4oMTAwJSw3MjBweCk7aGVpZ2h0Om1pbig5MnZoLDkyMHB4KTttYXgtaGVpZ2h0Om1pbig5MnZoLDkyMHB4KTttaW4taGVpZ2h0Om1pbig5MnZoLDkyMHB4KX0uc2V0dGluZ3MtbW9kYWwtYm9keXtvdmVyZmxvdy15OmF1dG99LnNldHRpbmdzLWxheW91dHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKTtnYXA6MTRweDtmbGV4OjAgMCBhdXRvfS5zZXR0aW5ncy1zaWRlYmFye3BhZGRpbmctcmlnaHQ6MDtib3JkZXItcmlnaHQ6bm9uZX0uc2V0dGluZ3MtdGFic3tmbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC13cmFwOm5vd3JhcDtvdmVyZmxvdy14OmF1dG87c2Nyb2xsYmFyLXdpZHRoOm5vbmU7cGFkZGluZy1yaWdodDowO3BhZGRpbmctYm90dG9tOjRweH0uc2V0dGluZ3MtdGFiczo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfS5zZXR0aW5ncy10YWJ7ZmxleDowIDAgMjAwcHg7bWluLWhlaWdodDo3MnB4fS5zZXR0aW5ncy10YWI6aG92ZXJ7dHJhbnNmb3JtOm5vbmV9LnNldHRpbmdzLWNvbnRlbnR7b3ZlcmZsb3c6dmlzaWJsZTtwYWRkaW5nLXJpZ2h0OjB9fUBtZWRpYShtYXgtd2lkdGg6NDgwcHgpey5zZXR0aW5ncy10YWJ7ZmxleC1iYXNpczoxODBweDtwYWRkaW5nOjEwcHggMTJweCAxMHB4IDE0cHh9LnNldHRpbmdzLXRhYi1tYWlue2ZvbnQtc2l6ZTouODEyNXJlbX0uc2V0dGluZ3MtdGFiLW1ldGF7Zm9udC1zaXplOi42ODc1cmVtfX0uc2V0dGluZ3MtYWJvdXQtaW5mb3tkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDowO21hcmdpbi1ib3R0b206MThweDtiYWNrZ3JvdW5kOiNmZmZmZmY4MDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWxnKTtwYWRkaW5nOjRweCAxNnB4O2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXhzKX0uc2V0dGluZ3MtYWJvdXQtcm93e2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjE0cHg7Zm9udC1zaXplOi44MTI1cmVtO3BhZGRpbmc6MTJweCAwO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpfS5zZXR0aW5ncy1hYm91dC1yb3c6bGFzdC1jaGlsZHtib3JkZXItYm90dG9tOm5vbmV9LnNldHRpbmdzLWxhYmVse2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXdlaWdodDo2MDA7ZmxleDowIDAgMTEycHh9LnNldHRpbmdzLXZhbHVle2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjhyZW07bWluLXdpZHRoOjA7dGV4dC1hbGlnbjpyaWdodDt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9LnNldHRpbmdzLXZhbHVlIGF7Y29sb3I6dmFyKC0tYWNjZW50KTt0ZXh0LWRlY29yYXRpb246bm9uZX0uc2V0dGluZ3MtdmFsdWUgYTpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5zZXR0aW5ncy11cGRhdGUtc2VjdGlvbiwuc2V0dGluZ3Mtbm90aWZpY2F0aW9uLXNlY3Rpb24sLnNldHRpbmdzLWNhcmQsLnN3aXRjaC1jYXJkLC5wcmVzZXQtaXRlbXtib3gtc2hhZG93OnZhcigtLXNoYWRvdy14cyl9LnNldHRpbmdzLXVwZGF0ZS1zZWN0aW9uLC5zZXR0aW5ncy1ub3RpZmljYXRpb24tc2VjdGlvbnttYXJnaW4tdG9wOjE0cHg7cGFkZGluZzoxNnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbGcpO2JhY2tncm91bmQ6I2ZmZmZmZjdhfS5zZXR0aW5ncy1zZWN0aW9uLXRpdGxle2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO21hcmdpbjowIDAgMTJweDtsZXR0ZXItc3BhY2luZzouMDFlbX0uc2V0dGluZ3MtdXBkYXRlLWFjdGlvbnMsLnNldHRpbmdzLWFjdGlvbnN7ZGlzcGxheTpmbGV4O2dhcDoxMHB4O2ZsZXgtd3JhcDp3cmFwO21hcmdpbi10b3A6MTJweH0uc2V0dGluZ3MtYWN0aW9ucy1zdGlja3l7cG9zaXRpb246c3RpY2t5O2JvdHRvbTowO3BhZGRpbmctdG9wOjE2cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZiZjUwMCwjZmZmYmY1ZmEgMjhweCk7ei1pbmRleDoxO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0uc2V0dGluZ3Mtc3RhdHVzLW1lc3NhZ2V7bWFyZ2luLXRvcDoxMHB4fS5zZXR0aW5ncy1pbmxpbmUtaGludHttYXJnaW4tdG9wOi00cHg7bWFyZ2luLWJvdHRvbToxMnB4fS5zZXR0aW5ncy1jb25uZWN0LXVybC1ib3h7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtiYWNrZ3JvdW5kOiNmZmZmZmZiODtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6MTJweDtwYWRkaW5nOjEwcHggMTJweDttYXJnaW4tdG9wOjZweH0uc2V0dGluZ3MtY29ubmVjdC11cmwtdGV4dHtmbGV4OjE7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCBtb25vc3BhY2UpO2ZvbnQtc2l6ZToxM3B4O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7d29yZC1icmVhazpicmVhay1hbGw7dXNlci1zZWxlY3Q6YWxsOy13ZWJraXQtdXNlci1zZWxlY3Q6YWxsfS5zZXR0aW5ncy1jb25uZWN0LXFyLWJveHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDttYXJnaW4tdG9wOjE0cHh9LnNldHRpbmdzLWNvbm5lY3QtcXItd3JhcHtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoyMDBweDtoZWlnaHQ6MjAwcHg7cGFkZGluZzoxMHB4O2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6MTZweDtib3gtc2hhZG93OjAgNHB4IDEycHggIzdkNWIzOTE0O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xNXMgZWFzZSxib3gtc2hhZG93IC4xNXMgZWFzZTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnNldHRpbmdzLWNvbm5lY3QtcXItd3JhcDpob3Zlcnt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNnB4IDE2cHggIzdkNWIzOTFmfS5zZXR0aW5ncy1jb25uZWN0LXFyLXdyYXAgY2FudmFze2Rpc3BsYXk6YmxvY2s7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDAlfS5zZXR0aW5ncy1jb25uZWN0LXFyLWVtcHR5e3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZToxMnB4O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtwb2ludGVyLWV2ZW50czpub25lfS5zZXR0aW5ncy1jb25uZWN0LXFyLWhpbnR7bWFyZ2luOjA7Zm9udC1zaXplOjEycHg7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO3RleHQtYWxpZ246Y2VudGVyO21heC13aWR0aDoyODBweH0uY29ubmVjdC1xci1tb2RhbC1vdmVybGF5e3Bvc2l0aW9uOmZpeGVkO2luc2V0OjA7YmFja2dyb3VuZDojMTQwZTA4OGM7YmFja2Ryb3AtZmlsdGVyOmJsdXIoNnB4KTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDZweCk7ei1pbmRleDo5OTk5O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjI0cHh9LmNvbm5lY3QtcXItbW9kYWwtY2FyZHtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLXJhZGl1czoyMHB4O3BhZGRpbmc6MjRweDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTRweDtib3gtc2hhZG93OjAgMjBweCA2MHB4ICMwMDAwMDA1OX0uY29ubmVjdC1xci1tb2RhbC1jYXJkIGNhbnZhc3tkaXNwbGF5OmJsb2NrO2JvcmRlci1yYWRpdXM6OHB4fS5jb25uZWN0LXFyLW1vZGFsLWhpbnR7bWFyZ2luOjA7Zm9udC1zaXplOjEzcHg7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO3RleHQtYWxpZ246Y2VudGVyfS5maWVsZC1yb3d7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMixtaW5tYXgoMCwxZnIpKTtnYXA6MTRweDttYXJnaW4tYm90dG9tOjE0cHh9LmZpZWxkLXJvdyAuZmllbGR7bWFyZ2luLWJvdHRvbTowfS5zZXR0aW5ncy1jYXJke2JhY2tncm91bmQ6I2ZmZmZmZjg1O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbGcpO3BhZGRpbmc6MThweDttYXJnaW4tYm90dG9tOjE0cHh9LnNldHRpbmdzLWNhcmQgLmZpZWxkOmxhc3Qtb2YtdHlwZXttYXJnaW4tYm90dG9tOjEycHh9LnNldHRpbmdzLWNhcmQgLnNldHRpbmdzLXNlY3Rpb24tdGl0bGV7bWFyZ2luLXRvcDowfS5zZXR0aW5ncy1jYXJkIC5maWVsZC1pbnB1dHtiYWNrZ3JvdW5kOiNmZmZmZmZiOH0uc2V0dGluZ3MtY2FyZCAuYnRuLWJsb2Nre21hcmdpbi1ib3R0b206MH0uc2V0dGluZ3MtcGFuZWwgLmJ0bi1ibG9ja3ttaW4taGVpZ2h0OjQ0cHh9LnNldHRpbmdzLXBhbmVsIC5oaW50LC5zZXR0aW5ncy1wYW5lbCAuZmllbGQtaGludHtsaW5lLWhlaWdodDoxLjU1fS5zZXR0aW5ncy1wYW5lbCBpbnB1dFt0eXBlPXJhbmdlXXt3aWR0aDoxMDAlfS5zZXR0aW5ncy1wYW5lbCBjb2Rle21heC13aWR0aDoxMDAlfS5zZXR0aW5ncy1wYW5lbCAuaGlkZGVuKy5oaW50e21hcmdpbi10b3A6MH0uc2V0dGluZ3MtcGFuZWwgLmZpZWxkLWlucHV0LC5zZXR0aW5ncy1wYW5lbCAuZmllbGQtc2VsZWN0e3dpZHRoOjEwMCV9LnNldHRpbmdzLXBhbmVsIC5idG4tc217bWluLWhlaWdodDozNHB4fS5zZXR0aW5ncy1wYW5lbCAuZXJyb3ItbWVzc2FnZSwuc2V0dGluZ3MtcGFuZWwgLmhpbnQuaGlkZGVuLC5zZXR0aW5ncy1wYW5lbCAuZXJyb3ItbWVzc2FnZS5oaWRkZW57bWFyZ2luLXRvcDoxMHB4fS5zZXR0aW5ncy1wYW5lbCAjcHJlc2V0cy1saXN0OmVtcHR5OmJlZm9yZXtjb250ZW50OiJcNTJhMFw4ZjdkXDRlMmQuLi4iO2Rpc3BsYXk6YmxvY2s7cGFkZGluZzoxOHB4O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtc2l6ZTouODEyNXJlbX1AbWVkaWEobWF4LXdpZHRoOjc2OHB4KXsuc2V0dGluZ3MtYWJvdXQtcm93e2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9LnNldHRpbmdzLXVwZGF0ZS1hY3Rpb25zLC5zZXR0aW5ncy1hY3Rpb25ze2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uc2V0dGluZ3MtdXBkYXRlLWFjdGlvbnMgLmJ0biwuc2V0dGluZ3MtYWN0aW9ucyAuYnRue3dpZHRoOjEwMCV9LnNldHRpbmdzLWNvbm5lY3QtdXJsLWJveHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6c3RyZXRjaH19QG1lZGlhKG1heC13aWR0aDo2NDBweCl7LnNldHRpbmdzLW1vZGFsLWhlYWRlcntnYXA6MTBweH0uc2V0dGluZ3MtbW9kYWwtc3VidGl0bGV7Zm9udC1zaXplOi42ODc1cmVtfS5zZXR0aW5ncy1wYW5lbHtwYWRkaW5nLWxlZnQ6MDtwYWRkaW5nLXJpZ2h0OjB9LnNldHRpbmdzLWFib3V0LWluZm8sLnNldHRpbmdzLXVwZGF0ZS1zZWN0aW9uLC5zZXR0aW5ncy1ub3RpZmljYXRpb24tc2VjdGlvbiwuc2V0dGluZ3MtY2FyZHtwYWRkaW5nLWxlZnQ6MTRweDtwYWRkaW5nLXJpZ2h0OjE0cHh9LnNldHRpbmdzLWFib3V0LXJvd3tmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6c3RyZXRjaDtnYXA6NHB4fS5zZXR0aW5ncy1sYWJlbCwuc2V0dGluZ3MtdmFsdWV7ZmxleDpub25lO3RleHQtYWxpZ246bGVmdH0uc2V0dGluZ3MtcGFuZWwgLmJ0bi1pY29ue21pbi13aWR0aDozNHB4O21pbi1oZWlnaHQ6MzRweH19QG1lZGlhKG1pbi13aWR0aDo3NjlweCl7LnNldHRpbmdzLXBhbmVsIC5idG4tYmxvY2t7d2lkdGg6YXV0bzttaW4td2lkdGg6MTgwcHh9fUBzdXBwb3J0cyBub3QgKHBvc2l0aW9uOiBzdGlja3kpey5zZXR0aW5ncy10YWJzLC5zZXR0aW5ncy1hY3Rpb25zLXN0aWNreXtwb3NpdGlvbjpzdGF0aWN9fS5lbXB0eS1zdGF0ZS1jb21wYWN0e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzozMnB4IDE2cHg7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi44MTI1cmVtfS5lbXB0eS1zdGF0ZS1jb21wYWN0IC5lbXB0eS1pY29ue2ZvbnQtc2l6ZToxLjVyZW07b3BhY2l0eTouNX0uc3dpdGNoLWNhcmQtbGlzdHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMHB4fS5zd2l0Y2gtY2FyZHtkaXNwbGF5OmJsb2NrO2JhY2tncm91bmQ6I2ZmZmZmZjgwO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtib3JkZXItcmFkaXVzOjE0cHg7cGFkZGluZzoxNHB4IDE2cHg7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjJzLGJhY2tncm91bmQgLjJzLHRyYW5zZm9ybSAuMnM7dXNlci1zZWxlY3Q6bm9uZX0uc3dpdGNoLWNhcmQ6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpfS5zd2l0Y2gtY2FyZC1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweH0uc3dpdGNoLWNhcmQtdGl0bGV7ZmxleDoxO2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uc3dpdGNoLWNhcmQtZGVzY3tmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO21hcmdpbi10b3A6MDttYXgtaGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO29wYWNpdHk6MDt0cmFuc2l0aW9uOm1heC1oZWlnaHQgLjI1cyBlYXNlLG9wYWNpdHkgLjJzIGVhc2UsbWFyZ2luLXRvcCAuMjVzIGVhc2V9LnN3aXRjaC1jYXJkOmhhcyguc3dpdGNoLXRvZ2dsZTpjaGVja2VkKSAuc3dpdGNoLWNhcmQtZGVzY3ttYXgtaGVpZ2h0OjQwcHg7b3BhY2l0eToxO21hcmdpbi10b3A6OHB4fS5zd2l0Y2gtY2FyZDpoYXMoLnN3aXRjaC10b2dnbGU6Y2hlY2tlZCl7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hY2NlbnQpIDYlLHZhcigtLWJnLXNlY29uZGFyeSkpfS5zd2l0Y2gtdG9nZ2xle3Bvc2l0aW9uOmFic29sdXRlO29wYWNpdHk6MDt3aWR0aDowO2hlaWdodDowO3BvaW50ZXItZXZlbnRzOm5vbmV9LnN3aXRjaC1zbGlkZXJ7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6NDRweDtoZWlnaHQ6MjZweDttaW4td2lkdGg6NDRweDtib3JkZXItcmFkaXVzOjEzcHg7YmFja2dyb3VuZDojN2Q1YjM5Mzg7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggIzdkNWIzOTJlO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMjJzIGVhc2UsYm94LXNoYWRvdyAuMjJzIGVhc2U7Y3Vyc29yOnBvaW50ZXJ9LnN3aXRjaC1zbGlkZXI6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MnB4O2xlZnQ6MnB4O3dpZHRoOjIycHg7aGVpZ2h0OjIycHg7YmFja2dyb3VuZDojZmZmO2JvcmRlci1yYWRpdXM6NTAlO2JveC1zaGFkb3c6MCAycHggNHB4ICMxNDBlMDgyZSwwIDAgMCAuNXB4ICM3ZDViMzkwZjt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjRzIGN1YmljLWJlemllciguMzQsMS40LC42NCwxKX0uc3dpdGNoLXRvZ2dsZTpjaGVja2VkKy5zd2l0Y2gtc2xpZGVye2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCAjMDAwMDAwMWF9LnN3aXRjaC10b2dnbGU6Y2hlY2tlZCsuc3dpdGNoLXNsaWRlcjphZnRlcnt0cmFuc2Zvcm06dHJhbnNsYXRlKDE4cHgpfS5zd2l0Y2gtdG9nZ2xlOmZvY3VzLXZpc2libGUrLnN3aXRjaC1zbGlkZXJ7b3V0bGluZToycHggc29saWQgdmFyKC0tYWNjZW50KTtvdXRsaW5lLW9mZnNldDoycHh9LnByZXNldC1pdGVte2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEycHg7cGFkZGluZzoxMnB4IDE0cHg7YmFja2dyb3VuZDojZmZmZmZmODU7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjEycHg7bWFyZ2luLWJvdHRvbToxMHB4O2ZvbnQtc2l6ZTouODEyNXJlbX0ucHJlc2V0LWxhYmVse2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS5wcmVzZXQtZGV0YWlse21pbi13aWR0aDowO3RleHQtYWxpZ246cmlnaHQ7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi43NXJlbTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9QG1lZGlhKG1heC13aWR0aDo2NDBweCl7LnByZXNldC1pdGVte2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS5wcmVzZXQtZGV0YWlse3RleHQtYWxpZ246bGVmdH19LmZpbGUtcHJldmlldy1tb2RhbHt3aWR0aDptaW4oOTB2dyxtYXgoNjQwcHgsY2FsYygxMDB2dyAtIDM4MHB4KSkpO21heC13aWR0aDoxMDAwcHg7aGVpZ2h0Ojgwdmg7bWF4LWhlaWdodDo4NXZoO2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbGcpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtib3gtc2hhZG93OjAgMjBweCA2MHB4ICMwMDAwMDA0ZDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO292ZXJmbG93OmhpZGRlbjthbmltYXRpb246bW9kYWwtc2xpZGUtaW4gLjJzIGN1YmljLWJlemllciguNCwwLC4yLDEpfUBrZXlmcmFtZXMgbW9kYWwtc2xpZGUtaW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0yMHB4KSBzY2FsZSguOTgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSgxKX19QG1lZGlhKG1heC13aWR0aDo3NjhweCl7LmZpbGUtcHJldmlldy1vdmVybGF5e3BhZGRpbmc6MDthbGlnbi1pdGVtczpzdHJldGNoO2p1c3RpZnktY29udGVudDpzdHJldGNoO3RvcDp2YXIoLS1hcHAtdmlld3BvcnQtdG9wLCAwcHgpO2hlaWdodDp2YXIoLS1hcHAtdmlld3BvcnQtaGVpZ2h0LCAxMDBkdmgpfS5maWxlLXByZXZpZXctbW9kYWx7d2lkdGg6MTAwdnc7bWF4LXdpZHRoOjEwMHZ3O2hlaWdodDp2YXIoLS1hcHAtdmlld3BvcnQtaGVpZ2h0LCAxMDBkdmgpO21heC1oZWlnaHQ6dmFyKC0tYXBwLXZpZXdwb3J0LWhlaWdodCwgMTAwZHZoKTtib3JkZXItcmFkaXVzOjA7Ym9yZGVyOm5vbmU7Ym94LXNoYWRvdzpub25lO2FuaW1hdGlvbjpmYWRlLWluIC4xOHMgZWFzZX0uZmlsZS1wcmV2aWV3LWhlYWRlcntwYWRkaW5nOjEwcHggMTJweDtnYXA6OHB4O3BhZGRpbmctdG9wOm1heCgxMHB4LGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKSk7cGFkZGluZy1sZWZ0Om1heCgxMnB4LGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO3BhZGRpbmctcmlnaHQ6bWF4KDEycHgsZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpfS5maWxlLXByZXZpZXctdGl0bGV7Zm9udC1zaXplOi44NzVyZW07Z2FwOjZweDttaW4td2lkdGg6MDtmbGV4OjF9LmZpbGUtcHJldmlldy1maWxlbmFtZXttYXgtd2lkdGg6MTAwJX0uZmlsZS1wcmV2aWV3LXBhdGh7ZGlzcGxheTpub25lfS5maWxlLXByZXZpZXctdG9vbGJhcntnYXA6NHB4O2ZsZXgtc2hyaW5rOjB9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0bntwYWRkaW5nOjAgNnB4O2ZvbnQtc2l6ZTouNzVyZW19LmZpbGUtcHJldmlldy1jbG9zZXt3aWR0aDozNHB4O2hlaWdodDozNHB4O3BhZGRpbmc6MH0uZmlsZS1wcmV2aWV3LWljb257Zm9udC1zaXplOjEuMTI1cmVtfS5maWxlLXByZXZpZXctYm9keXtwYWRkaW5nLWJvdHRvbTplbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSl9fS5maWxlLXByZXZpZXctaGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEycHg7cGFkZGluZzoxMnB4IDE4cHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2ZsZXgtc2hyaW5rOjB9LmZpbGUtcHJldmlldy10aXRsZXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O2ZvbnQtc2l6ZTouOTM3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmbGV4OjE7bWluLXdpZHRoOjB9LmZpbGUtcHJldmlldy1pY29ue2ZvbnQtc2l6ZToxLjI1cmVtO2xpbmUtaGVpZ2h0OjE7ZmxleC1zaHJpbms6MH0uZmlsZS1wcmV2aWV3LW5hbWUtYmxvY2t7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MnB4O21pbi13aWR0aDowO2ZsZXg6MX0uZmlsZS1wcmV2aWV3LW5hbWUtcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpiYXNlbGluZTtnYXA6OHB4O21pbi13aWR0aDowfS5maWxlLXByZXZpZXctZmlsZW5hbWV7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtc2l6ZTouOTM3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsZXR0ZXItc3BhY2luZzouMDFlbTttaW4td2lkdGg6MH0uZmlsZS1wcmV2aWV3LXBhdGh7Zm9udC1zaXplOi43cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO21pbi13aWR0aDowO29wYWNpdHk6Ljh9LmZpbGUtcHJldmlldy1kaXJ0eXtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6I2M2NmExYTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjAyZW07ZmxleC1zaHJpbms6MDtwYWRkaW5nOjFweCA4cHg7YmFja2dyb3VuZDojYzY2YTFhMWE7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE5OCwxMDYsMjYsLjI1KTtib3JkZXItcmFkaXVzOjk5OXB4O2FuaW1hdGlvbjpkaXJ0eS1wdWxzZSAxLjZzIGVhc2UtaW4tb3V0IGluZmluaXRlfUBrZXlmcmFtZXMgZGlydHktcHVsc2V7MCUsdG97b3BhY2l0eTouNjV9NTAle29wYWNpdHk6MX19LmZpbGUtcHJldmlldy1sYW5ne2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo2MDA7cGFkZGluZzoycHggOHB4O2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2NvbG9yOnZhcigtLWFjY2VudCk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDIxMiwxNTIsOTksLjMpO2xldHRlci1zcGFjaW5nOi4wNGVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtmbGV4LXNocmluazowO2FsaWduLXNlbGY6Y2VudGVyfS5maWxlLXByZXZpZXctY2xvc2V7YmFja2dyb3VuZDpub25lO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Y3Vyc29yOnBvaW50ZXI7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7d2lkdGg6MzJweDtoZWlnaHQ6MzJweDtwYWRkaW5nOjA7Ym9yZGVyLXJhZGl1czo4cHg7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1cyxjb2xvciAuMTVzLGJvcmRlci1jb2xvciAuMTVzLHRyYW5zZm9ybSAuMTVzO2xpbmUtaGVpZ2h0OjE7ZmxleC1zaHJpbms6MH0uZmlsZS1wcmV2aWV3LWNsb3NlOmhvdmVye2JhY2tncm91bmQ6I2RjNDY0NjE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Ym9yZGVyLWNvbG9yOiNkYzQ2NDY0MH0uZmlsZS1wcmV2aWV3LWNsb3NlOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk0KX0uZmlsZS1wcmV2aWV3LWJvZHl7ZmxleDoxO292ZXJmbG93OmF1dG87bWluLWhlaWdodDowO3Njcm9sbGJhci13aWR0aDp0aGluO3Njcm9sbGJhci1jb2xvcjp2YXIoLS1ib3JkZXItZGVmYXVsdCkgdHJhbnNwYXJlbnR9LmZpbGUtcHJldmlldy1ib2R5Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo4cHg7aGVpZ2h0OjhweH0uZmlsZS1wcmV2aWV3LWJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LmZpbGUtcHJldmlldy1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOnZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOjRweH0uZmlsZS1wcmV2aWV3LWJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tdGV4dC1tdXRlZCl9LmZpbGUtcHJldmlldy1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci1jb3JuZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0uY29kZS1wcmV2aWV3LXdyYXBwZXJ7ZGlzcGxheTpmbGV4O2hlaWdodDoxMDAlO292ZXJmbG93LXg6YXV0bztvdmVyZmxvdy15OmhpZGRlbjtzY3JvbGxiYXItd2lkdGg6dGhpbjtzY3JvbGxiYXItY29sb3I6dmFyKC0tYm9yZGVyLWRlZmF1bHQpIHRyYW5zcGFyZW50fS5jb2RlLXByZXZpZXctd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6OHB4O2hlaWdodDo4cHh9LmNvZGUtcHJldmlldy13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5jb2RlLXByZXZpZXctd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZDp2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czo0cHh9LmNvZGUtcHJldmlldy13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLXRleHQtbXV0ZWQpfS5jb2RlLXByZXZpZXctbGluZXN7cGFkZGluZzoxNnB4IDEycHggMTZweCAxNnB4O3RleHQtYWxpZ246cmlnaHQ7dXNlci1zZWxlY3Q6bm9uZTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTp2YXIoLS1mb250LXNpemUtc20pO2xpbmUtaGVpZ2h0OnZhcigtLWxpbmUtaGVpZ2h0KTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSk7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO3dpZHRoOjUycHg7bWF4LXdpZHRoOjUycHg7ZmxleC1zaHJpbms6MDtvdmVyZmxvdzpoaWRkZW59LmNvZGUtcHJldmlldy1jb250ZW50e2ZsZXg6MTttaW4td2lkdGg6MDt3aWR0aDoxMDAlO3BhZGRpbmc6MTZweCAyMHB4O292ZXJmbG93LXg6YXV0bztvdmVyZmxvdy15OmF1dG99LmNvZGUtcHJldmlldy1jb250ZW50IHByZXttYXJnaW46MDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTp2YXIoLS1mb250LXNpemUtc20pO2xpbmUtaGVpZ2h0OnZhcigtLWxpbmUtaGVpZ2h0KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3doaXRlLXNwYWNlOnByZTt3b3JkLWJyZWFrOm5vcm1hbDtvdmVyZmxvdy13cmFwOm5vcm1hbH0uc3ludGF4LWtleXdvcmR7Y29sb3I6I2M2NzhkZH0uc3ludGF4LXN0cmluZ3tjb2xvcjojOThjMzc5fS5zeW50YXgtbnVtYmVye2NvbG9yOiNkMTlhNjZ9LnN5bnRheC1jb21tZW50e2NvbG9yOiM1YzYzNzA7Zm9udC1zdHlsZTppdGFsaWN9LnN5bnRheC1mdW5jdGlvbntjb2xvcjojNjFhZmVmfS5zeW50YXgtb3BlcmF0b3J7Y29sb3I6IzU2YjZjMn0uc3ludGF4LXR5cGV7Y29sb3I6I2U1YzA3Yn0uc3ludGF4LXB1bmN0dWF0aW9ue2NvbG9yOiNhYmIyYmZ9Lm1hcmtkb3duLXByZXZpZXd7cGFkZGluZzoyMHB4IDI4cHg7bGluZS1oZWlnaHQ6MS43O2ZvbnQtc2l6ZTouOTM3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS5tYXJrZG93bi1wcmV2aWV3IGgxLC5tYXJrZG93bi1wcmV2aWV3IGgyLC5tYXJrZG93bi1wcmV2aWV3IGgzLC5tYXJrZG93bi1wcmV2aWV3IGg0LC5tYXJrZG93bi1wcmV2aWV3IGg1LC5tYXJrZG93bi1wcmV2aWV3IGg2e21hcmdpbi10b3A6MS41ZW07bWFyZ2luLWJvdHRvbTouNWVtO2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxLjM7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0ubWFya2Rvd24tcHJldmlldyBoMXtmb250LXNpemU6MS43NXJlbTtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO3BhZGRpbmctYm90dG9tOi4zZW19Lm1hcmtkb3duLXByZXZpZXcgaDJ7Zm9udC1zaXplOjEuMzc1cmVtO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7cGFkZGluZy1ib3R0b206LjNlbX0ubWFya2Rvd24tcHJldmlldyBoM3tmb250LXNpemU6MS4xMjVyZW19Lm1hcmtkb3duLXByZXZpZXcgaDR7Zm9udC1zaXplOjFyZW19Lm1hcmtkb3duLXByZXZpZXcgcHttYXJnaW46Ljc1ZW0gMH0ubWFya2Rvd24tcHJldmlldyBhe2NvbG9yOnZhcigtLWFjY2VudCk7dGV4dC1kZWNvcmF0aW9uOm5vbmV9Lm1hcmtkb3duLXByZXZpZXcgYTpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5tYXJrZG93bi1wcmV2aWV3IGNvZGV7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7cGFkZGluZzoycHggNnB4O2JvcmRlci1yYWRpdXM6M3B4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44NzVlbTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcil9Lm1hcmtkb3duLXByZXZpZXcgcHJle2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO3BhZGRpbmc6MTZweDtvdmVyZmxvdy14OmF1dG87bWFyZ2luOjFlbSAwfS5tYXJrZG93bi1wcmV2aWV3IHByZSBjb2Rle2JhY2tncm91bmQ6bm9uZTtib3JkZXI6bm9uZTtwYWRkaW5nOjA7Zm9udC1zaXplOnZhcigtLWZvbnQtc2l6ZS1zbSl9Lm1hcmtkb3duLXByZXZpZXcgYmxvY2txdW90ZXtib3JkZXItbGVmdDo0cHggc29saWQgdmFyKC0tYWNjZW50KTttYXJnaW46MWVtIDA7cGFkZGluZzouNWVtIDFlbTtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSk7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JvcmRlci1yYWRpdXM6MCB2YXIoLS1yYWRpdXMtc20pIHZhcigtLXJhZGl1cy1zbSkgMH0ubWFya2Rvd24tcHJldmlldyB1bCwubWFya2Rvd24tcHJldmlldyBvbHtwYWRkaW5nLWxlZnQ6MS41ZW07bWFyZ2luOi43NWVtIDB9Lm1hcmtkb3duLXByZXZpZXcgbGl7bWFyZ2luOi4yNWVtIDB9Lm1hcmtkb3duLXByZXZpZXcgdGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO3dpZHRoOjEwMCU7bWFyZ2luOjFlbSAwO2ZvbnQtc2l6ZTouODc1cmVtfS5tYXJrZG93bi1wcmV2aWV3IHRoLC5tYXJrZG93bi1wcmV2aWV3IHRke2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtwYWRkaW5nOjhweCAxMnB4O3RleHQtYWxpZ246bGVmdH0ubWFya2Rvd24tcHJldmlldyB0aHtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSk7Zm9udC13ZWlnaHQ6NjAwfS5tYXJrZG93bi1wcmV2aWV3IHRyOm50aC1jaGlsZCgybil7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpfS5tYXJrZG93bi1wcmV2aWV3IGhye2JvcmRlcjpub25lO2JvcmRlci10b3A6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7bWFyZ2luOjEuNWVtIDB9Lm1hcmtkb3duLXByZXZpZXcgaW1ne21heC13aWR0aDoxMDAlO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKX0uZmlsZS1wcmV2aWV3LWxvYWRpbmd7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2hlaWdodDoxMDAlO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouODc1cmVtO2dhcDoxMHB4fS5maWxlLXByZXZpZXctbG9hZGluZzpiZWZvcmV7Y29udGVudDoiIjtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2JvcmRlcjoycHggc29saWQgdmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JvcmRlci10b3AtY29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItcmFkaXVzOjUwJTthbmltYXRpb246cHJldmlldy1zcGluIC43cyBsaW5lYXIgaW5maW5pdGV9QGtleWZyYW1lcyBwcmV2aWV3LXNwaW57dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX0uZmlsZS1wcmV2aWV3LWVycm9ye2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7aGVpZ2h0OjEwMCU7Z2FwOjhweDtjb2xvcjp2YXIoLS1kYW5nZXIpO2ZvbnQtc2l6ZTouODc1cmVtO3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmc6MjBweH0uZmlsZS1wcmV2aWV3LWVycm9yIC5wcmV2aWV3LWVycm9yLWljb257Zm9udC1zaXplOjJyZW07b3BhY2l0eTouNX0udHJlZS1pdGVtW2RhdGEtdHlwZT1maWxlXXtjdXJzb3I6cG9pbnRlcn0udHJlZS1pdGVtW2RhdGEtdHlwZT1maWxlXTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLWhvdmVyKX0udHJlZS1pdGVtW2RhdGEtdHlwZT1maWxlXTpob3ZlciAudHJlZS1uYW1le2NvbG9yOnZhcigtLWFjY2VudCl9LmZpbGUtZXhwbG9yZXItdXB7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MDt3aWR0aDozMHB4O2hlaWdodDozMHB4O2JvcmRlci1yYWRpdXM6OHB4O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSx0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTtmbGV4LXNocmluazowfS5maWxlLWV4cGxvcmVyLXVwOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1zdWJ0bGUpfS5maWxlLWV4cGxvcmVyLXVwOmFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KX0udHJlZS1tZXRhe2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtczttYXJnaW4tbGVmdDo2cHg7cGFkZGluZy1sZWZ0OjZweDttYXgtd2lkdGg6NzBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7b3BhY2l0eTouODV9LnRyZWUtaXRlbTpob3ZlciAudHJlZS1tZXRhe2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0udHJlZS10cnVuY2F0ZWR7cGFkZGluZzo4cHggMTRweDttYXJnaW46NHB4IDZweCA4cHg7Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtib3JkZXI6MXB4IGRhc2hlZCB2YXIoLS1ib3JkZXIpO2JvcmRlci1yYWRpdXM6NnB4O3RleHQtYWxpZ246Y2VudGVyfS5maWxlLWNvbnRleHQtbWVudXtwb3NpdGlvbjpmaXhlZDt6LWluZGV4OjExMDA7bWluLXdpZHRoOjIwMHB4O3BhZGRpbmc6NHB4O2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JvcmRlci1yYWRpdXM6MTBweDtib3gtc2hhZG93OjAgMTJweCAzNnB4ICMwMDAwMDAyZTthbmltYXRpb246Y3R4LWZhZGUtaW4gLjEycyBlYXNlfUBrZXlmcmFtZXMgY3R4LWZhZGUtaW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC00cHgpIHNjYWxlKC45OCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpfX0uZmlsZS1jb250ZXh0LW1lbnUtaXRlbXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O3dpZHRoOjEwMCU7cGFkZGluZzo4cHggMTJweDtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC1zaXplOi44MTI1cmVtO3RleHQtYWxpZ246bGVmdDtjdXJzb3I6cG9pbnRlcjtib3JkZXItcmFkaXVzOjZweDt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjEyc30uZmlsZS1jb250ZXh0LW1lbnUtaXRlbTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KX0uZmlsZS1jb250ZXh0LW1lbnUtaXRlbSAuY3R4LWljb257d2lkdGg6MThweDt0ZXh0LWFsaWduOmNlbnRlcjtvcGFjaXR5Oi44NX0ud2FuZC1taW5pLXRvYXN0e3Bvc2l0aW9uOmZpeGVkO3RvcDozMHB4O2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtMTRweCk7ei1pbmRleDoxMjAwO3BhZGRpbmc6OHB4IDE2cHg7YmFja2dyb3VuZDojMTQxNDE0ZWI7Y29sb3I6I2ZmZjtmb250LXNpemU6LjgxMjVyZW07Ym9yZGVyLXJhZGl1czo5OTlweDtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4xOHMgZWFzZSx0cmFuc2Zvcm0gLjE4cyBlYXNlO3BvaW50ZXItZXZlbnRzOm5vbmV9LndhbmQtbWluaS10b2FzdC5zaG93e29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpfS5maWxlLXByZXZpZXctdG9vbGJhcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHg7ZmxleC1zaHJpbms6MDttYXJnaW4tbGVmdDo4cHh9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0bntiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzowIDhweDttaW4td2lkdGg6MzBweDtoZWlnaHQ6MzBweDtnYXA6NnB4O2JvcmRlci1yYWRpdXM6OHB4O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXNpemU6Ljc1cmVtO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMsY29sb3IgLjE1cyxib3JkZXItY29sb3IgLjE1cyxib3gtc2hhZG93IC4xNXMsdHJhbnNmb3JtIC4xc30uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlcik7Ym94LXNoYWRvdzowIDFweCAzcHggIzAwMDAwMDBhfS5maWxlLXByZXZpZXctdG9vbGJhci1idG46YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTUpfS5maWxlLXByZXZpZXctdG9vbGJhci1idG46ZGlzYWJsZWR7b3BhY2l0eTouNTtjdXJzb3I6bm90LWFsbG93ZWQ7dHJhbnNmb3JtOm5vbmV9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0biAudG9vbGJhci1pY29ue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0biAudG9vbGJhci10ZXh0e2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMDFlbX0uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuLnRvb2xiYXItYWN0aXZle2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtjb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjojZDQ5ODYzNjZ9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0bi5wcmltYXJ5e2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtjb2xvcjojZmZmO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAxcHggMnB4ICM1OTNhMjAyNn0uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuLnByaW1hcnk6aG92ZXJ7YmFja2dyb3VuZDojYjg3YTQ3O2JvcmRlci1jb2xvcjojYjg3YTQ3O2NvbG9yOiNmZmY7Ym94LXNoYWRvdzowIDJweCA2cHggIzU5M2EyMDMzfS5maWxlLXByZXZpZXctdG9vbGJhci1idG4uZGFuZ2Vye2NvbG9yOiNjMDM5MmJ9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0bi5kYW5nZXI6aG92ZXJ7YmFja2dyb3VuZDojZGM0NjQ2MTQ7Ym9yZGVyLWNvbG9yOiNkYzQ2NDY0ZDtjb2xvcjojYTAyODE4fS5maWxlLXByZXZpZXctdG9vbGJhci1ncm91cHtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOnN0cmV0Y2g7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjhweDtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KX0uZmlsZS1wcmV2aWV3LXRvb2xiYXItZ3JvdXAgLmZpbGUtcHJldmlldy10b29sYmFyLWJ0bntib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudDttaW4td2lkdGg6MjhweDtoZWlnaHQ6MjhweDtib3gtc2hhZG93Om5vbmV9LmZpbGUtcHJldmlldy10b29sYmFyLWdyb3VwIC5maWxlLXByZXZpZXctdG9vbGJhci1idG46aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSl9LmZpbGUtcHJldmlldy10b29sYmFyLWdyb3VwbGFiZWx7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjAgNnB4O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2JvcmRlci1sZWZ0OjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KX0uZmlsZS1wcmV2aWV3LXRvb2xiYXIuZWRpdGluZ3tnYXA6NnB4fUBtZWRpYShtYXgtd2lkdGg6NzY4cHgpey5maWxlLXByZXZpZXctdG9vbGJhci1idG57aGVpZ2h0OjI4cHg7bWluLXdpZHRoOjI4cHg7cGFkZGluZzowIDZweH0uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuIC50b29sYmFyLXRleHR7ZGlzcGxheTpub25lfS5maWxlLXByZXZpZXctdG9vbGJhci1idG4ucHJpbWFyeSAudG9vbGJhci10ZXh0e2Rpc3BsYXk6aW5saW5lLWZsZXh9fS53YW5kLWljb257ZmxleC1zaHJpbms6MDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmNvZGUtcHJldmlldy1jb250ZW50IHByZS53cmFwe3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZH0uZmlsZS1wcmV2aWV3LWJvZHkuZWRpdGluZ3twYWRkaW5nOjA7YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KX0uY29kZS1lZGl0b3Itd3JhcHBlcntkaXNwbGF5OmZsZXg7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTttaW4taGVpZ2h0OjA7YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KX0uY29kZS1lZGl0b3ItdGV4dGFyZWF7ZmxleDoxO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7bWluLWhlaWdodDowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjE2cHggMjBweDttYXJnaW46MDtib3JkZXI6bm9uZTtvdXRsaW5lOm5vbmU7cmVzaXplOm5vbmU7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6dmFyKC0tZm9udC1zaXplLXNtKTtsaW5lLWhlaWdodDp2YXIoLS1saW5lLWhlaWdodCk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpO3RhYi1zaXplOjI7LW1vei10YWItc2l6ZToyO3doaXRlLXNwYWNlOnByZTtvdmVyZmxvdzphdXRvO2NhcmV0LWNvbG9yOnZhcigtLWFjY2VudCk7c2Nyb2xsYmFyLXdpZHRoOnRoaW47c2Nyb2xsYmFyLWNvbG9yOnZhcigtLWJvcmRlci1kZWZhdWx0KSB0cmFuc3BhcmVudH0uY29kZS1lZGl0b3ItdGV4dGFyZWE6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjhweDtoZWlnaHQ6OHB4fS5jb2RlLWVkaXRvci10ZXh0YXJlYTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2t7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0uY29kZS1lZGl0b3ItdGV4dGFyZWE6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6dmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JvcmRlci1yYWRpdXM6NHB4fS5jb2RlLWVkaXRvci10ZXh0YXJlYTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS10ZXh0LW11dGVkKX0uY29kZS1lZGl0b3ItdGV4dGFyZWE6Zm9jdXN7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAycHggI2Q0OTg2MzI2fS5maWxlLXByZXZpZXctYm9keS5raW5kLWltYWdle2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg0NWRlZyxyZ2JhKDAsMCwwLC4wNCkgMjUlLHRyYW5zcGFyZW50IDI1JSx0cmFuc3BhcmVudCA3NSUscmdiYSgwLDAsMCwuMDQpIDc1JSksbGluZWFyLWdyYWRpZW50KDQ1ZGVnLHJnYmEoMCwwLDAsLjA0KSAyNSUsdHJhbnNwYXJlbnQgMjUlLHRyYW5zcGFyZW50IDc1JSxyZ2JhKDAsMCwwLC4wNCkgNzUlKSx2YXIoLS1iZy1wcmltYXJ5KTtiYWNrZ3JvdW5kLXNpemU6MTZweCAxNnB4O2JhY2tncm91bmQtcG9zaXRpb246MCAwLDhweCA4cHh9LmltYWdlLXByZXZpZXctd3JhcHBlcnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtvdmVyZmxvdzphdXRvO3BhZGRpbmc6MTZweH0uaW1hZ2UtcHJldmlldy1pbWd7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDAlO29iamVjdC1maXQ6Y29udGFpbjtjdXJzb3I6em9vbS1pbjt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgZWFzZTtib3gtc2hhZG93OjAgNnB4IDIwcHggIzAwMDAwMDFmO2JvcmRlci1yYWRpdXM6NHB4O2JhY2tncm91bmQ6I2ZmZn0uaW1hZ2UtcHJldmlldy1pbWcuem9vbWVke21heC13aWR0aDpub25lO21heC1oZWlnaHQ6bm9uZTtjdXJzb3I6em9vbS1vdXQ7dHJhbnNmb3JtOnNjYWxlKDEpfS5maWxlLXByZXZpZXctYm9keS5raW5kLXBkZntwYWRkaW5nOjA7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpfS5wZGYtcHJldmlldy1mcmFtZXt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2JvcmRlcjpub25lO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KX0uZmlsZS1wcmV2aWV3LWJvZHkua2luZC12aWRlbywuZmlsZS1wcmV2aWV3LWJvZHkua2luZC1hdWRpb3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7YmFja2dyb3VuZDojMGQwZDBkfS5maWxlLXByZXZpZXctYm9keS5raW5kLWF1ZGlve2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KX0ubWVkaWEtcHJldmlldy13cmFwcGVye2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O21heC13aWR0aDoxMDAlO21heC1oZWlnaHQ6MTAwJTtwYWRkaW5nOjI0cHh9Lm1lZGlhLXByZXZpZXctdmlkZW97bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDpjYWxjKDEwMCUgLSA0MHB4KTtiYWNrZ3JvdW5kOiMwMDA7Ym9yZGVyLXJhZGl1czo0cHh9Lm1lZGlhLXByZXZpZXctYXVkaW97d2lkdGg6bWluKDQyMHB4LDkwJSl9Lm1lZGlhLXByZXZpZXctaWNvbntmb250LXNpemU6My41cmVtO29wYWNpdHk6Ljd9Lm1lZGlhLXByZXZpZXctbmFtZXtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LXNpemU6MXJlbTttYXgtd2lkdGg6MTAwJTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9Lm1lZGlhLXByZXZpZXctbWV0YXtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6Ljc1cmVtO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30uZmlsZS1wcmV2aWV3LWJvZHkua2luZC12aWRlbyAubWVkaWEtcHJldmlldy1tZXRhe2NvbG9yOiNmZmZmZmZiM30uZmlsZS1wcmV2aWV3LWJvZHkua2luZC1iaW5hcnl7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5iaW5hcnktcHJldmlldy1jYXJke21heC13aWR0aDo0ODBweDtwYWRkaW5nOjMycHggMjhweDt0ZXh0LWFsaWduOmNlbnRlcjtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWxnKTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweH0uYmluYXJ5LXByZXZpZXctaWNvbntmb250LXNpemU6M3JlbTtvcGFjaXR5Oi42fS5iaW5hcnktcHJldmlldy1uYW1le2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZvbnQtc2l6ZToxcmVtO3dvcmQtYnJlYWs6YnJlYWstYWxsfS5iaW5hcnktcHJldmlldy1tZXRhe2Rpc3BsYXk6ZmxleDtnYXA6NnB4O2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6Ljc1cmVtfS5iaW5hcnktcHJldmlldy1wYXRoe2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTttYXgtd2lkdGg6MTAwJTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LmJpbmFyeS1wcmV2aWV3LWFjdGlvbnN7ZGlzcGxheTpmbGV4O2dhcDo4cHg7bWFyZ2luLXRvcDo4cHg7ZmxleC13cmFwOndyYXA7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uYmluYXJ5LXByZXZpZXctYnRue3BhZGRpbmc6OHB4IDE2cHg7Ym9yZGVyLXJhZGl1czo2cHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LXNpemU6LjgxMjVyZW07Y3Vyc29yOnBvaW50ZXI7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMsYm9yZGVyLWNvbG9yIC4xNXMsY29sb3IgLjE1c30uYmluYXJ5LXByZXZpZXctYnRuOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtjb2xvcjp2YXIoLS1hY2NlbnQpfS50cmVlLWl0ZW17dHJhbnNpdGlvbjphbGwgLjJzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS50cmVlLWl0ZW06aG92ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZSg0cHgpfS50cmVlLWl0ZW06YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGUoMnB4KSBzY2FsZSguOTkpfS5maWxlLXNpZGUtcGFuZWx7dHJhbnNpdGlvbjpyaWdodCAuMzVzIHZhcigtLWVhc2Utb3V0LWV4cG8pLGJveC1zaGFkb3cgLjM1cyBlYXNlfS5maWxlLXNpZGUtcGFuZWwub3Blbntib3gtc2hhZG93Oi04cHggMCAzMnB4ICM1OTNhMjAxZn0uc3Bpbm5lcnthbmltYXRpb246c3BpbiAxcyBsaW5lYXIgaW5maW5pdGV9QGtleWZyYW1lcyBzcGlue3Rve3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKX19QGtleWZyYW1lcyBmbG9hdHswJSx0b3t0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX01MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLThweCl9fS5mbG9hdHthbmltYXRpb246ZmxvYXQgM3MgZWFzZS1pbi1vdXQgaW5maW5pdGV9LmNoYXQtbWVzc2FnZS1idWJibGV7LXdlYmtpdC11c2VyLXNlbGVjdDp0ZXh0O3VzZXItc2VsZWN0OnRleHR9Lm1zZy1jb3B5LWJ0bntkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOi0zMnB4O3JpZ2h0OjRweDtwYWRkaW5nOjRweCAxMHB4O2ZvbnQtc2l6ZTouNzVyZW07YmFja2dyb3VuZDp2YXIoLS1iZy1lbGV2YXRlZCk7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1tZCk7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7ei1pbmRleDoxMDt3aGl0ZS1zcGFjZTpub3dyYXA7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50O3RvdWNoLWFjdGlvbjptYW5pcHVsYXRpb259Lm1zZy1jb3B5LWJ0bi52aXNpYmxle2Rpc3BsYXk6YmxvY2t9Lm1zZy1jb3B5LWJ0bi5jb3BpZWR7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzLW11dGVkKTtjb2xvcjp2YXIoLS1zdWNjZXNzKTtib3JkZXItY29sb3I6dmFyKC0tc3VjY2Vzcyl9LmNoYXQtbWVzc2FnZXtwb3NpdGlvbjpyZWxhdGl2ZX0udGVybWluYWwtanVtcC1ib3R0b217ei1pbmRleDoyMH0uaW5wdXQtY29tcG9zZXIuaW4tZmxpZ2h0e2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH0uaW5wdXQtY29tcG9zZXIuaW4tZmxpZ2h0OmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMnB4O2xlZnQ6LTYwJTt3aWR0aDoyMjAlO2hlaWdodDozcHg7Ym9yZGVyLXJhZGl1czoxNHB4IDE0cHggMCAwO2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgMjgwcHggNHB4LHJnYmEodmFyKC0tYWNjZW50LXJnYiwgMTk3LCAxMDEsIDYxKSwuNDUpIDAlLHJnYmEodmFyKC0tYWNjZW50LXJnYiwgMTk3LCAxMDEsIDYxKSwuMTIpIDM1JSx0cmFuc3BhcmVudCA2MCUpIG5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6MjgwcHggNHB4O2FuaW1hdGlvbjpjb21wb3NlcldhdmVTbGlkZSA3cyBjdWJpYy1iZXppZXIoLjM1LDAsLjY1LDEpIGluZmluaXRlO3otaW5kZXg6Mjtwb2ludGVyLWV2ZW50czpub25lfS5pbnB1dC1jb21wb3Nlci5pbi1mbGlnaHQ6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTJweDtsZWZ0Oi02MCU7d2lkdGg6MjIwJTtoZWlnaHQ6M3B4O2JvcmRlci1yYWRpdXM6MTRweCAxNHB4IDAgMDtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChlbGxpcHNlIDIyMHB4IDNweCxyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjI1KSAwJSxyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjA2KSAzNSUsdHJhbnNwYXJlbnQgNjAlKSBuby1yZXBlYXQ7YmFja2dyb3VuZC1zaXplOjIyMHB4IDNweDthbmltYXRpb246Y29tcG9zZXJXYXZlU2xpZGUgOXMgY3ViaWMtYmV6aWVyKC4zNSwwLC42NSwxKSBpbmZpbml0ZSByZXZlcnNlO3otaW5kZXg6Mjtwb2ludGVyLWV2ZW50czpub25lfUBrZXlmcmFtZXMgY29tcG9zZXJXYXZlU2xpZGV7MCV7YmFja2dyb3VuZC1wb3NpdGlvbjowJSBjZW50ZXJ9dG97YmFja2dyb3VuZC1wb3NpdGlvbjoxMDAlIGNlbnRlcn19LnN0cnVjdHVyZWQtc3RhdHVzLWJhcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtnYXA6NXB4O21hcmdpbjowIDAgMCBhdXRvO3BhZGRpbmc6NHB4IDhweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGVhc2UsY29sb3IgLjNzIGVhc2U7b3ZlcmZsb3c6aGlkZGVuO2ZsZXgtc2hyaW5rOjB9LnN0cnVjdHVyZWQtc3RhdHVzLWJhciAuc3RhdHVzLWJhci1kb3R7d2lkdGg6NXB4O2hlaWdodDo1cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDpyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjgpO2FuaW1hdGlvbjpzdGF0dXNEb3RQdWxzZSAxLjJzIGVhc2UtaW4tb3V0IGluZmluaXRlO2ZsZXgtc2hyaW5rOjB9QGtleWZyYW1lcyBzdGF0dXNEb3RQdWxzZXswJSx0b3tvcGFjaXR5Oi40O3RyYW5zZm9ybTpzY2FsZSguOSl9NTAle29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUoMS4xKX19LnN0cnVjdHVyZWQtc3RhdHVzLWJhciAuc3RhdHVzLWJhci1sYWJlbHtmbGV4LXNocmluazowO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6LjYyNXJlbX0uc3RydWN0dXJlZC1zdGF0dXMtYmFyIC5zdGF0dXMtYmFyLXRpbWVye2ZsZXgtc2hyaW5rOjA7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi42MjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LnN0cnVjdHVyZWQtc3RhdHVzLWJhci5jb21wbGV0ZWR7YW5pbWF0aW9uOnN0YXR1c0JhckZhZGVPdXQgMnMgZWFzZS1vdXQgMXMgZm9yd2FyZHN9LnN0cnVjdHVyZWQtc3RhdHVzLWJhci5jb21wbGV0ZWQgLnN0YXR1cy1iYXItbGFiZWx7Y29sb3I6dmFyKC0tc3VjY2Vzcyl9QGtleWZyYW1lcyBzdGF0dXNCYXJGYWRlT3V0ezAle29wYWNpdHk6MTttYXgtaGVpZ2h0OjIwcHh9NzAle29wYWNpdHk6MDttYXgtaGVpZ2h0OjIwcHh9dG97b3BhY2l0eTowO21heC1oZWlnaHQ6MDttYXJnaW46MH19LmNyb3NzLXNlc3Npb24tcXVldWV7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MnB4O21hcmdpbjowIDhweCA0cHh9LnF1ZXVlLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo1cHg7cGFkZGluZzowIDRweDtmb250LXNpemU6LjZyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LnF1ZXVlLWhlYWRlci1sYWJlbHtmbGV4OjE7b3BhY2l0eTouNn0ucXVldWUtaGVhZGVyLWNsZWFye2JvcmRlcjpub25lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOi41NjI1cmVtO3BhZGRpbmc6MXB4IDRweDtib3JkZXItcmFkaXVzOjNweDtvcGFjaXR5Oi41O3RyYW5zaXRpb246Y29sb3IgLjE1cyxiYWNrZ3JvdW5kIC4xNXMsb3BhY2l0eSAuMTVzfS5xdWV1ZS1oZWFkZXItY2xlYXI6aG92ZXJ7Y29sb3I6dmFyKC0tZXJyb3IsICNlNTUpO2JhY2tncm91bmQ6I2U1NTU1NTFmO29wYWNpdHk6MX0ucXVldWUtaXRlbXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo0cHggOHB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtvcGFjaXR5Oi43O3RyYW5zaXRpb246b3BhY2l0eSAuMTVzIGVhc2V9LnF1ZXVlLWl0ZW06aG92ZXJ7b3BhY2l0eToxfS5xdWV1ZS1pdGVtLWRvdHtmbGV4LXNocmluazowO3dpZHRoOjRweDtoZWlnaHQ6NHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6cmdiYSh2YXIoLS1hY2NlbnQtcmdiLCAxOTcsIDEwMSwgNjEpLC42KTthbmltYXRpb246c3RhdHVzRG90UHVsc2UgMS4ycyBlYXNlLWluLW91dCBpbmZpbml0ZX0ucXVldWUtaXRlbS10ZXh0e2ZsZXg6MTttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5xdWV1ZS1pdGVtLWFnZXtmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouNTYyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXM7b3BhY2l0eTouNX0ucXVldWUtaXRlbS1zZW5kLW5vd3tmbGV4LXNocmluazowO2JvcmRlcjoxcHggc29saWQgcmdiYSh2YXIoLS1hY2NlbnQtcmdiLCAxOTcsIDEwMSwgNjEpLC4zKTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLWFjY2VudCwgI2M1NjUzZCk7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzoxcHggOHB4O2JvcmRlci1yYWRpdXM6NHB4O2ZvbnQtc2l6ZTouNnJlbTtsaW5lLWhlaWdodDoxLjQ7dHJhbnNpdGlvbjpjb2xvciAuMTVzLGJhY2tncm91bmQgLjE1cyxib3JkZXItY29sb3IgLjE1c30ucXVldWUtaXRlbS1zZW5kLW5vdzpob3Zlcntjb2xvcjp2YXIoLS1hY2NlbnQsICNjNTY1M2QpO2JhY2tncm91bmQ6cmdiYSh2YXIoLS1hY2NlbnQtcmdiLCAxOTcsIDEwMSwgNjEpLC4xMik7Ym9yZGVyLWNvbG9yOnJnYmEodmFyKC0tYWNjZW50LXJnYiwgMTk3LCAxMDEsIDYxKSwuNSl9LnF1ZXVlLWl0ZW0tY2FuY2Vse2ZsZXgtc2hyaW5rOjA7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjFweCA0cHg7Ym9yZGVyLXJhZGl1czozcHg7Zm9udC1zaXplOi42ODc1cmVtO2xpbmUtaGVpZ2h0OjE7b3BhY2l0eTouNDt0cmFuc2l0aW9uOmNvbG9yIC4xNXMsYmFja2dyb3VuZCAuMTVzLG9wYWNpdHkgLjE1c30ucXVldWUtaXRlbS1jYW5jZWw6aG92ZXJ7Y29sb3I6dmFyKC0tZXJyb3IsICNlNTUpO2JhY2tncm91bmQ6I2U1NTU1NTFmO29wYWNpdHk6MX0uc2V0dGluZ3MtY2FyZC1oZWFke2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDoxMnB4O21hcmdpbi1ib3R0b206MTRweH0uc2V0dGluZ3MtY2FyZC1pY29ue2ZsZXg6MCAwIGF1dG87d2lkdGg6MzZweDtoZWlnaHQ6MzZweDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2M1NjUzZDJlLCNjNTY1M2QwZik7Y29sb3I6dmFyKC0tYWNjZW50KTtmb250LXNpemU6MThweDtib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCAjYzU2NTNkMmV9LnNldHRpbmdzLWNhcmQtaGVhZC10ZXh0e2ZsZXg6MTttaW4td2lkdGg6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHh9LnNldHRpbmdzLWNhcmQtdGl0bGV7Zm9udC1zaXplOi45Mzc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi4wMDVlbTtsaW5lLWhlaWdodDoxLjM7bWFyZ2luOjB9LnNldHRpbmdzLWNhcmQtZGVzY3tmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xpbmUtaGVpZ2h0OjEuNTttYXJnaW46MH0uc2V0dGluZ3MtY2FyZC1hY3Rpb25ze2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O21hcmdpbi10b3A6NnB4fS5zZXR0aW5ncy1jYXJkLWFjdGlvbnMgLmJ0bnttaW4td2lkdGg6MTIwcHh9LnNldHRpbmdzLXN1Y2Nlc3MtbWVzc2FnZXtjb2xvcjp2YXIoLS1zdWNjZXNzKX0uc2V0dGluZ3Mtc2VjdGlvbi1oZWFke2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDoxMHB4O21hcmdpbi1ib3R0b206MTJweH0uc2V0dGluZ3Mtc2VjdGlvbi1pY29ue2ZsZXg6MCAwIGF1dG87d2lkdGg6MjhweDtoZWlnaHQ6MjhweDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JvcmRlci1yYWRpdXM6OHB4O2JhY2tncm91bmQ6I2M1NjUzZDFhO2ZvbnQtc2l6ZToxNHB4fS5zZXR0aW5ncy1zZWN0aW9uLWhlYWQtdGV4dHtmbGV4OjE7bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MnB4fS5zZXR0aW5ncy1zZWN0aW9uLWhlYWRpbmd7Zm9udC1zaXplOi44NzVyZW07Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGV0dGVyLXNwYWNpbmc6LjAwNWVtO2xpbmUtaGVpZ2h0OjEuMzttYXJnaW46MH0uc2V0dGluZ3Mtc2VjdGlvbi1zdWJ7Zm9udC1zaXplOi43MnJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjU7bWFyZ2luOjB9LnNldHRpbmdzLXRvZ2dsZS1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MTRweDtwYWRkaW5nOjEycHggMTRweDtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZDojZmZmZmZmOGM7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMSk7bWFyZ2luLXRvcDoxMHB4fS5zZXR0aW5ncy10b2dnbGUtcm93Ky5zZXR0aW5ncy10b2dnbGUtcm93LC5zZXR0aW5ncy10b2dnbGUtcm93Ky5zZXR0aW5ncy1yYW5nZS1yb3csLnNldHRpbmdzLXJhbmdlLXJvdysuc2V0dGluZ3MtdG9nZ2xlLXJvd3ttYXJnaW4tdG9wOjhweH0uc2V0dGluZ3MtdG9nZ2xlLXRleHR7ZmxleDoxO21pbi13aWR0aDowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjNweH0uc2V0dGluZ3MtdG9nZ2xlLXRpdGxle2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtjdXJzb3I6cG9pbnRlcn0uc2V0dGluZ3MtdG9nZ2xlLWRlc2N7Zm9udC1zaXplOi43MnJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjV9LnNldHRpbmdzLXN3aXRjaHtwb3NpdGlvbjpyZWxhdGl2ZTtmbGV4OjAgMCBhdXRvO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5zZXR0aW5ncy10b2dnbGUtYXNpZGV7ZmxleDowIDAgYXV0bztkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4fS5lbnYtcHJldmlldy1tb2RhbHttYXgtd2lkdGg6NzIwcHh9LmVudi1wcmV2aWV3LWJvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTJweDtwYWRkaW5nOjE4cHggMjRweCA4cHg7bWluLWhlaWdodDowfS5lbnYtcHJldmlldy10b29sYmFye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjEycHg7ZmxleC13cmFwOndyYXB9LmVudi1wcmV2aWV3LW1ldGF7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtmb250LXNpemU6Ljc4cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uZW52LXByZXZpZXctcGlsbHtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjJweCAxMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO2ZvbnQtc2l6ZTouNzJyZW07Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi4wMmVtO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSl9LmVudi1wcmV2aWV3LXBpbGwuaXMtaW5oZXJpdHtjb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX0uZW52LXByZXZpZXctcGlsbC5pcy1taW5pbWFse2NvbG9yOnZhcigtLXN1Y2Nlc3MpO2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcy1tdXRlZCk7Ym9yZGVyLWNvbG9yOnZhcigtLXN1Y2Nlc3MpfS5lbnYtcHJldmlldy1jb3VudHtmb250LXNpemU6LjcycmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5lbnYtcHJldmlldy1jb250cm9sc3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O2ZsZXgtd3JhcDp3cmFwfS5lbnYtcHJldmlldy1zZWFyY2h7d2lkdGg6MjAwcHg7bWF4LXdpZHRoOjEwMCU7cGFkZGluZzo2cHggMTBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JhY2tncm91bmQ6dmFyKC0tYmctZWxldmF0ZWQpO2ZvbnQtc2l6ZTouNzhyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uZW52LXByZXZpZXctc2VhcmNoOmZvY3Vze291dGxpbmU6bm9uZTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLWZvY3VzKTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1hY2NlbnQtZ2xvdyl9LmVudi1wcmV2aWV3LXJldmVhbHtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2ZvbnQtc2l6ZTouNzRyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2N1cnNvcjpwb2ludGVyO3VzZXItc2VsZWN0Om5vbmV9LmVudi1wcmV2aWV3LXJldmVhbCBpbnB1dHthY2NlbnQtY29sb3I6dmFyKC0tYWNjZW50KTtjdXJzb3I6cG9pbnRlcn0uZW52LXByZXZpZXctbGlzdHttYXgtaGVpZ2h0Om1pbig1NnZoLDQ2MHB4KTtvdmVyZmxvdy15OmF1dG87Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7YmFja2dyb3VuZDp2YXIoLS1iZy1lbGV2YXRlZCk7cGFkZGluZzo0cHh9LmVudi1wcmV2aWV3LWxpc3Q6Zm9jdXN7b3V0bGluZTpub25lfS5lbnYtcHJldmlldy1yb3d7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczptaW5tYXgoMCwyMjBweCkgbWlubWF4KDAsMWZyKSBhdXRvO2dhcDoxMnB4O2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjhweCAxMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXhzKTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIHVpLW1vbm9zcGFjZSwgIlNGIE1vbm8iLCBNZW5sbywgQ29uc29sYXMsIG1vbm9zcGFjZSk7Zm9udC1zaXplOi43NHJlbTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjEyc30uZW52LXByZXZpZXctcm93OmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpfS5lbnYtcHJldmlldy1yb3crLmVudi1wcmV2aWV3LXJvd3tib3JkZXItdG9wOjFweCBkYXNoZWQgdmFyKC0tYm9yZGVyLXN1YnRsZSl9LmVudi1wcmV2aWV3LW5hbWV7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LXdlaWdodDo2MDA7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtmbGV4LXdyYXA6d3JhcDtvdmVyZmxvdy13cmFwOmFueXdoZXJlfS5lbnYtcHJldmlldy1yb3cuaXMtc2Vuc2l0aXZlIC5lbnYtcHJldmlldy1uYW1le2NvbG9yOnZhcigtLXdhcm5pbmcpfS5lbnYtcHJldmlldy1iYWRnZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjFweCA2cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXNpemU6LjYycmVtO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMDRlbTtiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmctbXV0ZWQpO2NvbG9yOnZhcigtLXdhcm5pbmcpO2JvcmRlcjoxcHggc29saWQgdmFyKC0td2FybmluZyl9LmVudi1wcmV2aWV3LWJhZGdlLXJ1bnRpbWV7YmFja2dyb3VuZDp2YXIoLS1pbmZvLW11dGVkKTtjb2xvcjp2YXIoLS1pbmZvKTtib3JkZXItY29sb3I6dmFyKC0taW5mbyl9LmVudi1wcmV2aWV3LXZhbHVle2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7bWluLXdpZHRoOjB9LmVudi1wcmV2aWV3LXZhbHVlLmlzLXJ1bnRpbWV7Zm9udC1zdHlsZTppdGFsaWM7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LmVudi1wcmV2aWV3LWxlbntjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6LjY4cmVtO3doaXRlLXNwYWNlOm5vd3JhcH0uZW52LXByZXZpZXctbG9hZGluZywuZW52LXByZXZpZXctZW1wdHl7cGFkZGluZzoyNHB4IDhweDt0ZXh0LWFsaWduOmNlbnRlcjtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6Ljc4cmVtfS5lbnYtcHJldmlldy1mb290ZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MTJweDtwYWRkaW5nOjE0cHggMjRweCAxOHB4fS5lbnYtcHJldmlldy1oaW50e2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmbGV4OjE7bWluLXdpZHRoOjB9QG1lZGlhKG1heC13aWR0aDo2NDBweCl7LmVudi1wcmV2aWV3LW1vZGFse21heC13aWR0aDpjYWxjKDEwMHZ3IC0gMjRweCl9LmVudi1wcmV2aWV3LXJvd3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyO2dhcDo0cHh9LmVudi1wcmV2aWV3LWxlbntqdXN0aWZ5LXNlbGY6ZW5kfS5lbnYtcHJldmlldy1zZWFyY2gsLmVudi1wcmV2aWV3LWNvbnRyb2xze3dpZHRoOjEwMCV9fS5zZXR0aW5ncy1yYW5nZS1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTJweDtwYWRkaW5nOjEycHggMTRweDtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZDojZmZmZmZmOGM7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMSk7bWFyZ2luLXRvcDo4cHh9LnNldHRpbmdzLXJhbmdlLWxhYmVse2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmbGV4OjAgMCBhdXRvO21hcmdpbi1ib3R0b206MH0uc2V0dGluZ3MtcmFuZ2V7ZmxleDoxO21pbi13aWR0aDowO2FjY2VudC1jb2xvcjp2YXIoLS1hY2NlbnQpfWlucHV0W3R5cGU9cmFuZ2VdLnNldHRpbmdzLXJhbmdley13ZWJraXQtYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtoZWlnaHQ6MjJweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MDttYXJnaW46MDstLXJhbmdlLWZpbGw6IDUwJX1pbnB1dFt0eXBlPXJhbmdlXS5zZXR0aW5ncy1yYW5nZTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2t7aGVpZ2h0OjRweDtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCx2YXIoLS1hY2NlbnQpIDAlLHZhcigtLWFjY2VudCkgdmFyKC0tcmFuZ2UtZmlsbCwgNTAlKSxyZ2JhKDEyNSw5MSw1NywuMikgdmFyKC0tcmFuZ2UtZmlsbCwgNTAlKSxyZ2JhKDEyNSw5MSw1NywuMikgMTAwJSk7Ym9yZGVyOm5vbmV9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iey13ZWJraXQtYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTt3aWR0aDoyMHB4O2hlaWdodDoyMHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6I2ZmZjtib3JkZXI6bm9uZTtib3gtc2hhZG93OjAgMnB4IDZweCAjMTQwZTA4MzgsMCAwIDAgLjVweCAjN2Q1YjM5MWE7bWFyZ2luLXRvcDotOHB4O3RyYW5zaXRpb246dHJhbnNmb3JtIC4xNnMgZWFzZSxib3gtc2hhZG93IC4xNnMgZWFzZX1pbnB1dFt0eXBlPXJhbmdlXS5zZXR0aW5ncy1yYW5nZTpob3Zlcjo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7dHJhbnNmb3JtOnNjYWxlKDEuMDgpfWlucHV0W3R5cGU9cmFuZ2VdLnNldHRpbmdzLXJhbmdlOmFjdGl2ZTo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7dHJhbnNmb3JtOnNjYWxlKDEuMTYpO2JveC1zaGFkb3c6MCA0cHggMTBweCAjMTQwZTA4NDcsMCAwIDAgOHB4ICNjNTY1M2QxZiwwIDAgMCAuNXB4ICM3ZDViMzkxYX1pbnB1dFt0eXBlPXJhbmdlXS5zZXR0aW5ncy1yYW5nZTpmb2N1cy12aXNpYmxlOjotd2Via2l0LXNsaWRlci10aHVtYntib3gtc2hhZG93OjAgMnB4IDZweCAjMTQwZTA4MzgsMCAwIDAgNHB4IHZhcigtLWFjY2VudC1tdXRlZCksMCAwIDAgLjVweCAjN2Q1YjM5MWF9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2t7aGVpZ2h0OjRweDtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kOiM3ZDViMzkzMztib3JkZXI6bm9uZX1pbnB1dFt0eXBlPXJhbmdlXS5zZXR0aW5ncy1yYW5nZTo6LW1vei1yYW5nZS1wcm9ncmVzc3toZWlnaHQ6NHB4O2JvcmRlci1yYWRpdXM6MnB4O2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtib3JkZXI6bm9uZX1pbnB1dFt0eXBlPXJhbmdlXS5zZXR0aW5ncy1yYW5nZTo6LW1vei1yYW5nZS10aHVtYnt3aWR0aDoyMHB4O2hlaWdodDoyMHB4O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6I2ZmZjtjdXJzb3I6cG9pbnRlcjtib3gtc2hhZG93OjAgMnB4IDZweCAjMTQwZTA4MzgsMCAwIDAgLjVweCAjN2Q1YjM5MWE7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjE2cyBlYXNlfWlucHV0W3R5cGU9cmFuZ2VdLnNldHRpbmdzLXJhbmdlOmhvdmVyOjotbW96LXJhbmdlLXRodW1ie3RyYW5zZm9ybTpzY2FsZSgxLjA4KX1pbnB1dFt0eXBlPXJhbmdlXS5zZXR0aW5ncy1yYW5nZTphY3RpdmU6Oi1tb3otcmFuZ2UtdGh1bWJ7dHJhbnNmb3JtOnNjYWxlKDEuMTYpfS5zZXR0aW5ncy1yYW5nZS12YWx1ZXtmbGV4OjAgMCA0NHB4O3RleHQtYWxpZ246cmlnaHQ7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS5zZXR0aW5ncy1yb3ctd2l0aC1hY3Rpb257ZGlzcGxheTpmbGV4O2dhcDo4cHg7YWxpZ24taXRlbXM6c3RyZXRjaH0uc2V0dGluZ3Mtcm93LXdpdGgtYWN0aW9uPi5maWVsZC1pbnB1dCwuc2V0dGluZ3Mtcm93LXdpdGgtYWN0aW9uPi5maWVsZC1zZWxlY3QsLnNldHRpbmdzLXJvdy13aXRoLWFjdGlvbj5zZWxlY3R7ZmxleDoxO21pbi13aWR0aDowfS5zZXR0aW5ncy1yb3ctd2l0aC1hY3Rpb24+LmJ0bntmbGV4LXNocmluazowfS5zZXR0aW5ncy1hYm91dC1yb3ctYWN0aW9ue2ZsZXgtd3JhcDpub3dyYXB9LnNldHRpbmdzLXZhbHVlLWZsZXh7ZmxleDoxO3RleHQtYWxpZ246cmlnaHR9LmZpbGUtcGlja2Vye3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEycHg7cGFkZGluZzo2cHggMTJweCA2cHggNnB4O2JhY2tncm91bmQ6I2ZmZmZmZmI4O2JvcmRlcjoxcHggZGFzaGVkIHJnYmEoMTI1LDkxLDU3LC4yNSk7Ym9yZGVyLXJhZGl1czoxMnB4O3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4xOHMsYmFja2dyb3VuZCAuMThzfS5maWxlLXBpY2tlcjpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tYWNjZW50LXNvZnQsIHJnYmEoMTk3LCAxMDEsIDYxLCAuNDUpKTtiYWNrZ3JvdW5kOiNmZmZmZmZlNn0uZmlsZS1waWNrZXIuZmlsZS1waWNrZXItaGFzLWZpbGV7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjojYzU2NTNkNTk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCNjNTY1M2QxNCwjZmZmZmZmZDkpfS5maWxlLXBpY2tlci1pbnB1dHtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxcHg7aGVpZ2h0OjFweDtvcGFjaXR5OjA7cG9pbnRlci1ldmVudHM6bm9uZX0uZmlsZS1waWNrZXItdHJpZ2dlcntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6OHB4IDE0cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHZhcigtLWFjY2VudCksY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWNjZW50KSA4MCUsIzAwMCAwJSkpO2NvbG9yOiNmZmY7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtib3JkZXItcmFkaXVzOjlweDtjdXJzb3I6cG9pbnRlcjtmbGV4LXNocmluazowO3RyYW5zaXRpb246ZmlsdGVyIC4xNXMsdHJhbnNmb3JtIC4xNXMsYm94LXNoYWRvdyAuMTVzO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXhzKTt1c2VyLXNlbGVjdDpub25lfS5maWxlLXBpY2tlci10cmlnZ2VyOmhvdmVye2ZpbHRlcjpicmlnaHRuZXNzKDEuMDUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXNtKX0uZmlsZS1waWNrZXItdHJpZ2dlcjphY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9LmZpbGUtcGlja2VyLWlucHV0OmZvY3VzLXZpc2libGUrLmZpbGUtcGlja2VyLXRyaWdnZXJ7b3V0bGluZToycHggc29saWQgdmFyKC0tYWNjZW50KTtvdXRsaW5lLW9mZnNldDoycHh9LmZpbGUtcGlja2VyLWljb257d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtmbGV4LXNocmluazowfS5maWxlLXBpY2tlci1sYWJlbHt3aGl0ZS1zcGFjZTpub3dyYXB9LmZpbGUtcGlja2VyLW5hbWV7ZmxleDoxO21pbi13aWR0aDowO2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKX0uZmlsZS1waWNrZXIuZmlsZS1waWNrZXItaGFzLWZpbGUgLmZpbGUtcGlja2VyLW5hbWV7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LXdlaWdodDo1MDB9LnNldHRpbmdzLWFwcC1pY29uLWJsb2Nre21hcmdpbi1ib3R0b206MThweH0uc2V0dGluZ3MtYXBwLWljb24tcGlja2Vye2Rpc3BsYXk6ZmxleDtnYXA6MTJweDtmbGV4LXdyYXA6d3JhcH0uc2V0dGluZ3MtYXBwLWljb24tb3B0aW9ue2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzoxMHB4O2JvcmRlci1yYWRpdXM6MTRweDtiYWNrZ3JvdW5kOiNmZmZmZmY4Yztib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xMik7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE4cyxiYWNrZ3JvdW5kIC4xOHMsdHJhbnNmb3JtIC4xOHMsYm94LXNoYWRvdyAuMThzO21pbi13aWR0aDo4NHB4fS5zZXR0aW5ncy1hcHAtaWNvbi1vcHRpb246aG92ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym9yZGVyLWNvbG9yOiNjNTY1M2Q0ZDtiYWNrZ3JvdW5kOiNmZmZmZmZjNztib3gtc2hhZG93OnZhcigtLXNoYWRvdy14cyl9LnNldHRpbmdzLWFwcC1pY29uLW9wdGlvbi5zZWxlY3RlZCwuc2V0dGluZ3MtYXBwLWljb24tb3B0aW9uW2FyaWEtcHJlc3NlZD10cnVlXXtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2M1NjUzZDI0LCNjNTY1M2QwYSk7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2M1NjUzZDMzfS5zZXR0aW5ncy1hcHAtaWNvbi1wcmV2aWV3e3dpZHRoOjU2cHg7aGVpZ2h0OjU2cHg7Ym9yZGVyLXJhZGl1czoxMnB4O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LnNldHRpbmdzLWFwcC1pY29uLWxhYmVse2ZvbnQtc2l6ZTouNzJyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtd2VpZ2h0OjUwMH0uc2V0dGluZ3MtY29ubmVjdC11cmwtdGV4dHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIG1vbm9zcGFjZSk7Zm9udC1zaXplOjEycHg7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt3b3JkLWJyZWFrOmJyZWFrLWFsbDt1c2VyLXNlbGVjdDphbGw7LXdlYmtpdC11c2VyLXNlbGVjdDphbGx9QG1lZGlhKG1heC13aWR0aDo2NDBweCl7LnNldHRpbmdzLXRvZ2dsZS1yb3csLnNldHRpbmdzLXJhbmdlLXJvd3twYWRkaW5nOjEwcHggMTJweH0uc2V0dGluZ3MtdG9nZ2xlLXJvd3tmbGV4LXdyYXA6d3JhcH0uc2V0dGluZ3MtY2FyZC1hY3Rpb25ze2p1c3RpZnktY29udGVudDpzdHJldGNofS5zZXR0aW5ncy1jYXJkLWFjdGlvbnMgLmJ0bntmbGV4OjE7bWluLXdpZHRoOjB9LmZpbGUtcGlja2Vye2ZsZXgtd3JhcDp3cmFwO3BhZGRpbmc6OHB4fS5maWxlLXBpY2tlci10cmlnZ2Vye2ZsZXg6MSAxIGF1dG87anVzdGlmeS1jb250ZW50OmNlbnRlcn0uZmlsZS1waWNrZXItbmFtZXtmbGV4OjEgMSAxMDAlO3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmc6MCA0cHh9LnNldHRpbmdzLXJvdy13aXRoLWFjdGlvbntmbGV4LXdyYXA6d3JhcH0uc2V0dGluZ3Mtcm93LXdpdGgtYWN0aW9uPi5idG57ZmxleDoxfX0udG9wYmFyLWdpdC1zbG90e2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyfS50b3BiYXItZ2l0LXNsb3Q6ZW1wdHl7ZGlzcGxheTpub25lfS50b3BiYXItZ2l0LWJhZGdle2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo1cHg7aGVpZ2h0OjMycHg7cGFkZGluZzowIDEwcHg7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjcycmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtjdXJzb3I6cG9pbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXA7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTtib3gtc2l6aW5nOmJvcmRlci1ib3g7bGluZS1oZWlnaHQ6MX0udG9wYmFyLWdpdC1iYWRnZTpob3ZlcntiYWNrZ3JvdW5kOiNmZmZmZmY4MDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS50b3BiYXItZ2l0LWJhZGdlOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk2KX0udG9wYmFyLWdpdC1pY29ue2ZsZXgtc2hyaW5rOjA7b3BhY2l0eTouODV9LnRvcGJhci1naXQtYnJhbmNoe2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgbW9ub3NwYWNlKTtmb250LXdlaWdodDo2MDA7bWF4LXdpZHRoOjEyZW07b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9LnRvcGJhci1naXQtY291bnR7Y29sb3I6dmFyKC0tYWNjZW50KTtmb250LXdlaWdodDo3MDA7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCBtb25vc3BhY2UpfS50b3BiYXItZ2l0LWNsZWFue2NvbG9yOiMzY2EwNWFkOTtmb250LXdlaWdodDo3MDA7Zm9udC1zaXplOi43OHJlbX0ucXVpY2stY29tbWl0LW1vZGFse21heC13aWR0aDo1NDBweH0ucXVpY2stY29tbWl0LW1vZGFsIC5tb2RhbC1ib2R5e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjEycHh9LnFjLWVtcHR5e2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3BhZGRpbmc6NnB4IDA7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zdHlsZTppdGFsaWN9LnFjLWZpbGUtcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjlweDtsaW5lLWhlaWdodDoxLjY7cGFkZGluZzoxcHggMnB4O2JvcmRlci1yYWRpdXM6NXB4fS5xYy1maWxlLXJvdzpob3ZlcntiYWNrZ3JvdW5kOiM3ZDViMzkwZn0ucWMtZmlsZS1iYWRnZXtmbGV4LXNocmluazowO3dpZHRoOjE3cHg7aGVpZ2h0OjE3cHg7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3JkZXItcmFkaXVzOjRweDtmb250LXNpemU6LjY2cmVtO2ZvbnQtd2VpZ2h0OjgwMDtsZXR0ZXItc3BhY2luZzowO2xpbmUtaGVpZ2h0OjE7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKX0ucWMtYmFkZ2UtYWRke2NvbG9yOiMyMjgwNDJmYTtiYWNrZ3JvdW5kOiMzY2EwNWEyOX0ucWMtYmFkZ2UtbW9ke2NvbG9yOiNhYTZlMGVmYTtiYWNrZ3JvdW5kOiNkYzk2MWUyOX0ucWMtYmFkZ2UtZGVse2NvbG9yOiNiZTM4MzhmYTtiYWNrZ3JvdW5kOiNjODQ2NDYyNn0ucWMtYmFkZ2UtcmVue2NvbG9yOiM0ZTY0YmNmYTtiYWNrZ3JvdW5kOiM2ZTgyYzgyOX0ucWMtYmFkZ2UtdW50cmFja2Vke2NvbG9yOiMyMjgwNDJmMjtiYWNrZ3JvdW5kOiMzY2EwNWExZn0ucWMtYmFkZ2UtaWdub3JlZCwucWMtYmFkZ2Utb3RoZXJ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7YmFja2dyb3VuZDojNzg3ODc4MWZ9LnFjLWZpbGUtcGF0aHtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7ZmxleDoxIDEgYXV0bzttaW4td2lkdGg6MH0ucWMtZmlsZS1kaXJ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LnFjLWZpbGUtbmFtZXtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZvbnQtd2VpZ2h0OjUwMH0ucWMtc3VibW9kdWxlLWJhZGdle2ZsZXgtc2hyaW5rOjA7cGFkZGluZzoxcHggNnB4O2JvcmRlci1yYWRpdXM6OHB4O2JhY2tncm91bmQ6IzhjNjRjODI5O2NvbG9yOiM2ZTQ2YjRmMjtmb250LXNpemU6LjY4cmVtO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMDJlbTt3aGl0ZS1zcGFjZTpub3dyYXB9LnFjLW1lc3NhZ2UtaGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjhweH0ucWMtYWktYnRue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo1cHg7Y29sb3I6dmFyKC0tYWNjZW50KX0ucWMtYWktYnRuIHN2Z3tjb2xvcjp2YXIoLS1hY2NlbnQpO2ZsZXgtc2hyaW5rOjB9LnFjLWFpLWJ0bjpkaXNhYmxlZHtvcGFjaXR5Oi41O2N1cnNvcjpub3QtYWxsb3dlZDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ucWMtYWktYnRuOmRpc2FibGVkIHN2Z3tjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ucWMtbWVzc2FnZS1pbnB1dHtyZXNpemU6dmVydGljYWw7bWluLWhlaWdodDo2OHB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgbW9ub3NwYWNlKTtmb250LXNpemU6Ljg0cmVtO2xpbmUtaGVpZ2h0OjEuNTV9LnFjLXRhZy1maWVsZC1pbnB1dHtmbGV4OjEgMSBhdXRvO21pbi13aWR0aDowO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgbW9ub3NwYWNlKTtmb250LXNpemU6LjgycmVtfS5xYy10YWctZmllbGQtaW5wdXQ6ZGlzYWJsZWR7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7YmFja2dyb3VuZDojN2Q1YjM5MGE7Ym9yZGVyLWNvbG9yOiM3ZDViMzkxNDtjdXJzb3I6ZGVmYXVsdDtib3gtc2hhZG93Om5vbmV9LnF1aWNrLWNvbW1pdC1tb2RhbCAud29ya3RyZWUtbWVyZ2UtYWN0aW9uc3tkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2dhcDo4cHg7bWFyZ2luLXRvcDo0cHh9LnF1aWNrLWNvbW1pdC1tb2RhbCAubW9kYWwtYm9keXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxNHB4fS5xYy1zZWN0aW9uLXRpdGxle2ZvbnQtc2l6ZTouNzJyZW07Zm9udC13ZWlnaHQ6NzAwO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtsZXR0ZXItc3BhY2luZzouMDdlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LnF1aWNrLWNvbW1pdC1tb2RhbHttYXgtd2lkdGg6NjIwcHh9LnF1aWNrLWNvbW1pdC1tb2RhbCAubW9kYWwtYm9keXtnYXA6MH0ucWMtcmVsZWFzZS1wYW5lbCwucWMtcmVzdWx0LXBhbmVse2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjE0cHh9LnFjLXBhaXJ7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczo3MnB4IG1pbm1heCgwLDFmcik7Z2FwOjEycHg7YWxpZ24taXRlbXM6c3RhcnR9LnFjLXBhaXItbGFiZWx7cGFkZGluZy10b3A6OXB4O2ZvbnQtc2l6ZTouNzJyZW07Zm9udC13ZWlnaHQ6ODAwO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xldHRlci1zcGFjaW5nOi4wNmVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ucWMtcGFpci1mbG93e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsLjlmcikgMjRweCBtaW5tYXgoMCwxLjFmcik7Z2FwOjhweDthbGlnbi1pdGVtczpjZW50ZXI7bWluLXdpZHRoOjB9LnFjLXBhaXItdmFsdWV7bWluLXdpZHRoOjA7bWluLWhlaWdodDozOHB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjhweCAxMHB4O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEyKTtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOiNmZmZmZmY4NTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7b3ZlcmZsb3c6aGlkZGVufS5xYy1wYWlyLXZhbHVlLS10b3tiYWNrZ3JvdW5kOiNmZmZmZmZkNjtib3JkZXItY29sb3I6I2M1NjUzZDM4O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnFjLXBhaXItdmFsdWUgY29kZXtmbGV4LXNocmluazowO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgbW9ub3NwYWNlKTtmb250LXNpemU6Ljc4cmVtO2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6I2M1NjUzZDE3O2JvcmRlci1yYWRpdXM6NXB4O3BhZGRpbmc6MnB4IDZweH0ucWMtcGFpci12YWx1ZSBzcGFue21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmb250LXNpemU6LjgycmVtfS5xYy1wYWlyLS1jb21taXQgLnFjLXBhaXItZmxvd3thbGlnbi1pdGVtczpzdHJldGNofS5xYy1wYWlyLS1jb21taXQgLnFjLXBhaXItdmFsdWV7bWluLWhlaWdodDo3NnB4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9LnFjLXBhaXItLWNvbW1pdCAucWMtcGFpci12YWx1ZS0tdG97cGFkZGluZzowO2JvcmRlcjowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LnFjLXBhaXItLWNvbW1pdCAucWMtbWVzc2FnZS1pbnB1dHttaW4taGVpZ2h0Ojc2cHg7d2lkdGg6MTAwJTtyZXNpemU6dmVydGljYWx9LnFjLXBhaXItLXRhZyAucWMtcGFpci12YWx1ZS0tdG97cGFkZGluZzowO2JvcmRlcjowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LnFjLXBhaXItLXRhZyAucWMtdGFnLWZpZWxkLWlucHV0e3dpZHRoOjEwMCU7bWluLWhlaWdodDozOHB4fS5xYy1wYWlyLWFycm93e2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC13ZWlnaHQ6ODAwO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgbW9ub3NwYWNlKX0ucWMtbXV0ZWR7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zdHlsZTppdGFsaWN9LnFjLW1vZGFsLWFjdGlvbnMsLnFjLXJlc3VsdC1hY3Rpb25ze2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7Z2FwOjhweH0ucWMtcmVzdWx0LXBhbmVse3BhZGRpbmctdG9wOjJweH0ucWMtcmVzdWx0LXB1c2hlZHtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjttaW4taGVpZ2h0OjMwcHg7cGFkZGluZzowIDEwcHg7Ym9yZGVyLXJhZGl1czo5OTlweDtjb2xvcjojMjg4MjQ2ZjI7YmFja2dyb3VuZDojM2NhMDVhMWY7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDYwLDE2MCw5MCwuMjQpO2ZvbnQtc2l6ZTouNzhyZW07Zm9udC13ZWlnaHQ6NzAwfS5xYy1kb2NrLXdyYXB7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6OHB4O3BhZGRpbmctdG9wOjJweH0ucWMtZG9jay13cmFwW2RhdGEtZGlzYWJsZWQ9IjEiXXtvcGFjaXR5Oi41NTtwb2ludGVyLWV2ZW50czpub25lfS5xYy1kb2NrLWJ1c3l7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDthbGlnbi1zZWxmOmZsZXgtc3RhcnQ7cGFkZGluZzoxMHB4IDE0cHg7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQ6I2M1NjUzZDFhO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTcsMTAxLDYxLC4yKTtjb2xvcjp2YXIoLS1hY2NlbnQpO2ZvbnQtc2l6ZTouODJyZW07Zm9udC13ZWlnaHQ6NzAwfS5xYy1kb2NrLWJ1c3ktZG90e3dpZHRoOjhweDtoZWlnaHQ6OHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTthbmltYXRpb246cWMtZG9jay1idXN5LXB1bHNlIDEuMnMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyBxYy1kb2NrLWJ1c3ktcHVsc2V7MCUsdG97b3BhY2l0eTouNDt0cmFuc2Zvcm06c2NhbGUoLjg1KX01MCV7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZSgxLjE1KX19LnFjLWRvY2stc3RhZ2V7LS1xYy10b25lOiB2YXIoLS1hY2NlbnQpOy0tcWMtdG9uZS1zb2Z0OiByZ2JhKDE5NywgMTAxLCA2MSwgLjIpO2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKSA5NnB4O2dhcDoxMHB4O2hlaWdodDoxNjhweDtwYWRkaW5nOjhweDtib3JkZXItcmFkaXVzOjE2cHg7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMTYpO2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KDEyMCUgMTIwJSBhdCAzMCUgMzAlLCNmZmZmZmY4YywjZmZmNWViMjkpLGxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmZmZjc1LCNmZmY1ZWIzOCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmZmZmYjMsMCAxcHggM3B4ICM1OTNhMjAwZDt1c2VyLXNlbGVjdDpub25lfS5xYy1kb2NrLXN0YWdlW2RhdGEtYWN0aW9uPWNvbW1pdC10YWddey0tcWMtdG9uZTogIzRhNmZhNTstLXFjLXRvbmUtc29mdDogcmdiYSg3NCwgMTExLCAxNjUsIC4yMil9LnFjLWRvY2stc3RhZ2VbZGF0YS1hY3Rpb249Y29tbWl0LXB1c2hdey0tcWMtdG9uZTogIzRmN2E1ODstLXFjLXRvbmUtc29mdDogcmdiYSg3OSwgMTIyLCA4OCwgLjIyKX0ucWMtZG9jay1zdGFnZVtkYXRhLWFjdGlvbj1jb21taXQtdGFnLXB1c2hdey0tcWMtdG9uZTogIzdjNWFhODstLXFjLXRvbmUtc29mdDogcmdiYSgxMjQsIDkwLCAxNjgsIC4yNCl9LnFjLWRvY2stZmllbGR7cG9zaXRpb246cmVsYXRpdmU7bWluLXdpZHRoOjA7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQ6cmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCg0NWRlZyxyZ2JhKDEyNSw5MSw1NywuMDM1KSAwIDhweCx0cmFuc3BhcmVudCA4cHggMTZweCk7dG91Y2gtYWN0aW9uOm5vbmU7b3ZlcmZsb3c6aGlkZGVufS5xYy1kb2NrLWNsdXN0ZXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO2JvcmRlci1yYWRpdXM6MTRweDtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLXFjLXRvbmUpIDEwJSx0cmFuc3BhcmVudCk7Ym9yZGVyOjEuNXB4IGRhc2hlZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1xYy10b25lKSAzOCUsdHJhbnNwYXJlbnQpO2JveC1zaGFkb3c6MCA0cHggMTRweCB2YXIoLS1xYy10b25lLXNvZnQpO3BvaW50ZXItZXZlbnRzOm5vbmU7ei1pbmRleDowO29wYWNpdHk6MDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjJzIGN1YmljLWJlemllciguMjIsMSwuMzYsMSksd2lkdGggLjIycyBjdWJpYy1iZXppZXIoLjIyLDEsLjM2LDEpLGhlaWdodCAuMjJzIGN1YmljLWJlemllciguMjIsMSwuMzYsMSksb3BhY2l0eSAuMThzIGVhc2UsYmFja2dyb3VuZCAuMnMgZWFzZSxib3JkZXItY29sb3IgLjJzIGVhc2V9LnFjLWRvY2stY2x1c3Rlci5pcy1hY3RpdmV7b3BhY2l0eToxfS5xYy1jaGlwe3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6N3B4O2hlaWdodDozOHB4O3BhZGRpbmc6MCAxNHB4O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjIyKTtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6I2ZmZmZmZmViO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LWZhbWlseTp2YXIoLS1mb250LXNhbnMpO2ZvbnQtc2l6ZTouODJyZW07Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi4wMWVtO3doaXRlLXNwYWNlOm5vd3JhcDtjdXJzb3I6Z3JhYjt0b3VjaC1hY3Rpb246bm9uZTtib3gtc2hhZG93OjAgMnB4IDZweCAjNTkzYTIwMTQ7ei1pbmRleDoyO3RyYW5zaXRpb246Ym94LXNoYWRvdyAuMThzIGVhc2UsYm9yZGVyLWNvbG9yIC4xOHMgZWFzZSxiYWNrZ3JvdW5kIC4xOHMgZWFzZSxjb2xvciAuMThzIGVhc2V9LnFjLWNoaXAucWMtY2hpcC0tYW5pbXt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjhzIGN1YmljLWJlemllciguMjIsMSwuMzYsMSksYm94LXNoYWRvdyAuMThzIGVhc2UsYm9yZGVyLWNvbG9yIC4xOHMgZWFzZSxiYWNrZ3JvdW5kIC4xOHMgZWFzZSxjb2xvciAuMThzIGVhc2V9LnFjLWNoaXAuaXMtZ3JhYmJpbmd7Y3Vyc29yOmdyYWJiaW5nO3otaW5kZXg6NTtib3gtc2hhZG93OjAgMTJweCAyNnB4ICM1OTNhMjAzOH0ucWMtY2hpcDpkaXNhYmxlZHtjdXJzb3I6bm90LWFsbG93ZWR9LnFjLWNoaXA6bm90KDpkaXNhYmxlZCk6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLXFjLXRvbmUpfS5xYy1jaGlwLWRvdHt3aWR0aDo5cHg7aGVpZ2h0OjlweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOiM3ZDViMzk0ZDtib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCAjZmZmOTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE4cyBlYXNlLHRyYW5zZm9ybSAuMThzIGVhc2V9LnFjLWNoaXAtLWNvbW1pdCAucWMtY2hpcC1kb3R7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpfS5xYy1jaGlwLS10YWcgLnFjLWNoaXAtZG90e2JhY2tncm91bmQ6IzRhNmZhNX0ucWMtY2hpcC0tcHVzaCAucWMtY2hpcC1kb3R7YmFja2dyb3VuZDojNGY3YTU4fS5xYy1jaGlwLS1zdWIgLnFjLWNoaXAtZG90e2JhY2tncm91bmQ6IzNhOGE4Zn0ucWMtY2hpcC0tY29tbWl0e2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hY2NlbnQpIDMwJSxyZ2JhKDEyNSw5MSw1NywuMikpfS5xYy1jaGlwLS10YWd7Ym9yZGVyLWNvbG9yOmNvbG9yLW1peChpbiBzcmdiLCM0YTZmYTUgMzAlLHJnYmEoMTI1LDkxLDU3LC4yKSl9LnFjLWNoaXAtLXB1c2h7Ym9yZGVyLWNvbG9yOmNvbG9yLW1peChpbiBzcmdiLCM0ZjdhNTggMzAlLHJnYmEoMTI1LDkxLDU3LC4yKSl9LnFjLWNoaXAtLXN1Yntib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsIzNhOGE4ZiAzMCUscmdiYSgxMjUsOTEsNTcsLjIpKX0ucWMtY2hpcC5pcy1ncmFiYmluZywucWMtY2hpcC5pcy1hdHRhY2hlZHtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JveC1zaGFkb3c6MCAxMnB4IDI2cHggdmFyKC0tcWMtdG9uZS1zb2Z0KTt6LWluZGV4OjV9LnFjLWNoaXAuaXMtZ3JhYmJpbmcgLnFjLWNoaXAtZG90LC5xYy1jaGlwLmlzLWF0dGFjaGVkIC5xYy1jaGlwLWRvdHt0cmFuc2Zvcm06c2NhbGUoMS4xKX0ucWMtY2hpcC0tY29tbWl0LmlzLWdyYWJiaW5nLC5xYy1jaGlwLS1jb21taXQuaXMtYXR0YWNoZWR7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmYsY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWNjZW50KSAxNiUsI2ZmZikpO2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hY2NlbnQpIDQ2JSx0cmFuc3BhcmVudCl9LnFjLWNoaXAtLXRhZy5pcy1ncmFiYmluZywucWMtY2hpcC0tdGFnLmlzLWF0dGFjaGVke2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmLGNvbG9yLW1peChpbiBzcmdiLCM0YTZmYTUgMTYlLCNmZmYpKTtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsIzRhNmZhNSA0NiUsdHJhbnNwYXJlbnQpfS5xYy1jaGlwLS1wdXNoLmlzLWdyYWJiaW5nLC5xYy1jaGlwLS1wdXNoLmlzLWF0dGFjaGVke2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmLGNvbG9yLW1peChpbiBzcmdiLCM0ZjdhNTggMTYlLCNmZmYpKTtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsIzRmN2E1OCA0NiUsdHJhbnNwYXJlbnQpfS5xYy1jaGlwLS1zdWIuaXMtZ3JhYmJpbmcsLnFjLWNoaXAtLXN1Yi5pcy1hdHRhY2hlZHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZixjb2xvci1taXgoaW4gc3JnYiwjM2E4YThmIDE2JSwjZmZmKSk7Ym9yZGVyLWNvbG9yOmNvbG9yLW1peChpbiBzcmdiLCMzYThhOGYgNDYlLHRyYW5zcGFyZW50KX0ucWMtZG9jay1sYXVuY2h7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6NHB4O2JvcmRlci1yYWRpdXM6MTRweDtib3JkZXI6MS41cHggZGFzaGVkIHJnYmEoMTI1LDkxLDU3LC4zMik7YmFja2dyb3VuZDojZmZmNjtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjt0b3VjaC1hY3Rpb246bm9uZTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjJzIGVhc2UsYm9yZGVyLWNvbG9yIC4ycyBlYXNlLGNvbG9yIC4ycyBlYXNlLHRyYW5zZm9ybSAuMnMgZWFzZSxib3gtc2hhZG93IC4ycyBlYXNlfS5xYy1kb2NrLWxhdW5jaDpub3QoOmRpc2FibGVkKTpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tcWMtdG9uZSk7Y29sb3I6dmFyKC0tcWMtdG9uZSk7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1xYy10b25lKSA4JSxyZ2JhKDI1NSwyNTUsMjU1LC41KSl9LnFjLWRvY2stbGF1bmNoOmRpc2FibGVke2N1cnNvcjpub3QtYWxsb3dlZH0ucWMtZG9jay1sYXVuY2gtYXJyb3d7ZGlzcGxheTppbmxpbmUtZmxleDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgZWFzZX0ucWMtZG9jay1sYXVuY2gtbGFiZWx7Zm9udC1zaXplOi43MnJlbTtmb250LXdlaWdodDo4MDA7bGV0dGVyLXNwYWNpbmc6LjA0ZW19LnFjLWRvY2stc3RhZ2VbZGF0YS1ob3Q9IjEiXSAucWMtZG9jay1sYXVuY2h7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci1jb2xvcjp2YXIoLS1xYy10b25lKTtiYWNrZ3JvdW5kOnZhcigtLXFjLXRvbmUpO2NvbG9yOiNmZmY7dHJhbnNmb3JtOnNjYWxlKDEuMDQpO2JveC1zaGFkb3c6MCA4cHggMjJweCB2YXIoLS1xYy10b25lLXNvZnQpLDAgMCAwIDVweCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1xYy10b25lKSAxOCUsdHJhbnNwYXJlbnQpfS5xYy1kb2NrLXN0YWdlW2RhdGEtaG90PSIxIl0gLnFjLWRvY2stbGF1bmNoLWFycm93e3RyYW5zZm9ybTp0cmFuc2xhdGUoM3B4KX0ucWMtZG9jay1oaW50e21pbi1oZWlnaHQ6MWVtO2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt0ZXh0LWFsaWduOmNlbnRlcjtsZXR0ZXItc3BhY2luZzouMDJlbTtvcGFjaXR5Oi44fUBtZWRpYShwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LnFjLWNoaXAsLnFjLWNoaXAtLWFuaW0sLnFjLWRvY2stY2x1c3RlciwucWMtZG9jay1sYXVuY2gsLnFjLWRvY2stYnVzeS1kb3R7YW5pbWF0aW9uOm5vbmUhaW1wb3J0YW50O3RyYW5zaXRpb246bm9uZSFpbXBvcnRhbnR9fUBtZWRpYShtYXgtd2lkdGg6NzIwcHgpey50b3BiYXItZ2l0LWJyYW5jaHttYXgtd2lkdGg6OGVtfS50b3BiYXItZ2l0LWJhZGdle3BhZGRpbmc6MCA4cHg7Zm9udC1zaXplOi43cmVtfS5xdWljay1jb21taXQtbW9kYWx7d2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTttYXgtaGVpZ2h0OmNhbGMoMTAwZHZoIC0gbWF4KDE2cHgsdmFyKC0td2FuZC1zYWZlLXRvcCkpIC0gbWF4KDEycHgsdmFyKC0td2FuZC1zYWZlLWJvdHRvbSkpKX0ucXVpY2stY29tbWl0LW1vZGFsIC5tb2RhbC1oZWFkZXJ7cGFkZGluZzoxNHB4IDE2cHggMTJweH0ucXVpY2stY29tbWl0LW1vZGFsIC5tb2RhbC10aXRsZXtmb250LXNpemU6MS4wNXJlbX0ucXVpY2stY29tbWl0LW1vZGFsIC5tb2RhbC1zdWJ0aXRsZXttYXJnaW4tdG9wOjRweDtmb250LXNpemU6Ljc4cmVtO2xpbmUtaGVpZ2h0OjEuMzV9LnF1aWNrLWNvbW1pdC1tb2RhbCAubW9kYWwtYm9keXtwYWRkaW5nOjE0cHggMTZweCBjYWxjKDE2cHggKyB2YXIoLS13YW5kLXNhZmUtYm90dG9tKSl9LnFjLXJlbGVhc2UtcGFuZWwsLnFjLXJlc3VsdC1wYW5lbHtnYXA6MTJweH0ucWMtcGFpcntncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyO2dhcDo1cHh9LnFjLXBhaXItbGFiZWx7cGFkZGluZy10b3A6MDtmb250LXNpemU6LjY4cmVtfS5xYy1wYWlyLWZsb3d7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtnYXA6N3B4O3Bvc2l0aW9uOnJlbGF0aXZlfS5xYy1wYWlyLWFycm93e3dpZHRoOjI4cHg7aGVpZ2h0OjIwcHg7anVzdGlmeS1zZWxmOmNlbnRlcjt0cmFuc2Zvcm06cm90YXRlKDkwZGVnKTtmb250LXNpemU6MXJlbTtsaW5lLWhlaWdodDoxfS5xYy1wYWlyLXZhbHVle21pbi1oZWlnaHQ6MzZweDtwYWRkaW5nOjhweCAxMHB4fS5xYy1wYWlyLXZhbHVlIGNvZGV7Zm9udC1zaXplOi43NnJlbX0ucWMtcGFpci12YWx1ZSBzcGFue2ZvbnQtc2l6ZTouOHJlbX0ucWMtcGFpci0tY29tbWl0IC5xYy1wYWlyLXZhbHVle21pbi1oZWlnaHQ6YXV0b30ucWMtcGFpci0tY29tbWl0IC5xYy1tZXNzYWdlLWlucHV0e21pbi1oZWlnaHQ6OTJweDtmb250LXNpemU6MTZweDtsaW5lLWhlaWdodDoxLjQ1fS5xYy1wYWlyLS10YWcgLnFjLXRhZy1maWVsZC1pbnB1dHttaW4taGVpZ2h0OjQ0cHg7Zm9udC1zaXplOjE2cHh9LnFjLWRvY2stc3RhZ2V7aGVpZ2h0OjIzNnB4O2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnI7Z3JpZC10ZW1wbGF0ZS1yb3dzOm1pbm1heCgwLDFmcikgNThweDtnYXA6OHB4O3BhZGRpbmc6OHB4O2JvcmRlci1yYWRpdXM6MTRweH0ucWMtZG9jay1maWVsZHttaW4taGVpZ2h0OjE2MHB4fS5xYy1jaGlwe2hlaWdodDozNnB4O3BhZGRpbmc6MCAxMnB4O2ZvbnQtc2l6ZTouOHJlbX0ucWMtZG9jay1sYXVuY2h7bWluLWhlaWdodDo1OHB4O2ZsZXgtZGlyZWN0aW9uOnJvdztnYXA6OHB4O2JvcmRlci1yYWRpdXM6MTNweH0ucWMtZG9jay1sYXVuY2gtbGFiZWx7Zm9udC1zaXplOi43OHJlbX0ucWMtZG9jay1zdGFnZVtkYXRhLWhvdD0iMSJdIC5xYy1kb2NrLWxhdW5jaC1hcnJvd3t0cmFuc2Zvcm06dHJhbnNsYXRlWSgycHgpfX0ud2FuZC1kaWFsb2ctYmFja2Ryb3B7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDt6LWluZGV4OjkwMDA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmctdG9wOm1heCgyNHB4LHZhcigtLXdhbmQtc2FmZS10b3ApKTtwYWRkaW5nLWJvdHRvbTptYXgoMjRweCx2YXIoLS13YW5kLXNhZmUtYm90dG9tKSk7cGFkZGluZy1sZWZ0Om1heCgyNHB4LHZhcigtLXdhbmQtc2FmZS1sZWZ0KSk7cGFkZGluZy1yaWdodDptYXgoMjRweCx2YXIoLS13YW5kLXNhZmUtcmlnaHQpKTtiYWNrZ3JvdW5kOiMxNDBlMDg1NztiYWNrZHJvcC1maWx0ZXI6Ymx1cigxOHB4KSBzYXR1cmF0ZSgxNDAlKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE4cHgpIHNhdHVyYXRlKDE0MCUpO2FuaW1hdGlvbjp3YW5kRGlhbG9nQmFja2Ryb3BJbiAuMjJzIGN1YmljLWJlemllciguMTYsMSwuMywxKSBib3RofS53YW5kLWRpYWxvZy1iYWNrZHJvcC5jbG9zaW5ne2FuaW1hdGlvbjp3YW5kRGlhbG9nQmFja2Ryb3BPdXQgLjE2cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSBib3RoO3BvaW50ZXItZXZlbnRzOm5vbmV9QGtleWZyYW1lcyB3YW5kRGlhbG9nQmFja2Ryb3BJbnswJXtvcGFjaXR5OjB9dG97b3BhY2l0eToxfX1Aa2V5ZnJhbWVzIHdhbmREaWFsb2dCYWNrZHJvcE91dHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowfX0ud2FuZC1kaWFsb2d7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTttYXgtd2lkdGg6NDIwcHg7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudCgxMjAlIDEyMCUgYXQgMCUgMCUsdmFyKC0tYWNjZW50LW11dGVkKSAwJSx0cmFuc3BhcmVudCA1NSUpLGxpbmVhci1ncmFkaWVudCgxODBkZWcsdmFyKC0tYmctZWxldmF0ZWQpIDAlLHZhcigtLWJnLXNlY29uZGFyeSkgMTAwJSk7Ym9yZGVyOi41cHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czoyMnB4O292ZXJmbG93OmhpZGRlbjtiYWNrZHJvcC1maWx0ZXI6Ymx1cig0MHB4KSBzYXR1cmF0ZSgxODAlKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDQwcHgpIHNhdHVyYXRlKDE4MCUpO2JveC1zaGFkb3c6MCAyNHB4IDY0cHggLTEycHggIzU5M2EyMDQ3LDAgNnB4IDIwcHggLTZweCAjNTkzYTIwMjksMCAwIDAgLjVweCAjN2Q1YjM5MTQsaW5zZXQgMCAxcHggI2ZmZmZmZmIzO2FuaW1hdGlvbjp3YW5kRGlhbG9nSW4gLjI4cyBjdWJpYy1iZXppZXIoLjM0LDEuNCwuNjQsMSkgYm90aH0ud2FuZC1kaWFsb2ctYmFja2Ryb3AuY2xvc2luZyAud2FuZC1kaWFsb2d7YW5pbWF0aW9uOndhbmREaWFsb2dPdXQgLjE2cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSBib3RofUBrZXlmcmFtZXMgd2FuZERpYWxvZ0luezAle29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUoLjkyKSB0cmFuc2xhdGVZKDEwcHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUoMSkgdHJhbnNsYXRlWSgwKX19QGtleWZyYW1lcyB3YW5kRGlhbG9nT3V0ezAle29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUoMSl9dG97b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZSguOTYpIHRyYW5zbGF0ZVkoNHB4KX19LndhbmQtZGlhbG9nLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6MTRweDtwYWRkaW5nOjIycHggMjRweCAxMnB4fS53YW5kLWRpYWxvZy1pY29ue2ZsZXgtc2hyaW5rOjA7d2lkdGg6NDBweDtoZWlnaHQ6NDBweDtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZToyMHB4O2ZvbnQtd2VpZ2h0OjcwMDtsaW5lLWhlaWdodDoxO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggI2ZmZmZmZjgwfS53YW5kLWRpYWxvZy1pY29uLmluZm97YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWFjY2VudC1zb2Z0KSAwJSx2YXIoLS1hY2NlbnQtaG92ZXIpIDEwMCUpO2NvbG9yOiNmZmZ9LndhbmQtZGlhbG9nLWljb24ud2FybmluZ3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2YwYzg5MSAwJSx2YXIoLS13YXJuaW5nKSAxMDAlKTtjb2xvcjojZmZmfS53YW5kLWRpYWxvZy1pY29uLmRhbmdlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2Q5ODE3OCAwJSx2YXIoLS1kYW5nZXIpIDEwMCUpO2NvbG9yOiNmZmZ9LndhbmQtZGlhbG9nLWljb24uc3VjY2Vzc3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsIzhjYWY5NCAwJSx2YXIoLS1zdWNjZXNzKSAxMDAlKTtjb2xvcjojZmZmfS53YW5kLWRpYWxvZy1pY29uLnF1ZXN0aW9ue2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1hY2NlbnQtc29mdCkgMCUsdmFyKC0tYWNjZW50KSAxMDAlKTtjb2xvcjojZmZmfS53YW5kLWRpYWxvZy10ZXh0d3JhcHtmbGV4OjEgMSBhdXRvO21pbi13aWR0aDowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjZweDtwYWRkaW5nLXRvcDo0cHh9LndhbmQtZGlhbG9nLXRpdGxle2ZvbnQtc2l6ZToxLjA2MjVyZW07Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi0uMDFlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xpbmUtaGVpZ2h0OjEuMzt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9LndhbmQtZGlhbG9nLW1lc3NhZ2V7Zm9udC1zaXplOi45cmVtO2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7bGluZS1oZWlnaHQ6MS41NTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9LndhbmQtZGlhbG9nLWJvZHl7cGFkZGluZzo0cHggMjRweCAxNHB4fS53YW5kLWRpYWxvZy1pbnB1dHt3aWR0aDoxMDAlO2JhY2tncm91bmQ6dmFyKC0tYmctc3VyZmFjZSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjEycHg7cGFkZGluZzoxMXB4IDE0cHg7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjlyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDEuNXB4ICM3ZDViMzkwYTt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMTVzIGVhc2UsYm94LXNoYWRvdyAuMTVzIGVhc2UsYmFja2dyb3VuZCAuMTVzIGVhc2U7Ym94LXNpemluZzpib3JkZXItYm94fS53YW5kLWRpYWxvZy1pbnB1dDpmb2N1c3tvdXRsaW5lOm5vbmU7YmFja2dyb3VuZDp2YXIoLS1iZy1lbGV2YXRlZCk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxLjVweCAjN2Q1YjM5MGEsMCAwIDAgM3B4IHZhcigtLWFjY2VudC1nbG93KX0ud2FuZC1kaWFsb2ctZm9vdGVye2Rpc3BsYXk6ZmxleDtnYXA6OHB4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtwYWRkaW5nOjE0cHggMjBweCAyMHB4O2JvcmRlci10b3A6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO21hcmdpbi10b3A6NnB4fS53YW5kLWRpYWxvZy1mb290ZXIgLmJ0bnttaW4td2lkdGg6ODRweH0ud2FuZC1kaWFsb2cgLmJ0bi1kYW5nZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWRhbmdlci1ob3ZlcikgMCUsdmFyKC0tZGFuZ2VyKSAxMDAlKTtjb2xvcjp2YXIoLS10ZXh0LWludmVyc2UpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtib3gtc2hhZG93OjAgMXB4IDJweCB2YXIoLS1kYW5nZXItbXV0ZWQpLDAgNHB4IDEwcHggLTJweCB2YXIoLS1kYW5nZXItbXV0ZWQpLGluc2V0IDAgMXB4ICNmZmZmZmYzOCxpbnNldCAwIC0xcHggIzYwMWUxODJlfS53YW5kLWRpYWxvZyAuYnRuLWRhbmdlcjpob3ZlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2M5NjA1NSwjYjI0ZjQ1KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgMnB4IDRweCB2YXIoLS1kYW5nZXItbXV0ZWQpLDAgOHB4IDIwcHggLTRweCB2YXIoLS1kYW5nZXItZ2xvdyksaW5zZXQgMCAxcHggI2ZmZmZmZjQ3LGluc2V0IDAgLTFweCAjNjAxZTE4MmV9LndhbmQtZGlhbG9nIC5idG4tZGFuZ2VyOmFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsdmFyKC0tZGFuZ2VyKSAwJSwjOTMzOTJmIDEwMCUpO3RyYW5zaXRpb24tZHVyYXRpb246LjA2c31AbWVkaWEocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey53YW5kLWRpYWxvZy1iYWNrZHJvcCwud2FuZC1kaWFsb2ctYmFja2Ryb3AuY2xvc2luZywud2FuZC1kaWFsb2csLndhbmQtZGlhbG9nLWJhY2tkcm9wLmNsb3NpbmcgLndhbmQtZGlhbG9ne2FuaW1hdGlvbjpub25lIWltcG9ydGFudH19QHN1cHBvcnRzIG5vdCAoKGJhY2tkcm9wLWZpbHRlcjogYmx1cigxcHgpKSBvciAoLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMXB4KSkpey53YW5kLWRpYWxvZy1iYWNrZHJvcHtiYWNrZ3JvdW5kOiMxNDBlMDg5OX0ud2FuZC1kaWFsb2d7YmFja2dyb3VuZDp2YXIoLS1iZy1lbGV2YXRlZCk7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1zdWJ0bGUpfX1AbWVkaWEobWF4LXdpZHRoOjQ4MHB4KXsud2FuZC1kaWFsb2ctYmFja2Ryb3B7cGFkZGluZzoxNnB4O2FsaWduLWl0ZW1zOmNlbnRlcn0ud2FuZC1kaWFsb2d7bWF4LXdpZHRoOjEwMCU7Ym9yZGVyLXJhZGl1czoyMHB4fS53YW5kLWRpYWxvZy1mb290ZXJ7ZmxleC13cmFwOndyYXB9LndhbmQtZGlhbG9nLWZvb3RlciAuYnRue2ZsZXg6MSAxIGF1dG99fS5idG4td2l0aC1pY29ue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHh9LmJ0bi13aXRoLWljb24+c3Zne2ZsZXgtc2hyaW5rOjB9LmNvbXBvc2VyLXBpbGwtaWNvbntkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjotMnB4fS5jb21wb3Nlci1waWxsLWxhYmVse2Rpc3BsYXk6aW5saW5lLWJsb2NrO2xldHRlci1zcGFjaW5nOi4wMmVtfS5zZXR0aW5ncy1zZWN0aW9uLWljb257Zm9udC1zaXplOjA7bGluZS1oZWlnaHQ6MH0uc2V0dGluZ3Mtc2VjdGlvbi1pY29uPnN2Z3tkaXNwbGF5OmJsb2NrfS5ibGFuay1jaGF0LXRvb2wtYnRuIC50b29sLWljb257ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2ZvbnQtc2l6ZToxLjEyNXJlbX0uYmxhbmstY2hhdC10b29sLWJ0biAudG9vbC1pY29uPnN2Z3tkaXNwbGF5OmJsb2NrfS5ibGFuay1jaGF0LXRvb2wtYnRuIC50b29sLWljb24tdGV4dHt3aWR0aDphdXRvO2hlaWdodDphdXRvO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOjFyZW07bGluZS1oZWlnaHQ6MX0uYmxhbmstY2hhdC1jd2QtaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZTowO2xpbmUtaGVpZ2h0OjB9LmJsYW5rLWNoYXQtY3dkLWljb24+c3Zne2Rpc3BsYXk6YmxvY2t9LmJsYW5rLWNoYXQtY3dkLWFycm93e2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOjA7bGluZS1oZWlnaHQ6MDt0cmFuc2l0aW9uOnRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5ibGFuay1jaGF0LWN3ZC1hcnJvdz5zdmd7ZGlzcGxheTpibG9ja30uZm9sZGVyLXBpY2tlci1pY29ue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOjA7bGluZS1oZWlnaHQ6MH0uZm9sZGVyLXBpY2tlci1pY29uPnN2Z3tkaXNwbGF5OmJsb2NrfS5mb2xkZXItcGlja2VyLXF1aWNrLWJ0bi5idG4td2l0aC1pY29ue2dhcDo1cHh9LmFwcHJvdmFsLXN0YXRzLXJvdy1pY29ue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTRweDtoZWlnaHQ6MTRweDtmb250LXNpemU6MDtsaW5lLWhlaWdodDowfS5hcHByb3ZhbC1zdGF0cy1yb3ctaWNvbj5zdmd7ZGlzcGxheTpibG9ja30uYXR0YWNobWVudC1waWxsIC5hdHQtaWNvbj5zdmd7ZGlzcGxheTpibG9ja30uZm9sZGVyLXBpY2tlci1jb21wYWN0LWljb257ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MDtsaW5lLWhlaWdodDowfS5mb2xkZXItcGlja2VyLWNvbXBhY3QtaWNvbj5zdmd7ZGlzcGxheTpibG9ja30uZm9sZGVyLXBpY2tlci10b2dnbGV7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MDtsaW5lLWhlaWdodDowfS5mb2xkZXItcGlja2VyLXRvZ2dsZT5zdmd7ZGlzcGxheTpibG9ja30uZm9sZGVyLXBpY2tlci10b2dnbGUub3Blbnt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyl9LndvcmtpbmctZGlyLWluZGljYXRvci1pY29ue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOjA7bGluZS1oZWlnaHQ6MH0ud29ya2luZy1kaXItaW5kaWNhdG9yLWljb24+c3Zne2Rpc3BsYXk6YmxvY2t9LndhbmQtam95c3RpY2stcm9vdHtwb3NpdGlvbjpmaXhlZDt6LWluZGV4OjQwO3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowO3Zpc2liaWxpdHk6aGlkZGVuO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZX0ud2FuZC1qb3lzdGljay1yb290LnZpc2libGV7b3BhY2l0eToxO3Zpc2liaWxpdHk6dmlzaWJsZX0ud2FuZC1qb3lzdGljay1iYWNrZHJvcHtwb3NpdGlvbjpmaXhlZDtpbnNldDowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7cG9pbnRlci1ldmVudHM6bm9uZTt2aXNpYmlsaXR5OmhpZGRlbn0ud2FuZC1qb3lzdGljay1iYWNrZHJvcC5hY3RpdmV7dmlzaWJpbGl0eTp2aXNpYmxlO3BvaW50ZXItZXZlbnRzOmF1dG99LndhbmQtam95c3RpY2stYmFsbHtwb3NpdGlvbjpmaXhlZDtyaWdodDoxOHB4O2JvdHRvbTo5NnB4O3dpZHRoOjU0cHg7aGVpZ2h0OjU0cHg7Ym9yZGVyLXJhZGl1czo1MCU7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2NvbG9yOiNmNWViZTFmMDtiYWNrZ3JvdW5kOiMyMzFjMThkYjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjQ1LDIzNSwyMjUsLjE4KTtib3gtc2hhZG93OjAgOHB4IDIycHggIzAwMDAwMDRkLGluc2V0IDAgMXB4ICNmZmZmZmYxNDtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxMHB4KTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDEwcHgpO3BvaW50ZXItZXZlbnRzOmF1dG87dG91Y2gtYWN0aW9uOm5vbmU7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50O3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3otaW5kZXg6NDM7Y3Vyc29yOmdyYWI7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjE4cyB2YXIoLS1lYXNlLXNwcmluZyksYmFja2dyb3VuZCAuMnMgZWFzZSxib3JkZXItY29sb3IgLjJzIGVhc2UsYm94LXNoYWRvdyAuMnMgZWFzZX0ud2FuZC1qb3lzdGljay1sb2dve3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MX0ud2FuZC1qb3lzdGljay1iYWxsOmhvdmVye3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpO2JvcmRlci1jb2xvcjojZjVlYmUxNGQ7YmFja2dyb3VuZDojMmIyMjFkZTY7Ym94LXNoYWRvdzowIDEwcHggMjZweCAjMDAwMDAwNTcsaW5zZXQgMCAxcHggI2ZmZmZmZjFhfS53YW5kLWpveXN0aWNrLWJhbGw6YWN0aXZlLC53YW5kLWpveXN0aWNrLWJhbGwucGFuZWwtb3BlbntiYWNrZ3JvdW5kOiMxZDE3MTRmMH0ud2FuZC1qb3lzdGljay1iYWxsLmRyYWdnaW5ne3RyYW5zZm9ybTpzY2FsZSgxLjEyKTtjdXJzb3I6Z3JhYmJpbmc7Ym94LXNoYWRvdzowIDEwcHggMjhweCAjMDAwMDAwNWN9LndhbmQtam95c3RpY2stcGFuZWx7cG9zaXRpb246Zml4ZWQ7cmlnaHQ6MThweDtib3R0b206MTYwcHg7ei1pbmRleDo0NDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo4cHg7cGFkZGluZzoxMHB4O2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kOiMxZDE3MTRmNTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjQ1LDIzNSwyMjUsLjEyKTtib3gtc2hhZG93OjAgMTRweCAzNHB4ICMwMDAwMDA1NyxpbnNldCAwIDFweCAjZmZmZmZmMGY7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTJweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxMnB4KTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDt2aXNpYmlsaXR5OmhpZGRlbjt0cmFuc2Zvcm06dHJhbnNsYXRlWSg4cHgpIHNjYWxlKC45Nik7dHJhbnNmb3JtLW9yaWdpbjpib3R0b20gcmlnaHQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4xOHMgdmFyKC0tZWFzZS1vdXQtZXhwbyksdHJhbnNmb3JtIC4yMnMgdmFyKC0tZWFzZS1zcHJpbmcpLHZpc2liaWxpdHkgMHMgbGluZWFyIC4xOHM7d2lkdGg6bWluKDIyNHB4LGNhbGMoMTAwdncgLSAzNnB4KSk7bWF4LXdpZHRoOmNhbGMoMTAwdncgLSAzNnB4KX0ud2FuZC1qb3lzdGljay1wYW5lbC5hY3RpdmV7cG9pbnRlci1ldmVudHM6YXV0bztvcGFjaXR5OjE7dmlzaWJpbGl0eTp2aXNpYmxlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpO3RyYW5zaXRpb24tZGVsYXk6MHN9LndqcC1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MTBweDttaW4taGVpZ2h0OjI0cHh9LndqcC10aXRsZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2ZvbnQtc2l6ZTouNzZyZW07bGV0dGVyLXNwYWNpbmc6MDtjb2xvcjojZjVlYmUxYzc7Zm9udC13ZWlnaHQ6NjAwfS53anAtdGl0bGUtaWNvbntjb2xvcjojZjVlYmUxYjh9LndqcC1jbG9zZXt3aWR0aDoyNHB4O2hlaWdodDoyNHB4O2JvcmRlci1yYWRpdXM6NTAlO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNDUsMjM1LDIyNSwuMTIpO2JhY2tncm91bmQ6I2ZmZmZmZjBkO2NvbG9yOiNmNWViZTFiODtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MDt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE0cyBlYXNlLGNvbG9yIC4xNHMgZWFzZSx0cmFuc2Zvcm0gLjE0cyBlYXNlfS53anAtY2xvc2U6aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmMWE7Y29sb3I6I2Y1ZWJlMWYyfS53anAtY2xvc2U6YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTQpfS53anAtZHBhZHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4fS53anAtZHBhZC1yb3d7ZGlzcGxheTpmbGV4O2dhcDo1cHh9LndqcC1ncmlke2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtnYXA6NXB4O2p1c3RpZnktY29udGVudDpjZW50ZXJ9LndqcC1mbmtleXN7bWF4LXdpZHRoOjIwMHB4fS53anAta2V5e21pbi13aWR0aDo0NHB4O2hlaWdodDozOHB4O3BhZGRpbmc6MCA4cHg7Ym9yZGVyLXJhZGl1czo4cHg7Zm9udC1zaXplOi43NnJlbTtmb250LXdlaWdodDo1MDA7Y29sb3I6I2Y1ZWJlMWQ2O2JhY2tncm91bmQ6I2ZmZmZmZjBiO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNDUsMjM1LDIyNSwuMTEpO2N1cnNvcjpwb2ludGVyO3RvdWNoLWFjdGlvbjptYW5pcHVsYXRpb247LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50O3VzZXItc2VsZWN0Om5vbmU7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGVhc2UsYmFja2dyb3VuZCAuMTVzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZSxjb2xvciAuMTVzIGVhc2V9LndqcC1rZXk6aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmMTQ7Ym9yZGVyLWNvbG9yOiNmNWViZTEzMztjb2xvcjojZjVlYmUxZjJ9LndqcC1rZXk6YWN0aXZle2JhY2tncm91bmQ6I2ZmZmZmZjFmO3RyYW5zZm9ybTpzY2FsZSguOTYpfS53anAta2V5LndqcC1tb2QuYWN0aXZle2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtjb2xvcjojZmZmO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfQo="),
8
+ scriptsJs: decode("InVzZSBzdHJpY3QiOygoKT0+e3ZhciBvdT0id2FuZC1sZWdhY3ktcHdhLWNsZWFudXAtdjEiLEFsPVsid2FuZC1zdGF0aWMtIiwid2FuZC1ydW50aW1lLSJdO2Z1bmN0aW9uIGpyKGUpe2lmKCFlKXJldHVybiExO3RyeXtjb25zdCB0PW5ldyBVUkwoZS5zY3JpcHRVUkwsbG9jYXRpb24uaHJlZik7cmV0dXJuIHQub3JpZ2luPT09bG9jYXRpb24ub3JpZ2luJiZ0LnBhdGhuYW1lPT09Ii9zdy5qcyJ9Y2F0Y2h7cmV0dXJuITF9fWZ1bmN0aW9uIHhsKGUpe3JldHVybiBqcihlLmluc3RhbGxpbmcpfHxqcihlLndhaXRpbmcpfHxqcihlLmFjdGl2ZSl9ZnVuY3Rpb24gU2woKXt0cnl7cmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKG91KT09PSJkb25lIn1jYXRjaHtyZXR1cm4hMX19ZnVuY3Rpb24gSWwoKXt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0ob3UsImRvbmUiKX1jYXRjaHt9fWFzeW5jIGZ1bmN0aW9uIFRsKCl7aWYoISgic2VydmljZVdvcmtlciJpbiBuYXZpZ2F0b3IpKXJldHVybiEwO3RyeXtjb25zdCB0PShhd2FpdCBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5nZXRSZWdpc3RyYXRpb25zKCkpLmZpbHRlcih4bCk7cmV0dXJuIGF3YWl0IFByb21pc2UuYWxsKHQubWFwKG49Pm4udW5yZWdpc3RlcigpKSksITB9Y2F0Y2h7cmV0dXJuITF9fWFzeW5jIGZ1bmN0aW9uIExsKCl7aWYoISgiY2FjaGVzImluIHdpbmRvdykpcmV0dXJuITA7dHJ5e2NvbnN0IHQ9KGF3YWl0IGNhY2hlcy5rZXlzKCkpLmZpbHRlcihuPT5BbC5zb21lKGk9Pm4uc3RhcnRzV2l0aChpKSkpO3JldHVybiBhd2FpdCBQcm9taXNlLmFsbCh0Lm1hcChuPT5jYWNoZXMuZGVsZXRlKG4pKSksITB9Y2F0Y2h7cmV0dXJuITF9fWFzeW5jIGZ1bmN0aW9uIE1sKCl7aWYoU2woKSlyZXR1cm47Y29uc3QgZT0ic2VydmljZVdvcmtlciJpbiBuYXZpZ2F0b3ImJmpyKG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLmNvbnRyb2xsZXIpLFt0LG5dPWF3YWl0IFByb21pc2UuYWxsKFtUbCgpLExsKCldKTshdHx8IW58fChJbCgpLGUmJmxvY2F0aW9uLnJlbG9hZCgpKX1NbCgpO3ZhciBlZz0iJHtlc2NhcGVIdG1sKGNvbmZpZ1BhdGgpfSIscWk9IndhbmQtY2hhdC1leHBhbmQtc3RhdGUtdjEiLFJyPVtmdW5jdGlvbigpe31dOyhmdW5jdGlvbigpe3RyeXt2YXIgdD1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC1scy1zY2hlbWEiKSxuPXQ9PW51bGw/MDpwYXJzZUludCh0LDEwKTtuPj0wfHwobj0wKTtmb3IodmFyIGk9bjtpPFJyLmxlbmd0aDtpKyspdHJ5e1JyW2ldKCl9Y2F0Y2h7fW48UnIubGVuZ3RoJiZsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1scy1zY2hlbWEiLFN0cmluZyhSci5sZW5ndGgpKX1jYXRjaHt9fSkoKTtmdW5jdGlvbiBIaShlLHQpe3RyeXt2YXIgbj1sb2NhbFN0b3JhZ2UuZ2V0SXRlbShlKTtyZXR1cm4gbj09PSJ0cnVlIj8hMDpuPT09ImZhbHNlIj8hMTp0fWNhdGNoe3JldHVybiB0fX1mdW5jdGlvbiBJZShlLHQpe3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbShlLFN0cmluZyghIXQpKX1jYXRjaHt9fXZhciByPXtzZWxlY3RlZElkOihmdW5jdGlvbigpe3RyeXt2YXIgZT1uZXcgVVJMKHdpbmRvdy5sb2NhdGlvbi5ocmVmKSx0PWUuc2VhcmNoUGFyYW1zLmdldCgic2Vzc2lvbiIpO2lmKHQpcmV0dXJuIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLXNlbGVjdGVkLXNlc3Npb24iLHQpLGUuc2VhcmNoUGFyYW1zLmRlbGV0ZSgic2Vzc2lvbiIpLGhpc3RvcnkucmVwbGFjZVN0YXRlKGhpc3Rvcnkuc3RhdGUsIiIsZS50b1N0cmluZygpKSx0fWNhdGNoe310cnl7cmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLXNlbGVjdGVkLXNlc3Npb24iKXx8bnVsbH1jYXRjaHtyZXR1cm4gbnVsbH19KSgpLHBvbGxUaW1lcjpudWxsLGNvbmZpZzpudWxsLHNlc3Npb25zOltdLHN1Z2dlc3Rpb25UaW1lcjpudWxsLHRlcm1pbmFsOm51bGwsdGVybWluYWxGaXRJblByb2dyZXNzOiExLHRlcm1pbmFsU2Vzc2lvbklkOm51bGwsdGVybWluYWxPdXRwdXQ6IiIsdGVybWluYWxPdXRwdXRNYXJrZXI6MCx0ZXJtaW5hbExpdmVTdHJlYW1TZXNzaW9uczp7fSxzeW5jT3V0cHV0QnVmZmVyOm51bGwsc3luY091dHB1dERlYWRsaW5lOjAsc3luY0ZyYW1pbmdSZXNpZHVlOiExLGxhc3RDaHVua0F0OjAsdGVybWluYWxIZWFsdGhUaW1lcjpudWxsLGxhc3RUZXJtaW5hbFJlc3luY0F0OjAsdGVybWluYWxBdXRvRm9sbG93OiEwLHRlcm1pbmFsUHJvZ3JhbW1hdGljU2Nyb2xsVW50aWw6MCx0ZXJtaW5hbFNjcm9sbElkbGVUaW1lcjpudWxsLHRlcm1pbmFsU2Nyb2xsVGhyZXNob2xkOjEyLHNob3dUZXJtaW5hbEp1bXBUb0JvdHRvbTohMSx0ZXJtaW5hbFZpZXdwb3J0RWw6bnVsbCx0ZXJtaW5hbFZpZXdwb3J0U2Nyb2xsSGFuZGxlcjpudWxsLHRlcm1pbmFsVmlld3BvcnRUb3VjaEhhbmRsZXI6bnVsbCx0ZXJtaW5hbFZpZXdwb3J0VG91Y2hTdGFydEhhbmRsZXI6bnVsbCx0ZXJtaW5hbFRvdWNoU3RhcnRZOjAsdGVybWluYWxDb21wb3Npbmc6ITEscmVzaXplT2JzZXJ2ZXI6bnVsbCxyZXNpemVIYW5kbGVyOm51bGwscmVzaXplVGltZXI6bnVsbCxpbnB1dFF1ZXVlOlByb21pc2UucmVzb2x2ZSgpLHBlbmRpbmdNZXNzYWdlczpbXSxtZXNzYWdlUXVldWU6W10sY3Jvc3NTZXNzaW9uUXVldWU6KGZ1bmN0aW9uKCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLWNyb3NzLXNlc3Npb24tcXVldWUiKSx0PWU/SlNPTi5wYXJzZShlKTpbXTtyZXR1cm4gQXJyYXkuaXNBcnJheSh0KT90OltdfWNhdGNoe3JldHVybltdfX0pKCksc3RydWN0dXJlZElucHV0UXVldWU6W10scXVldWVCYXJFeHBhbmRlZDohMSxxdWV1ZUJhckhvdmVySW5kZXg6bnVsbCxxdWV1ZUJhckRyYWc6bnVsbCxxdWV1ZUJhclByb21vdGluZzohMSxkcmFmdHM6e30saXNTeW5jaW5nSW5wdXRCb3g6ITEsbG9naW5QZW5kaW5nOiExLGxvZ2luQ2hlY2tlZDohMSxib290c3RyYXBwaW5nOiEwLHNlc3Npb25zRHJhd2VyT3BlbjpIaSgid2FuZC1zaWRlYmFyLW9wZW4iLCExKSxzaWRlYmFyUGlubmVkOkhpKCJ3YW5kLXNpZGViYXItcGlubmVkIiwhMCksc2lkZWJhckNvbGxhcHNlZDpIaSgid2FuZC1zaWRlYmFyLWNvbGxhcHNlZCIsITEpLG1vZGFsT3BlbjohMSxwcmVzZXRWYWx1ZToiIixjd2RWYWx1ZToiIixtb2RlVmFsdWU6Im1hbmFnZWQiLGNoYXRNb2RlOiJtYW5hZ2VkIixjaGF0TW9kZWw6KGZ1bmN0aW9uKCl7dHJ5e3JldHVybiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC1jaGF0LW1vZGVsIil8fCIifWNhdGNoe3JldHVybiIifX0pKCksY2hhdFRoaW5raW5nOihmdW5jdGlvbigpe3RyeXt2YXIgZT1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC10aGlua2luZy1lZmZvcnQiKXx8Im9mZiI7cmV0dXJuIGU9PT0ib2ZmInx8ZT09PSJzdGFuZGFyZCJ8fGU9PT0iZGVlcCJ8fGU9PT0ibWF4Ij9lOiJvZmYifWNhdGNoe3JldHVybiJvZmYifX0pKCksYXZhaWxhYmxlTW9kZWxzOltdLGF2YWlsYWJsZUNvZGV4TW9kZWxzOltdLG1vZGVsc1JlZnJlc2hpbmc6ITEsc2Vzc2lvbkNyZWF0ZUtpbmQ6InN0cnVjdHVyZWQiLHNlc3Npb25DcmVhdGVXb3JrdHJlZTohMSxzZXNzaW9uVG9vbDoiY2xhdWRlIixhY3RpdmVXb3JrdHJlZU1lcmdlU2Vzc2lvbklkOm51bGwsd29ya3RyZWVNZXJnZUNoZWNrUmVzdWx0Om51bGwsd29ya3RyZWVNZXJnZUxvYWRpbmc6ITEsd29ya3RyZWVNZXJnZVN1Ym1pdHRpbmc6ITEsd29ya3RyZWVNZXJnZUVycm9yOiIiLHByZWZlcnJlZENvbW1hbmQ6ImNsYXVkZSIsc3RydWN0dXJlZFJ1bm5lcjoiY2xhdWRlLWNsaS1wcmludCIsbGFzdFJlc2l6ZTp7Y29sczowLHJvd3M6MH0saXNPbmxpbmU6bmF2aWdhdG9yLm9uTGluZSx3czpudWxsLHdzQ29ubmVjdGVkOiExLGxhc3RXc01lc3NhZ2VBdDowLHdzSGVhcnRiZWF0Q2hlY2tUaW1lcjpudWxsLF91cGRhdGVCdWJibGVTaG93bjohMSxub3RpZmljYXRpb25IaXN0b3J5Ont9LGRlbGF5ZWROb3RpZmljYXRpb25UaW1lcjpudWxsLG5vdGlmU291bmQ6KGZ1bmN0aW9uKCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLW5vdGlmLXNvdW5kIik7cmV0dXJuIGU9PT1udWxsPyEwOmU9PT0idHJ1ZSJ9Y2F0Y2h7cmV0dXJuITB9fSkoKSxub3RpZlZvbHVtZTooZnVuY3Rpb24oKXt0cnl7dmFyIGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtbm90aWYtdm9sdW1lIik7cmV0dXJuIGU9PT1udWxsPzgwOk1hdGgubWF4KDAsTWF0aC5taW4oMTAwLHBhcnNlSW50KGUsMTApfHw4MCkpfWNhdGNoe3JldHVybiA4MH19KSgpLG5vdGlmQnViYmxlOihmdW5jdGlvbigpe3RyeXt2YXIgZT1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC1ub3RpZi1idWJibGUiKTtyZXR1cm4gZT09PW51bGw/ITA6ZT09PSJ0cnVlIn1jYXRjaHtyZXR1cm4hMH19KSgpLHRvb2xDb250ZW50Q2FjaGU6e30sbGFzdFNlcUJ5U2Vzc2lvbjp7fSxjdXJyZW50VmlldzoidGVybWluYWwiLHRlcm1pbmFsU2NhbGU6KGZ1bmN0aW9uKCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLXRlcm1pbmFsLXNjYWxlIik7cmV0dXJuIGU/cGFyc2VGbG9hdChlKToxfWNhdGNoe3JldHVybiAxfX0pKCksdGVybWluYWxCYXNlRm9udFNpemU6MTMsa2V5Ym9hcmRQb3B1cE9wZW46ITEsZmlsZVBhbmVsT3BlbjooZnVuY3Rpb24oKXt0cnl7cmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLWZpbGUtcGFuZWwtb3BlbiIpPT09InRydWUifWNhdGNoe3JldHVybiExfX0pKCksdG9wYmFyTW9yZU9wZW46ITEsZ2l0U3RhdHVzOm51bGwsZ2l0U3RhdHVzU2Vzc2lvbklkOm51bGwsZ2l0U3RhdHVzTG9hZGluZzohMSxnaXRTdGF0dXNJbmZsaWdodDpudWxsLGdpdFN0YXR1c0xhc3RGZXRjaEF0OjAscXVpY2tDb21taXRPcGVuOiExLHF1aWNrQ29tbWl0U3VibWl0dGluZzohMSxxdWlja0NvbW1pdEdlbmVyYXRpbmc6ITEscXVpY2tDb21taXRFcnJvcjoiIixxdWlja0NvbW1pdEZvcm06e2N1c3RvbU1lc3NhZ2U6IiIsdGFnOiIiLHRhZ0VkaXRlZDohMX0scXVpY2tDb21taXRQdXNoaW5nOiExLHF1aWNrQ29tbWl0UHVzaEVycm9yOiIiLHF1aWNrQ29tbWl0UmVzdWx0Om51bGwscXVpY2tDb21taXREcmFnQWN0aW9uOiJjb21taXQiLHF1aWNrQ29tbWl0U3VibW9kdWxlSW50ZW50OiExLGNoYXRTdGlja1RvQm90dG9tOiEwLGNoYXRVbnJlYWRDb3VudDowLGNoYXRVbnJlYWRTdGFydEluZGV4Oi0xLGNoYXRTY3JvbGxUaHJlc2hvbGQ6MTYwLGNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbDohMSxjaGF0U2Nyb2xsRWxlbWVudDpudWxsLGNoYXRTY3JvbGxIYW5kbGVyOm51bGwsY2hhdFNjcm9sbFdoZWVsSGFuZGxlcjpudWxsLGNoYXRTY3JvbGxUb3VjaFN0YXJ0SGFuZGxlcjpudWxsLGNoYXRTY3JvbGxUb3VjaE1vdmVIYW5kbGVyOm51bGwsY2hhdFRvdWNoU3RhcnRZOjAsY2hhdEluaXRpYWxSZW5kZXJEb25lOiExLGxhc3RGb3JlZ3JvdW5kU3luY0F0OjAsZm9yZWdyb3VuZFN5bmNUaW1lcjpudWxsLHdzUmVjb25uZWN0QXR0ZW1wdHM6MCx3c1JlY29ubmVjdFRpbWVyOm51bGwsY3VycmVudE1lc3NhZ2VzOltdLGxhc3RSZW5kZXJlZEhhc2g6MCxsYXN0UmVuZGVyZWRNc2dDb3VudDowLGxhc3RSZW5kZXJlZEVtcHR5Om51bGwscmVuZGVyUGVuZGluZzohMSxjaGF0UGFnZVNpemU6MjAsY2hhdFJlbmRlcmVkQ291bnQ6MjAsY3VycmVudFRhc2s6bnVsbCx0ZXJtaW5hbEludGVyYWN0aXZlOiExLG1pbmlLZXlib2FyZFZpc2libGU6ITEsbW9kaWZpZXJzOntjdHJsOiExLGFsdDohMSxzaGlmdDohMX0sam95c3RpY2tQb3M6KGZ1bmN0aW9uKCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLWJhbGwtcG9zIik7aWYoIWUpcmV0dXJuIG51bGw7dmFyIHQ9SlNPTi5wYXJzZShlKTtyZXR1cm4gdCYmdHlwZW9mIHQ9PSJvYmplY3QiP3Q6bnVsbH1jYXRjaHtyZXR1cm4gbnVsbH19KSgpLGpveXN0aWNrUGlubmVkT3BlbjohMSxqb3lzdGlja1Jvb3RFbDpudWxsLGpveXN0aWNrUGFuZWxFbDpudWxsLGpveXN0aWNrQmFja2Ryb3BFbDpudWxsLGpveXN0aWNrQmFsbEVsOm51bGwsam95c3RpY2tQb2ludGVySWQ6bnVsbCxqb3lzdGlja0dlc3R1cmU6bnVsbCxqb3lzdGlja1ByZXNzU3RhcnQ6bnVsbCxqb3lzdGlja0xvbmdQcmVzc1RpbWVyOm51bGwsam95c3RpY2tNb3ZlSGFuZGxlcjpudWxsLGpveXN0aWNrVXBIYW5kbGVyOm51bGwsam95c3RpY2tSZXNpemVIYW5kbGVyOm51bGwsZmlsZVNlYXJjaFF1ZXJ5OiIiLGZpbGVFeHBsb3JlckxvYWRpbmc6ITEsYWxsRmlsZXM6W10sZmlsZUV4cGxvcmVyQ3dkOiIiLGZpbGVFeHBsb3JlclRydW5jYXRlZDohMSxmaWxlRXhwbG9yZXJUb3RhbDowLGNsYXVkZUhpc3Rvcnk6W10sY2xhdWRlSGlzdG9yeUxvYWRlZDohMSxjbGF1ZGVIaXN0b3J5RXhwYW5kZWQ6ITEsY2xhdWRlSGlzdG9yeUV4cGFuZGVkRGlyczp7fSxhcmNoaXZlZEV4cGFuZGVkOiExLHNlc3Npb25zTWFuYWdlTW9kZTohMSxzZWxlY3RlZFNlc3Npb25JZHM6e30sc2VsZWN0ZWRDbGF1ZGVIaXN0b3J5SWRzOnt9LGNvZGV4SGlzdG9yeTpbXSxjb2RleEhpc3RvcnlMb2FkZWQ6ITEsY29kZXhIaXN0b3J5RXhwYW5kZWREaXJzOnt9LHNlbGVjdGVkQ29kZXhIaXN0b3J5SWRzOnt9LGFza1VzZXJTZWxlY3Rpb25zOnt9LHF1ZXVlRXBvY2g6MCxwZW5kaW5nQXR0YWNobWVudHM6W10sd29ya2luZ0RpcjooZnVuY3Rpb24oKXt0cnl7dmFyIGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtd29ya2luZy1kaXIiKTtyZXR1cm4gZXx8IiJ9Y2F0Y2h7cmV0dXJuIiJ9fSkoKX0sX2k9Ilx1NEUyRFx1NjU4NyIsV3I9e1x1NEUyRFx1NjU4Nzp7InN1YmFnZW50LnRhZyI6Ilx1NUI1MFx1NEVFM1x1NzQwNiIsInN1YmFnZW50LmhhbmRvZmYiOiJ7cGFyZW50fSBcdThCQTkge3N1Yn0gXHU1RTJFXHU1RkQ5Iiwic3ViYWdlbnQuaGFuZG9mZi53aXRoX2Rlc2MiOiJ7cGFyZW50fSBcdThCQTkge3N1Yn0gXHU1RTJFXHU1RkQ5XHVGRjFBIiwic3ViYWdlbnQuY29udGludWVkIjoiXHU3RUU3XHU3RUVEXHU4RjkzXHU1MUZBIiwic3ViYWdlbnQudGFzay5kb25lIjoiXHU0RUZCXHU1MkExXHU1QjhDXHU2MjEwIiwic3ViYWdlbnQudGFzay5mYWlsZWQiOiJcdTRFRkJcdTUyQTFcdTU5MzFcdThEMjUiLCJzdWJhZ2VudC5ydW5uaW5nIjoiXHU4RkQwXHU4ODRDXHU0RTJEIiwic3ViYWdlbnQubm9fb3V0cHV0IjoiXHVGRjA4XHU2NUUwXHU4RjkzXHU1MUZBXHVGRjA5Iiwic3ViYWdlbnQuaGVscGVyX2ZhbGxiYWNrX3ByZWZpeCI6Ilx1NTM0Rlx1NEY1Q1x1NzMyQlx4QjciLCJzdWJhZ2VudC50aXRsZV9hcmlhIjoiXHU3MEI5XHU1MUZCXHU1QzU1XHU1RjAwIC8gXHU2NTM2XHU4RDc3XHU1QjUwXHU0RUUzXHU3NDA2XHU4RjkzXHU1MUZBIiwic3ViYWdlbnQudGFnX3RpdGxlIjoiXHU1QjUwXHU0RUUzXHU3NDA2IC8gc3ViYWdlbnQiLCJ1aS5leHBhbmQiOiJcdTVDNTVcdTVGMDAiLCJ1aS5jb2xsYXBzZSI6Ilx1NjUzNlx1OEQ3NyIsInVpLmV4cGFuZF9wYW5lbF9hcmlhIjoiXHU1QzU1XHU1RjAwXHU1QjUwXHU0RUUzXHU3NDA2XHU4RjkzXHU1MUZBIiwidWkuY29sbGFwc2VfcGFuZWxfYXJpYSI6Ilx1NjUzNlx1OEQ3N1x1NUI1MFx1NEVFM1x1NzQwNlx1OEY5M1x1NTFGQSIsImhpc3RvcnkuZXhwYW5kIjoiXHU1QzU1XHU1RjAwXHU1Mzg2XHU1M0YyXHU1QkY5XHU4QkREIiwiaGlzdG9yeS5jb2xsYXBzZSI6Ilx1NjUzNlx1OEQ3N1x1NTM4Nlx1NTNGMlx1NUJGOVx1OEJERCIsImhpc3Rvcnkucm91bmRzIjoie259IFx1OEY2RVx1NUJGOVx1OEJERCIsImhpc3RvcnkudG9vbHMiOiJ7bn0gXHU2QjIxXHU1REU1XHU1MTc3XHU4QzAzXHU3NTI4IiwiaGlzdG9yeS5hZ2VudHMiOiJ7bn0gXHU0RTJBXHU1QjUwXHU0RUUzXHU3NDA2IiwiaGlzdG9yeS5lcnJvcnMiOiJ7bn0gXHU0RTJBXHU1OTMxXHU4RDI1Iiwic3RvcC5jb25maXJtLnRpdGxlIjoiXHU1MDVDXHU2QjYyXHU0RUZCXHU1MkExIiwic3RvcC5jb25maXJtLm1lc3NhZ2UiOiJcdTc4NkVcdTVCOUFcdTg5ODFcdTUwNUNcdTZCNjJcdTVGNTNcdTUyNERcdTZCNjNcdTU3MjhcdThGRDBcdTg4NENcdTc2ODRcdTRFRkJcdTUyQTFcdTU0MTdcdUZGMUYiLCJzdG9wLmNvbmZpcm0ub2siOiJcdTUwNUNcdTZCNjIiLCJzdG9wLmNvbmZpcm0uY2FuY2VsIjoiXHU1M0Q2XHU2RDg4In0sRW5nbGlzaDp7InN1YmFnZW50LnRhZyI6IlN1YmFnZW50Iiwic3ViYWdlbnQuaGFuZG9mZiI6IntwYXJlbnR9IGFza2VkIHtzdWJ9IGZvciBoZWxwIiwic3ViYWdlbnQuaGFuZG9mZi53aXRoX2Rlc2MiOiJ7cGFyZW50fSBhc2tlZCB7c3VifSBmb3IgaGVscCB3aXRoOiAiLCJzdWJhZ2VudC5jb250aW51ZWQiOiJjb250aW51ZWQiLCJzdWJhZ2VudC50YXNrLmRvbmUiOiJUYXNrIGNvbXBsZXRlIiwic3ViYWdlbnQudGFzay5mYWlsZWQiOiJUYXNrIGZhaWxlZCIsInN1YmFnZW50LnJ1bm5pbmciOiJSdW5uaW5nIiwic3ViYWdlbnQubm9fb3V0cHV0IjoiKG5vIG91dHB1dCkiLCJzdWJhZ2VudC5oZWxwZXJfZmFsbGJhY2tfcHJlZml4IjoiSGVscGVyXHhCNyIsInN1YmFnZW50LnRpdGxlX2FyaWEiOiJDbGljayB0byBleHBhbmQgLyBjb2xsYXBzZSBzdWJhZ2VudCBvdXRwdXQiLCJzdWJhZ2VudC50YWdfdGl0bGUiOiJTdWJhZ2VudCIsInVpLmV4cGFuZCI6IkV4cGFuZCIsInVpLmNvbGxhcHNlIjoiQ29sbGFwc2UiLCJ1aS5leHBhbmRfcGFuZWxfYXJpYSI6IkV4cGFuZCBzdWJhZ2VudCBvdXRwdXQiLCJ1aS5jb2xsYXBzZV9wYW5lbF9hcmlhIjoiQ29sbGFwc2Ugc3ViYWdlbnQgb3V0cHV0IiwiaGlzdG9yeS5leHBhbmQiOiJTaG93IGVhcmxpZXIgY29udmVyc2F0aW9uIiwiaGlzdG9yeS5jb2xsYXBzZSI6IkhpZGUgZWFybGllciBjb252ZXJzYXRpb24iLCJoaXN0b3J5LnJvdW5kcyI6IntufSByb3VuZHMiLCJoaXN0b3J5LnRvb2xzIjoie259IHRvb2wgY2FsbHMiLCJoaXN0b3J5LmFnZW50cyI6IntufSBzdWJhZ2VudHMiLCJoaXN0b3J5LmVycm9ycyI6IntufSBmYWlsZWQiLCJzdG9wLmNvbmZpcm0udGl0bGUiOiJTdG9wIHRhc2siLCJzdG9wLmNvbmZpcm0ubWVzc2FnZSI6IlN0b3AgdGhlIHRhc2sgdGhhdCdzIGN1cnJlbnRseSBydW5uaW5nPyIsInN0b3AuY29uZmlybS5vayI6IlN0b3AiLCJzdG9wLmNvbmZpcm0uY2FuY2VsIjoiQ2FuY2VsIn19O2Z1bmN0aW9uIGx1KCl7dmFyIGU9ci5jb25maWcmJnR5cGVvZiByLmNvbmZpZy5sYW5ndWFnZT09InN0cmluZyI/ci5jb25maWcubGFuZ3VhZ2UudHJpbSgpOiIiO2lmKCFlKXJldHVybiBfaTtpZihXcltlXSlyZXR1cm4gZTt2YXIgdD1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuIHQ9PT0iZW5nbGlzaCJ8fHQ9PT0iZW4ifHx0LmluZGV4T2YoImVuZ2xpc2giKT09PTB8fHQuaW5kZXhPZigiXHU4MkYxIik9PT0wPyJFbmdsaXNoIjp0PT09Ilx1NEUyRFx1NjU4NyJ8fHQ9PT0iemgifHx0LmluZGV4T2YoInpoIik9PT0wfHx0LmluZGV4T2YoIlx1NEUyRCIpPT09MHx8dC5pbmRleE9mKCJjaGluZXNlIik9PT0wPyJcdTRFMkRcdTY1ODciOiJFbmdsaXNoIn1mdW5jdGlvbiBjZShlLHQpe3ZhciBuPWx1KCksaT1XcltuXXx8V3JbX2ldLGE9aSYmZSBpbiBpP2lbZV06bnVsbDtpZihhPT1udWxsKXt2YXIgdT1XcltfaV07YT11JiZlIGluIHU/dVtlXTplfWlmKHQmJnR5cGVvZiBhPT0ic3RyaW5nIilmb3IodmFyIHMgaW4gdClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxzKSYmKGE9YS5zcGxpdCgieyIrcysifSIpLmpvaW4odFtzXSkpO3JldHVybiBhfXZhciBPbD17c2hpZWxkOic8cGF0aCBkPSJNMTIgMjJzOC00IDgtMTBWNWwtOC0zLTggM3Y3YzAgNiA4IDEwIDggMTB6Ii8+JyxzaGllbGRDaGVjazonPHBhdGggZD0iTTEyIDIyczgtNCA4LTEwVjVsLTgtMy04IDN2N2MwIDYgOCAxMCA4IDEweiIvPjxwb2x5bGluZSBwb2ludHM9IjkgMTIgMTEgMTQgMTUgMTAiLz4nLGtleWJvYXJkOic8cmVjdCB4PSIyIiB5PSI2IiB3aWR0aD0iMjAiIGhlaWdodD0iMTIiIHJ4PSIyIi8+PGxpbmUgeDE9IjYiIHkxPSIxMCIgeDI9IjYiIHkyPSIxMCIvPjxsaW5lIHgxPSIxMCIgeTE9IjEwIiB4Mj0iMTAiIHkyPSIxMCIvPjxsaW5lIHgxPSIxNCIgeTE9IjEwIiB4Mj0iMTQiIHkyPSIxMCIvPjxsaW5lIHgxPSIxOCIgeTE9IjEwIiB4Mj0iMTgiIHkyPSIxMCIvPjxsaW5lIHgxPSI2IiB5MT0iMTQiIHgyPSI2IiB5Mj0iMTQiLz48bGluZSB4MT0iMTgiIHkxPSIxNCIgeDI9IjE4IiB5Mj0iMTQiLz48bGluZSB4MT0iOSIgeTE9IjE0IiB4Mj0iMTUiIHkyPSIxNCIvPicsdGVybWluYWw6Jzxwb2x5bGluZSBwb2ludHM9IjQgNyA5IDEyIDQgMTciLz48bGluZSB4MT0iMTIiIHkxPSIxNyIgeDI9IjIwIiB5Mj0iMTciLz4nLGNoYXQ6JzxwYXRoIGQ9Ik0yMSAxMmE4IDggMCAwIDEtMTIuOSA2LjNMMyAyMGwxLjctNS4xQTggOCAwIDEgMSAyMSAxMnoiLz4nLGZvbGRlcjonPHBhdGggZD0iTTMgN2EyIDIgMCAwIDEgMi0yaDRsMiAyaDhhMiAyIDAgMCAxIDIgMnY4YTIgMiAwIDAgMS0yIDJINWEyIDIgMCAwIDEtMi0yeiIvPicsdHJhc2g6Jzxwb2x5bGluZSBwb2ludHM9IjMgNiA1IDYgMjEgNiIvPjxwYXRoIGQ9Ik0xOSA2bC0xIDEzYTIgMiAwIDAgMS0yIDJIOGEyIDIgMCAwIDEtMi0yTDUgNiIvPjxwYXRoIGQ9Ik0xMCAxMXY2Ii8+PHBhdGggZD0iTTE0IDExdjYiLz48cGF0aCBkPSJNOSA2VjRhMSAxIDAgMCAxIDEtMWg0YTEgMSAwIDAgMSAxIDF2MiIvPicsY2hldnJvbkRvd246Jzxwb2x5bGluZSBwb2ludHM9IjYgOSAxMiAxNSAxOCA5Ii8+JyxiZWxsOic8cGF0aCBkPSJNMTggMTZ2LTVhNiA2IDAgMSAwLTEyIDB2NWwtMiAyaDE2eiIvPjxwYXRoIGQ9Ik0xMCAyMWEyIDIgMCAwIDAgNCAwIi8+JyxtdXNpYzonPHBhdGggZD0iTTkgMThWNWwxMi0ydjEzIi8+PGNpcmNsZSBjeD0iNiIgY3k9IjE4IiByPSIzIi8+PGNpcmNsZSBjeD0iMTgiIGN5PSIxNiIgcj0iMyIvPicsdmlicmF0ZTonPHJlY3QgeD0iOSIgeT0iNCIgd2lkdGg9IjYiIGhlaWdodD0iMTYiIHJ4PSIxIi8+PHBhdGggZD0iTTUgOHY4Ii8+PHBhdGggZD0iTTMgMTB2NCIvPjxwYXRoIGQ9Ik0xOSA4djgiLz48cGF0aCBkPSJNMjEgMTB2NCIvPicsZ2xvYmU6JzxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjkiLz48bGluZSB4MT0iMyIgeTE9IjEyIiB4Mj0iMjEiIHkyPSIxMiIvPjxwYXRoIGQ9Ik0xMiAzYTE0IDE0IDAgMCAxIDAgMTgiLz48cGF0aCBkPSJNMTIgM2ExNCAxNCAwIDAgMCAwIDE4Ii8+JyxzbWFydHBob25lOic8cmVjdCB4PSI2IiB5PSIyIiB3aWR0aD0iMTIiIGhlaWdodD0iMjAiIHJ4PSIyLjUiLz48bGluZSB4MT0iMTEiIHkxPSIxOCIgeDI9IjEzIiB5Mj0iMTgiLz4nLGRlc2t0b3A6JzxyZWN0IHg9IjMiIHk9IjQiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxMiIgcng9IjIiLz48bGluZSB4MT0iOCIgeTE9IjIwIiB4Mj0iMTYiIHkyPSIyMCIvPjxsaW5lIHgxPSIxMiIgeTE9IjE2IiB4Mj0iMTIiIHkyPSIyMCIvPicsbGluazonPHBhdGggZD0iTTEwIDE0YTQuNSA0LjUgMCAwIDAgNi4zNiAwbDMtM2E0LjUgNC41IDAgMSAwLTYuMzYtNi4zNmwtMS40MiAxLjQxIi8+PHBhdGggZD0iTTE0IDEwYTQuNSA0LjUgMCAwIDAtNi4zNiAwbC0zIDNhNC41IDQuNSAwIDEgMCA2LjM2IDYuMzZsMS40Mi0xLjQxIi8+JyxwYWxldHRlOic8Y2lyY2xlIGN4PSIxMy41IiBjeT0iNi41IiByPSIxIi8+PGNpcmNsZSBjeD0iMTcuNSIgY3k9IjEwLjUiIHI9IjEiLz48Y2lyY2xlIGN4PSI4LjUiIGN5PSI3LjUiIHI9IjEiLz48Y2lyY2xlIGN4PSI2LjUiIGN5PSIxMi41IiByPSIxIi8+PHBhdGggZD0iTTEyIDNhOSA5IDAgMSAwIDAgMTggMS41IDEuNSAwIDAgMCAxLjEtMi41IDEuNSAxLjUgMCAwIDEgMS4xLTIuNWgyLjNBNC41IDQuNSAwIDAgMCAyMSAxMS41QzIxIDYuOCAxNi45NyAzIDEyIDN6Ii8+JyxwbGF5Oic8cG9seWdvbiBwb2ludHM9IjYgNCAyMCAxMiA2IDIwIDYgNCIvPicsd3JlbmNoOic8cGF0aCBkPSJNMTQuNyA2LjNhNCA0IDAgMSAxIDQgNGwtOSA5LTMuNSAxIDEtMy41IDcuNS03LjV6Ii8+JyxwYXc6JzxjaXJjbGUgY3g9IjcuNSIgY3k9IjkiIHI9IjIiIGZpbGw9ImN1cnJlbnRDb2xvciIgc3Ryb2tlPSJub25lIi8+PGNpcmNsZSBjeD0iMTIiIGN5PSI2LjgiIHI9IjIiIGZpbGw9ImN1cnJlbnRDb2xvciIgc3Ryb2tlPSJub25lIi8+PGNpcmNsZSBjeD0iMTYuNSIgY3k9IjkiIHI9IjIiIGZpbGw9ImN1cnJlbnRDb2xvciIgc3Ryb2tlPSJub25lIi8+PGNpcmNsZSBjeD0iMTgiIGN5PSIxMy4zIiByPSIxLjgiIGZpbGw9ImN1cnJlbnRDb2xvciIgc3Ryb2tlPSJub25lIi8+PHBhdGggZD0iTTcuMiAxNi4zYy41LTIuOSAyLjMtNC44IDQuOC00LjhzNC4zIDEuOSA0LjggNC44Yy4zIDEuOC0uOSAzLjItMi42IDIuNi0uOC0uMy0xLjQtLjYtMi4yLS42cy0xLjQuMy0yLjIuNmMtMS43LjYtMi45LS44LTIuNi0yLjZ6IiBmaWxsPSJjdXJyZW50Q29sb3IiIHN0cm9rZT0ibm9uZSIvPicsZWRpdDonPHBhdGggZD0iTTEyIDIwaDkiLz48cGF0aCBkPSJNMTYuNSAzLjVhMi4xMiAyLjEyIDAgMCAxIDMgM0w3IDE5bC00IDEgMS00eiIvPicsc2lnbmFsOic8cGF0aCBkPSJNMiAxMmExNSAxNSAwIDAgMSAyMCAwIi8+PHBhdGggZD0iTTUgMTZhMTAgMTAgMCAwIDEgMTQgMCIvPjxwYXRoIGQ9Ik05IDIwYTQgNCAwIDAgMSA2IDAiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjIwIiByPSIwLjUiIGZpbGw9ImN1cnJlbnRDb2xvciIvPicsZmlsZTonPHBhdGggZD0iTTE0IDNINmEyIDIgMCAwIDAtMiAydjE0YTIgMiAwIDAgMCAyIDJoMTJhMiAyIDAgMCAwIDItMlY5eiIvPjxwb2x5bGluZSBwb2ludHM9IjE0IDMgMTQgOSAyMCA5Ii8+JyxzaWdtYTonPHBvbHlsaW5lIHBvaW50cz0iMTggNCA2IDQgMTMgMTIgNiAyMCAxOCAyMCIvPicseDonPHBhdGggZD0iTTE4IDYgNiAxOCIvPjxwYXRoIGQ9Ik02IDZsMTIgMTIiLz4nLHBsdXM6JzxsaW5lIHgxPSIxMiIgeTE9IjUiIHgyPSIxMiIgeTI9IjE5Ii8+PGxpbmUgeDE9IjUiIHkxPSIxMiIgeDI9IjE5IiB5Mj0iMTIiLz4nLG1pYzonPHJlY3QgeD0iOSIgeT0iMyIgd2lkdGg9IjYiIGhlaWdodD0iMTEiIHJ4PSIzIi8+PHBhdGggZD0iTTUgMTFhNyA3IDAgMCAwIDE0IDAiLz48bGluZSB4MT0iMTIiIHkxPSIxOCIgeDI9IjEyIiB5Mj0iMjEiLz48bGluZSB4MT0iOSIgeTE9IjIxIiB4Mj0iMTUiIHkyPSIyMSIvPicscGFwZXJjbGlwOic8cGF0aCBkPSJNMjEuNDQgMTEuMDUgMTIuMjUgMjAuMjRhNiA2IDAgMCAxLTguNDktOC40OWw4Ljg0LTguODRhNCA0IDAgMSAxIDUuNjYgNS42Nkw5LjQxIDE3LjQxYTIgMiAwIDEgMS0yLjgzLTIuODNsOC44NC04LjgzIi8+J307ZnVuY3Rpb24gSihlLHQpe3ZhciBuPU9sW2VdO2lmKCFuKXJldHVybiIiO3Q9dHx8e307dmFyIGk9dC5zaXplfHwxNCxhPXQuc3Ryb2tlV2lkdGh8fDEuOCx1PXQuY2xzPycgY2xhc3M9IicrdC5jbHMrJyInOiIiLHM9dC5maWxsfHwibm9uZSI7cmV0dXJuIjxzdmciK3UrJyB3aWR0aD0iJytpKyciIGhlaWdodD0iJytpKyciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0iJytzKyciIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IicrYSsnIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj4nK24rIjwvc3ZnPiJ9ZnVuY3Rpb24gT24oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2hhdC1vdXRwdXQiKTtpZighZSlyZXR1cm4gci5jaGF0U2Nyb2xsRWxlbWVudD1udWxsLG51bGw7dmFyIHQ9ZS5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlcyIpO3JldHVybiB0PyhyLmNoYXRTY3JvbGxFbGVtZW50PXQsdCk6KHIuY2hhdFNjcm9sbEVsZW1lbnQ9bnVsbCxudWxsKX1mdW5jdGlvbiBOaShlKXt2YXIgdD1lfHxPbigpO3JldHVybiB0P01hdGguYWJzKHQuc2Nyb2xsVG9wKTxyLmNoYXRTY3JvbGxUaHJlc2hvbGQ6ITB9ZnVuY3Rpb24gdGcoZSl7ci5jaGF0U3RpY2tUb0JvdHRvbT0hIWUsci5jaGF0U3RpY2tUb0JvdHRvbSYmaXIoe3JlbW92ZURpdmlkZXI6ITB9KSxRZSgpfWZ1bmN0aW9uIGlyKGUpe2U9ZXx8e307dmFyIHQ9ci5jaGF0VW5yZWFkQ291bnQ+MHx8ci5jaGF0VW5yZWFkU3RhcnRJbmRleD49MDtpZihyLmNoYXRVbnJlYWRDb3VudD0wLHIuY2hhdFVucmVhZFN0YXJ0SW5kZXg9LTEsZS5yZW1vdmVEaXZpZGVyIT09ITEpe3ZhciBuPU9uKCk7aWYobil7dmFyIGk9bi5xdWVyeVNlbGVjdG9yKCIuY2hhdC11bnJlYWQtZGl2aWRlciIpO2kmJmkucGFyZW50Tm9kZSYmaS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGkpfX10JiZRZSgpfWZ1bmN0aW9uIGppKGUpe2lmKGV8fChlPU9uKCkpLCEhZSl7dmFyIHQ9ZS5xdWVyeVNlbGVjdG9yKCIuY2hhdC11bnJlYWQtZGl2aWRlciIpO2lmKHIuY2hhdFVucmVhZFN0YXJ0SW5kZXg8MHx8ci5jaGF0VW5yZWFkQ291bnQ8PTApe3QmJnQucGFyZW50Tm9kZSYmdC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHQpO3JldHVybn1mb3IodmFyIG49ci5jaGF0VW5yZWFkU3RhcnRJbmRleCxpPWUucXVlcnlTZWxlY3RvckFsbCgiLmNoYXQtbWVzc2FnZSIpLGE9bnVsbCx1PTA7dTxpLmxlbmd0aDt1Kyspe3ZhciBzPWlbdV0uZ2V0QXR0cmlidXRlKCJkYXRhLW1zZy1pbmRleCIpO2lmKHMhPT1udWxsKXt2YXIgbz1wYXJzZUludChzLDEwKTtpZighaXNOYU4obykmJm88bil7YT1pW3VdO2JyZWFrfX19dmFyIGw9ci5jaGF0VW5yZWFkQ291bnQrIiBcdTY3NjFcdTY1QjBcdTZEODhcdTYwNkYiO3R8fCh0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHQuY2xhc3NOYW1lPSJjaGF0LXVucmVhZC1kaXZpZGVyIix0LnNldEF0dHJpYnV0ZSgicm9sZSIsInNlcGFyYXRvciIpLHQuaW5uZXJIVE1MPSc8c3BhbiBjbGFzcz0iY2hhdC11bnJlYWQtZGl2aWRlci1saW5lIj48L3NwYW4+PHNwYW4gY2xhc3M9ImNoYXQtdW5yZWFkLWRpdmlkZXItbGFiZWwiPjwvc3Bhbj48c3BhbiBjbGFzcz0iY2hhdC11bnJlYWQtZGl2aWRlci1saW5lIj48L3NwYW4+JyksdC5xdWVyeVNlbGVjdG9yKCIuY2hhdC11bnJlYWQtZGl2aWRlci1sYWJlbCIpLnRleHRDb250ZW50PWwsYT8odC5uZXh0U2libGluZyE9PWF8fHQucGFyZW50Tm9kZSE9PWUpJiZlLmluc2VydEJlZm9yZSh0LGEpOih0LnBhcmVudE5vZGUhPT1lfHx0Lm5leHRTaWJsaW5nIT09bnVsbCkmJmUuYXBwZW5kQ2hpbGQodCl9fWZ1bmN0aW9uIFFlKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXQtdW5yZWFkLWJ1YmJsZSIpO2lmKGUpe3ZhciB0PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihvKXtyZXR1cm4gby5pZD09PXIuc2VsZWN0ZWRJZH0pLG49IU5pKCksaT0hIXQmJnIuY3VycmVudFZpZXc9PT0iY2hhdCImJm47ZS5jbGFzc0xpc3QudG9nZ2xlKCJ2aXNpYmxlIixpKSxlLmNsYXNzTGlzdC50b2dnbGUoImhhcy11bnJlYWQiLHIuY2hhdFVucmVhZENvdW50PjApO3ZhciBhPWUucXVlcnlTZWxlY3RvcigiLmNoYXQtdW5yZWFkLWJ1YmJsZS1jb3VudCIpO2EmJihyLmNoYXRVbnJlYWRDb3VudD4wPyhhLnRleHRDb250ZW50PXIuY2hhdFVucmVhZENvdW50Pjk5PyI5OSsiOlN0cmluZyhyLmNoYXRVbnJlYWRDb3VudCksYS5jbGFzc0xpc3QuYWRkKCJ2aXNpYmxlIikpOihhLnRleHRDb250ZW50PSIiLGEuY2xhc3NMaXN0LnJlbW92ZSgidmlzaWJsZSIpKSk7dmFyIHU9ci5jaGF0VW5yZWFkQ291bnQ+MD9yLmNoYXRVbnJlYWRDb3VudCsiIFx1Njc2MVx1NjVCMFx1NkQ4OFx1NjA2Rlx1RkYwQ1x1NzBCOVx1NTFGQlx1NjdFNVx1NzcwQiI6Ilx1NTZERVx1NTIzMFx1NjcwMFx1NjVCMFx1NkQ4OFx1NjA2RiI7ZS5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLHUpLGUuc2V0QXR0cmlidXRlKCJ0aXRsZSIsdSk7dmFyIHM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXQtb3V0cHV0Iik7cyYmcy5jbGFzc0xpc3QudG9nZ2xlKCJoYXMtanVtcC1idG4iLGkpfX1mdW5jdGlvbiBQbChlKXt2YXIgdD1PbigpO2lmKCEoIXR8fCF0LmlzQ29ubmVjdGVkKSl7ci5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGw9ITA7dmFyIG49ZnVuY3Rpb24oKXtyLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbD0hMSxyLmNoYXRTdGlja1RvQm90dG9tPSEwLGlyKHtyZW1vdmVEaXZpZGVyOiEwfSksUWUoKX07aWYoZSYmdHlwZW9mIHQuc2Nyb2xsVG89PSJmdW5jdGlvbiIpe3Quc2Nyb2xsVG8oe3RvcDowLGJlaGF2aW9yOiJzbW9vdGgifSksc2V0VGltZW91dChuLDI2MCk7cmV0dXJufXQuc2Nyb2xsVG9wPTAscmVxdWVzdEFuaW1hdGlvbkZyYW1lKG4pfX1mdW5jdGlvbiBhcigpe3ZhciBlPU9uKCk7aWYoISghZXx8IWUuaXNDb25uZWN0ZWQpKXtpZihyLmNoYXRTY3JvbGxFbGVtZW50PT09ZSYmci5jaGF0U2Nyb2xsSGFuZGxlcil7UWUoKTtyZXR1cm59ci5jaGF0U2Nyb2xsRWxlbWVudCYmKHIuY2hhdFNjcm9sbEhhbmRsZXImJnIuY2hhdFNjcm9sbEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixyLmNoYXRTY3JvbGxIYW5kbGVyKSxyLmNoYXRTY3JvbGxXaGVlbEhhbmRsZXImJnIuY2hhdFNjcm9sbEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigid2hlZWwiLHIuY2hhdFNjcm9sbFdoZWVsSGFuZGxlciksci5jaGF0U2Nyb2xsVG91Y2hTdGFydEhhbmRsZXImJnIuY2hhdFNjcm9sbEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsci5jaGF0U2Nyb2xsVG91Y2hTdGFydEhhbmRsZXIpLHIuY2hhdFNjcm9sbFRvdWNoTW92ZUhhbmRsZXImJnIuY2hhdFNjcm9sbEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixyLmNoYXRTY3JvbGxUb3VjaE1vdmVIYW5kbGVyKSksci5jaGF0U2Nyb2xsRWxlbWVudD1lLHIuY2hhdFNjcm9sbEhhbmRsZXI9ZnVuY3Rpb24oKXtpZihlLmlzQ29ubmVjdGVkKXtpZihyLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbCl7UWUoKTtyZXR1cm59dmFyIHQ9TmkoZSk7dD8oci5jaGF0U3RpY2tUb0JvdHRvbT0hMCxpcih7cmVtb3ZlRGl2aWRlcjohMH0pKTpyLmNoYXRTdGlja1RvQm90dG9tPSExLFFlKCl9fSxyLmNoYXRTY3JvbGxXaGVlbEhhbmRsZXI9ZnVuY3Rpb24odCl7ci5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGx8fHQuZGVsdGFZPDAmJihyLmNoYXRTdGlja1RvQm90dG9tPSExLFFlKCkpfSxyLmNoYXRTY3JvbGxUb3VjaFN0YXJ0SGFuZGxlcj1mdW5jdGlvbih0KXshdC50b3VjaGVzfHx0LnRvdWNoZXMubGVuZ3RoPT09MHx8KHIuY2hhdFRvdWNoU3RhcnRZPXQudG91Y2hlc1swXS5jbGllbnRZKX0sci5jaGF0U2Nyb2xsVG91Y2hNb3ZlSGFuZGxlcj1mdW5jdGlvbih0KXtpZighci5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGwmJiEoIXQudG91Y2hlc3x8dC50b3VjaGVzLmxlbmd0aD09PTApKXt2YXIgbj10LnRvdWNoZXNbMF0uY2xpZW50WS1yLmNoYXRUb3VjaFN0YXJ0WTtuPjQmJihyLmNoYXRTdGlja1RvQm90dG9tPSExLFFlKCkpfX0sZS5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLHIuY2hhdFNjcm9sbEhhbmRsZXIse3Bhc3NpdmU6ITB9KSxlLmFkZEV2ZW50TGlzdGVuZXIoIndoZWVsIixyLmNoYXRTY3JvbGxXaGVlbEhhbmRsZXIse3Bhc3NpdmU6ITB9KSxlLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLHIuY2hhdFNjcm9sbFRvdWNoU3RhcnRIYW5kbGVyLHtwYXNzaXZlOiEwfSksZS5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLHIuY2hhdFNjcm9sbFRvdWNoTW92ZUhhbmRsZXIse3Bhc3NpdmU6ITB9KSxRZSgpfX1mdW5jdGlvbiBjdSgpe2lmKHIuY2hhdFJlbmRlcmVkQ291bnQ8ci5jdXJyZW50TWVzc2FnZXMubGVuZ3RoKXtyLmNoYXRSZW5kZXJlZENvdW50Kz1yLmNoYXRQYWdlU2l6ZSxVZSghMCk7cmV0dXJufXZhciBlPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbih0KXtyZXR1cm4gdC5pZD09PXIuc2VsZWN0ZWRJZH0pO2UmJnR5cGVvZiBlLm1lc3NhZ2VPZmZzZXQ9PSJudW1iZXIiJiZlLm1lc3NhZ2VPZmZzZXQ+MCYmWXYoKX12YXIgdXI9bnVsbDtmdW5jdGlvbiBxbCgpe3VyJiYodXIuZGlzY29ubmVjdCgpLHVyPW51bGwpO3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjaGF0LWxvYWQtbW9yZS1zZW50aW5lbCIpO2lmKGUpe3ZhciB0PWUucXVlcnlTZWxlY3RvcigiLmNoYXQtbG9hZC1tb3JlLWJ0biIpO3QmJih0Lm9uY2xpY2s9ZnVuY3Rpb24oKXtjdSgpfSksISh0eXBlb2YgSW50ZXJzZWN0aW9uT2JzZXJ2ZXI+InUiKSYmKHVyPW5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihmdW5jdGlvbihuKXtmb3IodmFyIGk9MDtpPG4ubGVuZ3RoO2krKylpZihuW2ldLmlzSW50ZXJzZWN0aW5nKXtjdSgpO2JyZWFrfX0se3Jvb3Q6T24oKSxyb290TWFyZ2luOiIyMDBweCJ9KSx1ci5vYnNlcnZlKGUpKX19ZnVuY3Rpb24gd2UoKXt0cnl7ci5zZWxlY3RlZElkP2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLXNlbGVjdGVkLXNlc3Npb24iLHIuc2VsZWN0ZWRJZCk6bG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oIndhbmQtc2VsZWN0ZWQtc2Vzc2lvbiIpfWNhdGNoe319ZnVuY3Rpb24gUmkoZSl7cmV0dXJuIGUmJkFycmF5LmlzQXJyYXkoZS5xdWV1ZWRNZXNzYWdlcyk/ZS5xdWV1ZWRNZXNzYWdlczpyLnN0cnVjdHVyZWRJbnB1dFF1ZXVlfWZ1bmN0aW9uIEhsKCl7dmFyIGU9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHQpe3JldHVybiB0LmlkPT09ci5zZWxlY3RlZElkfSk7cmV0dXJuIFJpKGUpfWZ1bmN0aW9uIHpyKGUpe3ZhciB0PVJpKGUpO3Iuc3RydWN0dXJlZElucHV0UXVldWU9QXJyYXkuaXNBcnJheSh0KT90LnNsaWNlKCk6W119ZnVuY3Rpb24gZHUoZSx0KXtyZXR1cm4hIShlJiZBcnJheS5pc0FycmF5KGUuY29udGVudCkmJmUuY29udGVudC5zb21lKGZ1bmN0aW9uKG4pe3JldHVybiBuJiZ0eXBlb2Ygbj09Im9iamVjdCImJm5bdF19KSl9ZnVuY3Rpb24gX2woZSl7cmV0dXJuISEoZSYmZS5yb2xlPT09InVzZXIiJiZkdShlLCJfX3F1ZXVlZCIpKX1mdW5jdGlvbiBObChlKXtyZXR1cm4hIShlJiZlLnJvbGU9PT0iYXNzaXN0YW50IiYmZHUoZSwiX19wcm9jZXNzaW5nIikpfWZ1bmN0aW9uIHNyKGUpe2lmKCFBcnJheS5pc0FycmF5KGUpKXJldHVybltdO2Zvcih2YXIgdD0hMSxuPVtdLGk9MDtpPGUubGVuZ3RoO2krKyl7dmFyIGE9ZVtpXTtpZihfbChhKXx8TmwoYSkpe3Q9ITA7Y29udGludWV9bi5wdXNoKGEpfXJldHVybiB0P246ZX1mdW5jdGlvbiBqbChlLHQpe2lmKCFlfHwhQXJyYXkuaXNBcnJheShlLm1lc3NhZ2VzKSlyZXR1cm4gZTt2YXIgbj1lLnNlc3Npb25LaW5kfHx0JiZ0LnNlc3Npb25LaW5kO2lmKG4hPT0ic3RydWN0dXJlZCIpcmV0dXJuIGU7dmFyIGk9c3IoZS5tZXNzYWdlcyk7cmV0dXJuIGk9PT1lLm1lc3NhZ2VzP2U6T2JqZWN0LmFzc2lnbih7fSxlLHttZXNzYWdlczppfSl9ZnVuY3Rpb24gZnUoKXt0cnl7dmFyIGU9SGwoKTtpZighci5zZWxlY3RlZElkfHxlLmxlbmd0aD09PTApcmV0dXJuO2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLXN0cnVjdHVyZWQtcXVldWUiLEpTT04uc3RyaW5naWZ5KHtzZXNzaW9uSWQ6ci5zZWxlY3RlZElkLGl0ZW1zOmV9KSl9Y2F0Y2h7fX1mdW5jdGlvbiBwdShlKXt0cnl7dmFyIHQ9bG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtc3RydWN0dXJlZC1xdWV1ZSIpO2lmKCF0KXJldHVybjt2YXIgbj1KU09OLnBhcnNlKHQpOyghZXx8IW58fG4uc2Vzc2lvbklkPT09ZSkmJmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCJ3YW5kLXN0cnVjdHVyZWQtcXVldWUiKX1jYXRjaHtsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgid2FuZC1zdHJ1Y3R1cmVkLXF1ZXVlIil9fWZ1bmN0aW9uIHZ1KCl7dmFyIGU9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGkpe3JldHVybiBpLmlkPT09ci5zZWxlY3RlZElkfSk7aWYoZSYmQXJyYXkuaXNBcnJheShlLnF1ZXVlZE1lc3NhZ2VzKSl7enIoZSksZnUoKTtyZXR1cm59dHJ5e3ZhciB0PWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLXN0cnVjdHVyZWQtcXVldWUiKTtpZighdClyZXR1cm47dmFyIG49SlNPTi5wYXJzZSh0KTtpZighbnx8bi5zZXNzaW9uSWQhPT1yLnNlbGVjdGVkSWR8fCFBcnJheS5pc0FycmF5KG4uaXRlbXMpKXJldHVybjtyLnN0cnVjdHVyZWRJbnB1dFF1ZXVlPW4uaXRlbXMuc2xpY2UoMCwxMCl9Y2F0Y2h7ci5zdHJ1Y3R1cmVkSW5wdXRRdWV1ZT1bXX19ZnVuY3Rpb24gR3QoKXt0cnl7aWYoci5jcm9zc1Nlc3Npb25RdWV1ZS5sZW5ndGg9PT0wKXtsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgid2FuZC1jcm9zcy1zZXNzaW9uLXF1ZXVlIik7cmV0dXJufWxvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLWNyb3NzLXNlc3Npb24tcXVldWUiLEpTT04uc3RyaW5naWZ5KHIuY3Jvc3NTZXNzaW9uUXVldWUpKX1jYXRjaHt9fWZ1bmN0aW9uIHRuKCl7cmV0dXJuIHIuY29uZmlnJiZyLmNvbmZpZy5kZWZhdWx0Q3dkfHwiL3RtcCJ9ZnVuY3Rpb24gbXUoKXt0cnl7dmFyIGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0ocWkpO2lmKCFlKXJldHVybnt9O3ZhciB0PUpTT04ucGFyc2UoZSk7cmV0dXJuIHQmJnR5cGVvZiB0PT0ib2JqZWN0Ij90Ont9fWNhdGNoe3JldHVybnt9fX1mdW5jdGlvbiBSbChlKXt0cnl7aWYoIWV8fE9iamVjdC5rZXlzKGUpLmxlbmd0aD09PTApe2xvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHFpKTtyZXR1cm59bG9jYWxTdG9yYWdlLnNldEl0ZW0ocWksSlNPTi5zdHJpbmdpZnkoZSkpfWNhdGNoe319ZnVuY3Rpb24gV2woKXt2YXIgZT1yLnNlbGVjdGVkSWQ7aWYoIWUpcmV0dXJue307dmFyIHQ9bXUoKSxuPXRbZV07cmV0dXJuIG4mJnR5cGVvZiBuPT0ib2JqZWN0Ij9uOnt9fWZ1bmN0aW9uICRlKGUpe2lmKCFlfHwhci5zZWxlY3RlZElkKXJldHVybiBudWxsO3ZhciB0PVdsKCk7cmV0dXJuIHR5cGVvZiB0W2VdPT0iYm9vbGVhbiI/dFtlXTpudWxsfWZ1bmN0aW9uIGd1KGUsdCl7aWYoISghZXx8IXIuc2VsZWN0ZWRJZCkpe3ZhciBuPW11KCksaT1yLnNlbGVjdGVkSWQsYT1uW2ldOyghYXx8dHlwZW9mIGEhPSJvYmplY3QiKSYmKGE9e30pLGFbZV09ISF0LG5baV09YSxSbChuKX19ZnVuY3Rpb24gaHUoZSx0KXtyZXR1cm4gZT9lLnV1aWQ/Im1zZzoiK2UudXVpZDplLmlkPyJtc2c6IitlLmlkOmUubWVzc2FnZUlkPyJtc2c6IitlLm1lc3NhZ2VJZDplLnR1cm5JZD8ibXNnOiIrZS50dXJuSWQ6Im1zZzoiKyh0eXBlb2YgdD09Im51bWJlciI/dDowKToibXNnOnVua25vd24tIisodHlwZW9mIHQ9PSJudW1iZXIiP3Q6MCl9ZnVuY3Rpb24gT3QoZSx0KXtmb3IodmFyIG49W10saT0wO2k8dC5sZW5ndGg7aSsrKXt2YXIgYT10W2ldO2E9PW51bGx8fGE9PT0iInx8bi5wdXNoKFN0cmluZyhhKSl9cmV0dXJuIGUrIjoiK24uam9pbigiOiIpfWZ1bmN0aW9uIFBuKGUpe3JldHVybiFlfHwhZS5kYXRhc2V0PyIiOmUuZGF0YXNldC5leHBhbmRLZXl8fCIifWZ1bmN0aW9uIHpsKGUsdCl7aWYoIWUpcmV0dXJuITE7c3dpdGNoKHQpe2Nhc2UidG9vbC1jYXJkIjpjYXNlImRpZmYiOnJldHVybiFlLmNsYXNzTGlzdC5jb250YWlucygiY29sbGFwc2VkIik7Y2FzZSJ0aGlua2luZyI6cmV0dXJuIGUuY2xhc3NMaXN0LmNvbnRhaW5zKCJleHBhbmRlZCIpJiYhZS5jbGFzc0xpc3QuY29udGFpbnMoImNvbGxhcHNlZCIpO2Nhc2UiaW5saW5lLXRvb2wiOnJldHVybiBlLmNsYXNzTGlzdC5jb250YWlucygiaW5saW5lLXRvb2wtb3BlbiIpO2Nhc2UidGVybWluYWwiOnt2YXIgbj1lLnF1ZXJ5U2VsZWN0b3IoIi50ZXJtLWJvZHkiKTtyZXR1cm4gbj9uLnN0eWxlLmRpc3BsYXkhPT0ibm9uZSI6ZS5kYXRhc2V0LmV4cGFuZGVkPT09InRydWUifWNhc2UidG9vbC1ncm91cCI6cmV0dXJuIGUuZ2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIik9PT0idHJ1ZSI7Y2FzZSJzdWJhZ2VudC1yZXBseSI6cmV0dXJuIGUuZ2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIik9PT0idHJ1ZSI7Y2FzZSJzdWJhZ2VudC1wYW5lbCI6cmV0dXJuIGUuZ2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIik9PT0idHJ1ZSI7ZGVmYXVsdDpyZXR1cm4hMX19ZnVuY3Rpb24gV2koZSx0LG4pe2lmKGUpc3dpdGNoKHQpe2Nhc2UidG9vbC1jYXJkIjpjYXNlImRpZmYiOntlLmNsYXNzTGlzdC50b2dnbGUoImNvbGxhcHNlZCIsIW4pO2JyZWFrfWNhc2UidGhpbmtpbmciOntlLmNsYXNzTGlzdC50b2dnbGUoImNvbGxhcHNlZCIsIW4pLGUuY2xhc3NMaXN0LnRvZ2dsZSgiZXhwYW5kZWQiLCEhbik7dmFyIGk9ZS5xdWVyeVNlbGVjdG9yKCIudGhpbmtpbmctaW5saW5lLXByZXZpZXciKTtpZihpKXt2YXIgYT1lLmRhdGFzZXQudGhpbmtpbmd8fCIiLHU9YS5zbGljZSgwLDU3KSsoYS5sZW5ndGg+NjA/Ilx1MjAyNiI6IiIpO2kudGV4dENvbnRlbnQ9bj9hOnV9dmFyIHM9ZS5xdWVyeVNlbGVjdG9yKCIudGhpbmtpbmctaW5saW5lLWFjdGlvbiIpO3MmJihzLnRleHRDb250ZW50PW4/Ilx1NjUzNlx1OEQ3NyI6Ilx1NUM1NVx1NUYwMCIpO2JyZWFrfWNhc2UiaW5saW5lLXRvb2wiOntlLmNsYXNzTGlzdC50b2dnbGUoImlubGluZS10b29sLW9wZW4iLCEhbik7dmFyIG89ZS5xdWVyeVNlbGVjdG9yKCIuaW5saW5lLXRvb2wtZXhwYW5kZWQiKTtvJiYoby5zdHlsZS5kaXNwbGF5PW4/ImJsb2NrIjoibm9uZSIpO2JyZWFrfWNhc2UidGVybWluYWwiOnt2YXIgbD1lLnF1ZXJ5U2VsZWN0b3IoIi50ZXJtLWJvZHkiKTtsJiYobC5zdHlsZS5kaXNwbGF5PW4/ImJsb2NrIjoibm9uZSIpLGUuZGF0YXNldC5leHBhbmRlZD1uPyJ0cnVlIjoiZmFsc2UiO3ZhciBjPWUucXVlcnlTZWxlY3RvcigiLnRlcm0tdG9nZ2xlLWljb24iKTtjJiYoYy50ZXh0Q29udGVudD1uPyJcdTI1QkMiOiJcdTI1QjYiKTticmVha31jYXNlInRvb2wtZ3JvdXAiOntlLnNldEF0dHJpYnV0ZSgiZGF0YS1leHBhbmRlZCIsbj8idHJ1ZSI6ImZhbHNlIik7dmFyIGY9ZS5xdWVyeVNlbGVjdG9yKCIudG9vbC1ncm91cC1ib2R5Iik7ZiYmKGYuc3R5bGUuZGlzcGxheT1uPyJibG9jayI6Im5vbmUiKTt2YXIgZD1lLnF1ZXJ5U2VsZWN0b3IoIi50b29sLWdyb3VwLWNoZXZyb24iKTtkJiYoZC5zdHlsZS50cmFuc2Zvcm09bj8icm90YXRlKDE4MGRlZykiOiIiKTticmVha31jYXNlInN1YmFnZW50LXJlcGx5Ijp7ZS5zZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kZWQiLG4/InRydWUiOiJmYWxzZSIpO3ZhciB2PWUucXVlcnlTZWxlY3RvcigiLnN1YmFnZW50LXJlcGx5LXRvZ2dsZS1sYWJlbCIpO3YmJih2LnRleHRDb250ZW50PW4/Ilx1NjUzNlx1OEQ3NyI6Ilx1NUM1NVx1NUYwMCIpO3ZhciBnPWUucXVlcnlTZWxlY3RvcigiLnN1YmFnZW50LXJlcGx5LXRvZ2dsZSIpO2cmJihnLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsbj8idHJ1ZSI6ImZhbHNlIiksZy5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLG4/Ilx1NjUzNlx1OEQ3N1x1NUI1MFx1NEVFM1x1NzQwNlx1NTZERVx1NTkwRCI6Ilx1NUM1NVx1NUYwMFx1NUI1MFx1NEVFM1x1NzQwNlx1NTZERVx1NTkwRFx1NTE2OFx1NjU4NyIpKTticmVha31jYXNlInN1YmFnZW50LXBhbmVsIjp7ZS5zZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kZWQiLG4/InRydWUiOiJmYWxzZSIpO2Zvcih2YXIgaD1lLnF1ZXJ5U2VsZWN0b3JBbGwoIi5zdWJhZ2VudC1wYW5lbC10b2dnbGUiKSxtPTA7bTxoLmxlbmd0aDttKyspe3ZhciBiPWhbbV07Yi5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLG4/InRydWUiOiJmYWxzZSIpLGIuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixuPyJcdTY1MzZcdThENzdcdTVCNTBcdTRFRTNcdTc0MDZcdThGOTNcdTUxRkEiOiJcdTVDNTVcdTVGMDBcdTVCNTBcdTRFRTNcdTc0MDZcdThGOTNcdTUxRkEiKTt2YXIgdz1iLnF1ZXJ5U2VsZWN0b3IoIi5zdWJhZ2VudC1wYW5lbC10b2dnbGUtbGFiZWwiKTt3JiYody50ZXh0Q29udGVudD1uPyJcdTY1MzZcdThENzciOiJcdTVDNTVcdTVGMDAiKX12YXIgRT1lLnF1ZXJ5U2VsZWN0b3IoIi5zdWJhZ2VudC1wYW5lbC1ib2R5Iik7RSYmKG4/RS5zY3JvbGxUb3A9MDpFLnNjcm9sbFRvcD1FLnNjcm9sbEhlaWdodCk7YnJlYWt9fX1mdW5jdGlvbiBGbihlLHQpe3ZhciBuPVBuKGUpO24mJmd1KG4semwoZSx0KSl9ZnVuY3Rpb24gemkoZSl7IWV8fCFyLnNlbGVjdGVkSWR8fGUucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtZXhwYW5kLWtleV0iKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3ZhciBuPVBuKHQpLGk9dC5kYXRhc2V0LmV4cGFuZEtpbmR8fCIiLGE9JGUobik7YT09PW51bGx8fCFpfHxXaSh0LGksYSl9KX1mdW5jdGlvbiBfZSgpe3JldHVybiB3aW5kb3cuaW5uZXJXaWR0aDw9NzY4fWZ1bmN0aW9uIHl1KCl7cmV0dXJuISFyLnNlc3Npb25zRHJhd2VyT3BlbiYmKF9lKCl8fCFyLnNpZGViYXJQaW5uZWQpfWZ1bmN0aW9uIFVpKGUpe3IuZmlsZVBhbmVsT3Blbj1lO3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1maWxlLXBhbmVsLW9wZW4iLFN0cmluZyhyLmZpbGVQYW5lbE9wZW4pKX1jYXRjaHt9ci5maWxlUGFuZWxPcGVuJiZfZSgpJiYoci5zZXNzaW9uc0RyYXdlck9wZW49ITEsSWUoIndhbmQtc2lkZWJhci1vcGVuIiwhMSkpLG5uKCksci5maWxlUGFuZWxPcGVuJiZQdCgpfWZ1bmN0aW9uIFVyKCl7VWkoIXIuZmlsZVBhbmVsT3Blbil9ZnVuY3Rpb24gVWwoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1zaWRlLXBhbmVsIiksdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIubWFpbi1jb250ZW50Iiksbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1wYW5lbC10b2dnbGUtYnRuIiksaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1wYW5lbC1iYWNrZHJvcCIpO2UmJmUuY2xhc3NMaXN0LnRvZ2dsZSgib3BlbiIsci5maWxlUGFuZWxPcGVuKSx0JiZ0LmNsYXNzTGlzdC50b2dnbGUoImZpbGUtcGFuZWwtb3BlbiIsci5maWxlUGFuZWxPcGVuKSxpJiZpLmNsYXNzTGlzdC50b2dnbGUoIm9wZW4iLHIuZmlsZVBhbmVsT3BlbiksbiYmbi5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLHIuZmlsZVBhbmVsT3Blbil9ZnVuY3Rpb24gbm4oKXtUcigpLFVsKCl9ZnVuY3Rpb24gVmwoZSl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtZXhwbG9yZXItY3dkIik7aWYodCl7dmFyIG49ZSYmZS5jd2Q/ZS5jd2Q6dG4oKTt0LnRhZ05hbWU9PT0iSU5QVVQiP2RvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPT10JiYodC52YWx1ZT1uLFFtKHQpKTp0LnRleHRDb250ZW50PW4sdC50aXRsZT1uO3ZhciBpPXQuY2xvc2VzdCgiLmZpbGUtZXhwbG9yZXItaGVhZGVyIik7aSYmVGkoaSl9fWZ1bmN0aW9uIGJ1KCl7ci5maWxlUGFuZWxPcGVuJiZVaSghMSl9ZnVuY3Rpb24gRXUoZSl7dmFyIHQ9ci50ZXJtaW5hbFNjYWxlK2U7aWYodD1NYXRoLm1heCguNSxNYXRoLm1pbigyLHQpKSx0PU1hdGgucm91bmQodCo0KS80LHQhPT1yLnRlcm1pbmFsU2NhbGUpe3IudGVybWluYWxTY2FsZT10O3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC10ZXJtaW5hbC1zY2FsZSIsU3RyaW5nKHQpKX1jYXRjaHt9RnUoKSxLbCgpfX1mdW5jdGlvbiBGdSgpe2lmKCEoIXIudGVybWluYWx8fCFyLnRlcm1pbmFsLmVsZW1lbnQpKXt2YXIgZT1yLnRlcm1pbmFsQmFzZUZvbnRTaXplKnIudGVybWluYWxTY2FsZSx0PU1hdGgubWF4KDEsTWF0aC5yb3VuZChlKSksbj1NYXRoLm1heCgxLE1hdGgucm91bmQoZSoxLjUpKTtyLnRlcm1pbmFsLmVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoIi0tdGVybS1mb250LXNpemUiLHQrInB4Iiksci50ZXJtaW5hbC5lbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCItLXRlcm0tcm93LWhlaWdodCIsbisicHgiKSx0eXBlb2Ygci50ZXJtaW5hbC5yZW1lYXN1cmU9PSJmdW5jdGlvbiImJnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe3IudGVybWluYWwmJnIudGVybWluYWwucmVtZWFzdXJlKCl9KX19ZnVuY3Rpb24gS2woKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVybWluYWwtc2NhbGUtbGFiZWwtdG9wIik7ZSYmKGUudGV4dENvbnRlbnQ9TWF0aC5yb3VuZChyLnRlcm1pbmFsU2NhbGUqMTAwKSsiJSIpfXZhciBKbD17ImNoZXZyb24tbGVmdCI6JzxwYXRoIGQ9Ik0xNSAxOGwtNi02IDYtNiIvPicsImFycm93LXVwIjonPHBhdGggZD0iTTEyIDE5VjUiLz48cGF0aCBkPSJNNSAxMmw3LTcgNyA3Ii8+JyxyZWZyZXNoOic8cGF0aCBkPSJNMjEgMTJhOSA5IDAgMSAxLTMtNi43Ii8+PHBhdGggZD0iTTIxIDR2NWgtNSIvPicsZXllOic8cGF0aCBkPSJNMSAxMnM0LTcgMTEtNyAxMSA3IDExIDctNCA3LTExIDdTMSAxMiAxIDEyeiIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjMiLz4nLCJleWUtb2ZmIjonPHBhdGggZD0iTTE3Ljk0IDE3Ljk0QTEwLjk0IDEwLjk0IDAgMCAxIDEyIDE5Yy03IDAtMTEtNy0xMS03YTE5Ljg2IDE5Ljg2IDAgMCAxIDQuMjItNS4xOCIvPjxwYXRoIGQ9Ik0xIDFsMjIgMjIiLz48cGF0aCBkPSJNOS45IDQuMjRBMTAuOTQgMTAuOTQgMCAwIDEgMTIgNGM3IDAgMTEgNyAxMSA3YTE5LjgzIDE5LjgzIDAgMCAxLTMuMzYgNC4yNyIvPjxwYXRoIGQ9Ik0xNC4xMiAxNC4xMmEzIDMgMCAxIDEtNC4yNC00LjI0Ii8+Jyx4Oic8cGF0aCBkPSJNMTggNkw2IDE4Ii8+PHBhdGggZD0iTTYgNmwxMiAxMiIvPicsc2VhcmNoOic8Y2lyY2xlIGN4PSIxMSIgY3k9IjExIiByPSI3Ii8+PHBhdGggZD0iTTIxIDIxbC00LjMtNC4zIi8+Jyxjb3B5Oic8cmVjdCB4PSI5IiB5PSI5IiB3aWR0aD0iMTEiIGhlaWdodD0iMTEiIHJ4PSIyIi8+PHBhdGggZD0iTTUgMTVWNWEyIDIgMCAwIDEgMi0yaDEwIi8+JyxjbGlwYm9hcmQ6JzxyZWN0IHg9IjgiIHk9IjMiIHdpZHRoPSI4IiBoZWlnaHQ9IjQiIHJ4PSIxIi8+PHBhdGggZD0iTTE2IDVoMmEyIDIgMCAwIDEgMiAydjEyYTIgMiAwIDAgMS0yIDJINmEyIDIgMCAwIDEtMi0yVjdhMiAyIDAgMCAxIDItMmgyIi8+Jyxkb3dubG9hZDonPHBhdGggZD0iTTIxIDE1djRhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJ2LTQiLz48cGF0aCBkPSJNNyAxMGw1IDUgNS01Ii8+PHBhdGggZD0iTTEyIDE1VjMiLz4nLGVkaXQ6JzxwYXRoIGQ9Ik0xMiAyMGg5Ii8+PHBhdGggZD0iTTE2LjUgMy41YTIuMTIxIDIuMTIxIDAgMCAxIDMgM0w3IDE5bC00IDEgMS00eiIvPicsc2F2ZTonPHBhdGggZD0iTTE5IDIxSDVhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoMTFsNSA1djExYTIgMiAwIDAgMS0yIDJ6Ii8+PHBhdGggZD0iTTE3IDIxdi04SDd2OCIvPjxwYXRoIGQ9Ik03IDN2NWg4Ii8+Jywicm90YXRlLWNjdyI6JzxwYXRoIGQ9Ik0zIDEyYTkgOSAwIDEgMCAzLTYuNyIvPjxwYXRoIGQ9Ik0zIDR2NWg1Ii8+Jywid3JhcC10ZXh0IjonPHBhdGggZD0iTTMgNmgxOCIvPjxwYXRoIGQ9Ik0zIDEyaDE1YTMgMyAwIDEgMSAwIDZoLTQiLz48cGF0aCBkPSJNMTYgMTZsLTIgMiAyIDIiLz48cGF0aCBkPSJNMyAxOGg2Ii8+Jyx0eXBlOic8cGF0aCBkPSJNNCA3VjRoMTZ2MyIvPjxwYXRoIGQ9Ik05IDIwaDYiLz48cGF0aCBkPSJNMTIgNHYxNiIvPicsbWludXM6JzxwYXRoIGQ9Ik01IDEyaDE0Ii8+JyxwbHVzOic8cGF0aCBkPSJNMTIgNXYxNCIvPjxwYXRoIGQ9Ik01IDEyaDE0Ii8+Jywic2VuZC10by1pbnB1dCI6JzxwYXRoIGQ9Ik0yMiAyTDExIDEzIi8+PHBhdGggZD0iTTIyIDJsLTcgMjAtNC05LTktNHoiLz4nLHRlcm1pbmFsOic8cG9seWxpbmUgcG9pbnRzPSI0IDE3IDEwIDExIDQgNSIvPjxsaW5lIHgxPSIxMiIgeTE9IjE5IiB4Mj0iMjAiIHkyPSIxOSIvPicsImZvbGRlci1vcGVuIjonPHBhdGggZD0iTTYgMTRsMS40NS0yLjlBMiAyIDAgMCAxIDkuMjQgMTBIMjBhMiAyIDAgMCAxIDEuOTQgMi41bC0xLjU1IDZhMiAyIDAgMCAxLTEuOTQgMS41SDRhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoMy45M2EyIDIgMCAwIDEgMS42Ni45bC44MiAxLjJhMiAyIDAgMCAwIDEuNjYuOUgxOGEyIDIgMCAwIDEgMiAydjIiLz4nLGluZm86JzxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjEwIi8+PGxpbmUgeDE9IjEyIiB5MT0iMTYiIHgyPSIxMiIgeTI9IjEyIi8+PGxpbmUgeDE9IjEyIiB5MT0iOCIgeDI9IjEyLjAxIiB5Mj0iOCIvPid9O2Z1bmN0aW9uIE1lKGUsdCl7dD10fHx7fTt2YXIgbj1KbFtlXXx8IiIsaT10LnNpemV8fDE2LGE9dC5jbGFzc05hbWU/IiAiK3QuY2xhc3NOYW1lOiIiO3JldHVybic8c3ZnIGNsYXNzPSJ3YW5kLWljb24gd2FuZC1pY29uLScrZSthKyciIHdpZHRoPSInK2krJyIgaGVpZ2h0PSInK2krJyIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj4nK24rIjwvc3ZnPiJ9ZnVuY3Rpb24gR2woZSl7dmFyIHQ9ZXx8dG4oKTtyZXR1cm4gdD8nPGRpdiBjbGFzcz0iZmlsZS10cmVlIiBpZD0iZmlsZS10cmVlIiBkYXRhLWN3ZD0iJytwKHQpKyciPjxkaXYgY2xhc3M9InRyZWUtbG9hZGluZyI+XHU1MkEwXHU4RjdEXHU0RTJEXHUyMDI2PC9kaXY+PC9kaXY+JzonPGRpdiBjbGFzcz0iZmlsZS1leHBsb3JlciBlbXB0eSI+XHU2NzJBXHU5MTREXHU3RjZFXHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1XHUzMDAyPC9kaXY+J312YXIgWWw9e3BuZzoiXHV7MUY1QkN9XHVGRTBGIixqcGc6Ilx1ezFGNUJDfVx1RkUwRiIsanBlZzoiXHV7MUY1QkN9XHVGRTBGIixnaWY6Ilx1ezFGNUJDfVx1RkUwRiIsd2VicDoiXHV7MUY1QkN9XHVGRTBGIixzdmc6Ilx1ezFGNUJDfVx1RkUwRiIsYXZpZjoiXHV7MUY1QkN9XHVGRTBGIixibXA6Ilx1ezFGNUJDfVx1RkUwRiIsaWNvOiJcdXsxRjVCQ31cdUZFMEYiLGhlaWM6Ilx1ezFGNUJDfVx1RkUwRiIsaGVpZjoiXHV7MUY1QkN9XHVGRTBGIixwZGY6Ilx1ezFGNEQ1fSIsZG9jOiJcdXsxRjREOH0iLGRvY3g6Ilx1ezFGNEQ4fSIsb2R0OiJcdXsxRjREOH0iLHhsczoiXHV7MUY0Q0F9Iix4bHN4OiJcdXsxRjRDQX0iLGNzdjoiXHV7MUY0Q0F9Iix0c3Y6Ilx1ezFGNENBfSIscHB0OiJcdXsxRjREOX0iLHBwdHg6Ilx1ezFGNEQ5fSIsbXA0OiJcdXsxRjNBQ30iLHdlYm06Ilx1ezFGM0FDfSIsbW92OiJcdXsxRjNBQ30iLG1rdjoiXHV7MUYzQUN9IixtNHY6Ilx1ezFGM0FDfSIsb2d2OiJcdXsxRjNBQ30iLG1wMzoiXHV7MUYzQjV9Iix3YXY6Ilx1ezFGM0I1fSIsb2dnOiJcdXsxRjNCNX0iLG00YToiXHV7MUYzQjV9IixmbGFjOiJcdXsxRjNCNX0iLGFhYzoiXHV7MUYzQjV9IixvcHVzOiJcdXsxRjNCNX0iLHppcDoiXHV7MUY0RTZ9Iix0YXI6Ilx1ezFGNEU2fSIsZ3o6Ilx1ezFGNEU2fSIsdGd6OiJcdXsxRjRFNn0iLGJ6MjoiXHV7MUY0RTZ9IiwiN3oiOiJcdXsxRjRFNn0iLHJhcjoiXHV7MUY0RTZ9Iix4ejoiXHV7MUY0RTZ9IixtZDoiXHV7MUY0RER9IixtYXJrZG93bjoiXHV7MUY0RER9IixtZHg6Ilx1ezFGNEREfSIscnN0OiJcdXsxRjRERH0iLHR4dDoiXHV7MUY0RER9Iixsb2c6Ilx1ezFGNEREfSIsaHRtbDoiXHV7MUYzMTB9IixodG06Ilx1ezFGMzEwfSIseG1sOiJcdXsxRjMxMH0iLGNzczoiXHV7MUYzQTh9IixzY3NzOiJcdXsxRjNBOH0iLGxlc3M6Ilx1ezFGM0E4fSIsanNvbjoiXHUyNjk5XHVGRTBGIixqc29uYzoiXHUyNjk5XHVGRTBGIix5YW1sOiJcdTI2OTlcdUZFMEYiLHltbDoiXHUyNjk5XHVGRTBGIix0b21sOiJcdTI2OTlcdUZFMEYiLGluaToiXHUyNjk5XHVGRTBGIixjZmc6Ilx1MjY5OVx1RkUwRiIsY29uZjoiXHUyNjk5XHVGRTBGIixlbnY6Ilx1MjY5OVx1RkUwRiIsZWRpdG9yY29uZmlnOiJcdTI2OTlcdUZFMEYiLHRzOiJcdXsxRjREQ30iLHRzeDoiXHV7MUY0REN9IixqczoiXHV7MUY0REN9Iixqc3g6Ilx1ezFGNERDfSIsbWpzOiJcdXsxRjREQ30iLGNqczoiXHV7MUY0REN9IixweToiXHV7MUY0REN9IixyYjoiXHV7MUY0REN9IixnbzoiXHV7MUY0REN9IixyczoiXHV7MUY0REN9IixqYXZhOiJcdXsxRjREQ30iLGM6Ilx1ezFGNERDfSIsY3BwOiJcdXsxRjREQ30iLGg6Ilx1ezFGNERDfSIsaHBwOiJcdXsxRjREQ30iLGNzOiJcdXsxRjREQ30iLHN3aWZ0OiJcdXsxRjREQ30iLGt0OiJcdXsxRjREQ30iLHNjYWxhOiJcdXsxRjREQ30iLHBocDoiXHV7MUY0REN9IixzaDoiXHV7MUY0REN9IixiYXNoOiJcdXsxRjREQ30iLHpzaDoiXHV7MUY0REN9IixmaXNoOiJcdXsxRjREQ30iLGx1YToiXHV7MUY0REN9IixzcWw6Ilx1ezFGNERDfSIsZ3JhcGhxbDoiXHV7MUY0REN9Iixwcm90bzoiXHV7MUY0REN9Iix2dWU6Ilx1ezFGNERDfSIsc3ZlbHRlOiJcdXsxRjREQ30iLGRpZmY6Ilx1ezFGNERDfSIscGF0Y2g6Ilx1ezFGNERDfSIsdHRmOiJcdXsxRjUyNH0iLG90ZjoiXHV7MUY1MjR9Iix3b2ZmOiJcdXsxRjUyNH0iLHdvZmYyOiJcdXsxRjUyNH0iLGVvdDoiXHV7MUY1MjR9In07ZnVuY3Rpb24gd3UoZSl7aWYoIWUpcmV0dXJuIlx1ezFGNEM0fSI7aWYoZS50eXBlPT09ImRpciIpcmV0dXJuIlx1ezFGNEMxfSI7dmFyIHQ9KGUubmFtZXx8IiIpLnRvTG93ZXJDYXNlKCk7aWYodD09PSJkb2NrZXJmaWxlIilyZXR1cm4iXHV7MUY0MzN9IjtpZih0PT09Im1ha2VmaWxlIilyZXR1cm4iXHV7MUY2RTB9XHVGRTBGIjtpZih0PT09ImxpY2Vuc2UiKXJldHVybiJcdXsxRjREQ30iO2lmKHQ9PT0icmVhZG1lIilyZXR1cm4iXHV7MUY0RER9Ijt2YXIgbj10Lmxhc3RJbmRleE9mKCIuIik7aWYobjwwfHxuPT09dC5sZW5ndGgtMSlyZXR1cm4iXHV7MUY0QzR9Ijt2YXIgaT10LnNsaWNlKG4rMSk7cmV0dXJuIFlsW2ldfHwiXHV7MUY0QzR9In1mdW5jdGlvbiBxbihlKXtpZih0eXBlb2YgZSE9Im51bWJlciJ8fCFpc0Zpbml0ZShlKXx8ZTwwKXJldHVybiIiO2lmKGU8MTAyNClyZXR1cm4gZSsiIEIiO3ZhciB0PWUvMTAyNDtpZih0PDEwMjQpcmV0dXJuKHQ+PTEwP01hdGgucm91bmQodCk6dC50b0ZpeGVkKDEpKSsiIEtCIjt2YXIgbj10LzEwMjQ7aWYobjwxMDI0KXJldHVybihuPj0xMD9NYXRoLnJvdW5kKG4pOm4udG9GaXhlZCgxKSkrIiBNQiI7dmFyIGk9bi8xMDI0O3JldHVybihpPj0xMD9NYXRoLnJvdW5kKGkpOmkudG9GaXhlZCgxKSkrIiBHQiJ9ZnVuY3Rpb24gUWwoZSl7aWYoIWUpcmV0dXJuIiI7dmFyIHQ9RGF0ZS5wYXJzZShlKTtyZXR1cm4gaXNOYU4odCk/IiI6bmV3IERhdGUodCkudG9Mb2NhbGVTdHJpbmcoKX1mdW5jdGlvbiBDdSgpe2lmKHIuZmlsZUV4cGxvcmVyQ3dkKXJldHVybiByLmZpbGVFeHBsb3JlckN3ZDtpZihyLnNlbGVjdGVkSWQpe3ZhciBlPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbih0KXtyZXR1cm4gdC5pZD09PXIuc2VsZWN0ZWRJZH0pO2lmKGUmJmUuY3dkKXJldHVybiBlLmN3ZH1yZXR1cm4gdG4oKX1mdW5jdGlvbiBQdChlKXtlPWV8fHt9O3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLWV4cGxvcmVyIiksbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1leHBsb3Jlci1jd2QiKTtpZih0KXt2YXIgaT1lLmN3ZHx8Q3UoKTtpZighaSl7dC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZpbGUtZXhwbG9yZXIgZW1wdHkiPlx1NkNBMVx1NjcwOVx1NTNFRlx1NjYzRVx1NzkzQVx1NzY4NFx1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NVx1MzAwMjwvZGl2Pic7cmV0dXJufXIuZmlsZUV4cGxvcmVyQ3dkPWksci5maWxlRXhwbG9yZXJMb2FkaW5nPSEwLHIuYWxsRmlsZXM9W10sci5maWxlRXhwbG9yZXJUcnVuY2F0ZWQ9ITEsci5maWxlRXhwbG9yZXJUb3RhbD0wLHQuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLWV4cGxvcmVyIj48ZGl2IGNsYXNzPSJ0cmVlLWxvYWRpbmciIHN0eWxlPSJwYWRkaW5nOjEycHg7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOjAuODEyNXJlbTsiPlx1NTJBMFx1OEY3RFx1NEUyRFx1MjAyNjwvZGl2PjwvZGl2PicsbiYmKG4udGFnTmFtZT09PSJJTlBVVCI/ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCE9PW4mJihuLnZhbHVlPWkpOm4udGV4dENvbnRlbnQ9aSxuLnRpdGxlPWkpO3ZhciBhPSIvYXBpL2RpcmVjdG9yeT9xPSIrZW5jb2RlVVJJQ29tcG9uZW50KGkpKyImZ2l0U3RhdHVzPXRydWUiO2ZldGNoKGEse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHUpe2lmKCF1Lm9rKXRocm93IG5ldyBFcnJvcigiRmFpbGVkIHRvIGxvYWQgZGlyZWN0b3J5LiIpO3JldHVybiB1Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odSl7ci5maWxlRXhwbG9yZXJMb2FkaW5nPSExO3ZhciBzLG8sbDtpZihBcnJheS5pc0FycmF5KHUpPyhzPXUsbz0hMSxsPXUubGVuZ3RoKToocz11JiZ1Lml0ZW1zfHxbXSxvPSEhKHUmJnUudHJ1bmNhdGVkKSxsPXUmJnUudG90YWx8fHMubGVuZ3RoKSwhc3x8cy5sZW5ndGg9PT0wKXt0LmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZmlsZS1leHBsb3JlciBlbXB0eSI+XHU3QTdBXHU3NkVFXHU1RjU1XHU2MjE2XHU2NUUwXHU2Q0Q1XHU4QkJGXHU5NUVFXHUzMDAyPC9kaXY+JztyZXR1cm59ci5hbGxGaWxlcz1zLHIuZmlsZUV4cGxvcmVyVHJ1bmNhdGVkPW8sci5maWxlRXhwbG9yZXJUb3RhbD1sLEJ1KCl9KS5jYXRjaChmdW5jdGlvbigpe3IuZmlsZUV4cGxvcmVyTG9hZGluZz0hMSx0LmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZmlsZS1leHBsb3JlciBlbXB0eSI+XHU1MkEwXHU4RjdEXHU1OTMxXHU4RDI1XHVGRjBDXHU4QkY3XHU2OEMwXHU2N0U1XHU4REVGXHU1Rjg0XHU2MjE2XHU2NzQzXHU5NjUwXHUzMDAyPC9kaXY+J30pfX1mdW5jdGlvbiBCdSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLWV4cGxvcmVyIik7aWYoZSl7dmFyIHQ9ci5maWxlRXhwbG9yZXJDd2R8fCIiO2lmKHQpe3ZhciBuPXIuZmlsZVNlYXJjaFF1ZXJ5LGk9ci5hbGxGaWxlc3x8W10sYT1pO2lmKG4pe3ZhciB1PW4udG9Mb3dlckNhc2UoKTthPWkuZmlsdGVyKGZ1bmN0aW9uKGwpe3JldHVybiBsLm5hbWUudG9Mb3dlckNhc2UoKS5pbmRleE9mKHUpIT09LTF9KX1pZihhLmxlbmd0aD09PTApe2UuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLWV4cGxvcmVyIGVtcHR5Ij4nKyhuPyJcdTZDQTFcdTY3MDlcdTYyN0VcdTUyMzBcdTUzMzlcdTkxNERcdTc2ODRcdTY1ODdcdTRFRjYiOiJcdTdBN0FcdTc2RUVcdTVGNTUiKSsiPC9kaXY+IjtyZXR1cm59dmFyIHM9IiI7aWYoIW4mJnIuZmlsZUV4cGxvcmVyVHJ1bmNhdGVkKXt2YXIgbz1pLmxlbmd0aDtzPSc8ZGl2IGNsYXNzPSJ0cmVlLXRydW5jYXRlZCIgdGl0bGU9Ilx1NTQwRVx1N0FFRlx1NjMwOVx1NUI1N1x1NkJDRFx1NUU4Rlx1NjcwMFx1NTkxQVx1OEZENFx1NTZERSAnK28rJyBcdTk4NzkiPlx1NjYzRVx1NzkzQVx1NTI0RCAnK28rIiBcdTk4NzkgLyBcdTUxNzEgIityLmZpbGVFeHBsb3JlclRvdGFsKyIgXHU5ODc5PC9kaXY+In1lLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZmlsZS10cmVlIiBpZD0iZmlsZS10cmVlIiBkYXRhLWN3ZD0iJytwKHQpKyciPicrYS5tYXAoZnVuY3Rpb24obCl7cmV0dXJuIER1KGwpfSkuam9pbigiIikrIjwvZGl2PiIrcyxrdSgpfX19ZnVuY3Rpb24gRHUoZSx0KXt0PXR8fDA7dmFyIG49cChlLm5hbWUpLGk9ZS50eXBlPT09ImRpciIsYT13dShlKSx1PWk/Ilx1MjVCOCI6IiIscz1pPyIiOiIgZW1wdHkiLG89ZS5naXRTdGF0dXMsbD0kbChvKSxjPSIiO3JldHVybiFpJiZ0eXBlb2YgZS5zaXplPT0ibnVtYmVyIiYmKGM9JzxzcGFuIGNsYXNzPSJ0cmVlLW1ldGEiIHRpdGxlPSJcdTU5MjdcdTVDMEZcdUZGMUEnK3AocW4oZS5zaXplKSkrKGUubXRpbWU/YApcdTRGRUVcdTY1MzlcdTY1RjZcdTk1RjRcdUZGMUFgK3AoUWwoZS5tdGltZSkpOiIiKSsnIj4nK3AocW4oZS5zaXplKSkrIjwvc3Bhbj4iKSwnPGRpdiBjbGFzcz0idHJlZS1pdGVtIiBkYXRhLXBhdGg9IicrcChlLnBhdGgpKyciIGRhdGEtdHlwZT0iJytwKGUudHlwZSkrJyIgZGF0YS1uYW1lPSInK3AoZS5uYW1lKSsnIiB0YWJpbmRleD0iMCI+PHNwYW4gY2xhc3M9InRyZWUtdG9nZ2xlJytzKyciPicrdSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJ0cmVlLWljb24iPicrYSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJ0cmVlLW5hbWUiPicrbisiPC9zcGFuPiIrYysobD8nPHNwYW4gY2xhc3M9ImdpdC1zdGF0dXMtYmFkZ2UgJytsLmNsYXNzKyciIHRpdGxlPSInK2wudGl0bGUrJyI+JytsLnRleHQrIjwvc3Bhbj4iOiIiKSsiPC9kaXY+In1mdW5jdGlvbiAkbChlKXtyZXR1cm4gZT9lLnN0YWdlZD09PSJhZGRlZCI/e3RleHQ6IkEiLGNsYXNzOiJnaXQtYWRkZWQiLHRpdGxlOiJcdTVERjJcdTY2ODJcdTVCNThcdUZGMDhcdTY1QjBcdTU4OUVcdUZGMDkifTplLnN0YWdlZD09PSJtb2RpZmllZCI/e3RleHQ6Ik0iLGNsYXNzOiJnaXQtbW9kaWZpZWQiLHRpdGxlOiJcdTVERjJcdTY2ODJcdTVCNThcdUZGMDhcdTRGRUVcdTY1MzlcdUZGMDkifTplLnN0YWdlZD09PSJkZWxldGVkIj97dGV4dDoiRCIsY2xhc3M6ImdpdC1kZWxldGVkIix0aXRsZToiXHU1REYyXHU2NjgyXHU1QjU4XHVGRjA4XHU1MjIwXHU5NjY0XHVGRjA5In06ZS5zdGFnZWQ9PT0icmVuYW1lZCI/e3RleHQ6IlIiLGNsYXNzOiJnaXQtcmVuYW1lZCIsdGl0bGU6Ilx1NURGMlx1NjY4Mlx1NUI1OFx1RkYwOFx1OTFDRFx1NTQ3RFx1NTQwRFx1RkYwOSJ9OmUudW5zdGFnZWQ9PT0ibW9kaWZpZWQiP3t0ZXh0OiJNIixjbGFzczoiZ2l0LXVuc3RhZ2VkIix0aXRsZToiXHU2NzJBXHU2NjgyXHU1QjU4XHVGRjA4XHU0RkVFXHU2NTM5XHVGRjA5In06ZS51bnN0YWdlZD09PSJkZWxldGVkIj97dGV4dDoiRCIsY2xhc3M6ImdpdC11bnN0YWdlZC1kZWxldGVkIix0aXRsZToiXHU2NzJBXHU2NjgyXHU1QjU4XHVGRjA4XHU1MjIwXHU5NjY0XHVGRjA5In06ZS51bnRyYWNrZWQ/e3RleHQ6Ij8iLGNsYXNzOiJnaXQtdW50cmFja2VkIix0aXRsZToiXHU2NzJBXHU4RERGXHU4RTJBIn06bnVsbDpudWxsfWZ1bmN0aW9uIGt1KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtdHJlZSIpO2lmKGUpe2UucXVlcnlTZWxlY3RvckFsbCgiLnRyZWUtaXRlbVtkYXRhLXR5cGU9J2RpciddIikuZm9yRWFjaChmdW5jdGlvbihpKXtpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihhKXtYbChpKX0pfSksZS5xdWVyeVNlbGVjdG9yQWxsKCIudHJlZS1pdGVtW2RhdGEtdHlwZT0nZmlsZSddIikuZm9yRWFjaChmdW5jdGlvbihpKXt2YXIgYT1mdW5jdGlvbigpe0tyKGkuZGF0YXNldC5wYXRoKX07aS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsYSksaS5hZGRFdmVudExpc3RlbmVyKCJkYmxjbGljayIsYSl9KTt2YXIgdD1udWxsLG49ITE7ZS5xdWVyeVNlbGVjdG9yQWxsKCIudHJlZS1pdGVtIikuZm9yRWFjaChmdW5jdGlvbihpKXtpLmFkZEV2ZW50TGlzdGVuZXIoImNvbnRleHRtZW51IixmdW5jdGlvbihhKXthLnByZXZlbnREZWZhdWx0KCksQXUoYS5jbGllbnRYLGEuY2xpZW50WSxpKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsZnVuY3Rpb24oYSl7bj0hMSx0PXNldFRpbWVvdXQoZnVuY3Rpb24oKXtuPSEwO3ZhciB1PWEudG91Y2hlcyYmYS50b3VjaGVzWzBdO0F1KHU/dS5jbGllbnRYOjAsdT91LmNsaWVudFk6MCxpKX0sNTAwKX0se3Bhc3NpdmU6ITB9KSxpLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIixmdW5jdGlvbigpe3QmJihjbGVhclRpbWVvdXQodCksdD1udWxsKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixmdW5jdGlvbigpe3QmJihjbGVhclRpbWVvdXQodCksdD1udWxsKX0pfSl9fWZ1bmN0aW9uIFhsKGUpe3ZhciB0PWUuZGF0YXNldC5wYXRoLG49ZS5xdWVyeVNlbGVjdG9yKCIudHJlZS10b2dnbGUiKSxpPWUubmV4dEVsZW1lbnRTaWJsaW5nO2lmKGkmJmkuY2xhc3NMaXN0LmNvbnRhaW5zKCJ0cmVlLWNoaWxkcmVuIikpe3ZhciBhPWkuY2xhc3NMaXN0LmNvbnRhaW5zKCJvcGVuIik7aS5jbGFzc0xpc3QudG9nZ2xlKCJvcGVuIiksbiYmbi5jbGFzc0xpc3QudG9nZ2xlKCJvcGVuIiwhYSk7dmFyIHU9ZS5xdWVyeVNlbGVjdG9yKCIudHJlZS1pY29uIik7dSYmKHUudGV4dENvbnRlbnQ9YT8iXHV7MUY0QzF9IjoiXHV7MUY0QzJ9Iik7cmV0dXJufW4mJm4uY2xhc3NMaXN0LmFkZCgib3BlbiIpO3ZhciBzPWUucXVlcnlTZWxlY3RvcigiLnRyZWUtaWNvbiIpO3MmJihzLnRleHRDb250ZW50PSJcdXsxRjRDMn0iKTt2YXIgbz0iL2FwaS9kaXJlY3Rvcnk/cT0iK2VuY29kZVVSSUNvbXBvbmVudCh0KSsiJmdpdFN0YXR1cz10cnVlIjtmZXRjaChvLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihsKXtyZXR1cm4gbC5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGwpe3ZhciBjO0FycmF5LmlzQXJyYXkobCk/Yz1sOmM9bCYmbC5pdGVtc3x8W107dmFyIGY9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Zi5jbGFzc05hbWU9InRyZWUtY2hpbGRyZW4gb3BlbiIsIWN8fGMubGVuZ3RoPT09MD9mLmlubmVySFRNTD0nPGRpdiBjbGFzcz0idHJlZS1pdGVtIiBzdHlsZT0iY29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Y3Vyc29yOmRlZmF1bHQ7Ij48c3BhbiBjbGFzcz0idHJlZS10b2dnbGUgZW1wdHkiPlx1MjVCODwvc3Bhbj48c3BhbiBjbGFzcz0idHJlZS1uYW1lIj5cdUZGMDhcdTdBN0FcdTc2RUVcdTVGNTVcdUZGMDk8L3NwYW4+PC9kaXY+JzpmLmlubmVySFRNTD1jLm1hcChmdW5jdGlvbihkKXtyZXR1cm4gRHUoZCl9KS5qb2luKCIiKSxlLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGYsZS5uZXh0U2libGluZyksa3UoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSl9ZnVuY3Rpb24gWmwoKXt2YXIgZT1DdSgpO2lmKGUpe3ZhciB0PWUucmVwbGFjZSgvXC8rJC8sIiIpLnJlcGxhY2UoL1wvW15cL10rJC8sIiIpO3R8fCh0PSIvIiksdCE9PWUmJlB0KHtjd2Q6dH0pfX1mdW5jdGlvbiBWaShlKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7aWYoIXQpcmV0dXJuITE7dmFyIG49dC52YWx1ZXx8IiIsaT1uJiYhbi5lbmRzV2l0aCgiICIpJiYhbi5lbmRzV2l0aChgCmApPyIgIjoiIjt0LnZhbHVlPW4raStlLHQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoImlucHV0Iix7YnViYmxlczohMH0pKTt0cnl7dC5mb2N1cygpLHQuc2V0U2VsZWN0aW9uUmFuZ2UodC52YWx1ZS5sZW5ndGgsdC52YWx1ZS5sZW5ndGgpfWNhdGNoe31yZXR1cm4hMH1mdW5jdGlvbiBWcihlKXtpZihuYXZpZ2F0b3IuY2xpcGJvYXJkJiZuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dClyZXR1cm4gbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoZSkudGhlbihmdW5jdGlvbigpe3JldHVybiEwfSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm4gdCgpfSk7cmV0dXJuIFByb21pc2UucmVzb2x2ZSh0KCkpO2Z1bmN0aW9uIHQoKXt0cnl7dmFyIG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGV4dGFyZWEiKTtuLnZhbHVlPWUsbi5zdHlsZS5wb3NpdGlvbj0iZml4ZWQiLG4uc3R5bGUubGVmdD0iLTk5OTlweCIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChuKSxuLnNlbGVjdCgpO3ZhciBpPWRvY3VtZW50LmV4ZWNDb21tYW5kKCJjb3B5Iik7cmV0dXJuIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQobiksaX1jYXRjaHtyZXR1cm4hMX19fWZ1bmN0aW9uIEJ0KGUpe2lmKHR5cGVvZiB3aW5kb3cuc2hvd1RvYXN0PT0iZnVuY3Rpb24iKXt3aW5kb3cuc2hvd1RvYXN0KGUpO3JldHVybn12YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0LmNsYXNzTmFtZT0id2FuZC1taW5pLXRvYXN0Iix0LnRleHRDb250ZW50PWUsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0KSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dC5jbGFzc0xpc3QuYWRkKCJzaG93Iil9LDEwKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dC5jbGFzc0xpc3QucmVtb3ZlKCJzaG93Iiksc2V0VGltZW91dChmdW5jdGlvbigpe3QucmVtb3ZlKCl9LDIyMCl9LDE2MDApfWZ1bmN0aW9uIEhuKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtY29udGV4dC1tZW51Iik7ZSYmZS5yZW1vdmUoKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsSG4sITApLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInNjcm9sbCIsSG4sITApfWZ1bmN0aW9uIEF1KGUsdCxuKXtIbigpO3ZhciBpPW4uZGF0YXNldC5wYXRofHwiIixhPW4uZGF0YXNldC50eXBlfHwiZmlsZSIsdT1yLmZpbGVFeHBsb3JlckN3ZHx8IiIscz1pO3UmJmkuaW5kZXhPZih1KT09PTAmJihzPWkuc2xpY2UodS5sZW5ndGgpLnJlcGxhY2UoL15cLysvLCIiKXx8Ii4iKTt2YXIgbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtvLmlkPSJmaWxlLWNvbnRleHQtbWVudSIsby5jbGFzc05hbWU9ImZpbGUtY29udGV4dC1tZW51Ijt2YXIgbD1bXTthPT09ImZpbGUiP2wucHVzaCh7bGFiZWw6Ilx1NjI1M1x1NUYwMFx1OTg4NFx1ODlDOCIsaWNvbjoiXHV7MUY0NDF9IixydW46ZnVuY3Rpb24oKXtLcihpKX19KTpsLnB1c2goe2xhYmVsOiJcdThGREJcdTUxNjVcdTZCNjRcdTc2RUVcdTVGNTUiLGljb246Ilx1ezFGNEMyfSIscnVuOmZ1bmN0aW9uKCl7UHQoe2N3ZDppfSl9fSksbC5wdXNoKHtsYWJlbDoiXHU1OTBEXHU1MjM2XHU1QjhDXHU2NTc0XHU4REVGXHU1Rjg0IixpY29uOiJcdXsxRjRDQn0iLHJ1bjpmdW5jdGlvbigpe1ZyKGkpLnRoZW4oZnVuY3Rpb24oKXtCdCgiXHU1REYyXHU1OTBEXHU1MjM2XHU4REVGXHU1Rjg0Iil9KX19KSxzJiZzIT09aSYmbC5wdXNoKHtsYWJlbDoiXHU1OTBEXHU1MjM2XHU3NkY4XHU1QkY5XHU4REVGXHU1Rjg0IixpY29uOiJcdXsxRjRDQn0iLHJ1bjpmdW5jdGlvbigpe1ZyKHMpLnRoZW4oZnVuY3Rpb24oKXtCdCgiXHU1REYyXHU1OTBEXHU1MjM2XHU3NkY4XHU1QkY5XHU4REVGXHU1Rjg0Iil9KX19KSxsLnB1c2goe2xhYmVsOiJcdTdDOThcdThEMzRcdThERUZcdTVGODRcdTUyMzBcdThGOTNcdTUxNjVcdTY4NDYiLGljb246Ilx1MjcwRlx1RkUwRiIscnVuOmZ1bmN0aW9uKCl7VmkoaSkmJkJ0KCJcdTVERjJcdTdDOThcdThEMzRcdTUyMzBcdThGOTNcdTUxNjVcdTY4NDYiKX19KSxhPT09ImZpbGUiJiZsLnB1c2goe2xhYmVsOiJcdTRFMEJcdThGN0RcdTY1ODdcdTRFRjYiLGljb246Ilx1MkIwNyIscnVuOmZ1bmN0aW9uKCl7dmFyIGg9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpO2guaHJlZj0iL2FwaS9maWxlLXJhdz9kb3dubG9hZD0xJnBhdGg9IitlbmNvZGVVUklDb21wb25lbnQoaSksaC5yZWw9Im5vb3BlbmVyIixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGgpLGguY2xpY2soKSxoLnJlbW92ZSgpfX0pLG8uaW5uZXJIVE1MPWwubWFwKGZ1bmN0aW9uKGgsbSl7cmV0dXJuJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iZmlsZS1jb250ZXh0LW1lbnUtaXRlbSIgZGF0YS1pZHg9IicrbSsnIj48c3BhbiBjbGFzcz0iY3R4LWljb24iPicraC5pY29uKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImN0eC1sYWJlbCI+JytwKGgubGFiZWwpKyI8L3NwYW4+PC9idXR0b24+In0pLmpvaW4oIiIpLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobyk7dmFyIGM9d2luZG93LmlubmVyV2lkdGgsZj13aW5kb3cuaW5uZXJIZWlnaHQsZD1vLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLHY9TWF0aC5taW4oZSxjLWQud2lkdGgtOCksZz1NYXRoLm1pbih0LGYtZC5oZWlnaHQtOCk7by5zdHlsZS5sZWZ0PU1hdGgubWF4KDgsdikrInB4IixvLnN0eWxlLnRvcD1NYXRoLm1heCg4LGcpKyJweCIsby5xdWVyeVNlbGVjdG9yQWxsKCIuZmlsZS1jb250ZXh0LW1lbnUtaXRlbSIpLmZvckVhY2goZnVuY3Rpb24oaCl7aC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24obSl7bS5zdG9wUHJvcGFnYXRpb24oKTt2YXIgYj1wYXJzZUludChoLmRhdGFzZXQuaWR4LDEwKTtIbigpLGxbYl0mJmxbYl0ucnVuKCl9KX0pLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsSG4sITApLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsSG4sITApfSwwKX12YXIgUD1udWxsO2Z1bmN0aW9uIEtyKGUpe3ZhciB0PVAmJlAub3ZlcmxheTtpZih0KXtQLnBhdGg9ZSxQLmVkaXRpbmc9ITEsUC5kaXJ0eT0hMTt2YXIgcz10LnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctdGl0bGUiKTtzJiYocy5pbm5lckhUTUw9JzxzcGFuIGNsYXNzPSJmaWxlLXByZXZpZXctaWNvbiI+XHV7MUY0QzR9PC9zcGFuPjxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy1uYW1lLWJsb2NrIj48ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctbmFtZS1yb3ciPjxzcGFuIGNsYXNzPSJmaWxlLXByZXZpZXctZmlsZW5hbWUiPlx1NTJBMFx1OEY3RFx1NEUyRFx1MjAyNjwvc3Bhbj48L2Rpdj48c3BhbiBjbGFzcz0iZmlsZS1wcmV2aWV3LXBhdGgiIHRpdGxlPSIiPjwvc3Bhbj48L2Rpdj4nKTt2YXIgbz10LnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctdG9vbGJhciIpO28mJihvLmlubmVySFRNTD0iIik7dmFyIGw9dC5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LXBhdGgiKTtsJiYobC50ZXh0Q29udGVudD0iIixsLnRpdGxlPSIiKTt2YXIgYz10LnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctYm9keSIpO2MmJihjLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZmlsZS1wcmV2aWV3LWxvYWRpbmciPlx1NTJBMFx1OEY3RFx1OTg4NFx1ODlDOFx1MjAyNjwvZGl2PicpfWVsc2V7dD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0LmNsYXNzTmFtZT0iZmlsZS1wcmV2aWV3LW92ZXJsYXkiLHQuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctbW9kYWwiIHRhYmluZGV4PSItMSI+PGRpdiBjbGFzcz0iZmlsZS1wcmV2aWV3LWhlYWRlciI+PGRpdiBjbGFzcz0iZmlsZS1wcmV2aWV3LXRpdGxlIj48c3BhbiBjbGFzcz0iZmlsZS1wcmV2aWV3LWljb24iPlx1ezFGNEM0fTwvc3Bhbj48ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctbmFtZS1ibG9jayI+PGRpdiBjbGFzcz0iZmlsZS1wcmV2aWV3LW5hbWUtcm93Ij48c3BhbiBjbGFzcz0iZmlsZS1wcmV2aWV3LWZpbGVuYW1lIj5cdTUyQTBcdThGN0RcdTRFMkRcdTIwMjY8L3NwYW4+PC9kaXY+PHNwYW4gY2xhc3M9ImZpbGUtcHJldmlldy1wYXRoIiB0aXRsZT0iIj48L3NwYW4+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZmlsZS1wcmV2aWV3LXRvb2xiYXIiPjwvZGl2PjxidXR0b24gY2xhc3M9ImZpbGUtcHJldmlldy1jbG9zZSIgdGl0bGU9Ilx1NTE3M1x1OTVFRCAoRXNjKSIgYXJpYS1sYWJlbD0iXHU1MTczXHU5NUVEIj4nK01lKCJ4Iix7c2l6ZToxOH0pKyc8L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctYm9keSI+PGRpdiBjbGFzcz0iZmlsZS1wcmV2aWV3LWxvYWRpbmciPlx1NTJBMFx1OEY3RFx1OTg4NFx1ODlDOFx1MjAyNjwvZGl2PjwvZGl2PjwvZGl2PicsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0KTt2YXIgbj10LnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctY2xvc2UiKSxpPWZ1bmN0aW9uKCl7aWYoUCYmUC5kaXJ0eSYmdHlwZW9mIHJuPT0iZnVuY3Rpb24iKXtybih7dHlwZToid2FybmluZyIsdGl0bGU6Ilx1NjUzRVx1NUYwM1x1NjcyQVx1NEZERFx1NUI1OFx1NzY4NFx1NEZFRVx1NjUzOVx1RkYxRiIsbWVzc2FnZToiXHU1RjUzXHU1MjREXHU2NTg3XHU0RUY2XHU2NzA5XHU2NzJBXHU0RkREXHU1QjU4XHU3Njg0XHU2NTM5XHU1MkE4XHVGRjBDXHU1MTczXHU5NUVEXHU1NDBFXHU0RjFBXHU0RTIyXHU1OTMxXHUzMDAyIixidXR0b25zOlt7bGFiZWw6Ilx1N0VFN1x1N0VFRFx1N0YxNlx1OEY5MSIsdmFsdWU6ITEsa2luZDoiZ2hvc3QifSx7bGFiZWw6Ilx1NjUzRVx1NUYwM1x1NEZFRVx1NjUzOSIsdmFsdWU6ITAsa2luZDoiZGFuZ2VyIixhdXRvZm9jdXM6ITB9XSxjYW5jZWxWYWx1ZTohMX0pLnRoZW4oZnVuY3Rpb24oZCl7ZCYmYSgpfSk7cmV0dXJufWEoKX0sYT1mdW5jdGlvbigpe3QucmVtb3ZlKCksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdSksUD1udWxsfTtuLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixpKSx0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihkKXtkLnRhcmdldD09PXQmJmkoKX0pO3ZhciB1PWZ1bmN0aW9uKGQpe2lmKChkLmtleT09PSJzInx8ZC5rZXk9PT0iUyIpJiYoZC5jdHJsS2V5fHxkLm1ldGFLZXkpJiZQJiZQLmVkaXRpbmcpe2QucHJldmVudERlZmF1bHQoKSxNdSgpO3JldHVybn1pZihkLmtleT09PSJFc2NhcGUiKXtpZihQJiZQLmVkaXRpbmcpe2QucHJldmVudERlZmF1bHQoKSxMdSgpO3JldHVybn1pKCk7cmV0dXJufVAmJihkLnRhcmdldCYmKGQudGFyZ2V0LnRhZ05hbWU9PT0iSU5QVVQifHxkLnRhcmdldC50YWdOYW1lPT09IlRFWFRBUkVBIil8fFAuZWRpdGluZ3x8KGQua2V5PT09IkFycm93TGVmdCI/KGQucHJldmVudERlZmF1bHQoKSx4dSgtMSkpOmQua2V5PT09IkFycm93UmlnaHQiJiYoZC5wcmV2ZW50RGVmYXVsdCgpLHh1KDEpKSkpfTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIix1KSxQPXtvdmVybGF5OnQsY2xvc2U6aSxwYXRoOmUsZGF0YTpudWxsLGVkaXRpbmc6ITEsZGlydHk6ITF9fXZhciBmPXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1wYXRoIik7ZiYmKGYudGV4dENvbnRlbnQ9ZSxmLnRpdGxlPWUpLGZldGNoKCIvYXBpL2ZpbGUtcHJldmlldz9wYXRoPSIrZW5jb2RlVVJJQ29tcG9uZW50KGUpLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihkKXtyZXR1cm4gZC5qc29uKCkudGhlbihmdW5jdGlvbih2KXtyZXR1cm57b2s6ZC5vayxzdGF0dXM6ZC5zdGF0dXMsZGF0YTp2fX0pfSkudGhlbihmdW5jdGlvbihkKXt2YXIgdj10LnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctYm9keSIpO2lmKCFkLm9rfHxkLmRhdGEmJmQuZGF0YS5lcnJvcil7dmFyIGc9ZC5kYXRhJiZkLmRhdGEuZXJyb3J8fCJcdTUyQTBcdThGN0RcdTU5MzFcdThEMjUiO2Quc3RhdHVzPT09NDEzJiZkLmRhdGEmJmQuZGF0YS5zaXplJiYoZys9Ilx1RkYwOFx1NjU4N1x1NEVGNlx1NTkyN1x1NUMwRlx1RkYxQSIrcW4oZC5kYXRhLnNpemUpKyJcdUZGMDkiKSx2LmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZmlsZS1wcmV2aWV3LWVycm9yIj48c3BhbiBjbGFzcz0icHJldmlldy1lcnJvci1pY29uIj5cdTI2QTA8L3NwYW4+PHNwYW4+JytwKGcpKyI8L3NwYW4+PC9kaXY+IixkLnN0YXR1cz09PTQxMyYmS2kodCx7a2luZDoiYmluYXJ5IixwYXRoOmUsbmFtZTplLnNwbGl0KCIvIikucG9wKCl8fGUsZXh0OiIiLHNpemU6ZC5kYXRhJiZkLmRhdGEuc2l6ZXx8MH0pO3JldHVybn1QLmRhdGE9ZC5kYXRhLFN1KHQsZC5kYXRhKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dmFyIGQ9dC5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LWJvZHkiKTtkLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZmlsZS1wcmV2aWV3LWVycm9yIj48c3BhbiBjbGFzcz0icHJldmlldy1lcnJvci1pY29uIj5cdTI2QTA8L3NwYW4+PHNwYW4+XHU1MkEwXHU4RjdEXHU5ODg0XHU4OUM4XHU1OTMxXHU4RDI1PC9zcGFuPjwvZGl2Pid9KX1mdW5jdGlvbiB4dShlKXtpZihQKXt2YXIgdD0oci5hbGxGaWxlc3x8W10pLmZpbHRlcihmdW5jdGlvbihvKXtyZXR1cm4gby50eXBlPT09ImZpbGUifSk7aWYodC5sZW5ndGgpe2Zvcih2YXIgbj1QLnBhdGgsaT0tMSxhPTA7YTx0Lmxlbmd0aDthKyspaWYodFthXS5wYXRoPT09bil7aT1hO2JyZWFrfWlmKCEoaTwwKSl7dmFyIHU9KGkrZSt0Lmxlbmd0aCkldC5sZW5ndGgscz10W3VdLnBhdGg7cyYmcyE9PW4mJktyKHMpfX19fWZ1bmN0aW9uIFN1KGUsdCl7dmFyIG49ZS5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LWZpbGVuYW1lIik7biYmKG4udGV4dENvbnRlbnQ9dC5uYW1lKTt2YXIgaT1lLnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctaWNvbiIpO2kmJihpLnRleHRDb250ZW50PXd1KHtuYW1lOnQubmFtZSx0eXBlOiJmaWxlIn0pKTt2YXIgYT1lLnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctdGl0bGUiKSx1PWUucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1sYW5nIik7dSYmdS5yZW1vdmUoKTt2YXIgcz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7cy5jbGFzc05hbWU9ImZpbGUtcHJldmlldy1sYW5nIjt2YXIgbz17aW1hZ2U6Ilx1NTZGRVx1NzI0NyIscGRmOiJQREYiLHZpZGVvOiJcdTg5QzZcdTk4OTEiLGF1ZGlvOiJcdTk3RjNcdTk4OTEiLGJpbmFyeToiXHU0RThDXHU4RkRCXHU1MjM2In07dC5raW5kPT09InRleHQiP3MudGV4dENvbnRlbnQ9dC5sYW5nfHwodC5leHR8fCIiKS5yZXBsYWNlKCIuIiwiIil8fCJ0ZXh0IjpzLnRleHRDb250ZW50PW9bdC5raW5kXXx8KHQuZXh0fHwiIikucmVwbGFjZSgiLiIsIiIpfHx0LmtpbmQsYSYmYS5hcHBlbmRDaGlsZChzKSxLaShlLHQpO3ZhciBsPWUucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1ib2R5Iik7bC5pbm5lckhUTUw9IiIsbC5jbGFzc0xpc3QucmVtb3ZlKCJraW5kLXRleHQiLCJraW5kLWltYWdlIiwia2luZC1wZGYiLCJraW5kLXZpZGVvIiwia2luZC1hdWRpbyIsImtpbmQtYmluYXJ5IiksbC5jbGFzc0xpc3QuYWRkKCJraW5kLSIrKHQua2luZHx8InRleHQiKSksdC5raW5kPT09ImltYWdlIj90YyhsLHQpOnQua2luZD09PSJwZGYiP25jKGwsdCk6dC5raW5kPT09InZpZGVvIj9yYyhsLHQpOnQua2luZD09PSJhdWRpbyI/aWMobCx0KTp0LmtpbmQ9PT0iYmluYXJ5Ij9hYyhsLHQpOnQubGFuZz09PSJtYXJrZG93biJ8fC9cLihtZHxtYXJrZG93bnxtZHgpJC9pLnRlc3QodC5uYW1lfHwiIik/bC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9Im1hcmtkb3duLXByZXZpZXciPicrbGModC5jb250ZW50fHwiIikrIjwvZGl2PiI6ZWMobCx0KX1mdW5jdGlvbiBlYyhlLHQpe3ZhciBuPVB1KHQuY29udGVudHx8IiIsdC5sYW5nKSxpPW4uc3BsaXQoYApgKSxhPWkubWFwKGZ1bmN0aW9uKHUscyl7cmV0dXJuIHMrMX0pO2UuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJjb2RlLXByZXZpZXctd3JhcHBlciI+PGRpdiBjbGFzcz0iY29kZS1wcmV2aWV3LWxpbmVzIj4nK2Euam9pbihgCmApKyc8L2Rpdj48ZGl2IGNsYXNzPSJjb2RlLXByZXZpZXctY29udGVudCI+PHByZT4nK2kuam9pbihgCmApKyI8L3ByZT48L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIHRjKGUsdCl7dmFyIG49Ii9hcGkvZmlsZS1yYXc/cGF0aD0iK2VuY29kZVVSSUNvbXBvbmVudCh0LnBhdGgpO2UuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJpbWFnZS1wcmV2aWV3LXdyYXBwZXIiPjxpbWcgY2xhc3M9ImltYWdlLXByZXZpZXctaW1nIiBzcmM9IicrbisnIiBhbHQ9IicrcCh0Lm5hbWUpKyciIC8+PC9kaXY+Jzt2YXIgaT1lLnF1ZXJ5U2VsZWN0b3IoIi5pbWFnZS1wcmV2aWV3LWltZyIpO2lmKGkpe3ZhciBhPSExO2kuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7YT0hYSxpLmNsYXNzTGlzdC50b2dnbGUoInpvb21lZCIsYSl9KX19ZnVuY3Rpb24gbmMoZSx0KXt2YXIgbj0iL2FwaS9maWxlLXJhdz9wYXRoPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQucGF0aCk7ZS5pbm5lckhUTUw9JzxpZnJhbWUgY2xhc3M9InBkZi1wcmV2aWV3LWZyYW1lIiBzcmM9IicrbisnIiB0aXRsZT0iJytwKHQubmFtZSkrJyI+PC9pZnJhbWU+J31mdW5jdGlvbiByYyhlLHQpe3ZhciBuPSIvYXBpL2ZpbGUtcmF3P3BhdGg9IitlbmNvZGVVUklDb21wb25lbnQodC5wYXRoKTtlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0ibWVkaWEtcHJldmlldy13cmFwcGVyIj48dmlkZW8gY2xhc3M9Im1lZGlhLXByZXZpZXctdmlkZW8iIGNvbnRyb2xzIHByZWxvYWQ9Im1ldGFkYXRhIiBzcmM9IicrbisnIj5cdTYwQThcdTc2ODRcdTZENEZcdTg5QzhcdTU2NjhcdTRFMERcdTY1MkZcdTYzMDEgdmlkZW8gXHU2ODA3XHU3QjdFXHUzMDAyPC92aWRlbz48ZGl2IGNsYXNzPSJtZWRpYS1wcmV2aWV3LW1ldGEiPicrcChxbih0LnNpemUpKSsiPC9kaXY+PC9kaXY+In1mdW5jdGlvbiBpYyhlLHQpe3ZhciBuPSIvYXBpL2ZpbGUtcmF3P3BhdGg9IitlbmNvZGVVUklDb21wb25lbnQodC5wYXRoKTtlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0ibWVkaWEtcHJldmlldy13cmFwcGVyIGF1ZGlvIj48ZGl2IGNsYXNzPSJtZWRpYS1wcmV2aWV3LWljb24iPlx1ezFGM0I1fTwvZGl2PjxkaXYgY2xhc3M9Im1lZGlhLXByZXZpZXctbmFtZSI+JytwKHQubmFtZSkrJzwvZGl2PjxhdWRpbyBjbGFzcz0ibWVkaWEtcHJldmlldy1hdWRpbyIgY29udHJvbHMgcHJlbG9hZD0ibWV0YWRhdGEiIHNyYz0iJytuKyciPlx1NjBBOFx1NzY4NFx1NkQ0Rlx1ODlDOFx1NTY2OFx1NEUwRFx1NjUyRlx1NjMwMSBhdWRpbyBcdTY4MDdcdTdCN0VcdTMwMDI8L2F1ZGlvPjxkaXYgY2xhc3M9Im1lZGlhLXByZXZpZXctbWV0YSI+JytwKHFuKHQuc2l6ZSkpKyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIGFjKGUsdCl7dmFyIG49Ii9hcGkvZmlsZS1yYXc/ZG93bmxvYWQ9MSZwYXRoPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQucGF0aCk7ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImJpbmFyeS1wcmV2aWV3LWNhcmQiPjxkaXYgY2xhc3M9ImJpbmFyeS1wcmV2aWV3LWljb24iPlx1ezFGNEU2fTwvZGl2PjxkaXYgY2xhc3M9ImJpbmFyeS1wcmV2aWV3LW5hbWUiPicrcCh0Lm5hbWUpKyc8L2Rpdj48ZGl2IGNsYXNzPSJiaW5hcnktcHJldmlldy1tZXRhIj48c3Bhbj4nK3AoKHQuZXh0fHwiIikucmVwbGFjZSgvXlwuLywiIil8fCJcdTY3MkFcdTc3RTVcdTY4M0NcdTVGMEYiKSsiPC9zcGFuPjxzcGFuPlx4Qjc8L3NwYW4+PHNwYW4+IitwKHFuKHQuc2l6ZSkpKyc8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0iYmluYXJ5LXByZXZpZXctcGF0aCIgdGl0bGU9IicrcCh0LnBhdGgpKyciPicrcCh0LnBhdGgpKyc8L2Rpdj48ZGl2IGNsYXNzPSJiaW5hcnktcHJldmlldy1hY3Rpb25zIj48YSBjbGFzcz0iYmluYXJ5LXByZXZpZXctYnRuIiBocmVmPSInK24rJyIgZG93bmxvYWQ9IicrcCh0Lm5hbWUpKyciPlx1NEUwQlx1OEY3RFx1NjU4N1x1NEVGNjwvYT48YnV0dG9uIGNsYXNzPSJiaW5hcnktcHJldmlldy1idG4iIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Rpb249InZpZXctY2F0Ij5cdTU3MjhcdTdFQzhcdTdBRUZcdTRFMkRcdTY3RTVcdTc3MEI8L2J1dHRvbj48L2Rpdj48L2Rpdj4nO3ZhciBpPWUucXVlcnlTZWxlY3RvcignW2RhdGEtYWN0aW9uPSJ2aWV3LWNhdCJdJyk7aSYmaS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtWaSgnY2F0IC0tICInK3QucGF0aCsnIicpJiZCdCgiXHU1NDdEXHU0RUU0XHU1REYyXHU3Qzk4XHU4RDM0XHU1MjMwXHU4RjkzXHU1MTY1XHU2ODQ2Iil9KX1mdW5jdGlvbiBLaShlLHQpe3ZhciBuPWUucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy10b29sYmFyIik7aWYobil7aWYobi5pbm5lckhUTUw9IiIsbi5jbGFzc0xpc3QucmVtb3ZlKCJlZGl0aW5nIiksUCYmUC5lZGl0aW5nKXtuLmNsYXNzTGlzdC5hZGQoImVkaXRpbmciKSxvcihlLHQpO3JldHVybn12YXIgaT1bXTt0LmtpbmQ9PT0idGV4dCImJmkucHVzaCh7bGFiZWw6Ilx1N0YxNlx1OEY5MVx1NjU4N1x1NEVGNiAoRSkiLGljb246TWUoImVkaXQiKSxwcmltYXJ5OiEwLGFjdGlvbjpmdW5jdGlvbigpe3VjKCl9fSksaS5wdXNoKHtsYWJlbDoiXHU1OTBEXHU1MjM2XHU4REVGXHU1Rjg0IixpY29uOk1lKCJjbGlwYm9hcmQiKSxhY3Rpb246ZnVuY3Rpb24oKXtWcih0LnBhdGgpLnRoZW4oZnVuY3Rpb24oKXtCdCgiXHU1REYyXHU1OTBEXHU1MjM2XHU4REVGXHU1Rjg0Iil9KX19KSxpLnB1c2goe2xhYmVsOiJcdTdDOThcdThEMzRcdTUyMzBcdThGOTNcdTUxNjVcdTY4NDYiLGljb246TWUoInNlbmQtdG8taW5wdXQiKSxhY3Rpb246ZnVuY3Rpb24oKXtWaSh0LnBhdGgpJiZCdCgiXHU1REYyXHU3Qzk4XHU4RDM0XHU1MjMwXHU4RjkzXHU1MTY1XHU2ODQ2Iil9fSksaS5wdXNoKHtsYWJlbDoiXHU0RTBCXHU4RjdEIixpY29uOk1lKCJkb3dubG9hZCIpLGFjdGlvbjpmdW5jdGlvbigpe3ZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTthLmhyZWY9Ii9hcGkvZmlsZS1yYXc/ZG93bmxvYWQ9MSZwYXRoPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQucGF0aCksYS5kb3dubG9hZD10Lm5hbWV8fCIiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSksYS5jbGljaygpLGEucmVtb3ZlKCl9fSksdC5raW5kPT09InRleHQiJiYoaS5wdXNoKHtsYWJlbDoiXHU1OTBEXHU1MjM2XHU1MTY4XHU5MEU4XHU1MTg1XHU1QkI5IixpY29uOk1lKCJjb3B5IiksYWN0aW9uOmZ1bmN0aW9uKCl7VnIodC5jb250ZW50fHwiIikudGhlbihmdW5jdGlvbigpe0J0KCJcdTVERjJcdTU5MERcdTUyMzZcdTUxODVcdTVCQjkiKX0pfX0pLGkucHVzaCh7bGFiZWw6Ilx1NTIwN1x1NjM2Mlx1ODFFQVx1NTJBOFx1NjM2Mlx1ODg0QyIsaWNvbjpNZSgid3JhcC10ZXh0IiksdG9nZ2xlQ2xhc3M6InRvb2xiYXItYWN0aXZlIixnZXRJbml0aWFsOmZ1bmN0aW9uKCl7dmFyIGE9ZS5xdWVyeVNlbGVjdG9yKCIuY29kZS1wcmV2aWV3LWNvbnRlbnQgcHJlIik7cmV0dXJuIGEmJmEuY2xhc3NMaXN0LmNvbnRhaW5zKCJ3cmFwIil9LGFjdGlvbjpmdW5jdGlvbihhKXt2YXIgdT1lLnF1ZXJ5U2VsZWN0b3IoIi5jb2RlLXByZXZpZXctY29udGVudCBwcmUiKTt1JiYodS5jbGFzc0xpc3QudG9nZ2xlKCJ3cmFwIiksYS5jbGFzc0xpc3QudG9nZ2xlKCJ0b29sYmFyLWFjdGl2ZSIsdS5jbGFzc0xpc3QuY29udGFpbnMoIndyYXAiKSkpfX0pLGkucHVzaCh7a2luZDoiZ3JvdXAiLGNsYXNzTmFtZToidG9vbGJhci1ncm91cC1mb250c2l6ZSIsY2hpbGRyZW46W3tsYWJlbDoiXHU3RjI5XHU1QzBGXHU1QjU3XHU1M0Y3IixpY29uOk1lKCJtaW51cyIpLGFjdGlvbjpmdW5jdGlvbigpe091KGUsLTEpfX0se2tpbmQ6ImxhYmVsIixpY29uOk1lKCJ0eXBlIiksbGFiZWw6Ilx1NUI1N1x1NTNGNyJ9LHtsYWJlbDoiXHU2NTNFXHU1OTI3XHU1QjU3XHU1M0Y3IixpY29uOk1lKCJwbHVzIiksYWN0aW9uOmZ1bmN0aW9uKCl7T3UoZSwxKX19XX0pKSxJdShuLGksZSl9fWZ1bmN0aW9uIEl1KGUsdCxuKXt0LmZvckVhY2goZnVuY3Rpb24oaSl7aWYoaS5raW5kPT09Imdyb3VwIil7dmFyIGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7YS5jbGFzc05hbWU9ImZpbGUtcHJldmlldy10b29sYmFyLWdyb3VwIisoaS5jbGFzc05hbWU/IiAiK2kuY2xhc3NOYW1lOiIiKSxpLmNoaWxkcmVuLmZvckVhY2goZnVuY3Rpb24odSl7aWYodS5raW5kPT09ImxhYmVsIil7dmFyIHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO3MuY2xhc3NOYW1lPSJmaWxlLXByZXZpZXctdG9vbGJhci1ncm91cGxhYmVsIixzLnRpdGxlPXUubGFiZWx8fCIiLHMuaW5uZXJIVE1MPXUuaWNvbnx8IiIsYS5hcHBlbmRDaGlsZChzKTtyZXR1cm59YS5hcHBlbmRDaGlsZChUdSh1KSl9KSxlLmFwcGVuZENoaWxkKGEpO3JldHVybn1lLmFwcGVuZENoaWxkKFR1KGkpKX0pfWZ1bmN0aW9uIFR1KGUpe3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJ1dHRvbiIpO3JldHVybiB0LnR5cGU9ImJ1dHRvbiIsdC5jbGFzc05hbWU9ImZpbGUtcHJldmlldy10b29sYmFyLWJ0biIsZS5wcmltYXJ5JiZ0LmNsYXNzTGlzdC5hZGQoInByaW1hcnkiKSxlLmRhbmdlciYmdC5jbGFzc0xpc3QuYWRkKCJkYW5nZXIiKSx0LnRpdGxlPWUubGFiZWwsdC5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLGUubGFiZWwpLHQuaW5uZXJIVE1MPSc8c3BhbiBjbGFzcz0idG9vbGJhci1pY29uIj4nKyhlLmljb258fCIiKSsiPC9zcGFuPiIrKGUudGV4dD8nPHNwYW4gY2xhc3M9InRvb2xiYXItdGV4dCI+JytwKGUudGV4dCkrIjwvc3Bhbj4iOiIiKSxlLmdldEluaXRpYWwmJmUuZ2V0SW5pdGlhbCgpJiZ0LmNsYXNzTGlzdC5hZGQoInRvb2xiYXItYWN0aXZlIiksdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24obil7bi5zdG9wUHJvcGFnYXRpb24oKSx0eXBlb2YgZS5hY3Rpb249PSJmdW5jdGlvbiImJmUuYWN0aW9uKHQpfSksdH1mdW5jdGlvbiBvcihlLHQpe3ZhciBuPWUucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy10b29sYmFyIik7aWYobil7bi5pbm5lckhUTUw9IiI7dmFyIGk9UCYmUC5zYXZpbmcsYT1be2xhYmVsOiJcdTRGRERcdTVCNTggKEN0cmwrUykiLGljb246TWUoInNhdmUiKSx0ZXh0OiJcdTRGRERcdTVCNTgiLHByaW1hcnk6ITAsYWN0aW9uOmZ1bmN0aW9uKCl7TXUoKX19LHtsYWJlbDoiXHU2NEE0XHU5NTAwXHU2NTM5XHU1MkE4IixpY29uOk1lKCJyb3RhdGUtY2N3IiksYWN0aW9uOmZ1bmN0aW9uKCl7c2MoKX19LHtsYWJlbDoiXHU5MDAwXHU1MUZBXHU3RjE2XHU4RjkxIChFc2MpIixpY29uOk1lKCJ4IiksYWN0aW9uOmZ1bmN0aW9uKCl7THUoKX19XTtJdShuLGEsZSksaSYmbi5xdWVyeVNlbGVjdG9yQWxsKCIuZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuIikuZm9yRWFjaChmdW5jdGlvbih1KXt1LmRpc2FibGVkPSEwfSl9fWZ1bmN0aW9uIHVjKCl7aWYoISghUHx8IVAuZGF0YSkpe3ZhciBlPVAuZGF0YTtpZihlLmtpbmQ9PT0idGV4dCIpe1AuZWRpdGluZz0hMCxQLmRpcnR5PSExLFAub3JpZ2luYWxDb250ZW50PWUuY29udGVudHx8IiI7dmFyIHQ9UC5vdmVybGF5LG49dC5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LWJvZHkiKTtpZihuKXtuLmNsYXNzTGlzdC5hZGQoImVkaXRpbmciKSxuLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iY29kZS1lZGl0b3Itd3JhcHBlciI+PHRleHRhcmVhIGNsYXNzPSJjb2RlLWVkaXRvci10ZXh0YXJlYSIgc3BlbGxjaGVjaz0iZmFsc2UiIGF1dG9jb21wbGV0ZT0ib2ZmIiBhdXRvY29ycmVjdD0ib2ZmIiBhdXRvY2FwaXRhbGl6ZT0ib2ZmIiB3cmFwPSJvZmYiPjwvdGV4dGFyZWE+PC9kaXY+Jzt2YXIgaT1uLnF1ZXJ5U2VsZWN0b3IoIi5jb2RlLWVkaXRvci10ZXh0YXJlYSIpO2kmJihpLnZhbHVlPWUuY29udGVudHx8IiIsaS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsZnVuY3Rpb24oKXt2YXIgYT1pLnZhbHVlIT09KFAub3JpZ2luYWxDb250ZW50fHwiIik7YSE9PVAuZGlydHkmJihQLmRpcnR5PWEsbHIoKSl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKGEpe2lmKGEua2V5PT09IlRhYiIpe2EucHJldmVudERlZmF1bHQoKTt2YXIgdT1pLnNlbGVjdGlvblN0YXJ0LHM9aS5zZWxlY3Rpb25FbmQsbz0iICAiO2kudmFsdWU9aS52YWx1ZS5zbGljZSgwLHUpK28raS52YWx1ZS5zbGljZShzKSxpLnNlbGVjdGlvblN0YXJ0PWkuc2VsZWN0aW9uRW5kPXUrby5sZW5ndGgsaS5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgiaW5wdXQiKSl9fSksc2V0VGltZW91dChmdW5jdGlvbigpe2kuZm9jdXMoKSxpLnNldFNlbGVjdGlvblJhbmdlKDAsMCksaS5zY3JvbGxUb3A9MH0sMzApKSxLaSh0LGUpLGxyKCl9fX19ZnVuY3Rpb24gTHUoKXtpZighKCFQfHwhUC5lZGl0aW5nKSl7dmFyIGU9ZnVuY3Rpb24oKXtQLmVkaXRpbmc9ITEsUC5kaXJ0eT0hMTt2YXIgdD1QLm92ZXJsYXksbj10LnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctYm9keSIpO24mJm4uY2xhc3NMaXN0LnJlbW92ZSgiZWRpdGluZyIpLFN1KHQsUC5kYXRhKSxscigpfTtpZihQLmRpcnR5JiZ0eXBlb2Ygcm49PSJmdW5jdGlvbiIpe3JuKHt0eXBlOiJ3YXJuaW5nIix0aXRsZToiXHU2NTNFXHU1RjAzXHU2NzJBXHU0RkREXHU1QjU4XHU3Njg0XHU0RkVFXHU2NTM5XHVGRjFGIixtZXNzYWdlOiJcdTVGNTNcdTUyNERcdTY1ODdcdTRFRjZcdTY3MDlcdTY3MkFcdTRGRERcdTVCNThcdTc2ODRcdTY1MzlcdTUyQThcdUZGMENcdTkwMDBcdTUxRkFcdTdGMTZcdThGOTFcdTU0MEVcdTRGMUFcdTRFMjJcdTU5MzFcdTMwMDIiLGJ1dHRvbnM6W3tsYWJlbDoiXHU3RUU3XHU3RUVEXHU3RjE2XHU4RjkxIix2YWx1ZTohMSxraW5kOiJnaG9zdCJ9LHtsYWJlbDoiXHU2NTNFXHU1RjAzXHU0RkVFXHU2NTM5Iix2YWx1ZTohMCxraW5kOiJkYW5nZXIiLGF1dG9mb2N1czohMH1dLGNhbmNlbFZhbHVlOiExfSkudGhlbihmdW5jdGlvbih0KXt0JiZlKCl9KTtyZXR1cm59ZSgpfX1mdW5jdGlvbiBzYygpe2lmKCEoIVB8fCFQLmVkaXRpbmcpKXt2YXIgZT1QLm92ZXJsYXksdD1lLnF1ZXJ5U2VsZWN0b3IoIi5jb2RlLWVkaXRvci10ZXh0YXJlYSIpO3QmJih0LnZhbHVlPVAub3JpZ2luYWxDb250ZW50fHwiIixQLmRpcnR5PSExLGxyKCksdC5mb2N1cygpKX19ZnVuY3Rpb24gTXUoKXtpZighKCFQfHwhUC5lZGl0aW5nKSYmIVAuc2F2aW5nKXt2YXIgZT1QLm92ZXJsYXksdD1lLnF1ZXJ5U2VsZWN0b3IoIi5jb2RlLWVkaXRvci10ZXh0YXJlYSIpO2lmKHQpe3ZhciBuPXQudmFsdWU7aWYobj09PShQLm9yaWdpbmFsQ29udGVudHx8IiIpKXtCdCgiXHU2Q0ExXHU2NzA5XHU2NTM5XHU1MkE4Iik7cmV0dXJufVAuc2F2aW5nPSEwLG9yKGUsUC5kYXRhKSxmZXRjaCgiL2FwaS9maWxlLXdyaXRlIix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeSh7cGF0aDpQLnBhdGgsY29udGVudDpufSl9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKS50aGVuKGZ1bmN0aW9uKGEpe3JldHVybntvazppLm9rLHN0YXR1czppLnN0YXR1cyxkYXRhOmF9fSl9KS50aGVuKGZ1bmN0aW9uKGkpe2lmKFAuc2F2aW5nPSExLCFpLm9rfHxpLmRhdGEmJmkuZGF0YS5lcnJvcil7dmFyIGE9aS5kYXRhJiZpLmRhdGEuZXJyb3J8fCJcdTRGRERcdTVCNThcdTU5MzFcdThEMjUgKCIraS5zdGF0dXMrIikiO0J0KGEpLG9yKGUsUC5kYXRhKTtyZXR1cm59aWYoUC5kYXRhLmNvbnRlbnQ9bixQLmRhdGEuc2l6ZT1pLmRhdGEmJmkuZGF0YS5zaXplfHxuLmxlbmd0aCxQLm9yaWdpbmFsQ29udGVudD1uLFAuZGlydHk9ITEsQnQoIlx1NURGMlx1NEZERFx1NUI1OCIpLGxyKCksb3IoZSxQLmRhdGEpLHR5cGVvZiBQdD09ImZ1bmN0aW9uIil0cnl7UHQoKX1jYXRjaHt9fSkuY2F0Y2goZnVuY3Rpb24oaSl7UC5zYXZpbmc9ITEsQnQoIlx1NEZERFx1NUI1OFx1NTkzMVx1OEQyNVx1RkYxQSIrKGkmJmkubWVzc2FnZT9pLm1lc3NhZ2U6Ilx1N0Y1MVx1N0VEQ1x1OTUxOVx1OEJFRiIpKSxvcihlLFAuZGF0YSl9KX19fWZ1bmN0aW9uIGxyKCl7aWYoUCl7dmFyIGU9UC5vdmVybGF5O2lmKGUpe3ZhciB0PWUucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1uYW1lLXJvdyIpO2lmKHQpe3ZhciBuPXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1kaXJ0eSIpO2lmKFAuZGlydHkpe2lmKCFuKXt2YXIgaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7aS5jbGFzc05hbWU9ImZpbGUtcHJldmlldy1kaXJ0eSIsaS50aXRsZT0iXHU2NzA5XHU2NzJBXHU0RkREXHU1QjU4XHU3Njg0XHU0RkVFXHU2NTM5IixpLnRleHRDb250ZW50PSJcdTI1Q0YgXHU2NzJBXHU0RkREXHU1QjU4Iix0LmFwcGVuZENoaWxkKGkpfX1lbHNlIG4mJm4ucmVtb3ZlKCl9fX19ZnVuY3Rpb24gT3UoZSx0KXt2YXIgbj1lLnF1ZXJ5U2VsZWN0b3IoIi5jb2RlLXByZXZpZXctY29udGVudCBwcmUiKSxpPWUucXVlcnlTZWxlY3RvcigiLmNvZGUtcHJldmlldy1saW5lcyIpO2lmKG4pe3ZhciBhPXBhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZShuKS5mb250U2l6ZSl8fDEzLHU9TWF0aC5tYXgoMTAsTWF0aC5taW4oMjIsYSt0KSk7bi5zdHlsZS5mb250U2l6ZT11KyJweCIsaSYmKGkuc3R5bGUuZm9udFNpemU9dSsicHgiKX19ZnVuY3Rpb24gUHUoZSx0KXt2YXIgbj1lLnJlcGxhY2UoLyYvZywiJmFtcDsiKS5yZXBsYWNlKC88L2csIiZsdDsiKS5yZXBsYWNlKC8+L2csIiZndDsiKSxpPW9jKCk7aWYoIWkpcmV0dXJuIG47dmFyIGE9W107Zm9yKHZhciB1IGluIGkpe3ZhciBzPWlbdV07cyYmcy5wYXR0ZXJuJiZhLnB1c2goe3BhdHRlcm46cy5wYXR0ZXJuLGNsczpzLmNscyxwcmlvcml0eTpzLnByaW9yaXR5fHw1fSl9YS5zb3J0KGZ1bmN0aW9uKGMsZil7cmV0dXJuIGYucHJpb3JpdHktYy5wcmlvcml0eX0pO3ZhciBvPWEubWFwKGZ1bmN0aW9uKGMpe3JldHVybiIoIitjLnBhdHRlcm4uc291cmNlKyIpIn0pLGw9bmV3IFJlZ0V4cChvLmpvaW4oInwiKSwiZ20iKTtyZXR1cm4gbi5yZXBsYWNlKGwsZnVuY3Rpb24oYyl7Zm9yKHZhciBmPTA7ZjxhLmxlbmd0aDtmKyspe3ZhciBkPWFbZl0sdj1uZXcgUmVnRXhwKCJeIitkLnBhdHRlcm4uc291cmNlKyIkIiwiZ20iKTtpZih2LnRlc3QoYykpcmV0dXJuJzxzcGFuIGNsYXNzPSInK2QuY2xzKyciPicrYysiPC9zcGFuPiJ9cmV0dXJuIGN9KX1mdW5jdGlvbiBvYygpe3JldHVybntjb21tZW50OntwYXR0ZXJuOi9cL1wvLip8I1teXG5dKi95LGNsczoic3ludGF4LWNvbW1lbnQiLHByaW9yaXR5OjF9LHN0cmluZzp7cGF0dGVybjovIig/OlteIlxcXXxcXC4pKiJ8Jyg/OlteJ1xcXXxcXC4pKid8YCg/OlteYFxcXXxcXC4pKmAveSxjbHM6InN5bnRheC1zdHJpbmciLHByaW9yaXR5OjJ9LGtleXdvcmQ6e3BhdHRlcm46L1xiKD86YXN5bmN8YXdhaXR8YnJlYWt8Y2FzZXxjYXRjaHxjbGFzc3xjb25zdHxjb250aW51ZXxkZWJ1Z2dlcnxkZWNsYXJlfGRlZmF1bHR8ZGVsZXRlfGRvfGVsc2V8ZW51bXxleHBvcnR8ZXh0ZW5kc3xmaW5hbGx5fGZvcnxmcm9tfGZ1bmN0aW9ufGdldHxpZnxpbXBsZW1lbnRzfGltcG9ydHxpbnxpbnN0YW5jZW9mfGludGVyZmFjZXxsZXR8bW9kdWxlfG5hbWVzcGFjZXxuZXd8bnVsbHxvZnxvdmVycmlkZXxwcml2YXRlfHByb3RlY3RlZHxwdWJsaWN8cmVhZG9ubHl8cmV0dXJufHNldHxzdGF0aWN8c3VwZXJ8c3dpdGNofHRoaXN8dGhyb3d8dHJ5fHR5cGV8dHlwZW9mfHVuZGVmaW5lZHx2YXJ8dm9pZHx3aGlsZXx5aWVsZHxhYnN0cmFjdHxhc3xiYXNlfGJvb2x8Ynl0ZXxjaGFyfGRlY2ltYWx8ZG91YmxlfGV2ZW50fGV4cGxpY2l0fGV4dGVybnxmYWxzZXxmaXhlZHxmbG9hdHxmb3JlYWNofGdvdG98aW1wbGljaXR8aW58aW50fGludGVybmFsfGlzfGxvY2t8bG9uZ3xvYmplY3R8b3BlcmF0b3J8b3V0fHBhcmFtc3xwYXJ0aWFsfHJlYWRvbmx5fHJlZnxzYnl0ZXxzZWFsZWR8c2hvcnR8c2l6ZW9mfHN0YWNrYWxsb2N8c3RyaW5nfHN0cnVjdHxzd2l0Y2h8dGhyb3d8dHJ1ZXx0cnl8dWludHx1bG9uZ3x1bmNoZWNrZWR8dW5zYWZlfHVzaG9ydHx1c2luZ3x2aXJ0dWFsfHZvbGF0aWxlfHdoZXJlfHdoaWxlfHdpdGh8eWllbGR8ZGVmfGVsaWZ8ZWxzZXxleGNlcHR8ZXhlY3xmaW5hbGx5fGZvcnxmcm9tfGdsb2JhbHxpZnxpbXBvcnR8bGFtYmRhfG5vbmxvY2FsfG5vdHxvcnxwYXNzfHByaW50fHJhaXNlfHJldHVybnx0cnl8d2hpbGV8d2l0aHx5aWVsZHxUcnVlfEZhbHNlfE5vbmV8YW5kfGlufGlzfGxhbWJkYXxub3R8b3J8Zm58cHVifHVzZXxtb2R8aW1wbHx0cmFpdHxzdHJ1Y3R8ZW51bXxtYXRjaHxsb29wfHdoaWxlfGZvcnxpZnxlbHNlfHJldHVybnxzZWxmfHN1cGVyfGNyYXRlfHdoZXJlfGFzeW5jfGF3YWl0fG1vdmV8cmVmfG11dHxzdGF0aWN8Y29uc3R8dW5zYWZlfGV4dGVybnx1c2V8YXN8aW1wbHxzdHJ1Y3R8ZW51bXx0eXBlfGZufGxldHxsb29wfGlmfGVsc2V8bWF0Y2h8cmV0dXJufHNlbGZ8U2VsZnxtb2R8cHVifGNyYXRlfG1hY3JvfGRlcml2ZXx3aGVyZXxhc3luY3xhd2FpdHxkeW58c2VsZnxwYWNrYWdlfGZ1bmN8Z298cmV0dXJufGRlZmVyfGdvfGlmfGVsc2V8c3dpdGNofGNhc2V8ZGVmYXVsdHxmb3J8cmFuZ2V8c2VsZWN0fGJyZWFrfGNvbnRpbnVlfGZhbGx0aHJvdWdofGNvbnN0fHN0cnVjdHxlbnVtfHR5cGV8aW50ZXJmYWNlfG1hcHxjaGFufHZhcnxuaWx8dHJ1ZXxmYWxzZXxpb3RhfGxlbnxjYXB8YXBwZW5kfG1ha2V8bmV3fHBhbmljfHJlY292ZXJ8c2VsZWN0fGVsc2V8aWZ8ZWxpZnxlbmR8Zm9yfGZ1bmN0aW9ufGlmfGlufGxvY2FsfG5pbHxub3R8b3J8cmVwZWF0fHJldHVybnx0aGVufHRydWV8dW50aWx8d2hpbGV8ZW5kfGFuZHxiZWdpbnxkb3xlbmR8ZmFsc2V8Zm9yfGZ1bmN0aW9ufGlmfGlufGxvY2FsfG5pbHxub3R8b3J8cmVwZWF0fHJldHVybnx0aGVufHRydWV8dW50aWx8d2hpbGUpXGIveSxjbHM6InN5bnRheC1rZXl3b3JkIixwcmlvcml0eTozfSxudW1iZXI6e3BhdHRlcm46L1xiKD86MHhbXGRhLWZBLUZdK3wwYlswMV0rfDBvWzAtN10rfFxkK1wuP1xkKig/OmVbKy1dP1xkKyk/KVxiL3ksY2xzOiJzeW50YXgtbnVtYmVyIixwcmlvcml0eToyfSxmdW5jdGlvbjp7cGF0dGVybjovXGJbQS1aXVthLXpBLVowLTldKlthLXpdXHcqKD89XHMqXCgpL3ksY2xzOiJzeW50YXgtZnVuY3Rpb24iLHByaW9yaXR5OjR9LHR5cGU6e3BhdHRlcm46L1xiKD86c3RyaW5nfG51bWJlcnxib29sZWFufHZvaWR8YW55fHVua25vd258bmV2ZXJ8b2JqZWN0fHN5bWJvbHxiaWdpbnR8QXJyYXl8T2JqZWN0fFN0cmluZ3xOdW1iZXJ8Qm9vbGVhbnxNYXB8U2V0fFdlYWtNYXB8V2Vha1NldHxQcm9taXNlfEVycm9yfFR5cGV8SW50ZXJmYWNlfEVudW18Q2xhc3N8U3RydWN0fEltcGx8VHJhaXR8Zm58Zm5jfGZ1bmN8ZnVuY3Rpb258ZGVmfHByb2N8ZnVufHB1YnxzdGF0aWN8Y29uc3R8bGV0fHZhcnxpbnR8ZmxvYXR8ZG91YmxlfGJvb2x8Y2hhcnxieXRlfHN0cmluZ3x1OHx1MTZ8dTMyfHU2NHxpOHxpMTZ8aTMyfGk2NHxmMzJ8ZjY0fHVzaXplfGlzaXplfHN0cnxWZWN8SGFzaE1hcHxPcHRpb258UmVzdWx0fEJveHxSY3xBcmN8Q2VsbHxSZWZDZWxsKVxiL3ksY2xzOiJzeW50YXgtdHlwZSIscHJpb3JpdHk6NH0sb3BlcmF0b3I6e3BhdHRlcm46L1srXC0qLyU9PD4hJnxefj86XSt8XC5cLlwuPy95LGNsczoic3ludGF4LW9wZXJhdG9yIixwcmlvcml0eTo1fSxwdW5jdHVhdGlvbjp7cGF0dGVybjovW3t9W1xdKCk7LFwuXS95LGNsczoic3ludGF4LXB1bmN0dWF0aW9uIixwcmlvcml0eTo2fX19ZnVuY3Rpb24gbGMoZSl7aWYoIWUpcmV0dXJuIiI7dmFyIHQ9cChlKTt0PXQucmVwbGFjZSgvYGBgKFx3KilcbihbXHNcU10qPylgYGAvZyxmdW5jdGlvbihpLGEsdSl7dmFyIHM9UHUodS50cmltKCksYSksbz1zLnJlcGxhY2UoL18vZywiJiM5NTsiKS5yZXBsYWNlKC9cKi9nLCImIzQyOyIpO3JldHVybic8cHJlPjxjb2RlIGNsYXNzPSJsYW5ndWFnZS0nK2ErJyI+JytvKyI8L2NvZGU+PC9wcmU+In0pLHQ9dC5yZXBsYWNlKC9gKFteYF0rKWAvZyxmdW5jdGlvbihpLGEpe3JldHVybiI8Y29kZT4iK2EucmVwbGFjZSgvXy9nLCImIzk1OyIpLnJlcGxhY2UoL1wqL2csIiYjNDI7IikrIjwvY29kZT4ifSksdD10LnJlcGxhY2UoL14jIyMjIyNccysoLiopJC9nbSwiPGg2PiQxPC9oNj4iKSx0PXQucmVwbGFjZSgvXiMjIyMjXHMrKC4qKSQvZ20sIjxoNT4kMTwvaDU+IiksdD10LnJlcGxhY2UoL14jIyMjXHMrKC4qKSQvZ20sIjxoND4kMTwvaDQ+IiksdD10LnJlcGxhY2UoL14jIyNccysoLiopJC9nbSwiPGgzPiQxPC9oMz4iKSx0PXQucmVwbGFjZSgvXiMjXHMrKC4qKSQvZ20sIjxoMj4kMTwvaDI+IiksdD10LnJlcGxhY2UoL14jXHMrKC4qKSQvZ20sIjxoMT4kMTwvaDE+IiksdD10LnJlcGxhY2UoL1wqXCpcKiguKz8pXCpcKlwqL2csIjxzdHJvbmc+PGVtPiQxPC9lbT48L3N0cm9uZz4iKSx0PXQucmVwbGFjZSgvXCpcKiguKz8pXCpcKi9nLCI8c3Ryb25nPiQxPC9zdHJvbmc+IiksdD10LnJlcGxhY2UoL1wqKC4rPylcKi9nLCI8ZW0+JDE8L2VtPiIpLHQ9dC5yZXBsYWNlKC8oXnxbXlx3XSlfX18oXFMoPzpbXlxuXSo/XFMpPylfX18oPyFcdykvZywiJDE8c3Ryb25nPjxlbT4kMjwvZW0+PC9zdHJvbmc+IiksdD10LnJlcGxhY2UoLyhefFteXHddKV9fKFxTKD86W15cbl0qP1xTKT8pX18oPyFcdykvZywiJDE8c3Ryb25nPiQyPC9zdHJvbmc+IiksdD10LnJlcGxhY2UoLyhefFteXHddKV8oXFMoPzpbXlxuX10qP1xTKT8pXyg/IVx3KS9nLCIkMTxlbT4kMjwvZW0+IiksdD10LnJlcGxhY2UoL35+KC4rPyl+fi9nLCI8ZGVsPiQxPC9kZWw+IiksdD10LnJlcGxhY2UoL1xbKFteXF1dKylcXVwoKFteKV0rKVwpL2csJzxhIGhyZWY9IiQyIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciI+JDE8L2E+JyksdD10LnJlcGxhY2UoLyFcWyhbXlxdXSopXF1cKChbXildKylcKS9nLCc8aW1nIHNyYz0iJDIiIGFsdD0iJDEiPicpLHQ9dC5yZXBsYWNlKC9eJmd0O1xzKyguKikkL2dtLCI8YmxvY2txdW90ZT4kMTwvYmxvY2txdW90ZT4iKSx0PXQucmVwbGFjZSgvXi0tLSskL2dtLCI8aHI+IiksdD10LnJlcGxhY2UoL15cKlwqXCorJC9nbSwiPGhyPiIpLHQ9dC5yZXBsYWNlKC9eW1wtXCpdXHMrKC4qKSQvZ20sIjxsaT4kMTwvbGk+IiksdD10LnJlcGxhY2UoLyg8bGk+Lio8XC9saT5cbj8pKy9nLCI8dWw+JCY8L3VsPiIpLHQ9dC5yZXBsYWNlKC9eXGQrXC5ccysoLiopJC9nbSwiPGxpPiQxPC9saT4iKSx0PU1vKHQpO3ZhciBuPXQuc3BsaXQoL1xuezIsfS8pO3JldHVybiB0PW4ubWFwKGZ1bmN0aW9uKGkpe3JldHVybiBpPWkudHJpbSgpLGk/L148KGhbMS02XXx1bHxvbHxsaXxibG9ja3F1b3RlfHByZXx0YWJsZXxocnxkaXYpLy50ZXN0KGkpP2k6IjxwPiIraS5yZXBsYWNlKC9cbi9nLCI8YnI+IikrIjwvcD4iOiIifSkuam9pbihgCmApLHR9ZnVuY3Rpb24gcXUoKXtpZighci5zZWxlY3RlZElkfHwhci5naXRTdGF0dXN8fCFyLmdpdFN0YXR1cy5pc0dpdHx8ci5naXRTdGF0dXNTZXNzaW9uSWQhPT1yLnNlbGVjdGVkSWQpcmV0dXJuIiI7dmFyIGU9ci5naXRTdGF0dXMuYnJhbmNofHwiPyIsdD1yLmdpdFN0YXR1cy5tb2RpZmllZENvdW50fHwwLG49ZSsodD8iICBceEI3ICAiK3QrIiBcdTRFMkFcdTY1ODdcdTRFRjZcdTVGODVcdTYzRDBcdTRFQTQiOiIgIFx4QjcgIFx1NURFNVx1NEY1Q1x1NTMzQVx1NUU3Mlx1NTFDMCIpO3JldHVybic8YnV0dG9uIGlkPSJ0b3BiYXItZ2l0LWJhZGdlIiBjbGFzcz0idG9wYmFyLWdpdC1iYWRnZSIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iJytwKG4pKyciIGFyaWEtbGFiZWw9Ilx1NUZFQlx1NjM3N1x1NjNEMFx1NEVBNCI+PHN2ZyBjbGFzcz0idG9wYmFyLWdpdC1pY29uIiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGNpcmNsZSBjeD0iNiIgY3k9IjYiIHI9IjIiLz48Y2lyY2xlIGN4PSI2IiBjeT0iMTgiIHI9IjIiLz48Y2lyY2xlIGN4PSIxOCIgY3k9IjkiIHI9IjIiLz48cGF0aCBkPSJNNiA4djgiLz48cGF0aCBkPSJNMTggMTF2MWEzIDMgMCAwIDEtMyAzSDkiLz48L3N2Zz48c3BhbiBjbGFzcz0idG9wYmFyLWdpdC1icmFuY2giPicrcChlKSsiPC9zcGFuPiIrKHQ+MD8nPHNwYW4gY2xhc3M9InRvcGJhci1naXQtY291bnQiPlx4QjcnK3QrIjwvc3Bhbj4iOic8c3BhbiBjbGFzcz0idG9wYmFyLWdpdC1jbGVhbiIgYXJpYS1oaWRkZW49InRydWUiPlx1MjcxMzwvc3Bhbj4nKSsiPC9idXR0b24+In1mdW5jdGlvbiBKaSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b3BiYXItZ2l0LXNsb3QiKTtpZihlKXtlLmlubmVySFRNTD1xdSgpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b3BiYXItZ2l0LWJhZGdlIik7dCYmdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24obil7bi5wcmV2ZW50RGVmYXVsdCgpLEh1KCl9KX19ZnVuY3Rpb24gY2MoZSl7aWYoIWUpcmV0dXJuIiI7dmFyIHQ9ci50b3BiYXJNb3JlT3BlbixuPSEhZS5jbGF1ZGVTZXNzaW9uSWQsaT0hIWUuY3dkLGE9ZS53b3JrdHJlZUVuYWJsZWQmJmUud29ya3RyZWUmJmUud29ya3RyZWUuYnJhbmNoJiZlLndvcmt0cmVlLnBhdGgsdT1lLndvcmt0cmVlTWVyZ2VTdGF0dXM9PT0ibWVyZ2VkIiYmZS53b3JrdHJlZU1lcmdlSW5mbyYmZS53b3JrdHJlZU1lcmdlSW5mby5jbGVhbnVwRG9uZT09PSExLHM9ZS5zdGF0dXM9PT0icnVubmluZyJ8fGUud29ya3RyZWVNZXJnZVN0YXR1cz09PSJtZXJnaW5nIixvPWEmJmUud29ya3RyZWVNZXJnZVN0YXR1cyE9PSJtZXJnZWQiLGw9dSxjPW58fGl8fCEwLGY9b3x8bHx8ITAsZD0nPHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSI5IiB5PSI5IiB3aWR0aD0iMTMiIGhlaWdodD0iMTMiIHJ4PSIyIiByeT0iMiIvPjxwYXRoIGQ9Ik01IDE1SDRhMiAyIDAgMCAxLTItMlY0YTIgMiAwIDAgMSAyLTJoOWEyIDIgMCAwIDEgMiAydjEiLz48L3N2Zz4nLHY9Jzxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTE3LjUgMTlhNC41IDQuNSAwIDEgMC0xLjUtOC43NEE2IDYgMCAxIDAgNiAxNGgxMS41eiIvPjwvc3ZnPicsZz0nPHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMjIgMTlhMiAyIDAgMCAxLTIgMkg0YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDVsMiAzaDlhMiAyIDAgMCAxIDIgMnoiLz48L3N2Zz4nLGg9Jzxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PGxpbmUgeDE9IjQiIHkxPSI5IiB4Mj0iMjAiIHkyPSI5Ii8+PGxpbmUgeDE9IjQiIHkxPSIxNSIgeDI9IjIwIiB5Mj0iMTUiLz48bGluZSB4MT0iMTAiIHkxPSIzIiB4Mj0iOCIgeTI9IjIxIi8+PGxpbmUgeDE9IjE2IiB5MT0iMyIgeDI9IjE0IiB5Mj0iMjEiLz48L3N2Zz4nLG09Jzxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTcgN2gxMCIvPjxwYXRoIGQ9Ik03IDEyaDEwIi8+PHBhdGggZD0iTTcgMTdoMTAiLz48cGF0aCBkPSJNNSA3bC0yIDIgMiAyIi8+PHBhdGggZD0iTTE5IDE1bDIgMi0yIDIiLz48L3N2Zz4nLGI9Jzxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTMgNmgxOCIvPjxwYXRoIGQ9Ik04IDZWNGEyIDIgMCAwMTItMmg0YTIgMiAwIDAxMiAydjIiLz48cGF0aCBkPSJNMTkgNmwtMSAxNGEyIDIgMCAwMS0yIDJIOGEyIDIgMCAwMS0yLTJMNSA2Ii8+PC9zdmc+Jyx3PSIiO2lmKG4pe3ZhciBFPWUucHJvdmlkZXI9PT0iY29kZXgiPyJcdTU5MERcdTUyMzYgQ29kZXggdGhyZWFkIElEIjoiXHU1OTBEXHU1MjM2IENsYXVkZSBcdTRGMUFcdThCREQgSUQiO3crPSc8YnV0dG9uIGNsYXNzPSJ0b3BiYXItbW9yZS1pdGVtIiBkYXRhLWFjdGlvbj0iY29weS1jbGF1ZGUtc2Vzc2lvbi1pZCIgdHlwZT0iYnV0dG9uIiByb2xlPSJtZW51aXRlbSI+Jyt2KyI8c3Bhbj4iK0UrIjwvc3Bhbj48L2J1dHRvbj4ifWkmJih3Kz0nPGJ1dHRvbiBjbGFzcz0idG9wYmFyLW1vcmUtaXRlbSIgZGF0YS1hY3Rpb249ImNvcHktY3dkIiB0eXBlPSJidXR0b24iIHJvbGU9Im1lbnVpdGVtIj4nK2crIjxzcGFuPlx1NTkwRFx1NTIzNlx1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NTwvc3Bhbj48L2J1dHRvbj4iKSx3Kz0nPGJ1dHRvbiBjbGFzcz0idG9wYmFyLW1vcmUtaXRlbSIgZGF0YS1hY3Rpb249ImNvcHktc2Vzc2lvbi1pZCIgdHlwZT0iYnV0dG9uIiByb2xlPSJtZW51aXRlbSI+JytoKyI8c3Bhbj5cdTU5MERcdTUyMzZcdTRGMUFcdThCREQgSUQ8L3NwYW4+PC9idXR0b24+Ijt2YXIgQj0iIjtvP0IrPSc8YnV0dG9uIGNsYXNzPSJ0b3BiYXItbW9yZS1pdGVtIiBkYXRhLWFjdGlvbj0id29ya3RyZWUtbWVyZ2UiIHR5cGU9ImJ1dHRvbiIgcm9sZT0ibWVudWl0ZW0iJysocz8iIGRpc2FibGVkIjoiIikrIj4iK20rIjxzcGFuPlx1NTQwOFx1NUU3Nlx1NTIzMFx1NEUzQlx1NTIwNlx1NjUyRlx1MjAyNjwvc3Bhbj48L2J1dHRvbj4iOmwmJihCKz0nPGJ1dHRvbiBjbGFzcz0idG9wYmFyLW1vcmUtaXRlbSIgZGF0YS1hY3Rpb249Indvcmt0cmVlLWNsZWFudXAiIHR5cGU9ImJ1dHRvbiIgcm9sZT0ibWVudWl0ZW0iPicrbSsiPHNwYW4+XHU5MUNEXHU4QkQ1IHdvcmt0cmVlIFx1NkUwNVx1NzQwNjwvc3Bhbj48L2J1dHRvbj4iKSxCKz0nPGJ1dHRvbiBjbGFzcz0idG9wYmFyLW1vcmUtaXRlbSB0b3BiYXItbW9yZS1pdGVtLWRhbmdlciIgZGF0YS1hY3Rpb249ImRlbGV0ZS1zZXNzaW9uIiB0eXBlPSJidXR0b24iIHJvbGU9Im1lbnVpdGVtIj4nK2IrIjxzcGFuPlx1NTIyMFx1OTY2NFx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERDwvc3Bhbj48L2J1dHRvbj4iO3ZhciBGPWMmJmY/JzxkaXYgY2xhc3M9InRvcGJhci1tb3JlLWRpdmlkZXIiIHJvbGU9InNlcGFyYXRvciI+PC9kaXY+JzoiIjtyZXR1cm4nPGRpdiBjbGFzcz0idG9wYmFyLW1vcmUtd3JhcCI+PGJ1dHRvbiBpZD0idG9wYmFyLW1vcmUtYnV0dG9uIiBjbGFzcz0idG9wYmFyLWJ0biBzcXVhcmUnKyh0PyIgYWN0aXZlIjoiIikrJyIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTVGNTNcdTUyNERcdTRGMUFcdThCRERcdTY0Q0RcdTRGNUMiIGFyaWEtaGFzcG9wdXA9Im1lbnUiIGFyaWEtZXhwYW5kZWQ9IicrKHQ/InRydWUiOiJmYWxzZSIpKyciIHRpdGxlPSJcdTVGNTNcdTUyNERcdTRGMUFcdThCRERcdTY0Q0RcdTRGNUMiPjxzdmcgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMSIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iNSIgcj0iMSIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTkiIHI9IjEiLz48L3N2Zz48L2J1dHRvbj48ZGl2IGlkPSJ0b3BiYXItbW9yZS1tZW51IiBjbGFzcz0idG9wYmFyLW1vcmUtbWVudScrKHQ/IiI6IiBoaWRkZW4iKSsnIiByb2xlPSJtZW51IiBhcmlhLWxhYmVsPSJcdTVGNTNcdTUyNERcdTRGMUFcdThCREQiPicrdytGK0IrIjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gd24oZSx0KXtpZighZSlyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG51bGwpO3ZhciBuPXQmJnQuZm9yY2UsaT1EYXRlLm5vdygpO2lmKCFuJiZyLmdpdFN0YXR1c1Nlc3Npb25JZD09PWUmJnIuZ2l0U3RhdHVzJiZpLXIuZ2l0U3RhdHVzTGFzdEZldGNoQXQ8MWUzKXJldHVybiBQcm9taXNlLnJlc29sdmUoci5naXRTdGF0dXMpO2lmKHIuZ2l0U3RhdHVzSW5mbGlnaHQmJnIuZ2l0U3RhdHVzSW5mbGlnaHQuc2Vzc2lvbklkPT09ZSlyZXR1cm4gci5naXRTdGF0dXNJbmZsaWdodC5wcm9taXNlO3IuZ2l0U3RhdHVzTG9hZGluZz0hMDt2YXIgYT1mZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChlKSsiL2dpdC1zdGF0dXMiLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gdS5vaz91Lmpzb24oKTp7aXNHaXQ6ITF9fSkudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gci5naXRTdGF0dXM9dXx8e2lzR2l0OiExfSxyLmdpdFN0YXR1c1Nlc3Npb25JZD1lLHIuZ2l0U3RhdHVzTGFzdEZldGNoQXQ9RGF0ZS5ub3coKSxKaSgpLHV9KS5jYXRjaChmdW5jdGlvbigpe3JldHVybiByLmdpdFN0YXR1cz17aXNHaXQ6ITF9LHIuZ2l0U3RhdHVzU2Vzc2lvbklkPWUsci5naXRTdGF0dXNMYXN0RmV0Y2hBdD1EYXRlLm5vdygpLEppKCksbnVsbH0pLmZpbmFsbHkoZnVuY3Rpb24oKXtyLmdpdFN0YXR1c0xvYWRpbmc9ITEsci5naXRTdGF0dXNJbmZsaWdodCYmci5naXRTdGF0dXNJbmZsaWdodC5zZXNzaW9uSWQ9PT1lJiYoci5naXRTdGF0dXNJbmZsaWdodD1udWxsKX0pO3JldHVybiByLmdpdFN0YXR1c0luZmxpZ2h0PXtzZXNzaW9uSWQ6ZSxwcm9taXNlOmF9LGF9dmFyIENuPW51bGwsQm49bnVsbCxuZz1udWxsO2Z1bmN0aW9uIGRjKGUpe3JldHVybiBlPT09ImNvbW1pdC10YWcifHxlPT09ImNvbW1pdC10YWctcHVzaCJ8fGU9PT0iY29tbWl0LXB1c2giP2U6ImNvbW1pdCJ9ZnVuY3Rpb24gZmMoZSl7cmV0dXJuIGU9ZGMoZSksZT09PSJjb21taXQtdGFnLXB1c2giP3thY3Rpb246ZSxsYWJlbDoiQ29tbWl0ICsgVGFnICsgUHVzaCIsdmVyYjoiXHU2M0QwXHU0RUE0XHUzMDAxXHU2MjUzIFRhZyBcdTVFNzZcdTYzQThcdTkwMDEiLHdpdGhUYWc6ITAscHVzaDohMCx0b25lOiJhbGwifTplPT09ImNvbW1pdC10YWciP3thY3Rpb246ZSxsYWJlbDoiQ29tbWl0ICsgVGFnIix2ZXJiOiJcdTYzRDBcdTRFQTRcdTVFNzZcdTYyNTMgVGFnIix3aXRoVGFnOiEwLHB1c2g6ITEsdG9uZToidGFnIn06ZT09PSJjb21taXQtcHVzaCI/e2FjdGlvbjplLGxhYmVsOiJDb21taXQgKyBQdXNoIix2ZXJiOiJcdTYzRDBcdTRFQTRcdTVFNzZcdTYzQThcdTkwMDEiLHdpdGhUYWc6ITEscHVzaDohMCx0b25lOiJwdXNoIn06e2FjdGlvbjoiY29tbWl0IixsYWJlbDoiQ29tbWl0Iix2ZXJiOiJcdTRFQzVcdTYzRDBcdTRFQTQiLHdpdGhUYWc6ITEscHVzaDohMSx0b25lOiJjb21taXQifX1mdW5jdGlvbiBIdSgpe2lmKHIuc2VsZWN0ZWRJZCl7ci5xdWlja0NvbW1pdE9wZW49ITAsci5xdWlja0NvbW1pdFN1Ym1pdHRpbmc9ITEsci5xdWlja0NvbW1pdEF1dG9HZW5lcmF0aW5nPSExLHIucXVpY2tDb21taXRFcnJvcj0iIixyLnF1aWNrQ29tbWl0Rm9ybT17Y3VzdG9tTWVzc2FnZToiIix0YWc6IiIsdGFnRWRpdGVkOiExfSxyLnF1aWNrQ29tbWl0UHVzaGluZz0hMSxyLnF1aWNrQ29tbWl0UHVzaEVycm9yPSIiLHIucXVpY2tDb21taXRSZXN1bHQ9bnVsbCxyLnF1aWNrQ29tbWl0RHJhZ0FjdGlvbj0iY29tbWl0IixabigpLHZuKCksZXIoKSxxdCgpO3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtbW9kYWwiKTtlJiYoZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxyLmxhc3RGb2N1c2VkRWxlbWVudD1kb2N1bWVudC5hY3RpdmVFbGVtZW50LHhpKGUpKSxDbiYmZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsQ24pLENuPWZ1bmN0aW9uKHQpe3Qua2V5PT09IkVzY2FwZSImJnIucXVpY2tDb21taXRPcGVuJiYhci5xdWlja0NvbW1pdFN1Ym1pdHRpbmcmJiFyLnF1aWNrQ29tbWl0UHVzaGluZyYmX24oKX0sZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsQ24pLHduKHIuc2VsZWN0ZWRJZCx7Zm9yY2U6ITB9KS50aGVuKGZ1bmN0aW9uKCl7ci5xdWlja0NvbW1pdE9wZW4mJnF0KCl9KX19ZnVuY3Rpb24gX24oKXtyLnF1aWNrQ29tbWl0T3Blbj0hMSxyLnF1aWNrQ29tbWl0U3VibWl0dGluZz0hMSxyLnF1aWNrQ29tbWl0RXJyb3I9IiIsci5xdWlja0NvbW1pdFJlc3VsdD1udWxsLHIucXVpY2tDb21taXREcmFnQWN0aW9uPSJjb21taXQiO3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtbW9kYWwiKTtlJiZlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLHIuZm9jdXNUcmFwSGFuZGxlciYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLHIuZm9jdXNUcmFwSGFuZGxlciksci5mb2N1c1RyYXBIYW5kbGVyPW51bGwpLENuJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsQ24pLENuPW51bGwpLEJuJiYoQm4oKSxCbj1udWxsKSxyLmxhc3RGb2N1c2VkRWxlbWVudCYmdHlwZW9mIHIubGFzdEZvY3VzZWRFbGVtZW50LmZvY3VzPT0iZnVuY3Rpb24iJiZyLmxhc3RGb2N1c2VkRWxlbWVudC5mb2N1cygpfWZ1bmN0aW9uIHF0KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1tb2RhbCIpO2lmKGUpe0JuJiYoQm4oKSxCbj1udWxsKTt2YXIgdD1qdSgpLG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7bi5pbm5lckhUTUw9dDt2YXIgaT1uLnF1ZXJ5U2VsZWN0b3IoIiNxdWljay1jb21taXQtbW9kYWwiKTtpJiYoZS5pbm5lckhUTUw9aS5pbm5lckhUTUwsX3UoKSl9fWZ1bmN0aW9uIF91KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1jbG9zZS1idG4iKTtlJiZlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixfbik7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1jYW5jZWwtYnRuIik7dCYmdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsX24pO3ZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtYWktYnRuIik7biYmbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZ2MpO3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtbWVzc2FnZSIpO2kmJihpLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbigpe3IucXVpY2tDb21taXRGb3JtLmN1c3RvbU1lc3NhZ2U9aS52YWx1ZX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24ocyl7KHMubWV0YUtleXx8cy5jdHJsS2V5KSYmcy5rZXk9PT0iRW50ZXIiJiYocy5wcmV2ZW50RGVmYXVsdCgpLE5uKCJjb21taXQiKSl9KSk7dmFyIGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC10YWciKTthJiYoYS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsZnVuY3Rpb24oKXtyLnF1aWNrQ29tbWl0Rm9ybS50YWc9YS52YWx1ZSxyLnF1aWNrQ29tbWl0Rm9ybS50YWdFZGl0ZWQ9ITB9KSxhLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKHMpe3Mua2V5PT09IkVudGVyIiYmKHMucHJldmVudERlZmF1bHQoKSxObigiY29tbWl0LXRhZyIpKX0pKTt2YXIgdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LXB1c2gtYWZ0ZXItYnRuIik7dSYmdS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgcz1yLnF1aWNrQ29tbWl0UmVzdWx0fHx7fTtoYyh7cHVzaENvbW1pdHM6ITAscHVzaFRhZ3M6ISFzLnRhZ05hbWUsY2xvc2VPblN1Y2Nlc3M6ITB9KX0pLG1jKCl9ZnVuY3Rpb24gcGMoZSl7dmFyIHQ9ISEoZSYmZS50YWcpLG49ISEoZSYmZS5wdXNoKTtyZXR1cm4gdCYmbj8iY29tbWl0LXRhZy1wdXNoIjp0PyJjb21taXQtdGFnIjpuPyJjb21taXQtcHVzaCI6ImNvbW1pdCJ9dmFyIHZjPTU4LEpyPTEwO2Z1bmN0aW9uIE51KGUpe3JldHVybiBlPT09InRhZyI/e2FjdGlvbjoiY29tbWl0LXRhZyIsc3ViOiExfTplPT09InB1c2giP3thY3Rpb246ImNvbW1pdC1wdXNoIixzdWI6ITF9OmU9PT0ic3ViIj97YWN0aW9uOiJjb21taXQiLHN1YjohMH06e2FjdGlvbjoiY29tbWl0IixzdWI6ITF9fWZ1bmN0aW9uIG1jKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInFjLWRvY2stZmllbGQiKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxYy1kb2NrLXN0YWdlIiksbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicWMtZG9jay1sYXVuY2giKSxpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxYy1kb2NrLWNsdXN0ZXIiKTtpZighZXx8IXR8fCFufHwhaSlyZXR1cm47dmFyIGE9WyJjb21taXQiLCJ0YWciLCJwdXNoIl0sdT17fTtpZihhLmZvckVhY2goZnVuY3Rpb24oRCl7dVtEXT1lLnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLWNoaXA9IicrRCsnIl0nKX0pLCF1LmNvbW1pdHx8IXUudGFnfHwhdS5wdXNoKXJldHVybjt1LnN1Yj1lLnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLWNoaXA9InN1YiJdJyk7dmFyIHM9ISF1LnN1YixvPXM/YS5jb25jYXQoWyJzdWIiXSk6YTtmdW5jdGlvbiBsKEQpe3JldHVybiB1W0RdP3VbRF0ub2Zmc2V0V2lkdGg6OTB9ZnVuY3Rpb24gYygpe3JldHVybiB1LmNvbW1pdD91LmNvbW1pdC5vZmZzZXRIZWlnaHQ6Mzh9ZnVuY3Rpb24gZigpe3JldHVybiB3aW5kb3cubWF0Y2hNZWRpYSYmd2luZG93Lm1hdGNoTWVkaWEoIihtYXgtd2lkdGg6IDcyMHB4KSIpLm1hdGNoZXN9ZnVuY3Rpb24gZCgpe3ZhciBEPWUuY2xpZW50V2lkdGgsVD1lLmNsaWVudEhlaWdodCxPPWMoKSxVPWwoImNvbW1pdCIpLFY9bCgidGFnIiksWD1sKCJwdXNoIik7aWYoZigpJiZzKXt2YXIgZWU9TWF0aC5tYXgoOCxUKi4yLU8vMiksWj1NYXRoLm1pbihULU8tOCxUKi43LU8vMiksdWU9ZnVuY3Rpb24ob2Upe3JldHVybiBNYXRoLm1heCg4LEQqLjI3LW9lLzIpfSxMPWZ1bmN0aW9uKG9lKXtyZXR1cm4gTWF0aC5taW4oRC1vZS04LEQqLjczLW9lLzIpfTtyZXR1cm57Y29tbWl0Ont4OnVlKFUpLHk6ZWV9LHRhZzp7eDpMKFYpLHk6ZWV9LHB1c2g6e3g6dWUoWCkseTpafSxzdWI6e3g6TChsKCJzdWIiKSkseTpafX19dmFyIE09ZigpLGo9TT9NYXRoLm1heCg4LFQqLjE4LU8vMik6TWF0aC5tYXgoOCxUKi4xMiksRz1NP01hdGgubWluKFQtTy04LFQqLjcyLU8vMik6TWF0aC5taW4oVC1PLTgsVCouODgtTyksSz1NPy4yNDouMjgsaWU9TT8uNzY6LjcyLHRlPXtjb21taXQ6e3g6TWF0aC5tYXgoOCwoRC1VKS8yKSx5Omp9LHRhZzp7eDpNYXRoLm1heCg4LEQqSy1WLzIpLHk6R30scHVzaDp7eDpNYXRoLm1pbihELVgtOCxEKmllLVgvMikseTpHfX07aWYocyl7dmFyIHNlPWwoInN1YiIpO3RlLnN1Yj17eDpNYXRoLm1pbihELXNlLTgsRCouOTQtc2UvMikseTpNYXRoLm1heCg4LE1hdGgubWluKFQtTy04LChULU8pLzIpKX19cmV0dXJuIHRlfXZhciB2PXt9O2Z1bmN0aW9uIGcoRCxULE8pe3VbRF0mJih1W0RdLnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlKCIrVC50b0ZpeGVkKDEpKyJweCwiK08udG9GaXhlZCgxKSsicHgpIil9ZnVuY3Rpb24gaChEKXt2PWQoKSxvLmZvckVhY2goZnVuY3Rpb24oVCl7dVtUXS5jbGFzc0xpc3QudG9nZ2xlKCJxYy1jaGlwLS1hbmltIiwhIUQpLGcoVCx2W1RdLngsdltUXS55KX0pfWgoITEpO3ZhciBtPW51bGw7ZnVuY3Rpb24gYihELFQsTyl7dmFyIFU9YygpLFY9MjQsWD1vLmZpbHRlcihmdW5jdGlvbihqKXtyZXR1cm4gRC5pbmRleE9mKGopPj0wfSksZWU9WC5yZWR1Y2UoZnVuY3Rpb24oaixHKXtyZXR1cm4gTWF0aC5tYXgoaixsKEcpKX0sMCksWj1lZStNYXRoLm1heCgwLFgubGVuZ3RoLTEpKlYsdWU9ZS5jbGllbnRIZWlnaHQsTD1ULVovMixNPU1hdGgubWF4KDIsTWF0aC5taW4odWUtVS0yLE8tVS8yKSk7cmV0dXJuIFguZm9yRWFjaChmdW5jdGlvbihqKXtnKGosTCxNKSxMKz1WfSkse3g6VC1aLzItNyx5Ok0tNyx3OlorMTQsaDpVKzE0fX1mdW5jdGlvbiB3KEQpe2kuY2xhc3NMaXN0LmFkZCgiaXMtYWN0aXZlIiksaS5zdHlsZS50cmFuc2Zvcm09InRyYW5zbGF0ZSgiK0QueC50b0ZpeGVkKDEpKyJweCwiK0QueS50b0ZpeGVkKDEpKyJweCkiLGkuc3R5bGUud2lkdGg9RC53LnRvRml4ZWQoMSkrInB4IixpLnN0eWxlLmhlaWdodD1ELmgudG9GaXhlZCgxKSsicHgifWZ1bmN0aW9uIEUoKXtpLmNsYXNzTGlzdC5yZW1vdmUoImlzLWFjdGl2ZSIpfWZ1bmN0aW9uIEIoRCl7cmV0dXJuIHBjKHtjb21taXQ6ITAsdGFnOkQuaW5kZXhPZigidGFnIik+PTAscHVzaDpELmluZGV4T2YoInB1c2giKT49MH0pfWZ1bmN0aW9uIEYoRCl7cmV0dXJuIEQuaW5kZXhPZigic3ViIik+PTB9ZnVuY3Rpb24geChEKXt2YXIgVD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicWMtZG9jay1sYXVuY2gtbGFiZWwiKTtUJiYoVC50ZXh0Q29udGVudD1EKX1mdW5jdGlvbiBTKEQsVCl7dmFyIE89bi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtyZXR1cm4gRD49Ty5sZWZ0JiZEPD1PLnJpZ2h0JiZUPj1PLnRvcCYmVDw9Ty5ib3R0b219ZnVuY3Rpb24gSChEKXtyZXR1cm4gZnVuY3Rpb24oVCl7aWYoISh1W0RdLmRpc2FibGVkfHxHcigpKSl7bT17YW5jaG9yOkQscG9pbnRlcklkOlQucG9pbnRlcklkLHN0YXJ0WDpULmNsaWVudFgsc3RhcnRZOlQuY2xpZW50WSxtb3ZlZDohMSxtZW1iZXJzOltEXX0sby5mb3JFYWNoKGZ1bmN0aW9uKE8pe3VbT10uY2xhc3NMaXN0LnJlbW92ZSgicWMtY2hpcC0tYW5pbSIpfSksdVtEXS5jbGFzc0xpc3QuYWRkKCJpcy1ncmFiYmluZyIpO3RyeXt1W0RdLnNldFBvaW50ZXJDYXB0dXJlKFQucG9pbnRlcklkKX1jYXRjaHt9dC5jbGFzc0xpc3QuYWRkKCJpcy1kcmFnZ2luZyIpLFQucHJldmVudERlZmF1bHQoKX19fWZ1bmN0aW9uIFIoRCl7aWYoISghbXx8bS5wb2ludGVySWQhPT1ELnBvaW50ZXJJZCkpeyhNYXRoLmFicyhELmNsaWVudFgtbS5zdGFydFgpPjN8fE1hdGguYWJzKEQuY2xpZW50WS1tLnN0YXJ0WSk+MykmJihtLm1vdmVkPSEwKTt2YXIgVD1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLE89RC5jbGllbnRYLVQubGVmdCxVPUQuY2xpZW50WS1ULnRvcDtpZihhLmZvckVhY2goZnVuY3Rpb24oTSl7aWYoIShtLm1lbWJlcnMuaW5kZXhPZihNKT49MCkpe3ZhciBqPXZbTV0ueCtsKE0pLzIsRz12W01dLnkrYygpLzIsSz1PLWosaWU9VS1HO01hdGguc3FydChLKksraWUqaWUpPHZjJiYobS5tZW1iZXJzLnB1c2goTSksdVtNXS5jbGFzc0xpc3QucmVtb3ZlKCJxYy1jaGlwLS1hbmltIiksdVtNXS5jbGFzc0xpc3QuYWRkKCJpcy1hdHRhY2hlZCIpKX19KSxzJiZtLm1lbWJlcnMuaW5kZXhPZigic3ViIik8MCl7dmFyIFY9di5zdWIueC1KcixYPXYuc3ViLnktSnIsZWU9di5zdWIueCtsKCJzdWIiKStKcixaPXYuc3ViLnkrYygpK0pyO08+PVYmJk88PWVlJiZVPj1YJiZVPD1aJiYobS5tZW1iZXJzLnB1c2goInN1YiIpLHUuc3ViLmNsYXNzTGlzdC5yZW1vdmUoInFjLWNoaXAtLWFuaW0iKSx1LnN1Yi5jbGFzc0xpc3QuYWRkKCJpcy1hdHRhY2hlZCIpKX12YXIgdWU9YihtLm1lbWJlcnMsTyxVKSxMPVMoRC5jbGllbnRYLEQuY2xpZW50WSk7dC5zZXRBdHRyaWJ1dGUoImRhdGEtaG90IixMPyIxIjoiMCIpLHQuc2V0QXR0cmlidXRlKCJkYXRhLWFjdGlvbiIsQihtLm1lbWJlcnMpKSxtLm1lbWJlcnMubGVuZ3RoPjE/dyh1ZSk6RSgpLHgoTD8iXHU2NzdFXHU2MjRCXHU2MjY3XHU4ODRDIjoiXHU2M0QwXHU0RUE0Iil9fWZ1bmN0aW9uICQoRCxUKXtpZighKCFtfHxtLnBvaW50ZXJJZCE9PUQucG9pbnRlcklkKSl7dmFyIE89bTttPW51bGwsdC5jbGFzc0xpc3QucmVtb3ZlKCJpcy1kcmFnZ2luZyIpLHQuc2V0QXR0cmlidXRlKCJkYXRhLWhvdCIsIjAiKSx4KCJcdTYzRDBcdTRFQTQiKSxFKCksby5mb3JFYWNoKGZ1bmN0aW9uKFYpe3VbVl0uY2xhc3NMaXN0LnJlbW92ZSgiaXMtZ3JhYmJpbmciLCJpcy1hdHRhY2hlZCIpfSk7dHJ5e3VbTy5hbmNob3JdLnJlbGVhc2VQb2ludGVyQ2FwdHVyZShPLnBvaW50ZXJJZCl9Y2F0Y2h7fWlmKCFUJiYhTy5tb3ZlZCl7dmFyIFU9TnUoTy5hbmNob3IpO05uKFUuYWN0aW9uLFUuc3ViKTtyZXR1cm59aWYoIVQmJlMoRC5jbGllbnRYLEQuY2xpZW50WSkpe05uKEIoTy5tZW1iZXJzKSxGKE8ubWVtYmVycykpO3JldHVybn10LnNldEF0dHJpYnV0ZSgiZGF0YS1hY3Rpb24iLCJjb21taXQiKSxoKCEwKX19dmFyIEk9ZnVuY3Rpb24oKXtyLnF1aWNrQ29tbWl0T3BlbiYmIW0mJmgoITEpfTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIixJKSxvLmZvckVhY2goZnVuY3Rpb24oRCl7dmFyIFQ9dVtEXTtULmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJkb3duIixIKEQpKSxULmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJtb3ZlIixSKSxULmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJ1cCIsZnVuY3Rpb24oTyl7JChPLCExKX0pLFQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmNhbmNlbCIsZnVuY3Rpb24oTyl7JChPLCEwKX0pLFQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24oTyl7aWYoIShULmRpc2FibGVkfHxHcigpKSYmKE8ua2V5PT09IkVudGVyInx8Ty5rZXk9PT0iICJ8fE8ua2V5PT09IlNwYWNlYmFyIikpe08ucHJldmVudERlZmF1bHQoKTt2YXIgVT1OdShEKTtObihVLmFjdGlvbixVLnN1Yil9fSl9KSxuLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe24uZGlzYWJsZWR8fEdyKCl8fG18fE5uKCJjb21taXQiKX0pLEJuPWZ1bmN0aW9uKCl7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsSSksbT1udWxsfX1mdW5jdGlvbiBnYygpe2lmKCEoIXIuc2VsZWN0ZWRJZHx8ci5xdWlja0NvbW1pdEdlbmVyYXRpbmcpKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LW1lc3NhZ2UiKTtlJiYoci5xdWlja0NvbW1pdEZvcm0uY3VzdG9tTWVzc2FnZT1lLnZhbHVlKTt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LXRhZyIpO3QmJihyLnF1aWNrQ29tbWl0Rm9ybS50YWc9dC52YWx1ZSksci5xdWlja0NvbW1pdEdlbmVyYXRpbmc9ITAsci5xdWlja0NvbW1pdEVycm9yPSIiLHF0KCksZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoci5zZWxlY3RlZElkKSsiL2dlbmVyYXRlLWNvbW1pdC1tZXNzYWdlIix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeSh7fSl9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLmpzb24oKS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybntvazpuLm9rLGRhdGE6aX19KX0pLnRoZW4oZnVuY3Rpb24obil7aWYoIW4ub2spdGhyb3cgbmV3IEVycm9yKG4uZGF0YSYmbi5kYXRhLmVycm9yfHwiQUkgXHU3NTFGXHU2MjEwXHU1OTMxXHU4RDI1XHUzMDAyIik7dmFyIGk9bi5kYXRhfHx7fSxhPXR5cGVvZiBpLm1lc3NhZ2U9PSJzdHJpbmciP2kubWVzc2FnZToiIix1PXR5cGVvZiBpLnN1Z2dlc3RlZFRhZz09InN0cmluZyI/aS5zdWdnZXN0ZWRUYWcudHJpbSgpOiIiLHM9KHIucXVpY2tDb21taXRGb3JtLmN1c3RvbU1lc3NhZ2V8fCIiKS50cmltKCk7IXMmJmEmJihyLnF1aWNrQ29tbWl0Rm9ybS5jdXN0b21NZXNzYWdlPWEpLHUmJihyLnF1aWNrQ29tbWl0Rm9ybS50YWdFZGl0ZWR8fChyLnF1aWNrQ29tbWl0Rm9ybS50YWc9dSksci5xdWlja0NvbW1pdERyYWdBY3Rpb249ImNvbW1pdC10YWciKX0pLmNhdGNoKGZ1bmN0aW9uKG4pe3IucXVpY2tDb21taXRFcnJvcj1uJiZuLm1lc3NhZ2V8fCJBSSBcdTc1MUZcdTYyMTBcdTU5MzFcdThEMjVcdTMwMDIifSkuZmluYWxseShmdW5jdGlvbigpe3IucXVpY2tDb21taXRHZW5lcmF0aW5nPSExLHIucXVpY2tDb21taXRPcGVuJiZxdCgpfSl9fWZ1bmN0aW9uIE5uKGUsdCl7aWYoISghci5zZWxlY3RlZElkfHxyLnF1aWNrQ29tbWl0U3VibWl0dGluZykpe3ZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtbWVzc2FnZSIpO24mJihyLnF1aWNrQ29tbWl0Rm9ybS5jdXN0b21NZXNzYWdlPW4udmFsdWUpO3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtdGFnIik7aSYmKHIucXVpY2tDb21taXRGb3JtLnRhZz1pLnZhbHVlKTt2YXIgYT1yLnF1aWNrQ29tbWl0Rm9ybXx8e30sdT1mYyhlfHxyLnF1aWNrQ29tbWl0RHJhZ0FjdGlvbnx8ImNvbW1pdCIpLHM9dS53aXRoVGFnLG89cz8oYS50YWd8fCIiKS50cmltKCk6IiIsbD0oYS5jdXN0b21NZXNzYWdlfHwiIikudHJpbSgpLGM9IWwsZj17YnJhbmNoOihyLmdpdFN0YXR1c3x8e30pLmJyYW5jaHx8IiIsY29tbWl0SGFzaDooci5naXRTdGF0dXN8fHt9KS5sYXN0Q29tbWl0JiYoci5naXRTdGF0dXN8fHt9KS5sYXN0Q29tbWl0LnNob3J0SGFzaD8oci5naXRTdGF0dXN8fHt9KS5sYXN0Q29tbWl0LnNob3J0SGFzaDooci5naXRTdGF0dXN8fHt9KS5oZWFkPyhyLmdpdFN0YXR1c3x8e30pLmhlYWQuc3Vic3RyaW5nKDAsNyk6IiIsY29tbWl0U3ViamVjdDooci5naXRTdGF0dXN8fHt9KS5sYXN0Q29tbWl0JiYoci5naXRTdGF0dXN8fHt9KS5sYXN0Q29tbWl0LnN1YmplY3Q/KHIuZ2l0U3RhdHVzfHx7fSkubGFzdENvbW1pdC5zdWJqZWN0OiIiLHRhZzooci5naXRTdGF0dXN8fHt9KS5sYXRlc3RUYWd8fCIifSxkPXthdXRvTWVzc2FnZTpjLGN1c3RvbU1lc3NhZ2U6Yz8iIjpsLHRhZzpvLGF1dG9UYWc6ISEocyYmIW8pLHB1c2g6ISF1LnB1c2gsc3VibW9kdWxlOiEhdH07ci5xdWlja0NvbW1pdFN1Ym1pdHRpbmc9ITAsci5xdWlja0NvbW1pdFN1Ym1vZHVsZUludGVudD0hIXQsci5xdWlja0NvbW1pdEF1dG9HZW5lcmF0aW5nPWN8fGQuYXV0b1RhZyxyLnF1aWNrQ29tbWl0RXJyb3I9IiIsci5xdWlja0NvbW1pdFB1c2hFcnJvcj0iIixyLnF1aWNrQ29tbWl0UmVzdWx0PW51bGwsci5xdWlja0NvbW1pdERyYWdBY3Rpb249dS5hY3Rpb24scXQoKSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChyLnNlbGVjdGVkSWQpKyIvcXVpY2stY29tbWl0Iix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeShkKX0pLnRoZW4oZnVuY3Rpb24odil7cmV0dXJuIHYuanNvbigpLnRoZW4oZnVuY3Rpb24oZyl7cmV0dXJue29rOnYub2ssZGF0YTpnfX0pfSkudGhlbihmdW5jdGlvbih2KXtpZighdi5vayl0aHJvdyBuZXcgRXJyb3Iodi5kYXRhJiZ2LmRhdGEuZXJyb3J8fCJcdTVGRUJcdTYzNzdcdTYzRDBcdTRFQTRcdTU5MzFcdThEMjVcdTMwMDIiKTt2YXIgZz12LmRhdGF8fHt9LGg9Zy5jb21taXQmJmcuY29tbWl0Lmhhc2g/Zy5jb21taXQuaGFzaC5zdWJzdHJpbmcoMCw3KToiIixtPWcudGFnJiZnLnRhZy5uYW1lP2cudGFnLm5hbWU6IiIsYj1BcnJheS5pc0FycmF5KGcuc3VibW9kdWxlQ29tbWl0cyk/Zy5zdWJtb2R1bGVDb21taXRzOltdLHc9Yi5sZW5ndGg+MD8iXHU1REYyXHU1MTQ4XHU2M0QwXHU0RUE0ICIrYi5sZW5ndGgrIiBcdTRFMkEgc3VibW9kdWxlXHVGRjA4IitiLm1hcChmdW5jdGlvbihCKXtyZXR1cm4gQi5wYXRofSkuam9pbigiXHUzMDAxIikrIlx1RkYwOVx1RkYwQyI6IiIsRT13KyJcdTVERjJcdTYzRDBcdTRFQTQiKyhoPyIgIitoOiIiKSsobT8iXHVGRjBDXHU1REYyXHU2MjUzIFRhZyAiK206IiIpO3IucXVpY2tDb21taXRSZXN1bHQ9e2FjdGlvbjp1LmFjdGlvbixpbmNsdWRlU3VibW9kdWxlOiEhdCxwdXNoZWQ6ISFnLnB1c2hlZCxwdXNoRXJyb3I6Zy5wdXNoRXJyb3J8fCIiLGNvbW1pdEhhc2g6aCxjb21taXRNZXNzYWdlOmcuY29tbWl0JiZnLmNvbW1pdC5tZXNzYWdlP2cuY29tbWl0Lm1lc3NhZ2U6bCx0YWdOYW1lOm0sb2xkVGFnOmYudGFnLG9sZENvbW1pdEhhc2g6Zi5jb21taXRIYXNoLG9sZENvbW1pdFN1YmplY3Q6Zi5jb21taXRTdWJqZWN0LHN1Ym1vZHVsZUNvdW50OmIubGVuZ3RofSx1LnB1c2gmJiFnLnB1c2hFcnJvcj8odHlwZW9mIGs9PSJmdW5jdGlvbiImJmsoRSsiXHVGRjBDXHU1REYyXHU2M0E4XHU5MDAxXHUzMDAyIiwic3VjY2VzcyIpLF9uKCkpOih0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmayhFKyhnLnB1c2hFcnJvcj8iXHVGRjFCcHVzaCBcdTU5MzFcdThEMjVcdUZGMUEiK2cucHVzaEVycm9yOiJcdTMwMDIiKSxnLnB1c2hFcnJvcj8iZXJyb3IiOiJzdWNjZXNzIiksci5zZWxlY3RlZElkJiZ3bihyLnNlbGVjdGVkSWQse2ZvcmNlOiEwfSkudGhlbihmdW5jdGlvbigpe3IucXVpY2tDb21taXRPcGVuJiZxdCgpfSkpfSkuY2F0Y2goZnVuY3Rpb24odil7ci5xdWlja0NvbW1pdEVycm9yPXYmJnYubWVzc2FnZXx8Ilx1NUZFQlx1NjM3N1x1NjNEMFx1NEVBNFx1NTkzMVx1OEQyNVx1MzAwMiJ9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ci5xdWlja0NvbW1pdFN1Ym1pdHRpbmc9ITEsci5xdWlja0NvbW1pdEF1dG9HZW5lcmF0aW5nPSExLHIucXVpY2tDb21taXRPcGVuJiZxdCgpfSl9fWZ1bmN0aW9uIGhjKGUpe2lmKCEoIXIuc2VsZWN0ZWRJZHx8ci5xdWlja0NvbW1pdFB1c2hpbmcpKXt2YXIgdD0hIShlJiZlLnB1c2hDb21taXRzKSxuPSEhKGUmJmUucHVzaFRhZ3MpLGk9ISEoZSYmZS5jbG9zZU9uU3VjY2Vzcyk7aWYoISghdCYmIW4pKXt2YXIgYT1yLnF1aWNrQ29tbWl0UmVzdWx0fHx7fSx1PSEhYS5pbmNsdWRlU3VibW9kdWxlO3IucXVpY2tDb21taXRQdXNoaW5nPSEwLHIucXVpY2tDb21taXRQdXNoRXJyb3I9IiIscXQoKSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChyLnNlbGVjdGVkSWQpKyIvZ2l0L3B1c2giLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxib2R5OkpTT04uc3RyaW5naWZ5KHtwdXNoQ29tbWl0czp0LHB1c2hUYWdzOm4sc3VibW9kdWxlOnUsdGFnOmEudGFnTmFtZXx8IiJ9KX0pLnRoZW4oZnVuY3Rpb24ocyl7cmV0dXJuIHMuanNvbigpLnRoZW4oZnVuY3Rpb24obyl7cmV0dXJue29rOnMub2ssZGF0YTpvfX0pfSkudGhlbihmdW5jdGlvbihzKXt2YXIgbz1zLmRhdGF8fHt9O2lmKCFzLm9rKXRocm93IG5ldyBFcnJvcihvJiZvLmVycm9yfHwiXHU2M0E4XHU5MDAxXHU1OTMxXHU4RDI1XHUzMDAyIik7aWYoby5lcnJvcil7ci5xdWlja0NvbW1pdFB1c2hFcnJvcj1vLmVycm9yLHR5cGVvZiBrPT0iZnVuY3Rpb24iJiZrKCJcdTYzQThcdTkwMDFcdTU5MzFcdThEMjVcdUZGMUEiK28uZXJyb3IsImVycm9yIik7cmV0dXJufXZhciBsPVtdO28ucHVzaGVkQ29tbWl0cyYmbC5wdXNoKCJjb21taXRzIiksby5wdXNoZWRUYWdzJiZsLnB1c2goInRhZ3MiKTt2YXIgYz1sLmxlbmd0aD9sLmpvaW4oIiBcdTU0OEMgIik6Ilx1RkYwOFx1NjVFMFx1NTE4NVx1NUJCOVx1RkYwOSI7dHlwZW9mIGs9PSJmdW5jdGlvbiImJmsoIlx1NURGMlx1NjNBOFx1OTAwMSAiK2MsInN1Y2Nlc3MiKSxyLnF1aWNrQ29tbWl0UmVzdWx0JiYoci5xdWlja0NvbW1pdFJlc3VsdC5wdXNoZWQ9ITApLGk/KF9uKCksci5zZWxlY3RlZElkJiZ3bihyLnNlbGVjdGVkSWQse2ZvcmNlOiEwfSkpOnIuc2VsZWN0ZWRJZCYmd24oci5zZWxlY3RlZElkLHtmb3JjZTohMH0pLnRoZW4oZnVuY3Rpb24oKXtyLnF1aWNrQ29tbWl0T3BlbiYmcXQoKX0pfSkuY2F0Y2goZnVuY3Rpb24ocyl7ci5xdWlja0NvbW1pdFB1c2hFcnJvcj1zJiZzLm1lc3NhZ2V8fCJcdTYzQThcdTkwMDFcdTU5MzFcdThEMjVcdTMwMDIiLHR5cGVvZiBrPT0iZnVuY3Rpb24iJiZrKHIucXVpY2tDb21taXRQdXNoRXJyb3IsImVycm9yIil9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ci5xdWlja0NvbW1pdFB1c2hpbmc9ITEsci5xdWlja0NvbW1pdE9wZW4mJnF0KCl9KX19fWZ1bmN0aW9uIHljKGUpe3ZhciB0PShlfHwiIikudHJpbSgpO2lmKHQ9PT0iPz8iKXJldHVybntsZXR0ZXI6IlUiLGNsczoidW50cmFja2VkIix0aXRsZToiXHU2NzJBXHU4RERGXHU4RTJBIn07aWYodD09PSIhISIpcmV0dXJue2xldHRlcjoiSSIsY2xzOiJpZ25vcmVkIix0aXRsZToiXHU1REYyXHU1RkZEXHU3NTY1In07Zm9yKHZhciBuPSIiLGk9MDtpPGUubGVuZ3RoO2krKylpZihlW2ldJiZlW2ldIT09Ii4iJiZlW2ldIT09IiAiKXtuPWVbaV07YnJlYWt9bj0obnx8dFswXXx8Ij8iKS50b1VwcGVyQ2FzZSgpO3ZhciBhPXtBOntjbHM6ImFkZCIsdGl0bGU6Ilx1NjVCMFx1NTg5RSJ9LE06e2NsczoibW9kIix0aXRsZToiXHU0RkVFXHU2NTM5In0sRDp7Y2xzOiJkZWwiLHRpdGxlOiJcdTUyMjBcdTk2NjQifSxSOntjbHM6InJlbiIsdGl0bGU6Ilx1OTFDRFx1NTQ3RFx1NTQwRCJ9LEM6e2NsczoicmVuIix0aXRsZToiXHU1OTBEXHU1MjM2In0sVDp7Y2xzOiJtb2QiLHRpdGxlOiJcdTdDN0JcdTU3OEJcdTUzRDhcdTY2RjQifSxVOntjbHM6ImRlbCIsdGl0bGU6Ilx1NTFCMlx1N0E4MSJ9fSx1PWFbbl18fHtjbHM6Im90aGVyIix0aXRsZToiXHU1REYyXHU2NkY0XHU2NTM5In07cmV0dXJue2xldHRlcjpuLGNsczp1LmNscyx0aXRsZTp1LnRpdGxlfX1mdW5jdGlvbiByZyhlKXt2YXIgdD1lLm1hcChmdW5jdGlvbihuKXt2YXIgaT15YyhuLnN0YXR1c3x8IiIpLGE9bi5wYXRofHwiIix1PWEubGFzdEluZGV4T2YoIi8iKSxzPXU+PTA/YS5zbGljZSgwLHUrMSk6IiIsbz11Pj0wP2Euc2xpY2UodSsxKTphLGw9IiI7aWYobi5pc1N1Ym1vZHVsZSl7dmFyIGM9bi5zdWJtb2R1bGVTdGF0ZXx8e30sZj1bXTtjLmNvbW1pdENoYW5nZWQmJmYucHVzaCgiXHU2NUIwXHU2MzA3XHU5NDg4IiksYy5oYXNUcmFja2VkQ2hhbmdlcyYmZi5wdXNoKCJkaXJ0eSIpLGMuaGFzVW50cmFja2VkJiZmLnB1c2goIlx1NjcyQVx1OERERlx1OEUyQSIpO3ZhciBkPWYubGVuZ3RoPyJzdWJtb2R1bGUgXHhCNyAiK2Yuam9pbigiIC8gIik6InN1Ym1vZHVsZSI7bD0nPHNwYW4gY2xhc3M9InFjLXN1Ym1vZHVsZS1iYWRnZSI+JytwKGQpKyI8L3NwYW4+In1yZXR1cm4nPGRpdiBjbGFzcz0icWMtZmlsZS1yb3ciIHRpdGxlPSInK3AoYSkrJyI+PHNwYW4gY2xhc3M9InFjLWZpbGUtYmFkZ2UgcWMtYmFkZ2UtJytpLmNscysnIiB0aXRsZT0iJytwKGkudGl0bGUpKyciPicrcChpLmxldHRlcikrJzwvc3Bhbj48c3BhbiBjbGFzcz0icWMtZmlsZS1wYXRoIj4nKyhzPyc8c3BhbiBjbGFzcz0icWMtZmlsZS1kaXIiPicrcChzKSsiPC9zcGFuPiI6IiIpKyc8c3BhbiBjbGFzcz0icWMtZmlsZS1uYW1lIj4nK3AobykrIjwvc3Bhbj48L3NwYW4+IitsKyI8L2Rpdj4ifSkuam9pbigiIik7cmV0dXJuIHR8fCc8ZGl2IGNsYXNzPSJxYy1lbXB0eSI+XHU2Q0ExXHU2NzA5XHU1M0VGXHU2M0QwXHU0RUE0XHU3Njg0XHU2NTM5XHU1MkE4XHUzMDAyPC9kaXY+J31mdW5jdGlvbiBHcigpe3JldHVybiByLnF1aWNrQ29tbWl0U3VibWl0dGluZ3x8ci5xdWlja0NvbW1pdFB1c2hpbmd9ZnVuY3Rpb24gWXIoZSx0LG4saSl7cmV0dXJuJzxkaXYgY2xhc3M9InFjLXBhaXInKyhpPyIgIitpOiIiKSsnIj48ZGl2IGNsYXNzPSJxYy1wYWlyLWxhYmVsIj4nK3AoZSkrJzwvZGl2PjxkaXYgY2xhc3M9InFjLXBhaXItZmxvdyI+PGRpdiBjbGFzcz0icWMtcGFpci12YWx1ZSBxYy1wYWlyLXZhbHVlLS1mcm9tIj4nK3QrJzwvZGl2PjxkaXYgY2xhc3M9InFjLXBhaXItYXJyb3ciIGFyaWEtaGlkZGVuPSJ0cnVlIj5cdTIxOTI8L2Rpdj48ZGl2IGNsYXNzPSJxYy1wYWlyLXZhbHVlIHFjLXBhaXItdmFsdWUtLXRvIj4nK24rIjwvZGl2PjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gYmMoKXt2YXIgZT1yLmdpdFN0YXR1c3x8e307aWYoZS5oYXNTdWJtb2R1bGU9PT0hMClyZXR1cm4hMDtmb3IodmFyIHQ9ZS5maWxlc3x8W10sbj0wO248dC5sZW5ndGg7bisrKWlmKHRbbl0mJnRbbl0uaXNTdWJtb2R1bGU9PT0hMClyZXR1cm4hMDtyZXR1cm4hMX1mdW5jdGlvbiBFYyhlKXt2YXIgdD0hZXx8R3IoKSxuPWJjKCk7aWYoci5xdWlja0NvbW1pdFN1Ym1pdHRpbmcpe3ZhciBpPXIucXVpY2tDb21taXRTdWJtb2R1bGVJbnRlbnQ/Ilx1RkYwOFx1NTQyQiBzdWJtb2R1bGVcdUZGMDkiOiIiLGE9KHIucXVpY2tDb21taXRBdXRvR2VuZXJhdGluZz8iQUkgXHU3NTFGXHU2MjEwICsgXHU2M0QwXHU0RUE0XHU0RTJEXHUyMDI2IjoiXHU2MjY3XHU4ODRDXHU0RTJEXHUyMDI2IikraTtyZXR1cm4nPGRpdiBjbGFzcz0icWMtZG9jay13cmFwIj48ZGl2IGNsYXNzPSJxYy1kb2NrLWJ1c3kiIHJvbGU9InN0YXR1cyI+PHNwYW4gY2xhc3M9InFjLWRvY2stYnVzeS1kb3QiPjwvc3Bhbj4nK3AoYSkrIjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gdShvLGwsYyl7cmV0dXJuJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0icWMtY2hpcCBxYy1jaGlwLS0nK28rJyIgZGF0YS1jaGlwPSInK28rJyInKyhjPycgdGl0bGU9IicrcChjKSsnIic6IiIpKyh0PyIgZGlzYWJsZWQiOiIiKSsnPjxzcGFuIGNsYXNzPSJxYy1jaGlwLWRvdCIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48c3BhbiBjbGFzcz0icWMtY2hpcC1sYWJlbCI+JytsKyI8L3NwYW4+PC9idXR0b24+In12YXIgcz10P2U/IiI6Ilx1NURFNVx1NEY1Q1x1NTMzQVx1NUU3Mlx1NTFDMFx1RkYwQ1x1NjVFMFx1NTNFRlx1NjNEMFx1NEVBNCI6Ilx1NjJENlx1NTJBOFx1NzhDMVx1NTQzOFx1N0VDNFx1NTQwOCBceEI3IFx1NEUyMlx1OEZEQlx1NjNEMFx1NEVBNFx1NTMzQVx1NjI2N1x1ODg0QyBceEI3IFx1NTM1NVx1NTFGQlx1NzZGNFx1NjNBNVx1NjI2N1x1ODg0Q1x1OEJFNVx1OTg3OSIrKG4/IiBceEI3IFN1YiBcdTc0MDNcdTUzRUZcdTkwMDlcdUZGMENcdTdFQjNcdTUxNjVcdTU0MEVcdTkwMTJcdTVGNTJcdTU5MDRcdTc0MDYgc3VibW9kdWxlIjoiIik7cmV0dXJuJzxkaXYgY2xhc3M9InFjLWRvY2std3JhcCBxYy1kb2NrLXdyYXAtLW1hZ25ldGljIicrKHQ/JyBkYXRhLWRpc2FibGVkPSIxIic6IiIpKyc+PGRpdiBpZD0icWMtZG9jay1zdGFnZSIgY2xhc3M9InFjLWRvY2stc3RhZ2UiIGRhdGEtYWN0aW9uPSJjb21taXQiIGRhdGEtaG90PSIwIj48ZGl2IGlkPSJxYy1kb2NrLWZpZWxkIiBjbGFzcz0icWMtZG9jay1maWVsZCI+PGRpdiBpZD0icWMtZG9jay1jbHVzdGVyIiBjbGFzcz0icWMtZG9jay1jbHVzdGVyIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9kaXY+Jyt1KCJjb21taXQiLCJDb21taXQiKSt1KCJ0YWciLCJUYWciKSt1KCJwdXNoIiwiUHVzaCIpKyhuP3UoInN1YiIsIlN1YiIsIlx1NjNEMFx1NEVBNFx1NzIzNlx1NEVEM1x1NUU5M1x1NUU3Nlx1OTAxMlx1NUY1Mlx1OEZEQlx1NTE2NSBzdWJtb2R1bGVcdUZGMDhjb21taXQgLyB0YWcgLyBcdTUyMDZcdTUyMkJcdTYzQThcdTkwMDFcdUZGMDkiKToiIikrJzwvZGl2PjxidXR0b24gdHlwZT0iYnV0dG9uIiBpZD0icWMtZG9jay1sYXVuY2giIGNsYXNzPSJxYy1kb2NrLWxhdW5jaCInKyh0PyIgZGlzYWJsZWQiOiIiKSsnIGFyaWEtbGFiZWw9Ilx1NjI2N1x1ODg0Q1x1NjNEMFx1NEVBNCI+PHNwYW4gY2xhc3M9InFjLWRvY2stbGF1bmNoLWFycm93IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyMiIgaGVpZ2h0PSIyMiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi4zIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik01IDEyaDEyTTEzIDZsNiA2LTYgNiIvPjwvc3ZnPjwvc3Bhbj48c3BhbiBpZD0icWMtZG9jay1sYXVuY2gtbGFiZWwiIGNsYXNzPSJxYy1kb2NrLWxhdW5jaC1sYWJlbCI+XHU2M0QwXHU0RUE0PC9zcGFuPjwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9InFjLWRvY2staGludCI+JytwKHMpKyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIEZjKCl7dmFyIGU9ci5xdWlja0NvbW1pdFJlc3VsdDtpZighZSlyZXR1cm4iIjt2YXIgdD1lLm9sZENvbW1pdEhhc2g/Ijxjb2RlPiIrcChlLm9sZENvbW1pdEhhc2gpKyI8L2NvZGU+IisoZS5vbGRDb21taXRTdWJqZWN0PyI8c3Bhbj4iK3AoZS5vbGRDb21taXRTdWJqZWN0KSsiPC9zcGFuPiI6IiIpOic8c3BhbiBjbGFzcz0icWMtbXV0ZWQiPlx1NjVFMDwvc3Bhbj4nLG49ZS5jb21taXRIYXNoPyI8Y29kZT4iK3AoZS5jb21taXRIYXNoKSsiPC9jb2RlPjxzcGFuPiIrcChlLmNvbW1pdE1lc3NhZ2V8fCIiKSsiPC9zcGFuPiI6JzxzcGFuIGNsYXNzPSJxYy1tdXRlZCI+XHU2NUUwPC9zcGFuPicsaT1lLm9sZFRhZz8iPGNvZGU+IitwKGUub2xkVGFnKSsiPC9jb2RlPiI6JzxzcGFuIGNsYXNzPSJxYy1tdXRlZCI+XHU2NUUwIHRhZzwvc3Bhbj4nLGE9ZS50YWdOYW1lPyI8Y29kZT4iK3AoZS50YWdOYW1lKSsiPC9jb2RlPiI6JzxzcGFuIGNsYXNzPSJxYy1tdXRlZCI+XHU2NzJBXHU2MjUzIHRhZzwvc3Bhbj4nLHU9ZS5wdXNoZWQ/JzxzcGFuIGNsYXNzPSJxYy1yZXN1bHQtcHVzaGVkIj5cdTVERjJcdTYzQThcdTkwMDE8L3NwYW4+JzonPGJ1dHRvbiBpZD0icXVpY2stY29tbWl0LXB1c2gtYWZ0ZXItYnRuIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zbSIgdHlwZT0iYnV0dG9uIicrKHIucXVpY2tDb21taXRQdXNoaW5nPyIgZGlzYWJsZWQiOiIiKSsiPiIrKHIucXVpY2tDb21taXRQdXNoaW5nPyJcdTYzQThcdTkwMDFcdTRFMkQuLi4iOiJQdXNoICYgQ2xvc2UiKSsiPC9idXR0b24+IjtyZXR1cm4nPHNlY3Rpb24gY2xhc3M9InFjLXJlc3VsdC1wYW5lbCI+JytZcigiQ29tbWl0Iix0LG4sIiIpK1lyKCJUYWciLGksYSwicWMtcGFpci0tdGFnIikrKGUucHVzaEVycm9yfHxyLnF1aWNrQ29tbWl0UHVzaEVycm9yPyc8cCBjbGFzcz0iZXJyb3ItbWVzc2FnZSI+JytwKGUucHVzaEVycm9yfHxyLnF1aWNrQ29tbWl0UHVzaEVycm9yKSsiPC9wPiI6IiIpKyc8ZGl2IGNsYXNzPSJxYy1yZXN1bHQtYWN0aW9ucyI+PGJ1dHRvbiBpZD0icXVpY2stY29tbWl0LWNhbmNlbC1idG4iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSIgdHlwZT0iYnV0dG9uIj5cdTUxNzNcdTk1RUQ8L2J1dHRvbj4nK3UrIjwvZGl2Pjwvc2VjdGlvbj4ifWZ1bmN0aW9uIGp1KCl7dmFyIGU9ci5naXRTdGF0dXN8fHt9LHQ9ci5xdWlja0NvbW1pdEZvcm18fHtjdXN0b21NZXNzYWdlOiIiLHRhZzoiIix0YWdFZGl0ZWQ6ITF9LG49KGUubW9kaWZpZWRDb3VudHx8MCk+MCxpPXIucXVpY2tDb21taXRHZW5lcmF0aW5nLGE9ZS5sYXN0Q29tbWl0fHx7fSx1PWEuc2hvcnRIYXNoPyI8Y29kZT4iK3AoYS5zaG9ydEhhc2gpKyI8L2NvZGU+PHNwYW4+IitwKGEuc3ViamVjdHx8IiIpKyI8L3NwYW4+IjplLmhlYWQ/Ijxjb2RlPiIrcChlLmhlYWQuc3Vic3RyaW5nKDAsNykpKyI8L2NvZGU+IjonPHNwYW4gY2xhc3M9InFjLW11dGVkIj5cdTY1RTAgY29tbWl0PC9zcGFuPicscz1lLmxhdGVzdFRhZz8iPGNvZGU+IitwKGUubGF0ZXN0VGFnKSsiPC9jb2RlPiI6JzxzcGFuIGNsYXNzPSJxYy1tdXRlZCI+XHU2NUUwIHRhZzwvc3Bhbj4nLG89JzxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0icXVpY2stY29tbWl0LXRhZyIgY2xhc3M9ImZpZWxkLWlucHV0IHFjLXRhZy1maWVsZC1pbnB1dCIgcGxhY2Vob2xkZXI9Ilx1NzU1OVx1N0E3QVx1NTIxOSBBSSBcdTc1MUZcdTYyMTAiIHZhbHVlPSInK3AodC50YWd8fCIiKSsnIicrKHIucXVpY2tDb21taXRTdWJtaXR0aW5nPyIgZGlzYWJsZWQiOiIiKSsiPiIsbD0nPHRleHRhcmVhIGlkPSJxdWljay1jb21taXQtbWVzc2FnZSIgY2xhc3M9ImZpZWxkLWlucHV0IHFjLW1lc3NhZ2UtaW5wdXQiIHJvd3M9IjMiIHBsYWNlaG9sZGVyPSJOZXcgY29tbWl0IG1lc3NhZ2UiICcrKHIucXVpY2tDb21taXRTdWJtaXR0aW5nPyJkaXNhYmxlZCI6IiIpKyI+IitwKHQuY3VzdG9tTWVzc2FnZXx8IiIpKyI8L3RleHRhcmVhPiIsYz1bXTtjLnB1c2goZS5icmFuY2h8fCIobm8gYnJhbmNoKSIpLGMucHVzaChuPyhlLm1vZGlmaWVkQ291bnR8fDApKyIgXHU0RTJBXHU2NTM5XHU1MkE4IjoiXHU1REU1XHU0RjVDXHU1MzNBXHU1RTcyXHU1MUMwIiksdHlwZW9mIGUuYWhlYWQ9PSJudW1iZXIiJiZlLmFoZWFkPjAmJmMucHVzaCgiXHUyMTkxIitlLmFoZWFkKSx0eXBlb2YgZS5iZWhpbmQ9PSJudW1iZXIiJiZlLmJlaGluZD4wJiZjLnB1c2goIlx1MjE5MyIrZS5iZWhpbmQpO3ZhciBmPXIucXVpY2tDb21taXRSZXN1bHQ/IiI6JzxzZWN0aW9uIGNsYXNzPSJxYy1yZWxlYXNlLXBhbmVsIj48ZGl2IGNsYXNzPSJxYy1tZXNzYWdlLWhlYWRlciI+PHNwYW4gY2xhc3M9InFjLXNlY3Rpb24tdGl0bGUiPk5ldzwvc3Bhbj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgaWQ9InF1aWNrLWNvbW1pdC1haS1idG4iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSBxYy1haS1idG4iJysoaT8iIGRpc2FibGVkIjoiIikrJyB0aXRsZT0iQUkgXHU3NTFGXHU2MjEwIGNvbW1pdCBtZXNzYWdlIFx1NEUwRSB0YWciPjxzdmcgdmlld0JveD0iMCAwIDE2IDE2IiB3aWR0aD0iMTMiIGhlaWdodD0iMTMiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNOCAxLjVsMS40IDMuNkwxMyA2LjUgOS40IDcuOSA4IDExLjUgNi42IDcuOSAzIDYuNWwzLjYtMS40TDggMS41ek0xMi41IDEwLjVsLjcgMS44IDEuOC43LTEuOC43LS43IDEuOC0uNy0xLjgtMS44LS43IDEuOC0uNy43LTEuOHoiIGZpbGw9ImN1cnJlbnRDb2xvciIvPjwvc3ZnPjxzcGFuPicrKGk/Ilx1NzUxRlx1NjIxMFx1NEUyRC4uLiI6IkFJIikrIjwvc3Bhbj48L2J1dHRvbj48L2Rpdj4iK1lyKCJDb21taXQiLHUsbCwicWMtcGFpci0tY29tbWl0IikrWXIoIlRhZyIscyxvLCJxYy1wYWlyLS10YWciKSsoci5xdWlja0NvbW1pdEVycm9yPyc8cCBjbGFzcz0iZXJyb3ItbWVzc2FnZSI+JytwKHIucXVpY2tDb21taXRFcnJvcikrIjwvcD4iOiIiKStFYyhuKSsnPGRpdiBjbGFzcz0icWMtbW9kYWwtYWN0aW9ucyI+PGJ1dHRvbiBpZD0icXVpY2stY29tbWl0LWNhbmNlbC1idG4iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSIgdHlwZT0iYnV0dG9uIj5cdTUzRDZcdTZEODg8L2J1dHRvbj48L2Rpdj48L3NlY3Rpb24+JyxkPUZjKCk7cmV0dXJuJzxzZWN0aW9uIGlkPSJxdWljay1jb21taXQtbW9kYWwiIGNsYXNzPSJtb2RhbC1iYWNrZHJvcCcrKHIucXVpY2tDb21taXRPcGVuPyIiOiIgaGlkZGVuIikrJyI+PGRpdiBjbGFzcz0ibW9kYWwgcXVpY2stY29tbWl0LW1vZGFsIiByb2xlPSJkaWFsb2ciIGFyaWEtbGFiZWxsZWRieT0icXVpY2stY29tbWl0LXRpdGxlIj48ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIiPjxkaXY+PGgyIGlkPSJxdWljay1jb21taXQtdGl0bGUiIGNsYXNzPSJtb2RhbC10aXRsZSI+XHU1RkVCXHU2Mzc3XHU2M0QwXHU0RUE0PC9oMj48cCBjbGFzcz0ibW9kYWwtc3VidGl0bGUiPicrcChjLmpvaW4oIiBceEI3ICIpKSsnPC9wPjwvZGl2PjxidXR0b24gaWQ9InF1aWNrLWNvbW1pdC1jbG9zZS1idG4iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1pY29uIG1vZGFsLWNsb3NlLWJ0biIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RUQiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjYiIHkxPSI2IiB4Mj0iMTgiIHkyPSIxOCIvPjxsaW5lIHgxPSIxOCIgeTE9IjYiIHgyPSI2IiB5Mj0iMTgiLz48L3N2Zz48L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1ib2R5Ij4nK2YrZCsiPC9kaXY+PC9kaXY+PC9zZWN0aW9uPiJ9ZnVuY3Rpb24gd2MoKXtyZXR1cm4nPHNlY3Rpb24gaWQ9Indvcmt0cmVlLW1lcmdlLW1vZGFsIiBjbGFzcz0ibW9kYWwtYmFja2Ryb3AgaGlkZGVuIj48ZGl2IGNsYXNzPSJtb2RhbCB3b3JrdHJlZS1tZXJnZS1tb2RhbCI+PGRpdiBjbGFzcz0ibW9kYWwtaGVhZGVyIj48ZGl2PjxoMiBjbGFzcz0ibW9kYWwtdGl0bGUiPlx1NTQwOFx1NUU3NiBXb3JrdHJlZTwvaDI+PHAgY2xhc3M9Im1vZGFsLXN1YnRpdGxlIj5cdTY4QzBcdTY3RTVcdTVGNTNcdTUyNERcdTRFRkJcdTUyQTFcdTUyMDZcdTY1MkZcdTVFNzZcdTVGRUJcdTYzNzdcdTU0MDhcdTVFNzZcdTUyMzBcdTRFM0JcdTUyMDZcdTY1MkZcdTMwMDI8L3A+PC9kaXY+PGJ1dHRvbiBpZD0iY2xvc2Utd29ya3RyZWUtbWVyZ2UtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4taWNvbiBtb2RhbC1jbG9zZS1idG4iIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU1MTczXHU5NUVEIj48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxsaW5lIHgxPSI2IiB5MT0iNiIgeDI9IjE4IiB5Mj0iMTgiLz48bGluZSB4MT0iMTgiIHkxPSI2IiB4Mj0iNiIgeTI9IjE4Ii8+PC9zdmc+PC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0ibW9kYWwtYm9keSI+PGRpdiBpZD0id29ya3RyZWUtbWVyZ2UtY29udGVudCIgY2xhc3M9Indvcmt0cmVlLW1lcmdlLWNvbnRlbnQiPjwvZGl2PjxwIGlkPSJ3b3JrdHJlZS1tZXJnZS1lcnJvciIgY2xhc3M9ImVycm9yLW1lc3NhZ2UgaGlkZGVuIj48L3A+PGRpdiBjbGFzcz0id29ya3RyZWUtbWVyZ2UtYWN0aW9ucyI+PGJ1dHRvbiBpZD0id29ya3RyZWUtbWVyZ2UtY2FuY2VsLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5Ij5cdTUzRDZcdTZEODg8L2J1dHRvbj48YnV0dG9uIGlkPSJ3b3JrdHJlZS1tZXJnZS1jb25maXJtLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSI+XHU3ODZFXHU4QkE0XHU1NDA4XHU1RTc2XHU1RTc2XHU2RTA1XHU3NDA2PC9idXR0b24+PC9kaXY+PC9kaXY+PC9kaXY+PC9zZWN0aW9uPid9ZnVuY3Rpb24gQ2MoKXtyZXR1cm4nPHNlY3Rpb24gaWQ9InNldHRpbmdzLW1vZGFsIiBjbGFzcz0ibW9kYWwtYmFja2Ryb3AgaGlkZGVuIj48ZGl2IGNsYXNzPSJtb2RhbCBzZXR0aW5ncy1tb2RhbCI+PGRpdiBjbGFzcz0ibW9kYWwtaGVhZGVyIHNldHRpbmdzLW1vZGFsLWhlYWRlciI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtbW9kYWwtdGl0bGUtZ3JvdXAiPjxoMiBjbGFzcz0ibW9kYWwtdGl0bGUiPlx1OEJCRVx1N0Y2RTwvaDI+PHAgY2xhc3M9InNldHRpbmdzLW1vZGFsLXN1YnRpdGxlIj5cdThDMDNcdTY1NzRcdTVFOTRcdTc1MjhcdTkxNERcdTdGNkVcdTMwMDFcdTkwMUFcdTc3RTVcdTMwMDFcdTVCODlcdTUxNjhcdTU0OENcdTY2M0VcdTc5M0FcdTUwNEZcdTU5N0Q8L3A+PC9kaXY+PGJ1dHRvbiBpZD0iY2xvc2Utc2V0dGluZ3MtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4taWNvbiBtb2RhbC1jbG9zZS1idG4iIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU1MTczXHU5NUVEIj48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxsaW5lIHgxPSI2IiB5MT0iNiIgeDI9IjE4IiB5Mj0iMTgiLz48bGluZSB4MT0iMTgiIHkxPSI2IiB4Mj0iNiIgeTI9IjE4Ii8+PC9zdmc+PC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0ibW9kYWwtYm9keSBzZXR0aW5ncy1tb2RhbC1ib2R5Ij48ZGl2IGNsYXNzPSJzZXR0aW5ncy1sYXlvdXQiPjxhc2lkZSBjbGFzcz0ic2V0dGluZ3Mtc2lkZWJhciI+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2lkZWJhci1oZWFkZXIiPjxkaXYgY2xhc3M9InNldHRpbmdzLXNpZGViYXItdGl0bGUiPlx1NTA0Rlx1NTk3RFx1OEJCRVx1N0Y2RTwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXNpZGViYXItaGludCI+XHU1REU2XHU0RkE3XHU1MjA3XHU2MzYyXHU1MjA2XHU1MzNBXHVGRjBDXHU1M0YzXHU0RkE3XHU2N0U1XHU3NzBCXHU4QkU2XHU3RUM2XHU4QkY0XHU2NjBFXHU0RTBFXHU5MDA5XHU5ODc5XHUzMDAyPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdGFicyIgcm9sZT0idGFibGlzdCIgYXJpYS1sYWJlbD0iXHU4QkJFXHU3RjZFXHU1MjA2XHU3RUM0IiBhcmlhLW9yaWVudGF0aW9uPSJ2ZXJ0aWNhbCI+PGJ1dHRvbiBjbGFzcz0ic2V0dGluZ3MtdGFiIGFjdGl2ZSIgZGF0YS10YWI9ImFib3V0IiByb2xlPSJ0YWIiIGFyaWEtc2VsZWN0ZWQ9InRydWUiIGFyaWEtY29udHJvbHM9InNldHRpbmdzLXRhYi1hYm91dCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRhYi1tYWluIj5cdTUxNzNcdTRFOEU8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRhYi1tZXRhIj5cdTcyNDhcdTY3MkNcdTMwMDFcdTY2RjRcdTY1QjBcdTRFMEVcdThGREVcdTYzQTVcdTY1QjlcdTVGMEY8L3NwYW4+PC9idXR0b24+PGJ1dHRvbiBjbGFzcz0ic2V0dGluZ3MtdGFiIiBkYXRhLXRhYj0iZ2VuZXJhbCIgcm9sZT0idGFiIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSIgYXJpYS1jb250cm9scz0ic2V0dGluZ3MtdGFiLWdlbmVyYWwiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10YWItbWFpbiI+XHU1N0ZBXHU2NzJDXHU5MTREXHU3RjZFPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10YWItbWV0YSI+XHU0RTNCXHU2NzNBXHUzMDAxXHU2QTIxXHU1RjBGXHUzMDAxXHU4QkVEXHU4QTAwXHUzMDAxXHU3NkVFXHU1RjU1PC9zcGFuPjwvYnV0dG9uPjxidXR0b24gY2xhc3M9InNldHRpbmdzLXRhYiIgZGF0YS10YWI9Im5vdGlmaWNhdGlvbnMiIHJvbGU9InRhYiIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiIGFyaWEtY29udHJvbHM9InNldHRpbmdzLXRhYi1ub3RpZmljYXRpb25zIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdGFiLW1haW4iPlx1OTAxQVx1NzdFNTwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdGFiLW1ldGEiPlx1NjNEMFx1NzkzQVx1OTdGM1x1NEUwRVx1NkQ0Rlx1ODlDOFx1NTY2OFx1OTAxQVx1NzdFNTwvc3Bhbj48L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJzZXR0aW5ncy10YWIiIGRhdGEtdGFiPSJzZWN1cml0eSIgcm9sZT0idGFiIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSIgYXJpYS1jb250cm9scz0ic2V0dGluZ3MtdGFiLXNlY3VyaXR5Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdGFiLW1haW4iPlx1NUI4OVx1NTE2ODwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdGFiLW1ldGEiPlx1NUJDNlx1NzgwMVx1NEUwRVx1OEJDMVx1NEU2Njwvc3Bhbj48L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJzZXR0aW5ncy10YWIiIGRhdGEtdGFiPSJwcmVzZXRzIiByb2xlPSJ0YWIiIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIiBhcmlhLWNvbnRyb2xzPSJzZXR0aW5ncy10YWItcHJlc2V0cyI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRhYi1tYWluIj5cdTU0N0RcdTRFRTRcdTk4ODRcdThCQkU8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRhYi1tZXRhIj5cdTY3RTVcdTc3MEJcdTVERjJcdTY3MDlcdTk4ODRcdThCQkU8L3NwYW4+PC9idXR0b24+PGJ1dHRvbiBjbGFzcz0ic2V0dGluZ3MtdGFiIiBkYXRhLXRhYj0iZGlzcGxheSIgcm9sZT0idGFiIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSIgYXJpYS1jb250cm9scz0ic2V0dGluZ3MtdGFiLWRpc3BsYXkiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10YWItbWFpbiI+XHU2NjNFXHU3OTNBPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10YWItbWV0YSI+XHU1MzYxXHU3MjQ3XHU5RUQ4XHU4QkE0XHU1QzU1XHU1RjAwXHU4ODRDXHU0RTNBPC9zcGFuPjwvYnV0dG9uPjwvZGl2PjwvYXNpZGU+PGRpdiBjbGFzcz0ic2V0dGluZ3MtY29udGVudCI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtcGFuZWwgYWN0aXZlIiBpZD0ic2V0dGluZ3MtdGFiLWFib3V0IiByb2xlPSJ0YWJwYW5lbCI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtaGVhZGVyIj48aDMgY2xhc3M9InNldHRpbmdzLXBhbmVsLXRpdGxlIj5cdTUxNzNcdTRFOEUgV2FuZDwvaDM+PHAgY2xhc3M9InNldHRpbmdzLXBhbmVsLWRlc2MiPlx1NjdFNVx1NzcwQlx1NzI0OFx1NjcyQ1x1NEZFMVx1NjA2Rlx1MzAwMVx1NjZGNFx1NjVCMFx1NzJCNlx1NjAwMVx1NTQ4QyBBbmRyb2lkIEFwcCBcdThGREVcdTYzQTVcdTY1QjlcdTVGMEZcdTMwMDI8L3A+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtYWJvdXQtaW5mbyI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtYWJvdXQtcm93Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtbGFiZWwiPlx1NTMwNVx1NTQwRDwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdmFsdWUiIGlkPSJzZXR0aW5ncy1wa2ctbmFtZSI+LTwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1hYm91dC1yb3ciPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1sYWJlbCI+XHU1RjUzXHU1MjREXHU3MjQ4XHU2NzJDPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy12YWx1ZSIgaWQ9InNldHRpbmdzLXZlcnNpb24iPi08L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtYWJvdXQtcm93Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtbGFiZWwiPk5vZGUuanMgXHU4OTgxXHU2QzQyPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy12YWx1ZSIgaWQ9InNldHRpbmdzLW5vZGUtcmVxIj4tPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWxhYmVsIj5cdTRFRDNcdTVFOTNcdTU3MzBcdTU3NDA8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXZhbHVlIiBpZD0ic2V0dGluZ3MtcmVwby11cmwiPjxhIGhyZWY9IiMiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIj4tPC9hPjwvc3Bhbj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy11cGRhdGUtc2VjdGlvbiIgaWQ9IndlYi11cGRhdGUtc2VjdGlvbiI+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1pY29uIj4nK0ooImdsb2JlIix7c2l6ZToxOCxzdHJva2VXaWR0aDoxLjd9KSsnPC9zcGFuPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZC10ZXh0Ij48aDQgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZGluZyI+V2ViIFx1N0FFRjwvaDQ+PHAgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24tc3ViIj5cdTZENEZcdTg5QzhcdTU2NjhcdThCQkZcdTk1RUVcdTc2ODRcdTY3MERcdTUyQTFcdTcyNDhcdTY3MkM8L3A+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtYWJvdXQtcm93Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtbGFiZWwiPlx1NjcwMFx1NjVCMFx1NzI0OFx1NjcyQzwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdmFsdWUiIGlkPSJzZXR0aW5ncy1sYXRlc3QtdmVyc2lvbiI+LTwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy11cGRhdGUtYWN0aW9ucyI+PGJ1dHRvbiBpZD0iY2hlY2stdXBkYXRlLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSI+XHU2OEMwXHU2N0U1XHU2NkY0XHU2NUIwPC9idXR0b24+PGJ1dHRvbiBpZD0iZG8tdXBkYXRlLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSBidG4tc20gaGlkZGVuIj5cdTY2RjRcdTY1QjBcdTUyMzBcdTY3MDBcdTY1QjBcdTcyNDg8L2J1dHRvbj48YnV0dG9uIGlkPSJkby1yZXN0YXJ0LWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tc3VjY2VzcyBidG4tc20gaGlkZGVuIj5cdTkxQ0RcdTU0MkZcdTc1MUZcdTY1NDg8L2J1dHRvbj48L2Rpdj48cCBpZD0idXBkYXRlLW1lc3NhZ2UiIGNsYXNzPSJoaW50IGhpZGRlbiI+PC9wPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1yb3ciPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10ZXh0Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRpdGxlIj5CZXRhIFx1OTAxQVx1OTA1Mzwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLWRlc2MiPlx1NjZGNFx1NjVCMFx1NTIzMCBucG0gYmV0YSBcdTcyNDhcdTY3MkNcdUZGMDh0YWcgKyBjb21taXQgXHU1QzNFXHU2ODA3XHVGRjA5XHVGRjBDXHU1QzFEXHU5QzlDXHU2NUIwXHU1MjlGXHU4MEZEXHVGRjBDXHU1M0VGXHU4MEZEXHU0RTBEXHU3QTMzXHU1QjlBXHUzMDAyPC9zcGFuPjwvZGl2PjxsYWJlbCBjbGFzcz0ic2V0dGluZ3Mtc3dpdGNoIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJiZXRhLWNoYW5uZWwtdG9nZ2xlIiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSI+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2xhYmVsPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1yb3ciPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10ZXh0Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRpdGxlIj5cdTgxRUFcdTUyQThcdTY2RjRcdTY1QjA8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1kZXNjIj5cdTY4QzBcdTZENEJcdTUyMzBcdTY1QjBcdTcyNDhcdTY3MkNcdTVDMDZcdTgxRUFcdTUyQThcdTRFMEJcdThGN0RcdTVCODlcdTg4QzVcdTVFNzZcdTkxQ0RcdTU0MkZcdTY3MERcdTUyQTFcdTMwMDI8L3NwYW4+PC9kaXY+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy1zd2l0Y2giPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9ImF1dG8tdXBkYXRlLXdlYi10b2dnbGUiIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIj48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvbGFiZWw+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdXBkYXRlLXNlY3Rpb24gaGlkZGVuIiBpZD0iYW5kcm9pZC1hcGstc2VjdGlvbiI+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1pY29uIj4nK0ooInNtYXJ0cGhvbmUiLHtzaXplOjE4LHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkLXRleHQiPjxoNCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkaW5nIj5BbmRyb2lkIEFwcDwvaDQ+PHAgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24tc3ViIj5cdTUzOUZcdTc1MUZcdTVCQTJcdTYyMzdcdTdBRUZcdTcyNDhcdTY3MkNcdTRFMEUgQVBLIFx1NEUwQlx1OEY3RDwvcD48L2Rpdj48L2Rpdj48ZGl2IGlkPSJhbmRyb2lkLWFway1jdXJyZW50LXJvdyIgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyBoaWRkZW4iPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1sYWJlbCI+XHU1RjUzXHU1MjREXHU3MjQ4XHU2NzJDPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy12YWx1ZSIgaWQ9InNldHRpbmdzLWFuZHJvaWQtYXBrLWN1cnJlbnQiPi08L3NwYW4+PC9kaXY+PGRpdiBpZD0iYW5kcm9pZC1hcGstZ2l0aHViLXJvdyIgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyBzZXR0aW5ncy1hYm91dC1yb3ctYWN0aW9uIGhpZGRlbiI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWxhYmVsIj5cdTdFQkZcdTRFMEFcdTcyNDhcdTY3MkM8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXZhbHVlIHNldHRpbmdzLXZhbHVlLWZsZXgiIGlkPSJzZXR0aW5ncy1hbmRyb2lkLWFway1naXRodWIiPi08L3NwYW4+PGJ1dHRvbiBpZD0iZG93bmxvYWQtZ2l0aHViLWFway1idG4iIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20gaGlkZGVuIiB0eXBlPSJidXR0b24iPlx1NEUwQlx1OEY3RDwvYnV0dG9uPjwvZGl2PjxkaXYgaWQ9ImFuZHJvaWQtYXBrLWxvY2FsLXJvdyIgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyBzZXR0aW5ncy1hYm91dC1yb3ctYWN0aW9uIGhpZGRlbiI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWxhYmVsIj5cdTY3MkNcdTU3MzBcdTcyNDhcdTY3MkM8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXZhbHVlIHNldHRpbmdzLXZhbHVlLWZsZXgiIGlkPSJzZXR0aW5ncy1hbmRyb2lkLWFway1sb2NhbCI+LTwvc3Bhbj48YnV0dG9uIGlkPSJkb3dubG9hZC1sb2NhbC1hcGstYnRuIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkgYnRuLXNtIGhpZGRlbiIgdHlwZT0iYnV0dG9uIj5cdTRFMEJcdThGN0Q8L2J1dHRvbj48L2Rpdj48ZGl2IGlkPSJhbmRyb2lkLWF1dG8tdXBkYXRlLXJvdyIgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1yb3cgaGlkZGVuIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGV4dCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10aXRsZSI+XHU4MUVBXHU1MkE4XHU2NkY0XHU2NUIwPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtZGVzYyIgaWQ9ImFuZHJvaWQtYXV0by11cGRhdGUtaGludCI+XHU2OEMwXHU2RDRCXHU1MjMwXHU2NUIwXHU3MjQ4IEFQSyBcdTY1RjZcdTgxRUFcdTUyQThcdTYyQzlcdThENzdcdTRFMEJcdThGN0RcdUZGMENcdTVCODlcdTg4QzVcdTRFQ0RcdTk3MDBcdTU3MjhcdTdDRkJcdTdFREZcdTRFMkRcdTc4NkVcdThCQTRcdTMwMDI8L3NwYW4+PC9kaXY+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy1zd2l0Y2giPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9ImF1dG8tdXBkYXRlLWFway10b2dnbGUiIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIj48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvbGFiZWw+PC9kaXY+PHAgaWQ9ImFuZHJvaWQtYXBrLW1lc3NhZ2UiIGNsYXNzPSJoaW50IGhpZGRlbiI+PC9wPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXVwZGF0ZS1zZWN0aW9uIGhpZGRlbiIgaWQ9Im1hY29zLWRtZy1zZWN0aW9uIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWljb24iPicrSigiZGVza3RvcCIse3NpemU6MTgsc3Ryb2tlV2lkdGg6MS43fSkrJzwvc3Bhbj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQtdGV4dCI+PGg0IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWRpbmciPm1hY09TIEFwcDwvaDQ+PHAgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24tc3ViIj5cdTUzOUZcdTc1MUZcdTVCQTJcdTYyMzdcdTdBRUZcdTcyNDhcdTY3MkNcdTRFMEUgRE1HIFx1NEUwQlx1OEY3RDwvcD48L2Rpdj48L2Rpdj48ZGl2IGlkPSJtYWNvcy1kbWctY3VycmVudC1yb3ciIGNsYXNzPSJzZXR0aW5ncy1hYm91dC1yb3cgaGlkZGVuIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtbGFiZWwiPlx1NUY1M1x1NTI0RFx1NzI0OFx1NjcyQzwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdmFsdWUiIGlkPSJzZXR0aW5ncy1tYWNvcy1kbWctY3VycmVudCI+LTwvc3Bhbj48L2Rpdj48ZGl2IGlkPSJtYWNvcy1kbWctZ2l0aHViLXJvdyIgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyBzZXR0aW5ncy1hYm91dC1yb3ctYWN0aW9uIGhpZGRlbiI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWxhYmVsIj5cdTdFQkZcdTRFMEFcdTcyNDhcdTY3MkM8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXZhbHVlIHNldHRpbmdzLXZhbHVlLWZsZXgiIGlkPSJzZXR0aW5ncy1tYWNvcy1kbWctZ2l0aHViIj4tPC9zcGFuPjxidXR0b24gaWQ9ImRvd25sb2FkLWdpdGh1Yi1kbWctYnRuIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkgYnRuLXNtIGhpZGRlbiIgdHlwZT0iYnV0dG9uIj5cdTRFMEJcdThGN0Q8L2J1dHRvbj48L2Rpdj48ZGl2IGlkPSJtYWNvcy1kbWctbG9jYWwtcm93IiBjbGFzcz0ic2V0dGluZ3MtYWJvdXQtcm93IHNldHRpbmdzLWFib3V0LXJvdy1hY3Rpb24gaGlkZGVuIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtbGFiZWwiPlx1NjcyQ1x1NTczMFx1NzI0OFx1NjcyQzwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdmFsdWUgc2V0dGluZ3MtdmFsdWUtZmxleCIgaWQ9InNldHRpbmdzLW1hY29zLWRtZy1sb2NhbCI+LTwvc3Bhbj48YnV0dG9uIGlkPSJkb3dubG9hZC1sb2NhbC1kbWctYnRuIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkgYnRuLXNtIGhpZGRlbiIgdHlwZT0iYnV0dG9uIj5cdTRFMEJcdThGN0Q8L2J1dHRvbj48L2Rpdj48ZGl2IGlkPSJtYWNvcy1hdXRvLXVwZGF0ZS1yb3ciIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtcm93IGhpZGRlbiI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRleHQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGl0bGUiPlx1ODFFQVx1NTJBOFx1NjZGNFx1NjVCMDwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLWRlc2MiIGlkPSJtYWNvcy1hdXRvLXVwZGF0ZS1oaW50Ij5cdTY4QzBcdTZENEJcdTUyMzBcdTY1QjBcdTcyNDggRE1HIFx1NUMwNlx1ODFFQVx1NTJBOFx1NEUwQlx1OEY3RFx1NUU3Nlx1NjMwMlx1OEY3RFx1MzAwMjwvc3Bhbj48L2Rpdj48bGFiZWwgY2xhc3M9InNldHRpbmdzLXN3aXRjaCI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBpZD0iYXV0by11cGRhdGUtZG1nLXRvZ2dsZSIgY2xhc3M9InN3aXRjaC10b2dnbGUiPjxzcGFuIGNsYXNzPSJzd2l0Y2gtc2xpZGVyIj48L3NwYW4+PC9sYWJlbD48L2Rpdj48cCBpZD0ibWFjb3MtZG1nLW1lc3NhZ2UiIGNsYXNzPSJoaW50IGhpZGRlbiI+PC9wPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXVwZGF0ZS1zZWN0aW9uIiBpZD0iYW5kcm9pZC1jb25uZWN0LXNlY3Rpb24iPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taWNvbiI+JytKKCJsaW5rIix7c2l6ZToxOCxzdHJva2VXaWR0aDoxLjd9KSsnPC9zcGFuPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZC10ZXh0Ij48aDQgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZGluZyI+QXBwIFx1OEZERVx1NjNBNVx1NzgwMTwvaDQ+PHAgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24tc3ViIj5cdTdDOThcdThEMzRcdTUyMzAgQW5kcm9pZCBBcHAgXHU1MzczXHU1M0VGXHU4MUVBXHU1MkE4XHU4RkRFXHU2M0E1XHVGRjBDXHU2NUUwXHU5NzAwXHU1QkM2XHU3ODAxXHVGRjFCXHU2NTM5XHU1QkM2XHU3ODAxXHU1NDBFXHU1OTMxXHU2NTQ4XHUzMDAyPC9wPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLWNvbm5lY3QtdXJsLWJveCI+PGNvZGUgaWQ9ImFuZHJvaWQtY29ubmVjdC1jb2RlIiBjbGFzcz0ic2V0dGluZ3MtY29ubmVjdC11cmwtdGV4dCI+LTwvY29kZT48YnV0dG9uIGlkPSJjb3B5LWNvbm5lY3QtY29kZS1idXR0b24iIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NTkwRFx1NTIzNlx1OEZERVx1NjNBNVx1NzgwMSI+XHU1OTBEXHU1MjM2PC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtY29ubmVjdC1xci1ib3giPjxkaXYgY2xhc3M9InNldHRpbmdzLWNvbm5lY3QtcXItd3JhcCIgaWQ9ImFuZHJvaWQtY29ubmVjdC1xci13cmFwIiB0aXRsZT0iXHU3MEI5XHU1MUZCXHU2NTNFXHU1OTI3Ij48Y2FudmFzIGlkPSJhbmRyb2lkLWNvbm5lY3QtcXIiIHdpZHRoPSIxODAiIGhlaWdodD0iMTgwIj48L2NhbnZhcz48ZGl2IGNsYXNzPSJzZXR0aW5ncy1jb25uZWN0LXFyLWVtcHR5IiBpZD0iYW5kcm9pZC1jb25uZWN0LXFyLWVtcHR5Ij5cdTc1MUZcdTYyMTBcdTRFMkRcdTIwMjY8L2Rpdj48L2Rpdj48cCBjbGFzcz0ic2V0dGluZ3MtY29ubmVjdC1xci1oaW50Ij5cdTc1MjggV2FuZCBBcHAgXHU2MjZCXHU0RTAwXHU2MjZCXHVGRjBDXHU1MzczXHU1M0VGXHU0RTAwXHU5NTJFXHU1ODZCXHU1MTY1XHU2NzBEXHU1MkExXHU1NjY4XHU1NzMwXHU1NzQwXHU0RTBFXHU4RkRFXHU2M0E1XHU3ODAxXHUzMDAyPC9wPjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXBhbmVsIiBpZD0ic2V0dGluZ3MtdGFiLW5vdGlmaWNhdGlvbnMiIHJvbGU9InRhYnBhbmVsIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1wYW5lbC1oZWFkZXIiPjxoMyBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtdGl0bGUiPlx1OTAxQVx1NzdFNTwvaDM+PHAgY2xhc3M9InNldHRpbmdzLXBhbmVsLWRlc2MiPlx1OEJCRVx1N0Y2RVx1NjNEMFx1NzkzQVx1OTdGM1x1MzAwMVx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1NTQ4Q1x1NkQ0Rlx1ODlDOFx1NTY2OFx1OTAxQVx1NzdFNVx1NzY4NFx1ODg0Q1x1NEUzQVx1MzAwMjwvcD48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1ub3RpZmljYXRpb24tc2VjdGlvbiI+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1pY29uIj4nK0ooImJlbGwiLHtzaXplOjE4LHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkLXRleHQiPjxoNCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkaW5nIj5cdTkwMUFcdTc3RTVcdTUwNEZcdTU5N0Q8L2g0PjxwIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLXN1YiI+XHU2M0QwXHU3OTNBXHU5N0YzXHU0RTBFXHU1RTk0XHU3NTI4XHU1MTg1XHU5MDFBXHU3N0U1XHU2QzE0XHU2Q0UxPC9wPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1yb3ciPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10ZXh0Ij48bGFiZWwgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10aXRsZSIgZm9yPSJjZmctbm90aWYtc291bmQiPlx1NjRBRFx1NjUzRVx1NjNEMFx1NzkzQVx1OTdGMzwvbGFiZWw+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1kZXNjIj5cdTkxQ0RcdTg5ODFcdTkwMUFcdTc3RTVcdUZGMDhcdTcyNDhcdTY3MkNcdTY2RjRcdTY1QjBcdTMwMDFcdTY3NDNcdTk2NTBcdTdCNDlcdTVGODVcdTdCNDlcdUZGMDlcdTY1RjZcdTY0QURcdTY1M0VcdTY3RDRcdTU0OENcdTYzRDBcdTc5M0FcdTk3RjNcdTMwMDI8L3NwYW4+PC9kaXY+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy1zd2l0Y2giPjxpbnB1dCBpZD0iY2ZnLW5vdGlmLXNvdW5kIiB0eXBlPSJjaGVja2JveCIgY2xhc3M9InN3aXRjaC10b2dnbGUiIC8+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2xhYmVsPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXJhbmdlLXJvdyIgaWQ9Im5vdGlmLXZvbHVtZS1maWVsZCI+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy1yYW5nZS1sYWJlbCIgZm9yPSJjZmctbm90aWYtdm9sdW1lIj5cdTk3RjNcdTkxQ0Y8L2xhYmVsPjxpbnB1dCBpZD0iY2ZnLW5vdGlmLXZvbHVtZSIgdHlwZT0icmFuZ2UiIG1pbj0iMCIgbWF4PSIxMDAiIHN0ZXA9IjUiIGNsYXNzPSJzZXR0aW5ncy1yYW5nZSIgLz48c3BhbiBpZD0iY2ZnLW5vdGlmLXZvbHVtZS12YWwiIGNsYXNzPSJzZXR0aW5ncy1yYW5nZS12YWx1ZSI+ODAlPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1yb3ciPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10ZXh0Ij48bGFiZWwgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10aXRsZSIgZm9yPSJjZmctbm90aWYtYnViYmxlIj5cdTVFOTRcdTc1MjhcdTUxODVcdTkwMUFcdTc3RTVcdTZDMTRcdTZDRTE8L2xhYmVsPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtZGVzYyI+XHU1NzI4XHU5ODc1XHU5NzYyXHU5ODc2XHU5MEU4XHU1RjM5XHU1MUZBXHU2RDZFXHU1MkE4XHU5MDFBXHU3N0U1XHU2QzE0XHU2Q0UxXHUzMDAyPC9zcGFuPjwvZGl2PjxsYWJlbCBjbGFzcz0ic2V0dGluZ3Mtc3dpdGNoIj48aW5wdXQgaWQ9ImNmZy1ub3RpZi1idWJibGUiIHR5cGU9ImNoZWNrYm94IiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSIgLz48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvbGFiZWw+PC9kaXY+PC9kaXY+PGRpdiBpZD0ibmF0aXZlLXNvdW5kLXNlY3Rpb24iIGNsYXNzPSJzZXR0aW5ncy1ub3RpZmljYXRpb24tc2VjdGlvbiBoaWRkZW4iPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taWNvbiI+JytKKCJtdXNpYyIse3NpemU6MTgsc3Ryb2tlV2lkdGg6MS43fSkrJzwvc3Bhbj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQtdGV4dCI+PGg0IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWRpbmciPlx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1OTRDM1x1NThGMDwvaDQ+PHAgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24tc3ViIj5cdTkwMDlcdTYyRTkgQW5kcm9pZCBcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdTRGN0ZcdTc1MjhcdTc2ODRcdTk0QzNcdTU4RjA8L3A+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtcm93LXdpdGgtYWN0aW9uIj48c2VsZWN0IGlkPSJuYXRpdmUtc291bmQtc2VsZWN0IiBjbGFzcz0iZmllbGQtaW5wdXQgZmllbGQtc2VsZWN0Ij48L3NlbGVjdD48YnV0dG9uIGlkPSJuYXRpdmUtc291bmQtcHJldmlldyIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSBidG4td2l0aC1pY29uIiB0eXBlPSJidXR0b24iPicrSigicGxheSIse3NpemU6MTEsc3Ryb2tlV2lkdGg6MS44LGZpbGw6ImN1cnJlbnRDb2xvciJ9KSsnPHNwYW4+XHU4QkQ1XHU1NDJDPC9zcGFuPjwvYnV0dG9uPjwvZGl2PjwvZGl2PjxkaXYgaWQ9Im5hdGl2ZS1oYXB0aWMtc2VjdGlvbiIgY2xhc3M9InNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9uIGhpZGRlbiI+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1pY29uIj4nK0ooInZpYnJhdGUiLHtzaXplOjE4LHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkLXRleHQiPjxoNCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkaW5nIj5cdTg5RTZcdTYxMUZcdTUzQ0RcdTk5ODg8L2g0PjxwIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLXN1YiI+XHU2MzA5XHU5NEFFXHU2NENEXHU0RjVDXHU1NDhDXHU0RUZCXHU1MkExXHU1QjhDXHU2MjEwXHU2NUY2XHU2M0QwXHU0RjlCXHU2MzJGXHU1MkE4XHU1M0NEXHU5OTg4PC9wPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1yb3ciPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10ZXh0Ij48bGFiZWwgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10aXRsZSIgZm9yPSJjZmctaGFwdGljLWVuYWJsZWQiPlx1NTQyRlx1NzUyOFx1ODlFNlx1NjExRlx1NTNDRFx1OTk4ODwvbGFiZWw+PC9kaXY+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy1zd2l0Y2giPjxpbnB1dCBpZD0iY2ZnLWhhcHRpYy1lbmFibGVkIiB0eXBlPSJjaGVja2JveCIgY2xhc3M9InN3aXRjaC10b2dnbGUiIC8+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2xhYmVsPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9uIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWljb24iPicrSigiZ2xvYmUiLHtzaXplOjE4LHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkLXRleHQiPjxoNCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkaW5nIj5cdTZENEZcdTg5QzhcdTU2NjhcdTkwMUFcdTc3RTU8L2g0PjxwIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLXN1YiI+XHU2NzY1XHU4MUVBXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHU0RTJEXHU1RkMzXHU3Njg0XHU1RjM5XHU3QTk3PC9wPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWxhYmVsIj5cdTYzODhcdTY3NDNcdTcyQjZcdTYwMDE8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXZhbHVlIiBpZD0ibm90aWZpY2F0aW9uLXBlcm1pc3Npb24tc3RhdHVzIj4tPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXVwZGF0ZS1hY3Rpb25zIj48YnV0dG9uIGlkPSJub3RpZmljYXRpb24tcmVxdWVzdC1idG4iIGNsYXNzPSJidG4gYnRuLXByaW1hcnkgYnRuLXNtIGhpZGRlbiIgdHlwZT0iYnV0dG9uIj5cdTYzODhcdTY3NDNcdTkwMUFcdTc3RTU8L2J1dHRvbj48YnV0dG9uIGlkPSJub3RpZmljYXRpb24tcmVzZXQtYnRuIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20gaGlkZGVuIiB0eXBlPSJidXR0b24iPlx1OTFDRFx1NjVCMFx1NjM4OFx1Njc0MzwvYnV0dG9uPjxidXR0b24gaWQ9Im5vdGlmaWNhdGlvbi10ZXN0LWJ0biIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSIgdHlwZT0iYnV0dG9uIj5cdTUzRDFcdTkwMDFcdTZENEJcdThCRDVcdTkwMUFcdTc3RTU8L2J1dHRvbj48YnV0dG9uIGlkPSJub3RpZmljYXRpb24tdGVzdC1kZWxheS1idG4iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSIgdHlwZT0iYnV0dG9uIj4xMCBcdTc5RDJcdTU0MEVcdTUzRDFcdTkwMDE8L2J1dHRvbj48L2Rpdj48cCBpZD0ibm90aWZpY2F0aW9uLXRlc3QtbWVzc2FnZSIgY2xhc3M9ImhpbnQgaGlkZGVuIj48L3A+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtcGFuZWwiIGlkPSJzZXR0aW5ncy10YWItZ2VuZXJhbCIgcm9sZT0idGFicGFuZWwiPjxkaXYgY2xhc3M9InNldHRpbmdzLXBhbmVsLWhlYWRlciI+PGgzIGNsYXNzPSJzZXR0aW5ncy1wYW5lbC10aXRsZSI+XHU1N0ZBXHU2NzJDXHU5MTREXHU3RjZFPC9oMz48cCBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtZGVzYyI+XHU5MTREXHU3RjZFXHU2NzBEXHU1MkExXHU3NkQxXHU1NDJDXHU1NzMwXHU1NzQwXHUzMDAxXHU5RUQ4XHU4QkE0XHU2QTIxXHU1RjBGXHUzMDAxXHU4QkVEXHU4QTAwXHU1NDhDXHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1XHUzMDAyPC9wPjwvZGl2PjxkaXYgY2xhc3M9ImZpZWxkLXJvdyI+PGRpdiBjbGFzcz0iZmllbGQiPjxsYWJlbCBjbGFzcz0iZmllbGQtbGFiZWwiIGZvcj0iY2ZnLWhvc3QiPlx1NzZEMVx1NTQyQ1x1NTczMFx1NTc0MCAoaG9zdCk8L2xhYmVsPjxpbnB1dCBpZD0iY2ZnLWhvc3QiIHR5cGU9InRleHQiIGNsYXNzPSJmaWVsZC1pbnB1dCIgcGxhY2Vob2xkZXI9IjEyNy4wLjAuMSIgLz48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJjZmctcG9ydCI+XHU3QUVGXHU1M0UzIChwb3J0KTwvbGFiZWw+PGlucHV0IGlkPSJjZmctcG9ydCIgdHlwZT0ibnVtYmVyIiBjbGFzcz0iZmllbGQtaW5wdXQiIHBsYWNlaG9sZGVyPSI4NDQzIiBtaW49IjEiIG1heD0iNjU1MzUiIC8+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXJvdyI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRleHQiPjxsYWJlbCBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRpdGxlIiBmb3I9ImNmZy1odHRwcyI+XHU1NDJGXHU3NTI4IEhUVFBTPC9sYWJlbD48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLWRlc2MiPlx1NEY3Rlx1NzUyOFx1ODFFQVx1N0I3RVx1NTQwRFx1OEJDMVx1NEU2Nlx1NTJBMFx1NUJDNlx1NkQ0Rlx1ODlDOFx1NTY2OFx1NTIzMFx1NjcwRFx1NTJBMVx1NzY4NFx1OEZERVx1NjNBNVx1RkYwQ2hvc3QgXHU0RTNBXHU5NzVFIDEyNy4wLjAuMSBcdTY1RjZcdTVFRkFcdThCQUVcdTVGMDBcdTU0MkZcdTMwMDI8L3NwYW4+PC9kaXY+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy1zd2l0Y2giPjxpbnB1dCBpZD0iY2ZnLWh0dHBzIiB0eXBlPSJjaGVja2JveCIgY2xhc3M9InN3aXRjaC10b2dnbGUiIC8+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2xhYmVsPjwvZGl2PjxkaXYgY2xhc3M9ImZpZWxkLXJvdyI+PGRpdiBjbGFzcz0iZmllbGQiPjxsYWJlbCBjbGFzcz0iZmllbGQtbGFiZWwiIGZvcj0iY2ZnLW1vZGUiPlx1OUVEOFx1OEJBNFx1NjI2N1x1ODg0Q1x1NkEyMVx1NUYwRjwvbGFiZWw+PHNlbGVjdCBpZD0iY2ZnLW1vZGUiIGNsYXNzPSJmaWVsZC1pbnB1dCI+PG9wdGlvbiB2YWx1ZT0iZGVmYXVsdCI+ZGVmYXVsdDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9ImFzc2lzdCI+YXNzaXN0PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iYWdlbnQiPmFnZW50PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iYWdlbnQtbWF4Ij5hZ2VudC1tYXg8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJhdXRvLWVkaXQiPmF1dG8tZWRpdDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9ImZ1bGwtYWNjZXNzIj5mdWxsLWFjY2Vzczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9Im5hdGl2ZSI+bmF0aXZlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0ibWFuYWdlZCI+bWFuYWdlZDwvb3B0aW9uPjwvc2VsZWN0PjwvZGl2PjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9ImNmZy1sYW5ndWFnZSI+XHU1NkRFXHU1OTBEXHU4QkVEXHU4QTAwPC9sYWJlbD48c2VsZWN0IGlkPSJjZmctbGFuZ3VhZ2UiIGNsYXNzPSJmaWVsZC1pbnB1dCI+PG9wdGlvbiB2YWx1ZT0iIj5cdTgxRUFcdTUyQThcdUZGMDhcdTRFMERcdTYzMDdcdTVCOUFcdUZGMDk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJcdTRFMkRcdTY1ODciPlx1NEUyRFx1NjU4Nzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9IkVuZ2xpc2giPkVuZ2xpc2g8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJcdTY1RTVcdTY3MkNcdThBOUUiPlx1NjVFNVx1NjcyQ1x1OEE5RTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9Ilx1RDU1Q1x1QUQ2RFx1QzVCNCI+XHVENTVDXHVBRDZEXHVDNUI0PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iRXNwYVx4RjFvbCI+RXNwYVx4RjFvbDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9IkZyYW5ceEU3YWlzIj5GcmFuXHhFN2Fpczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9IkRldXRzY2giPkRldXRzY2g8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJcdTA0MjBcdTA0NDNcdTA0NDFcdTA0NDFcdTA0M0FcdTA0MzhcdTA0MzkiPlx1MDQyMFx1MDQ0M1x1MDQ0MVx1MDQ0MVx1MDQzQVx1MDQzOFx1MDQzOTwvb3B0aW9uPjwvc2VsZWN0PjwvZGl2PjwvZGl2PjxwIGNsYXNzPSJmaWVsZC1oaW50IiBzdHlsZT0ibWFyZ2luLXRvcDotNHB4OyI+XHU4QkJFXHU3RjZFXHU1NkRFXHU1OTBEXHU4QkVEXHU4QTAwXHU1NDBFXHVGRjBDQ2xhdWRlIFx1NUMwNlx1NUMzRFx1OTFDRlx1NEY3Rlx1NzUyOFx1NjMwN1x1NUI5QVx1OEJFRFx1OEEwMFx1NTZERVx1NTkwRFx1MzAwMjwvcD48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJjZmctc3RydWN0dXJlZC1ydW5uZXIiPlx1N0VEM1x1Njc4NFx1NTMxNlx1NEYxQVx1OEJERCBSdW5uZXI8L2xhYmVsPjxzZWxlY3QgaWQ9ImNmZy1zdHJ1Y3R1cmVkLXJ1bm5lciIgY2xhc3M9ImZpZWxkLWlucHV0Ij48b3B0aW9uIHZhbHVlPSJzZGsiPlNES1x1RkYwOEBhbnRocm9waWMtYWkvY2xhdWRlLWFnZW50LXNka1x1RkYwQ1x1OUVEOFx1OEJBNFx1RkYwOTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9ImNsaSI+Q0xJXHVGRjA4c3Bhd24gY2xhdWRlIC1wXHVGRjA5PC9vcHRpb24+PC9zZWxlY3Q+PHAgY2xhc3M9ImZpZWxkLWhpbnQiIHN0eWxlPSJtYXJnaW4tdG9wOjRweDsiPlNESyBcdTZBMjFcdTVGMEZcdTRGN0ZcdTc1MjhcdTVCOThcdTY1QjkgQWdlbnQgU0RLIFx1NjZGRlx1NEVFMyBDTEkgc3VicHJvY2Vzc1x1RkYwQ1x1NjNBNVx1NTNFM1x1NjZGNFx1NjU3NFx1NkQwMVx1RkYwQ1x1NTI5Rlx1ODBGRFx1N0I0OVx1NEVGN1x1MzAwMlx1NEZERFx1NUI1OFx1NTQwRVx1NUJGOVx1NjVCMFx1NUVGQVx1NEYxQVx1OEJERFx1N0FDQlx1NTM3M1x1NzUxRlx1NjU0OFx1MzAwMjwvcD48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtcm93Ij48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGV4dCI+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGl0bGUiIGZvcj0iY2ZnLWluaGVyaXQtZW52Ij5cdTdFRTdcdTYyN0ZcdTczQUZcdTU4ODNcdTUzRDhcdTkxQ0Y8L2xhYmVsPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtZGVzYyI+XHU1NDJGXHU1MkE4IFBUWSAvIFx1N0VEM1x1Njc4NFx1NTMxNlx1NUI1MFx1OEZEQlx1N0EwQlx1NjVGNlx1RkYwQ1x1NjI4QVx1NUY1M1x1NTI0RFx1NjcwRFx1NTJBMVx1OEZEQlx1N0EwQlx1NzY4NFx1NzNBRlx1NTg4M1x1NTNEOFx1OTFDRlx1NEYyMFx1N0VEOSBjbGF1ZGUgLyBjb2RleFx1MzAwMlx1NTE3M1x1OTVFRFx1NTQwRVx1NUI1MFx1OEZEQlx1N0EwQlx1NEVDNVx1ODNCN1x1NUY5N1x1NjcwMFx1NUMwRlx1NTNFRlx1NzUyOFx1NzNBRlx1NTg4M1x1RkYwOFBBVEgvSE9NRS9TSEVMTC9MQU5HL1RFUk0gXHU3QjQ5XHVGRjA5XHVGRjBDXHU1M0VGXHU3NTI4XHU0RThFXHU5Njk0XHU3OUJCIEFQSSBrZXkgXHU3QjQ5XHU2NTRGXHU2MTFGXHU1MUVEXHU2MzZFXHUzMDAyPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1hc2lkZSI+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGlkPSJjZmctdmlldy1lbnYtYnRuIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkgYnRuLXNtIiB0aXRsZT0iXHU2N0U1XHU3NzBCXHU1QjlFXHU5NjQ1XHU0RjFBXHU2Q0U4XHU1MTY1XHU1MjMwXHU1QjUwXHU4RkRCXHU3QTBCXHU3Njg0XHU3M0FGXHU1ODgzXHU1M0Q4XHU5MUNGIj5cdTY3RTVcdTc3MEI8L2J1dHRvbj48bGFiZWwgY2xhc3M9InNldHRpbmdzLXN3aXRjaCI+PGlucHV0IGlkPSJjZmctaW5oZXJpdC1lbnYiIHR5cGU9ImNoZWNrYm94IiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSIgLz48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvbGFiZWw+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZmllbGQiPjxsYWJlbCBjbGFzcz0iZmllbGQtbGFiZWwiIGZvcj0iY2ZnLWRlZmF1bHQtbW9kZWwiPlx1OUVEOFx1OEJBNFx1NkEyMVx1NTc4QjwvbGFiZWw+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtcm93LXdpdGgtYWN0aW9uIj48c2VsZWN0IGlkPSJjZmctZGVmYXVsdC1tb2RlbCIgY2xhc3M9ImZpZWxkLWlucHV0IGZpZWxkLXNlbGVjdCI+PG9wdGlvbiB2YWx1ZT0iIj5cdThEREZcdTk2OEYgQ2xhdWRlIENvZGUgXHU5RUQ4XHU4QkE0PC9vcHRpb24+PC9zZWxlY3Q+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGlkPSJjZmctZGVmYXVsdC1tb2RlbC1yZWZyZXNoIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkgYnRuLXNtIiB0aXRsZT0iXHU1MjM3XHU2NUIwXHU2QTIxXHU1NzhCXHU1MjE3XHU4ODY4Ij5cdTUyMzdcdTY1QjA8L2J1dHRvbj48L2Rpdj48cCBjbGFzcz0iZmllbGQtaGludCIgaWQ9ImNmZy1kZWZhdWx0LW1vZGVsLXZlcnNpb24iPlx1NjVCMFx1NUVGQVx1NEYxQVx1OEJERFx1NjVGNlx1OUVEOFx1OEJBNFx1NEY3Rlx1NzUyOFx1OEJFNVx1NkEyMVx1NTc4Qlx1RkYxQlx1OEZEMFx1ODg0Q1x1NEUyRFx1NzY4NFx1NEYxQVx1OEJERFx1NTNFRlx1NTcyOFx1OEY5M1x1NTE2NVx1Njg0Nlx1NTIwN1x1NjM2Mlx1MzAwMjwvcD48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJjZmctY3dkIj5cdTlFRDhcdThCQTRcdTVERTVcdTRGNUNcdTc2RUVcdTVGNTU8L2xhYmVsPjxpbnB1dCBpZD0iY2ZnLWN3ZCIgdHlwZT0idGV4dCIgY2xhc3M9ImZpZWxkLWlucHV0IiBwbGFjZWhvbGRlcj0iL2hvbWUvdXNlciIgLz48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJjZmctc2hlbGwiPlNoZWxsPC9sYWJlbD48aW5wdXQgaWQ9ImNmZy1zaGVsbCIgdHlwZT0idGV4dCIgY2xhc3M9ImZpZWxkLWlucHV0IiBwbGFjZWhvbGRlcj0iL2Jpbi9iYXNoIiAvPjwvZGl2PicrKHR5cGVvZiBXYW5kTmF0aXZlPCJ1IiYmdHlwZW9mIFdhbmROYXRpdmUuZ2V0QXBwSWNvbj09ImZ1bmN0aW9uIj8nPGRpdiBjbGFzcz0ic2V0dGluZ3MtYXBwLWljb24tYmxvY2siPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taWNvbiI+JytKKCJwYWxldHRlIix7c2l6ZToxOCxzdHJva2VXaWR0aDoxLjd9KSsnPC9zcGFuPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZC10ZXh0Ij48aDQgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZGluZyI+XHU1RTk0XHU3NTI4XHU1NkZFXHU2ODA3PC9oND48cCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1zdWIiPlx1OTAwOVx1NjJFOSBBcHAgXHU1NDJGXHU1MkE4XHU1NjY4XHU1NkZFXHU2ODA3XHVGRjBDXHU4RkQ0XHU1NkRFXHU2ODRDXHU5NzYyXHU1NDBFXHU3NTFGXHU2NTQ4PC9wPjwvZGl2PjwvZGl2PjxkaXYgaWQ9ImFwcC1pY29uLXBpY2tlciIgY2xhc3M9InNldHRpbmdzLWFwcC1pY29uLXBpY2tlciI+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJzZXR0aW5ncy1hcHAtaWNvbi1vcHRpb24iIGRhdGEtaWNvbj0ic2hvcnRoYWlyIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtYXBwLWljb24tcHJldmlldyI+Jyt3aS51c2VyKyc8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLWFwcC1pY29uLWxhYmVsIj5cdThENUJcdTUzNUFcdTg2NEVcdTU5OUU8L3NwYW4+PC9idXR0b24+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJzZXR0aW5ncy1hcHAtaWNvbi1vcHRpb24iIGRhdGEtaWNvbj0iZ2FyZmllbGQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1hcHAtaWNvbi1wcmV2aWV3Ij4nK3dpLmFzc2lzdGFudCsnPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1hcHAtaWNvbi1sYWJlbCI+XHU1MkU0XHU1MkIzXHU1MjFEXHU0RThDPC9zcGFuPjwvYnV0dG9uPjwvZGl2PjxwIGlkPSJhcHAtaWNvbi1tZXNzYWdlIiBjbGFzcz0iaGludCBoaWRkZW4iPjwvcD48L2Rpdj4nOiIiKSsnPGRpdiBjbGFzcz0ic2V0dGluZ3MtYWN0aW9ucyBzZXR0aW5ncy1hY3Rpb25zLXN0aWNreSI+PGJ1dHRvbiBpZD0ic2F2ZS1jb25maWctYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IGJ0bi1ibG9jayI+XHU0RkREXHU1QjU4XHU5MTREXHU3RjZFPC9idXR0b24+PC9kaXY+PHAgaWQ9ImNvbmZpZy1tZXNzYWdlIiBjbGFzcz0iaGludCBoaWRkZW4gc2V0dGluZ3Mtc3RhdHVzLW1lc3NhZ2UiPjwvcD48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1wYW5lbCIgaWQ9InNldHRpbmdzLXRhYi1zZWN1cml0eSIgcm9sZT0idGFicGFuZWwiPjxkaXYgY2xhc3M9InNldHRpbmdzLXBhbmVsLWhlYWRlciI+PGgzIGNsYXNzPSJzZXR0aW5ncy1wYW5lbC10aXRsZSI+XHU1Qjg5XHU1MTY4PC9oMz48cCBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtZGVzYyI+XHU3QkExXHU3NDA2XHU3NjdCXHU1RjU1XHU1QkM2XHU3ODAxXHU0RTBFIFNTTCBcdThCQzFcdTRFNjZcdUZGMENcdTY1NEZcdTYxMUZcdTUzRDhcdTY2RjRcdThCRjdcdTc4NkVcdThCQTRcdTU0MEVcdTUxOERcdTRGRERcdTVCNThcdTMwMDI8L3A+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtY2FyZCI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtY2FyZC1oZWFkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtY2FyZC1pY29uIj5cdXsxRjUxMn08L3NwYW4+PGRpdiBjbGFzcz0ic2V0dGluZ3MtY2FyZC1oZWFkLXRleHQiPjxoMyBjbGFzcz0ic2V0dGluZ3MtY2FyZC10aXRsZSI+XHU0RkVFXHU2NTM5XHU1QkM2XHU3ODAxPC9oMz48cCBjbGFzcz0ic2V0dGluZ3MtY2FyZC1kZXNjIj5cdTgxRjNcdTVDMTEgNiBcdTRFMkFcdTVCNTdcdTdCMjZcdUZGMUJcdTRGRERcdTVCNThcdTU0MEVcdTRFMEJcdTZCMjFcdTc2N0JcdTVGNTVcdTc1MUZcdTY1NDhcdTMwMDI8L3A+PC9kaXY+PC9kaXY+PGZvcm0gaWQ9ImNoYW5nZS1wYXNzd29yZC1mb3JtIiBhdXRvY29tcGxldGU9Im9uIiBvbnN1Ym1pdD0icmV0dXJuIGZhbHNlOyI+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InVzZXJuYW1lIiBhdXRvY29tcGxldGU9InVzZXJuYW1lIiB2YWx1ZT0id2FuZCIgdGFiaW5kZXg9Ii0xIiBhcmlhLWhpZGRlbj0idHJ1ZSIgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTk5OTlweDt3aWR0aDoxcHg7aGVpZ2h0OjFweDtvcGFjaXR5OjA7cG9pbnRlci1ldmVudHM6bm9uZSIgcmVhZG9ubHkgLz48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJuZXctcGFzc3dvcmQiPlx1NjVCMFx1NUJDNlx1NzgwMTwvbGFiZWw+PGlucHV0IGlkPSJuZXctcGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBjbGFzcz0iZmllbGQtaW5wdXQiIHBsYWNlaG9sZGVyPSJcdThGOTNcdTUxNjVcdTY1QjBcdTVCQzZcdTc4MDFcdUZGMDhcdTgxRjNcdTVDMTEgNiBcdTRFMkFcdTVCNTdcdTdCMjZcdUZGMDkiIGF1dG9jb21wbGV0ZT0ibmV3LXBhc3N3b3JkIiAvPjwvZGl2PjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9ImNvbmZpcm0tcGFzc3dvcmQiPlx1Nzg2RVx1OEJBNFx1NUJDNlx1NzgwMTwvbGFiZWw+PGlucHV0IGlkPSJjb25maXJtLXBhc3N3b3JkIiB0eXBlPSJwYXNzd29yZCIgY2xhc3M9ImZpZWxkLWlucHV0IiBwbGFjZWhvbGRlcj0iXHU1MThEXHU2QjIxXHU4RjkzXHU1MTY1XHU2NUIwXHU1QkM2XHU3ODAxIiBhdXRvY29tcGxldGU9Im5ldy1wYXNzd29yZCIgLz48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1jYXJkLWFjdGlvbnMiPjxidXR0b24gaWQ9InNhdmUtcGFzc3dvcmQtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IiB0eXBlPSJzdWJtaXQiPlx1NEZERFx1NUI1OFx1NUJDNlx1NzgwMTwvYnV0dG9uPjwvZGl2PjxwIGlkPSJzZXR0aW5ncy1lcnJvciIgY2xhc3M9ImVycm9yLW1lc3NhZ2UgaGlkZGVuIj48L3A+PHAgaWQ9InNldHRpbmdzLXN1Y2Nlc3MiIGNsYXNzPSJoaW50IHNldHRpbmdzLXN1Y2Nlc3MtbWVzc2FnZSBoaWRkZW4iPjwvcD48L2Zvcm0+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtY2FyZCI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtY2FyZC1oZWFkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtY2FyZC1pY29uIj5cdXsxRjUxMH08L3NwYW4+PGRpdiBjbGFzcz0ic2V0dGluZ3MtY2FyZC1oZWFkLXRleHQiPjxoMyBjbGFzcz0ic2V0dGluZ3MtY2FyZC10aXRsZSI+U1NMIFx1OEJDMVx1NEU2NjwvaDM+PHAgY2xhc3M9InNldHRpbmdzLWNhcmQtZGVzYyIgaWQ9ImNlcnQtc3RhdHVzIj5cdTUyQTBcdThGN0RcdTRFMkQuLi48L3A+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZmllbGQiPjxsYWJlbCBjbGFzcz0iZmllbGQtbGFiZWwiIGZvcj0iY2VydC1rZXktZmlsZSI+XHU3OUMxXHU5NEE1XHU2NTg3XHU0RUY2ICgua2V5KTwvbGFiZWw+PGRpdiBjbGFzcz0iZmlsZS1waWNrZXIiPjxpbnB1dCBpZD0iY2VydC1rZXktZmlsZSIgdHlwZT0iZmlsZSIgY2xhc3M9ImZpbGUtcGlja2VyLWlucHV0IiBhY2NlcHQ9Ii5rZXksLnBlbSIgLz48bGFiZWwgZm9yPSJjZXJ0LWtleS1maWxlIiBjbGFzcz0iZmlsZS1waWNrZXItdHJpZ2dlciI+PHN2ZyBjbGFzcz0iZmlsZS1waWNrZXItaWNvbiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNMjEuNDQgMTEuMDVsLTkuMTkgOS4xOWE2IDYgMCAwIDEtOC40OS04LjQ5bDkuMTktOS4xOWE0IDQgMCAwIDEgNS42NiA1LjY2bC05LjIgOS4xOWEyIDIgMCAwIDEtMi44My0yLjgzbDguNDktOC40OCI+PC9wYXRoPjwvc3ZnPjxzcGFuIGNsYXNzPSJmaWxlLXBpY2tlci1sYWJlbCI+XHU5MDA5XHU2MkU5XHU3OUMxXHU5NEE1PC9zcGFuPjwvbGFiZWw+PHNwYW4gY2xhc3M9ImZpbGUtcGlja2VyLW5hbWUiIGRhdGEtZGVmYXVsdD0iXHU2NzJBXHU5MDA5XHU2MkU5XHU2NTg3XHU0RUY2Ij5cdTY3MkFcdTkwMDlcdTYyRTlcdTY1ODdcdTRFRjY8L3NwYW4+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZmllbGQiPjxsYWJlbCBjbGFzcz0iZmllbGQtbGFiZWwiIGZvcj0iY2VydC1jZXJ0LWZpbGUiPlx1OEJDMVx1NEU2Nlx1NjU4N1x1NEVGNiAoLmNydC8ucGVtKTwvbGFiZWw+PGRpdiBjbGFzcz0iZmlsZS1waWNrZXIiPjxpbnB1dCBpZD0iY2VydC1jZXJ0LWZpbGUiIHR5cGU9ImZpbGUiIGNsYXNzPSJmaWxlLXBpY2tlci1pbnB1dCIgYWNjZXB0PSIuY3J0LC5wZW0sLmNlcnQiIC8+PGxhYmVsIGZvcj0iY2VydC1jZXJ0LWZpbGUiIGNsYXNzPSJmaWxlLXBpY2tlci10cmlnZ2VyIj48c3ZnIGNsYXNzPSJmaWxlLXBpY2tlci1pY29uIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik0xNCAySDZhMiAyIDAgMCAwLTIgMnYxNmEyIDIgMCAwIDAgMiAyaDEyYTIgMiAwIDAgMCAyLTJWOHoiPjwvcGF0aD48cG9seWxpbmUgcG9pbnRzPSIxNCAyIDE0IDggMjAgOCI+PC9wb2x5bGluZT48L3N2Zz48c3BhbiBjbGFzcz0iZmlsZS1waWNrZXItbGFiZWwiPlx1OTAwOVx1NjJFOVx1OEJDMVx1NEU2Njwvc3Bhbj48L2xhYmVsPjxzcGFuIGNsYXNzPSJmaWxlLXBpY2tlci1uYW1lIiBkYXRhLWRlZmF1bHQ9Ilx1NjcyQVx1OTAwOVx1NjJFOVx1NjU4N1x1NEVGNiI+XHU2NzJBXHU5MDA5XHU2MkU5XHU2NTg3XHU0RUY2PC9zcGFuPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLWNhcmQtYWN0aW9ucyI+PGJ1dHRvbiBpZD0idXBsb2FkLWNlcnQtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5Ij5cdTRFMEFcdTRGMjBcdThCQzFcdTRFNjY8L2J1dHRvbj48L2Rpdj48cCBpZD0iY2VydC1tZXNzYWdlIiBjbGFzcz0iaGludCBoaWRkZW4iPjwvcD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1wYW5lbCIgaWQ9InNldHRpbmdzLXRhYi1wcmVzZXRzIiByb2xlPSJ0YWJwYW5lbCI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtaGVhZGVyIj48aDMgY2xhc3M9InNldHRpbmdzLXBhbmVsLXRpdGxlIj5cdTU0N0RcdTRFRTRcdTk4ODRcdThCQkU8L2gzPjxwIGNsYXNzPSJzZXR0aW5ncy1wYW5lbC1kZXNjIj5cdTVGNTNcdTUyNERcdTU0N0RcdTRFRTRcdTk4ODRcdThCQkVcdTRFQ0UgY29uZmlnLmpzb24gXHU4QkZCXHU1M0Q2XHVGRjBDXHU1M0VGXHU1NzI4XHU4RkQ5XHU5MUNDXHU1RkVCXHU5MDFGXHU2N0U1XHU3NzBCXHU1REYyXHU2NzA5XHU5MTREXHU3RjZFXHUzMDAyPC9wPjwvZGl2PjxkaXYgaWQ9InByZXNldHMtbGlzdCIgY2xhc3M9InByZXNldHMtbGlzdCI+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtcGFuZWwiIGlkPSJzZXR0aW5ncy10YWItZGlzcGxheSIgcm9sZT0idGFicGFuZWwiPjxkaXYgY2xhc3M9InNldHRpbmdzLXBhbmVsLWhlYWRlciI+PGgzIGNsYXNzPSJzZXR0aW5ncy1wYW5lbC10aXRsZSI+XHU2NjNFXHU3OTNBPC9oMz48cCBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtZGVzYyI+XHU2M0E3XHU1MjM2XHU4MDRBXHU1OTI5XHU4OUM2XHU1NkZFXHU5MUNDXHU0RTBEXHU1NDBDXHU1MzYxXHU3MjQ3XHU3QzdCXHU1NzhCXHU3Njg0XHU5RUQ4XHU4QkE0XHU1QzU1XHU1RjAwXHU3MkI2XHU2MDAxXHUzMDAyPC9wPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24tdGl0bGUiPlx1NTM2MVx1NzI0N1x1OUVEOFx1OEJBNFx1NUM1NVx1NUYwMFx1NzJCNlx1NjAwMTwvZGl2PjxwIGNsYXNzPSJoaW50IHNldHRpbmdzLWlubGluZS1oaW50Ij5cdThCQkVcdTdGNkVcdTdFRDNcdTY3ODRcdTUzMTZcdTgwNEFcdTU5MjlcdTg5QzZcdTU2RkVcdTRFMkRcdTU0MDRcdTdDN0JcdTUzNjFcdTcyNDdcdTc2ODRcdTlFRDhcdThCQTRcdTVDNTVcdTVGMDAvXHU2Mjk4XHU1M0UwXHU3MkI2XHU2MDAxXHUzMDAyXHU2MjRCXHU1MkE4XHU2NENEXHU0RjVDXHU3Njg0XHU1QzU1XHU1RjAwXHU3MkI2XHU2MDAxXHU0RjE4XHU1MTQ4XHU0RThFXHU2QjY0XHU5RUQ4XHU4QkE0XHU4QkJFXHU3RjZFXHUzMDAyPC9wPjxkaXYgY2xhc3M9InN3aXRjaC1jYXJkLWxpc3QiPjxsYWJlbCBjbGFzcz0ic3dpdGNoLWNhcmQiIGZvcj0iY2ZnLWNhcmQtZWRpdCI+PGRpdiBjbGFzcz0ic3dpdGNoLWNhcmQtaGVhZGVyIj48c3BhbiBjbGFzcz0ic3dpdGNoLWNhcmQtdGl0bGUiPlx1N0YxNlx1OEY5MVx1NTM2MVx1NzI0NyAoRWRpdC9Xcml0ZSk8L3NwYW4+PGlucHV0IGlkPSJjZmctY2FyZC1lZGl0IiB0eXBlPSJjaGVja2JveCIgY2xhc3M9InN3aXRjaC10b2dnbGUiIC8+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzd2l0Y2gtY2FyZC1kZXNjIj5cdTY1ODdcdTRFRjZcdTdGMTZcdThGOTFcdTU0OENcdTUxOTlcdTUxNjVcdTY0Q0RcdTRGNUNcdTc2ODQgZGlmZiBcdTg5QzZcdTU2RkU8L2Rpdj48L2xhYmVsPjxsYWJlbCBjbGFzcz0ic3dpdGNoLWNhcmQiIGZvcj0iY2ZnLWNhcmQtaW5saW5lIj48ZGl2IGNsYXNzPSJzd2l0Y2gtY2FyZC1oZWFkZXIiPjxzcGFuIGNsYXNzPSJzd2l0Y2gtY2FyZC10aXRsZSI+XHU1MTg1XHU4MDU0XHU1REU1XHU1MTc3IChSZWFkL0dsb2IvR3JlcCk8L3NwYW4+PGlucHV0IGlkPSJjZmctY2FyZC1pbmxpbmUiIHR5cGU9ImNoZWNrYm94IiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSIgLz48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InN3aXRjaC1jYXJkLWRlc2MiPlx1NjU4N1x1NEVGNlx1OEJGQlx1NTNENlx1MzAwMVx1NjQxQ1x1N0QyMlx1N0I0OVx1NURFNVx1NTE3N1x1NzY4NFx1N0VEM1x1Njc5QzwvZGl2PjwvbGFiZWw+PGxhYmVsIGNsYXNzPSJzd2l0Y2gtY2FyZCIgZm9yPSJjZmctY2FyZC10ZXJtaW5hbCI+PGRpdiBjbGFzcz0ic3dpdGNoLWNhcmQtaGVhZGVyIj48c3BhbiBjbGFzcz0ic3dpdGNoLWNhcmQtdGl0bGUiPlx1N0VDOFx1N0FFRlx1OEY5M1x1NTFGQSAoQmFzaCk8L3NwYW4+PGlucHV0IGlkPSJjZmctY2FyZC10ZXJtaW5hbCIgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIiAvPjxzcGFuIGNsYXNzPSJzd2l0Y2gtc2xpZGVyIj48L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ic3dpdGNoLWNhcmQtZGVzYyI+XHU1NDdEXHU0RUU0XHU4ODRDXHU2MjY3XHU4ODRDXHU3RUQzXHU2NzlDPC9kaXY+PC9sYWJlbD48bGFiZWwgY2xhc3M9InN3aXRjaC1jYXJkIiBmb3I9ImNmZy1jYXJkLXRoaW5raW5nIj48ZGl2IGNsYXNzPSJzd2l0Y2gtY2FyZC1oZWFkZXIiPjxzcGFuIGNsYXNzPSJzd2l0Y2gtY2FyZC10aXRsZSI+XHU2MDFEXHU4MDAzXHU4RkM3XHU3QTBCIChUaGlua2luZyk8L3NwYW4+PGlucHV0IGlkPSJjZmctY2FyZC10aGlua2luZyIgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIiAvPjxzcGFuIGNsYXNzPSJzd2l0Y2gtc2xpZGVyIj48L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ic3dpdGNoLWNhcmQtZGVzYyI+Q2xhdWRlIFx1NzY4NFx1NjAxRFx1ODAwM1x1OEZDN1x1N0EwQlx1NTc1NzwvZGl2PjwvbGFiZWw+PGxhYmVsIGNsYXNzPSJzd2l0Y2gtY2FyZCIgZm9yPSJjZmctY2FyZC10b29sZ3JvdXAiPjxkaXYgY2xhc3M9InN3aXRjaC1jYXJkLWhlYWRlciI+PHNwYW4gY2xhc3M9InN3aXRjaC1jYXJkLXRpdGxlIj5cdTVERTVcdTUxNzdcdTdFQzQ8L3NwYW4+PGlucHV0IGlkPSJjZmctY2FyZC10b29sZ3JvdXAiIHR5cGU9ImNoZWNrYm94IiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSIgLz48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InN3aXRjaC1jYXJkLWRlc2MiPlx1OEZERVx1N0VFRFx1NTQwQ1x1N0M3Qlx1NURFNVx1NTE3N1x1OEMwM1x1NzUyOFx1NzY4NFx1NjI5OFx1NTNFMFx1N0VDNDwvZGl2PjwvbGFiZWw+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtYWN0aW9ucyBzZXR0aW5ncy1hY3Rpb25zLXN0aWNreSI+PGJ1dHRvbiBpZD0ic2F2ZS1kaXNwbGF5LWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSBidG4tYmxvY2siPlx1NEZERFx1NUI1OFx1NjYzRVx1NzkzQVx1OEJCRVx1N0Y2RTwvYnV0dG9uPjwvZGl2PjxwIGlkPSJkaXNwbGF5LW1lc3NhZ2UiIGNsYXNzPSJoaW50IGhpZGRlbiBzZXR0aW5ncy1zdGF0dXMtbWVzc2FnZSI+PC9wPjwvZGl2PjwvZGl2PjwvZGl2Pjwvc2VjdGlvbj4nfWZ1bmN0aW9uIGlnKGUpe3ZhciB0PVhlKCk7cmV0dXJuIGUuc2VsZWN0ZWRJZD8iIjonPGRpdiBjbGFzcz0iZm9sZGVyLXBpY2tlci1jb21wYWN0IiBpZD0iZm9sZGVyLXBpY2tlci1jb250YWluZXIiPjxkaXYgY2xhc3M9ImZvbGRlci1waWNrZXItY29tcGFjdC1yb3ciPjxzcGFuIGNsYXNzPSJmb2xkZXItcGlja2VyLWNvbXBhY3QtaWNvbiI+JytKKCJmb2xkZXIiLHtzaXplOjEzLHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGlucHV0IHR5cGU9InRleHQiIGlkPSJmb2xkZXItcGlja2VyLWlucHV0IiBjbGFzcz0iZm9sZGVyLXBpY2tlci1jb21wYWN0LWlucHV0IiB2YWx1ZT0iJytwKHQpKyciIHBsYWNlaG9sZGVyPSJcdTVERTVcdTRGNUNcdTc2RUVcdTVGNTUiIGF1dG9jb21wbGV0ZT0ib2ZmIiAvPjxidXR0b24gdHlwZT0iYnV0dG9uIiBpZD0iZm9sZGVyLXBpY2tlci10b2dnbGUiIGNsYXNzPSJmb2xkZXItcGlja2VyLXRvZ2dsZSIgdGl0bGU9Ilx1OTAwOVx1NjJFOVx1NzZFRVx1NUY1NSIgYXJpYS1sYWJlbD0iXHU5MDA5XHU2MkU5XHU3NkVFXHU1RjU1Ij4nK0ooImNoZXZyb25Eb3duIix7c2l6ZToxMSxzdHJva2VXaWR0aDoyfSkrJzwvYnV0dG9uPjwvZGl2PjxkaXYgaWQ9ImZvbGRlci1waWNrZXItZHJvcGRvd24iIGNsYXNzPSJmb2xkZXItcGlja2VyLWRyb3Bkb3duIGhpZGRlbiI+PGRpdiBjbGFzcz0iZm9sZGVyLXBpY2tlci1xdWljay1yb3ciPjxidXR0b24gY2xhc3M9ImZvbGRlci1waWNrZXItcXVpY2stYnRuIiBkYXRhLXBhdGg9Ii90bXAiPlx1NEUzNFx1NjVGNjwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImZvbGRlci1waWNrZXItcXVpY2stYnRuIiBkYXRhLXBhdGg9Ii8iPlx1NjgzOVx1NzZFRVx1NUY1NTwvYnV0dG9uPjwvZGl2PjwvZGl2PjxkaXYgaWQ9ImZvbGRlci1waWNrZXItdmFsaWRhdGlvbiIgY2xhc3M9ImZvbGRlci1waWNrZXItdmFsaWRhdGlvbiI+PC9kaXY+PC9kaXY+J31mdW5jdGlvbiBhZyhlKXt2YXIgdD1YZSgpLG49dDtpZihlLnNlbGVjdGVkSWQpe3ZhciBpPWUuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihhKXtyZXR1cm4gYS5pZD09PWUuc2VsZWN0ZWRJZH0pO249aSYmaS5jd2Q/aS5jd2Q6dH1yZXR1cm4nPGRpdiBjbGFzcz0id29ya2luZy1kaXItaW5kaWNhdG9yIiBpZD0id29ya2luZy1kaXItaW5kaWNhdG9yIiB0aXRsZT0iJytwKG4pKyciIGRhdGEtcGF0aD0iJytwKG4pKyciPjxzcGFuIGNsYXNzPSJ3b3JraW5nLWRpci1pbmRpY2F0b3ItaWNvbiI+JytKKCJmb2xkZXIiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PHNwYW4gY2xhc3M9IndvcmtpbmctZGlyLWluZGljYXRvci1wYXRoIiBpZD0id29ya2luZy1kaXItaW5kaWNhdG9yLXBhdGgiPicrcChuKSsiPC9zcGFuPjwvZGl2PiJ9ZnVuY3Rpb24gUnUoZSl7aWYoIWUpcmV0dXJuIiI7dmFyIHQ9RGF0ZS5ub3coKSxuPW5ldyBEYXRlKGUpLmdldFRpbWUoKSxpPU1hdGgubWF4KDAsdC1uKSxhPU1hdGguZmxvb3IoaS8xZTMpO2lmKGE8NjApcmV0dXJuIlx1NTIxQVx1NTIxQSI7dmFyIHU9TWF0aC5mbG9vcihhLzYwKTtpZih1PDYwKXJldHVybiB1KyJcdTUyMDZcdTk0OUZcdTUyNEQiO3ZhciBzPU1hdGguZmxvb3IodS82MCk7aWYoczwyNClyZXR1cm4gcysiXHU1QzBGXHU2NUY2XHU1MjREIjt2YXIgbz1NYXRoLmZsb29yKHMvMjQpO3JldHVybiBvPDMwP28rIlx1NTkyOVx1NTI0RCI6TWF0aC5mbG9vcihvLzMwKSsiXHU0RTJBXHU2NzA4XHU1MjREIn1mdW5jdGlvbiBXdShlKXtpZighZSlyZXR1cm4iIjt2YXIgdD1EYXRlLm5vdygpLG49bmV3IERhdGUoZSkuZ2V0VGltZSgpLGk9TWF0aC5tYXgoMCx0LW4pLGE9TWF0aC5mbG9vcihpLzFlMyksdT1NYXRoLmZsb29yKGEvNjApLHM9TWF0aC5mbG9vcih1LzYwKTtyZXR1cm4gcz4wP3MrImgiKyh1JTYwPjA/dSU2MCsibSI6IiIpOnU+MD91KyJtIjphKyJzIn1mdW5jdGlvbiBjcihlKXtpZighZSlyZXR1cm4iIjtpZihlLmFyY2hpdmVkKXJldHVybiJcdTVERjJcdTVGNTJcdTY4NjMiO2lmKGUucGVybWlzc2lvbkJsb2NrZWQpcmV0dXJuIlx1N0I0OVx1NUY4NVx1NjM4OFx1Njc0MyI7aWYoYWUoZSkmJmUuc3RydWN0dXJlZFN0YXRlJiZlLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodClyZXR1cm4iXHU2MDFEXHU4MDAzXHU0RTJEIjt2YXIgdD17aWRsZToiXHU3QTdBXHU5NUYyIixzdG9wcGVkOiJcdTVERjJcdTUwNUNcdTZCNjIiLHJ1bm5pbmc6Ilx1OEZEMFx1ODg0Q1x1NEUyRCIsZXhpdGVkOiJcdTVERjJcdTkwMDBcdTUxRkEiLGZhaWxlZDoiXHU1REYyXHU1OTMxXHU4RDI1In07cmV0dXJuIHRbZS5zdGF0dXNdfHxlLnN0YXR1c31mdW5jdGlvbiB6dShlKXtyZXR1cm4gZT9lLmFyY2hpdmVkPyJhcmNoaXZlZCI6ZS5wZXJtaXNzaW9uQmxvY2tlZD8icGVybWlzc2lvbi1ibG9ja2VkIjphZShlKSYmZS5zdHJ1Y3R1cmVkU3RhdGUmJmUuc3RydWN0dXJlZFN0YXRlLmluRmxpZ2h0PyJydW5uaW5nIjplLnN0YXR1c3x8IiI6IiJ9ZnVuY3Rpb24gQmMoZSl7cmV0dXJuIGU/ZS5wZXJtaXNzaW9uQmxvY2tlZD8iXHU3QjQ5XHU1Rjg1XHU0RjYwXHU3Njg0XHU2Mzg4XHU2NzQzIjplLnN0YXR1cyE9PSJydW5uaW5nIj8iIjplLmlkPT09ci5zZWxlY3RlZElkJiZyLmN1cnJlbnRUYXNrJiZyLmN1cnJlbnRUYXNrLnRpdGxlP3IuY3VycmVudFRhc2sudGl0bGU6ZS5jdXJyZW50VGFza1RpdGxlP2UuY3VycmVudFRhc2tUaXRsZToiIjoiIn1mdW5jdGlvbiBEYyhlKXt2YXIgdD1lJiZlLm1lc3NhZ2VzO2lmKCF0fHx0Lmxlbmd0aD09PTApcmV0dXJuIiI7Zm9yKHZhciBuPXQubGVuZ3RoLTE7bj49MDtuLS0pe3ZhciBpPXRbbl07aWYoISghaXx8aS5yb2xlIT09InVzZXIiKSl7dmFyIGE9aS5jb250ZW50O2lmKHR5cGVvZiBhPT0ic3RyaW5nIil7dmFyIHU9YS50cmltKCk7aWYodSlyZXR1cm4gdTtjb250aW51ZX1pZihBcnJheS5pc0FycmF5KGEpKWZvcih2YXIgcz0wO3M8YS5sZW5ndGg7cysrKXt2YXIgbz1hW3NdO2lmKCEoIW98fG8udHlwZSE9PSJ0ZXh0Inx8IW8udGV4dCkmJiFvLl9fcXVldWVkKXt2YXIgbD1TdHJpbmcoby50ZXh0KS50cmltKCk7aWYobClyZXR1cm4gbH19fX1yZXR1cm4iIn1mdW5jdGlvbiBrYyhlKXt2YXIgdD1lJiZlLm1lc3NhZ2VzO2lmKCF0fHx0Lmxlbmd0aD09PTApcmV0dXJuIiI7Zm9yKHZhciBuPXQubGVuZ3RoLTE7bj49MDtuLS0pe3ZhciBpPXRbbl07aWYoaS5yb2xlPT09ImFzc2lzdGFudCIpe2Zvcih2YXIgYT1pLmNvbnRlbnR8fFtdLHU9MDt1PGEubGVuZ3RoO3UrKylpZihhW3VdLnR5cGU9PT0idGV4dCImJmFbdV0udGV4dCYmYVt1XS50ZXh0LnRyaW0oKSl7dmFyIHM9YVt1XS50ZXh0LnRyaW0oKTtzPXMucmVwbGFjZSgvXiMrXHMrL2dtLCIiKS5yZXBsYWNlKC9cKlwqL2csIiIpLnJlcGxhY2UoL2AvZywiIik7dmFyIG89cy5zcGxpdChgCmApWzBdLnRyaW0oKTtyZXR1cm4gby5zbGljZSgwLDEwMCl9fX1yZXR1cm4iIn1mdW5jdGlvbiBHaShlLHQpe3ZhciBuPWUuaWQ9PT1yLnNlbGVjdGVkSWQ/IiBhY3RpdmUiOiIiLGk9ci5zZXNzaW9uc01hbmFnZU1vZGUmJnIuc2VsZWN0ZWRTZXNzaW9uSWRzW2UuaWRdPyIgc2VsZWN0ZWQiOiIiLGE9Y3IoZSksdT16dShlKSxzPSIiLG89WHUoInNlc3Npb25zIixlLmlkLCJcdTkwMDlcdTYyRTlcdTRGMUFcdThCREQgIitlLmNvbW1hbmQpO2lmKChlLnByb3ZpZGVyPT09ImNsYXVkZSJ8fGUucHJvdmlkZXI9PT0iY29kZXgiKSYmZS5jbGF1ZGVTZXNzaW9uSWQmJmUuc3RhdHVzIT09InJ1bm5pbmciJiYhci5zZXNzaW9uc01hbmFnZU1vZGUmJiFhZShlKSl7dmFyIGw9ZS5wcm92aWRlcj09PSJjb2RleCI/Ilx1NjA2Mlx1NTkwRCBDb2RleCBcdTRGMUFcdThCREQiOiJcdTYwNjJcdTU5MEQgQ2xhdWRlIFx1NEYxQVx1OEJERCI7cz0nPGJ1dHRvbiBjbGFzcz0ic2Vzc2lvbi1hY3Rpb24tYnRuIiBkYXRhLWFjdGlvbj0icmVzdW1lIiBkYXRhLXNlc3Npb24taWQ9IicrZS5pZCsnIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9IicrbCsnIiB0aXRsZT0iJytsKyciPjxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTEgNHY2aDYiLz48cGF0aCBkPSJNMy41MSAxNWE5IDkgMCAxMDUuNjQtMTEuMzZMMyAxMCIvPjwvc3ZnPjwvYnV0dG9uPid9dmFyIGM9IXIuc2Vzc2lvbnNNYW5hZ2VNb2RlJiZlLndvcmt0cmVlRW5hYmxlZCYmZS53b3JrdHJlZSYmZS53b3JrdHJlZS5icmFuY2gmJmUud29ya3RyZWUucGF0aCxmPWUud29ya3RyZWVNZXJnZVN0YXR1cz09PSJtZXJnZWQiJiZlLndvcmt0cmVlTWVyZ2VJbmZvJiZlLndvcmt0cmVlTWVyZ2VJbmZvLmNsZWFudXBEb25lPT09ITEsZD1lLnN0YXR1cz09PSJydW5uaW5nInx8ZS53b3JrdHJlZU1lcmdlU3RhdHVzPT09Im1lcmdpbmciLHY9Zj8iXHU5MUNEXHU4QkQ1XHU2RTA1XHU3NDA2IHdvcmt0cmVlIjoiXHU1NDA4XHU1RTc2XHU1MjMwXHU0RTNCXHU1MjA2XHU2NTJGIixnPWMmJmUud29ya3RyZWVNZXJnZVN0YXR1cyE9PSJtZXJnZWQiPyc8YnV0dG9uIGNsYXNzPSJzZXNzaW9uLWFjdGlvbi1idG4gbWVyZ2UtYnRuIiBkYXRhLWFjdGlvbj0id29ya3RyZWUtbWVyZ2UiIGRhdGEtc2Vzc2lvbi1pZD0iJytlLmlkKyciIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iJytwKHYpKyciIHRpdGxlPSInK3AodikrJyInKyhkPyIgZGlzYWJsZWQiOiIiKSsnPjxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTcgN2gxMCIvPjxwYXRoIGQ9Ik03IDEyaDEwIi8+PHBhdGggZD0iTTcgMTdoMTAiLz48cGF0aCBkPSJNNSA3bC0yIDIgMiAyIi8+PHBhdGggZD0iTTE5IDE1bDIgMi0yIDIiLz48L3N2Zz48L2J1dHRvbj4nOmY/JzxidXR0b24gY2xhc3M9InNlc3Npb24tYWN0aW9uLWJ0biBtZXJnZS1idG4iIGRhdGEtYWN0aW9uPSJ3b3JrdHJlZS1jbGVhbnVwIiBkYXRhLXNlc3Npb24taWQ9IicrZS5pZCsnIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1OTFDRFx1OEJENVx1NkUwNVx1NzQwNiB3b3JrdHJlZSIgdGl0bGU9Ilx1OTFDRFx1OEJENVx1NkUwNVx1NzQwNiB3b3JrdHJlZSI+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMyA2aDE4Ii8+PHBhdGggZD0iTTggNlY0YTIgMiAwIDAxMi0yaDRhMiAyIDAgMDEyIDJ2MiIvPjxwYXRoIGQ9Ik0xOSA2bC0xIDE0YTIgMiAwIDAxLTIgMkg4YTIgMiAwIDAxLTItMkw1IDYiLz48L3N2Zz48L2J1dHRvbj4nOiIiLGg9ci5zZXNzaW9uc01hbmFnZU1vZGU/IiI6JzxidXR0b24gY2xhc3M9InNlc3Npb24tYWN0aW9uLWJ0biBkZWxldGUtYnRuIiBkYXRhLWFjdGlvbj0iZGVsZXRlLXNlc3Npb24iIGRhdGEtc2Vzc2lvbi1pZD0iJytlLmlkKyciIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU1MjIwXHU5NjY0XHU0RjFBXHU4QkREIiB0aXRsZT0iXHU1MjIwXHU5NjY0XHU2QjY0XHU0RjFBXHU4QkREIj48c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0zIDZoMTgiLz48cGF0aCBkPSJNOCA2VjRhMiAyIDAgMDEyLTJoNGEyIDIgMCAwMTIgMnYyIi8+PHBhdGggZD0iTTE5IDZsLTEgMTRhMiAyIDAgMDEtMiAySDhhMiAyIDAgMDEtMi0yTDUgNiIvPjwvc3ZnPjwvYnV0dG9uPicsbT0nPHNwYW4gY2xhc3M9InNlc3Npb24tYWN0aW9ucyI+JytzK2craCsiPC9zcGFuPiIsYj1lLnRpdGxlfHxlLnN1bW1hcnk/JzxkaXYgY2xhc3M9InNlc3Npb24tdGl0bGUiPicrcChlLnRpdGxlfHxlLnN1bW1hcnkpKyI8L2Rpdj4iOic8ZGl2IGNsYXNzPSJzZXNzaW9uLWNvbW1hbmQiPicrcChlLnJlc3VtZWRGcm9tU2Vzc2lvbklkP2UuY29tbWFuZC5yZXBsYWNlKC9ccystLXJlc3VtZVxzK1xTKy8sIiIpLnJlcGxhY2UoL1xzK3Jlc3VtZVxzK1swLTlhLWYtXSsvLCIiKTplLmNvbW1hbmQpKyI8L2Rpdj4iLHc9QmMoZSksRT0iIjtlLnN0YXR1cz09PSJydW5uaW5nIiYmdyYmKEU9JzxkaXYgY2xhc3M9InNlc3Npb24tYWN0aXZpdHkiPicrcCh3KSsiPC9kaXY+Iik7dmFyIEI9ZS5kZXNjcmlwdGlvbj8nPGRpdiBjbGFzcz0ic2Vzc2lvbi1kZXNjcmlwdGlvbiI+JytwKGUuZGVzY3JpcHRpb24pKyI8L2Rpdj4iOiIiLEY9IiI7ZS5zdGF0dXM9PT0icnVubmluZyI/Rj0nPHNwYW4gY2xhc3M9InNlc3Npb24tdGltZSIgdGl0bGU9Ilx1NURGMlx1OEZEMFx1ODg0QyAnK3AoV3UoZS5zdGFydGVkQXQpKSsnIj4nK3AoV3UoZS5zdGFydGVkQXQpKSsiPC9zcGFuPiI6ZS5lbmRlZEF0P0Y9JzxzcGFuIGNsYXNzPSJzZXNzaW9uLXRpbWUiIHRpdGxlPSInK3AobmV3IERhdGUoZS5lbmRlZEF0KS50b0xvY2FsZVN0cmluZygpKSsnIj4nK3AoUnUoZS5lbmRlZEF0KSkrIjwvc3Bhbj4iOmUuc3RhcnRlZEF0JiYoRj0nPHNwYW4gY2xhc3M9InNlc3Npb24tdGltZSIgdGl0bGU9IicrcChuZXcgRGF0ZShlLnN0YXJ0ZWRBdCkudG9Mb2NhbGVTdHJpbmcoKSkrJyI+JytwKFJ1KGUuc3RhcnRlZEF0KSkrIjwvc3Bhbj4iKTt2YXIgeD1VdShlKSxTPWUuYXV0b1JlY292ZXJlZD8nPHNwYW4gY2xhc3M9InNlc3Npb24tcmVjb3ZlcnktaGludCI+XHU4MUVBXHU1MkE4XHU2MDYyXHU1OTBEPC9zcGFuPic6IiIsSD1yLnNlc3Npb25zTWFuYWdlTW9kZT8iIjonPGRpdiBjbGFzcz0ic2Vzc2lvbi1zd2lwZS1iZyIgYXJpYS1oaWRkZW49InRydWUiPjxidXR0b24gY2xhc3M9InNlc3Npb24tc3dpcGUtZGVsZXRlIiBkYXRhLWFjdGlvbj0ic3dpcGUtZGVsZXRlLXNlc3Npb24iIGRhdGEtc2Vzc2lvbi1pZD0iJytlLmlkKyciIHR5cGU9ImJ1dHRvbiIgdGFiaW5kZXg9Ii0xIiBhcmlhLWxhYmVsPSJcdTUyMjBcdTk2NjRcdTRGMUFcdThCREQiPjxzdmcgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTMgNmgxOCIvPjxwYXRoIGQ9Ik04IDZWNGEyIDIgMCAwMTItMmg0YTIgMiAwIDAxMiAydjIiLz48cGF0aCBkPSJNMTkgNmwtMSAxNGEyIDIgMCAwMS0yIDJIOGEyIDIgMCAwMS0yLTJMNSA2Ii8+PC9zdmc+PHNwYW4+XHU1MjIwXHU5NjY0PC9zcGFuPjwvYnV0dG9uPjwvZGl2Pic7cmV0dXJuJzxkaXYgY2xhc3M9InNlc3Npb24taXRlbScrbitpKyciIGRhdGEtc2Vzc2lvbi1pZD0iJytlLmlkKyciIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiPicrSCsnPGRpdiBjbGFzcz0ic2Vzc2lvbi1pdGVtLWNvbnRlbnQiPjxkaXYgY2xhc3M9InNlc3Npb24taXRlbS1yb3ciPicrbysnPGRpdiBjbGFzcz0ic2Vzc2lvbi1tYWluIj48ZGl2IGNsYXNzPSJzZXNzaW9uLXRpdGxlLXJvdyI+JytiK0YrIjwvZGl2PiIrQitFKyc8ZGl2IGNsYXNzPSJzZXNzaW9uLW1ldGEiPjxzcGFuIGNsYXNzPSJzZXNzaW9uLXN0YXR1cyAnK3UrJyI+JytwKGEpKyI8L3NwYW4+Iit4K1MrIjwvZGl2PjwvZGl2PiIrbSsiPC9kaXY+PC9kaXY+PC9kaXY+In1mdW5jdGlvbiBBYyhlKXtpZighZXx8IWUud29ya3RyZWVNZXJnZVN0YXR1cylyZXR1cm4iIjt2YXIgdD17cmVhZHk6Ilx1NTNFRlx1NTQwOFx1NUU3NiIsY2hlY2tpbmc6Ilx1NjhDMFx1NjdFNVx1NEUyRCIsbWVyZ2luZzoiXHU1NDA4XHU1RTc2XHU0RTJEIixtZXJnZWQ6ZS53b3JrdHJlZU1lcmdlSW5mbyYmZS53b3JrdHJlZU1lcmdlSW5mby5jbGVhbnVwRG9uZT09PSExPyJcdTVERjJcdTU0MDhcdTVFNzZcdTVGODVcdTZFMDVcdTc0MDYiOiJcdTVERjJcdTU0MDhcdTVFNzYiLGZhaWxlZDoiXHU1NDA4XHU1RTc2XHU1OTMxXHU4RDI1In07cmV0dXJuIHRbZS53b3JrdHJlZU1lcmdlU3RhdHVzXXx8IiJ9ZnVuY3Rpb24geGMoZSl7dmFyIHQ9QWMoZSk7cmV0dXJuIHQ/JzxzcGFuIGNsYXNzPSJzZXNzaW9uLWtpbmQtYmFkZ2Ugd29ya3RyZWUtbWVyZ2UgJytwKGUud29ya3RyZWVNZXJnZVN0YXR1c3x8IiIpKyciPicrcCh0KSsiPC9zcGFuPiI6IiJ9ZnVuY3Rpb24gVXUoZSl7aWYoIWV8fCFlLndvcmt0cmVlRW5hYmxlZClyZXR1cm4iIjt2YXIgdD1bXTtlLndvcmt0cmVlJiZlLndvcmt0cmVlLmJyYW5jaCYmdC5wdXNoKCJXb3JrdHJlZTogIitlLndvcmt0cmVlLmJyYW5jaCksZS53b3JrdHJlZSYmZS53b3JrdHJlZS5wYXRoJiZ0LnB1c2goIlBhdGg6ICIrZS53b3JrdHJlZS5wYXRoKTt2YXIgbj10Lmxlbmd0aD4wPycgdGl0bGU9IicrcCh0LmpvaW4oYApgKSkrJyInOiIiO3JldHVybic8c3BhbiBjbGFzcz0ic2Vzc2lvbi1raW5kLWJhZGdlIHdvcmt0cmVlIicrbisiPldvcmt0cmVlPC9zcGFuPiIreGMoZSl9ZnVuY3Rpb24gdWcoZSl7aWYoIWUpcmV0dXJuIiI7dmFyIHQ9YWUoZSk/JzxzcGFuIGNsYXNzPSJzZXNzaW9uLWtpbmQtYmFkZ2Ugc3RydWN0dXJlZCI+U3RydWN0dXJlZDwvc3Bhbj4nOic8c3BhbiBjbGFzcz0ic2Vzc2lvbi1raW5kLWJhZGdlIHB0eSI+UFRZPC9zcGFuPic7cmV0dXJuIHQrVXUoZSl9ZnVuY3Rpb24gU2MoZSl7dmFyIHQ9W3tpZDoibWFuYWdlZCIsbGFiZWw6Ilx1NjI1OFx1N0JBMSIsZGVzYzoiXHU1MTY4XHU4MUVBXHU1MkE4XHU1QjhDXHU2MjEwXHU0RUZCXHU1MkExIn0se2lkOiJmdWxsLWFjY2VzcyIsbGFiZWw6Ilx1NTE2OFx1Njc0M1x1OTY1MCIsZGVzYzoiXHU4MUVBXHU1MkE4XHU3ODZFXHU4QkE0XHU2NzQzXHU5NjUwIn0se2lkOiJhdXRvLWVkaXQiLGxhYmVsOiJcdTgxRUFcdTUyQThcdTdGMTZcdThGOTEiLGRlc2M6Ilx1ODFFQVx1NTJBOFx1Nzg2RVx1OEJBNFx1NEZFRVx1NjUzOSJ9LHtpZDoiZGVmYXVsdCIsbGFiZWw6Ilx1NjgwN1x1NTFDNiIsZGVzYzoiXHU5MDEwXHU2QjY1XHU3ODZFXHU4QkE0XHU2NENEXHU0RjVDIn0se2lkOiJuYXRpdmUiLGxhYmVsOiJcdTUzOUZcdTc1MUYiLGRlc2M6Ilx1NTM5Rlx1NzUxRlx1N0VEM1x1Njc4NFx1NTMxNlx1OEY5M1x1NTFGQSJ9XTtyZXR1cm4gdC5tYXAoZnVuY3Rpb24obil7dmFyIGk9bi5pZD09PWU/IiBhY3RpdmUiOiIiO3JldHVybic8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9Im1vZGUtY2FyZCcraSsnIiBkYXRhLW1vZGU9Iicrbi5pZCsnIj48c3BhbiBjbGFzcz0ibW9kZS1jYXJkLWxhYmVsIj4nK24ubGFiZWwrJzwvc3Bhbj48c3BhbiBjbGFzcz0ibW9kZS1jYXJkLWRlc2MiPicrbi5kZXNjKyI8L3NwYW4+PC9idXR0b24+In0pLmpvaW4oIiIpfWZ1bmN0aW9uIEljKGUpe3ZhciB0PVt7aWQ6ImNsYXVkZSIsbGFiZWw6IkNsYXVkZSIsZGVzYzoiXHU1QjhDXHU2NTc0IENsYXVkZSBcdTRGMUFcdThCRERcdTgwRkRcdTUyOUIifSx7aWQ6ImNvZGV4IixsYWJlbDoiQ29kZXgiLGRlc2M6Ilx1N0VEM1x1Njc4NFx1NTMxNiBKU09OTCBcdTYyMTYgUFRZIFx1NEYxQVx1OEJERCJ9XTtyZXR1cm4gdC5tYXAoZnVuY3Rpb24obil7dmFyIGk9bi5pZD09PWU/IiBhY3RpdmUiOiIiO3JldHVybic8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9Im1vZGUtY2FyZCBwcm92aWRlci1jYXJkJytpKyciIGRhdGEtcHJvdmlkZXI9Iicrbi5pZCsnIj48c3BhbiBjbGFzcz0ibW9kZS1jYXJkLWxhYmVsIj4nK24ubGFiZWwrJzwvc3Bhbj48c3BhbiBjbGFzcz0ibW9kZS1jYXJkLWRlc2MiPicrbi5kZXNjKyI8L3NwYW4+PC9idXR0b24+In0pLmpvaW4oIiIpfWZ1bmN0aW9uIFRjKGUpe3ZhciB0PVt7aWQ6InN0cnVjdHVyZWQiLGxhYmVsOiJcdTdFRDNcdTY3ODRcdTUzMTYiLGRlc2M6Ilx1NjY3QVx1ODBGRFx1NUJGOVx1OEJERFx1NkEyMVx1NUYwRiJ9LHtpZDoicHR5IixsYWJlbDoiUFRZIixkZXNjOiJcdTRFQTRcdTRFOTJcdTVGMEZcdTdFQzhcdTdBRUZcdTRGMUFcdThCREQifV07cmV0dXJuIHQubWFwKGZ1bmN0aW9uKG4pe3ZhciBpPW4uaWQ9PT1lPyIgYWN0aXZlIjoiIixhPSIiO3JldHVybic8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9Im1vZGUtY2FyZCBzZXNzaW9uLWtpbmQtY2FyZCcraSthKyciIGRhdGEtc2Vzc2lvbi1raW5kPSInK24uaWQrJyI+PHNwYW4gY2xhc3M9Im1vZGUtY2FyZC1sYWJlbCI+JytuLmxhYmVsKyc8L3NwYW4+PHNwYW4gY2xhc3M9Im1vZGUtY2FyZC1kZXNjIj4nK24uZGVzYysiPC9zcGFuPjwvYnV0dG9uPiJ9KS5qb2luKCIiKX1mdW5jdGlvbiBzZyhlKXtyZXR1cm4nPGxhYmVsIGNsYXNzPSJzZXNzaW9uLWlubGluZS10b2dnbGUiIGZvcj0ic2Vzc2lvbi13b3JrdHJlZS10b2dnbGUiIHRpdGxlPSJcdTRFM0FcdThCRTVcdTRGMUFcdThCRERcdTUyMUJcdTVFRkFcdTcyRUNcdTdBQ0JcdTc2ODQgZ2l0IHdvcmt0cmVlIFx1NTIwNlx1NjUyRiI+PHN2ZyBjbGFzcz0ic2Vzc2lvbi1pbmxpbmUtdG9nZ2xlLWljb24iIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjEzIiBoZWlnaHQ9IjEzIiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48Y2lyY2xlIGN4PSI2IiBjeT0iNiIgcj0iMi4yIi8+PGNpcmNsZSBjeD0iMTgiIGN5PSI2IiByPSIyLjIiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjE4IiByPSIyLjIiLz48cGF0aCBkPSJNNiA4LjJ2My40YTIgMiAwIDAgMCAyIDJoOGEyIDIgMCAwIDAgMi0yVjguMiIvPjxwYXRoIGQ9Ik0xMiAxMy42djIuMiIvPjwvc3ZnPjxzcGFuIGNsYXNzPSJzZXNzaW9uLWlubGluZS10b2dnbGUtbGFiZWwiPldvcmt0cmVlIFx1NkEyMVx1NUYwRjwvc3Bhbj48aW5wdXQgaWQ9InNlc3Npb24td29ya3RyZWUtdG9nZ2xlIiB0eXBlPSJjaGVja2JveCIgY2xhc3M9InN3aXRjaC10b2dnbGUiJysoZT8iIGNoZWNrZWQiOiIiKSsnIC8+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC9sYWJlbD4nfWZ1bmN0aW9uIFZ1KGUpe3ZhciB0PXIuc2Vzc2lvblRvb2x8fCJjbGF1ZGUiO3JldHVybiBlPT09InN0cnVjdHVyZWQiP3Q9PT0iY29kZXgiPyJDb2RleCBKU09OTCBcdTdFRDNcdTY3ODRcdTUzMTZcdTgwNEFcdTU5MjlcdTc1NENcdTk3NjJcdUZGMENcdTY1MkZcdTYzMDFcdTU5MUFcdThGNkVcdTVCRjlcdThCRERcdTU0OENcdTVERTVcdTUxNzdcdThDMDNcdTc1MjhcdTVDNTVcdTc5M0FcdTMwMDIiOiJcdTdFRDNcdTY3ODRcdTUzMTZcdTgwNEFcdTU5MjlcdTc1NENcdTk3NjJcdUZGMENcdTY1MkZcdTYzMDFcdTU5MUFcdThGNkVcdTVCRjlcdThCRERcdTMwMDFcdTZENDFcdTVGMEZcdThGOTNcdTUxRkFcdTU0OENcdTVERTVcdTUxNzdcdThDMDNcdTc1MjhcdTVDNTVcdTc5M0FcdTMwMDIiOnQ9PT0iY29kZXgiPyJDb2RleCBQVFkgXHU3RUM4XHU3QUVGXHU0RjFBXHU4QkREXHVGRjFCdGVybWluYWwgXHU2NjJGXHU1MzlGXHU1OUNCXHU4RjkzXHU1MUZBXHVGRjBDY2hhdCBcdTY2MkZcdTg5RTNcdTY3OTBcdTU0MEVcdTc2ODRcdTk2MDVcdThCRkJcdTg5QzZcdTU2RkVcdTMwMDIiOiJcdTUzOUZcdTU5Q0IgUFRZIFx1N0VDOFx1N0FFRlx1NEYxQVx1OEJERFx1RkYwQ1x1NjUyRlx1NjMwMVx1NjMwMVx1N0VFRFx1NEVBNFx1NEU5Mlx1MzAwMVx1N0VDOFx1N0FFRlx1ODlDNlx1NTZGRVx1NTQ4Q1x1Njc0M1x1OTY1MFx1NkQ0MVx1MzAwMiJ9ZnVuY3Rpb24gTGMoKXt2YXIgZT1tdCgpLHQ9eHQoZSxyLm1vZGVWYWx1ZXx8ci5jaGF0TW9kZXx8ImRlZmF1bHQiKSxuPXIuc2Vzc2lvbkNyZWF0ZUtpbmR8fCJzdHJ1Y3R1cmVkIixpPXIuc2Vzc2lvbkNyZWF0ZVdvcmt0cmVlPT09ITA7cmV0dXJuJzxzZWN0aW9uIGlkPSJzZXNzaW9uLW1vZGFsIiBjbGFzcz0ibW9kYWwtYmFja2Ryb3AgaGlkZGVuIj48ZGl2IGNsYXNzPSJtb2RhbCBzZXNzaW9uLW1vZGFsIj48ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIiPjxkaXY+PGgyIGNsYXNzPSJtb2RhbC10aXRsZSI+XHU2NUIwXHU1QkY5XHU4QkREPC9oMj48cCBjbGFzcz0ibW9kYWwtc3VidGl0bGUiPlx1NTQyRlx1NTJBOCBDbGF1ZGUgXHU2MjE2IENvZGV4IFx1NEYxQVx1OEJERFx1RkYwQ1x1OTAwOVx1NjJFOSBwcm92aWRlclx1MzAwMVx1NEYxQVx1OEJERFx1N0M3Qlx1NTc4Qlx1MzAwMVx1NkEyMVx1NUYwRlx1NTQ4Q1x1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NVx1MzAwMjwvcD48L2Rpdj48YnV0dG9uIGlkPSJjbG9zZS1tb2RhbC1idXR0b24iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1pY29uIG1vZGFsLWNsb3NlLWJ0biIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RUQiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjYiIHkxPSI2IiB4Mj0iMTgiIHkyPSIxOCIvPjxsaW5lIHgxPSIxOCIgeTE9IjYiIHgyPSI2IiB5Mj0iMTgiLz48L3N2Zz48L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1ib2R5Ij48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCI+UHJvdmlkZXI8L2xhYmVsPjxkaXYgaWQ9InByb3ZpZGVyLWNhcmRzIiBjbGFzcz0ibW9kZS1jYXJkcyI+JytJYyhlKSsnPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZmllbGQiPjxsYWJlbCBjbGFzcz0iZmllbGQtbGFiZWwiPlx1NEYxQVx1OEJERFx1N0M3Qlx1NTc4QjwvbGFiZWw+PGRpdiBpZD0ic2Vzc2lvbi1raW5kLWNhcmRzIiBjbGFzcz0ibW9kZS1jYXJkcyI+JytUYyhuKSsnPC9kaXY+PGRpdiBjbGFzcz0iZmllbGQtaGludCBzZXNzaW9uLWtpbmQtaGludC1yb3ciPjxzcGFuIGlkPSJzZXNzaW9uLWtpbmQtZGVzY3JpcHRpb24iPicrcChWdShuKSkrJzwvc3Bhbj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCI+XHU2QTIxXHU1RjBGPC9sYWJlbD48ZGl2IGlkPSJtb2RlLWNhcmRzIiBjbGFzcz0ibW9kZS1jYXJkcyI+JytTYyh0KSsnPC9kaXY+PHAgaWQ9Im1vZGUtZGVzY3JpcHRpb24iIGNsYXNzPSJmaWVsZC1oaW50Ij4nK3AoSG8oZSx0KSkrJzwvcD48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJjd2QiPlx1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NTwvbGFiZWw+PGRpdiBjbGFzcz0ic3VnZ2VzdGlvbnMtd3JhcCI+PGlucHV0IGlkPSJjd2QiIHR5cGU9InRleHQiIGNsYXNzPSJmaWVsZC1pbnB1dCIgYXV0b2NvbXBsZXRlPSJvZmYiIHBsYWNlaG9sZGVyPSInK3AoWGUoKSkrJyIgLz48ZGl2IGlkPSJjd2Qtc3VnZ2VzdGlvbnMiIGNsYXNzPSJzdWdnZXN0aW9ucyBoaWRkZW4iPjwvZGl2PjwvZGl2PjxwIGNsYXNzPSJmaWVsZC1oaW50Ij5cdTc1NTlcdTdBN0FcdTUyMTlcdTRGN0ZcdTc1MjhcdTRFMEFcdTY1QjlcdTc2RUVcdTVGNTVcdUZGMENcdTY1MkZcdTYzMDFcdThERUZcdTVGODRcdTgxRUFcdTUyQThcdTg4NjVcdTUxNjhcdTMwMDI8L3A+PGRpdiBpZD0icmVjZW50LXBhdGhzLWJ1YmJsZXMiIGNsYXNzPSJyZWNlbnQtcGF0aHMtYnViYmxlcyI+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ibW9kYWwtZm9vdGVyIj48YnV0dG9uIGlkPSJydW4tYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IGJ0bi1ibG9jayI+XHU1NDJGXHU1MkE4XHU0RjFBXHU4QkREPC9idXR0b24+PHAgaWQ9Im1vZGFsLWVycm9yIiBjbGFzcz0iZXJyb3ItbWVzc2FnZSBoaWRkZW4iPjwvcD48L2Rpdj48L2Rpdj48L3NlY3Rpb24+J31mdW5jdGlvbiBLdSgpe3ZhciBlPURhdGUubm93KCktODY0ZTUsdD1bXTtyZXR1cm4gci5zZXNzaW9ucy5mb3JFYWNoKGZ1bmN0aW9uKG4pe2lmKCFuLmFyY2hpdmVkKXt2YXIgaT1uLnN0YXJ0ZWRBdD9uZXcgRGF0ZShuLnN0YXJ0ZWRBdCkuZ2V0VGltZSgpOjA7dC5wdXNoKHtraW5kOiJzZXNzaW9uIixyZWY6bix0OmlzRmluaXRlKGkpP2k6MH0pfX0pLHIuY2xhdWRlSGlzdG9yeUxvYWRlZCYmam4oKS5mb3JFYWNoKGZ1bmN0aW9uKG4pe2lmKG4udGltZXN0YW1wKXt2YXIgaT1uZXcgRGF0ZShuLnRpbWVzdGFtcCkuZ2V0VGltZSgpOyFpc0Zpbml0ZShpKXx8aTw9ZXx8dC5wdXNoKHtraW5kOiJoaXN0b3J5IixyZWY6bix0Oml9KX19KSx0LnNvcnQoZnVuY3Rpb24obixpKXtyZXR1cm4gaS50LW4udH0pLHR9ZnVuY3Rpb24gTWMoKXt2YXIgZT1yLnNlc3Npb25zLmZpbHRlcihmdW5jdGlvbihhKXtyZXR1cm4gYS5hcmNoaXZlZH0pLHQ9W107dC5wdXNoKEp1KCkpO3ZhciBuPUt1KCksaT1OYygpO3JldHVybiBuLmxlbmd0aD4wJiZ0LnB1c2goSGMobikpLGUubGVuZ3RoPjAmJnQucHVzaChxYyhlKSksbi5sZW5ndGg9PT0wJiZlLmxlbmd0aD09PTAmJiFpP0p1KCkrJzxkaXYgY2xhc3M9ImVtcHR5LXN0YXRlIj48c3Ryb25nPlx1OEZEOFx1NkNBMVx1NjcwOVx1NEYxQVx1OEJERFx1OEJCMFx1NUY1NTwvc3Ryb25nPjxicj5cdTcwQjlcdTUxRkJcdTRFMEFcdTY1QjlcdTMwMENcdTY1QjBcdTVCRjlcdThCRERcdTMwMERcdTVGMDBcdTU5Q0JcdTRGNjBcdTc2ODRcdTdCMkNcdTRFMDBcdTZCMjFcdTVCRjlcdThCRERcdTMwMDI8L2Rpdj4nOihpJiZ0LnB1c2goaSksdC5qb2luKCIiKSl9ZnVuY3Rpb24gT2MoKXtyZXR1cm4hIXIuc2lkZWJhclBpbm5lZCYmISFyLnNpZGViYXJDb2xsYXBzZWR9ZnVuY3Rpb24gUGMoKXt2YXIgZT1LdSgpLHQ9ZS5tYXAoZnVuY3Rpb24oaSxhKXt2YXIgdT1hKzE7aWYoaS5raW5kPT09InNlc3Npb24iKXt2YXIgcz1pLnJlZixvPXMuaWQ9PT1yLnNlbGVjdGVkSWQ/IiBhY3RpdmUiOiIiLGw9cy50aXRsZXx8cy5kZXNjcmlwdGlvbnx8cy5zdW1tYXJ5fHxzLmNvbW1hbmR8fCJcdTRGMUFcdThCREQgIit1O3JldHVybic8YnV0dG9uIGNsYXNzPSJzaWRlYmFyLWNvbGxhcHNlZC10aWxlJytvKyciIHR5cGU9ImJ1dHRvbiIgZGF0YS1jb2xsYXBzZWQtc2Vzc2lvbi1pZD0iJytwKHMuaWQpKyciIHRpdGxlPSInK3AobCkrJyI+Jyt1KyI8L2J1dHRvbj4ifXZhciBjPWkucmVmLGY9Yy5maXJzdFVzZXJNZXNzYWdlfHwiKFx1N0E3QVx1NEYxQVx1OEJERCkiLGQ9ZisiIFx4QjcgIitadShjLnRpbWVzdGFtcCk7cmV0dXJuJzxidXR0b24gY2xhc3M9InNpZGViYXItY29sbGFwc2VkLXRpbGUgaGlzdG9yeSIgdHlwZT0iYnV0dG9uIiBkYXRhLWNvbGxhcHNlZC1oaXN0b3J5LWlkPSInK3AoYy5jbGF1ZGVTZXNzaW9uSWQpKyciIGRhdGEtY3dkPSInK3AoYy5jd2R8fCIiKSsnIiB0aXRsZT0iJytwKGQpKyciPicrdSsiPC9idXR0b24+In0pLmpvaW4oIiIpLG49JzxidXR0b24gY2xhc3M9InNpZGViYXItY29sbGFwc2VkLXRpbGUgYWRkIiB0eXBlPSJidXR0b24iIGRhdGEtY29sbGFwc2VkLW5ldy1zZXNzaW9uPSIxIiB0aXRsZT0iXHU2NUIwXHU1RUZBXHU0RjFBXHU4QkREIiBhcmlhLWxhYmVsPSJcdTY1QjBcdTVFRkFcdTRGMUFcdThCREQiPjxzdmcgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjEyIiB5MT0iNSIgeDI9IjEyIiB5Mj0iMTkiLz48bGluZSB4MT0iNSIgeTE9IjEyIiB4Mj0iMTkiIHkyPSIxMiIvPjwvc3ZnPjwvYnV0dG9uPic7cmV0dXJuJzxkaXYgY2xhc3M9InNpZGViYXItY29sbGFwc2VkLXRpbGVzIj4nK3QrbisiPC9kaXY+In1mdW5jdGlvbiBZaSgpe3JldHVybiBPYygpP1BjKCk6TWMoKX1mdW5jdGlvbiBKdSgpe2lmKCFyLnNlc3Npb25zTWFuYWdlTW9kZSlyZXR1cm4nPGRpdiBjbGFzcz0ic2Vzc2lvbi1tYW5hZ2UtYmFyIj48c3BhbiBjbGFzcz0ic2lkZWJhci1pbnRybyI+XHU2NzAwXHU4RkQxXHU3Njg0XHU0RjFBXHU4QkREXHU4QkIwXHU1RjU1PC9zcGFuPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXhzIHNlc3Npb24tbWFuYWdlLXRvZ2dsZSIgZGF0YS1hY3Rpb249InRvZ2dsZS1tYW5hZ2UtbW9kZSIgdHlwZT0iYnV0dG9uIj48c3ZnIHdpZHRoPSIxMSIgaGVpZ2h0PSIxMSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik05IDExbDMgM0wyMiA0Ii8+PHBhdGggZD0iTTIxIDEydjdhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDExIi8+PC9zdmc+PHNwYW4+XHU3QkExXHU3NDA2PC9zcGFuPjwvYnV0dG9uPjwvZGl2Pic7dmFyIGU9R3UoKS5sZW5ndGgsdD1ZdSgpLmxlbmd0aCxuPWUrdCxpPW4+MCxhPVdjKCksdT1hPjAmJm4+PWEscz11PyJcdTUzRDZcdTZEODhcdTUxNjhcdTkwMDkiOiJcdTUxNjhcdTkwMDkiLG89dT8iY2xlYXItc2VsZWN0aW9uIjoic2VsZWN0LWFsbC12aXNpYmxlIixsPWE9PT0wPyIgZGlzYWJsZWQiOiIiLGM9JzxidXR0b24gY2xhc3M9InNlc3Npb24tbWFuYWdlLWV4aXQiIGRhdGEtYWN0aW9uPSJ0b2dnbGUtbWFuYWdlLW1vZGUiIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU5MDAwXHU1MUZBXHU3QkExXHU3NDA2XHU2QTIxXHU1RjBGIiB0aXRsZT0iXHU5MDAwXHU1MUZBXHU3QkExXHU3NDA2XHU2QTIxXHU1RjBGIj48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxsaW5lIHgxPSI2IiB5MT0iNiIgeDI9IjE4IiB5Mj0iMTgiLz48bGluZSB4MT0iMTgiIHkxPSI2IiB4Mj0iNiIgeTI9IjE4Ii8+PC9zdmc+PC9idXR0b24+JyxmPWk/JzxzcGFuIGNsYXNzPSJzZXNzaW9uLW1hbmFnZS1jb3VudCI+JytuKyc8L3NwYW4+PHNwYW4gY2xhc3M9InNlc3Npb24tbWFuYWdlLXN1bW1hcnktbGFiZWwiPlx1NURGMlx1OTAwOVx1NjJFOTwvc3Bhbj4nOic8c3BhbiBjbGFzcz0ic2Vzc2lvbi1tYW5hZ2Utc3VtbWFyeS1sYWJlbCBtdXRlZCI+XHU5MDA5XHU2MkU5XHU4OTgxXHU3QkExXHU3NDA2XHU3Njg0XHU5ODc5XHU3NkVFPC9zcGFuPic7cmV0dXJuJzxkaXYgY2xhc3M9InNlc3Npb24tbWFuYWdlLWJhciBhY3RpdmUiPicrYysnPGRpdiBjbGFzcz0ic2Vzc2lvbi1tYW5hZ2Utc3VtbWFyeSI+JytmKyc8L2Rpdj48ZGl2IGNsYXNzPSJzZXNzaW9uLW1hbmFnZS1hY3Rpb25zIj48YnV0dG9uIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi14cyIgZGF0YS1hY3Rpb249IicrbysnIiB0eXBlPSJidXR0b24iJytsKyI+IitzKyc8L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJidG4gYnRuLWRhbmdlciBidG4teHMiIGRhdGEtYWN0aW9uPSJkZWxldGUtc2VsZWN0ZWQiIHR5cGU9ImJ1dHRvbiInKyhpPyIiOiIgZGlzYWJsZWQiKSsiPlx1NTIyMFx1OTY2NCIrKGk/IiAiK246IiIpKyI8L2J1dHRvbj48L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIG9nKGUsdCxuKXtyZXR1cm4nPHNlY3Rpb24gY2xhc3M9InNlc3Npb24tZ3JvdXAiPjxkaXYgY2xhc3M9InNlc3Npb24tZ3JvdXAtdGl0bGUiPicrcChlKSsiPC9kaXY+Iit0Lm1hcChmdW5jdGlvbihpKXtyZXR1cm4gR2koaSxuKX0pLmpvaW4oIiIpKyI8L3NlY3Rpb24+In1mdW5jdGlvbiBxYyhlKXt2YXIgdD0hIXIuYXJjaGl2ZWRFeHBhbmRlZCxuPXQ/IiYjOTY2MjsiOiImIzk2NTY7IixpPSc8ZGl2IGNsYXNzPSJzZXNzaW9uLWdyb3VwLXRpdGxlIGNsYXVkZS1oaXN0b3J5LXRvZ2dsZSIgZGF0YS1hY3Rpb249InRvZ2dsZS1hcmNoaXZlZC1ncm91cCI+PHNwYW4gY2xhc3M9ImNoZXZyb24iPicrbisnPC9zcGFuPiBcdTVERjJcdTVGNTJcdTY4NjMgPHNwYW4gY2xhc3M9Imhpc3RvcnktY291bnQiPicrZS5sZW5ndGgrIjwvc3Bhbj48L2Rpdj4iO2lmKCF0KXJldHVybic8c2VjdGlvbiBjbGFzcz0ic2Vzc2lvbi1ncm91cCI+JytpKyI8L3NlY3Rpb24+Ijt2YXIgYT1lLm1hcChmdW5jdGlvbih1KXtyZXR1cm4gR2kodSwic2Vzc2lvbnMiKX0pLmpvaW4oIiIpO3JldHVybic8c2VjdGlvbiBjbGFzcz0ic2Vzc2lvbi1ncm91cCI+JytpK2ErIjwvc2VjdGlvbj4ifWZ1bmN0aW9uIEhjKGUpe3ZhciB0PSc8c2VjdGlvbiBjbGFzcz0ic2Vzc2lvbi1ncm91cCBzZXNzaW9uLWdyb3VwLS1yZWNlbnQiPic7cmV0dXJuIHQrPWUubWFwKGZ1bmN0aW9uKG4pe3JldHVybiBuLmtpbmQ9PT0ic2Vzc2lvbiI/R2kobi5yZWYsInNlc3Npb25zIik6UWkobi5yZWYsImhpc3RvcnkiKX0pLmpvaW4oIiIpLHQrPSI8L3NlY3Rpb24+Iix0fWZ1bmN0aW9uIF9jKCl7dmFyIGU9RGF0ZS5ub3coKS04NjRlNTtyZXR1cm4gam4oKS5maWx0ZXIoZnVuY3Rpb24odCl7cmV0dXJuIXQudGltZXN0YW1wfHxuZXcgRGF0ZSh0LnRpbWVzdGFtcCkuZ2V0VGltZSgpPD1lfSl9ZnVuY3Rpb24gTmMoKXt2YXIgZT1fYygpLHQ9ISFyLmNsYXVkZUhpc3RvcnlMb2FkZWQsbj0kYygpLGk9ISFyLmNvZGV4SGlzdG9yeUxvYWRlZCxhPXQmJmksdT0odD9lLmxlbmd0aDowKSsoaT9uLmxlbmd0aDowKTtpZihhJiZ1PT09MClyZXR1cm4iIjt2YXIgcz0hIXIuY2xhdWRlSGlzdG9yeUV4cGFuZGVkLG89cz8iJiM5NjYyOyI6IiYjOTY1NjsiLGw9YT91Pjk5OT8iOTk5KyI6U3RyaW5nKHUpOiJceEI3XHhCN1x4QjciLGM9JzxkaXYgY2xhc3M9InNlc3Npb24tZ3JvdXAtdGl0bGUgY2xhdWRlLWhpc3RvcnktdG9nZ2xlIHNlc3Npb24taGlzdG9yeS10b2dnbGUiIGlkPSJjbGF1ZGUtaGlzdG9yeS10b2dnbGUiIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGFyaWEtZXhwYW5kZWQ9IicrcysnIiB0aXRsZT0iJysocz8iXHU2NTM2XHU4RDc3XHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREIjoiXHU1QzU1XHU1RjAwXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREIikrJyI+PHNwYW4gY2xhc3M9ImNoZXZyb24iPicrbysnPC9zcGFuPiBcdTUzODZcdTUzRjJcdTRGMUFcdThCREQgPHNwYW4gY2xhc3M9Imhpc3RvcnktY291bnQnKyhhPyIiOiIgbG9hZGluZyIpKyciPicrbCsiPC9zcGFuPjwvZGl2PiIsZj1zPyc8ZGl2IGNsYXNzPSJzZXNzaW9uLWhpc3RvcnktYm9keSI+JytqYyhlKStKYyhuKSsiPC9kaXY+IjoiIjtyZXR1cm4nPHNlY3Rpb24gY2xhc3M9InNlc3Npb24tZ3JvdXAgc2Vzc2lvbi1ncm91cC0taGlzdG9yeSI+JytjK2YrIjwvc2VjdGlvbj4ifWZ1bmN0aW9uIGpjKGUpe2lmKCFyLmNsYXVkZUhpc3RvcnlMb2FkZWQpcmV0dXJuJzxkaXYgY2xhc3M9ImNsYXVkZS1oaXN0b3J5LWxvYWRpbmciPlx1NjI2Qlx1NjNDRlx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERFx1NEUyRFx1MjAyNjwvZGl2Pic7aWYoZS5sZW5ndGg9PT0wKXJldHVybiIiO3ZhciB0PXt9LG49W107ZS5mb3JFYWNoKGZ1bmN0aW9uKHUpe3RbdS5jd2RdfHwodFt1LmN3ZF09W10sbi5wdXNoKHUuY3dkKSksdFt1LmN3ZF0ucHVzaCh1KX0pO3ZhciBpPSc8ZGl2IGNsYXNzPSJzaWRlYmFyLWhpc3RvcnktdG9vbGJhciI+PGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4teHMgc2lkZWJhci1oaXN0b3J5LWNsZWFyIiBkYXRhLWFjdGlvbj0iY2xlYXItYWxsLWhpc3RvcnkiIHR5cGU9ImJ1dHRvbiI+XHU2RTA1XHU3QTdBXHU1MTY4XHU5MEU4PC9idXR0b24+PC9kaXY+JyxhPSIiO3JldHVybiBuLmZvckVhY2goZnVuY3Rpb24odSl7dmFyIHM9dS5zcGxpdCgiLyIpLmZpbHRlcihCb29sZWFuKS5zbGljZSgtMykuam9pbigiLyIpLG89ISFyLmNsYXVkZUhpc3RvcnlFeHBhbmRlZERpcnNbdV07YSs9R2ModSxzLHRbdV0ubGVuZ3RoLG8pLG8mJihhKz10W3VdLm1hcChmdW5jdGlvbihsKXtyZXR1cm4gUWkobCwiaGlzdG9yeSIpfSkuam9pbigiIikpfSksaSsnPGRpdiBjbGFzcz0ic2lkZWJhci1oaXN0b3J5LXNjcm9sbCI+JythKyI8L2Rpdj4ifWZ1bmN0aW9uIGpuKCl7dmFyIGU9bmV3IFNldDtyZXR1cm4gci5zZXNzaW9ucy5mb3JFYWNoKGZ1bmN0aW9uKHQpe3QuY2xhdWRlU2Vzc2lvbklkJiZlLmFkZCh0LmNsYXVkZVNlc3Npb25JZCl9KSxyLmNsYXVkZUhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmhhc0NvbnZlcnNhdGlvbiYmIXQubWFuYWdlZEJ5V2FuZCYmIWUuaGFzKHQuY2xhdWRlU2Vzc2lvbklkKX0pfWZ1bmN0aW9uIEd1KCl7cmV0dXJuIE9iamVjdC5rZXlzKHIuc2VsZWN0ZWRTZXNzaW9uSWRzKS5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuISFyLnNlbGVjdGVkU2Vzc2lvbklkc1tlXX0pfWZ1bmN0aW9uIFl1KCl7cmV0dXJuIE9iamVjdC5rZXlzKHIuc2VsZWN0ZWRDbGF1ZGVIaXN0b3J5SWRzKS5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuISFyLnNlbGVjdGVkQ2xhdWRlSGlzdG9yeUlkc1tlXX0pfWZ1bmN0aW9uIFFyKCl7ci5zZWxlY3RlZFNlc3Npb25JZHM9e30sci5zZWxlY3RlZENsYXVkZUhpc3RvcnlJZHM9e319ZnVuY3Rpb24gUmMoZSl7ci5zZXNzaW9uc01hbmFnZU1vZGU9dHlwZW9mIGU9PSJib29sZWFuIj9lOiFyLnNlc3Npb25zTWFuYWdlTW9kZSxyLnNlc3Npb25zTWFuYWdlTW9kZSYmIXIuY2xhdWRlSGlzdG9yeUxvYWRlZCYmJHIoKS50aGVuKG1lKSxyLnNlc3Npb25zTWFuYWdlTW9kZXx8KFFyKCksQXIoKSksbWUoKX1mdW5jdGlvbiBRdSgpe3JldHVybiByLnNlc3Npb25zLnNsaWNlKCl9ZnVuY3Rpb24gV2MoKXtyZXR1cm4gUXUoKS5sZW5ndGgram4oKS5sZW5ndGh9ZnVuY3Rpb24gJHUoKXtpZighci5jbGF1ZGVIaXN0b3J5TG9hZGVkKXskcigpLnRoZW4oJHUpO3JldHVybn1yLmNsYXVkZUhpc3RvcnlFeHBhbmRlZD0hMDt2YXIgZT17fTtRdSgpLmZvckVhY2goZnVuY3Rpb24obil7ZVtuLmlkXT0hMH0pO3ZhciB0PXt9O2puKCkuZm9yRWFjaChmdW5jdGlvbihuKXt0W24uY2xhdWRlU2Vzc2lvbklkXT0hMH0pLHIuc2VsZWN0ZWRTZXNzaW9uSWRzPWUsci5zZWxlY3RlZENsYXVkZUhpc3RvcnlJZHM9dCxtZSgpfWZ1bmN0aW9uIHpjKCl7UXIoKSxtZSgpfWZ1bmN0aW9uIGRyKGUsdCl7aWYoISghci5zZXNzaW9uc01hbmFnZU1vZGV8fCF0KSl7dmFyIG49ZT09PSJoaXN0b3J5Ij9yLnNlbGVjdGVkQ2xhdWRlSGlzdG9yeUlkczpyLnNlbGVjdGVkU2Vzc2lvbklkcztuW3RdP2RlbGV0ZSBuW3RdOm5bdF09ITAsbWUoKX19ZnVuY3Rpb24gWHUoZSx0LG4pe2lmKCFyLnNlc3Npb25zTWFuYWdlTW9kZSlyZXR1cm4iIjt2YXIgaT1lPT09Imhpc3RvcnkiPyEhci5zZWxlY3RlZENsYXVkZUhpc3RvcnlJZHNbdF06ISFyLnNlbGVjdGVkU2Vzc2lvbklkc1t0XTtyZXR1cm4nPGxhYmVsIGNsYXNzPSJzZXNzaW9uLW1hbmFnZS1jaGVjayI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBkYXRhLWFjdGlvbj0idG9nZ2xlLXNlbGVjdGlvbiIgZGF0YS1raW5kPSInK3AoZSkrJyIgZGF0YS1pZD0iJytwKHQpKyciJysoaT8iIGNoZWNrZWQiOiIiKSsnIGFyaWEtbGFiZWw9IicrcChuKSsnIj48c3Bhbj48L3NwYW4+PC9sYWJlbD4nfWZ1bmN0aW9uIERuKGUsdCl7cmV0dXJuIHR5cGVvZiB3aW5kb3cud2FuZENvbmZpcm09PSJmdW5jdGlvbiI/d2luZG93LndhbmRDb25maXJtKGUsT2JqZWN0LmFzc2lnbih7dHlwZToiZGFuZ2VyIixkYW5nZXI6ITAsb2tMYWJlbDoiXHU1MjIwXHU5NjY0In0sdHx8e30pKTpQcm9taXNlLnJlc29sdmUod2luZG93LmNvbmZpcm0oZSkpfWZ1bmN0aW9uIFVjKCl7dmFyIGU9R3UoKSx0PVl1KCksbj1lLmxlbmd0aCt0Lmxlbmd0aDtuJiZEbigiXHU3ODZFXHU4QkE0XHU1MjIwXHU5NjY0XHU2MjQwXHU5MDA5ICIrbisiIFx1OTg3OVx1NTQxN1x1RkYxRlx1NkI2NFx1NjRDRFx1NEY1Q1x1NjVFMFx1NkNENVx1NjRBNFx1OTUwMFx1MzAwMiIse3RpdGxlOiJcdTUyMjBcdTk2NjRcdTYyNDBcdTkwMDkgIituKyIgXHU5ODc5In0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoaSl7dmFyIGE9W107ZS5sZW5ndGg+MCYmYS5wdXNoKGZldGNoKCIvYXBpL3Nlc3Npb25zL2JhdGNoLWRlbGV0ZSIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe3Nlc3Npb25JZHM6ZX0pfSkudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gdS5qc29uKCl9KSksdC5sZW5ndGg+MCYmYS5wdXNoKGZldGNoKCIvYXBpL2NsYXVkZS1oaXN0b3J5L2JhdGNoLWRlbGV0ZSIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe2NsYXVkZVNlc3Npb25JZHM6dH0pfSkudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gdS5qc29uKCl9KSksUHJvbWlzZS5hbGwoYSkudGhlbihmdW5jdGlvbigpe3JldHVybiBlLmluZGV4T2Yoci5zZWxlY3RlZElkKSE9PS0xJiYoci5zZWxlY3RlZElkPW51bGwsd2UoKSksci5jbGF1ZGVIaXN0b3J5PXIuY2xhdWRlSGlzdG9yeS5maWx0ZXIoZnVuY3Rpb24odSl7cmV0dXJuIHQuaW5kZXhPZih1LmNsYXVkZVNlc3Npb25JZCk9PT0tMX0pLFFyKCksUnQoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dmFyIHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFjdGlvbi1lcnJvciIpO1BlKHUsIlx1NjVFMFx1NkNENVx1NjI3OVx1OTFDRlx1NTIyMFx1OTY2NFx1NjI0MFx1OTAwOVx1OTg3OVx1NzZFRVx1MzAwMiIpfSl9fSl9ZnVuY3Rpb24gVmMoKXt2YXIgZT1EYXRlLm5vdygpLTg2NGU1LHQ9am4oKS5maWx0ZXIoZnVuY3Rpb24obil7cmV0dXJuIW4udGltZXN0YW1wfHxuZXcgRGF0ZShuLnRpbWVzdGFtcCkuZ2V0VGltZSgpPD1lfSk7aWYodC5sZW5ndGgpcmV0dXJuIERuKCJcdTc4NkVcdThCQTRcdTZFMDVcdTdBN0FcdTVGNTNcdTUyNERcdTY2M0VcdTc5M0FcdTc2ODQgIit0Lmxlbmd0aCsiIFx1Njc2MSBDbGF1ZGUgXHU1Mzg2XHU1M0YyXHU1NDE3XHVGRjFGIix7dGl0bGU6Ilx1NkUwNVx1N0E3QSBDbGF1ZGUgXHU1Mzg2XHU1M0YyIixva0xhYmVsOiJcdTZFMDVcdTdBN0EifSkudGhlbihmdW5jdGlvbihuKXtpZihuKXt2YXIgaT10Lm1hcChmdW5jdGlvbihhKXtyZXR1cm4gYS5jbGF1ZGVTZXNzaW9uSWR9KTtyZXR1cm4gZmV0Y2goIi9hcGkvY2xhdWRlLWhpc3RvcnkvYmF0Y2gtZGVsZXRlIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7Y2xhdWRlU2Vzc2lvbklkczppfSl9KS50aGVuKGZ1bmN0aW9uKGEpe3JldHVybiBhLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oYSl7aWYoYSYmYS5lcnJvcil0aHJvdyBuZXcgRXJyb3IoYS5lcnJvcik7ci5jbGF1ZGVIaXN0b3J5PXIuY2xhdWRlSGlzdG9yeS5maWx0ZXIoZnVuY3Rpb24odSl7cmV0dXJuIGkuaW5kZXhPZih1LmNsYXVkZVNlc3Npb25JZCk9PT0tMX0pLFFyKCksbWUoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dmFyIGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFjdGlvbi1lcnJvciIpO1BlKGEsIlx1NjVFMFx1NkNENVx1NkUwNVx1N0E3QVx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERFx1MzAwMiIpfSl9fSl9ZnVuY3Rpb24gS2MoZSx0LG4saSl7dmFyIGE9aT8iXHUyNUJFIjoiXHUyNUI4IjtyZXR1cm4nPGRpdiBjbGFzcz0iY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWhlYWRlciBjb2RleC1oaXN0b3J5LWRpcmVjdG9yeS1oZWFkZXIiIGRhdGEtYWN0aW9uPSJ0b2dnbGUtY29kZXgtaGlzdG9yeS1kaXJlY3RvcnkiIGRhdGEtY3dkPSInK3AoZSkrJyIgcm9sZT0iYnV0dG9uIiB0YWJpbmRleD0iMCI+PGRpdiBjbGFzcz0ic2Vzc2lvbi1ncm91cC10aXRsZSBjbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktdGl0bGUiPjxzcGFuIGNsYXNzPSJjaGV2cm9uIj4nK2ErJzwvc3Bhbj48c3BhbiBjbGFzcz0iY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWxhYmVsIj4nK3AodCkrIiAoIituKyIpPC9zcGFuPjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gSmMoZSl7aWYoIXIuY29kZXhIaXN0b3J5TG9hZGVkKXJldHVybic8ZGl2IGNsYXNzPSJjbGF1ZGUtaGlzdG9yeS1sb2FkaW5nIj5cdTYyNkJcdTYzQ0YgQ29kZXggXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHU0RTJEXHUyMDI2PC9kaXY+JztpZihlLmxlbmd0aD09PTApcmV0dXJuIiI7dmFyIHQ9e30sbj1bXTtlLmZvckVhY2goZnVuY3Rpb24oYSl7dFthLmN3ZF18fCh0W2EuY3dkXT1bXSxuLnB1c2goYS5jd2QpKSx0W2EuY3dkXS5wdXNoKGEpfSk7dmFyIGk9JzxkaXYgY2xhc3M9InNpZGViYXItaGlzdG9yeS1zZWN0aW9uLWxhYmVsIj5Db2RleDwvZGl2Pic7cmV0dXJuIG4uZm9yRWFjaChmdW5jdGlvbihhKXt2YXIgdT1hLnNwbGl0KCIvIikuZmlsdGVyKEJvb2xlYW4pLnNsaWNlKC0zKS5qb2luKCIvIikscz0hIXIuY29kZXhIaXN0b3J5RXhwYW5kZWREaXJzW2FdO2krPUtjKGEsdSx0W2FdLmxlbmd0aCxzKSxzJiYoaSs9dFthXS5tYXAoZnVuY3Rpb24obyl7cmV0dXJuIFFpKG8sImNvZGV4Iil9KS5qb2luKCIiKSl9KSwnPGRpdiBjbGFzcz0ic2lkZWJhci1oaXN0b3J5LXNjcm9sbCBjb2RleC1oaXN0b3J5LXNjcm9sbCI+JytpKyI8L2Rpdj4ifWZ1bmN0aW9uIEdjKGUsdCxuLGkpe3ZhciBhPWk/IiYjOTY2MjsiOiImIzk2NTY7IjtyZXR1cm4nPGRpdiBjbGFzcz0iY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWhlYWRlciIgZGF0YS1hY3Rpb249InRvZ2dsZS1oaXN0b3J5LWRpcmVjdG9yeSIgZGF0YS1jd2Q9IicrcChlKSsnIiByb2xlPSJidXR0b24iIHRhYmluZGV4PSIwIj48ZGl2IGNsYXNzPSJzZXNzaW9uLWdyb3VwLXRpdGxlIGNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS10aXRsZSI+PHNwYW4gY2xhc3M9ImNoZXZyb24iPicrYSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJjbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktbGFiZWwiPicrcCh0KSsiICgiK24rJyk8L3NwYW4+PGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1kYW5nZXIgYnRuLXhzIGNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS1jbGVhci1idG4iIGRhdGEtYWN0aW9uPSJkZWxldGUtaGlzdG9yeS1kaXJlY3RvcnkiIGRhdGEtY3dkPSInK3AoZSkrJyIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTZFMDVcdTdBN0FcdTZCNjRcdTc2RUVcdTVGNTVcdTc2ODRcdTUzODZcdTUzRjJcdTRGMUFcdThCREQiIHRpdGxlPSJcdTZFMDVcdTdBN0FcdTZCNjRcdTc2RUVcdTVGNTVcdTc2ODRcdTUzODZcdTUzRjJcdTRGMUFcdThCREQiPlx1NkUwNVx1N0E3QVx1NkI2NFx1NzZFRVx1NUY1NTwvYnV0dG9uPjwvZGl2PjwvZGl2Pid9ZnVuY3Rpb24gUWkoZSx0KXt2YXIgbj10PT09ImNvZGV4IixpPW4/InJlc3VtZS1jb2RleC1oaXN0b3J5IjoicmVzdW1lLWhpc3RvcnkiLGE9bj8iZGVsZXRlLWNvZGV4LWhpc3RvcnkiOiJkZWxldGUtaGlzdG9yeSIsdT1uP3Iuc2VsZWN0ZWRDb2RleEhpc3RvcnlJZHM6ci5zZWxlY3RlZENsYXVkZUhpc3RvcnlJZHMscz1lLmNsYXVkZVNlc3Npb25JZC5zbGljZSgwLDgpLG89ZS5maXJzdFVzZXJNZXNzYWdlfHwiKFx1N0E3QVx1NEYxQVx1OEJERCkiLGw9WnUoZS50aW1lc3RhbXApLGM9WHUodCxlLmNsYXVkZVNlc3Npb25JZCwiXHU5MDA5XHU2MkU5XHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREICIrbyksZj1yLnNlc3Npb25zTWFuYWdlTW9kZT8iIjonPGJ1dHRvbiBjbGFzcz0ic2Vzc2lvbi1hY3Rpb24tYnRuIGRlbGV0ZS1idG4iIGRhdGEtYWN0aW9uPSInK2ErJyIgZGF0YS1jbGF1ZGUtc2Vzc2lvbi1pZD0iJytlLmNsYXVkZVNlc3Npb25JZCsnIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NTIyMFx1OTY2NFx1NEYxQVx1OEJERCIgdGl0bGU9Ilx1OTY5MFx1ODVDRlx1NkI2NFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERCI+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMyA2aDE4Ii8+PHBhdGggZD0iTTggNlY0YTIgMiAwIDAxMi0yaDRhMiAyIDAgMDEyIDJ2MiIvPjxwYXRoIGQ9Ik0xOSA2bC0xIDE0YTIgMiAwIDAxLTIgMkg4YTIgMiAwIDAxLTItMkw1IDYiLz48L3N2Zz48L2J1dHRvbj4nLGQ9ci5zZXNzaW9uc01hbmFnZU1vZGU/IiI6JzxidXR0b24gY2xhc3M9InNlc3Npb24tYWN0aW9uLWJ0biIgZGF0YS1hY3Rpb249IicraSsnIiBkYXRhLWNsYXVkZS1zZXNzaW9uLWlkPSInK2UuY2xhdWRlU2Vzc2lvbklkKyciIGRhdGEtY3dkPSInK3AoZS5jd2QpKyciIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU2MDYyXHU1OTBEXHU0RjFBXHU4QkREIiB0aXRsZT0iJysobj8iXHU2MDYyXHU1OTBEXHU2QjY0IENvZGV4IFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERCI6Ilx1NjA2Mlx1NTkwRFx1NkI2NCBDbGF1ZGUgXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREIikrJyI+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMSA0djZoNiIvPjxwYXRoIGQ9Ik0zLjUxIDE1YTkgOSAwIDEwNS42NC0xMS4zNkwzIDEwIi8+PC9zdmc+PC9idXR0b24+JztyZXR1cm4nPGRpdiBjbGFzcz0ic2Vzc2lvbi1pdGVtIGNsYXVkZS1oaXN0b3J5LWl0ZW0nKyhyLnNlc3Npb25zTWFuYWdlTW9kZSYmdVtlLmNsYXVkZVNlc3Npb25JZF0/IiBzZWxlY3RlZCI6IiIpKyciIGRhdGEtY2xhdWRlLWhpc3RvcnktaWQ9IicrZS5jbGF1ZGVTZXNzaW9uSWQrJyIgZGF0YS1jd2Q9IicrcChlLmN3ZCkrJyIgcm9sZT0iYnV0dG9uIiB0YWJpbmRleD0iMCI+PGRpdiBjbGFzcz0ic2Vzc2lvbi1pdGVtLWNvbnRlbnQiPjxkaXYgY2xhc3M9InNlc3Npb24taXRlbS1yb3ciPicrYysnPGRpdiBjbGFzcz0ic2Vzc2lvbi1tYWluIj48ZGl2IGNsYXNzPSJzZXNzaW9uLWNvbW1hbmQgY2xhdWRlLWhpc3RvcnktcHJldmlldyI+JytwKG8pKyc8L2Rpdj48ZGl2IGNsYXNzPSJzZXNzaW9uLW1ldGEiPjxzcGFuIGNsYXNzPSJzZXNzaW9uLWlkIiB0aXRsZT0iJytwKGUuY2xhdWRlU2Vzc2lvbklkKSsnIj4nK3AocykrIjwvc3Bhbj48c3Bhbj4iK3AobCkrJzwvc3Bhbj48L2Rpdj48L2Rpdj48c3BhbiBjbGFzcz0ic2Vzc2lvbi1hY3Rpb25zIj4nK2QrZisiPC9zcGFuPjwvZGl2PjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gWnUoZSl7aWYoIWUpcmV0dXJuIiI7dHJ5e3ZhciB0PW5ldyBEYXRlKGUpLG49bmV3IERhdGUsaT1uLXQsYT1NYXRoLmZsb29yKGkvNmU0KTtpZihhPDEpcmV0dXJuIlx1NTIxQVx1NTIxQSI7aWYoYTw2MClyZXR1cm4gYSsiIFx1NTIwNlx1OTQ5Rlx1NTI0RCI7dmFyIHU9TWF0aC5mbG9vcihhLzYwKTtpZih1PDI0KXJldHVybiB1KyIgXHU1QzBGXHU2NUY2XHU1MjREIjt2YXIgcz1NYXRoLmZsb29yKHUvMjQpO3JldHVybiBzPDMwP3MrIiBcdTU5MjlcdTUyNEQiOnQudG9Mb2NhbGVEYXRlU3RyaW5nKCl9Y2F0Y2h7cmV0dXJuIiJ9fWZ1bmN0aW9uIGVzKCl7cmV0dXJuIGZldGNoKCIvYXBpL2NsYXVkZS1oaXN0b3J5Iix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGUub2s/ZS5qc29uKCk6W119KS50aGVuKGZ1bmN0aW9uKGUpe3IuY2xhdWRlSGlzdG9yeT1lfHxbXSxyLmNsYXVkZUhpc3RvcnlMb2FkZWQ9ITAsbWUoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7ci5jbGF1ZGVIaXN0b3J5TG9hZGVkPSEwLHIuY2xhdWRlSGlzdG9yeT1bXSxtZSgpfSl9dmFyIFJuPW51bGw7ZnVuY3Rpb24gJHIoKXtyZXR1cm4gUWMoKSxyLmNsYXVkZUhpc3RvcnlMb2FkZWQ/UHJvbWlzZS5yZXNvbHZlKCk6Um58fChSbj1lcygpLnRoZW4oZnVuY3Rpb24oKXtSbj1udWxsfSxmdW5jdGlvbigpe1JuPW51bGx9KSxSbil9ZnVuY3Rpb24gWWMoKXtyZXR1cm4gZmV0Y2goIi9hcGkvY29kZXgtaGlzdG9yeSIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLm9rP2UuanNvbigpOltdfSkudGhlbihmdW5jdGlvbihlKXtyLmNvZGV4SGlzdG9yeT1lfHxbXSxyLmNvZGV4SGlzdG9yeUxvYWRlZD0hMCxtZSgpfSkuY2F0Y2goZnVuY3Rpb24oKXtyLmNvZGV4SGlzdG9yeUxvYWRlZD0hMCxyLmNvZGV4SGlzdG9yeT1bXSxtZSgpfSl9dmFyIFduPW51bGw7ZnVuY3Rpb24gUWMoKXtyZXR1cm4gci5jb2RleEhpc3RvcnlMb2FkZWQ/UHJvbWlzZS5yZXNvbHZlKCk6V258fChXbj1ZYygpLnRoZW4oZnVuY3Rpb24oKXtXbj1udWxsfSxmdW5jdGlvbigpe1duPW51bGx9KSxXbil9ZnVuY3Rpb24gJGMoKXt2YXIgZT1uZXcgU2V0O3JldHVybiByLnNlc3Npb25zLmZvckVhY2goZnVuY3Rpb24odCl7dC5jbGF1ZGVTZXNzaW9uSWQmJmUuYWRkKHQuY2xhdWRlU2Vzc2lvbklkKX0pLHIuY29kZXhIaXN0b3J5LmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4gdC5oYXNDb252ZXJzYXRpb24mJiF0Lm1hbmFnZWRCeVdhbmQmJiFlLmhhcyh0LmNsYXVkZVNlc3Npb25JZCl9KX1mdW5jdGlvbiB0cygpe3NzKCksIVhyKCkmJihyLnBvbGxUaW1lcj1zZXRJbnRlcnZhbChSdCwxNjAwKSl9c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuc2Vzc2lvbi10aW1lIik7ZS5sZW5ndGg+MCYmS2EoKX0sM2U0KTtmdW5jdGlvbiAkaSgpe3Iud3NSZWNvbm5lY3RUaW1lciYmKGNsZWFyVGltZW91dChyLndzUmVjb25uZWN0VGltZXIpLHIud3NSZWNvbm5lY3RUaW1lcj1udWxsKX12YXIgWGM9MWU0LFpjPTRlNDtmdW5jdGlvbiBlZCgpe25zKCksci53c0hlYXJ0YmVhdENoZWNrVGltZXI9c2V0SW50ZXJ2YWwocnMsWGMpfWZ1bmN0aW9uIG5zKCl7ci53c0hlYXJ0YmVhdENoZWNrVGltZXImJihjbGVhckludGVydmFsKHIud3NIZWFydGJlYXRDaGVja1RpbWVyKSxyLndzSGVhcnRiZWF0Q2hlY2tUaW1lcj1udWxsKX1mdW5jdGlvbiBycygpe2lmKCEoIXIud3N8fHIud3MucmVhZHlTdGF0ZSE9PVdlYlNvY2tldC5PUEVOKSYmci5sYXN0V3NNZXNzYWdlQXQpe3ZhciBlPURhdGUubm93KCktci5sYXN0V3NNZXNzYWdlQXQ7ZT5aYyYmWGkoImhlYXJ0YmVhdC1zdGFsZS0iK01hdGgucm91bmQoZS8xZTMpKyJzIil9fWZ1bmN0aW9uIFhpKGUpe2lmKCRpKCksci53cyl7dmFyIHQ9ci53czt0cnl7dC5vbmNsb3NlPW51bGx9Y2F0Y2h7fXRyeXt0Lm9uZXJyb3I9bnVsbH1jYXRjaHt9dHJ5e3Qub25tZXNzYWdlPW51bGx9Y2F0Y2h7fXRyeXt0LmNsb3NlKCl9Y2F0Y2h7fXIud3M9bnVsbH1yLndzQ29ubmVjdGVkPSExLHIud3NSZWNvbm5lY3RBdHRlbXB0cz0wLFhyKGUpfWZ1bmN0aW9uIGlzKCl7aWYoIXIud3NSZWNvbm5lY3RUaW1lciYmIWRvY3VtZW50LmhpZGRlbil7dmFyIGU9ci53c1JlY29ubmVjdEF0dGVtcHRzfHwwLHQ9WzUwMCwxZTMsMmUzLDRlMyw4ZTNdLG49dFtlPHQubGVuZ3RoP2U6dC5sZW5ndGgtMV07ci53c1JlY29ubmVjdEF0dGVtcHRzPWUrMSxyLndzUmVjb25uZWN0VGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe3Iud3NSZWNvbm5lY3RUaW1lcj1udWxsLHIuY29uZmlnJiYhci53cyYmIWRvY3VtZW50LmhpZGRlbiYmWHIoImJhY2tvZmYiKX0sbil9fWZ1bmN0aW9uIFhyKGUpe2lmKCF3aW5kb3cuV2ViU29ja2V0KXJldHVybiExO2lmKHIud3Mpe3RyeXtyLndzLmNsb3NlKCl9Y2F0Y2h7fXIud3M9bnVsbH12YXIgdD13aW5kb3cubG9jYXRpb24ucHJvdG9jb2w9PT0iaHR0cHM6Ij8id3NzOiI6IndzOiIsbj10KyIvLyIrd2luZG93LmxvY2F0aW9uLmhvc3QrIi93cyI7dHJ5e3ZhciBpPW5ldyBXZWJTb2NrZXQobik7cmV0dXJuIGkub25vcGVuPWZ1bmN0aW9uKCl7ci53cz1pLHIud3NDb25uZWN0ZWQ9ITAsci5sYXN0V3NNZXNzYWdlQXQ9RGF0ZS5ub3coKSxyLndzUmVjb25uZWN0QXR0ZW1wdHM9MCwkaSgpLHIubGFzdFNlcUJ5U2Vzc2lvbj17fSxlZCgpLFRuKHIuc2VsZWN0ZWRJZCksRHAoKSxocigid3MtcmVjb25uZWN0Iil9LGkub25tZXNzYWdlPWZ1bmN0aW9uKGEpe3IubGFzdFdzTWVzc2FnZUF0PURhdGUubm93KCk7dHJ5e3ZhciB1PUpTT04ucGFyc2UoYS5kYXRhKTtpZih1JiZ1LnR5cGU9PT0icGluZyIpe2lmKHIud3MmJnIud3MucmVhZHlTdGF0ZT09PVdlYlNvY2tldC5PUEVOKXRyeXtyLndzLnNlbmQoSlNPTi5zdHJpbmdpZnkoe3R5cGU6InBvbmciLHQ6dS50fSkpfWNhdGNoe31yZXR1cm59aWYodSYmdS50eXBlPT09InJlc3luY19yZXF1aXJlZCImJnUuc2Vzc2lvbklkKXtpZihyLndzJiZyLndzLnJlYWR5U3RhdGU9PT1XZWJTb2NrZXQuT1BFTil0cnl7ci53cy5zZW5kKEpTT04uc3RyaW5naWZ5KHt0eXBlOiJyZXN5bmMiLHNlc3Npb25JZDp1LnNlc3Npb25JZH0pKX1jYXRjaHt9ci5sYXN0U2VxQnlTZXNzaW9ufHwoci5sYXN0U2VxQnlTZXNzaW9uPXt9KSxyLmxhc3RTZXFCeVNlc3Npb25bdS5zZXNzaW9uSWRdPTA7cmV0dXJufWlmKHUmJih1LnR5cGU9PT0iaW5pdCJ8fHUudHlwZT09PSJvdXRwdXQiKSYmdS5zZXNzaW9uSWQmJnR5cGVvZiB1LnNlcT09Im51bWJlciIpe3IubGFzdFNlcUJ5U2Vzc2lvbnx8KHIubGFzdFNlcUJ5U2Vzc2lvbj17fSk7dmFyIHM9ci5sYXN0U2VxQnlTZXNzaW9uW3Uuc2Vzc2lvbklkXXx8MDtpZih1LnR5cGU9PT0iaW5pdCIpci5sYXN0U2VxQnlTZXNzaW9uW3Uuc2Vzc2lvbklkXT11LnNlcTtlbHNlIGlmKHUuc2VxPT09cysxKXIubGFzdFNlcUJ5U2Vzc2lvblt1LnNlc3Npb25JZF09dS5zZXE7ZWxzZSBpZih1LnNlcT5zKzEmJnM+MCl7aWYoci53cyYmci53cy5yZWFkeVN0YXRlPT09V2ViU29ja2V0Lk9QRU4pdHJ5e3Iud3Muc2VuZChKU09OLnN0cmluZ2lmeSh7dHlwZToicmVzeW5jIixzZXNzaW9uSWQ6dS5zZXNzaW9uSWR9KSl9Y2F0Y2h7fXIubGFzdFNlcUJ5U2Vzc2lvblt1LnNlc3Npb25JZF09MDtyZXR1cm59ZWxzZXtpZih1LnNlcTxzKXJldHVybjtyLmxhc3RTZXFCeVNlc3Npb25bdS5zZXNzaW9uSWRdPXUuc2VxfX10ZCh1KX1jYXRjaHt9fSxpLm9uY2xvc2U9ZnVuY3Rpb24oKXtyLndzPW51bGwsci53c0Nvbm5lY3RlZD0hMSxucygpLGlzKCl9LGkub25lcnJvcj1mdW5jdGlvbigpe2kuY2xvc2UoKX0sITB9Y2F0Y2h7cmV0dXJuIGlzKCksITF9fWZ1bmN0aW9uIHRkKGUpe3N3aXRjaChlLnR5cGUpe2Nhc2Uib3V0cHV0IjppZihlLmRhdGEmJmUuc2Vzc2lvbklkJiZPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJpc1Jlc3BvbmRpbmciKSYmKHIuX2xhc3RJc1Jlc3BvbmRpbmd8fChyLl9sYXN0SXNSZXNwb25kaW5nPXt9KSxyLl9sYXN0SXNSZXNwb25kaW5nW2Uuc2Vzc2lvbklkXT0hIWUuZGF0YS5pc1Jlc3BvbmRpbmcpLGUuZGF0YSYmZS5zZXNzaW9uSWQpe3ZhciB0PSEhZS5kYXRhLmluY3JlbWVudGFsLG49e2lkOmUuc2Vzc2lvbklkfSxpPSExO2lmKCF0JiZlLmRhdGEub3V0cHV0IT09dm9pZCAwJiYobi5vdXRwdXQ9ZS5kYXRhLm91dHB1dCksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwicGVybWlzc2lvbkJsb2NrZWQiKSYmKG4ucGVybWlzc2lvbkJsb2NrZWQ9ISFlLmRhdGEucGVybWlzc2lvbkJsb2NrZWQpLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsInF1ZXVlZE1lc3NhZ2VzIikmJihuLnF1ZXVlZE1lc3NhZ2VzPWUuZGF0YS5xdWV1ZWRNZXNzYWdlc3x8W10sci5xdWV1ZUVwb2NoKyspLGUuZGF0YS5zdHJ1Y3R1cmVkU3RhdGUmJihuLnN0cnVjdHVyZWRTdGF0ZT1lLmRhdGEuc3RydWN0dXJlZFN0YXRlKSxlLmRhdGEuc2Vzc2lvbktpbmQmJihuLnNlc3Npb25LaW5kPWUuZGF0YS5zZXNzaW9uS2luZCksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwidGl0bGUiKSYmKG4udGl0bGU9ZS5kYXRhLnRpdGxlLGk9ITApLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsImRlc2NyaXB0aW9uIikmJihuLmRlc2NyaXB0aW9uPWUuZGF0YS5kZXNjcmlwdGlvbixpPSEwKSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJzdW1tYXJ5IikmJihuLnN1bW1hcnk9ZS5kYXRhLnN1bW1hcnkpLGUuZGF0YS5tZXNzYWdlcyluLm1lc3NhZ2VzPWUuZGF0YS5tZXNzYWdlcyx0eXBlb2YgZS5kYXRhLm1lc3NhZ2VPZmZzZXQ9PSJudW1iZXIiJiYobi5tZXNzYWdlT2Zmc2V0PWUuZGF0YS5tZXNzYWdlT2Zmc2V0KSx0eXBlb2YgZS5kYXRhLm1lc3NhZ2VUb3RhbD09Im51bWJlciImJihuLm1lc3NhZ2VUb3RhbD1lLmRhdGEubWVzc2FnZVRvdGFsKTtlbHNlIGlmKHQmJmUuZGF0YS5sYXN0TWVzc2FnZSl7dmFyIGE9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKE0pe3JldHVybiBNLmlkPT09ZS5zZXNzaW9uSWR9KTtpZihhKXt2YXIgdT1BcnJheS5pc0FycmF5KGEubWVzc2FnZXMpP2EubWVzc2FnZXMuc2xpY2UoKTpbXSxzPWUuZGF0YS5tZXNzYWdlQ291bnR8fDAsbz10eXBlb2YgYS5tZXNzYWdlT2Zmc2V0PT0ibnVtYmVyIj9hLm1lc3NhZ2VPZmZzZXQ6MCxsPXUubGVuZ3RoPjA/dVt1Lmxlbmd0aC0xXTpudWxsLGM9ZS5kYXRhLmxhc3RNZXNzYWdlO2wmJmMucm9sZSYmbC5yb2xlPT09Yy5yb2xlP3VbdS5sZW5ndGgtMV09WWYobCxjKTpvK3UubGVuZ3RoPHMmJnUucHVzaChjKSxuLm1lc3NhZ2VzPXUscz4wJiYobi5tZXNzYWdlVG90YWw9cyl9fXZhciBmPXQmJmUuZGF0YS5jaHVuayYmIWUuZGF0YS5sYXN0TWVzc2FnZSYmIW4ubWVzc2FnZXMmJm4ub3V0cHV0PT09dm9pZCAwJiYhZS5kYXRhLnN0cnVjdHVyZWRTdGF0ZSYmIWUuZGF0YS5zZXNzaW9uS2luZDtpZihmKXtpZihlLmRhdGEucGVybWlzc2lvbkJsb2NrZWQhPT12b2lkIDApe3ZhciBkPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihNKXtyZXR1cm4gTS5pZD09PWUuc2Vzc2lvbklkfSk7ZCYmISFkLnBlcm1pc3Npb25CbG9ja2VkIT0hIWUuZGF0YS5wZXJtaXNzaW9uQmxvY2tlZCYmKFEobiksZS5zZXNzaW9uSWQ9PT1yLnNlbGVjdGVkSWQmJll0KCkpfX1lbHNlIGlmKChuLm91dHB1dCE9PXZvaWQgMHx8bi5tZXNzYWdlc3x8dHx8ZS5kYXRhLnBlcm1pc3Npb25CbG9ja2VkIT09dm9pZCAwfHxuLnRpdGxlfHxuLmRlc2NyaXB0aW9uKSYmKFEobiksaSYmS2EoKSxlLnNlc3Npb25JZD09PXIuc2VsZWN0ZWRJZCkpe3ZhciB2PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihNKXtyZXR1cm4gTS5pZD09PWUuc2Vzc2lvbklkfSl8fG47ci5jdXJyZW50TWVzc2FnZXM9amUodixaZSh2LHYub3V0cHV0LCExKSksWXQoKSx2LnNlc3Npb25LaW5kPT09InN0cnVjdHVyZWQifHxlLmRhdGEuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCI/ZnIoKTpaaSgpfX1lLnNlc3Npb25JZD09PXIuc2VsZWN0ZWRJZCYmci50ZXJtaW5hbCYmZS5kYXRhJiYoZS5kYXRhLmNodW5rJiZhcChlLnNlc3Npb25JZCk/KHIubGFzdENodW5rQXQ9RGF0ZS5ub3coKSxyLnRlcm1pbmFsTGl2ZVN0cmVhbVNlc3Npb25zW2Uuc2Vzc2lvbklkXT0hMCxWbihyLnRlcm1pbmFsLGUuZGF0YS5jaHVuayksci50ZXJtaW5hbFNlc3Npb25JZD1lLnNlc3Npb25JZCxlLmRhdGEub3V0cHV0PyhyLnRlcm1pbmFsT3V0cHV0PUNzKE5hKGUuZGF0YS5vdXRwdXQpKSxyLnRlcm1pbmFsT3V0cHV0TWFya2VyPTApOnIudGVybWluYWxPdXRwdXQ9Q3MoKHIudGVybWluYWxPdXRwdXR8fCIiKStOYShlLmRhdGEuY2h1bmspKSxidCgib3V0cHV0IiksdnQoKSk6IWUuZGF0YS5pbmNyZW1lbnRhbCYmT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwib3V0cHV0IikmJmlpKGUuc2Vzc2lvbklkLGUuZGF0YS5vdXRwdXR8fCIiLHttb2RlOiJhcHBlbmQifSkpO2JyZWFrO2Nhc2Uic3RhcnRlZCI6Zm4oKTticmVhaztjYXNlImVuZGVkIjp7dmFyIGc9ZS5kYXRhJiZlLmRhdGEuc3RhdHVzP2UuZGF0YS5zdGF0dXM6ImV4aXRlZCIsaD1lLmRhdGEmJk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsInBlcm1pc3Npb25CbG9ja2VkIik/ISFlLmRhdGEucGVybWlzc2lvbkJsb2NrZWQ6ITEsbT17aWQ6ZS5zZXNzaW9uSWQsc3RhdHVzOmcscGVybWlzc2lvbkJsb2NrZWQ6aH07ZS5kYXRhJiZlLmRhdGEubWVzc2FnZXMmJihtLm1lc3NhZ2VzPWUuZGF0YS5tZXNzYWdlcyx0eXBlb2YgZS5kYXRhLm1lc3NhZ2VPZmZzZXQ9PSJudW1iZXIiJiYobS5tZXNzYWdlT2Zmc2V0PWUuZGF0YS5tZXNzYWdlT2Zmc2V0KSx0eXBlb2YgZS5kYXRhLm1lc3NhZ2VUb3RhbD09Im51bWJlciImJihtLm1lc3NhZ2VUb3RhbD1lLmRhdGEubWVzc2FnZVRvdGFsKSksZS5kYXRhJiZlLmRhdGEuc3RydWN0dXJlZFN0YXRlJiYobS5zdHJ1Y3R1cmVkU3RhdGU9ZS5kYXRhLnN0cnVjdHVyZWRTdGF0ZSksZS5kYXRhJiZlLmRhdGEucXVldWVkTWVzc2FnZXMmJihtLnF1ZXVlZE1lc3NhZ2VzPWUuZGF0YS5xdWV1ZWRNZXNzYWdlcyksUShtKSxlLnNlc3Npb25JZD09PXIuc2VsZWN0ZWRJZCYmKEduKCJFbnRlciBcdTUzRDFcdTkwMDEgXHhCNyBTaGlmdCtFbnRlciBcdTYzNjJcdTg4NEMiKSxaaSghMCkpO3ZhciBiPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihNKXtyZXR1cm4gTS5pZD09PWUuc2Vzc2lvbklkfSksdz1lLmRhdGEmJmUuZGF0YS5leGl0Q29kZSxFPXchPW51bGwmJnchPT0wLEI9YiYmYi5zdW1tYXJ5fHwiIixGPWI/a2MoYik6IiIseD1FPyJcdTRFRkJcdTUyQTFcdTVGMDJcdTVFMzhcdTdFRDNcdTY3NUYiOiJcdTRFRkJcdTUyQTFcdTVERjJcdTVCOENcdTYyMTAiLFM9IiI7Qj8oUz1CLEYmJiFFJiYoUys9YApgK0YpKTpTPWImJmIuY29tbWFuZHx8ZS5zZXNzaW9uSWQsSm4oRT8iZXJyb3IiOiJzdWNjZXNzIiksZ2YoZS5zZXNzaW9uSWQseCxTKSxJcyhlLnNlc3Npb25JZCkscGEoKSwoZS5zZXNzaW9uSWQhPT1yLnNlbGVjdGVkSWR8fGRvY3VtZW50LmhpZGRlbikmJmRhKHt0aXRsZTp4LGJvZHk6Uyx0eXBlOkU/Indhcm5pbmciOiJzdWNjZXNzIixpY29uOkU/IiEiOiJcdTI3MTMiLGR1cmF0aW9uOjZlMyxhY3Rpb25MYWJlbDoiXHU2N0U1XHU3NzBCIixhY3Rpb246ZnVuY3Rpb24oKXtXdChlLnNlc3Npb25JZCl9fSksci5tZXNzYWdlUXVldWU9W10sci5wZW5kaW5nTWVzc2FnZXM9W107dmFyIEg9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKE0pe3JldHVybiBNLmlkPT09ZS5zZXNzaW9uSWR9KSxSPWUuc2Vzc2lvbklkPT09ci5zZWxlY3RlZElkP3Iuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihNKXtyZXR1cm4gTS5pZD09PXIuc2VsZWN0ZWRJZH0pOm51bGwsJD0hIShIJiZILnNlc3Npb25LaW5kPT09InN0cnVjdHVyZWQifHxSJiZSLnNlc3Npb25LaW5kPT09InN0cnVjdHVyZWQiKTskJiZlLnNlc3Npb25JZD09PXIuc2VsZWN0ZWRJZD8oVXMoKSxwdShlLnNlc3Npb25JZCkpOiR8fChyLnN0cnVjdHVyZWRJbnB1dFF1ZXVlPVtdLHB1KHIuc2VsZWN0ZWRJZCksc24oKSksZS5zZXNzaW9uSWQ9PT1yLnNlbGVjdGVkSWQmJigkfHxJbighMSksci5jdXJyZW50VGFzaz1udWxsLFl0KCkpLGUuc2Vzc2lvbklkPT09ci5zZWxlY3RlZElkJiZJcigpLGZuKCkudGhlbihmdW5jdGlvbigpe2NpKCl9KSxlLnNlc3Npb25JZD09PXIuc2VsZWN0ZWRJZCYmKCR8fHBuKGUuc2Vzc2lvbklkKSk7YnJlYWt9Y2FzZSJpbml0IjppZihlLnNlc3Npb25JZD09PXIuc2VsZWN0ZWRJZCYmZS5kYXRhKXtyLmNoYXRSZW5kZXJUaW1lciYmKGNsZWFyVGltZW91dChyLmNoYXRSZW5kZXJUaW1lciksci5jaGF0UmVuZGVyVGltZXI9bnVsbCksUShlLmRhdGEpO3ZhciBJPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihNKXtyZXR1cm4gTS5pZD09PWUuc2Vzc2lvbklkfSk7ci5jdXJyZW50TWVzc2FnZXM9amUoSXx8ZS5kYXRhLFplKEl8fGUuZGF0YSxlLmRhdGEub3V0cHV0LCExKSksZnIoITApLFl0KCksYXMoKTt2YXIgRD1lLmRhdGEub3V0cHV0fHwiIixUPXIudGVybWluYWxTZXNzaW9uSWQ9PT1lLnNlc3Npb25JZCxPPXIudGVybWluYWxPdXRwdXR8fCIiLFU9VCYmTy5sZW5ndGg+MCYmRC5sZW5ndGg+PU8ubGVuZ3RoJiZELnN0YXJ0c1dpdGgoTyk7YWQoRCxlLnNlc3Npb25JZCxVPyJhcHBlbmQiOiJyZXBsYWNlIiksaHIoImluaXQiKX1icmVhaztjYXNlInVzYWdlIjpicmVhaztjYXNlInRhc2siOmUuc2Vzc2lvbklkPT09ci5zZWxlY3RlZElkJiYoci5jdXJyZW50VGFzaz1lLmRhdGF8fG51bGwsWXQoKSksdmYoZS5zZXNzaW9uSWQsZS5kYXRhfHxudWxsKSx2YShlLnNlc3Npb25JZCksS2EoKTticmVhaztjYXNlInN0YXR1cyI6aWYoZS5zZXNzaW9uSWQmJmUuZGF0YSl7dmFyIFY9e2lkOmUuc2Vzc2lvbklkfTtpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJzdGF0dXMiKSYmKFYuc3RhdHVzPWUuZGF0YS5zdGF0dXMpLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsImV4aXRDb2RlIikmJihWLmV4aXRDb2RlPWUuZGF0YS5leGl0Q29kZSksZS5kYXRhLnN0cnVjdHVyZWRTdGF0ZSlWLnN0cnVjdHVyZWRTdGF0ZT1lLmRhdGEuc3RydWN0dXJlZFN0YXRlO2Vsc2UgaWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwic3RhdHVzIikpe3ZhciBhPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihqKXtyZXR1cm4gai5pZD09PWUuc2Vzc2lvbklkfSk7YSYmYS5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkIiYmKFYuc3RydWN0dXJlZFN0YXRlPU9iamVjdC5hc3NpZ24oe30sYS5zdHJ1Y3R1cmVkU3RhdGV8fHt9LHtpbkZsaWdodDplLmRhdGEuc3RhdHVzPT09InJ1bm5pbmcifSkpfWlmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsInF1ZXVlZE1lc3NhZ2VzIikmJihWLnF1ZXVlZE1lc3NhZ2VzPWUuZGF0YS5xdWV1ZWRNZXNzYWdlc3x8W10sci5xdWV1ZUVwb2NoKyspLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsInBlcm1pc3Npb25CbG9ja2VkIikmJihWLnBlcm1pc3Npb25CbG9ja2VkPSEhZS5kYXRhLnBlcm1pc3Npb25CbG9ja2VkKSxlLmRhdGEucGVybWlzc2lvblJlcXVlc3Qpe1YucGVuZGluZ0VzY2FsYXRpb249e3Njb3BlOmUuZGF0YS5wZXJtaXNzaW9uUmVxdWVzdC5zY29wZSx0YXJnZXQ6ZS5kYXRhLnBlcm1pc3Npb25SZXF1ZXN0LnRhcmdldCxyZWFzb246ZS5kYXRhLnBlcm1pc3Npb25SZXF1ZXN0LnByb21wdH07dmFyIFg9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKE0pe3JldHVybiBNLmlkPT09ZS5zZXNzaW9uSWR9KSxlZT1YJiYoWC5zdW1tYXJ5fHxYLmNvbW1hbmQpfHxlLnNlc3Npb25JZCxaPWUuZGF0YS5wZXJtaXNzaW9uUmVxdWVzdC5wcm9tcHR8fCJcdTk3MDBcdTg5ODFcdTY3NDNcdTk2NTBcdTVCQTFcdTYyNzkiLHVlPWUuZGF0YS5wZXJtaXNzaW9uUmVxdWVzdC50YXJnZXQsTD1lZTt1ZT9MKz1gCmArWisiIFx4QjcgIit1ZTpMKz1gCmArWixKbigibWVkaXVtIiksbWYoZS5zZXNzaW9uSWQsTCksZS5zZXNzaW9uSWQhPT1yLnNlbGVjdGVkSWQmJmRhKHt0aXRsZToiXHU5NzAwXHU4OTgxXHU0RjYwXHU3Njg0XHU2Mzg4XHU2NzQzIixib2R5OkwsdHlwZToid2FybmluZyIsaWNvbjoiISIsZHVyYXRpb246MCxhY3Rpb25MYWJlbDoiXHU1M0JCXHU1OTA0XHU3NDA2IixhY3Rpb246ZnVuY3Rpb24oKXtXdChlLnNlc3Npb25JZCl9fSl9ZS5kYXRhLnBlcm1pc3Npb25CbG9ja2VkPT09ITEmJihWLnBlbmRpbmdFc2NhbGF0aW9uPW51bGwpLGUuZGF0YS5hcHByb3ZhbFN0YXRzJiYoVi5hcHByb3ZhbFN0YXRzPWUuZGF0YS5hcHByb3ZhbFN0YXRzKSxRKFYpLHZhKGUuc2Vzc2lvbklkKSxwYSgpLGUuc2Vzc2lvbklkPT09ci5zZWxlY3RlZElkJiYoWXQoKSxlLmRhdGEuYXBwcm92YWxTdGF0cyYmYXMoKSxWLnN0cnVjdHVyZWRTdGF0ZSYmKFYuc3RydWN0dXJlZFN0YXRlLmluRmxpZ2h0fHwoR24oIkVudGVyIFx1NTNEMVx1OTAwMSBceEI3IFNoaWZ0K0VudGVyIFx1NjM2Mlx1ODg0QyIpLFVzKCkpLFppKCkpKX1icmVhaztjYXNlIm5vdGlmaWNhdGlvbiI6ZS5kYXRhJiYoZS5kYXRhLmtpbmQ9PT0idXBkYXRlIj94cyhlLmRhdGEuY3VycmVudHx8Ii0iLGUuZGF0YS5sYXRlc3R8fCItIik6ZS5kYXRhLmtpbmQ9PT0iYXV0by11cGRhdGUtc3RhcnQiP3dmKGUuZGF0YS5jdXJyZW50fHwiLSIsZS5kYXRhLmxhdGVzdHx8Ii0iKTooZS5kYXRhLmtpbmQ9PT0iYXV0by11cGRhdGUtcmVzdGFydCJ8fGUuZGF0YS5raW5kPT09InJlc3RhcnQiKSYmdW4oKSk7YnJlYWt9fWZ1bmN0aW9uIFl0KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImN1cnJlbnQtdGFzayIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBlcm1pc3Npb24tYWN0aW9ucyIpLG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBlcm1pc3Npb24tYWN0aW9ucy1sYWJlbCIpO2lmKGUpe3ZhciBpPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbih2KXtyZXR1cm4gdi5pZD09PXIuc2VsZWN0ZWRJZH0pO2kmJmkucHJvdmlkZXI9PT0iY29kZXgiJiYodCYmdC5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxlLmNsYXNzTGlzdC5yZW1vdmUoInBlcm1pc3Npb24tYmxvY2tlZCIpKTt2YXIgYT1pJiZpLnBlbmRpbmdFc2NhbGF0aW9uP2kucGVuZGluZ0VzY2FsYXRpb246bnVsbCx1PWkmJmkucHJvdmlkZXIhPT0iY29kZXgiP2F8fGkucGVybWlzc2lvbkJsb2NrZWQ6ITE7aWYodSl7dmFyIHM9aSYmaS5hdXRvQXBwcm92ZVBlcm1pc3Npb25zO2lmKG4paWYocyluLnRleHRDb250ZW50PSJcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTRFMkQuLi4iO2Vsc2UgaWYoYSl7dmFyIG89YS5yZWFzb258fCJcdTdCNDlcdTVGODVcdTYzODhcdTY3NDMiLGw9YS50YXJnZXQ/IiBceEI3ICIrYS50YXJnZXQ6IiI7bi50ZXh0Q29udGVudD1vK2x9ZWxzZSBuLnRleHRDb250ZW50PSJcdTdCNDlcdTVGODVcdTYzODhcdTY3NDMiO2lmKHQpe3QuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik7dmFyIGM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcHJvdmUtcGVybWlzc2lvbi1idG4iKSxmPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkZW55LXBlcm1pc3Npb24tYnRuIik7YyYmYy5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLCEhcyksZiYmZi5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLCEhcyl9ZS50ZXh0Q29udGVudD0iIixlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGUuY2xhc3NMaXN0LnJlbW92ZSgicGVybWlzc2lvbi1ibG9ja2VkIik7cmV0dXJufWUuY2xhc3NMaXN0LnJlbW92ZSgicGVybWlzc2lvbi1ibG9ja2VkIiksdCYmdC5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKTt2YXIgZD1yLmN1cnJlbnRUYXNrO2QmJmQudGl0bGU/KGUudGV4dENvbnRlbnQ9ZC50aXRsZSxlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKTooZS50ZXh0Q29udGVudD0iIixlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpKX19ZnVuY3Rpb24gYXMoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXBwcm92YWwtc3RhdHMiKTtpZihlKXt2YXIgdD1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1yLnNlbGVjdGVkSWR9KSxuPXQmJnQuYXBwcm92YWxTdGF0cztpZighbnx8bi50b3RhbD09PTApe2UuY2xhc3NOYW1lPSJhcHByb3ZhbC1zdGF0cyBoaWRkZW4iLGUuaW5uZXJIVE1MPSIiO3JldHVybn1lLmNsYXNzTmFtZT0iYXBwcm92YWwtc3RhdHMiLGUuaW5uZXJIVE1MPSc8c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtZGl2aWRlciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1iYWRnZSIgaWQ9ImFwcHJvdmFsLXN0YXRzLWJhZGdlIiB0aXRsZT0iXHU2NzJDXHU2QjIxXHU0RjFBXHU4QkREXHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHU3RURGXHU4QkExIj48c3ZnIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1pY29uIiB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTIgMjJzOC00IDgtMTBWNWwtOC0zLTggM3Y3YzAgNiA4IDEwIDggMTB6Ii8+PC9zdmc+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXRvdGFsIj4nK24udG90YWwrJzwvc3Bhbj48L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXBvcHVwIiBpZD0iYXBwcm92YWwtc3RhdHMtcG9wdXAiPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1wb3B1cC10aXRsZSI+XHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHU3RURGXHU4QkExPC9zcGFuPicrKG4uY29tbWFuZD4wPyc8c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93Ij48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWljb24iPicrSigidGVybWluYWwiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1sYWJlbCI+XHU1NDdEXHU0RUU0XHU2MjY3XHU4ODRDPC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctY291bnQiPicrbi5jb21tYW5kKyI8L3NwYW4+PC9zcGFuPiI6IiIpKyhuLmZpbGU+MD8nPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdyI+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1pY29uIj4nK0ooImVkaXQiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1sYWJlbCI+XHU2NTg3XHU0RUY2XHU1MTk5XHU1MTY1PC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctY291bnQiPicrbi5maWxlKyI8L3NwYW4+PC9zcGFuPiI6IiIpKyhuLnRvb2w+MD8nPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdyI+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1pY29uIj4nK0ooIndyZW5jaCIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWxhYmVsIj5cdTUxNzZcdTRFRDZcdTVERTVcdTUxNzc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1jb3VudCI+JytuLnRvb2wrIjwvc3Bhbj48L3NwYW4+IjoiIikrJzxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3cgYXBwcm92YWwtc3RhdHMtcm93LXRvdGFsIj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWljb24iPicrSigic2lnbWEiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1sYWJlbCI+XHU1NDA4XHU4QkExPC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctY291bnQiPicrbi50b3RhbCsiPC9zcGFuPjwvc3Bhbj48L3NwYW4+Ijt2YXIgaT1lLnF1ZXJ5U2VsZWN0b3IoIi5hcHByb3ZhbC1zdGF0cy1iYWRnZSIpO2kmJihpLmNsYXNzTGlzdC5yZW1vdmUoImFwcHJvdmFsLXN0YXRzLXB1bHNlIiksaS5vZmZzZXRXaWR0aCxpLmNsYXNzTGlzdC5hZGQoImFwcHJvdmFsLXN0YXRzLXB1bHNlIikpfX1mdW5jdGlvbiBuZCgpe2lmKEpuKCJsaWdodCIpLCEhci5zZWxlY3RlZElkKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXBwcm92ZS1wZXJtaXNzaW9uLWJ0biIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRlbnktcGVybWlzc2lvbi1idG4iKTtlJiYoZS5kaXNhYmxlZD0hMCksdCYmKHQuZGlzYWJsZWQ9ITApLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KHIuc2VsZWN0ZWRJZCkrIi9hcHByb3ZlLXBlcm1pc3Npb24iLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obil7aWYobiYmbi5lcnJvcil7ayhuLmVycm9yLCJlcnJvciIpO3JldHVybn1RKG4pLFl0KCl9KS5jYXRjaChmdW5jdGlvbihuKXtrKG4mJm4ubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NjI3OVx1NTFDNlx1NjM4OFx1Njc0M1x1MzAwMiIsImVycm9yIil9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ZSYmKGUuZGlzYWJsZWQ9ITEpLHQmJih0LmRpc2FibGVkPSExKX0pfX1mdW5jdGlvbiByZCgpe2lmKEpuKCJsaWdodCIpLCEhci5zZWxlY3RlZElkKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXBwcm92ZS1wZXJtaXNzaW9uLWJ0biIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRlbnktcGVybWlzc2lvbi1idG4iKTtlJiYoZS5kaXNhYmxlZD0hMCksdCYmKHQuZGlzYWJsZWQ9ITApLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KHIuc2VsZWN0ZWRJZCkrIi9kZW55LXBlcm1pc3Npb24iLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obil7aWYobiYmbi5lcnJvcil7ayhuLmVycm9yLCJlcnJvciIpO3JldHVybn1RKG4pLFl0KCl9KS5jYXRjaChmdW5jdGlvbihuKXtrKG4mJm4ubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NjJEMlx1N0VERFx1NjM4OFx1Njc0M1x1MzAwMiIsImVycm9yIil9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ZSYmKGUuZGlzYWJsZWQ9ITEpLHQmJih0LmRpc2FibGVkPSExKX0pfX1mdW5jdGlvbiBpZCgpe2lmKHIuc2VsZWN0ZWRJZCl7dmFyIGU9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKG4pe3JldHVybiBuLmlkPT09ci5zZWxlY3RlZElkfSk7aWYoZSYmZS5wcm92aWRlcj09PSJjb2RleCIpe2soIkNvZGV4IFx1NEYxQVx1OEJERFx1NTZGQVx1NUI5QVx1NEVFNSBmdWxsLWFjY2VzcyBQVFkgXHU1NDJGXHU1MkE4XHVGRjBDXHU0RTBEXHU2NTJGXHU2MzAxXHU1MjA3XHU2MzYyXHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHUzMDAyIiwiaW5mbyIpO3JldHVybn12YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by1hcHByb3ZlLXRvZ2dsZSIpO3QmJih0LnN0eWxlLm9wYWNpdHk9IjAuNSIpLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KHIuc2VsZWN0ZWRJZCkrIi90b2dnbGUtYXV0by1hcHByb3ZlIix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihuKXtyZXR1cm4gbi5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKG4pe2lmKG4mJm4uZXJyb3Ipe2sobi5lcnJvciwiZXJyb3IiKTtyZXR1cm59UShuKSx1cygpO3ZhciBpPW4uYXV0b0FwcHJvdmVQZXJtaXNzaW9ucztrKGk/Ilx1ODFFQVx1NTJBOFx1NjI3OVx1NTFDNlx1NURGMlx1NUYwMFx1NTQyRiI6Ilx1ODFFQVx1NTJBOFx1NjI3OVx1NTFDNlx1NURGMlx1NTE3M1x1OTVFRCIsImluZm8iKX0pLmNhdGNoKGZ1bmN0aW9uKG4pe2sobiYmbi5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU1MjA3XHU2MzYyXHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHUzMDAyIiwiZXJyb3IiKX0pLmZpbmFsbHkoZnVuY3Rpb24oKXt0JiYodC5zdHlsZS5vcGFjaXR5PSIiKX0pfX1mdW5jdGlvbiB1cygpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLWFwcHJvdmUtdG9nZ2xlIiksdD1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1yLnNlbGVjdGVkSWR9KTtpZihLbyh0KSl7ZSYmZS5wYXJlbnROb2RlJiZlLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZSk7cmV0dXJufWlmKGUpe3ZhciBuPSJjb21wb3Nlci1waWxsIGNvbXBvc2VyLXBpbGwtY2hpcCBhdXRvLWFwcHJvdmUtaW5kaWNhdG9yIixpPXQmJnQuYXV0b0FwcHJvdmVQZXJtaXNzaW9ucztpPyhlLmNsYXNzTmFtZT1uKyIgYWN0aXZlIixlLnRpdGxlPSJcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTVERjJcdTU0MkZcdTc1MjggXHUyMDE0IFx1NzBCOVx1NTFGQlx1NTE3M1x1OTVFRCIsZS5pbm5lckhUTUw9Sigic2hpZWxkQ2hlY2siLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuNyxjbHM6ImNvbXBvc2VyLXBpbGwtaWNvbiJ9KSsnPHNwYW4gY2xhc3M9ImNvbXBvc2VyLXBpbGwtbGFiZWwiPlx1ODFFQVx1NTJBODwvc3Bhbj4nKTooZS5jbGFzc05hbWU9bixlLnRpdGxlPSJcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTVERjJcdTUxNzNcdTk1RUQgXHUyMDE0IFx1NzBCOVx1NTFGQlx1NUYwMFx1NTQyRiIsZS5pbm5lckhUTUw9Sigic2hpZWxkIix7c2l6ZToxMixzdHJva2VXaWR0aDoxLjcsY2xzOiJjb21wb3Nlci1waWxsLWljb24ifSkrJzxzcGFuIGNsYXNzPSJjb21wb3Nlci1waWxsLWxhYmVsIj5cdTYyNEJcdTUyQTg8L3NwYW4+Jyl9fWZ1bmN0aW9uIGFkKGUsdCxuKXtyZXR1cm4gci50ZXJtaW5hbD9paSh0fHxyLnNlbGVjdGVkSWQsZSx7bW9kZTpufHwiYXBwZW5kIn0pOiExfWZ1bmN0aW9uIHNzKCl7ci5wb2xsVGltZXImJihjbGVhckludGVydmFsKHIucG9sbFRpbWVyKSxyLnBvbGxUaW1lcj1udWxsKX1mdW5jdGlvbiBsZyhlKXtyLmN1cnJlbnRWaWV3PWV8fCJ0ZXJtaW5hbCIsci5jdXJyZW50VmlldyE9PSJ0ZXJtaW5hbCImJihJbighMSksWHMoKSksa2koKSxCYSgpO3ZhciB0PU50KCk7dCYmKHIuY3VycmVudE1lc3NhZ2VzPWplKHQsWmUodCx0Lm91dHB1dCwhMCkpKSx2dCgpLHIuY3VycmVudFZpZXc9PT0idGVybWluYWwiJiYoSHQoITApLHIudGVybWluYWwmJnIudGVybWluYWwucmVtZWFzdXJlJiZyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtyLnRlcm1pbmFsJiZyLnRlcm1pbmFsLnJlbWVhc3VyZSgpfSkpfWZ1bmN0aW9uIGZyKGUpe3IucmVuZGVyUGVuZGluZyYmIWV8fChyLnJlbmRlclBlbmRpbmc9ITAsZT8oeWkoITApLHIucmVuZGVyUGVuZGluZz0hMSk6cmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7eWkoITEpLHIucmVuZGVyUGVuZGluZz0hMX0pKX1yLmNoYXRSZW5kZXJUaW1lcj1udWxsO2Z1bmN0aW9uIFppKGUpe2lmKCEoci5jaGF0UmVuZGVyVGltZXImJiFlKSl7aWYoci5jaGF0UmVuZGVyVGltZXImJmNsZWFyVGltZW91dChyLmNoYXRSZW5kZXJUaW1lciksZSl7ci5jaGF0UmVuZGVyVGltZXI9bnVsbCxmcigpO3JldHVybn12YXIgdD1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1yLnNlbGVjdGVkSWR9KSxuPXQmJnQuc3RhdHVzPT09InJ1bm5pbmciJiZ0LnNlc3Npb25LaW5kIT09InN0cnVjdHVyZWQiLGk9bj9Gczp3cztyLmNoYXRSZW5kZXJUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci5jaGF0UmVuZGVyVGltZXI9bnVsbDt2YXIgYT1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odSl7cmV0dXJuIHUuaWQ9PT1yLnNlbGVjdGVkSWR9KTthJiYoci5jdXJyZW50TWVzc2FnZXM9amUoYSxaZShhLGEub3V0cHV0LCEwKSkpLGZyKCl9LGkpfX12YXIgZWE9MCxacj0wLG9zPTAscHI9MDtmdW5jdGlvbiB0YSgpe3JldHVybiB3aW5kb3cuX193YW5kSW9zTmF0aXZlPT09ITB9ZnVuY3Rpb24gbHMoZSl7b3M9TWF0aC5tYXgob3MsRGF0ZS5ub3coKSsoZXx8MTgwMCkpfWZ1bmN0aW9uIGNzKGUsdCl7c2V0VGltZW91dChmdW5jdGlvbigpe3ZhciBuPWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7ZWkobikmJm4hPT10fHxscyhlKX0sMzApfWZ1bmN0aW9uIHVkKGUpe3JldHVybiBNYXRoLm1heCh3aW5kb3cuaW5uZXJIZWlnaHR8fDAsZSYmZS5oZWlnaHR8fDAsZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50JiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0fHwwLGRvY3VtZW50LmJvZHkmJmRvY3VtZW50LmJvZHkuY2xpZW50SGVpZ2h0fHwwKX1mdW5jdGlvbiBzZChlKXt2YXIgdD1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsbj1NYXRoLm1heCh3aW5kb3cuaW5uZXJXaWR0aHx8MCxlJiZlLndpZHRofHwwLHQmJnQuY2xpZW50V2lkdGh8fDApLGk9dWQoZSk7cmV0dXJuIWVhfHxNYXRoLmFicyhuLWVhKT44PyhlYT1uLFpyPWkpOmk+WnImJihacj1pKSxNYXRoLm1heCgxLE1hdGgucm91bmQoWnJ8fGl8fDEpKX1mdW5jdGlvbiBvZChlLHQsbixpKXtyZXR1cm4gZXx8IXRhKCk/ITE6dD4wfHxpPm4rMX1mdW5jdGlvbiB6bihlKXt2YXIgdD13aW5kb3cudmlzdWFsVmlld3BvcnQ7aWYodCl7dmFyIG49ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O2lmKG4uY2xhc3NMaXN0LnRvZ2dsZSgiaXMta2V5Ym9hcmQtb3BlbiIsISFlKSx3aW5kb3cuX193YW5kSW1lTmF0aXZlKXtuLnN0eWxlLnNldFByb3BlcnR5KCItLWFwcC12aWV3cG9ydC10b3AiLCIwcHgiKSxuLnN0eWxlLnNldFByb3BlcnR5KCItLWFwcC12aWV3cG9ydC1oZWlnaHQiLE1hdGgucm91bmQodC5oZWlnaHQpKyJweCIpO3JldHVybn12YXIgaT1zZCh0KSxhPU1hdGgubWF4KDAsTWF0aC5yb3VuZCh0Lm9mZnNldFRvcHx8MCkpLHU9TWF0aC5tYXgoMSxNYXRoLnJvdW5kKHQuaGVpZ2h0KSk7KCFlJiZ0YSgpfHxvZChlLGEsdSxpKSkmJihhPTAsdT1NYXRoLm1heCh1LGkpKSxuLnN0eWxlLnNldFByb3BlcnR5KCItLWFwcC12aWV3cG9ydC10b3AiLGErInB4Iiksbi5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1hcHAtdmlld3BvcnQtaGVpZ2h0Iix1KyJweCIpLChlfHwod2luZG93LnNjcm9sbFl8fDApPjApJiZTYSgpfX1mdW5jdGlvbiBlaShlKXtpZighZSlyZXR1cm4hMTt2YXIgdD1lLnRhZ05hbWU7aWYodD09PSJURVhUQVJFQSJ8fHQ9PT0iU0VMRUNUIilyZXR1cm4hMDtpZih0PT09IklOUFVUIil7dmFyIG49KGUuZ2V0QXR0cmlidXRlKCJ0eXBlIil8fCJ0ZXh0IikudG9Mb3dlckNhc2UoKTtyZXR1cm4hL14oYnV0dG9ufGNoZWNrYm94fGNvbG9yfGZpbGV8aGlkZGVufGltYWdlfHJhZGlvfHJhbmdlfHJlc2V0fHN1Ym1pdCkkL2kudGVzdChuKX1yZXR1cm4hIWUuaXNDb250ZW50RWRpdGFibGV9ZnVuY3Rpb24gbGQoKXtpZighKCJ2aXN1YWxWaWV3cG9ydCJpbiB3aW5kb3cpfHx3aW5kb3cuX193YW5kVmlld3BvcnRIYW5kbGVyc0JvdW5kKXJldHVybjt3aW5kb3cuX193YW5kVmlld3BvcnRIYW5kbGVyc0JvdW5kPSEwO3ZhciBlPXdpbmRvdy52aXN1YWxWaWV3cG9ydCx0PWUuaGVpZ2h0LG49ITEsaT1NYXRoLm1heCh3aW5kb3cuaW5uZXJXaWR0aHx8MCxlLndpZHRofHwwKSxhPU1hdGgubWF4KHdpbmRvdy5pbm5lckhlaWdodHx8MCxlLmhlaWdodHx8MCksdT1bXTtmdW5jdGlvbiBzKCl7cmV0dXJuIE1hdGgubWF4KHdpbmRvdy5pbm5lckhlaWdodHx8MCxlLmhlaWdodHx8MCl9ZnVuY3Rpb24gbygpe3ZhciBoPU1hdGgubWF4KHdpbmRvdy5pbm5lcldpZHRofHwwLGUud2lkdGh8fDApLG09cygpO2lmKE1hdGguYWJzKGgtaSk+OCl7aT1oLGE9bTtyZXR1cm59bT5hJiYoYT1tKX1mdW5jdGlvbiBsKGgsbSl7dmFyIGI9ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCx3PWI9PT1ofHxlaShiKSxFPWEtZS5oZWlnaHQsQj1hLSh3aW5kb3cuaW5uZXJIZWlnaHR8fGUuaGVpZ2h0fHwwKSxGPURhdGUubm93KCk8cHI7cmV0dXJuIEY/ISEodyYmKEU+MTIwfHxCPjEyMCkpOiEhKG0+ODB8fHcmJihFPjEyMHx8Qj4xMjApfHxuJiYoRT44MHx8bT4zMikpfWZ1bmN0aW9uIGMoKXt1LmZvckVhY2goZnVuY3Rpb24oaCl7Y2xlYXJUaW1lb3V0KGgpfSksdT1bNjAsMTgwLDM2MCw2MjAsOTAwXS5tYXAoZnVuY3Rpb24oaCl7cmV0dXJuIHNldFRpbWVvdXQoZnVuY3Rpb24oKXt6bihuKX0saCl9KX1mdW5jdGlvbiBmKCl7WzAsNTAsMTIwLDIyMCwzNjAsNTYwXS5mb3JFYWNoKGZ1bmN0aW9uKGgpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXtkKCk7dmFyIG09ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO20mJmRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ9PT1tJiZoaShtKX0saCl9KX1mdW5jdGlvbiBkKCl7aWYoZSl7dmFyIGg9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpLG09d2luZG93LmlubmVySGVpZ2h0LWUuaGVpZ2h0LWUub2Zmc2V0VG9wO28oKTt2YXIgYj1sKGgsbSksdz1NYXRoLmFicyhlLmhlaWdodC10KT44O2lmKHpuKGIpLGImJighbnx8dykmJlVwKGUsaCkmJmhpKGgpLCFuJiZiKXt2YXIgRT1yLnRlcm1pbmFsQXV0b0ZvbGxvd3x8dWEoKTtvdCgia2V5Ym9hcmQtb3BlbiIse2ZvcmNlUmVwbGF5OiEwfSksd2luZG93Ll9fd2FuZEltZU5hdGl2ZXx8c2V0VGltZW91dChmdW5jdGlvbigpe3puKCEwKX0sMjIwKSxjKCksRSYmc2V0VGltZW91dChmdW5jdGlvbigpe3IudGVybWluYWwmJmJ0KCJmb3JjZSIpfSwyMjApfWlmKG4mJiFiKXt2YXIgQj0hIXdpbmRvdy5fX3dhbmRJbWVOYXRpdmU7Qnx8KGxzKDIyMDApLHByPURhdGUubm93KCkrMTIwMCx6bighMSksU2EoKSksYygpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtCfHwoem4oITEpLFNhKCkpLG90KCJrZXlib2FyZC1jbG9zZSIse2ZvcmNlUmVwbGF5OiEwfSksYnQoImtleWJvYXJkIil9LDIwMCl9dyYmbj09PWImJm90KCJ2aWV3cG9ydCIpLG49Yix0PWUuaGVpZ2h0fX12YXIgdj1udWxsO2Z1bmN0aW9uIGcoKXt2IT09bnVsbCYmY2FuY2VsQW5pbWF0aW9uRnJhbWUodiksdj1yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXt2PW51bGwsZCgpfSl9ZS5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLGcpLGUuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixnKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIixmdW5jdGlvbigpe2RvY3VtZW50LnZpc2liaWxpdHlTdGF0ZT09PSJ2aXNpYmxlIiYmKGcoKSxzZXRUaW1lb3V0KGcsMjQwKSxzZXRUaW1lb3V0KGcsNzIwKSl9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicGFnZXNob3ciLGZ1bmN0aW9uKGgpe2gmJmgucGVyc2lzdGVkJiYoZygpLHNldFRpbWVvdXQoZywyNDApKX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImZvY3Vzb3V0IixmdW5jdGlvbihoKXshaHx8IWgudGFyZ2V0fHxlaShoLnRhcmdldCkmJihjcygxNjAwLGgudGFyZ2V0KSx0YSgpJiYocHI9TWF0aC5tYXgocHIsRGF0ZS5ub3coKSsxMjAwKSksc2V0VGltZW91dChnLDgwKSxzZXRUaW1lb3V0KGcsNDIwKSl9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJmb2N1c2luIixmdW5jdGlvbihoKXshaHx8IWgudGFyZ2V0fHwhZWkoaC50YXJnZXQpfHxmKCl9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigid2FuZC1pb3MtaW1lLXN0YXRlIixmdW5jdGlvbihoKXt2YXIgbT1oJiZoLmRldGFpbCYmaC5kZXRhaWwuc3RhdGU7bT09PSJoaWRkZW4iJiYocHI9RGF0ZS5ub3coKSs5MDApLGYoKSxjKCl9KSxkKCl9ZnVuY3Rpb24gY2QoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7aWYoZSl7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5jbGFzc05hbWU9InRlcm1pbmFsLXJlc2l6ZS1oYW5kbGUiLHQuaW5uZXJIVE1MPSImIzg5NDI7IixlLmFwcGVuZENoaWxkKHQpO3ZhciBuPSExLGk9MCxhPTA7dC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLGZ1bmN0aW9uKHUpe249ITAsaT11LmNsaWVudFksYT1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCxkb2N1bWVudC5ib2R5LnN0eWxlLmN1cnNvcj0ibnMtcmVzaXplIixkb2N1bWVudC5ib2R5LnN0eWxlLnVzZXJTZWxlY3Q9Im5vbmUiLHUucHJldmVudERlZmF1bHQoKX0pLHIucmVzaXplTW91c2VNb3ZlPWZ1bmN0aW9uKHUpe2lmKG4pe3ZhciBzPXUuY2xpZW50WS1pLG89TWF0aC5tYXgoMjAwLE1hdGgubWluKGErcyx3aW5kb3cuaW5uZXJIZWlnaHQtMjAwKSk7ZS5zdHlsZS5oZWlnaHQ9bysicHgiLGUuc3R5bGUuZmxleD0ibm9uZSIsSHQoKX19LGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsci5yZXNpemVNb3VzZU1vdmUpLHIucmVzaXplTW91c2VVcD1mdW5jdGlvbigpe24mJihuPSExLGRvY3VtZW50LmJvZHkuc3R5bGUuY3Vyc29yPSIiLGRvY3VtZW50LmJvZHkuc3R5bGUudXNlclNlbGVjdD0iIixIdCgpKX0sZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsci5yZXNpemVNb3VzZVVwKSx0LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLGZ1bmN0aW9uKHUpe249ITAsaT11LnRvdWNoZXNbMF0uY2xpZW50WSxhPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0LHUucHJldmVudERlZmF1bHQoKX0se3Bhc3NpdmU6ITF9KSxyLnJlc2l6ZVRvdWNoTW92ZT1mdW5jdGlvbih1KXtpZihuKXt2YXIgcz11LnRvdWNoZXNbMF0uY2xpZW50WS1pLG89TWF0aC5tYXgoMjAwLE1hdGgubWluKGErcyx3aW5kb3cuaW5uZXJIZWlnaHQtMjAwKSk7ZS5zdHlsZS5oZWlnaHQ9bysicHgiLGUuc3R5bGUuZmxleD0ibm9uZSIsSHQoKSx1LnByZXZlbnREZWZhdWx0KCl9fSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLHIucmVzaXplVG91Y2hNb3ZlLHtwYXNzaXZlOiExfSksci5yZXNpemVUb3VjaEVuZD1mdW5jdGlvbigpe24mJihuPSExLEh0KCkpfSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsci5yZXNpemVUb3VjaEVuZCl9fWZ1bmN0aW9uIGRzKCl7cmV0dXJuISFOdCgpfWZ1bmN0aW9uIG5hKGUpe3ZhciB0PU1hdGgubWF4KG9uLHdpbmRvdy5pbm5lcldpZHRoLWZpLW9uKSxuPU1hdGgubWF4KG9uLHdpbmRvdy5pbm5lckhlaWdodC1maS1vbik7cmV0dXJue3JpZ2h0Ok1hdGgubWluKE1hdGgubWF4KG9uLGUucmlnaHQpLHQpLGJvdHRvbTpNYXRoLm1pbihNYXRoLm1heChvbixlLmJvdHRvbSksbil9fWZ1bmN0aW9uIGZzKCl7aWYoci5qb3lzdGlja0JhbGxFbCl7dmFyIGU9bmEoci5qb3lzdGlja1Bvc3x8e3JpZ2h0OjE4LGJvdHRvbTo5Nn0pO3Iuam95c3RpY2tCYWxsRWwuc3R5bGUucmlnaHQ9ZS5yaWdodCsicHgiLHIuam95c3RpY2tCYWxsRWwuc3R5bGUuYm90dG9tPWUuYm90dG9tKyJweCJ9fWZ1bmN0aW9uIGRkKGUsdCl7dmFyIG49bmEoe3JpZ2h0OmUsYm90dG9tOnR9KTtyLmpveXN0aWNrUG9zPW47dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLWJhbGwtcG9zIixKU09OLnN0cmluZ2lmeShuKSl9Y2F0Y2h7fX1mdW5jdGlvbiBmZCgpe2Z1bmN0aW9uIGUodSxzLG8pe3JldHVybic8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9IndqcC1rZXknKyhvPyIgIitvOiIiKSsnIiBkYXRhLWtleT0iJyt1KyciPicrcysiPC9idXR0b24+In12YXIgdD0nPGRpdiBjbGFzcz0id2pwLWRwYWQiPjxkaXYgY2xhc3M9IndqcC1kcGFkLXJvdyI+JytlKCJ1cCIsIlx1MjE5MSIsIndqcC1kaXIiKSsnPC9kaXY+PGRpdiBjbGFzcz0id2pwLWRwYWQtcm93Ij4nK2UoImxlZnQiLCJcdTIxOTAiLCJ3anAtZGlyIikrZSgiZG93biIsIlx1MjE5MyIsIndqcC1kaXIiKStlKCJyaWdodCIsIlx1MjE5MiIsIndqcC1kaXIiKSsiPC9kaXY+PC9kaXY+IixuPSIiLGk7Zm9yKGk9MDtpPHdhLmxlbmd0aDtpKyspbis9ZSh3YVtpXS5rZXksd2FbaV0ubGFiZWwsIiIpO3ZhciBhPSc8ZGl2IGNsYXNzPSJ3anAtaGVhZGVyIj48c3BhbiBjbGFzcz0id2pwLXRpdGxlIj4nK0ooInBhdyIse3NpemU6MTMsc3Ryb2tlV2lkdGg6MS42LGNsczoid2pwLXRpdGxlLWljb24ifSkrJzxzcGFuPlx1OTA2NVx1NjNBN1x1OTc2Mlx1Njc3Rjwvc3Bhbj48L3NwYW4+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJ3anAtY2xvc2UiIGFyaWEtbGFiZWw9Ilx1NTE3M1x1OTVFRFx1OTA2NVx1NjNBN1x1OTc2Mlx1Njc3RiI+JytKKCJ4Iix7c2l6ZToxMyxzdHJva2VXaWR0aDoyfSkrIjwvYnV0dG9uPjwvZGl2PiIrdCsnPGRpdiBjbGFzcz0id2pwLWdyaWQgd2pwLWZua2V5cyI+JytuKyI8L2Rpdj4iO3JldHVybiBhfWZ1bmN0aW9uIHBkKCl7aWYoIXIuam95c3RpY2tSb290RWwpe3ZhciBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2UuY2xhc3NOYW1lPSJ3YW5kLWpveXN0aWNrLXJvb3QiO3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3QuY2xhc3NOYW1lPSJ3YW5kLWpveXN0aWNrLWJhY2tkcm9wIixlLmFwcGVuZENoaWxkKHQpO3ZhciBuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO24uY2xhc3NOYW1lPSJ3YW5kLWpveXN0aWNrLXBhbmVsIixuLmlubmVySFRNTD1mZCgpLG4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLEZkKSxlLmFwcGVuZENoaWxkKG4pO3ZhciBpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2kuY2xhc3NOYW1lPSJ3YW5kLWpveXN0aWNrLWJhbGwiLGkuc2V0QXR0cmlidXRlKCJyb2xlIiwiYnV0dG9uIiksaS5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLCJXYW5kIFx1OTA2NVx1NjNBN1x1OTc2Mlx1Njc3RiIpLGkuc2V0QXR0cmlidXRlKCJ0aXRsZSIsIlx1NzBCOVx1NTFGQlx1NjI1M1x1NUYwMFx1OTA2NVx1NjNBN1x1OTc2Mlx1Njc3Rlx1RkYwQ1x1NjJENlx1NTJBOFx1NTNFRlx1NzlGQlx1NTJBOFx1NEY0RFx1N0Y2RSIpLGkuaW5uZXJIVE1MPUooInBhdyIse3NpemU6MjUsc3Ryb2tlV2lkdGg6MS42LGNsczoid2FuZC1qb3lzdGljay1sb2dvIn0pLGUuYXBwZW5kQ2hpbGQoaSksZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChlKSxyLmpveXN0aWNrUm9vdEVsPWUsci5qb3lzdGlja0JhY2tkcm9wRWw9dCxyLmpveXN0aWNrUGFuZWxFbD1uLHIuam95c3RpY2tCYWxsRWw9aSxmcygpLGkuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmRvd24iLHZkKSxpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihhKXthLnByZXZlbnREZWZhdWx0KCksYS5zdG9wUHJvcGFnYXRpb24oKX0pLHQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmRvd24iLGZ1bmN0aW9uKGEpe3Iuam95c3RpY2tQaW5uZWRPcGVuJiZyLmpveXN0aWNrR2VzdHVyZT09bnVsbCYmKGEucHJldmVudERlZmF1bHQoKSx2cigpKX0pLHQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGEpe2EucHJldmVudERlZmF1bHQoKSxhLnN0b3BQcm9wYWdhdGlvbigpfSksci5qb3lzdGlja1Jlc2l6ZUhhbmRsZXI9ZnVuY3Rpb24oKXtmcygpfSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIixyLmpveXN0aWNrUmVzaXplSGFuZGxlciksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9yaWVudGF0aW9uY2hhbmdlIixyLmpveXN0aWNrUmVzaXplSGFuZGxlciksZ3MoKX19ZnVuY3Rpb24gdmQoZSl7aWYoZHMoKSYmISgoZS5wb2ludGVyVHlwZT09PSJtb3VzZSJ8fGUucG9pbnRlclR5cGU9PT0icGVuIikmJmUuYnV0dG9uIT09MCkmJnIuam95c3RpY2tQb2ludGVySWQ9PT1udWxsKXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKTt2YXIgdD1lLnBvaW50ZXJUeXBlPT09Im1vdXNlInx8ZS5wb2ludGVyVHlwZT09PSJwZW4iO3Iuam95c3RpY2tQb2ludGVySWQ9ZS5wb2ludGVySWQsci5qb3lzdGlja1ByZXNzU3RhcnQ9e3g6ZS5jbGllbnRYLHk6ZS5jbGllbnRZLHQ6RGF0ZS5ub3coKX0sci5qb3lzdGlja0dlc3R1cmU9InBlbmRpbmciO3RyeXtyLmpveXN0aWNrQmFsbEVsLnNldFBvaW50ZXJDYXB0dXJlKGUucG9pbnRlcklkKX1jYXRjaHt9dHx8KHIuam95c3RpY2tMb25nUHJlc3NUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci5qb3lzdGlja0dlc3R1cmU9PT0icGVuZGluZyImJnBzKCl9LG9wKSksci5qb3lzdGlja01vdmVIYW5kbGVyPW1kLHIuam95c3RpY2tVcEhhbmRsZXI9Z2QsZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcm1vdmUiLHIuam95c3RpY2tNb3ZlSGFuZGxlciksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIixyLmpveXN0aWNrVXBIYW5kbGVyKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVyY2FuY2VsIixyLmpveXN0aWNrVXBIYW5kbGVyKX19ZnVuY3Rpb24gcHMoKXtyLmpveXN0aWNrR2VzdHVyZT0ibW92ZSIsci5qb3lzdGlja1Bpbm5lZE9wZW4mJnZyKCksci5qb3lzdGlja0JhbGxFbCYmci5qb3lzdGlja0JhbGxFbC5jbGFzc0xpc3QuYWRkKCJkcmFnZ2luZyIpLHIuam95c3RpY2tCYWNrZHJvcEVsJiZyLmpveXN0aWNrQmFja2Ryb3BFbC5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKX1mdW5jdGlvbiB2cyhlLHQpe2lmKHIuam95c3RpY2tCYWxsRWwpe3ZhciBuPW5hKHtyaWdodDp3aW5kb3cuaW5uZXJXaWR0aC1lLWZpLzIsYm90dG9tOndpbmRvdy5pbm5lckhlaWdodC10LWZpLzJ9KTtyLmpveXN0aWNrQmFsbEVsLnN0eWxlLnJpZ2h0PW4ucmlnaHQrInB4IixyLmpveXN0aWNrQmFsbEVsLnN0eWxlLmJvdHRvbT1uLmJvdHRvbSsicHgifX1mdW5jdGlvbiBtZChlKXtpZighKGUucG9pbnRlcklkIT09ci5qb3lzdGlja1BvaW50ZXJJZHx8IXIuam95c3RpY2tCYWxsRWwpKXtpZihlLnByZXZlbnREZWZhdWx0KCksci5qb3lzdGlja0dlc3R1cmU9PT0ibW92ZSIpe3ZzKGUuY2xpZW50WCxlLmNsaWVudFkpO3JldHVybn1pZihyLmpveXN0aWNrR2VzdHVyZT09PSJwZW5kaW5nIil7dmFyIHQ9ZS5jbGllbnRYLXIuam95c3RpY2tQcmVzc1N0YXJ0Lngsbj1lLmNsaWVudFktci5qb3lzdGlja1ByZXNzU3RhcnQueTtNYXRoLnNxcnQodCp0K24qbik8PWxwfHwoZS5wb2ludGVyVHlwZT09PSJtb3VzZSJ8fGUucG9pbnRlclR5cGU9PT0icGVuIj8ocHMoKSx2cyhlLmNsaWVudFgsZS5jbGllbnRZKSk6KHIuam95c3RpY2tMb25nUHJlc3NUaW1lciYmKGNsZWFyVGltZW91dChyLmpveXN0aWNrTG9uZ1ByZXNzVGltZXIpLHIuam95c3RpY2tMb25nUHJlc3NUaW1lcj1udWxsKSxyLmpveXN0aWNrR2VzdHVyZT0iY2FuY2VsbGVkIikpfX19ZnVuY3Rpb24gZ2QoZSl7aWYoZS5wb2ludGVySWQ9PT1yLmpveXN0aWNrUG9pbnRlcklkKXtyLmpveXN0aWNrTG9uZ1ByZXNzVGltZXImJihjbGVhclRpbWVvdXQoci5qb3lzdGlja0xvbmdQcmVzc1RpbWVyKSxyLmpveXN0aWNrTG9uZ1ByZXNzVGltZXI9bnVsbCk7dmFyIHQ9ci5qb3lzdGlja0dlc3R1cmU7aWYodD09PSJwZW5kaW5nIil7dmFyIG49ZS5jbGllbnRYLXIuam95c3RpY2tQcmVzc1N0YXJ0LngsaT1lLmNsaWVudFktci5qb3lzdGlja1ByZXNzU3RhcnQueTtNYXRoLnNxcnQobipuK2kqaSk8PWNwJiZiZCgpfWVsc2UgaWYodD09PSJtb3ZlIil7dmFyIGE9ci5qb3lzdGlja0JhbGxFbD9yLmpveXN0aWNrQmFsbEVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOm51bGw7YSYmZGQod2luZG93LmlubmVyV2lkdGgtYS5yaWdodCx3aW5kb3cuaW5uZXJIZWlnaHQtYS5ib3R0b20pfW1zKCl9fWZ1bmN0aW9uIG1zKCl7aWYoci5qb3lzdGlja0xvbmdQcmVzc1RpbWVyJiYoY2xlYXJUaW1lb3V0KHIuam95c3RpY2tMb25nUHJlc3NUaW1lciksci5qb3lzdGlja0xvbmdQcmVzc1RpbWVyPW51bGwpLHIuam95c3RpY2tCYWxsRWwmJnIuam95c3RpY2tQb2ludGVySWQhPT1udWxsKXRyeXtyLmpveXN0aWNrQmFsbEVsLnJlbGVhc2VQb2ludGVyQ2FwdHVyZShyLmpveXN0aWNrUG9pbnRlcklkKX1jYXRjaHt9ci5qb3lzdGlja01vdmVIYW5kbGVyJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcm1vdmUiLHIuam95c3RpY2tNb3ZlSGFuZGxlciksci5qb3lzdGlja01vdmVIYW5kbGVyPW51bGwpLHIuam95c3RpY2tVcEhhbmRsZXImJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVydXAiLHIuam95c3RpY2tVcEhhbmRsZXIpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJjYW5jZWwiLHIuam95c3RpY2tVcEhhbmRsZXIpLHIuam95c3RpY2tVcEhhbmRsZXI9bnVsbCksci5qb3lzdGlja0JhbGxFbCYmci5qb3lzdGlja0JhbGxFbC5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnZ2luZyIpLHIuam95c3RpY2tCYWNrZHJvcEVsJiYhci5qb3lzdGlja1Bpbm5lZE9wZW4mJnIuam95c3RpY2tCYWNrZHJvcEVsLmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpLHIuam95c3RpY2tQb2ludGVySWQ9bnVsbCxyLmpveXN0aWNrR2VzdHVyZT1udWxsLHIuam95c3RpY2tQcmVzc1N0YXJ0PW51bGx9ZnVuY3Rpb24gaGQoZSl7aWYoZT09PSJjdHJsInx8ZT09PSJhbHQifHxlPT09InNoaWZ0Iil7ci5tb2RpZmllcnNbZV09IXIubW9kaWZpZXJzW2VdLG1yKCk7cmV0dXJufXZhciB0PU50KCk7aWYodCYmYWUodCkpeyhlPT09ImN0cmxfYyJ8fGU9PT0iZXNjYXBlIikmJnlkKHQsZSksdmkoKSxtcigpO3JldHVybn12YXIgbj1acyhlLHtjdHJsOnIubW9kaWZpZXJzLmN0cmwsYWx0OnIubW9kaWZpZXJzLmFsdCxzaGlmdDpyLm1vZGlmaWVycy5zaGlmdH0pO24mJiRzKG4sZSksdmkoKSxtcigpLEVwKCl9ZnVuY3Rpb24geWQoZSx0KXshZXx8IWUuaWR8fGZldGNoKCIvYXBpL3N0cnVjdHVyZWQtc2Vzc2lvbnMvIitlLmlkKyIvbWVzc2FnZXMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtpbnB1dDoiIixpbnRlcnJ1cHQ6ITAscHJlc2VydmVRdWV1ZTohMH0pfSkudGhlbihmdW5jdGlvbihuKXtyZXR1cm4gbi5vaz9uLmpzb24oKTpuLmpzb24oKS5jYXRjaChmdW5jdGlvbigpe3JldHVybnt9fSkudGhlbihmdW5jdGlvbihpKXt0aHJvdyBuZXcgRXJyb3IoaSYmaS5lcnJvcnx8Ilx1NEUyRFx1NjVBRFx1NTkzMVx1OEQyNSAoa2V5PSIrdCsiKSIpfSl9KS50aGVuKGZ1bmN0aW9uKG4pe2lmKG4mJm4uaWQmJihRKG4pLG4uaWQ9PT1yLnNlbGVjdGVkSWQpKXt2YXIgaT1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1uLmlkfSl8fG47ci5jdXJyZW50TWVzc2FnZXM9amUoaSxaZShpLG4ub3V0cHV0LCExKSksZnIoITApLHR5cGVvZiBsdD09ImZ1bmN0aW9uIiYmbHQoKX19KS5jYXRjaChmdW5jdGlvbihuKXtuJiZuLm1lc3NhZ2UmJmNvbnNvbGUuZGVidWcoIlt3YW5kXSBqb3lzdGljayBpbnRlcnJ1cHQgbm8tb3A6IixuLm1lc3NhZ2UpfSl9ZnVuY3Rpb24gYmQoKXtyLmpveXN0aWNrUGlubmVkT3Blbj92cigpOkVkKCl9ZnVuY3Rpb24gRWQoKXtpZighKCFyLmpveXN0aWNrUGFuZWxFbHx8IXIuam95c3RpY2tCYWxsRWwpKXtyLmpveXN0aWNrUGlubmVkT3Blbj0hMDt2YXIgZT1yLmpveXN0aWNrQmFsbEVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3Iuam95c3RpY2tQYW5lbEVsLnN0eWxlLnJpZ2h0PU1hdGgubWF4KG9uLHdpbmRvdy5pbm5lcldpZHRoLWUucmlnaHQpKyJweCIsci5qb3lzdGlja1BhbmVsRWwuc3R5bGUuYm90dG9tPU1hdGgubWF4KG9uLHdpbmRvdy5pbm5lckhlaWdodC1lLnRvcCsxMCkrInB4IixyLmpveXN0aWNrUGFuZWxFbC5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKSxyLmpveXN0aWNrQmFsbEVsLmNsYXNzTGlzdC5hZGQoInBhbmVsLW9wZW4iKSxyLmpveXN0aWNrQmFja2Ryb3BFbCYmci5qb3lzdGlja0JhY2tkcm9wRWwuY2xhc3NMaXN0LmFkZCgiYWN0aXZlIiksbXIoKX19ZnVuY3Rpb24gdnIoKXtyLmpveXN0aWNrUGlubmVkT3Blbj0hMSxyLmpveXN0aWNrUGFuZWxFbCYmci5qb3lzdGlja1BhbmVsRWwuY2xhc3NMaXN0LnJlbW92ZSgiYWN0aXZlIiksci5qb3lzdGlja0JhbGxFbCYmci5qb3lzdGlja0JhbGxFbC5jbGFzc0xpc3QucmVtb3ZlKCJwYW5lbC1vcGVuIiksci5qb3lzdGlja0JhY2tkcm9wRWwmJnIuam95c3RpY2tHZXN0dXJlPT1udWxsJiZyLmpveXN0aWNrQmFja2Ryb3BFbC5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKX1mdW5jdGlvbiBtcigpe3Iuam95c3RpY2tQYW5lbEVsJiZbImN0cmwiLCJhbHQiXS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PXIuam95c3RpY2tQYW5lbEVsLnF1ZXJ5U2VsZWN0b3IoJy53anAtbW9kW2RhdGEta2V5PSInK2UrJyJdJyk7dCYmdC5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLCEhci5tb2RpZmllcnNbZV0pfSl9ZnVuY3Rpb24gRmQoZSl7dmFyIHQ9ZS50YXJnZXQmJmUudGFyZ2V0LmNsb3Nlc3Q/ZS50YXJnZXQuY2xvc2VzdCgiLndqcC1jbG9zZSIpOm51bGw7aWYodCl7ZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCksdnIoKTtyZXR1cm59dmFyIG49ZS50YXJnZXQmJmUudGFyZ2V0LmNsb3Nlc3Q/ZS50YXJnZXQuY2xvc2VzdCgiLndqcC1rZXkiKTpudWxsO2lmKG4pe2UucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpO3ZhciBpPW4uZ2V0QXR0cmlidXRlKCJkYXRhLWtleSIpO2kmJmhkKGkpfX1mdW5jdGlvbiBncygpe3ZhciBlPXIuam95c3RpY2tSb290RWw7aWYoZSl7dmFyIHQ9ZHMoKTtlLmNsYXNzTGlzdC50b2dnbGUoInZpc2libGUiLHQpLHR8fCgoci5qb3lzdGlja1BvaW50ZXJJZCE9PW51bGx8fHIuam95c3RpY2tHZXN0dXJlKSYmbXMoKSxyLmpveXN0aWNrUGlubmVkT3BlbiYmdnIoKSxyLmpveXN0aWNrQmFja2Ryb3BFbCYmci5qb3lzdGlja0JhY2tkcm9wRWwuY2xhc3NMaXN0LnJlbW92ZSgiYWN0aXZlIikpfX1mdW5jdGlvbiB3ZCgpe3Iuam95c3RpY2tMb25nUHJlc3NUaW1lciYmKGNsZWFyVGltZW91dChyLmpveXN0aWNrTG9uZ1ByZXNzVGltZXIpLHIuam95c3RpY2tMb25nUHJlc3NUaW1lcj1udWxsKSxyLmpveXN0aWNrTW92ZUhhbmRsZXImJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsci5qb3lzdGlja01vdmVIYW5kbGVyKSxyLmpveXN0aWNrTW92ZUhhbmRsZXI9bnVsbCksci5qb3lzdGlja1VwSGFuZGxlciYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJ1cCIsci5qb3lzdGlja1VwSGFuZGxlciksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcmNhbmNlbCIsci5qb3lzdGlja1VwSGFuZGxlciksci5qb3lzdGlja1VwSGFuZGxlcj1udWxsKSxyLmpveXN0aWNrUmVzaXplSGFuZGxlciYmKHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLHIuam95c3RpY2tSZXNpemVIYW5kbGVyKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigib3JpZW50YXRpb25jaGFuZ2UiLHIuam95c3RpY2tSZXNpemVIYW5kbGVyKSxyLmpveXN0aWNrUmVzaXplSGFuZGxlcj1udWxsKSxyLmpveXN0aWNrUm9vdEVsJiZyLmpveXN0aWNrUm9vdEVsLnBhcmVudE5vZGUmJnIuam95c3RpY2tSb290RWwucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChyLmpveXN0aWNrUm9vdEVsKSxyLmpveXN0aWNrUm9vdEVsPW51bGwsci5qb3lzdGlja1BhbmVsRWw9bnVsbCxyLmpveXN0aWNrQmFja2Ryb3BFbD1udWxsLHIuam95c3RpY2tCYWxsRWw9bnVsbCxyLmpveXN0aWNrUG9pbnRlcklkPW51bGwsci5qb3lzdGlja0dlc3R1cmU9bnVsbCxyLmpveXN0aWNrUHJlc3NTdGFydD1udWxsLHIuam95c3RpY2tQaW5uZWRPcGVuPSExfWZ1bmN0aW9uIENkKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2lmKGUpe3ZhciB0PSFfZSgpO3IucmVzaXplSGFuZGxlcj1mdW5jdGlvbigpe0h0KCEwKTt2YXIgbj0hX2UoKTt0IT09biYmKHQ9biwhbiYmci5zaWRlYmFyUGlubmVkJiZyLnNlc3Npb25zRHJhd2VyT3Blbj8oci5zZXNzaW9uc0RyYXdlck9wZW49ITEsSWUoIndhbmQtc2lkZWJhci1vcGVuIiwhMSksVHIoKSk6biYmci5zaWRlYmFyUGlubmVkJiYhci5zZXNzaW9uc0RyYXdlck9wZW4mJihyLnNlc3Npb25zRHJhd2VyT3Blbj0hMCxJZSgid2FuZC1zaWRlYmFyLW9wZW4iLCEwKSxUcigpKSl9LHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLHIucmVzaXplSGFuZGxlciksd2luZG93LnZpc3VhbFZpZXdwb3J0JiYoci52aXN1YWxWaWV3cG9ydEhhbmRsZXI9ZnVuY3Rpb24oKXtIdCghMCl9LHdpbmRvdy52aXN1YWxWaWV3cG9ydC5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLHIudmlzdWFsVmlld3BvcnRIYW5kbGVyKSksci52aXNpYmlsaXR5SGFuZGxlcj1mdW5jdGlvbigpe2RvY3VtZW50LmhpZGRlbnx8b3QoInZpc2liaWxpdHkiLHtmb3JjZVJlcGxheTohMH0pfSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIixyLnZpc2liaWxpdHlIYW5kbGVyKSxyLm9yaWVudGF0aW9uSGFuZGxlcj1mdW5jdGlvbigpe290KCJvcmllbnRhdGlvbiIse2ZvcmNlUmVwbGF5OiEwfSl9LHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJvcmllbnRhdGlvbmNoYW5nZSIsci5vcmllbnRhdGlvbkhhbmRsZXIpLHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe0h0KCEwKX0pfX1mdW5jdGlvbiBCZCgpe3IudGVybWluYWxIZWFsdGhUaW1lcnx8KHIudGVybWluYWxIZWFsdGhUaW1lcj1zZXRJbnRlcnZhbChmdW5jdGlvbigpe2lmKCEoIXIudGVybWluYWx8fHIuY3VycmVudFZpZXchPT0idGVybWluYWwifHxkb2N1bWVudC5oaWRkZW4pKXt2YXIgZT1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odSl7cmV0dXJuIHUuaWQ9PT1yLnNlbGVjdGVkSWR9KTtpZighKCFlfHxlLnNlc3Npb25LaW5kPT09InN0cnVjdHVyZWQiKSl7b3QoImhlYWx0aCIpO3ZhciB0PURhdGUubm93KCksbj1yLmxhc3RDaHVua0F0PjAmJnQtci5sYXN0Q2h1bmtBdD4zMDAsaT10LXIubGFzdFRlcm1pbmFsUmVzeW5jQXQ+M2U0LGE9ci5sYXN0Q2h1bmtBdD5yLmxhc3RUZXJtaW5hbFJlc3luY0F0O2kmJmEmJihufHxlLnN0YXR1cyE9PSJydW5uaW5nIikmJnIudGVybWluYWxPdXRwdXQmJmtuKCl9fX0sNWUzKSl9ZnVuY3Rpb24gRGQoKXtyLnRlcm1pbmFsSGVhbHRoVGltZXImJihjbGVhckludGVydmFsKHIudGVybWluYWxIZWFsdGhUaW1lciksci50ZXJtaW5hbEhlYWx0aFRpbWVyPW51bGwpfWZ1bmN0aW9uIGdyKCl7RGQoKSxyLnJlc2l6ZVRpbWVyJiYoY2xlYXJUaW1lb3V0KHIucmVzaXplVGltZXIpLHIucmVzaXplVGltZXI9bnVsbCksci5yZXNpemVPYnNlcnZlciYmKHIucmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpLHIucmVzaXplT2JzZXJ2ZXI9bnVsbCksci5yZXNpemVIYW5kbGVyJiYod2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsci5yZXNpemVIYW5kbGVyKSxyLnJlc2l6ZUhhbmRsZXI9bnVsbCksci52aXN1YWxWaWV3cG9ydEhhbmRsZXImJndpbmRvdy52aXN1YWxWaWV3cG9ydCYmKHdpbmRvdy52aXN1YWxWaWV3cG9ydC5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLHIudmlzdWFsVmlld3BvcnRIYW5kbGVyKSxyLnZpc3VhbFZpZXdwb3J0SGFuZGxlcj1udWxsKSxyLnZpc2liaWxpdHlIYW5kbGVyJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNoYW5nZSIsci52aXNpYmlsaXR5SGFuZGxlciksci52aXNpYmlsaXR5SGFuZGxlcj1udWxsKSxyLm9yaWVudGF0aW9uSGFuZGxlciYmKHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJvcmllbnRhdGlvbmNoYW5nZSIsci5vcmllbnRhdGlvbkhhbmRsZXIpLHIub3JpZW50YXRpb25IYW5kbGVyPW51bGwpLFtbIm1vdXNlbW92ZSIsInJlc2l6ZU1vdXNlTW92ZSJdLFsibW91c2V1cCIsInJlc2l6ZU1vdXNlVXAiXSxbInRvdWNobW92ZSIsInJlc2l6ZVRvdWNoTW92ZSJdLFsidG91Y2hlbmQiLCJyZXNpemVUb3VjaEVuZCJdXS5mb3JFYWNoKGZ1bmN0aW9uKGEpe3JbYVsxXV0mJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKGFbMF0sclthWzFdXSksclthWzFdXT1udWxsKX0pLFVuKCk7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2lmKHIudGVybWluYWxWaWV3cG9ydEVsJiYoci50ZXJtaW5hbFZpZXdwb3J0U2Nyb2xsSGFuZGxlciYmci50ZXJtaW5hbFZpZXdwb3J0RWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixyLnRlcm1pbmFsVmlld3BvcnRTY3JvbGxIYW5kbGVyKSxyLnRlcm1pbmFsVmlld3BvcnRUb3VjaEhhbmRsZXImJnIudGVybWluYWxWaWV3cG9ydEVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsci50ZXJtaW5hbFZpZXdwb3J0VG91Y2hIYW5kbGVyKSxyLnRlcm1pbmFsVmlld3BvcnRUb3VjaFN0YXJ0SGFuZGxlciYmci50ZXJtaW5hbFZpZXdwb3J0RWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsci50ZXJtaW5hbFZpZXdwb3J0VG91Y2hTdGFydEhhbmRsZXIpKSxlJiYoci50ZXJtaW5hbFdoZWVsSGFuZGxlciYmZS5yZW1vdmVFdmVudExpc3RlbmVyKCJ3aGVlbCIsci50ZXJtaW5hbFdoZWVsSGFuZGxlciksci50ZXJtaW5hbENsaWNrSGFuZGxlciYmZS5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsci50ZXJtaW5hbENsaWNrSGFuZGxlcikpLHIudGVybWluYWxWaWV3cG9ydEVsPW51bGwsci50ZXJtaW5hbFZpZXdwb3J0U2Nyb2xsSGFuZGxlcj1udWxsLHIudGVybWluYWxWaWV3cG9ydFRvdWNoSGFuZGxlcj1udWxsLHIudGVybWluYWxWaWV3cG9ydFRvdWNoU3RhcnRIYW5kbGVyPW51bGwsci50ZXJtaW5hbFdoZWVsSGFuZGxlcj1udWxsLHIudGVybWluYWxDbGlja0hhbmRsZXI9bnVsbCxyLnRlcm1pbmFsU2Nyb2xsYmFySGlkZVRpbWVyJiYoY2xlYXJUaW1lb3V0KHIudGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXIpLHIudGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXI9bnVsbCksci50ZXJtaW5hbFNjcm9sbGJhckVsJiZyLnRlcm1pbmFsU2Nyb2xsYmFyRWwucGFyZW50Tm9kZSYmci50ZXJtaW5hbFNjcm9sbGJhckVsLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoci50ZXJtaW5hbFNjcm9sbGJhckVsKSxyLnRlcm1pbmFsU2Nyb2xsYmFyRWw9bnVsbCxyLnRlcm1pbmFsU2Nyb2xsYmFyVGh1bWJFbD1udWxsLHIudGVybWluYWxTY3JvbGxiYXJEcmFnZ2luZz0hMSxyLnRlcm1pbmFsU2Nyb2xsYmFyUmFmUGVuZGluZz0hMSxyLnRlcm1pbmFsJiYoci50ZXJtaW5hbC5kZXN0cm95KCksci50ZXJtaW5hbD1udWxsKSxlKWZvcih2YXIgdD1lLnF1ZXJ5U2VsZWN0b3JBbGwoIi50ZXJtaW5hbC1zY3JvbGwtd3JhcCIpLG49MDtuPHQubGVuZ3RoO24rKyl7dmFyIGk9dFtuXTtpLnBhcmVudE5vZGU9PT1lJiZlLnJlbW92ZUNoaWxkKGkpfWxhKCksci5zeW5jT3V0cHV0QnVmZmVyPW51bGwsci5zeW5jT3V0cHV0RGVhZGxpbmU9MCxyLnN5bmNGcmFtaW5nUmVzaWR1ZT0hMSxyLnRlcm1pbmFsU2Vzc2lvbklkPW51bGwsci50ZXJtaW5hbE91dHB1dD0iIixyLnRlcm1pbmFsT3V0cHV0TWFya2VyPTAsci50ZXJtaW5hbEF1dG9Gb2xsb3c9ITAsci5zaG93VGVybWluYWxKdW1wVG9Cb3R0b209ITEsdnQoKSxyLnNvZnRSZXN5bmNUaW1lciYmKGNsZWFyVGltZW91dChyLnNvZnRSZXN5bmNUaW1lciksci5zb2Z0UmVzeW5jVGltZXI9bnVsbCksci5fcmVzeW5jQ2h1bmtUYWlsVGltZXImJihjbGVhclRpbWVvdXQoci5fcmVzeW5jQ2h1bmtUYWlsVGltZXIpLHIuX3Jlc3luY0NodW5rVGFpbFRpbWVyPW51bGwpLHIuX3Jlc3luY0NodW5rTGFzdEF0PTAsci5fcmVzeW5jU3RhdHNXaW5kb3dTdGFydD0wLHIuX3Jlc3luY1N0YXRzQ291bnQ9MCxyLl9yZXN5bmNMYXN0V2FybkF0PTAsci5fcmVzeW5jSW5Qcm9ncmVzcz0hMSxyLmxhc3RSZXNpemU9e2NvbHM6MCxyb3dzOjB9LHdkKCl9ZnVuY3Rpb24gdGkoZSx0KXtpZihyLnNlbGVjdGVkSWQpe3ZhciBuPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihhKXtyZXR1cm4gYS5pZD09PXIuc2VsZWN0ZWRJZH0pO2lmKCEoIW58fG4uc3RhdHVzIT09InJ1bm5pbmciKSYmIWFlKG4pKXtlPjI1NiYmKGU9MjU2KSx0PjE2MCYmKHQ9MTYwKTt2YXIgaT17Y29sczplLHJvd3M6dH07KHIubGFzdFJlc2l6ZS5jb2xzIT09aS5jb2xzfHxyLmxhc3RSZXNpemUucm93cyE9PWkucm93cykmJihyLmxhc3RSZXNpemU9aSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK3Iuc2VsZWN0ZWRJZCsiL3Jlc2l6ZSIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoaSl9KS5jYXRjaChmdW5jdGlvbigpe30pKX19fWZ1bmN0aW9uIG90KGUsdCl7aWYoIXIudGVybWluYWwpcmV0dXJuITE7dmFyIG49dHx8e30saT1uLmZvcmNlUmVwbGF5PT09ITAsYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7aWYoIWF8fGEub2Zmc2V0V2lkdGg9PT0wfHxhLm9mZnNldEhlaWdodD09PTApcmV0dXJuIGhyKGV8fCJmaXQtcmV0cnkiLHtmb3JjZVJlcGxheTppfSksITE7dmFyIHU9ci50ZXJtaW5hbEF1dG9Gb2xsb3d8fHVhKCkscz1yLnRlcm1pbmFsLmNvbHMsbz1yLnRlcm1pbmFsLnJvd3M7cmV0dXJuIHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe3JlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe2lmKHIudGVybWluYWwpe3R5cGVvZiByLnRlcm1pbmFsLnJlbWVhc3VyZT09ImZ1bmN0aW9uIiYmci50ZXJtaW5hbC5yZW1lYXN1cmUoKSx0aShyLnRlcm1pbmFsLmNvbHMsci50ZXJtaW5hbC5yb3dzKTt2YXIgbD1yLnRlcm1pbmFsLmNvbHMhPT1zfHxyLnRlcm1pbmFsLnJvd3MhPT1vOyFsJiZpJiZyLnRlcm1pbmFsT3V0cHV0JiZrbih7c2tpcEZpdDohMH0pLHUmJmJ0KCJmb3JjZSIpfX0pfSksITB9ZnVuY3Rpb24gaHIoZSx0KXtpZighci50ZXJtaW5hbClyZXR1cm47dmFyIG49dHx8e30saT1uLmZvcmNlUmVwbGF5IT09ITEsYT0wLHU9ODtmdW5jdGlvbiBzKCl7aWYoci50ZXJtaW5hbCl7dmFyIG89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2lmKG8mJm8ub2Zmc2V0SGVpZ2h0LG8mJm8ub2Zmc2V0V2lkdGg+MCYmby5vZmZzZXRIZWlnaHQ+MCl7b3QoZSx7Zm9yY2VSZXBsYXk6aX0pO3JldHVybn0rK2E+PXV8fChhPD00P3JlcXVlc3RBbmltYXRpb25GcmFtZShzKTpzZXRUaW1lb3V0KHMsMzIpKX19cygpfWZ1bmN0aW9uIEh0KGUpe3IucmVzaXplVGltZXImJihjbGVhclRpbWVvdXQoci5yZXNpemVUaW1lciksci5yZXNpemVUaW1lcj1udWxsKTt2YXIgdD1lPzA6MTAwO3IucmVzaXplVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe3IucmVzaXplVGltZXI9bnVsbCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoa2QpfSx0KX1mdW5jdGlvbiBrZCgpe2lmKHIudGVybWluYWwpe3ZhciBlPXIudGVybWluYWxBdXRvRm9sbG93fHx1YSgpO2UmJmJ0KCJmb3JjZSIpLHRpKHIudGVybWluYWwuY29scyxyLnRlcm1pbmFsLnJvd3MpfX1mdW5jdGlvbiBRdChlKXtyLndvcmtpbmdEaXI9ZTt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtd29ya2luZy1kaXIiLGUpfWNhdGNoe31BZChlKX1mdW5jdGlvbiByYShlKXtmZXRjaCgiL2FwaS9yZWNlbnQtcGF0aHMiLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gdC5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHQpe2UodHx8W10pfSkuY2F0Y2goZnVuY3Rpb24oKXtlKFtdKX0pfWZ1bmN0aW9uIEFkKGUpe3JldHVybiBmZXRjaCgiL2FwaS9yZWNlbnQtcGF0aHMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtwYXRoOmV9KX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSl9ZnVuY3Rpb24gaWEoZSl7dmFyIHQ9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKG4pe3JldHVybiBuLmlkPT09ZX0pO3QmJnQuc3RhdHVzIT09InJ1bm5pbmciJiYhYWUodCk/YW8oZSk6V3QoZSksenQoKX1mdW5jdGlvbiB4ZChlKXt2YXIgdD1lLnRhcmdldDtpZighKCF0fHwhKHQgaW5zdGFuY2VvZiBFbGVtZW50KSkpe3ZhciBuPXQuY2xvc2VzdCgiLnNpZGViYXItY29sbGFwc2VkLXRpbGUiKTtpZihuJiZuIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpe2lmKG4uZGF0YXNldC5jb2xsYXBzZWROZXdTZXNzaW9uKXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKSxHYSgpO3JldHVybn1pZihuLmRhdGFzZXQuY29sbGFwc2VkU2Vzc2lvbklkKXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKSxpYShuLmRhdGFzZXQuY29sbGFwc2VkU2Vzc2lvbklkKTtyZXR1cm59aWYobi5kYXRhc2V0LmNvbGxhcHNlZEhpc3RvcnlJZCl7ZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCk7dmFyIGk9bi5kYXRhc2V0LmNvbGxhcHNlZEhpc3RvcnlJZCxhPW4uZGF0YXNldC5jd2R8fCIiO21pKGksYSkudGhlbihmdW5jdGlvbih2KXt2JiZ2LmlkJiYoci5zZWxlY3RlZElkPXYuaWQsd2UoKSxyLmRyYWZ0c1t2LmlkXT0iIixmbigpLnRoZW4oZnVuY3Rpb24oKXtXdCh2LmlkKX0pKX0pO3JldHVybn19dmFyIHU9dC5jbG9zZXN0KCIjY2xhdWRlLWhpc3RvcnktdG9nZ2xlIik7aWYodSl7ZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCksci5jbGF1ZGVIaXN0b3J5RXhwYW5kZWQ9IXIuY2xhdWRlSGlzdG9yeUV4cGFuZGVkLHIuY2xhdWRlSGlzdG9yeUV4cGFuZGVkJiYhci5jbGF1ZGVIaXN0b3J5TG9hZGVkJiYkcigpLG1lKCk7cmV0dXJufXZhciBzPXQuY2xvc2VzdCgiW2RhdGEtYWN0aW9uXSIpO2lmKHMmJnMgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCl7aWYoZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCkscy5kYXRhc2V0LmFjdGlvbj09PSJ0b2dnbGUtbWFuYWdlLW1vZGUiKVJjKCk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09InNlbGVjdC1hbGwtdmlzaWJsZSIpJHUoKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0iY2xlYXItc2VsZWN0aW9uIil6YygpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJkZWxldGUtc2VsZWN0ZWQiKVVjKCk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09InRvZ2dsZS1zZWxlY3Rpb24iKWRyKHMuZGF0YXNldC5raW5kLHMuZGF0YXNldC5pZCk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09ImRlbGV0ZS1zZXNzaW9uIiYmcy5kYXRhc2V0LnNlc3Npb25JZCkoZnVuY3Rpb24odil7RG4oIlx1Nzg2RVx1OEJBNFx1NTIyMFx1OTY2NFx1OEZEOVx1NEUyQVx1NEYxQVx1OEJERFx1NTQxN1x1RkYxRlx1NkI2NFx1NjRDRFx1NEY1Q1x1NjVFMFx1NkNENVx1NjRBNFx1OTUwMFx1MzAwMiIse3RpdGxlOiJcdTUyMjBcdTk2NjRcdTRGMUFcdThCREQifSkudGhlbihmdW5jdGlvbihnKXtnJiZlbyh2KX0pfSkocy5kYXRhc2V0LnNlc3Npb25JZCk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09ImRlbGV0ZS1oaXN0b3J5IiYmcy5kYXRhc2V0LmNsYXVkZVNlc3Npb25JZCkoZnVuY3Rpb24odixnKXtEbigiXHU3ODZFXHU4QkE0XHU5NjkwXHU4NUNGXHU4RkQ5XHU2NzYxIENsYXVkZSBcdTUzODZcdTUzRjJcdTU0MTdcdUZGMUYiLHt0aXRsZToiXHU5NjkwXHU4NUNGXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREIixva0xhYmVsOiJcdTk2OTBcdTg1Q0YifSkudGhlbihmdW5jdGlvbihoKXtoJiZ0byh2LGcpfSl9KShzLmRhdGFzZXQuY2xhdWRlU2Vzc2lvbklkLHMuY2xvc2VzdCgiLnNlc3Npb24taXRlbSIpKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0idG9nZ2xlLWhpc3RvcnktZGlyZWN0b3J5IiYmcy5kYXRhc2V0LmN3ZCl7dmFyIG89cy5kYXRhc2V0LmN3ZDtyLmNsYXVkZUhpc3RvcnlFeHBhbmRlZERpcnNbb109IXIuY2xhdWRlSGlzdG9yeUV4cGFuZGVkRGlyc1tvXSxtZSgpfWVsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJkZWxldGUtaGlzdG9yeS1kaXJlY3RvcnkiJiZzLmRhdGFzZXQuY3dkKShmdW5jdGlvbih2LGcpe3ZhciBoPXhwKHYpLG09am4oKS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGIuY3dkPT09dn0pLmxlbmd0aDtEbigiXHU3ODZFXHU4QkE0XHU2RTA1XHU3QTdBXHU2QjY0XHU3NkVFXHU1RjU1XHU0RTBCXHU3Njg0ICIrbSsiIFx1Njc2MSBDbGF1ZGUgXHU1Mzg2XHU1M0YyXHU1NDE3XHVGRjFGIix7dGl0bGU6Ilx1NkUwNVx1N0E3QVx1NzZFRVx1NUY1NVx1NTM4Nlx1NTNGMiIsb2tMYWJlbDoiXHU2RTA1XHU3QTdBIn0pLnRoZW4oZnVuY3Rpb24oYil7YiYmKG5vKGgsITApLEFwKHYsZyxoKSl9KX0pKHMuZGF0YXNldC5jd2Qscyk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09ImNsZWFyLWFsbC1oaXN0b3J5IilWYygpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJ0b2dnbGUtYXJjaGl2ZWQtZ3JvdXAiKXIuYXJjaGl2ZWRFeHBhbmRlZD0hci5hcmNoaXZlZEV4cGFuZGVkLG1lKCk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09InJlc3VtZSImJnMuZGF0YXNldC5zZXNzaW9uSWQpVHAocyk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09InJlc3VtZS1oaXN0b3J5IiYmcy5kYXRhc2V0LmNsYXVkZVNlc3Npb25JZClQcChzKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0icmVzdW1lLWNvZGV4LWhpc3RvcnkiJiZzLmRhdGFzZXQuY2xhdWRlU2Vzc2lvbklkKUxwKHMpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJkZWxldGUtY29kZXgtaGlzdG9yeSImJnMuZGF0YXNldC5jbGF1ZGVTZXNzaW9uSWQpT3Aocyk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09InRvZ2dsZS1jb2RleC1oaXN0b3J5LWRpcmVjdG9yeSImJnMuZGF0YXNldC5jd2Qpe3ZhciBsPXMuZGF0YXNldC5jd2Q7ci5jb2RleEhpc3RvcnlFeHBhbmRlZERpcnNbbF09IXIuY29kZXhIaXN0b3J5RXhwYW5kZWREaXJzW2xdLG1lKCl9ZWxzZSBzLmRhdGFzZXQuYWN0aW9uPT09Indvcmt0cmVlLW1lcmdlIiYmcy5kYXRhc2V0LnNlc3Npb25JZD9YbyhzLmRhdGFzZXQuc2Vzc2lvbklkKTpzLmRhdGFzZXQuYWN0aW9uPT09Indvcmt0cmVlLWNsZWFudXAiJiZzLmRhdGFzZXQuc2Vzc2lvbklkJiZabyhzLmRhdGFzZXQuc2Vzc2lvbklkKTtyZXR1cm59dmFyIGM9dC5jbG9zZXN0KCIuc2Vzc2lvbi1pdGVtIik7aWYoYyl7aWYoci5zZXNzaW9uc01hbmFnZU1vZGUpe2MuZGF0YXNldC5zZXNzaW9uSWQ/ZHIoInNlc3Npb25zIixjLmRhdGFzZXQuc2Vzc2lvbklkKTpjLmRhdGFzZXQuY2xhdWRlSGlzdG9yeUlkJiZkcigiaGlzdG9yeSIsYy5kYXRhc2V0LmNsYXVkZUhpc3RvcnlJZCk7cmV0dXJufWlmKGMuY2xhc3NMaXN0LmNvbnRhaW5zKCJzd2lwZWQiKSl7QXIoKTtyZXR1cm59aWYocm8pcmV0dXJuO2lmKGMuZGF0YXNldC5zZXNzaW9uSWQpaWEoYy5kYXRhc2V0LnNlc3Npb25JZCk7ZWxzZSBpZihjLmRhdGFzZXQuY2xhdWRlSGlzdG9yeUlkKXt2YXIgZj1jLmRhdGFzZXQuY2xhdWRlSGlzdG9yeUlkLGQ9Yy5kYXRhc2V0LmN3ZDttaShmLGQpLnRoZW4oZnVuY3Rpb24odil7diYmdi5pZCYmKHIuc2VsZWN0ZWRJZD12LmlkLHdlKCksci5kcmFmdHNbdi5pZF09IiIsZm4oKS50aGVuKGZ1bmN0aW9uKCl7V3Qodi5pZCksenQoKX0pKX0pfX19fWZ1bmN0aW9uIFNkKGUpe2lmKCEoZS5rZXkhPT0iRW50ZXIiJiZlLmtleSE9PSIgIikpe3ZhciB0PWUudGFyZ2V0LmNsb3Nlc3QoIi5zZXNzaW9uLWl0ZW0iKTtpZih0KXtpZihlLnByZXZlbnREZWZhdWx0KCksci5zZXNzaW9uc01hbmFnZU1vZGUpe3QuZGF0YXNldC5zZXNzaW9uSWQ/ZHIoInNlc3Npb25zIix0LmRhdGFzZXQuc2Vzc2lvbklkKTp0LmRhdGFzZXQuY2xhdWRlSGlzdG9yeUlkJiZkcigiaGlzdG9yeSIsdC5kYXRhc2V0LmNsYXVkZUhpc3RvcnlJZCk7cmV0dXJufWlmKHQuZGF0YXNldC5zZXNzaW9uSWQpaWEodC5kYXRhc2V0LnNlc3Npb25JZCk7ZWxzZSBpZih0LmRhdGFzZXQuY2xhdWRlSGlzdG9yeUlkKXt2YXIgbj10LmRhdGFzZXQuY2xhdWRlSGlzdG9yeUlkLGk9dC5kYXRhc2V0LmN3ZDttaShuLGkpLnRoZW4oZnVuY3Rpb24oYSl7YSYmYS5pZCYmKHIuc2VsZWN0ZWRJZD1hLmlkLHdlKCksci5kcmFmdHNbYS5pZF09IiIsZm4oKS50aGVuKGZ1bmN0aW9uKCl7V3QoYS5pZCksenQoKX0pKX0pfX19fWZ1bmN0aW9uIGFhKGUsdCl7dmFyIG49ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLmlkPT09ci5zZWxlY3RlZElkfSk7aWYobil7dmFyIGk9bltlXTtpZighaSl7aygiXHU1RjUzXHU1MjREXHU0RjFBXHU4QkREXHU2Q0ExXHU2NzA5XHU1M0VGXHU1OTBEXHU1MjM2XHU3Njg0XHU1MTg1XHU1QkI5XHUzMDAyIiwiZXJyb3IiKTtyZXR1cm59UHIoU3RyaW5nKGkpLG51bGwsZnVuY3Rpb24oKXtrKHR8fCJcdTVERjJcdTU5MERcdTUyMzYiLCJpbmZvIil9KX19ZnVuY3Rpb24gRHQoKXtyZXR1cm4hci50ZXJtaW5hbHx8IXIudGVybWluYWwuZWxlbWVudD9udWxsOihyLnRlcm1pbmFsVmlld3BvcnRFbD1yLnRlcm1pbmFsLmVsZW1lbnQsci50ZXJtaW5hbFZpZXdwb3J0RWwpfWZ1bmN0aW9uIFVuKCl7ci50ZXJtaW5hbFNjcm9sbElkbGVUaW1lciYmKGNsZWFyVGltZW91dChyLnRlcm1pbmFsU2Nyb2xsSWRsZVRpbWVyKSxyLnRlcm1pbmFsU2Nyb2xsSWRsZVRpbWVyPW51bGwpfWZ1bmN0aW9uIHZ0KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlcm1pbmFsLWp1bXAtYm90dG9tIiksdD0hIXIuc2VsZWN0ZWRJZCYmci5jdXJyZW50Vmlldz09PSJ0ZXJtaW5hbCImJiFyLnRlcm1pbmFsQXV0b0ZvbGxvdyYmIWhzKCk7ci5zaG93VGVybWluYWxKdW1wVG9Cb3R0b209dCxlJiZlLmNsYXNzTGlzdC50b2dnbGUoInZpc2libGUiLHQpO3ZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKTtuJiZuLmNsYXNzTGlzdC50b2dnbGUoImhhcy1qdW1wLWJ0biIsdCl9ZnVuY3Rpb24gdWEoKXt2YXIgZT1EdCgpO2lmKCFlKXJldHVybiEwO3ZhciB0PWUuc2Nyb2xsSGVpZ2h0LWUuY2xpZW50SGVpZ2h0LWUuc2Nyb2xsVG9wO3JldHVybiB0PD1yLnRlcm1pbmFsU2Nyb2xsVGhyZXNob2xkfWZ1bmN0aW9uIGhzKCl7dmFyIGU9RHQoKTtpZighZSlyZXR1cm4hMDt2YXIgdD1lLnNjcm9sbEhlaWdodC1lLmNsaWVudEhlaWdodC1lLnNjcm9sbFRvcDtyZXR1cm4gdDw9Mn1mdW5jdGlvbiB5cyhlKXtpZihyLnRlcm1pbmFsKXt2YXIgdD1EdCgpO2lmKHQpe3ZhciBuPWU/NTAwOjEyMDtyLnRlcm1pbmFsUHJvZ3JhbW1hdGljU2Nyb2xsVW50aWw9TWF0aC5tYXgoci50ZXJtaW5hbFByb2dyYW1tYXRpY1Njcm9sbFVudGlsLERhdGUubm93KCkrbiksZT90LnNjcm9sbFRvKHt0b3A6dC5zY3JvbGxIZWlnaHQsYmVoYXZpb3I6InNtb290aCJ9KTp0LnNjcm9sbFRvcD10LnNjcm9sbEhlaWdodH19fWZ1bmN0aW9uIHNhKCl7ci50ZXJtaW5hbEF1dG9Gb2xsb3c9ITEsVW4oKSxyLnRlcm1pbmFsUHJvZ3JhbW1hdGljU2Nyb2xsVW50aWw9MCxyLnRlcm1pbmFsJiYiX3Nob3VsZFNjcm9sbFRvQm90dG9tImluIHIudGVybWluYWwmJihyLnRlcm1pbmFsLl9zaG91bGRTY3JvbGxUb0JvdHRvbT0hMSksdnQoKX1mdW5jdGlvbiBidChlKXtpZihyLnRlcm1pbmFsKXt2YXIgdD1lPT09ImZvcmNlIjtpZih0KXtyLnRlcm1pbmFsQXV0b0ZvbGxvdz0hMCxVbigpLHlzKCExKSx2dCgpO3JldHVybn1pZighci50ZXJtaW5hbEF1dG9Gb2xsb3cpe3Z0KCk7cmV0dXJufXlzKCExKSx2dCgpfX1mdW5jdGlvbiBJZChlKXt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0LmNsYXNzTmFtZT0idGVybWluYWwtc2Nyb2xsYmFyIjt2YXIgbj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtuLmNsYXNzTmFtZT0idGVybWluYWwtc2Nyb2xsYmFyLXRyYWNrIjt2YXIgaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpLmNsYXNzTmFtZT0idGVybWluYWwtc2Nyb2xsYmFyLXRodW1iIixuLmFwcGVuZENoaWxkKGkpLHQuYXBwZW5kQ2hpbGQobiksZS5hcHBlbmRDaGlsZCh0KSxyLnRlcm1pbmFsU2Nyb2xsYmFyRWw9dCxyLnRlcm1pbmFsU2Nyb2xsYmFyVGh1bWJFbD1pLHIudGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXI9bnVsbCxyLnRlcm1pbmFsU2Nyb2xsYmFyRHJhZ2dpbmc9ITEsci50ZXJtaW5hbFNjcm9sbGJhclJhZlBlbmRpbmc9ITE7ZnVuY3Rpb24gYSgpe3IudGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXImJihjbGVhclRpbWVvdXQoci50ZXJtaW5hbFNjcm9sbGJhckhpZGVUaW1lciksci50ZXJtaW5hbFNjcm9sbGJhckhpZGVUaW1lcj1udWxsKSx0LmNsYXNzTGlzdC5hZGQoInZpc2libGUiKX1mdW5jdGlvbiB1KCl7ci50ZXJtaW5hbFNjcm9sbGJhckRyYWdnaW5nfHwoci50ZXJtaW5hbFNjcm9sbGJhckhpZGVUaW1lciYmY2xlYXJUaW1lb3V0KHIudGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXIpLHIudGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe3IudGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXI9bnVsbCxyLnRlcm1pbmFsU2Nyb2xsYmFyRHJhZ2dpbmd8fHQuY2xhc3NMaXN0LnJlbW92ZSgidmlzaWJsZSIpfSwxNTAwKSl9ZnVuY3Rpb24gcygpe3IudGVybWluYWxTY3JvbGxiYXJSYWZQZW5kaW5nPSExO3ZhciBtPUR0KCk7aWYobSl7dmFyIGI9bS5zY3JvbGxIZWlnaHQsdz1tLmNsaWVudEhlaWdodDtpZihiPD13KXt0LmNsYXNzTGlzdC5yZW1vdmUoInZpc2libGUiKTtyZXR1cm59dmFyIEU9bi5jbGllbnRIZWlnaHQsQj1NYXRoLm1heCgyOCx3L2IqRSksRj1iLXcseD1tLnNjcm9sbFRvcC9GLFM9eCooRS1CKTtpLnN0eWxlLmhlaWdodD1CKyJweCIsaS5zdHlsZS50b3A9UysicHgifX1mdW5jdGlvbiBvKCl7ci50ZXJtaW5hbFNjcm9sbGJhclJhZlBlbmRpbmd8fChyLnRlcm1pbmFsU2Nyb2xsYmFyUmFmUGVuZGluZz0hMCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUocykpfXZhciBsPUR0KCk7bCYmbC5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLGZ1bmN0aW9uKCl7YSgpLG8oKSx1KCl9LHtwYXNzaXZlOiEwfSksbi5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLGZ1bmN0aW9uKG0pe2lmKG0udGFyZ2V0IT09aSl7bS5wcmV2ZW50RGVmYXVsdCgpO3ZhciBiPUR0KCk7aWYoYil7dmFyIHc9bi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxFPShtLmNsaWVudFktdy50b3ApL3cuaGVpZ2h0LEI9Yi5zY3JvbGxIZWlnaHQtYi5jbGllbnRIZWlnaHQ7Yi5zY3JvbGxUb3A9RSpCfX19KTt2YXIgYz0wLGY9MDtpLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsZnVuY3Rpb24obSl7bS5wcmV2ZW50RGVmYXVsdCgpLG0uc3RvcFByb3BhZ2F0aW9uKCksci50ZXJtaW5hbFNjcm9sbGJhckRyYWdnaW5nPSEwLGkuY2xhc3NMaXN0LmFkZCgiZHJhZ2dpbmciKSxjPW0uY2xpZW50WTt2YXIgYj1EdCgpO2Y9Yj9iLnNjcm9sbFRvcDowLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsZCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsdil9KTtmdW5jdGlvbiBkKG0pe20ucHJldmVudERlZmF1bHQoKTt2YXIgYj1EdCgpO2lmKGIpe3ZhciB3PW4uY2xpZW50SGVpZ2h0LEU9Yi5zY3JvbGxIZWlnaHQsQj1iLmNsaWVudEhlaWdodCxGPUUtQjtpZighKEY8PTApKXt2YXIgeD1NYXRoLm1heCgyOCxCL0UqdyksUz13LXg7aWYoIShTPD0wKSl7dmFyIEg9bS5jbGllbnRZLWMsUj1IL1MqRjtiLnNjcm9sbFRvcD1mK1J9fX19ZnVuY3Rpb24gdigpe3IudGVybWluYWxTY3JvbGxiYXJEcmFnZ2luZz0hMSxpLmNsYXNzTGlzdC5yZW1vdmUoImRyYWdnaW5nIiksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIixkKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZXVwIix2KSx1KCl9aS5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixmdW5jdGlvbihtKXtpZihtLnRvdWNoZXMubGVuZ3RoPT09MSl7bS5zdG9wUHJvcGFnYXRpb24oKSxyLnRlcm1pbmFsU2Nyb2xsYmFyRHJhZ2dpbmc9ITAsaS5jbGFzc0xpc3QuYWRkKCJkcmFnZ2luZyIpLGM9bS50b3VjaGVzWzBdLmNsaWVudFk7dmFyIGI9RHQoKTtmPWI/Yi5zY3JvbGxUb3A6MCxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLGcse3Bhc3NpdmU6ITF9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsaCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hjYW5jZWwiLGgpfX0se3Bhc3NpdmU6ITF9KTtmdW5jdGlvbiBnKG0pe2lmKG0udG91Y2hlcy5sZW5ndGg9PT0xKXttLnByZXZlbnREZWZhdWx0KCk7dmFyIGI9RHQoKTtpZihiKXt2YXIgdz1uLmNsaWVudEhlaWdodCxFPWIuc2Nyb2xsSGVpZ2h0LEI9Yi5jbGllbnRIZWlnaHQsRj1FLUI7aWYoIShGPD0wKSl7dmFyIHg9TWF0aC5tYXgoMjgsQi9FKncpLFM9dy14O2lmKCEoUzw9MCkpe3ZhciBIPW0udG91Y2hlc1swXS5jbGllbnRZLWMsUj1IL1MqRjtiLnNjcm9sbFRvcD1mK1J9fX19fWZ1bmN0aW9uIGgoKXtyLnRlcm1pbmFsU2Nyb2xsYmFyRHJhZ2dpbmc9ITEsaS5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnZ2luZyIpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsZyksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2hlbmQiLGgpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNoY2FuY2VsIixoKSx1KCl9dC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWVudGVyIixmdW5jdGlvbigpe2EoKX0pLHQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsZnVuY3Rpb24oKXtyLnRlcm1pbmFsU2Nyb2xsYmFyRHJhZ2dpbmd8fHUoKX0pLG8oKX1mdW5jdGlvbiBUZChlKXtyZXR1cm4gZTw0MzUyPyExOmU+PTQzNTImJmU8PTQ0NDd8fGU+PTkwMDEmJmU8PTkwMDJ8fGU+PTExOTA0JiZlPD0xMjM1MHx8ZT49MTIzNTMmJmU8PTEzMzExfHxlPj0xMzMxMiYmZTw9MTk5MDN8fGU+PTE5OTY4JiZlPD00MDk1OXx8ZT49NDA5NjAmJmU8PTQyMTkxfHxlPj00NDAzMiYmZTw9NTUyMDN8fGU+PTYzNzQ0JiZlPD02NDI1NXx8ZT49NjUwNzImJmU8PTY1MTAzfHxlPj02NTI4MCYmZTw9NjUzNzZ8fGU+PTY1NTA0JiZlPD02NTUxMHx8ZT49MTI2OTc2JiZlPD0xMjk1MzV8fGU+PTEzMTA3MiYmZTw9MTk2NjA1fHxlPj0xOTY2MDgmJmU8PTI2MjE0MX12YXIgYnM9Ilx1MjA2MCI7ZnVuY3Rpb24gRXMoKXtyZXR1cm57bW9kZToibm9ybWFsIn19ZnVuY3Rpb24gTGQoZSl7cmV0dXJuIS9bXlx4MDAtXHg3Zl0vLnRlc3QoZSkmJmUuaW5kZXhPZigiXHgxQiIpPT09LTF9ZnVuY3Rpb24gTWQoZSx0KXtpZighZSlyZXR1cm4iIjt2YXIgbj1TdHJpbmcoZSk7aWYodC5tb2RlPT09Im5vcm1hbCImJkxkKG4pKXJldHVybiBuO2Zvcih2YXIgaT0iIixhPTA7YTxuLmxlbmd0aDthKyspe3ZhciB1PW4uY2hhckNvZGVBdChhKSxzPXUsbz0xO2lmKHU+PTU1Mjk2JiZ1PD01NjMxOSYmYSsxPG4ubGVuZ3RoKXt2YXIgbD1uLmNoYXJDb2RlQXQoYSsxKTtsPj01NjMyMCYmbDw9NTczNDMmJihzPSh1LTU1Mjk2KSoxMDI0KyhsLTU2MzIwKSs2NTUzNixvPTIpfXZhciBjPW89PT0yP24uc3Vic3RyKGEsMik6bi5jaGFyQXQoYSk7c3dpdGNoKHQubW9kZSl7Y2FzZSJub3JtYWwiOnM9PT0yNz8odC5tb2RlPSJlc2MiLGkrPWMpOnM9PT0xNTU/KHQubW9kZT0iY3NpIixpKz1jKTpzPT09MTU3fHxzPT09MTQ0fHxzPT09MTU4fHxzPT09MTU5Pyh0Lm1vZGU9InN0cmluZyIsaSs9Yyk6KGkrPWMsVGQocykmJihpKz1icykpO2JyZWFrO2Nhc2UiZXNjIjppKz1jLHM9PT05MT90Lm1vZGU9ImNzaSI6cz09PTkzfHxzPT09ODB8fHM9PT04OHx8cz09PTk0fHxzPT09OTU/dC5tb2RlPSJzdHJpbmciOnQubW9kZT0ibm9ybWFsIjticmVhaztjYXNlImNzaSI6aSs9YyxzPj02NCYmczw9MTI2JiYodC5tb2RlPSJub3JtYWwiKTticmVhaztjYXNlInN0cmluZyI6aSs9YyxzPT09N3x8cz09PTE1Nj90Lm1vZGU9Im5vcm1hbCI6cz09PTI3JiYodC5tb2RlPSJzdHJpbmctZXNjIik7YnJlYWs7Y2FzZSJzdHJpbmctZXNjIjppKz1jLHM9PT05Mj90Lm1vZGU9Im5vcm1hbCI6dC5tb2RlPSJzdHJpbmciO2JyZWFrfWErPW8tMX1yZXR1cm4gaX12YXIgbmk9Ilx4MUJbPzIwMjZoIixvYT0iXHgxQls/MjAyNmwiLE9kPTIwMCxQZD0yNTYqMTAyNDtmdW5jdGlvbiBxZChlKXtpZighZXx8ci5zeW5jT3V0cHV0QnVmZmVyPT09bnVsbCYmZS5pbmRleE9mKG5pKT09PS0xKXJldHVybiBlO2Zvcih2YXIgdD0iIixuPTA7bjxlLmxlbmd0aDspaWYoci5zeW5jT3V0cHV0QnVmZmVyIT09bnVsbCl7dmFyIGk9ZS5pbmRleE9mKG9hLG4pO2lmKGk9PT0tMSlyZXR1cm4gci5zeW5jT3V0cHV0QnVmZmVyKz1lLnNsaWNlKG4pLChyLnN5bmNPdXRwdXRCdWZmZXIubGVuZ3RoPlBkfHxEYXRlLm5vdygpPnIuc3luY091dHB1dERlYWRsaW5lKSYmKHQrPXIuc3luY091dHB1dEJ1ZmZlcixyLnN5bmNPdXRwdXRCdWZmZXI9bnVsbCxyLnN5bmNGcmFtaW5nUmVzaWR1ZT0hMCksdDtyLnN5bmNPdXRwdXRCdWZmZXIrPWUuc2xpY2UobixpK29hLmxlbmd0aCksdCs9ci5zeW5jT3V0cHV0QnVmZmVyLHIuc3luY091dHB1dEJ1ZmZlcj1udWxsLG49aStvYS5sZW5ndGh9ZWxzZXt2YXIgYT1lLmluZGV4T2Yobmksbik7aWYoYT09PS0xKXJldHVybiB0Kz1lLnNsaWNlKG4pLHQ7dCs9ZS5zbGljZShuLGEpLHIuc3luY091dHB1dEJ1ZmZlcj1uaSxyLnN5bmNPdXRwdXREZWFkbGluZT1EYXRlLm5vdygpK09kLG49YStuaS5sZW5ndGh9cmV0dXJuIHR9ZnVuY3Rpb24gY2coKXtpZihyLnN5bmNPdXRwdXRCdWZmZXIhPT1udWxsKXt2YXIgZT1yLnN5bmNPdXRwdXRCdWZmZXI7cmV0dXJuIHIuc3luY091dHB1dEJ1ZmZlcj1udWxsLGV9cmV0dXJuIiJ9ZnVuY3Rpb24gVm4oZSx0KXtpZighKCFlfHx0PT1udWxsKSl7ci53aWRlUGFyc2VyU3RhdGV8fChyLndpZGVQYXJzZXJTdGF0ZT1FcygpKTt2YXIgbj1NZCh0LHIud2lkZVBhcnNlclN0YXRlKSxpPXFkKG4pLGE9ci50ZXJtaW5hbEF1dG9Gb2xsb3chPT0hMTsiX3Nob3VsZFNjcm9sbFRvQm90dG9tImluIGUmJihlLl9zaG91bGRTY3JvbGxUb0JvdHRvbT1hKSxpJiZlLndyaXRlKGkpLCJfc2hvdWxkU2Nyb2xsVG9Cb3R0b20iaW4gZSYmKGUuX3Nob3VsZFNjcm9sbFRvQm90dG9tPWEpLGEmJihyLnRlcm1pbmFsUHJvZ3JhbW1hdGljU2Nyb2xsVW50aWw9TWF0aC5tYXgoci50ZXJtaW5hbFByb2dyYW1tYXRpY1Njcm9sbFVudGlsLERhdGUubm93KCkrMTIwKSksS2QodCl9fWZ1bmN0aW9uIGxhKCl7ci53aWRlUGFyc2VyU3RhdGU9RXMoKX1mdW5jdGlvbiBIZCgpe3R5cGVvZiBkb2N1bWVudD4idSJ8fGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNvcHkiLGZ1bmN0aW9uKGUpe3ZhciB0PXdpbmRvdy5nZXRTZWxlY3Rpb24mJndpbmRvdy5nZXRTZWxlY3Rpb24oKTtpZighKCF0fHx0LmlzQ29sbGFwc2VkKSl7dmFyIG49dC5hbmNob3JOb2RlLGk9biYmbi5ub2RlVHlwZT09PTM/bi5wYXJlbnROb2RlOm4sYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7aWYoISghYXx8IWl8fCFhLmNvbnRhaW5zKGkpKSl7dmFyIHU9dC50b1N0cmluZygpLHM9dS5zcGxpdChgCmApLm1hcChmdW5jdGlvbihvKXtyZXR1cm4gby5zcGxpdChicykuam9pbigiIikucmVwbGFjZSgvWyBcdF0rJC8sIiIpfSkuam9pbihgCmApO3MhPT11JiZlLmNsaXBib2FyZERhdGEmJihlLmNsaXBib2FyZERhdGEuc2V0RGF0YSgidGV4dC9wbGFpbiIscyksZS5wcmV2ZW50RGVmYXVsdCgpKX19fSl9SGQoKTt2YXIgRnM9MTUwLHdzPTMwLF9kPTE2MCoxMDI0LE5kPTE5MioxMDI0O2Z1bmN0aW9uIENzKGUpe2lmKCFlfHxlLmxlbmd0aDw9TmQpcmV0dXJuIGU7dmFyIHQ9ZS5sZW5ndGgsbj1mdW5jdGlvbih4KXtpZighKHR5cGVvZiByPiJ1Inx8IXIpKXt2YXIgUz1yLnRlcm1pbmFsT3V0cHV0TWFya2VyfDA7aWYoIShTPD0wKSl7dmFyIEg9dC14O3IudGVybWluYWxPdXRwdXRNYXJrZXI9Uz5IP1MtSDowfX19LGk9ZS5sZW5ndGgtX2Q7aWYoaT4wJiZpPGUubGVuZ3RoKXt2YXIgYT1lLmNoYXJDb2RlQXQoaSk7YT49NTYzMjAmJmE8PTU3MzQzJiZpKyt9Zm9yKHZhciB1PTQwOTYscz1NYXRoLm1pbihpK3UsZS5sZW5ndGgpLG89aTtvPHM7bysrKWlmKGUuY2hhckNvZGVBdChvKT09PTEwKXt2YXIgbD1lLnNsaWNlKG8rMSk7cmV0dXJuIG4obC5sZW5ndGgpLGx9Zm9yKHZhciBjPU1hdGgubWF4KDAsaS0yNTYpLGY9LTEsZD1pLTE7ZD49YztkLS0pe3ZhciB2PWUuY2hhckNvZGVBdChkKTtpZih2PT09Mjcpe2Y9ZDticmVha31pZih2PT09N3x8dj49NjQmJnY8PTEyNilicmVha31pZihmIT09LTEpe2Zvcih2YXIgZz0hMSxoPWYrMTtoPGk7aCsrKXt2YXIgbT1lLmNoYXJDb2RlQXQoaCk7aWYobT09PTcpe2c9ITA7YnJlYWt9aWYobT49NjQmJm08PTEyNil7Zz0hMDticmVha319aWYoIWcpZm9yKHZhciBiPU1hdGgubWluKGkrMjU2LGUubGVuZ3RoKSx3PWk7dzxiO3crKyl7dmFyIEU9ZS5jaGFyQ29kZUF0KHcpO2lmKEU9PT03fHxFPj02NCYmRTw9MTI2KXt2YXIgQj1lLnNsaWNlKHcrMSk7cmV0dXJuIG4oQi5sZW5ndGgpLEJ9fX12YXIgRj1lLnNsaWNlKGkpO3JldHVybiBuKEYubGVuZ3RoKSxGfWZ1bmN0aW9uIHJpKCl7aWYoci50ZXJtaW5hbCl7aWYodHlwZW9mIHIudGVybWluYWwucmVzZXQ9PSJmdW5jdGlvbiIpe3IudGVybWluYWwucmVzZXQoKSxsYSgpLHIuc3luY091dHB1dEJ1ZmZlcj1udWxsLHIuc3luY091dHB1dERlYWRsaW5lPTA7cmV0dXJufXR5cGVvZiByLnRlcm1pbmFsLndyaXRlPT0iZnVuY3Rpb24iJiZyLnRlcm1pbmFsLndyaXRlKCJceDFCYyIpLGxhKCksci5zeW5jT3V0cHV0QnVmZmVyPW51bGwsci5zeW5jT3V0cHV0RGVhZGxpbmU9MH19ci5fcmVzeW5jU3RhdHNXaW5kb3dTdGFydD0wLHIuX3Jlc3luY1N0YXRzQ291bnQ9MCxyLl9yZXN5bmNMYXN0V2FybkF0PTA7dmFyIGpkPTVlMyxSZD0xMixXZD0zZTQ7ci5fcmVzeW5jSW5Qcm9ncmVzcz0hMTtmdW5jdGlvbiBrbihlKXtpZighci50ZXJtaW5hbHx8IXIudGVybWluYWxPdXRwdXQpcmV0dXJuITE7dmFyIHQ9ZXx8e30sbj1yLnRlcm1pbmFsT3V0cHV0TWFya2VyfDA7bjwwJiYobj0wKSxuPnIudGVybWluYWxPdXRwdXQubGVuZ3RoJiYobj1yLnRlcm1pbmFsT3V0cHV0Lmxlbmd0aCk7dmFyIGk9bj4wP3IudGVybWluYWxPdXRwdXQuc2xpY2Uobik6ci50ZXJtaW5hbE91dHB1dCxhPWkubGVuZ3RoLHU9dHlwZW9mIHBlcmZvcm1hbmNlPCJ1IiYmcGVyZm9ybWFuY2Uubm93P3BlcmZvcm1hbmNlLm5vdygpOkRhdGUubm93KCk7ci5fcmVzeW5jSW5Qcm9ncmVzcz0hMDt0cnl7cmkoKSxWbihyLnRlcm1pbmFsLGkpfWZpbmFsbHl7ci5fcmVzeW5jSW5Qcm9ncmVzcz0hMX1yLmxhc3RUZXJtaW5hbFJlc3luY0F0PURhdGUubm93KCksYnQoIm91dHB1dCIpLHQuc2tpcEZpdHx8b3QoInJlZnJlc2giKTt2YXIgcz1EYXRlLm5vdygpO2lmKHMtci5fcmVzeW5jU3RhdHNXaW5kb3dTdGFydD5qZClyLl9yZXN5bmNTdGF0c1dpbmRvd1N0YXJ0PXMsci5fcmVzeW5jU3RhdHNDb3VudD0xO2Vsc2UgaWYoci5fcmVzeW5jU3RhdHNDb3VudCsrLHIuX3Jlc3luY1N0YXRzQ291bnQ+UmQmJnMtci5fcmVzeW5jTGFzdFdhcm5BdD5XZCl7ci5fcmVzeW5jTGFzdFdhcm5BdD1zO3ZhciBvPXR5cGVvZiBwZXJmb3JtYW5jZTwidSImJnBlcmZvcm1hbmNlLm5vdz9wZXJmb3JtYW5jZS5ub3coKTpEYXRlLm5vdygpO2NvbnNvbGUud2FybigiW3dhbmRdIHNvZnRSZXN5bmNUZXJtaW5hbCBoaWdoIGZyZXF1ZW5jeSIsImNvdW50PSIrci5fcmVzeW5jU3RhdHNDb3VudCsiLyIrTWF0aC5yb3VuZCgocy1yLl9yZXN5bmNTdGF0c1dpbmRvd1N0YXJ0KS8xMDApLzEwKyJzIiwiYnVmTGVuPSIrYSwibGFzdFJlcGxheU1zPSIrTWF0aC5yb3VuZChvLXUpKX1yZXR1cm4hMH1mdW5jdGlvbiB6ZChlKXtyLnNvZnRSZXN5bmNUaW1lciYmY2xlYXJUaW1lb3V0KHIuc29mdFJlc3luY1RpbWVyKSxyLnNvZnRSZXN5bmNUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci5zb2Z0UmVzeW5jVGltZXI9bnVsbCxrbigpfSx0eXBlb2YgZT09Im51bWJlciI/ZToxNTApfXZhciBVZD0vXHgxYlxbXGQqKD86O1xkKik/W0FCQ0RmSEpLXS8sQnM9MTUwMCxWZD04MDA7ci5fcmVzeW5jQ2h1bmtMYXN0QXQ9MCxyLl9yZXN5bmNDaHVua1RhaWxUaW1lcj1udWxsO2Z1bmN0aW9uIEtkKGUpe2lmKCFyLl9yZXN5bmNJblByb2dyZXNzJiZyLnN5bmNGcmFtaW5nUmVzaWR1ZSYmKHIuc3luY0ZyYW1pbmdSZXNpZHVlPSExLCEoIWV8fHR5cGVvZiBlIT0ic3RyaW5nIikmJmUuaW5kZXhPZigiXHgxQlsiKSE9PS0xJiZVZC50ZXN0KGUpKSl7dmFyIHQ9RGF0ZS5ub3coKSxuPXQtci5fcmVzeW5jQ2h1bmtMYXN0QXQ7aWYobj49QnMpe3IuX3Jlc3luY0NodW5rVGFpbFRpbWVyJiYoY2xlYXJUaW1lb3V0KHIuX3Jlc3luY0NodW5rVGFpbFRpbWVyKSxyLl9yZXN5bmNDaHVua1RhaWxUaW1lcj1udWxsKSxyLl9yZXN5bmNDaHVua0xhc3RBdD10LGtuKCk7cmV0dXJufWlmKCFyLl9yZXN5bmNDaHVua1RhaWxUaW1lcil7dmFyIGk9TWF0aC5tYXgoVmQsQnMtbik7ci5fcmVzeW5jQ2h1bmtUYWlsVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe3IuX3Jlc3luY0NodW5rVGFpbFRpbWVyPW51bGwsci5fcmVzeW5jQ2h1bmtMYXN0QXQ9RGF0ZS5ub3coKSxrbigpfSxpKX19fWZ1bmN0aW9uIGlpKGUsdCxuKXtpZighci50ZXJtaW5hbClyZXR1cm4hMTt2YXIgaT1OYSh0fHwiIiksYT1lfHxudWxsLHU9bnx8e30scz11Lm1vZGV8fCJhcHBlbmQiLG89dS5zY3JvbGwhPT0hMSxsPXIudGVybWluYWxTZXNzaW9uSWQhPT1hLGM9ci50ZXJtaW5hbE91dHB1dHx8IiIsZj0hIShhJiZyLnRlcm1pbmFsTGl2ZVN0cmVhbVNlc3Npb25zW2FdKSxkPSExO2lmKGk9PT1jJiYhbClyZXR1cm4gbyYmYnQoIm91dHB1dCIpLHZ0KCksITE7aWYobCYmKHJpKCksYz0iIixyLnRlcm1pbmFsT3V0cHV0PSIiLHIudGVybWluYWxPdXRwdXRNYXJrZXI9MCxyLnRlcm1pbmFsQXV0b0ZvbGxvdz0hMCxVbigpLHZ0KCkpLHM9PT0icmVwbGFjZSIpaSE9PWMmJihyaSgpLGkmJlZuKHIudGVybWluYWwsaSksZD0hMCk7ZWxzZXtpZihpLmxlbmd0aDxjLmxlbmd0aCYmIWwpcmV0dXJuITE7aWYoZiYmIWwmJnMhPT0icmVwbGFjZSImJmMmJiFpLnN0YXJ0c1dpdGgoYykpcmV0dXJuITE7aWYoaS5zdGFydHNXaXRoKGMpKXt2YXIgdj1pLnNsaWNlKGMubGVuZ3RoKTt2JiYoVm4oci50ZXJtaW5hbCx2KSxkPSEwKX1lbHNle2lmKGMmJmMuc3RhcnRzV2l0aChpKSlyZXR1cm4hMTtyaSgpLGkmJlZuKHIudGVybWluYWwsaSksZD0hMH19cmV0dXJuIHIudGVybWluYWxTZXNzaW9uSWQ9YSxyLnRlcm1pbmFsT3V0cHV0PWksci50ZXJtaW5hbE91dHB1dE1hcmtlcj0wLG8mJihkfHxsfHxzPT09InJlcGxhY2UiKT9idChsfHxzPT09InJlcGxhY2UiPyJmb3JjZSI6Im91dHB1dCIpOnZ0KCksbCYmdGkoci50ZXJtaW5hbC5jb2xzLHIudGVybWluYWwucm93cyksZHx8bH1mdW5jdGlvbiBLbigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKTtpZighKCFlfHxyLnRlcm1pbmFsfHxyLnRlcm1pbmFsSW5pdGlhbGl6aW5nKSl7aWYodHlwZW9mIFdUZXJtTGliPiJ1Inx8IVdUZXJtTGliLldUZXJtKXtyLnRlcm1pbmFsSW5pdFJldHJpZXN8fChyLnRlcm1pbmFsSW5pdFJldHJpZXM9MCksci50ZXJtaW5hbEluaXRSZXRyaWVzPDEwJiYoci50ZXJtaW5hbEluaXRSZXRyaWVzKyssc2V0VGltZW91dChLbiwyMDApKTtyZXR1cm59ci50ZXJtaW5hbEluaXRSZXRyaWVzPTAsci50ZXJtaW5hbEluaXRpYWxpemluZz0hMCxyLnNlbGVjdGVkSWQmJihlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGUuY2xhc3NMaXN0LmFkZCgiYWN0aXZlIikpO2Zvcih2YXIgdD1lLnF1ZXJ5U2VsZWN0b3JBbGwoIi50ZXJtaW5hbC1zY3JvbGwtd3JhcCIpLG49MDtuPHQubGVuZ3RoO24rKyl7dmFyIGk9dFtuXTtpLnBhcmVudE5vZGU9PT1lJiZlLnJlbW92ZUNoaWxkKGkpfXZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2EuY2xhc3NOYW1lPSJ0ZXJtaW5hbC1zY3JvbGwtd3JhcCIsZS5hcHBlbmRDaGlsZChhKTt2YXIgdT1uZXcgV1Rlcm1MaWIuV1Rlcm0oYSx7Y29sczoxMjAscm93czozNixhdXRvUmVzaXplOiEwLGN1cnNvckJsaW5rOiExLG9uRGF0YTpmdW5jdGlvbigpe30sb25SZXNpemU6ZnVuY3Rpb24obyxsKXt0aShvLGwpLHIudGVybWluYWwmJnIudGVybWluYWxPdXRwdXQmJmtuKHtza2lwRml0OiEwfSl9fSkscz1kb2N1bWVudC5mb250cyYmdHlwZW9mIGRvY3VtZW50LmZvbnRzLnJlYWR5PT0ib2JqZWN0Ij9Qcm9taXNlLnJhY2UoW2RvY3VtZW50LmZvbnRzLnJlYWR5LG5ldyBQcm9taXNlKGZ1bmN0aW9uKG8pe3NldFRpbWVvdXQobyw4MDApfSldKTpQcm9taXNlLnJlc29sdmUoKTtzLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gdS5pbml0KCl9KS50aGVuKGZ1bmN0aW9uKCl7aWYoci50ZXJtaW5hbD11LHIudGVybWluYWxJbml0aWFsaXppbmc9ITEsRnUoKSxhLmlzQ29ubmVjdGVkJiYoYS5vZmZzZXRIZWlnaHQsdHlwZW9mIHUucmVtZWFzdXJlPT0iZnVuY3Rpb24iKSl0cnl7dS5yZW1lYXN1cmUoKX1jYXRjaHt9ci50ZXJtaW5hbEF1dG9Gb2xsb3c9ITAsVW4oKTt2YXIgbz1EdCgpO2lmKG8mJihyLnRlcm1pbmFsVmlld3BvcnRTY3JvbGxIYW5kbGVyPWZ1bmN0aW9uKCl7aWYoRGF0ZS5ub3coKTxyLnRlcm1pbmFsUHJvZ3JhbW1hdGljU2Nyb2xsVW50aWwpe3Z0KCk7cmV0dXJufWlmKGhzKCkpe3IudGVybWluYWxBdXRvRm9sbG93PSEwLFVuKCksdnQoKTtyZXR1cm59c2EoKX0sci50ZXJtaW5hbFZpZXdwb3J0VG91Y2hTdGFydEhhbmRsZXI9ZnVuY3Rpb24oYyl7Yy50b3VjaGVzJiZjLnRvdWNoZXMubGVuZ3RoPT09MSYmKHIudGVybWluYWxUb3VjaFN0YXJ0WT1jLnRvdWNoZXNbMF0uY2xpZW50WSl9LHIudGVybWluYWxWaWV3cG9ydFRvdWNoSGFuZGxlcj1mdW5jdGlvbihjKXshYy50b3VjaGVzfHxjLnRvdWNoZXMubGVuZ3RoIT09MXx8dHlwZW9mIHIudGVybWluYWxUb3VjaFN0YXJ0WT09Im51bWJlciImJmMudG91Y2hlc1swXS5jbGllbnRZLXIudGVybWluYWxUb3VjaFN0YXJ0WT40JiZzYSgpfSxvLmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsci50ZXJtaW5hbFZpZXdwb3J0U2Nyb2xsSGFuZGxlcix7cGFzc2l2ZTohMH0pLG8uYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsci50ZXJtaW5hbFZpZXdwb3J0VG91Y2hTdGFydEhhbmRsZXIse3Bhc3NpdmU6ITB9KSxvLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsci50ZXJtaW5hbFZpZXdwb3J0VG91Y2hIYW5kbGVyLHtwYXNzaXZlOiEwfSkpLHIudGVybWluYWxXaGVlbEhhbmRsZXI9ZnVuY3Rpb24oYyl7Yy5kZWx0YVk8MCYmc2EoKSxjLnN0b3BQcm9wYWdhdGlvbigpfSxlLmFkZEV2ZW50TGlzdGVuZXIoIndoZWVsIixyLnRlcm1pbmFsV2hlZWxIYW5kbGVyLHtwYXNzaXZlOiEwfSksSWQoZSksci5zZWxlY3RlZElkKXt2YXIgbD1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYyl7cmV0dXJuIGMuaWQ9PT1yLnNlbGVjdGVkSWR9KTtsJiZpaShsLmlkLGwub3V0cHV0fHwiIix7bW9kZToiYXBwZW5kIixzY3JvbGw6ITF9KX1lbHNlIFZuKHUsYFx1NzBCOVx1NTFGQlx1NEUwQVx1NjVCOVx1MzAwQ1x1NjVCMFx1NUJGOVx1OEJERFx1MzAwRFx1NUYwMFx1NTlDQlx1NEY2MFx1NzY4NFx1N0IyQ1x1NEUwMFx1NkIyMVx1NUJGOVx1OEJERFx1MzAwMlxyCmApO3IudGVybWluYWxDbGlja0hhbmRsZXI9ZnVuY3Rpb24oYyl7cGkoKXx8anQoYyl9LGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHIudGVybWluYWxDbGlja0hhbmRsZXIpLHZ0KCksY2QoKSxwZCgpLENkKCksQmQoKSxvdCgibW91bnQiLHtmb3JjZVJlcGxheTohMH0pfSkuY2F0Y2goZnVuY3Rpb24obyl7ci50ZXJtaW5hbEluaXRpYWxpemluZz0hMSxjb25zb2xlLmVycm9yKCJbd2FuZF0gd3Rlcm0gaW5pdCBmYWlsZWQ6IixvKX0pfX1mdW5jdGlvbiBKZChlLHQpe2lmKCEoIXIuc2VsZWN0ZWRJZHx8IWUpKXt2YXIgbj1yLnNlbGVjdGVkSWQrIjoiK2U7aWYoci50b29sQ29udGVudENhY2hlW25dKXt0KG51bGwsci50b29sQ29udGVudENhY2hlW25dKTtyZXR1cm59ZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoci5zZWxlY3RlZElkKSsiL3Rvb2wtY29udGVudC8iK2VuY29kZVVSSUNvbXBvbmVudChlKSx7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpfSkudGhlbihmdW5jdGlvbihpKXtpLmVycm9yP3QoaS5lcnJvcixudWxsKTooci50b29sQ29udGVudENhY2hlW25dPWksdChudWxsLGkpKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dCgiXHU1MkEwXHU4RjdEXHU1OTMxXHU4RDI1IixudWxsKX0pfX1mdW5jdGlvbiBBbihlKXtyZXR1cm4hIShyLmNvbmZpZyYmci5jb25maWcuY2FyZERlZmF1bHRzJiZyLmNvbmZpZy5jYXJkRGVmYXVsdHNbZV0pfWZ1bmN0aW9uIGNhKGUsdCxuLGkpe2lmKCEoIWV8fGUuZGF0YXNldC50cnVuY2F0ZWQhPT0idHJ1ZSJ8fGUuZGF0YXNldC5sb2FkZWQ9PT0idHJ1ZSIpKXt2YXIgYT1lLmRhdGFzZXQudG9vbFVzZUlkO2EmJih0JiYodC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9InRvb2wtY29udGVudC1sb2FkaW5nIj5cdTUyQTBcdThGN0RcdTRFMkRcdTIwMjY8L2Rpdj4nKSxlLmRhdGFzZXQubG9hZGVkPSJsb2FkaW5nIixKZChhLGZ1bmN0aW9uKHUscyl7aWYodSl7dCYmKHQuaW5uZXJIVE1MPWl8fCc8ZGl2IGNsYXNzPSJ0b29sLWNvbnRlbnQtZXJyb3IiPlx1NTJBMFx1OEY3RFx1NTkzMVx1OEQyNVx1RkYwQ1x1NzBCOVx1NTFGQlx1OTFDRFx1OEJENTwvZGl2PicpLGUuZGF0YXNldC5sb2FkZWQ9IiI7cmV0dXJufWUuZGF0YXNldC50cnVuY2F0ZWQ9ImZhbHNlIixlLmRhdGFzZXQubG9hZGVkPSJ0cnVlIjt2YXIgbz10eXBlb2Ygcy5jb250ZW50PT0ic3RyaW5nIj9zLmNvbnRlbnQ6SlNPTi5zdHJpbmdpZnkocy5jb250ZW50KTtuKG8scyl9KSl9fXdpbmRvdy5fX3RjVG9nZ2xlPWZ1bmN0aW9uKGUsdCl7dmFyIG49dC5jbG9zZXN0KCIudG9vbC11c2UtY2FyZCIpfHx0LmNsb3Nlc3QoIi5pbmxpbmUtZGlmZiIpO2lmKG4pe3ZhciBpPW4uY2xhc3NMaXN0LmNvbnRhaW5zKCJjb2xsYXBzZWQiKTtuLmNsYXNzTGlzdC50b2dnbGUoImNvbGxhcHNlZCIpO3ZhciBhPW4uZGF0YXNldC5leHBhbmRLaW5kfHwidG9vbC1jYXJkIjtpZihGbihuLGEpLGkpe3ZhciB1PW4ucXVlcnlTZWxlY3RvcigiLnRvb2wtdXNlLXJlc3VsdCIpO2NhKG4sdSxmdW5jdGlvbihzKXt1JiYodS5pbm5lckhUTUw9JzxwcmUgY2xhc3M9InRvb2wtdXNlLXJlc3VsdC1jb250ZW50Ij4nK3AocykrIjwvcHJlPiIpfSxgPGRpdiBjbGFzcz0idG9vbC1jb250ZW50LWVycm9yIiBvbmNsaWNrPSJfX3RjVG9nZ2xlKG51bGwsIHRoaXMuY2xvc2VzdCgnLnRvb2wtdXNlLWNhcmQsLmlubGluZS1kaWZmJykucXVlcnlTZWxlY3RvcignLnRvb2wtdXNlLWhlYWRlciwuZGlmZi1oZWFkZXInKSkiPlx1NTJBMFx1OEY3RFx1NTkzMVx1OEQyNVx1RkYwQ1x1NzBCOVx1NTFGQlx1OTFDRFx1OEJENTwvZGl2PmApfX1lJiYoZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCkpfSx3aW5kb3cuX190aGlua2luZ1RvZ2dsZT1mdW5jdGlvbihlKXt2YXIgdD1lLmNsYXNzTGlzdC5jb250YWlucygiY29sbGFwc2VkIik7aWYodCl7ZS5jbGFzc0xpc3QucmVtb3ZlKCJjb2xsYXBzZWQiKSxlLmNsYXNzTGlzdC5hZGQoImV4cGFuZGVkIiksZS5xdWVyeVNlbGVjdG9yKCIudGhpbmtpbmctaW5saW5lLXByZXZpZXciKS50ZXh0Q29udGVudD1lLmRhdGFzZXQudGhpbmtpbmd8fCIiO3ZhciBuPWUucXVlcnlTZWxlY3RvcigiLnRoaW5raW5nLWlubGluZS1hY3Rpb24iKTtuJiYobi50ZXh0Q29udGVudD0iXHU2NTM2XHU4RDc3Iil9ZWxzZXtlLmNsYXNzTGlzdC5yZW1vdmUoImV4cGFuZGVkIiksZS5jbGFzc0xpc3QuYWRkKCJjb2xsYXBzZWQiKTt2YXIgaT0oZS5kYXRhc2V0LnRoaW5raW5nfHwiIikuc2xpY2UoMCw1NykrKChlLmRhdGFzZXQudGhpbmtpbmd8fCIiKS5sZW5ndGg+NjA/Ilx1MjAyNiI6IiIpO2UucXVlcnlTZWxlY3RvcigiLnRoaW5raW5nLWlubGluZS1wcmV2aWV3IikudGV4dENvbnRlbnQ9aTt2YXIgbj1lLnF1ZXJ5U2VsZWN0b3IoIi50aGlua2luZy1pbmxpbmUtYWN0aW9uIik7biYmKG4udGV4dENvbnRlbnQ9Ilx1NUM1NVx1NUYwMCIpfUZuKGUsInRoaW5raW5nIil9LHdpbmRvdy5fX3N1YmFnZW50UmVwbHlUb2dnbGU9ZnVuY3Rpb24oZSx0KXtlJiYoZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCkpO3ZhciBuPXQmJnQuY2xvc2VzdD90LmNsb3Nlc3QoIi5zdWJhZ2VudC1yZXBseSIpOm51bGw7aWYobil7dmFyIGk9bi5nZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kZWQiKT09PSJ0cnVlIjtXaShuLCJzdWJhZ2VudC1yZXBseSIsIWkpLEZuKG4sInN1YmFnZW50LXJlcGx5Iil9fSx3aW5kb3cuX19zdWJhZ2VudFBhbmVsVG9nZ2xlPWZ1bmN0aW9uKGUsdCl7ZSYmKGUucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpKTt2YXIgbj10JiZ0LmNsb3Nlc3Q/dC5jbG9zZXN0KCIuc3ViYWdlbnQtcGFuZWwiKTpudWxsO2lmKG4pe3ZhciBpPW4uZ2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIik9PT0idHJ1ZSI7V2kobiwic3ViYWdlbnQtcGFuZWwiLCFpKSxGbihuLCJzdWJhZ2VudC1wYW5lbCIpfX07ZnVuY3Rpb24gR2QoZSl7aWYoZSlmb3IodmFyIHQ9ZS5xdWVyeVNlbGVjdG9yQWxsKCcuc3ViYWdlbnQtcGFuZWxbZGF0YS1leHBhbmRlZD0iZmFsc2UiXScpLG49MDtuPHQubGVuZ3RoO24rKyl7dmFyIGk9dFtuXS5xdWVyeVNlbGVjdG9yKCIuc3ViYWdlbnQtcGFuZWwtYm9keSIpO2kmJihpLnNjcm9sbFRvcD1pLnNjcm9sbEhlaWdodCl9fXdpbmRvdy5fX29wZW5GaWxlUHJldmlldz1mdW5jdGlvbihlKXtlJiZLcihlKX0sd2luZG93Ll9faW5saW5lVG9vbFRvZ2dsZT1mdW5jdGlvbihlKXt2YXIgdD1lLmNsYXNzTGlzdC50b2dnbGUoImlubGluZS10b29sLW9wZW4iKSxuPWUucXVlcnlTZWxlY3RvcigiLmlubGluZS10b29sLWV4cGFuZGVkIik7biYmKG4uc3R5bGUuZGlzcGxheT10PyJibG9jayI6Im5vbmUiKTt2YXIgaT1lLnF1ZXJ5U2VsZWN0b3IoIi5pbmxpbmUtdG9vbC1zdGF0dXMiKTtpJiYoZS5kYXRhc2V0LnN0YXR1cz09PSJlcnJvciI/aS50ZXh0Q29udGVudD0iXHUyNzE3IjplLmRhdGFzZXQuc3RhdHVzPT09ImRvbmUiJiYoaS50ZXh0Q29udGVudD0iXHUyNzEzIikpLHQmJmNhKGUsbixmdW5jdGlvbihhKXtlLmRhdGFzZXQucmVzdWx0PWEsbiYmKG4uaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJpbmxpbmUtdG9vbC1yZXN1bHQiPicrVG8oYSwiIikrIjwvZGl2PiIpfSksRm4oZSwiaW5saW5lLXRvb2wiKX0sd2luZG93Ll9fdGVybWluYWxFeHBhbmQ9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5jbG9zZXN0KCIuaW5saW5lLXRlcm1pbmFsIik7aWYodCl7dmFyIG49dC5xdWVyeVNlbGVjdG9yKCIudGVybS1ib2R5Iik7aWYobil7dmFyIGk9bi5zdHlsZS5kaXNwbGF5PT09Im5vbmUiO24uc3R5bGUuZGlzcGxheT1pPyJibG9jayI6Im5vbmUiLHQuZGF0YXNldC5leHBhbmRlZD1pPyJ0cnVlIjoiZmFsc2UiO3ZhciBhPWUucXVlcnlTZWxlY3RvcigiLnRlcm0tdG9nZ2xlLWljb24iKTtpZihhJiYoYS50ZXh0Q29udGVudD1pPyJcdTI1QkMiOiJcdTI1QjYiKSxGbih0LCJ0ZXJtaW5hbCIpLGkpe3ZhciB1PW4ucXVlcnlTZWxlY3RvcigiLnRlcm0tb3V0cHV0Iik7Y2EodCx1LGZ1bmN0aW9uKHMpe2lmKHUpe2Zvcih2YXIgbz1zLnNwbGl0KGAKYCksbD0iIixjPTA7YzxvLmxlbmd0aDtjKyspIW9bY10mJmM9PT1vLmxlbmd0aC0xfHwobCs9JzxkaXYgY2xhc3M9InRlcm0tbGluZSI+JytwKG9bY10pKyI8L2Rpdj4iKTt1LmlubmVySFRNTD1sfX0pfX19fTtmdW5jdGlvbiBkZyhlKXt2YXIgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIudGhpbmtpbmctc3RyZWFtaW5nIik7aWYodCl7dmFyIG49dC5xdWVyeVNlbGVjdG9yKCIudGhpbmtpbmctc3RyZWFtaW5nLXRleHQiKTtpZihuKXt2YXIgaT1lLnNwbGl0KGAKYCksYT1pLnNsaWNlKC0zKTtuLnRleHRDb250ZW50PWEuam9pbihgCmApLG4uc2Nyb2xsVG9wPW4uc2Nyb2xsSGVpZ2h0fX19d2luZG93Ll9fYXNrU2VsZWN0PWZ1bmN0aW9uKGUsdCxuLGkpe3ZhciBhPXIuYXNrVXNlclNlbGVjdGlvbnNbZV07aWYoYXx8KGE9e3N1Ym1pdHRlZDohMX0sci5hc2tVc2VyU2VsZWN0aW9uc1tlXT1hKSwhYS5zdWJtaXR0ZWQpe3ZhciB1PWFbdF18fFtdO2lmKGkpe3ZhciBzPXUuaW5kZXhPZihuKTtzPT09LTE/dS5wdXNoKG4pOnUuc3BsaWNlKHMsMSl9ZWxzZSB1PXVbMF09PT1uP1tdOltuXTthW3RdPXUsd2luZG93Ll9fYXNrUmVuZGVyKGUpfX0sd2luZG93Ll9fYXNrUmVuZGVyPWZ1bmN0aW9uKGUpe3ZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXRvb2wtdXNlLWlkPSInK2UrJyJdJyk7aWYodCl7dmFyIG49ci5hc2tVc2VyU2VsZWN0aW9uc1tlXXx8e307dC5xdWVyeVNlbGVjdG9yQWxsKCIuYXNrLXVzZXItb3B0aW9uIikuZm9yRWFjaChmdW5jdGlvbihzKXt2YXIgbz1wYXJzZUludChzLmRhdGFzZXQucXVlc3Rpb25JbmRleCwxMCksbD1wYXJzZUludChzLmRhdGFzZXQub3B0aW9uSW5kZXgsMTApLGM9KG5bb118fFtdKS5pbmRleE9mKGwpIT09LTE7cy5jbGFzc0xpc3QudG9nZ2xlKCJzZWxlY3RlZCIsYyl9KTt2YXIgaT10LnF1ZXJ5U2VsZWN0b3IoIi5hc2stdXNlci1zdWJtaXQiKTtpZihpKXt2YXIgYT10LnF1ZXJ5U2VsZWN0b3JBbGwoIi5hc2stdXNlci1xdWVzdGlvbi1ncm91cCIpLHU9ITA7YS5mb3JFYWNoKGZ1bmN0aW9uKHMsbyl7KCFuW29dfHxuW29dLmxlbmd0aD09PTApJiYodT0hMSl9KSxpLmRpc2FibGVkPSF1fHwhIW4uc3VibWl0dGVkLG4uc3VibWl0dGVkJiYoaS50ZXh0Q29udGVudD0iXHU1REYyXHU2M0QwXHU0RUE0Li4uIixpLmNsYXNzTGlzdC5hZGQoImFzay11c2VyLXN1Ym1pdHRlZCIpKX19fSx3aW5kb3cuX19hc2tTdWJtaXQ9ZnVuY3Rpb24oZSl7dmFyIHQ9ci5hc2tVc2VyU2VsZWN0aW9uc1tlXTtpZighKCF0fHx0LnN1Ym1pdHRlZHx8IXIuc2VsZWN0ZWRJZCkpe3ZhciBuPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXRvb2wtdXNlLWlkPSInK2UrJyJdJyk7aWYobil7dmFyIGk9bi5xdWVyeVNlbGVjdG9yQWxsKCIuYXNrLXVzZXItcXVlc3Rpb24tZ3JvdXAiKSxhPVtdLHU9ITA7aWYoaS5mb3JFYWNoKGZ1bmN0aW9uKG8sbCl7dmFyIGM9dFtsXXx8W107aWYoYy5sZW5ndGg9PT0wKXt1PSExO3JldHVybn12YXIgZj1bXTtjLmZvckVhY2goZnVuY3Rpb24oZCl7dmFyIHY9by5xdWVyeVNlbGVjdG9yKCdbZGF0YS1vcHRpb24taW5kZXg9IicrZCsnIl0nKTt2JiZmLnB1c2godi5kYXRhc2V0Lm9wdGlvbkxhYmVsKX0pLGEucHVzaChmLmpvaW4oIiwgIikpfSksISF1KXt0LnN1Ym1pdHRlZD0hMCx3aW5kb3cuX19hc2tSZW5kZXIoZSk7dmFyIHM9YS5qb2luKGAKYCk7ZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIityLnNlbGVjdGVkSWQrIi9pbnB1dCIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe2lucHV0OnMrYApgLHZpZXc6ci5jdXJyZW50Vmlld30pfSkuY2F0Y2goZnVuY3Rpb24obyl7Y29uc29sZS5lcnJvcigiW3dhbmRdIEVycm9yIHNlbmRpbmcgYW5zd2VyOiIsbyksdC5zdWJtaXR0ZWQ9ITEsd2luZG93Ll9fYXNrUmVuZGVyKGUpfSl9fX19O2Z1bmN0aW9uIFlkKCl7aWYoIXIuX19nbG9iYWxMaXN0ZW5lcnNCb3VuZCl7ci5fX2dsb2JhbExpc3RlbmVyc0JvdW5kPSEwLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWRlYmFyLW92ZXJmbG93LW1lbnUiKTt0JiZ0LmNsYXNzTGlzdC5yZW1vdmUoIm9wZW4iKX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLGZ1bmN0aW9uKCl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZGViYXItb3ZlcmZsb3ctbWVudSIpO3QmJnQuY2xhc3NMaXN0LnJlbW92ZSgib3BlbiIpfSk7dmFyIGU9ZnVuY3Rpb24oKXtyLnRvcGJhck1vcmVPcGVuPSExO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b3BiYXItbW9yZS1tZW51Iiksbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLW1vcmUtYnV0dG9uIik7dCYmdC5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxuJiYobi5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKSxuLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsImZhbHNlIikpfTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24odCl7aWYoci50b3BiYXJNb3JlT3Blbil7dmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvcGJhci1tb3JlLW1lbnUiKSxpPW4mJm4ucGFyZW50RWxlbWVudDtpJiYhaS5jb250YWlucyh0LnRhcmdldCkmJmUoKX19KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbih0KXt0LmtleT09PSJFc2NhcGUiJiZyLnRvcGJhck1vcmVPcGVuJiZlKCl9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24odCl7aWYoci5wbHVzUG9wb3Zlck9wZW4pe3ZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb21wb3Nlci1wbHVzLXBvcG92ZXIiKSxpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdHRhY2gtYnRuIik7biYmbi5jb250YWlucyh0LnRhcmdldCl8fGkmJmkuY29udGFpbnModC50YXJnZXQpfHxBaSgpfX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKHQpe3Qua2V5PT09IkVzY2FwZSImJnIucGx1c1BvcG92ZXJPcGVuJiZBaSgpfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHQpe2lmKCF0LnRhcmdldC5jbG9zZXN0KCIuZm9sZGVyLXBpY2tlci1jb250YWluZXIiKSl7dmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItZHJvcGRvd24iKTtuJiZuLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpfX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24odCl7dmFyIG49dC50YXJnZXQ7aWYoISghbnx8bi5ub2RlVHlwZSE9PTEpJiYhKHR5cGVvZiBuLm1hdGNoZXMhPSJmdW5jdGlvbiJ8fCFuLm1hdGNoZXMoIltkYXRhLW1vZGUtY29udHJvbF0iKSkpe3ZhciBpPW4uZ2V0QXR0cmlidXRlKCJkYXRhLW1vZGUtY29udHJvbCIpLGE9bi52YWx1ZTtpPT09Im1vZGUiP1Z2KGEpOmk9PT0ibW9kZWwiP1V2KGEpOmk9PT0idGhpbmtpbmciJiZqdihhKSxuLmNsb3Nlc3QmJm4uY2xvc2VzdCgiI2NvbXBvc2VyLXBsdXMtcG9wb3ZlciIpJiZBaSgpfX0pfX1mdW5jdGlvbiBRZCgpe1lkKCk7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ2luLWJ1dHRvbiIpO2lmKGUpe2UuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGphKTt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9naW4tZm9ybSIpO3QmJnQuYWRkRXZlbnRMaXN0ZW5lcigic3VibWl0IixmdW5jdGlvbih5KXt5LnByZXZlbnREZWZhdWx0KCksamEoKX0pO3ZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2dpbi1zd2l0Y2gtc2VydmVyLWJ1dHRvbiIpO24mJm4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLE9vKTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicGFzc3dvcmQiKSxhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2dnbGUtcGFzc3dvcmQtYnV0dG9uIik7YSYmaSYmYS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgeT1pLnR5cGU9PT0idGV4dCI7aS50eXBlPXk/InBhc3N3b3JkIjoidGV4dCIsYS50ZXh0Q29udGVudD15PyJcdTY2M0VcdTc5M0EiOiJcdTk2OTBcdTg1Q0YiLGEuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIix5PyJcdTY2M0VcdTc5M0FcdTVCQzZcdTc4MDEiOiJcdTk2OTBcdTg1Q0ZcdTVCQzZcdTc4MDEiKSxhLnNldEF0dHJpYnV0ZSgiYXJpYS1wcmVzc2VkIix5PyJmYWxzZSI6InRydWUiKSxpLmZvY3VzKCl9KSxpJiYoaS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbih5KXt5LmtleT09PSJFbnRlciImJmphKCl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbigpe2kuZGF0YXNldC5lcnJvcj0iZmFsc2UiLGkuc2V0QXR0cmlidXRlKCJhcmlhLWludmFsaWQiLCJmYWxzZSIpO3ZhciB5PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2dpbi1lcnJvciIpO3kmJnVpKHkpfSksaS5mb2N1cygpKTtyZXR1cm59dmFyIHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndlbGNvbWUtaW5wdXQiKTt1JiYodS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbih5KXt5LmtleT09PSJFbnRlciImJiF5LnNoaWZ0S2V5JiYoeS5wcmV2ZW50RGVmYXVsdCgpLF9zKCkpfSksdS5mb2N1cygpKTt2YXIgcz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid2VsY29tZS1zZW5kLWJ0biIpO3MmJnMuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7X3MoKX0pO3ZhciBvPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3ZWxjb21lLXRvb2wtY2xhdWRlIik7byYmby5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtzbCgpfSk7dmFyIGw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndlbGNvbWUtdG9vbC1jb2RleCIpO2wmJmwuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7ci5zZXNzaW9uVG9vbD0iY29kZXgiLHIucHJlZmVycmVkQ29tbWFuZD0iY29kZXgiLHIubW9kZVZhbHVlPSJmdWxsLWFjY2VzcyIsc2woKX0pO3ZhciBjPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3ZWxjb21lLXRvb2wtc3RydWN0dXJlZCIpO2MmJmMuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7UW8oKS50aGVuKGZ1bmN0aW9uKCl7anQoITApfSkuY2F0Y2goZnVuY3Rpb24oeSl7ayh5JiZ5Lm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQThcdTdFRDNcdTY3ODRcdTUzMTZcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpfSl9KSxUbSgpO3ZhciBmPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy1saXN0Iik7ZiYmKGYuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHhkKSxmLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLFNkKSxmLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlb3ZlciIscm0pLGYuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VvdXQiLGltKSxTcChmKSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsWnQsITApLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLFp0KTt2YXIgZD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicHJvdmlkZXItY2FyZHMiKTtkJiZkLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt2YXIgQT15LnRhcmdldC5jbG9zZXN0KCIucHJvdmlkZXItY2FyZCIpO2lmKCEoIUF8fEEuY2xhc3NMaXN0LmNvbnRhaW5zKCJkaXNhYmxlZCIpKSl7dmFyIFc9QS5nZXRBdHRyaWJ1dGUoImRhdGEtcHJvdmlkZXIiKTtXJiYoci5zZXNzaW9uVG9vbD1XLHIucHJlZmVycmVkQ29tbWFuZD1XLFNyKCkpfX0pO3ZhciB2PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLWtpbmQtY2FyZHMiKTt2JiZ2LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt2YXIgQT15LnRhcmdldC5jbG9zZXN0KCIuc2Vzc2lvbi1raW5kLWNhcmQiKTtpZighKCFBfHxBLmNsYXNzTGlzdC5jb250YWlucygiZGlzYWJsZWQiKSkpe3ZhciBXPUEuZ2V0QXR0cmlidXRlKCJkYXRhLXNlc3Npb24ta2luZCIpO1cmJihyLnNlc3Npb25DcmVhdGVLaW5kPVcsU3IoKSl9fSk7dmFyIGc9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1vZGUtY2FyZHMiKTtnJiZnLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt2YXIgQT15LnRhcmdldC5jbG9zZXN0KCIubW9kZS1jYXJkIik7aWYoQSl7dmFyIFc9QS5nZXRBdHRyaWJ1dGUoImRhdGEtbW9kZSIpO1cmJihyLm1vZGVWYWx1ZT1XLFNyKCkpfX0pO3ZhciBoPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLXdvcmt0cmVlLXRvZ2dsZSIpO2gmJmguYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe3Iuc2Vzc2lvbkNyZWF0ZVdvcmt0cmVlPWguY2hlY2tlZH0pO3ZhciBtPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2QiKTttJiYobS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsZnVuY3Rpb24oKXtyLmN3ZFZhbHVlPW0udmFsdWV9KSxtLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXtyLmN3ZFZhbHVlPW0udmFsdWV9KSxtLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixsbCksbS5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsbGwpLG0uYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsZnVuY3Rpb24oKXtzZXRUaW1lb3V0KG5yLDEyMCl9KSk7dmFyIGI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb25zLXRvZ2dsZS1idXR0b24iKTtiJiZiLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwkdik7dmFyIHc9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb25zLWRyYXdlci1iYWNrZHJvcCIpO3cmJncuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLExyKTt2YXIgRT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2xvc2UtZHJhd2VyLWJ1dHRvbiIpO0UmJkUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLExyKTt2YXIgQj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2lkZWJhci1jb2xsYXBzZS1idG4iKTtCJiZCLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixhbSk7dmFyIEY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZGViYXItcGluLWJ0biIpO0YmJkYuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHVtKTt2YXIgeD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2lkZWJhci1tb3JlLWJ0biIpLFM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZGViYXItb3ZlcmZsb3ctbWVudSIpO3gmJlMmJnguYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3kuc3RvcFByb3BhZ2F0aW9uKCk7dmFyIEE9IVMuY2xhc3NMaXN0LmNvbnRhaW5zKCJvcGVuIik7Uy5jbGFzc0xpc3QudG9nZ2xlKCJvcGVuIixBKSxBJiZvbShTKX0pO3ZhciBIPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWRlYmFyLWhvbWUtYnRuIik7SCYmSC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtyLnNlbGVjdGVkSWQ9bnVsbCx3ZSgpLGt0KCksenQoKSwkdCgpfSk7dmFyIFI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZGViYXItcmVmcmVzaC1idG4iKTtSJiZSLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3dpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKX0pO3ZhciAkPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2dvdXQtYnV0dG9uIik7JCYmJC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsUG8pO3ZhciBJPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzd2l0Y2gtc2VydmVyLWJ1dHRvbiIpO0kmJkkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLE9vKTt2YXIgRD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmFjay10by1uYXRpdmUtYnV0dG9uIik7RCYmRC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsTHYpO3ZhciBUPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1idXR0b24iKTtUJiZULmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixkbSk7dmFyIE89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNsb3NlLXNldHRpbmdzLWJ1dHRvbiIpO08mJk8uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGVyKTt2YXIgVT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtbW9kYWwiKTtVJiZVLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt5LnRhcmdldC5pZD09PSJzZXR0aW5ncy1tb2RhbCImJmVyKCl9KTt2YXIgVj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2F2ZS1wYXNzd29yZC1idXR0b24iKTtWJiZWLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmbSk7Zm9yKHZhciBYPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXR0aW5ncy10YWIiKSxlZT0wO2VlPFgubGVuZ3RoO2VlKyspWFtlZV0uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3ZhciBBPXkuY3VycmVudFRhcmdldHx8dGhpcyxXPUEmJkEuZ2V0QXR0cmlidXRlP0EuZ2V0QXR0cmlidXRlKCJkYXRhLXRhYiIpOm51bGw7VyYmUWEoVyl9KTt2YXIgWj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2F2ZS1jb25maWctYnV0dG9uIik7WiYmWi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIseW0pO3ZhciB1ZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWRlZmF1bHQtbW9kZWwtcmVmcmVzaCIpO3VlJiZ1ZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsV3YpO3ZhciBMPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctdmlldy1lbnYtYnRuIik7TCYmTC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsenYpO3ZhciBNPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzYXZlLWRpc3BsYXktYnV0dG9uIik7TSYmTS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsYm0pO3ZhciBqPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHAtaWNvbi1waWNrZXIiKTtpZihqKWZvcih2YXIgRz1qLnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXR0aW5ncy1hcHAtaWNvbi1vcHRpb24iKSxLPTA7SzxHLmxlbmd0aDtLKyspR1tLXS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgeT10aGlzLmdldEF0dHJpYnV0ZSgiZGF0YS1pY29uIik7aWYoISgheXx8dHlwZW9mIFdhbmROYXRpdmU+InUifHx0eXBlb2YgV2FuZE5hdGl2ZS5zZXRBcHBJY29uIT0iZnVuY3Rpb24iKSl0cnl7V2FuZE5hdGl2ZS5zZXRBcHBJY29uKHkpLHJsKHkpO3ZhciBBPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHAtaWNvbi1tZXNzYWdlIik7QSYmKEEudGV4dENvbnRlbnQ9Ilx1NTZGRVx1NjgwN1x1NURGMlx1NTIwN1x1NjM2Mlx1RkYwQ1x1OEZENFx1NTZERVx1Njg0Q1x1OTc2Mlx1NTQwRVx1NzUxRlx1NjU0OCIsQS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiLEEuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksc2V0VGltZW91dChmdW5jdGlvbigpe0EuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIil9LDNlMykpfWNhdGNoe319KTt2YXIgaWU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInVwbG9hZC1jZXJ0LWJ1dHRvbiIpO2llJiZpZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsRW0pO2Zvcih2YXIgdGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLmZpbGUtcGlja2VyLWlucHV0Iiksc2U9MDtzZTx0ZS5sZW5ndGg7c2UrKykoZnVuY3Rpb24oeSl7eS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7dmFyIEE9eS5jbG9zZXN0KCIuZmlsZS1waWNrZXIiKTtpZihBKXt2YXIgVz1BLnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXBpY2tlci1uYW1lIik7VyYmKHkuZmlsZXMmJnkuZmlsZXNbMF0/KFcudGV4dENvbnRlbnQ9eS5maWxlc1swXS5uYW1lLEEuY2xhc3NMaXN0LmFkZCgiZmlsZS1waWNrZXItaGFzLWZpbGUiKSk6KFcudGV4dENvbnRlbnQ9Vy5nZXRBdHRyaWJ1dGUoImRhdGEtZGVmYXVsdCIpfHwiXHU2NzJBXHU5MDA5XHU2MkU5XHU2NTg3XHU0RUY2IixBLmNsYXNzTGlzdC5yZW1vdmUoImZpbGUtcGlja2VyLWhhcy1maWxlIikpKX19KX0pKHRlW3NlXSk7dmFyIG9lPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjaGVjay11cGRhdGUtYnV0dG9uIik7b2UmJm9lLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixubCk7dmFyIHFlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkby11cGRhdGUtYnV0dG9uIik7cWUmJnFlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixGbSk7dmFyIEVlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkby1yZXN0YXJ0LWJ1dHRvbiIpO0VlJiZFZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsd20pO3ZhciBGZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by11cGRhdGUtd2ViLXRvZ2dsZSIpO0ZlJiZGZS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7JGEoIndlYiIsRmUuY2hlY2tlZCl9KTt2YXIgcT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by11cGRhdGUtYXBrLXRvZ2dsZSIpO3EmJnEuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpeyRhKCJhcGsiLHEuY2hlY2tlZCl9KTt2YXIgUmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF1dG8tdXBkYXRlLWRtZy10b2dnbGUiKTtSZSYmUmUuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpeyRhKCJkbWciLFJlLmNoZWNrZWQpfSk7dmFyIHo9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJldGEtY2hhbm5lbC10b2dnbGUiKTt6JiZ6LmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXtEbSh6LmNoZWNrZWQ/ImJldGEiOiJzdGFibGUiKX0pO3ZhciBsZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29weS1jb25uZWN0LWNvZGUtYnV0dG9uIik7bGUmJmxlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhciB5PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWNvbm5lY3QtY29kZSIpO3kmJlByKHkudGV4dENvbnRlbnQsbGUpfSk7dmFyIGdlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtc291bmQiKTtnZSYmKGdlLmNoZWNrZWQ9ci5ub3RpZlNvdW5kLGdlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXtyLm5vdGlmU291bmQ9Z2UuY2hlY2tlZDt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtbm90aWYtc291bmQiLFN0cmluZyhyLm5vdGlmU291bmQpKX1jYXRjaHt9ci5ub3RpZlNvdW5kJiZsaSgpO3ZhciB5PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZi12b2x1bWUtZmllbGQiKTt5JiYoeS5zdHlsZS5kaXNwbGF5PXIubm90aWZTb3VuZD8iIjoibm9uZSIpfSkpO3ZhciBuZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLW5vdGlmLXZvbHVtZSIpLGRlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtdm9sdW1lLXZhbCIpLFZlPWZ1bmN0aW9uKHkpe2lmKHkpe3ZhciBBPU51bWJlcih5Lm1pbnx8MCksVz1OdW1iZXIoeS5tYXh8fDEwMCksRGU9TnVtYmVyKHkudmFsdWV8fDApLEN0PVc+QT9NYXRoLm1heCgwLE1hdGgubWluKDEwMCwoRGUtQSkvKFctQSkqMTAwKSk6MDt5LnN0eWxlLnNldFByb3BlcnR5KCItLXJhbmdlLWZpbGwiLEN0KyIlIil9fTtpZihuZSl7bmUudmFsdWU9U3RyaW5nKHIubm90aWZWb2x1bWUpLGRlJiYoZGUudGV4dENvbnRlbnQ9ci5ub3RpZlZvbHVtZSsiJSIpLFZlKG5lKTt2YXIgZHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmLXZvbHVtZS1maWVsZCIpO2R0JiYoZHQuc3R5bGUuZGlzcGxheT1yLm5vdGlmU291bmQ/IiI6Im5vbmUiKTt2YXIgVnQ9bnVsbDtuZS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsZnVuY3Rpb24oKXtyLm5vdGlmVm9sdW1lPXBhcnNlSW50KG5lLnZhbHVlLDEwKSxkZSYmKGRlLnRleHRDb250ZW50PXIubm90aWZWb2x1bWUrIiUiKSxWZShuZSk7dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLW5vdGlmLXZvbHVtZSIsU3RyaW5nKHIubm90aWZWb2x1bWUpKX1jYXRjaHt9aWYoTmUmJnR5cGVvZiBXYW5kTmF0aXZlLnNldE5vdGlmaWNhdGlvblZvbHVtZT09ImZ1bmN0aW9uIil0cnl7V2FuZE5hdGl2ZS5zZXROb3RpZmljYXRpb25Wb2x1bWUoci5ub3RpZlZvbHVtZSl9Y2F0Y2h7fX0pLG5lLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXtsaSgpfSl9dmFyIGV0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtYnViYmxlIik7ZXQmJihldC5jaGVja2VkPXIubm90aWZCdWJibGUsZXQuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe3Iubm90aWZCdWJibGU9ZXQuY2hlY2tlZDt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtbm90aWYtYnViYmxlIixTdHJpbmcoci5ub3RpZkJ1YmJsZSkpfWNhdGNoe319KSk7dmFyIHR0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tcmVxdWVzdC1idG4iKTt0dCYmdHQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7aWYoTmUpe3dpbmRvdy5fb25OYXRpdmVQZXJtaXNzaW9uUmVzdWx0PWZ1bmN0aW9uKCl7Z24oKSxkZWxldGUgd2luZG93Ll9vbk5hdGl2ZVBlcm1pc3Npb25SZXN1bHR9O3RyeXtXYW5kTmF0aXZlLnJlcXVlc3RQZXJtaXNzaW9uKCl9Y2F0Y2h7fX1lbHNlIHR5cGVvZiBOb3RpZmljYXRpb248InUiJiZOb3RpZmljYXRpb24ucmVxdWVzdFBlcm1pc3Npb24oKS50aGVuKGZ1bmN0aW9uKCl7Z24oKX0pfSk7dmFyIG50PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tcmVzZXQtYnRuIik7bnQmJm50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixrbSk7dmFyIEZ0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1idG4iKTtGdCYmRnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGFsKTt2YXIgcnQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi10ZXN0LWRlbGF5LWJ0biIpO2lmKHJ0JiZydC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsQW0pLGduKCksTmUmJnR5cGVvZiBXYW5kTmF0aXZlLmdldEF2YWlsYWJsZVNvdW5kcz09ImZ1bmN0aW9uIil7dmFyIGl0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJuYXRpdmUtc291bmQtc2VjdGlvbiIpLGtlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJuYXRpdmUtc291bmQtc2VsZWN0IiksZmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5hdGl2ZS1zb3VuZC1wcmV2aWV3Iik7aWYoaXQmJmtlKXtpdC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTt0cnl7dmFyIENlPUpTT04ucGFyc2UoV2FuZE5hdGl2ZS5nZXRBdmFpbGFibGVTb3VuZHMoKSksQz1XYW5kTmF0aXZlLmdldE5vdGlmaWNhdGlvblNvdW5kKCk7a2UuaW5uZXJIVE1MPSIiO2Zvcih2YXIgYXQ9MDthdDxDZS5sZW5ndGg7YXQrKyl7dmFyIHd0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIpO3d0LnZhbHVlPUNlW2F0XS5pZCx3dC50ZXh0Q29udGVudD1DZVthdF0ubmFtZSxDZVthdF0uaWQ9PT1DJiYod3Quc2VsZWN0ZWQ9ITApLGtlLmFwcGVuZENoaWxkKHd0KX1rZS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7dHJ5e1dhbmROYXRpdmUuc2V0Tm90aWZpY2F0aW9uU291bmQoa2UudmFsdWUpfWNhdGNoe319KSxmZSYmZmUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7dHJ5e1dhbmROYXRpdmUucHJldmlld1NvdW5kKGtlLnZhbHVlKX1jYXRjaHt9fSl9Y2F0Y2h7fX19aWYoTmUmJnR5cGVvZiBXYW5kTmF0aXZlLmlzSGFwdGljRW5hYmxlZD09ImZ1bmN0aW9uIil7dmFyIFN0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJuYXRpdmUtaGFwdGljLXNlY3Rpb24iKSx5dD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWhhcHRpYy1lbmFibGVkIik7aWYoU3QmJnl0KXtTdC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTt0cnl7eXQuY2hlY2tlZD1XYW5kTmF0aXZlLmlzSGFwdGljRW5hYmxlZCgpfWNhdGNoe315dC5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7dHJ5e1dhbmROYXRpdmUuc2V0SGFwdGljRW5hYmxlZCh5dC5jaGVja2VkKX1jYXRjaHt9eXQuY2hlY2tlZCYmSm4oIm1lZGl1bSIpfSl9fXZhciBJdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLW5ldy1zZXNzaW9uLWJ1dHRvbiIpO0l0JiZJdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsR2EpO3ZhciB1dD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZHJhd2VyLW5ldy1zZXNzaW9uLWJ1dHRvbiIpO3V0JiZ1dC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsR2EpO3ZhciBLdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2xvc2UtbW9kYWwtYnV0dG9uIik7S3QmJkt0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix2bik7dmFyIEhlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjbG9zZS13b3JrdHJlZS1tZXJnZS1idXR0b24iKTtIZSYmSGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLFpuKTt2YXIgQWU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndvcmt0cmVlLW1lcmdlLWNhbmNlbC1idXR0b24iKTtBZSYmQWUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLFpuKTt2YXIgeGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndvcmt0cmVlLW1lcmdlLWNvbmZpcm0tYnV0dG9uIik7eGUmJnhlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixjbSk7dmFyIGZ0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJydW4tYnV0dG9uIik7ZnQmJmZ0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix4bSk7dmFyIHB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHByb3ZlLXBlcm1pc3Npb24tYnRuIik7cHQmJnB0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixuZCk7dmFyIFdlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkZW55LXBlcm1pc3Npb24tYnRuIik7V2UmJldlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixyZCk7dmFyIGhuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLWFwcHJvdmUtdG9nZ2xlIik7aG4mJmhuLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixpZCk7dmFyIFR0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZW5kLWlucHV0LWJ1dHRvbiIpO1R0JiZUdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt6dCgpLE9mKCl9KTt2YXIgTG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0b3AtYnV0dG9uIik7TG4mJkxuLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixrYSk7dmFyIHN0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLW1vZGFsIik7c3QmJnN0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt5LnRhcmdldC5pZD09PSJzZXNzaW9uLW1vZGFsIiYmdm4oKSx5LnRhcmdldC5pZD09PSJ3b3JrdHJlZS1tZXJnZS1tb2RhbCImJlpuKCl9KTt2YXIgcGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO3BlJiYob28ocGUpLHBlLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLHFtKSxwZS5hZGRFdmVudExpc3RlbmVyKCJwYXN0ZSIsVW0pLHBlLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbigpe3IudGVybWluYWxDb21wb3Npbmd8fGNsKHBlKXx8KHpwKHBlKSxjdChwZS52YWx1ZSwhMCksU2kocGUpKX0pLHBlLmFkZEV2ZW50TGlzdGVuZXIoImNvbXBvc2l0aW9uc3RhcnQiLGZ1bmN0aW9uKCl7ci50ZXJtaW5hbEludGVyYWN0aXZlJiYoci50ZXJtaW5hbENvbXBvc2luZz0hMCl9KSxwZS5hZGRFdmVudExpc3RlbmVyKCJjb21wb3NpdGlvbmVuZCIsZnVuY3Rpb24oKXtyLnRlcm1pbmFsQ29tcG9zaW5nJiYoci50ZXJtaW5hbENvbXBvc2luZz0hMSxyLnRlcm1pbmFsSW50ZXJhY3RpdmUmJmNsKHBlKSl9KSxwZS5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsZnVuY3Rpb24oKXt6dCgpLHFwKHt0YXJnZXQ6cGV9KX0pLHBlLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLEhwKSk7dmFyIHJlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdHRhY2gtYnRuIiksaGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtdXBsb2FkLWlucHV0IiksT2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbXBvc2VyLXBsdXMtcG9wb3ZlciIpLEtlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwbHVzLWF0dGFjaC1pdGVtIik7cmUmJk9lJiZyZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7eS5zdG9wUHJvcGFnYXRpb24oKSxadigpfSksS2UmJmhlJiZLZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtBaSgpLGhlLmNsaWNrKCl9KSxoZSYmaGUuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe3ZhciB5PWhlLmZpbGVzO2lmKHkpZm9yKHZhciBBPTA7QTx5Lmxlbmd0aDtBKyspWGEoeVtBXSk7aGUudmFsdWU9IiJ9KTt2YXIgSmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLWJ0biIpO0plJiZKZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtoYSgpfSk7dmFyIFNlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS1jYW5jZWwtYnRuIik7U2UmJlNlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2hhKCExKX0pO3ZhciBCZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtcmVjb3JkLWJ0biIpO0JlJiYoQmUuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmRvd24iLERmKSxCZS5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsa2YpLEJlLmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJ1cCIsT3MpLEJlLmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJjYW5jZWwiLE9zKSk7dmFyIEx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwcm9tcHQtb3B0aW1pemUtYnRuIik7THQmJkx0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe0ttKCl9KTt2YXIgR2U9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LWNvbXBvc2VyIik7R2UmJihHZS5hZGRFdmVudExpc3RlbmVyKCJkcmFnb3ZlciIsZnVuY3Rpb24oeSl7eS5wcmV2ZW50RGVmYXVsdCgpLHkuc3RvcFByb3BhZ2F0aW9uKCksR2UuY2xhc3NMaXN0LmFkZCgiZHJhZy1vdmVyIil9KSxHZS5hZGRFdmVudExpc3RlbmVyKCJkcmFnbGVhdmUiLGZ1bmN0aW9uKHkpe3kucHJldmVudERlZmF1bHQoKSx5LnN0b3BQcm9wYWdhdGlvbigpLEdlLmNsYXNzTGlzdC5yZW1vdmUoImRyYWctb3ZlciIpfSksR2UuYWRkRXZlbnRMaXN0ZW5lcigiZHJvcCIsZnVuY3Rpb24oeSl7eS5wcmV2ZW50RGVmYXVsdCgpLHkuc3RvcFByb3BhZ2F0aW9uKCksR2UuY2xhc3NMaXN0LnJlbW92ZSgiZHJhZy1vdmVyIik7dmFyIEE9eS5kYXRhVHJhbnNmZXImJnkuZGF0YVRyYW5zZmVyLmZpbGVzO2lmKEEpZm9yKHZhciBXPTA7VzxBLmxlbmd0aDtXKyspWGEoQVtXXSl9KSk7dmFyIF89WyJ0ZXJtaW5hbC1pbnRlcmFjdGl2ZS10b2dnbGUtdG9wIl07Xy5mb3JFYWNoKGZ1bmN0aW9uKHkpe3ZhciBBPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHkpO0EmJkEuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGJwKX0pO3ZhciBOPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLXBhbmVsLXRvZ2dsZS1idG4iKTtOJiZOLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixVcik7dmFyIFk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtc2lkZS1wYW5lbC1jbG9zZSIpO1kmJlkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGJ1KTt2YXIgdmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtcGFuZWwtYmFja2Ryb3AiKTt2ZSYmdmUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGJ1KTt2YXIgeWU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvcGJhci1maWxlLWJ1dHRvbiIpO3llJiZ5ZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsVXIpO3ZhciBZZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLWN3ZCIpO1llJiYoWWUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7ci5maWxlUGFuZWxPcGVufHxVcigpfSksWWUuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24oeSl7KHkua2V5PT09IkVudGVyInx8eS5rZXk9PT0iICIpJiYoeS5wcmV2ZW50RGVmYXVsdCgpLHIuZmlsZVBhbmVsT3Blbnx8VXIoKSl9KSk7dmFyIHluPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b3BiYXItbW9yZS1idXR0b24iKSxNbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLW1vcmUtbWVudSIpO3luJiZNbiYmKHluLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt5LnN0b3BQcm9wYWdhdGlvbigpLHIudG9wYmFyTW9yZU9wZW49IXIudG9wYmFyTW9yZU9wZW4sTW4uY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIiwhci50b3BiYXJNb3JlT3BlbikseW4uY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIixyLnRvcGJhck1vcmVPcGVuKSx5bi5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLHIudG9wYmFyTW9yZU9wZW4/InRydWUiOiJmYWxzZSIpfSksTW4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3ZhciBBPXkudGFyZ2V0JiZ5LnRhcmdldC5jbG9zZXN0P3kudGFyZ2V0LmNsb3Nlc3QoIi50b3BiYXItbW9yZS1pdGVtIik6bnVsbDtpZihBKXt2YXIgVz1BLmdldEF0dHJpYnV0ZSgiZGF0YS1hY3Rpb24iKTtzd2l0Y2goci50b3BiYXJNb3JlT3Blbj0hMSxNbi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSx5bi5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKSx5bi5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLCJmYWxzZSIpLFcpe2Nhc2UiY29weS1jbGF1ZGUtc2Vzc2lvbi1pZCI6YWEoImNsYXVkZVNlc3Npb25JZCIsTnQoKSYmTnQoKS5wcm92aWRlcj09PSJjb2RleCI/IkNvZGV4IHRocmVhZCBJRCBcdTVERjJcdTU5MERcdTUyMzYiOiJDbGF1ZGUgXHU0RjFBXHU4QkREIElEIFx1NURGMlx1NTkwRFx1NTIzNiIpO2JyZWFrO2Nhc2UiY29weS1jd2QiOmFhKCJjd2QiLCJcdTVERTVcdTRGNUNcdTc2RUVcdTVGNTVcdTVERjJcdTU5MERcdTUyMzYiKTticmVhaztjYXNlImNvcHktc2Vzc2lvbi1pZCI6YWEoImlkIiwiXHU0RjFBXHU4QkREIElEIFx1NURGMlx1NTkwRFx1NTIzNiIpO2JyZWFrO2Nhc2Uid29ya3RyZWUtbWVyZ2UiOnIuc2VsZWN0ZWRJZCYmWG8oci5zZWxlY3RlZElkKTticmVhaztjYXNlIndvcmt0cmVlLWNsZWFudXAiOnIuc2VsZWN0ZWRJZCYmWm8oci5zZWxlY3RlZElkKTticmVhaztjYXNlImRlbGV0ZS1zZXNzaW9uIjpyLnNlbGVjdGVkSWQmJihmdW5jdGlvbihEZSl7RG4oIlx1Nzg2RVx1NUI5QVx1ODk4MVx1NTIyMFx1OTY2NFx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERFx1NTQxN1x1RkYxRlx1NkI2NFx1NjRDRFx1NEY1Q1x1NjVFMFx1NkNENVx1NjRBNFx1OTUwMFx1MzAwMiIse3RpdGxlOiJcdTUyMjBcdTk2NjRcdTVGNTNcdTUyNERcdTRGMUFcdThCREQifSkudGhlbihmdW5jdGlvbihDdCl7Q3QmJmVvKERlKX0pfSkoci5zZWxlY3RlZElkKTticmVha319fSkpO3ZhciBMaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVybWluYWwtc2NhbGUtZG93bi10b3AiKSxkbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVybWluYWwtc2NhbGUtdXAtdG9wIik7TGkmJkxpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe0V1KC0uMjUpfSksZGwmJmRsLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe0V1KC4yNSl9KTt2YXIgZmw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBhZ2UtcmVmcmVzaC1idG4iKTtmbCYmZmwuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe2lmKHkmJnkuc2hpZnRLZXkpe2xvY2F0aW9uLnJlbG9hZCgpO3JldHVybn1rbigpLGt0KHtwcmVzZXJ2ZVN0aWNrU3RhdGU6ITB9KSxwbyghMCl9KTt2YXIgcGw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlcm1pbmFsLWp1bXAtYm90dG9tIik7cGwmJnBsLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2J0KCJmb3JjZSIpfSk7dmFyIHZsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjaGF0LXVucmVhZC1idWJibGUiKTt2bCYmdmwuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7UGwoITApfSk7dmFyIG1sPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLWV4cGxvcmVyLXJlZnJlc2giKTttbCYmbWwuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7UHQoKX0pO3ZhciBnbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1leHBsb3Jlci11cCIpO2dsJiZnbC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsWmwpO3ZhciB6ZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1leHBsb3Jlci1jd2QiKTtpZih6ZSYmemUudGFnTmFtZT09PSJJTlBVVCIpe3ZhciBycj16ZS52YWx1ZSxobD1mdW5jdGlvbih5KXt2YXIgQT0oeXx8IiIpLnRyaW0oKTtyZXR1cm4gQT8oQT1BLnJlcGxhY2UoL1wvezIsfS9nLCIvIiksQS5sZW5ndGg+MSYmKEE9QS5yZXBsYWNlKC9cLyskLywiIikpLEEpOiIifTt6ZS5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsZnVuY3Rpb24oKXtycj16ZS52YWx1ZSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dHJ5e3plLnNlbGVjdCgpfWNhdGNoe319LDApfSksemUuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24oeSl7aWYoeS5rZXk9PT0iRW50ZXIiKXt5LnByZXZlbnREZWZhdWx0KCk7dmFyIEE9aGwoemUudmFsdWUpO2lmKCFBKXJldHVybjtycj1BLHplLnZhbHVlPUEsUHQoe2N3ZDpBfSksemUuYmx1cigpfWVsc2UgeS5rZXk9PT0iRXNjYXBlIiYmKHkucHJldmVudERlZmF1bHQoKSx6ZS52YWx1ZT1ycix6ZS5ibHVyKCkpfSksemUuYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsZnVuY3Rpb24oKXt2YXIgeT1obCh6ZS52YWx1ZSk7aWYoIXkpe3plLnZhbHVlPXJyO3JldHVybn1pZih5PT09cnIpe3plLnZhbHVlPXk7cmV0dXJufXJyPXksemUudmFsdWU9eSxQdCh7Y3dkOnl9KX0pfXZhciBNaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1zZWFyY2gtaW5wdXQiKSxfcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1zZWFyY2gtY2xlYXIiKTtNaSYmTWkuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLGZ1bmN0aW9uKHkpe3IuZmlsZVNlYXJjaFF1ZXJ5PXkudGFyZ2V0LnZhbHVlLnRyaW0oKSxfciYmX3IuY2xhc3NMaXN0LnRvZ2dsZSgidmlzaWJsZSIsci5maWxlU2VhcmNoUXVlcnkubGVuZ3RoPjApLEJ1KCl9KSxfciYmX3IuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7ci5maWxlU2VhcmNoUXVlcnk9IiIsTWkmJihNaS52YWx1ZT0iIiksX3IuY2xhc3NMaXN0LnJlbW92ZSgidmlzaWJsZSIpfSk7dmFyIGJlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb2xkZXItcGlja2VyLWlucHV0IiksTGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItZHJvcGRvd24iKSxhdT1udWxsLEp0PS0xLGJuPVtdO2Z1bmN0aW9uIHlsKHkpe2JlJiZiZS5jbGFzc0xpc3QuYWRkKCJpbnZhbGlkIik7dmFyIEE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItdmFsaWRhdGlvbiIpO0EmJihBLnRleHRDb250ZW50PXksQS5jbGFzc0xpc3QuYWRkKCJ2aXNpYmxlIikpfWZ1bmN0aW9uIGJsKCl7YmUmJmJlLmNsYXNzTGlzdC5yZW1vdmUoImludmFsaWQiKTt2YXIgeT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci12YWxpZGF0aW9uIik7eSYmKHkudGV4dENvbnRlbnQ9IiIseS5jbGFzc0xpc3QucmVtb3ZlKCJ2aXNpYmxlIikpfWZ1bmN0aW9uICRtKHkpe2lmKCF5Lmxlbmd0aClyZXR1cm4iIjt2YXIgQT0nPGRpdiBjbGFzcz0iZm9sZGVyLXJlY2VudC1zZWN0aW9uIj48ZGl2IGNsYXNzPSJmb2xkZXItcmVjZW50LXRpdGxlIj5cdTY3MDBcdThGRDFcdTRGN0ZcdTc1Mjg8L2Rpdj4nO3JldHVybiB5LmZvckVhY2goZnVuY3Rpb24oVyl7dmFyIERlPVcucGF0aHx8VztBKz0nPGRpdiBjbGFzcz0iZm9sZGVyLXJlY2VudC1pdGVtIiBkYXRhLXBhdGg9IicrcChEZSkrJyI+PHNwYW4gY2xhc3M9ImZvbGRlci1yZWNlbnQtaXRlbS1wYXRoIj4nK3AoRGUpKyI8L3NwYW4+PC9kaXY+In0pLEErPSI8L2Rpdj4iLEF9ZnVuY3Rpb24gWG0oKXtMZSYmcmEoZnVuY3Rpb24oeSl7dmFyIEE9JG0oeSk7QT8oTGUuaW5uZXJIVE1MPUEsTGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksTGUucXVlcnlTZWxlY3RvckFsbCgiLmZvbGRlci1yZWNlbnQtaXRlbSIpLmZvckVhY2goZnVuY3Rpb24oVyl7Vy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgRGU9dGhpcy5kYXRhc2V0LnBhdGg7YmUmJihiZS52YWx1ZT1EZSxRdChEZSksZW4oRGUpKX0pfSkpOk5yKCl9KX12YXIgRWw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndvcmtpbmctZGlyLWluZGljYXRvciIpO0VsJiZFbC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtyLnNlbGVjdGVkSWQ9bnVsbCx3ZSgpLHIuZHJhZnRzPXt9LCR0KCksc2V0VGltZW91dChmdW5jdGlvbigpe3ZhciB5PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb2xkZXItcGlja2VyLWlucHV0Iik7eSYmeS5mb2N1cygpfSw1MCl9KTt2YXIgdXU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItdG9nZ2xlIiksTGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItZHJvcGRvd24iKTt1dSYmTGUmJnV1LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe0xlLmNsYXNzTGlzdC50b2dnbGUoImhpZGRlbiIpLHV1LmNsYXNzTGlzdC50b2dnbGUoIm9wZW4iKX0pO3ZhciBPaT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuZm9sZGVyLXBpY2tlci1jb21wYWN0Iik7aWYoT2kmJihPaS5hZGRFdmVudExpc3RlbmVyKCJkcmFnb3ZlciIsZnVuY3Rpb24oeSl7eS5wcmV2ZW50RGVmYXVsdCgpLHkuc3RvcFByb3BhZ2F0aW9uKCksdGhpcy5jbGFzc0xpc3QuYWRkKCJkcmFnLW92ZXIiKX0pLE9pLmFkZEV2ZW50TGlzdGVuZXIoImRyYWdsZWF2ZSIsZnVuY3Rpb24oeSl7eS5wcmV2ZW50RGVmYXVsdCgpLHkuc3RvcFByb3BhZ2F0aW9uKCksdGhpcy5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnLW92ZXIiKX0pLE9pLmFkZEV2ZW50TGlzdGVuZXIoImRyb3AiLGZ1bmN0aW9uKHkpe3kucHJldmVudERlZmF1bHQoKSx5LnN0b3BQcm9wYWdhdGlvbigpLHRoaXMuY2xhc3NMaXN0LnJlbW92ZSgiZHJhZy1vdmVyIik7dmFyIEE9eS5kYXRhVHJhbnNmZXImJnkuZGF0YVRyYW5zZmVyLml0ZW1zO2lmKEEpZm9yKHZhciBXPTA7VzxBLmxlbmd0aDtXKyspe3ZhciBEZT1BW1ddO2lmKERlLmtpbmQ9PT0iZmlsZSImJkRlLndlYmtpdEdldEFzRW50cnkpe3ZhciBDdD1EZS53ZWJraXRHZXRBc0VudHJ5KCk7aWYoQ3QmJkN0LmlzRGlyZWN0b3J5JiZiZSl7dmFyIE10PUN0LmZ1bGxQYXRoO2JlLnZhbHVlPU10LFF0KE10KSxlbihNdCk7YnJlYWt9fX19KSksTGUmJkxlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt2YXIgQT15LnRhcmdldC5jbG9zZXN0KCIuZm9sZGVyLXBpY2tlci1xdWljay1idG4iKTtpZihBJiZiZSl7dmFyIFc9QS5kYXRhc2V0LnBhdGg7YmUudmFsdWU9VyxRdChXKSxlbihXKSxMZS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKTt2YXIgRGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItdG9nZ2xlIik7RGUmJkRlLmNsYXNzTGlzdC5yZW1vdmUoIm9wZW4iKX19KSxiZSl7dmFyIFptPVhlKCk7ZW4oWm0pLGJlLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIixmdW5jdGlvbigpe3ZhciB5PXRoaXMudmFsdWUudHJpbSgpO3k/ZW4oeSk6WG0oKX0pLGJlLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbih5KXt2YXIgQT15LnRhcmdldC52YWx1ZS50cmltKCk7SnQ9LTEsYXUmJmNsZWFyVGltZW91dChhdSksYXU9c2V0VGltZW91dChmdW5jdGlvbigpe0E/ZW4oQSk6TnIoKX0sMTUwKX0pLGJlLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKHkpe2lmKHkua2V5PT09IkVzY2FwZSIpTnIoKSx0aGlzLmJsdXIoKTtlbHNlIGlmKHkua2V5PT09IkFycm93RG93biIpeS5wcmV2ZW50RGVmYXVsdCgpLGJuLmxlbmd0aD4wJiYoSnQ9TWF0aC5taW4oSnQrMSxibi5sZW5ndGgtMSksRmwoKSk7ZWxzZSBpZih5LmtleT09PSJBcnJvd1VwIil5LnByZXZlbnREZWZhdWx0KCksSnQ+MCYmKEp0LS0sRmwoKSk7ZWxzZSBpZih5LmtleT09PSJFbnRlciImJkp0Pj0wKXt5LnByZXZlbnREZWZhdWx0KCk7dmFyIEE9Ym5bSnRdO2lmKEEpe3ZhciBXPUEuZGF0YXNldC5wYXRoO2lmKFc9PT0iLi4iKXt2YXIgRGU9YmUudmFsdWUudHJpbSgpLEN0PURlLnN1YnN0cmluZygwLERlLmxhc3RJbmRleE9mKCIvIikpO0N0JiYoYmUudmFsdWU9Q3R8fCIvIixRdChiZS52YWx1ZSksZW4oQ3R8fCIvIikpfWVsc2UgYmUudmFsdWU9VyxRdChXKSxOcigpfX19KX1mdW5jdGlvbiBGbCgpe2JuLmZvckVhY2goZnVuY3Rpb24oeSxBKXt5LmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsQT09PUp0KX0pfWZ1bmN0aW9uIE1nKHkpe31mdW5jdGlvbiBlbih5KXtMZSYmKExlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZm9sZGVyLXBpY2tlci1sb2FkaW5nIj5cdTUyQTBcdThGN0RcdTRFMkQuLi48L2Rpdj4nLExlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLEp0PS0xLGJuPVtdLGZldGNoKCIvYXBpL2ZvbGRlcnM/cT0iK2VuY29kZVVSSUNvbXBvbmVudCh5KSx7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oQSl7cmV0dXJuIEEuanNvbigpLnRoZW4oZnVuY3Rpb24oVyl7cmV0dXJue29rOkEub2ssc3RhdHVzOkEuc3RhdHVzLGRhdGE6V319KX0pLnRoZW4oZnVuY3Rpb24oQSl7dmFyIFc9QS5kYXRhO2lmKCFBLm9rfHxXLmVycm9yKXt5bChXLmVycm9yfHwiXHU4REVGXHU1Rjg0XHU2NUUwXHU2NTQ4IiksTGUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyLWVycm9yIj4nK3AoVy5lcnJvcnx8Ilx1OERFRlx1NUY4NFx1NjVFMFx1NjU0OCIpKyI8L2Rpdj4iO3JldHVybn1ibCgpLFcuY3VycmVudFBhdGg7dmFyIERlPVcuaXRlbXN8fFtdLEN0PVcuY3VycmVudFBhdGh8fHk7aWYoRGUubGVuZ3RoPT09MCl7TGUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyLWxvYWRpbmciPlx1N0E3QVx1NzZFRVx1NUY1NTwvZGl2Pic7cmV0dXJufUxlLmlubmVySFRNTD1EZS5tYXAoZnVuY3Rpb24oTXQpe3ZhciBQaT1NdC50eXBlPT09InBhcmVudCI/Ilx1MjFBOVx1RkUwRiI6Ilx1ezFGNEMxfSIsc3U9TXQudHlwZT09PSJwYXJlbnQiPyIuLiAoXHU4RkQ0XHU1NkRFXHU0RTBBXHU3RUE3KSI6TXQubmFtZTtyZXR1cm4nPGRpdiBjbGFzcz0iZm9sZGVyLXBpY2tlci1pdGVtIiBkYXRhLXBhdGg9IicrcChNdC5wYXRoKSsnIiBkYXRhLXR5cGU9IicrTXQudHlwZSsnIj48c3BhbiBjbGFzcz0iZm9sZGVyLXBpY2tlci1pdGVtLWljb24iPicrUGkrIjwvc3Bhbj48c3Bhbj4iK3Aoc3UpKyI8L3NwYW4+PC9kaXY+In0pLmpvaW4oIiIpLGJuPUFycmF5LmZyb20oTGUucXVlcnlTZWxlY3RvckFsbCgiLmZvbGRlci1waWNrZXItaXRlbSIpKSxibi5mb3JFYWNoKGZ1bmN0aW9uKE10KXtNdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgUGk9dGhpcy5kYXRhc2V0LnBhdGgsc3U9dGhpcy5kYXRhc2V0LnR5cGU7aWYoYmUpaWYoc3U9PT0icGFyZW50Iil7dmFyIERsPWJlLnZhbHVlLnRyaW0oKSxrbD1EbC5zdWJzdHJpbmcoMCxEbC5sYXN0SW5kZXhPZigiLyIpKTtiZS52YWx1ZT1rbHx8Ii8iLFF0KGJlLnZhbHVlKSxlbihrbHx8Ii8iKX1lbHNlIGJlLnZhbHVlPVBpLFF0KFBpKSxibCgpLE5yKCl9KX0pfSkuY2F0Y2goZnVuY3Rpb24oQSl7eWwoIlx1NTJBMFx1OEY3RFx1NTkzMVx1OEQyNSIpLExlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZm9sZGVyLXBpY2tlci1lcnJvciI+XHU1MkEwXHU4RjdEXHU1OTMxXHU4RDI1PC9kaXY+J30pKX1mdW5jdGlvbiBOcigpe0xlJiZMZS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxKdD0tMSxibj1bXX12YXIgRW49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItbW9kYWwiKSx3bD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2xvc2UtZm9sZGVyLXBpY2tlciIpO2Z1bmN0aW9uIE9nKCl7aWYoRW4pe0VuLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGJlJiYoYmUudmFsdWU9WGUoKSk7dmFyIHk9WGUoKTtlbih5KX19d2wmJkVuJiZ3bC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtFbi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKX0pLEVuJiZFbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7eS50YXJnZXQ9PT1FbiYmRW4uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIil9KTt2YXIgQ2w9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvcGJhci1naXQtYmFkZ2UiKTtDbCYmQ2wuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3kucHJldmVudERlZmF1bHQoKSxIdSgpfSk7dmFyIEJsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtbW9kYWwiKTtCbCYmQmwuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3kudGFyZ2V0LmlkPT09InF1aWNrLWNvbW1pdC1tb2RhbCImJiFyLnF1aWNrQ29tbWl0U3VibWl0dGluZyYmX24oKX0pLF91KCksS24oKSxWcCgpLGxkKCksR2YoKSxsdCgpfWZ1bmN0aW9uIGt0KGUpe3ZhciB0PWV8fHt9O3IubGFzdFJlbmRlcmVkSGFzaD0wLHIubGFzdFJlbmRlcmVkTXNnQ291bnQ9MCxyLmxhc3RSZW5kZXJlZEVtcHR5PW51bGwsci5yZW5kZXJQZW5kaW5nPSExLHIuY2hhdFJlbmRlcmVkQ291bnQ9ci5jaGF0UGFnZVNpemUsci5hc2tVc2VyU2VsZWN0aW9ucz17fSxyLmNoYXRTY3JvbGxFbGVtZW50JiYoci5jaGF0U2Nyb2xsSGFuZGxlciYmci5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJzY3JvbGwiLHIuY2hhdFNjcm9sbEhhbmRsZXIpLHIuY2hhdFNjcm9sbFdoZWVsSGFuZGxlciYmci5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ3aGVlbCIsci5jaGF0U2Nyb2xsV2hlZWxIYW5kbGVyKSxyLmNoYXRTY3JvbGxUb3VjaFN0YXJ0SGFuZGxlciYmci5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixyLmNoYXRTY3JvbGxUb3VjaFN0YXJ0SGFuZGxlciksci5jaGF0U2Nyb2xsVG91Y2hNb3ZlSGFuZGxlciYmci5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLHIuY2hhdFNjcm9sbFRvdWNoTW92ZUhhbmRsZXIpKSxyLmNoYXRTY3JvbGxFbGVtZW50PW51bGwsci5jaGF0U2Nyb2xsSGFuZGxlcj1udWxsLHIuY2hhdFNjcm9sbFdoZWVsSGFuZGxlcj1udWxsLHIuY2hhdFNjcm9sbFRvdWNoU3RhcnRIYW5kbGVyPW51bGwsci5jaGF0U2Nyb2xsVG91Y2hNb3ZlSGFuZGxlcj1udWxsLHIuY2hhdElzUHJvZ3JhbW1hdGljU2Nyb2xsPSExLHQucHJlc2VydmVTdGlja1N0YXRlfHwoci5jaGF0U3RpY2tUb0JvdHRvbT0hMCxyLmNoYXRVbnJlYWRDb3VudD0wLHIuY2hhdFVucmVhZFN0YXJ0SW5kZXg9LTEsci5jaGF0SW5pdGlhbFJlbmRlckRvbmU9ITEpfWZ1bmN0aW9uIFhlKCl7cmV0dXJuIHIud29ya2luZ0Rpcnx8dG4oKX13aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigib25saW5lIixmdW5jdGlvbigpe3IuaXNPbmxpbmU9ITAsYWkoKX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJvZmZsaW5lIixmdW5jdGlvbigpe3IuaXNPbmxpbmU9ITEsYWkoKX0pO2Z1bmN0aW9uIGFpKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm9mZmxpbmUtYmFubmVyIik7aWYoIXIuaXNPbmxpbmUmJiFlKXt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0LmlkPSJvZmZsaW5lLWJhbm5lciIsdC5jbGFzc05hbWU9Im9mZmxpbmUtYmFubmVyIix0LnRleHRDb250ZW50PSJZb3UgYXJlIG9mZmxpbmUgLSBzb21lIGZlYXR1cmVzIG1heSBiZSBsaW1pdGVkIixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHQpfWVsc2Ugci5pc09ubGluZSYmZSYmZS5yZW1vdmUoKX1mdW5jdGlvbiAkZCgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHAiKTtlJiYoZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImJvb3QtbG9hZGluZyI+PGRpdiBjbGFzcz0iYm9vdC1sb2FkaW5nLWNhcmQiPjxkaXYgY2xhc3M9ImJvb3QtbG9hZGluZy1zcGlubmVyIj48L2Rpdj48ZGl2IGNsYXNzPSJib290LWxvYWRpbmctdGV4dCI+XHU2QjYzXHU1NzI4XHU4RkRFXHU2M0E1IFdhbmRcdTIwMjY8L2Rpdj48L2Rpdj48L2Rpdj4nKX1mdW5jdGlvbiB5cihlLHQpe2lmKHIuY29uZmlnJiYhZG9jdW1lbnQuaGlkZGVuKXt2YXIgbj10JiZ0LmltbWVkaWF0ZT09PSEwLGk9RGF0ZS5ub3coKTshbiYmaS1yLmxhc3RGb3JlZ3JvdW5kU3luY0F0PDE1MDB8fChyLmxhc3RGb3JlZ3JvdW5kU3luY0F0PWksci5mb3JlZ3JvdW5kU3luY1RpbWVyJiYoY2xlYXJUaW1lb3V0KHIuZm9yZWdyb3VuZFN5bmNUaW1lciksci5mb3JlZ3JvdW5kU3luY1RpbWVyPW51bGwpLFhkKGUsbikpfX1mdW5jdGlvbiBYZChlLHQpe3JldHVybiFyLmNvbmZpZ3x8ZG9jdW1lbnQuaGlkZGVuP1Byb21pc2UucmVzb2x2ZSgpOihycygpLHQ/WGkoInJlc3VtZS1mb3JjZSIpOighci53c3x8ci53cy5yZWFkeVN0YXRlIT09V2ViU29ja2V0Lk9QRU4mJnIud3MucmVhZHlTdGF0ZSE9PVdlYlNvY2tldC5DT05ORUNUSU5HKSYmWHIoKSxyLmNsYXVkZUhpc3RvcnlMb2FkZWQmJmVzKCksZm4oe3NraXBTZWxlY3RlZE91dHB1dFJlbG9hZDohMH0pLmNhdGNoKGZ1bmN0aW9uKG4pe2NvbnNvbGUuZXJyb3IoIlt3YW5kXSBmb3JlZ3JvdW5kIHN5bmMgZmFpbGVkOiIsZSxuKX0pKX1mdW5jdGlvbiBaZCgpe3dpbmRvdy5fX3dhbmRGb3JlZ3JvdW5kU3luY0JvdW5kfHwod2luZG93Ll9fd2FuZEZvcmVncm91bmRTeW5jQm91bmQ9ITAsZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNoYW5nZSIsZnVuY3Rpb24oKXtkb2N1bWVudC5oaWRkZW4/JGkoKTooeXIoInZpc2liaWxpdHkiKSxocigidmlzaWJpbGl0eSIpKX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsZnVuY3Rpb24oKXt5cigiZm9jdXMiKX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJwYWdlc2hvdyIsZnVuY3Rpb24oKXt5cigicGFnZXNob3ciKX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXN1bWUiLGZ1bmN0aW9uKCl7eXIoInJlc3VtZSIpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIndhbmQtYW5kcm9pZC1yZXN1bWUiLGZ1bmN0aW9uKCl7eXIoImFuZHJvaWQtcmVzdW1lIix7aW1tZWRpYXRlOiEwfSksaHIoImFuZHJvaWQtcmVzdW1lIil9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigid2FuZC1pbWUtc3RhdGUiLGZ1bmN0aW9uKGUpe3ZhciB0PWUmJmUuZGV0YWlsJiZlLmRldGFpbC5zdGF0ZTtpZih0PT09InNob3duInx8dD09PSJoaWRkZW4iKXRyeXtvdCgibmF0aXZlLWltZS0iK3Qse2ZvcmNlUmVwbGF5OiEwfSksYnQoIm5hdGl2ZS1pbWUiKX1jYXRjaHt9fSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIndhbmQtYW5kcm9pZC1uZXR3b3JrIixmdW5jdGlvbihlKXt2YXIgdD1lJiZlLmRldGFpbCYmZS5kZXRhaWwuc3RhdGU7aWYodD09PSJsb3N0Iil7ci5pc09ubGluZT0hMTt0cnl7YWkoKX1jYXRjaHt9cmV0dXJufWlmKHQ9PT0iYXZhaWxhYmxlInx8dD09PSJjaGFuZ2VkInx8dD09PSJ2YWxpZGF0ZWQiKXtyLmlzT25saW5lPSEwO3RyeXthaSgpfWNhdGNoe31YaSgiYW5kcm9pZC1uZXR3b3JrLSIrdCl9fSkpfWZ1bmN0aW9uIGVmKCl7ZmV0Y2goIi9hcGkvc2Vzc2lvbi1jaGVjayIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLm9rP2UuanNvbigpOnthdXRoZWQ6ITF9fSkudGhlbihmdW5jdGlvbihlKXtyZXR1cm4hZXx8IWUuYXV0aGVkPyhyLmxvZ2luQ2hlY2tlZD0hMCwkdCgpLG51bGwpOmZldGNoKCIvYXBpL2NvbmZpZyIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lm9rP3QuanNvbigpOihyLmxvZ2luQ2hlY2tlZD0hMCwkdCgpLG51bGwpfSl9KS50aGVuKGZ1bmN0aW9uKGUpe2UmJihyLmNvbmZpZz1lLHIubG9naW5DaGVja2VkPSEwLHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe3RyeXskdCh7c2tpcFNoZWxsQ2hyb21lOiEwfSl9Y2F0Y2h7fVpkKCksdHMoKSxSdCgpLEpvKCksZGYoKSxlLnVwZGF0ZUF2YWlsYWJsZSYmZS5sYXRlc3RWZXJzaW9uJiZ4cyhlLmN1cnJlbnRWZXJzaW9ufHwiLSIsZS5sYXRlc3RWZXJzaW9uKSx4biYmQ20oKSxhbiYmQm0oKSxyLmNsYXVkZUhpc3RvcnlMb2FkZWR8fHNldFRpbWVvdXQoZnVuY3Rpb24oKXtyLmNsYXVkZUhpc3RvcnlMb2FkZWR8fCRyKCl9LDYwMCl9KSl9KS5jYXRjaChmdW5jdGlvbigpe2lmKHIubG9naW5DaGVja2VkPSEwLCFuYXZpZ2F0b3Iub25MaW5lKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXBwIik7ZSYmKGUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJib290LWxvYWRpbmciPjxkaXYgY2xhc3M9ImJvb3QtbG9hZGluZy1jYXJkIj48ZGl2IGNsYXNzPSJib290LWxvYWRpbmctdGV4dCIgc3R5bGU9ImZvbnQtc2l6ZToxLjNlbTttYXJnaW4tYm90dG9tOjEycHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo4cHgiPicrSigic2lnbmFsIix7c2l6ZToyMCxzdHJva2VXaWR0aDoxLjh9KSsnPHNwYW4+XHU2NUUwXHU2Q0Q1XHU4RkRFXHU2M0E1XHU1MjMwXHU2NzBEXHU1MkExXHU1NjY4PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImJvb3QtbG9hZGluZy10ZXh0IiBzdHlsZT0ib3BhY2l0eTowLjc7Zm9udC1zaXplOjAuOTVlbSI+XHU4QkY3XHU2OEMwXHU2N0U1XHU3RjUxXHU3RURDXHU4RkRFXHU2M0E1XHU2MjE2XHU3ODZFXHU4QkE0IFdhbmQgXHU2NzBEXHU1MkExXHU2QjYzXHU1NzI4XHU4RkQwXHU4ODRDXHUzMDAyPC9kaXY+PGJ1dHRvbiBvbmNsaWNrPSJsb2NhdGlvbi5yZWxvYWQoKSIgc3R5bGU9Im1hcmdpbi10b3A6MThweDtwYWRkaW5nOjhweCAyNHB4O2JvcmRlci1yYWRpdXM6OHB4O2JvcmRlcjoxcHggc29saWQgcmdiYSgxNTAsMTE4LDg1LDAuMyk7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuOCk7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjAuOTVlbSI+XHU5MUNEXHU4QkQ1PC9idXR0b24+PC9kaXY+PC9kaXY+Jyksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9ubGluZSIsZnVuY3Rpb24oKXtsb2NhdGlvbi5yZWxvYWQoKX0se29uY2U6ITB9KTtyZXR1cm59JHQoKX0pfWRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihlKXtpZighX2UoKSYmIXIuc2lkZWJhclBpbm5lZCYmIXIuc2lkZWJhckNvbGxhcHNlZCYmci5zZXNzaW9uc0RyYXdlck9wZW4pe3ZhciB0PWUudGFyZ2V0OyF0fHwhKHQgaW5zdGFuY2VvZiBFbGVtZW50KXx8dC5jbG9zZXN0KCIjc2Vzc2lvbnMtZHJhd2VyIil8fHQuY2xvc2VzdCgiI3Nlc3Npb25zLXRvZ2dsZS1idXR0b24iKXx8dC5jbG9zZXN0KCIuZmxvYXRpbmctc2lkZWJhci10b2dnbGUiKXx8dC5jbG9zZXN0KCIuc2lkZWJhci10aWxlLWJ1YmJsZSIpfHx0LmNsb3Nlc3QoIi5tb2RhbC1iYWNrZHJvcCwgLm1vZGFsLW92ZXJsYXksIC5tb2RhbC1jb250YWluZXIsIFtyb2xlPSdkaWFsb2cnXSwgW3JvbGU9J21lbnUnXSwgLnRvcGJhci1tb3JlLW1lbnUsIC5zaWRlYmFyLWhlYWRlci1vdmVyZmxvdywgLmZvbGRlci1waWNrZXItZHJvcGRvd24sIC5wYXRoLXN1Z2dlc3Rpb25zLCAucGVybWlzc2lvbi1wcm9tcHQtb3ZlcmxheSwgLnJlc3RhcnQtb3ZlcmxheSIpfHxYdigpfX0sITApLCRkKCksZWYoKTtmdW5jdGlvbiAkdChlKXt2YXIgdD1lJiZlLnNraXBTaGVsbENocm9tZSxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHAiKSxpPXIuY29uZmlnIT09bnVsbCxhPXIubW9kYWxPcGVuLHU9IWl8fCEhZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2lmKHUmJmdyKCksZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoIm5vLXRyYW5zaXRpb24iKSxyLnNpZGViYXJQaW5uZWQmJiFyLnNpZGViYXJDb2xsYXBzZWQmJiFfZSgpJiYoci5zZXNzaW9uc0RyYXdlck9wZW49ITAsSWUoIndhbmQtc2lkZWJhci1vcGVuIiwhMCkpLG4uaW5uZXJIVE1MPWk/cmYoKTpuZigpLGt0KCksUWQoKSxUcigpLEJpKCksWG4oTnQoKSksa2koKSx0fHxJcigpLGkmJnIuZmlsZVBhbmVsT3BlbiYmUHQoKSxkb2N1bWVudC5ib2R5Lm9mZnNldEhlaWdodCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgibm8tdHJhbnNpdGlvbiIpfSksYSYmci5tb2RhbE9wZW4pe3ZhciBzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLW1vZGFsIik7aWYocyl7cy5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTt2YXIgbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3dkIik7byYmKG8udmFsdWU9ci5jd2RWYWx1ZSksU3IoKX19aWYoaSYmci5zZWxlY3RlZElkJiZyLmdpdFN0YXR1c1Nlc3Npb25JZCE9PXIuc2VsZWN0ZWRJZCYmd24oci5zZWxlY3RlZElkKSxpKXt2YXIgbD1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYyl7cmV0dXJuIGMuaWQ9PT1yLnNlbGVjdGVkSWR9KTtudShsKX1UaShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLWN3ZCIpKSxUaShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtcGF0aCIpKSxUaShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya2luZy1kaXItaW5kaWNhdG9yLXBhdGgiKSl9ZnVuY3Rpb24gdGYoKXt2YXIgZT1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24obil7cmV0dXJuIG4uaWQ9PT1yLnNlbGVjdGVkSWR9KSx0PWUmJmUuYXBwcm92YWxTdGF0cztyZXR1cm4hdHx8dC50b3RhbD09PTA/JzxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cyBoaWRkZW4iIGlkPSJhcHByb3ZhbC1zdGF0cyI+PC9zcGFuPic6JzxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cyIgaWQ9ImFwcHJvdmFsLXN0YXRzIj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtZGl2aWRlciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1iYWRnZSIgaWQ9ImFwcHJvdmFsLXN0YXRzLWJhZGdlIiB0aXRsZT0iXHU2NzJDXHU2QjIxXHU0RjFBXHU4QkREXHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHU3RURGXHU4QkExIj48c3ZnIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1pY29uIiB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTIgMjJzOC00IDgtMTBWNWwtOC0zLTggM3Y3YzAgNiA4IDEwIDggMTB6Ii8+PC9zdmc+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXRvdGFsIj4nK3QudG90YWwrJzwvc3Bhbj48L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXBvcHVwIiBpZD0iYXBwcm92YWwtc3RhdHMtcG9wdXAiPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1wb3B1cC10aXRsZSI+XHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHU3RURGXHU4QkExPC9zcGFuPicrKHQuY29tbWFuZD4wPyc8c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93Ij48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWljb24iPicrSigidGVybWluYWwiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1sYWJlbCI+XHU1NDdEXHU0RUU0XHU2MjY3XHU4ODRDPC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctY291bnQiPicrdC5jb21tYW5kKyI8L3NwYW4+PC9zcGFuPiI6IiIpKyh0LmZpbGU+MD8nPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdyI+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1pY29uIj4nK0ooImVkaXQiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1sYWJlbCI+XHU2NTg3XHU0RUY2XHU1MTk5XHU1MTY1PC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctY291bnQiPicrdC5maWxlKyI8L3NwYW4+PC9zcGFuPiI6IiIpKyh0LnRvb2w+MD8nPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdyI+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1pY29uIj4nK0ooIndyZW5jaCIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWxhYmVsIj5cdTUxNzZcdTRFRDZcdTVERTVcdTUxNzc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1jb3VudCI+Jyt0LnRvb2wrIjwvc3Bhbj48L3NwYW4+IjoiIikrJzxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3cgYXBwcm92YWwtc3RhdHMtcm93LXRvdGFsIj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWljb24iPicrSigic2lnbWEiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1sYWJlbCI+XHU1NDA4XHU4QkExPC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctY291bnQiPicrdC50b3RhbCsiPC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPiJ9ZnVuY3Rpb24gbmYoKXtyZXR1cm4gci5sb2dpbkNoZWNrZWQ/JzxkaXYgY2xhc3M9ImxvZ2luLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0ibG9naW4tY2FyZCI+PGRpdiBjbGFzcz0ibG9naW4taGVhZGVyIj48ZGl2IGNsYXNzPSJsb2dpbi1sb2dvIj48ZGl2IGNsYXNzPSJsb2dpbi1sb2dvLWljb24iPlc8L2Rpdj48c3BhbiBjbGFzcz0ibG9naW4tbG9nby10ZXh0Ij5XYW5kPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImxvZ2luLXN1YnRpdGxlIj5cdTU3MjhcdTZENEZcdTg5QzhcdTU2NjhcdTRFMkRcdThGRDBcdTg4NENcdTY3MkNcdTY3M0FcdTdFQzhcdTdBRUY8L2Rpdj48L2Rpdj48Zm9ybSBpZD0ibG9naW4tZm9ybSIgY2xhc3M9ImxvZ2luLWJvZHkiIGF1dG9jb21wbGV0ZT0ib24iPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ1c2VybmFtZSIgYXV0b2NvbXBsZXRlPSJ1c2VybmFtZSIgdmFsdWU9IndhbmQiIHRhYmluZGV4PSItMSIgYXJpYS1oaWRkZW49InRydWUiIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi05OTk5cHg7d2lkdGg6MXB4O2hlaWdodDoxcHg7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmUiIHJlYWRvbmx5IC8+PHAgY2xhc3M9ImxvZ2luLWhpbnQiPlx1OEY5M1x1NTE2NSBXYW5kIFx1OEJCRlx1OTVFRVx1NUJDNlx1NzgwMVx1NEVFNVx1OEZEQlx1NTE2NVx1NjNBN1x1NTIzNlx1NTNGMFx1MzAwMjwvcD48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJwYXNzd29yZCI+XHU1QkM2XHU3ODAxPC9sYWJlbD48ZGl2IGNsYXNzPSJwYXNzd29yZC1maWVsZCI+PGlucHV0IGlkPSJwYXNzd29yZCIgdHlwZT0icGFzc3dvcmQiIGNsYXNzPSJmaWVsZC1pbnB1dCBwYXNzd29yZC1pbnB1dCIgcGxhY2Vob2xkZXI9Ilx1OEY5M1x1NTE2NVx1OEJCRlx1OTVFRVx1NUJDNlx1NzgwMSIgYXV0b2NvbXBsZXRlPSJjdXJyZW50LXBhc3N3b3JkIiBkYXRhLWVycm9yPSJmYWxzZSIgYXJpYS1kZXNjcmliZWRieT0icGFzc3dvcmQtaGludCBsb2dpbi1lcnJvciIgYXJpYS1pbnZhbGlkPSJmYWxzZSIgLz48YnV0dG9uIGlkPSJ0b2dnbGUtcGFzc3dvcmQtYnV0dG9uIiB0eXBlPSJidXR0b24iIGNsYXNzPSJwYXNzd29yZC10b2dnbGUiIGFyaWEtbGFiZWw9Ilx1NjYzRVx1NzkzQVx1NUJDNlx1NzgwMSIgYXJpYS1wcmVzc2VkPSJmYWxzZSI+XHU2NjNFXHU3OTNBPC9idXR0b24+PC9kaXY+PHAgaWQ9InBhc3N3b3JkLWhpbnQiIGNsYXNzPSJoaW50Ij5cdTRGN0ZcdTc1MjhcdTRGNjBcdTU3MjggV2FuZCBcdTRFMkRcdThCQkVcdTdGNkVcdTc2ODRcdThCQkZcdTk1RUVcdTVCQzZcdTc4MDFcdTMwMDI8L3A+PHAgaWQ9ImxvZ2luLWVycm9yIiBjbGFzcz0iZXJyb3ItbWVzc2FnZSBoaWRkZW4iIHJvbGU9ImFsZXJ0Ij48L3A+PC9kaXY+PGRpdiBpZD0ibG9naW4tY2VydC1oaW50IiBjbGFzcz0ibG9naW4tY2VydC1oaW50IGhpZGRlbiIgcm9sZT0iYWxlcnQiPjxkaXYgY2xhc3M9ImxvZ2luLWNlcnQtaGludC10aXRsZSI+XHU4QkMxXHU0RTY2XHU0RTBEXHU1M0Q3XHU0RkUxXHU0RUZCXHVGRjBDXHU3NjdCXHU1RjU1XHU2MDAxXHU2NUUwXHU2Q0Q1XHU0RkREXHU1QjU4PC9kaXY+PHAgY2xhc3M9ImxvZ2luLWNlcnQtaGludC1ib2R5Ij5cdTVCQzZcdTc4MDFcdTY2MkZcdTVCRjlcdTc2ODRcdUZGMENcdTRGNDZcdTVGNTNcdTUyNEQgSFRUUFMgXHU4QkMxXHU0RTY2XHU0RTBEXHU1M0Q3XHU2RDRGXHU4OUM4XHU1NjY4XHU0RkUxXHU0RUZCXHVGRjBDXHU2RDRGXHU4OUM4XHU1NjY4XHU1NkUwXHU2QjY0XHU2MkQyXHU3RUREXHU0RkREXHU1QjU4XHU3NjdCXHU1RjU1IENvb2tpZVx1RkYwQ1x1NjI0MFx1NEVFNVx1OEZEQlx1NEUwRFx1NEU4Nlx1NjNBN1x1NTIzNlx1NTNGMFx1MzAwMjxici8+XHU4OUUzXHU1MUIzXHU1MjlFXHU2Q0Q1XHVGRjA4XHU0RUZCXHU5MDA5XHU1MTc2XHU0RTAwXHVGRjA5XHVGRjFBXHU2NTM5XHU3NTI4IEhUVFAgXHU4QkJGXHU5NUVFXHU2NzJDXHU2NzBEXHU1MkExXHVGRjFCXHU2MjE2XHU2MjhBXHU2NzJDXHU2NzBEXHU1MkExXHU4QkMxXHU0RTY2XHU4QkJFXHU0RTNBXHUzMDBDXHU1M0Q3XHU0RkUxXHU0RUZCXHUzMDBEXHVGRjA4XHU2M0E4XHU4MzUwIG1rY2VydFx1RkYwOVx1RkYxQlx1NjIxNlx1NTcyOFx1NjcyQ1x1NjczQVx1NUMwNlx1OEJFNVx1ODFFQVx1N0I3RVx1OEJDMVx1NEU2Nlx1OEJCRVx1NEUzQVx1NUI4Q1x1NTE2OFx1NEZFMVx1NEVGQlx1NTQwRVx1OTFDRFx1OEJENVx1MzAwMjwvcD48YSBpZD0ibG9naW4tY2VydC1odHRwLWxpbmsiIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1ibG9jayIgaHJlZj0iIyIgcmVsPSJub29wZW5lciI+XHU2NTM5XHU3NTI4IEhUVFAgXHU4QkJGXHU5NUVFPC9hPjwvZGl2PjxidXR0b24gaWQ9ImxvZ2luLWJ1dHRvbiIgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IGJ0bi1ibG9jayI+XHU4RkRCXHU1MTY1XHU2M0E3XHU1MjM2XHU1M0YwPC9idXR0b24+JysoUmEoKT8nPGJ1dHRvbiBpZD0ibG9naW4tc3dpdGNoLXNlcnZlci1idXR0b24iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1ibG9jayBsb2dpbi1zd2l0Y2gtc2VydmVyIiB0eXBlPSJidXR0b24iPjxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHJlY3QgeD0iMiIgeT0iMyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjgiIHJ4PSIyIi8+PHJlY3QgeD0iMiIgeT0iMTMiIHdpZHRoPSIyMCIgaGVpZ2h0PSI4IiByeD0iMiIvPjxsaW5lIHgxPSI2IiB5MT0iNyIgeDI9IjYuMDEiIHkyPSI3Ii8+PGxpbmUgeDE9IjYiIHkxPSIxNyIgeDI9IjYuMDEiIHkyPSIxNyIvPjwvc3ZnPjxzcGFuPlx1NTIwN1x1NjM2Mlx1NjcwRFx1NTJBMVx1NTY2ODwvc3Bhbj48L2J1dHRvbj4nOiIiKSsiPC9mb3JtPjwvZGl2PjwvZGl2PiI6JzxkaXYgY2xhc3M9ImxvZ2luLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0ibG9naW4tY2FyZCBsb2dpbi1jYXJkLWxvYWRpbmciPjxkaXYgY2xhc3M9ImxvZ2luLWhlYWRlciI+PGRpdiBjbGFzcz0ibG9naW4tbG9nbyI+PGRpdiBjbGFzcz0ibG9naW4tbG9nby1pY29uIj5XPC9kaXY+PHNwYW4gY2xhc3M9ImxvZ2luLWxvZ28tdGV4dCI+V2FuZDwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJsb2dpbi1zdWJ0aXRsZSI+XHU2QjYzXHU1NzI4XHU2MDYyXHU1OTBEXHU3NjdCXHU1RjU1XHU3MkI2XHU2MDAxPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ibG9naW4tYm9keSI+PGRpdiBjbGFzcz0ibG9naW4tc3RhdHVzIj48c3BhbiBjbGFzcz0ibG9naW4tc3Bpbm5lciIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48ZGl2PjxwIGNsYXNzPSJsb2dpbi1oaW50Ij5cdTZCNjNcdTU3MjhcdTY4QzBcdTY3RTVcdTY3MkNcdTU3MzBcdTc2N0JcdTVGNTVcdTRGMUFcdThCRERcdUZGMENcdThCRjdcdTdBMERcdTUwMTlcdTMwMDI8L3A+PHAgY2xhc3M9ImxvZ2luLW11dGVkIj5cdTU5ODJcdTY3OUNcdTRGNjBcdTUyMUFcdTUyMzdcdTY1QjBcdTk4NzVcdTk3NjJcdUZGMENcdThGRDlcdTY2MkZcdTZCNjNcdTVFMzhcdTczQjBcdThDNjFcdTMwMDI8L3A+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+J31mdW5jdGlvbiByZigpe3ZhciBlPSI8XC9zY3JpcHQ+Iix0PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihoKXtyZXR1cm4gaC5pZD09PXIuc2VsZWN0ZWRJZH0pLG49dD9Rbih0LmNvbW1hbmQpOiJcdTY3MkFcdTkwMDlcdTYyRTlcdTRGMUFcdThCREQiLGk9dD90Lm1vZGUrIiB8ICIrdC5zdGF0dXM6Ilx1NzBCOVx1NTFGQlx1NEUwQVx1NjVCOVx1MzAwQ1x1NjVCMFx1NUJGOVx1OEJERFx1MzAwRFx1NUYwMFx1NTlDQiIsYT1yLnNlbGVjdGVkSWQmJnIuZHJhZnRzW3Iuc2VsZWN0ZWRJZF18fCIiLHU9ci5zZXNzaW9uc0RyYXdlck9wZW4/IiBvcGVuIjoiIixzPXl1KCk/IiBvcGVuIjoiIixvPU92KCksbD14dChvLHIuY2hhdE1vZGUpLGM9X2UoKSxmPSEhci5zaWRlYmFyUGlubmVkJiYhIXIuc2lkZWJhckNvbGxhcHNlZCxkPWZ8fCFjJiYoISFyLnNpZGViYXJQaW5uZWR8fCEhci5zZXNzaW9uc0RyYXdlck9wZW4pLHY9Zj8iIHNpZGViYXItY29sbGFwc2VkIjoiIixnPWY/IiBjb2xsYXBzZWQiOiIiO3JldHVybic8ZGl2IGNsYXNzPSJhcHAtY29udGFpbmVyIj48ZGl2IGlkPSJzZXNzaW9ucy1kcmF3ZXItYmFja2Ryb3AiIGNsYXNzPSJkcmF3ZXItYmFja2Ryb3AnK3MrJyI+PC9kaXY+PGRpdiBjbGFzcz0ibWFpbi1sYXlvdXQnKyhyLnNlc3Npb25zRHJhd2VyT3Blbj8iIHNpZGViYXItb3BlbiI6IiIpKyhkPyIgc2lkZWJhci1waW5uZWQiOiIiKSt2KyciPjxhc2lkZSBpZD0ic2Vzc2lvbnMtZHJhd2VyIiBjbGFzcz0ic2lkZWJhcicrdSsoZD8iIHBpbm5lZCI6IiIpK2crJyI+PGRpdiBjbGFzcz0ic2lkZWJhci1oZWFkZXIiPjxkaXYgY2xhc3M9InNpZGViYXItaGVhZGVyLW1haW4iPjxkaXYgY2xhc3M9InRvcGJhci1sb2dvLWljb24iPlc8L2Rpdj48c3BhbiBjbGFzcz0ic2lkZWJhci10aXRsZSI+XHU0RjFBXHU4QkREPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXNzaW9uLWNvdW50IiBpZD0ic2Vzc2lvbi1jb3VudCI+JytTdHJpbmcoci5zZXNzaW9ucy5sZW5ndGgpKyc8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ic2lkZWJhci1oZWFkZXItYWN0aW9ucyI+PGRpdiBjbGFzcz0ic2lkZWJhci1oZWFkZXItbW9yZSI+PGJ1dHRvbiBpZD0ic2lkZWJhci1tb3JlLWJ0biIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTY2RjRcdTU5MUFcdTY0Q0RcdTRGNUMiPjxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PGNpcmNsZSBjeD0iMTIiIGN5PSI1IiByPSIxLjUiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxLjUiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjE5IiByPSIxLjUiLz48L3N2Zz48L2J1dHRvbj48ZGl2IGNsYXNzPSJzaWRlYmFyLWhlYWRlci1vdmVyZmxvdyIgaWQ9InNpZGViYXItb3ZlcmZsb3ctbWVudSI+PGJ1dHRvbiBjbGFzcz0ib3ZlcmZsb3ctaXRlbSIgaWQ9InNpZGViYXItaG9tZS1idG4iIHR5cGU9ImJ1dHRvbiI+PHN2ZyB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMyA5bDktNyA5IDd2MTFhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJ6Ii8+PHBvbHlsaW5lIHBvaW50cz0iOSAyMiA5IDEyIDE1IDEyIDE1IDIyIi8+PC9zdmc+PHNwYW4+XHU1NkRFXHU1MjMwXHU5OTk2XHU5ODc1PC9zcGFuPjwvYnV0dG9uPjxidXR0b24gY2xhc3M9Im92ZXJmbG93LWl0ZW0iIGlkPSJzaWRlYmFyLXJlZnJlc2gtYnRuIiB0eXBlPSJidXR0b24iPjxzdmcgd2lkdGg9IjE1IiBoZWlnaHQ9IjE1IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBvbHlsaW5lIHBvaW50cz0iMjMgNCAyMyAxMCAxNyAxMCIvPjxwYXRoIGQ9Ik0yMC40OSAxNWE5IDkgMCAxIDEtMi4xMi05LjM2TDIzIDEwIi8+PC9zdmc+PHNwYW4+XHU1MjM3XHU2NUIwXHU5ODc1XHU5NzYyPC9zcGFuPjwvYnV0dG9uPjwvZGl2PjwvZGl2PjxidXR0b24gaWQ9InNpZGViYXItcGluLWJ0biIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtIHNpZGViYXItcGluLXRvZ2dsZScrKHIuc2lkZWJhclBpbm5lZD8iIHBpbm5lZCI6IiIpKyciIHR5cGU9ImJ1dHRvbiIgdGl0bGU9IicrKHIuc2lkZWJhclBpbm5lZD8iXHU1REYyXHU1NkZBXHU1QjlBXHU1RTM4XHU5QTdCXHVGRjA4XHU3MEI5XHU1MUZCXHU4OUUzXHU5NjY0XHU5NTAxXHU1QjlBXHVGRjA5IjoiXHU1NkZBXHU1QjlBXHU0RkE3XHU2ODBGXHU1RTM4XHU5QTdCIikrJyIgYXJpYS1sYWJlbD0iJysoci5zaWRlYmFyUGlubmVkPyJcdTg5RTNcdTk2NjRcdTU2RkFcdTVCOUFcdTVFMzhcdTlBN0IiOiJcdTU2RkFcdTVCOUFcdTRGQTdcdTY4MEZcdTVFMzhcdTlBN0IiKSsnIiBhcmlhLXByZXNzZWQ9IicrKHIuc2lkZWJhclBpbm5lZD8idHJ1ZSI6ImZhbHNlIikrJyI+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjEyIiB5MT0iMTciIHgyPSIxMiIgeTI9IjIyIi8+PHBhdGggZD0iTTUgMTdoMTR2LTEuNzZhMiAyIDAgMCAwLTEuMTEtMS43OWwtMS43OC0uOUEyIDIgMCAwIDEgMTUgMTAuNzZWNmgxYTIgMiAwIDAgMCAwLTRIOGEyIDIgMCAwIDAgMCA0aDF2NC43NmEyIDIgMCAwIDEtMS4xMSAxLjc5bC0xLjc4LjlBMiAyIDAgMCAwIDUgMTUuMjR6Ii8+PC9zdmc+PC9idXR0b24+PGJ1dHRvbiBpZD0ic2lkZWJhci1jb2xsYXBzZS1idG4iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSBzaWRlYmFyLWNvbGxhcHNlLXRvZ2dsZScrKGY/IiBjb2xsYXBzZWQiOiIiKSsnIiB0eXBlPSJidXR0b24iIHRpdGxlPSInKyhmPyJcdTVDNTVcdTVGMDBcdTRFM0FcdTUxNjhcdTVDM0FcdTVCRjgiOiJcdTY1MzZcdThENzdcdTRFM0FcdTdBODRcdTY3NjEiKSsnIiBhcmlhLWxhYmVsPSInKyhmPyJcdTVDNTVcdTVGMDBcdTRFM0FcdTUxNjhcdTVDM0FcdTVCRjgiOiJcdTY1MzZcdThENzdcdTRFM0FcdTdBODRcdTY3NjEiKSsnIj4nKyhmPyc8c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwb2x5bGluZSBwb2ludHM9IjEwIDYgMTYgMTIgMTAgMTgiLz48bGluZSB4MT0iMjAiIHkxPSI1IiB4Mj0iMjAiIHkyPSIxOSIvPjwvc3ZnPic6Jzxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBvbHlsaW5lIHBvaW50cz0iMTQgNiA4IDEyIDE0IDE4Ii8+PGxpbmUgeDE9IjQiIHkxPSI1IiB4Mj0iNCIgeTI9IjE5Ii8+PC9zdmc+JykrJzwvYnV0dG9uPjxidXR0b24gaWQ9ImNsb3NlLWRyYXdlci1idXR0b24iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1pY29uIHNpZGViYXItY2xvc2UgZHJhd2VyLWNsb3NlLWJ0biIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RURcdTgzRENcdTUzNTUiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjYiIHkxPSI2IiB4Mj0iMTgiIHkyPSIxOCIvPjxsaW5lIHgxPSIxOCIgeTE9IjYiIHgyPSI2IiB5Mj0iMTgiLz48L3N2Zz48L2J1dHRvbj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzaWRlYmFyLWJvZHkiPjxkaXYgaWQ9InNlc3Npb25zLXBhbmVsIj48ZGl2IGNsYXNzPSJzZXNzaW9ucy1saXN0IiBpZD0ic2Vzc2lvbnMtbGlzdCI+JytZaSgpKyc8L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzaWRlYmFyLWZvb3RlciI+PGJ1dHRvbiBpZD0iZHJhd2VyLW5ldy1zZXNzaW9uLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSBidG4tYmxvY2siPjxzcGFuPis8L3NwYW4+IFx1NjVCMFx1NEYxQVx1OEJERDwvYnV0dG9uPjxkaXYgY2xhc3M9InNpZGViYXItZm9vdGVyLWFjdGlvbnMiPjxidXR0b24gaWQ9ImZpbGUtcGFuZWwtdG9nZ2xlLWJ0biIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtJysoci5maWxlUGFuZWxPcGVuPyIgYWN0aXZlIjoiIikrJyIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU2N0U1XHU3NzBCXHU2NTg3XHU0RUY2Ij48c3ZnIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMiAxOWEyIDIgMCAwIDEtMiAySDRhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoNWwyIDNoOWEyIDIgMCAwIDEgMiAyeiIvPjwvc3ZnPjxzcGFuPlx1NjU4N1x1NEVGNjwvc3Bhbj48L2J1dHRvbj48YnV0dG9uIGlkPSJzZXR0aW5ncy1idXR0b24iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU4QkJFXHU3RjZFIj48c3ZnIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjMiLz48cGF0aCBkPSJNMTkuNCAxNWExLjY1IDEuNjUgMCAwIDAgLjMzIDEuODJsLjA2LjA2YTIgMiAwIDAgMS0yLjgzIDIuODNsLS4wNi0uMDZhMS42NSAxLjY1IDAgMCAwLTEuODItLjMzIDEuNjUgMS42NSAwIDAgMC0xIDEuNTFWMjFhMiAyIDAgMCAxLTQgMHYtLjA5QTEuNjUgMS42NSAwIDAgMCA5IDE5LjRhMS42NSAxLjY1IDAgMCAwLTEuODIuMzNsLS4wNi4wNmEyIDIgMCAwIDEtMi44My0yLjgzbC4wNi0uMDZBMS42NSAxLjY1IDAgMCAwIDQuNjggMTVhMS42NSAxLjY1IDAgMCAwLTEuNTEtMUgzYTIgMiAwIDAgMSAwLTRoLjA5QTEuNjUgMS42NSAwIDAgMCA0LjYgOWExLjY1IDEuNjUgMCAwIDAtLjMzLTEuODJsLS4wNi0uMDZhMiAyIDAgMCAxIDIuODMtMi44M2wuMDYuMDZBMS42NSAxLjY1IDAgMCAwIDkgNC42OGExLjY1IDEuNjUgMCAwIDAgMS0xLjUxVjNhMiAyIDAgMCAxIDQgMHYuMDlhMS42NSAxLjY1IDAgMCAwIDEgMS41MSAxLjY1IDEuNjUgMCAwIDAgMS44Mi0uMzNsLjA2LS4wNmEyIDIgMCAwIDEgMi44MyAyLjgzbC0uMDYuMDZBMS42NSAxLjY1IDAgMCAwIDE5LjQgOWExLjY1IDEuNjUgMCAwIDAgMS41MSAxSDIxYTIgMiAwIDAgMSAwIDRoLS4wOWExLjY1IDEuNjUgMCAwIDAtMS41MSAxeiIvPjwvc3ZnPjxzcGFuPlx1OEJCRVx1N0Y2RTwvc3Bhbj48L2J1dHRvbj4nKyhUdigpPyc8YnV0dG9uIGlkPSJiYWNrLXRvLW5hdGl2ZS1idXR0b24iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSBzaWRlYmFyLWJhY2stdG8tbmF0aXZlIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdThGRDRcdTU2REUgQXBwIFx1NTM5Rlx1NzUxRlx1NzU0Q1x1OTc2MiI+PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSIxMCIgeT0iMyIgd2lkdGg9IjExIiBoZWlnaHQ9IjE4IiByeD0iMiIvPjxsaW5lIHgxPSIxNCIgeTE9IjE3IiB4Mj0iMTciIHkyPSIxNyIvPjxwb2x5bGluZSBwb2ludHM9IjcgOCAzIDEyIDcgMTYiLz48L3N2Zz48c3Bhbj5cdThGRDRcdTU2REVBcHA8L3NwYW4+PC9idXR0b24+JzoiIikrKFJhKCk/JzxidXR0b24gaWQ9InN3aXRjaC1zZXJ2ZXItYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20gc2lkZWJhci1zd2l0Y2gtc2VydmVyIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTUyMDdcdTYzNjJcdTY3MERcdTUyQTFcdTU2NjgiPjxzdmcgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHJlY3QgeD0iMiIgeT0iMyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjgiIHJ4PSIyIi8+PHJlY3QgeD0iMiIgeT0iMTMiIHdpZHRoPSIyMCIgaGVpZ2h0PSI4IiByeD0iMiIvPjxsaW5lIHgxPSI2IiB5MT0iNyIgeDI9IjYuMDEiIHkyPSI3Ii8+PGxpbmUgeDE9IjYiIHkxPSIxNyIgeDI9IjYuMDEiIHkyPSIxNyIvPjwvc3ZnPjxzcGFuPlx1NTIwN1x1NjM2Mjwvc3Bhbj48L2J1dHRvbj4nOiIiKSsnPGJ1dHRvbiBpZD0ibG9nb3V0LWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtIHNpZGViYXItbG9nb3V0IiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTkwMDBcdTUxRkFcdTc2N0JcdTVGNTUiPjxzdmcgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTkgMjFINWEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmg0Ii8+PHBvbHlsaW5lIHBvaW50cz0iMTYgMTcgMjEgMTIgMTYgNyIvPjxsaW5lIHgxPSIyMSIgeTE9IjEyIiB4Mj0iOSIgeTI9IjEyIi8+PC9zdmc+PHNwYW4+XHU5MDAwXHU1MUZBPC9zcGFuPjwvYnV0dG9uPjwvZGl2PjwvZGl2PjwvYXNpZGU+PG1haW4gY2xhc3M9Im1haW4tY29udGVudCI+PGRpdiBjbGFzcz0ibWFpbi1oZWFkZXItcm93Ij48ZGl2IGNsYXNzPSJ0b3BiYXItbGVmdCI+PGJ1dHRvbiBpZD0ic2Vzc2lvbnMtdG9nZ2xlLWJ1dHRvbiIgY2xhc3M9ImZsb2F0aW5nLXNpZGViYXItdG9nZ2xlJysoci5zZXNzaW9uc0RyYXdlck9wZW4/IiBhY3RpdmUiOiIiKSsnIiBhcmlhLWxhYmVsPSJcdTUyMDdcdTYzNjJcdTRGMUFcdThCRERcdTRGQTdcdTY4MEYiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9ImhhbWJ1cmdlci1pY29uIj48c3Bhbj48L3NwYW4+PHNwYW4+PC9zcGFuPjxzcGFuPjwvc3Bhbj48L3NwYW4+PC9idXR0b24+PHNwYW4gY2xhc3M9InRvcGJhci1icmFuZCIgYXJpYS1oaWRkZW49InRydWUiPlc8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0idG9wYmFyLWNlbnRlciI+JysodD8nPHNwYW4gY2xhc3M9InRvcGJhci1zZXNzaW9uLXRpdGxlIiB0aXRsZT0iJytwKHQuZGVzY3JpcHRpb258fHQuY29tbWFuZHx8IiIpKyciPicrcCh0LnRpdGxlfHxRbih0LmNvbW1hbmQpKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXNzaW9uLXN0YXR1cy1waWxsICcrenUodCkrJyIgdGl0bGU9IicrcChjcih0KSkrJyI+PHNwYW4gY2xhc3M9InNlc3Npb24tc3RhdHVzLWRvdCI+PC9zcGFuPjxzcGFuIGNsYXNzPSJzZXNzaW9uLXN0YXR1cy10ZXh0Ij4nK3AoY3IodCkpKyc8L3NwYW4+PC9zcGFuPjxzcGFuIGNsYXNzPSJjdXJyZW50LXRhc2sgaGlkZGVuIiBpZD0iY3VycmVudC10YXNrIj48L3NwYW4+JysodC5jd2Q/JzxzcGFuIGNsYXNzPSJ0b3BiYXItY3dkIiBpZD0idG9wYmFyLWN3ZCIgdGl0bGU9IicrcCh0LmN3ZCkrJyIgcm9sZT0iYnV0dG9uIiB0YWJpbmRleD0iMCI+JytwKHQuY3dkKSsiPC9zcGFuPiI6IiIpOic8c3BhbiBjbGFzcz0idG9wYmFyLXRhZ2xpbmUiPldhbmQgXHU2M0E3XHU1MjM2XHU1M0YwPC9zcGFuPjxzcGFuIGNsYXNzPSJjdXJyZW50LXRhc2sgaGlkZGVuIiBpZD0iY3VycmVudC10YXNrIj48L3NwYW4+JykrJzwvZGl2PjxkaXYgY2xhc3M9InRvcGJhci1yaWdodCI+PGJ1dHRvbiBpZD0idG9wYmFyLWZpbGUtYnV0dG9uIiBjbGFzcz0idG9wYmFyLWJ0biBzcXVhcmUnKyhyLmZpbGVQYW5lbE9wZW4/IiBhY3RpdmUiOiIiKSsnIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NjU4N1x1NEVGNiIgdGl0bGU9Ilx1NjdFNVx1NzcwQlx1NjU4N1x1NEVGNlx1RkYwOFx1NTNFRlx1NEZFRVx1NjUzOVx1OERFRlx1NUY4NFx1RkYwOSI+PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMjIgMTlhMiAyIDAgMCAxLTIgMkg0YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDVsMiAzaDlhMiAyIDAgMCAxIDIgMnoiLz48L3N2Zz48L2J1dHRvbj48c3BhbiBpZD0idG9wYmFyLWdpdC1zbG90IiBjbGFzcz0idG9wYmFyLWdpdC1zbG90Ij4nK3F1KCkrIjwvc3Bhbj4iKyh0P2NjKHQpOiIiKSsnPC9kaXY+PC9kaXY+PGRpdiBpZD0iZmlsZS1wYW5lbC1iYWNrZHJvcCIgY2xhc3M9ImZpbGUtcGFuZWwtYmFja2Ryb3AnKyhyLmZpbGVQYW5lbE9wZW4/IiBvcGVuIjoiIikrJyI+PC9kaXY+PGRpdiBpZD0iZmlsZS1zaWRlLXBhbmVsIiBjbGFzcz0iZmlsZS1zaWRlLXBhbmVsJysoci5maWxlUGFuZWxPcGVuPyIgb3BlbiI6IiIpKyciPjxkaXYgY2xhc3M9ImZpbGUtc2lkZS1wYW5lbC1oZWFkZXIiPjxkaXYgY2xhc3M9ImZpbGUtc2lkZS1wYW5lbC10aXRsZS1ncm91cCI+PHNwYW4gY2xhc3M9ImZpbGUtc2lkZS1wYW5lbC1pY29uIj4nK01lKCJmb2xkZXItb3BlbiIse3NpemU6MTZ9KSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJmaWxlLXNpZGUtcGFuZWwtdGl0bGUiPlx1NjU4N1x1NEVGNjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJmaWxlLXNpZGUtcGFuZWwtaGVhZGVyLWFjdGlvbnMiPjxidXR0b24gY2xhc3M9ImZpbGUtc2lkZS1wYW5lbC1pY29uYnRuIiBpZD0iZmlsZS1leHBsb3Jlci1yZWZyZXNoIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTUyMzdcdTY1QjAiIGFyaWEtbGFiZWw9Ilx1NTIzN1x1NjVCMFx1NjU4N1x1NEVGNlx1NTIxN1x1ODg2OCI+JytNZSgicmVmcmVzaCIse3NpemU6MTV9KSsnPC9idXR0b24+PGJ1dHRvbiBpZD0iZmlsZS1zaWRlLXBhbmVsLWNsb3NlIiBjbGFzcz0iZmlsZS1zaWRlLXBhbmVsLWljb25idG4gY2xvc2UiIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU1MTczXHU5NUVEXHU2NTg3XHU0RUY2XHU5NzYyXHU2NzdGIiB0aXRsZT0iXHU1MTczXHU5NUVEIj4nK01lKCJ4Iix7c2l6ZToxNn0pKyc8L2J1dHRvbj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmaWxlLXNpZGUtcGFuZWwtYm9keSI+PGRpdiBjbGFzcz0iZmlsZS1leHBsb3Jlci1oZWFkZXIiPjxidXR0b24gY2xhc3M9ImZpbGUtZXhwbG9yZXItdXAiIGlkPSJmaWxlLWV4cGxvcmVyLXVwIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdThGRDRcdTU2REVcdTRFMEFcdTdFQTdcdTc2RUVcdTVGNTUiIGFyaWEtbGFiZWw9Ilx1OEZENFx1NTZERVx1NEUwQVx1N0VBN1x1NzZFRVx1NUY1NSI+JytNZSgiYXJyb3ctdXAiLHtzaXplOjE1fSkrJzwvYnV0dG9uPjxpbnB1dCB0eXBlPSJ0ZXh0IiBjbGFzcz0iZmlsZS1leHBsb3Jlci1wYXRoIiBpZD0iZmlsZS1leHBsb3Jlci1jd2QiIHZhbHVlPSInK3AodCYmdC5jd2Q/dC5jd2Q6dG4oKSkrJyIgdGl0bGU9IicrcCh0JiZ0LmN3ZD90LmN3ZDp0bigpKSsnIiBwbGFjZWhvbGRlcj0iXHU4RjkzXHU1MTY1XHU4REVGXHU1Rjg0XHU1RTc2XHU1NkRFXHU4RjY2Li4uIiBzcGVsbGNoZWNrPSJmYWxzZSIgYXV0b2NvbXBsZXRlPSJvZmYiIGF1dG9jYXBpdGFsaXplPSJvZmYiIGF1dG9jb3JyZWN0PSJvZmYiIGFyaWEtbGFiZWw9Ilx1NUY1M1x1NTI0RFx1OERFRlx1NUY4NFx1RkYwQ1x1NTNFRlx1NzZGNFx1NjNBNVx1NEZFRVx1NjUzOVx1NTQwRVx1NTZERVx1OEY2NiIgLz48L2Rpdj48ZGl2IGNsYXNzPSJmaWxlLXNlYXJjaC1ib3giPjxzcGFuIGNsYXNzPSJmaWxlLXNlYXJjaC1pY29uIj4nK01lKCJzZWFyY2giLHtzaXplOjE0fSkrJzwvc3Bhbj48aW5wdXQgdHlwZT0idGV4dCIgaWQ9ImZpbGUtc2VhcmNoLWlucHV0IiBjbGFzcz0iZmlsZS1zZWFyY2gtaW5wdXQiIHBsYWNlaG9sZGVyPSJcdTY0MUNcdTdEMjJcdTVGNTNcdTUyNERcdTc2RUVcdTVGNTVcdTIwMjYiIGF1dG9jb21wbGV0ZT0ib2ZmIiBhdXRvY29ycmVjdD0ib2ZmIiBhdXRvY2FwaXRhbGl6ZT0ib2ZmIiBzcGVsbGNoZWNrPSJmYWxzZSIgLz48YnV0dG9uIGNsYXNzPSJmaWxlLXNlYXJjaC1jbGVhciIgaWQ9ImZpbGUtc2VhcmNoLWNsZWFyIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NkUwNVx1OTY2NFx1NjQxQ1x1N0QyMiIgdGl0bGU9Ilx1NkUwNVx1OTY2NCI+JytNZSgieCIse3NpemU6MTN9KSsnPC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0iZmlsZS1leHBsb3JlciIgaWQ9ImZpbGUtZXhwbG9yZXIiPicrR2wodCYmdC5jd2Q/dC5jd2Q6dG4oKSkrJzwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgaWQ9Im91dHB1dCIgY2xhc3M9InRlcm1pbmFsLWNvbnRhaW5lcicrKHIuc2VsZWN0ZWRJZD8iIjoiIGhpZGRlbiIpKycgYWN0aXZlIj48ZGl2IGNsYXNzPSJ0ZXJtaW5hbC1zY2FsZS1vdmVybGF5IiBhcmlhLWxhYmVsPSJcdTdFQzhcdTdBRUZcdTdGMjlcdTY1M0VcdTYzQTdcdTRFRjYiPjxidXR0b24gaWQ9InRlcm1pbmFsLXNjYWxlLWRvd24tdG9wIiBjbGFzcz0idGVybWluYWwtc2NhbGUtb3ZlcmxheS1idG4gdGVybWluYWwtc2NhbGUtYnRuIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTdGMjlcdTVDMEYiPlx1MjIxMjwvYnV0dG9uPjxzcGFuIGNsYXNzPSJ0ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWxhYmVsIHRlcm1pbmFsLXNjYWxlLWxhYmVsIiBpZD0idGVybWluYWwtc2NhbGUtbGFiZWwtdG9wIj4nK01hdGgucm91bmQoci50ZXJtaW5hbFNjYWxlKjEwMCkrJyU8L3NwYW4+PGJ1dHRvbiBpZD0idGVybWluYWwtc2NhbGUtdXAtdG9wIiBjbGFzcz0idGVybWluYWwtc2NhbGUtb3ZlcmxheS1idG4gdGVybWluYWwtc2NhbGUtYnRuIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTY1M0VcdTU5MjciPis8L2J1dHRvbj48c3BhbiBjbGFzcz0idGVybWluYWwtc2NhbGUtb3ZlcmxheS1kaXZpZGVyIj48L3NwYW4+PGJ1dHRvbiBpZD0icGFnZS1yZWZyZXNoLWJ0biIgY2xhc3M9InRlcm1pbmFsLXNjYWxlLW92ZXJsYXktYnRuIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTUyMzdcdTY1QjBcdTk4NzVcdTk3NjIiPlx1MjFCQjwvYnV0dG9uPjwvZGl2PjxidXR0b24gaWQ9InRlcm1pbmFsLWp1bXAtYm90dG9tIiBjbGFzcz0idGVybWluYWwtanVtcC1ib3R0b20nKyhyLnNob3dUZXJtaW5hbEp1bXBUb0JvdHRvbT8iIHZpc2libGUiOiIiKSsnIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTU2REVcdTUyMzBcdTVFOTVcdTkwRTgiIGFyaWEtbGFiZWw9Ilx1NTZERVx1NTIzMFx1NUU5NVx1OTBFOCI+PHN2ZyB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTggMy41djlNMy41IDhsNC41IDQuNUwxMi41IDgiLz48L3N2Zz48L2J1dHRvbj48L2Rpdj48ZGl2IGlkPSJjaGF0LW91dHB1dCIgY2xhc3M9ImNoYXQtY29udGFpbmVyIGhpZGRlbiI+PGJ1dHRvbiBpZD0iY2hhdC11bnJlYWQtYnViYmxlIiBjbGFzcz0iY2hhdC11bnJlYWQtYnViYmxlIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTU2REVcdTUyMzBcdTY3MDBcdTY1QjBcdTZEODhcdTYwNkYiIGFyaWEtbGFiZWw9Ilx1NTZERVx1NTIzMFx1NjcwMFx1NjVCMFx1NkQ4OFx1NjA2RiI+PHNwYW4gY2xhc3M9ImNoYXQtdW5yZWFkLWJ1YmJsZS1pY29uIj48c3ZnIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNOCAzLjV2OU0zLjUgOGw0LjUgNC41TDEyLjUgOCIvPjwvc3ZnPjwvc3Bhbj48c3BhbiBjbGFzcz0iY2hhdC11bnJlYWQtYnViYmxlLWNvdW50IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvYnV0dG9uPjwvZGl2PjxkaXYgaWQ9ImJsYW5rLWNoYXQiIGNsYXNzPSJibGFuay1jaGF0Jysoci5zZWxlY3RlZElkPyIgaGlkZGVuIjoiIikrJyI+PGRpdiBjbGFzcz0iYmxhbmstY2hhdC1pbm5lciI+PGRpdiBjbGFzcz0iYmxhbmstY2hhdC1sb2dvIj5XPC9kaXY+PGgyIGNsYXNzPSJibGFuay1jaGF0LXRpdGxlIj5XYW5kPC9oMj48cCBjbGFzcz0iYmxhbmstY2hhdC1zdWJ0aXRsZSI+XHU2NTJGXHU2MzAxXHU3RUM4XHU3QUVGIFBUWSBcdTRGMUFcdThCRERcdTRFMEVcdTdFRDNcdTY3ODRcdTUzMTYgY2hhdCBcdTRGMUFcdThCRERcdUZGMENcdTRFMjRcdTc5Q0RcdTZBMjFcdTVGMEZcdTUzRUZcdTVFNzZcdTVCNThcdTMwMDI8L3A+PGRpdiBjbGFzcz0iYmxhbmstY2hhdC10b29scyI+PGJ1dHRvbiBjbGFzcz0iYmxhbmstY2hhdC10b29sLWJ0biIgaWQ9IndlbGNvbWUtdG9vbC1jbGF1ZGUiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InRvb2wtaWNvbiI+JytKKCJ0ZXJtaW5hbCIse3NpemU6MTYsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj5cdTY1QjBcdTVFRkFcdTdFQzhcdTdBRUZcdTRGMUFcdThCREQ8L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJibGFuay1jaGF0LXRvb2wtYnRuIiBpZD0id2VsY29tZS10b29sLWNvZGV4IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ0b29sLWljb24gdG9vbC1pY29uLXRleHQiPlx1MjMxODwvc3Bhbj5cdTY1QjBcdTVFRkEgQ29kZXggXHU0RjFBXHU4QkREPC9idXR0b24+PGJ1dHRvbiBjbGFzcz0iYmxhbmstY2hhdC10b29sLWJ0biIgaWQ9IndlbGNvbWUtdG9vbC1zdHJ1Y3R1cmVkIiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ0b29sLWljb24iPicrSigiY2hhdCIse3NpemU6MTYsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj5cdTY1QjBcdTVFRkFcdTdFRDNcdTY3ODRcdTUzMTZcdTRGMUFcdThCREQ8L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJibGFuay1jaGF0LWN3ZC13cmFwIj48ZGl2IGNsYXNzPSJibGFuay1jaGF0LWN3ZCIgaWQ9ImJsYW5rLWNoYXQtY3dkIiByb2xlPSJidXR0b24iIHRhYmluZGV4PSIwIiB0aXRsZT0iXHU3MEI5XHU1MUZCXHU1MjA3XHU2MzYyXHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1Ij48c3BhbiBjbGFzcz0iYmxhbmstY2hhdC1jd2QtaWNvbiI+JytKKCJmb2xkZXIiLHtzaXplOjEzLHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImJsYW5rLWNoYXQtY3dkLXBhdGgiIGlkPSJibGFuay1jaGF0LWN3ZC1wYXRoIj4nK3AoWGUoKSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYmxhbmstY2hhdC1jd2QtYXJyb3ciIGlkPSJibGFuay1jaGF0LWN3ZC1hcnJvdyI+JytKKCJjaGV2cm9uRG93biIse3NpemU6MTEsc3Ryb2tlV2lkdGg6Mn0pKyc8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0iYmxhbmstY2hhdC1jd2QtZHJvcGRvd24gaGlkZGVuIiBpZD0iYmxhbmstY2hhdC1jd2QtZHJvcGRvd24iPjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImlucHV0LXBhbmVsJysoci5zZWxlY3RlZElkPyIiOiIgaGlkZGVuIikrJyI+PGRpdiBjbGFzcz0iY29tcG9zZXItdG9wLXJvdyI+PGRpdiBpZD0idG9kby1wcm9ncmVzcyIgY2xhc3M9InRvZG8tcHJvZ3Jlc3MgaGlkZGVuIj48ZGl2IGNsYXNzPSJ0b2RvLXByb2dyZXNzLWhlYWRlciIgaWQ9InRvZG8tcHJvZ3Jlc3MtdG9nZ2xlIj48ZGl2IGNsYXNzPSJ0b2RvLXByb2dyZXNzLWZpbGwiIGlkPSJ0b2RvLXByb2dyZXNzLWZpbGwiIGFyaWEtaGlkZGVuPSJ0cnVlIiBzdHlsZT0iLS1wcm9ncmVzczowIj48L2Rpdj48ZGl2IGNsYXNzPSJ0b2RvLXByb2dyZXNzLWxlZnQiPjxzcGFuIGNsYXNzPSJ0b2RvLXByb2dyZXNzLXJpbmciIGlkPSJ0b2RvLXByb2dyZXNzLXJpbmciIGFyaWEtaGlkZGVuPSJ0cnVlIiBzdHlsZT0iLS1wcm9ncmVzczowIj48c3ZnIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDM2IDM2Ij48Y2lyY2xlIGNsYXNzPSJ0b2RvLXJpbmctdHJhY2siIGN4PSIxOCIgY3k9IjE4IiByPSIxNS41IiBmaWxsPSJub25lIiBzdHJva2Utd2lkdGg9IjQiLz48Y2lyY2xlIGNsYXNzPSJ0b2RvLXJpbmctZmlsbCIgY3g9IjE4IiBjeT0iMTgiIHI9IjE1LjUiIGZpbGw9Im5vbmUiIHN0cm9rZS13aWR0aD0iNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PC9zdmc+PC9zcGFuPjxzcGFuIGNsYXNzPSJ0b2RvLXByb2dyZXNzLWNvdW50ZXIiIGlkPSJ0b2RvLXByb2dyZXNzLWNvdW50ZXIiPjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ0b2RvLXByb2dyZXNzLXRhc2std3JhcCI+PHNwYW4gY2xhc3M9InRvZG8tcHJvZ3Jlc3MtdGFzayIgaWQ9InRvZG8tcHJvZ3Jlc3MtdGFzayI+PC9zcGFuPjwvZGl2PjxzdmcgY2xhc3M9InRvZG8tcHJvZ3Jlc3MtY2hldnJvbiIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBvbHlsaW5lIHBvaW50cz0iNiAxNSAxMiA5IDE4IDE1Ii8+PC9zdmc+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0idG9kby1wcm9ncmVzcy1ib2R5IGhpZGRlbiIgaWQ9InRvZG8tcHJvZ3Jlc3MtYm9keSI+PHVsIGNsYXNzPSJ0b2RvLXByb2dyZXNzLWxpc3QiIGlkPSJ0b2RvLXByb2dyZXNzLWxpc3QiPjwvdWw+PC9kaXY+PC9kaXY+PGRpdiBpZD0icXVldWUtYmFyLWhvc3QiIGNsYXNzPSJxdWV1ZS1iYXItaG9zdCIgaGlkZGVuPjwvZGl2PjxkaXYgY2xhc3M9ImlucHV0LWNvbXBvc2VyJysoYT8iIGhhcy10ZXh0IjoiIikrJyI+PGRpdiBjbGFzcz0iY29tcG9zZXItc3RhdHVzLXJvdyIgaWQ9ImNvbXBvc2VyLXN0YXR1cy1yb3ciPicrUnYodCkrJzxzcGFuIGNsYXNzPSJwZXJtaXNzaW9uLWFjdGlvbnMgaGlkZGVuIiBpZD0icGVybWlzc2lvbi1hY3Rpb25zIj48c3BhbiBjbGFzcz0icGVybWlzc2lvbi1hY3Rpb25zLWxhYmVsIiBpZD0icGVybWlzc2lvbi1hY3Rpb25zLWxhYmVsIj5cdTdCNDlcdTVGODVcdTYzODhcdTY3NDM8L3NwYW4+PGJ1dHRvbiBpZD0iYXBwcm92ZS1wZXJtaXNzaW9uLWJ0biIgY2xhc3M9ImJ0biBidG4tcGVybWlzc2lvbiBidG4tcGVybWlzc2lvbi1hcHByb3ZlIiB0eXBlPSJidXR0b24iPlx1NjI3OVx1NTFDNjwvYnV0dG9uPjxidXR0b24gaWQ9ImRlbnktcGVybWlzc2lvbi1idG4iIGNsYXNzPSJidG4gYnRuLXBlcm1pc3Npb24gYnRuLXBlcm1pc3Npb24tZGVueSIgdHlwZT0iYnV0dG9uIj5cdTYyRDJcdTdFREQ8L2J1dHRvbj48L3NwYW4+Jyt0ZigpKyc8L2Rpdj48ZGl2IGNsYXNzPSJjb21wb3Nlci1tYWluLXJvdyI+PGRpdiBjbGFzcz0iY29tcG9zZXItYWN0aW9ucy1sZWZ0Ij48YnV0dG9uIGlkPSJhdHRhY2gtYnRuIiBjbGFzcz0iYnRuLWNpcmNsZSBidG4tY2lyY2xlLWFjdGlvbiIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU2NkY0XHU1OTFBIiBhcmlhLWxhYmVsPSJcdTY2RjRcdTU5MUEiIGFyaWEtaGFzcG9wdXA9Im1lbnUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj4nK0ooInBsdXMiLHtzaXplOjE4LHN0cm9rZVdpZHRoOjIuMn0pKyc8L2J1dHRvbj48aW5wdXQgdHlwZT0iZmlsZSIgaWQ9ImZpbGUtdXBsb2FkLWlucHV0IiBtdWx0aXBsZSB0YWJpbmRleD0iLTEiIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxcHg7aGVpZ2h0OjFweDtvcGFjaXR5OjA7b3ZlcmZsb3c6aGlkZGVuO2NsaXA6cmVjdCgwLDAsMCwwKTtwb2ludGVyLWV2ZW50czpub25lIj48L2Rpdj48ZGl2IGNsYXNzPSJjb21wb3Nlci1pbnB1dC13cmFwIj48dGV4dGFyZWEgaWQ9ImlucHV0LWJveCIgY2xhc3M9ImlucHV0LXRleHRhcmVhIiBwbGFjZWhvbGRlcj0iJytxbyh0LHIudGVybWluYWxJbnRlcmFjdGl2ZSkrJyIgcm93cz0iMSIgYXV0b2NvbXBsZXRlPSJvZmYiIGF1dG9jb3JyZWN0PSJvZmYiIGF1dG9jYXBpdGFsaXplPSJvZmYiIHNwZWxsY2hlY2s9ImZhbHNlIiBlbnRlcmtleWhpbnQ9InNlbmQiPicrcChhKSsnPC90ZXh0YXJlYT48YnV0dG9uIGlkPSJwcm9tcHQtb3B0aW1pemUtYnRuIiBjbGFzcz0icHJvbXB0LW9wdGltaXplLWJ0biIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU2M0QwXHU3OTNBXHU4QkNEXHU0RjE4XHU1MzE2XHVGRjA4QUlcdUZGMDkiIGFyaWEtbGFiZWw9Ilx1NjNEMFx1NzkzQVx1OEJDRFx1NEYxOFx1NTMxNiI+PHN2ZyBjbGFzcz0icHJvbXB0LW9wdGltaXplLWljb24iIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNMTIgM2wxLjYgNC40TDE4IDlsLTQuNCAxLjZMMTIgMTVsLTEuNi00LjRMNiA5bDQuNC0xLjZ6IiBmaWxsPSJjdXJyZW50Q29sb3IiIG9wYWNpdHk9IjAuMjUiLz48cGF0aCBkPSJNMTIgM2wxLjYgNC40TDE4IDlsLTQuNCAxLjZMMTIgMTVsLTEuNi00LjRMNiA5bDQuNC0xLjZ6Ii8+PHBhdGggZD0iTTE5IDE0bC43IDEuOUwyMS42IDE3bC0xLjkuN0wxOSAxOS42bC0uNy0xLjlMMTYuNCAxN2wxLjktLjd6IiBmaWxsPSJjdXJyZW50Q29sb3IiIG9wYWNpdHk9IjAuMzUiLz48cGF0aCBkPSJNNSA0bC41IDEuNEw3IDZsLTEuNS42TDUgOGwtLjUtMS40TDMgNmwxLjUtLjZ6IiBmaWxsPSJjdXJyZW50Q29sb3IiIG9wYWNpdHk9IjAuMzUiLz48L3N2Zz48c3BhbiBjbGFzcz0icHJvbXB0LW9wdGltaXplLXNwaW5uZXIiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC9idXR0b24+PGRpdiBjbGFzcz0idm9pY2UtaW5wdXQtbW9kZSBoaWRkZW4iIGlkPSJ2b2ljZS1pbnB1dC1tb2RlIj48YnV0dG9uIGlkPSJ2b2ljZS1yZWNvcmQtYnRuIiBjbGFzcz0idm9pY2UtcmVjb3JkLWJ0biIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idm9pY2UtcmVjb3JkLXB1bHNlIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjxzcGFuIGNsYXNzPSJ2b2ljZS1yZWNvcmQtbGFiZWwiPlx1NjMwOVx1NEY0RiBcdThCRjRcdThCREQ8L3NwYW4+PC9idXR0b24+PGJ1dHRvbiBpZD0idm9pY2UtY2FuY2VsLWJ0biIgY2xhc3M9InZvaWNlLWNhbmNlbC1idG4iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1OTAwMFx1NTFGQVx1OEJFRFx1OTdGM1x1NkEyMVx1NUYwRiIgYXJpYS1sYWJlbD0iXHU5MDAwXHU1MUZBXHU4QkVEXHU5N0YzXHU2QTIxXHU1RjBGIj4nK0ooIngiLHtzaXplOjE0LHN0cm9rZVdpZHRoOjJ9KSsnPC9idXR0b24+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iY29tcG9zZXItYWN0aW9ucy1yaWdodCI+PGJ1dHRvbiBpZD0ic3RvcC1idXR0b24iIGNsYXNzPSJidG4tY2lyY2xlIGJ0bi1jaXJjbGUtc3RvcCBoaWRkZW4iIHRpdGxlPSJcdTUwNUNcdTZCNjIiPjxzdmcgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMTYgMTYiIGZpbGw9ImN1cnJlbnRDb2xvciI+PHJlY3QgeD0iMyIgeT0iMyIgd2lkdGg9IjEwIiBoZWlnaHQ9IjEwIiByeD0iMiIvPjwvc3ZnPjwvYnV0dG9uPjxidXR0b24gaWQ9InNlbmQtaW5wdXQtYnV0dG9uIiBjbGFzcz0iYnRuLWNpcmNsZSBidG4tY2lyY2xlLXNlbmQiIHRpdGxlPSJcdTUzRDFcdTkwMDEiPjxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48bGluZSB4MT0iMjIiIHkxPSIyIiB4Mj0iMTEiIHkyPSIxMyIvPjxwb2x5Z29uIHBvaW50cz0iMjIgMiAxNSAyMiAxMSAxMyAyIDkgMjIgMiIvPjwvc3ZnPjwvYnV0dG9uPjwvZGl2PjwvZGl2PjxkaXYgaWQ9ImF0dGFjaG1lbnQtcHJldmlldyIgY2xhc3M9ImF0dGFjaG1lbnQtcHJldmlldyBoaWRkZW4iPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImNvbXBvc2VyLXBsdXMtcG9wb3ZlciBoaWRkZW4iIGlkPSJjb21wb3Nlci1wbHVzLXBvcG92ZXIiIHJvbGU9Im1lbnUiIGFyaWEtbGFiZWw9Ilx1NjZGNFx1NTkxQVx1NjRDRFx1NEY1QyI+PGJ1dHRvbiBjbGFzcz0icGx1cy1wb3BvdmVyLWl0ZW0iIGlkPSJwbHVzLWF0dGFjaC1pdGVtIiB0eXBlPSJidXR0b24iIHJvbGU9Im1lbnVpdGVtIj4nK0ooInBhcGVyY2xpcCIse3NpemU6MTQsc3Ryb2tlV2lkdGg6MS44LGNsczoicGx1cy1wb3BvdmVyLWljb24ifSkrJzxzcGFuIGNsYXNzPSJwbHVzLXBvcG92ZXItbGFiZWwiPlx1NEUwQVx1NEYyMFx1OTY0NFx1NEVGNjwvc3Bhbj48L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJwbHVzLXBvcG92ZXItaXRlbScrKHIudGVybWluYWxJbnRlcmFjdGl2ZT8iIGlzLW9uIjoiIikrJyIgaWQ9InRlcm1pbmFsLWludGVyYWN0aXZlLXRvZ2dsZS10b3AiIHR5cGU9ImJ1dHRvbiIgcm9sZT0ibWVudWl0ZW1jaGVja2JveCIgYXJpYS1jaGVja2VkPSInKyhyLnRlcm1pbmFsSW50ZXJhY3RpdmU/InRydWUiOiJmYWxzZSIpKyciPicrSigia2V5Ym9hcmQiLHtzaXplOjE0LHN0cm9rZVdpZHRoOjEuOCxjbHM6InBsdXMtcG9wb3Zlci1pY29uIn0pKyc8c3BhbiBjbGFzcz0icGx1cy1wb3BvdmVyLWxhYmVsIj5cdTdFQzhcdTdBRUZcdTRFQTRcdTRFOTI8L3NwYW4+PHNwYW4gY2xhc3M9InBsdXMtcG9wb3Zlci10b2dnbGUtc3RhdGUiPicrKHIudGVybWluYWxJbnRlcmFjdGl2ZT8iXHU1RjAwIjoiXHU1MTczIikrJzwvc3Bhbj48L2J1dHRvbj48ZGl2IGNsYXNzPSJwbHVzLXBvcG92ZXItc2VwIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9kaXY+PGRpdiBjbGFzcz0icGx1cy1wb3BvdmVyLXRyaW8td3JhcCI+Jyt6YSh0LHtraW5kOiJwb3BvdmVyIn0pKyc8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJ2b2ljZS10cmFuc2NyaXB0LWJ1YmJsZSBoaWRkZW4iIGlkPSJ2b2ljZS10cmFuc2NyaXB0LWJ1YmJsZSIgYXJpYS1saXZlPSJwb2xpdGUiPjxkaXYgY2xhc3M9InZvaWNlLXRyYW5zY3JpcHQtdGV4dCIgaWQ9InZvaWNlLXRyYW5zY3JpcHQtdGV4dCI+PC9kaXY+PGRpdiBjbGFzcz0idm9pY2UtdHJhbnNjcmlwdC1oaW50IiBpZD0idm9pY2UtdHJhbnNjcmlwdC1oaW50Ij48c3BhbiBjbGFzcz0idm9pY2Utd2F2ZSIgYXJpYS1oaWRkZW49InRydWUiPjxpPjwvaT48aT48L2k+PGk+PC9pPjxpPjwvaT48L3NwYW4+PHNwYW4gY2xhc3M9InZvaWNlLXRyYW5zY3JpcHQtc3RhdHVzIiBpZD0idm9pY2UtdHJhbnNjcmlwdC1zdGF0dXMiPlx1NkI2M1x1NTcyOFx1ODA0Nlx1NTQyQ1x1MjAyNlx1NEUwQVx1NkVEMVx1NTNENlx1NkQ4ODwvc3Bhbj48L2Rpdj48c3BhbiBjbGFzcz0idm9pY2UtYnViYmxlLWFycm93IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvZGl2PjxwIGlkPSJhY3Rpb24tZXJyb3IiIGNsYXNzPSJlcnJvci1tZXNzYWdlIGhpZGRlbiI+PC9wPjwvZGl2PjxzZWN0aW9uIGlkPSJmb2xkZXItcGlja2VyLW1vZGFsIiBjbGFzcz0ibW9kYWwtYmFja2Ryb3AgaGlkZGVuIj48ZGl2IGNsYXNzPSJtb2RhbCBmb2xkZXItcGlja2VyLW1vZGFsIj48ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIiPjxoMiBjbGFzcz0ibW9kYWwtdGl0bGUiPlx1OTAwOVx1NjJFOVx1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NTwvaDI+PGJ1dHRvbiBpZD0iY2xvc2UtZm9sZGVyLXBpY2tlciIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLWljb24gbW9kYWwtY2xvc2UtYnRuIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NTE3M1x1OTVFRCI+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48bGluZSB4MT0iNiIgeTE9IjYiIHgyPSIxOCIgeTI9IjE4Ii8+PGxpbmUgeDE9IjE4IiB5MT0iNiIgeDI9IjYiIHkyPSIxOCIvPjwvc3ZnPjwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9Im1vZGFsLWJvZHkiPjxkaXYgY2xhc3M9ImZvbGRlci1waWNrZXItcXVpY2stcm93Ij48YnV0dG9uIGNsYXNzPSJmb2xkZXItcGlja2VyLXF1aWNrLWJ0biBidG4td2l0aC1pY29uIiBkYXRhLXBhdGg9Ii90bXAiPicrSigidHJhc2giLHtzaXplOjEzLHN0cm9rZVdpZHRoOjEuN30pKyc8c3Bhbj5cdTRFMzRcdTY1RjZcdTc2RUVcdTVGNTU8L3NwYW4+PC9idXR0b24+PGJ1dHRvbiBjbGFzcz0iZm9sZGVyLXBpY2tlci1xdWljay1idG4gYnRuLXdpdGgtaWNvbiIgZGF0YS1wYXRoPSIvIj4nK0ooImZvbGRlciIse3NpemU6MTMsc3Ryb2tlV2lkdGg6MS43fSkrJzxzcGFuPlx1NjgzOVx1NzZFRVx1NUY1NTwvc3Bhbj48L2J1dHRvbj48L2Rpdj48ZGl2IGlkPSJmb2xkZXItYnJlYWRjcnVtYiIgY2xhc3M9ImZvbGRlci1icmVhZGNydW1iIj48L2Rpdj48ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyIj48c3BhbiBjbGFzcz0iZm9sZGVyLXBpY2tlci1pY29uIj4nK0ooImZvbGRlciIse3NpemU6MTUsc3Ryb2tlV2lkdGg6MS43fSkrJzwvc3Bhbj48aW5wdXQgdHlwZT0idGV4dCIgaWQ9ImZvbGRlci1waWNrZXItaW5wdXQiIGNsYXNzPSJmb2xkZXItcGlja2VyLWlucHV0IiB2YWx1ZT0iIiBwbGFjZWhvbGRlcj0iXHU4RjkzXHU1MTY1XHU2MjE2XHU5MDA5XHU2MkU5XHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1Li4uIiBhdXRvY29tcGxldGU9Im9mZiIgYXV0b2NvcnJlY3Q9Im9mZiIgYXV0b2NhcGl0YWxpemU9Im9mZiIgc3BlbGxjaGVjaz0iZmFsc2UiIC8+PC9kaXY+PGRpdiBpZD0iZm9sZGVyLXBpY2tlci1kcm9wZG93biIgY2xhc3M9ImZvbGRlci1waWNrZXItZHJvcGRvd24gaGlkZGVuIj48L2Rpdj48ZGl2IGlkPSJmb2xkZXItcGlja2VyLXZhbGlkYXRpb24iIGNsYXNzPSJmb2xkZXItcGlja2VyLXZhbGlkYXRpb24iPjwvZGl2PjwvZGl2PjwvZGl2Pjwvc2VjdGlvbj48L21haW4+PC9kaXY+PC9kaXY+JytMYygpK3djKCkrQ2MoKStqdSgpfWZ1bmN0aW9uIFBlKGUsdCl7aWYoZSl7ZS50ZXh0Q29udGVudD10LGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik7Zm9yKHZhciBuPWUucHJldmlvdXNFbGVtZW50U2libGluZztuOyl7aWYobi50YWdOYW1lPT09IklOUFVUIil7bi5zZXRBdHRyaWJ1dGUoImRhdGEtZXJyb3IiLCJ0cnVlIik7YnJlYWt9bj1uLnByZXZpb3VzRWxlbWVudFNpYmxpbmd9fX1mdW5jdGlvbiB1aShlKXtpZihlKXtlLnRleHRDb250ZW50PSIiLGUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIik7Zm9yKHZhciB0PWUucHJldmlvdXNFbGVtZW50U2libGluZzt0Oyl7aWYodC50YWdOYW1lPT09IklOUFVUIil7dC5zZXRBdHRyaWJ1dGUoImRhdGEtZXJyb3IiLCJmYWxzZSIpO2JyZWFrfXQ9dC5wcmV2aW91c0VsZW1lbnRTaWJsaW5nfX19ZnVuY3Rpb24gayhlLHQpe3ZhciBuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO24uY2xhc3NOYW1lPSJ0b2FzdC1tZXNzYWdlIisodD09PSJlcnJvciI/IiB0b2FzdC1lcnJvciI6IiIpLHQhPT0iZXJyb3IiJiYobi5zdHlsZS5iYWNrZ3JvdW5kPSJ2YXIoLS1hY2NlbnQpIixuLnN0eWxlLmNvbG9yPSJ3aGl0ZSIpLG4udGV4dENvbnRlbnQ9ZSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKG4pLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtuLnJlbW92ZSgpfSx0PT09ImVycm9yIj80ZTM6MjIwMCl9dmFyIGJyPVtdO2Z1bmN0aW9uIGFmKGUpe3N3aXRjaChlKXtjYXNlIndhcm5pbmciOnJldHVybiIhIjtjYXNlImRhbmdlciI6cmV0dXJuIlx1MjZBMFx1RkUwRSI7Y2FzZSJzdWNjZXNzIjpyZXR1cm4iXHUyNzEzIjtjYXNlInF1ZXN0aW9uIjpyZXR1cm4iPyI7ZGVmYXVsdDpyZXR1cm4iaSJ9fWZ1bmN0aW9uIHJuKGUpe2U9ZXx8e307dmFyIHQ9ZS5kaXNtaXNzYWJsZSE9PSExLG49ZS50eXBlfHwiaW5mbyIsaT1lLmljb258fGFmKG4pLGE9ISFlLmlucHV0O3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbih1KXt2YXIgcz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtzLmNsYXNzTmFtZT0id2FuZC1kaWFsb2ctYmFja2Ryb3AiLHMuc2V0QXR0cmlidXRlKCJyb2xlIiwicHJlc2VudGF0aW9uIik7dmFyIG89ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7by5jbGFzc05hbWU9IndhbmQtZGlhbG9nIixvLnNldEF0dHJpYnV0ZSgicm9sZSIsYT8iZGlhbG9nIjoiYWxlcnRkaWFsb2ciKSxvLnNldEF0dHJpYnV0ZSgiYXJpYS1tb2RhbCIsInRydWUiKSxlLnRpdGxlJiZvLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsZS50aXRsZSk7dmFyIGw9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7bC5jbGFzc05hbWU9IndhbmQtZGlhbG9nLWhlYWRlciI7dmFyIGM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Yy5jbGFzc05hbWU9IndhbmQtZGlhbG9nLWljb24gIituLGMudGV4dENvbnRlbnQ9aSxsLmFwcGVuZENoaWxkKGMpO3ZhciBmPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2lmKGYuY2xhc3NOYW1lPSJ3YW5kLWRpYWxvZy10ZXh0d3JhcCIsZS50aXRsZSl7dmFyIGQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7ZC5jbGFzc05hbWU9IndhbmQtZGlhbG9nLXRpdGxlIixkLnRleHRDb250ZW50PWUudGl0bGUsZi5hcHBlbmRDaGlsZChkKX1pZihlLm1lc3NhZ2Upe3ZhciB2PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3YuY2xhc3NOYW1lPSJ3YW5kLWRpYWxvZy1tZXNzYWdlIix2LnRleHRDb250ZW50PWUubWVzc2FnZSxmLmFwcGVuZENoaWxkKHYpfWwuYXBwZW5kQ2hpbGQoZiksby5hcHBlbmRDaGlsZChsKTt2YXIgZz1udWxsO2lmKGEpe3ZhciBoPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2guY2xhc3NOYW1lPSJ3YW5kLWRpYWxvZy1ib2R5IixnPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImlucHV0IiksZy50eXBlPSJ0ZXh0IixnLmNsYXNzTmFtZT0id2FuZC1kaWFsb2ctaW5wdXQiLGUuaW5wdXRQbGFjZWhvbGRlciYmKGcucGxhY2Vob2xkZXI9ZS5pbnB1dFBsYWNlaG9sZGVyKSxlLmlucHV0VmFsdWUhPW51bGwmJihnLnZhbHVlPVN0cmluZyhlLmlucHV0VmFsdWUpKSxoLmFwcGVuZENoaWxkKGcpLG8uYXBwZW5kQ2hpbGQoaCl9dmFyIG09ZS5idXR0b25zJiZlLmJ1dHRvbnMubGVuZ3RoP2UuYnV0dG9uczpbe2xhYmVsOiJcdTU5N0QiLHZhbHVlOiEwLGtpbmQ6InByaW1hcnkiLGF1dG9mb2N1czohMH1dLGI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Yi5jbGFzc05hbWU9IndhbmQtZGlhbG9nLWZvb3RlciI7dmFyIHc9bnVsbCxFPW51bGw7ZnVuY3Rpb24gQih4KXtpZighcy5jbGFzc0xpc3QuY29udGFpbnMoImNsb3NpbmciKSl7cy5jbGFzc0xpc3QuYWRkKCJjbG9zaW5nIiksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsRiwhMCk7dmFyIFM9YnIuaW5kZXhPZihCKTtTPj0wJiZici5zcGxpY2UoUywxKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cy5wYXJlbnROb2RlJiZzLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQocyksdSh4KX0sMTYwKX19bS5mb3JFYWNoKGZ1bmN0aW9uKHgpe3ZhciBTPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJ1dHRvbiIpLEg9eC5raW5kfHwic2Vjb25kYXJ5IjtTLmNsYXNzTmFtZT0iYnRuIGJ0bi0iK0gsUy50eXBlPSJidXR0b24iLFMudGV4dENvbnRlbnQ9eC5sYWJlbCxTLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2EmJngua2luZD09PSJwcmltYXJ5Ij9CKGc/Zy52YWx1ZToiIik6Qih4LnZhbHVlKX0pLHd8fCh3PVMpLHguYXV0b2ZvY3VzJiYoRT1TKSxiLmFwcGVuZENoaWxkKFMpfSksby5hcHBlbmRDaGlsZChiKSxzLmFwcGVuZENoaWxkKG8pLHMuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHgpe3gudGFyZ2V0PT09cyYmdCYmQihlLmNhbmNlbFZhbHVlIT09dm9pZCAwP2UuY2FuY2VsVmFsdWU6YT9udWxsOiExKX0pO2Z1bmN0aW9uIEYoeCl7aWYoYnJbYnIubGVuZ3RoLTFdPT09Qil7aWYoeC5rZXk9PT0iRXNjYXBlIiYmdCl7eC5wcmV2ZW50RGVmYXVsdCgpLHguc3RvcFByb3BhZ2F0aW9uKCksQihlLmNhbmNlbFZhbHVlIT09dm9pZCAwP2UuY2FuY2VsVmFsdWU6YT9udWxsOiExKTtyZXR1cm59aWYoeC5rZXk9PT0iRW50ZXIiKXtmb3IodmFyIFM9bnVsbCxIPTA7SDxtLmxlbmd0aDtIKyspaWYobVtIXS5raW5kPT09InByaW1hcnkiKXtTPW1bSF07YnJlYWt9U3x8KFM9bVttLmxlbmd0aC0xXSksUyYmKHgucHJldmVudERlZmF1bHQoKSx4LnN0b3BQcm9wYWdhdGlvbigpLGEmJlMua2luZD09PSJwcmltYXJ5Ij9CKGc/Zy52YWx1ZToiIik6QihTLnZhbHVlKSl9fX1kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixGLCEwKSxici5wdXNoKEIpLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocykscmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7aWYoYSYmZyl7Zy5mb2N1cygpO3RyeXtnLnNlbGVjdCgpfWNhdGNoe319ZWxzZSBFP0UuZm9jdXMoKTp3JiZ3LmZvY3VzKCl9KX0pfWZ1bmN0aW9uIHVmKGUsdCl7cmV0dXJuIHQ9dHx8e30scm4oe3RpdGxlOnQudGl0bGV8fCJcdTYzRDBcdTc5M0EiLG1lc3NhZ2U6dHlwZW9mIGU9PSJzdHJpbmciP2U6U3RyaW5nKGU/PyIiKSx0eXBlOnQudHlwZXx8ImluZm8iLGJ1dHRvbnM6W3tsYWJlbDp0Lm9rTGFiZWx8fCJcdTU5N0QiLHZhbHVlOnZvaWQgMCxraW5kOiJwcmltYXJ5IixhdXRvZm9jdXM6ITB9XX0pfWZ1bmN0aW9uIERzKGUsdCl7dD10fHx7fTt2YXIgbj0hIXQuZGFuZ2VyfHx0LnR5cGU9PT0iZGFuZ2VyIjtyZXR1cm4gcm4oe3RpdGxlOnQudGl0bGV8fChuPyJcdTc4NkVcdThCQTRcdTY0Q0RcdTRGNUMiOiJcdThCRjdcdTc4NkVcdThCQTQiKSxtZXNzYWdlOnR5cGVvZiBlPT0ic3RyaW5nIj9lOlN0cmluZyhlPz8iIiksdHlwZTp0LnR5cGV8fChuPyJkYW5nZXIiOiJxdWVzdGlvbiIpLGNhbmNlbFZhbHVlOiExLGJ1dHRvbnM6W3tsYWJlbDp0LmNhbmNlbExhYmVsfHwiXHU1M0Q2XHU2RDg4Iix2YWx1ZTohMSxraW5kOiJzZWNvbmRhcnkifSx7bGFiZWw6dC5va0xhYmVsfHwobj8iXHU1MjIwXHU5NjY0IjoiXHU3ODZFXHU1QjlBIiksdmFsdWU6ITAsa2luZDpuPyJkYW5nZXIiOiJwcmltYXJ5IixhdXRvZm9jdXM6IW59XX0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGk9PT0hMH0pfWZ1bmN0aW9uIHNmKGUsdCxuKXtyZXR1cm4gbj1ufHx7fSxybih7dGl0bGU6bi50aXRsZXx8Ilx1OEJGN1x1OEY5M1x1NTE2NSIsbWVzc2FnZTp0eXBlb2YgZT09InN0cmluZyI/ZTpTdHJpbmcoZT8/IiIpLHR5cGU6bi50eXBlfHwicXVlc3Rpb24iLGlucHV0OiEwLGlucHV0VmFsdWU6dD09bnVsbD8iIjpTdHJpbmcodCksaW5wdXRQbGFjZWhvbGRlcjpuLnBsYWNlaG9sZGVyfHwiIixjYW5jZWxWYWx1ZTpudWxsLGJ1dHRvbnM6W3tsYWJlbDpuLmNhbmNlbExhYmVsfHwiXHU1M0Q2XHU2RDg4Iix2YWx1ZTpudWxsLGtpbmQ6InNlY29uZGFyeSJ9LHtsYWJlbDpuLm9rTGFiZWx8fCJcdTc4NkVcdTVCOUEiLHZhbHVlOnZvaWQgMCxraW5kOiJwcmltYXJ5In1dfSl9d2luZG93LndhbmRBbGVydD11Zix3aW5kb3cud2FuZENvbmZpcm09RHMsd2luZG93LndhbmRQcm9tcHQ9c2Ysd2luZG93Lm9wZW5XYW5kRGlhbG9nPXJuO3ZhciBYdD1bXSxrcz0wLG9mPTYsbGY9MTY7ZnVuY3Rpb24gZGEoZSl7aWYoKGUuYWN0aW9uTGFiZWx8fGUucGxheVNvdW5kKSYmVHMoKSwhci5ub3RpZkJ1YmJsZSlyZXR1cm57ZGlzbWlzczpmdW5jdGlvbigpe319O3ZhciB0PSsra3Msbj1lLnR5cGV8fCJpbmZvIixpPWUuaWNvbnx8KG49PT0id2FybmluZyI/IiEiOm49PT0ic3VjY2VzcyI/Ilx1MjcxMyI6ImkiKSxhPWUuZHVyYXRpb24hPT12b2lkIDA/ZS5kdXJhdGlvbjo4ZTMsdT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt1LmNsYXNzTmFtZT0ibm90aWZpY2F0aW9uLWJ1YmJsZSIsdS5zZXRBdHRyaWJ1dGUoImRhdGEtbmlkIixTdHJpbmcodCkpO3ZhciBzPSc8ZGl2IGNsYXNzPSJub3RpZmljYXRpb24tYnViYmxlLWhlYWRlciI+PHNwYW4gY2xhc3M9Im5vdGlmaWNhdGlvbi1idWJibGUtaWNvbiAnK24rJyI+JytpKyc8L3NwYW4+PHNwYW4gY2xhc3M9Im5vdGlmaWNhdGlvbi1idWJibGUtdGl0bGUiPicrcChlLnRpdGxlKSsnPC9zcGFuPjxidXR0b24gY2xhc3M9Im5vdGlmaWNhdGlvbi1idWJibGUtY2xvc2UiIHRpdGxlPSJcdTUxNzNcdTk1RUQiPlx4RDc8L2J1dHRvbj48L2Rpdj4nLG89ZS5ib2R5Pyc8ZGl2IGNsYXNzPSJub3RpZmljYXRpb24tYnViYmxlLWJvZHkiPicrcChlLmJvZHkpLnJlcGxhY2UoL1xuL2csIjxicj4iKSsiPC9kaXY+IjoiIixsPWUuYWN0aW9uTGFiZWw/JzxkaXYgY2xhc3M9Im5vdGlmaWNhdGlvbi1idWJibGUtYWN0aW9ucyI+PGJ1dHRvbiBjbGFzcz0icHJpbWFyeSI+JytwKGUuYWN0aW9uTGFiZWwpKyI8L2J1dHRvbj48L2Rpdj4iOiIiO3UuaW5uZXJIVE1MPXMrbytsLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodSk7dmFyIGM9e2lkOnQsZWw6dX07WHQucHVzaChjKSxmYSgpO3ZhciBmPXUucXVlcnlTZWxlY3RvcigiLm5vdGlmaWNhdGlvbi1idWJibGUtY2xvc2UiKTtpZihmJiYoZi5vbmNsaWNrPWZ1bmN0aW9uKCl7RXIodCl9KSxlLmFjdGlvbkxhYmVsJiZlLmFjdGlvbil7dmFyIGQ9dS5xdWVyeVNlbGVjdG9yKCIubm90aWZpY2F0aW9uLWJ1YmJsZS1hY3Rpb25zIGJ1dHRvbiIpO2QmJihkLm9uY2xpY2s9ZnVuY3Rpb24oKXtlLmFjdGlvbigpLEVyKHQpfSl9dmFyIHY9bnVsbDtyZXR1cm4gYT4wJiYodj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7RXIodCl9LGEpKSx7ZGlzbWlzczpmdW5jdGlvbigpe0VyKHQpfX19ZnVuY3Rpb24gRXIoZSl7Zm9yKHZhciB0PS0xLG49MDtuPFh0Lmxlbmd0aDtuKyspaWYoWHRbbl0uaWQ9PT1lKXt0PW47YnJlYWt9aWYodCE9PS0xKXt2YXIgaT1YdFt0XTtpLmVsLmNsYXNzTGlzdC5hZGQoInNsaWRlLW91dCIpLFh0LnNwbGljZSh0LDEpLGZhKCksc2V0VGltZW91dChmdW5jdGlvbigpe2kuZWwucGFyZW50Tm9kZSYmaS5lbC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGkuZWwpfSwzMDApfX1mdW5jdGlvbiBmYSgpe2Zvcih2YXIgZT1sZix0PTA7dDxYdC5sZW5ndGg7dCsrKVh0W3RdLmVsLnN0eWxlLnRvcD1lKyJweCIsZSs9WHRbdF0uZWwub2Zmc2V0SGVpZ2h0K29mfXRyeXtNcz1uYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9XYW5kUGxhdGZvcm1cL21hY09TLyksbWE9d2luZG93LndlYmtpdCYmd2luZG93LndlYmtpdC5tZXNzYWdlSGFuZGxlcnMmJndpbmRvdy53ZWJraXQubWVzc2FnZUhhbmRsZXJzLndhbmROYXRpdmV8fG51bGwsTXMmJm1hJiZ0eXBlb2Ygd2luZG93LldhbmROYXRpdmU+InUiJiYod2luZG93LldhbmROYXRpdmU9e2Rvd25sb2FkVXBkYXRlOmZ1bmN0aW9uKGUsdCxuKXt0cnl7bWEucG9zdE1lc3NhZ2Uoe3R5cGU6ImRvd25sb2FkVXBkYXRlIix1cmw6U3RyaW5nKGV8fCIiKSxmaWxlTmFtZTpTdHJpbmcodHx8IndhbmQtdXBkYXRlLmRtZyIpLHNvdXJjZTpTdHJpbmcobnx8ImxvY2FsIil9KX1jYXRjaHt9fX0pfWNhdGNoe312YXIgTmU9dHlwZW9mIFdhbmROYXRpdmU8InUiJiZ0eXBlb2YgV2FuZE5hdGl2ZS5zZW5kTm90aWZpY2F0aW9uPT0iZnVuY3Rpb24iLEZyPW5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL1dhbmRBcHBcLyhbXlxzXSspLyksQXM9L1dhbmRQbGF0Zm9ybVwvbWFjT1MvLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCksY2Y9ISFGciYmIUFzLHhuPUZyJiZjZj9GclsxXTpudWxsLGFuPUZyJiZBcz9GclsxXTpudWxsO2Z1bmN0aW9uIEpuKGUpe2lmKCEoIU5lfHx0eXBlb2YgV2FuZE5hdGl2ZS52aWJyYXRlIT0iZnVuY3Rpb24iKSl0cnl7V2FuZE5hdGl2ZS52aWJyYXRlKGV8fCJsaWdodCIpfWNhdGNoe319ZnVuY3Rpb24gcGEoKXtpZihOZSl7dmFyIGU9ci5zZXNzaW9ucy5zb21lKGZ1bmN0aW9uKHQpe3JldHVybiF0LmFyY2hpdmVkJiYodC5zdGF0dXM9PT0icnVubmluZyJ8fHQuc3RhdHVzPT09InRoaW5raW5nInx8dC5zdGF0dXM9PT0iaW5pdGlhbGl6aW5nIil9KTtpZih0eXBlb2YgV2FuZE5hdGl2ZS5zZXRLZWVwU2NyZWVuT249PSJmdW5jdGlvbiIpdHJ5e1dhbmROYXRpdmUuc2V0S2VlcFNjcmVlbk9uKGUpfWNhdGNoe31pZihlKXtpZih0eXBlb2YgV2FuZE5hdGl2ZS5zdGFydEtlZXBBbGl2ZT09ImZ1bmN0aW9uIil0cnl7V2FuZE5hdGl2ZS5zdGFydEtlZXBBbGl2ZSgpfWNhdGNoe319ZWxzZSBpZih0eXBlb2YgV2FuZE5hdGl2ZS5zdG9wS2VlcEFsaXZlPT0iZnVuY3Rpb24iKXRyeXtXYW5kTmF0aXZlLnN0b3BLZWVwQWxpdmUoKX1jYXRjaHt9fX1mdW5jdGlvbiBzaSgpe2lmKE5lJiZ0eXBlb2YgV2FuZE5hdGl2ZS5nZXRQZXJtaXNzaW9uPT0iZnVuY3Rpb24iKXRyeXtyZXR1cm4gV2FuZE5hdGl2ZS5nZXRQZXJtaXNzaW9uKCl9Y2F0Y2h7fXJldHVybiBudWxsfWZ1bmN0aW9uIGRmKCl7aWYoTmUpe3ZhciBlPXNpKCk7aWYoZT09PSJkZWZhdWx0Inx8ZT09PSJkZW5pZWQiKXRyeXtXYW5kTmF0aXZlLnJlcXVlc3RQZXJtaXNzaW9uKCl9Y2F0Y2h7fXJldHVybn10eXBlb2YgTm90aWZpY2F0aW9uPCJ1IiYmTm90aWZpY2F0aW9uLnBlcm1pc3Npb249PT0iZGVmYXVsdCImJk5vdGlmaWNhdGlvbi5yZXF1ZXN0UGVybWlzc2lvbigpfWZ1bmN0aW9uIGZmKGUpe3ZhciB0PWV8fHt9O3JldHVybiEodC5vbmx5V2hlbkhpZGRlbiYmIWRvY3VtZW50LmhpZGRlbnx8dC5za2lwV2hlblNlbGVjdGVkU2Vzc2lvbklkJiZ0LnNraXBXaGVuU2VsZWN0ZWRTZXNzaW9uSWQ9PT1yLnNlbGVjdGVkSWQmJiFkb2N1bWVudC5oaWRkZW4pfWZ1bmN0aW9uIHBmKGUsdCl7aWYoIWV8fCF0fHx0PD0wKXJldHVybiExO3ZhciBuPXIubm90aWZpY2F0aW9uSGlzdG9yeVtlXXx8MCxpPURhdGUubm93KCk7cmV0dXJuIGktbjx0PyEwOihyLm5vdGlmaWNhdGlvbkhpc3RvcnlbZV09aSwhMSl9ZnVuY3Rpb24gb2koZSx0LG4pe3ZhciBpPW58fHt9LGE9aS50YWd8fCIiO2lmKGZmKGkpJiYhcGYoYSxpLm1pbkludGVydmFsTXN8fDApKXtpZihOZSl7dmFyIHU9c2koKTtpZih1IT09ImdyYW50ZWQiKXJldHVybjt0cnl7dmFyIHM9YTtpLmtpbmQmJihzPWkua2luZCsoYT8iOiIrYToiIikpLFdhbmROYXRpdmUuc2VuZE5vdGlmaWNhdGlvbihlfHwiV2FuZCIsdHx8IiIsc3x8IiIpfWNhdGNoe31yZXR1cm59aWYoISh0eXBlb2YgTm90aWZpY2F0aW9uPiJ1Inx8Tm90aWZpY2F0aW9uLnBlcm1pc3Npb24hPT0iZ3JhbnRlZCIpJiZkb2N1bWVudC5oaWRkZW4pdHJ5e3ZhciBvPW5ldyBOb3RpZmljYXRpb24oZSx7Ym9keTp0fHwiIixpY29uOmkuaWNvbnx8Ii9mYXZpY29uLmljbyIsdGFnOmF8fHZvaWQgMH0pO28ub25jbGljaz1mdW5jdGlvbigpe3dpbmRvdy5mb2N1cygpLG8uY2xvc2UoKSxpLm9uQ2xpY2smJmkub25DbGljaygpfSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7by5jbG9zZSgpfSwxZTQpfWNhdGNoe319fWZ1bmN0aW9uIHZmKGUsdCl7aWYoISghdHx8IXQudGl0bGUpKXt2YXIgbj1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1lfSk7aWYobil7dmFyIGk9bi5zdW1tYXJ5fHxuLmNvbW1hbmR8fGU7b2koIlx1NEVGQlx1NTJBMVx1OEZEQlx1ODg0Q1x1NEUyRCIsaStgCmArdC50aXRsZSx7a2luZDoidGFzayIsdGFnOiJ3YW5kLXRhc2stIitlKyItIit0LnRpdGxlLG1pbkludGVydmFsTXM6OWU0LG9ubHlXaGVuSGlkZGVuOiEwLHNraXBXaGVuU2VsZWN0ZWRTZXNzaW9uSWQ6ZSxvbkNsaWNrOmZ1bmN0aW9uKCl7ZSE9PXIuc2VsZWN0ZWRJZCYmV3QoZSl9fSl9fX1mdW5jdGlvbiB4cyhlLHQpe0VmKGV8fCItIix0fHwiLSIpLG9pKCJXYW5kIFx1NTNEMVx1NzNCMFx1NjVCMFx1NzI0OFx1NjcyQyIsIlx1NUY1M1x1NTI0RCAiKyhlfHwiLSIpKyIgXHUyMTkyIFx1NjcwMFx1NjVCMCAiKyh0fHwiLSIpLHtraW5kOiJ1cGRhdGUiLHRhZzoid2FuZC11cGRhdGUiLG1pbkludGVydmFsTXM6M2U1fSl9ZnVuY3Rpb24gbWYoZSx0KXtvaSgiXHU5NzAwXHU4OTgxXHU0RjYwXHU3Njg0XHU2Mzg4XHU2NzQzIix0LHtraW5kOiJwZXJtaXNzaW9uIix0YWc6IndhbmQtcGVybS0iK2UsbWluSW50ZXJ2YWxNczo2ZTQsb25seVdoZW5IaWRkZW46ITAsc2tpcFdoZW5TZWxlY3RlZFNlc3Npb25JZDplLG9uQ2xpY2s6ZnVuY3Rpb24oKXtlIT09ci5zZWxlY3RlZElkJiZXdChlKX19KX1mdW5jdGlvbiBnZihlLHQsbil7b2kodCxuLHtraW5kOiJ0YXNrLWVuZGVkIix0YWc6IndhbmQtZW5kZWQtIitlLG1pbkludGVydmFsTXM6MWU0LG9uQ2xpY2s6ZnVuY3Rpb24oKXtlIT09ci5zZWxlY3RlZElkJiZXdChlKX19KX12YXIgU249e30saGY9MzA7ZnVuY3Rpb24gU3MoZSl7aWYoIWUpcmV0dXJuIiI7dmFyIHQ9U3RyaW5nKGUpLnJlcGxhY2UoL14jK1xzKy9nbSwiIikucmVwbGFjZSgvXCpcKi9nLCIiKS5yZXBsYWNlKC9gL2csIiIpLnRyaW0oKSxuPXQuc3BsaXQoYApgKVswXS50cmltKCk7cmV0dXJuIG4ubGVuZ3RoPjEwMCYmKG49bi5zbGljZSgwLDEwMCkrIlx1MjAyNiIpLG59ZnVuY3Rpb24gdmEoZSl7IU5lfHx0eXBlb2YgV2FuZE5hdGl2ZS51cGRhdGVTZXNzaW9uUHJvZ3Jlc3MhPSJmdW5jdGlvbiJ8fGUmJihTbltlXSYmY2xlYXJUaW1lb3V0KFNuW2VdKSxTbltlXT1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZGVsZXRlIFNuW2VdLHlmKGUpfSxoZikpfWZ1bmN0aW9uIHlmKGUpe3ZhciB0PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbih4KXtyZXR1cm4geC5pZD09PWV9KTtpZih0KXt2YXIgbj10LnN1bW1hcnl8fHQuY29tbWFuZHx8ZSxpPXQuc3RhdHVzfHwicnVubmluZyI7aWYoaT09PSJpZGxlInx8aT09PSJhcmNoaXZlZCJ8fGk9PT0iZXhpdGVkIil7SXMoZSk7cmV0dXJufWZvcih2YXIgYT1udWxsLHU9IiIscz0iIixvPVtdLGw9dC5tZXNzYWdlc3x8W10sYz1sLmxlbmd0aC0xO2M+PTA7Yy0tKXt2YXIgZj1sW2NdO2lmKCEoIWYuY29udGVudHx8IUFycmF5LmlzQXJyYXkoZi5jb250ZW50KSkpe2lmKCFzJiZmLnJvbGU9PT0iYXNzaXN0YW50Iilmb3IodmFyIGQ9Zi5jb250ZW50Lmxlbmd0aC0xO2Q+PTA7ZC0tKXt2YXIgdj1mLmNvbnRlbnRbZF07aWYodiYmdi50eXBlPT09InRleHQiJiZ2LnRleHQmJnYudGV4dC50cmltKCkpe3M9U3Modi50ZXh0KTticmVha319aWYoZi5yb2xlPT09InVzZXIiKXt2YXIgZz1mLmNvbnRlbnQuc29tZShmdW5jdGlvbih4KXtyZXR1cm4geCYmeC5fX3F1ZXVlZH0pO2lmKCFnKWZvcih2YXIgaD0wO2g8Zi5jb250ZW50Lmxlbmd0aDtoKyspe3ZhciBtPWYuY29udGVudFtoXTtpZihtJiZtLnR5cGU9PT0idGV4dCImJm0udGV4dCYmbS50ZXh0LnRyaW0oKSl7dmFyIGI9U3MobS50ZXh0KTt1fHwodT1iKSxvLmxlbmd0aDw0JiZvLnB1c2goYik7YnJlYWt9fX1pZighYSlmb3IodmFyIHc9Zi5jb250ZW50Lmxlbmd0aC0xO3c+PTA7dy0tKXt2YXIgRT1mLmNvbnRlbnRbd107aWYoRSYmRS50eXBlPT09InRvb2xfdXNlIiYmRS5uYW1lPT09IlRvZG9Xcml0ZSImJkUuaW5wdXQmJkUuaW5wdXQudG9kb3Mpe2E9RS5pbnB1dC50b2RvczticmVha319aWYoYSYmby5sZW5ndGg+PTQmJnMpYnJlYWt9fW8ucmV2ZXJzZSgpO3ZhciBCPSIiO2U9PT1yLnNlbGVjdGVkSWQmJnIuY3VycmVudFRhc2smJnIuY3VycmVudFRhc2sudGl0bGUmJihCPXIuY3VycmVudFRhc2sudGl0bGUpO3ZhciBGPXtzZXNzaW9uTGFiZWw6bixzdGF0dXM6aSxjdXJyZW50VGFzazpCLGxhdGVzdFVzZXJUZXh0OnUsbGF0ZXN0QXNzaXN0YW50VGV4dDpzLHRvZG9zOmF8fFtdLHJlY2VudFVzZXJUZXh0czpvfTt0cnl7V2FuZE5hdGl2ZS51cGRhdGVTZXNzaW9uUHJvZ3Jlc3MoZSxKU09OLnN0cmluZ2lmeShGKSl9Y2F0Y2h7fX19ZnVuY3Rpb24gSXMoZSl7aWYoISghTmV8fHR5cGVvZiBXYW5kTmF0aXZlLmNsZWFyU2Vzc2lvblByb2dyZXNzIT0iZnVuY3Rpb24iKSl7U25bZV0mJihjbGVhclRpbWVvdXQoU25bZV0pLGRlbGV0ZSBTbltlXSk7dHJ5e1dhbmROYXRpdmUuY2xlYXJTZXNzaW9uUHJvZ3Jlc3MoZSl9Y2F0Y2h7fX19d2luZG93LmhhbmRsZU5hdGl2ZUJhY2s9ZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtbW9kYWwiKTtpZihlJiYhZS5jbGFzc0xpc3QuY29udGFpbnMoImhpZGRlbiIpKXJldHVybiBlcigpLCEwO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLW1vZGFsIik7aWYodCYmIXQuY2xhc3NMaXN0LmNvbnRhaW5zKCJoaWRkZW4iKSlyZXR1cm4gdm4oKSwhMDt2YXIgbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya3RyZWUtbWVyZ2UtbW9kYWwiKTtyZXR1cm4gbiYmIW4uY2xhc3NMaXN0LmNvbnRhaW5zKCJoaWRkZW4iKT8oWm4oKSwhMCk6ci5maWxlUGFuZWxPcGVuJiZfZSgpPyhVaSghMSksITApOnIuc2Vzc2lvbnNEcmF3ZXJPcGVuJiZfZSgpPyhMcigpLCEwKTpfZSgpJiZyLnNlbGVjdGVkSWQ/KHIuc2VsZWN0ZWRJZD1udWxsLHdlKCksci5zZXNzaW9uc0RyYXdlck9wZW49ITAsSWUoIndhbmQtc2lkZWJhci1vcGVuIiwhMCksJHQoKSwhMCk6ITF9O2Z1bmN0aW9uIFRzKCl7ci5ub3RpZlNvdW5kJiZsaSgpfWZ1bmN0aW9uIGJmKCl7cmV0dXJuIGxpKCl9ZnVuY3Rpb24gbGkoKXt0cnl7bGV0IGE9ZnVuY3Rpb24odSxzLG8pe3ZhciBsPW4uY3JlYXRlT3NjaWxsYXRvcigpLGM9bi5jcmVhdGVHYWluKCk7bC50eXBlPSJzaW5lIixsLmZyZXF1ZW5jeS52YWx1ZT11LGMuZ2Fpbi5zZXRWYWx1ZUF0VGltZSgwLG4uY3VycmVudFRpbWUrcyksYy5nYWluLmxpbmVhclJhbXBUb1ZhbHVlQXRUaW1lKC41Kmksbi5jdXJyZW50VGltZStzKy4wNCksYy5nYWluLmV4cG9uZW50aWFsUmFtcFRvVmFsdWVBdFRpbWUoLjAwMSxuLmN1cnJlbnRUaW1lK3MrbyksbC5jb25uZWN0KGMpLGMuY29ubmVjdChuLmRlc3RpbmF0aW9uKSxsLnN0YXJ0KG4uY3VycmVudFRpbWUrcyksbC5zdG9wKG4uY3VycmVudFRpbWUrcytvKX07dmFyIGU9YSx0PXdpbmRvdy5BdWRpb0NvbnRleHR8fHdpbmRvdy53ZWJraXRBdWRpb0NvbnRleHQ7aWYoIXQpcmV0dXJuITE7dmFyIG49bmV3IHQ7bi5zdGF0ZT09PSJzdXNwZW5kZWQiJiZuLnJlc3VtZSgpO3ZhciBpPShyLm5vdGlmVm9sdW1lfHwwKS8xMDA7cmV0dXJuIGEoNTIzLDAsLjI1KSxhKDY1OSwuMTIsLjMpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtuLmNsb3NlKCl9LDYwMCksITB9Y2F0Y2h7cmV0dXJuITF9fWZ1bmN0aW9uIEVmKGUsdCl7aWYoci5fdXBkYXRlQnViYmxlU2hvd24pcmV0dXJuO3IuX3VwZGF0ZUJ1YmJsZVNob3duPSEwLFRzKCk7dmFyIG49KytrcyxpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2kuY2xhc3NOYW1lPSJub3RpZmljYXRpb24tYnViYmxlIHVwZGF0ZS1jYXJkIixpLnNldEF0dHJpYnV0ZSgiZGF0YS1uaWQiLFN0cmluZyhuKSksaS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLXNoaW5lIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9kaXY+PGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtaGVhZGVyIj48ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC1pY29uIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0xMiAxOVY1Ii8+PHBhdGggZD0iTTUgMTJsNy03IDcgNyIvPjwvc3ZnPjwvZGl2PjxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLWhlYWRpbmciPjxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLXRpdGxlIj5cdTUzRDFcdTczQjBcdTY1QjBcdTcyNDhcdTY3MkM8L2Rpdj48ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC1zdWJ0aXRsZSIgaWQ9InVwZGF0ZS1jYXJkLXN1YnRpdGxlIj5cdTcwQjlcdTUxRkJcdTRFMEJcdTY1QjlcdTYzMDlcdTk0QUVcdTRFMDBcdTk1MkVcdTY2RjRcdTY1QjA8L2Rpdj48L2Rpdj48YnV0dG9uIGNsYXNzPSJ1cGRhdGUtY2FyZC1jbG9zZSIgdGl0bGU9Ilx1N0EwRFx1NTQwRVx1NjNEMFx1OTE5MiIgYXJpYS1sYWJlbD0iXHU1MTczXHU5NUVEIj48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTE4IDZMNiAxOCIvPjxwYXRoIGQ9Ik02IDZsMTIgMTIiLz48L3N2Zz48L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC12ZXJzaW9uIj48c3BhbiBjbGFzcz0idXBkYXRlLWNhcmQtdmVyc2lvbi1jaGlwIHVwZGF0ZS1jYXJkLXZlcnNpb24tY3VycmVudCI+dicrcChTdHJpbmcoZSkucmVwbGFjZSgvXnYvLCIiKSkrJzwvc3Bhbj48c3ZnIGNsYXNzPSJ1cGRhdGUtY2FyZC12ZXJzaW9uLWFycm93IiB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNNSAxMmgxNCIvPjxwYXRoIGQ9Ik0xMyA1bDcgNy03IDciLz48L3N2Zz48c3BhbiBjbGFzcz0idXBkYXRlLWNhcmQtdmVyc2lvbi1jaGlwIHVwZGF0ZS1jYXJkLXZlcnNpb24tbGF0ZXN0Ij52JytwKFN0cmluZyh0KS5yZXBsYWNlKC9edi8sIiIpKSsnPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLXByb2dyZXNzIiBpZD0idXBkYXRlLWNhcmQtcHJvZ3Jlc3MiIGFyaWEtaGlkZGVuPSJ0cnVlIj48ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC1wcm9ncmVzcy10cmFjayI+PGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtcHJvZ3Jlc3MtZmlsbCI+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtc3RhdHVzIGhpZGRlbiIgaWQ9InVwZGF0ZS1jYXJkLXN0YXR1cyI+PC9kaXY+PGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtYWN0aW9ucyI+PGJ1dHRvbiBjbGFzcz0idXBkYXRlLWNhcmQtYWN0aW9uIHVwZGF0ZS1jYXJkLWFjdGlvbi1wcmltYXJ5IiBpZD0idXBkYXRlLWJ1YmJsZS1hY3Rpb24iIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InVwZGF0ZS1jYXJkLWFjdGlvbi1sYWJlbCI+XHU3QUNCXHU1MzczXHU2NkY0XHU2NUIwPC9zcGFuPjwvYnV0dG9uPjwvZGl2PicsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpKTt2YXIgYT17aWQ6bixlbDppfTtYdC5wdXNoKGEpLGZhKCk7dmFyIHU9aS5xdWVyeVNlbGVjdG9yKCIudXBkYXRlLWNhcmQtY2xvc2UiKTt1JiYodS5vbmNsaWNrPWZ1bmN0aW9uKCl7RXIobiksci5fdXBkYXRlQnViYmxlU2hvd249ITF9KTt2YXIgcz1pLnF1ZXJ5U2VsZWN0b3IoIiN1cGRhdGUtYnViYmxlLWFjdGlvbiIpLG89aS5xdWVyeVNlbGVjdG9yKCIudXBkYXRlLWNhcmQtYWN0aW9uLWxhYmVsIiksbD1pLnF1ZXJ5U2VsZWN0b3IoIiN1cGRhdGUtY2FyZC1zdWJ0aXRsZSIpLGM9aS5xdWVyeVNlbGVjdG9yKCIjdXBkYXRlLWNhcmQtc3RhdHVzIiksZj1pLnF1ZXJ5U2VsZWN0b3IoIiN1cGRhdGUtY2FyZC1wcm9ncmVzcyIpO2Z1bmN0aW9uIGQoaCxtKXtpZihjKXtpZihjLnRleHRDb250ZW50PWh8fCIiLGMuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiwiZXJyb3IiLCJzdWNjZXNzIiksIWgpe2MuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIik7cmV0dXJufW0mJmMuY2xhc3NMaXN0LmFkZChtKX19ZnVuY3Rpb24gdihoKXtsJiYobC50ZXh0Q29udGVudD1ofHwiIil9ZnVuY3Rpb24gZyhoKXtmJiZmLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsISFoKX1zJiYocy5vbmNsaWNrPWZ1bmN0aW9uKCl7cy5kaXNhYmxlZD0hMCxpLmNsYXNzTGlzdC5hZGQoImlzLWJ1c3kiKSxvJiYoby50ZXh0Q29udGVudD0iXHU2NkY0XHU2NUIwXHU0RTJEXHUyMDI2IiksdigiXHU2QjYzXHU1NzI4XHU0RTBCXHU4RjdEXHU1RTc2XHU1Qjg5XHU4OEM1XHU2NUIwXHU3MjQ4XHU2NzJDXHUyMDI2IiksZyghMCksZCgiIiksZmV0Y2goIi9hcGkvdXBkYXRlIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGgpe3JldHVybiBoLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaCl7aWYoaC5lcnJvcil7ZyghMSksaS5jbGFzc0xpc3QucmVtb3ZlKCJpcy1idXN5IiksdigiXHU2NkY0XHU2NUIwXHU2NzJBXHU1QjhDXHU2MjEwIiksZChoLmVycm9yLCJlcnJvciIpLHMuZGlzYWJsZWQ9ITEsbyYmKG8udGV4dENvbnRlbnQ9Ilx1OTFDRFx1OEJENSIpO3JldHVybn1pZihpLmNsYXNzTGlzdC5hZGQoImlzLXN1Y2Nlc3MiKSx2KChoLm1lc3NhZ2V8fCJcdTY2RjRcdTY1QjBcdTVCOENcdTYyMTAiKSsiXHVGRjBDXHU2QjYzXHU1NzI4XHU5MUNEXHU1NDJGXHU2NzBEXHU1MkExXHUyMDI2IiksZCgiIiksbyYmKG8udGV4dENvbnRlbnQ9Ilx1NkI2M1x1NTcyOFx1OTFDRFx1NTQyRlx1MjAyNiIpLGguZGV0YWNoZWRVcGRhdGUpe3VuKCk7cmV0dXJufWlmKGgucmVzdGFydFJlcXVpcmVkPT09ITEpe2coITEpLGkuY2xhc3NMaXN0LnJlbW92ZSgiaXMtYnVzeSIpLHMuZGlzYWJsZWQ9ITEsbyYmKG8udGV4dENvbnRlbnQ9Ilx1NURGMlx1NUI4Q1x1NjIxMCIpO3JldHVybn1GZihzLG8sbCxjLGYpfSkuY2F0Y2goZnVuY3Rpb24oKXtnKCExKSxpLmNsYXNzTGlzdC5yZW1vdmUoImlzLWJ1c3kiKSx2KCJcdTY2RjRcdTY1QjBcdTY3MkFcdTVCOENcdTYyMTAiKSxkKCJcdThCRjdcdTY4QzBcdTY3RTVcdTdGNTFcdTdFRENcdThGREVcdTYzQTVcdTU0MEVcdTkxQ0RcdThCRDUiLCJlcnJvciIpLHMuZGlzYWJsZWQ9ITEsbyYmKG8udGV4dENvbnRlbnQ9Ilx1OTFDRFx1OEJENSIpfSl9KX1mdW5jdGlvbiBGZihlLHQsbixpLGEpe2ZldGNoKCIvYXBpL3Jlc3RhcnQiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24odSl7cmV0dXJuIHUuanNvbigpfSkudGhlbihmdW5jdGlvbigpe3VuKCl9KS5jYXRjaChmdW5jdGlvbigpe3VuKCl9KX1mdW5jdGlvbiBMcyhlLHQpe2UmJihlLmRpc2FibGVkPSEwLGUudGV4dENvbnRlbnQ9Ilx1NkI2M1x1NTcyOFx1OTFDRFx1NTQyRlx1MjAyNiIpLHQmJih0LnRleHRDb250ZW50PSJcdTY3MERcdTUyQTFcdTZCNjNcdTU3MjhcdTkxQ0RcdTU0MkZcdTIwMjYiLHQuc3R5bGUuY29sb3I9InZhcigtLXRleHQtc2Vjb25kYXJ5KSIpLGZldGNoKCIvYXBpL3Jlc3RhcnQiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIG4uanNvbigpfSkudGhlbihmdW5jdGlvbigpe3VuKCl9KS5jYXRjaChmdW5jdGlvbigpe3VuKCl9KX1mdW5jdGlvbiB1bigpe2lmKCFkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdGFydC1vdmVybGF5Iikpe3ZhciBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2UuaWQ9InJlc3RhcnQtb3ZlcmxheSIsZS5jbGFzc05hbWU9InJlc3RhcnQtb3ZlcmxheSIsZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9InJlc3RhcnQtb3ZlcmxheS1jb250ZW50Ij48ZGl2IGNsYXNzPSJyZXN0YXJ0LXNwaW5uZXIiPjwvZGl2PjxkaXYgY2xhc3M9InJlc3RhcnQtdGl0bGUiPlx1NjcwRFx1NTJBMVx1NkI2M1x1NTcyOFx1OTFDRFx1NTQyRjwvZGl2PjxkaXYgY2xhc3M9InJlc3RhcnQtc3VidGl0bGUiPlx1N0EwRFx1NTQwRVx1NUMwNlx1ODFFQVx1NTJBOFx1NTIzN1x1NjVCMFx1OTg3NVx1OTc2Mlx1MjAyNjwvZGl2PjwvZGl2PicsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChlKTt2YXIgdD0wLG49MTgwLGk9c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtpZih0KyssZmV0Y2goIi9hcGkvY29uZmlnIix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24odSl7dS5vayYmKGNsZWFySW50ZXJ2YWwoaSksbG9jYXRpb24ucmVsb2FkKCkpfSkuY2F0Y2goZnVuY3Rpb24oKXt9KSx0Pj1uKXtjbGVhckludGVydmFsKGkpO3ZhciBhPWUucXVlcnlTZWxlY3RvcigiLnJlc3RhcnQtc3VidGl0bGUiKTthJiYoYS5pbm5lckhUTUw9J1x1OTFDRFx1NTQyRlx1OEQ4NVx1NjVGNlx1RkYwQ1x1OEJGNyA8YSBocmVmPSJqYXZhc2NyaXB0OmxvY2F0aW9uLnJlbG9hZCgpIiBzdHlsZT0iY29sb3I6dmFyKC0tYWNjZW50KTt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lIj5cdTYyNEJcdTUyQThcdTUyMzdcdTY1QjA8L2E+IFx1OTg3NVx1OTc2Mlx1MzAwMicpfX0sMmUzKX19ZnVuY3Rpb24gd2YoZSx0KXtpZighZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3RhcnQtb3ZlcmxheSIpKXt2YXIgbj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtuLmlkPSJyZXN0YXJ0LW92ZXJsYXkiLG4uY2xhc3NOYW1lPSJyZXN0YXJ0LW92ZXJsYXkiLG4uaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJyZXN0YXJ0LW92ZXJsYXktY29udGVudCI+PGRpdiBjbGFzcz0icmVzdGFydC1zcGlubmVyIj48L2Rpdj48ZGl2IGNsYXNzPSJyZXN0YXJ0LXRpdGxlIj5cdTgxRUFcdTUyQThcdTY2RjRcdTY1QjBcdTRFMkQ8L2Rpdj48ZGl2IGNsYXNzPSJyZXN0YXJ0LXN1YnRpdGxlIj4nK3AoZSkrIiBcdTIxOTIgIitwKHQpKyI8YnI+XHU2QjYzXHU1NzI4XHU0RTBCXHU4RjdEXHU1RTc2XHU1Qjg5XHU4OEM1XHU2NUIwXHU3MjQ4XHU2NzJDXHVGRjBDXHU3QTBEXHU1NDBFXHU1QzA2XHU4MUVBXHU1MkE4XHU5MUNEXHU1NDJGXHUyMDI2PC9kaXY+PC9kaXY+Iixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKG4pfX12YXIgTXMsbWEsVGU9e3JlY29yZGluZzohMSxjYW5jZWxpbmc6ITEsdHJhbnNjcmlwdDoiIixzdGFydFk6MH0sQ2Y9NjA7ZnVuY3Rpb24gQmYoZSl7VGUudHJhbnNjcmlwdD1lfHwiIjt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtdHJhbnNjcmlwdC10ZXh0Iik7dCYmKHQudGV4dENvbnRlbnQ9VGUudHJhbnNjcmlwdCk7dmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLXRyYW5zY3JpcHQtYnViYmxlIik7biYmbi5jbGFzc0xpc3QudG9nZ2xlKCJoYXMtdGV4dCIsISFUZS50cmFuc2NyaXB0KX1mdW5jdGlvbiBEZihlKXtpZihlKXtlLnByZXZlbnREZWZhdWx0KCksVGUuc3RhcnRZPXR5cGVvZiBlLmNsaWVudFk9PSJudW1iZXIiP2UuY2xpZW50WTowO3RyeXtlLnBvaW50ZXJJZCE9PXZvaWQgMCYmZS50YXJnZXQmJmUudGFyZ2V0LnNldFBvaW50ZXJDYXB0dXJlJiZlLnRhcmdldC5zZXRQb2ludGVyQ2FwdHVyZShlLnBvaW50ZXJJZCl9Y2F0Y2h7fX1UZS5yZWNvcmRpbmc9ITAsVGUuY2FuY2VsaW5nPSExLFRlLnRyYW5zY3JpcHQ9IiI7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLXJlY29yZC1idG4iKTtpZih0KXt0LmNsYXNzTGlzdC5hZGQoImlzLXJlY29yZGluZyIpO3ZhciBuPXQucXVlcnlTZWxlY3RvcigiLnZvaWNlLXJlY29yZC1sYWJlbCIpO24mJihuLnRleHRDb250ZW50PSJcdTY3N0VcdTVGMDAgXHU1M0QxXHU5MDAxIil9dmFyIGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLXRyYW5zY3JpcHQtYnViYmxlIik7aSYmaS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iLCJpcy1jYW5jZWxpbmciLCJoYXMtdGV4dCIpLEJmKCIiKTt2YXIgYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtdHJhbnNjcmlwdC1zdGF0dXMiKTthJiYoYS50ZXh0Q29udGVudD0iXHU3RjUxXHU5ODc1XHU3QUVGXHU2NjgyXHU0RTBEXHU2NTJGXHU2MzAxXHU4QkVEXHU5N0YzXHU4RjkzXHU1MTY1XHVGRjBDXHU4QkY3XHU0RjdGXHU3NTI4IEFwcCIpfWZ1bmN0aW9uIGtmKGUpe2lmKCEoIVRlLnJlY29yZGluZ3x8IWUpKXt2YXIgdD1UZS5zdGFydFktKHR5cGVvZiBlLmNsaWVudFk9PSJudW1iZXIiP2UuY2xpZW50WTpUZS5zdGFydFkpLG49dD5DZjtpZihuIT09VGUuY2FuY2VsaW5nKXtUZS5jYW5jZWxpbmc9bjt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtdHJhbnNjcmlwdC1idWJibGUiKTtpJiZpLmNsYXNzTGlzdC50b2dnbGUoImlzLWNhbmNlbGluZyIsbik7dmFyIGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLXJlY29yZC1idG4iKSx1PWEmJmEucXVlcnlTZWxlY3RvcigiLnZvaWNlLXJlY29yZC1sYWJlbCIpO3UmJih1LnRleHRDb250ZW50PW4/Ilx1Njc3RVx1NUYwMCBcdTUzRDZcdTZEODgiOiJcdTY3N0VcdTVGMDAgXHU1M0QxXHU5MDAxIik7dmFyIHM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLXRyYW5zY3JpcHQtc3RhdHVzIik7cyYmKHMudGV4dENvbnRlbnQ9bj8iXHU2NzdFXHU1RjAwXHU2MjRCXHU2MzA3IFx1NTNENlx1NkQ4OCI6Ilx1NkI2M1x1NTcyOFx1ODA0Nlx1NTQyQ1x1MjAyNlx1NEUwQVx1NkVEMVx1NTNENlx1NkQ4OCIpfX19ZnVuY3Rpb24gT3MoZSl7aWYoVGUucmVjb3JkaW5nKXtlJiZlLnByZXZlbnREZWZhdWx0KCksVGUucmVjb3JkaW5nPSExO3ZhciB0PSFUZS5jYW5jZWxpbmcmJiEhVGUudHJhbnNjcmlwdC50cmltKCksbj1UZS50cmFuc2NyaXB0O2dhKCksdCYmKEFmKG4pLGhhKCExKSl9fWZ1bmN0aW9uIGdhKCl7VGUuY2FuY2VsaW5nPSExO3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS1yZWNvcmQtYnRuIik7aWYoZSl7ZS5jbGFzc0xpc3QucmVtb3ZlKCJpcy1yZWNvcmRpbmciKTt2YXIgdD1lLnF1ZXJ5U2VsZWN0b3IoIi52b2ljZS1yZWNvcmQtbGFiZWwiKTt0JiYodC50ZXh0Q29udGVudD0iXHU2MzA5XHU0RjRGIFx1OEJGNFx1OEJERCIpfXZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS10cmFuc2NyaXB0LWJ1YmJsZSIpO24mJm4uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIil9ZnVuY3Rpb24gQWYoZSl7dmFyIHQ9KGV8fCIiKS50cmltKCk7aWYodCl7dmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO2lmKG4pe3ZhciBpPW4udmFsdWV8fCIiLGE9aT9pLnJlcGxhY2UoL1xzKyQvLCIiKSsiICIrdDp0O24udmFsdWU9YSxjdChhLCEwKSxfdChuKTt0cnl7bi5zZXRTZWxlY3Rpb25SYW5nZShhLmxlbmd0aCxhLmxlbmd0aCl9Y2F0Y2h7fX19fWZ1bmN0aW9uIGhhKGUpe3ZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1jb21wb3NlciIpO2lmKHQpe3ZhciBuPXR5cGVvZiBlPT0iYm9vbGVhbiI/ZTohdC5jbGFzc0xpc3QuY29udGFpbnMoInZvaWNlLW1vZGUiKTtpZih0LmNsYXNzTGlzdC50b2dnbGUoInZvaWNlLW1vZGUiLG4pLCFuKXtUZS5yZWNvcmRpbmc9ITEsZ2EoKTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7aWYoaSYmIXIudGVybWluYWxJbnRlcmFjdGl2ZSl0cnl7aS5mb2N1cyh7cHJldmVudFNjcm9sbDohMH0pfWNhdGNoe319fX1mdW5jdGlvbiBfdChlKXtpZihlKXt2YXIgdD0zNixuPTEyMCxpPXhyKCk7aWYoIWUudmFsdWV8fGUudmFsdWUudHJpbSgpPT09IiIpe2Uuc3R5bGUuaGVpZ2h0PXQrInB4IixlLnN0eWxlLm1pbkhlaWdodD10KyJweCIsZS5zdHlsZS5vdmVyZmxvd1k9aT8iYXV0byI6ImhpZGRlbiIsZS5zY3JvbGxUb3A9MCxTaShlKTtyZXR1cm59dmFyIGE9ZS5zdHlsZS5vdmVyZmxvd1k7ZS5zdHlsZS5vdmVyZmxvd1k9ImhpZGRlbiIsZS5zdHlsZS5oZWlnaHQ9dCsicHgiO3ZhciB1PWUuc2Nyb2xsSGVpZ2h0LHM9TWF0aC5tYXgodCxNYXRoLm1pbih1LG4pKSxvPXU+bjtlLnN0eWxlLmhlaWdodD1zKyJweCIsZS5zdHlsZS5taW5IZWlnaHQ9dCsicHgiLGUuc3R5bGUub3ZlcmZsb3dZPW98fGk/ImF1dG8iOiJoaWRkZW4iLG8/aGkoZSk6ZS5zY3JvbGxUb3A9MCxTaShlKX19ZnVuY3Rpb24geGYoKXtpZighci5zZWxlY3RlZElkKXJldHVybiExO3ZhciBlPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbih0KXtyZXR1cm4gdC5pZD09PXIuc2VsZWN0ZWRJZH0pO3JldHVybiBhZShlKT8hIShlLnN0cnVjdHVyZWRTdGF0ZSYmZS5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQpOiEhZSYmZS5zdGF0dXM9PT0icnVubmluZyJ9dmFyIHdyPSExO2Z1bmN0aW9uIFBzKGUpe3JldHVybiFlfHxlLmFyY2hpdmVkPyExOmFlKGUpPyEhKGUuc3RydWN0dXJlZFN0YXRlJiZlLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCk6ZS5zdGF0dXM9PT0icnVubmluZyJ9ZnVuY3Rpb24geWEoKXtyZXR1cm4gci5zZXNzaW9ucy5zb21lKFBzKX1mdW5jdGlvbiBTZigpe3ZhciBlPXIuc2Vzc2lvbnMuZmlsdGVyKFBzKTtpZihlLmxlbmd0aD09PTApcmV0dXJuIG51bGw7aWYoci5zZWxlY3RlZElkKXt2YXIgdD1lLmZpbmQoZnVuY3Rpb24obil7cmV0dXJuIG4uaWQ9PT1yLnNlbGVjdGVkSWR9KTtpZih0KXJldHVybiB0fXJldHVybiBlLnNvcnQoZnVuY3Rpb24obixpKXtyZXR1cm4oRGF0ZS5wYXJzZShpLnN0YXJ0ZWRBdCl8fDApLShEYXRlLnBhcnNlKG4uc3RhcnRlZEF0KXx8MCl9KSxlWzBdfWZ1bmN0aW9uIElmKGUsdCl7dmFyIG49dHlwZW9mIGNyeXB0bzwidSImJmNyeXB0by5yYW5kb21VVUlEP2NyeXB0by5yYW5kb21VVUlEKCk6RGF0ZS5ub3coKS50b1N0cmluZygzNikrIi0iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIsMTApLGk9QXJyYXkuaXNBcnJheShlLnF1ZXVlZE1lc3NhZ2VzKT9lLnF1ZXVlZE1lc3NhZ2VzLnNsaWNlKCk6W10sYT1pLnNsaWNlKCk7YS5wdXNoKHQpLFEoe2lkOmUuaWQscXVldWVkTWVzc2FnZXM6YX0pLGUuaWQ9PT1yLnNlbGVjdGVkSWQmJmx0KCk7dmFyIHU9ZS50aXRsZXx8UW4oZS5jb21tYW5kKXx8Ilx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERCI7cmV0dXJuIGsoIlx1NURGMlx1NTJBMFx1NTE2NVx1MzAwQyIrdSsiXHUzMDBEXHU3Njg0XHU2MzkyXHU5NjFGXHVGRjBDXHU1NkRFXHU1OTBEXHU3RUQzXHU2NzVGXHU1NDBFXHU4MUVBXHU1MkE4XHU1M0QxXHU5MDAxXHVGRjA4XHU1NDJCXHU0RTBBXHU0RTBCXHU2NTg3XHVGRjA5XHUzMDAyIiwiaW5mbyIpLGZldGNoKCIvYXBpL3N0cnVjdHVyZWQtc2Vzc2lvbnMvIitlLmlkKyIvbWVzc2FnZXMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtpbnB1dDp0LGlkZW1wb3RlbmN5S2V5Om59KX0pLnRoZW4oZnVuY3Rpb24ocyl7cmV0dXJuIHMub2s/cy5qc29uKCk6cy5qc29uKCkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm57ZXJyb3I6Ilx1OEJGN1x1NkM0Mlx1NTkzMVx1OEQyNSJ9fSkudGhlbihmdW5jdGlvbihvKXt0aHJvdyBuZXcgRXJyb3IobyYmby5lcnJvcnx8Ilx1NjVFMFx1NkNENVx1NjM5Mlx1OTYxRlx1NkQ4OFx1NjA2Rlx1MzAwMiIpfSl9KS50aGVuKGZ1bmN0aW9uKHMpe3MmJnMuaWQmJihRKHMpLHMuaWQ9PT1yLnNlbGVjdGVkSWQmJmx0KCkpfSkuY2F0Y2goZnVuY3Rpb24ocyl7USh7aWQ6ZS5pZCxxdWV1ZWRNZXNzYWdlczppfSksZS5pZD09PXIuc2VsZWN0ZWRJZCYmbHQoKSxrKHMmJnMubWVzc2FnZXx8Ilx1NjM5Mlx1OTYxRlx1NTkzMVx1OEQyNVx1RkYwQ1x1OEJGN1x1OTFDRFx1OEJENVx1MzAwMiIsImVycm9yIil9KX1mdW5jdGlvbiBxcyhlKXt2YXIgdD1TZigpO2lmKHQmJmFlKHQpKXtJZih0LGUpO3JldHVybn1pZihyLmNyb3NzU2Vzc2lvblF1ZXVlLmxlbmd0aD49MTApe2soIlx1NjM5Mlx1OTYxRlx1NkQ4OFx1NjA2Rlx1NURGMlx1NkVFMVx1RkYwOFx1NjcwMFx1NTkxQSAxMCBcdTY3NjFcdUZGMDlcdUZGMENcdThCRjdcdTdCNDlcdTVGODVcdTVGNTNcdTUyNERcdTRGMUFcdThCRERcdTVCOENcdTYyMTBcdTMwMDIiLCJ3YXJuaW5nIik7cmV0dXJufXZhciBuPSJjc3EtIitEYXRlLm5vdygpKyItIitNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zbGljZSgyLDgpO3IuY3Jvc3NTZXNzaW9uUXVldWUucHVzaCh7aWQ6bix0ZXh0OmUsY3dkOlhlKCksbW9kZTpyLmNoYXRNb2RlfHwibWFuYWdlZCIsdG9vbDptdCgpLHF1ZXVlZEF0OkRhdGUubm93KCl9KSxHdCgpLEF0KCksaygiXHU1REYyXHU2MzkyXHU5NjFGXHVGRjBDXHU1QzA2XHU1NzI4XHU3QTdBXHU5NUYyXHU1NDBFXHU4MUVBXHU1MkE4XHU1RjAwXHU1OUNCXHU2NUIwXHU0RjFBXHU4QkREXHUzMDAyIiwiaW5mbyIpfWZ1bmN0aW9uIFRmKGUpe3dyfHwod3I9ITAsZmV0Y2goIi9hcGkvY29tbWFuZHMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGh0KHtjb21tYW5kOmUudG9vbCxjd2Q6ZS5jd2QsbW9kZTplLm1vZGUsaW5pdGlhbElucHV0OmUudGV4dH0pKX0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQuanNvbigpfSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gd3I9ITEsdC5lcnJvcj8oayh0LmVycm9yLCJlcnJvciIpLHIuY3Jvc3NTZXNzaW9uUXVldWUudW5zaGlmdChlKSxHdCgpLEF0KCksbnVsbCk6bG4odCl9KS5jYXRjaChmdW5jdGlvbih0KXt3cj0hMSxrKHQmJnQubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOFx1NjM5Mlx1OTYxRlx1NEYxQVx1OEJERFx1MzAwMiIsImVycm9yIiksci5jcm9zc1Nlc3Npb25RdWV1ZS51bnNoaWZ0KGUpLEd0KCksQXQoKX0pKX1mdW5jdGlvbiBMZihlKXt2YXIgdD1yLmNyb3NzU2Vzc2lvblF1ZXVlLmZpbmRJbmRleChmdW5jdGlvbihpKXtyZXR1cm4gaS5pZD09PWV9KTtpZighKHQ8MCkpe3ZhciBuPXIuY3Jvc3NTZXNzaW9uUXVldWUuc3BsaWNlKHQsMSlbMF07R3QoKSxBdCgpLGZldGNoKCIvYXBpL2NvbW1hbmRzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShodCh7Y29tbWFuZDpuLnRvb2wsY3dkOm4uY3dkLG1vZGU6bi5tb2RlLGluaXRpYWxJbnB1dDpuLnRleHR9KSl9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuZXJyb3I/KGsoaS5lcnJvciwiZXJyb3IiKSxyLmNyb3NzU2Vzc2lvblF1ZXVlLnNwbGljZSh0LDAsbiksR3QoKSxBdCgpLG51bGwpOmxuKGkpfSkuY2F0Y2goZnVuY3Rpb24oaSl7ayhpJiZpLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQThcdTYzOTJcdTk2MUZcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpLHIuY3Jvc3NTZXNzaW9uUXVldWUuc3BsaWNlKHQsMCxuKSxHdCgpLEF0KCl9KX19ZnVuY3Rpb24gTWYoZSl7dmFyIHQ9ci5jcm9zc1Nlc3Npb25RdWV1ZS5maW5kSW5kZXgoZnVuY3Rpb24obil7cmV0dXJuIG4uaWQ9PT1lfSk7dDwwfHwoci5jcm9zc1Nlc3Npb25RdWV1ZS5zcGxpY2UodCwxKSxHdCgpLEF0KCksci5jcm9zc1Nlc3Npb25RdWV1ZS5sZW5ndGg9PT0wJiZrKCJcdTYzOTJcdTk2MUZcdTVERjJcdTZFMDVcdTdBN0FcdTMwMDIiLCJpbmZvIikpfWZ1bmN0aW9uIGNpKCl7aWYoci5jcm9zc1Nlc3Npb25RdWV1ZS5sZW5ndGghPT0wJiYheWEoKSYmIXdyKXt2YXIgZT1yLmNyb3NzU2Vzc2lvblF1ZXVlLnNoaWZ0KCk7QXQoKSxUZihlKX19ZnVuY3Rpb24gSHMoZSl7dmFyIHQ9TWF0aC5mbG9vcigoRGF0ZS5ub3coKS1lKS8xZTMpO2lmKHQ8NjApcmV0dXJuIHQrInMiO3ZhciBuPU1hdGguZmxvb3IodC82MCk7cmV0dXJuIG48NjA/bisibSI6TWF0aC5mbG9vcihuLzYwKSsiaCJ9ZnVuY3Rpb24gQXQoKXt2YXIgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuY3Jvc3Mtc2Vzc2lvbi1xdWV1ZSIpLHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LXBhbmVsIiksbj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuc3RydWN0dXJlZC1zdGF0dXMtYmFyIiksaT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuaW5wdXQtY29tcG9zZXIiKSxhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJibGFuay1jaGF0Iik7aWYoci5jcm9zc1Nlc3Npb25RdWV1ZS5sZW5ndGg9PT0wKXtlJiZlLnJlbW92ZSgpLEd0KCk7cmV0dXJufXZhciB1PXQmJiF0LmNsYXNzTGlzdC5jb250YWlucygiaGlkZGVuIikscz11P3Q6YSxvPXU/bnx8aTpudWxsO2lmKHMpe2UmJmUucGFyZW50Tm9kZSE9PXMmJihlLnJlbW92ZSgpLGU9bnVsbCksZT91JiZvJiZlLm5leHRTaWJsaW5nIT09byYmcy5pbnNlcnRCZWZvcmUoZSxvKTooZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxlLmNsYXNzTmFtZT0iY3Jvc3Mtc2Vzc2lvbi1xdWV1ZSIsbz9zLmluc2VydEJlZm9yZShlLG8pOnMuYXBwZW5kQ2hpbGQoZSkpO3ZhciBsPXIuY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoLGM9ci5jcm9zc1Nlc3Npb25RdWV1ZS5tYXAoZnVuY3Rpb24oZCx2KXt2YXIgZz1kLnRleHQubGVuZ3RoPjYwP2QudGV4dC5zbGljZSgwLDYwKSsiXHUyMDI2IjpkLnRleHQsaD1IcyhkLnF1ZXVlZEF0KTtyZXR1cm4nPGRpdiBjbGFzcz0icXVldWUtaXRlbSIgZGF0YS1xdWV1ZS1pZD0iJytwKGQuaWQpKyciPjxzcGFuIGNsYXNzPSJxdWV1ZS1pdGVtLWRvdCI+PC9zcGFuPjxzcGFuIGNsYXNzPSJxdWV1ZS1pdGVtLXRleHQiIHRpdGxlPSInK3AoZC50ZXh0KSsnIj4nK3AoZykrJzwvc3Bhbj48c3BhbiBjbGFzcz0icXVldWUtaXRlbS1hZ2UiPicraCsnPC9zcGFuPjxidXR0b24gY2xhc3M9InF1ZXVlLWl0ZW0tc2VuZC1ub3ciIGRhdGEtcXVldWUtaWQ9IicrcChkLmlkKSsnIiB0aXRsZT0iXHU3QUNCXHU1MzczXHU1M0QxXHU5MDAxIiB0eXBlPSJidXR0b24iPlx1NTNEMVx1OTAwMTwvYnV0dG9uPjxidXR0b24gY2xhc3M9InF1ZXVlLWl0ZW0tY2FuY2VsIiBkYXRhLXF1ZXVlLWlkPSInK3AoZC5pZCkrJyIgdGl0bGU9Ilx1NTNENlx1NkQ4OCIgdHlwZT0iYnV0dG9uIj5ceEQ3PC9idXR0b24+PC9kaXY+J30pLmpvaW4oIiIpLGY9bD4xPyc8ZGl2IGNsYXNzPSJxdWV1ZS1oZWFkZXIiPjxzcGFuIGNsYXNzPSJxdWV1ZS1oZWFkZXItbGFiZWwiPlx1NjM5Mlx1OTYxRiAnK2wrJyBcdTY3NjE8L3NwYW4+PGJ1dHRvbiBjbGFzcz0icXVldWUtaGVhZGVyLWNsZWFyIiBpZD0icXVldWUtY2xlYXItYWxsIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTZFMDVcdTdBN0FcdTYzOTJcdTk2MUYiPlx1NkUwNVx1N0E3QTwvYnV0dG9uPjwvZGl2Pic6IiI7ZS5pbm5lckhUTUw9ZitjfX1zZXRJbnRlcnZhbChmdW5jdGlvbigpe2lmKHIuY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPjApe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5xdWV1ZS1pdGVtLWFnZSIpO3IuY3Jvc3NTZXNzaW9uUXVldWUuZm9yRWFjaChmdW5jdGlvbih0LG4pe2Vbbl0mJihlW25dLnRleHRDb250ZW50PUhzKHQucXVldWVkQXQpKX0pLGNpKCl9fSw1ZTMpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihlKXt2YXIgdD1lLnRhcmdldDtpZih0LmNsb3Nlc3QoIiNxdWV1ZS1jbGVhci1hbGwiKSl7ZS5wcmV2ZW50RGVmYXVsdCgpLHIuY3Jvc3NTZXNzaW9uUXVldWU9W10sR3QoKSxBdCgpLGsoIlx1NjM5Mlx1OTYxRlx1NURGMlx1NkUwNVx1N0E3QVx1MzAwMiIsImluZm8iKTtyZXR1cm59dmFyIG49dC5jbG9zZXN0KCIucXVldWUtaXRlbS1zZW5kLW5vdyIpO2lmKG4pe2UucHJldmVudERlZmF1bHQoKSxMZihuLmRhdGFzZXQucXVldWVJZCk7cmV0dXJufXZhciBpPXQuY2xvc2VzdCgiLnF1ZXVlLWl0ZW0tY2FuY2VsIik7aWYoaSl7ZS5wcmV2ZW50RGVmYXVsdCgpLE1mKGkuZGF0YXNldC5xdWV1ZUlkKTtyZXR1cm59fSk7ZnVuY3Rpb24gX3MoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid2VsY29tZS1pbnB1dCIpLHQ9ZT9lLnZhbHVlLnRyaW0oKToiIjtpZih0KXtpZih5YSgpKXtlLnZhbHVlPSIiLHFzKHQpO3JldHVybn12YXIgbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcyIpO24mJm4uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksZS52YWx1ZT0iIixlLnBsYWNlaG9sZGVyPSJcdTZCNjNcdTU3MjhcdTU0MkZcdTUyQThcdTIwMjYiLGUuZGlzYWJsZWQ9ITA7dmFyIGk9ci5jaGF0TW9kZXx8Im1hbmFnZWQiLGE9WGUoKSx1PW10KCk7ZmV0Y2goIi9hcGkvY29tbWFuZHMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGh0KHtjb21tYW5kOnUscHJvdmlkZXI6dSxjd2Q6YSxtb2RlOmksaW5pdGlhbElucHV0OnR9KSl9KS50aGVuKGZ1bmN0aW9uKHMpe3JldHVybiBzLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24ocyl7aWYocy5lcnJvcil7ayhzLmVycm9yLCJlcnJvciIpLGUucGxhY2Vob2xkZXI9Ilx1OEY5M1x1NTE2NVx1NkQ4OFx1NjA2RiIsZS5kaXNhYmxlZD0hMTtyZXR1cm59ci5zZWxlY3RlZElkPXMuaWQsd2UoKSxyLmRyYWZ0c1tzLmlkXT0iIixrdCgpLFEocyksbWUoKSxDcihzLmlkKSxUbihzLmlkKSxwbihzLmlkKS50aGVuKGZ1bmN0aW9uKCl7ZS5wbGFjZWhvbGRlcj0iXHU4RjkzXHU1MTY1XHU2RDg4XHU2MDZGIixlLmRpc2FibGVkPSExLGp0KCEwKX0pfSkuY2F0Y2goZnVuY3Rpb24ocyl7ayhzJiZzLm1lc3NhZ2V8fCh1PT09ImNvZGV4Ij8iXHU2NUUwXHU2Q0Q1XHU1NDJGXHU1MkE4IENvZGV4IFx1NEYxQVx1OEJERFx1MzAwMiI6Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOCBDbGF1ZGUgXHU0RjFBXHU4QkREXHUzMDAyIiksImVycm9yIiksZS5wbGFjZWhvbGRlcj0iXHU4RjkzXHU1MTY1XHU2RDg4XHU2MDZGIixlLmRpc2FibGVkPSExfSl9fWZ1bmN0aW9uIE9mKGUpe2U9ZXx8e307dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndlbGNvbWUtaW5wdXQiKSxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKSxpPXQmJnQudmFsdWUudHJpbSgpP3QudmFsdWUudHJpbSgpOm4/bi52YWx1ZS50cmltKCk6IiI7aWYoci5zZWxlY3RlZElkKXtpJiZOcyhlKTtyZXR1cm59aWYoaSYmeWEoKSl7biYmKG4udmFsdWU9IiIpLHQmJih0LnZhbHVlPSIiKSxTaShuKSxxcyhpKTtyZXR1cm59dmFyIGE9ci5jaGF0TW9kZXx8Im1hbmFnZWQiLHU9WGUoKSxzPW10KCk7ZmV0Y2goIi9hcGkvY29tbWFuZHMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGh0KHtjb21tYW5kOnMscHJvdmlkZXI6cyxjd2Q6dSxtb2RlOmEsaW5pdGlhbElucHV0Oml8fHZvaWQgMH0pKX0pLnRoZW4oZnVuY3Rpb24obyl7cmV0dXJuIG8uanNvbigpfSkudGhlbihmdW5jdGlvbihvKXtyZXR1cm4gby5lcnJvcj8oayhvLmVycm9yLCJlcnJvciIpLG51bGwpOihyLnNlbGVjdGVkSWQ9by5pZCx3ZSgpLHIuZHJhZnRzW28uaWRdPSIiLGt0KCksbiYmKG4udmFsdWU9IiIpLHQmJih0LnZhbHVlPSIiKSxRKG8pLG1lKCksQ3Ioby5pZCksVG4oby5pZCkscG4oby5pZCkpfSkuY2F0Y2goZnVuY3Rpb24obyl7ayhvJiZvLm1lc3NhZ2V8fChzPT09ImNvZGV4Ij8iXHU2NUUwXHU2Q0Q1XHU1NDJGXHU1MkE4IENvZGV4IFx1NEYxQVx1OEJERFx1MzAwMiI6Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOCBDbGF1ZGUgXHU0RjFBXHU4QkREXHUzMDAyIiksImVycm9yIil9KX1mdW5jdGlvbiBDcihlKXt2YXIgdD1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odil7cmV0dXJuIHYuaWQ9PT1lfSksbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdCIpLGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpLGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXQtb3V0cHV0IiksdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3RvcC1idXR0b24iKSxzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXJtaW5hbC10aXRsZSIpLG89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlcm1pbmFsLWluZm8iKSxsPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5zZXNzaW9uLXN1bW1hcnktdmFsdWUiKSxjPWFlKHQpO24mJm4uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksaSYmaS5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLGMpLGEmJmEuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksYz9yLmN1cnJlbnRWaWV3PSJjaGF0IjpyLmN1cnJlbnRWaWV3PSJ0ZXJtaW5hbCI7dmFyIGY9dD9Rbih0LmNvbW1hbmQpOiJXYW5kIixkPXQ/Y3IodCk6Ilx1NUYwMFx1NTlDQlx1NUJGOVx1OEJERCI7cyYmKHMudGV4dENvbnRlbnQ9ZiksbyYmKG8udGV4dENvbnRlbnQ9ZCksbCYmKGwudGV4dENvbnRlbnQ9ZiksY3x8ci50ZXJtaW5hbHx8S24oKSxraSgpLGp0KCEwKSxjfHxvdCgidmlldy1zd2l0Y2giLHtmb3JjZVJlcGxheTohMH0pfWZ1bmN0aW9uIE5zKGUpe2U9ZXx8e307dmFyIHQ9ISFlLmludGVycnVwdDtpZihyLnRlcm1pbmFsSW50ZXJhY3RpdmUpcmV0dXJuIGsoIlx1N0VDOFx1N0FFRlx1NEVBNFx1NEU5Mlx1NkEyMVx1NUYwRlx1NUYwMFx1NTQyRlx1NjVGNlx1RkYwQ1x1OEJGN1x1NzZGNFx1NjNBNVx1NTcyOFx1N0VDOFx1N0FFRlx1NEUyRFx1OEY5M1x1NTE2NVx1MzAwMiIsImluZm8iKSxQcm9taXNlLnJlc29sdmUoKTt2YXIgbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94IiksaT1uP24udmFsdWU6IiIsYT1OdCgpLHU9ci5wZW5kaW5nQXR0YWNobWVudHMubGVuZ3RoPjA7aWYoaXx8dSl7dmFyIHM9dSYmci5zZWxlY3RlZElkP1dtKHIuc2VsZWN0ZWRJZCkuY2F0Y2goZnVuY3Rpb24obyl7aygiXHU5NjQ0XHU0RUY2XHU0RTBBXHU0RjIwXHU1OTMxXHU4RDI1OiAiKyhvJiZvLm1lc3NhZ2V8fG8pLCJlcnJvciIpO3ZhciBsPW8gaW5zdGFuY2VvZiBFcnJvcj9vOm5ldyBFcnJvcihTdHJpbmcobykpO3Rocm93IGwuX193YW5kVG9hc3RlZD0hMCxsfSk6UHJvbWlzZS5yZXNvbHZlKFtdKTtyZXR1cm4gcy50aGVuKGZ1bmN0aW9uKG8pe3ZhciBsPXptKG8pLGM9bCsoaXx8KG8ubGVuZ3RoPyJcdThCRjdcdTY3RTVcdTc3MEJcdTk2NDRcdTRFRjZcdTMwMDIiOiIiKSk7by5sZW5ndGgmJlJtKCk7dmFyIGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZG8tcHJvZ3Jlc3MiKTtpZihmJiZmLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGFlKGEpKXJldHVybiBQZihjLG4sYSx7aW50ZXJydXB0OnR9KTt2YXIgZD1YZihhLGMpLHY9IXIud3NDb25uZWN0ZWQ7cmV0dXJuIHY/KG5wKGQpLG4mJihuLnZhbHVlPSIiLF90KG4pKSxjdCgiIiksUHJvbWlzZS5yZXNvbHZlKCkpOiRmKGEpLnRoZW4oZnVuY3Rpb24oZyl7aWYoIWcpcmV0dXJuIG51bGw7dmFyIGg9ci5jdXJyZW50VmlldztpZihnJiZnLnByb3ZpZGVyPT09ImNvZGV4IiYmci5zZWxlY3RlZElkIT09Zy5pZCl0aHJvdyBuZXcgRXJyb3IoIkNvZGV4IHNlc3Npb24gY2hhbmdlZCBiZWZvcmUgaW5wdXQgc2VuZC4iKTtyZXR1cm4gWmYoZCwiZW50ZXJfdGV4dCIsMzAsaCkudGhlbihmdW5jdGlvbigpe24mJm4udmFsdWU9PT1pJiYobi52YWx1ZT0iIixfdChuKSksY3QoIiIpfSl9KS5jYXRjaChmdW5jdGlvbihnKXt0aHJvdyBrKFZzKGcpLCJlcnJvciIpLGcmJihnLl9fd2FuZFRvYXN0ZWQ9ITApLGd9KX0pLmNhdGNoKGZ1bmN0aW9uKG8pe3Rocm93IG8mJm8uX193YW5kVG9hc3RlZHx8ayhWcyhvKSwiZXJyb3IiKSxvfSl9cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpfXZhciBqcz17fSxScz0zNTA7ZnVuY3Rpb24gUGYoZSx0LG4saSl7aT1pfHx7fTt2YXIgYT0hIWkuaW50ZXJydXB0O2lmKCFyLnNlbGVjdGVkSWR8fCFlKXJldHVybiBQcm9taXNlLnJlc29sdmUoKTtpZighbilyZXR1cm4gaygiXHU0RjFBXHU4QkREXHU0RTBEXHU1QjU4XHU1NzI4XHVGRjBDXHU4QkY3XHU5MUNEXHU2NUIwXHU5MDA5XHU2MkU5XHU2MjE2XHU2NUIwXHU1RUZBXHU0RjFBXHU4QkREXHUzMDAyIiwiZXJyb3IiKSxQcm9taXNlLnJlc29sdmUoKTt2YXIgdT1EYXRlLm5vdygpLHM9anNbbi5pZF18fDA7aWYodS1zPFJzKXJldHVybiBjb25zb2xlLmxvZygiW3dhbmRdIHBvc3RTdHJ1Y3R1cmVkSW5wdXQ6IGR1cGxpY2F0ZSBzdWJtaXQgKHdpdGhpbiAiK1JzKyJtcykgaWdub3JlZCBmb3Igc2Vzc2lvbiIsbi5pZCksUHJvbWlzZS5yZXNvbHZlKCk7anNbbi5pZF09dTt2YXIgbz0hIShuLnN0cnVjdHVyZWRTdGF0ZSYmbi5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQmJm4uc3RhdHVzPT09InJ1bm5pbmciKSxsPW8mJmEsYz1vJiYhYSxmPXNyKEFycmF5LmlzQXJyYXkobi5tZXNzYWdlcyk/bi5tZXNzYWdlcy5zbGljZSgpOltdKSxkO2lmKGMpe3ZhciB2PUFycmF5LmlzQXJyYXkobi5xdWV1ZWRNZXNzYWdlcyk/bi5xdWV1ZWRNZXNzYWdlcy5zbGljZSgpOltdO3YucHVzaChlKSxkPXtpZDpuLmlkLHF1ZXVlZE1lc3NhZ2VzOnZ9LFEoZCk7dmFyIGc9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKEUpe3JldHVybiBFLmlkPT09bi5pZH0pfHxuO3IuY3VycmVudE1lc3NhZ2VzPWplKGcsWmUoZyxnLm91dHB1dCwhMSkpLEduKCJcdTVERjJcdTUyQTBcdTUxNjVcdTYzOTJcdTk2MUZcdTIwMjYiKSxVZSghMCksc24oKSxrKHYubGVuZ3RoPjE/Ilx1NURGMlx1NTJBMFx1NTE2NVx1NjM5Mlx1OTYxRlx1RkYwOFx1NTE3MSAiK3YubGVuZ3RoKyIgXHU2NzYxXHU3QjQ5XHU1Rjg1XHVGRjA5IjoiXHU1REYyXHU1MkEwXHU1MTY1XHU2MzkyXHU5NjFGXHVGRjBDXHU3QjQ5XHU1RjUzXHU1MjREXHU1NkRFXHU1OTBEXHU1QjhDXHU2MjEwXHU0RjFBXHU4MUVBXHU1MkE4XHU1M0QxXHU5MDAxXHUzMDAyIiwiaW5mbyIpfWVsc2V7dmFyIGg9e3JvbGU6InVzZXIiLGNvbnRlbnQ6W3t0eXBlOiJ0ZXh0Iix0ZXh0OmV9XX07Zi5wdXNoKGgpO3ZhciBtPU9iamVjdC5hc3NpZ24oe30sbi5zdHJ1Y3R1cmVkU3RhdGV8fHt9LHtpbkZsaWdodDohMH0pO1Eoe2lkOm4uaWQsc3RhdHVzOiJydW5uaW5nIixtZXNzYWdlczpmLHN0cnVjdHVyZWRTdGF0ZTptfSksci5jdXJyZW50TWVzc2FnZXM9amUoT2JqZWN0LmFzc2lnbih7fSxuLHtzdGF0dXM6InJ1bm5pbmciLG1lc3NhZ2VzOmYsc3RydWN0dXJlZFN0YXRlOm19KSxmKSxHbihsPyJcdTVERjJcdTRFMkRcdTY1QURcdUZGMENcdTZCNjNcdTU3MjhcdTU5MDRcdTc0MDZcdTY1QjBcdTZEODhcdTYwNkZcdTIwMjYiOiJcdTYwMURcdTgwMDNcdTRFMkRcdTIwMjYiKSxVZSghMCksbCYmaygiXHU1REYyXHU0RTJEXHU2NUFEXHU0RTBBXHU0RTAwXHU2NzYxXHU1NkRFXHU1OTBEXHVGRjBDXHU2QjYzXHU1NzI4XHU1OTA0XHU3NDA2XHU2NUIwXHU2RDg4XHU2MDZGXHUyMDI2IiwiaW5mbyIpfXQmJih0LnZhbHVlPSIiLF90KHQpKSxjdCgiIik7dmFyIGI9ci5xdWV1ZUVwb2NoLHc9dHlwZW9mIGNyeXB0bzwidSImJmNyeXB0by5yYW5kb21VVUlEP2NyeXB0by5yYW5kb21VVUlEKCk6RGF0ZS5ub3coKS50b1N0cmluZygzNikrIi0iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIsMTApO3JldHVybiBmZXRjaCgiL2FwaS9zdHJ1Y3R1cmVkLXNlc3Npb25zLyIrbi5pZCsiL21lc3NhZ2VzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7aW5wdXQ6ZSxpbnRlcnJ1cHQ6bHx8dm9pZCAwLGlkZW1wb3RlbmN5S2V5Ond9KX0pLnRoZW4oZnVuY3Rpb24oRSl7cmV0dXJuIEUub2s/RS5qc29uKCk6RS5qc29uKCkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm57ZXJyb3I6Ilx1OEJGN1x1NkM0Mlx1NTkzMVx1OEQyNSJ9fSkudGhlbihmdW5jdGlvbihCKXt2YXIgRj1uZXcgRXJyb3IoQiYmQi5lcnJvcnx8Ilx1NjVFMFx1NkNENVx1NTNEMVx1OTAwMVx1N0VEM1x1Njc4NFx1NTMxNlx1NkQ4OFx1NjA2Rlx1MzAwMiIpO3Rocm93IEYuZXJyb3JDb2RlPUImJkIuZXJyb3JDb2RlLEYuaHR0cFN0YXR1cz1FLnN0YXR1cyxGfSl9KS50aGVuKGZ1bmN0aW9uKEUpe2lmKEUmJkUuZXJyb3IpdGhyb3cgbmV3IEVycm9yKEUuZXJyb3IpO2lmKEUmJkUuaWQmJihyLnF1ZXVlRXBvY2g+YiYmRS5xdWV1ZWRNZXNzYWdlcyYmZGVsZXRlIEUucXVldWVkTWVzc2FnZXMsUShFKSxFLmlkPT09ci5zZWxlY3RlZElkKSl7dmFyIEI9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKEYpe3JldHVybiBGLmlkPT09RS5pZH0pfHxFO3IuY3VycmVudE1lc3NhZ2VzPWplKEIsWmUoQixFLm91dHB1dCwhMSkpLFVlKCEwKSxzbigpfX0pLmNhdGNoKGZ1bmN0aW9uKEUpe2lmKEUmJkUuZXJyb3JDb2RlPT09ImR1cGxpY2F0ZV9pZGVtcG90ZW5jeV9rZXkiKXtrKEUubWVzc2FnZXx8Ilx1NjhDMFx1NkQ0Qlx1NTIzMFx1OTFDRFx1NTkwRFx1NTNEMVx1OTAwMVx1RkYwQ1x1NURGMlx1NjJFNlx1NjIyQVx1MzAwMiIsIndhcm5pbmciKSxHbigiRW50ZXIgXHU1M0QxXHU5MDAxIFx4QjcgU2hpZnQrRW50ZXIgXHU2MzYyXHU4ODRDIik7cmV0dXJufWlmKGMpe3ZhciBCPUFycmF5LmlzQXJyYXkobi5xdWV1ZWRNZXNzYWdlcyk/bi5xdWV1ZWRNZXNzYWdlcy5zbGljZSgpOltdO2lmKFEoe2lkOm4uaWQscXVldWVkTWVzc2FnZXM6Qn0pLG4uaWQ9PT1yLnNlbGVjdGVkSWQpe3ZhciBGPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihSKXtyZXR1cm4gUi5pZD09PW4uaWR9KXx8bjtyLmN1cnJlbnRNZXNzYWdlcz1qZShGLFplKEYsRi5vdXRwdXQsITEpKSxVZSghMCksc24oKX19ZWxzZXt2YXIgeD1mLnNsaWNlKDAsLTEpO1Eoe2lkOm4uaWQsc3RhdHVzOm4uc3RhdHVzLG1lc3NhZ2VzOngsc3RydWN0dXJlZFN0YXRlOk9iamVjdC5hc3NpZ24oe30sbi5zdHJ1Y3R1cmVkU3RhdGV8fHt9LHtpbkZsaWdodDohMX0pfSksbi5pZD09PXIuc2VsZWN0ZWRJZCYmKHIuY3VycmVudE1lc3NhZ2VzPWplKE9iamVjdC5hc3NpZ24oe30sbix7bWVzc2FnZXM6eCxzdHJ1Y3R1cmVkU3RhdGU6T2JqZWN0LmFzc2lnbih7fSxuLnN0cnVjdHVyZWRTdGF0ZXx8e30se2luRmxpZ2h0OiExfSl9KSx4KSxVZSghMCkpfXZhciBTPUUmJkUubWVzc2FnZXx8IiIsSD1TPT09IkZhaWxlZCB0byBmZXRjaCJ8fFM9PT0iTmV0d29ya0Vycm9yIHdoZW4gYXR0ZW1wdGluZyB0byBmZXRjaCByZXNvdXJjZS4ifHxTPT09IkxvYWQgZmFpbGVkInx8L2Fib3J0ZWR8YWJvcnRlcnJvcnxuZXR3b3JrZXJyb3J8ZmFpbGVkIHRvIGZldGNoL2kudGVzdChTKTtIfHxrKEUmJkUubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NTNEMVx1OTAwMVx1N0VEM1x1Njc4NFx1NTMxNlx1NkQ4OFx1NjA2Rlx1MzAwMiIsImVycm9yIiksR24oIkVudGVyIFx1NTNEMVx1OTAwMSBceEI3IFNoaWZ0K0VudGVyIFx1NjM2Mlx1ODg0QyIpfSl9ZnVuY3Rpb24gR24oZSl7dmFyIHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LWhpbnQiKTt0JiYodC50ZXh0Q29udGVudD1lKX1mdW5jdGlvbiBzbigpe2x0KCl9dmFyIHFmPTEwLFdzPTI2O2Z1bmN0aW9uIEhmKGUpe2lmKHR5cGVvZiBlIT0ic3RyaW5nIilyZXR1cm4iIjt2YXIgdD1lLnJlcGxhY2UoL1xzKy9nLCIgIikudHJpbSgpO3JldHVybiB0Lmxlbmd0aDw9V3M/dDp0LnNsaWNlKDAsV3MpKyJcdTIwMjYifWZ1bmN0aW9uIF9mKCl7cmV0dXJuISFyLnF1ZXVlQmFyRXhwYW5kZWR9ZnVuY3Rpb24gTmYoZSl7aWYoISFyLnF1ZXVlQmFyRXhwYW5kZWQhPSEhZSl7ci5xdWV1ZUJhckV4cGFuZGVkPSEhZTt2YXIgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIucXVldWUtYmFyIik7dCYmdC5jbGFzc0xpc3QudG9nZ2xlKCJleHBhbmRlZCIsISFlKX19ZnVuY3Rpb24gamYoZSx0LG4pe3ZhciBpPWUubGVuZ3RoLGE9InF1ZXVlLWJhciI7biYmKGErPSIgcXVldWUtYmFyLWNhcGFjaXR5IiksdCYmKGErPSIgcXVldWUtYmFyLWluZmxpZ2h0Iik7Zm9yKHZhciB1PXQ/Ilx1NEUyRFx1NjVBRFx1NUY1M1x1NTI0RFx1NTZERVx1NTkwRFx1RkYwQ1x1N0FDQlx1NTM3M1x1NTNEMVx1OTAwMVx1OEZEOVx1Njc2MSI6Ilx1N0FDQlx1NTM3M1x1NTNEMVx1OTAwMVx1OEZEOVx1Njc2MSIscz0iIixvPTA7bzxpO28rKyl7dmFyIGw9ZVtvXT09bnVsbD8iIjpTdHJpbmcoZVtvXSksYz1IZihsKSxmPWwrIlx1RkYwOFx1NjMwOVx1NEY0Rlx1NTNFRlx1NjJENlx1NTJBOFx1OEMwM1x1NUU4Rlx1RkYwOSI7cys9JzxsaSBjbGFzcz0icXVldWUtYmFyLWl0ZW0iIGRhdGEtaW5kZXg9IicrbysnIiBkYXRhLWFjdGlvbj0iZHJhZyIgdGl0bGU9IicrcChmKSsnIj48c3BhbiBjbGFzcz0icXVldWUtYmFyLWl0ZW0taW5kZXgiIGFyaWEtaGlkZGVuPSJ0cnVlIj4nKyhvKzEpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InF1ZXVlLWJhci1pdGVtLXRleHQiPicrcChjKSsnPC9zcGFuPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0icXVldWUtYmFyLWl0ZW0tcHJvbW90ZSIgZGF0YS1hY3Rpb249InByb21vdGUtaXRlbSIgdGl0bGU9IicrcCh1KSsnIiBhcmlhLWxhYmVsPSJcdTdBQ0JcdTUzNzNcdTUzRDFcdTkwMDFcdTdCMkMgJysobysxKSsnIFx1Njc2MSI+PHN2ZyB3aWR0aD0iMTEiIGhlaWdodD0iMTEiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0iY3VycmVudENvbG9yIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTEzIDIgTDQgMTQgTDExIDE0IEwxMCAyMiBMMjAgOSBMMTMgOSBaIi8+PC9zdmc+PC9idXR0b24+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJxdWV1ZS1iYXItaXRlbS1kZWxldGUiIGRhdGEtYWN0aW9uPSJkZWxldGUiIGFyaWEtbGFiZWw9Ilx1NTIyMFx1OTY2NFx1N0IyQyAnKyhvKzEpKycgXHU2NzYxXHU2MzkyXHU5NjFGXHU2RDg4XHU2MDZGIiB0aXRsZT0iXHU1MjIwXHU5NjY0Ij48c3ZnIHdpZHRoPSIxMSIgaGVpZ2h0PSIxMSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjYiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxsaW5lIHgxPSI2IiB5MT0iNiIgeDI9IjE4IiB5Mj0iMTgiLz48bGluZSB4MT0iNiIgeTE9IjE4IiB4Mj0iMTgiIHkyPSI2Ii8+PC9zdmc+PC9idXR0b24+PC9saT4nfXZhciBkPSIiO3JldHVybiBpPj0yJiYoZD0nPGRpdiBjbGFzcz0icXVldWUtYmFyLWhlYWQiPjxzcGFuIGNsYXNzPSJxdWV1ZS1iYXItaGVhZC1jb3VudCI+JytpKycgXHU2NzYxXHU2MzkyXHU5NjFGPC9zcGFuPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0icXVldWUtYmFyLWNsZWFyLWFsbCIgZGF0YS1hY3Rpb249ImNsZWFyLWFsbCIgdGl0bGU9Ilx1NkUwNVx1N0E3QVx1NTE2OFx1OTBFOFx1NjM5Mlx1OTYxRiIgYXJpYS1sYWJlbD0iXHU2RTA1XHU3QTdBXHU1MTY4XHU5MEU4ICcraSsnIFx1Njc2MVx1NjM5Mlx1OTYxRlx1NkQ4OFx1NjA2RiI+XHU2RTA1XHU3QTdBPC9idXR0b24+PC9kaXY+JyksJzxkaXYgY2xhc3M9IicrYSsnIiBkYXRhLXF1ZXVlLWJhcj0iMSIgdGl0bGU9Ilx1NjM5Mlx1OTYxRiAnK2krJyBcdTY3NjFcdUZGMDhcdTYzMDlcdTRGNEZcdTZDMTRcdTZDRTFcdTUzRUZcdThDMDNcdTVFOEZcdUZGMDkiPicrZCsnPG9sIGNsYXNzPSJxdWV1ZS1iYXItbGlzdCIgZGF0YS1xdWV1ZS1saXN0PSIxIj4nK3MrIjwvb2w+PC9kaXY+In1mdW5jdGlvbiBsdCgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWV1ZS1iYXItaG9zdCIpO2lmKGUpe3ZhciB0PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihzKXtyZXR1cm4gcy5pZD09PXIuc2VsZWN0ZWRJZH0pLG49dCYmdC5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkIixpPW4/UmkodCk6W107aWYoaT1BcnJheS5pc0FycmF5KGkpP2k6W10sIW58fGkubGVuZ3RoPT09MCl7ZS5oaWRkZW49ITAsZS5pbm5lckhUTUw9IiIsci5xdWV1ZUJhckV4cGFuZGVkPSExO3JldHVybn1pZighci5xdWV1ZUJhckRyYWcpe2UuaGlkZGVuPSExO3ZhciBhPSEhKHQuc3RydWN0dXJlZFN0YXRlJiZ0LnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCYmdC5zdGF0dXM9PT0icnVubmluZyIpLHU9aS5sZW5ndGg+PXFmO2UuaW5uZXJIVE1MPWpmKGksYSx1KX19fWZ1bmN0aW9uIGRpKGUsdCl7USh7aWQ6ZS5pZCxxdWV1ZWRNZXNzYWdlczp0fSk7dmFyIG49ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGkpe3JldHVybiBpLmlkPT09ZS5pZH0pfHxlO3IuY3VycmVudE1lc3NhZ2VzPWplKG4sWmUobixuLm91dHB1dCwhMSkpLFVlKCEwKSxsdCgpfWZ1bmN0aW9uIFJmKGUpe3ZhciB0PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihzKXtyZXR1cm4gcy5pZD09PXIuc2VsZWN0ZWRJZH0pO2lmKHQpe3ZhciBuPUFycmF5LmlzQXJyYXkodC5xdWV1ZWRNZXNzYWdlcyk/dC5xdWV1ZWRNZXNzYWdlcy5zbGljZSgpOltdO2lmKCEoZTwwfHxlPj1uLmxlbmd0aCkpe3ZhciBpPW4uc2xpY2UoKSxhPW4uc2xpY2UoMCxlKS5jb25jYXQobi5zbGljZShlKzEpKTtRKHtpZDp0LmlkLHF1ZXVlZE1lc3NhZ2VzOmF9KTt2YXIgdT1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24ocyl7cmV0dXJuIHMuaWQ9PT10LmlkfSl8fHQ7ci5jdXJyZW50TWVzc2FnZXM9amUodSxaZSh1LHUub3V0cHV0LCExKSksVWUoITApLGx0KCksZmV0Y2goIi9hcGkvc3RydWN0dXJlZC1zZXNzaW9ucy8iK3QuaWQrIi9xdWV1ZWQvIitlLHttZXRob2Q6IkRFTEVURSIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24ocyl7aWYoIXMub2spcmV0dXJuIHMuanNvbigpLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJue319KS50aGVuKGZ1bmN0aW9uKG8pe3Rocm93IG5ldyBFcnJvcihvJiZvLmVycm9yfHwiXHU1MjIwXHU5NjY0XHU1OTMxXHU4RDI1Iil9KX0pLmNhdGNoKGZ1bmN0aW9uKHMpe2RpKHQsaSksayhzJiZzLm1lc3NhZ2V8fCJcdTUyMjBcdTk2NjRcdTYzOTJcdTk2MUZcdTZEODhcdTYwNkZcdTU5MzFcdThEMjVcdTMwMDIiLCJlcnJvciIpfSl9fX1mdW5jdGlvbiBXZigpe3ZhciBlPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihpKXtyZXR1cm4gaS5pZD09PXIuc2VsZWN0ZWRJZH0pO2lmKGUpe3ZhciB0PUFycmF5LmlzQXJyYXkoZS5xdWV1ZWRNZXNzYWdlcyk/ZS5xdWV1ZWRNZXNzYWdlcy5zbGljZSgpOltdO2lmKHQubGVuZ3RoIT09MCl7ci5xdWV1ZUJhckV4cGFuZGVkPSExLFEoe2lkOmUuaWQscXVldWVkTWVzc2FnZXM6W119KTt2YXIgbj1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oaSl7cmV0dXJuIGkuaWQ9PT1lLmlkfSl8fGU7ci5jdXJyZW50TWVzc2FnZXM9amUobixaZShuLG4ub3V0cHV0LCExKSksVWUoITApLGx0KCksZmV0Y2goIi9hcGkvc3RydWN0dXJlZC1zZXNzaW9ucy8iK2UuaWQrIi9xdWV1ZWQiLHttZXRob2Q6IkRFTEVURSIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoIWkub2spcmV0dXJuIGkuanNvbigpLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJue319KS50aGVuKGZ1bmN0aW9uKGEpe3Rocm93IG5ldyBFcnJvcihhJiZhLmVycm9yfHwiXHU2RTA1XHU3QTdBXHU1OTMxXHU4RDI1Iil9KTtrKCJcdTVERjJcdTZFMDVcdTdBN0EgIit0Lmxlbmd0aCsiIFx1Njc2MVx1NjM5Mlx1OTYxRlx1NkQ4OFx1NjA2Rlx1MzAwMiIsImluZm8iKX0pLmNhdGNoKGZ1bmN0aW9uKGkpe2RpKGUsdCksayhpJiZpLm1lc3NhZ2V8fCJcdTZFMDVcdTdBN0FcdTYzOTJcdTk2MUZcdTZEODhcdTYwNkZcdTU5MzFcdThEMjVcdTMwMDIiLCJlcnJvciIpfSl9fX1mdW5jdGlvbiB6ZihlKXtpZighci5xdWV1ZUJhclByb21vdGluZyl7dmFyIHQ9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGwpe3JldHVybiBsLmlkPT09ci5zZWxlY3RlZElkfSk7aWYodCl7dmFyIG49QXJyYXkuaXNBcnJheSh0LnF1ZXVlZE1lc3NhZ2VzKT90LnF1ZXVlZE1lc3NhZ2VzLnNsaWNlKCk6W107aWYoIShlPDB8fGU+PW4ubGVuZ3RoKSl7dmFyIGk9bltlXSxhPW4uc2xpY2UoMCxlKS5jb25jYXQobi5zbGljZShlKzEpKSx1PW4uc2xpY2UoKSxzPSEhKHQuc3RydWN0dXJlZFN0YXRlJiZ0LnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCYmdC5zdGF0dXM9PT0icnVubmluZyIpO3IucXVldWVCYXJQcm9tb3Rpbmc9ITAsYS5sZW5ndGg9PT0wJiYoci5xdWV1ZUJhckV4cGFuZGVkPSExKSxRKHtpZDp0LmlkLHF1ZXVlZE1lc3NhZ2VzOmF9KTt2YXIgbz10eXBlb2YgY3J5cHRvPCJ1IiYmY3J5cHRvLnJhbmRvbVVVSUQ/Y3J5cHRvLnJhbmRvbVVVSUQoKTpEYXRlLm5vdygpLnRvU3RyaW5nKDM2KSsiLSIrTWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc2xpY2UoMiwxMCk7ayhzPyJcdTVERjJcdThCRjdcdTZDNDJcdTRFMkRcdTY1QURcdTVGNTNcdTUyNERcdTU2REVcdTU5MERcdUZGMENcdTdBQ0JcdTUzNzNcdTUzRDFcdTkwMDFcdThGRDlcdTY3NjFcdTMwMDIiOiJcdTVERjJcdTdBQ0JcdTUzNzNcdTUzRDFcdTkwMDFcdThGRDlcdTY3NjFcdTZEODhcdTYwNkZcdTMwMDIiLCJpbmZvIiksZmV0Y2goIi9hcGkvc3RydWN0dXJlZC1zZXNzaW9ucy8iK3QuaWQrIi9xdWV1ZWQvIitlKyIvcHJvbW90ZSIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe2V4cGVjdGVkVGV4dDppLGlkZW1wb3RlbmN5S2V5Om99KX0pLnRoZW4oZnVuY3Rpb24obCl7cmV0dXJuIGwub2s/bC5qc29uKCk6bC5qc29uKCkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm57fX0pLnRoZW4oZnVuY3Rpb24oYyl7dGhyb3cgbmV3IEVycm9yKGMmJmMuZXJyb3J8fCJcdTdBQ0JcdTUzNzNcdTUzRDFcdTkwMDFcdTU5MzFcdThEMjUiKX0pfSkudGhlbihmdW5jdGlvbihsKXtpZihsJiZsLmlkJiYoUShsKSxsLmlkPT09ci5zZWxlY3RlZElkKSl7dmFyIGM9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGYpe3JldHVybiBmLmlkPT09bC5pZH0pfHxsO3IuY3VycmVudE1lc3NhZ2VzPWplKGMsWmUoYyxsLm91dHB1dCwhMSkpLFVlKCEwKSxsdCgpfXIucXVldWVCYXJQcm9tb3Rpbmc9ITF9KS5jYXRjaChmdW5jdGlvbihsKXtyLnF1ZXVlQmFyUHJvbW90aW5nPSExLGRpKHQsdSksayhsJiZsLm1lc3NhZ2V8fCJcdTdBQ0JcdTUzNzNcdTUzRDFcdTkwMDFcdTU5MzFcdThEMjVcdTMwMDIiLCJlcnJvciIpfSl9fX19ZnVuY3Rpb24gVWYoZSx0KXt2YXIgbj1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oZCl7cmV0dXJuIGQuaWQ9PT1yLnNlbGVjdGVkSWR9KTtpZihuKXt2YXIgaT1BcnJheS5pc0FycmF5KG4ucXVldWVkTWVzc2FnZXMpP24ucXVldWVkTWVzc2FnZXMuc2xpY2UoKTpbXTtpZighKGkubGVuZ3RoPD0xKSYmdCl7dmFyIGE9dC5wYXJlbnRFbGVtZW50O2lmKGEpe3ZhciB1PU51bWJlcih0LmdldEF0dHJpYnV0ZSgiZGF0YS1pbmRleCIpKSxzPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGEuY2hpbGRyZW4pLG89cy5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIGQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCl9KSxsPTM7by5sZW5ndGg+PTImJihsPU1hdGgubWF4KDAsb1sxXS50b3Atb1swXS50b3Atb1swXS5oZWlnaHQpKSxlLnByZXZlbnREZWZhdWx0KCk7dHJ5e3Quc2V0UG9pbnRlckNhcHR1cmUoZS5wb2ludGVySWQpfWNhdGNoe31pZihuYXZpZ2F0b3ImJm5hdmlnYXRvci52aWJyYXRlKXRyeXtuYXZpZ2F0b3IudmlicmF0ZSg4KX1jYXRjaHt9ci5xdWV1ZUJhckRyYWc9e3BvaW50ZXJJZDplLnBvaW50ZXJJZCxoYW5kbGVFbDp0LGl0ZW1FbDp0LGxpc3RFbDphLHNpYmxpbmdzOnMscmVjdHM6byxvcmlnSW5kZXg6dSx0YXJnZXRJbmRleDp1LHN0YXJ0WTplLmNsaWVudFksZ2FwOmwscXVldWVTbmFwc2hvdDppfSx0LmNsYXNzTGlzdC5hZGQoImRyYWdnaW5nIikscy5mb3JFYWNoKGZ1bmN0aW9uKGQpe2QhPT10JiZkLmNsYXNzTGlzdC5hZGQoInF1ZXVlLWJhci1pdGVtLXNsaWRpbmciKX0pO3ZhciBjPWZ1bmN0aW9uKGQpe0tmKGQpfSxmPWZ1bmN0aW9uKGQpe0pmKGQpfTtyLnF1ZXVlQmFyRHJhZy5tb3ZlSGFuZGxlcj1jLHIucXVldWVCYXJEcmFnLnVwSGFuZGxlcj1mLHQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcm1vdmUiLGMpLHQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIixmKSx0LmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJjYW5jZWwiLGYpfX19fWZ1bmN0aW9uIFZmKGUsdCxuLGkpe2Zvcih2YXIgYT1uLmxlbmd0aCx1PVtdLHM9MDtzPGE7cysrKXUucHVzaChzKTt1LnNwbGljZShlLDEpLHUuc3BsaWNlKHQsMCxlKTtmb3IodmFyIG89blswXS50b3AsbD1uWzBdLnRvcCxjPTE7YzxhO2MrKyluW2NdLnRvcDxsJiYobD1uW2NdLnRvcCk7Zm9yKHZhciBmPXt9LGQ9bCx2PTA7djxhO3YrKyl7dmFyIGc9dVt2XTtmW2ddPWQsZCs9bltnXS5oZWlnaHQraX1yZXR1cm4gZn1mdW5jdGlvbiBLZihlKXt2YXIgdD1yLnF1ZXVlQmFyRHJhZztpZighKCF0fHxlLnBvaW50ZXJJZCE9PXQucG9pbnRlcklkKSl7ZS5wcmV2ZW50RGVmYXVsdCgpO3ZhciBuPWUuY2xpZW50WS10LnN0YXJ0WTt0Lml0ZW1FbC5zdHlsZS50cmFuc2Zvcm09InRyYW5zbGF0ZVkoIituKyJweCkiO2Zvcih2YXIgaT10LnJlY3RzW3Qub3JpZ0luZGV4XS50b3ArdC5yZWN0c1t0Lm9yaWdJbmRleF0uaGVpZ2h0LzIrbixhPXQub3JpZ0luZGV4LHU9MDt1PHQucmVjdHMubGVuZ3RoO3UrKylpZih1IT09dC5vcmlnSW5kZXgpe3ZhciBzPXQucmVjdHNbdV0udG9wK3QucmVjdHNbdV0uaGVpZ2h0LzI7dTx0Lm9yaWdJbmRleCYmaTxzP2E9TWF0aC5taW4oYSx1KTp1PnQub3JpZ0luZGV4JiZpPnMmJihhPU1hdGgubWF4KGEsdSkpfWlmKGEhPT10LnRhcmdldEluZGV4KXt0LnRhcmdldEluZGV4PWE7dmFyIG89VmYodC5vcmlnSW5kZXgsYSx0LnJlY3RzLHQuZ2FwKTt0LnNpYmxpbmdzLmZvckVhY2goZnVuY3Rpb24obCxjKXtpZihjIT09dC5vcmlnSW5kZXgpe3ZhciBmPW9bY10tdC5yZWN0c1tjXS50b3A7bC5zdHlsZS50cmFuc2Zvcm09Zj8idHJhbnNsYXRlWSgiK2YrInB4KSI6IiJ9fSl9fX1mdW5jdGlvbiBKZihlKXt2YXIgdD1yLnF1ZXVlQmFyRHJhZztpZighKCF0fHxlJiZlLnBvaW50ZXJJZCE9PXQucG9pbnRlcklkKSl7dHJ5e3QuaGFuZGxlRWwucmVsZWFzZVBvaW50ZXJDYXB0dXJlKHQucG9pbnRlcklkKX1jYXRjaHt9dC5oYW5kbGVFbC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsdC5tb3ZlSGFuZGxlciksdC5oYW5kbGVFbC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVydXAiLHQudXBIYW5kbGVyKSx0LmhhbmRsZUVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJjYW5jZWwiLHQudXBIYW5kbGVyKTt2YXIgbj10Lm9yaWdJbmRleCxpPXQudGFyZ2V0SW5kZXgsYT10LnF1ZXVlU25hcHNob3Q7aWYodC5zaWJsaW5ncy5mb3JFYWNoKGZ1bmN0aW9uKGMpe2Muc3R5bGUudHJhbnNmb3JtPSIiLGMuY2xhc3NMaXN0LnJlbW92ZSgicXVldWUtYmFyLWl0ZW0tc2xpZGluZyIpfSksdC5pdGVtRWwuY2xhc3NMaXN0LnJlbW92ZSgiZHJhZ2dpbmciKSxyLnF1ZXVlQmFyRHJhZz1udWxsLG49PT1pKXtsdCgpO3JldHVybn1mb3IodmFyIHU9W10scz0wO3M8YS5sZW5ndGg7cysrKXUucHVzaChzKTt1LnNwbGljZShuLDEpLHUuc3BsaWNlKGksMCxuKTt2YXIgbz11Lm1hcChmdW5jdGlvbihjKXtyZXR1cm4gYVtjXX0pLGw9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGMpe3JldHVybiBjLmlkPT09ci5zZWxlY3RlZElkfSk7aWYoIWwpe2x0KCk7cmV0dXJufVEoe2lkOmwuaWQscXVldWVkTWVzc2FnZXM6b30pLGx0KCksZmV0Y2goIi9hcGkvc3RydWN0dXJlZC1zZXNzaW9ucy8iK2wuaWQrIi9xdWV1ZWQiLHttZXRob2Q6IlBBVENIIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7b3JkZXI6dX0pfSkudGhlbihmdW5jdGlvbihjKXtpZighYy5vaylyZXR1cm4gYy5qc29uKCkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm57fX0pLnRoZW4oZnVuY3Rpb24oZil7dGhyb3cgbmV3IEVycm9yKGYmJmYuZXJyb3J8fCJcdTYzOTJcdTVFOEZcdTU5MzFcdThEMjUiKX0pfSkuY2F0Y2goZnVuY3Rpb24oYyl7ZGkobCxhKSxrKGMmJmMubWVzc2FnZXx8Ilx1OEMwM1x1NjU3NFx1NjM5Mlx1OTYxRlx1OTg3QVx1NUU4Rlx1NTkzMVx1OEQyNVx1MzAwMiIsImVycm9yIil9KX19ZnVuY3Rpb24gR2YoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVldWUtYmFyLWhvc3QiKTshZXx8ZS5fX3F1ZXVlRGVsZWdhdGVkfHwoZS5fX3F1ZXVlRGVsZWdhdGVkPSEwLGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHQpe3ZhciBuPXQudGFyZ2V0LGk9biYmbi5jbG9zZXN0P24uY2xvc2VzdCgiW2RhdGEtYWN0aW9uXSIpOm51bGw7aWYoaSYmZS5jb250YWlucyhpKSl7dmFyIGE9aS5nZXRBdHRyaWJ1dGUoImRhdGEtYWN0aW9uIik7aWYoYT09PSJkcmFnIilyZXR1cm47aWYodC5wcmV2ZW50RGVmYXVsdCgpLHQuc3RvcFByb3BhZ2F0aW9uKCksYT09PSJwcm9tb3RlLWl0ZW0iKXt2YXIgdT1pLmNsb3Nlc3QoIi5xdWV1ZS1iYXItaXRlbSIpO3UmJnpmKE51bWJlcih1LmdldEF0dHJpYnV0ZSgiZGF0YS1pbmRleCIpKSl9ZWxzZSBpZihhPT09ImRlbGV0ZSIpe3ZhciBzPWkuY2xvc2VzdCgiLnF1ZXVlLWJhci1pdGVtIik7cyYmUmYoTnVtYmVyKHMuZ2V0QXR0cmlidXRlKCJkYXRhLWluZGV4IikpKX1lbHNlIGE9PT0iY2xlYXItYWxsIiYmV2YoKTtyZXR1cm59fSksZS5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVyZG93biIsZnVuY3Rpb24odCl7aWYoISh0LmJ1dHRvbiE9PXZvaWQgMCYmdC5idXR0b24hPT0wKSl7dmFyIG49dC50YXJnZXQ7aWYoIShuJiZuLmNsb3Nlc3QmJm4uY2xvc2VzdCgnW2RhdGEtYWN0aW9uPSJkZWxldGUiXSwgW2RhdGEtYWN0aW9uPSJwcm9tb3RlLWl0ZW0iXSwgW2RhdGEtYWN0aW9uPSJjbGVhci1hbGwiXSwgW2RhdGEtYWN0aW9uPSJleHBhbmQiXScpKSl7dmFyIGk9biYmbi5jbG9zZXN0P24uY2xvc2VzdCgiLnF1ZXVlLWJhci1pdGVtIik6bnVsbDtpJiZVZih0LGkpfX19KSxlLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKHQpe3Qua2V5PT09IkVzY2FwZSImJl9mKCkmJih0LnN0b3BQcm9wYWdhdGlvbigpLE5mKCExKSl9KSl9ZnVuY3Rpb24genMoZSl7aWYoIWV8fCFBcnJheS5pc0FycmF5KGUuY29udGVudCkpcmV0dXJuIDA7Zm9yKHZhciB0PTAsbj0wO248ZS5jb250ZW50Lmxlbmd0aDtuKyspe3ZhciBpPWUuY29udGVudFtuXTtpZihpKXtpZih0eXBlb2YgaS50ZXh0PT0ic3RyaW5nIiYmKHQrPWkudGV4dC5sZW5ndGgpLHR5cGVvZiBpLnRoaW5raW5nPT0ic3RyaW5nIiYmKHQrPWkudGhpbmtpbmcubGVuZ3RoKSx0eXBlb2YgaS5jb250ZW50PT0ic3RyaW5nIil0Kz1pLmNvbnRlbnQubGVuZ3RoO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShpLmNvbnRlbnQpKWZvcih2YXIgYT0wO2E8aS5jb250ZW50Lmxlbmd0aDthKyspe3ZhciB1PWkuY29udGVudFthXTt1JiZ0eXBlb2YgdS50ZXh0PT0ic3RyaW5nIiYmKHQrPXUudGV4dC5sZW5ndGgpfWlmKGkuaW5wdXQpdHJ5e3QrPUpTT04uc3RyaW5naWZ5KGkuaW5wdXQpLmxlbmd0aH1jYXRjaHt9fX1yZXR1cm4gdH1mdW5jdGlvbiBZZihlLHQpe2lmKCFlKXJldHVybiB0O2lmKCF0KXJldHVybiBlO3ZhciBuPXpzKGUpLGk9enModCk7cmV0dXJuIGk+PW4/dDpPYmplY3QuYXNzaWduKHt9LGUse3VzYWdlOnQudXNhZ2V8fGUudXNhZ2V9KX1mdW5jdGlvbiBqZShlLHQpe3ZhciBuPUFycmF5LmlzQXJyYXkodCk/c3IodCk6W10saT1BcnJheS5pc0FycmF5KG4pP24uc2xpY2UoKTpbXTtpZighZXx8ZS5zZXNzaW9uS2luZCE9PSJzdHJ1Y3R1cmVkIilyZXR1cm4gaTtpZihlLnN0cnVjdHVyZWRTdGF0ZSYmZS5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQpe3ZhciBhPWlbaS5sZW5ndGgtMV07KCFhfHxhLnJvbGUhPT0iYXNzaXN0YW50IikmJmkucHVzaCh7cm9sZToiYXNzaXN0YW50Iixjb250ZW50Olt7dHlwZToidGV4dCIsdGV4dDoiIixfX3Byb2Nlc3Npbmc6ITB9XX0pfXJldHVybiBpfWZ1bmN0aW9uIFVzKCl7dmFyIGU9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHQpe3JldHVybiB0LmlkPT09ci5zZWxlY3RlZElkfSk7enIoZSksc24oKX1mdW5jdGlvbiBWcyhlKXt2YXIgdD1OdCgpLG49dCYmdC5wcm92aWRlcj09PSJjb2RleCI7cmV0dXJuIGUmJihlLmVycm9yQ29kZT09PSJTRVNTSU9OX05PVF9SVU5OSU5HInx8ZS5lcnJvckNvZGU9PT0iU0VTU0lPTl9OT19QVFkiKT9uPyJDb2RleCBcdTRGMUFcdThCRERcdTVERjJcdTdFRDNcdTY3NUZcdUZGMUJcdTgyRTVcdTVCNThcdTU3MjggQ29kZXggXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHVGRjBDXHU1QzA2XHU1NzI4XHU0RjYwXHU0RTBCXHU2QjIxXHU1M0QxXHU5MDAxXHU2RDg4XHU2MDZGXHU2NUY2XHU4MUVBXHU1MkE4XHU2MDYyXHU1OTBEXHUzMDAyIjoiXHU0RjFBXHU4QkREXHU1REYyXHU3RUQzXHU2NzVGXHVGRjFCXHU4MkU1XHU1QjU4XHU1NzI4IENsYXVkZSBcdTUzODZcdTUzRjJcdTRGMUFcdThCRERcdUZGMENcdTVDMDZcdTU3MjhcdTRGNjBcdTRFMEJcdTZCMjFcdTUzRDFcdTkwMDFcdTZEODhcdTYwNkZcdTY1RjZcdTgxRUFcdTUyQThcdTYwNjJcdTU5MERcdTMwMDIiOmUmJmUuZXJyb3JDb2RlPT09IlNFU1NJT05fTk9UX0ZPVU5EIj8iXHU0RjFBXHU4QkREXHU0RTBEXHU1QjU4XHU1NzI4XHVGRjBDXHU4QkY3XHU5MUNEXHU2NUIwXHU5MDA5XHU2MkU5XHU2MjE2XHU2NUIwXHU1RUZBXHU0RjFBXHU4QkREXHUzMDAyIjplJiZlLm1lc3NhZ2V8fChuPyJDb2RleCBcdTRGMUFcdThCRERcdTY2ODJcdTRFMERcdTUzRUZcdTc1MjhcdUZGMUJcdTgyRTVcdTVCNThcdTU3MjggQ29kZXggXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHVGRjBDXHU1QzA2XHU4MUVBXHU1MkE4XHU1QzFEXHU4QkQ1XHU2MDYyXHU1OTBEXHUzMDAyIjoiXHU0RjFBXHU4QkREXHU2NjgyXHU0RTBEXHU1M0VGXHU3NTI4XHVGRjFCXHU4MkU1XHU1QjU4XHU1NzI4IENsYXVkZSBcdTUzODZcdTUzRjJcdTRGMUFcdThCRERcdUZGMENcdTVDMDZcdTgxRUFcdTUyQThcdTVDMURcdThCRDVcdTYwNjJcdTU5MERcdTMwMDIiKX1mdW5jdGlvbiBLcyhlKXt2YXIgdD1uZXcgRXJyb3IoZSYmZS5lcnJvcnx8Ilx1NEYxQVx1OEJERFx1NURGMlx1N0VEM1x1Njc1Rlx1MzAwMiIpO3JldHVybiBlJiZ0eXBlb2YgZT09Im9iamVjdCImJih0LmVycm9yQ29kZT1lLmVycm9yQ29kZXx8bnVsbCx0LnNlc3Npb25JZD1lLnNlc3Npb25JZHx8ci5zZWxlY3RlZElkfHxudWxsLHQuc2Vzc2lvblN0YXR1cz1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSwic2Vzc2lvblN0YXR1cyIpP2Uuc2Vzc2lvblN0YXR1czpudWxsKSx0fWZ1bmN0aW9uIEpzKGUpe3JldHVybiBlJiYoZS5lcnJvckNvZGU9PT0iU0VTU0lPTl9OT1RfUlVOTklORyJ8fGUuZXJyb3JDb2RlPT09IlNFU1NJT05fTk9fUFRZInx8ZS5lcnJvckNvZGU9PT0iU0VTU0lPTl9OT1RfRk9VTkQiKX1mdW5jdGlvbiBRZihlLHQpe2UmJlEoe2lkOmUsc3RhdHVzOnR8fCJleGl0ZWQifSl9ZnVuY3Rpb24gZmcoZSl7aWYoIWV8fCFBcnJheS5pc0FycmF5KGUubWVzc2FnZXMpfHxlLm1lc3NhZ2VzLmxlbmd0aDwyKXJldHVybiExO3ZhciB0PWUubWVzc2FnZXMuc29tZShmdW5jdGlvbihpKXtyZXR1cm4gaSYmaS5yb2xlPT09InVzZXIiJiZBcnJheS5pc0FycmF5KGkuY29udGVudCkmJmkuY29udGVudC5zb21lKGZ1bmN0aW9uKGEpe3JldHVybiBhJiZhLnR5cGU9PT0idGV4dCImJnR5cGVvZiBhLnRleHQ9PSJzdHJpbmciJiZhLnRleHQudHJpbSgpLmxlbmd0aD4wfSl9KSxuPWUubWVzc2FnZXMuc29tZShmdW5jdGlvbihpKXtyZXR1cm4gaSYmaS5yb2xlPT09ImFzc2lzdGFudCImJkFycmF5LmlzQXJyYXkoaS5jb250ZW50KSYmaS5jb250ZW50LnNvbWUoZnVuY3Rpb24oYSl7cmV0dXJuIGEmJmEudHlwZT09PSJ0ZXh0IiYmdHlwZW9mIGEudGV4dD09InN0cmluZyImJmEudGV4dC50cmltKCkubGVuZ3RoPjB9KX0pO3JldHVybiB0JiZufWZ1bmN0aW9uIGJhKGUpe3JldHVybiEhKGUmJiFhZShlKSYmKGUucHJvdmlkZXI9PT0iY2xhdWRlInx8ZS5wcm92aWRlcj09PSJjb2RleCIpJiZlLnN0YXR1cyE9PSJydW5uaW5nIiYmZS5jbGF1ZGVTZXNzaW9uSWQpfWZ1bmN0aW9uICRmKGUsdCl7aWYoIWUpcmV0dXJuIGsoIlx1NEYxQVx1OEJERFx1NEUwRFx1NUI1OFx1NTcyOFx1RkYwQ1x1OEJGN1x1OTFDRFx1NjVCMFx1OTAwOVx1NjJFOVx1NjIxNlx1NjVCMFx1NUVGQVx1NEYxQVx1OEJERFx1MzAwMiIsImVycm9yIiksUHJvbWlzZS5yZXNvbHZlKG51bGwpO2lmKGUuc3RhdHVzPT09InJ1bm5pbmciKXJldHVybiBQcm9taXNlLnJlc29sdmUoZSk7aWYoIWJhKGUpKXt2YXIgbj1lJiZlLnByb3ZpZGVyPT09ImNvZGV4Ij8iQ29kZXgiOiJDbGF1ZGUiO3JldHVybiBrKCJcdThCRTVcdTRGMUFcdThCRERcdTZDQTFcdTY3MDlcdTUzRUZcdTYwNjJcdTU5MERcdTc2ODQgIituKyIgXHU1Mzg2XHU1M0YyXHU0RTBBXHU0RTBCXHU2NTg3XHVGRjBDXHU4QkY3XHU2NUIwXHU1RUZBXHU0RjFBXHU4QkREXHUzMDAyIiwiZXJyb3IiKSxQcm9taXNlLnJlc29sdmUobnVsbCl9cmV0dXJuIGlvKGUuaWQsdCkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaT8oUShpKSxtZSgpLFRuKGkuaWQpLHBuKGkuaWQpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4ganQoITApLGl9KSk6bnVsbH0pfWZ1bmN0aW9uIFhmKGUsdCl7cmV0dXJuW3QsIlxyIl19ZnVuY3Rpb24gWmYoZSx0LG4saSl7dmFyIGE9QXJyYXkuaXNBcnJheShlKT9lLmZpbHRlcihmdW5jdGlvbihzKXtyZXR1cm4hIXN9KTpbXTtpZihhLmxlbmd0aD09PTApcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO3ZhciB1PXR5cGVvZiBuPT0ibnVtYmVyIj9uOjA7cmV0dXJuIGEucmVkdWNlKGZ1bmN0aW9uKHMsbyxsKXtyZXR1cm4gcy50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGw+MCYmdT4wP25ldyBQcm9taXNlKGZ1bmN0aW9uKGMpe3NldFRpbWVvdXQoYyx1KX0pLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gRXQobyxsPT09YS5sZW5ndGgtMT90OnZvaWQgMCxpKX0pOkV0KG8sbD09PWEubGVuZ3RoLTE/dDp2b2lkIDAsaSl9KX0sUHJvbWlzZS5yZXNvbHZlKCkpfXZhciBlcD01ZTMsdHA9MTAwO2Z1bmN0aW9uIEVhKGUpe2UmJihyLnBlbmRpbmdNZXNzYWdlcy5sZW5ndGg+PXRwJiZyLnBlbmRpbmdNZXNzYWdlcy5zaGlmdCgpLHIucGVuZGluZ01lc3NhZ2VzLnB1c2goe2lucHV0OmUsYXQ6RGF0ZS5ub3coKX0pKX1mdW5jdGlvbiBucChlKXt2YXIgdD1BcnJheS5pc0FycmF5KGUpP2UuZmlsdGVyKGZ1bmN0aW9uKG4pe3JldHVybiEhbn0pOltdO3QuZm9yRWFjaChmdW5jdGlvbihuKXtFYShuKX0pfWZ1bmN0aW9uIHJwKGUpe2lmKCEodHlwZW9mIGUhPSJzdHJpbmcifHwhZSkpe3ZhciB0PWUucmVwbGFjZSgvXHgxYlxbMjAwfi9nLCIiKS5yZXBsYWNlKC9ceDFiXFsyMDF+L2csIiIpOy8oPzpefFxuKVxzKlwvY2xlYXJccyooPzpccnxcbnwkKS8udGVzdCh0KSYmdHlwZW9mIHI8InUiJiZyJiYoci50ZXJtaW5hbE91dHB1dE1hcmtlcj0oci50ZXJtaW5hbE91dHB1dCYmci50ZXJtaW5hbE91dHB1dC5sZW5ndGgpfDApfX1mdW5jdGlvbiBFdChlLHQsbil7cmV0dXJuIWV8fCFyLnNlbGVjdGVkSWQ/UHJvbWlzZS5yZXNvbHZlKCk6KHJwKGUpLHIubWVzc2FnZVF1ZXVlLnB1c2goZSksci5pbnB1dFF1ZXVlPXIuaW5wdXRRdWV1ZS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGlwKGUsdCxuKS5maW5hbGx5KGZ1bmN0aW9uKCl7dmFyIGk9ci5tZXNzYWdlUXVldWUuaW5kZXhPZihlKTtpPi0xJiZyLm1lc3NhZ2VRdWV1ZS5zcGxpY2UoaSwxKX0pfSksci5pbnB1dFF1ZXVlKX1mdW5jdGlvbiBpcChlLHQsbil7aWYoIXIuc2VsZWN0ZWRJZClyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7dmFyIGk9ci5zZWxlY3RlZElkLGE9bnx8ci5jdXJyZW50VmlldztyZXR1cm4geGYoKT9yLndzQ29ubmVjdGVkP2ZldGNoKCIvYXBpL3Nlc3Npb25zLyIraSsiL2lucHV0Iix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7aW5wdXQ6ZSx2aWV3OmEsc2hvcnRjdXRLZXk6dHx8dm9pZCAwfSl9KS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiB1Lm9rP3UuanNvbigpOnUuanNvbigpLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJue2Vycm9yOiJcdThCRjdcdTZDNDJcdTU5MzFcdThEMjUifX0pLnRoZW4oZnVuY3Rpb24ocyl7dmFyIG89S3Mocyk7dGhyb3cgby5odHRwU3RhdHVzPXUuc3RhdHVzLGNvbnNvbGUuZXJyb3IoIlt3YW5kXSBwb3N0SW5wdXQ6IHJlcXVlc3QgZmFpbGVkIix7c3RhdHVzOnUuc3RhdHVzLGVycm9yQ29kZTpvLmVycm9yQ29kZSxtZXNzYWdlOm8ubWVzc2FnZSxzZXNzaW9uSWQ6aX0pLEpzKG8pJiZRZihpLG8uc2Vzc2lvblN0YXR1c3x8ImV4aXRlZCIpLG99KX0pLnRoZW4oZnVuY3Rpb24odSl7cmV0dXJuIHUmJnUuaWQmJihRKHUpLHUuaWQ9PT1yLnNlbGVjdGVkSWQmJih1Lm1lc3NhZ2VzJiZ1Lm1lc3NhZ2VzLmxlbmd0aD4wJiYoci5jdXJyZW50TWVzc2FnZXM9dS5tZXNzYWdlcyksVWUoITApKSksdX0pOihFYShlKSxjb25zb2xlLmxvZygiW3dhbmRdIHBvc3RJbnB1dDogV2ViU29ja2V0IGRpc2Nvbm5lY3RlZCwgcXVldWVkIG1lc3NhZ2UiLHtzZXNzaW9uSWQ6ci5zZWxlY3RlZElkLGlucHV0TGVuZ3RoOmUubGVuZ3RofSksUHJvbWlzZS5yZXNvbHZlKCkpOnIud3NDb25uZWN0ZWQ/KGNvbnNvbGUud2FybigiW3dhbmRdIHBvc3RJbnB1dDogc2Vzc2lvbiBub3QgcnVubmluZywgc2tpcHBpbmcgc2VuZCIse3Nlc3Npb25JZDpyLnNlbGVjdGVkSWR9KSxrKCJcdTRGMUFcdThCRERcdTY3MkFcdThGRDBcdTg4NENcdUZGMENcdTZCNjNcdTU3MjhcdTdCNDlcdTVGODVcdTgxRUFcdTUyQThcdTYwNjJcdTU5MERcdTU0MEVcdTkxQ0RcdThCRDVcdTMwMDIiLCJpbmZvIiksUHJvbWlzZS5yZXNvbHZlKCkpOihFYShlKSxjb25zb2xlLmxvZygiW3dhbmRdIHBvc3RJbnB1dDogc2Vzc2lvbiBub3QgcnVubmluZywgcXVldWVkIGZvciByZWNvbm5lY3QiLHtzZXNzaW9uSWQ6ci5zZWxlY3RlZElkLGlucHV0TGVuZ3RoOmUubGVuZ3RofSksUHJvbWlzZS5yZXNvbHZlKCkpfWZ1bmN0aW9uIHBnKGUpe3JldHVybiBFdChlKX1mdW5jdGlvbiBOdCgpe3JldHVybiByLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oZSl7cmV0dXJuIGUuaWQ9PT1yLnNlbGVjdGVkSWR9KXx8bnVsbH1mdW5jdGlvbiB2ZyhlKXtyZXR1cm4gZSYmZS5wcm92aWRlcj09PSJjb2RleCI/YApgOiJcciJ9ZnVuY3Rpb24gRmEoKXtyZXR1cm4hIXIuc2VsZWN0ZWRJZCYmci5jdXJyZW50Vmlldz09PSJ0ZXJtaW5hbCJ9ZnVuY3Rpb24gYXAoZSl7cmV0dXJuISghci50ZXJtaW5hbHx8IWV8fGUhPT1yLnNlbGVjdGVkSWR8fHIudGVybWluYWxTZXNzaW9uSWQmJnIudGVybWluYWxTZXNzaW9uSWQhPT1lKX1mdW5jdGlvbiBHcyhlKXtpZighci50ZXJtaW5hbEludGVyYWN0aXZlfHwhRmEoKXx8ZS5kZWZhdWx0UHJldmVudGVkfHxlLmlzQ29tcG9zaW5nKXJldHVybiExO3ZhciB0PWUudGFyZ2V0O3JldHVybiB0PyEodC5jbG9zZXN0JiZ0LmNsb3Nlc3QoIiNtaW5pLWtleWJvYXJkIil8fGZwKHQpKTohMH12YXIgdXA9e0VzYzoiZXNjYXBlIixBcnJvd1VwOiJ1cCIsQXJyb3dEb3duOiJkb3duIixBcnJvd0xlZnQ6ImxlZnQiLEFycm93UmlnaHQ6InJpZ2h0IixFbnRlcjoiZW50ZXIiLFRhYjoidGFiIixCYWNrc3BhY2U6ImJhY2tzcGFjZSIsSG9tZToiaG9tZSIsRW5kOiJlbmQiLFBhZ2VVcDoicGFnZXVwIixQYWdlRG93bjoicGFnZWRvd24iLERlbGV0ZToiZGVsZXRlIixJbnNlcnQ6Imluc2VydCIsIiAiOiJzcGFjZSJ9LHNwPXtzcGFjZToiICIsdGFiOiIJIixzaGlmdF90YWI6Ilx4MUJbWiIsYmFja3NwYWNlOiJceDdGIixob21lOiJceDFCW0giLGVuZDoiXHgxQltGIixwYWdldXA6Ilx4MUJbNX4iLHBhZ2Vkb3duOiJceDFCWzZ+IixkZWxldGU6Ilx4MUJbM34iLGluc2VydDoiXHgxQlsyfiJ9LFlzPXsiICI6MCwiWyI6MjcsIlxcIjoyOCwiXSI6MjksIl4iOjMwLF86MzF9LG9wPTQwMCxscD0xMCxjcD04LGZpPTU0LG9uPTgsd2E9W3trZXk6ImVudGVyIixsYWJlbDoiRW50ZXIifSx7a2V5OiJjdHJsX2MiLGxhYmVsOiJDdHJsK0MifSx7a2V5OiJlc2NhcGUiLGxhYmVsOiJFc2MifSx7a2V5OiJzaGlmdF90YWIiLGxhYmVsOiJTaGlmdCtUYWIifV0sZHA9bmV3IFNldChbIm1pbmkta2V5Ym9hcmQtZmFiIiwibWluaS1rZXlib2FyZC10b2dnbGUiLCJ0ZXJtaW5hbC1pbnRlcmFjdGl2ZS10b2dnbGUiXSk7ZnVuY3Rpb24gZnAoZSl7cmV0dXJuISEoZSYmZHAuaGFzKGUuaWQpKX12YXIgcHA9bmV3IFNldChbImN0cmwiLCJhbHQiLCJzaGlmdCJdKTtmdW5jdGlvbiBRcyhlKXtyZXR1cm4gcHAuaGFzKGUpfWZ1bmN0aW9uIHZwKGUpe3JldHVybiBzcFtlXXx8IiJ9ZnVuY3Rpb24gbXAoZSl7dmFyIHQ9ZS50b0xvd2VyQ2FzZSgpO3JldHVybiB0Pj0iYSImJnQ8PSJ6Ij9TdHJpbmcuZnJvbUNoYXJDb2RlKHQuY2hhckNvZGVBdCgwKS05Nik6T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKFlzLHQpP1N0cmluZy5mcm9tQ2hhckNvZGUoWXNbdF0pOiIifWZ1bmN0aW9uIGdwKGUpe3JldHVybiB1cFtlLmtleV18fGUua2V5fWZ1bmN0aW9uIGhwKGUsdCl7cmV0dXJue2N0cmw6ZS5jdHJsS2V5LGFsdDplLmFsdEtleSxzaGlmdDplLnNoaWZ0S2V5JiYodC5sZW5ndGg9PT0xfHx0PT09InRhYiIpLG1ldGE6ZS5tZXRhS2V5fX1mdW5jdGlvbiAkcyhlLHQpe2UmJkV0KGUsdCkuY2F0Y2goZnVuY3Rpb24oKXt9KX1mdW5jdGlvbiB5cCgpe2ZvKCl9ZnVuY3Rpb24gQ2EoZSl7ci5rZXlib2FyZFBvcHVwT3Blbj0hMSxlIT09ITEmJnZpKCksRnAoKX1mdW5jdGlvbiBicCgpe0ZhKCkmJkluKCFyLnRlcm1pbmFsSW50ZXJhY3RpdmUpfWZ1bmN0aW9uIEluKGUpe3ZhciB0PSEhZSYmRmEoKTtyLnRlcm1pbmFsSW50ZXJhY3RpdmUhPT10JiYoci50ZXJtaW5hbEludGVyYWN0aXZlPXQsdD8od3AoKSxDYSghMSkseXAoKSxrKCJcdTdFQzhcdTdBRUZcdTRFQTRcdTRFOTJcdTZBMjFcdTVGMEZcdTVERjJcdTVGMDBcdTU0MkYiLCJpbmZvIikpOihDcCgpLHZpKCkpLEJyKCkpfWZ1bmN0aW9uIEJhKCl7dmFyIGU9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKG4pe3JldHVybiBuLmlkPT09ci5zZWxlY3RlZElkfSksdD0hZXx8ZS5zdGF0dXMhPT0icnVubmluZyJ8fHIuY3VycmVudFZpZXchPT0idGVybWluYWwiO2lmKHQmJnIudGVybWluYWxJbnRlcmFjdGl2ZSl7SW4oITEpO3JldHVybn0oIWV8fHIuY3VycmVudFZpZXchPT0idGVybWluYWwiKSYmci5rZXlib2FyZFBvcHVwT3BlbiYmKHIua2V5Ym9hcmRQb3B1cE9wZW49ITEpLEJyKCl9ZnVuY3Rpb24gQnIoKXt2YXIgZT1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYil7cmV0dXJuIGIuaWQ9PT1yLnNlbGVjdGVkSWR9KSx0PWFlKGUpLG49ZSYmZS5wcm92aWRlcj09PSJjb2RleCIsaT10PyEhKGUmJmUuc3RydWN0dXJlZFN0YXRlJiZlLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCk6ISFlJiZlLnN0YXR1cz09PSJydW5uaW5nIixhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKSx1PVsidGVybWluYWwtaW50ZXJhY3RpdmUtdG9nZ2xlLXRvcCJdO3UuZm9yRWFjaChmdW5jdGlvbihiKXt2YXIgdz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChiKTtpZih3KXt3LmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsci50ZXJtaW5hbEludGVyYWN0aXZlKSx3LmNsYXNzTGlzdC50b2dnbGUoImlzLW9uIixyLnRlcm1pbmFsSW50ZXJhY3RpdmUpLHcuY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIix0fHxyLmN1cnJlbnRWaWV3IT09InRlcm1pbmFsInx8IWUpLHcuc2V0QXR0cmlidXRlKCJhcmlhLWNoZWNrZWQiLHIudGVybWluYWxJbnRlcmFjdGl2ZT8idHJ1ZSI6ImZhbHNlIik7dmFyIEU9dy5xdWVyeVNlbGVjdG9yKCIucGx1cy1wb3BvdmVyLXRvZ2dsZS1zdGF0ZSIpO0UmJihFLnRleHRDb250ZW50PXIudGVybWluYWxJbnRlcmFjdGl2ZT8iXHU1RjAwIjoiXHU1MTczIil9fSk7dmFyIHM9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LWhpbnQiKTtzJiYocy5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLHQ/ITA6ci5jdXJyZW50Vmlldz09PSJ0ZXJtaW5hbCIpLCF0JiZlJiYocy50ZXh0Q29udGVudD1uPyJFbnRlciBcdTUzRDFcdTkwMDEgXHhCNyBjaGF0IFx1NEUzQVx1ODlFM1x1Njc5MFx1ODlDNlx1NTZGRVx1RkYwQ3Rlcm1pbmFsIFx1NEUzQVx1NTM5Rlx1NTlDQlx1OEY5M1x1NTFGQSI6IkVudGVyIFx1NTNEMVx1OTAwMSBceEI3IFNoaWZ0K0VudGVyIFx1NjM2Mlx1ODg0QyIpKTt2YXIgbz0hdCYmIWkmJmJhKGUpO2EmJihhLnBsYWNlaG9sZGVyPXFvKGUsci50ZXJtaW5hbEludGVyYWN0aXZlKSxhLmRpc2FibGVkPSF0JiYhIWUmJiFpJiYhbyxhLnNldEF0dHJpYnV0ZSgiYXJpYS1kaXNhYmxlZCIsYS5kaXNhYmxlZD8idHJ1ZSI6ImZhbHNlIiksYS5yZWFkT25seT0hMSxhLmNsYXNzTGlzdC50b2dnbGUoImlzLXRlcm1pbmFsLXBhc3N0aHJvdWdoIiwhIXIudGVybWluYWxJbnRlcmFjdGl2ZSkpO3ZhciBsPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1jb21wb3NlciIpO2wmJnIudGVybWluYWxJbnRlcmFjdGl2ZSYmbC5jbGFzc0xpc3QuY29udGFpbnMoInZvaWNlLW1vZGUiKSYmKGwuY2xhc3NMaXN0LnJlbW92ZSgidm9pY2UtbW9kZSIpLFRlLnJlY29yZGluZz0hMSxnYSgpKTt2YXIgYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2VuZC1pbnB1dC1idXR0b24iKSxmPXQmJmk7YyYmKGMuZGlzYWJsZWQ9IXQmJiEhZSYmIWkmJiFvLGMuc2V0QXR0cmlidXRlKCJ0aXRsZSIsdD9mPyJcdTYzOTJcdTk2MUZcdTUzRDFcdTkwMDFcdUZGMDhcdTVGNTNcdTUyNERcdTU2REVcdTU5MERcdTdFRDNcdTY3NUZcdTU0MEVcdTU5MDRcdTc0MDZcdUZGMDkiOiJcdTUzRDFcdTkwMDEiOm4/aT8iXHU1M0QxXHU5MDAxXHU3RUQ5IENvZGV4IjoiQ29kZXggXHU0RjFBXHU4QkREXHU1REYyXHU3RUQzXHU2NzVGIjohZXx8aXx8bz8iXHU1M0QxXHU5MDAxIjoiXHU0RjFBXHU4QkREXHU1REYyXHU3RUQzXHU2NzVGIiksYy5jbGFzc0xpc3QudG9nZ2xlKCJxdWV1ZS1tb2RlIixmKSk7dmFyIGQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0b3AtYnV0dG9uIik7aWYoZCl7dmFyIHY9dHUoZSk7ZC5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLCF2LmFjdGl2ZSl9dmFyIGc9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0b3AtYnV0dG9uIik7aWYoZyl7dmFyIGg9dHUoZSk7Zy5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLCFoLmFjdGl2ZSl9dmFyIG09ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO20mJm0uY2xhc3NMaXN0LnRvZ2dsZSgiaW50ZXJhY3RpdmUiLCF0JiZyLnRlcm1pbmFsSW50ZXJhY3RpdmUpLGdzKCl9ZnVuY3Rpb24gcGkoKXt2YXIgZT13aW5kb3cuZ2V0U2VsZWN0aW9uJiZ3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7aWYoIWV8fGUuaXNDb2xsYXBzZWQpcmV0dXJuITE7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2lmKCF0KXJldHVybiExO3ZhciBuPWUuYW5jaG9yTm9kZTtyZXR1cm4gbiYmbi5ub2RlVHlwZT09PTMmJihuPW4ucGFyZW50Tm9kZSksISEobiYmdC5jb250YWlucyhuKSl9ZnVuY3Rpb24gRGEoZSl7aWYoR3MoZSkmJiFlLm1ldGFLZXkpe3ZhciB0PWdwKGUpO2lmKHQpe3ZhciBuPWhwKGUsdCk7aWYoIVFzKHQpJiYhKG4uY3RybCYmdC5sZW5ndGg9PT0xJiZ0LnRvTG93ZXJDYXNlKCk9PT0iYyImJnBpKCkpKXt2YXIgaT1acyh0LG4pO2kmJihlLnByZXZlbnREZWZhdWx0KCksJHMoaSx0KSl9fX19ZnVuY3Rpb24gRXAoKXtyLnRlcm1pbmFsJiZ6ZCg1MDApfWZ1bmN0aW9uIEZwKCl7bXIoKX1mdW5jdGlvbiBtZyhlKXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKSwhKHIuY3VycmVudFZpZXchPT0idGVybWluYWwifHwhci5zZWxlY3RlZElkKSYmKHIua2V5Ym9hcmRQb3B1cE9wZW49IXIua2V5Ym9hcmRQb3B1cE9wZW4sQnIoKSl9ZnVuY3Rpb24gWHMoKXtyLmtleWJvYXJkUG9wdXBPcGVuPSExLEJyKCl9ZnVuY3Rpb24gd3AoKXtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixEYSwhMCl9ZnVuY3Rpb24gQ3AoKXtkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIixEYSwhMCl9ZnVuY3Rpb24gWnMoZSx0KXt2YXIgbj10fHx7Y3RybDohMSxhbHQ6ITEsc2hpZnQ6ITF9O2lmKFFzKGUpKXJldHVybiIiO2lmKGU9PT0idGFiIiYmbi5zaGlmdClyZXR1cm4iXHgxQltaIjt2YXIgaT12cChlKTtpZihpKXJldHVybiBpO2lmKGUuaW5kZXhPZigiY3RybF8iKT09PTApcmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUoZS5jaGFyQ29kZUF0KGUubGVuZ3RoLTEpLTk2KTt2YXIgYT1EcihlKTtpZihhKXJldHVybiBhO2lmKCFlKXJldHVybiIiO3ZhciB1PWUubGVuZ3RoPT09MT9lOiIiO3JldHVybiB1PyhuLnNoaWZ0JiYodT11LnRvVXBwZXJDYXNlKCkpLG4uY3RybD9tcCh1KTpuLmFsdD8iXHgxQiIrdTp1KToiIn1mdW5jdGlvbiB2aSgpe3IubW9kaWZpZXJzLmN0cmw9ITEsci5tb2RpZmllcnMuYWx0PSExLHIubW9kaWZpZXJzLnNoaWZ0PSExLEJwKCl9ZnVuY3Rpb24gQnAoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibWluaS1rZXlib2FyZCIpO2UmJlsiY3RybCIsImFsdCIsInNoaWZ0Il0uZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgbj1lLnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLWtleT0iJyt0KyciXScpO24mJm4uY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIiwhIXIubW9kaWZpZXJzW3RdKX0pfWZ1bmN0aW9uIERyKGUpe3N3aXRjaChlKXtjYXNlInllcyI6cmV0dXJuInlcciI7Y2FzZSJubyI6cmV0dXJuIm5cciI7Y2FzZSJ1cCI6cmV0dXJuIlx4MUJbQSI7Y2FzZSJkb3duIjpyZXR1cm4iXHgxQltCIjtjYXNlImxlZnQiOnJldHVybiJceDFCW0QiO2Nhc2UicmlnaHQiOnJldHVybiJceDFCW0MiO2Nhc2UiZW50ZXIiOnJldHVybiJcciI7Y2FzZSJjdHJsX2MiOnJldHVybiIDIjtjYXNlImN0cmxfZCI6cmV0dXJuIgQiO2Nhc2UiY3RybF9sIjpyZXR1cm4iXGYiO2Nhc2UiY3RybF91IjpyZXR1cm4iFSI7Y2FzZSJjdHJsX2siOnJldHVybiJcdiI7Y2FzZSJjdHJsX3ciOnJldHVybiIXIjtjYXNlImN0cmxfeiI6cmV0dXJuIhoiO2Nhc2UiZXNjYXBlIjpyZXR1cm4iXHgxQiI7ZGVmYXVsdDpyZXR1cm4iIn19ZnVuY3Rpb24gRHAoKXtpZihyLnBlbmRpbmdNZXNzYWdlcy5sZW5ndGghPT0wKXt2YXIgZT1OdCgpO2lmKGFlKGUpKXtyLnBlbmRpbmdNZXNzYWdlcz1bXTtyZXR1cm59dmFyIHQ9RGF0ZS5ub3coKSxuPVtdLGk9MDtyLnBlbmRpbmdNZXNzYWdlcy5mb3JFYWNoKGZ1bmN0aW9uKHUpe2lmKHR5cGVvZiB1PT0ic3RyaW5nIil7bi5wdXNoKHUpO3JldHVybn1pZighKCF1fHx0eXBlb2YgdS5pbnB1dCE9InN0cmluZyIpKXtpZih0LSh1LmF0fHwwKT5lcCl7aSsrO3JldHVybn1uLnB1c2godS5pbnB1dCl9fSksci5wZW5kaW5nTWVzc2FnZXM9W10saT4wJiZjb25zb2xlLmxvZygiW3dhbmRdIGZsdXNoUGVuZGluZ01lc3NhZ2VzOiBkcm9wcGVkICIraSsiIHN0YWxlIGlucHV0KHMpIik7dmFyIGE9UHJvbWlzZS5yZXNvbHZlKCk7bi5mb3JFYWNoKGZ1bmN0aW9uKHUpe2E9YS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGtwKHUpLmNhdGNoKGZ1bmN0aW9uKCl7fSl9KX0pfX1mdW5jdGlvbiBrcChlKXtpZighZXx8IXIuc2VsZWN0ZWRJZClyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7dmFyIHQ9ci5zZWxlY3RlZElkO3JldHVybiBmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK3QrIi9pbnB1dCIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe2lucHV0OmUsdmlldzpyLmN1cnJlbnRWaWV3fSl9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLm9rP24uanNvbigpOm4uanNvbigpLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJue2Vycm9yOiJcdThCRjdcdTZDNDJcdTU5MzFcdThEMjUifX0pLnRoZW4oZnVuY3Rpb24oaSl7dmFyIGE9S3MoaSk7aWYoYS5odHRwU3RhdHVzPW4uc3RhdHVzLEpzKGEpKXJldHVybiBjb25zb2xlLmxvZygiW3dhbmRdIHNlbmRJbnB1dERpcmVjdDogc2Vzc2lvbiB1bmF2YWlsYWJsZSwgZHJvcHBpbmciLHtzZXNzaW9uSWQ6dCxlcnJvckNvZGU6YS5lcnJvckNvZGV9KSxudWxsO3Rocm93IGF9KX0pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIG4mJm4uaWQmJihRKG4pLG4uaWQ9PT1yLnNlbGVjdGVkSWQmJihuLm1lc3NhZ2VzJiZuLm1lc3NhZ2VzLmxlbmd0aD4wJiYoci5jdXJyZW50TWVzc2FnZXM9bi5tZXNzYWdlcyksVWUoITApKSksbn0pfWZ1bmN0aW9uIGthKCl7aWYoci5zZWxlY3RlZElkKXt2YXIgZT1yLnNlbGVjdGVkSWQ7RHMoY2UoInN0b3AuY29uZmlybS5tZXNzYWdlIikse3RpdGxlOmNlKCJzdG9wLmNvbmZpcm0udGl0bGUiKSxkYW5nZXI6ITAsb2tMYWJlbDpjZSgic3RvcC5jb25maXJtLm9rIiksY2FuY2VsTGFiZWw6Y2UoInN0b3AuY29uZmlybS5jYW5jZWwiKX0pLnRoZW4oZnVuY3Rpb24odCl7dCYmci5zZWxlY3RlZElkPT09ZSYmZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlKyIvc3RvcCIse21ldGhvZDoiUE9TVCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oUnQpfSl9fWZ1bmN0aW9uIGVvKGUpe3ZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5zZXNzaW9uLWl0ZW1bZGF0YS1zZXNzaW9uLWlkPSInK2UrJyJdJyk7dCYmdC5jbGFzc0xpc3QuYWRkKCJkZWxldGluZyIpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2Use21ldGhvZDoiREVMRVRFIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihuKXtyZXR1cm4gbi5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKG4pe2lmKG4mJm4uZXJyb3IpdGhyb3cgbmV3IEVycm9yKG4uZXJyb3IpO3JldHVybiByLnNlbGVjdGVkSWQ9PT1lJiYoci5zZWxlY3RlZElkPW51bGwsd2UoKSksUnQoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dCYmdC5jbGFzc0xpc3QucmVtb3ZlKCJkZWxldGluZyIpO3ZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhY3Rpb24tZXJyb3IiKTtQZShuLCJcdTY1RTBcdTZDRDVcdTUyMjBcdTk2NjRcdTRGMUFcdThCRERcdTMwMDIiKX0pfSwyNTApfWZ1bmN0aW9uIHRvKGUsdCl7dCYmdC5jbGFzc0xpc3QuYWRkKCJkZWxldGluZyIpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtmZXRjaCgiL2FwaS9jbGF1ZGUtaGlzdG9yeS8iK2VuY29kZVVSSUNvbXBvbmVudChlKSx7bWV0aG9kOiJERUxFVEUiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obil7aWYobiYmbi5lcnJvcil0aHJvdyBuZXcgRXJyb3Iobi5lcnJvcik7ci5jbGF1ZGVIaXN0b3J5PXIuY2xhdWRlSGlzdG9yeS5maWx0ZXIoZnVuY3Rpb24oaSl7cmV0dXJuIGkuY2xhdWRlU2Vzc2lvbklkIT09ZX0pLGRlbGV0ZSByLnNlbGVjdGVkQ2xhdWRlSGlzdG9yeUlkc1tlXSxtZSgpfSkuY2F0Y2goZnVuY3Rpb24oKXt0JiZ0LmNsYXNzTGlzdC5yZW1vdmUoImRlbGV0aW5nIik7dmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFjdGlvbi1lcnJvciIpO1BlKG4sIlx1NjVFMFx1NkNENVx1NTIyMFx1OTY2NFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERFx1MzAwMiIpfSl9LDI1MCl9ZnVuY3Rpb24gZ2coZSx0KXt0byhlLHQpfWZ1bmN0aW9uIEFwKGUsdCxuKXtlJiZmZXRjaCgiL2FwaS9jbGF1ZGUtaGlzdG9yeT9jd2Q9IitlbmNvZGVVUklDb21wb25lbnQoZSkse21ldGhvZDoiREVMRVRFIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGkpe2lmKGkmJmkuZXJyb3IpdGhyb3cgbmV3IEVycm9yKGkuZXJyb3IpO3IuY2xhdWRlSGlzdG9yeT1yLmNsYXVkZUhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBhLmN3ZCE9PWV9KSxtZSgpfSkuY2F0Y2goZnVuY3Rpb24oKXtubyhuLCExKTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYWN0aW9uLWVycm9yIik7UGUoaSwiXHU2NUUwXHU2Q0Q1XHU2RTA1XHU3NDA2XHU4QkU1XHU3NkVFXHU1RjU1XHU3Njg0XHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHUzMDAyIil9KX1mdW5jdGlvbiBubyhlLHQpe2UuZm9yRWFjaChmdW5jdGlvbihuKXtuLmNsYXNzTGlzdC50b2dnbGUoImRlbGV0aW5nIix0KX0pfWZ1bmN0aW9uIHhwKGUpe3JldHVybiBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcuY2xhdWRlLWhpc3RvcnktaXRlbVtkYXRhLWN3ZD0iJyt3aW5kb3cuQ1NTLmVzY2FwZShTdHJpbmcoZSkpKyciXScpKX12YXIgcm89bnVsbCxrcj1udWxsO2Z1bmN0aW9uIEFyKCl7aWYoa3Ipe2tyLmNsYXNzTGlzdC5yZW1vdmUoInN3aXBlZCIpO3ZhciBlPWtyLnF1ZXJ5U2VsZWN0b3IoIi5zZXNzaW9uLWl0ZW0tY29udGVudCIpO2UmJihlLnN0eWxlLnRyYW5zZm9ybT0iIiksa3I9bnVsbH19ZnVuY3Rpb24gU3AoZSl7cm89bnVsbCxrcj1udWxsfWZ1bmN0aW9uIElwKGUsdCxuKXtlPT09ImNsYXVkZSImJihyLnByZWZlcnJlZENvbW1hbmQ9ZSxyLmNoYXRNb2RlPXh0KGUsci5jaGF0TW9kZSkpO3ZhciBpPXIuY2hhdE1vZGVsfHxyLmNvbmZpZyYmci5jb25maWcuZGVmYXVsdE1vZGVsfHwiIjtyZXR1cm4gZmV0Y2goIi9hcGkvY29tbWFuZHMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGh0KHtjb21tYW5kOmUsY3dkOnR8fCIiLG1vZGU6ci5jaGF0TW9kZXx8ci5jb25maWcuZGVmYXVsdE1vZGV8fCJkZWZhdWx0Iixtb2RlbDppfHx2b2lkIDAsdGhpbmtpbmdFZmZvcnQ6ci5jaGF0VGhpbmtpbmd8fHZvaWQgMH0pKX0pLnRoZW4oZnVuY3Rpb24oYSl7cmV0dXJuIGEuanNvbigpfSkudGhlbihmdW5jdGlvbihhKXtyZXR1cm4gYS5lcnJvcj8obiYmUGUobixhLmVycm9yKSxudWxsKTooci5zZWxlY3RlZElkPWEuaWQsd2UoKSxyLmRyYWZ0c1thLmlkXT0iIixhKX0pfXZhciBBYT0hMTtmdW5jdGlvbiBpbyhlLHQpe3JldHVybiFlfHxBYT9Qcm9taXNlLnJlc29sdmUobnVsbCk6KEFhPSEwLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KGUpKyIvcmVzdW1lIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShodCh7bW9kZTpyLmNoYXRNb2RlfHxyLmNvbmZpZy5kZWZhdWx0TW9kZXx8ImRlZmF1bHQifSkpfSkudGhlbihmdW5jdGlvbihuKXtyZXR1cm4gbi5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLmVycm9yPyh0P1BlKHQsbi5lcnJvcik6ayhuLmVycm9yLCJlcnJvciIpLG51bGwpOihyLnNlbGVjdGVkSWQ9bi5pZCx3ZSgpLHIuZHJhZnRzW24uaWRdPSIiLG4pfSkuY2F0Y2goZnVuY3Rpb24obil7dmFyIGk9biYmbi5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU2MDYyXHU1OTBEXHU0RjFBXHU4QkREXHUzMDAyIjtyZXR1cm4gdD9QZSh0LGkpOmsoaSwiZXJyb3IiKSxudWxsfSkuZmluYWxseShmdW5jdGlvbigpe0FhPSExfSkpfWZ1bmN0aW9uIGhnKGUsdCl7cmV0dXJuIGU/ZmV0Y2goIi9hcGkvY2xhdWRlLXNlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KGUpKyIvcmVzdW1lIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShodCh7bW9kZTpyLmNoYXRNb2RlfHxyLmNvbmZpZy5kZWZhdWx0TW9kZXx8ImRlZmF1bHQifSkpfSkudGhlbihmdW5jdGlvbihuKXtyZXR1cm4gbi5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLmVycm9yPyh0P1BlKHQsbi5lcnJvcik6ayhuLmVycm9yLCJlcnJvciIpLG51bGwpOihyLmNsYXVkZUhpc3Rvcnk9ci5jbGF1ZGVIaXN0b3J5LmZpbHRlcihmdW5jdGlvbihpKXtyZXR1cm4gaS5jbGF1ZGVTZXNzaW9uSWQhPT1lfSksci5zZWxlY3RlZElkPW4uaWQsd2UoKSxyLmRyYWZ0c1tuLmlkXT0iIixuKX0pLmNhdGNoKGZ1bmN0aW9uKG4pe3ZhciBpPW4mJm4ubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NjMwOSBDbGF1ZGUgXHU0RjFBXHU4QkREIElEIFx1NjA2Mlx1NTkwRFx1NEYxQVx1OEJERFx1MzAwMiI7cmV0dXJuIHQ/UGUodCxpKTprKGksImVycm9yIiksbnVsbH0pOlByb21pc2UucmVzb2x2ZShudWxsKX1mdW5jdGlvbiBsbihlKXtyZXR1cm4hZXx8IWUuaWQ/UHJvbWlzZS5yZXNvbHZlKCk6KHIuc2VsZWN0ZWRJZD1lLmlkLHdlKCksci5jdXJyZW50TWVzc2FnZXM9W10sZ3IoKSxrdCgpLENyKGUuaWQpLFEoZSksbWUoKSxUbihlLmlkKSxwbihlLmlkKS50aGVuKGZ1bmN0aW9uKCl7anQoITApfSkpfWZ1bmN0aW9uIGFvKGUpe3JldHVybiBpbyhlKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Pyh0LmNsYXVkZVNlc3Npb25JZCYmKHQucHJvdmlkZXI9PT0iY29kZXgiP3IuY29kZXhIaXN0b3J5PXIuY29kZXhIaXN0b3J5LmZpbHRlcihmdW5jdGlvbihuKXtyZXR1cm4gbi5jbGF1ZGVTZXNzaW9uSWQhPT10LmNsYXVkZVNlc3Npb25JZH0pOnIuY2xhdWRlSGlzdG9yeT1yLmNsYXVkZUhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKG4pe3JldHVybiBuLmNsYXVkZVNlc3Npb25JZCE9PXQuY2xhdWRlU2Vzc2lvbklkfSkpLGxuKHQpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gdH0pKTpudWxsfSl9ZnVuY3Rpb24geWcoZSx0LG4pe3JldHVybiBJcChlLHQsbikudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaT9sbihpKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGl9KTpudWxsfSl9ZnVuY3Rpb24gYmcoZSl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndlbGNvbWUtaW5wdXQiKTtpZih0KXt0LnBsYWNlaG9sZGVyPSJcdTZCNjNcdTU3MjhcdTYwMURcdTgwMDNcdTIwMjYiLHQuZGlzYWJsZWQ9ITA7dmFyIG49ci5jaGF0TW9kZXx8Im1hbmFnZWQiLGk9WGUoKSxhPW10KCksdT1yLmNoYXRNb2RlbHx8ci5jb25maWcmJnIuY29uZmlnLmRlZmF1bHRNb2RlbHx8IiI7ZmV0Y2goIi9hcGkvY29tbWFuZHMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGh0KHtjb21tYW5kOmEsY3dkOmksbW9kZTpuLGluaXRpYWxJbnB1dDplLG1vZGVsOnV8fHZvaWQgMCx0aGlua2luZ0VmZm9ydDpyLmNoYXRUaGlua2luZ3x8dm9pZCAwfSkpfSkudGhlbihmdW5jdGlvbihzKXtyZXR1cm4gcy5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHMpe3JldHVybiBzLmVycm9yPyhrKHMuZXJyb3IsImVycm9yIiksdC5wbGFjZWhvbGRlcj0iXHU4RjkzXHU1MTY1XHU2RDg4XHU2MDZGIix0LmRpc2FibGVkPSExLG51bGwpOmxuKHMpfSkuY2F0Y2goZnVuY3Rpb24ocyl7ayhzJiZzLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQThcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpLHQucGxhY2Vob2xkZXI9Ilx1OEY5M1x1NTE2NVx1NkQ4OFx1NjA2RiIsdC5kaXNhYmxlZD0hMX0pLmZpbmFsbHkoZnVuY3Rpb24oKXt0LnBsYWNlaG9sZGVyPSJcdThGOTNcdTUxNjVcdTZEODhcdTYwNkYiLHQuZGlzYWJsZWQ9ITF9KX19ZnVuY3Rpb24gRWcoZSx0LG4pe3ZhciBpPXIuY2hhdE1vZGV8fCJtYW5hZ2VkIixhPVhlKCksdT1tdCgpLHM9ci5jaGF0TW9kZWx8fHIuY29uZmlnJiZyLmNvbmZpZy5kZWZhdWx0TW9kZWx8fCIiO2ZldGNoKCIvYXBpL2NvbW1hbmRzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShodCh7Y29tbWFuZDp1LGN3ZDphLG1vZGU6aSxpbml0aWFsSW5wdXQ6ZXx8dm9pZCAwLG1vZGVsOnN8fHZvaWQgMCx0aGlua2luZ0VmZm9ydDpyLmNoYXRUaGlua2luZ3x8dm9pZCAwfSkpfSkudGhlbihmdW5jdGlvbihvKXtyZXR1cm4gby5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKG8pe3JldHVybiBvLmVycm9yPyhrKG8uZXJyb3IsImVycm9yIiksbnVsbCk6KHQmJih0LnZhbHVlPSIiKSxuJiYobi52YWx1ZT0iIiksbG4obykpfSkuY2F0Y2goZnVuY3Rpb24obyl7ayhvJiZvLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQThcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpfSl9ZnVuY3Rpb24gVHAoZSl7ZS5kaXNhYmxlZD0hMCxhbyhlLmRhdGFzZXQuc2Vzc2lvbklkKS5maW5hbGx5KGZ1bmN0aW9uKCl7ZS5kaXNhYmxlZD0hMX0pfWZ1bmN0aW9uIExwKGUpe3ZhciB0PWUuZGF0YXNldC5jbGF1ZGVTZXNzaW9uSWQsbj1lLmRhdGFzZXQuY3dkO3QmJihlLmRpc2FibGVkPSEwLE1wKHQsbikudGhlbihmdW5jdGlvbihpKXtpJiZpLmlkJiYoci5jb2RleEhpc3Rvcnk9ci5jb2RleEhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBhLmNsYXVkZVNlc3Npb25JZCE9PXR9KSxyLnNlbGVjdGVkSWQ9aS5pZCx3ZSgpLHIuZHJhZnRzW2kuaWRdPSIiLGxuKGkpLnRoZW4oZnVuY3Rpb24oKXt6dCgpfSkpfSkuZmluYWxseShmdW5jdGlvbigpe2UuZGlzYWJsZWQ9ITF9KSl9ZnVuY3Rpb24gTXAoZSx0KXtyZXR1cm4gZmV0Y2goIi9hcGkvY29kZXgtc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoZSkrIi9yZXN1bWUiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGh0KHttb2RlOnIuY2hhdE1vZGV8fHIuY29uZmlnJiZyLmNvbmZpZy5kZWZhdWx0TW9kZXx8ImRlZmF1bHQiLGN3ZDp0fSkpfSkudGhlbihmdW5jdGlvbihuKXtyZXR1cm4gbi5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLmVycm9yPyhrKG4uZXJyb3IsImVycm9yIiksbnVsbCk6bn0pLmNhdGNoKGZ1bmN0aW9uKG4pe3JldHVybiBrKG4mJm4ubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NjA2Mlx1NTkwRFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERFx1MzAwMiIsImVycm9yIiksbnVsbH0pfWZ1bmN0aW9uIE9wKGUpe3ZhciB0PWUuZGF0YXNldC5jbGF1ZGVTZXNzaW9uSWQ7dCYmRG4oIlx1Nzg2RVx1OEJBNFx1OTY5MFx1ODVDRlx1OEZEOVx1Njc2MSBDb2RleCBcdTUzODZcdTUzRjJcdTRGMUFcdThCRERcdTU0MTdcdUZGMUYiLHt0aXRsZToiXHU5NjkwXHU4NUNGIENvZGV4IFx1NTM4Nlx1NTNGMiIsb2tMYWJlbDoiXHU5NjkwXHU4NUNGIn0pLnRoZW4oZnVuY3Rpb24obil7aWYobil7dmFyIGk9ZS5jbG9zZXN0KCIuY2xhdWRlLWhpc3RvcnktaXRlbSIpO2kmJihpLnN0eWxlLm9wYWNpdHk9IjAuNSIpLGZldGNoKCIvYXBpL2NvZGV4LWhpc3RvcnkvIitlbmNvZGVVUklDb21wb25lbnQodCkse21ldGhvZDoiREVMRVRFIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihhKXtyZXR1cm4gYS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGEpe2EmJmEub2s/KHIuY29kZXhIaXN0b3J5PXIuY29kZXhIaXN0b3J5LmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdS5jbGF1ZGVTZXNzaW9uSWQhPT10fSksbWUoKSk6aSYmKGkuc3R5bGUub3BhY2l0eT0iMSIpfSkuY2F0Y2goZnVuY3Rpb24oKXtpJiYoaS5zdHlsZS5vcGFjaXR5PSIxIil9KX19KX1mdW5jdGlvbiBQcChlKXt2YXIgdD1lLmRhdGFzZXQuY2xhdWRlU2Vzc2lvbklkLG49ZS5kYXRhc2V0LmN3ZDt0JiYoZS5kaXNhYmxlZD0hMCxtaSh0LG4pLnRoZW4oZnVuY3Rpb24oaSl7aSYmaS5pZCYmKHIuY2xhdWRlSGlzdG9yeT1yLmNsYXVkZUhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBhLmNsYXVkZVNlc3Npb25JZCE9PXR9KSxyLnNlbGVjdGVkSWQ9aS5pZCx3ZSgpLHIuZHJhZnRzW2kuaWRdPSIiLGxuKGkpLnRoZW4oZnVuY3Rpb24oKXt6dCgpfSkpfSkuZmluYWxseShmdW5jdGlvbigpe2UuZGlzYWJsZWQ9ITF9KSl9ZnVuY3Rpb24gbWkoZSx0KXtyZXR1cm4gZmV0Y2goIi9hcGkvY2xhdWRlLXNlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KGUpKyIvcmVzdW1lIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShodCh7bW9kZTpyLmNoYXRNb2RlfHxyLmNvbmZpZyYmci5jb25maWcuZGVmYXVsdE1vZGV8fCJkZWZhdWx0Iixjd2Q6dH0pKX0pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIG4uanNvbigpfSkudGhlbihmdW5jdGlvbihuKXtyZXR1cm4gbi5lcnJvcj8oayhuLmVycm9yLCJlcnJvciIpLG51bGwpOm59KS5jYXRjaChmdW5jdGlvbihuKXtyZXR1cm4gayhuJiZuLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTYwNjJcdTU5MERcdTUzODZcdTUzRjJcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpLG51bGx9KX1mdW5jdGlvbiB4cigpe3JldHVybiJvbnRvdWNoc3RhcnQiaW4gd2luZG93fHxuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHM+MH1mdW5jdGlvbiBqdChlKXtpZighci50ZXJtaW5hbEludGVyYWN0aXZlKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7IXR8fCFyLnNlbGVjdGVkSWR8fGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPT10JiYoZSYmeHIoKXx8eGEodCkpfX1mdW5jdGlvbiBGZygpe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LW1lc3NhZ2VzIik7ZSYmKGUuc2Nyb2xsVG9wPTApfWZ1bmN0aW9uIHVvKCl7dmFyIGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LXBhbmVsIik7ZSYmZS5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgiLS1rZXlib2FyZC1vZmZzZXQiKX1mdW5jdGlvbiBzbygpe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1wYW5lbCIpO2UmJmUuc3R5bGUucmVtb3ZlUHJvcGVydHkoIi0ta2V5Ym9hcmQtb2Zmc2V0Iil9ZnVuY3Rpb24gZ2koZSl7aWYoZSl7dmFyIHQ9ZS5zZWxlY3Rpb25TdGFydCxuPWUuc2VsZWN0aW9uRW5kO2hpKGUpLHR5cGVvZiB0PT0ibnVtYmVyIiYmdHlwZW9mIG49PSJudW1iZXIiJiZlLnNldFNlbGVjdGlvblJhbmdlKHQsbil9fWZ1bmN0aW9uIG9vKGUpeyFlfHxlLmRhdGFzZXQudG91Y2hTY3JvbGxCb3VuZD09PSJ0cnVlInx8KGUuZGF0YXNldC50b3VjaFNjcm9sbEJvdW5kPSJ0cnVlIixlLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLGZ1bmN0aW9uKCl7ZS5zY3JvbGxIZWlnaHQ8PWUuY2xpZW50SGVpZ2h0KzF8fChlLnNjcm9sbFRvcDw9MD9lLnNjcm9sbFRvcD0xOmUuc2Nyb2xsVG9wK2UuY2xpZW50SGVpZ2h0Pj1lLnNjcm9sbEhlaWdodCYmKGUuc2Nyb2xsVG9wPU1hdGgubWF4KDEsZS5zY3JvbGxIZWlnaHQtZS5jbGllbnRIZWlnaHQtMSkpKX0se3Bhc3NpdmU6ITB9KSl9ZnVuY3Rpb24gbG8oZSl7ZSYmKF90KGUpLGdpKGUpKX1mdW5jdGlvbiBxcChlKXt2YXIgdD1lJiZlLnRhcmdldD9lLnRhcmdldDpkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7dCYmKHVvKCksbG8odCkpfWZ1bmN0aW9uIEhwKGUpe3ZhciB0PWUmJmUudGFyZ2V0P2UudGFyZ2V0OmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtzbygpLGNzKDIyMDAsdCk7dmFyIG49WzgwLDIwMCwzODAsNjIwLDkwMF07bi5mb3JFYWNoKGZ1bmN0aW9uKGksYSl7c2V0VGltZW91dChmdW5jdGlvbigpe3puKCExKSxhPT09MSYmeHIoKSYmKG90KCJrZXlib2FyZC1ibHVyIix7Zm9yY2VSZXBsYXk6ITB9KSxidCgia2V5Ym9hcmQiKSl9LGkpfSl9ZnVuY3Rpb24gX3AoZSl7ZSYmKGUuc2V0U2VsZWN0aW9uUmFuZ2UoZS52YWx1ZS5sZW5ndGgsZS52YWx1ZS5sZW5ndGgpLGdpKGUpKX1mdW5jdGlvbiB4YShlKXtlJiYoZS5mb2N1cyh7cHJldmVudFNjcm9sbDohMH0pLF9wKGUpKX1mdW5jdGlvbiBOcChlKXtvbyhlKSxsbyhlKX1mdW5jdGlvbiBqcChlKXt4YShlKX1mdW5jdGlvbiB3ZyhlKXt1bygpLGdpKGUpfWZ1bmN0aW9uIFJwKCl7c28oKX1mdW5jdGlvbiBXcChlKXtnaShlKX1mdW5jdGlvbiBDZyhlKXtqcChlKX1mdW5jdGlvbiB6cChlKXtOcChlKX1mdW5jdGlvbiBCZygpe1JwKCl9ZnVuY3Rpb24gRGcoZSl7V3AoZSl9ZnVuY3Rpb24gVXAoZSx0KXtpZighZXx8IXR8fGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPT10KXJldHVybiExO3ZhciBuPXdpbmRvdy5pbm5lckhlaWdodC1lLmhlaWdodC1lLm9mZnNldFRvcDtpZihuPD01MClyZXR1cm4hMTt2YXIgaT10LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3JldHVybiBpLmJvdHRvbT5lLmhlaWdodC0xMn1mdW5jdGlvbiBoaShlKXtpZihlKXt2YXIgdD1lLnNjcm9sbEhlaWdodD5lLmNsaWVudEhlaWdodCsxO2lmKCF0KXtlLnNjcm9sbFRvcD0wO3JldHVybn1lLnNjcm9sbFRvcD1lLnNjcm9sbEhlaWdodH19ZnVuY3Rpb24gY28oKXtpZihyLnRlcm1pbmFsSW50ZXJhY3RpdmUpe2ZvKCk7cmV0dXJufWlmKCF4cigpKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7IWV8fCFyLnNlbGVjdGVkSWR8fGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ9PT1lfHx4YShlKX19ZnVuY3Rpb24gZm8oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7ZSYmKGUuc2V0QXR0cmlidXRlKCJ0YWJpbmRleCIsIjAiKSxlLmZvY3VzKCksci50ZXJtaW5hbCYmci50ZXJtaW5hbC5mb2N1cyYmci50ZXJtaW5hbC5mb2N1cygpKX1mdW5jdGlvbiBWcCgpe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1wYW5lbCIpLHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmNoYXQtbWVzc2FnZXMiKTtpZigidmlydHVhbEtleWJvYXJkImluIG5hdmlnYXRvcil7dmFyIG49bmF2aWdhdG9yLnZpcnR1YWxLZXlib2FyZDtuLmFkZEV2ZW50TGlzdGVuZXIoImdlb21ldHJ5Y2hhbmdlIixmdW5jdGlvbigpe2UmJmUuc3R5bGUucmVtb3ZlUHJvcGVydHkoInBhZGRpbmctYm90dG9tIil9KX12YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7aSYmaS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtjbygpfSksdCYmdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oYSl7dmFyIHU9YS50YXJnZXQ7dS50YWdOYW1lIT09IkEiJiZ1LnRhZ05hbWUhPT0iQlVUVE9OIiYmIXUuY2xvc2VzdCgiYnV0dG9uIikmJiF1LmNsb3Nlc3QoIltkYXRhLXRvb2wtdG9nZ2xlXSIpJiZjbygpfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGEpe2lmKHhyKCkpe3ZhciB1PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtpZighKCF1fHxkb2N1bWVudC5hY3RpdmVFbGVtZW50IT09dSkpe3ZhciBzPWEudGFyZ2V0OyFzfHx0eXBlb2Ygcy5jbG9zZXN0IT0iZnVuY3Rpb24ifHxzLmNsb3Nlc3QoIi5pbnB1dC1wYW5lbCIpfHxzLmNsb3Nlc3QoIiNtaW5pLWtleWJvYXJkIil8fHMuY2xvc2VzdCgiI21pbmkta2V5Ym9hcmQtZmFiIil8fHMuY2xvc2VzdCgiI21pbmkta2V5Ym9hcmQtdG9nZ2xlIil8fHMuY2xvc2VzdCgiI3Rlcm1pbmFsLWludGVyYWN0aXZlLXRvZ2dsZSIpfHxzLmNsb3Nlc3QoIi53YW5kLWpveXN0aWNrLXJvb3QiKXx8dS5ibHVyKCl9fX0sITApfWZ1bmN0aW9uIFNhKCl7dHJ5e3dpbmRvdy5zY3JvbGxUbygwLDApfWNhdGNoe31kb2N1bWVudC5zY3JvbGxpbmdFbGVtZW50JiYoZG9jdW1lbnQuc2Nyb2xsaW5nRWxlbWVudC5zY3JvbGxUb3A9MCksZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50JiYoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcD0wKSxkb2N1bWVudC5ib2R5JiYoZG9jdW1lbnQuYm9keS5zY3JvbGxUb3A9MCl9ZnVuY3Rpb24gVWUoZSl7ci5yZW5kZXJQZW5kaW5nJiYhZXx8KHIucmVuZGVyUGVuZGluZz0hMCxlPyh5aSghMCksci5yZW5kZXJQZW5kaW5nPSExKTpyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXt5aSghMSksci5yZW5kZXJQZW5kaW5nPSExfSkpfXIuY2hhdFJlbmRlclRpbWVyPW51bGw7ZnVuY3Rpb24gcG8oZSl7aWYoIShyLmNoYXRSZW5kZXJUaW1lciYmIWUpKXtpZihyLmNoYXRSZW5kZXJUaW1lciYmY2xlYXJUaW1lb3V0KHIuY2hhdFJlbmRlclRpbWVyKSxlKXtyLmNoYXRSZW5kZXJUaW1lcj1udWxsLFVlKCk7cmV0dXJufXZhciB0PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihhKXtyZXR1cm4gYS5pZD09PXIuc2VsZWN0ZWRJZH0pLG49dCYmdC5zdGF0dXM9PT0icnVubmluZyImJnQuc2Vzc2lvbktpbmQhPT0ic3RydWN0dXJlZCIsaT1uP0ZzOndzO3IuY2hhdFJlbmRlclRpbWVyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtyLmNoYXRSZW5kZXJUaW1lcj1udWxsO3ZhciBhPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbih1KXtyZXR1cm4gdS5pZD09PXIuc2VsZWN0ZWRJZH0pO2EmJihyLmN1cnJlbnRNZXNzYWdlcz1qZShhLFplKGEsYS5vdXRwdXQsITApKSksVWUoKX0saSl9fWZ1bmN0aW9uIEtwKGUsdCl7aWYoIWV8fCF0fHx0Lmxlbmd0aD09PTApcmV0dXJuW107ZnVuY3Rpb24gbih3KXtyZXR1cm4gdy5yZXBsYWNlKC9ceDFCKD86W0AtWlxcLV9dfFxbWzAtP10qWyAtL10qW0Atfl0pL2csIiIpfWZvcih2YXIgaT1uKGUpLGE9W10sdT1bXSxzPTA7czx0Lmxlbmd0aDtzKyspaWYodFtzXS5yb2xlPT09InVzZXIiKXt2YXIgbz0iIixsPXRbc10uY29udGVudDtpZih0eXBlb2YgbD09InN0cmluZyIpbz1sO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShsKSl7Zm9yKHZhciBjPTA7YzxsLmxlbmd0aDtjKyspaWYobFtjXS50eXBlPT09InRleHQiKXtvPWxbY10udGV4dDticmVha319byYmdS5wdXNoKHt0ZXh0Om8saW5kZXg6c30pfWZvcih2YXIgZj0wLHM9MDtzPHUubGVuZ3RoO3MrKyl7dmFyIGQ9dVtzXSx2PWkuaW5kZXhPZigiXHUyNzZGICIrZC50ZXh0LGYpO2lmKHY9PT0tMSYmKHY9aS5pbmRleE9mKGAKXHUyNzZGIGArZC50ZXh0LGYpLHYhPT0tMSYmKHYrPTEpKSx2PmYpe2Zvcih2YXIgZz1pLnN1YnN0cmluZyhmLHYpLGg9Zy5zcGxpdChgCmApLG09W10sYz0wO2M8aC5sZW5ndGg7YysrKXt2YXIgYj1oW2NdLnRyaW0oKTshYnx8Yi5zdGFydHNXaXRoKCJcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDAiKXx8Yj09PSJcdTI3NkYifHxiPT09Ij8ifHxiPT09IiJ8fGIuaW5jbHVkZXMoIkNsYXVkZSBDb2RlIHYiKXx8Yi5pbmNsdWRlcygiT3B1cyIpJiZiLmluY2x1ZGVzKCJ3aXRoIil8fGIuaW5jbHVkZXMoIlNvbm5ldCIpJiZiLmluY2x1ZGVzKCJ3aXRoIil8fGIuaW5jbHVkZXMoIkFQSSBVc2FnZSIpfHxiLmluY2x1ZGVzKCJCaWxsaW5nIil8fGIuaW5jbHVkZXMoImZvciBzaG9ydGN1dHMiKXx8Yi5pbmNsdWRlcygiL2VmZm9ydCIpfHxiLm1hdGNoKC9eW+KWuOKWkOKWneKWmOKWl+KWluKWiOKWjOKWjeKWjuKWj+KWlOKWgeKWguKWg+KWhOKWheKWhuKWh+KWiOKWiF0vKXx8Yi5tYXRjaCgvXlvilrjilpDilp3ilpjilpfilpbilojilozilo3ilo7ilo/ilpTiloHiloLiloPiloTiloXilobilofilojilohdezMsfS8pfHxiLmxlbmd0aD4zJiZtLnB1c2goYil9bS5sZW5ndGg+MCYmYS5wdXNoKHtiZWZvcmVNZXNzYWdlOmQuaW5kZXgsY29udGVudDptLmpvaW4oYApgKX0pfWY9ditkLnRleHQubGVuZ3RoKzJ9cmV0dXJuIGF9ZnVuY3Rpb24gSWEoZSl7aWYoIWUpcmV0dXJuIG51bGw7dmFyIHQ9ZS5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlcyIpO3JldHVybiB0fHwodD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0LmNsYXNzTmFtZT0iY2hhdC1tZXNzYWdlcyIsZS5hcHBlbmRDaGlsZCh0KSx0KX1mdW5jdGlvbiB2byhlLHQpe3ZhciBuPUlhKGUpO3JldHVybiBuPyhuLmlubmVySFRNTD10LGFyKCksUWUoKSxuKTpudWxsfWZ1bmN0aW9uIHlpKGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjaGF0LW91dHB1dCIpO2lmKCF0KXJldHVybjt2YXIgbj1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oeil7cmV0dXJuIHouaWQ9PT1yLnNlbGVjdGVkSWR9KTtpZighbil7ci5sYXN0UmVuZGVyZWRFbXB0eSE9PSJub25lIiYmKHZvKHQsJzxkaXYgY2xhc3M9ImVtcHR5LXN0YXRlIj48c3Ryb25nPlx1NjcyQVx1OTAwOVx1NjJFOVx1NEYxQVx1OEJERDwvc3Ryb25nPjxicj5cdTcwQjlcdTUxRkJcdTRFMEFcdTY1QjlcdTMwMENcdTY1QjBcdTVCRjlcdThCRERcdTMwMERcdTVGMDBcdTU5Q0JcdTRGNjBcdTc2ODRcdTdCMkNcdTRFMDBcdTZCMjFcdTVCRjlcdThCRERcdTMwMDI8L2Rpdj4nKSxyLmxhc3RSZW5kZXJlZEVtcHR5PSJub25lIixyLmxhc3RSZW5kZXJlZE1zZ0NvdW50PTApO3JldHVybn12YXIgaT1yLmN1cnJlbnRNZXNzYWdlcyxhPW12KGkpO2lmKE1hPWd2KGkpLGkubGVuZ3RoPT09MCl7aWYoci5sYXN0UmVuZGVyZWRFbXB0eSE9PSJlbXB0eSIpe3ZhciB1PSIiO2FlKG4pJiYodT0nPGRpdiBjbGFzcz0iZW1wdHktc3RhdGUtdHJpby13cmFwIj48ZGl2IGNsYXNzPSJlbXB0eS1zdGF0ZS10cmlvLWhpbnQiPlx1OUVEOFx1OEJBNFx1NEYxQVx1NjMwOVx1NEVFNVx1NEUwQlx1OEJCRVx1N0Y2RVx1NTNEMVx1OTAwMVx1RkYwQ1x1NTNFRlx1NzBCOVx1NTFGQlx1OEMwM1x1NjU3NFx1RkYxQTwvZGl2PicremEobix7a2luZDoiZHJvcGRvd24ifSkrIjwvZGl2PiIpLHZvKHQsJzxkaXYgY2xhc3M9ImVtcHR5LXN0YXRlIj48c3Ryb25nPlx1NUJGOVx1OEJERFx1NURGMlx1NUYwMFx1NTlDQjwvc3Ryb25nPjxicj5cdTU3MjhcdTRFMEJcdTY1QjlcdThGOTNcdTUxNjVcdTY4NDZcdTUzRDFcdTkwMDFcdTZEODhcdTYwNkZcdUZGMENDbGF1ZGUgXHU0RjFBXHU4MUVBXHU1MkE4XHU1NkRFXHU1OTBEXHUzMDAyPC9kaXY+Jyt1KSxyLmxhc3RSZW5kZXJlZEVtcHR5PSJlbXB0eSIsci5sYXN0UmVuZGVyZWRNc2dDb3VudD0wfXJ1KG51bGwsbiksTGEoW10pO3JldHVybn12YXIgcz1pLmxlbmd0aDtzPnIuY2hhdFJlbmRlcmVkQ291bnQmJihyLmNoYXRSZW5kZXJlZENvdW50PXMpO3ZhciBvPU1hdGgubWF4KDAscy1yLmNoYXRSZW5kZXJlZENvdW50KSxsPW8+MD9pLnNsaWNlKG8pOmksYz10eXBlb2Ygbi5tZXNzYWdlT2Zmc2V0PT0ibnVtYmVyIiYmbi5tZXNzYWdlT2Zmc2V0PjAsZj1vPjB8fGMsZD1sLmxlbmd0aCx2PW4ub3V0cHV0P24ub3V0cHV0Lmxlbmd0aDowO2lmKG4ubWVzc2FnZXMmJm4ubWVzc2FnZXMubGVuZ3RoPjApe2Zvcih2YXIgZz0wLGg9MCxtPTA7bTxuLm1lc3NhZ2VzLmxlbmd0aDttKyspe3ZhciBiPW4ubWVzc2FnZXNbbV0uY29udGVudDtpZihiKWlmKEFycmF5LmlzQXJyYXkoYikpe2crPWIubGVuZ3RoO2Zvcih2YXIgdz0wO3c8Yi5sZW5ndGg7dysrKXt2YXIgRT1iW3ddO0UudGV4dCYmKGgrPUUudGV4dC5sZW5ndGgpLEUudGhpbmtpbmcmJihoKz1FLnRoaW5raW5nLmxlbmd0aCksRS5jb250ZW50JiYoaCs9RS5jb250ZW50Lmxlbmd0aCksRS5pZCYmKGgrPUUuaWQubGVuZ3RoKSxFLnRvb2xfdXNlX2lkJiYoaCs9RS50b29sX3VzZV9pZC5sZW5ndGgpLEUuZGVzY3JpcHRpb24mJihoKz1FLmRlc2NyaXB0aW9uLmxlbmd0aCksRS5pbnB1dCYmKGgrPUpTT04uc3RyaW5naWZ5KEUuaW5wdXQpLmxlbmd0aCl9fWVsc2UgZys9MSxoPVN0cmluZyhiKS5sZW5ndGh9dj1kKjFlNStnKjFlMytofXZhciBCPWV8fGQhPT1yLmxhc3RSZW5kZXJlZE1zZ0NvdW50O2lmKCFCJiZkPT09ci5sYXN0UmVuZGVyZWRNc2dDb3VudCYmdj09PXIubGFzdFJlbmRlcmVkSGFzaCl7dmFyIEY9dC5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlcyIpO0YmJnJ1KEYsbiksTGEoaSk7cmV0dXJufXZhciB4PXIubGFzdFJlbmRlcmVkSGFzaCxTPXIubGFzdFJlbmRlcmVkTXNnQ291bnQ7aWYoci5sYXN0UmVuZGVyZWRNc2dDb3VudD1kLHIubGFzdFJlbmRlcmVkSGFzaD12LEY9SWEodCksIUYpcmV0dXJuO3ZhciBIPU5pKEYpLFI9Ri5xdWVyeVNlbGVjdG9yQWxsKCIuY2hhdC1tZXNzYWdlOm5vdCguc3lzdGVtLWluZm8pIikubGVuZ3RoLCQ9Qnx8Uj09PTB8fGQhPT1SO2Z1bmN0aW9uIEkoKXtmb3IodmFyIHo9S3Aobi5vdXRwdXQsbCksbGU9IiIsZ2U9bC5zbGljZSgpLnJldmVyc2UoKSxuZT1sLmxlbmd0aCxkZT0wO2RlPGdlLmxlbmd0aDtkZSsrKXtmb3IodmFyIFZlPWdlW2RlXSxkdD1uZS0xLWRlLFZ0PWR0K28sZXQ9bnVsbCx0dD0wO3R0PHoubGVuZ3RoO3R0KyspaWYoelt0dF0uYmVmb3JlTWVzc2FnZT09PWR0KXtldD16W3R0XTticmVha31ldCYmKGxlKz0nPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlIHN5c3RlbS1pbmZvIj48ZGl2IGNsYXNzPSJzeXN0ZW0taW5mby1jYXJkIj48ZGl2IGNsYXNzPSJzeXN0ZW0taW5mby1oZWFkZXIiPlx1MjEzOVx1RkUwRiBcdTdDRkJcdTdFREZcdTRGRTFcdTYwNkY8L2Rpdj48ZGl2IGNsYXNzPSJzeXN0ZW0taW5mby1jb250ZW50Ij4nK3AoZXQuY29udGVudCkrIjwvZGl2PjwvZGl2PjwvZGl2PiIpLGxlKz1QYShWZSxUW1Z0XXx8bnVsbCxWdCxhKX1pZihmKXt2YXIgbnQ9bz4wPyJcdTUyQTBcdThGN0RcdTY2RjRcdTY1RTlcdTc2ODQgIitNYXRoLm1pbihyLmNoYXRQYWdlU2l6ZSxvKSsiIFx1Njc2MVx1NkQ4OFx1NjA2RiI6Ilx1NTJBMFx1OEY3RFx1NjZGNFx1NjVFOVx1NzY4NFx1NkQ4OFx1NjA2RiI7bGUrPSc8ZGl2IGNsYXNzPSJjaGF0LWxvYWQtbW9yZSIgaWQ9ImNoYXQtbG9hZC1tb3JlLXNlbnRpbmVsIj48YnV0dG9uIGNsYXNzPSJjaGF0LWxvYWQtbW9yZS1idG4iIHR5cGU9ImJ1dHRvbiI+JytudCsiPC9idXR0b24+PC9kaXY+In12YXIgRnQ9LTEscnQ9MDtpZihSPjAmJiFIKWZvcih2YXIgaXQ9Ri5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3Asa2U9Ri5xdWVyeVNlbGVjdG9yQWxsKCIuY2hhdC1tZXNzYWdlOm5vdCguc3lzdGVtLWluZm8pIiksZmU9MDtmZTxrZS5sZW5ndGg7ZmUrKyl7dmFyIENlPWtlW2ZlXS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZihDZS5ib3R0b20+PWl0KXt2YXIgQz1rZVtmZV0uZ2V0QXR0cmlidXRlKCJkYXRhLW1zZy1pbmRleCIpO0MhPW51bGwmJihGdD1wYXJzZUludChDLDEwKSxydD1DZS50b3AtaXQpO2JyZWFrfX1pZihGLmlubmVySFRNTD1sZSwoZnVuY3Rpb24oKXtmb3IodmFyIGZ0PUYucXVlcnlTZWxlY3RvckFsbCgiLmNoYXQtbWVzc2FnZTpub3QoLnN5c3RlbS1pbmZvKSIpLHB0PWZ0Lmxlbmd0aCxXZT0wO1dlPHB0O1dlKyspZnRbV2VdLnNldEF0dHJpYnV0ZSgiZGF0YS1tc2ctaW5kZXgiLFN0cmluZyhvK3B0LTEtV2UpKX0pKCksUz09PTAmJiFyLmNoYXRJbml0aWFsUmVuZGVyRG9uZSlGLnNjcm9sbFRvcD0wLHIuY2hhdFN0aWNrVG9Cb3R0b209ITAsaXIoe3JlbW92ZURpdmlkZXI6ITB9KSxyLmNoYXRJbml0aWFsUmVuZGVyRG9uZT0hMDtlbHNlIGlmKFM9PT0wJiZyLmNoYXRTdGlja1RvQm90dG9tKUYuc2Nyb2xsVG9wPTA7ZWxzZSBpZihIKUYuc2Nyb2xsVG9wPTA7ZWxzZSBpZihGdD49MCl7dmFyIGF0PUYucXVlcnlTZWxlY3RvcignLmNoYXQtbWVzc2FnZVtkYXRhLW1zZy1pbmRleD0iJytGdCsnIl0nKTtpZihhdCl7dmFyIHd0PUYuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wLFN0PWF0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLHl0PVN0LnRvcC13dC1ydDtNYXRoLmFicyh5dCk+LjUmJihyLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbD0hMCxGLnNjcm9sbFRvcCs9eXQscmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7ci5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGw9ITF9KSl9fW1vKEYpLGFyKCksemkoRik7dmFyIEl0PUYucXVlcnlTZWxlY3RvcigiLmNoYXQtbWVzc2FnZTpub3QoLnN5c3RlbS1pbmZvKSIpO2lmKEl0KXt2YXIgdXQ9SXQucXVlcnlTZWxlY3RvckFsbCgiLnRvb2wtdXNlLWNhcmQsIC5pbmxpbmUtZGlmZltkYXRhLWV4cGFuZC1rZXldIik7aWYodXQubGVuZ3RoPjApe3ZhciBLdD11dFswXSxIZT1QbihLdCk7JGUoSGUpPT09bnVsbCYmS3QuY2xhc3NMaXN0LnJlbW92ZSgiY29sbGFwc2VkIik7Zm9yKHZhciBBZT0xO0FlPHV0Lmxlbmd0aDtBZSsrKXt2YXIgeGU9UG4odXRbQWVdKTtpZigkZSh4ZSk9PT1udWxsKXtpZih1dFtBZV0uY2xhc3NMaXN0LmNvbnRhaW5zKCJhc2stdXNlciIpJiYhdXRbQWVdLmNsYXNzTGlzdC5jb250YWlucygiYXNrLXVzZXItYW5zd2VyZWQiKSljb250aW51ZTt1dFtBZV0uY2xhc3NMaXN0LmFkZCgiY29sbGFwc2VkIil9fX19cmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7amkoRiksUWUoKSxxbCgpfSl9ZnVuY3Rpb24gRCh6LGxlKXt2YXIgZ2U9ei5xdWVyeVNlbGVjdG9yQWxsKCIudG9vbC11c2UtY2FyZCwgLmlubGluZS1kaWZmW2RhdGEtZXhwYW5kLWtleV0iKTtnZS5mb3JFYWNoKGZ1bmN0aW9uKG5lKXt2YXIgZGU9UG4obmUpO2lmKCRlKGRlKT09PW51bGwmJiEobmUuY2xhc3NMaXN0LmNvbnRhaW5zKCJhc2stdXNlciIpJiYhbmUuY2xhc3NMaXN0LmNvbnRhaW5zKCJhc2stdXNlci1hbnN3ZXJlZCIpKSl7aWYobGUpe2Zvcih2YXIgVmU9MDtWZTxsZS5sZW5ndGg7VmUrKylpZihsZVtWZV0uY29udGFpbnMobmUpKXJldHVybn1uZS5jbGFzc0xpc3QuYWRkKCJjb2xsYXBzZWQiKX19KX12YXIgVD17fTtpZigoZnVuY3Rpb24oKXtmb3IodmFyIHo9e2lucHV0VG9rZW5zOjAsb3V0cHV0VG9rZW5zOjAsY2FjaGVSZWFkSW5wdXRUb2tlbnM6MCx0b3RhbENvc3RVc2Q6MH0sbGU9LTEsZ2U9MDtnZTxpLmxlbmd0aDtnZSsrKXt2YXIgbmU9aVtnZV07aWYobmUucm9sZT09PSJ1c2VyIilsZT49MCYmKHouaW5wdXRUb2tlbnM+MHx8ei5vdXRwdXRUb2tlbnM+MHx8ei50b3RhbENvc3RVc2Q+MCkmJihUW2xlXT17aW5wdXRUb2tlbnM6ei5pbnB1dFRva2VucyxvdXRwdXRUb2tlbnM6ei5vdXRwdXRUb2tlbnMsY2FjaGVSZWFkSW5wdXRUb2tlbnM6ei5jYWNoZVJlYWRJbnB1dFRva2Vucyx0b3RhbENvc3RVc2Q6ei50b3RhbENvc3RVc2R9KSx6PXtpbnB1dFRva2VuczowLG91dHB1dFRva2VuczowLGNhY2hlUmVhZElucHV0VG9rZW5zOjAsdG90YWxDb3N0VXNkOjB9LGxlPS0xO2Vsc2UgaWYobmUucm9sZT09PSJhc3Npc3RhbnQiJiZuZS51c2FnZSl7dmFyIGRlPW5lLnVzYWdlO3ouaW5wdXRUb2tlbnMrPWRlLmlucHV0VG9rZW5zfHwwLHoub3V0cHV0VG9rZW5zKz1kZS5vdXRwdXRUb2tlbnN8fDAsei5jYWNoZVJlYWRJbnB1dFRva2Vucys9ZGUuY2FjaGVSZWFkSW5wdXRUb2tlbnN8fDAsei50b3RhbENvc3RVc2QrPWRlLnRvdGFsQ29zdFVzZHx8MCxsZT1nZX1lbHNlIG5lLnJvbGU9PT0iYXNzaXN0YW50IiYmKGxlPWdlKX1sZT49MCYmKHouaW5wdXRUb2tlbnM+MHx8ei5vdXRwdXRUb2tlbnM+MHx8ei50b3RhbENvc3RVc2Q+MCkmJihUW2xlXT17aW5wdXRUb2tlbnM6ei5pbnB1dFRva2VucyxvdXRwdXRUb2tlbnM6ei5vdXRwdXRUb2tlbnMsY2FjaGVSZWFkSW5wdXRUb2tlbnM6ei5jYWNoZVJlYWRJbnB1dFRva2Vucyx0b3RhbENvc3RVc2Q6ei50b3RhbENvc3RVc2R9KX0pKCksJClJKCk7ZWxzZSBpZihkPlIpe3ZhciBPPWwuc2xpY2UoUik7Ty5yZXZlcnNlKCk7Zm9yKHZhciBVPWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxWPVtdLFg9W10sZWU9bytSLFo9MDtaPE8ubGVuZ3RoO1orKyl7dmFyIHVlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLEw9bytSKyhPLmxlbmd0aC0xLVopO3VlLmlubmVySFRNTD1QYShPW1pdLFRbTF18fG51bGwsTCxhKTt2YXIgTT11ZS5maXJzdEVsZW1lbnRDaGlsZDtNJiYoTS5jbGFzc0xpc3QuYWRkKCJhbmltYXRlLWluIiksTS5zZXRBdHRyaWJ1dGUoImRhdGEtbXNnLWluZGV4IixTdHJpbmcoTCkpLFYucHVzaChNKSxYLnB1c2goTCksVS5hcHBlbmRDaGlsZChNKSl9Ri5pbnNlcnRCZWZvcmUoVSxGLmZpcnN0Q2hpbGQpLGFyKCksbW8oRiksemkoRiksRChGLFYpLEg/cmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7Ri5pc0Nvbm5lY3RlZCYmTWF0aC5hYnMoRi5zY3JvbGxUb3ApPjEmJihyLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbD0hMCxGLnNjcm9sbFRvcD0wLHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe3IuY2hhdElzUHJvZ3JhbW1hdGljU2Nyb2xsPSExfSkpLGlyKHtyZW1vdmVEaXZpZGVyOiEwfSksUWUoKX0pOihyLmNoYXRVbnJlYWRTdGFydEluZGV4PDAmJihyLmNoYXRVbnJlYWRTdGFydEluZGV4PWVlKSxyLmNoYXRVbnJlYWRDb3VudCs9Vi5sZW5ndGgsamkoRiksUWUoKSl9ZWxzZSBpZihkPT09UiYmdiE9PXgpe2Zvcih2YXIgaj1BcnJheS5mcm9tKEYucXVlcnlTZWxlY3RvckFsbCgiLmNoYXQtbWVzc2FnZTpub3QoLnN5c3RlbS1pbmZvKSIpKSxHPWwuc2xpY2UoKS5yZXZlcnNlKCksSz0hMSxpZT1NYXRoLm1pbig0LEcubGVuZ3RoLGoubGVuZ3RoKSx0ZT0wO3RlPGllO3RlKyspe3ZhciBzZT1qW3RlXSxvZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxxZT1vK0cubGVuZ3RoLTEtdGU7b2UuaW5uZXJIVE1MPVBhKEdbdGVdLFRbcWVdfHxudWxsLHFlLGEpO3ZhciBFZT1vZS5maXJzdEVsZW1lbnRDaGlsZDtpZihFZSl7aWYoc2UuaW5uZXJIVE1MIT09RWUuaW5uZXJIVE1MfHxzZS5jbGFzc05hbWUhPT1FZS5jbGFzc05hbWUpRi5yZXBsYWNlQ2hpbGQoRWUsc2UpLFlwKEVlKSxLPSEwO2Vsc2UgaWYodGU+MClicmVha319aWYoIUsmJkcubGVuZ3RoPmllJiZJKCksSyl7YXIoKSx6aShGKSxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtIJiZGLmlzQ29ubmVjdGVkJiZNYXRoLmFicyhGLnNjcm9sbFRvcCk+MSYmKHIuY2hhdElzUHJvZ3JhbW1hdGljU2Nyb2xsPSEwLEYuc2Nyb2xsVG9wPTAscmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7ci5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGw9ITF9KSksamkoRiksUWUoKX0pO3ZhciBGZT1GLnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LW1lc3NhZ2UiKSxxPUYucXVlcnlTZWxlY3RvckFsbCgiLnRvb2wtdXNlLWNhcmQsIC5pbmxpbmUtZGlmZltkYXRhLWV4cGFuZC1rZXldIiksUmU9bnVsbDtxLmZvckVhY2goZnVuY3Rpb24oeil7dmFyIGxlPVBuKHopOyRlKGxlKT09PW51bGwmJih6LmNsYXNzTGlzdC5jb250YWlucygiYXNrLXVzZXIiKSYmIXouY2xhc3NMaXN0LmNvbnRhaW5zKCJhc2stdXNlci1hbnN3ZXJlZCIpfHwoRmUmJkZlLmNvbnRhaW5zKHopP1JlP3ouY2xhc3NMaXN0LmFkZCgiY29sbGFwc2VkIik6UmU9ejp6LmNsYXNzTGlzdC5hZGQoImNvbGxhcHNlZCIpKSl9KX19ZWxzZSBkPFImJkkoKTtHZChGKSx2dihGKSxydShGLG4pLExhKGkpfXZhciBUYT0hMTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oZSl7dmFyIHQ9ZS50YXJnZXQ7aWYoISghdHx8ISh0IGluc3RhbmNlb2YgRWxlbWVudCkpKXt2YXIgbj10LmNsb3Nlc3QoIiN0b2RvLXByb2dyZXNzLXRvZ2dsZSIpO2lmKG4pe2UucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpLFRhPSFUYTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcyIpLGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZG8tcHJvZ3Jlc3MtYm9keSIpO2kmJmEmJihUYT8oaS5jbGFzc0xpc3QuYWRkKCJleHBhbmRlZCIpLGEuY2xhc3NMaXN0LmFkZCgiZXhwYW5kZWQiKSk6KGkuY2xhc3NMaXN0LnJlbW92ZSgiZXhwYW5kZWQiKSxhLmNsYXNzTGlzdC5yZW1vdmUoImV4cGFuZGVkIikpKSxiaSgpfX19KTtmdW5jdGlvbiBiaSgpe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNjaGF0LW91dHB1dCAuY2hhdC1tZXNzYWdlcyIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZG8tcHJvZ3Jlc3MtYm9keSIpO2lmKCEoIWV8fCF0KSl7dmFyIG49ZSxpPSF0LmNsYXNzTGlzdC5jb250YWlucygiaGlkZGVuIiksYT10LmNsYXNzTGlzdC5jb250YWlucygiZXhwYW5kZWQiKSx1PXQub2Zmc2V0SGVpZ2h0O2kmJmEmJnU+MD9uLnN0eWxlLnBhZGRpbmdCb3R0b209dSs4KyJweCI6bi5zdHlsZS5wYWRkaW5nQm90dG9tPSIifX1mdW5jdGlvbiBKcChlKXtpZih0eXBlb2YgZT09InN0cmluZyIpcmV0dXJuIGU7aWYoQXJyYXkuaXNBcnJheShlKSl7Zm9yKHZhciB0PVtdLG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIGk9ZVtuXTt0eXBlb2YgaT09InN0cmluZyI/dC5wdXNoKGkpOmkmJnR5cGVvZiBpLnRleHQ9PSJzdHJpbmciJiZ0LnB1c2goaS50ZXh0KX1yZXR1cm4gdC5qb2luKCIiKX1yZXR1cm4iIn1mdW5jdGlvbiBHcChlLHQpe2Zvcih2YXIgbj17fSxpPXQ7aTxlLmxlbmd0aDtpKyspe3ZhciBhPWVbaV07aWYoISghYXx8IUFycmF5LmlzQXJyYXkoYS5jb250ZW50KSkpZm9yKHZhciB1PTA7dTxhLmNvbnRlbnQubGVuZ3RoO3UrKyl7dmFyIHM9YS5jb250ZW50W3VdO3MmJnMudHlwZT09PSJ0b29sX3Jlc3VsdCImJnMudG9vbF91c2VfaWQmJihuW3MudG9vbF91c2VfaWRdPUpwKHMuY29udGVudCkpfX1mb3IodmFyIG89e30sbD0wLGM9MCxmPSExLGQ9dDtkPGUubGVuZ3RoO2QrKyl7dmFyIHY9ZVtkXTtpZighKCF2fHwhQXJyYXkuaXNBcnJheSh2LmNvbnRlbnQpKSlmb3IodmFyIGc9MDtnPHYuY29udGVudC5sZW5ndGg7ZysrKXt2YXIgaD12LmNvbnRlbnRbZ107aWYoISghaHx8aC50eXBlIT09InRvb2xfdXNlIikpe3ZhciBtPWguaW5wdXR8fHt9O2lmKGgubmFtZT09PSJUYXNrQ3JlYXRlIil7Zj0hMCxjKys7dmFyIGI9bltoLmlkXXx8IiIsdz1iLm1hdGNoKC8jKFxkKykvKSxFPXc/d1sxXTpTdHJpbmcoYyk7b1tFXT17aWQ6RSxjb250ZW50Om0uc3ViamVjdHx8IiIsYWN0aXZlRm9ybTptLmFjdGl2ZUZvcm18fCIiLHN0YXR1czoicGVuZGluZyIsb3JkZXI6bCsrfX1lbHNlIGlmKGgubmFtZT09PSJUYXNrVXBkYXRlIil7Zj0hMDt2YXIgQj1TdHJpbmcobS50YXNrSWQpLEY9b1tCXTtGfHwoRj17aWQ6Qixjb250ZW50OiIiLGFjdGl2ZUZvcm06IiIsc3RhdHVzOiJwZW5kaW5nIixvcmRlcjpsKyt9LG9bQl09RiksbS5zdGF0dXMmJihGLnN0YXR1cz1tLnN0YXR1cyksbS5zdWJqZWN0JiYoRi5jb250ZW50PW0uc3ViamVjdCksbS5hY3RpdmVGb3JtJiYoRi5hY3RpdmVGb3JtPW0uYWN0aXZlRm9ybSl9fX19aWYoIWYpcmV0dXJuIG51bGw7dmFyIHg9W107Zm9yKHZhciBTIGluIG8pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG8sUykmJm9bU10uc3RhdHVzIT09ImRlbGV0ZWQiJiZ4LnB1c2gob1tTXSk7cmV0dXJuIHguc29ydChmdW5jdGlvbihILFIpe3JldHVybiBILm9yZGVyLVIub3JkZXJ9KSx4Lmxlbmd0aD94Om51bGx9ZnVuY3Rpb24gTGEoZSl7Zm9yKHZhciB0PTAsbj1lLmxlbmd0aC0xO24+PTA7bi0tKWlmKGVbbl0mJmVbbl0ucm9sZT09PSJ1c2VyIil7dD1uKzE7YnJlYWt9Zm9yKHZhciBpPW51bGwsYT1lLmxlbmd0aC0xO2E+PXQ7YS0tKXt2YXIgdT1lW2FdO2lmKCEoIXUuY29udGVudHx8IUFycmF5LmlzQXJyYXkodS5jb250ZW50KSkpe2Zvcih2YXIgcz11LmNvbnRlbnQubGVuZ3RoLTE7cz49MDtzLS0pe3ZhciBvPXUuY29udGVudFtzXTtpZihvLnR5cGU9PT0idG9vbF91c2UiJiZvLm5hbWU9PT0iVG9kb1dyaXRlIiYmby5pbnB1dCYmby5pbnB1dC50b2Rvcyl7aT1vLmlucHV0LnRvZG9zO2JyZWFrfX1pZihpKWJyZWFrfX1pfHwoaT1HcChlLHQpKTt2YXIgbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcyIpLGM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZG8tcHJvZ3Jlc3MtYm9keSIpO2lmKGwpe2lmKCFpfHxpLmxlbmd0aD09PTApe2wuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksYyYmYy5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxiaSgpO3JldHVybn1mb3IodmFyIGY9MCxkPTAsdj0iIixnPTA7ZzxpLmxlbmd0aDtnKyspaVtnXS5zdGF0dXM9PT0iY29tcGxldGVkIiYmZisrLGlbZ10uc3RhdHVzPT09ImluX3Byb2dyZXNzIiYmKGQrKyx2fHwodj1pW2ddLmFjdGl2ZUZvcm18fGlbZ10uY29udGVudHx8IiIpKTt2YXIgaD1mPT09aS5sZW5ndGgsbT1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oVil7cmV0dXJuIFYuaWQ9PT1yLnNlbGVjdGVkSWR9KSxiPSEhbSYmbS5zdGF0dXM9PT0icnVubmluZyI7aWYoIWJ8fGgpe2wuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksYyYmYy5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxiaSgpO3JldHVybn1sLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGwuY2xhc3NMaXN0LnJlbW92ZSgiYWxsLWRvbmUiKSxjJiZjLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3ZhciB3PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzLWNvdW50ZXIiKTt3JiYody50ZXh0Q29udGVudD1mKyIvIitpLmxlbmd0aCk7dmFyIEU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZG8tcHJvZ3Jlc3MtdGFzayIpO2lmKEUpe2lmKCF2KXtmb3IodmFyIEI9MDtCPGkubGVuZ3RoO0IrKylpZihpW0JdLnN0YXR1cz09PSJwZW5kaW5nIiYmKGlbQl0uYWN0aXZlRm9ybXx8aVtCXS5jb250ZW50KSl7dj1pW0JdLmFjdGl2ZUZvcm18fGlbQl0uY29udGVudDticmVha319RS50ZXh0Q29udGVudD12fHwiXHU1MUM2XHU1OTA3XHU0RTJEXHUyMDI2In12YXIgRj1pLmxlbmd0aD4wP2YvaS5sZW5ndGg6MCx4PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzLXJpbmciKTt4JiZ4LnN0eWxlLnNldFByb3BlcnR5KCItLXByb2dyZXNzIixGLnRvRml4ZWQoMykpO3ZhciBTPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzLWZpbGwiKTtTJiZTLnN0eWxlLnNldFByb3BlcnR5KCItLXByb2dyZXNzIixGLnRvRml4ZWQoMykpO3ZhciBIPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzLWxpc3QiKTtpZihIKXtmb3IodmFyIFI9IiIsJD0wOyQ8aS5sZW5ndGg7JCsrKXt2YXIgST1pWyRdLEQ9SS5zdGF0dXN8fCJwZW5kaW5nIixUPUQ9PT0iaW5fcHJvZ3Jlc3MiPyJhY3RpdmUiOkQ9PT0iY29tcGxldGVkIj8iZG9uZSI6IiIsTz1EPT09ImluX3Byb2dyZXNzIj8iYWN0aXZlIjpEPT09ImNvbXBsZXRlZCI/ImRvbmUiOiJwZW5kaW5nIixVPUQ9PT0iY29tcGxldGVkIj8iXHUyNzEzIjpEPT09ImluX3Byb2dyZXNzIj8iXHUyMDNBIjoiXHUyNUNCIjtSKz0nPGxpIGNsYXNzPSJ0b2RvLXByb2dyZXNzLWl0ZW0gJytUKyciPjxzcGFuIGNsYXNzPSJ0b2RvLWl0ZW0taWNvbiAnK08rJyI+JytVKyI8L3NwYW4+PHNwYW4+IitwKEkuY29udGVudHx8IiIpKyI8L3NwYW4+PC9saT4ifUguaW5uZXJIVE1MPVJ9ci5zZWxlY3RlZElkJiZ2YShyLnNlbGVjdGVkSWQpLGJpKCl9fWZ1bmN0aW9uIFlwKGUpe2UucXVlcnlTZWxlY3RvckFsbCgiLmNvZGUtY29weSIpLmZvckVhY2goZnVuY3Rpb24odCl7dC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgbj10LmNsb3Nlc3QoIi5jb2RlLWJsb2NrIiksaT1uP24ucXVlcnlTZWxlY3RvcigiY29kZSIpOm51bGw7aSYmUHIoaS50ZXh0Q29udGVudHx8IiIsbnVsbCxmdW5jdGlvbigpe3QudGV4dENvbnRlbnQ9IkNvcGllZCEiLHQuY2xhc3NMaXN0LmFkZCgiY29waWVkIiksc2V0VGltZW91dChmdW5jdGlvbigpe3QudGV4dENvbnRlbnQ9IkNvcHkiLHQuY2xhc3NMaXN0LnJlbW92ZSgiY29waWVkIil9LDJlMyl9KX0pfSl9ZnVuY3Rpb24gbW8oZSl7ZS5xdWVyeVNlbGVjdG9yQWxsKCIuY29kZS1jb3B5IikuZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgbj10LmNsb25lTm9kZSghMCk7dC5wYXJlbnROb2RlLnJlcGxhY2VDaGlsZChuLHQpLG4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7dmFyIGk9bi5jbG9zZXN0KCIuY29kZS1ibG9jayIpLGE9aT9pLnF1ZXJ5U2VsZWN0b3IoImNvZGUiKTpudWxsO2EmJlByKGEudGV4dENvbnRlbnR8fCIiLG51bGwsZnVuY3Rpb24oKXtuLnRleHRDb250ZW50PSJDb3BpZWQhIixuLmNsYXNzTGlzdC5hZGQoImNvcGllZCIpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtuLnRleHRDb250ZW50PSJDb3B5IixuLmNsYXNzTGlzdC5yZW1vdmUoImNvcGllZCIpfSwyZTMpfSl9KX0pLFFwKGUpfXZhciBrZz17dGltZXI6bnVsbCxhY3RpdmVCdG46bnVsbH07ZnVuY3Rpb24gUXAoZSl7dmFyIHQ9d2luZG93Lm1hdGNoTWVkaWEoIihwb2ludGVyOiBjb2Fyc2UpIikubWF0Y2hlczt0JiZlLnF1ZXJ5U2VsZWN0b3JBbGwoIi5jaGF0LW1lc3NhZ2UiKS5mb3JFYWNoKGZ1bmN0aW9uKG4pe2lmKCFuLnF1ZXJ5U2VsZWN0b3IoIi5tc2ctY29weS1idG4iKSl7dmFyIGk9bi5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlLWJ1YmJsZSIpO2lmKGkpe3ZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJ1dHRvbiIpO2EuY2xhc3NOYW1lPSJtc2ctY29weS1idG4iLGEudGV4dENvbnRlbnQ9Ilx1NTkwRFx1NTIzNiIsYS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24odSl7dS5zdG9wUHJvcGFnYXRpb24oKTt2YXIgcz1pLmlubmVyVGV4dHx8aS50ZXh0Q29udGVudHx8IiI7UHIocy50cmltKCksbnVsbCxmdW5jdGlvbigpe2EudGV4dENvbnRlbnQ9Ilx1NURGMlx1NTkwRFx1NTIzNiIsYS5jbGFzc0xpc3QuYWRkKCJjb3BpZWQiKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YS50ZXh0Q29udGVudD0iXHU1OTBEXHU1MjM2IixhLmNsYXNzTGlzdC5yZW1vdmUoImNvcGllZCIpLGEuY2xhc3NMaXN0LnJlbW92ZSgidmlzaWJsZSIpfSwxNTAwKX0pfSksbi5hcHBlbmRDaGlsZChhKX19fSl9KGZ1bmN0aW9uKCl7dmFyIHQ9d2luZG93Lm1hdGNoTWVkaWEoIihwb2ludGVyOiBjb2Fyc2UpIikubWF0Y2hlcztpZih0KXt2YXIgbj1udWxsLGk9MDtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixmdW5jdGlvbihhKXt2YXIgdT1hLnRhcmdldC5jbG9zZXN0KCIuY2hhdC1tZXNzYWdlIik7aWYodSl7dmFyIHM9dS5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlLWJ1YmJsZSIpO3MmJihpPWEudG91Y2hlc1swXS5jbGllbnRZLG49c2V0VGltZW91dChmdW5jdGlvbigpe3ZhciBvPXUucXVlcnlTZWxlY3RvcigiLm1zZy1jb3B5LWJ0biIpO28mJihkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIubXNnLWNvcHktYnRuLnZpc2libGUiKS5mb3JFYWNoKGZ1bmN0aW9uKGwpe2wuY2xhc3NMaXN0LnJlbW92ZSgidmlzaWJsZSIpfSksby5jbGFzc0xpc3QuYWRkKCJ2aXNpYmxlIikpfSw1MDApKX19LHtwYXNzaXZlOiEwfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixmdW5jdGlvbihhKXtuJiZNYXRoLmFicyhhLnRvdWNoZXNbMF0uY2xpZW50WS1pKT4xMCYmKGNsZWFyVGltZW91dChuKSxuPW51bGwpfSx7cGFzc2l2ZTohMH0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIixmdW5jdGlvbigpe24mJihjbGVhclRpbWVvdXQobiksbj1udWxsKX0se3Bhc3NpdmU6ITB9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oYSl7YS50YXJnZXQuY2xvc2VzdCgiLm1zZy1jb3B5LWJ0biIpfHxkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIubXNnLWNvcHktYnRuLnZpc2libGUiKS5mb3JFYWNoKGZ1bmN0aW9uKHUpe3UuY2xhc3NMaXN0LnJlbW92ZSgidmlzaWJsZSIpfSl9KX19KSgpO2Z1bmN0aW9uICRwKGUpe2lmKCFlKXJldHVybiExO3ZhciB0PVN0cmluZyhlKS50cmltKCk7cmV0dXJuIHQ/ISEodC5pbmRleE9mKCJcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDAiKT09PTB8fHQ9PT0iXHUyNzZGInx8dD09PSJcdTIwM0EifHwvXlvila3ilbDilILilIzilJTilJDilJjilJzilKTilKzilLTilLzilIDilZBdezIsfSQvLnRlc3QodCl8fC9eW+KWgeKWguKWg+KWhOKWheKWhuKWh+KWiOKWlOKWleKWj+KWkF0rJC8udGVzdCh0KXx8dC5pbmRleE9mKCJlc2MgdG8gaW50ZXJydXB0IikhPT0tMXx8dC5pbmRleE9mKCJDbGF1ZGUgQ29kZSB2IikhPT0tMXx8L15Tb25uZXRcYi8udGVzdCh0KXx8dC5pbmRleE9mKCJGYWlsZWQgdG8gaW5zdGFsbCBBbnRocm9waWMiKSE9PS0xfHx0LmluZGV4T2YoIkNsYXVkZSBDb2RlIGhhcyBzd2l0Y2hlZCIpIT09LTF8fHQuaW5kZXhPZigiPyBmb3Igc2hvcnRjdXRzIikhPT0tMXx8dC5pbmRleE9mKCJDbGF1ZGUgaXMgd2FpdGluZyIpIT09LTF8fHQuaW5kZXhPZigiW3dhbmRdIikhPT0tMXx8dC5pbmRleE9mKCIwOyIpPT09MHx8dC5pbmRleE9mKCI5OyIpPT09MHx8dC5pbmRleE9mKCJjdHJsK2ciKSE9PS0xfHx0LmluZGV4T2YoIi9lZmZvcnQiKSE9PS0xfHwvXlVzaW5nIC4qIGZvciAuKiBzZXNzaW9uLy50ZXN0KHQpfHx0LmluZGV4T2YoIlByZXNzICIpPT09MCYmdC5pbmRleE9mKCIgZm9yIikhPT0tMXx8dC5pbmRleE9mKCJ0eXBlICIpPT09MCYmdC5pbmRleE9mKCIgdG8gIikhPT0tMXx8dC5pbmRleE9mKCJhdXRvIG1vZGUgaXMgdW5hdmFpbGFibGUiKSE9PS0xfHwvTUNQIHNlcnZlci4qZmFpbGVkL2kudGVzdCh0KXx8dC5pbmRleE9mKCJHZXJtaW5hdGluZyIpIT09LTF8fHQuaW5kZXhPZigiRG9vZGxpbmciKSE9PS0xfHx0LmluZGV4T2YoIkJyZXdpbmciKSE9PS0xfHx0LmluZGV4T2YoIlBlcm1pc3Npb25zIikhPT0tMSYmdC5pbmRleE9mKCJtb2RlIikhPT0tMXx8dC5pbmRleE9mKCJcdTI1Q0YiKT09PTAmJnQuaW5kZXhPZigiXHhCNyIpIT09LTF8fHQuaW5kZXhPZigiWz4iKT09PTB8fHQuaW5kZXhPZigiWzwiKT09PTB8fHQuaW5kZXhPZigiQ2FwdHVyZWQgQ2xhdWRlIHNlc3Npb24gSUQiKSE9PS0xfHwvXj5fXHMqT3BlbkFJIENvZGV4XGIvLnRlc3QodCl8fC9eT3BlbkFJIENvZGV4XGIvaS50ZXN0KHQpfHwvXihtb2RlbHxkaXJlY3RvcnkpOlxzKy9pLnRlc3QodCl8fC9eKHRpcHxjb250ZXh0KTpccysvaS50ZXN0KHQpfHwvXndvcmsodHJlZXxzcGFjZSk6XHMrL2kudGVzdCh0KXx8L14oYXBwcm92YWxzP3xzYW5kYm94fHByb3ZpZGVyfHNlc3Npb24gaWQpOlxzKy9pLnRlc3QodCl8fC9eKHRoaW5raW5nfHdvcmtpbmcpKFwuXC5cLnzigKYpPyQvaS50ZXN0KHQpfHwvXlvigKLil6bCt11ccytXb3JraW5nXGIvaS50ZXN0KHQpfHwvXlvigKLil6bCt11ccysoUnVubmluZ3xQbGFubmluZ3xBcHBseWluZ3xSZWFkaW5nfFNlYXJjaGluZylcYi9pLnRlc3QodCl8fC9eW+KAouKXpsK3XVxzKyhJbnNwZWN0aW5nfFJldmlld2luZ3xTdW1tYXJpemluZ3xFZGl0aW5nfFVwZGF0aW5nfFdyaXRpbmcpXGIvaS50ZXN0KHQpfHwvXlvigKLil6bCt11ccytDb21wbGV0ZWRcYi9pLnRlc3QodCl8fC9eKGN0cmx8ZW50ZXJ8dGFifHNoaWZ0fGVzY3xhbHQpXCsvaS50ZXN0KHQpfHwvXGIob3BlbnxjbG9zZXx0b2dnbGUpIChjaGF0fHRlcm1pbmFsKVxiL2kudGVzdCh0KXx8L1xiKGFwcHJvdmV8ZGVueSlcYi4qXGIocGVybWlzc2lvbnxhcHByb3ZhbClcYi9pLnRlc3QodCl8fC9eKHVzZXxwcmVzcykgLiogKHRvfGZvcikgLiovaS50ZXN0KHQpfHwvXig/OnRva2VufGNvbnRleHQgd2luZG93fHJlbWFpbmluZyBjb250ZXh0fGNvbnZlcnNhdGlvbik6XHMrL2kudGVzdCh0KXx8L14oPzpjd2R8cGF0aCk6XHMrXC8vaS50ZXN0KHQpfHwvXls8PuKUguKUhuKVjl0uKls8PuKUguKUhuKVjl0kLy50ZXN0KHQpJiZ0Lmxlbmd0aDw4KTohMX1mdW5jdGlvbiBYcChlKXtyZXR1cm4gU3RyaW5nKGV8fCIiKS5yZXBsYWNlKC9ceDFiXF1bXlx4MDddKihceDA3fFx4MWJcXCkvZywiIikucmVwbGFjZSgvXHgxYlxbKFxkKylDL2csZnVuY3Rpb24odCxuKXtyZXR1cm4iICIucmVwZWF0KE51bWJlcihuKXx8MSl9KS5yZXBsYWNlKC9ceDFiXFtbMC05Oz9dKltBQl0vZyxgCmApLnJlcGxhY2UoL1x4MWJcW1swLTk7P10qW3N1XS9nLCIiKS5yZXBsYWNlKC9ceDFiXFtbMC05Oz9dKltIZkpLcl0vZyxgCmApLnJlcGxhY2UoL1x4MWJNL2csYApgKS5yZXBsYWNlKC9ceDFiXFtbMC05Oz9dKltTVF0vZyxgCmApLnJlcGxhY2UoL1x4MWJcW1swLTk7P10qW2EtekEtWl0vZywiIikucmVwbGFjZSgvXHgxYls+PD1lUFheX10vZywiIikucmVwbGFjZSgvW1x1MDBhMFx1MjAwYi1cdTIwMGRcdWZlZmZdL2csIiAiKS5yZXBsYWNlKC9bXHgwMC1ceDA4XHgwYlx4MGNceDBlLVx4MWZdL2csIiIpLnJlcGxhY2UoL1xyXG4/L2csYApgKS5yZXBsYWNlKC9bIFx0XStcbi9nLGAKYCkucmVwbGFjZSgvXG57Myx9L2csYAoKYCl9ZnVuY3Rpb24gWnAoZSx0KXt2YXIgbj1bXTtpZighZSlyZXR1cm4gbjt2YXIgaT1TdHJpbmcoZXx8IiIpLGE9YApgLHU9IlxyIixzPSJceDFCIjtpZigvXmNvZGV4XGIvLnRlc3QoU3RyaW5nKHR8fCIiKS50cmltKCkpKXtsZXQgc3Q9ZnVuY3Rpb24oXyl7cmV0dXJuIFN0cmluZyhffHwiIikucmVwbGFjZSgvXHgxYlxdW15ceDA3XSooXHgwN3xceDFiXFwpL2csIiIpLnJlcGxhY2UoL1x4MWJcWyhcZCspQy9nLGZ1bmN0aW9uKE4sWSl7cmV0dXJuIiAiLnJlcGVhdChOdW1iZXIoWSl8fDEpfSkucmVwbGFjZSgvXHgxYlxbWzAtOTs/XSpbQUJdL2csYSkucmVwbGFjZSgvXHgxYlxbWzAtOTs/XSpbc3VdL2csIiIpLnJlcGxhY2UoL1x4MWJcW1swLTk7P10qW0hmSktyXS9nLGEpLnJlcGxhY2UoL1x4MWJNL2csYSkucmVwbGFjZSgvXHgxYlxbWzAtOTs/XSpbU1RdL2csYSkucmVwbGFjZSgvXHgxYlxbWzAtOTs/XSpbYS16QS1aXS9nLCIiKS5yZXBsYWNlKC9ceDFiWz48PWVQWF5fXS9nLCIiKS5yZXBsYWNlKC9bXHUwMGEwXHUyMDBiLVx1MjAwZFx1ZmVmZl0vZywiICIpLnJlcGxhY2UoL1tceDAwLVx4MDhceDBiXHgwY1x4MGUtXHgxZl0vZywiIikucmVwbGFjZSgvWyBcdF0rXG4vZyxhKX0scGU9ZnVuY3Rpb24oXyl7cmV0dXJuIFN0cmluZyhffHwiIikucmVwbGFjZSgvXHMrL2csIiAiKS5yZXBsYWNlKC9bTV0rJC9nLCIiKS50cmltKCl9LHJlPWZ1bmN0aW9uKF8pe3JldHVybiBTdHJpbmcoX3x8IiIpLnJlcGxhY2UoL17igLpccyovLCIiKS5yZXBsYWNlKC9ePlxzKi8sIiIpLnRyaW0oKX0saGU9ZnVuY3Rpb24oXyl7dmFyIE49U3RyaW5nKF98fCIiKS50cmltKCk7cmV0dXJuISEoIU58fCRwKE4pfHxFLnRlc3QoTil8fC9eW+KVreKVsOKUguKUjOKUlOKUkOKUmOKUnOKUpOKUrOKUtOKUvOKUgOKVkF0vLnRlc3QoTil8fC9eXFs+WzAtOTs/XSp1JC9pLnRlc3QoTil8fC9eTSskL2kudGVzdChOKXx8L14oPzpPcGVuQUkgQ29kZXh8Q29kZXgpXGIvaS50ZXN0KE4pfHwvXig/OnRva2Vucz98Y29udGV4dCB3aW5kb3d8cmVtYWluaW5nIGNvbnRleHR8YXBwcm92YWxzP3xzYW5kYm94fHByb3ZpZGVyfHNlc3Npb24gaWQpOlxzKi9pLnRlc3QoTil8fC9eKD86dGhpbmtpbmd8d29ya2luZylccyooPzpcLlwuXC584oCmKT8kL2kudGVzdChOKXx8L15b4oCi4pemwrddXHMrKD86dGhpbmtpbmd8d29ya2luZ3xydW5uaW5nfHBsYW5uaW5nfGFwcGx5aW5nfHJlYWRpbmd8c2VhcmNoaW5nfGluc3BlY3Rpbmd8cmV2aWV3aW5nfHN1bW1hcml6aW5nfGVkaXRpbmd8dXBkYXRpbmd8d3JpdGluZ3xjb21wbGV0ZWQpXGIvaS50ZXN0KE4pfHwvXig/Om1vZGVsfGRpcmVjdG9yeXx0aXB8Y29udGV4dHxjd2R8cGF0aCk6XHMrL2kudGVzdChOKSl9LE9lPWZ1bmN0aW9uKF8pe3ZhciBOPVN0cmluZyhffHwiIikudHJpbSgpO2lmKCEvXuKAuig/OlxzfCQpLy50ZXN0KE4pfHxFLnRlc3QoTikpcmV0dXJuIG51bGw7dmFyIFk9cGUocmUoTikpO3JldHVybiFZfHxoZShZKT9udWxsOll9LEtlPWZ1bmN0aW9uKF8pe3ZhciBOPVN0cmluZyhffHwiIikudHJpbSgpO2lmKCEvXlvigKLil6bCt+KPul0vLnRlc3QoTikpcmV0dXJuIG51bGw7dmFyIFk9Ti5yZXBsYWNlKC9eW+KAouKXpsK3XVxzKi8sIiIpLnJlcGxhY2UoL17ij7pccysvLCIiKS5yZXBsYWNlKC9e4pSCXHMqLywiIikudHJpbSgpO3JldHVybiFZfHwvXlvigKLil6bCt+KPul0kLy50ZXN0KFkpfHwoWT1ZLnJlcGxhY2UoL1xzKlwoXGQrW3NtaF0/XHMq4oCiXHMqZXNjIHRvIGludGVycnVwdFwpW1xzXFNdKiQvaSwiIikucmVwbGFjZSgvKD86W2Etel17MSw2fSk/4oC6W1xzXFNdKiQvLCIiKS5yZXBsYWNlKC9cc3syLH1ncHQtXGRbXHNcU10qJC9pLCIiKS5yZXBsYWNlKC9cYig/Ok9wZW5BSSBDb2RleHxtb2RlbDp8ZGlyZWN0b3J5OnxUaXA6KVxiW1xzXFNdKiQvaSwiIiksWT1wZShZKSwhWXx8WS5sZW5ndGg8Mnx8Qi50ZXN0KFkpfHxoZShZKSk/bnVsbDpZfSxKZT1mdW5jdGlvbihfKXt2YXIgTj1wZShfKTtyZXR1cm4hTnx8aGUoTil8fC9eW+KAouKXpsK34o+64oC6XS8udGVzdChOKXx8L15bXFtcXTw+MC05Oz9dK3U/JC9pLnRlc3QoTil8fC9eW+KVreKVsOKUguKUjOKUlOKUkOKUmOKUnOKUpOKUrOKUtOKUvOKUgOKVkF0vLnRlc3QoTil8fE4ubGVuZ3RoPjUwMD9udWxsOk59LFNlPWZ1bmN0aW9uKF8sTil7aWYoXy5pbmRleE9mKE4pIT09MClyZXR1cm4hMTt2YXIgWT1fLnNsaWNlKE4ubGVuZ3RoKTtyZXR1cm4vXlthLXpdezEsNH0kL2kudGVzdChZKX0sQmU9ZnVuY3Rpb24oXyl7Zm9yKHZhciBOPVtdLFk9MDtZPF8ubGVuZ3RoO1krKyl7dmFyIHZlPXBlKF9bWV0pO2lmKCEoIXZlfHx2ZS5sZW5ndGg8Mnx8aGUodmUpKSl7dmFyIHllPU5bTi5sZW5ndGgtMV07aWYoIXllKXtOLnB1c2godmUpO2NvbnRpbnVlfWlmKHZlIT09eWUpe2lmKHZlLmluZGV4T2YoeWUpPT09MCl7TltOLmxlbmd0aC0xXT12ZTtjb250aW51ZX1pZih5ZS5pbmRleE9mKHZlKT09PTApe1NlKHllLHZlKSYmKE5bTi5sZW5ndGgtMV09dmUpO2NvbnRpbnVlfU4ucHVzaCh2ZSl9fX1yZXR1cm4gTi5qb2luKGEpLnRyaW0oKX0sTHQ9ZnVuY3Rpb24oXyl7Zm9yKHZhciBOPTA7TjxfLmxlbmd0aDtOKyspe3ZhciBZPVN0cmluZyhfW05dfHwiIikudHJpbSgpO2lmKFkpe3ZhciB2ZT1PZShZKTtpZih2ZSlyZXR1cm4gdmU7aWYoWT09PSJcdTIwM0EiKWZvcih2YXIgeWU9TisxO3llPF8ubGVuZ3RoO3llKyspe3ZhciBZZT1wZShfW3llXSk7aWYoISghWWV8fEUudGVzdChZZSl8fGhlKFllKSkpcmV0dXJuIFllfX19cmV0dXJuIG51bGx9LEdlPWZ1bmN0aW9uKF8pe2Zvcih2YXIgTj1bXSxZPSExLHZlPTA7dmU8Xy5sZW5ndGg7dmUrKyl7dmFyIHllPVN0cmluZyhfW3ZlXXx8IiIpLnRyaW0oKTtpZigheWUpe2lmKFkpYnJlYWs7Y29udGludWV9dmFyIFllPUtlKHllKTtpZihZZSl7Ti5wdXNoKFllKSxZPSEwO2NvbnRpbnVlfWlmKFkpe2lmKHllPT09Ilx1MjAzQSJ8fC9e4oC6KD86XHN8JCkvLnRlc3QoeWUpfHxFLnRlc3QoeWUpfHxoZSh5ZSkpYnJlYWs7Ti5wdXNoKHBlKHllKSl9fXJldHVybiBOfTtmb3IodmFyIG89c3QsbD1wZSxjPXJlLGY9aGUsZD1PZSx2PUtlLGc9SmUsaD1TZSxtPUJlLGI9THQsdz1HZSxFPS9cYmdwdC1cZCsoPzpcLlxkKyk/KD86XHMrW2EtejAtOS4tXSspP1xzK8K3XHMrXGQrJVxzK2xlZnRccyvCt1xzKyg/OlwvfH5cLykuKy9pLEI9L14oPzp0aGlua2luZ3x3b3JraW5nfHJ1bm5pbmd8cGxhbm5pbmd8YXBwbHlpbmd8cmVhZGluZ3xzZWFyY2hpbmd8aW5zcGVjdGluZ3xyZXZpZXdpbmd8c3VtbWFyaXppbmd8ZWRpdGluZ3x1cGRhdGluZ3x3cml0aW5nfGNvbXBsZXRlZClcYi9pLEY9W10seD0wLFM9aS5yZXBsYWNlKC9cclxuPy9nLGEpLnNwbGl0KGEpLEg9MDtIPFMubGVuZ3RoO0grKylmb3IodmFyIFI9c3QoU1tIXSksJD1SLnNwbGl0KGEpLEk9MDtJPCQubGVuZ3RoO0krKyl7dmFyIEQ9U3RyaW5nKCRbSV18fCIiKS50cmltKCk7aWYoRCl7dmFyIFQ9T2UoRCk7aWYoVCl7Ri5wdXNoKHtraW5kOiJ1c2VyIixvcmRlcjp4KyssdGV4dDpUfSk7Y29udGludWV9dmFyIE89S2UoRCk7aWYoTyl7Ri5wdXNoKHtraW5kOiJhc3Npc3RhbnQiLG9yZGVyOngrKyx0ZXh0Ok99KTtjb250aW51ZX12YXIgVT1KZShEKTtVJiZGLnB1c2goe2tpbmQ6ImVjaG8iLG9yZGVyOngrKyx0ZXh0OlV9KX19Zm9yKHZhciBWPUYuZmlsdGVyKGZ1bmN0aW9uKF8sTixZKXt2YXIgdmU9WVtOLTFdO3JldHVybiF2ZXx8dmUua2luZCE9PV8ua2luZHx8dmUudGV4dCE9PV8udGV4dH0pLFg9Vi5maWx0ZXIoZnVuY3Rpb24oXyl7cmV0dXJuIF8ua2luZD09PSJ1c2VyIn0pLGVlPVYuZmlsdGVyKGZ1bmN0aW9uKF8pe3JldHVybiBfLmtpbmQ9PT0iYXNzaXN0YW50In0pLFo9Vi5maWx0ZXIoZnVuY3Rpb24oXyl7cmV0dXJuIF8ua2luZD09PSJlY2hvIn0pLHVlPVhwKGkpLEw9dWUuc3BsaXQoYSkubWFwKGZ1bmN0aW9uKF8pe3JldHVybiBTdHJpbmcoX3x8IiIpLnRyaW1FbmQoKX0pLE09THQoTCksaj1YLmxlbmd0aD9YW1gubGVuZ3RoLTFdOm51bGwsRz1aLm1hcChmdW5jdGlvbihfKXtyZXR1cm4gXy50ZXh0fSkuZmlsdGVyKGZ1bmN0aW9uKF8pe3JldHVybiBfLmxlbmd0aD49M30pLEs9bnVsbCxpZT1HLmxlbmd0aC0xO2llPj0wO2llLS0paWYoR1tpZV0hPT1NKXtLPUdbaWVdO2JyZWFrfSFLJiZHLmxlbmd0aCYmKEs9R1tHLmxlbmd0aC0xXSk7Zm9yKHZhciB0ZT1qP2oudGV4dDpLLHNlPWVlLmZpbHRlcihmdW5jdGlvbihfKXtyZXR1cm4hanx8Xy5vcmRlcj5qLm9yZGVyfSkubWFwKGZ1bmN0aW9uKF8pe3JldHVybiBfLnRleHR9KSxvZT1bXSxxZT11ZS5tYXRjaCgvXlsgXHRdKlvigKLil6bCt+KPul1bIFx0XSooLispJC9nbSl8fFtdLEVlPTA7RWU8cWUubGVuZ3RoO0VlKyspe3ZhciBGZT1wZShxZVtFZV0ucmVwbGFjZSgvXlsgXHRdKlvigKLil6bCt+KPul1bIFx0XSovLCIiKSk7RmUmJihCLnRlc3QoRmUpfHxFLnRlc3QoRmUpfHwvXGIoPzpPcGVuQUkgQ29kZXh8bW9kZWw6fGRpcmVjdG9yeTp8VGlwOnxlc2MgdG8gaW50ZXJydXB0KVxiL2kudGVzdChGZSl8fG9lLnB1c2goRmUpKX12YXIgcT1CZShzZSl8fEJlKEdlKEwpKXx8KG9lLmxlbmd0aD9vZVtvZS5sZW5ndGgtMV06bnVsbCk7cmV0dXJuIHRlJiZuLnB1c2goe3JvbGU6InVzZXIiLGNvbnRlbnQ6dGV9KSxxJiZuLnB1c2goe3JvbGU6ImFzc2lzdGFudCIsY29udGVudDpxfSksIW4ubGVuZ3RoJiZqP24ucHVzaCh7cm9sZToidXNlciIsY29udGVudDpqLnRleHR9KTohbi5sZW5ndGgmJksmJm4ucHVzaCh7cm9sZToidXNlciIsY29udGVudDpLfSksbn1mb3IodmFyIFJlPSJcMCIsej0iXGIiLGxlPSJcdiIsZ2U9IlxmIixuZT0iDiIsZGU9Ih8iLFZlPSJceEEwIixkdD0iXHgwNyIsVnQ9bmV3IFJlZ0V4cChzKyJcXFtbMC05Oz9dKlthLXpBLVpdfCIrcysiXFxdW14iK2R0KyJdKigiK2R0KyJ8IitzKyJcXFxcXFxcXCl8IitzKyJbPjw9ZVBfWF5dfFsiK1JlKyItIit6K2xlK2dlK25lKyItIitkZSsiXXwiK1ZlKyJ8Iit1LCJnIiksZXQ9aS5yZXBsYWNlKFZ0LGZ1bmN0aW9uKHN0KXtyZXR1cm4gc3Q9PT1WZT8iICI6c3Q9PT11P2E6IiJ9KS5zcGxpdCh1KS5qb2luKGEpLHR0PWV0LnNwbGl0KGEpLm1hcChmdW5jdGlvbihzdCl7cmV0dXJuIHN0LnRyaW0oKX0pLmZpbHRlcihCb29sZWFuKSxudD1bL3RoaW5raW5nIHdpdGggaGlnaCBlZmZvcnQvaSwvdGhpbmtpbmcgd2l0aCBtZWRpdW0gZWZmb3J0L2ksL3RoaW5raW5nIHdpdGggbG93IGVmZm9ydC9pLG5ldyBSZWdFeHAoInRob3VnaHQgZm9yIFswLTldK3MiLCJpIiksbmV3IFJlZ0V4cCgiU2F1dGVlZCBmb3IgWzAtOV0rbSIsImkiKSwvR2VybWluYXRpbmcvaSwvRG9vZGxpbmcvaSwvQnJld2luZy9pXSxGdD1udWxsLHJ0PS0xLGl0PVtdLGtlPVtdLGZlPVtdLENlPTA7Q2U8dHQubGVuZ3RoO0NlKyspe3ZhciBDPXR0W0NlXSxhdD1DLnJlcGxhY2UoL17ina9ccyovLCIiKTtpZihhdC5pbmRleE9mKCdUcnkiJyk9PT0wfHxhdC5pbmRleE9mKCdUcnkgIicpPT09MCl7aXQucHVzaChhdCk7Y29udGludWV9Zm9yKHZhciB3dD0hMSxTdD0wO1N0PG50Lmxlbmd0aDtTdCsrKWlmKG50W1N0XS50ZXN0KEMpKXt3dD0hMCxmZS5wdXNoKEMpO2JyZWFrfWlmKCF3dCYmQyYmQy5pbmRleE9mKCJcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDAiKSE9PTAmJkMhPT0iXHUyNzZGIiYmQy5pbmRleE9mKCJlc2MgdG8gaW50ZXJydXB0Iik9PT0tMSYmQy5pbmRleE9mKCJDbGF1ZGUgQ29kZSB2Iik9PT0tMSYmQy5pbmRleE9mKCJTb25uZXQiKT09PS0xJiZDLmluZGV4T2YoIn4vIikhPT0wJiZDLmluZGV4T2YoIlx1MjVDRiBoaWdoIik9PT0tMSYmQy5pbmRleE9mKCJGYWlsZWQgdG8gaW5zdGFsbCBBbnRocm9waWMgbWFya2V0cGxhY2UiKT09PS0xJiZDLmluZGV4T2YoIkNsYXVkZSBDb2RlIGhhcyBzd2l0Y2hlZCBmcm9tIG5wbSB0byBuYXRpdmUgaW5zdGFsbGVyIik9PT0tMSYmQy5pbmRleE9mKCJGbHV0dGVyaW5nIik9PT0tMSYmQy5pbmRleE9mKCI/IGZvciBzaG9ydGN1dHMiKT09PS0xJiZDLmluZGV4T2YoIjA7IikhPT0wJiZDLmluZGV4T2YoIjk7IikhPT0wJiZDLmluZGV4T2YoIkNsYXVkZSBpcyB3YWl0aW5nIik9PT0tMSYmIShDLmluZGV4T2YoIlx1MjcyMiIpIT09LTF8fEMuaW5kZXhPZigiXHUyNzMzIikhPT0tMXx8Qy5pbmRleE9mKCJcdTI3MzYiKSE9PS0xfHxDLmluZGV4T2YoIlx1MjczQiIpIT09LTF8fEMuaW5kZXhPZigiXHUyNzNEIikhPT0tMSkmJiEoQy5pbmRleE9mKCJcdTI1OTAiKT09PTB8fEMuaW5kZXhPZigiXHUyNTlEIik9PT0wfHxDLmluZGV4T2YoIlx1MjU5OCIpPT09MCkmJiEoKEM9PT0ibHUifHxDPT09InVlInx8Qz09PSJ0ciJ8fEM9PT0idGkifHxDPT09ImcifHxDPT09Im4ifHxDPT09ImlcdTIwMjYifHxDPT09Ilx1MjAyNiJ8fEM9PT0idXRzInx8Qz09PSJsdCJ8fEM9PT0icmcifHxDPT09Ilx4QjciKSYmQy5sZW5ndGg8NCkmJiEoQy5pbmRleE9mKCJcdTI3M0RGIik9PT0wfHxDLmluZGV4T2YoIlx1MjczQkYiKT09PTApJiZDLmluZGV4T2YoIm5wbSBXQVJOIik9PT0tMSYmQy5pbmRleE9mKCJucG0gbm90aWNlIik9PT0tMSYmIShDLmluZGV4T2YoImFkZGVkICIpIT09LTEmJkMuaW5kZXhPZigiIHBhY2thZ2VzIikhPT0tMSkmJkMuaW5kZXhPZigiYXVkaXRlZCAiKT09PS0xJiYhKEMuaW5kZXhPZigiZm91bmQgIikhPT0tMSYmQy5pbmRleE9mKCIgdnVsbmVyYWJpbGl0aWVzIikhPT0tMSkmJiEoQy5pbmRleE9mKCJVc2luZyAiKSE9PS0xJiZDLmluZGV4T2YoIiBmb3IgIikhPT0tMSYmQy5pbmRleE9mKCJzZXNzaW9uIikhPT0tMSkmJkMuaW5kZXhPZigiWW91IGNhbiB1c2UiKT09PS0xJiYhKEMuaW5kZXhPZigiUHJlc3MgIikhPT0tMSYmQy5pbmRleE9mKCIgZm9yIikhPT0tMSkmJiEoQy5pbmRleE9mKCJ0eXBlICIpPT09MCYmQy5pbmRleE9mKCIgdG8gIikhPT0tMSkmJkMuaW5kZXhPZigiW3dhbmRdIikhPT0wJiZDLmluZGV4T2YoIkNhcHR1cmVkIENsYXVkZSBzZXNzaW9uIElEIik9PT0tMSYmQy5pbmRleE9mKCJcdTIzRjUiKT09PS0xJiZDLmluZGV4T2YoImFjY2VwdGVkaXQiKT09PS0xJiZDLmluZGV4T2YoInNoaWZ0K3RhYiIpPT09LTEmJkMuaW5kZXhPZigidGFidG9jeWNsZSIpPT09LTEmJkMuaW5kZXhPZigiY3RybCtnIik9PT0tMSYmQy5pbmRleE9mKCIvZWZmb3J0Iik9PT0tMSYmIShDLmluZGV4T2YoIk9wdXMiKSE9PS0xJiZDLmluZGV4T2YoIm1vZGVsIikhPT0tMSkmJkMuaW5kZXhPZigiSGFpa3UiKT09PS0xJiZDLmluZGV4T2YoInRvIGN5Y2xlIik9PT0tMSYmIShDLmluZGV4T2YoImhpZ2ggXHhCNyIpIT09LTF8fEMuaW5kZXhPZigiaGlnaFx4QjciKSE9PS0xKSYmIShDLmluZGV4T2YoIm1lZGl1bSBceEI3IikhPT0tMXx8Qy5pbmRleE9mKCJtZWRpdW1ceEI3IikhPT0tMSkmJiEoQy5pbmRleE9mKCJsb3cgXHhCNyIpIT09LTF8fEMuaW5kZXhPZigibG93XHhCNyIpIT09LTEpKXtpZihDLmluZGV4T2YoIlx1MjVDRiIpPT09MCl7aWYoQz1DLnNsaWNlKDEpLnRyaW0oKSwhQyljb250aW51ZTtrZS5wdXNoKEMpO2NvbnRpbnVlfUMubGVuZ3RoPDMmJiEvXlthLXpBLVpdezN9JC8udGVzdChDKXx8a2UucHVzaChDKX19aWYoZmUubGVuZ3RoPjApe3ZhciB5dD1mZVtmZS5sZW5ndGgtMV0sSXQ9eXQubWF0Y2gobmV3IFJlZ0V4cCgiZm9yIChbMC05XStbbXNdK3wgWzAtOV0rbSBbMC05XStzKSIsImkiKSksdXQ9SXQ/Ilx1NkRGMVx1NUVBNlx1NjAxRFx1ODAwMyAiK0l0WzBdLnJlcGxhY2UoL2ZvciAvaSwiIik6Ilx1NkRGMVx1NUVBNlx1NjAxRFx1ODAwM1x1NEUyRC4uLiI7bi5wdXNoKHtyb2xlOiJ0aGlua2luZyIsY29udGVudDp1dCx0eXBlOiJkZWVwLXRob3VnaHQifSl9aWYoaXQubGVuZ3RoPjApe3ZhciBLdD1pdFtpdC5sZW5ndGgtMV0ucmVwbGFjZSgvXlRyeVxzKi8sIiIpLnRyaW0oKTtuLnB1c2goe3JvbGU6InByb21wdCIsY29udGVudDpLdCx0eXBlOiJzdWdnZXN0aW9uIn0pfWlmKCFrZS5sZW5ndGgpcmV0dXJuIG47Zm9yKHZhciBIZT1bXSxBZT1udWxsLHhlPVtdLENlPTA7Q2U8a2UubGVuZ3RoO0NlKyspaWYoQz1rZVtDZV0sQy5pbmRleE9mKCJcdTI3NkYiKT09PTApe3ZhciBmdD1DLnJlcGxhY2UoL17ina9ccyovLCIiKS50cmltKCk7aWYoZnQuaW5kZXhPZignVHJ5IicpPT09MHx8ZnQuaW5kZXhPZignVHJ5ICInKT09PTApY29udGludWU7QWUhPT1udWxsJiZ4ZS5sZW5ndGg+MCYmKEhlLnB1c2goe3VzZXI6QWUsYXNzaXN0YW50TGluZXM6eGV9KSx4ZT1bXSksZnQ/QWU9ZnQ6KEFlIT09bnVsbCYmeGUubGVuZ3RoPjAmJihIZS5wdXNoKHt1c2VyOkFlLGFzc2lzdGFudExpbmVzOnhlfSkseGU9W10pLEFlPW51bGwpfWVsc2UgQWUhPT1udWxsJiYoQy5pbmRleE9mKCJcdTIzRkEiKSE9PS0xJiYoQy5pbmRleE9mKCJIaSEiKSE9PS0xfHxDLmluZGV4T2YoIkhlbGxvIikhPT0tMXx8Qy5pbmRleE9mKCJXaGF0IikhPT0tMXx8Qy5pbmRleE9mKCJ3b3JraW5nIikhPT0tMSk/eGUucHVzaChDKTpDLmluZGV4T2YoIlx1MjNGQSIpPT09MD94ZS5wdXNoKEMuc2xpY2UoMSkudHJpbSgpfHxDKTpDLmxlbmd0aD49OCYmQy5pbmRleE9mKCJcdTI3MjIiKT09PS0xJiZDLmluZGV4T2YoIlx1MjczMyIpPT09LTEmJkMuaW5kZXhPZigiXHUyNzM2Iik9PT0tMSYmQy5pbmRleE9mKCJcdTI3M0IiKT09PS0xJiZDLmluZGV4T2YoIlx1MjczRCIpPT09LTEmJkMuaW5kZXhPZigiXHUyNTkwIikhPT0wJiZDLmluZGV4T2YoIlx1MjU5RCIpIT09MCYmQy5pbmRleE9mKCJcdTI1OTgiKSE9PTAmJkMuaW5kZXhPZigiZXNjdG9pbnRlcnJ1cHQiKT09PS0xJiZDLmluZGV4T2YoIj9mb3IiKSE9PTAmJkMuaW5kZXhPZigiPyBmb3IiKSE9PTAmJnhlLnB1c2goQykpO2lmKEFlIT09bnVsbCYmeGUubGVuZ3RoPjAmJkhlLnB1c2goe3VzZXI6QWUsYXNzaXN0YW50TGluZXM6eGV9KSxIZS5sZW5ndGg9PT0wKXtmb3IodmFyIHB0PSIiLFdlPS0xLENlPTA7Q2U8a2UubGVuZ3RoO0NlKyspaWYoQz1rZVtDZV0sIShDLmluZGV4T2YoJ1RyeSInKT09PTB8fEMuaW5kZXhPZignVHJ5ICInKT09PTApJiZDLmluZGV4T2YoIkZhaWxlZCB0byBpbnN0YWxsIik9PT0tMSYmQy5pbmRleE9mKCJjdHJsK2ciKT09PS0xJiZDLmluZGV4T2YoIlx1MjVDRiAiKSE9PTAmJiEoQy5sZW5ndGg8Mnx8Qy5sZW5ndGg+MTAwKSYmL15bYS16QS1aXS8udGVzdChDKSl7cHQ9Qy50cmltKCksV2U9Q2U7YnJlYWt9aWYocHQmJldlPj0wKXt2YXIgaG49a2Uuc2xpY2UoV2UrMSkuZmlsdGVyKGZ1bmN0aW9uKHN0KXtyZXR1cm4gc3QubGVuZ3RoPj04fSk7aG4ubGVuZ3RoPjAmJkhlLnB1c2goe3VzZXI6cHQsYXNzaXN0YW50TGluZXM6aG59KX19Zm9yKHZhciBUdD0wO1R0PEhlLmxlbmd0aDtUdCsrKWlmKG4ucHVzaCh7cm9sZToidXNlciIsY29udGVudDpIZVtUdF0udXNlcn0pLEhlW1R0XS5hc3Npc3RhbnRMaW5lcy5sZW5ndGg+MCl7dmFyIExuPUF2KEhlW1R0XS5hc3Npc3RhbnRMaW5lcy5qb2luKGEpKTtuLnB1c2goe3JvbGU6ImFzc2lzdGFudCIsY29udGVudDpMbn0pfXJldHVybiBufXZhciBnbz0idHJhbnNwYXJlbnQiO2Z1bmN0aW9uIEVpKGUsdCl7Zm9yKHZhciBuPXR8fDMsaT1lWzBdLmxlbmd0aCpuLGE9ZS5sZW5ndGgqbix1PSIiLHM9MDtzPGUubGVuZ3RoO3MrKylmb3IodmFyIG89MDtvPGVbc10ubGVuZ3RoO28rKyllW3NdW29dIT09Z28mJih1Kz0nPHJlY3QgeD0iJytvKm4rJyIgeT0iJytzKm4rJyIgd2lkdGg9IicrbisnIiBoZWlnaHQ9IicrbisnIiBmaWxsPSInK2Vbc11bb10rJyIvPicpO3JldHVybic8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwICcraSsiICIrYSsnIiBjbGFzcz0icGl4ZWwtYXZhdGFyLXN2ZyI+Jyt1KyI8L3N2Zz4ifWZ1bmN0aW9uIEZpKGUpe3ZhciB0PWdvLG49ZS5iYXNlLGk9ZS5kYXJrLGE9ZS5saWdodHx8ZS5iYXNlLHU9ZS5hY2NlbnR8fCIjRkZGRkZGIixzPWUuZXllfHwiIzJEMkQyRCIsbz1lLm1vdXRofHwiI0YyOEI5QSIsbD1lLm5vc2V8fGUuZGFyaztyZXR1cm5bW3QsaSx0LHQsdCx0LHQsdCxpLHRdLFtpLG4saSx0LHQsdCx0LGksbixpXSxbaSxuLG4sbixuLG4sbixuLG4saV0sW24sbix1LHMsbixuLHUscyxuLG5dLFtuLG4sdSx1LG4sbix1LHUsbixuXSxbbixuLG4sbixvLG8sbixuLG4sbl0sW24sbCxuLGEsbixuLGEsbixsLG5dLFt0LG4sbixuLG4sbixuLG4sbix0XSxbdCx0LG4saSxuLG4saSxuLHQsdF0sW3QsdCx0LG4sdCx0LG4sdCx0LHRdXX12YXIgZXY9e2Jhc2U6IiNGMDkyM0EiLGRhcms6IiNDNDZBMUEiLGxpZ2h0OiIjRjA5MjNBIixhY2NlbnQ6IiNGRkZGRkYiLGV5ZToiIzJEMkQyRCIsbW91dGg6IiNGMjhCOUEiLG5vc2U6IiNFODdENUEifSx0dj17YmFzZToiIzlFQUFCOCIsZGFyazoiIzZCN0I4RCIsbGlnaHQ6IiNDNUNFRDgiLGFjY2VudDoiI0ZGRkZGRiIsZXllOiIjN0VDODhCIixtb3V0aDoiI0YyOEI5QSJ9LGhvPVt7YmFzZToiIzVBOEZFMCIsZGFyazoiIzJFNUJCMyIsbGlnaHQ6IiM5Q0MwRjIiLGFjY2VudDoiI0ZGRkZGRiIsZXllOiIjRkZENjZFIixtb3V0aDoiI0YyOEI5QSIscHJpbWFyeToiIzVBOEZFMCJ9LHtiYXNlOiIjQTA2RkUwIixkYXJrOiIjNkI0NUE4IixsaWdodDoiI0M4QTRGMiIsYWNjZW50OiIjRkZGRkZGIixleWU6IiNGRkUzNkUiLG1vdXRoOiIjRjI4QjlBIixwcmltYXJ5OiIjQTA2RkUwIn0se2Jhc2U6IiM3QkI3NkIiLGRhcms6IiM0RjhBNDAiLGxpZ2h0OiIjQTlENDlDIixhY2NlbnQ6IiNGRkZGRkYiLGV5ZToiIzJEMkQyRCIsbW91dGg6IiNGMjhCOUEiLHByaW1hcnk6IiM3QkI3NkIifSx7YmFzZToiI0Q4NkE4OCIsZGFyazoiIzlDM0E1NyIsbGlnaHQ6IiNFOEE0QjUiLGFjY2VudDoiI0ZGRkZGRiIsZXllOiIjMkQyRDJEIixtb3V0aDoiI0ZGRkZGRiIscHJpbWFyeToiI0Q4NkE4OCJ9LHtiYXNlOiIjNUJCN0IwIixkYXJrOiIjMkU3ODczIixsaWdodDoiIzlDRDZEMiIsYWNjZW50OiIjRkZGRkZGIixleWU6IiNGRkQ2NkUiLG1vdXRoOiIjRjI4QjlBIixwcmltYXJ5OiIjNUJCN0IwIn0se2Jhc2U6IiM0QTRBNjAiLGRhcms6IiMxRjFGMkUiLGxpZ2h0OiIjNkU2RTg0IixhY2NlbnQ6IiNGNUY1RjUiLGV5ZToiI0ZGRDY2RSIsbW91dGg6IiNGMjhCOUEiLHByaW1hcnk6IiM0QTRBNjAifSx7YmFzZToiI0Q4QTg1QSIsZGFyazoiIzlDNzAyOCIsbGlnaHQ6IiNFQkM3OEEiLGFjY2VudDoiI0ZGRkZGRiIsZXllOiIjMkQyRDJEIixtb3V0aDoiI0YyOEI5QSIscHJpbWFyeToiI0Q4QTg1QSJ9XTtmdW5jdGlvbiBudihlLHQpe2Zvcih2YXIgbj1TdHJpbmcoZXx8IiIpLGk9MCxhPTA7YTxuLmxlbmd0aDthKyspaT0oaTw8NSktaStuLmNoYXJDb2RlQXQoYSl8MDtyZXR1cm4gTWF0aC5hYnMoaSkldH12YXIgeW89eyJnZW5lcmFsLXB1cnBvc2UiOiJcdTRFMDdcdTgwRkRcdTczMkIiLEV4cGxvcmU6Ilx1NEZBNlx1NjNBMlx1NzMyQiIsImNvZGUtZXhwbG9yZXIiOiJcdTRGQTZcdTYzQTJcdTczMkIiLCJjb2RlLXJldmlld2VyIjoiXHU1QkExXHU2N0U1XHU3MzJCIiwiY29kZS1hcmNoaXRlY3QiOiJcdTY3QjZcdTY3ODRcdTczMkIiLCJjb2RlLXNpbXBsaWZpZXIiOiJcdTdCODBcdTUzMTZcdTczMkIiLCJjb2RlLWd1aWRlIjoiXHU1NDExXHU1QkZDXHU3MzJCIixQbGFuOiJcdTdCNTZcdTUyMTJcdTczMkIiLCJmZWF0dXJlLWRldiI6Ilx1NUYwMFx1NTNEMVx1NzMyQiIsInByLXRlc3QtYW5hbHl6ZXIiOiJcdTZENEJcdThCRDVcdTczMkIiLCJzaWxlbnQtZmFpbHVyZS1odW50ZXIiOiJcdTYyQTRcdTUzNkJcdTczMkIiLCJ0eXBlLWRlc2lnbi1hbmFseXplciI6Ilx1N0M3Qlx1NTc4Qlx1NzMyQiIsImNvbW1lbnQtYW5hbHl6ZXIiOiJcdTZDRThcdTkxQ0FcdTczMkIifSxNYT1udWxsO2Z1bmN0aW9uIGJvKGUpe2lmKCFlKXJldHVybiIiO3ZhciB0PWUuYWdlbnRUeXBlfHwiIjtpZih0JiZ5b1t0XSlyZXR1cm4geW9bdF07aWYodClyZXR1cm4gdDt2YXIgbj0oZS50YXNrSWR8fCIiKS5zbGljZSgtNCl8fChsdSgpPT09IkVuZ2xpc2giPyI/IjoiXHU2NzJBXHU3N0U1Iik7cmV0dXJuIGNlKCJzdWJhZ2VudC5oZWxwZXJfZmFsbGJhY2tfcHJlZml4Iikrbn1mdW5jdGlvbiBFbyhlKXt2YXIgdD1ibyhlKTtpZighdClyZXR1cm4gdDt2YXIgbj1NYSYmZSYmZS50YXNrSWQ/TWEuZ2V0KGUudGFza0lkKTpudWxsO3JldHVybiBuP3Qrbjp0fWZ1bmN0aW9uIEZvKGUpe3ZhciB0PWUmJihlLmFnZW50VHlwZXx8ZS50YXNrSWQpfHwic3ViYWdlbnQiO3JldHVybiBob1tudih0LGhvLmxlbmd0aCldfWZ1bmN0aW9uIEFnKGUpe3ZhciB0PUZvKGUpLG49RW8oZSksaT1FaShGaSh0KSk7cmV0dXJuJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1hdmF0YXIgYXNzaXN0YW50IHN1YmFnZW50IiBzdHlsZT0iLS1hZ2VudC1jb2xvcjonK3QucHJpbWFyeSsnIj48ZGl2IGNsYXNzPSJwaXhlbC1hdmF0YXIiPicraSsnPC9kaXY+PHNwYW4gY2xhc3M9ImF2YXRhci1uYW1lIj4nK3AobikrIjwvc3Bhbj48L2Rpdj4ifWZ1bmN0aW9uIHJ2KGUsdCl7aWYoIWV8fGUudHlwZSE9PSJ0b29sX3Jlc3VsdCIpcmV0dXJuIiI7dmFyIG49Y24oZS5jb250ZW50KSxpPWUuaXNfZXJyb3I9PT0hMCxhPXR5cGVvZiBuPT0ic3RyaW5nIj9uOm49PW51bGw/IiI6U3RyaW5nKG4pO2lmKCFpJiYhYS50cmltKCkpcmV0dXJuJzxkaXYgY2xhc3M9InN1YmFnZW50LXJlcGx5IHBlbmRpbmciPjxzcGFuIGNsYXNzPSJzdWJhZ2VudC1yZXBseS1tYXJrZXIgcGVuZGluZyI+JytwKGNlKCJzdWJhZ2VudC5ydW5uaW5nIikpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InR5cGluZy1pbmRpY2F0b3IiPjxzcGFuPjwvc3Bhbj48c3Bhbj48L3NwYW4+PHNwYW4+PC9zcGFuPjwvc3Bhbj48L2Rpdj4nO3ZhciB1PWEudHJpbSgpP2E6Y2UoInN1YmFnZW50Lm5vX291dHB1dCIpLHM9YS50cmltKCk/X2EodSk6cCh1KSxvPWNlKGk/InN1YmFnZW50LnRhc2suZmFpbGVkIjoic3ViYWdlbnQudGFzay5kb25lIiksbD1pPyJcdTI3MTciOiJcdTI3MTMiO3JldHVybic8ZGl2IGNsYXNzPSJzdWJhZ2VudC1yZXBseSBmaW5hbCcrKGk/IiBlcnJvciI6IiIpKyciPjxkaXYgY2xhc3M9InN1YmFnZW50LXJlcGx5LW1hcmtlciAnKyhpPyJlcnJvciI6ImRvbmUiKSsnIj48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcmVwbHktbWFya2VyLWljb24iIGFyaWEtaGlkZGVuPSJ0cnVlIj4nK2wrJzwvc3Bhbj48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcmVwbHktbWFya2VyLWxhYmVsIj4nK3AobykrJzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzdWJhZ2VudC1yZXBseS1jb250ZW50Ij4nK3MrIjwvZGl2PjwvZGl2PiJ9dmFyIHdpPXthc3Npc3RhbnQ6RWkoRmkoZXYpKSx1c2VyOkVpKEZpKHR2KSl9LHdvPXt1c2VyOntuYW1lOiJcdThENUJcdTUzNUFcdTg2NEVcdTU5OUUiLGF2YXRhclN2Zzp3aS51c2VyfSxhc3Npc3RhbnQ6e25hbWU6Ilx1NTJFNFx1NTJCM1x1NTIxRFx1NEU4QyIsYXZhdGFyU3ZnOndpLmFzc2lzdGFudH19O2Z1bmN0aW9uIE9hKGUpe3ZhciB0PXIuY29uZmlnJiZyLmNvbmZpZy5zdHJ1Y3R1cmVkQ2hhdFBlcnNvbmEsbj10JiZ0W2VdP3RbZV06bnVsbCxpPXdvW2VdfHx3by5hc3Npc3RhbnQ7cmV0dXJue25hbWU6biYmdHlwZW9mIG4ubmFtZT09InN0cmluZyImJm4ubmFtZS50cmltKCk/bi5uYW1lLnRyaW0oKTppLm5hbWUsYXZhdGFyOm4mJnR5cGVvZiBuLmF2YXRhcj09InN0cmluZyImJm4uYXZhdGFyLnRyaW0oKT9uLmF2YXRhci50cmltKCk6bnVsbCxhdmF0YXJTdmc6aS5hdmF0YXJTdmd9fWZ1bmN0aW9uIENvKGUpe3JldHVybic8ZGl2IGNsYXNzPSJwaXhlbC1hdmF0YXIiPicrZSsiPC9kaXY+In1mdW5jdGlvbiB4ZyhlLHQpe2lmKCEoIWV8fCFlLnBhcmVudE5vZGUpKXt2YXIgbj1PYSh0PT09InVzZXIiPyJ1c2VyIjoiYXNzaXN0YW50Iik7ZS5vdXRlckhUTUw9Q28obi5hdmF0YXJTdmcpfX1mdW5jdGlvbiBZbihlLHQpe3Q9dHx8e307dmFyIG49ZT09PSJ1c2VyIj8idXNlciI6ImFzc2lzdGFudCIsaT1PYShuKSxhPWkuYXZhdGFyPyc8aW1nIGNsYXNzPSJwaXhlbC1hdmF0YXItaW1hZ2UiIHNyYz0iJytwKGkuYXZhdGFyKSsnIiBhbHQ9IicrcChpLm5hbWUpKyciIG9uZXJyb3I9ImhhbmRsZUNoYXRBdmF0YXJJbWFnZUVycm9yKHRoaXMsICcrSlNPTi5zdHJpbmdpZnkobikrJykiIC8+JzpDbyhpLmF2YXRhclN2ZyksdT10LmxlZnRTbG90P3QubGVmdFNsb3Q6IiI7cmV0dXJuJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1hdmF0YXIgJytlKyciPicrYSsnPHNwYW4gY2xhc3M9ImF2YXRhci1uYW1lIj4nK3AoaS5uYW1lKSsiPC9zcGFuPiIrdSsiPC9kaXY+In1mdW5jdGlvbiBpdigpe3ZhciBlPU50KCk7cmV0dXJuIWV8fCFhZShlKT8iIjp6YShlLHtraW5kOiJjb21wYWN0In0pfWZ1bmN0aW9uIFBhKGUsdCxuLGkpe2lmKGUucm9sZT09PSJ0aGlua2luZyIpe3ZhciBhPXR5cGVvZiBlLmNvbnRlbnQ9PSJzdHJpbmciP2UuY29udGVudDoiIjtpZighYS50cmltKCkpcmV0dXJuIiI7dmFyIHU9T3QoInRoaW5raW5nIixbaHUoZSxuKSwicHR5Il0pLHM9JGUodSksbz1zPT09bnVsbD9BbigidGhpbmtpbmciKTpzO3JldHVybic8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UgdGhpbmtpbmciPjxkaXYgY2xhc3M9InRoaW5raW5nLWlubGluZSB0aGlua2luZy1wdHkgJysobz8iZXhwYW5kZWQiOiJjb2xsYXBzZWQiKSsnIiBkYXRhLWV4cGFuZC1raW5kPSJ0aGlua2luZyIgZGF0YS1leHBhbmQta2V5PSInK3AodSkrJyIgZGF0YS10aGlua2luZz0iJytwKGEpKyciIG9uY2xpY2s9Il9fdGhpbmtpbmdUb2dnbGUodGhpcykiPjxzcGFuIGNsYXNzPSJ0aGlua2luZy1pbmxpbmUtaWNvbiI+XHUyOUJGPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aGlua2luZy1pbmxpbmUtcHJldmlldyI+JytwKGEpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InRoaW5raW5nLWlubGluZS1hY3Rpb24iPicrKG8/Ilx1NjUzNlx1OEQ3NyI6Ilx1NUM1NVx1NUYwMCIpKyI8L3NwYW4+PC9kaXY+PC9kaXY+In1pZihlLnJvbGU9PT0icHJvbXB0IilyZXR1cm4nPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlIHByb21wdCI+PGRpdiBjbGFzcz0icHJvbXB0LWNhcmQiPjxkaXYgY2xhc3M9InByb21wdC1pY29uIj5cdTIxOTI8L2Rpdj48ZGl2IGNsYXNzPSJwcm9tcHQtY29udGVudCI+XHU4QkQ1XHU4QkQ1XHVGRjFBPHNwYW4gY2xhc3M9InByb21wdC10ZXh0Ij4nK3AoZS5jb250ZW50KSsiPC9zcGFuPjwvZGl2PjwvZGl2PjwvZGl2PiI7aWYoQXJyYXkuaXNBcnJheShlLmNvbnRlbnQpKXJldHVybiB5dihlLHQsbixpKTt2YXIgbD1ZbihlLnJvbGUpLGM9ZS5yb2xlPT09ImFzc2lzdGFudCI/X2EoZS5jb250ZW50KTplLnJvbGU9PT0idXNlciI/U28oZS5jb250ZW50KTpwKGUuY29udGVudCk7cmV0dXJuJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZSAnK2Uucm9sZSsnIj4nK2wrJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1idWJibGUiPicrYysiPC9kaXY+PC9kaXY+In1mdW5jdGlvbiBhdihlKXt2YXIgdD17fTtpZighQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gdDtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIGk9ZVtuXTtpZihpJiZpLnR5cGU9PT0idG9vbF9yZXN1bHQiKXt2YXIgYT1pLnRvb2xfdXNlX2lkO2lmKCFhKWNvbnRpbnVlO3RbYV18fCh0W2FdPVtdKSx0W2FdLnB1c2goaSl9fXJldHVybiB0fWZ1bmN0aW9uIEJvKGUsdCl7dmFyIG49ZSYmdD9lW3RdOm51bGw7aWYoIW58fCFuLmxlbmd0aClyZXR1cm4gbnVsbDtmb3IodmFyIGk9MDtpPG4ubGVuZ3RoLTE7aSsrKWlmKE5vKG5baV0sbltpKzFdKSlyZXR1cm4gbltpKzFdO3JldHVybiBuW24ubGVuZ3RoLTFdfWZ1bmN0aW9uIHV2KGUsdCl7dmFyIG49ZSYmdD9lW3RdOm51bGw7aWYoIW58fG4ubGVuZ3RoPDIpcmV0dXJuITE7Zm9yKHZhciBpPTA7aTxuLmxlbmd0aC0xO2krKylpZihObyhuW2ldLG5baSsxXSkpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gc3YoZSl7cmV0dXJuJzxkaXYgY2xhc3M9InN0cnVjdHVyZWQtdG9vbC1oaW50Ij5cdTVERjJcdTgxRUFcdTUyQThcdTYwNjJcdTU5MERcdTRFMDBcdTZCMjEgJytwKEhhKGUpKSsiIFx1NTNDMlx1NjU3MFx1OTVFRVx1OTg5ODwvZGl2PiJ9dmFyIG92PXtSZWFkOjEsR2xvYjoxLEdyZXA6MSxXZWJGZXRjaDoxLFdlYlNlYXJjaDoxLFRvZG9SZWFkOjF9O2Z1bmN0aW9uIERvKGUpe2lmKCFlfHxlLnR5cGUhPT0idG9vbF91c2UifHwhb3ZbZS5uYW1lXSlyZXR1cm4hMTtpZihlLm5hbWU9PT0iUmVhZCIpe3ZhciB0PWUuaW5wdXR8fHt9O2lmKGl1KHQuZmlsZV9wYXRofHx0LnBhdGh8fCIiKSlyZXR1cm4hMX1yZXR1cm4hMH1mdW5jdGlvbiBsdihlKXtmb3IodmFyIHQ9W10sbj0wO248ZS5sZW5ndGg7KXt2YXIgaT1lW25dO2lmKGkudHlwZT09PSJ0b29sX3Jlc3VsdCIpe24rKztjb250aW51ZX1pZihEbyhpKSl7Zm9yKHZhciBhPVt7YmxvY2s6aSxpbmRleDpufV0sdT1uKzE7dTxlLmxlbmd0aDspe2lmKGVbdV0udHlwZT09PSJ0b29sX3Jlc3VsdCIpe3UrKztjb250aW51ZX1pZihEbyhlW3VdKSlhLnB1c2goe2Jsb2NrOmVbdV0saW5kZXg6dX0pLHUrKztlbHNlIGJyZWFrfWEubGVuZ3RoPj0yP3QucHVzaCh7dHlwZToiZ3JvdXAiLGl0ZW1zOmEsZW5kSW5kZXg6dX0pOnQucHVzaCh7dHlwZToic2luZ2xlIixibG9jazppLGluZGV4Om59KSxuPXV9ZWxzZSB0LnB1c2goe3R5cGU6InNpbmdsZSIsYmxvY2s6aSxpbmRleDpufSksbisrfXJldHVybiB0fXZhciBjdj17UmVhZDoiXHU4QkZCXHU1M0Q2IixHbG9iOiJcdTY0MUNcdTdEMjIiLEdyZXA6Ilx1NjQxQ1x1N0QyMiIsV2ViRmV0Y2g6Ilx1NjI5M1x1NTNENiIsV2ViU2VhcmNoOiJcdTY0MUNcdTdEMjIiLFRvZG9SZWFkOiJcdTVGODVcdTUyOUUifTtmdW5jdGlvbiBkdihlLHQsbixpKXtmb3IodmFyIGE9e30sdT0wO3U8ZS5sZW5ndGg7dSsrKXt2YXIgcz1lW3VdLmJsb2NrLm5hbWU7YVtzXT0oYVtzXXx8MCkrMX1mb3IodmFyIG89ITAsbD0hMSx1PTA7dTxlLmxlbmd0aDt1Kyspe3ZhciBjPWVbdV0uYmxvY2ssZj1CbyhuLGMuaWQpO2Y/Zi5pc19lcnJvciYmKGw9ITApOm89ITF9dmFyIGQ9bz9sPyJcdTI3MTciOiJcdTI3MTMiOiJcdTIwMjYiLHY9bz9sPyJlcnJvciI6ImRvbmUiOiJwZW5kaW5nIixnPVtdO2Zvcih2YXIgaCBpbiBhKWcucHVzaChhW2hdKyIgIisoY3ZbaF18fGgpKTtmb3IodmFyIG09Zy5qb2luKCIgXHhCNyAiKSxiPU90KCJ0b29sLWdyb3VwIixbaSxlWzBdJiZlWzBdLmluZGV4LGUubGVuZ3RoXSksdz0kZShiKSxFPXc9PT1udWxsP0FuKCJ0b29sR3JvdXAiKTp3LEI9IiIsdT0wO3U8ZS5sZW5ndGg7dSsrKXRyeXtCKz1JbyhlW3VdLmJsb2NrLHQsbixlW3VdLmluZGV4LGkpfWNhdGNoe0IrPSc8ZGl2IGNsYXNzPSJyZW5kZXItZXJyb3IiPlx1NURFNVx1NTE3N1x1NkUzMlx1NjdEM1x1NTkzMVx1OEQyNTwvZGl2Pid9cmV0dXJuJzxkaXYgY2xhc3M9InRvb2wtZ3JvdXAiIGRhdGEtZXhwYW5kLWtpbmQ9InRvb2wtZ3JvdXAiIGRhdGEtZXhwYW5kLWtleT0iJytwKGIpKyciIGRhdGEtZXhwYW5kZWQ9IicrKEU/InRydWUiOiJmYWxzZSIpKyciIGRhdGEtc3RhdHVzPSInK3YrJyI+PGRpdiBjbGFzcz0idG9vbC1ncm91cC1zdW1tYXJ5IiBvbmNsaWNrPSJfX3Rvb2xHcm91cFRvZ2dsZSh0aGlzLnBhcmVudE5vZGUpIj48c3BhbiBjbGFzcz0idG9vbC1ncm91cC1zdGF0dXMiPicrZCsnPC9zcGFuPjxzcGFuIGNsYXNzPSJ0b29sLWdyb3VwLXRleHQiPicrcChtKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJ0b29sLWdyb3VwLWNvdW50Ij4nK2UubGVuZ3RoKycgXHU0RTJBXHU4QzAzXHU3NTI4PC9zcGFuPjxzdmcgY2xhc3M9InRvb2wtZ3JvdXAtY2hldnJvbiIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3R5bGU9InRyYW5zZm9ybTonKyhFPyJyb3RhdGUoMTgwZGVnKSI6IiIpKyciPjxwb2x5bGluZSBwb2ludHM9IjYgOSAxMiAxNSAxOCA5Ii8+PC9zdmc+PC9kaXY+PGRpdiBjbGFzcz0idG9vbC1ncm91cC1ib2R5IiBzdHlsZT0iZGlzcGxheTonKyhFPyJibG9jayI6Im5vbmUiKSsnOyI+JytCKyI8L2Rpdj48L2Rpdj4ifXdpbmRvdy5fX3Rvb2xHcm91cFRvZ2dsZT1mdW5jdGlvbihlKXtpZihlKXt2YXIgdD1lLmdldEF0dHJpYnV0ZSgiZGF0YS1leHBhbmRlZCIpPT09InRydWUiO2Uuc2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIix0PyJmYWxzZSI6InRydWUiKTt2YXIgbj1lLnF1ZXJ5U2VsZWN0b3IoIi50b29sLWdyb3VwLWJvZHkiKTtuJiYobi5zdHlsZS5kaXNwbGF5PXQ/Im5vbmUiOiJibG9jayIpO3ZhciBpPWUucXVlcnlTZWxlY3RvcigiLnRvb2wtZ3JvdXAtY2hldnJvbiIpO2kmJihpLnN0eWxlLnRyYW5zZm9ybT10PyIiOiJyb3RhdGUoMTgwZGVnKSIpLEZuKGUsInRvb2wtZ3JvdXAiKX19O2Z1bmN0aW9uIGZ2KGUsdCl7Zm9yKHZhciBuPTAsaT0wLGE9MCx1PXt9LHM9MDtzPHQubGVuZ3RoO3MrKyl7dmFyIG89ZVt0W3NdXTtpZihvKXtvLnJvbGU9PT0idXNlciImJm4rKzt2YXIgbD1vLmNvbnRlbnQ7aWYoQXJyYXkuaXNBcnJheShsKSlmb3IodmFyIGM9MDtjPGwubGVuZ3RoO2MrKyl7dmFyIGY9bFtjXTtpZihmKWlmKGYuX19zdWJhZ2VudCYmZi5fX3N1YmFnZW50LnRhc2tJZCYmKHVbZi5fX3N1YmFnZW50LnRhc2tJZF09MSksZi50eXBlPT09InRvb2xfdXNlIil7aSsrO3ZhciBkPUNpKGYpO2QmJmQudGFza0lkJiYodVtkLnRhc2tJZF09MSl9ZWxzZSBmLnR5cGU9PT0idG9vbF9yZXN1bHQiJiZmLmlzX2Vycm9yJiZhKyt9fX12YXIgdj0wO2Zvcih2YXIgZyBpbiB1KU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh1LGcpJiZ2Kys7cmV0dXJue3JvdW5kczpuLHRvb2xzOmksYWdlbnRzOnYsZXJyb3JzOmF9fWZ1bmN0aW9uIHB2KGUpe3ZhciB0PVtdO3JldHVybiB0LnB1c2goY2UoImhpc3Rvcnkucm91bmRzIix7bjpTdHJpbmcoZS5yb3VuZHMpfSkpLGUudG9vbHM+MCYmdC5wdXNoKGNlKCJoaXN0b3J5LnRvb2xzIix7bjpTdHJpbmcoZS50b29scyl9KSksZS5hZ2VudHM+MCYmdC5wdXNoKGNlKCJoaXN0b3J5LmFnZW50cyIse246U3RyaW5nKGUuYWdlbnRzKX0pKSxlLmVycm9ycz4wJiZ0LnB1c2goY2UoImhpc3RvcnkuZXJyb3JzIix7bjpTdHJpbmcoZS5lcnJvcnMpfSkpLHQuam9pbigiIFx4QjcgIil9ZnVuY3Rpb24ga28oZSx0KXtmb3IodmFyIG49ZS5uZXh0RWxlbWVudFNpYmxpbmc7bjspbi5jbGFzc0xpc3QuY29udGFpbnMoImNoYXQtbG9hZC1tb3JlIil8fCh0P24uY2xhc3NMaXN0LnJlbW92ZSgiY2hhdC1oaXN0b3J5LWhpZGRlbiIpOm4uY2xhc3NMaXN0LmFkZCgiY2hhdC1oaXN0b3J5LWhpZGRlbiIpKSxuPW4ubmV4dEVsZW1lbnRTaWJsaW5nfWZ1bmN0aW9uIHZ2KGUpe2lmKCFlKXJldHVybjtmb3IodmFyIHQ9ci5jdXJyZW50TWVzc2FnZXN8fFtdLG49LTEsaT10Lmxlbmd0aC0xO2k+PTA7aS0tKWlmKHRbaV0mJnRbaV0ucm9sZT09PSJ1c2VyIil7bj1pO2JyZWFrfWZ1bmN0aW9uIGEoKXt2YXIgeD1lLnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LWhpc3Rvcnktc3VtbWFyeSIpO3gmJngucmVtb3ZlKCk7Zm9yKHZhciBTPWUucXVlcnlTZWxlY3RvckFsbCgiLmNoYXQtaGlzdG9yeS1oaWRkZW4iKSxIPTA7SDxTLmxlbmd0aDtIKyspU1tIXS5jbGFzc0xpc3QucmVtb3ZlKCJjaGF0LWhpc3RvcnktaGlkZGVuIik7ZS5yZW1vdmVBdHRyaWJ1dGUoImRhdGEtaGlzdG9yeS1zaWciKX1pZihuPDEpe2EoKTtyZXR1cm59Zm9yKHZhciB1PWUucXVlcnlTZWxlY3RvckFsbCgiLmNoYXQtbWVzc2FnZTpub3QoLnN5c3RlbS1pbmZvKSIpLHM9W10sbz1udWxsLGw9MDtsPHUubGVuZ3RoO2wrKyl7dmFyIGM9dVtsXS5nZXRBdHRyaWJ1dGUoImRhdGEtbXNnLWluZGV4Iik7aWYoYyE9bnVsbCl7dmFyIGY9cGFyc2VJbnQoYywxMCk7aXNOYU4oZil8fGY8biYmKHMucHVzaChmKSxvfHwobz11W2xdKSl9fWlmKHMubGVuZ3RoPDJ8fCFvKXthKCk7cmV0dXJufXZhciBkPWZ2KHQscyksdj1PdCgiaGlzdG9yeS1zdW1tYXJ5Iixbbl0pLGc9JGUodik9PT0hMCxoPW4rIjoiK3MubGVuZ3RoKyI6IisoZz8xOjApKyI6IitkLnJvdW5kcysiOiIrZC50b29scysiOiIrZC5hZ2VudHMrIjoiK2QuZXJyb3JzO2lmKCEoZS5nZXRBdHRyaWJ1dGUoImRhdGEtaGlzdG9yeS1zaWciKT09PWgmJmUucXVlcnlTZWxlY3RvcigiLmNoYXQtaGlzdG9yeS1zdW1tYXJ5IikpKXt2YXIgbT1lLnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LWhpc3Rvcnktc3VtbWFyeSIpO20mJm0ucmVtb3ZlKCk7Zm9yKHZhciBiPWUucXVlcnlTZWxlY3RvckFsbCgiLmNoYXQtaGlzdG9yeS1oaWRkZW4iKSx3PTA7dzxiLmxlbmd0aDt3KyspYlt3XS5jbGFzc0xpc3QucmVtb3ZlKCJjaGF0LWhpc3RvcnktaGlkZGVuIik7dmFyIEU9cHYoZCksQj1jZShnPyJoaXN0b3J5LmNvbGxhcHNlIjoiaGlzdG9yeS5leHBhbmQiKSxGPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO0YuY2xhc3NOYW1lPSJjaGF0LWhpc3Rvcnktc3VtbWFyeSIsRi5zZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kLWtleSIsdiksRi5zZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kZWQiLGc/InRydWUiOiJmYWxzZSIpLEYuaW5uZXJIVE1MPSc8YnV0dG9uIGNsYXNzPSJjaGF0LWhpc3Rvcnktc3VtbWFyeS1idG4iIHR5cGU9ImJ1dHRvbiIgb25jbGljaz0id2luZG93Ll9faGlzdG9yeVN1bW1hcnlUb2dnbGUodGhpcykiIGFyaWEtZXhwYW5kZWQ9IicrKGc/InRydWUiOiJmYWxzZSIpKyciPjxzcGFuIGNsYXNzPSJjaGF0LWhpc3Rvcnktc3VtbWFyeS1pY29uIj4nK0ooImZvbGRlciIse3NpemU6MTV9KSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJjaGF0LWhpc3Rvcnktc3VtbWFyeS1ib2R5Ij48c3BhbiBjbGFzcz0iY2hhdC1oaXN0b3J5LXN1bW1hcnktdGl0bGUiPicrcChCKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJjaGF0LWhpc3Rvcnktc3VtbWFyeS1tZXRhIj4nK3AoRSkrJzwvc3Bhbj48L3NwYW4+PHNwYW4gY2xhc3M9ImNoYXQtaGlzdG9yeS1zdW1tYXJ5LWNoZXZyb24iPicrSigiY2hldnJvbkRvd24iLHtzaXplOjE2fSkrIjwvc3Bhbj48L2J1dHRvbj4iLGUuaW5zZXJ0QmVmb3JlKEYsbyksa28oRixnKSxlLnNldEF0dHJpYnV0ZSgiZGF0YS1oaXN0b3J5LXNpZyIsaCl9fXdpbmRvdy5fX2hpc3RvcnlTdW1tYXJ5VG9nZ2xlPWZ1bmN0aW9uKGUpe3ZhciB0PWUmJmUuY2xvc2VzdD9lLmNsb3Nlc3QoIi5jaGF0LWhpc3Rvcnktc3VtbWFyeSIpOm51bGw7aWYodCl7dmFyIG49dC5nZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kLWtleSIpLGk9dC5nZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kZWQiKSE9PSJ0cnVlIjt0LnNldEF0dHJpYnV0ZSgiZGF0YS1leHBhbmRlZCIsaT8idHJ1ZSI6ImZhbHNlIiksZS5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLGk/InRydWUiOiJmYWxzZSIpO3ZhciBhPXQucXVlcnlTZWxlY3RvcigiLmNoYXQtaGlzdG9yeS1zdW1tYXJ5LXRpdGxlIik7YSYmKGEudGV4dENvbnRlbnQ9Y2UoaT8iaGlzdG9yeS5jb2xsYXBzZSI6Imhpc3RvcnkuZXhwYW5kIikpLG4mJmd1KG4saSksa28odCxpKTt2YXIgdT10LnBhcmVudEVsZW1lbnQ7aWYodSl7dmFyIHM9dS5nZXRBdHRyaWJ1dGUoImRhdGEtaGlzdG9yeS1zaWciKTtpZihzKXt2YXIgbz1zLnNwbGl0KCI6Iik7by5sZW5ndGg+PTMmJihvWzJdPWk/IjEiOiIwIix1LnNldEF0dHJpYnV0ZSgiZGF0YS1oaXN0b3J5LXNpZyIsby5qb2luKCI6IikpKX19fX07ZnVuY3Rpb24gQ2koZSl7aWYoIWV8fGUudHlwZSE9PSJ0b29sX3VzZSIpcmV0dXJuIG51bGw7dmFyIHQ9ZS5pbnB1dHx8e30sbj10eXBlb2YgdC5zdWJhZ2VudF90eXBlPT0ic3RyaW5nIj90LnN1YmFnZW50X3R5cGU6bnVsbDtyZXR1cm4hbiYmZS5uYW1lIT09IlRhc2siJiZlLm5hbWUhPT0iQWdlbnQiP251bGw6e3Rhc2tJZDplLmlkLGFnZW50VHlwZTpufHx2b2lkIDAsdGFza0Rlc2NyaXB0aW9uOnR5cGVvZiB0LmRlc2NyaXB0aW9uPT0ic3RyaW5nIj90LmRlc2NyaXB0aW9uOnZvaWQgMH19ZnVuY3Rpb24gbXYoZSl7dmFyIHQ9bmV3IE1hcDtpZighQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gdDtmb3IodmFyIG49MDtuPGUubGVuZ3RoO24rKyl7dmFyIGk9ZVtuXTtpZighKCFpfHxpLnJvbGUhPT0iYXNzaXN0YW50Inx8IUFycmF5LmlzQXJyYXkoaS5jb250ZW50KSkpZm9yKHZhciBhPTA7YTxpLmNvbnRlbnQubGVuZ3RoO2ErKyl7dmFyIHU9aS5jb250ZW50W2FdO2lmKCEoIXV8fHUudHlwZSE9PSJ0b29sX3VzZSIpKXt2YXIgcz11Ll9fc3ViYWdlbnR8fENpKHUpO3MmJnQuc2V0KHUuaWQscyl9fX1yZXR1cm4gdH1mdW5jdGlvbiBndihlKXt2YXIgdD1uZXcgTWFwO2lmKCFBcnJheS5pc0FycmF5KGUpKXJldHVybiB0O3ZhciBuPW5ldyBNYXAsaT1uZXcgU2V0O2Z1bmN0aW9uIGEoZil7aWYoISghZnx8IWYudGFza0lkKSYmIWkuaGFzKGYudGFza0lkKSl7aS5hZGQoZi50YXNrSWQpO3ZhciBkPWJvKGYpO2QmJihuLmhhcyhkKXx8bi5zZXQoZCxbXSksbi5nZXQoZCkucHVzaChmLnRhc2tJZCkpfX1mb3IodmFyIHU9MDt1PGUubGVuZ3RoO3UrKyl7dmFyIHM9ZVt1XTtpZighKCFzfHwhQXJyYXkuaXNBcnJheShzLmNvbnRlbnQpKSlmb3IodmFyIG89MDtvPHMuY29udGVudC5sZW5ndGg7bysrKXt2YXIgbD1zLmNvbnRlbnRbb107aWYobCl7dmFyIGM9bC5fX3N1YmFnZW50fHwobC50eXBlPT09InRvb2xfdXNlIj9DaShsKTpudWxsKTtjJiZhKGMpfX19cmV0dXJuIG4uZm9yRWFjaChmdW5jdGlvbihmKXtpZighKGYubGVuZ3RoPDIpKWZvcih2YXIgZD0wO2Q8Zi5sZW5ndGg7ZCsrKXQuc2V0KGZbZF0sIiAjIisoZCsxKSl9KSx0fWZ1bmN0aW9uIEFvKGUsdCl7dmFyIG49W107aWYoIUFycmF5LmlzQXJyYXkoZSl8fCFlLmxlbmd0aClyZXR1cm4gbjtmb3IodmFyIGk9bnVsbCxhPTA7YTxlLmxlbmd0aDthKyspe3ZhciB1PWVbYV0scz11JiZ1LnR5cGU9PT0idGV4dCImJnUuX19wcm9jZXNzaW5nPT09ITA7aWYocyYmaSl7aS5ibG9ja3MucHVzaCh1KTtjb250aW51ZX12YXIgbz11JiZ1Ll9fc3ViYWdlbnQ/dS5fX3N1YmFnZW50Om51bGw7b3x8KG89Q2kodSkpLCFvJiZ1JiZ1LnR5cGU9PT0idG9vbF9yZXN1bHQiJiZ0JiZ0Lmhhcyh1LnRvb2xfdXNlX2lkKSYmKG89dC5nZXQodS50b29sX3VzZV9pZCkpO3ZhciBsPW8/by50YXNrSWQ6bnVsbDsoIWl8fGkua2V5IT09bCkmJihpPXtrZXk6bCxzdWJhZ2VudDpvLGJsb2NrczpbXSxmaXJzdEluZGV4OmF9LG4ucHVzaChpKSksaS5ibG9ja3MucHVzaCh1KX1yZXR1cm4gbn1mdW5jdGlvbiBxYShlLHQsbixpLGEpe3ZhciB1PSIiO3RyeXtmb3IodmFyIHM9bHYoZSksbz0wO288cy5sZW5ndGg7bysrKXt2YXIgbD1zW29dO3RyeXtpZihsLnR5cGU9PT0iZ3JvdXAiKXtmb3IodmFyIGM9W10sZj0wO2Y8bC5pdGVtcy5sZW5ndGg7ZisrKWMucHVzaCh7YmxvY2s6bC5pdGVtc1tmXS5ibG9jayxpbmRleDpsLml0ZW1zW2ZdLmluZGV4K3R9KTt1Kz1kdihjLG4saSxhKX1lbHNlIHUrPUlvKGwuYmxvY2ssbixpLGwuaW5kZXgrdCxhKX1jYXRjaHt1Kz0nPGRpdiBjbGFzcz0icmVuZGVyLWVycm9yIj5cdTZEODhcdTYwNkZcdTU3NTdcdTZFMzJcdTY3RDNcdTU5MzFcdThEMjU8L2Rpdj4nfX19Y2F0Y2h7dSs9JzxkaXYgY2xhc3M9InJlbmRlci1lcnJvciI+XHU2RDg4XHU2MDZGXHU2RTMyXHU2N0QzXHU1OTMxXHU4RDI1PC9kaXY+J31yZXR1cm4gdX1mdW5jdGlvbiB4byhlLHQsbixpLGEsdSl7Zm9yKHZhciBzPXV8fHt9LG89cy5zaG93SGFuZG9mZiE9PSExLGw9IiIsYz1udWxsLGY9MDtmPGUubGVuZ3RoO2YrKyl7dmFyIGQ9ZVtmXSx2PXFhKGQuYmxvY2tzLGQuZmlyc3RJbmRleCx0LGksYSk7aWYoISghdnx8IXYudHJpbSgpKSlpZihkLnN1YmFnZW50KXt2YXIgZz1vJiZjIT09ZC5zdWJhZ2VudC50YXNrSWQ7bCs9aHYoZCxuLHYsYSxnKSxjPWQuc3ViYWdlbnQudGFza0lkfWVsc2UgbCs9JzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1zZWdtZW50IHBhcmVudCI+JytZbih0KSsnPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlLWNvbnRlbnQiPicrdisiPC9kaXY+PC9kaXY+IixjPW51bGx9cmV0dXJuIGx9ZnVuY3Rpb24gaHYoZSx0LG4saSxhKXt2YXIgdT1lLnN1YmFnZW50LHM9Rm8odSksbz1Fbyh1KSxsPXUudGFza0lkfHwiIixjPUVpKEZpKHMpKSxmO2lmKGEpe3ZhciBkPSc8c3Ryb25nIGNsYXNzPSJzdWJhZ2VudC1wYW5lbC1uYW1lIj4nK3AobykrJzwvc3Ryb25nPjxzcGFuIGNsYXNzPSJzdWJhZ2VudC1wYW5lbC10YWciIHRpdGxlPSInK3AoY2UoInN1YmFnZW50LnRhZ190aXRsZSIpKSsnIj4nK3AoY2UoInN1YmFnZW50LnRhZyIpKSsiPC9zcGFuPiIsdj0hISh1LnRhc2tEZXNjcmlwdGlvbiYmU3RyaW5nKHUudGFza0Rlc2NyaXB0aW9uKS50cmltKCkpLGc9dj9jZSgic3ViYWdlbnQuaGFuZG9mZi53aXRoX2Rlc2MiLHtwYXJlbnQ6cCh0KSxzdWI6ZH0pOmNlKCJzdWJhZ2VudC5oYW5kb2ZmIix7cGFyZW50OnAodCksc3ViOmR9KSxoPXY/JzxzcGFuIGNsYXNzPSJzdWJhZ2VudC1wYW5lbC10YXNrLWRlc2MiPicrcCh1LnRhc2tEZXNjcmlwdGlvbikrIjwvc3Bhbj4iOiIiO2Y9JzxzcGFuIGNsYXNzPSJzdWJhZ2VudC1wYW5lbC1hcnJvdyIgYXJpYS1oaWRkZW49InRydWUiPlx1MjFCMzwvc3Bhbj48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtYXR0cmlidXRpb24iPicrZytoKyI8L3NwYW4+In1lbHNlIGY9JzxzcGFuIGNsYXNzPSJzdWJhZ2VudC1wYW5lbC1hdHRyaWJ1dGlvbiI+PHN0cm9uZyBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtbmFtZSI+JytwKG8pKyc8L3N0cm9uZz48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtdGFzay1kZXNjIj4gJytwKGNlKCJzdWJhZ2VudC5jb250aW51ZWQiKSkrIjwvc3Bhbj48L3NwYW4+Ijt2YXIgbT1PdCgic3ViYWdlbnQtcGFuZWwiLFtpLGxdKSxiPSRlKG0pLHc9Yj09PW51bGw/ITE6ISFiO2Z1bmN0aW9uIEUoQil7cmV0dXJuJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtdG9nZ2xlIiBkYXRhLXBvc2l0aW9uPSInK0IrJyIgb25jbGljaz0iX19zdWJhZ2VudFBhbmVsVG9nZ2xlKGV2ZW50LCB0aGlzKSIgYXJpYS1leHBhbmRlZD0iJysodz8idHJ1ZSI6ImZhbHNlIikrJyIgYXJpYS1sYWJlbD0iJytwKGNlKHc/InVpLmNvbGxhcHNlX3BhbmVsX2FyaWEiOiJ1aS5leHBhbmRfcGFuZWxfYXJpYSIpKSsnIj48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtdG9nZ2xlLWxhYmVsIj4nK3AoY2Uodz8idWkuY29sbGFwc2UiOiJ1aS5leHBhbmQiKSkrJzwvc3Bhbj48c3ZnIGNsYXNzPSJzdWJhZ2VudC1wYW5lbC10b2dnbGUtaWNvbiIgd2lkdGg9IjEwIiBoZWlnaHQ9IjEwIiB2aWV3Qm94PSIwIDAgMTAgMTAiIGZpbGw9Im5vbmUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNMi41IDMuNzVMNSA2LjI1TDcuNSAzLjc1IiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPjwvYnV0dG9uPid9cmV0dXJuJzxkaXYgY2xhc3M9InN1YmFnZW50LXBhbmVsIiBkYXRhLWV4cGFuZC1raW5kPSJzdWJhZ2VudC1wYW5lbCIgZGF0YS1leHBhbmQta2V5PSInK3AobSkrJyIgZGF0YS1hZ2VudC1pZD0iJytwKGwpKyciIGRhdGEtZXhwYW5kZWQ9IicrKHc/InRydWUiOiJmYWxzZSIpKyciIHN0eWxlPSItLWFnZW50LWNvbG9yOicrcy5wcmltYXJ5KyciPjxkaXYgY2xhc3M9InN1YmFnZW50LXBhbmVsLWhlYWRlciIgb25jbGljaz0iX19zdWJhZ2VudFBhbmVsVG9nZ2xlKGV2ZW50LCB0aGlzKSIgcm9sZT0iYnV0dG9uIiB0YWJpbmRleD0iMCIgYXJpYS1sYWJlbD0iJytwKGNlKCJzdWJhZ2VudC50aXRsZV9hcmlhIikpKyciPjxzcGFuIGNsYXNzPSJzdWJhZ2VudC1wYW5lbC1hdmF0YXIiIGFyaWEtaGlkZGVuPSJ0cnVlIj4nK2MrIjwvc3Bhbj4iK2YrRSgidG9wIikrJzwvZGl2PjxkaXYgY2xhc3M9InN1YmFnZW50LXBhbmVsLWJvZHkiPicrbisnPC9kaXY+PGRpdiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtZm9vdGVyIj48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtZm9vdGVyLWhpbnQiIGFyaWEtaGlkZGVuPSJ0cnVlIj5cdTIwMTQgJytwKG8pKyIgXHUyMDE0PC9zcGFuPiIrRSgiYm90dG9tIikrIjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24geXYoZSx0LG4saSl7dmFyIGE9ZS5yb2xlLHU9aHUoZSxuKSxzPWE9PT0idXNlciImJmUuY29udGVudCYmZS5jb250ZW50LnNvbWUoZnVuY3Rpb24oRil7cmV0dXJuIEYuX19xdWV1ZWR9KTtpZighZS5jb250ZW50fHxlLmNvbnRlbnQubGVuZ3RoPT09MClyZXR1cm4gYT09PSJhc3Npc3RhbnQiPyc8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UgJythKyciPicrWW4oYSkrJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1idWJibGUiPjxkaXYgY2xhc3M9InR5cGluZy1pbmRpY2F0b3IiPjxzcGFuPjwvc3Bhbj48c3Bhbj48L3NwYW4+PHNwYW4+PC9zcGFuPjwvZGl2PjwvZGl2PjwvZGl2Pic6JzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZSAnK2ErJyBlbXB0eS1tZXNzYWdlIiBkYXRhLW1lc3NhZ2Uta2V5PSInK3AodSkrJyI+JytZbihhKSsnPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlLWNvbnRlbnQiPjxzcGFuIGNsYXNzPSJlbXB0eS1tZXNzYWdlLWhpbnQiPlx1RkYwOFx1N0E3QVx1NkQ4OFx1NjA2Rlx1RkYwOTwvc3Bhbj48L2Rpdj48L2Rpdj4nO3ZhciBvPWF2KGUuY29udGVudCksbD1PYSgiYXNzaXN0YW50Iik7aWYoYSE9PSJhc3Npc3RhbnQiKXt2YXIgYz1BbyhlLmNvbnRlbnQsaSksZj1jLnNvbWUoZnVuY3Rpb24oRil7cmV0dXJuIEYuc3ViYWdlbnR9KSxkPXM/IiBxdWV1ZWQiOiIiLHY9cz8nPHNwYW4gY2xhc3M9InF1ZXVlZC1iYWRnZSI+XHU2MzkyXHU5NjFGXHU0RTJEPC9zcGFuPic6IiIsZz1pdigpO2lmKGYpe3ZhciBoPXhvKGMsYSxsLm5hbWUsbyx1LHtzaG93SGFuZG9mZjohMX0pO3JldHVybic8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UgJythK2QrJyBtdWx0aS1hZ2VudCIgZGF0YS1tZXNzYWdlLWtleT0iJytwKHUpKyciPicraCt2KyI8L2Rpdj4ifXZhciBtPXFhKGUuY29udGVudCwwLGEsbyx1KTtyZXR1cm4nPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlICcrYStkKyciIGRhdGEtbWVzc2FnZS1rZXk9IicrcCh1KSsnIj4nK1luKGEse2xlZnRTbG90Omd9KSsnPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlLWNvbnRlbnQiPicrbSt2KyI8L2Rpdj48L2Rpdj4ifXZhciBiPUFvKGUuY29udGVudCxpKSx3PWIuc29tZShmdW5jdGlvbihGKXtyZXR1cm4gRi5zdWJhZ2VudH0pO2lmKCF3KXt2YXIgRT1xYShlLmNvbnRlbnQsMCxhLG8sdSk7cmV0dXJuJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZSAnK2ErJyIgZGF0YS1tZXNzYWdlLWtleT0iJytwKHUpKyciPicrWW4oYSkrJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1jb250ZW50Ij4nK0UrIjwvZGl2PjwvZGl2PiJ9dmFyIEI9JzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZSAnK2ErJyBtdWx0aS1hZ2VudCIgZGF0YS1tZXNzYWdlLWtleT0iJytwKHUpKyciPic7cmV0dXJuIEIrPXhvKGIsYSxsLm5hbWUsbyx1LHtzaG93SGFuZG9mZjohMH0pLEIrPSI8L2Rpdj4iLEJ9dmFyIGJ2PS9eXHMqXFvpmYTku7blt7LkuIrkvKDvvIzor7fmn6XnnIvku6XkuIvmlofku7Y6XG4oW1xzXFNdKj8pXF1cbisvO2Z1bmN0aW9uIEV2KGUpe3ZhciB0PShlfHwiIikudHJpbSgpO2lmKCF0KXJldHVybiIiO3ZhciBuPXQuc3BsaXQoIi8iKS5wb3AoKXx8dDtpZihpdSh0KSl7dmFyIGk9Ii9hcGkvZmlsZS1yYXc/cGF0aD0iK2VuY29kZVVSSUNvbXBvbmVudCh0KTtyZXR1cm4nPGRpdiBjbGFzcz0idXNlci1hdHRhY2htZW50LWltYWdlIj48aW1nIGNsYXNzPSJ1c2VyLWF0dGFjaG1lbnQtdGh1bWIiIGxvYWRpbmc9ImxhenkiIHNyYz0iJytpKyciIGFsdD0iJytwKG4pKyciIGRhdGEtcGF0aD0iJytwKHQpK2AiIG9uY2xpY2s9ImV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyBpZih3aW5kb3cuX19vcGVuRmlsZVByZXZpZXcpd2luZG93Ll9fb3BlbkZpbGVQcmV2aWV3KHRoaXMuZ2V0QXR0cmlidXRlKCdkYXRhLXBhdGgnKSk7IiBvbmVycm9yPSJ2YXIgdz10aGlzLmNsb3Nlc3QoJy51c2VyLWF0dGFjaG1lbnQtaW1hZ2UnKTsgaWYodyl3LnN0eWxlLmRpc3BsYXk9J25vbmUnOyIgLz48L2Rpdj5gfXJldHVybic8ZGl2IGNsYXNzPSJ1c2VyLWF0dGFjaG1lbnQtZmlsZSIgZGF0YS1wYXRoPSInK3AodCkrYCIgb25jbGljaz0iZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IGlmKHdpbmRvdy5fX29wZW5GaWxlUHJldmlldyl3aW5kb3cuX19vcGVuRmlsZVByZXZpZXcodGhpcy5nZXRBdHRyaWJ1dGUoJ2RhdGEtcGF0aCcpKTsiPjxzcGFuIGNsYXNzPSJ1c2VyLWF0dGFjaG1lbnQtZmlsZS1pY29uIj48c3ZnIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjEzIiBoZWlnaHQ9IjEzIiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiPjxwYXRoIGQ9Ik05IDEuNUg0YTEgMSAwIDAgMC0xIDF2MTFhMSAxIDAgMCAwIDEgMWg4YTEgMSAwIDAgMCAxLTFWNS41TDkgMS41eiIvPjxwYXRoIGQ9Ik05IDEuNVY1LjVoNCIvPjwvc3ZnPjwvc3Bhbj48c3BhbiBjbGFzcz0idXNlci1hdHRhY2htZW50LWZpbGUtbmFtZSI+YCtwKG4pKyI8L3NwYW4+PC9kaXY+In1mdW5jdGlvbiBTbyhlKXt2YXIgdD1lfHwiIixuPXQubWF0Y2goYnYpO2lmKCFuKXJldHVybiBwKHQpO2Zvcih2YXIgaT0iIixhPW5bMV0uc3BsaXQoYApgKSx1PTA7dTxhLmxlbmd0aDt1KyspaSs9RXYoYVt1XSk7dmFyIHM9dC5zbGljZShuWzBdLmxlbmd0aCksbz1pPyc8ZGl2IGNsYXNzPSJ1c2VyLWF0dGFjaG1lbnRzIj4nK2krIjwvZGl2PiI6IiIsbD1zLnRyaW0oKT8nPGRpdiBjbGFzcz0idXNlci1hdHRhY2htZW50LXRleHQiPicrcChzKSsiPC9kaXY+IjoiIjtyZXR1cm4gbytsfWZ1bmN0aW9uIElvKGUsdCxuLGksYSl7aWYoIWV8fCFlLnR5cGV8fGUudHlwZT09PSJ0b29sX3VzZSImJmUuX19zdWJhZ2VudCYmZS5fX3N1YmFnZW50LnRhc2tJZD09PWUuaWQpcmV0dXJuIiI7aWYoZS50eXBlPT09InRvb2xfcmVzdWx0IiYmZS5fX3N1YmFnZW50JiZlLl9fc3ViYWdlbnQudGFza0lkPT09ZS50b29sX3VzZV9pZClyZXR1cm4gcnYoZSx0KTtzd2l0Y2goZS50eXBlKXtjYXNlInRleHQiOnJldHVybiB0PT09ImFzc2lzdGFudCImJmUuX19wcm9jZXNzaW5nPyc8ZGl2IGNsYXNzPSJ0eXBpbmctaW5kaWNhdG9yIj48c3Bhbj48L3NwYW4+PHNwYW4+PC9zcGFuPjxzcGFuPjwvc3Bhbj48L2Rpdj4nOnQ9PT0iYXNzaXN0YW50Ij9fYShlLnRleHR8fCIiKTpTbyhlLnRleHR8fCIiKTtjYXNlInRoaW5raW5nIjp2YXIgdT1lLnRoaW5raW5nfHwiIixzPWUudGhpbmtpbmc9PT12b2lkIDAmJmUudHlwZT09PSJ0aGlua2luZyI7aWYocylyZXR1cm4nPGRpdiBjbGFzcz0idGhpbmtpbmctaW5saW5lIHRoaW5raW5nLXN0cmVhbWluZyIgZGF0YS10aGlua2luZz0iIj48ZGl2IGNsYXNzPSJ0aGlua2luZy1zdHJlYW1pbmctaW5uZXIiPjxzcGFuIGNsYXNzPSJ0aGlua2luZy1zdHJlYW1pbmctaWNvbiBzcGlubmluZyI+XHUyOUJGPC9zcGFuPjxkaXYgY2xhc3M9InRoaW5raW5nLXN0cmVhbWluZy10ZXh0Ij48L2Rpdj48L2Rpdj48L2Rpdj4nO2lmKCF1LnRyaW0oKSlyZXR1cm4iIjt2YXIgbz11Lmxlbmd0aD42MD91LnNsaWNlKDAsNTcpKyJcdTIwMjYiOnUsbD1PdCgidGhpbmtpbmciLFthLGldKSxjPSRlKGwpLGY9Yz09PW51bGw/QW4oInRoaW5raW5nIik6YztyZXR1cm4nPGRpdiBjbGFzcz0idGhpbmtpbmctaW5saW5lICcrKGY/ImV4cGFuZGVkIjoiY29sbGFwc2VkIikrJyIgZGF0YS1leHBhbmQta2luZD0idGhpbmtpbmciIGRhdGEtZXhwYW5kLWtleT0iJytwKGwpKyciIGRhdGEtdGhpbmtpbmc9IicrcCh1KSsnIiBvbmNsaWNrPSJfX3RoaW5raW5nVG9nZ2xlKHRoaXMpIj48c3BhbiBjbGFzcz0idGhpbmtpbmctaW5saW5lLWljb24iPlx1MjlCRjwvc3Bhbj48c3BhbiBjbGFzcz0idGhpbmtpbmctaW5saW5lLXByZXZpZXciPicrcChmP3U6bykrJzwvc3Bhbj48c3BhbiBjbGFzcz0idGhpbmtpbmctaW5saW5lLWFjdGlvbiI+JysoZj8iXHU2NTM2XHU4RDc3IjoiXHU1QzU1XHU1RjAwIikrIjwvc3Bhbj48L2Rpdj4iO2Nhc2UidG9vbF91c2UiOnZhciBkPUJvKG4sZS5pZCksdj1CdihlLGQsaSxhKTtyZXR1cm4gdXYobixlLmlkKSYmKHY9c3YoZS5uYW1lfHwiXHU1REU1XHU1MTc3IikrdiksdjtjYXNlInRvb2xfcmVzdWx0IjpyZXR1cm4iIjtkZWZhdWx0OnZhciBnPWUmJmUudHlwZT9TdHJpbmcoZS50eXBlKToiXHU2NzJBXHU3N0U1IixoPSIiO3RyeXtoPUpTT04uc3RyaW5naWZ5KGUsbnVsbCwyKX1jYXRjaHtoPSJ7fSJ9cmV0dXJuYDxkaXYgY2xhc3M9InVua25vd24tYmxvY2sgY29sbGFwc2VkIiBvbmNsaWNrPSJ0aGlzLmNsYXNzTGlzdC50b2dnbGUoJ2NvbGxhcHNlZCcpIj48ZGl2IGNsYXNzPSJ1bmtub3duLWJsb2NrLWhlYWRlciI+PHNwYW4gY2xhc3M9InVua25vd24tYmxvY2staWNvbiI+Pzwvc3Bhbj48c3BhbiBjbGFzcz0idW5rbm93bi1ibG9jay1sYWJlbCI+XHU2NzJBXHU4QkM2XHU1MjJCXHU3Njg0XHU1MTg1XHU1QkI5XHU1NzU3XHVGRjFBYCtwKGcpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InVua25vd24tYmxvY2stdG9nZ2xlIj5cdTI1QkM8L3NwYW4+PC9kaXY+PHByZSBjbGFzcz0idW5rbm93bi1ibG9jay1ib2R5Ij4nK3AoaCkrIjwvcHJlPjwvZGl2PiJ9fWZ1bmN0aW9uIEZ2KGUsdCxuLGksYSx1LHMpe3ZhciBvPWUuaWR8fCJ0b29sLSIrbixsPU90KCJpbmxpbmUtdG9vbCIsW3Usb3x8cyxzXSksYz0kZShsKSxmPWUuaW5wdXR8fHt9LGQ9Y24odCYmdC5jb250ZW50KSx2PXQmJnQuaXNfZXJyb3IsZz1kLmxlbmd0aD4wLGg9dj8iXHUyNzE3IjpnPyJcdTI3MTMiOiJcdTIwMjYiLG09IiIsYj0iIix3PSIiLEU9IiI7aWYobj09PSJSZWFkIil7bT0nPHN2ZyBjbGFzcz0iaW5saW5lLXRvb2wtaWNvbiIgdmlld0JveD0iMCAwIDE2IDE2IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSI+PHBhdGggZD0iTTEgMy41QTEuNSAxLjUgMCAwIDEgMi41IDJoMi43NjRjLjk1OCAwIDEuNzYuNTYgMi4zMTEgMS4xODRDOC40MDUgMy43NyA5LjE0NiA0IDEwIDRoMy41QTEuNSAxLjUgMCAwIDEgMTUgNS41djdhMS41IDEuNSAwIDAgMS0xLjUgMS41aC0xMUExLjUgMS41IDAgMCAxIDEgMTIuNXYtOXoiLz48cGF0aCBkPSJNMiA1LjVoMTJNMiA4aDhNMiAxMC41aDUiLz48L3N2Zz4nO3ZhciBCPWYuZmlsZV9wYXRofHxmLnBhdGh8fGl8fCIiLEY9IiI7Zi5saW1pdCYmKEY9IiAiK2Yub2Zmc2V0KyItIisoZi5vZmZzZXQrZi5saW1pdCkpLGI9Qix3PUZ9ZWxzZSBpZihuPT09Ikdsb2IiKXttPSc8c3ZnIGNsYXNzPSJpbmxpbmUtdG9vbC1pY29uIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ij48Y2lyY2xlIGN4PSI3IiBjeT0iNyIgcj0iNSIvPjxwYXRoIGQ9Ik0xMC41IDEwLjVMMTQgMTQiLz48L3N2Zz4nO3ZhciB4PWYucGF0dGVybnx8IiIsUz1mLnBhdGh8fGl8fCIiO2I9eCx3PVN9ZWxzZSBpZihuPT09IkdyZXAiKXttPSc8c3ZnIGNsYXNzPSJpbmxpbmUtdG9vbC1pY29uIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ij48Y2lyY2xlIGN4PSI2LjUiIGN5PSI2LjUiIHI9IjQuNSIvPjxwYXRoIGQ9Ik0xMS41IDExLjVMMTUgMTUiLz48L3N2Zz4nO3ZhciB4PWYucGF0dGVybnx8IiIsUz1mLnBhdGh8fGl8fCIiO2I9eCx3PVMsZi5jb250ZXh0JiYodys9IiAtQyIrZi5jb250ZXh0KX1lbHNlIGlmKG49PT0iV2ViRmV0Y2giKXttPSc8c3ZnIGNsYXNzPSJpbmxpbmUtdG9vbC1pY29uIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ij48Y2lyY2xlIGN4PSI4IiBjeT0iOCIgcj0iNi41Ii8+PHBhdGggZD0iTTggMS41djEzTTEuNSA4aDEzIi8+PC9zdmc+Jzt2YXIgSD1mLnVybHx8IiI7Yj1ILHc9YXx8IiJ9ZWxzZSBpZihuPT09IldlYlNlYXJjaCIpe209JzxzdmcgY2xhc3M9ImlubGluZS10b29sLWljb24iIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiPjxjaXJjbGUgY3g9IjciIGN5PSI3IiByPSI1Ii8+PHBhdGggZD0iTTEwLjUgMTAuNUwxNCAxNCIvPjxwYXRoIGQ9Ik01IDdoNE03IDV2NCIvPjwvc3ZnPic7dmFyIFI9Zi5xdWVyeXx8IiI7Yj1SLHc9YXx8IiJ9ZWxzZSBuPT09IlRvZG9SZWFkIj8obT0nPHN2ZyBjbGFzcz0iaW5saW5lLXRvb2wtaWNvbiIgdmlld0JveD0iMCAwIDE2IDE2IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSI+PHJlY3QgeD0iMiIgeT0iMiIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiByeD0iMiIvPjxwYXRoIGQ9Ik01IDhsMiAyIDQtNCIvPjwvc3ZnPicsYj0iXHU4QkZCXHU1M0Q2XHU1Rjg1XHU1MjlFXHU1MjE3XHU4ODY4Iix3PWF8fCIiKToobT0nPHN2ZyBjbGFzcz0iaW5saW5lLXRvb2wtaWNvbiIgdmlld0JveD0iMCAwIDE2IDE2IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSI+PGNpcmNsZSBjeD0iOCIgY3k9IjgiIHI9IjYuNSIvPjxwYXRoIGQ9Ik04IDV2My41TTggMTFoLjAxIi8+PC9zdmc+JyxiPUhhKG4pLHc9YXx8IiIpO2lmKGcpe3ZhciAkPWQuc3BsaXQoYApgKTskLmxlbmd0aD4xMD9FPSQuc2xpY2UoMCwxMCkuam9pbihgCmApK2AKXHUyMDI2YDpFPWR9dmFyIEk9cChkKSxEPXAoRSksVD1kLE89IiIsVT1jPT09bnVsbD9BbigiaW5saW5lVG9vbHMiKTpjO2c/Tz0nPGRpdiBjbGFzcz0iaW5saW5lLXRvb2wtZXhwYW5kZWQiIHN0eWxlPSJkaXNwbGF5OiAnKyhVPyJibG9jayI6Im5vbmUiKSsnOyI+PGRpdiBjbGFzcz0iaW5saW5lLXRvb2wtcmVzdWx0Ij4nK1RvKGQsbikrIjwvZGl2PjwvZGl2PiI6dj9PPSc8ZGl2IGNsYXNzPSJpbmxpbmUtdG9vbC1leHBhbmRlZCIgc3R5bGU9ImRpc3BsYXk6ICcrKFU/ImJsb2NrIjoibm9uZSIpKyc7Ij48ZGl2IGNsYXNzPSJpbmxpbmUtdG9vbC1yZXN1bHQgaW5saW5lLXRvb2wtZXJyb3IiPicrcChkfHwiXHU2NENEXHU0RjVDXHU1OTMxXHU4RDI1IikrIjwvZGl2PjwvZGl2PiI6dHx8KE89JzxkaXYgY2xhc3M9ImlubGluZS10b29sLWV4cGFuZGVkIiBzdHlsZT0iZGlzcGxheTogJysoVT8iYmxvY2siOiJub25lIikrJzsiPjxkaXYgY2xhc3M9ImlubGluZS10b29sLWxvYWRpbmciPlx1N0I0OVx1NUY4NVx1NTRDRFx1NUU5NFx1MjAyNjwvZGl2PjwvZGl2PicpO3ZhciBWPXQmJnQuX3RydW5jYXRlZD09PSEwLFg9IiI7aWYobj09PSJSZWFkIil7dmFyIGVlPWYuZmlsZV9wYXRofHxmLnBhdGh8fGl8fCIiO2lmKGVlJiZpdShlZSkpe3ZhciBaPSIvYXBpL2ZpbGUtcmF3P3BhdGg9IitlbmNvZGVVUklDb21wb25lbnQoZWUpO1g9JzxkaXYgY2xhc3M9ImlubGluZS10b29sLWltYWdlIiBvbmNsaWNrPSJldmVudC5zdG9wUHJvcGFnYXRpb24oKTsiPjxpbWcgY2xhc3M9ImlubGluZS10b29sLWltYWdlLXRodW1iIiBsb2FkaW5nPSJsYXp5IiBzcmM9IicrWisnIiBhbHQ9IicrcChCKSsnIiBkYXRhLXBhdGg9IicrcChlZSkrYCIgb25jbGljaz0iZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IGlmKHdpbmRvdy5fX29wZW5GaWxlUHJldmlldyl3aW5kb3cuX19vcGVuRmlsZVByZXZpZXcodGhpcy5nZXRBdHRyaWJ1dGUoJ2RhdGEtcGF0aCcpKTsiIG9uZXJyb3I9InZhciB3PXRoaXMuY2xvc2VzdCgnLmlubGluZS10b29sLWltYWdlJyk7IGlmKHcpdy5zdHlsZS5kaXNwbGF5PSdub25lJzsiIC8+PC9kaXY+YH19dmFyIHVlPXc/JzxzcGFuIGNsYXNzPSJpbmxpbmUtdG9vbC1tZXRhIj4nK3AodykrIjwvc3Bhbj4iOiIiLEw9dj8iaW5saW5lLXRvb2wtZXJyb3ItaW5saW5lIjoiIjtVJiYoTCs9IiBpbmxpbmUtdG9vbC1vcGVuIik7dmFyIE09Vj8nZGF0YS10cnVuY2F0ZWQ9InRydWUiIGRhdGEtdG9vbC11c2UtaWQ9IicrcChlLmlkfHwiIikrJyIgJzoiIjtyZXR1cm4nPGRpdiBjbGFzcz0iaW5saW5lLXRvb2wgJytMKyciIGRhdGEtZXhwYW5kLWtpbmQ9ImlubGluZS10b29sIiBkYXRhLWV4cGFuZC1rZXk9IicrcChsKSsnIiBkYXRhLXJlc3VsdD0iJytwKFQpKyciIGRhdGEtcHJldmlldz0iJytEKyciIGRhdGEtc3RhdHVzPSInKyh2PyJlcnJvciI6Zz8iZG9uZSI6InBlbmRpbmciKSsnIiAnK00rJ29uY2xpY2s9Il9faW5saW5lVG9vbFRvZ2dsZSh0aGlzKSI+PGRpdiBjbGFzcz0iaW5saW5lLXRvb2wtcm93Ij48c3BhbiBjbGFzcz0iaW5saW5lLXRvb2wtc3RhdHVzIj4nK2grIjwvc3Bhbj4iK20rJzxzcGFuIGNsYXNzPSJpbmxpbmUtdG9vbC10aXRsZSI+JytwKGIpKyI8L3NwYW4+Iit1ZSsiPC9kaXY+IitYK08rIjwvZGl2PiJ9ZnVuY3Rpb24gd3YoZSx0LG4saSxhKXt2YXIgdT1lLmlucHV0fHx7fSxzPXUuY29tbWFuZHx8dS5jbWR8fCIiLG89Y24odCYmdC5jb250ZW50KSxsPWUuaWR8fCJ0b29sLSIrbixjPU90KCJ0ZXJtaW5hbCIsW2ksbHx8YSxhXSksZj0kZShjKSxkPXQmJnQuaXNfZXJyb3Isdj11LmV4aXRDb2RlLGc9by5sZW5ndGg+MCxoPSIiO3Q/ZD9oPSc8c3BhbiBjbGFzcz0idGVybS1zdGF0dXMtZG90IHRlcm0tZXJyb3IiPjwvc3Bhbj4nOnY9PT0wfHx2PT09dm9pZCAwP2g9JzxzcGFuIGNsYXNzPSJ0ZXJtLXN0YXR1cy1kb3QgdGVybS1zdWNjZXNzIj48L3NwYW4+JzpoPSc8c3BhbiBjbGFzcz0idGVybS1zdGF0dXMtZG90IHRlcm0td2FybiI+PC9zcGFuPic6aD0nPHNwYW4gY2xhc3M9InRlcm0tc3RhdHVzLWRvdCB0ZXJtLXJ1bm5pbmciPjwvc3Bhbj4nO2Zvcih2YXIgbT0nPHNwYW4gY2xhc3M9InRlcm0tcHJvbXB0Ij4kPC9zcGFuPicsYj1wKHMpLHc9by5zcGxpdChgCmApLEU9IiIsQj0wO0I8dy5sZW5ndGg7QisrKXt2YXIgRj13W0JdOyFGJiZCPT09dy5sZW5ndGgtMXx8KEUrPSc8ZGl2IGNsYXNzPSJ0ZXJtLWxpbmUiPicrcChGKSsiPC9kaXY+Iil9dmFyIHg9IiI7aWYodCYmdiE9PXZvaWQgMCl7dmFyIFM9dj09PTA/InRlcm0tZXhpdC1zdWNjZXNzIjoidGVybS1leGl0LWVycm9yIjt4PSc8ZGl2IGNsYXNzPSJ0ZXJtLWV4aXQgJytTKyciPmV4aXQgJyt2KyI8L2Rpdj4ifXZhciBIPXMubGVuZ3RoPjgwP3Muc2xpY2UoMCw3NykrIlx1MjAyNiI6cyxSPWY9PT1udWxsP0FuKCJ0ZXJtaW5hbCIpOmYsJD10JiZ0Ll90cnVuY2F0ZWQ9PT0hMCxJPSQ/JyBkYXRhLXRydW5jYXRlZD0idHJ1ZSIgZGF0YS10b29sLXVzZS1pZD0iJytwKGUuaWR8fCIiKSsnIic6IiI7cmV0dXJuJzxkaXYgY2xhc3M9ImlubGluZS10ZXJtaW5hbCIgZGF0YS1leHBhbmQta2luZD0idGVybWluYWwiIGRhdGEtZXhwYW5kLWtleT0iJytwKGMpKyciIGRhdGEtZXhwYW5kZWQ9IicrKFI/InRydWUiOiJmYWxzZSIpKyciJytJKyc+PGRpdiBjbGFzcz0idGVybS1oZWFkZXIiIG9uY2xpY2s9Il9fdGVybWluYWxFeHBhbmQodGhpcykiPicraCsnPHNwYW4gY2xhc3M9InRlcm0tY21kLXByZXZpZXciPjxzcGFuIGNsYXNzPSJ0ZXJtLXByb21wdCI+JDwvc3Bhbj4gJytwKEgpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InRlcm0tdG9nZ2xlLWljb24iPicrKFI/Ilx1MjVCQyI6Ilx1MjVCNiIpKyc8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0idGVybS1ib2R5IiBzdHlsZT0iZGlzcGxheTonKyhSPyJibG9jayI6Im5vbmUiKSsnOyI+PGRpdiBjbGFzcz0idGVybS1jb21tYW5kIj48c3BhbiBjbGFzcz0idGVybS1wcm9tcHQiPiQ8L3NwYW4+ICcrYisiPC9kaXY+IisoRT8nPGRpdiBjbGFzcz0idGVybS1vdXRwdXQiPicrRSsiPC9kaXY+IjoiIikreCsiPC9kaXY+PC9kaXY+In1mdW5jdGlvbiBjbihlKXtyZXR1cm4gZT90eXBlb2YgZT09InN0cmluZyI/ZTpBcnJheS5pc0FycmF5KGUpP2UubWFwKGZ1bmN0aW9uKHQpe2lmKCF0fHx0eXBlb2YgdCE9Im9iamVjdCIpcmV0dXJuIiI7aWYodC50eXBlPT09InRleHQiJiZ0eXBlb2YgdC50ZXh0PT0ic3RyaW5nIilyZXR1cm4gdC50ZXh0O3RyeXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkodCl9Y2F0Y2h7cmV0dXJuIiJ9fSkuZmlsdGVyKEJvb2xlYW4pLmpvaW4oYApgKToiIjoiIn1mdW5jdGlvbiBDdihlLHQsbixpLGEpe3ZhciB1PWUuaW5wdXR8fHt9LHM9dS5maWxlX3BhdGh8fHUucGF0aHx8IiIsbz1zLnNwbGl0KCIvIikucG9wKCl8fHMsbD1lLmlkfHwidG9vbC0iK24rIi0iKyh0eXBlb2YgYT09Im51bWJlciI/YTowKSxjPXUub2xkX3N0cmluZ3x8IiIsZj11Lm5ld19zdHJpbmd8fHUuY29udGVudHx8IiIsZD11Lm9sZF9jb250ZW50fHwiIix2PXUubmV3X2NvbnRlbnR8fCIiLGc9bj09PSJXcml0ZSJ8fG49PT0iTXVsdGlFZGl0IixoPXQmJnQuaXNfZXJyb3IsbT1jbih0JiZ0LmNvbnRlbnQpLGI9ISEobSYmbS50cmltKCkubGVuZ3RoPjApLHc9IiIsRT0iIjtnP0U9JzxkaXYgY2xhc3M9ImRpZmYtbGluZSBkaWZmLWFkZCI+KyAnK3AodikrIjwvZGl2PiI6KGMmJih3PSc8ZGl2IGNsYXNzPSJkaWZmLWxpbmUgZGlmZi1yZW1vdmUiPi0gJytwKGMpKyI8L2Rpdj4iKSxmJiYoRT0nPGRpdiBjbGFzcz0iZGlmZi1saW5lIGRpZmYtYWRkIj4rICcrcChmKSsiPC9kaXY+IikpO3ZhciBCPSIiLEY9IiI7dD9oPyhCPSJkaWZmLWVycm9yIixGPW0uaW5kZXhPZigiaGF2ZW4ndCBncmFudGVkIikhPT0tMXx8bS5pbmRleE9mKCJwZXJtaXNzaW9uIikhPT0tMT8iXHU3QjQ5XHU1Rjg1XHU2Mzg4XHU2NzQzIjoiXHU1OTMxXHU4RDI1Iik6KEI9ImRpZmYtc3VjY2VzcyIsRj0iXHU1REYyXHU0RkVFXHU2NTM5Iik6KEI9ImRpZmYtcGVuZGluZyIsRj0iXHU2MjY3XHU4ODRDXHU0RTJEIik7dmFyIHg9T3QoImRpZmYiLFtpLGx8fGEsYV0pLFM9JGUoeCksSD1BbigiZWRpdENhcmRzIiksUj1TPT09bnVsbD9CPT09ImRpZmYtcGVuZGluZyJ8fEg6UywkPVI/IiI6IiBjb2xsYXBzZWQiLEk9dyYmRSxEPUk/ImRpZmYtY29sLWhhbGYiOiJkaWZmLWNvbC1mdWxsIjtyZXR1cm4nPGRpdiBjbGFzcz0iaW5saW5lLWRpZmYnKyQrJyIgZGF0YS10b29sLW5hbWU9IicrcChuKSsnIiBkYXRhLWV4cGFuZC1raW5kPSJkaWZmIiBkYXRhLWV4cGFuZC1rZXk9IicrcCh4KSsnIiBkYXRhLXRvb2wtdXNlLWlkPSInK3AobCkrJyI+PGRpdiBjbGFzcz0iZGlmZi1oZWFkZXIiIG9uY2xpY2s9Il9fdGNUb2dnbGUoZXZlbnQsdGhpcykiPjxzcGFuIGNsYXNzPSJkaWZmLWZpbGUtaWNvbiI+PC9zcGFuPjxzcGFuIGNsYXNzPSJkaWZmLWZpbGUtbmFtZSI+JytwKG8pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImRpZmYtcGF0aCI+JytwKHMpKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImRpZmYtc3RhdHVzICcrQisnIj4nK0YrJzwvc3Bhbj48c3BhbiBjbGFzcz0iZGlmZi10b2dnbGUiPlx1MjVCQzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJkaWZmLWJvZHkiPjxkaXYgY2xhc3M9ImRpZmYtY29sdW1ucyI+JysoST8nPGRpdiBjbGFzcz0iZGlmZi1jb2wgJytEKyciPjxkaXYgY2xhc3M9ImRpZmYtY29sLWxhYmVsIj5cdTY1RTc8L2Rpdj4nK3crIjwvZGl2PiI6IiIpKyc8ZGl2IGNsYXNzPSJkaWZmLWNvbCAnK0QrJyI+PGRpdiBjbGFzcz0iZGlmZi1jb2wtbGFiZWwiPicrKEk/Ilx1NjVCMCI6IiIpKyI8L2Rpdj4iKyhFfHx3KSsiPC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+In1mdW5jdGlvbiBUbyhlLHQpe3JldHVybiBlPyc8cHJlIGNsYXNzPSJpbmxpbmUtdG9vbC1yZXN1bHQtdGV4dCIgc3R5bGU9Im1heC1oZWlnaHQ6IDMwMHB4OyBvdmVyZmxvdy15OiBhdXRvOyI+JytwKGUpKyI8L3ByZT4iOic8c3BhbiBjbGFzcz0iaW5saW5lLXRvb2wtZW1wdHkiPlx1NjVFMFx1OEY5M1x1NTFGQTwvc3Bhbj4nfWZ1bmN0aW9uIEJ2KGUsdCxuLGkpe3ZhciBhPWUubmFtZXx8InVua25vd24iLHU9ZS5pZHx8InRvb2wtIithKyItIisodHlwZW9mIG49PSJudW1iZXIiP246MCkscz1rdihhLGUuaW5wdXQpO2lmKGE9PT0iUmVhZCJ8fGE9PT0iR2xvYiJ8fGE9PT0iR3JlcCJ8fGE9PT0iV2ViRmV0Y2gifHxhPT09IldlYlNlYXJjaCJ8fGE9PT0iVG9kb1JlYWQiKXJldHVybiBGdihlLHQsYSxzLCIiLGksbik7aWYoYT09PSJCYXNoIilyZXR1cm4gd3YoZSx0LGEsaSxuKTtpZihhPT09IkVkaXQifHxhPT09IldyaXRlInx8YT09PSJNdWx0aUVkaXQiKXJldHVybiBDdihlLHQsYSxpLG4pO2lmKGE9PT0iQXNrVXNlclF1ZXN0aW9uIiYmZS5pbnB1dCYmZS5pbnB1dC5xdWVzdGlvbnMpe3ZhciBvPWUuaW5wdXQucXVlc3Rpb25zO2lmKG8mJm8ubGVuZ3RoPjApe2Zvcih2YXIgbD0hIXQsYz1yLmFza1VzZXJTZWxlY3Rpb25zW3VdfHx7fSxmPSEhYy5zdWJtaXR0ZWQsZD1sP2NuKHQuY29udGVudCk6IiIsdj1kP2QudHJpbSgpLnNwbGl0KGAKYCk6W10sZz0iIixoPTA7aDxvLmxlbmd0aDtoKyspaWYob1toXS5oZWFkZXIpe2c9b1toXS5oZWFkZXI7YnJlYWt9dmFyIG09Zz8nPHNwYW4gY2xhc3M9InRvb2wtdXNlLXN1bW1hcnkiPicrcChnKSsiPC9zcGFuPiI6IiIsYj0iIjtvLmZvckVhY2goZnVuY3Rpb24ocSxSZSl7dmFyIHo9ISFxLm11bHRpU2VsZWN0LGxlPXEucXVlc3Rpb24/JzxkaXYgY2xhc3M9ImFzay11c2VyLXRpdGxlIj4nK3AocS5xdWVzdGlvbikrIjwvZGl2PiI6IiIsZ2U9IiI7cS5vcHRpb25zJiZxLm9wdGlvbnMubGVuZ3RoPjAmJihnZT0nPGRpdiBjbGFzcz0iYXNrLXVzZXItb3B0aW9ucyIgZGF0YS1tdWx0aS1zZWxlY3Q9IicreisnIj4nLHEub3B0aW9ucy5mb3JFYWNoKGZ1bmN0aW9uKG5lLGRlKXt2YXIgVmU9bmUubGFiZWw/cChuZS5sYWJlbCk6Ilx1OTAwOVx1OTg3OSAiKyhkZSsxKSxkdD1uZS5kZXNjcmlwdGlvbj8nPGRpdiBjbGFzcz0iYXNrLXVzZXItb3B0aW9uLWRlc2MiPicrcChuZS5kZXNjcmlwdGlvbikrIjwvZGl2PiI6IiI7aWYobCl7dmFyIFZ0PXZbUmVdfHx2WzBdfHwiIixldD1WdC5zcGxpdCgiLCIpLm1hcChmdW5jdGlvbihydCl7cmV0dXJuIHJ0LnRyaW0oKX0pLHR0PWV0LmluZGV4T2YobmUubGFiZWx8fCIiKSE9PS0xO2dlKz0nPGRpdiBjbGFzcz0iYXNrLXVzZXItb3B0aW9uIGFzay11c2VyLW9wdGlvbi1yZWFkb25seScrKHR0PyIgYXNrLXVzZXItb3B0aW9uLWNob3NlbiI6IiIpKyciPjxzcGFuIGNsYXNzPSJhc2stdXNlci1pbmRpY2F0b3IiPjwvc3Bhbj48ZGl2IGNsYXNzPSJhc2stdXNlci1vcHRpb24tY29udGVudCI+PGRpdiBjbGFzcz0iYXNrLXVzZXItb3B0aW9uLWxhYmVsIj4nK1ZlKyI8L2Rpdj4iK2R0KyI8L2Rpdj48L2Rpdj4ifWVsc2V7dmFyIG50PShjW1JlXXx8W10pLmluZGV4T2YoZGUpIT09LTEsRnQ9Zj8iIGRpc2FibGVkIjoiIjtnZSs9JzxidXR0b24gY2xhc3M9ImFzay11c2VyLW9wdGlvbicrKG50PyIgc2VsZWN0ZWQiOiIiKSsnIiBkYXRhLW9wdGlvbi1pbmRleD0iJytkZSsnIiBkYXRhLXF1ZXN0aW9uLWluZGV4PSInK1JlKyciIGRhdGEtb3B0aW9uLWxhYmVsPSInK3AobmUubGFiZWx8fCJcdTkwMDlcdTk4NzkgIisoZGUrMSkpK2AiIG9uY2xpY2s9Il9fYXNrU2VsZWN0KCdgK3AodSkrIicsIitSZSsiLCIrZGUrIiwiK3orJykiJytGdCsnPjxzcGFuIGNsYXNzPSJhc2stdXNlci1pbmRpY2F0b3IiPjwvc3Bhbj48ZGl2IGNsYXNzPSJhc2stdXNlci1vcHRpb24tY29udGVudCI+PGRpdiBjbGFzcz0iYXNrLXVzZXItb3B0aW9uLWxhYmVsIj4nK1ZlKyI8L2Rpdj4iK2R0KyI8L2Rpdj48L2J1dHRvbj4ifX0pLGdlKz0iPC9kaXY+IiksYis9JzxkaXYgY2xhc3M9ImFzay11c2VyLXF1ZXN0aW9uLWdyb3VwIiBkYXRhLXF1ZXN0aW9uLWluZGV4PSInK1JlKyciPicrbGUrZ2UrIjwvZGl2PiJ9KTt2YXIgdz0iIjtpZighbCl7Zm9yKHZhciBFPSEwLEI9MDtCPG8ubGVuZ3RoO0IrKylpZighY1tCXXx8Y1tCXS5sZW5ndGg9PT0wKXtFPSExO2JyZWFrfXZhciBGPSFFfHxmPyIgZGlzYWJsZWQiOiIiLHg9Zj8iIGFzay11c2VyLXN1Ym1pdHRlZCI6IiIsUz1mPyJcdTVERjJcdTYzRDBcdTRFQTQuLi4iOiJcdTc4NkVcdThCQTRcdTYzRDBcdTRFQTQiO3c9JzxkaXYgY2xhc3M9ImFzay11c2VyLWFjdGlvbnMiPjxidXR0b24gY2xhc3M9ImFzay11c2VyLXN1Ym1pdCcreCsnIiBkYXRhLXRvb2wtdXNlLWlkPSInK3AodSkrYCIgb25jbGljaz0iX19hc2tTdWJtaXQoJ2ArcCh1KStgJykiYCtGKyI+IitTKyI8L2J1dHRvbj48L2Rpdj4ifXZhciBIPSIiO2lmKGwmJmQpe3ZhciBSPWQudHJpbSgpLnJlcGxhY2UoL1xuL2csIiwgIik7Ui5sZW5ndGg+NDAmJihSPVIuc2xpY2UoMCwzNykrIi4uLiIpLEg9JzxzcGFuIGNsYXNzPSJ0b29sLXVzZS1maWxlIj4nK3AoUikrIjwvc3Bhbj4ifXZhciAkPU90KCJ0b29sLWNhcmQiLFtpLHVdKSxJPSRlKCQpLEQ9ST09PW51bGw/IWw6SSxUPUQ/IiI6IiBjb2xsYXBzZWQiLE89bD8iIGFzay11c2VyLWFuc3dlcmVkIjoiIjtyZXR1cm4nPGRpdiBjbGFzcz0idG9vbC11c2UtY2FyZCBhc2stdXNlcicrTytUKyciIGRhdGEtdG9vbC11c2UtaWQ9IicrcCh1KSsnIiBkYXRhLWV4cGFuZC1raW5kPSJ0b29sLWNhcmQiIGRhdGEtZXhwYW5kLWtleT0iJytwKCQpKyciPjxkaXYgY2xhc3M9InRvb2wtdXNlLWhlYWRlciIgZGF0YS10b29sLXRvZ2dsZSBvbmNsaWNrPSJfX3RjVG9nZ2xlKGV2ZW50LHRoaXMpIj48c3BhbiBjbGFzcz0idG9vbC11c2UtaWNvbiI+JysobD8iXHUyNzEzIjoiPyIpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InRvb2wtdXNlLW5hbWUiPlx1NjNEMFx1OTVFRTwvc3Bhbj4nK20rSCsnPHNwYW4gY2xhc3M9InRvb2wtdXNlLXRvZ2dsZSI+XHUyNUJDPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InRvb2wtdXNlLWJvZHkgYXNrLXVzZXItYm9keSI+JytiK3crIjwvZGl2PjwvZGl2PiJ9fXZhciBVPWUuZGVzY3JpcHRpb258fGUuaW5wdXQmJmUuaW5wdXQuZGVzY3JpcHRpb258fCIiLFY9RHYoZS5uYW1lLGUuaW5wdXQpLFg9IiIsZWU9IiI7VT8oWD1VLmxlbmd0aD44MD9VLnNsaWNlKDAsNzcpKyIuLi4iOlUscyYmKGVlPSc8c3BhbiBjbGFzcz0idG9vbC11c2UtZmlsZSI+JytwKHMpKyI8L3NwYW4+IikpOihYPUhhKGEpLHMmJihlZT0nPHNwYW4gY2xhc3M9InRvb2wtdXNlLWZpbGUiPicrcChzKSsiPC9zcGFuPiIpLFYmJihlZSs9JzxzcGFuIGNsYXNzPSJ0b29sLXVzZS1zdW1tYXJ5Ij4nK3AoVikrIjwvc3Bhbj4iKSk7dmFyIFo9ZS5pbnB1dD9KU09OLnN0cmluZ2lmeShlLmlucHV0LG51bGwsMik6Int9Iix1ZT0ibG9hZGluZyIsTD0nPHNwYW4gY2xhc3M9InRvb2wtdXNlLXNwaW5uZXIiPjwvc3Bhbj4nLE09IiI7aWYodCl7dmFyIGo9dC5pc19lcnJvcixHPWNuKHQuY29udGVudCk7dWU9aj8iZXJyb3IiOiJzdWNjZXNzIixMPUxvKGEpO3ZhciBLPUcmJkcudHJpbSgpLmxlbmd0aD4wO0s/TT0nPHByZSBjbGFzcz0idG9vbC11c2UtcmVzdWx0LWNvbnRlbnQiPicrcChHKSsiPC9wcmU+IjpNPSc8c3BhbiBjbGFzcz0idG9vbC11c2UtcmVzdWx0LWVtcHR5Ij5cdTY1RTBcdThGOTNcdTUxRkE8L3NwYW4+J31lbHNlIEw9TG8oYSk7dmFyIGllPU90KCJ0b29sLWNhcmQiLFtpLHVdKSx0ZT0kZShpZSksc2U9QW4oImVkaXRDYXJkcyIpLG9lPXRlPT09bnVsbD91ZT09PSJsb2FkaW5nInx8c2U6dGUscWU9dCYmdC5fdHJ1bmNhdGVkPT09ITAsRWU9b2U/IiI6IiBjb2xsYXBzZWQiLEZlPSc8c3BhbiBjbGFzcz0idG9vbC11c2UtdG9nZ2xlIj5cdTI1QkM8L3NwYW4+JztyZXR1cm4nPGRpdiBjbGFzcz0idG9vbC11c2UtY2FyZCAnK3VlK0VlKyciIGRhdGEtZXhwYW5kLWtpbmQ9InRvb2wtY2FyZCIgZGF0YS1leHBhbmQta2V5PSInK3AoaWUpKyciIGRhdGEtdG9vbC11c2UtaWQ9IicrcCh1KSsnIicrKHFlPycgZGF0YS10cnVuY2F0ZWQ9InRydWUiJzoiIikrJz48ZGl2IGNsYXNzPSJ0b29sLXVzZS1oZWFkZXIiIGRhdGEtdG9vbC10b2dnbGUgb25jbGljaz0iX190Y1RvZ2dsZShldmVudCx0aGlzKSI+PHNwYW4gY2xhc3M9InRvb2wtdXNlLWljb24iPicrTCsnPC9zcGFuPjxzcGFuIGNsYXNzPSJ0b29sLXVzZS1uYW1lIj4nK3AoWCkrIjwvc3Bhbj4iK2VlK0ZlKyc8L2Rpdj48ZGl2IGNsYXNzPSJ0b29sLXVzZS1ib2R5Ij4nKyhVPyc8ZGl2IGNsYXNzPSJ0b29sLXVzZS1tZXRhIj48c3BhbiBjbGFzcz0idG9vbC11c2UtbWV0YS1sYWJlbCI+XHU1REU1XHU1MTc3XHVGRjFBPC9zcGFuPicrcChhKSsiPC9kaXY+IjoiIikrJzxwcmUgY2xhc3M9InRvb2wtdXNlLWNvbnRlbnQiPicrcChaKSsiPC9wcmU+IisoTT8nPGRpdiBjbGFzcz0idG9vbC11c2UtcmVzdWx0Ij4nK00rIjwvZGl2PiI6IiIpKyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIEhhKGUpe3ZhciB0PXtSZWFkOiJcdThCRkJcdTUzRDZcdTY1ODdcdTRFRjYiLFdyaXRlOiJcdTUxOTlcdTUxNjVcdTY1ODdcdTRFRjYiLEVkaXQ6Ilx1N0YxNlx1OEY5MVx1NjU4N1x1NEVGNiIsTXVsdGlFZGl0OiJcdTU5MUFcdTU5MDRcdTdGMTZcdThGOTEiLEJhc2g6Ilx1NjI2N1x1ODg0Q1x1NTQ3RFx1NEVFNCIsR3JlcDoiXHU2NDFDXHU3RDIyXHU1MTg1XHU1QkI5IixHbG9iOiJcdTY3RTVcdTYyN0VcdTY1ODdcdTRFRjYiLFdlYkZldGNoOiJcdTgzQjdcdTUzRDZcdTdGNTFcdTk4NzUiLFdlYlNlYXJjaDoiXHU2NDFDXHU3RDIyXHU3RjUxXHU5ODc1IixUYXNrOiJcdTRFRkJcdTUyQTEiLFRvZG9Xcml0ZToiXHU2NkY0XHU2NUIwXHU1Rjg1XHU1MjlFIixUb2RvUmVhZDoiXHU4QkZCXHU1M0Q2XHU1Rjg1XHU1MjlFIixOb3RlYm9va0VkaXQ6Ilx1N0YxNlx1OEY5MVx1N0IxNFx1OEJCMFx1NjcyQyIsQWdlbnQ6Ilx1NUI1MFx1NEVFM1x1NzQwNiIsQXNrVXNlclF1ZXN0aW9uOiJcdTYzRDBcdTk1RUUiLEV4aXQ6Ilx1OTAwMFx1NTFGQSJ9O3JldHVybiB0W2VdfHxlfWZ1bmN0aW9uIExvKGUpe3ZhciB0PXtSZWFkOiJSIixXcml0ZToiVyIsRWRpdDoiRSIsTXVsdGlFZGl0OiJFIixCYXNoOiIkIixHcmVwOiJHIixHbG9iOiJGIixXZWJGZXRjaDoiXHUyMUUzIixXZWJTZWFyY2g6Ilx1MjFFMiIsVGFzazoiVCIsVG9kb1dyaXRlOiJcdTI2MTAiLFRvZG9SZWFkOiJcdTI2MTEiLE5vdGVib29rRWRpdDoiTiIsQWdlbnQ6IkEiLEV4aXQ6Ilx4RDcifTtyZXR1cm4gdFtlXXx8Ilx4QjcifWZ1bmN0aW9uIER2KGUsdCl7aWYoIXR8fHR5cGVvZiB0IT0ib2JqZWN0IilyZXR1cm4iIjt2YXIgbj1PYmplY3Qua2V5cyh0KTtpZihuLmxlbmd0aD09PTApcmV0dXJuInt9IjtpZihlPT09IlJlYWQiKXJldHVybiJcdThCRkJcdTUzRDZcdTY1ODdcdTRFRjYiO2lmKGU9PT0iV3JpdGUiKXJldHVybiJcdTUxOTlcdTUxNjVcdTY1ODdcdTRFRjYiO2lmKGU9PT0iRWRpdCIpe3ZhciBpPXQuZWRpdHM/dC5lZGl0cy5sZW5ndGg6MDtyZXR1cm4iXHU3RjE2XHU4RjkxICgiK2krIiBcdTU5MDRcdTRGRUVcdTY1MzkpIn1pZihlPT09IkJhc2giKXt2YXIgYT10LmNvbW1hbmR8fCIiO2lmKGEpe3ZhciB1PWEubGVuZ3RoPjYwP2Euc2xpY2UoMCw2MCkrIi4uLiI6YTtyZXR1cm4iXHU1NDdEXHU0RUU0XHVGRjFBIit1fX1pZihlPT09IkdyZXAiKXt2YXIgcz10LnBhdHRlcm58fCIiLG89dC5wYXRofHwiIjtpZihzKXJldHVybiJcdTY0MUNcdTdEMjJcdUZGMUEiK3MrKG8/IiAoXHU1NzI4ICIrbysiKSI6IiIpfWlmKGU9PT0iR2xvYiIpe3ZhciBzPXQucGF0dGVybnx8IiI7aWYocylyZXR1cm4iXHU2N0U1XHU2MjdFXHVGRjFBIitzfWlmKGU9PT0iQWdlbnQiKXt2YXIgbD10LnByb21wdHx8dC50YXNrfHwiIjtpZihsKXt2YXIgYz1sLmxlbmd0aD40MD9sLnNsaWNlKDAsNDApKyIuLi4iOmw7cmV0dXJuIlx1NEVGQlx1NTJBMVx1RkYxQSIrY319aWYoZT09PSJUYXNrIil7dmFyIGw9dC50YXNrfHx0LmRlc2NyaXB0aW9ufHwiIjtpZihsKXt2YXIgYz1sLmxlbmd0aD40MD9sLnNsaWNlKDAsNDApKyIuLi4iOmw7cmV0dXJuIlx1NEVGQlx1NTJBMVx1RkYxQSIrY319aWYoZT09PSJUb2RvV3JpdGUiKXt2YXIgZj10LnRvZG9zfHxbXTtyZXR1cm4iXHU2NkY0XHU2NUIwXHU1Rjg1XHU1MjlFICgiK2YubGVuZ3RoKyIgXHU5ODc5KSJ9aWYoZT09PSJXZWJTZWFyY2giKXt2YXIgZD10LnF1ZXJ5fHwiIjtpZihkKXJldHVybiJcdTY0MUNcdTdEMjJcdUZGMUEiK2R9dmFyIHY9blswXSxnPXRbdl07aWYodHlwZW9mIGc9PSJzdHJpbmciKXt2YXIgaD1nLmxlbmd0aD41MD9nLnNsaWNlKDAsNTApKyIuLi4iOmc7cmV0dXJuIHYrIjogIitofXJldHVybiBuLmxlbmd0aCsiIFx1NEUyQVx1NTNDMlx1NjU3MCJ9ZnVuY3Rpb24ga3YoZSx0KXtpZighdClyZXR1cm4gbnVsbDt2YXIgbj10LmZpbGVfcGF0aHx8dC5wYXRofHx0LmN3ZDtyZXR1cm4gbj9uLmxlbmd0aD41MD8iLi4uIituLnNsaWNlKC00Nyk6bjpudWxsfWZ1bmN0aW9uIEF2KGUpe2lmKCFlKXJldHVybiIiO2Zvcih2YXIgdD1gCmAsbj1lLnNwbGl0KHQpLGk9W10sYT0hMSx1PTA7dTxuLmxlbmd0aDt1Kyspe3ZhciBzPW5bdV0sbz1zLnRyaW0oKTtpZighKCFhJiYhbykpe2lmKGE9ITAsby5pbmRleE9mKCJcdTIzRkEiKT09PTAmJm8ubGVuZ3RoPjIpe2kucHVzaChvLnNsaWNlKDEpLnRyaW0oKSk7Y29udGludWV9aWYoby5pbmRleE9mKCJcdTI1Q0YiKT09PTApe2lmKG89by5zbGljZSgxKS50cmltKCksIW8pY29udGludWU7cz1vfWkucHVzaChzKX19Zm9yKDtpLmxlbmd0aD4wJiYhaVtpLmxlbmd0aC0xXS50cmltKCk7KWkucG9wKCk7Zm9yKHZhciBsPVtdLGM9e30sZj0wO2Y8aS5sZW5ndGg7ZisrKXt2YXIgZD1pW2ZdLnJlcGxhY2UoL1xzKy9nLCIiKTtkLmxlbmd0aD41JiZjW2RdfHwoZC5sZW5ndGg+NSYmKGNbZF09ITApLGwucHVzaChpW2ZdKSl9cmV0dXJuIGwuam9pbih0KX1mdW5jdGlvbiBNbyhlKXt2YXIgdD1gCmAsbj1lLnNwbGl0KHQpLGk9W10sYT0wO2Z1bmN0aW9uIHUobSl7dmFyIGI9bS50cmltKCk7cmV0dXJuIGIuY2hhckF0KDApPT09InwiJiYoYj1iLnNsaWNlKDEpKSxiLmNoYXJBdChiLmxlbmd0aC0xKT09PSJ8IiYmKGI9Yi5zbGljZSgwLC0xKSksYi5zcGxpdCgifCIpfWZ1bmN0aW9uIHMobSl7cmV0dXJuIG0/JyBzdHlsZT0idGV4dC1hbGlnbjonK20rJyInOiIifWZ1bmN0aW9uIG8obSxiLHcpe3ZhciBFPSI8dGhlYWQ+PHRyPiIrbS5tYXAoZnVuY3Rpb24oRix4KXtyZXR1cm4iPHRoIitzKGJbeF0pKyI+IitGLnRyaW0oKSsiPC90aD4ifSkuam9pbigiIikrIjwvdHI+PC90aGVhZD4iLEI9dy5sZW5ndGg/Ijx0Ym9keT4iK3cubWFwKGZ1bmN0aW9uKEYpe3JldHVybiI8dHI+IitGLm1hcChmdW5jdGlvbih4LFMpe3JldHVybiI8dGQiK3MoYltTXSkrIj4iK3gudHJpbSgpKyI8L3RkPiJ9KS5qb2luKCIiKSsiPC90cj4ifSkuam9pbigiIikrIjwvdGJvZHk+IjoiIjtyZXR1cm4nPGRpdiBjbGFzcz0ibWQtdGFibGUtd3JhcCI+PHRhYmxlIGNsYXNzPSJtZC10YWJsZSI+JytFK0IrIjwvdGFibGU+PC9kaXY+In1mb3IoO2E8bi5sZW5ndGg7KXt2YXIgbD1uW2FdO2lmKGwuaW5kZXhPZigifCIpIT09LTEmJmErMTxuLmxlbmd0aCl7dmFyIGM9blthKzFdLnRyaW0oKTtpZigvXlx8P1xzKjo/LSs6PyhccypcfFxzKjo/LSs6PykrXHMqXHw/JC8udGVzdChjKSl7Zm9yKHZhciBmPXUobCksZD11KGMpLm1hcChmdW5jdGlvbihtKXt2YXIgYj1tLnRyaW0oKSx3PWIuY2hhckF0KDApPT09IjoiLEU9Yi5jaGFyQXQoYi5sZW5ndGgtMSk9PT0iOiI7cmV0dXJuIHcmJkU/ImNlbnRlciI6RT8icmlnaHQiOnc/ImxlZnQiOiIifSksdj1bXSxnPWErMjtnPG4ubGVuZ3RoOyl7dmFyIGg9bltnXS50cmltKCk7aWYoIWh8fGguaW5kZXhPZigifCIpPT09LTEpYnJlYWs7di5wdXNoKHUobltnXSkpLGcrPTF9aS5wdXNoKCIiLG8oZixkLHYpLCIiKSxhPWc7Y29udGludWV9fWkucHVzaChsKSxhKz0xfXJldHVybiBpLmpvaW4odCl9ZnVuY3Rpb24gX2EoZSl7aWYoIWUpcmV0dXJuIiI7dmFyIHQ9cChlKSxuPSJgIixpPWAKYDtmdW5jdGlvbiBhKEwsTSxqLEcpe2Zvcih2YXIgSz0wOzspe3ZhciBpZT1MLmluZGV4T2YoTSxLKTtpZihpZT09PS0xKWJyZWFrO3ZhciB0ZT1MLmluZGV4T2YoTSxpZStNLmxlbmd0aCk7aWYodGU9PT0tMSlicmVhazt2YXIgc2U9TC5zbGljZShpZStNLmxlbmd0aCx0ZSk7aWYoIXNlKXtLPXRlK00ubGVuZ3RoO2NvbnRpbnVlfXZhciBvZT1qK3NlK0c7TD1MLnNsaWNlKDAsaWUpK29lK0wuc2xpY2UodGUrTS5sZW5ndGgpLEs9aWUrb2UubGVuZ3RofXJldHVybiBMfWZ1bmN0aW9uIHUoTCl7cmV0dXJuIEw+PTQ4JiZMPD01N3x8TD49NjUmJkw8PTkwfHxMPj05NyYmTDw9MTIyfHxMPT09OTV9ZnVuY3Rpb24gcyhMLE0sail7Zm9yKHZhciBHPTA7RzxMLmxlbmd0aDspe3ZhciBLPUwuaW5kZXhPZigiXyIsRyk7aWYoSz09PS0xKWJyZWFrO3ZhciBpZT1LPjA/TC5jaGFyQ29kZUF0KEstMSk6MDtpZih1KGllKSl7Rz1LKzE7Y29udGludWV9Zm9yKHZhciB0ZT1LKzEsc2U9LTE7dGU8TC5sZW5ndGg7KXt2YXIgb2U9TC5pbmRleE9mKCJfIix0ZSk7aWYob2U9PT0tMSlicmVhazt2YXIgcWU9b2UrMSxFZT1xZTxMLmxlbmd0aD9MLmNoYXJDb2RlQXQocWUpOjA7aWYoIXUoRWUpKXtzZT1vZTticmVha310ZT1vZSsxfWlmKHNlPT09LTEpYnJlYWs7dmFyIEZlPUwuc2xpY2UoSysxLHNlKTtpZighRmUpe0c9c2UrMTtjb250aW51ZX12YXIgcT1NK0ZlK2o7TD1MLnNsaWNlKDAsSykrcStMLnNsaWNlKHNlKzEpLEc9SytxLmxlbmd0aH1yZXR1cm4gTH1mdW5jdGlvbiBvKEwsTSxqLEcpe3JldHVybiBMLnNwbGl0KGkpLm1hcChmdW5jdGlvbihLKXtyZXR1cm4gSy5pbmRleE9mKE0pIT09MD9LOmorSy5zbGljZShNLmxlbmd0aCkrR30pLmpvaW4oaSl9ZnVuY3Rpb24gbChMKXtyZXR1cm4gTC5zcGxpdChpKS5tYXAoZnVuY3Rpb24oTSl7dmFyIGo9TS5pbmRleE9mKCIuICIpO2lmKGo8PTApcmV0dXJuIE07Zm9yKHZhciBHPTA7RzxqO0crPTEpe3ZhciBLPU0uY2hhckNvZGVBdChHKTtpZihLPDQ4fHxLPjU3KXJldHVybiBNfXJldHVybiI8bGk+IitNLnNsaWNlKGorMikrIjwvbGk+In0pLmpvaW4oaSl9ZnVuY3Rpb24gYyhMKXtyZXR1cm4gTC5zcGxpdChpK2kpLm1hcChmdW5jdGlvbihNKXt2YXIgaj1NLnRyaW0oKTtyZXR1cm4gaj9qLmluZGV4T2YoIjxkaXYiKT09PTB8fGouaW5kZXhPZigiPGgxIik9PT0wfHxqLmluZGV4T2YoIjxoMiIpPT09MHx8ai5pbmRleE9mKCI8aDMiKT09PTB8fGouaW5kZXhPZigiPGg0Iik9PT0wfHxqLmluZGV4T2YoIjxoNSIpPT09MHx8ai5pbmRleE9mKCI8aDYiKT09PTB8fGouaW5kZXhPZigiPHVsIik9PT0wfHxqLmluZGV4T2YoIjxvbCIpPT09MHx8ai5pbmRleE9mKCI8bGkiKT09PTB8fGouaW5kZXhPZigiPGJsb2NrcXVvdGUiKT09PTB8fGouaW5kZXhPZigiPHByZSIpPT09MD9qOiI8cD4iK2ouc3BsaXQoaSkuam9pbigiPGJyPiIpKyI8L3A+IjoiIn0pLmpvaW4oIiIpfWZvcih2YXIgZj0wOzspe3ZhciBkPXQuaW5kZXhPZihuK24rbixmKTtpZihkPT09LTEpYnJlYWs7dmFyIHY9dC5pbmRleE9mKG4rbituLGQrMyk7aWYodj09PS0xKWJyZWFrO3ZhciBnPXQuc2xpY2UoZCszLHYpLGg9Zy5pbmRleE9mKGkpLG09IiIsYj1nO2lmKGghPT0tMSYmaDwzMCl7Zm9yKHZhciB3PWcuc2xpY2UoMCxoKS50cmltKCksRT13Lmxlbmd0aD4wLEI9MDtCPHcubGVuZ3RoO0IrPTEpe3ZhciBGPXcuY2hhckNvZGVBdChCKSx4PUY+PTQ4JiZGPD01NyxTPUY+PTY1JiZGPD05MCxIPUY+PTk3JiZGPD0xMjI7aWYoIXgmJiFTJiYhSCl7RT0hMTticmVha319RSYmKG09dyxiPWcuc2xpY2UoaCsxKSl9dmFyIFI9eHYoYi50cmltKCksbSksJD1SLnJlcGxhY2UoL18vZywiJiM5NTsiKS5yZXBsYWNlKC9cKi9nLCImIzQyOyIpLEk9JzxkaXYgY2xhc3M9ImNvZGUtYmxvY2siPjxkaXYgY2xhc3M9ImNvZGUtYmxvY2staGVhZGVyIj48c3BhbiBjbGFzcz0iY29kZS1sYW5nIj4nKyhtfHwiY29kZSIpKyc8L3NwYW4+PGJ1dHRvbiBjbGFzcz0iY29kZS1jb3B5Ij5Db3B5PC9idXR0b24+PC9kaXY+PHByZT48Y29kZT4nKyQrIjwvY29kZT48L3ByZT48L2Rpdj4iO3Q9dC5zbGljZSgwLGQpK0krdC5zbGljZSh2KzMpLGY9ZCtJLmxlbmd0aH1mb3IoZj0wOzspe3ZhciBEPXQuaW5kZXhPZihuLGYpO2lmKEQ9PT0tMSlicmVhazt2YXIgVD10LmluZGV4T2YobixEKzEpO2lmKFQ9PT0tMSlicmVhaztpZihUPT09RCsxKXtmPVQrMTtjb250aW51ZX12YXIgTz10LnNsaWNlKEQrMSxUKSxVPU8ucmVwbGFjZSgvXy9nLCImIzk1OyIpLnJlcGxhY2UoL1wqL2csIiYjNDI7IiksVj0nPGNvZGUgY2xhc3M9ImNvZGUtaW5saW5lIj4nK1UrIjwvY29kZT4iO3Q9dC5zbGljZSgwLEQpK1YrdC5zbGljZShUKzEpLGY9RCtWLmxlbmd0aH10PWEodCwiKioiLCI8c3Ryb25nPiIsIjwvc3Ryb25nPiIpLHQ9YSh0LCIqIiwiPGVtPiIsIjwvZW0+IiksdD1zKHQsIjxlbT4iLCI8L2VtPiIpLHQ9byh0LCIjIyMgIiwiPGgzPiIsIjwvaDM+IiksdD1vKHQsIiMjICIsIjxoMj4iLCI8L2gyPiIpLHQ9byh0LCIjICIsIjxoMT4iLCI8L2gxPiIpLHQ9byh0LCImZ3Q7ICIsIjxibG9ja3F1b3RlPiIsIjwvYmxvY2txdW90ZT4iKSx0PW8odCwiLSAiLCI8bGk+IiwiPC9saT4iKSx0PW8odCwiKiAiLCI8bGk+IiwiPC9saT4iKSx0PWwodCksdD1Nbyh0KTt2YXIgWD10LnNwbGl0KGkpLGVlPVtdLFo9W107ZnVuY3Rpb24gdWUoKXtaLmxlbmd0aCYmKGVlLnB1c2goIjx1bD4iK1ouam9pbigiIikrIjwvdWw+IiksWj1bXSl9cmV0dXJuIFguZm9yRWFjaChmdW5jdGlvbihMKXtpZihMLmluZGV4T2YoIjxsaT4iKT09PTAmJkwubGFzdEluZGV4T2YoIjwvbGk+Iik9PT1MLmxlbmd0aC01KXtaLnB1c2goTCk7cmV0dXJufXVlKCksZWUucHVzaChMKX0pLHVlKCksdD1jKGVlLmpvaW4oaSkpLCc8ZGl2IGNsYXNzPSJtYXJrZG93bi1jb250ZW50Ij4nK3QrIjwvZGl2PiJ9ZnVuY3Rpb24geHYoZSx0KXtyZXR1cm4gZT1lLnJlcGxhY2UoLyYvZywiJmFtcDsiKS5yZXBsYWNlKC88L2csIiZsdDsiKS5yZXBsYWNlKC8+L2csIiZndDsiKSxlfWZ1bmN0aW9uIFFuKGUpe3ZhciB0PVN0cmluZyhlfHwiIikudHJpbSgpO3JldHVybiB0Lmxlbmd0aDw9MjQ/dHx8Ilx1NjcyQVx1OTAwOVx1NjJFOVx1NEYxQVx1OEJERCI6dC5zbGljZSgwLDIxKSsiLi4uIn1mdW5jdGlvbiBOYShlKXtyZXR1cm4gU3RyaW5nKGV8fCIiKS5yZXBsYWNlKC9cclxyXG4vZyxgXHIKYCkucmVwbGFjZSgvXHUwMDAwL2csIiIpfWZ1bmN0aW9uIFN2KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ2luLWNlcnQtaGludCIpO2UmJmUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ2luLWNlcnQtaHR0cC1saW5rIik7dCYmKHQuaHJlZj0iaHR0cDovLyIrbG9jYXRpb24uaG9zdCtsb2NhdGlvbi5wYXRobmFtZSx0LnN0eWxlLmRpc3BsYXk9bG9jYXRpb24ucHJvdG9jb2w9PT0iaHR0cHM6Ij8iIjoibm9uZSIpfWZ1bmN0aW9uIEl2KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ2luLWNlcnQtaGludCIpO2UmJmUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIil9ZnVuY3Rpb24gamEoKXtpZighci5sb2dpblBlbmRpbmcpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwYXNzd29yZCIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ2luLWJ1dHRvbiIpLG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ2luLWVycm9yIik7IWV8fCF0fHwhbnx8KHVpKG4pLEl2KCksZS5kYXRhc2V0LmVycm9yPSJmYWxzZSIsZS5zZXRBdHRyaWJ1dGUoImFyaWEtaW52YWxpZCIsImZhbHNlIiksci5sb2dpblBlbmRpbmc9ITAsdC5kaXNhYmxlZD0hMCx0LnRleHRDb250ZW50PSJcdTc2N0JcdTVGNTVcdTRFMkQuLi4iLGZldGNoKCIvYXBpL2xvZ2luIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGJvZHk6SlNPTi5zdHJpbmdpZnkoe3Bhc3N3b3JkOmUudmFsdWV9KSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5zdGF0dXM9PT00Mjk/KFBlKG4sIlx1NzY3Qlx1NUY1NVx1NUMxRFx1OEJENVx1NkIyMVx1NjU3MFx1OEZDN1x1NTkxQVx1RkYwQ1x1OEJGN1x1N0EwRFx1NTQwRVx1NTE4RFx1OEJENVx1MzAwMiIpLFByb21pc2UucmVqZWN0KCJoYW5kbGVkIikpOmkub2s/ZmV0Y2goIi9hcGkvY29uZmlnIix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pOihlLmRhdGFzZXQuZXJyb3I9InRydWUiLGUuc2V0QXR0cmlidXRlKCJhcmlhLWludmFsaWQiLCJ0cnVlIiksUGUobiwiXHU1QkM2XHU3ODAxXHU5NTE5XHU4QkVGXHVGRjBDXHU4QkY3XHU5MUNEXHU4QkQ1XHUzMDAyIiksUHJvbWlzZS5yZWplY3QoImhhbmRsZWQiKSl9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLm9rP2kuanNvbigpOihsb2NhdGlvbi5wcm90b2NvbD09PSJodHRwczoiP1N2KCk6UGUobiwiXHU3NjdCXHU1RjU1XHU1OTMxXHU4RDI1XHVGRjBDXHU4QkY3XHU5MUNEXHU4QkQ1XHUzMDAyIiksUHJvbWlzZS5yZWplY3QoImhhbmRsZWQiKSl9KS50aGVuKGZ1bmN0aW9uKGkpe3IuY29uZmlnPWk7dmFyIGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0YXR1cy1kb3QiKSx1PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzdGF0dXMtdGV4dCIpO3JldHVybiBhJiZhLmNsYXNzTGlzdC5hZGQoImFjdGl2ZSIpLHUmJih1LnRleHRDb250ZW50PSJcdTVERjJcdTc2N0JcdTVGNTUiKSxSdCgpfSkudGhlbihmdW5jdGlvbigpe3RzKCksJHQoKX0pLmNhdGNoKGZ1bmN0aW9uKGkpe2khPT0iaGFuZGxlZCImJihjb25zb2xlLmVycm9yKCJbd2FuZF0gTG9naW4gZXJyb3I6IixpKSxQZShuLCJcdTc2N0JcdTVGNTVcdTU5MzFcdThEMjVcdUZGMENcdThCRjdcdTkxQ0RcdThCRDVcdTMwMDIiKSl9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ci5sb2dpblBlbmRpbmc9ITEsdC5kaXNhYmxlZD0hMSx0LnRleHRDb250ZW50PSJcdThGREJcdTUxNjVcdTYzQTdcdTUyMzZcdTUzRjAifSkpfX1mdW5jdGlvbiBSYSgpe3JldHVybiB0eXBlb2YgV2FuZE5hdGl2ZTwidSImJnR5cGVvZiBXYW5kTmF0aXZlLnN3aXRjaFNlcnZlcj09ImZ1bmN0aW9uIn1mdW5jdGlvbiBPbygpe2lmKFJhKCkpdHJ5e1dhbmROYXRpdmUuc3dpdGNoU2VydmVyKCl9Y2F0Y2h7fX1mdW5jdGlvbiBUdigpe3JldHVybiB0eXBlb2YgV2FuZE5hdGl2ZTwidSImJnR5cGVvZiBXYW5kTmF0aXZlLmJhY2tUb05hdGl2ZT09ImZ1bmN0aW9uIj8hMDp0eXBlb2Ygd2luZG93Ll9fd2FuZEJhY2tUb05hdGl2ZT09ImZ1bmN0aW9uIn1mdW5jdGlvbiBMdigpe3RyeXtpZih0eXBlb2YgV2FuZE5hdGl2ZTwidSImJnR5cGVvZiBXYW5kTmF0aXZlLmJhY2tUb05hdGl2ZT09ImZ1bmN0aW9uIil7V2FuZE5hdGl2ZS5iYWNrVG9OYXRpdmUoKTtyZXR1cm59dHlwZW9mIHdpbmRvdy5fX3dhbmRCYWNrVG9OYXRpdmU9PSJmdW5jdGlvbiImJndpbmRvdy5fX3dhbmRCYWNrVG9OYXRpdmUoKX1jYXRjaHt9fWZ1bmN0aW9uIFBvKCl7ZmV0Y2goIi9hcGkvbG9nb3V0Iix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkuY2F0Y2goZnVuY3Rpb24oKXt9KSxzcygpLEluKCExKSxDYSgpLGdyKCksci5jb25maWc9bnVsbCxyLnNlbGVjdGVkSWQ9bnVsbCx3ZSgpLHIuc2Vzc2lvbnM9W10sci5jbGF1ZGVIaXN0b3J5PVtdLHIuY2xhdWRlSGlzdG9yeUxvYWRlZD0hMSxyLmNsYXVkZUhpc3RvcnlFeHBhbmRlZD0hMSxyLmNsYXVkZUhpc3RvcnlFeHBhbmRlZERpcnM9e30sci5zZXNzaW9uc0RyYXdlck9wZW49ITEsSWUoIndhbmQtc2lkZWJhci1vcGVuIiwhMSksJHQoKX1mdW5jdGlvbiBSdCgpe3JldHVybiBmbigpfWZ1bmN0aW9uIE12KGUpe3JldHVybiBlPT09ImZ1bGwtYWNjZXNzIj8iXHU1MTY4XHU2NzQzXHU5NjUwIjplPT09ImRlZmF1bHQiPyJcdTlFRDhcdThCQTQiOmU9PT0ibmF0aXZlIj8iXHU1MzlGXHU3NTFGIjplPT09ImF1dG8tZWRpdCI/Ilx1ODFFQVx1NTJBOFx1N0YxNlx1OEY5MSI6ZT09PSJtYW5hZ2VkIj8iXHU2MjU4XHU3QkExIjplfWZ1bmN0aW9uIG10KCl7cmV0dXJuIHIuc2Vzc2lvblRvb2x8fHIucHJlZmVycmVkQ29tbWFuZHx8ImNsYXVkZSJ9ZnVuY3Rpb24gT3YoKXt2YXIgZT1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odCl7cmV0dXJuIHQuaWQ9PT1yLnNlbGVjdGVkSWR9KTtyZXR1cm4gZSYmZS5wcm92aWRlcnx8ci5wcmVmZXJyZWRDb21tYW5kfHwiY2xhdWRlIn1mdW5jdGlvbiBxbyhlLHQpe3JldHVybiB0PyJcdTk1MkVcdTc2RDhcdThGOTNcdTUxNjVcdTVDMDZcdTUzRDFcdTkwMDFcdTUyMzBcdTdFQzhcdTdBRUYiOmUmJihlLnN0YXR1cz09PSJleGl0ZWQifHxlLnN0YXR1cz09PSJmYWlsZWQifHxlLnN0YXR1cz09PSJzdG9wcGVkIik/YmEoZSk/Ilx1OEY5M1x1NTE2NVx1NkQ4OFx1NjA2Rlx1NEVFNVx1N0VFN1x1N0VFRFx1NEYxQVx1OEJERCI6Ilx1NEYxQVx1OEJERFx1NURGMlx1N0VEM1x1Njc1RiI6YWUoZSkmJmUuc3RydWN0dXJlZFN0YXRlJiZlLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodD8iXHU1NkRFXHU1OTBEXHU0RTJEXHVGRjBDXHU1M0VGXHU3RUU3XHU3RUVEXHU4RjkzXHU1MTY1IjoiXHU4RjkzXHU1MTY1XHU2RDg4XHU2MDZGIn1mdW5jdGlvbiBIbyhlLHQpe3JldHVybiBlPT09ImNvZGV4Ij8iQ29kZXggXHU2NTJGXHU2MzAxIFBUWSBcdTdFQzhcdTdBRUZcdTRFMEVcdTdFRDNcdTY3ODRcdTUzMTZcdUZGMDhKU09OTFx1RkYwOVx1NEUyNFx1NzlDRFx1NEYxQVx1OEJERFx1RkYwQ1x1N0VEM1x1Njc4NFx1NTMxNlx1NkEyMVx1NUYwRlx1NjMwOSBmdWxsLWFjY2VzcyBcdTU0MkZcdTUyQThcdTMwMDIiOnQ9PT0iZnVsbC1hY2Nlc3MiPyJcdTgxRUFcdTUyQThcdTc4NkVcdThCQTRcdTY3NDNcdTk2NTBcdThCRjdcdTZDNDJcdTRFMEVcdTlBRDhcdTY3NDNcdTk2NTBcdTY0Q0RcdTRGNUNcdUZGMENcdTkwMDJcdTU0MDhcdTRGNjBcdTc4NkVcdThCQTRcdTczQUZcdTU4ODNcdTVCODlcdTUxNjhcdTU0MEVcdTc2ODRcdThGREVcdTdFRURcdTRGRUVcdTY1MzlcdTMwMDIiOnQ9PT0iYXV0by1lZGl0Ij8iXHU0RkREXHU3NTU5XHU0RUE0XHU0RTkyXHU1RjBGXHU0RjFBXHU4QkREXHVGRjBDXHU1NDBDXHU2NUY2XHU2NkY0XHU1MDRGXHU1NDExXHU3NkY0XHU2M0E1XHU3RjE2XHU4RjkxXHU0RUUzXHU3ODAxXHUzMDAyIjp0PT09Im5hdGl2ZSI/Ilx1OEMwM1x1NzUyOCBDbGF1ZGUgXHU1MzlGXHU3NTFGIEFQSSBcdThGOTNcdTUxRkFcdUZGMENcdTkwMDJcdTU0MDhcdTVGRUJcdTkwMUZcdTk1RUVcdTdCNTRcdTYyMTZcdTRFMDBcdTZCMjFcdTYwMjdcdTc1MUZcdTYyMTBcdTMwMDIiOnQ9PT0ibWFuYWdlZCI/IkFJIFx1ODFFQVx1NTJBOFx1NUI4Q1x1NjIxMFx1NjI0MFx1NjcwOVx1NURFNVx1NEY1Q1x1RkYwQ1x1NjVFMFx1OTcwMFx1NEUyRFx1OTAxNFx1Nzg2RVx1OEJBNFx1RkYwQ1x1OTAwMlx1NTQwOFx1NjcwOVx1NjYwRVx1Nzg2RVx1NzZFRVx1NjgwN1x1NzY4NFx1NEVGQlx1NTJBMVx1MzAwMiI6Ilx1NEZERFx1NzU1OVx1NjgwN1x1NTFDNlx1NEVBNFx1NEU5Mlx1NkQ0MVx1N0EwQlx1RkYwQ1x1OTAwMlx1NTQwOFx1NjI0Qlx1NTJBOFx1Nzg2RVx1OEJBNFx1NkJDRlx1NEUwMFx1NkI2NVx1MzAwMiJ9ZnVuY3Rpb24gV2EoZSl7cmV0dXJuIGU9PT0iY29kZXgiP1siZnVsbC1hY2Nlc3MiXTpbImRlZmF1bHQiLCJmdWxsLWFjY2VzcyIsImF1dG8tZWRpdCIsIm5hdGl2ZSIsIm1hbmFnZWQiXX1mdW5jdGlvbiB4dChlLHQpe3ZhciBuPVdhKGUpO2lmKG4uaW5kZXhPZih0KSE9PS0xKXJldHVybiB0O3ZhciBpPXIuY29uZmlnJiZyLmNvbmZpZy5kZWZhdWx0TW9kZT9yLmNvbmZpZy5kZWZhdWx0TW9kZToiZGVmYXVsdCI7cmV0dXJuIG4uaW5kZXhPZihpKSE9PS0xP2k6blswXX1mdW5jdGlvbiBTZyhlLHQpe3JldHVybiBXYShlKS5tYXAoZnVuY3Rpb24obil7dmFyIGk9X28obik7cmV0dXJuJzxvcHRpb24gdmFsdWU9IicrcChuKSsnIicrKG49PT10PyIgc2VsZWN0ZWQiOiIiKSsnIHRpdGxlPSInK2krJyI+JytwKE12KG4pKSsiPC9vcHRpb24+In0pLmpvaW4oIiIpfWZ1bmN0aW9uIF9vKGUpe3ZhciB0PXtkZWZhdWx0OiJcdTY4MDdcdTUxQzZcdTZBMjFcdTVGMEYgLSBcdTk3MDBcdTg5ODFcdTc4NkVcdThCQTRcdTY1ODdcdTRFRjZcdTRGRUVcdTY1MzkiLCJmdWxsLWFjY2VzcyI6Ilx1NUI4Q1x1NTE2OFx1OEJCRlx1OTVFRSAtIFx1ODFFQVx1NTJBOFx1Nzg2RVx1OEJBNFx1Njc0M1x1OTY1MFx1NEUwRVx1NjRDRFx1NEY1QyIsImF1dG8tZWRpdCI6Ilx1ODFFQVx1NTJBOFx1N0YxNlx1OEY5MSAtIFx1ODFFQVx1NTJBOFx1Nzg2RVx1OEJBNFx1NjU4N1x1NEVGNlx1NEZFRVx1NjUzOSIsbmF0aXZlOiJcdTUzOUZcdTc1MUZcdTZBMjFcdTVGMEYgLSBcdThGRDRcdTU2REVcdTdFRDNcdTY3ODRcdTUzMTZcdThGOTNcdTUxRkEiLG1hbmFnZWQ6Ilx1NjI1OFx1N0JBMVx1NkEyMVx1NUYwRiAtIEFJIFx1ODFFQVx1NTJBOFx1NUI4Q1x1NjIxMFx1NjI0MFx1NjcwOVx1NURFNVx1NEY1QyJ9O3JldHVybiB0W2VdfHwiIn1mdW5jdGlvbiBQdihlKXt2YXIgdD1lJiZlLnByb3ZpZGVyP2UucHJvdmlkZXI6ImNsYXVkZSI7cmV0dXJuKGFlKGUpPyJcdTdFRDNcdTY3ODRcdTUzMTYiOiJcdTdFQzhcdTdBRUYiKSsiIFx4QjcgIit0fWZ1bmN0aW9uIHF2KGUpe3JldHVybiBhZShlKT8iXHU3RUQzXHU2Nzg0XHU1MzE2IFx4QjcgXHU1NzU3XHU3RUE3XHU4QkIwXHU1RjU1IjplJiZlLnByb3ZpZGVyPT09ImNvZGV4Ij8iXHU3RUM4XHU3QUVGIFx4QjcgQ29kZXggUFRZXHVGRjA4Y2hhdCBcdTRFM0FcdTg5RTNcdTY3OTBcdTg5QzZcdTU2RkVcdUZGMDkiOiJcdTdFQzhcdTdBRUYgXHhCNyBQVFkgXHU0RjFBXHU4QkREIn1mdW5jdGlvbiBIdihlKXtyZXR1cm4gZT9hZShlKXx8ZS5wcm92aWRlcj09PSJjb2RleCI6ITF9ZnVuY3Rpb24gTm8oZSx0KXtpZighZXx8IWUuaXNfZXJyb3J8fCF0fHx0LmlzX2Vycm9yKXJldHVybiExO3ZhciBuPWNuKGUuY29udGVudCkudG9Mb3dlckNhc2UoKSxpPWNuKHQuY29udGVudCkudG9Mb3dlckNhc2UoKTtyZXR1cm4gbj9uLmluZGV4T2YoImludmFsaWQgcGFnZXMgcGFyYW1ldGVyIikhPT0tMSYmaS5sZW5ndGg+MDohMX1mdW5jdGlvbiBhZShlKXtyZXR1cm4hIWUmJihlLnNlc3Npb25LaW5kPT09InN0cnVjdHVyZWQifHxlLnJ1bm5lcj09PSJjbGF1ZGUtY2xpLXByaW50Iil9ZnVuY3Rpb24gQmkoKXtyLmNoYXRNb2RlPXh0KCJjbGF1ZGUiLHIuY2hhdE1vZGUpO3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtb2RlLWhpbnQiKTtlJiYoZS50ZXh0Q29udGVudD1fbyhyLmNoYXRNb2RlKSksJG4oKX1mdW5jdGlvbiB6YShlLHQpe3Q9dHx8e307dmFyIG49dC5raW5kPT09ImNvbXBhY3QifHx0LmtpbmQ9PT0icG9wb3ZlciI/dC5raW5kOiJkcm9wZG93biIsaT1tdCgpLGE9ci5jaGF0TW9kZXx8ImRlZmF1bHQiLHU9Um8oZSl8fCJkZWZhdWx0IixzPVVvKGUpO2Z1bmN0aW9uIG8obCxjLGYsZCl7dmFyIHY9bj09PSJjb21wYWN0Ij8iIjonPHNwYW4gY2xhc3M9ImNoYXQtbW9kZS10cmlvLXRhZyI+JytwKGMpKyI8L3NwYW4+IjtyZXR1cm4nPHNwYW4gY2xhc3M9ImNvbXBvc2VyLXRleHQtcGlsbCBjaGF0LW1vZGUtdHJpby1waWxsIiBkYXRhLW1vZGUtY29udHJvbC1waWxsPSInK2wrJyIgdGl0bGU9IicrcChjKSsnIj4nK3YrJzxzcGFuIGNsYXNzPSJjb21wb3Nlci10ZXh0LWxhYmVsIj4nK3AoZikrJzwvc3Bhbj48c2VsZWN0IGNsYXNzPSJjb21wb3Nlci10ZXh0LWhpZGRlbi1zZWxlY3QiIGRhdGEtbW9kZS1jb250cm9sPSInK2wrJyIgdGFiaW5kZXg9Ii0xIiBhcmlhLWxhYmVsPSInK3AoYykrJyI+JytkKyI8L3NlbGVjdD48L3NwYW4+In1yZXR1cm4nPGRpdiBjbGFzcz0iY2hhdC1tb2RlLXRyaW8gY2hhdC1tb2RlLXRyaW8tJytuKyciIHJvbGU9Imdyb3VwIiBhcmlhLWxhYmVsPSJcdTRGMUFcdThCRERcdThCQkVcdTdGNkUiPicrbygibW9kZSIsIlx1NkEyMVx1NUYwRiIsYSxqbyhpLGEpKSsnPHNwYW4gY2xhc3M9ImNvbXBvc2VyLXRleHQtc2VwIiBhcmlhLWhpZGRlbj0idHJ1ZSI+XHhCNzwvc3Bhbj4nK28oIm1vZGVsIiwiXHU2QTIxXHU1NzhCIix1LHpvKHUsZSkpKyc8c3BhbiBjbGFzcz0iY29tcG9zZXItdGV4dC1zZXAiIGFyaWEtaGlkZGVuPSJ0cnVlIj5ceEI3PC9zcGFuPicrbygidGhpbmtpbmciLCJcdTYwMURcdTgwMDMiLHMsVm8ocykpKyI8L2Rpdj4ifWZ1bmN0aW9uICRuKCl7dmFyIGU9Z3QoKSx0PW10KCksbj1yLmNoYXRNb2RlfHwiZGVmYXVsdCIsaT1SbyhlKXx8ImRlZmF1bHQiLGE9VW8oZSksdT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuY2hhdC1tb2RlLXRyaW8iKTt1LmZvckVhY2goZnVuY3Rpb24ocyl7ZnVuY3Rpb24gbyhsLGMsZil7dmFyIGQ9cy5xdWVyeVNlbGVjdG9yKCdbZGF0YS1tb2RlLWNvbnRyb2wtcGlsbD0iJytsKyciXScpO2lmKGQpe3ZhciB2PWQucXVlcnlTZWxlY3RvcigiLmNvbXBvc2VyLXRleHQtbGFiZWwiKTt2JiYodi50ZXh0Q29udGVudD1jKTt2YXIgZz1kLnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLW1vZGUtY29udHJvbD0iJytsKyciXScpO2cmJihmJiYoZy5pbm5lckhUTUw9ZiksZy52YWx1ZSE9PWMmJihnLnZhbHVlPWMpKX19bygibW9kZSIsbixqbyh0LG4pKSxvKCJtb2RlbCIsaSx6byhpLGUpKSxvKCJ0aGlua2luZyIsYSxWbyhhKSl9KX1mdW5jdGlvbiBqbyhlLHQpe3JldHVybiBXYShlKS5tYXAoZnVuY3Rpb24obil7cmV0dXJuJzxvcHRpb24gdmFsdWU9IicrcChuKSsnIicrKG49PT10PyIgc2VsZWN0ZWQiOiIiKSsiPiIrcChuKSsiPC9vcHRpb24+In0pLmpvaW4oIiIpfWZ1bmN0aW9uIFJvKGUpe3JldHVybiBlJiZlLnNlbGVjdGVkTW9kZWw/ZS5zZWxlY3RlZE1vZGVsOnIuY2hhdE1vZGVsP3IuY2hhdE1vZGVsOnIuY29uZmlnJiZyLmNvbmZpZy5kZWZhdWx0TW9kZWw/ci5jb25maWcuZGVmYXVsdE1vZGVsOiIifWZ1bmN0aW9uIFdvKGUpe3ZhciB0PWUmJmUucHJvdmlkZXJ8fHIuc2Vzc2lvblRvb2x8fCJjbGF1ZGUiO3JldHVybiB0PT09ImNvZGV4Ij9yLmF2YWlsYWJsZUNvZGV4TW9kZWxzfHxbXTpyLmF2YWlsYWJsZU1vZGVsc3x8W119ZnVuY3Rpb24gX3YoZSx0KXtmb3IodmFyIG49V28odCksaT0nPG9wdGlvbiB2YWx1ZT0iIj5cdTlFRDhcdThCQTRcdUZGMDhcdThEREZcdTk2OEZcdThCQkVcdTdGNkVcdUZGMDk8L29wdGlvbj4nLGE9MDthPG4ubGVuZ3RoO2ErKyl7dmFyIHU9blthXSxzPXUubGFiZWx8fHUuaWQ7aSs9JzxvcHRpb24gdmFsdWU9IicrcCh1LmlkKSsnIicrKHUuaWQ9PT1lPyIgc2VsZWN0ZWQiOiIiKSsiPiIrcChzKSsiPC9vcHRpb24+In1yZXR1cm4gZSYmIW4uc29tZShmdW5jdGlvbihvKXtyZXR1cm4gby5pZD09PWV9KSYmKGkrPSc8b3B0aW9uIHZhbHVlPSInK3AoZSkrJyIgc2VsZWN0ZWQ+JytwKGUpKyJcdUZGMDhcdTgxRUFcdTVCOUFcdTRFNDlcdUZGMDk8L29wdGlvbj4iKSxpfWZ1bmN0aW9uIHpvKGUsdCl7Zm9yKHZhciBuPVdvKHQpLGk9JzxvcHRpb24gdmFsdWU9IiI+ZGVmYXVsdDwvb3B0aW9uPicsYT0wO2E8bi5sZW5ndGg7YSsrKXt2YXIgdT1uW2FdO2krPSc8b3B0aW9uIHZhbHVlPSInK3AodS5pZCkrJyInKyh1LmlkPT09ZT8iIHNlbGVjdGVkIjoiIikrIj4iK3AodS5pZCkrIjwvb3B0aW9uPiJ9cmV0dXJuIGUmJiFuLnNvbWUoZnVuY3Rpb24ocyl7cmV0dXJuIHMuaWQ9PT1lfSkmJihpKz0nPG9wdGlvbiB2YWx1ZT0iJytwKGUpKyciIHNlbGVjdGVkPicrcChlKSsiPC9vcHRpb24+IiksaX1mdW5jdGlvbiBYbihlKXskbigpfXZhciBkbj1be2lkOiJvZmYiLGxhYmVsOiJvZmYiLGhpbnQ6Ilx1NEUwRFx1NTQyRlx1NzUyOFx1NjAxRFx1ODAwM1x1RkYwOENMSSBcdTY1RTBcdTUyNERcdTdGMDBcdUZGMUJTREsgXHU1MTczXHU5NUVEIHRoaW5raW5nXHVGRjFCQ29kZXggbWluaW1hbFx1RkYwOSJ9LHtpZDoic3RhbmRhcmQiLGxhYmVsOiJ0aGluayIsaGludDoiQ2xhdWRlIENMSTogdGhpbmsgXHhCNyBTREsgYnVkZ2V0IDQwOTYgXHhCNyBDb2RleCBsb3cifSx7aWQ6ImRlZXAiLGxhYmVsOiJ0aGluayBoYXJkIixoaW50OiJDbGF1ZGUgQ0xJOiB0aGluayBoYXJkIFx4QjcgU0RLIGJ1ZGdldCAxNjAwMCBceEI3IENvZGV4IG1lZGl1bSJ9LHtpZDoibWF4IixsYWJlbDoidWx0cmF0aGluayIsaGludDoiQ2xhdWRlIENMSTogdWx0cmF0aGluayBceEI3IFNESyBidWRnZXQgMzE5OTkgXHhCNyBDb2RleCBoaWdoIn1dO2Z1bmN0aW9uIE52KGUpe2Zvcih2YXIgdD0wO3Q8ZG4ubGVuZ3RoO3QrKylpZihkblt0XS5pZD09PWUpcmV0dXJuIGRuW3RdLmxhYmVsO3JldHVybiBkblswXS5sYWJlbH1mdW5jdGlvbiBVbyhlKXtyZXR1cm4gZSYmZS50aGlua2luZ0VmZm9ydD9lLnRoaW5raW5nRWZmb3J0OnIuY2hhdFRoaW5raW5nP3IuY2hhdFRoaW5raW5nOiJvZmYifWZ1bmN0aW9uIElnKGUpe2Zvcih2YXIgdD1lfHwib2ZmIixuPSIiLGk9MDtpPGRuLmxlbmd0aDtpKyspe3ZhciBhPWRuW2ldO24rPSc8b3B0aW9uIHZhbHVlPSInK3AoYS5pZCkrJyInKyhhLmlkPT09dD8iIHNlbGVjdGVkIjoiIikrJyB0aXRsZT0iJytwKGEuaGludCkrJyI+JytwKGEubGFiZWwpKyI8L29wdGlvbj4ifXJldHVybiBufWZ1bmN0aW9uIFZvKGUpe2Zvcih2YXIgdD1lfHwib2ZmIixuPSIiLGk9MDtpPGRuLmxlbmd0aDtpKyspe3ZhciBhPWRuW2ldO24rPSc8b3B0aW9uIHZhbHVlPSInK3AoYS5pZCkrJyInKyhhLmlkPT09dD8iIHNlbGVjdGVkIjoiIikrIj4iK3AoYS5pZCkrIjwvb3B0aW9uPiJ9cmV0dXJuIG59ZnVuY3Rpb24gVGcoZSl7JG4oKX1mdW5jdGlvbiBqdihlKXt2YXIgdD0oZXx8Im9mZiIpLnRyaW0oKTt0IT09Im9mZiImJnQhPT0ic3RhbmRhcmQiJiZ0IT09ImRlZXAiJiZ0IT09Im1heCImJih0PSJvZmYiKSxyLmNoYXRUaGlua2luZz10O3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC10aGlua2luZy1lZmZvcnQiLHQpfWNhdGNoe30kbigpO3ZhciBuPWd0KCk7biYmZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQobi5pZCkrIi90aGlua2luZy1lZmZvcnQiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHt0aGlua2luZ0VmZm9ydDp0fSl9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoaSYmaS5lcnJvcil7ayhpLmVycm9yLCJlcnJvciIpO3JldHVybn1pJiZpLmlkJiYoUShpKSx0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmaygiXHU1REYyXHU1MjA3XHU2MzYyXHU2MDFEXHU4MDAzXHU2REYxXHU1RUE2IFx1MjE5MiAiK052KHQpLCJzdWNjZXNzIikpfSkuY2F0Y2goZnVuY3Rpb24oKXtrKCJcdTUyMDdcdTYzNjJcdTYwMURcdTgwMDNcdTZERjFcdTVFQTZcdTU5MzFcdThEMjUiLCJlcnJvciIpfSl9ZnVuY3Rpb24gS28oZSl7aWYoIWUpcmV0dXJuITE7dmFyIHQ9ZS5tb2RlO3JldHVybiB0PT09Im1hbmFnZWQifHx0PT09ImZ1bGwtYWNjZXNzIn1mdW5jdGlvbiBSdihlKXtpZighZXx8S28oZSkpcmV0dXJuIiI7dmFyIHQ9ISFlLmF1dG9BcHByb3ZlUGVybWlzc2lvbnM7cmV0dXJuIHQ/JzxzcGFuIGlkPSJhdXRvLWFwcHJvdmUtdG9nZ2xlIiBjbGFzcz0iY29tcG9zZXItcGlsbCBjb21wb3Nlci1waWxsLWNoaXAgYXV0by1hcHByb3ZlLWluZGljYXRvciBhY3RpdmUiIHRpdGxlPSJcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTVERjJcdTU0MkZcdTc1MjggXHUyMDE0IFx1NzBCOVx1NTFGQlx1NTE3M1x1OTVFRCI+JytKKCJzaGllbGRDaGVjayIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS43LGNsczoiY29tcG9zZXItcGlsbC1pY29uIn0pKyc8c3BhbiBjbGFzcz0iY29tcG9zZXItcGlsbC1sYWJlbCI+XHU4MUVBXHU1MkE4PC9zcGFuPjwvc3Bhbj4nOic8c3BhbiBpZD0iYXV0by1hcHByb3ZlLXRvZ2dsZSIgY2xhc3M9ImNvbXBvc2VyLXBpbGwgY29tcG9zZXItcGlsbC1jaGlwIGF1dG8tYXBwcm92ZS1pbmRpY2F0b3IiIHRpdGxlPSJcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTVERjJcdTUxNzNcdTk1RUQgXHUyMDE0IFx1NzBCOVx1NTFGQlx1NUYwMFx1NTQyRiI+JytKKCJzaGllbGQiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuNyxjbHM6ImNvbXBvc2VyLXBpbGwtaWNvbiJ9KSsnPHNwYW4gY2xhc3M9ImNvbXBvc2VyLXBpbGwtbGFiZWwiPlx1NjI0Qlx1NTJBODwvc3Bhbj48L3NwYW4+J31mdW5jdGlvbiBKbygpe3JldHVybiBmZXRjaCgiL2FwaS9tb2RlbHMiLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihlKXtyZXR1cm4gZS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlJiZBcnJheS5pc0FycmF5KGUubW9kZWxzKSYmKHIuYXZhaWxhYmxlTW9kZWxzPWUubW9kZWxzLHIuYXZhaWxhYmxlQ29kZXhNb2RlbHM9QXJyYXkuaXNBcnJheShlLmNvZGV4TW9kZWxzKT9lLmNvZGV4TW9kZWxzOltdLFhuKGd0KCkpLERpKGUpKSxlfSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH0pfWZ1bmN0aW9uIFd2KCl7aWYoci5tb2RlbHNSZWZyZXNoaW5nKXJldHVybiBQcm9taXNlLnJlc29sdmUobnVsbCk7ci5tb2RlbHNSZWZyZXNoaW5nPSEwO3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctZGVmYXVsdC1tb2RlbC1yZWZyZXNoIik7cmV0dXJuIGUmJihlLmRpc2FibGVkPSEwLGUudGV4dENvbnRlbnQ9Ilx1NTIzN1x1NjVCMFx1NEUyRC4uLiIpLGZldGNoKCIvYXBpL21vZGVscy9yZWZyZXNoIix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gdC5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0JiZBcnJheS5pc0FycmF5KHQubW9kZWxzKSYmKHIuYXZhaWxhYmxlTW9kZWxzPXQubW9kZWxzLHIuYXZhaWxhYmxlQ29kZXhNb2RlbHM9QXJyYXkuaXNBcnJheSh0LmNvZGV4TW9kZWxzKT90LmNvZGV4TW9kZWxzOltdLFhuKGd0KCkpLERpKHQpLHR5cGVvZiBrPT0iZnVuY3Rpb24iJiZrKCJcdTZBMjFcdTU3OEJcdTUyMTdcdTg4NjhcdTVERjJcdTUyMzdcdTY1QjAiKyh0LmNsYXVkZVZlcnNpb24/Ilx1RkYwOGNsYXVkZSAiK3QuY2xhdWRlVmVyc2lvbisiXHVGRjA5IjoiIiksInN1Y2Nlc3MiKSksdH0pLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJuIHR5cGVvZiBrPT0iZnVuY3Rpb24iJiZrKCJcdTUyMzdcdTY1QjBcdTZBMjFcdTU3OEJcdTUyMTdcdTg4NjhcdTU5MzFcdThEMjUiLCJlcnJvciIpLG51bGx9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ci5tb2RlbHNSZWZyZXNoaW5nPSExLGUmJihlLmRpc2FibGVkPSExLGUudGV4dENvbnRlbnQ9Ilx1NTIzN1x1NjVCMCIpfSl9ZnVuY3Rpb24genYoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZW52LXByZXZpZXctbW9kYWwiKTtpZighZSl7ZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzZWN0aW9uIiksZS5pZD0iZW52LXByZXZpZXctbW9kYWwiLGUuY2xhc3NOYW1lPSJtb2RhbC1iYWNrZHJvcCBoaWRkZW4iLGUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJtb2RhbCBlbnYtcHJldmlldy1tb2RhbCIgcm9sZT0iZGlhbG9nIiBhcmlhLWxhYmVsbGVkYnk9ImVudi1wcmV2aWV3LXRpdGxlIiBhcmlhLW1vZGFsPSJ0cnVlIj48ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIiPjxkaXY+PGgyIGNsYXNzPSJtb2RhbC10aXRsZSIgaWQ9ImVudi1wcmV2aWV3LXRpdGxlIj5cdTVDMDZcdTZDRThcdTUxNjVcdTVCNTBcdThGREJcdTdBMEJcdTc2ODRcdTczQUZcdTU4ODNcdTUzRDhcdTkxQ0Y8L2gyPjxwIGNsYXNzPSJtb2RhbC1zdWJ0aXRsZSIgaWQ9ImVudi1wcmV2aWV3LXN1YnRpdGxlIj5cdThGRDlcdTRFOUJcdTUzRDhcdTkxQ0ZcdTRGMUFcdTg4QUJcdTRGMjBcdTdFRDkgY2xhdWRlIC8gY29kZXhcdUZGMDhQVFkgXHU0RTBFXHU3RUQzXHU2Nzg0XHU1MzE2XHU4RkQwXHU4ODRDXHU1NjY4XHU0RTAwXHU4MUY0XHVGRjA5XHUzMDAyPC9wPjwvZGl2PjxidXR0b24gaWQ9ImVudi1wcmV2aWV3LWNsb3NlIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4taWNvbiBtb2RhbC1jbG9zZS1idG4iIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU1MTczXHU5NUVEIj48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxsaW5lIHgxPSI2IiB5MT0iNiIgeDI9IjE4IiB5Mj0iMTgiLz48bGluZSB4MT0iMTgiIHkxPSI2IiB4Mj0iNiIgeTI9IjE4Ii8+PC9zdmc+PC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0ibW9kYWwtYm9keSBlbnYtcHJldmlldy1ib2R5Ij48ZGl2IGNsYXNzPSJlbnYtcHJldmlldy10b29sYmFyIj48ZGl2IGNsYXNzPSJlbnYtcHJldmlldy1tZXRhIiBpZD0iZW52LXByZXZpZXctbWV0YSI+XHU1MkEwXHU4RjdEXHU0RTJEXHUyMDI2PC9kaXY+PGRpdiBjbGFzcz0iZW52LXByZXZpZXctY29udHJvbHMiPjxpbnB1dCBpZD0iZW52LXByZXZpZXctc2VhcmNoIiBjbGFzcz0iZW52LXByZXZpZXctc2VhcmNoIiB0eXBlPSJzZWFyY2giIHBsYWNlaG9sZGVyPSJcdTY0MUNcdTdEMjJcdTUzRDhcdTkxQ0ZcdTU0MERcdTIwMjYiIC8+PGxhYmVsIGNsYXNzPSJlbnYtcHJldmlldy1yZXZlYWwiPjxpbnB1dCBpZD0iZW52LXByZXZpZXctcmV2ZWFsLXRvZ2dsZSIgdHlwZT0iY2hlY2tib3giIC8+PHNwYW4+XHU2NjNFXHU3OTNBXHU2NTRGXHU2MTFGXHU1MDNDPC9zcGFuPjwvbGFiZWw+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZW52LXByZXZpZXctbGlzdCIgaWQ9ImVudi1wcmV2aWV3LWxpc3QiIHRhYmluZGV4PSIwIj48ZGl2IGNsYXNzPSJlbnYtcHJldmlldy1sb2FkaW5nIj5cdTUyQTBcdThGN0RcdTRFMkRcdTIwMjY8L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1mb290ZXIgZW52LXByZXZpZXctZm9vdGVyIj48c3BhbiBjbGFzcz0iZW52LXByZXZpZXctaGludCI+XHU2NTRGXHU2MTFGXHU1QjU3XHU2QkI1XHVGRjA4XHU1NDJCIEtFWS9UT0tFTi9TRUNSRVQgXHU3QjQ5XHVGRjA5XHU5RUQ4XHU4QkE0XHU2M0E5XHU3ODAxXHVGRjBDXHU1M0VGXHU1MkZFXHU5MDA5XHUzMDBDXHU2NjNFXHU3OTNBXHU2NTRGXHU2MTFGXHU1MDNDXHUzMDBEXHU0RTM0XHU2NUY2XHU4RkQ4XHU1MzlGXHUzMDAyPC9zcGFuPjxidXR0b24gaWQ9ImVudi1wcmV2aWV3LWNsb3NlLTIiIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20iIHR5cGU9ImJ1dHRvbiI+XHU1MTczXHU5NUVEPC9idXR0b24+PC9kaXY+PC9kaXY+Jyxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGUpLGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKG8pe28udGFyZ2V0PT09ZSYmVWEoKX0pO3ZhciB0PWUucXVlcnlTZWxlY3RvcigiI2Vudi1wcmV2aWV3LWNsb3NlIik7dCYmdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsVWEpO3ZhciBuPWUucXVlcnlTZWxlY3RvcigiI2Vudi1wcmV2aWV3LWNsb3NlLTIiKTtuJiZuLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixVYSk7dmFyIGE9ZS5xdWVyeVNlbGVjdG9yKCIjZW52LXByZXZpZXctc2VhcmNoIik7YSYmYS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsZnVuY3Rpb24oKXtZbygpfSk7dmFyIGk9ZS5xdWVyeVNlbGVjdG9yKCIjZW52LXByZXZpZXctcmV2ZWFsLXRvZ2dsZSIpO2kmJmkuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe0dvKGkuY2hlY2tlZCl9KX1lLmNsYXNzTGlzdC5yZW1vdmUoImNsb3NpbmciKSxlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3ZhciBpPWUucXVlcnlTZWxlY3RvcigiI2Vudi1wcmV2aWV3LXJldmVhbC10b2dnbGUiKTtpJiYoaS5jaGVja2VkPSExKTt2YXIgYT1lLnF1ZXJ5U2VsZWN0b3IoIiNlbnYtcHJldmlldy1zZWFyY2giKTthJiYoYS52YWx1ZT0iIiksR28oITEpfWZ1bmN0aW9uIFVhKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImVudi1wcmV2aWV3LW1vZGFsIik7ZSYmWWEoZSl9ZnVuY3Rpb24gR28oZSl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImVudi1wcmV2aWV3LWxpc3QiKSxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJlbnYtcHJldmlldy1tZXRhIik7dCYmKHQuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJlbnYtcHJldmlldy1sb2FkaW5nIj5cdTUyQTBcdThGN0RcdTRFMkRcdTIwMjY8L2Rpdj4nKSxuJiYobi50ZXh0Q29udGVudD0iXHU1MkEwXHU4RjdEXHU0RTJEXHUyMDI2Iik7dmFyIGk9Ii9hcGkvc2V0dGluZ3MvZW52LXByZXZpZXciKyhlPyI/cmV2ZWFsPTEiOiIiKTtmZXRjaChpLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihhKXtyZXR1cm4gYS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGEpe2lmKCFhfHwhQXJyYXkuaXNBcnJheShhLmVudHJpZXMpKXt0JiYodC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LWVtcHR5Ij5cdThCRkJcdTUzRDZcdTU5MzFcdThEMjVcdTMwMDI8L2Rpdj4nKSxuJiYobi50ZXh0Q29udGVudD0iXHU4QkZCXHU1M0Q2XHU1OTMxXHU4RDI1Iik7cmV0dXJufWlmKHIuX2VudlByZXZpZXc9YSxuKXt2YXIgdT1hLmluaGVyaXRFbnY/Ilx1N0VFN1x1NjI3Rlx1NzIzNlx1OEZEQlx1N0EwQiI6Ilx1NjcwMFx1NUMwRlx1NzY3RFx1NTQwRFx1NTM1NSI7bi5pbm5lckhUTUw9JzxzcGFuIGNsYXNzPSJlbnYtcHJldmlldy1waWxsICcrKGEuaW5oZXJpdEVudj8iaXMtaW5oZXJpdCI6ImlzLW1pbmltYWwiKSsnIj4nK3UrJzwvc3Bhbj48c3BhbiBjbGFzcz0iZW52LXByZXZpZXctY291bnQiPlx1NTE3MSAnK2EudG90YWwrIiBcdTk4Nzk8L3NwYW4+In1ZbygpfSkuY2F0Y2goZnVuY3Rpb24oKXt0JiYodC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LWVtcHR5Ij5cdThCRkJcdTUzRDZcdTU5MzFcdThEMjVcdUZGMENcdThCRjdcdTdBMERcdTU0MEVcdTkxQ0RcdThCRDVcdTMwMDI8L2Rpdj4nKSxuJiYobi50ZXh0Q29udGVudD0iXHU4QkZCXHU1M0Q2XHU1OTMxXHU4RDI1Iil9KX1mdW5jdGlvbiBZbygpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJlbnYtcHJldmlldy1saXN0Iik7aWYoZSl7dmFyIHQ9ci5fZW52UHJldmlldztpZighdHx8IUFycmF5LmlzQXJyYXkodC5lbnRyaWVzKSl7ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LWVtcHR5Ij5cdTVDMUFcdTY3MkFcdTUyQTBcdThGN0RcdTMwMDI8L2Rpdj4nO3JldHVybn1mb3IodmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImVudi1wcmV2aWV3LXNlYXJjaCIpLGk9KG4mJm4udmFsdWV8fCIiKS50cmltKCkudG9Mb3dlckNhc2UoKSxhPSIiLHU9MCxzPTA7czx0LmVudHJpZXMubGVuZ3RoO3MrKyl7dmFyIG89dC5lbnRyaWVzW3NdO2lmKCEoaSYmby5uYW1lLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihpKT09PS0xKSl7dSsrO3ZhciBsPXR5cGVvZiBvLnZhbHVlPT0ic3RyaW5nIiYmby52YWx1ZS5jaGFyQXQoMCk9PT0iPCImJm8udmFsdWUuY2hhckF0KG8udmFsdWUubGVuZ3RoLTEpPT09Ij4iO2ErPSc8ZGl2IGNsYXNzPSJlbnYtcHJldmlldy1yb3cnKyhvLnNlbnNpdGl2ZT8iIGlzLXNlbnNpdGl2ZSI6IiIpKyciPjxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LW5hbWUiPicrcChvLm5hbWUpKyhvLnNlbnNpdGl2ZT8nPHNwYW4gY2xhc3M9ImVudi1wcmV2aWV3LWJhZGdlIiB0aXRsZT0iXHU4OEFCXHU4QkM2XHU1MjJCXHU0RTNBXHU2NTRGXHU2MTFGXHU1QjU3XHU2QkI1Ij5cdTY1NEZcdTYxMUY8L3NwYW4+JzoiIikrKGw/JzxzcGFuIGNsYXNzPSJlbnYtcHJldmlldy1iYWRnZSBlbnYtcHJldmlldy1iYWRnZS1ydW50aW1lIiB0aXRsZT0iXHU2MzA5XHU0RjFBXHU4QkREXHU1MkE4XHU2MDAxXHU2Q0U4XHU1MTY1Ij5cdThGRDBcdTg4NENcdTY1RjY8L3NwYW4+JzoiIikrJzwvZGl2PjxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LXZhbHVlJysobD8iIGlzLXJ1bnRpbWUiOiIiKSsnIiB0aXRsZT0iJytwKFN0cmluZyhvLnZhbHVlKSkrJyI+JytwKFN0cmluZyhvLnZhbHVlKSkrJzwvZGl2PjxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LWxlbiI+JytvLmxlbmd0aCsiIFx1NUI1N1x1N0IyNjwvZGl2PjwvZGl2PiJ9fXU9PT0wJiYoYT0nPGRpdiBjbGFzcz0iZW52LXByZXZpZXctZW1wdHkiPlx1NkNBMVx1NjcwOVx1NTMzOVx1OTE0RFx1NzY4NFx1NTNEOFx1OTFDRlx1MzAwMjwvZGl2PicpLGUuaW5uZXJIVE1MPWF9fWZ1bmN0aW9uIERpKGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctZGVmYXVsdC1tb2RlbCIpO2lmKHQpe3ZhciBuPXQudmFsdWUsaT1ufHxyLmNvbmZpZ0RlZmF1bHRNb2RlbHx8ci5jb25maWcmJnIuY29uZmlnLmRlZmF1bHRNb2RlbHx8IiI7dC5pbm5lckhUTUw9X3YoaSx7cHJvdmlkZXI6ImNsYXVkZSJ9KSx0LnZhbHVlPWk7dmFyIGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1kZWZhdWx0LW1vZGVsLXZlcnNpb24iKTthJiZlJiYoYS50ZXh0Q29udGVudD1lLmNsYXVkZVZlcnNpb24/Ilx1NURGMlx1NjhDMFx1NkQ0Qlx1NTIzMCBjbGF1ZGUgIitlLmNsYXVkZVZlcnNpb246Ilx1NjVCMFx1NUVGQVx1NEYxQVx1OEJERFx1NjVGNlx1OUVEOFx1OEJBNFx1NEY3Rlx1NzUyOFx1OEJFNVx1NkEyMVx1NTc4Qlx1MzAwMiIpfX1mdW5jdGlvbiBndCgpe2lmKCFyLnNlbGVjdGVkSWQpcmV0dXJuIG51bGw7Zm9yKHZhciBlPTA7ZTxyLnNlc3Npb25zLmxlbmd0aDtlKyspaWYoci5zZXNzaW9uc1tlXS5pZD09PXIuc2VsZWN0ZWRJZClyZXR1cm4gci5zZXNzaW9uc1tlXTtyZXR1cm4gbnVsbH1mdW5jdGlvbiBVdihlKXt2YXIgdD0oZXx8IiIpLnRyaW0oKTtyLmNoYXRNb2RlbD10O3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1jaGF0LW1vZGVsIix0KX1jYXRjaHt9JG4oKTt2YXIgbj1ndCgpO24mJmZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KG4uaWQpKyIvbW9kZWwiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHttb2RlbDp0fHxudWxsfSl9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoaSYmaS5lcnJvcil7ayhpLmVycm9yLCJlcnJvciIpO3JldHVybn1pZihpJiZpLmlkJiYoUShpKSx0eXBlb2Ygaz09ImZ1bmN0aW9uIikpe3ZhciBhPXR8fCJcdTlFRDhcdThCQTQiLHU9bi5wcm92aWRlcj09PSJjb2RleCI/Ilx1RkYwOFx1NEUwQlx1NkIyMVx1NUJGOVx1OEJERFx1NzUxRlx1NjU0OFx1RkYwOSI6IiI7aygiXHU1REYyXHU1MjA3XHU2MzYyXHU2QTIxXHU1NzhCIFx1MjE5MiAiK2ErdSwic3VjY2VzcyIpfX0pLmNhdGNoKGZ1bmN0aW9uKCl7aygiXHU1MjA3XHU2MzYyXHU2QTIxXHU1NzhCXHU1OTMxXHU4RDI1IiwiZXJyb3IiKX0pfWZ1bmN0aW9uIFZ2KGUpe3ZhciB0PXh0KG10KCksKGV8fCJkZWZhdWx0IikudHJpbSgpKTtyLmNoYXRNb2RlPXQsJG4oKTt2YXIgbj1ndCgpO2lmKCFufHwhbi5pZHx8bi5zZXNzaW9uS2luZCE9PSJzdHJ1Y3R1cmVkIil7ayYmaygiXHU2NUIwXHU0RjFBXHU4QkREXHU2QTIxXHU1RjBGXHVGRjFBIit0LCJpbmZvIik7cmV0dXJufWZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KG4uaWQpKyIvbW9kZSIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe21vZGU6dH0pfSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGkpe2lmKGkmJmkuZXJyb3Ipe2soaS5lcnJvciwiZXJyb3IiKTtyZXR1cm59aWYoaSYmaS5pZCYmKFEoaSksdHlwZW9mIGs9PSJmdW5jdGlvbiIpKXt2YXIgYT1uLnByb3ZpZGVyPT09ImNvZGV4Ij8iXHVGRjA4Q29kZXggXHU1NkZBXHU1QjlBXHU1MTY4XHU2NzQzXHU5NjUwXHVGRjA5IjoiIjtrKCJcdTVERjJcdTUyMDdcdTYzNjJcdTZBMjFcdTVGMEYgXHUyMTkyICIrdCthLCJzdWNjZXNzIil9fSkuY2F0Y2goZnVuY3Rpb24oKXtrKCJcdTUyMDdcdTYzNjJcdTZBMjFcdTVGMEZcdTU5MzFcdThEMjUiLCJlcnJvciIpfSl9ZnVuY3Rpb24gUW8oZSx0LG4saSl7dmFyIGE9ci5zZXNzaW9uVG9vbD09PSJjb2RleCI/ImNvZGV4IjoiY2xhdWRlIix1PXIuY2hhdE1vZGVsfHxyLmNvbmZpZyYmci5jb25maWcuZGVmYXVsdE1vZGVsfHwiIixzPXIuY2hhdFRoaW5raW5nfHwib2ZmIixvPXtjd2Q6dHx8WGUoKSxtb2RlOm58fHIuY2hhdE1vZGV8fHIuY29uZmlnJiZyLmNvbmZpZy5kZWZhdWx0TW9kZXx8ImRlZmF1bHQiLHByb3ZpZGVyOmEscnVubmVyOmE9PT0iY29kZXgiPyJjb2RleC1jbGktZXhlYyI6ci5jb25maWcmJnIuY29uZmlnLnN0cnVjdHVyZWRSdW5uZXI9PT0ic2RrIj8iY2xhdWRlLXNkayI6ci5zdHJ1Y3R1cmVkUnVubmVyfHwiY2xhdWRlLWNsaS1wcmludCIscHJvbXB0OmV8fHZvaWQgMCx3b3JrdHJlZUVuYWJsZWQ6aT09PSEwLG1vZGVsOnV8fHZvaWQgMCx0aGlua2luZ0VmZm9ydDpzfTtyZXR1cm4gZmV0Y2goIi9hcGkvc3RydWN0dXJlZC1zZXNzaW9ucyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkobyl9KS50aGVuKGZ1bmN0aW9uKGwpe3JldHVybiBsLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obCl7aWYobC5lcnJvcil0aHJvdyBuZXcgRXJyb3IobC5lcnJvcik7cmV0dXJuIHIuc2VsZWN0ZWRJZD1sLmlkLHdlKCksci5kcmFmdHNbbC5pZF09IiIsa3QoKSxRKGwpLG1lKCksQ3IobC5pZCksVG4obC5pZCkscG4obC5pZCkudGhlbihmdW5jdGlvbigpe3JldHVybiBsfSl9KX1mdW5jdGlvbiBraSgpe3ZhciBlPSEhci5zZWxlY3RlZElkLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpLG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXQtb3V0cHV0IiksaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdCIpLGE9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGwpe3JldHVybiBsLmlkPT09ci5zZWxlY3RlZElkfSksdT1hZShhKSxzPWUmJiF1JiZyLmN1cnJlbnRWaWV3PT09InRlcm1pbmFsIixvPWUmJih1fHxyLmN1cnJlbnRWaWV3IT09InRlcm1pbmFsIik7dT9yLmN1cnJlbnRWaWV3PSJjaGF0IjplfHwoci5jdXJyZW50Vmlldz0idGVybWluYWwiKSx0JiYodC5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLHMpLHQuY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIiwhcykpLG4mJihuLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsbyksbi5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLCFvKSksaSYmaS5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLGUpLG4mJm8mJklhKG4pLGFyKCksUWUoKSxCcigpfWZ1bmN0aW9uIFNyKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1vZGUtZGVzY3JpcHRpb24iKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLWtpbmQtZGVzY3JpcHRpb24iKSxuPXIuc2Vzc2lvblRvb2x8fCJjbGF1ZGUiLGk9ci5zZXNzaW9uQ3JlYXRlS2luZHx8InN0cnVjdHVyZWQiO3Iuc2Vzc2lvblRvb2w9bixyLm1vZGVWYWx1ZT14dChuLHIubW9kZVZhbHVlfHxyLmNoYXRNb2RlfHwiZGVmYXVsdCIpO3ZhciBhPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIiNwcm92aWRlci1jYXJkcyAucHJvdmlkZXItY2FyZCIpO2EubGVuZ3RoJiZhLmZvckVhY2goZnVuY3Rpb24obyl7dmFyIGw9by5nZXRBdHRyaWJ1dGUoImRhdGEtcHJvdmlkZXIiKTtvLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsbD09PW4pLG8uY2xhc3NMaXN0LnJlbW92ZSgiZGlzYWJsZWQiKX0pO3ZhciB1PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIiNzZXNzaW9uLWtpbmQtY2FyZHMgLnNlc3Npb24ta2luZC1jYXJkIik7dS5sZW5ndGgmJnUuZm9yRWFjaChmdW5jdGlvbihvKXt2YXIgbD1vLmdldEF0dHJpYnV0ZSgiZGF0YS1zZXNzaW9uLWtpbmQiKSxjPSExO28uY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIixsPT09aSksby5jbGFzc0xpc3QudG9nZ2xlKCJkaXNhYmxlZCIsYyl9KTt2YXIgcz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIjbW9kZS1jYXJkcyAubW9kZS1jYXJkIik7cy5sZW5ndGgmJnMuZm9yRWFjaChmdW5jdGlvbihvKXtvLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsby5nZXRBdHRyaWJ1dGUoImRhdGEtbW9kZSIpPT09ci5tb2RlVmFsdWUpfSksdCYmKHQudGV4dENvbnRlbnQ9VnUoaSkpLGUmJihlLnRleHRDb250ZW50PUhvKG4sci5tb2RlVmFsdWUpKX1mdW5jdGlvbiBLdihlLHQsbixpKXt2YXIgYT1ufHwwLHU9dHlwZW9mIGk9PSJudW1iZXIiP2k6TWF0aC5tYXgoYSt0Lmxlbmd0aCx0Lmxlbmd0aCkscz1lJiZBcnJheS5pc0FycmF5KGUubWVzc2FnZXMpP2UubWVzc2FnZXM6W10sbz1lJiZ0eXBlb2YgZS5tZXNzYWdlT2Zmc2V0PT0ibnVtYmVyIj9lLm1lc3NhZ2VPZmZzZXQ6MDtpZih0Lmxlbmd0aD09PTAmJnMubGVuZ3RoPjAmJnU9PT0wKXJldHVybnttZXNzYWdlczpzLG1lc3NhZ2VPZmZzZXQ6byxtZXNzYWdlVG90YWw6ZSYmZS5tZXNzYWdlVG90YWx8fHMubGVuZ3RofTtpZihzLmxlbmd0aD09PTApcmV0dXJue21lc3NhZ2VzOnQsbWVzc2FnZU9mZnNldDphLG1lc3NhZ2VUb3RhbDp1fTtpZihvPD1hKXt2YXIgbD1NYXRoLm1pbihNYXRoLm1heChhLW8sMCkscy5sZW5ndGgpLGM9cy5zbGljZSgwLGwpLmNvbmNhdCh0KTtyZXR1cm57bWVzc2FnZXM6YyxtZXNzYWdlT2Zmc2V0Om8sbWVzc2FnZVRvdGFsOk1hdGgubWF4KHUsbytjLmxlbmd0aCl9fXJldHVybnttZXNzYWdlczp0LG1lc3NhZ2VPZmZzZXQ6YSxtZXNzYWdlVG90YWw6dX19ZnVuY3Rpb24gUShlKXtpZighKCFlfHwhZS5pZCkpe3ZhciB0PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihvKXtyZXR1cm4gby5pZD09PWUuaWR9KXx8bnVsbCxuPWpsKGUsdCk7aWYoQXJyYXkuaXNBcnJheShuLm1lc3NhZ2VzKSYmdHlwZW9mIG4ubWVzc2FnZU9mZnNldD09Im51bWJlciIpe3ZhciBpPUt2KHQsbi5tZXNzYWdlcyxuLm1lc3NhZ2VPZmZzZXQsbi5tZXNzYWdlVG90YWwpO24ubWVzc2FnZXM9aS5tZXNzYWdlcyxuLm1lc3NhZ2VPZmZzZXQ9aS5tZXNzYWdlT2Zmc2V0LG4ubWVzc2FnZVRvdGFsPWkubWVzc2FnZVRvdGFsfXZhciBhPSExLHU9bnVsbDtyLnNlc3Npb25zPXIuc2Vzc2lvbnMubWFwKGZ1bmN0aW9uKG8pe3JldHVybiBvLmlkIT09bi5pZD9vOih1PW8sYT0hMCxPYmplY3QuYXNzaWduKHt9LG8sbikpfSksYXx8ci5zZXNzaW9ucy51bnNoaWZ0KG4pO3ZhciBzPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihvKXtyZXR1cm4gby5pZD09PW4uaWR9KXx8bjtzJiZBcnJheS5pc0FycmF5KHMucXVldWVkTWVzc2FnZXMpJiZuLmlkPT09ci5zZWxlY3RlZElkJiYoenIocyksZnUoKSxzbigpKSxuLmlkPT09ci5zZWxlY3RlZElkJiYoQmEoKSxZdCgpKSxuLnN0YXR1cyYmbi5zdGF0dXMhPT0icnVubmluZyImJnIuY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPjAmJnNldFRpbWVvdXQoY2ksMCl9fWZ1bmN0aW9uIFRuKGUpeyFlfHwhci53c3x8ci53cy5yZWFkeVN0YXRlIT09V2ViU29ja2V0Lk9QRU58fHIud3Muc2VuZChKU09OLnN0cmluZ2lmeSh7dHlwZToic3Vic2NyaWJlIixzZXNzaW9uSWQ6ZX0pKX1mdW5jdGlvbiBKdihlLHQpe2lmKCFlKXJldHVybiB0O3ZhciBuPU9iamVjdC5hc3NpZ24oe30sZSx0KSxpPWUub3V0cHV0fHwiIixhPXQub3V0cHV0fHwiIix1PWkubGVuZ3RoPmEubGVuZ3RoLHM9ZS5zdHJ1Y3R1cmVkU3RhdGV8fG51bGwsbz10LnN0cnVjdHVyZWRTdGF0ZXx8bnVsbCxsPWUuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCJ8fHQuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCIsYz0hIShlLm1lc3NhZ2VzJiZlLm1lc3NhZ2VzLmxlbmd0aCYmKGZ1bmN0aW9uKCl7dmFyIG09ZS5tZXNzYWdlc1tlLm1lc3NhZ2VzLmxlbmd0aC0xXTtyZXR1cm4gbSYmbS5yb2xlPT09ImFzc2lzdGFudCImJkFycmF5LmlzQXJyYXkobS5jb250ZW50KSYmbS5jb250ZW50LnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGImJmIuX19wcm9jZXNzaW5nfSl9KSgpKSxmPUFycmF5LmlzQXJyYXkoZS5tZXNzYWdlcyk/bD9zcihlLm1lc3NhZ2VzKTplLm1lc3NhZ2VzOltdLGQ9QXJyYXkuaXNBcnJheSh0Lm1lc3NhZ2VzKT9sP3NyKHQubWVzc2FnZXMpOnQubWVzc2FnZXM6W10sdj1kLmxlbmd0aD4wJiYoZnVuY3Rpb24oKXt2YXIgbT1kW2QubGVuZ3RoLTFdO3JldHVybiBtJiZtLnJvbGU9PT0iYXNzaXN0YW50IiYmQXJyYXkuaXNBcnJheShtLmNvbnRlbnQpJiYhbS5jb250ZW50LnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGImJmIuX19wcm9jZXNzaW5nfSl9KSgpLGc9ZS5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkIiYmISFzJiZzLmluRmxpZ2h0PT09ITAmJighb3x8by5pbkZsaWdodCE9PSEwKSYmYyYmISFzLmFjdGl2ZVJlcXVlc3RJZCYmISFvJiYhIW8uYWN0aXZlUmVxdWVzdElkJiZvLmFjdGl2ZVJlcXVlc3RJZD09PXMuYWN0aXZlUmVxdWVzdElkJiYhdixoPWYubGVuZ3RoPmQubGVuZ3RofHxmLmxlbmd0aD4wJiZkLmxlbmd0aD4wJiZKU09OLnN0cmluZ2lmeShmW2YubGVuZ3RoLTFdKSE9PUpTT04uc3RyaW5naWZ5KGRbZC5sZW5ndGgtMV0pJiZKU09OLnN0cmluZ2lmeShmKS5sZW5ndGg+SlNPTi5zdHJpbmdpZnkoZCkubGVuZ3RoO3JldHVybiB1JiYobi5vdXRwdXQ9aSksZyYmKG4uc3RhdHVzPWUuc3RhdHVzfHxuLnN0YXR1cyxuLnN0cnVjdHVyZWRTdGF0ZT1PYmplY3QuYXNzaWduKHt9LG98fHt9LHMse2luRmxpZ2h0OiEwfSksbi5tZXNzYWdlcz1lLm1lc3NhZ2VzKSxoJiYobi5tZXNzYWdlcz1mKSxlLmlkPT09ci5zZWxlY3RlZElkJiYoZS5wZXJtaXNzaW9uQmxvY2tlZCYmdC5wZXJtaXNzaW9uQmxvY2tlZD09PSExfHxlLnBlcm1pc3Npb25CbG9ja2VkJiYhdC5wZXJtaXNzaW9uQmxvY2tlZCYmKG4ucGVybWlzc2lvbkJsb2NrZWQ9ITApLGUucGVuZGluZ0VzY2FsYXRpb24mJiF0LnBlbmRpbmdFc2NhbGF0aW9uJiZ0LnBlcm1pc3Npb25CbG9ja2VkIT09ITEmJihuLnBlbmRpbmdFc2NhbGF0aW9uPWUucGVuZGluZ0VzY2FsYXRpb24pLGUubWVzc2FnZXMmJmUubWVzc2FnZXMubGVuZ3RoPjAmJighdC5tZXNzYWdlc3x8dC5tZXNzYWdlcy5sZW5ndGg9PT0wKSYmKG4ubWVzc2FnZXM9ZS5tZXNzYWdlcykpLG59ZnVuY3Rpb24gWmUoZSx0LG4pe2lmKGUmJmUubWVzc2FnZXMmJmUubWVzc2FnZXMubGVuZ3RoPjApcmV0dXJuIGUubWVzc2FnZXM7aWYoZSYmZS5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkIilyZXR1cm5bXTtpZighbilyZXR1cm5bXTt2YXIgaT10eXBlb2YgdD09InN0cmluZyI/dDplJiZlLm91dHB1dHx8IiI7cmV0dXJuIGk/WnAoaSxlJiZlLmNvbW1hbmQpOltdfWZ1bmN0aW9uIEd2KGUpe2lmKCFlfHwhZS5sZW5ndGgpcmV0dXJuIG51bGw7aWYoci5zZWxlY3RlZElkKXt2YXIgdD1lLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1yLnNlbGVjdGVkSWR9KTtyZXR1cm4gdD90LmlkOm51bGx9dmFyIG49ZS5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLnN0YXR1cz09PSJydW5uaW5nIn0pO2lmKG4pcmV0dXJuIG4uaWQ7dmFyIGk9ZS5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiFhLmFyY2hpdmVkfSk7cmV0dXJuIGk/aS5pZDplWzBdLmlkfWZ1bmN0aW9uIGZuKGUpe3ZhciB0PWV8fHt9O3JldHVybiBmZXRjaCgiL2FwaS9zZXNzaW9ucyIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKG4pe2lmKG4uc3RhdHVzPT09NDAxKXtQbygpO3JldHVybn1yZXR1cm4gbi5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKG4pe3ZhciBpPW58fFtdLGE9bmV3IFNldChpLm1hcChmdW5jdGlvbihkKXtyZXR1cm4gZC5pZH0pKTtPYmplY3Qua2V5cyhyLmRyYWZ0cykuZm9yRWFjaChmdW5jdGlvbihkKXthLmhhcyhkKXx8ZGVsZXRlIHIuZHJhZnRzW2RdfSksci5zZXNzaW9ucz1pLm1hcChmdW5jdGlvbihkKXt2YXIgdj1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oZyl7cmV0dXJuIGcuaWQ9PT1kLmlkfSk7cmV0dXJuIEp2KHYsZCl9KTt2YXIgdT1HdihyLnNlc3Npb25zKTtpZih1IT09dm9pZCAwJiYoci5zZWxlY3RlZElkPXUpLHZ1KCksc24oKSxyLmJvb3RzdHJhcHBpbmc9ITEsd2UoKSxyLm1vZGFsT3BlbiltZSgpO2Vsc2V7dmFyIHM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb25zLWxpc3QiKSxvPVlpKCk7aWYocyYmcy5pbm5lckhUTUw9PT1vKXt2YXIgbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbi1jb3VudCIpO2wmJihsLnRleHRDb250ZW50PVN0cmluZyhyLnNlc3Npb25zLmxlbmd0aCkpfWVsc2V7cyYmKHMuaW5uZXJIVE1MPW8pO3ZhciBsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLWNvdW50Iik7bCYmKGwudGV4dENvbnRlbnQ9U3RyaW5nKHIuc2Vzc2lvbnMubGVuZ3RoKSl9fUlyKCksci5zZWxlY3RlZElkJiZyLmdpdFN0YXR1c1Nlc3Npb25JZCE9PXIuc2VsZWN0ZWRJZCYmd24oci5zZWxlY3RlZElkKTt2YXIgYz1Qcm9taXNlLnJlc29sdmUoKTtpZighdC5za2lwU2VsZWN0ZWRPdXRwdXRSZWxvYWQmJnIuc2VsZWN0ZWRJZCljPXBuKHIuc2VsZWN0ZWRJZCk7ZWxzZSBpZihyLnNlbGVjdGVkSWQpe3ZhciBmPXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihkKXtyZXR1cm4gZC5pZD09PXIuc2VsZWN0ZWRJZH0pO2FlKGYpJiYoa3Qoe3ByZXNlcnZlU3RpY2tTdGF0ZTohMH0pLHBvKCEwKSl9cmV0dXJuIGMudGhlbihmdW5jdGlvbigpe3IuY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPjAmJmNpKCksQXQoKSxwYSgpfSl9KS5jYXRjaChmdW5jdGlvbihuKXt2YXIgaT1uJiZuLm1lc3NhZ2V8fCIiLGE9aT09PSJGYWlsZWQgdG8gZmV0Y2gifHxpPT09Ik5ldHdvcmtFcnJvciB3aGVuIGF0dGVtcHRpbmcgdG8gZmV0Y2ggcmVzb3VyY2UuInx8aT09PSJMb2FkIGZhaWxlZCJ8fC9hYm9ydGVkfGFib3J0ZXJyb3J8bmV0d29ya2Vycm9yfGZhaWxlZCB0byBmZXRjaC9pLnRlc3QoaSk7YXx8Y29uc29sZS5lcnJvcigiW3dhbmRdIGxvYWRTZXNzaW9ucyBmYWlsZWQ6IixuKX0pfXZhciBWYT1udWxsO2Z1bmN0aW9uIEthKCl7VmF8fChWYT1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7VmE9bnVsbCxtZSgpfSwyMDApKX1mdW5jdGlvbiBtZSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy1saXN0IiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbi1jb3VudCIpO2UmJihlLmlubmVySFRNTD1ZaSgpKSx0JiYodC50ZXh0Q29udGVudD1TdHJpbmcoci5zZXNzaW9ucy5sZW5ndGgpKSx0eXBlb2YgWnQ9PSJmdW5jdGlvbiImJlp0KCksSXIoKSxyLmNyb3NzU2Vzc2lvblF1ZXVlLmxlbmd0aD4wJiZBdCgpfWZ1bmN0aW9uIElyKCl7dmFyIGU9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGgpe3JldHVybiBoLmlkPT09ci5zZWxlY3RlZElkfSk7ZXx8KEluKCExKSxDYSgpLFhzKCkpO3ZhciB0PWU/UW4oZS5jb21tYW5kKToiV2FuZCIsbj1lP2NyKGUpOiJcdTVGMDBcdTU5Q0JcdTVCRjlcdThCREQiLGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnNlc3Npb24tc3VtbWFyeS12YWx1ZSIpLGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlcm1pbmFsLXRpdGxlIiksdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVybWluYWwtaW5mbyIpLHM9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnRvcGJhci1zZXNzaW9uLXRpdGxlLCAudG9wYmFyLXRhZ2xpbmUiKTtzJiZlJiYocy5jbGFzc0xpc3QucmVtb3ZlKCJ0b3BiYXItdGFnbGluZSIpLHMuY2xhc3NMaXN0LmFkZCgidG9wYmFyLXNlc3Npb24tdGl0bGUiKSxzLnRleHRDb250ZW50PWUudGl0bGV8fFFuKGUuY29tbWFuZCkscy5zZXRBdHRyaWJ1dGUoInRpdGxlIixlLmRlc2NyaXB0aW9ufHxlLmNvbW1hbmR8fCIiKSk7dmFyIG89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQiKSxsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKSxjPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjaGF0LW91dHB1dCIpLGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0b3AtYnV0dG9uIik7aSYmaS50ZXh0Q29udGVudCE9PXQmJihpLnRleHRDb250ZW50PXQpLGEmJmEudGV4dENvbnRlbnQhPT10JiYoYS50ZXh0Q29udGVudD10KSx1JiYodS50ZXh0Q29udGVudD1lP24rIiBceEI3ICIrcXYoZSk6bik7dmFyIGQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb24ta2luZC1kaXNwbGF5Iiksdj1lP1B2KGUpOiJcdTdFQzhcdTdBRUYiO2QmJmQudGV4dENvbnRlbnQhPT12JiYoZC50ZXh0Q29udGVudD12KSx1cygpLCFyLnRlcm1pbmFsJiZsJiZlJiZLbigpLHIudGVybWluYWwmJmwmJiFsLmNvbnRhaW5zKHIudGVybWluYWwuZWxlbWVudCkmJihncigpLEtuKCkpLGV8fChyLnRlcm1pbmFsU2Vzc2lvbklkPW51bGwsci50ZXJtaW5hbE91dHB1dD0iIixyLnRlcm1pbmFsT3V0cHV0TWFya2VyPTApLHIudGVybWluYWwmJmUmJnIuY3VycmVudFZpZXc9PT0idGVybWluYWwiJiZidCgidmlldyIpO3ZhciBnPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1wYW5lbCIpO2U/KG8mJm8uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksbCYmbC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxjJiZjLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGcmJmcuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpOihvJiZvLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGwmJmwuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksYyYmYy5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxmJiZmLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGcmJmcuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIikpLEJpKCksWG4oZ3QoKSksa2koKSxCYSgpfWZ1bmN0aW9uIHBuKGUpe3IuY2hhdFJlbmRlclRpbWVyJiYoY2xlYXJUaW1lb3V0KHIuY2hhdFJlbmRlclRpbWVyKSxyLmNoYXRSZW5kZXJUaW1lcj1udWxsKTt2YXIgdD1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oaSl7cmV0dXJuIGkuaWQ9PT1lfSksbj0iL2FwaS9zZXNzaW9ucy8iK2U7cmV0dXJuIEh2KHQpJiYobis9Ij9mb3JtYXQ9Y2hhdCIpLGZldGNoKG4se2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoaS5lcnJvcil7ci5zZWxlY3RlZElkPT09ZSYmKHIuc2VsZWN0ZWRJZD1udWxsLHdlKCkpLGZuKCk7cmV0dXJufWlmKFEoaSksSXIoKSxyLnRlcm1pbmFsJiZlPT09ci5zZWxlY3RlZElkJiZpLm91dHB1dCE9PXZvaWQgMCl7dmFyIGE9ISFyLndzJiYoci53cy5yZWFkeVN0YXRlPT09V2ViU29ja2V0Lk9QRU58fHIud3MucmVhZHlTdGF0ZT09PVdlYlNvY2tldC5DT05ORUNUSU5HKTthP290KCJzZXNzaW9uLXN3aXRjaCIpOihpaShlLGkub3V0cHV0LHttb2RlOiJhcHBlbmQifSksb3QoInNlc3Npb24tc3dpdGNoIix7Zm9yY2VSZXBsYXk6ITB9KSl9dmFyIHU9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHMpe3JldHVybiBzLmlkPT09ZX0pO3IuY3VycmVudE1lc3NhZ2VzPWplKHUsWmUodSxpLm91dHB1dCwhMSkpLFVlKCExKX0pfXZhciBKYT0hMTtmdW5jdGlvbiBZdigpe2lmKEphKXJldHVybiExO3ZhciBlPXIuc2VsZWN0ZWRJZDtpZighZSlyZXR1cm4hMTt2YXIgdD1yLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24ocyl7cmV0dXJuIHMuaWQ9PT1lfSk7aWYoIXQpcmV0dXJuITE7dmFyIG49dHlwZW9mIHQubWVzc2FnZU9mZnNldD09Im51bWJlciI/dC5tZXNzYWdlT2Zmc2V0OjA7aWYobjw9MClyZXR1cm4hMTt2YXIgaT00MCxhPU1hdGgubWF4KDAsbi1pKSx1PW4tYTtyZXR1cm4gSmE9ITAsZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoZSkrIi9tZXNzYWdlcz9vZmZzZXQ9IithKyImbGltaXQ9Iit1LHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihzKXtyZXR1cm4gcy5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHMpe2lmKHMmJkFycmF5LmlzQXJyYXkocy5tZXNzYWdlcykmJnQubWVzc2FnZU9mZnNldD09PW4pe3ZhciBvPUFycmF5LmlzQXJyYXkodC5tZXNzYWdlcyk/dC5tZXNzYWdlczpbXTt0Lm1lc3NhZ2VzPXMubWVzc2FnZXMuY29uY2F0KG8pLHQubWVzc2FnZU9mZnNldD1hLHR5cGVvZiBzLnRvdGFsPT0ibnVtYmVyIiYmKHQubWVzc2FnZVRvdGFsPXMudG90YWwpLGU9PT1yLnNlbGVjdGVkSWQmJihyLmN1cnJlbnRNZXNzYWdlcz1qZSh0LFplKHQsdC5vdXRwdXQsITEpKSxyLmNoYXRSZW5kZXJlZENvdW50PXIuY3VycmVudE1lc3NhZ2VzLmxlbmd0aCxVZSghMCkpfX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSkuZmluYWxseShmdW5jdGlvbigpe0phPSExfSksITB9ZnVuY3Rpb24gV3QoZSl7dmFyIHQ9ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHMpe3JldHVybiBzLmlkPT09ZX0pO2lmKHQpe3Iuc2VsZWN0ZWRJZCE9PWUmJmdyKCksci5zZWxlY3RlZElkPWUsd2UoKSxyLnRvb2xDb250ZW50Q2FjaGU9e30sci5tZXNzYWdlUXVldWU9W10sci5wZW5kaW5nTWVzc2FnZXM9W10senIodCksdnUoKSxzbigpLGt0KCksci5jdXJyZW50TWVzc2FnZXM9W10sci5jaGF0UmVuZGVyVGltZXImJihjbGVhclRpbWVvdXQoci5jaGF0UmVuZGVyVGltZXIpLHIuY2hhdFJlbmRlclRpbWVyPW51bGwpO3ZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzIik7biYmbi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKTt2YXIgaT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuc3RydWN0dXJlZC1zdGF0dXMtYmFyIik7aSYmaS5yZW1vdmUoKSxyLl9zdGF0dXNCYXJUaW1lcklkJiYoY2xlYXJJbnRlcnZhbChyLl9zdGF0dXNCYXJUaW1lcklkKSxyLl9zdGF0dXNCYXJUaW1lcklkPW51bGwpLHIuX3N0YXR1c0JhclN0YXJ0VGltZT0wO3ZhciBhPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1jb21wb3NlciIpO2EmJmEuY2xhc3NMaXN0LnJlbW92ZSgiaW4tZmxpZ2h0Iik7dmFyIHU9dDtyLnByZWZlcnJlZENvbW1hbmQ9bXQoKSxyLmNoYXRNb2RlPXh0KCJjbGF1ZGUiLHUmJnUubW9kZT91Lm1vZGU6ci5jaGF0TW9kZSksci50ZXJtaW5hbEludGVyYWN0aXZlJiZ1JiZ1LnN0YXR1cyE9PSJydW5uaW5nIiYmSW4oITEpLG1lKCksQ3IoZSksci5maWxlUGFuZWxPcGVuJiYoVmwodSksUHQoKSkscG4oZSkudGhlbihmdW5jdGlvbigpe2p0KCEwKX0pLFRuKGUpLHIuZ2l0U3RhdHVzPW51bGwsci5naXRTdGF0dXNTZXNzaW9uSWQ9bnVsbCxKaSgpLHduKGUse2ZvcmNlOiEwfSl9fWZ1bmN0aW9uIFF2KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb25zLWRyYXdlciIpLHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLm1haW4tbGF5b3V0Iiksbj1fZSgpLGk9ISFyLnNpZGViYXJQaW5uZWQmJiEhci5zaWRlYmFyQ29sbGFwc2VkLGE9aXx8IW4mJighIXIuc2lkZWJhclBpbm5lZHx8ISFyLnNlc3Npb25zRHJhd2VyT3Blbik7ZSYmKGUuY2xhc3NMaXN0LnRvZ2dsZSgicGlubmVkIixhKSxlLmNsYXNzTGlzdC50b2dnbGUoImNvbGxhcHNlZCIsaSkpLHQmJih0LmNsYXNzTGlzdC50b2dnbGUoInNpZGViYXItcGlubmVkIixhKSx0LmNsYXNzTGlzdC50b2dnbGUoInNpZGViYXItY29sbGFwc2VkIixpKSk7dmFyIHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZGViYXItcGluLWJ0biIpO3UmJih1LmNsYXNzTGlzdC50b2dnbGUoInBpbm5lZCIsISFyLnNpZGViYXJQaW5uZWQpLHUudGl0bGU9ci5zaWRlYmFyUGlubmVkPyJcdTVERjJcdTU2RkFcdTVCOUFcdTVFMzhcdTlBN0JcdUZGMDhcdTcwQjlcdTUxRkJcdTg5RTNcdTk2NjRcdTk1MDFcdTVCOUFcdUZGMDkiOiJcdTU2RkFcdTVCOUFcdTRGQTdcdTY4MEZcdTVFMzhcdTlBN0IiLHUuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixyLnNpZGViYXJQaW5uZWQ/Ilx1ODlFM1x1OTY2NFx1NTZGQVx1NUI5QVx1NUUzOFx1OUE3QiI6Ilx1NTZGQVx1NUI5QVx1NEZBN1x1NjgwRlx1NUUzOFx1OUE3QiIpLHUuc2V0QXR0cmlidXRlKCJhcmlhLXByZXNzZWQiLHIuc2lkZWJhclBpbm5lZD8idHJ1ZSI6ImZhbHNlIikpfWZ1bmN0aW9uIFRyKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb25zLWRyYXdlciIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb25zLWRyYXdlci1iYWNrZHJvcCIpLG49ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLm1haW4tbGF5b3V0Iik7ZSYmZS5jbGFzc0xpc3QudG9nZ2xlKCJvcGVuIixyLnNlc3Npb25zRHJhd2VyT3BlbiksdCYmdC5jbGFzc0xpc3QudG9nZ2xlKCJvcGVuIix5dSgpKSxuJiZuLmNsYXNzTGlzdC50b2dnbGUoInNpZGViYXItb3BlbiIsci5zZXNzaW9uc0RyYXdlck9wZW4pO3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy10b2dnbGUtYnV0dG9uIik7aSYmaS5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLHIuc2Vzc2lvbnNEcmF3ZXJPcGVuKSxRdigpfWZ1bmN0aW9uICR2KCl7dmFyIGU9X2UoKTtpZighZSl7dmFyIHQ9ci5zaWRlYmFyUGlubmVkPyExOiFyLnNlc3Npb25zRHJhd2VyT3BlbjtyLnNlc3Npb25zRHJhd2VyT3Blbj10LHQmJihyLnNpZGViYXJDb2xsYXBzZWQ9ITEsSWUoIndhbmQtc2lkZWJhci1jb2xsYXBzZWQiLCExKSksSWUoIndhbmQtc2lkZWJhci1vcGVuIixyLnNlc3Npb25zRHJhd2VyT3Blbiksbm4oKSxNcigpO3JldHVybn1pZihyLnNlc3Npb25zRHJhd2VyT3Blbj0hci5zZXNzaW9uc0RyYXdlck9wZW4sSWUoIndhbmQtc2lkZWJhci1vcGVuIixyLnNlc3Npb25zRHJhd2VyT3Blbiksci5zZXNzaW9uc0RyYXdlck9wZW4pe3IuZmlsZVBhbmVsT3Blbj0hMTt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtZmlsZS1wYW5lbC1vcGVuIiwiZmFsc2UiKX1jYXRjaHt9fW5uKCl9ZnVuY3Rpb24gTHIoKXt2YXIgZT1fZSgpO2lmKCFlKXtpZighci5zaWRlYmFyUGlubmVkJiYhci5zZXNzaW9uc0RyYXdlck9wZW4pcmV0dXJuO0FyKCksci5zaWRlYmFyUGlubmVkPSExLHIuc2Vzc2lvbnNEcmF3ZXJPcGVuPSExLEllKCJ3YW5kLXNpZGViYXItcGlubmVkIiwhMSksSWUoIndhbmQtc2lkZWJhci1vcGVuIiwhMSksbm4oKSxNcigpO3JldHVybn1yLnNlc3Npb25zRHJhd2VyT3BlbiYmKEFyKCksci5zZXNzaW9uc0RyYXdlck9wZW49ITEsSWUoIndhbmQtc2lkZWJhci1vcGVuIiwhMSksbm4oKSl9ZnVuY3Rpb24gWHYoKXtpZihfZSgpKXtMcigpO3JldHVybn1yLnNpZGViYXJQaW5uZWR8fHIuc2lkZWJhckNvbGxhcHNlZHx8IXIuc2Vzc2lvbnNEcmF3ZXJPcGVufHwoQXIoKSxyLnNlc3Npb25zRHJhd2VyT3Blbj0hMSxJZSgid2FuZC1zaWRlYmFyLW9wZW4iLCExKSxubigpLE1yKCkpfWZ1bmN0aW9uICRvKGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb21wb3Nlci1wbHVzLXBvcG92ZXIiKSxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdHRhY2gtYnRuIik7ci5wbHVzUG9wb3Zlck9wZW49ISFlLHQmJnQuY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIiwhZSksbiYmKG4uY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIiwhIWUpLG4uc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIixlPyJ0cnVlIjoiZmFsc2UiKSl9ZnVuY3Rpb24gWnYoKXskbyghci5wbHVzUG9wb3Zlck9wZW4pfWZ1bmN0aW9uIEFpKCl7ci5wbHVzUG9wb3Zlck9wZW4mJiRvKCExKX1mdW5jdGlvbiB6dCgpe19lKCkmJnIuc2Vzc2lvbnNEcmF3ZXJPcGVuJiZMcigpfWZ1bmN0aW9uIE1yKCl7dmFyIGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLm1haW4tbGF5b3V0Iik7aWYoZSl7dmFyIHQ9ZnVuY3Rpb24obil7bi5wcm9wZXJ0eU5hbWU9PT0icGFkZGluZy1sZWZ0IiYmKGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigidHJhbnNpdGlvbmVuZCIsdCksSHQoITApKX07ZS5hZGRFdmVudExpc3RlbmVyKCJ0cmFuc2l0aW9uZW5kIix0KX1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7SHQoITApfSwzNTApfXZhciBVdD1udWxsO2Z1bmN0aW9uIGVtKCl7cmV0dXJuIFV0JiZkb2N1bWVudC5ib2R5LmNvbnRhaW5zKFV0KXx8KFV0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLFV0LmNsYXNzTmFtZT0ic2lkZWJhci10aWxlLWJ1YmJsZSIsVXQuc2V0QXR0cmlidXRlKCJyb2xlIiwidG9vbHRpcCIpLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoVXQpKSxVdH1mdW5jdGlvbiBadCgpe1V0JiZVdC5jbGFzc0xpc3QucmVtb3ZlKCJ2aXNpYmxlIil9ZnVuY3Rpb24gdG0oZSx0KXtpZighdCl7WnQoKTtyZXR1cm59dmFyIG49ZW0oKTtuLnRleHRDb250ZW50PXQubGVuZ3RoPjQwMD90LnNsaWNlKDAsNDAwKSsiXHUyMDI2Ijp0O3ZhciBpPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7bi5jbGFzc0xpc3QuYWRkKCJ2aXNpYmxlIik7dmFyIGE9bi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSx1PWkudG9wK2kuaGVpZ2h0LzIscz11LWEuaGVpZ2h0LzIsbz04LGw9d2luZG93LmlubmVySGVpZ2h0LWEuaGVpZ2h0LTg7czxvJiYocz1vKSxzPmwmJihzPU1hdGgubWF4KG8sbCkpLG4uc3R5bGUubGVmdD1pLnJpZ2h0KzEyKyJweCIsbi5zdHlsZS50b3A9cysicHgiLG4uc3R5bGUuc2V0UHJvcGVydHkoIi0tYnViYmxlLXRhaWwteSIsdS1zKyJweCIpfWZ1bmN0aW9uIG5tKGUpe2lmKGUuZGF0YXNldC5jb2xsYXBzZWRTZXNzaW9uSWQpe3ZhciB0PXIuc2Vzc2lvbnMuZmluZChmdW5jdGlvbihhKXtyZXR1cm4gYS5pZD09PWUuZGF0YXNldC5jb2xsYXBzZWRTZXNzaW9uSWR9KTtpZighdClyZXR1cm4iIjt2YXIgbj1EYyh0KTtyZXR1cm4gbnx8dC5zdW1tYXJ5fHx0LmNvbW1hbmR8fCIifWlmKGUuZGF0YXNldC5jb2xsYXBzZWRIaXN0b3J5SWQpe3ZhciBpPXIuY2xhdWRlSGlzdG9yeS5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLmNsYXVkZVNlc3Npb25JZD09PWUuZGF0YXNldC5jb2xsYXBzZWRIaXN0b3J5SWR9KTtpZihpJiZpLmZpcnN0VXNlck1lc3NhZ2UpcmV0dXJuIGkuZmlyc3RVc2VyTWVzc2FnZX1yZXR1cm4iIn1mdW5jdGlvbiBybShlKXt2YXIgdD1lLnRhcmdldDtpZighKCF0fHwhKHQgaW5zdGFuY2VvZiBFbGVtZW50KSkpe3ZhciBuPXQuY2xvc2VzdCgiLnNpZGViYXItY29sbGFwc2VkLXRpbGUiKTtpZighbil7WnQoKTtyZXR1cm59dmFyIGk9bm0obik7aWYoIWkpe1p0KCk7cmV0dXJufXRtKG4saSl9fWZ1bmN0aW9uIGltKGUpe3ZhciB0PWUucmVsYXRlZFRhcmdldDt0JiZ0IGluc3RhbmNlb2YgRWxlbWVudCYmdC5jbG9zZXN0KCIuc2lkZWJhci1jb2xsYXBzZWQtdGlsZSIpfHxadCgpfWZ1bmN0aW9uIGFtKCl7dmFyIGU9X2UoKTtyLnNpZGViYXJQaW5uZWR8fChyLnNpZGViYXJQaW5uZWQ9ITAsSWUoIndhbmQtc2lkZWJhci1waW5uZWQiLCEwKSksci5zaWRlYmFyQ29sbGFwc2VkPSFyLnNpZGViYXJDb2xsYXBzZWQsSWUoIndhbmQtc2lkZWJhci1jb2xsYXBzZWQiLHIuc2lkZWJhckNvbGxhcHNlZCksci5zaWRlYmFyQ29sbGFwc2VkP3Iuc2Vzc2lvbnNEcmF3ZXJPcGVuPSExOmU/KHIuc2lkZWJhclBpbm5lZD0hMSxyLnNlc3Npb25zRHJhd2VyT3Blbj0hMCxJZSgid2FuZC1zaWRlYmFyLXBpbm5lZCIsITEpKTpyLnNlc3Npb25zRHJhd2VyT3Blbj0hMCxJZSgid2FuZC1zaWRlYmFyLW9wZW4iLHIuc2Vzc2lvbnNEcmF3ZXJPcGVuKSxubigpLG1lKCksc20oKSxadCgpLE1yKCl9ZnVuY3Rpb24gdW0oKXtfZSgpfHwoci5zaWRlYmFyUGlubmVkPSFyLnNpZGViYXJQaW5uZWQsci5zZXNzaW9uc0RyYXdlck9wZW49ITAsSWUoIndhbmQtc2lkZWJhci1waW5uZWQiLHIuc2lkZWJhclBpbm5lZCksSWUoIndhbmQtc2lkZWJhci1vcGVuIiwhMCksbm4oKSxNcigpKX1mdW5jdGlvbiBzbSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWRlYmFyLWNvbGxhcHNlLWJ0biIpO2lmKGUpe3ZhciB0PSEhci5zaWRlYmFyUGlubmVkJiYhIXIuc2lkZWJhckNvbGxhcHNlZDtlLmNsYXNzTGlzdC50b2dnbGUoImNvbGxhcHNlZCIsdCksZS50aXRsZT10PyJcdTVDNTVcdTVGMDBcdTRGQTdcdTY4MEYiOiJcdTY1MzZcdThENzdcdTRFM0FcdTdBODRcdTY3NjEiLGUuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIix0PyJcdTVDNTVcdTVGMDBcdTRGQTdcdTY4MEYiOiJcdTY1MzZcdThENzdcdTRFM0FcdTdBODRcdTY3NjEiKSxlLmlubmVySFRNTD10Pyc8c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwb2x5bGluZSBwb2ludHM9IjEwIDYgMTYgMTIgMTAgMTgiLz48bGluZSB4MT0iMjAiIHkxPSI1IiB4Mj0iMjAiIHkyPSIxOSIvPjwvc3ZnPic6Jzxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBvbHlsaW5lIHBvaW50cz0iMTQgNiA4IDEyIDE0IDE4Ii8+PGxpbmUgeDE9IjQiIHkxPSI1IiB4Mj0iNCIgeTI9IjE5Ii8+PC9zdmc+J319ZnVuY3Rpb24gb20oZSl7aWYoZSl7ZS5zdHlsZS5sZWZ0PSIiLGUuc3R5bGUucmlnaHQ9IiI7dmFyIHQ9ZS5vZmZzZXRQYXJlbnR8fGUucGFyZW50RWxlbWVudDtpZih0KXt2YXIgbj04LGk9dC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxhPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksdT13aW5kb3cuaW5uZXJXaWR0aDthLmxlZnQ8bj8oZS5zdHlsZS5yaWdodD0iYXV0byIsZS5zdHlsZS5sZWZ0PW4taS5sZWZ0KyJweCIpOmEucmlnaHQ+dS1uJiYoZS5zdHlsZS5sZWZ0PSJhdXRvIixlLnN0eWxlLnJpZ2h0PWkucmlnaHQtKHUtbikrInB4Iil9fX1mdW5jdGlvbiBHYSgpe2VyKCksci5tb2RhbE9wZW49ITAsci5zZXNzaW9uc0RyYXdlck9wZW49ITEsSWUoIndhbmQtc2lkZWJhci1vcGVuIiwhMSksVHIoKTt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbi1tb2RhbCIpO2UmJihlLl93YW5kQ2xvc2VUaW1lciYmKGNsZWFyVGltZW91dChlLl93YW5kQ2xvc2VUaW1lciksZS5fd2FuZENsb3NlVGltZXI9bnVsbCksZS5jbGFzc0xpc3QucmVtb3ZlKCJjbG9zaW5nIiksZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxyLmxhc3RGb2N1c2VkRWxlbWVudD1kb2N1bWVudC5hY3RpdmVFbGVtZW50LHIuc2Vzc2lvblRvb2w9bXQoKSxyLnByZWZlcnJlZENvbW1hbmQ9ci5zZXNzaW9uVG9vbCxyLnNlc3Npb25DcmVhdGVLaW5kPSJzdHJ1Y3R1cmVkIixyLnNlc3Npb25DcmVhdGVXb3JrdHJlZT0hMSxyLm1vZGVWYWx1ZT14dChyLnNlc3Npb25Ub29sLHIubW9kZVZhbHVlfHxyLmNoYXRNb2RlKSxTcigpLE1tKCksc2V0VGltZW91dChmdW5jdGlvbigpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtb2RlLWNhcmRzIik7dCYmdC5mb2N1cygpfSwyMCkseGkoZSkpfWZ1bmN0aW9uIHZuKCl7ci5tb2RhbE9wZW49ITE7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb24tbW9kYWwiKTtlJiYoci5mb2N1c1RyYXBIYW5kbGVyJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsci5mb2N1c1RyYXBIYW5kbGVyKSxyLmZvY3VzVHJhcEhhbmRsZXI9bnVsbCksci5sYXN0Rm9jdXNlZEVsZW1lbnQmJnR5cGVvZiByLmxhc3RGb2N1c2VkRWxlbWVudC5mb2N1cz09ImZ1bmN0aW9uIiYmci5sYXN0Rm9jdXNlZEVsZW1lbnQuZm9jdXMoKSxZYShlKSksbnIoKX1mdW5jdGlvbiBZYShlKXtpZihlJiYhZS5jbGFzc0xpc3QuY29udGFpbnMoImhpZGRlbiIpKXt2YXIgdD0hMTt0cnl7dD13aW5kb3cubWF0Y2hNZWRpYSYmd2luZG93Lm1hdGNoTWVkaWEoIihwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIikubWF0Y2hlc31jYXRjaHt9aWYodHx8ZG9jdW1lbnQuaGlkZGVuKXtlLmNsYXNzTGlzdC5yZW1vdmUoImNsb3NpbmciKSxlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpO3JldHVybn1lLl93YW5kQ2xvc2VUaW1lciYmKGNsZWFyVGltZW91dChlLl93YW5kQ2xvc2VUaW1lciksZS5fd2FuZENsb3NlVGltZXI9bnVsbCksZS5jbGFzc0xpc3QuYWRkKCJjbG9zaW5nIiksZS5fd2FuZENsb3NlVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe2UuY2xhc3NMaXN0LnJlbW92ZSgiY2xvc2luZyIpLGUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksZS5fd2FuZENsb3NlVGltZXI9bnVsbH0sMTcwKX19ZnVuY3Rpb24geGkoZSl7ci5mb2N1c1RyYXBIYW5kbGVyJiZkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIixyLmZvY3VzVHJhcEhhbmRsZXIpO3ZhciB0PSdidXR0b246bm90KFtkaXNhYmxlZF0pLCBpbnB1dDpub3QoW2Rpc2FibGVkXSksIHNlbGVjdDpub3QoW2Rpc2FibGVkXSksIHRleHRhcmVhOm5vdChbZGlzYWJsZWRdKSwgYVtocmVmXSwgW3RhYmluZGV4XTpub3QoW3RhYmluZGV4PSItMSJdKSc7ci5mb2N1c1RyYXBIYW5kbGVyPWZ1bmN0aW9uKG4pe2lmKG4ua2V5PT09IlRhYiIpe3ZhciBpPWUucXVlcnlTZWxlY3RvckFsbCh0KSxhPWlbMF0sdT1pW2kubGVuZ3RoLTFdOyFhfHwhdXx8KG4uc2hpZnRLZXk/ZG9jdW1lbnQuYWN0aXZlRWxlbWVudD09PWEmJihuLnByZXZlbnREZWZhdWx0KCksdS5mb2N1cygpKTpkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09dSYmKG4ucHJldmVudERlZmF1bHQoKSxhLmZvY3VzKCkpKX19LGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLHIuZm9jdXNUcmFwSGFuZGxlcil9ZnVuY3Rpb24gbG0oKXtyZXR1cm4gci5hY3RpdmVXb3JrdHJlZU1lcmdlU2Vzc2lvbklkJiZyLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oZSl7cmV0dXJuIGUuaWQ9PT1yLmFjdGl2ZVdvcmt0cmVlTWVyZ2VTZXNzaW9uSWR9KXx8bnVsbH1mdW5jdGlvbiBPcigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3b3JrdHJlZS1tZXJnZS1jb250ZW50IiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya3RyZWUtbWVyZ2UtY29uZmlybS1idXR0b24iKSxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3b3JrdHJlZS1tZXJnZS1lcnJvciIpLGk9bG0oKSxhPXIud29ya3RyZWVNZXJnZUNoZWNrUmVzdWx0O2lmKCEoIWV8fCF0KSl7aWYoIWl8fCFpLndvcmt0cmVlKXtlLmlubmVySFRNTD0nPHAgY2xhc3M9ImZpZWxkLWhpbnQiPlx1NjcyQVx1NjI3RVx1NTIzMFx1NTNFRlx1NTQwOFx1NUU3Nlx1NzY4NCB3b3JrdHJlZSBcdTRGMUFcdThCRERcdTMwMDI8L3A+Jyx0LmRpc2FibGVkPSEwO3JldHVybn1uJiYoci53b3JrdHJlZU1lcmdlRXJyb3I/UGUobixyLndvcmt0cmVlTWVyZ2VFcnJvcik6dWkobikpO3ZhciB1PVsnPGRpdiBjbGFzcz0id29ya3RyZWUtbWVyZ2Utcm93Ij48c3Bhbj5cdTY3NjVcdTZFOTBcdTUyMDZcdTY1MkY8L3NwYW4+PHN0cm9uZz4nK3AoaS53b3JrdHJlZS5icmFuY2h8fCItIikrIjwvc3Ryb25nPjwvZGl2PiIsJzxkaXYgY2xhc3M9Indvcmt0cmVlLW1lcmdlLXJvdyI+PHNwYW4+XHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1PC9zcGFuPjxzdHJvbmc+JytwKGkud29ya3RyZWUucGF0aHx8Ii0iKSsiPC9zdHJvbmc+PC9kaXY+Il07YT8odS5wdXNoKCc8ZGl2IGNsYXNzPSJ3b3JrdHJlZS1tZXJnZS1yb3ciPjxzcGFuPlx1NzZFRVx1NjgwN1x1NTIwNlx1NjUyRjwvc3Bhbj48c3Ryb25nPicrcChhLnRhcmdldEJyYW5jaHx8Ii0iKSsiPC9zdHJvbmc+PC9kaXY+IiksdS5wdXNoKCc8ZGl2IGNsYXNzPSJ3b3JrdHJlZS1tZXJnZS1yb3ciPjxzcGFuPlx1NUY4NVx1NTQwOFx1NUU3Nlx1NjNEMFx1NEVBNDwvc3Bhbj48c3Ryb25nPicrcChTdHJpbmcoYS5haGVhZENvdW50fHwwKSkrIjwvc3Ryb25nPjwvZGl2PiIpLHUucHVzaCgnPGRpdiBjbGFzcz0id29ya3RyZWUtbWVyZ2Utcm93Ij48c3Bhbj5cdTY3MkFcdTYzRDBcdTRFQTRcdTY1MzlcdTUyQTg8L3NwYW4+PHN0cm9uZz4nK3AoYS5oYXNVbmNvbW1pdHRlZENoYW5nZXM/Ilx1NjcwOSI6Ilx1NjVFMCIpKyI8L3N0cm9uZz48L2Rpdj4iKSx1LnB1c2goJzxkaXYgY2xhc3M9Indvcmt0cmVlLW1lcmdlLXJvdyI+PHNwYW4+XHU1MUIyXHU3QTgxXHU5OENFXHU5NjY5PC9zcGFuPjxzdHJvbmc+JytwKGEuaGFzQ29uZmxpY3RzPyJcdTY3MDkiOiJcdTY1RTAiKSsiPC9zdHJvbmc+PC9kaXY+IiksYS5yZWFzb24mJnUucHVzaCgnPHAgY2xhc3M9ImZpZWxkLWhpbnQiPicrcChhLnJlYXNvbikrIjwvcD4iKSk6ci53b3JrdHJlZU1lcmdlTG9hZGluZyYmdS5wdXNoKCc8cCBjbGFzcz0iZmllbGQtaGludCI+XHU2QjYzXHU1NzI4XHU2OEMwXHU2N0U1IHdvcmt0cmVlIFx1NTQwOFx1NUU3Nlx1NzJCNlx1NjAwMVx1MjAyNjwvcD4nKSxlLmlubmVySFRNTD11LmpvaW4oIiIpLHQuZGlzYWJsZWQ9ci53b3JrdHJlZU1lcmdlTG9hZGluZ3x8ci53b3JrdHJlZU1lcmdlU3VibWl0dGluZ3x8IWF8fGEub2shPT0hMCx0LnRleHRDb250ZW50PXIud29ya3RyZWVNZXJnZVN1Ym1pdHRpbmc/Ilx1NTQwOFx1NUU3Nlx1NEUyRC4uLiI6Ilx1Nzg2RVx1OEJBNFx1NTQwOFx1NUU3Nlx1NUU3Nlx1NkUwNVx1NzQwNiJ9fWZ1bmN0aW9uIFhvKGUpe3IuYWN0aXZlV29ya3RyZWVNZXJnZVNlc3Npb25JZD1lLHIud29ya3RyZWVNZXJnZUNoZWNrUmVzdWx0PW51bGwsci53b3JrdHJlZU1lcmdlTG9hZGluZz0hMCxyLndvcmt0cmVlTWVyZ2VTdWJtaXR0aW5nPSExLHIud29ya3RyZWVNZXJnZUVycm9yPSIiLHZuKCksZXIoKTt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya3RyZWUtbWVyZ2UtbW9kYWwiKTt0JiYodC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxyLmxhc3RGb2N1c2VkRWxlbWVudD1kb2N1bWVudC5hY3RpdmVFbGVtZW50LHhpKHQpKSxPcigpLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KGUpKyIvd29ya3RyZWUvbWVyZ2UvY2hlY2siLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obil7aWYobiYmbi5lcnJvcil0aHJvdyBuZXcgRXJyb3Iobi5lcnJvcik7biYmbi5zZXNzaW9uJiZRKG4uc2Vzc2lvbiksci53b3JrdHJlZU1lcmdlQ2hlY2tSZXN1bHQ9bi5yZXN1bHR8fG51bGwsci53b3JrdHJlZU1lcmdlRXJyb3I9IiJ9KS5jYXRjaChmdW5jdGlvbihuKXtyLndvcmt0cmVlTWVyZ2VFcnJvcj1uJiZuLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTY4QzBcdTY3RTUgd29ya3RyZWUgXHU1NDA4XHU1RTc2XHU3MkI2XHU2MDAxXHUzMDAyIn0pLmZpbmFsbHkoZnVuY3Rpb24oKXtyLndvcmt0cmVlTWVyZ2VMb2FkaW5nPSExLE9yKCl9KX1mdW5jdGlvbiBabigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3b3JrdHJlZS1tZXJnZS1tb2RhbCIpO3IuYWN0aXZlV29ya3RyZWVNZXJnZVNlc3Npb25JZD1udWxsLHIud29ya3RyZWVNZXJnZUNoZWNrUmVzdWx0PW51bGwsci53b3JrdHJlZU1lcmdlTG9hZGluZz0hMSxyLndvcmt0cmVlTWVyZ2VTdWJtaXR0aW5nPSExLHIud29ya3RyZWVNZXJnZUVycm9yPSIiLGUmJmUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksci5mb2N1c1RyYXBIYW5kbGVyJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsci5mb2N1c1RyYXBIYW5kbGVyKSxyLmZvY3VzVHJhcEhhbmRsZXI9bnVsbCksci5sYXN0Rm9jdXNlZEVsZW1lbnQmJnR5cGVvZiByLmxhc3RGb2N1c2VkRWxlbWVudC5mb2N1cz09ImZ1bmN0aW9uIiYmci5sYXN0Rm9jdXNlZEVsZW1lbnQuZm9jdXMoKX1mdW5jdGlvbiBjbSgpeyFyLmFjdGl2ZVdvcmt0cmVlTWVyZ2VTZXNzaW9uSWR8fHIud29ya3RyZWVNZXJnZVN1Ym1pdHRpbmd8fChyLndvcmt0cmVlTWVyZ2VTdWJtaXR0aW5nPSEwLHIud29ya3RyZWVNZXJnZUVycm9yPSIiLE9yKCksZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoci5hY3RpdmVXb3JrdHJlZU1lcmdlU2Vzc2lvbklkKSsiL3dvcmt0cmVlL21lcmdlIix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeSh7fSl9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oZSl7aWYoZSYmZS5lcnJvcil0aHJvdyBuZXcgRXJyb3IoZS5lcnJvcik7cmV0dXJuIGUmJmUuc2Vzc2lvbiYmUShlLnNlc3Npb24pLGsoIlx1NURGMlx1NTQwOFx1NUU3Nlx1NTIzMCAiK3AoZS5yZXN1bHQmJmUucmVzdWx0LnRhcmdldEJyYW5jaHx8Ilx1NEUzQlx1NTIwNlx1NjUyRiIpKyhlLnJlc3VsdCYmZS5yZXN1bHQuY2xlYW51cERvbmU9PT0hMT8iXHVGRjBDXHU0RjQ2XHU1REU1XHU0RjVDXHU2ODExXHU1Rjg1XHU2RTA1XHU3NDA2XHUzMDAyIjoiXHUzMDAyIiksImluZm8iKSxabigpLFJ0KCl9KS5jYXRjaChmdW5jdGlvbihlKXtyLndvcmt0cmVlTWVyZ2VFcnJvcj1lJiZlLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTU0MDhcdTVFNzYgd29ya3RyZWVcdTMwMDIiLE9yKCl9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ci53b3JrdHJlZU1lcmdlU3VibWl0dGluZz0hMSxPcigpfSkpfWZ1bmN0aW9uIFpvKGUpe2ZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KGUpKyIvd29ya3RyZWUvY2xlYW51cCIse21ldGhvZDoiUE9TVCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQuanNvbigpfSkudGhlbihmdW5jdGlvbih0KXtpZih0JiZ0LmVycm9yKXRocm93IG5ldyBFcnJvcih0LmVycm9yKTtyZXR1cm4gdCYmdC5zZXNzaW9uJiZRKHQuc2Vzc2lvbiksaygiXHU1REYyXHU1QjhDXHU2MjEwIHdvcmt0cmVlIFx1NkUwNVx1NzQwNlx1MzAwMiIsImluZm8iKSxSdCgpfSkuY2F0Y2goZnVuY3Rpb24odCl7ayh0JiZ0Lm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTZFMDVcdTc0MDYgd29ya3RyZWVcdTMwMDIiLCJlcnJvciIpfSl9ZnVuY3Rpb24gZG0oKXt2bigpO3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1tb2RhbCIpO2lmKGUpe2UuX3dhbmRDbG9zZVRpbWVyJiYoY2xlYXJUaW1lb3V0KGUuX3dhbmRDbG9zZVRpbWVyKSxlLl93YW5kQ2xvc2VUaW1lcj1udWxsKSxlLmNsYXNzTGlzdC5yZW1vdmUoImNsb3NpbmciKSxlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLHIubGFzdEZvY3VzZWRFbGVtZW50PWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5ldy1wYXNzd29yZCIpLG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbmZpcm0tcGFzc3dvcmQiKTt0JiYodC52YWx1ZT0iIiksbiYmKG4udmFsdWU9IiIpLGVsKCkseGkoZSkscG0oKSxRYSgiYWJvdXQiKSxobSgpO3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtc291bmQiKSxhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtYnViYmxlIik7aSYmKGkuY2hlY2tlZD1yLm5vdGlmU291bmQpLGEmJihhLmNoZWNrZWQ9ci5ub3RpZkJ1YmJsZSk7dmFyIHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1ub3RpZi12b2x1bWUiKSxzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtdm9sdW1lLXZhbCIpO2lmKHUpe3UudmFsdWU9ci5ub3RpZlZvbHVtZSxzJiYocy50ZXh0Q29udGVudD1yLm5vdGlmVm9sdW1lKyIlIik7dHJ5e3UuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoImlucHV0Iix7YnViYmxlczohMH0pKX1jYXRjaHt9fXZhciBvPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZi12b2x1bWUtZmllbGQiKTtpZihvJiYoby5zdHlsZS5kaXNwbGF5PXIubm90aWZTb3VuZD8iIjoibm9uZSIpLGduKCksdHlwZW9mIFdhbmROYXRpdmU8InUiJiZ0eXBlb2YgV2FuZE5hdGl2ZS5nZXRBcHBJY29uPT0iZnVuY3Rpb24iKXRyeXtybChXYW5kTmF0aXZlLmdldEFwcEljb24oKXx8InNob3J0aGFpciIpfWNhdGNoe31pZihOZSYmdHlwZW9mIFdhbmROYXRpdmUuZ2V0Tm90aWZpY2F0aW9uU291bmQ9PSJmdW5jdGlvbiIpdHJ5e3ZhciBsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJuYXRpdmUtc291bmQtc2VsZWN0Iik7bCYmKGwudmFsdWU9V2FuZE5hdGl2ZS5nZXROb3RpZmljYXRpb25Tb3VuZCgpKX1jYXRjaHt9aWYoTmUmJnR5cGVvZiBXYW5kTmF0aXZlLmdldE5vdGlmaWNhdGlvblZvbHVtZT09ImZ1bmN0aW9uIil0cnl7dmFyIGM9V2FuZE5hdGl2ZS5nZXROb3RpZmljYXRpb25Wb2x1bWUoKTtpZihyLm5vdGlmVm9sdW1lPWMsdSYmKHUudmFsdWU9U3RyaW5nKGMpKSxzJiYocy50ZXh0Q29udGVudD1jKyIlIiksdSl0cnl7dS5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgiaW5wdXQiLHtidWJibGVzOiEwfSkpfWNhdGNoe310cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtbm90aWYtdm9sdW1lIixTdHJpbmcoYykpfWNhdGNoe319Y2F0Y2h7fWlmKE5lJiZ0eXBlb2YgV2FuZE5hdGl2ZS5pc0hhcHRpY0VuYWJsZWQ9PSJmdW5jdGlvbiIpdHJ5e3ZhciBmPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctaGFwdGljLWVuYWJsZWQiKTtmJiYoZi5jaGVja2VkPVdhbmROYXRpdmUuaXNIYXB0aWNFbmFibGVkKCkpfWNhdGNoe319fWZ1bmN0aW9uIGVyKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLW1vZGFsIik7ZSYmKHIuZm9jdXNUcmFwSGFuZGxlciYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLHIuZm9jdXNUcmFwSGFuZGxlciksci5mb2N1c1RyYXBIYW5kbGVyPW51bGwpLHIubGFzdEZvY3VzZWRFbGVtZW50JiZ0eXBlb2Ygci5sYXN0Rm9jdXNlZEVsZW1lbnQuZm9jdXM9PSJmdW5jdGlvbiImJnIubGFzdEZvY3VzZWRFbGVtZW50LmZvY3VzKCksWWEoZSkpfWZ1bmN0aW9uIGVsKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLWVycm9yIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3Mtc3VjY2VzcyIpO2UmJmUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksdCYmdC5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKX1mdW5jdGlvbiBmbSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJuZXctcGFzc3dvcmQiKS52YWx1ZSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25maXJtLXBhc3N3b3JkIikudmFsdWUsbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtZXJyb3IiKSxpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1zdWNjZXNzIik7aWYoZWwoKSwhZXx8ZS5sZW5ndGg8Nil7bi50ZXh0Q29udGVudD0iXHU1QkM2XHU3ODAxXHU5NTdGXHU1RUE2XHU4MUYzXHU1QzExXHU0RTNBIDYgXHU0RTJBXHU1QjU3XHU3QjI2XHUzMDAyIixuLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3JldHVybn1pZihlIT09dCl7bi50ZXh0Q29udGVudD0iXHU0RTI0XHU2QjIxXHU4RjkzXHU1MTY1XHU3Njg0XHU1QkM2XHU3ODAxXHU0RTBEXHU0RTAwXHU4MUY0XHUzMDAyIixuLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3JldHVybn1mZXRjaCgiL2FwaS9zZXQtcGFzc3dvcmQiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeSh7cGFzc3dvcmQ6ZX0pLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGEpe3JldHVybiBhLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oYSl7aWYoYS5lcnJvcil7bi50ZXh0Q29udGVudD1hLmVycm9yLG4uY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik7cmV0dXJufWkudGV4dENvbnRlbnQ9Ilx1NUJDNlx1NzgwMVx1NEZFRVx1NjUzOVx1NjIxMFx1NTI5Rlx1RkYwMSIsaS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibmV3LXBhc3N3b3JkIikudmFsdWU9IiIsZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbmZpcm0tcGFzc3dvcmQiKS52YWx1ZT0iIn0pLmNhdGNoKGZ1bmN0aW9uKCl7bi50ZXh0Q29udGVudD0iRmFpbGVkIHRvIHNhdmUgcGFzc3dvcmQuIixuLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpfSl9ZnVuY3Rpb24gUWEoZSl7Zm9yKHZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXR0aW5ncy10YWIiKSxuPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXR0aW5ncy1wYW5lbCIpLGk9MDtpPHQubGVuZ3RoO2krKyl7dmFyIGE9dFtpXS5nZXRBdHRyaWJ1dGUoImRhdGEtdGFiIik9PT1lO2E/dFtpXS5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKTp0W2ldLmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpLHRbaV0uc2V0QXR0cmlidXRlKCJhcmlhLXNlbGVjdGVkIixhPyJ0cnVlIjoiZmFsc2UiKSx0W2ldLnNldEF0dHJpYnV0ZSgidGFiaW5kZXgiLGE/IjAiOiItMSIpfWZvcih2YXIgdT0wO3U8bi5sZW5ndGg7dSsrKXt2YXIgcz1uW3VdLmlkPT09InNldHRpbmdzLXRhYi0iK2U7cz8oblt1XS5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKSxuW3VdLnJlbW92ZUF0dHJpYnV0ZSgiaGlkZGVuIikpOihuW3VdLmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpLG5bdV0uc2V0QXR0cmlidXRlKCJoaWRkZW4iLCJoaWRkZW4iKSl9fWZ1bmN0aW9uIHRsKGUpe2lmKGUmJiEoZS5rZXkhPT0iQXJyb3dVcCImJmUua2V5IT09IkFycm93RG93biImJmUua2V5IT09IkhvbWUiJiZlLmtleSE9PSJFbmQiKSl7dmFyIHQ9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnNldHRpbmdzLXRhYiIpKTtpZih0Lmxlbmd0aCl7dmFyIG49dC5pbmRleE9mKGUuY3VycmVudFRhcmdldCk7aWYobiE9PS0xKXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIGk9bjtlLmtleT09PSJBcnJvd1VwIiYmKGk9bj4wP24tMTp0Lmxlbmd0aC0xKSxlLmtleT09PSJBcnJvd0Rvd24iJiYoaT1uPHQubGVuZ3RoLTE/bisxOjApLGUua2V5PT09IkhvbWUiJiYoaT0wKSxlLmtleT09PSJFbmQiJiYoaT10Lmxlbmd0aC0xKTt2YXIgYT10W2ldO2lmKGEpe3ZhciB1PWEuZ2V0QXR0cmlidXRlKCJkYXRhLXRhYiIpO3UmJlFhKHUpLHR5cGVvZiBhLmZvY3VzPT0iZnVuY3Rpb24iJiZhLmZvY3VzKCl9fX19fWZ1bmN0aW9uIHBtKCl7Zm9yKHZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXR0aW5ncy10YWIiKSx0PTA7dDxlLmxlbmd0aDt0KyspZVt0XS5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIix0bCksZVt0XS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIix0bCl9ZnVuY3Rpb24gdm0oZSl7aWYoZSl7dmFyIHQ9ZS5jb25maWd8fHt9LG49e2Fib3V0OmUudmVyc2lvbj8iXHU1RjUzXHU1MjREIHYiK2UudmVyc2lvbjoiXHU3MjQ4XHU2NzJDXHU0RTBFXHU2NkY0XHU2NUIwXHU0RkUxXHU2MDZGIixnZW5lcmFsOlt0LmRlZmF1bHRNb2RlfHwiZGVmYXVsdCIsdC5sYW5ndWFnZXx8Ilx1ODFFQVx1NTJBOFx1OEJFRFx1OEEwMCJdLmZpbHRlcihCb29sZWFuKS5qb2luKCIgXHhCNyAiKSxub3RpZmljYXRpb25zOnIubm90aWZTb3VuZD8iXHU2M0QwXHU3OTNBXHU5N0YzICIrci5ub3RpZlZvbHVtZSsiJSI6Ilx1NjNEMFx1NzkzQVx1OTdGM1x1NURGMlx1NTE3M1x1OTVFRCIsc2VjdXJpdHk6ZS5oYXNDZXJ0PyJcdTVERjJcdTVCODlcdTg4QzUgU1NMIFx1OEJDMVx1NEU2NiI6Ilx1NUJDNlx1NzgwMVx1NEUwRVx1OEJDMVx1NEU2Nlx1N0JBMVx1NzQwNiIscHJlc2V0czp0LmNvbW1hbmRQcmVzZXRzJiZ0LmNvbW1hbmRQcmVzZXRzLmxlbmd0aD90LmNvbW1hbmRQcmVzZXRzLmxlbmd0aCsiIFx1Njc2MVx1OTg4NFx1OEJCRSI6Ilx1NjY4Mlx1NjVFMFx1OTg4NFx1OEJCRSIsZGlzcGxheToiXHU2M0E3XHU1MjM2XHU1MzYxXHU3MjQ3XHU5RUQ4XHU4QkE0XHU1QzU1XHU1RjAwIn07Zm9yKHZhciBpIGluIG4paWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4saSkpe3ZhciBhPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5zZXR0aW5ncy10YWJbZGF0YS10YWI9IicraSsnIl0gLnNldHRpbmdzLXRhYi1tZXRhJyk7YSYmKGEudGV4dENvbnRlbnQ9bltpXXx8IiIpfX19ZnVuY3Rpb24gbW0oZSl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFuZHJvaWQtY29ubmVjdC1xciIpLG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFuZHJvaWQtY29ubmVjdC1xci1lbXB0eSIpLGk9d2luZG93LlFSQ29kZUxpYjtpZih0KXtpZighaXx8dHlwZW9mIGkudG9DYW52YXMhPSJmdW5jdGlvbiIpe24mJihuLnRleHRDb250ZW50PSJcdTRFOENcdTdFRjRcdTc4MDFcdTVFOTNcdTY3MkFcdTUyQTBcdThGN0QiKTtyZXR1cm59dHJ5e2kudG9DYW52YXModCxlLHt3aWR0aDoyMjAsbWFyZ2luOjEsZXJyb3JDb3JyZWN0aW9uTGV2ZWw6Ik0iLGNvbG9yOntkYXJrOiIjMWYxYjE3IixsaWdodDoiI2ZmZmZmZjAwIn19LGZ1bmN0aW9uKGEpe2lmKGEpe24mJihuLnRleHRDb250ZW50PSJcdTRFOENcdTdFRjRcdTc4MDFcdTc1MUZcdTYyMTBcdTU5MzFcdThEMjUiLG4uc3R5bGUuZGlzcGxheT0iIiksdC5zdHlsZS52aXNpYmlsaXR5PSJoaWRkZW4iO3JldHVybn1uJiYobi5zdHlsZS5kaXNwbGF5PSJub25lIiksdC5zdHlsZS52aXNpYmlsaXR5PSJ2aXNpYmxlIn0pfWNhdGNoe24mJihuLnRleHRDb250ZW50PSJcdTRFOENcdTdFRjRcdTc4MDFcdTc1MUZcdTYyMTBcdTU5MzFcdThEMjUiLG4uc3R5bGUuZGlzcGxheT0iIiksdC5zdHlsZS52aXNpYmlsaXR5PSJoaWRkZW4ifX19ZnVuY3Rpb24gZ20oZSl7dmFyIHQ9d2luZG93LlFSQ29kZUxpYjtpZighdHx8dHlwZW9mIHQudG9DYW52YXMhPSJmdW5jdGlvbiIpcmV0dXJuO3ZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25uZWN0LXFyLW1vZGFsIik7biYmbi5yZW1vdmUoKTt2YXIgaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpLmlkPSJjb25uZWN0LXFyLW1vZGFsIixpLmNsYXNzTmFtZT0iY29ubmVjdC1xci1tb2RhbC1vdmVybGF5IixpLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iY29ubmVjdC1xci1tb2RhbC1jYXJkIj48Y2FudmFzIGlkPSJjb25uZWN0LXFyLW1vZGFsLWNhbnZhcyI+PC9jYW52YXM+PHAgY2xhc3M9ImNvbm5lY3QtcXItbW9kYWwtaGludCI+XHU3NTI4IFdhbmQgQXBwIFx1NjI2Qlx1NEUwMFx1NjI2Qlx1RkYwQ1x1OEZERVx1NjNBNVx1NUY1M1x1NTI0RFx1NjcwRFx1NTJBMVx1NTY2ODwvcD48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSBjb25uZWN0LXFyLW1vZGFsLWNsb3NlIj5cdTUxNzNcdTk1RUQ8L2J1dHRvbj48L2Rpdj4nLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaSk7dmFyIGE9aS5xdWVyeVNlbGVjdG9yKCIjY29ubmVjdC1xci1tb2RhbC1jYW52YXMiKSx1PU1hdGgubWluKHdpbmRvdy5pbm5lcldpZHRoLHdpbmRvdy5pbm5lckhlaWdodCkqLjc7dTwyNDAmJih1PTI0MCksdT40ODAmJih1PTQ4MCk7dHJ5e3QudG9DYW52YXMoYSxlLHt3aWR0aDp1LG1hcmdpbjoyLGVycm9yQ29ycmVjdGlvbkxldmVsOiJNIixjb2xvcjp7ZGFyazoiIzFmMWIxNyIsbGlnaHQ6IiNmZmZmZmYifX0pfWNhdGNoe31mdW5jdGlvbiBzKCl7aS5yZW1vdmUoKX1pLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihsKXtsLnRhcmdldD09PWkmJnMoKX0pO3ZhciBvPWkucXVlcnlTZWxlY3RvcigiLmNvbm5lY3QtcXItbW9kYWwtY2xvc2UiKTtvJiZvLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixzKX1mdW5jdGlvbiBQcihlLHQsbil7aWYoIWUpcmV0dXJuO2Z1bmN0aW9uIGkoKXtpZihKbigibGlnaHQiKSxuKXtuKCk7cmV0dXJufWlmKHQpe3ZhciBhPXQudGV4dENvbnRlbnQ7dC50ZXh0Q29udGVudD0iXHU1REYyXHU1OTBEXHU1MjM2IixzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dC50ZXh0Q29udGVudD1hfSwxNTAwKX19aWYoTmUmJnR5cGVvZiBXYW5kTmF0aXZlLmNvcHlUb0NsaXBib2FyZD09ImZ1bmN0aW9uIil0cnl7aWYoV2FuZE5hdGl2ZS5jb3B5VG9DbGlwYm9hcmQoZSk9PT0ib2siKXtpKCk7cmV0dXJufX1jYXRjaHt9bmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoZSkudGhlbihpKS5jYXRjaChmdW5jdGlvbigpe3ZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRleHRhcmVhIik7YS52YWx1ZT1lLGEuc3R5bGUucG9zaXRpb249ImZpeGVkIixhLnN0eWxlLm9wYWNpdHk9IjAiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSksYS5zZWxlY3QoKSxkb2N1bWVudC5leGVjQ29tbWFuZCgiY29weSIpLGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoYSksaSgpfSl9ZnVuY3Rpb24gbW4oZSl7aWYodHlwZW9mIGUhPSJudW1iZXIifHwhaXNGaW5pdGUoZSl8fGU8MClyZXR1cm4iLSI7aWYoZTwxMDI0KXJldHVybiBlKyIgQiI7Zm9yKHZhciB0PVsiS0IiLCJNQiIsIkdCIiwiVEIiXSxuPWUvMTAyNCxpPTA7bj49MTAyNCYmaTx0Lmxlbmd0aC0xOyluPW4vMTAyNCxpKz0xO3ZhciBhPW4+PTEwP24udG9GaXhlZCgwKTpuLnRvRml4ZWQoMSk7cmV0dXJuIGErIiAiK3RbaV19ZnVuY3Rpb24gaG0oKXtmZXRjaCgiL2FwaS9zZXR0aW5ncyIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oZSl7dm0oZSk7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLXBrZy1uYW1lIiksbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtdmVyc2lvbiIpLGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLW5vZGUtcmVxIiksYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtcmVwby11cmwiKTt0JiYodC50ZXh0Q29udGVudD1lLnBhY2thZ2VOYW1lfHwiLSIpLG4mJihuLnRleHRDb250ZW50PWUudmVyc2lvbnx8Ii0iKSxpJiYoaS50ZXh0Q29udGVudD1lLm5vZGVWZXJzaW9ufHwiLSIpLGEmJmUucmVwb1VybCYmKGEuaW5uZXJIVE1MPSc8YSBocmVmPSInK3AoZS5yZXBvVXJsKSsnIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciI+JytwKGUucmVwb1VybCkrIjwvYT4iKTt2YXIgdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtbGF0ZXN0LXZlcnNpb24iKSxzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkby11cGRhdGUtYnV0dG9uIik7ZS5sYXRlc3RWZXJzaW9uJiZ1JiYodS50ZXh0Q29udGVudD1lLmxhdGVzdFZlcnNpb24sZS51cGRhdGVBdmFpbGFibGUmJnMmJnMuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpO3ZhciBvPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJiZXRhLWNoYW5uZWwtdG9nZ2xlIik7byYmKG8uY2hlY2tlZD1lLnVwZGF0ZUNoYW5uZWw9PT0iYmV0YSIpO3ZhciBsPWUuYXV0b1VwZGF0ZXx8e30sYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by11cGRhdGUtd2ViLXRvZ2dsZSIpO2MmJihjLmNoZWNrZWQ9ISFsLndlYik7dmFyIGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF1dG8tdXBkYXRlLWFway10b2dnbGUiKTtmJiYoZi5jaGVja2VkPSEheG4mJiEhbC5hcGspO3ZhciBkPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS1kbWctdG9nZ2xlIik7ZCYmKGQuY2hlY2tlZD0hIWFuJiYhIWwuZG1nKTtmdW5jdGlvbiB2KHJlLGhlKXt0eXBlb2Ygd2luZG93LndhbmRBbGVydD09ImZ1bmN0aW9uIj93aW5kb3cud2FuZEFsZXJ0KHJlLHt0eXBlOmhlPT09ImVycm9yIj8iZGFuZ2VyIjoiaW5mbyJ9KTp0eXBlb2Ygaz09ImZ1bmN0aW9uIj9rKHJlLGhlPT09ImVycm9yIj8iZXJyb3IiOiJpbmZvIik6aGU9PT0iZXJyb3IiJiZhbGVydChyZSl9ZnVuY3Rpb24gZyhyZSxoZSxPZSl7dmFyIEtlPU9lP09lLnRleHRDb250ZW50OiIiO09lJiYoT2UuZGlzYWJsZWQ9ITAsT2UudGV4dENvbnRlbnQ9Ilx1NEUwQlx1OEY3RFx1NEUyRFx1MjAyNiIpO2Z1bmN0aW9uIEplKCl7T2UmJihPZS5kaXNhYmxlZD0hMSxPZS50ZXh0Q29udGVudD1LZSl9ZmV0Y2gocmUse21ldGhvZDoiSEVBRCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oU2Upe2lmKCFTZS5vayl7dihTZS5zdGF0dXM9PT00MDQ/Ilx1NEUwQlx1OEY3RFx1NjcyQVx1NTQyRlx1NzUyOFx1NjIxNlx1NjU4N1x1NEVGNlx1NURGMlx1NzlGQlx1OTY2NCI6Ilx1NEUwQlx1OEY3RFx1NTkzMVx1OEQyNSAoSFRUUCAiK1NlLnN0YXR1cysiKSIsImVycm9yIiksSmUoKTtyZXR1cm59dmFyIEJlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTtCZS5ocmVmPXJlLEJlLmRvd25sb2FkPWhlfHwiIixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKEJlKSxCZS5jbGljaygpLGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoQmUpLHYoIlx1NURGMlx1NUYwMFx1NTlDQlx1NEUwQlx1OEY3RFx1RkYwQ1x1OEJGN1x1NTcyOFx1OTAxQVx1NzdFNVx1NjgwRi9cdTRFMEJcdThGN0RcdTdCQTFcdTc0MDZcdTRFMkRcdTY3RTVcdTc3MEIiLCJpbmZvIiksSmUoKX0pLmNhdGNoKGZ1bmN0aW9uKFNlKXt2KCJcdTRFMEJcdThGN0RcdTU5MzFcdThEMjU6ICIrKFNlJiZTZS5tZXNzYWdlP1NlLm1lc3NhZ2U6U2UpLCJlcnJvciIpLEplKCl9KX1mdW5jdGlvbiBoKHJlLGhlKXtmdW5jdGlvbiBPZSh2ZSl7dmFyIHllPVN0cmluZyh2ZXx8IiIpLnJlcGxhY2UoL152LywiIiksWWU9eWUuaW5kZXhPZigiLSIpLHluPVllPj0wP3llLnNsaWNlKDAsWWUpOnllLE1uPVllPj0wP3llLnNsaWNlKFllKzEpOiIiO3JldHVybntwYXJ0czp5bi5zcGxpdCgiLiIpLm1hcChmdW5jdGlvbihMaSl7cmV0dXJuIHBhcnNlSW50KExpLDEwKXx8MH0pLHByZTpNbixpc0RlYnVnOk1uLmluZGV4T2YoImRlYnVnIik9PT0wfX1mb3IodmFyIEtlPU9lKHJlKSxKZT1PZShoZSksU2U9MDtTZTwzO1NlKyspe3ZhciBCZT0oS2UucGFydHNbU2VdfHwwKS0oSmUucGFydHNbU2VdfHwwKTtpZihCZSE9PTApcmV0dXJuIEJlPjA/MTotMX1pZihLZS5pc0RlYnVnIT09SmUuaXNEZWJ1ZylyZXR1cm4gS2UuaXNEZWJ1Zz8xOi0xO2lmKEtlLmlzRGVidWcmJkplLmlzRGVidWcpZm9yKHZhciBMdD1LZS5wcmUuc3BsaXQoIi4iKSxHZT1KZS5wcmUuc3BsaXQoIi4iKSxfPTA7XzxNYXRoLm1heChMdC5sZW5ndGgsR2UubGVuZ3RoKTtfKyspe2lmKEx0W19dPT09dm9pZCAwKXJldHVybi0xO2lmKEdlW19dPT09dm9pZCAwKXJldHVybiAxO3ZhciBOPXBhcnNlSW50KEx0W19dLDEwKSxZPXBhcnNlSW50KEdlW19dLDEwKTtpZighaXNOYU4oTikmJiFpc05hTihZKSl7aWYoTiE9PVkpcmV0dXJuIE4+WT8xOi0xfWVsc2UgaWYoTHRbX10hPT1HZVtfXSlyZXR1cm4gTHRbX10+R2VbX10/MTotMX1yZXR1cm4gMH1mdW5jdGlvbiBtKHJlLGhlLE9lLEtlLEplLFNlKXtyZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxyZS5kaXNhYmxlZD0hMSxoZT4wP3JlLnRleHRDb250ZW50PSJcdTUzNDdcdTdFQTciOmhlPT09MD8ocmUudGV4dENvbnRlbnQ9Ilx1NURGMlx1NjYyRlx1NjcwMFx1NjVCMCIscmUuZGlzYWJsZWQ9ITApOlNlP3JlLnRleHRDb250ZW50PSJcdTkxQ0RcdTY1QjBcdTVCODlcdTg4QzUiOihyZS50ZXh0Q29udGVudD0iXHU3MjQ4XHU2NzJDXHU4RjgzXHU2NUU3IixyZS5kaXNhYmxlZD0hMCkscmUub25jbGljaz1yZS5kaXNhYmxlZD9udWxsOmZ1bmN0aW9uKCl7dHJ5e1dhbmROYXRpdmUuZG93bmxvYWRVcGRhdGUoT2UsS2UsSmUpfWNhdGNoKEJlKXt2KCJcdThDMDNcdTc1MjhcdTRFMEJcdThGN0RcdTU5MzFcdThEMjU6ICIrKEJlJiZCZS5tZXNzYWdlP0JlLm1lc3NhZ2U6QmUpLCJlcnJvciIpfX19dmFyIGI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFuZHJvaWQtYXBrLXNlY3Rpb24iKSx3PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWFway1jdXJyZW50LXJvdyIpLEU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLWFuZHJvaWQtYXBrLWN1cnJlbnQiKSxCPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWFway1naXRodWItcm93IiksRj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtYW5kcm9pZC1hcGstZ2l0aHViIikseD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG93bmxvYWQtZ2l0aHViLWFway1idG4iKSxTPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWFway1sb2NhbC1yb3ciKSxIPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1hbmRyb2lkLWFway1sb2NhbCIpLFI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRvd25sb2FkLWxvY2FsLWFway1idG4iKSwkPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWFway1tZXNzYWdlIiksST1lLmFuZHJvaWRBcGt8fHt9LEQ9ISF4bixUPUkuZW5hYmxlZCE9PSExLE89RHx8VCYmKCEhSS5naXRodWJ8fCEhSS5sb2NhbCk7aWYoYiYmKE8/Yi5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTpiLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpKSxEKXtpZih3JiZFJiYoRS50ZXh0Q29udGVudD0idiIreG4sdy5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSksSS5naXRodWImJkImJkYpe3ZhciBVPUkuZ2l0aHViLnZlcnNpb24/InYiK0kuZ2l0aHViLnZlcnNpb246SS5naXRodWIuZmlsZU5hbWU7aWYodHlwZW9mIEkuZ2l0aHViLnNpemU9PSJudW1iZXIiJiYoVSs9IiBceEI3ICIrbW4oSS5naXRodWIuc2l6ZSkpLEYudGV4dENvbnRlbnQ9VSxCLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLHgpe3ZhciBWPUkuZ2l0aHViLnZlcnNpb24/aChJLmdpdGh1Yi52ZXJzaW9uLHhuKToxO20oeCxWLEkuZ2l0aHViLmRvd25sb2FkVXJsLEkuZ2l0aHViLmZpbGVOYW1lfHwid2FuZC11cGRhdGUuYXBrIiwiZ2l0aHViIiwhMSl9fWlmKEkubG9jYWwmJlMmJkgpe3ZhciBYPUkubG9jYWwudmVyc2lvbj8idiIrSS5sb2NhbC52ZXJzaW9uOkkubG9jYWwuZmlsZU5hbWU7aWYodHlwZW9mIEkubG9jYWwuc2l6ZT09Im51bWJlciImJihYKz0iIFx4QjcgIittbihJLmxvY2FsLnNpemUpKSxILnRleHRDb250ZW50PVgsUy5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxSKXt2YXIgZWU9SS5sb2NhbC52ZXJzaW9uP2goSS5sb2NhbC52ZXJzaW9uLHhuKToxO20oUixlZSxJLmxvY2FsLmRvd25sb2FkVXJsLEkubG9jYWwuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5hcGsiLCJsb2NhbCIsITEpfX0hSS5naXRodWImJiFJLmxvY2FsJiYkJiYoJC50ZXh0Q29udGVudD0iXHU2NjgyXHU2NUUwXHU1M0VGXHU3NTI4XHU2NkY0XHU2NUIwIiwkLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKTt2YXIgWj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hdXRvLXVwZGF0ZS1yb3ciKSx1ZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hdXRvLXVwZGF0ZS1oaW50Iik7WiYmWi5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSx1ZSYmdWUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIil9ZWxzZXtpZihJLmdpdGh1YiYmQiYmRil7dmFyIEw9SS5naXRodWIudmVyc2lvbj8idiIrSS5naXRodWIudmVyc2lvbjpJLmdpdGh1Yi5maWxlTmFtZTt0eXBlb2YgSS5naXRodWIuc2l6ZT09Im51bWJlciImJihMKz0iIFx4QjcgIittbihJLmdpdGh1Yi5zaXplKSksRi50ZXh0Q29udGVudD1MLEIuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikseCYmKHgudGV4dENvbnRlbnQ9Ilx1NEUwQlx1OEY3RCIseC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSx4Lm9uY2xpY2s9ZnVuY3Rpb24oKXt3aW5kb3cub3BlbihJLmdpdGh1Yi5kb3dubG9hZFVybCwiX2JsYW5rIiksdigiXHU2QjYzXHU1NzI4XHU2MjUzXHU1RjAwXHU0RTBCXHU4RjdEXHU5ODc1XHUyMDI2IiwiaW5mbyIpfSl9aWYoSS5sb2NhbCYmUyYmSCl7dmFyIE09SS5sb2NhbC52ZXJzaW9uPyJ2IitJLmxvY2FsLnZlcnNpb246SS5sb2NhbC5maWxlTmFtZTt0eXBlb2YgSS5sb2NhbC5zaXplPT0ibnVtYmVyIiYmKE0rPSIgXHhCNyAiK21uKEkubG9jYWwuc2l6ZSkpLEgudGV4dENvbnRlbnQ9TSxTLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLFImJihSLnRleHRDb250ZW50PSJcdTRFMEJcdThGN0QiLFIuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksUi5vbmNsaWNrPWZ1bmN0aW9uKCl7ZyhJLmxvY2FsLmRvd25sb2FkVXJsLEkubG9jYWwuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5hcGsiLFIpfSl9IUkuZ2l0aHViJiYhSS5sb2NhbCYmJCYmKCQudGV4dENvbnRlbnQ9VD8iXHU1NzI4XHU3RUJGXHU3MjQ4XHU2NzJDXHU2NjgyXHU2NUY2XHU4M0I3XHU1M0Q2XHU1OTMxXHU4RDI1XHVGRjBDXHU1M0VGXHU3QTBEXHU1NDBFXHU5MUNEXHU4QkQ1IjoiQW5kcm9pZCBcdTRFMEJcdThGN0RcdTY3MkFcdTU3MjhcdTY3MERcdTUyQTFcdTdBRUZcdTU0MkZcdTc1MjgiLCQuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpfXZhciBqPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWNvcy1kbWctc2VjdGlvbiIpLEc9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1hY29zLWRtZy1jdXJyZW50LXJvdyIpLEs9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLW1hY29zLWRtZy1jdXJyZW50IiksaWU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1hY29zLWRtZy1naXRodWItcm93IiksdGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLW1hY29zLWRtZy1naXRodWIiKSxzZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG93bmxvYWQtZ2l0aHViLWRtZy1idG4iKSxvZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibWFjb3MtZG1nLWxvY2FsLXJvdyIpLHFlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1tYWNvcy1kbWctbG9jYWwiKSxFZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG93bmxvYWQtbG9jYWwtZG1nLWJ0biIpLEZlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWNvcy1kbWctbWVzc2FnZSIpLHE9ZS5tYWNvc0RtZ3x8e30sUmU9ISFhbix6PXEuZW5hYmxlZCE9PSExLGxlPVJlfHx6JiYoISFxLmdpdGh1Ynx8ISFxLmxvY2FsKTtpZihqJiYobGU/ai5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTpqLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpKSxSZSl7aWYoRyYmSyYmKEsudGV4dENvbnRlbnQ9InYiK2FuLEcuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLHEuZ2l0aHViJiZpZSYmdGUpe3ZhciBnZT1xLmdpdGh1Yi52ZXJzaW9uPyJ2IitxLmdpdGh1Yi52ZXJzaW9uOnEuZ2l0aHViLmZpbGVOYW1lO2lmKHR5cGVvZiBxLmdpdGh1Yi5zaXplPT0ibnVtYmVyIiYmKGdlKz0iIFx4QjcgIittbihxLmdpdGh1Yi5zaXplKSksdGUudGV4dENvbnRlbnQ9Z2UsaWUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksc2Upe3ZhciBuZT1xLmdpdGh1Yi52ZXJzaW9uP2gocS5naXRodWIudmVyc2lvbixhbik6MTttKHNlLG5lLHEuZ2l0aHViLmRvd25sb2FkVXJsLHEuZ2l0aHViLmZpbGVOYW1lfHwid2FuZC11cGRhdGUuZG1nIiwiZ2l0aHViIiwhMCl9fWlmKHEubG9jYWwmJm9lJiZxZSl7dmFyIGRlPXEubG9jYWwudmVyc2lvbj8idiIrcS5sb2NhbC52ZXJzaW9uOnEubG9jYWwuZmlsZU5hbWU7aWYodHlwZW9mIHEubG9jYWwuc2l6ZT09Im51bWJlciImJihkZSs9IiBceEI3ICIrbW4ocS5sb2NhbC5zaXplKSkscWUudGV4dENvbnRlbnQ9ZGUsb2UuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksRWUpe3ZhciBWZT1xLmxvY2FsLnZlcnNpb24/aChxLmxvY2FsLnZlcnNpb24sYW4pOjE7bShFZSxWZSxxLmxvY2FsLmRvd25sb2FkVXJsLHEubG9jYWwuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5kbWciLCJsb2NhbCIsITApfX0hcS5naXRodWImJiFxLmxvY2FsJiZGZSYmKEZlLnRleHRDb250ZW50PSJcdTY2ODJcdTY1RTBcdTUzRUZcdTc1MjhcdTY2RjRcdTY1QjAiLEZlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKTt2YXIgZHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1hY29zLWF1dG8tdXBkYXRlLXJvdyIpLFZ0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWNvcy1hdXRvLXVwZGF0ZS1oaW50Iik7ZHQmJmR0LmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLFZ0JiZWdC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX1lbHNle2lmKHEuZ2l0aHViJiZpZSYmdGUpe3ZhciBldD1xLmdpdGh1Yi52ZXJzaW9uPyJ2IitxLmdpdGh1Yi52ZXJzaW9uOnEuZ2l0aHViLmZpbGVOYW1lO3R5cGVvZiBxLmdpdGh1Yi5zaXplPT0ibnVtYmVyIiYmKGV0Kz0iIFx4QjcgIittbihxLmdpdGh1Yi5zaXplKSksdGUudGV4dENvbnRlbnQ9ZXQsaWUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksc2UmJihzZS50ZXh0Q29udGVudD0iXHU0RTBCXHU4RjdEIixzZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxzZS5vbmNsaWNrPWZ1bmN0aW9uKCl7d2luZG93Lm9wZW4ocS5naXRodWIuZG93bmxvYWRVcmwsIl9ibGFuayIpLHYoIlx1NkI2M1x1NTcyOFx1NjI1M1x1NUYwMFx1NEUwQlx1OEY3RFx1OTg3NVx1MjAyNiIsImluZm8iKX0pfWlmKHEubG9jYWwmJm9lJiZxZSl7dmFyIHR0PXEubG9jYWwudmVyc2lvbj8idiIrcS5sb2NhbC52ZXJzaW9uOnEubG9jYWwuZmlsZU5hbWU7dHlwZW9mIHEubG9jYWwuc2l6ZT09Im51bWJlciImJih0dCs9IiBceEI3ICIrbW4ocS5sb2NhbC5zaXplKSkscWUudGV4dENvbnRlbnQ9dHQsb2UuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksRWUmJihFZS50ZXh0Q29udGVudD0iXHU0RTBCXHU4RjdEIixFZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxFZS5vbmNsaWNrPWZ1bmN0aW9uKCl7ZyhxLmxvY2FsLmRvd25sb2FkVXJsLHEubG9jYWwuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5kbWciLEVlKX0pfSFxLmdpdGh1YiYmIXEubG9jYWwmJkZlJiYoRmUudGV4dENvbnRlbnQ9ej8iXHU1NzI4XHU3RUJGXHU3MjQ4XHU2NzJDXHU2NjgyXHU2NUY2XHU4M0I3XHU1M0Q2XHU1OTMxXHU4RDI1XHVGRjBDXHU1M0VGXHU3QTBEXHU1NDBFXHU5MUNEXHU4QkQ1IjoibWFjT1MgXHU0RTBCXHU4RjdEXHU2NzJBXHU1NzI4XHU2NzBEXHU1MkExXHU3QUVGXHU1NDJGXHU3NTI4IixGZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSl9dmFyIG50PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWNvbm5lY3QtY29kZSIpLEZ0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWNvbm5lY3QtcXIiKSxydD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1jb25uZWN0LXFyLWVtcHR5IiksaXQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFuZHJvaWQtY29ubmVjdC1xci13cmFwIik7aWYobnQpe250LnRleHRDb250ZW50PSJcdTUyQTBcdThGN0RcdTRFMkQuLi4iLHJ0JiYocnQudGV4dENvbnRlbnQ9Ilx1NzUxRlx1NjIxMFx1NEUyRFx1MjAyNiIpLEZ0JiYoRnQuc3R5bGUudmlzaWJpbGl0eT0iaGlkZGVuIik7dmFyIGtlPSIvYXBpL2FwcC1jb25uZWN0LWNvZGUiO3dpbmRvdy5sb2NhdGlvbiYmd2luZG93LmxvY2F0aW9uLm9yaWdpbiYmKGtlKz0iP29yaWdpbj0iK2VuY29kZVVSSUNvbXBvbmVudCh3aW5kb3cubG9jYXRpb24ub3JpZ2luKSksZmV0Y2goa2Use2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHJlKXtyZXR1cm4gcmUuanNvbigpfSkudGhlbihmdW5jdGlvbihyZSl7cmUuY29kZT8obnQudGV4dENvbnRlbnQ9cmUuY29kZSxyLmFuZHJvaWRDb25uZWN0Q29kZT1yZS5jb2RlLG1tKHJlLmNvZGUpKToobnQudGV4dENvbnRlbnQ9Ilx1NzUxRlx1NjIxMFx1NTkzMVx1OEQyNSIscnQmJihydC50ZXh0Q29udGVudD0iXHU3NTFGXHU2MjEwXHU1OTMxXHU4RDI1IikpfSkuY2F0Y2goZnVuY3Rpb24oKXtudC50ZXh0Q29udGVudD0iXHU4M0I3XHU1M0Q2XHU1OTMxXHU4RDI1IixydCYmKHJ0LnRleHRDb250ZW50PSJcdTgzQjdcdTUzRDZcdTU5MzFcdThEMjUiKX0pfWl0JiYhaXQuZGF0YXNldC5ib3VuZCYmKGl0LmRhdGFzZXQuYm91bmQ9IjEiLGl0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3IuYW5kcm9pZENvbm5lY3RDb2RlJiZnbShyLmFuZHJvaWRDb25uZWN0Q29kZSl9KSk7dmFyIGZlPWUuY29uZmlnfHx7fSxDZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWhvc3QiKSxDPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctcG9ydCIpLGF0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctaHR0cHMiKSx3dD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLW1vZGUiKSxTdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWN3ZCIpLHl0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctc2hlbGwiKTtDZSYmKENlLnZhbHVlPWZlLmhvc3R8fCIiKSxDJiYoQy52YWx1ZT1mZS5wb3J0fHwiIiksYXQmJihhdC5jaGVja2VkPWZlLmh0dHBzPT09ITApLHd0JiYod3QudmFsdWU9ZmUuZGVmYXVsdE1vZGV8fCJkZWZhdWx0IiksU3QmJihTdC52YWx1ZT1mZS5kZWZhdWx0Q3dkfHwiIikseXQmJih5dC52YWx1ZT1mZS5zaGVsbHx8IiIpO3ZhciBJdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWxhbmd1YWdlIik7SXQmJihJdC52YWx1ZT1mZS5sYW5ndWFnZXx8IiIpO3ZhciB1dD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLXN0cnVjdHVyZWQtcnVubmVyIik7dXQmJih1dC52YWx1ZT1mZS5zdHJ1Y3R1cmVkUnVubmVyfHwiY2xpIik7dmFyIEt0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctaW5oZXJpdC1lbnYiKTtLdCYmKEt0LmNoZWNrZWQ9ZmUuaW5oZXJpdEVudiE9PSExKSxyLmNvbmZpZ0RlZmF1bHRNb2RlbD1mZS5kZWZhdWx0TW9kZWx8fCIiLERpKCksSm8oKS50aGVuKGZ1bmN0aW9uKCl7RGkoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSk7dmFyIEhlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZXJ0LXN0YXR1cyIpO0hlJiYoSGUudGV4dENvbnRlbnQ9ZS5oYXNDZXJ0PyJcdTVERjJcdTVCODlcdTg4QzUgU1NMIFx1OEJDMVx1NEU2NiI6Ilx1NjcyQVx1NUI4OVx1ODhDNVx1OEJDMVx1NEU2Nlx1RkYwOFx1NEY3Rlx1NzUyOFx1ODFFQVx1N0I3RVx1NTQwRFx1NjIxNiBIVFRQXHVGRjA5IixIZS5zdHlsZS5jb2xvcj1lLmhhc0NlcnQ/InZhcigtLXN1Y2Nlc3MpIjoidmFyKC0tdGV4dC1zZWNvbmRhcnkpIik7dmFyIEFlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwcmVzZXRzLWxpc3QiKTtpZihBZSYmZmUuY29tbWFuZFByZXNldHMpe2Zvcih2YXIgeGU9IiIsZnQ9MDtmdDxmZS5jb21tYW5kUHJlc2V0cy5sZW5ndGg7ZnQrKyl7dmFyIHB0PWZlLmNvbW1hbmRQcmVzZXRzW2Z0XTt4ZSs9JzxkaXYgY2xhc3M9InByZXNldC1pdGVtIj48c3BhbiBjbGFzcz0icHJlc2V0LWxhYmVsIj4nK3AocHQubGFiZWwpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InByZXNldC1kZXRhaWwiPicrcChwdC5jb21tYW5kKSsocHQubW9kZT8iICgiK3AocHQubW9kZSkrIikiOiIiKSsiPC9zcGFuPjwvZGl2PiJ9eGV8fCh4ZT0nPGRpdiBjbGFzcz0iZW1wdHktc3RhdGUtY29tcGFjdCI+PHNwYW4gY2xhc3M9ImVtcHR5LWljb24iPlx1MjY5OTwvc3Bhbj48c3Bhbj5cdTZDQTFcdTY3MDlcdTU0N0RcdTRFRTRcdTk4ODRcdThCQkU8L3NwYW4+PHNwYW4gY2xhc3M9ImhpbnQiPlx1NTcyOCBjb25maWcuanNvbiBcdTc2ODQgY29tbWFuZFByZXNldHMgXHU0RTJEXHU5MTREXHU3RjZFPC9zcGFuPjwvZGl2PicpLEFlLmlubmVySFRNTD14ZX12YXIgV2U9ZmUuY2FyZERlZmF1bHRzfHx7fSxobj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtZWRpdCIpLFR0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctY2FyZC1pbmxpbmUiKSxMbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdGVybWluYWwiKSxzdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdGhpbmtpbmciKSxwZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdG9vbGdyb3VwIik7aG4mJihobi5jaGVja2VkPVdlLmVkaXRDYXJkcz09PSEwKSxUdCYmKFR0LmNoZWNrZWQ9V2UuaW5saW5lVG9vbHM9PT0hMCksTG4mJihMbi5jaGVja2VkPVdlLnRlcm1pbmFsPT09ITApLHN0JiYoc3QuY2hlY2tlZD1XZS50aGlua2luZz09PSEwKSxwZSYmKHBlLmNoZWNrZWQ9V2UudG9vbEdyb3VwPT09ITApfSkuY2F0Y2goZnVuY3Rpb24oKXt9KX1mdW5jdGlvbiB5bSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25maWctbWVzc2FnZSIpO2UmJihlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGUudGV4dENvbnRlbnQ9IiIpO3ZhciB0PXtob3N0Oihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWhvc3QiKXx8e30pLnZhbHVlLHBvcnQ6TnVtYmVyKChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLXBvcnQiKXx8e30pLnZhbHVlKSxodHRwczooZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1odHRwcyIpfHx7fSkuY2hlY2tlZCxkZWZhdWx0TW9kZTooZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1tb2RlIil8fHt9KS52YWx1ZSxkZWZhdWx0Q3dkOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWN3ZCIpfHx7fSkudmFsdWUsc2hlbGw6KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctc2hlbGwiKXx8e30pLnZhbHVlLGxhbmd1YWdlOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWxhbmd1YWdlIil8fHt9KS52YWx1ZXx8IiIsZGVmYXVsdE1vZGVsOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWRlZmF1bHQtbW9kZWwiKXx8e30pLnZhbHVlfHwiIixzdHJ1Y3R1cmVkUnVubmVyOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLXN0cnVjdHVyZWQtcnVubmVyIil8fHt9KS52YWx1ZXx8ImNsaSIsaW5oZXJpdEVudjooZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1pbmhlcml0LWVudiIpfHx7fSkuY2hlY2tlZCE9PSExfSxuPXIuY29uZmlnJiZyLmNvbmZpZy5kZWZhdWx0TW9kZWx8fCIiLGk9dC5kZWZhdWx0TW9kZWx8fCIiO2ZldGNoKCIvYXBpL3NldHRpbmdzL2NvbmZpZyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkodCl9KS50aGVuKGZ1bmN0aW9uKGEpe3JldHVybiBhLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oYSl7aWYoZSYmKGEuZXJyb3I/KGUudGV4dENvbnRlbnQ9YS5lcnJvcixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiKTooZS50ZXh0Q29udGVudD1hLnJlc3RhcnRSZXF1aXJlZD8iXHU5MTREXHU3RjZFXHU1REYyXHU0RkREXHU1QjU4XHVGRjBDXHU5MEU4XHU1MjA2XHU5MEU4XHU3RjcyXHU1QjU3XHU2QkI1XHVGRjA4aG9zdC9wb3J0L2h0dHBzL3NoZWxsXHVGRjA5XHU5NzAwXHU4OTgxXHU5MUNEXHU1NDJGXHU2NzBEXHU1MkExXHU2MjREXHU3NTFGXHU2NTQ4XHUzMDAyIjoiXHU5MTREXHU3RjZFXHU1REYyXHU0RkREXHU1QjU4XHUzMDAyIixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1zdWNjZXNzKSIpLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLCghYXx8IWEuZXJyb3IpJiYoci5jb25maWcmJihyLmNvbmZpZy5kZWZhdWx0TW9kZWw9aSksci5jb25maWdEZWZhdWx0TW9kZWw9aSxpIT09bikpe3IuY2hhdE1vZGVsPSIiO3RyeXtsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgid2FuZC1jaGF0LW1vZGVsIil9Y2F0Y2h7fVhuKGd0KCkpfX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZSYmKGUudGV4dENvbnRlbnQ9Ilx1NEZERFx1NUI1OFx1NTkzMVx1OEQyNVx1MzAwMiIsZS5zdHlsZS5jb2xvcj0idmFyKC0tZXJyb3IpIixlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKX0pfWZ1bmN0aW9uIGJtKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpc3BsYXktbWVzc2FnZSIpO2UmJihlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGUudGV4dENvbnRlbnQ9IiIpO3ZhciB0PXtjYXJkRGVmYXVsdHM6e2VkaXRDYXJkczohIShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtZWRpdCIpfHx7fSkuY2hlY2tlZCxpbmxpbmVUb29sczohIShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtaW5saW5lIil8fHt9KS5jaGVja2VkLHRlcm1pbmFsOiEhKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctY2FyZC10ZXJtaW5hbCIpfHx7fSkuY2hlY2tlZCx0aGlua2luZzohIShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdGhpbmtpbmciKXx8e30pLmNoZWNrZWQsdG9vbEdyb3VwOiEhKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctY2FyZC10b29sZ3JvdXAiKXx8e30pLmNoZWNrZWR9fTtmZXRjaCgiL2FwaS9zZXR0aW5ncy9jb25maWciLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHQpfSkudGhlbihmdW5jdGlvbihuKXtyZXR1cm4gbi5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKG4pe2UmJihuLmVycm9yPyhlLnRleHRDb250ZW50PW4uZXJyb3IsZS5zdHlsZS5jb2xvcj0idmFyKC0tZXJyb3IpIik6KGUudGV4dENvbnRlbnQ9Ilx1NjYzRVx1NzkzQVx1OEJCRVx1N0Y2RVx1NURGMlx1NEZERFx1NUI1OCIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiKSxlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKSwhbi5lcnJvciYmci5jb25maWcmJihyLmNvbmZpZy5jYXJkRGVmYXVsdHM9dC5jYXJkRGVmYXVsdHMpfSkuY2F0Y2goZnVuY3Rpb24oKXtlJiYoZS50ZXh0Q29udGVudD0iXHU0RkREXHU1QjU4XHU1OTMxXHU4RDI1XHUzMDAyIixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpfSl9ZnVuY3Rpb24gRW0oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2VydC1rZXktZmlsZSIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNlcnQtY2VydC1maWxlIiksbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2VydC1tZXNzYWdlIik7aWYobiYmKG4uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksbi50ZXh0Q29udGVudD0iIiksIWV8fCFlLmZpbGVzfHwhZS5maWxlc1swXXx8IXR8fCF0LmZpbGVzfHwhdC5maWxlc1swXSl7biYmKG4udGV4dENvbnRlbnQ9Ilx1OEJGN1x1OTAwOVx1NjJFOVx1NzlDMVx1OTRBNVx1NTQ4Q1x1OEJDMVx1NEU2Nlx1NjU4N1x1NEVGNlx1MzAwMiIsbi5zdHlsZS5jb2xvcj0idmFyKC0tZXJyb3IpIixuLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKTtyZXR1cm59dmFyIGk9bmV3IEZpbGVSZWFkZXI7aS5vbmxvYWQ9ZnVuY3Rpb24oKXt2YXIgYT1pLnJlc3VsdCx1PW5ldyBGaWxlUmVhZGVyO3Uub25sb2FkPWZ1bmN0aW9uKCl7dmFyIHM9dS5yZXN1bHQ7ZmV0Y2goIi9hcGkvc2V0dGluZ3MvdXBsb2FkLWNlcnQiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtrZXk6YSxjZXJ0OnN9KX0pLnRoZW4oZnVuY3Rpb24obyl7cmV0dXJuIG8uanNvbigpfSkudGhlbihmdW5jdGlvbihvKXtpZihuKXtpZihvLmVycm9yKW4udGV4dENvbnRlbnQ9by5lcnJvcixuLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiO2Vsc2V7bi50ZXh0Q29udGVudD0iXHU4QkMxXHU0RTY2XHU1REYyXHU0RTBBXHU0RjIwXHVGRjBDXHU5MUNEXHU1NDJGXHU1NDBFXHU3NTFGXHU2NTQ4XHUzMDAyIixuLnN0eWxlLmNvbG9yPSJ2YXIoLS1zdWNjZXNzKSI7dmFyIGw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNlcnQtc3RhdHVzIik7bCYmKGwudGV4dENvbnRlbnQ9Ilx1NURGMlx1NUI4OVx1ODhDNSBTU0wgXHU4QkMxXHU0RTY2IixsLnN0eWxlLmNvbG9yPSJ2YXIoLS1zdWNjZXNzKSIpfW4uY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIil9fSkuY2F0Y2goZnVuY3Rpb24oKXtuJiYobi50ZXh0Q29udGVudD0iXHU0RTBBXHU0RjIwXHU1OTMxXHU4RDI1XHUzMDAyIixuLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiLG4uY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpfSl9LHUucmVhZEFzVGV4dCh0LmZpbGVzWzBdKX0saS5yZWFkQXNUZXh0KGUuZmlsZXNbMF0pfWZ1bmN0aW9uIG5sKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLWxhdGVzdC12ZXJzaW9uIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG8tdXBkYXRlLWJ1dHRvbiIpLG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInVwZGF0ZS1tZXNzYWdlIik7ZSYmKGUudGV4dENvbnRlbnQ9Ilx1NjhDMFx1NjdFNVx1NEUyRC4uLiIpLG4mJm4uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksdCYmdC5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxmZXRjaCgiL2FwaS9jaGVjay11cGRhdGUiLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGkpe2lmKGkuZXJyb3Ipe2UmJihlLnRleHRDb250ZW50PSJcdTY4QzBcdTY3RTVcdTU5MzFcdThEMjUiKTtyZXR1cm59dmFyIGE9aS5jaGFubmVsPT09ImJldGEiO2lmKGUmJihlLnRleHRDb250ZW50PWkubGF0ZXN0fHwoYT8iYmV0YSBcdTY3MkFcdTUzRDFcdTVFMDMiOiItIikpLCFpLmxhdGVzdCl7biYmKG4udGV4dENvbnRlbnQ9YT8iXHU2NUUwXHU2Q0Q1XHU4QkZCXHU1M0Q2IG5wbSBiZXRhIFx1NzI0OFx1NjcyQ1x1MzAwMiI6Ilx1NjVFMFx1NkNENVx1OEZERVx1NjNBNVx1NTIzMCBucG0gcmVnaXN0cnlcdTMwMDIiLG4uc3R5bGUuY29sb3I9InZhcigtLWVycm9yKSIsbi5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSk7cmV0dXJufWkudXBkYXRlQXZhaWxhYmxlJiZ0JiYodC50ZXh0Q29udGVudD1hPyJcdTY2RjRcdTY1QjBcdTUyMzAgQmV0YSI6Ilx1NjZGNFx1NjVCMFx1NTIzMFx1NjcwMFx1NjVCMFx1NzI0OCIsdC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSksIWkudXBkYXRlQXZhaWxhYmxlJiZuJiYobi50ZXh0Q29udGVudD1hPyJcdTVERjJcdTY2MkZcdTY3MDBcdTY1QjAgQmV0YSBcdTcyNDhcdTY3MkNcdTMwMDIiOiJcdTVERjJcdTY2MkZcdTY3MDBcdTY1QjBcdTcyNDhcdTY3MkNcdTMwMDIiLG4uc3R5bGUuY29sb3I9InZhcigtLXN1Y2Nlc3MpIixuLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZSYmKGUudGV4dENvbnRlbnQ9Ilx1NjhDMFx1NjdFNVx1NTkzMVx1OEQyNSIpfSl9ZnVuY3Rpb24gRm0oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidXBkYXRlLW1lc3NhZ2UiKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkby11cGRhdGUtYnV0dG9uIik7dCYmKHQuZGlzYWJsZWQ9ITAsZSYmKGUudGV4dENvbnRlbnQ9Ilx1NkI2M1x1NTcyOFx1NjZGNFx1NjVCMFx1RkYwQ1x1OEJGN1x1N0EwRFx1NTAxOS4uLiIsZS5zdHlsZS5jb2xvcj0idmFyKC0tdGV4dC1zZWNvbmRhcnkpIixlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKSxmZXRjaCgiL2FwaS91cGRhdGUiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIG4uanNvbigpfSkudGhlbihmdW5jdGlvbihuKXtpZihuLmVycm9yKXtlJiYoZS50ZXh0Q29udGVudD1uLmVycm9yLGUuc3R5bGUuY29sb3I9InZhcigtLWVycm9yKSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSksdC5kaXNhYmxlZD0hMTtyZXR1cm59aWYoZSYmKGUudGV4dENvbnRlbnQ9KG4ubWVzc2FnZXx8Ilx1NjZGNFx1NjVCMFx1NUI4Q1x1NjIxMCIpKyJcdUZGMENcdTZCNjNcdTU3MjhcdTkxQ0RcdTU0MkZcdTY3MERcdTUyQTFcdTIwMjYiLGUuc3R5bGUuY29sb3I9InZhcigtLXN1Y2Nlc3MpIixlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKSx0LmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLG4uZGV0YWNoZWRVcGRhdGUpdW4oKTtlbHNlIGlmKG4ucmVzdGFydFJlcXVpcmVkIT09ITEpTHMobnVsbCxlKTtlbHNle3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkby1yZXN0YXJ0LWJ1dHRvbiIpO2kmJmkuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIil9fSkuY2F0Y2goZnVuY3Rpb24oKXtlJiYoZS50ZXh0Q29udGVudD0iXHU2NkY0XHU2NUIwXHU1OTMxXHU4RDI1XHUzMDAyIixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLHQuZGlzYWJsZWQ9ITF9KSl9ZnVuY3Rpb24gd20oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG8tcmVzdGFydC1idXR0b24iKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ1cGRhdGUtbWVzc2FnZSIpO0xzKGUsdCl9ZnVuY3Rpb24gQ20oKXtmZXRjaCgiL2FwaS9hdXRvLXVwZGF0ZSIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oZSl7aWYoZS5hcGspcmV0dXJuIGZldGNoKCIvYXBpL2FuZHJvaWQtYXBrLXVwZGF0ZT9jdXJyZW50VmVyc2lvbj0iK2VuY29kZVVSSUNvbXBvbmVudCh4bikse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7aWYoISghdC51cGRhdGVBdmFpbGFibGV8fCF0LmRvd25sb2FkVXJsKSl0cnl7V2FuZE5hdGl2ZS5kb3dubG9hZFVwZGF0ZSh0LmRvd25sb2FkVXJsLHQuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5hcGsiLHQuc291cmNlfHwibG9jYWwiKX1jYXRjaHt9fSl9KS5jYXRjaChmdW5jdGlvbigpe30pfWZ1bmN0aW9uIEJtKCl7YW4mJmZldGNoKCIvYXBpL2F1dG8tdXBkYXRlIix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGUuanNvbigpfSkudGhlbihmdW5jdGlvbihlKXtpZihlLmRtZylyZXR1cm4gZmV0Y2goIi9hcGkvbWFjb3MtZG1nLXVwZGF0ZT9jdXJyZW50VmVyc2lvbj0iK2VuY29kZVVSSUNvbXBvbmVudChhbikse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7aWYoISghdC51cGRhdGVBdmFpbGFibGV8fCF0LmRvd25sb2FkVXJsKSl0cnl7V2FuZE5hdGl2ZS5kb3dubG9hZFVwZGF0ZSh0LmRvd25sb2FkVXJsLHQuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5kbWciLHQuc291cmNlfHwibG9jYWwiKX1jYXRjaHt9fSl9KS5jYXRjaChmdW5jdGlvbigpe30pfWZ1bmN0aW9uICRhKGUsdCl7dmFyIG49e307bltlXT10LGZldGNoKCIvYXBpL2F1dG8tdXBkYXRlIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShuKX0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpfSkudGhlbihmdW5jdGlvbihpKXt2YXIgYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by11cGRhdGUtd2ViLXRvZ2dsZSIpLHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF1dG8tdXBkYXRlLWFway10b2dnbGUiKSxzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS1kbWctdG9nZ2xlIik7YSYmKGEuY2hlY2tlZD0hIWkud2ViKSx1JiYodS5jaGVja2VkPSEhaS5hcGspLHMmJihzLmNoZWNrZWQ9ISFpLmRtZyl9KS5jYXRjaChmdW5jdGlvbigpe3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS0iK2UrIi10b2dnbGUiKTtpJiYoaS5jaGVja2VkPSF0KX0pfWZ1bmN0aW9uIERtKGUpe2ZldGNoKCIvYXBpL3VwZGF0ZS1jaGFubmVsIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7Y2hhbm5lbDplfSl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7dmFyIG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJldGEtY2hhbm5lbC10b2dnbGUiKTtuJiYobi5jaGVja2VkPXQuY2hhbm5lbD09PSJiZXRhIiksbmwoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJldGEtY2hhbm5lbC10b2dnbGUiKTt0JiYodC5jaGVja2VkPWUhPT0iYmV0YSIpfSl9ZnVuY3Rpb24gcmwoZSl7Zm9yKHZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXR0aW5ncy1hcHAtaWNvbi1vcHRpb24iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciBpPXRbbl0uZ2V0QXR0cmlidXRlKCJkYXRhLWljb24iKT09PWU7dFtuXS5jbGFzc0xpc3QudG9nZ2xlKCJzZWxlY3RlZCIsaSksdFtuXS5zZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIsaT8idHJ1ZSI6ImZhbHNlIil9fWZ1bmN0aW9uIGduKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1wZXJtaXNzaW9uLXN0YXR1cyIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1yZXF1ZXN0LWJ0biIpLG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1yZXNldC1idG4iKSxpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1tZXNzYWdlIik7aWYoZSl7dmFyIGE9c2koKTtpZihhPT09bnVsbCl7aWYodHlwZW9mIE5vdGlmaWNhdGlvbj4idSIpe2UudGV4dENvbnRlbnQ9Ilx1NEUwRFx1NjUyRlx1NjMwMSIsZS5zdHlsZS5jb2xvcj0idmFyKC0tZmctbXV0ZWQpIix0JiZ0LmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLG4mJm4uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIik7cmV0dXJufWE9Tm90aWZpY2F0aW9uLnBlcm1pc3Npb259YT09PSJncmFudGVkIj8oZS50ZXh0Q29udGVudD0iXHU1REYyXHU2Mzg4XHU2NzQzIFx1MjcxMyIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiLHQmJnQuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksbiYmbi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSk6YT09PSJkZW5pZWQiPyhlLnRleHRDb250ZW50PSJcdTVERjJcdTYyRDJcdTdFREQiLGUuc3R5bGUuY29sb3I9InZhcigtLWRhbmdlcikiLHQmJnQuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksbiYmbi5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSk6KGUudGV4dENvbnRlbnQ9Ilx1NjcyQVx1NjM4OFx1Njc0MyIsZS5zdHlsZS5jb2xvcj0idmFyKC0td2FybmluZykiLHQmJnQuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksbiYmbi5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSl9fWZ1bmN0aW9uIGttKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi10ZXN0LW1lc3NhZ2UiKTtpZihOZSl7d2luZG93Ll9vbk5hdGl2ZVBlcm1pc3Npb25SZXN1bHQ9ZnVuY3Rpb24odCl7Z24oKSxlJiYodD09PSJncmFudGVkIj8oZS50ZXh0Q29udGVudD0iXHUyNzEzIFx1NURGMlx1NjM4OFx1Njc0MyIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiKTooZS50ZXh0Q29udGVudD0iXHUyNzE3IFx1NjcyQVx1NjM4OFx1Njc0M1x1RkYwQ1x1OEJGN1x1NTcyOFx1N0NGQlx1N0VERlx1OEJCRVx1N0Y2RVx1NEUyRFx1NUYwMFx1NTQyRiBXYW5kIFx1NzY4NFx1OTAxQVx1NzdFNVx1Njc0M1x1OTY1MCIsZS5zdHlsZS5jb2xvcj0idmFyKC0tZGFuZ2VyKSIpLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLGRlbGV0ZSB3aW5kb3cuX29uTmF0aXZlUGVybWlzc2lvblJlc3VsdH07dHJ5e1dhbmROYXRpdmUucmVxdWVzdFBlcm1pc3Npb24oKX1jYXRjaHt9cmV0dXJufXR5cGVvZiBOb3RpZmljYXRpb24+InUifHxOb3RpZmljYXRpb24ucmVxdWVzdFBlcm1pc3Npb24oKS50aGVuKGZ1bmN0aW9uKHQpe2lmKGduKCksdD09PSJncmFudGVkIillJiYoZS50ZXh0Q29udGVudD0iXHUyNzEzIFx1NURGMlx1NjM4OFx1Njc0MyIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpO2Vsc2UgaWYodD09PSJkZW5pZWQiJiZlKXt2YXIgbj1sb2NhdGlvbi5vcmlnaW47ZS5pbm5lckhUTUw9J1x1NkQ0Rlx1ODlDOFx1NTY2OFx1NURGMlx1NjJFNlx1NjIyQVx1NjM4OFx1Njc0M1x1NUYzOVx1N0E5N1x1RkYwQ1x1OEJGN1x1NjI0Qlx1NTJBOFx1OTFDRFx1N0Y2RVx1RkYxQTxicj48c3BhbiBzdHlsZT0iZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDttYXJnaW46NHB4IDAiPlx1MjQ2MCBcdTcwQjlcdTUxRkJcdTU3MzBcdTU3NDBcdTY4MEZcdTVERTZcdTRGQTdcdTc2ODQgPHNwYW4gc3R5bGU9ImRpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Zm9udC1zaXplOjExcHg7dmVydGljYWwtYWxpZ246bWlkZGxlIj5pPC9zcGFuPiBcdTYyMTZcdTk1MDFcdTU2RkVcdTY4MDc8L3NwYW4+PGJyPlx1MjQ2MSBcdTYyN0VcdTUyMzBcdTMwMENcdTkwMUFcdTc3RTVcdTMwMERcdTIxOTIgXHU2NTM5XHU0RTNBXHUzMDBDXHU1MTQxXHU4QkI4XHUzMDBEPGJyPlx1MjQ2MiBcdTUyMzdcdTY1QjBcdTk4NzVcdTk3NjJcdTUzNzNcdTUzRUYnLGUuc3R5bGUuY29sb3I9InZhcigtLWZnLW11dGVkKSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX19KX1mdW5jdGlvbiBpbCgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1kZWxheS1idG4iKTtlJiYoZS5kaXNhYmxlZD0hMSxlLnRleHRDb250ZW50PSIxMCBcdTc5RDJcdTU0MEVcdTUzRDFcdTkwMDEiKX1mdW5jdGlvbiBBbSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1tZXNzYWdlIik7ci5kZWxheWVkTm90aWZpY2F0aW9uVGltZXImJihjbGVhclRpbWVvdXQoci5kZWxheWVkTm90aWZpY2F0aW9uVGltZXIpLHIuZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyPW51bGwpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1kZWxheS1idG4iKTt0JiYodC5kaXNhYmxlZD0hMCx0LnRleHRDb250ZW50PSJcdTVERjJcdTVCODlcdTYzOTJcdUZGMDgxMHNcdUZGMDkiKSxlJiYoZS5pbm5lckhUTUw9Ilx1NURGMlx1NUI4OVx1NjM5MiAxMCBcdTc5RDJcdTU0MEVcdTUzRDFcdTkwMDFcdTZENEJcdThCRDVcdTkwMUFcdTc3RTVcdUZGMENcdThCRjdcdTUyMDdcdTUyMzBcdTU0MEVcdTUzRjBcdTdCNDlcdTVGODVcdTMwMDIiLGUuc3R5bGUuY29sb3I9InZhcigtLXRleHQtc2Vjb25kYXJ5KSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSksci5kZWxheWVkTm90aWZpY2F0aW9uVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe3IuZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyPW51bGwsaWwoKSxhbCgpfSwxZTQpfWZ1bmN0aW9uIGFsKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi10ZXN0LW1lc3NhZ2UiKSx0PVtdO3IuZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyJiYoY2xlYXJUaW1lb3V0KHIuZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyKSxyLmRlbGF5ZWROb3RpZmljYXRpb25UaW1lcj1udWxsLGlsKCkpO3ZhciBuPWJmKCk7dC5wdXNoKG4/Ilx1MjcxMyBcdTYzRDBcdTc5M0FcdTk3RjMiOiJcdTI3MTcgXHU2M0QwXHU3OTNBXHU5N0YzXHVGRjA4XHU2NUUwXHU2Q0Q1XHU2NEFEXHU2NTNFXHVGRjA5Iik7dmFyIGk9ci5ub3RpZkJ1YmJsZTtpZihkYSh7dGl0bGU6Ilx1NkQ0Qlx1OEJENVx1OTAxQVx1NzdFNSIsYm9keToiXHU4RkQ5XHU2NjJGXHU0RTAwXHU2NzYxXHU2RDRCXHU4QkQ1XHU5MDFBXHU3N0U1XHUzMDAyIix0eXBlOiJpbmZvIixpY29uOiJcdTI2NkEiLGR1cmF0aW9uOjVlMyxwbGF5U291bmQ6ITF9KSx0LnB1c2goaT8iXHUyNzEzIFx1NUU5NFx1NzUyOFx1NTE4NVx1NkMxNFx1NkNFMSI6Ilx1MjAxMyBcdTVFOTRcdTc1MjhcdTUxODVcdTZDMTRcdTZDRTFcdUZGMDhcdTVERjJcdTUxNzNcdTk1RURcdUZGMDkiKSxOZSl7dmFyIGE9c2koKTtpZihhPT09ImdyYW50ZWQiKXRyeXtXYW5kTmF0aXZlLnNlbmROb3RpZmljYXRpb24oIldhbmQgXHU2RDRCXHU4QkQ1XHU5MDFBXHU3N0U1IiwiXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHU1REYyXHU2QjYzXHU1RTM4XHU1REU1XHU0RjVDXHUzMDAyIiwid2FuZC10ZXN0IiksdC5wdXNoKCJcdTI3MTMgXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1Iil9Y2F0Y2h7dC5wdXNoKCJcdTI3MTcgXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHVGRjA4XHU1M0QxXHU5MDAxXHU1OTMxXHU4RDI1XHVGRjA5Iil9ZWxzZSBpZihhPT09ImRlbmllZCIpdC5wdXNoKCJcdTI3MTcgXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHVGRjA4XHU1REYyXHU2MkQyXHU3RUREXHVGRjBDXHU4QkY3XHU1NzI4XHU3Q0ZCXHU3RURGXHU4QkJFXHU3RjZFXHU0RTJEXHU1RjAwXHU1NDJGXHVGRjA5Iik7ZWxzZXt3aW5kb3cuX29uTmF0aXZlUGVybWlzc2lvblJlc3VsdD1mdW5jdGlvbihvKXtpZihnbigpLG89PT0iZ3JhbnRlZCIpdHJ5e1dhbmROYXRpdmUuc2VuZE5vdGlmaWNhdGlvbigiV2FuZCBcdTZENEJcdThCRDVcdTkwMUFcdTc3RTUiLCJcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdTVERjJcdTZCNjNcdTVFMzhcdTVERTVcdTRGNUNcdTMwMDIiLCJ3YW5kLXRlc3QiKSx0LnB1c2goIlx1MjcxMyBcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdUZGMDhcdTVERjJcdTYzODhcdTY3NDNcdUZGMDkiKX1jYXRjaHt0LnB1c2goIlx1MjcxNyBcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdUZGMDhcdTUzRDFcdTkwMDFcdTU5MzFcdThEMjVcdUZGMDkiKX1lbHNlIHQucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NjcyQVx1NjM4OFx1Njc0M1x1RkYwOSIpO3RyKGUsdCksZGVsZXRlIHdpbmRvdy5fb25OYXRpdmVQZXJtaXNzaW9uUmVzdWx0fTt0cnl7V2FuZE5hdGl2ZS5yZXF1ZXN0UGVybWlzc2lvbigpfWNhdGNoe31yZXR1cm59dHIoZSx0KTtyZXR1cm59aWYodHlwZW9mIE5vdGlmaWNhdGlvbj4idSIpe3QucHVzaCgiXHUyMDEzIFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NEUwRFx1NjUyRlx1NjMwMVx1RkYwOSIpLHRyKGUsdCk7cmV0dXJufXZhciB1PU5vdGlmaWNhdGlvbi5wZXJtaXNzaW9uO2lmKHU9PT0iZ3JhbnRlZCIpe3RyeXt2YXIgcz1uZXcgTm90aWZpY2F0aW9uKCJXYW5kIFx1NkQ0Qlx1OEJENVx1OTAxQVx1NzdFNSIse2JvZHk6Ilx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1NURGMlx1NkI2M1x1NUUzOFx1NURFNVx1NEY1Q1x1MzAwMiIsaWNvbjoiL2Zhdmljb24uaWNvIix0YWc6IndhbmQtdGVzdCJ9KTtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cy5jbG9zZSgpfSw1ZTMpLHQucHVzaCgiXHUyNzEzIFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNSIpfWNhdGNoe3QucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NTNEMVx1OTAwMVx1NTkzMVx1OEQyNVx1RkYwQ1x1NTNFRlx1ODBGRFx1OTcwMFx1ODk4MSBIVFRQU1x1RkYwOSIpfXRyKGUsdCl9ZWxzZSB1PT09ImRlbmllZCI/KHQucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NURGMlx1NjJEMlx1N0VERFx1RkYwOSIpLHRyKGUsdCkpOk5vdGlmaWNhdGlvbi5yZXF1ZXN0UGVybWlzc2lvbigpLnRoZW4oZnVuY3Rpb24obyl7Z24oKSxvPT09ImdyYW50ZWQiP3QucHVzaCgiXHUyNzEzIFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NURGMlx1NjM4OFx1Njc0M1x1RkYwOSIpOnQucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NjcyQVx1NjM4OFx1Njc0M1x1RkYwOSIpLHRyKGUsdCl9KX1mdW5jdGlvbiB0cihlLHQpe2lmKGUpe2UuaW5uZXJIVE1MPXQubWFwKGZ1bmN0aW9uKGkpe3JldHVybiBwKGkpfSkuam9pbigiPGJyPiIpO3ZhciBuPXQuZXZlcnkoZnVuY3Rpb24oaSl7cmV0dXJuIGkuaW5kZXhPZigiXHUyNzEzIik9PT0wfHxpLmluZGV4T2YoIlx1MjAxMyIpPT09MH0pO2Uuc3R5bGUuY29sb3I9bj8idmFyKC0tc3VjY2VzcykiOiJ2YXIoLS13YXJuaW5nKSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX19ZnVuY3Rpb24gaHQoZSl7aWYoIWV8fHR5cGVvZiBlIT0ib2JqZWN0Inx8IXIudGVybWluYWwpcmV0dXJuIGU7dHJ5e3R5cGVvZiByLnRlcm1pbmFsLnJlbWVhc3VyZT09ImZ1bmN0aW9uIiYmci50ZXJtaW5hbC5yZW1lYXN1cmUoKX1jYXRjaHt9dmFyIHQ9ci50ZXJtaW5hbC5jb2xzLG49ci50ZXJtaW5hbC5yb3dzO3JldHVybiB0eXBlb2YgdD09Im51bWJlciImJnR5cGVvZiBuPT0ibnVtYmVyIiYmTnVtYmVyLmlzRmluaXRlKHQpJiZOdW1iZXIuaXNGaW5pdGUobikmJnQ+MCYmbj4wJiYoZS5jb2xzPXQsZS5yb3dzPW4pLGV9ZnVuY3Rpb24gdWwoKXtyZXR1cm4gci50ZXJtaW5hbCYmci50ZXJtaW5hbC5jb2xzP1Byb21pc2UucmVzb2x2ZSgpOm5ldyBQcm9taXNlKGZ1bmN0aW9uKGUpe3ZhciB0PSExLG49ZnVuY3Rpb24oKXt0fHwodD0hMCxlKCkpfSxpPXNldFRpbWVvdXQobiwyZTMpO3RyeXtLbigpfWNhdGNoe31yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtyLnRlcm1pbmFsJiZyLnRlcm1pbmFsLmNvbHMmJihjbGVhclRpbWVvdXQoaSksbigpKX0pfSl9KX1mdW5jdGlvbiBzbCgpe3ZhciBlPW10KCksdD1YZSgpLG49eHQoZSxyLmNvbmZpZyYmci5jb25maWcuZGVmYXVsdE1vZGU/ci5jb25maWcuZGVmYXVsdE1vZGU6ImRlZmF1bHQiKTtyLnByZWZlcnJlZENvbW1hbmQ9ZSxyLmNoYXRNb2RlPXh0KGUsci5jaGF0TW9kZSksdWwoKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGZldGNoKCIvYXBpL2NvbW1hbmRzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShodCh7Y29tbWFuZDplLHByb3ZpZGVyOmUsY3dkOnQsbW9kZTpufSkpfSl9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoaS5lcnJvcil7ayhpLmVycm9yLCJlcnJvciIpO3JldHVybn1yZXR1cm4gci5zZWxlY3RlZElkPWkuaWQsd2UoKSxyLmRyYWZ0c1tpLmlkXT0iIixrdCgpLFJ0KCl9KS50aGVuKGZ1bmN0aW9uKCl7anQoITApfSkuY2F0Y2goZnVuY3Rpb24oKXtrKCJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQThcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpfSl9dmFyIHFyPSExO2Z1bmN0aW9uIHhtKCl7aWYoIXFyKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3dkIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibW9kYWwtZXJyb3IiKSxuPW10KCksaT1yLnNlc3Npb25DcmVhdGVLaW5kfHwic3RydWN0dXJlZCIsYT1yLnNlc3Npb25DcmVhdGVXb3JrdHJlZT09PSEwO3VpKHQpO3ZhciB1PVhlKCkscz0oZT9lLnZhbHVlLnRyaW0oKToiIil8fHUsbz14dChuLHIubW9kZVZhbHVlKTtpZihpPT09InN0cnVjdHVyZWQiKXtTbShzLG8sYSx0KTtyZXR1cm59SW0obixzLG8sYSx0KX19ZnVuY3Rpb24gU20oZSx0LG4saSl7dmFyIGE9ci5zZXNzaW9uVG9vbD09PSJjb2RleCI/ImNvZGV4IjoiY2xhdWRlIjtyZXR1cm4gcXI9ITAsci5tb2RlVmFsdWU9dCxyLmNoYXRNb2RlPXQsci5zZXNzaW9uVG9vbD1hLHIucHJlZmVycmVkQ29tbWFuZD1hLEJpKCksWG4oZ3QoKSksUW8odm9pZCAwLGUsdCxuKS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiBRdChlKSx2bigpLHp0KCksdX0pLnRoZW4oZnVuY3Rpb24oKXtqdCghMCl9KS5jYXRjaChmdW5jdGlvbih1KXtQZShpLHUmJnUubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOFx1N0VEM1x1Njc4NFx1NTMxNlx1NEYxQVx1OEJERFx1RkYwQ1x1OEJGN1x1Nzg2RVx1OEJBNCBDbGF1ZGUgXHU1REYyXHU2QjYzXHU3ODZFXHU1Qjg5XHU4OEM1XHUzMDAyIil9KS5maW5hbGx5KGZ1bmN0aW9uKCl7cXI9ITF9KX1mdW5jdGlvbiBJbShlLHQsbixpLGEpe3FyPSEwLHIubW9kZVZhbHVlPW4sci5jaGF0TW9kZT1uLHIuc2Vzc2lvblRvb2w9ZSxyLnByZWZlcnJlZENvbW1hbmQ9ZSxCaSgpLHVsKCkudGhlbihmdW5jdGlvbigpe3JldHVybiBmZXRjaCgiL2FwaS9jb21tYW5kcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoaHQoe2NvbW1hbmQ6ZSxwcm92aWRlcjplLGN3ZDp0LG1vZGU6bix3b3JrdHJlZUVuYWJsZWQ6aX0pKX0pfSkudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gdS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHUpe2lmKHUuZXJyb3Ipe1BlKGEsdS5lcnJvcik7cmV0dXJufXJldHVybiByLnNlbGVjdGVkSWQ9dS5pZCx3ZSgpLFF0KHQpLHIuZHJhZnRzW3UuaWRdPSIiLGt0KCksdm4oKSx6dCgpLFJ0KCl9KS50aGVuKGZ1bmN0aW9uKCl7ci5zZWxlY3RlZElkP1d0KHIuc2VsZWN0ZWRJZCk6anQoITApfSkuY2F0Y2goZnVuY3Rpb24oKXtQZShhLGU9PT0iY29kZXgiPyJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQTggQ29kZXggXHU0RjFBXHU4QkREXHVGRjBDXHU4QkY3XHU3ODZFXHU4QkE0IGNvZGV4IFx1NURGMlx1NkI2M1x1Nzg2RVx1NUI4OVx1ODhDNVx1NUU3Nlx1NTNFRlx1NTcyOFx1N0VDOFx1N0FFRlx1NEUyRFx1NjI2N1x1ODg0Q1x1MzAwMiI6Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOCBDbGF1ZGUgXHU0RjFBXHU4QkREXHVGRjBDXHU4QkY3XHU3ODZFXHU4QkE0IENsYXVkZSBcdTVERjJcdTZCNjNcdTc4NkVcdTVCODlcdTg4QzVcdTMwMDIiKX0pLmZpbmFsbHkoZnVuY3Rpb24oKXtxcj0hMX0pfWZ1bmN0aW9uIFRtKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQtY3dkIik7ZSYmKGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLG9sKSxlLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKHQpeyh0LmtleT09PSJFbnRlciJ8fHQua2V5PT09IiAiKSYmKHQucHJldmVudERlZmF1bHQoKSxvbCgpKX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih0KXt2YXIgbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtZHJvcGRvd24iKTtpZighKCFufHxuLmNsYXNzTGlzdC5jb250YWlucygiaGlkZGVuIikpJiYhdC50YXJnZXQuY2xvc2VzdCgiLmJsYW5rLWNoYXQtY3dkLXdyYXAiKSl7bi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtYXJyb3ciKTtpJiYoaS50ZXh0Q29udGVudD0iXHUyNUJDIil9fSkpfWZ1bmN0aW9uIG9sKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQtY3dkLWRyb3Bkb3duIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtYXJyb3ciKTtpZihlKXt2YXIgbj1lLmNsYXNzTGlzdC5jb250YWlucygiaGlkZGVuIik7bj8oTG0oZSksZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSx0JiYodC50ZXh0Q29udGVudD0iXHUyNUIyIikpOihlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLHQmJih0LnRleHRDb250ZW50PSJcdTI1QkMiKSl9fWZ1bmN0aW9uIExtKGUpe3ZhciB0PXRuKCk7ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWxvYWRpbmciPlx1NTJBMFx1OEY3RFx1NEUyRC4uLjwvZGl2PicscmEoZnVuY3Rpb24obil7dmFyIGk9IiIsYT1yLndvcmtpbmdEaXJ8fHQ7aWYoaSs9JzxkaXYgY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWl0ZW0nKyhhPT09dD8iIGFjdGl2ZSI6IiIpKyciIGRhdGEtcGF0aD0iJytwKHQpKyciPjxzcGFuIGNsYXNzPSJibGFuay1jaGF0LWN3ZC1pdGVtLWxhYmVsIj5cdTlFRDhcdThCQTQ8L3NwYW4+PHNwYW4gY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWl0ZW0tcGF0aCI+JytwKHQpKyI8L3NwYW4+PC9kaXY+IixuLmxlbmd0aCl7dmFyIHU9e307dVt0XT0hMCxuLmZvckVhY2goZnVuY3Rpb24ocyl7dVtzLnBhdGhdfHwodVtzLnBhdGhdPSEwLGkrPSc8ZGl2IGNsYXNzPSJibGFuay1jaGF0LWN3ZC1pdGVtJysoYT09PXMucGF0aD8iIGFjdGl2ZSI6IiIpKyciIGRhdGEtcGF0aD0iJytwKHMucGF0aCkrJyI+PHNwYW4gY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWl0ZW0tcGF0aCI+JytwKHMucGF0aCkrIjwvc3Bhbj48L2Rpdj4iKX0pfWUuaW5uZXJIVE1MPWksZS5xdWVyeVNlbGVjdG9yQWxsKCIuYmxhbmstY2hhdC1jd2QtaXRlbSIpLmZvckVhY2goZnVuY3Rpb24ocyl7cy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24obyl7by5zdG9wUHJvcGFnYXRpb24oKTt2YXIgbD1zLmRhdGFzZXQucGF0aDtyLndvcmtpbmdEaXI9bDt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtd29ya2luZy1kaXIiLGwpfWNhdGNoe312YXIgYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtcGF0aCIpO2MmJihjLnRleHRDb250ZW50PWwpLGUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIik7dmFyIGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQtY3dkLWFycm93Iik7ZiYmKGYudGV4dENvbnRlbnQ9Ilx1MjVCQyIpO3ZhciBkPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb2xkZXItcGlja2VyLWlucHV0Iik7ZCYmKGQudmFsdWU9bCl9KX0pfSl9ZnVuY3Rpb24gTW0oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVjZW50LXBhdGhzLWJ1YmJsZXMiKTtlJiZyYShmdW5jdGlvbih0KXtpZighdC5sZW5ndGgpe2UuaW5uZXJIVE1MPSIiO3JldHVybn1lLmlubmVySFRNTD10Lm1hcChmdW5jdGlvbihuKXtyZXR1cm4nPGJ1dHRvbiBjbGFzcz0icmVjZW50LXBhdGgtYnViYmxlIiBkYXRhLXBhdGg9IicrcChuLnBhdGgpKyciIHRpdGxlPSInK3Aobi5wYXRoKSsnIj4nK3Aobi5uYW1lKSsiPC9idXR0b24+In0pLmpvaW4oIiIpLGUucXVlcnlTZWxlY3RvckFsbCgiLnJlY2VudC1wYXRoLWJ1YmJsZSIpLmZvckVhY2goZnVuY3Rpb24obil7bi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3dkIik7aSYmKGkudmFsdWU9bi5kYXRhc2V0LnBhdGh8fCIiLHIuY3dkVmFsdWU9bi5kYXRhc2V0LnBhdGh8fCIiKX0pfSl9KX1mdW5jdGlvbiBsbCgpe3Iuc3VnZ2VzdGlvblRpbWVyJiZjbGVhclRpbWVvdXQoci5zdWdnZXN0aW9uVGltZXIpLHIuc3VnZ2VzdGlvblRpbWVyPXNldFRpbWVvdXQoT20sMTIwKX1mdW5jdGlvbiBPbSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLW1vZGFsIik7aWYoZSYmZS5jbGFzc0xpc3QuY29udGFpbnMoImhpZGRlbiIpKXtucigpO3JldHVybn12YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3dkIik7dCYmZmV0Y2goIi9hcGkvcGF0aC1zdWdnZXN0aW9ucz9xPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQudmFsdWUudHJpbSgpKSx7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24obil7cmV0dXJuIG4uanNvbigpfSkudGhlbihQbSkuY2F0Y2gobnIpfWZ1bmN0aW9uIFBtKGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2Qtc3VnZ2VzdGlvbnMiKTtpZighdHx8IWUubGVuZ3RoKXtucigpO3JldHVybn10LmlubmVySFRNTD1lLm1hcChmdW5jdGlvbihuKXtyZXR1cm4nPGJ1dHRvbiBjbGFzcz0ic3VnZ2VzdGlvbi1pdGVtIiBkYXRhLXBhdGg9IicrcChuLnBhdGgpKyciPjxzdHJvbmc+JytwKG4ubmFtZSkrIjwvc3Ryb25nPjxzbWFsbD4iK3Aobi5wYXRoKSsiPC9zbWFsbD48L2J1dHRvbj4ifSkuam9pbigiIiksdC5xdWVyeVNlbGVjdG9yQWxsKCIuc3VnZ2VzdGlvbi1pdGVtIikuZm9yRWFjaChmdW5jdGlvbihuKXtuLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2QiKS52YWx1ZT1uLmRhdGFzZXQucGF0aHx8IiIsci5jd2RWYWx1ZT1uLmRhdGFzZXQucGF0aHx8IiIsbnIoKX0pfSksdC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX1mdW5jdGlvbiBucigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2Qtc3VnZ2VzdGlvbnMiKTtlJiYoZS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxlLmlubmVySFRNTD0iIil9ZnVuY3Rpb24gcW0oZSl7aWYoIWUuaXNDb21wb3Npbmcpe2lmKEdzKGUpKXtEYShlKTtyZXR1cm59aWYoZS5rZXk9PT0iRW50ZXIiKXtpZihlLnNoaWZ0S2V5KXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO2lmKHQpe3ZhciBuPXQuc2VsZWN0aW9uU3RhcnR8fDAsaT10LnZhbHVlLGE9aS5zbGljZSgwLG4pK2AKYCtpLnNsaWNlKG4pO3QudmFsdWU9YSx0LnNlbGVjdGlvblN0YXJ0PW4rMSx0LnNlbGVjdGlvbkVuZD1uKzEsY3QoYSwhMCksX3QodCl9cmV0dXJufWUucHJldmVudERlZmF1bHQoKTt2YXIgdT0hIShlLm1ldGFLZXl8fGUuY3RybEtleSk7TnModT97aW50ZXJydXB0OiEwfTp2b2lkIDApO3JldHVybn1pZihlLmtleT09PSJCYWNrc3BhY2UiKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIG09ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO20mJmN0KG0udmFsdWUsITApfSwwKTtyZXR1cm59aWYoZS5rZXk9PT0iVGFiIil7ZS5wcmV2ZW50RGVmYXVsdCgpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtpZih0KXt2YXIgbj10LnNlbGVjdGlvblN0YXJ0fHwwLGk9dC52YWx1ZSxhPWkuc2xpY2UoMCxuKSsiCSIraS5zbGljZShuKTt0LnZhbHVlPWEsY3QoYSwhMCl9cmV0dXJufWlmKGUua2V5PT09IkVzY2FwZSIpe2UucHJldmVudERlZmF1bHQoKTt2YXIgcz1ndCgpO2FlKHMpP3MmJnMuc3RydWN0dXJlZFN0YXRlJiZzLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCYma2EoKTpFdChEcigiZXNjYXBlIiksImVzY2FwZSIpO3JldHVybn1pZigoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09ImMiKXt2YXIgbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94IiksbD1vJiZvLnNlbGVjdGlvblN0YXJ0IT09by5zZWxlY3Rpb25FbmR8fHBpKCk7aWYobClyZXR1cm47dmFyIGM9Z3QoKTtpZihhZShjKSl7ZS5wcmV2ZW50RGVmYXVsdCgpLGMmJmMuc3RydWN0dXJlZFN0YXRlJiZjLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCYma2EoKTtyZXR1cm59ZS5wcmV2ZW50RGVmYXVsdCgpLEV0KERyKCJjdHJsX2MiKSwiY3RybF9jIik7cmV0dXJufWlmKChlLm1ldGFLZXl8fGUuY3RybEtleSkmJmUua2V5LnRvTG93ZXJDYXNlKCk9PT0iZCIpe3ZhciBmPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKSxkPWYmJmYuc2VsZWN0aW9uU3RhcnQhPT1mLnNlbGVjdGlvbkVuZHx8cGkoKTtpZihkKXJldHVybjt2YXIgdj1ndCgpO2lmKGFlKHYpKXtlLnByZXZlbnREZWZhdWx0KCk7cmV0dXJufWUucHJldmVudERlZmF1bHQoKSxFdChEcigiY3RybF9kIiksImN0cmxfZCIpO3JldHVybn1pZigoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09ImwiKXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIGc9Z3QoKTtpZihhZShnKSlyZXR1cm47RXQoRHIoImN0cmxfbCIpLCJjdHJsX2wiKTtyZXR1cm59aWYoISgoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09ImEiKSYmISgoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09InYiKSl7aWYoKGUubWV0YUtleXx8ZS5jdHJsS2V5KSYmZS5rZXkudG9Mb3dlckNhc2UoKT09PSJ4Iil7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpLGg9dCYmdC5zZWxlY3Rpb25TdGFydCE9PXQuc2VsZWN0aW9uRW5kO2lmKGgpcmV0dXJuO2UucHJldmVudERlZmF1bHQoKSxFdCgiGCIsImN0cmxfeCIpO3JldHVybn1lLmtleS5sZW5ndGg9PT0xJiYhZS5jdHJsS2V5JiYhZS5tZXRhS2V5JiYhZS5hbHRLZXkmJnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgbT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7bSYmY3QobS52YWx1ZSl9LDApfX19dmFyIEhtPTEwKjEwMjQqMTAyNDtmdW5jdGlvbiBfbShlKXtyZXR1cm4gZTwxMDI0P2UrIiBCIjplPDEwMjQqMTAyND8oZS8xMDI0KS50b0ZpeGVkKDEpKyIgS0IiOihlLygxMDI0KjEwMjQpKS50b0ZpeGVkKDEpKyIgTUIifWZ1bmN0aW9uIE5tKGUpe3JldHVybi9eaW1hZ2VcLyhwbmd8anBlP2d8Z2lmfHdlYnB8Ym1wfHN2Z1wreG1sKS8udGVzdChlKX1mdW5jdGlvbiBYYShlKXtpZihlKXtpZihlLnNpemU+SG0pe2soIlx1NjU4N1x1NEVGNlx1OEZDN1x1NTkyN1x1RkYwOFx1NEUwQVx1OTY1MCAxMCBNQlx1RkYwOTogIitlLm5hbWUsImVycm9yIik7cmV0dXJufXZhciB0PXtmaWxlOmUsbmFtZTplLm5hbWUsc2l6ZTplLnNpemUscHJldmlld1VybDpudWxsfTtObShlLnR5cGUpJiYodC5wcmV2aWV3VXJsPVVSTC5jcmVhdGVPYmplY3RVUkwoZSkpLHIucGVuZGluZ0F0dGFjaG1lbnRzLnB1c2godCksWmEoKX19ZnVuY3Rpb24gam0oZSl7dmFyIHQ9ci5wZW5kaW5nQXR0YWNobWVudHMuc3BsaWNlKGUsMSk7dC5sZW5ndGgmJnRbMF0ucHJldmlld1VybCYmVVJMLnJldm9rZU9iamVjdFVSTCh0WzBdLnByZXZpZXdVcmwpLFphKCl9ZnVuY3Rpb24gUm0oKXtyLnBlbmRpbmdBdHRhY2htZW50cy5mb3JFYWNoKGZ1bmN0aW9uKGUpe2UucHJldmlld1VybCYmVVJMLnJldm9rZU9iamVjdFVSTChlLnByZXZpZXdVcmwpfSksci5wZW5kaW5nQXR0YWNobWVudHM9W10sWmEoKX1mdW5jdGlvbiBaYSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdHRhY2htZW50LXByZXZpZXciKTtpZihlKXt2YXIgdD1yLnBlbmRpbmdBdHRhY2htZW50cztpZih0Lmxlbmd0aD09PTApe2UuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksZS5pbm5lckhUTUw9IiI7cmV0dXJufWUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik7Zm9yKHZhciBuPSIiLGk9MDtpPHQubGVuZ3RoO2krKyl7dmFyIGE9dFtpXSx1PWEucHJldmlld1VybD8nPGltZyBzcmM9IicrcChhLnByZXZpZXdVcmwpKyciIGFsdD0iIj4nOic8c3BhbiBjbGFzcz0iYXR0LWljb24iPicrSigiZmlsZSIse3NpemU6MTMsc3Ryb2tlV2lkdGg6MS43fSkrIjwvc3Bhbj4iO24rPSc8c3BhbiBjbGFzcz0iYXR0YWNobWVudC1waWxsIiBkYXRhLWluZGV4PSInK2krJyI+Jyt1Kyc8c3BhbiBjbGFzcz0iYXR0LW5hbWUiIHRpdGxlPSInK3AoYS5uYW1lKSsnIj4nK3AoYS5uYW1lKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJhdHQtc2l6ZSI+JytfbShhLnNpemUpKyc8L3NwYW4+PGJ1dHRvbiBjbGFzcz0iYXR0LXJlbW92ZSIgZGF0YS1pbmRleD0iJytpKyciIHRpdGxlPSJcdTc5RkJcdTk2NjQiPlx4RDc8L2J1dHRvbj48L3NwYW4+J31lLmlubmVySFRNTD1uLGUucXVlcnlTZWxlY3RvckFsbCgiLmF0dC1yZW1vdmUiKS5mb3JFYWNoKGZ1bmN0aW9uKHMpe3MuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKG8pe28ucHJldmVudERlZmF1bHQoKSxvLnN0b3BQcm9wYWdhdGlvbigpLGptKHBhcnNlSW50KHMuZ2V0QXR0cmlidXRlKCJkYXRhLWluZGV4IiksMTApKX0pfSl9fWZ1bmN0aW9uIFdtKGUpe2lmKCFyLnBlbmRpbmdBdHRhY2htZW50cy5sZW5ndGgpcmV0dXJuIFByb21pc2UucmVzb2x2ZShbXSk7dmFyIHQ9bmV3IEZvcm1EYXRhO3JldHVybiByLnBlbmRpbmdBdHRhY2htZW50cy5mb3JFYWNoKGZ1bmN0aW9uKG4pe3QuYXBwZW5kKCJmaWxlcyIsbi5maWxlLG4ubmFtZSl9KSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChlKSsiL3VwbG9hZCIse21ldGhvZDoiUE9TVCIsYm9keTp0LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKG4pe3JldHVybiBuLm9rP24uanNvbigpOm4uanNvbigpLnRoZW4oZnVuY3Rpb24oaSl7dGhyb3cgbmV3IEVycm9yKGkuZXJyb3J8fCJcdTRFMEFcdTRGMjBcdTU5MzFcdThEMjUiKX0pfSkudGhlbihmdW5jdGlvbihuKXtyZXR1cm4gbi5maWxlc3x8W119KX1mdW5jdGlvbiB6bShlKXtpZighZXx8IWUubGVuZ3RoKXJldHVybiIiO3ZhciB0PWUubWFwKGZ1bmN0aW9uKG4pe3JldHVybiBuLnNhdmVkUGF0aH0pO3JldHVybmBbXHU5NjQ0XHU0RUY2XHU1REYyXHU0RTBBXHU0RjIwXHVGRjBDXHU4QkY3XHU2N0U1XHU3NzBCXHU0RUU1XHU0RTBCXHU2NTg3XHU0RUY2OgpgK3Quam9pbihgCmApK2BdCgpgfWZ1bmN0aW9uIGNsKGUpe2lmKCFyLnRlcm1pbmFsSW50ZXJhY3RpdmV8fCFlKXJldHVybiExO3ZhciB0PWUudmFsdWV8fCIiO3JldHVybiB0PyhFdCh0LCJpbnRlcmFjdGl2ZV90ZXh0IikuY2F0Y2goZnVuY3Rpb24oKXt9KSxlLnZhbHVlPSIiLF90KGUpLGN0KCIiLCEwKSwhMCk6ITF9ZnVuY3Rpb24gVW0oZSl7dmFyIHQ9ZS5jbGlwYm9hcmREYXRhJiZlLmNsaXBib2FyZERhdGEuaXRlbXM7aWYodCYmIXIudGVybWluYWxJbnRlcmFjdGl2ZSl7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspaWYodFtuXS50eXBlLmluZGV4T2YoImltYWdlLyIpPT09MCl7ZS5wcmV2ZW50RGVmYXVsdCgpO3ZhciBpPXRbbl0uZ2V0QXNGaWxlKCk7aSYmWGEoaSk7cmV0dXJufX12YXIgYT1lLmNsaXBib2FyZERhdGEmJmUuY2xpcGJvYXJkRGF0YS5nZXREYXRhKCJ0ZXh0Iik7aWYoYSl7aWYoZS5wcmV2ZW50RGVmYXVsdCgpLHIudGVybWluYWxJbnRlcmFjdGl2ZSl7RXQoYSwicGFzdGUiKS5jYXRjaChmdW5jdGlvbigpe30pO3JldHVybn12YXIgdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7aWYodSl7dmFyIHM9dS5zZWxlY3Rpb25TdGFydHx8MCxvPXUuc2VsZWN0aW9uRW5kfHwwLGw9dS52YWx1ZSxjPWwuc2xpY2UoMCxzKSthK2wuc2xpY2Uobyk7dS52YWx1ZT1jLGN0KGMpfX19ZnVuY3Rpb24gTGcoZSl7RXQoZSksY3QoVm0oKStlKX1mdW5jdGlvbiBWbSgpe2lmKHIuc2VsZWN0ZWRJZCl7aWYoci5kcmFmdHNbci5zZWxlY3RlZElkXSE9PXZvaWQgMClyZXR1cm4gci5kcmFmdHNbci5zZWxlY3RlZElkXTt0cnl7dmFyIGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtZHJhZnQtIityLnNlbGVjdGVkSWQpO2lmKGUpcmV0dXJuIGV9Y2F0Y2h7fX1yZXR1cm4iIn1mdW5jdGlvbiBjdChlLHQpe2lmKHIuc2VsZWN0ZWRJZCl7ci5kcmFmdHNbci5zZWxlY3RlZElkXT1lO3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1kcmFmdC0iK3Iuc2VsZWN0ZWRJZCxlKX1jYXRjaHt9aWYoIXQpe3ZhciBuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtuJiYobi52YWx1ZT1lKX19fXZhciBldT0hMTtmdW5jdGlvbiBLbSgpe2lmKCFldSl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInByb21wdC1vcHRpbWl6ZS1idG4iKSxuPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1jb21wb3NlciIpO2lmKGUpe3ZhciBpPShlLnZhbHVlfHwiIikudHJpbSgpO2lmKCFpKXt0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmaygiXHU4QkY3XHU1MTQ4XHU4RjkzXHU1MTY1XHU4OTgxXHU0RjE4XHU1MzE2XHU3Njg0XHU1MTg1XHU1QkI5XHUzMDAyIiwiaW5mbyIpLGUuZm9jdXMoKTtyZXR1cm59ZXU9ITAsdCYmKHQuY2xhc3NMaXN0LmFkZCgiaXMtbG9hZGluZyIpLHQuZGlzYWJsZWQ9ITAsdC5zZXRBdHRyaWJ1dGUoInRpdGxlIiwiXHU2QjYzXHU1NzI4XHU0RjE4XHU1MzE2XHUyMDI2IikpLG4mJm4uY2xhc3NMaXN0LmFkZCgiaXMtb3B0aW1pemluZyIpLGUuc2V0QXR0cmlidXRlKCJhcmlhLWJ1c3kiLCJ0cnVlIik7dmFyIGE9ZS5yZWFkT25seTtlLnJlYWRPbmx5PSEwO3ZhciB1PXt0ZXh0Oml9O3ImJnIuc2VsZWN0ZWRJZCYmKHUuc2Vzc2lvbklkPXIuc2VsZWN0ZWRJZCksZmV0Y2goIi9hcGkvb3B0aW1pemUtcHJvbXB0Iix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeSh1KX0pLnRoZW4oZnVuY3Rpb24ocyl7cmV0dXJuIHMuanNvbigpLnRoZW4oZnVuY3Rpb24obyl7cmV0dXJue29rOnMub2ssZGF0YTpvfX0pfSkudGhlbihmdW5jdGlvbihzKXtpZighcy5vayl0aHJvdyBuZXcgRXJyb3Iocy5kYXRhJiZzLmRhdGEuZXJyb3J8fCJcdTYzRDBcdTc5M0FcdThCQ0RcdTRGMThcdTUzMTZcdTU5MzFcdThEMjVcdTMwMDIiKTt2YXIgbz1zLmRhdGEmJnMuZGF0YS5vcHRpbWl6ZWR8fCIiO2lmKCFvKXRocm93IG5ldyBFcnJvcigiQ2xhdWRlIFx1OEZENFx1NTZERVx1NEUzQVx1N0E3QVx1MzAwMiIpO0ptKGUsbyl9KS5jYXRjaChmdW5jdGlvbihzKXt0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmayhzJiZzLm1lc3NhZ2V8fCJcdTYzRDBcdTc5M0FcdThCQ0RcdTRGMThcdTUzMTZcdTU5MzFcdThEMjVcdTMwMDIiLCJlcnJvciIpLHQmJih0LmNsYXNzTGlzdC5yZW1vdmUoImlzLWxvYWRpbmciKSx0LmNsYXNzTGlzdC5hZGQoImlzLXNoYWtlIiksc2V0VGltZW91dChmdW5jdGlvbigpe3QmJnQuY2xhc3NMaXN0LnJlbW92ZSgiaXMtc2hha2UiKX0sNDAwKSl9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ZXU9ITEsdCYmKHQuY2xhc3NMaXN0LnJlbW92ZSgiaXMtbG9hZGluZyIpLHQuZGlzYWJsZWQ9ITEsdC5zZXRBdHRyaWJ1dGUoInRpdGxlIiwiXHU2M0QwXHU3OTNBXHU4QkNEXHU0RjE4XHU1MzE2XHVGRjA4QUlcdUZGMDkiKSksbiYmbi5jbGFzc0xpc3QucmVtb3ZlKCJpcy1vcHRpbWl6aW5nIiksZS5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtYnVzeSIpLGUucmVhZE9ubHk9YX0pfX19ZnVuY3Rpb24gSm0oZSx0KXtpZighZSlyZXR1cm47dmFyIG49QXJyYXkuZnJvbSh0KSxpPW4ubGVuZ3RoO2lmKGk9PT0wKXtlLnZhbHVlPSIiLGN0KCIiLCEwKSxfdChlKTtyZXR1cm59dmFyIGE9TWF0aC5taW4oNzAwLE1hdGgubWF4KDIyMCxpKjgpKSx1PU1hdGgubWluKGksNjApLHM9TWF0aC5jZWlsKGkvdSksbz1hL3UsbD0wO2UudmFsdWU9IiIsX3QoZSk7ZnVuY3Rpb24gYygpe2lmKGw9TWF0aC5taW4oaSxsK3MpLGUudmFsdWU9bi5zbGljZSgwLGwpLmpvaW4oIiIpLF90KGUpLGw8aSlzZXRUaW1lb3V0KGMsbyk7ZWxzZXtjdCh0LCEwKTt0cnl7ZS5zZXRTZWxlY3Rpb25SYW5nZSh0Lmxlbmd0aCx0Lmxlbmd0aCl9Y2F0Y2h7fX19YygpfWZ1bmN0aW9uIFNpKGUpe3ZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1jb21wb3NlciIpO2lmKHQpe3ZhciBuPWV8fGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKSxpPSEhKG4mJm4udmFsdWUmJm4udmFsdWUubGVuZ3RoPjApO3QuY2xhc3NMaXN0LnRvZ2dsZSgiaGFzLXRleHQiLGkpfX1yLl9zdGF0dXNCYXJUaW1lcklkPW51bGwsci5fc3RhdHVzQmFyU3RhcnRUaW1lPTA7dmFyIEhyPW51bGwsSWk9MDtmdW5jdGlvbiB0dShlKXtpZighZSlyZXR1cm57YWN0aXZlOiExfTtpZihlLmFyY2hpdmVkKXJldHVybnthY3RpdmU6ITF9O3ZhciB0PSEhZS5wZXJtaXNzaW9uQmxvY2tlZCxuPSEhKGFlKGUpJiZlLnN0cnVjdHVyZWRTdGF0ZSYmZS5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQpLGk9IWFlKGUpJiZlLnN0YXR1cz09PSJydW5uaW5nIjtyZXR1cm57YWN0aXZlOm58fGl8fHQsaW5GbGlnaHQ6bixwdHlSdW5uaW5nOmkscGVybWlzc2lvbkJsb2NrZWQ6dH19ZnVuY3Rpb24gR20oZSl7dmFyIHQ9TWF0aC5tYXgoMCxNYXRoLmZsb29yKGUvMWUzKSk7aWYodDw2MClyZXR1cm4gdCsicyI7dmFyIG49TWF0aC5mbG9vcih0LzYwKSxpPXQlNjA7aWYobjw2MClyZXR1cm4gbisibSIrKGk/IiAiK2krInMiOiIiKTt2YXIgYT1NYXRoLmZsb29yKG4vNjApLHU9biU2MDtyZXR1cm4gYSsiaCIrKHU/IiAiK3UrIm0iOiIiKX1mdW5jdGlvbiBudShlKXt2YXIgdD10dShlKSxuPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5tYWluLWhlYWRlci1yb3ciKSxpPW4/bi5xdWVyeVNlbGVjdG9yKCIuc2Vzc2lvbi1zdGF0dXMtcGlsbCIpOm51bGwsYT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlcyIpO2lmKG4mJihuLmNsYXNzTGlzdC50b2dnbGUoImlzLXJ1bm5pbmciLHQuYWN0aXZlKSxuLmNsYXNzTGlzdC50b2dnbGUoImlzLXBlcm1pc3Npb24tYmxvY2tlZCIsdC5wZXJtaXNzaW9uQmxvY2tlZCkpLGkpe3ZhciB1PWkucXVlcnlTZWxlY3RvcigiLnNlc3Npb24tc3RhdHVzLWVsYXBzZWQiKTtpZih0LmluRmxpZ2h0KXtJaXx8KElpPXIuX3N0YXR1c0JhclN0YXJ0VGltZT4wP3IuX3N0YXR1c0JhclN0YXJ0VGltZTpEYXRlLm5vdygpKTt2YXIgcz1HbShEYXRlLm5vdygpLUlpKTt1fHwodT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdS5jbGFzc05hbWU9InNlc3Npb24tc3RhdHVzLWVsYXBzZWQiLGkuYXBwZW5kQ2hpbGQodSkpLHUudGV4dENvbnRlbnQ9c31lbHNlIElpPTAsdSYmdS5yZW1vdmUoKX10LmFjdGl2ZT9Icnx8KEhyPXNldEludGVydmFsKGZ1bmN0aW9uKCl7dmFyIG89ci5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGwpe3JldHVybiBsLmlkPT09ci5zZWxlY3RlZElkfSk7bnUobyl9LDFlMykpOkhyJiYoY2xlYXJJbnRlcnZhbChIciksSHI9bnVsbCl9ZnVuY3Rpb24gcnUoZSx0KXtudSh0KTt2YXIgbj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuY29tcG9zZXItdG9wLXJvdyIpLGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnN0cnVjdHVyZWQtc3RhdHVzLWJhciIpLGE9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LWNvbXBvc2VyIik7aWYoIXR8fCFhZSh0KSl7aSYmaS5yZW1vdmUoKSxhJiZhLmNsYXNzTGlzdC5yZW1vdmUoImluLWZsaWdodCIpLGNsZWFySW50ZXJ2YWwoci5fc3RhdHVzQmFyVGltZXJJZCksci5fc3RhdHVzQmFyVGltZXJJZD1udWxsO3JldHVybn12YXIgdT10LnN0cnVjdHVyZWRTdGF0ZSYmdC5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQ7aWYodSl7aWYoci5fc3RhdHVzQmFyVGltZXJJZHx8KHIuX3N0YXR1c0JhclN0YXJ0VGltZT1EYXRlLm5vdygpKSxhJiZhLmNsYXNzTGlzdC5hZGQoImluLWZsaWdodCIpLCFpJiZuKXt2YXIgcz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtzLmNsYXNzTmFtZT0ic3RydWN0dXJlZC1zdGF0dXMtYmFyIixzLmlubmVySFRNTD0nPHNwYW4gY2xhc3M9InN0YXR1cy1iYXItZG90Ij48L3NwYW4+PHNwYW4gY2xhc3M9InN0YXR1cy1iYXItbGFiZWwiPlx1NTZERVx1NTkwRFx1NEUyRDwvc3Bhbj48c3BhbiBjbGFzcz0ic3RhdHVzLWJhci10aW1lciI+MC4wczwvc3Bhbj4nLG4uYXBwZW5kQ2hpbGQocyksaT1zfWVsc2UgaWYoaSYmaS5jbGFzc0xpc3QuY29udGFpbnMoImNvbXBsZXRlZCIpKXtpLmNsYXNzTGlzdC5yZW1vdmUoImNvbXBsZXRlZCIpLGkuc3R5bGUuYW5pbWF0aW9uPSJub25lIixpLnF1ZXJ5U2VsZWN0b3IoIi5zdGF0dXMtYmFyLWxhYmVsIikudGV4dENvbnRlbnQ9Ilx1NTZERVx1NTkwRFx1NEUyRCI7dmFyIG89aS5xdWVyeVNlbGVjdG9yKCIuc3RhdHVzLWJhci1kb3QiKTtvJiYoby5zdHlsZS5kaXNwbGF5PSIiKSxyLl9zdGF0dXNCYXJTdGFydFRpbWU9RGF0ZS5ub3coKX1yLl9zdGF0dXNCYXJUaW1lcklkfHwoci5fc3RhdHVzQmFyVGltZXJJZD1zZXRJbnRlcnZhbChmdW5jdGlvbigpe3ZhciBjPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXI6bm90KC5jb21wbGV0ZWQpIik7aWYoIWMpe2NsZWFySW50ZXJ2YWwoci5fc3RhdHVzQmFyVGltZXJJZCksci5fc3RhdHVzQmFyVGltZXJJZD1udWxsO3JldHVybn12YXIgZj0oKERhdGUubm93KCktci5fc3RhdHVzQmFyU3RhcnRUaW1lKS8xZTMpLnRvRml4ZWQoMSksZD1jLnF1ZXJ5U2VsZWN0b3IoIi5zdGF0dXMtYmFyLXRpbWVyIik7ZCYmKGQudGV4dENvbnRlbnQ9ZisicyIpfSwxMDApKX1lbHNlIGlmKGNsZWFySW50ZXJ2YWwoci5fc3RhdHVzQmFyVGltZXJJZCksci5fc3RhdHVzQmFyVGltZXJJZD1udWxsLGEmJmEuY2xhc3NMaXN0LnJlbW92ZSgiaW4tZmxpZ2h0IiksaSYmIWkuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21wbGV0ZWQiKSl7dmFyIGw9ci5fc3RhdHVzQmFyU3RhcnRUaW1lPygoRGF0ZS5ub3coKS1yLl9zdGF0dXNCYXJTdGFydFRpbWUpLzFlMykudG9GaXhlZCgxKToiMC4wIjtpLmNsYXNzTGlzdC5hZGQoImNvbXBsZXRlZCIpLGkucXVlcnlTZWxlY3RvcigiLnN0YXR1cy1iYXItbGFiZWwiKS50ZXh0Q29udGVudD0iXHU1QjhDXHU2MjEwIixpLnF1ZXJ5U2VsZWN0b3IoIi5zdGF0dXMtYmFyLXRpbWVyIikudGV4dENvbnRlbnQ9bCsicyI7dmFyIG89aS5xdWVyeVNlbGVjdG9yKCIuc3RhdHVzLWJhci1kb3QiKTtvJiYoby5zdHlsZS5kaXNwbGF5PSJub25lIiksci5fc3RhdHVzQmFyU3RhcnRUaW1lPTAsc2V0VGltZW91dChmdW5jdGlvbigpe2kucGFyZW50Tm9kZSYmaS5yZW1vdmUoKX0sM2UzKX19ZnVuY3Rpb24gcChlKXtyZXR1cm4gU3RyaW5nKGUpLnJlcGxhY2UoLyYvZywiJmFtcDsiKS5yZXBsYWNlKC88L2csIiZsdDsiKS5yZXBsYWNlKC8+L2csIiZndDsiKS5yZXBsYWNlKC8iL2csIiZxdW90OyIpLnJlcGxhY2UoLycvZywiJiMzOTsiKX12YXIgWW09L1wuKHBuZ3xqcGU/Z3xnaWZ8d2VicHxzdmd8YXZpZnxibXB8aWNvfGhlaWN8aGVpZikkL2k7ZnVuY3Rpb24gaXUoZSl7aWYodHlwZW9mIGUhPSJzdHJpbmciKXJldHVybiExO3ZhciB0PWUudHJpbSgpLnNwbGl0KC9bPyNdLylbMF07cmV0dXJuIFltLnRlc3QodCl9ZnVuY3Rpb24gVGkoZSl7aWYoZSl7dmFyIHQ9ZnVuY3Rpb24oKXt0cnl7ZS5zY3JvbGxXaWR0aD5lLmNsaWVudFdpZHRoJiYoZS5zY3JvbGxMZWZ0PWUuc2Nyb2xsV2lkdGgpfWNhdGNoe319O3QoKSx0eXBlb2YgcmVxdWVzdEFuaW1hdGlvbkZyYW1lPT0iZnVuY3Rpb24iJiZyZXF1ZXN0QW5pbWF0aW9uRnJhbWUodCl9fWZ1bmN0aW9uIFFtKGUpe2lmKGUpe3ZhciB0PWZ1bmN0aW9uKCl7dHJ5e2lmKHR5cGVvZiBlLnNldFNlbGVjdGlvblJhbmdlPT0iZnVuY3Rpb24iJiZlLnZhbHVlIT1udWxsKXt2YXIgbj1lLnZhbHVlLmxlbmd0aDt0cnl7ZS5zZXRTZWxlY3Rpb25SYW5nZShuLG4pfWNhdGNoe319ZS5zY3JvbGxXaWR0aD5lLmNsaWVudFdpZHRoJiYoZS5zY3JvbGxMZWZ0PWUuc2Nyb2xsV2lkdGgpfWNhdGNoe319O3QoKSx0eXBlb2YgcmVxdWVzdEFuaW1hdGlvbkZyYW1lPT0iZnVuY3Rpb24iJiZyZXF1ZXN0QW5pbWF0aW9uRnJhbWUodCl9fShmdW5jdGlvbigpe3RyeXt2YXIgZT1uYXZpZ2F0b3ImJm5hdmlnYXRvci51c2VyQWdlbnR8fCIiOy9XYW5kQXBwXC8vLnRlc3QoZSkmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QuYWRkKCJpcy13YW5kLWFwcCIpLC9XYW5kUGxhdGZvcm1cL2lPUy8udGVzdChlKSYmZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoImlzLXdhbmQtaW9zIil9Y2F0Y2h7fXRyeXtuZXcgVVJMKHdpbmRvdy5sb2NhdGlvbi5ocmVmKS5zZWFyY2hQYXJhbXMuZ2V0KCJlbWJlZCIpPT09InRlcm1pbmFsIiYmZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoImlzLXdhbmQtZW1iZWQtdGVybWluYWwiKX1jYXRjaHt9dHJ5e3dpbmRvdy5fX3dhbmROYXRpdmVCYWNrSG9va2VkPSEwfWNhdGNoe319KSgpfSkoKTsK"),
9
+ stylesCss: decode("OnJvb3R7LS1iZy1wcmltYXJ5OiAjZjZmMWU4Oy0tYmctc2Vjb25kYXJ5OiByZ2JhKDI1NSwgMjUxLCAyNDUsIC45Mik7LS1iZy10ZXJ0aWFyeTogI2YwZTVkNzstLWJnLWVsZXZhdGVkOiAjZmZmYWYyOy0tYmctc3VyZmFjZTogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNik7LS1iZy10ZXJtaW5hbDogIzFmMWIxNzstLWJnLW92ZXJsYXk6IHJnYmEoNDIsIDI4LCAxOCwgLjQpOy0tYm9yZGVyLXN1YnRsZTogcmdiYSgxNTAsIDExOCwgODUsIC4xMik7LS1ib3JkZXItZGVmYXVsdDogcmdiYSgxMjUsIDkxLCA1NywgLjI1KTstLWJvcmRlci1zdHJvbmc6IHJnYmEoMTI1LCA5MSwgNTcsIC40KTstLWJvcmRlcjogdmFyKC0tYm9yZGVyLWRlZmF1bHQpOy0tYm9yZGVyLWZvY3VzOiByZ2JhKDE5NywgMTAxLCA2MSwgLjUpOy0tdGV4dC1wcmltYXJ5OiAjMmExZjE2Oy0tdGV4dC1zZWNvbmRhcnk6ICM1YTQ1MzU7LS10ZXh0LXRlcnRpYXJ5OiAjN2E2MzUwOy0tdGV4dC1tdXRlZDogIzhjNzM1ZjstLXRleHQtaW52ZXJzZTogI2ZmZmZmZjstLXRleHQtbGluazogI2M1NjUzZDstLWFjY2VudDogI2M1NjUzZDstLWFjY2VudC1ob3ZlcjogI2Q0NzU1MDstLWFjY2VudC1hY3RpdmU6ICNhZjUzMzA7LS1hY2NlbnQtc29mdDogI2U4YzVhZTstLWFjY2VudC1tdXRlZDogcmdiYSgxOTcsIDEwMSwgNjEsIC4xMik7LS1hY2NlbnQtZ2xvdzogcmdiYSgxOTcsIDEwMSwgNjEsIC4yNSk7LS1zdWNjZXNzOiAjNGY3YTU4Oy0tc3VjY2Vzcy1ob3ZlcjogIzVhOGY2NjstLXN1Y2Nlc3MtbXV0ZWQ6IHJnYmEoNzksIDEyMiwgODgsIC4xNCk7LS1zdWNjZXNzLWdsb3c6IHJnYmEoNzksIDEyMiwgODgsIC4zKTstLXdhcm5pbmc6ICNhOTZhMmY7LS13YXJuaW5nLWhvdmVyOiAjYzA3YTM1Oy0td2FybmluZy1tdXRlZDogcmdiYSgxNjksIDEwNiwgNDcsIC4xNCk7LS13YXJuaW5nLWdsb3c6IHJnYmEoMTY5LCAxMDYsIDQ3LCAuMjUpOy0tZGFuZ2VyOiAjYjI0ZjQ1Oy0tZGFuZ2VyLWhvdmVyOiAjYzk2MDU1Oy0tZGFuZ2VyLW11dGVkOiByZ2JhKDE3OCwgNzksIDY5LCAuMTQpOy0tZGFuZ2VyLWdsb3c6IHJnYmEoMTc4LCA3OSwgNjksIC4yNSk7LS1pbmZvOiAjNGE2ZmE1Oy0taW5mby1tdXRlZDogcmdiYSg3NCwgMTExLCAxNjUsIC4xNCk7LS1zaGFkb3cteHM6IDAgMXB4IDNweCByZ2JhKDg5LCA1OCwgMzIsIC4wNCk7LS1zaGFkb3ctc206IDAgMnB4IDhweCByZ2JhKDg5LCA1OCwgMzIsIC4wNik7LS1zaGFkb3ctbWQ6IDAgNHB4IDE2cHggcmdiYSg4OSwgNTgsIDMyLCAuMDgpOy0tc2hhZG93LWxnOiAwIDhweCAzMnB4IHJnYmEoODksIDU4LCAzMiwgLjEyKTstLXNoYWRvdy14bDogMCAxMnB4IDQ4cHggcmdiYSg4OSwgNTgsIDMyLCAuMTYpOy0tc2hhZG93LXNvZnQ6IDAgMjBweCA1MHB4IHJnYmEoODksIDU4LCAzMiwgLjEyKTstLXNoYWRvdy1lbGV2YXRlZDogMCA4cHggMjRweCByZ2JhKDg5LCA1OCwgMzIsIC4wOCk7LS1zaGFkb3ctZ2xvdzogMCAwIDI0cHggdmFyKC0tYWNjZW50LWdsb3cpOy0tc2hhZG93LWdsb3ctc3VjY2VzczogMCAwIDIwcHggdmFyKC0tc3VjY2Vzcy1nbG93KTstLXJhZGl1cy14czogNnB4Oy0tcmFkaXVzLXNtOiAxMHB4Oy0tcmFkaXVzLW1kOiAxNHB4Oy0tcmFkaXVzLWxnOiAyMHB4Oy0tcmFkaXVzLXhsOiAyOHB4Oy0tcmFkaXVzLWZ1bGw6IDk5OTlweDstLWZvbnQtc2FuczogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAiU2Vnb2UgVUkiLCAiSGVsdmV0aWNhIE5ldWUiLCAiUGluZ0ZhbmcgU0MiLCAiTm90byBTYW5zIFNDIiwgIk1pY3Jvc29mdCBZYUhlaSIsIHNhbnMtc2VyaWY7LS1mb250LW1vbm86ICJTRiBNb25vIiwgIkZpcmEgQ29kZSIsICJDYXNjYWRpYSBDb2RlIiwgIkpldEJyYWlucyBNb25vIiwgTWVubG8sIE1vbmFjbywgIkNvbnNvbGFzIiwgbW9ub3NwYWNlOy0tZm9udC1zaXplLXhzOiAuNjg3NXJlbTstLWZvbnQtc2l6ZS1zbTogLjgxMjVyZW07LS1mb250LXNpemUtYmFzZTogLjkzNzVyZW07LS1mb250LXNpemUtbGc6IDEuMDYyNXJlbTstLWZvbnQtc2l6ZS14bDogMS4yNXJlbTstLWZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwOy0tZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7LS1mb250LXdlaWdodC1zZW1pYm9sZDogNjAwOy0tZm9udC13ZWlnaHQtYm9sZDogNzAwOy0tbGluZS1oZWlnaHQtdGlnaHQ6IDEuMzstLWxpbmUtaGVpZ2h0LWJhc2U6IDEuNjstLWxpbmUtaGVpZ2h0LXJlbGF4ZWQ6IDEuNzU7LS10cmFuc2l0aW9uLWZhc3Q6IC4xNXMgZWFzZTstLXRyYW5zaXRpb24tbm9ybWFsOiAuMjVzIGVhc2U7LS10cmFuc2l0aW9uLXNsb3c6IC40cyBlYXNlOy0tdHJhbnNpdGlvbi1zcHJpbmc6IC41cyBjdWJpYy1iZXppZXIoLjM0LCAxLjU2LCAuNjQsIDEpOy0tc2lkZWJhci13aWR0aDogMzAwcHg7LS1zaWRlYmFyLWNvbGxhcHNlZC13aWR0aDogNTZweDstLWZpbGUtcGFuZWwtd2lkdGg6IDMyMHB4Oy0tc2FmZS1ib3R0b206IDBweDstLWVhc2Utb3V0LWV4cG86IGN1YmljLWJlemllciguMTYsIDEsIC4zLCAxKTstLWVhc2Utb3V0LWJhY2s6IGN1YmljLWJlemllciguMzQsIDEuNTYsIC42NCwgMSk7LS1lYXNlLWluLW91dC1zbW9vdGg6IGN1YmljLWJlemllciguNCwgMCwgLjIsIDEpOy0tZWFzZS1zcHJpbmc6IGN1YmljLWJlemllciguMTc1LCAuODg1LCAuMzIsIDEuMjc1KTstLWVhc2Utc3ByaW5nLWJvdW5jeTogY3ViaWMtYmV6aWVyKC4xNzUsIC44ODUsIC4zMiwgMS40KTstLWVhc2UtYm91bmNlOiBjdWJpYy1iZXppZXIoLjY4LCAtLjU1LCAuMjY1LCAxLjU1KX1AbWVkaWEocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upe2h0bWw6bm90KC5pcy13YW5kLWFwcCkgKixodG1sOm5vdCguaXMtd2FuZC1hcHApICo6YmVmb3JlLGh0bWw6bm90KC5pcy13YW5kLWFwcCkgKjphZnRlcnthbmltYXRpb24tZHVyYXRpb246LjAxbXMhaW1wb3J0YW50O2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6MSFpbXBvcnRhbnQ7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDFtcyFpbXBvcnRhbnQ7c2Nyb2xsLWJlaGF2aW9yOmF1dG8haW1wb3J0YW50fX06cm9vdHstLWFwcC1pbnNldC10b3A6IDBweDstLWFwcC1pbnNldC1ib3R0b206IDBweDstLWFwcC1pbnNldC1sZWZ0OiAwcHg7LS1hcHAtaW5zZXQtcmlnaHQ6IDBweDstLXdhbmQtc2FmZS10b3A6IG1heCh2YXIoLS1hcHAtaW5zZXQtdG9wKSwgZW52KHNhZmUtYXJlYS1pbnNldC10b3AsIDBweCkpOy0td2FuZC1zYWZlLWJvdHRvbTogbWF4KHZhcigtLWFwcC1pbnNldC1ib3R0b20pLCBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSwgMHB4KSk7LS13YW5kLXNhZmUtbGVmdDogbWF4KHZhcigtLWFwcC1pbnNldC1sZWZ0KSwgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0LCAwcHgpKTstLXdhbmQtc2FmZS1yaWdodDogbWF4KHZhcigtLWFwcC1pbnNldC1yaWdodCksIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQsIDBweCkpOy0tc2FmZS1ib3R0b206IHZhcigtLXdhbmQtc2FmZS1ib3R0b20pOy0taW5wdXQtc2FmZS1ib3R0b206IHZhcigtLXNhZmUtYm90dG9tKX0uaXMtd2FuZC1hcHB7LS13YW5kLXNhZmUtdG9wOiBtYXgodmFyKC0tYXBwLWluc2V0LXRvcCksIGVudihzYWZlLWFyZWEtaW5zZXQtdG9wLCAwcHgpLCAzMnB4KTstLXdhbmQtc2FmZS1ib3R0b206IG1heCh2YXIoLS1hcHAtaW5zZXQtYm90dG9tKSwgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20sIDBweCksIDBweCl9LmlzLXdhbmQtYXBwLW5hdGl2ZS1pbnNldHN7LS13YW5kLXNhZmUtdG9wOiAwcHg7LS13YW5kLXNhZmUtYm90dG9tOiAwcHg7LS13YW5kLXNhZmUtbGVmdDogMHB4Oy0td2FuZC1zYWZlLXJpZ2h0OiAwcHh9LmlzLXdhbmQtaW9zLmlzLWtleWJvYXJkLW9wZW57LS1pbnB1dC1zYWZlLWJvdHRvbTogMHB4fS5pcy13YW5kLWFwcCAuc2lkZWJhci1oZWFkZXIsaHRtbC5pcy13YW5kLWFwcCAuc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWhlYWRlcntwYWRkaW5nLXRvcDpjYWxjKDE0cHggKyB2YXIoLS13YW5kLXNhZmUtdG9wKSl9LmFwcC1jb250YWluZXJ7cGFkZGluZy10b3A6dmFyKC0td2FuZC1zYWZlLXRvcCl9LmlzLXdhbmQtZW1iZWQtdGVybWluYWwgLnNpZGViYXIsLmlzLXdhbmQtZW1iZWQtdGVybWluYWwgLm1haW4taGVhZGVyLXJvdywuaXMtd2FuZC1lbWJlZC10ZXJtaW5hbCAuYmxhbmstY2hhdCwuaXMtd2FuZC1lbWJlZC10ZXJtaW5hbCAuZHJhd2VyLWJhY2tkcm9wLC5pcy13YW5kLWVtYmVkLXRlcm1pbmFsIC5maWxlLXBhbmVsLWJhY2tkcm9we2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LmlzLXdhbmQtZW1iZWQtdGVybWluYWwgLmFwcC1jb250YWluZXJ7cGFkZGluZy10b3A6MH0uaXMtd2FuZC1lbWJlZC10ZXJtaW5hbCAubWFpbi1sYXlvdXQsLmlzLXdhbmQtZW1iZWQtdGVybWluYWwgLm1haW4tbGF5b3V0LnNpZGViYXItcGlubmVkLC5pcy13YW5kLWVtYmVkLXRlcm1pbmFsIC5tYWluLWxheW91dC5zaWRlYmFyLXBpbm5lZC5zaWRlYmFyLWNvbGxhcHNlZHtwYWRkaW5nLWxlZnQ6MH1odG1sLm5vLXRyYW5zaXRpb24saHRtbC5uby10cmFuc2l0aW9uICosaHRtbC5uby10cmFuc2l0aW9uICo6YmVmb3JlLGh0bWwubm8tdHJhbnNpdGlvbiAqOmFmdGVye3RyYW5zaXRpb246bm9uZSFpbXBvcnRhbnQ7YW5pbWF0aW9uOm5vbmUhaW1wb3J0YW50fSp7Ym94LXNpemluZzpib3JkZXItYm94O21hcmdpbjowO3BhZGRpbmc6MH1odG1se2ZvbnQtc2l6ZToxNHB4Oy13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6Z3JheXNjYWxlO3RleHQtcmVuZGVyaW5nOm9wdGltaXplTGVnaWJpbGl0eTttaW4taGVpZ2h0OjEwMCU7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZC1jb2xvcjojZjZmMWU4fWJvZHl7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQscmdiYSgyMDgsMTM4LDkyLC4xOCksdHJhbnNwYXJlbnQgMzUlKSxyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IGJvdHRvbSByaWdodCxyZ2JhKDE0OCwxMDcsNzQsLjEpLHRyYW5zcGFyZW50IDQwJSksbGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmJmN2YxLCNmNmYxZTgpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bWluLWhlaWdodDoxMDB2aDttaW4taGVpZ2h0OjEwMGR2aDtoZWlnaHQ6MTAwdmg7aGVpZ2h0OjEwMGR2aDtsaW5lLWhlaWdodDp2YXIoLS1saW5lLWhlaWdodC1iYXNlKTtvdmVyZmxvdzpoaWRkZW59Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo4cHg7aGVpZ2h0OjhweH06Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6Izk2NzY1NTQwO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXJ7YmFja2dyb3VuZDojOTY3NjU1NjZ9Ojotd2Via2l0LXNjcm9sbGJhci1jb3JuZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH06OnNlbGVjdGlvbntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1zb2Z0KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfTo6LW1vei1zZWxlY3Rpb257YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtc29mdCk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uYXBwLWNvbnRhaW5lcnstLWxheW91dC1tYWluLWZpbGUtcGFuZWwtd2lkdGg6IHZhcigtLWZpbGUtcGFuZWwtd2lkdGgpO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cG9zaXRpb246Zml4ZWQ7dG9wOnZhcigtLWFwcC12aWV3cG9ydC10b3AsIDBweCk7bGVmdDowO3JpZ2h0OjA7aGVpZ2h0OnZhcigtLWFwcC12aWV3cG9ydC1oZWlnaHQsIDEwMGR2aCk7b3ZlcmZsb3c6aGlkZGVufS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZXtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7d2lkdGg6MzRweDtoZWlnaHQ6MzRweDtwYWRkaW5nOjA7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmbGV4LXNocmluazowO2JhY2tncm91bmQ6I2ZmZmJmNWQ5O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2N1cnNvcjpwb2ludGVyO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpIHNhdHVyYXRlKDE4MCUpO2JveC1zaGFkb3c6MCAycHggOHB4ICMwMDAwMDAwZjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5tYWluLWhlYWRlci1yb3cgLmZsb2F0aW5nLXNpZGViYXItdG9nZ2xle21hcmdpbi1yaWdodDoycHh9Lm1haW4taGVhZGVyLXJvdyAuZmxvYXRpbmctc2lkZWJhci10b2dnbGUuYWN0aXZle29wYWNpdHk6MTtwb2ludGVyLWV2ZW50czphdXRvfS5tYWluLWhlYWRlci1yb3cgLmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlLmFjdGl2ZSAuaGFtYnVyZ2VyLWljb24gc3BhbjpudGgtY2hpbGQoMSl7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNXB4KSByb3RhdGUoNDVkZWcpfS5tYWluLWhlYWRlci1yb3cgLmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlLmFjdGl2ZSAuaGFtYnVyZ2VyLWljb24gc3BhbjpudGgtY2hpbGQoMil7b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZVgoMCl9Lm1haW4taGVhZGVyLXJvdyAuZmxvYXRpbmctc2lkZWJhci10b2dnbGUuYWN0aXZlIC5oYW1idXJnZXItaWNvbiBzcGFuOm50aC1jaGlsZCgzKXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNXB4KSByb3RhdGUoLTQ1ZGVnKX0ubWFpbi1oZWFkZXItcm93IC5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZTpob3ZlcntiYWNrZ3JvdW5kOiNmZmZiZjVmMjtib3gtc2hhZG93OjAgM3B4IDEycHggIzAwMDAwMDFhfS5tYWluLWhlYWRlci1yb3cgLmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjkyKX0ubWFpbi1oZWFkZXItcm93IC5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZS5hY3RpdmU6aG92ZXIgLmhhbWJ1cmdlci1pY29uIHNwYW4sLm1haW4taGVhZGVyLXJvdyAuZmxvYXRpbmctc2lkZWJhci10b2dnbGU6aG92ZXIgLmhhbWJ1cmdlci1pY29uIHNwYW57YmFja2dyb3VuZDp2YXIoLS10ZXh0LXByaW1hcnkpfS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZTpob3ZlcntiYWNrZ3JvdW5kOiNmZmZiZjVmMjtib3gtc2hhZG93OjAgM3B4IDEycHggIzAwMDAwMDFhfS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZS5hY3RpdmV7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgZWFzZX0uZmxvYXRpbmctc2lkZWJhci10b2dnbGU6YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTIpfS5oYW1idXJnZXItaWNvbnt3aWR0aDoxNnB4O2hlaWdodDoxMnB4O3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LmhhbWJ1cmdlci1pY29uIHNwYW57ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO2hlaWdodDoycHg7YmFja2dyb3VuZDp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIHZhcigtLWVhc2Utb3V0LWV4cG8pLG9wYWNpdHkgLjJzIGVhc2UsYmFja2dyb3VuZCAuMTVzIGVhc2U7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXJ9LmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlOmhvdmVyIC5oYW1idXJnZXItaWNvbiBzcGFue2JhY2tncm91bmQ6dmFyKC0tdGV4dC1wcmltYXJ5KX0uZmxvYXRpbmctc2lkZWJhci10b2dnbGUuYWN0aXZlIC5oYW1idXJnZXItaWNvbiBzcGFuOm50aC1jaGlsZCgxKXt0cmFuc2Zvcm06dHJhbnNsYXRlWSg1cHgpIHJvdGF0ZSg0NWRlZyl9LmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlLmFjdGl2ZSAuaGFtYnVyZ2VyLWljb24gc3BhbjpudGgtY2hpbGQoMil7b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZVgoMCl9LmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlLmFjdGl2ZSAuaGFtYnVyZ2VyLWljb24gc3BhbjpudGgtY2hpbGQoMyl7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTVweCkgcm90YXRlKC00NWRlZyl9LnRvcGJhci1sb2dvLWljb257d2lkdGg6MjJweDtoZWlnaHQ6MjJweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxNDVkZWcsI2Q0Nzg1YSwjYjg1NzNhLCNhMDRhMmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXhzKTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOjEwcHg7Y29sb3I6I2ZmZjtmb250LXdlaWdodDo4MDA7Ym94LXNoYWRvdzowIDFweCA0cHggI2I4NWMzNzQwLGluc2V0IDAgMXB4ICNmZmYzO2xldHRlci1zcGFjaW5nOi0uMDJlbTtmbGV4LXNocmluazowfS5zdGF0dXMtZG90e3dpZHRoOjZweDtoZWlnaHQ6NnB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tdGV4dC1tdXRlZCl9LnN0YXR1cy1kb3QuYWN0aXZle2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcyk7Ym94LXNoYWRvdzowIDAgOHB4IHZhcigtLXN1Y2Nlc3MpfS5tYWluLWxheW91dHtkaXNwbGF5OmZsZXg7ZmxleDoxO21pbi1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZy1sZWZ0OjA7dHJhbnNpdGlvbjpwYWRkaW5nLWxlZnQgdmFyKC0tdHJhbnNpdGlvbi1ub3JtYWwpfS5zaWRlYmFyLW9wZW46bm90KC5zaWRlYmFyLXBpbm5lZCkgLmlucHV0LXBhbmVse29wYWNpdHk6MDt2aXNpYmlsaXR5OmhpZGRlbjtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZSx2aXNpYmlsaXR5IDBzIGxpbmVhciAuMnN9Lm1haW4tbGF5b3V0LnNpZGViYXItcGlubmVke3BhZGRpbmctbGVmdDp2YXIoLS1zaWRlYmFyLXdpZHRoKTt0cmFuc2l0aW9uOnBhZGRpbmctbGVmdCAuM3MgdmFyKC0tZWFzZS1vdXQtZXhwbyl9Lm1haW4tbGF5b3V0LnNpZGViYXItcGlubmVkIC5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZXtkaXNwbGF5Om5vbmV9Lm1haW4tbGF5b3V0LnNpZGViYXItcGlubmVkLnNpZGViYXItY29sbGFwc2Vke3BhZGRpbmctbGVmdDp2YXIoLS1zaWRlYmFyLWNvbGxhcHNlZC13aWR0aCl9LmRyYXdlci1iYWNrZHJvcHtwb3NpdGlvbjpmaXhlZDtpbnNldDowO3otaW5kZXg6NDQ7YmFja2dyb3VuZDp2YXIoLS1iZy1vdmVybGF5KTtvcGFjaXR5OjA7cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjM1cyB2YXIoLS1lYXNlLWluLW91dC1zbW9vdGgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDRweCl9LmRyYXdlci1iYWNrZHJvcC5vcGVue29wYWNpdHk6MTtwb2ludGVyLWV2ZW50czphdXRvO2JhY2tkcm9wLWZpbHRlcjpibHVyKDhweCl9LnNpZGViYXJ7cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO2JvdHRvbTowO3otaW5kZXg6NDU7d2lkdGg6bWluKHZhcigtLXNpZGViYXItd2lkdGgpLGNhbGMoMTAwdncgLSAyMHB4KSk7bWF4LXdpZHRoOjkwdnc7YmFja2dyb3VuZDojZmZmYmY1ZjU7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21pbi1oZWlnaHQ6MDtiYWNrZHJvcC1maWx0ZXI6Ymx1cigyMHB4KSBzYXR1cmF0ZSgxODAlKTtib3gtc2hhZG93OjRweCAwIDMycHggIzU5M2EyMDE0O3RyYW5zZm9ybTp0cmFuc2xhdGUoLTEwMCUpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyksYm94LXNoYWRvdyAuMzVzIGVhc2Usb3BhY2l0eSAuMjVzIGVhc2U7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjB9LnNpZGViYXIub3Blbnt0cmFuc2Zvcm06dHJhbnNsYXRlKDApO2JveC1zaGFkb3c6OHB4IDAgNDBweCAjNTkzYTIwMjY7cG9pbnRlci1ldmVudHM6YXV0bztvcGFjaXR5OjF9LnNpZGViYXIucGlubmVke3RyYW5zZm9ybTp0cmFuc2xhdGUoMCk7cG9pbnRlci1ldmVudHM6YXV0bztvcGFjaXR5OjE7Ym94LXNoYWRvdzpub25lO3RyYW5zaXRpb246d2lkdGggLjNzIHZhcigtLWVhc2Utb3V0LWV4cG8pLHRyYW5zZm9ybSAuMzVzIHZhcigtLWVhc2Utb3V0LWV4cG8pLGJveC1zaGFkb3cgLjM1cyBlYXNlLG9wYWNpdHkgLjI1cyBlYXNlfS5zaWRlYmFyLmNvbGxhcHNlZCAuc2lkZWJhci1oZWFkZXItYWN0aW9ucyAuc2lkZWJhci1jbG9zZXtkaXNwbGF5Om5vbmV9LnNpZGViYXIucGlubmVkLmNvbGxhcHNlZHt3aWR0aDp2YXIoLS1zaWRlYmFyLWNvbGxhcHNlZC13aWR0aCl9LnNpZGViYXIucGlubmVkLmNvbGxhcHNlZCAuc2lkZWJhci1oZWFkZXJ7cGFkZGluZzoxNHB4IDhweDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDowfS5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWQgLnNpZGViYXItaGVhZGVyLW1haW4sLnNpZGViYXIucGlubmVkLmNvbGxhcHNlZCAuc2lkZWJhci1oZWFkZXItbW9yZSwuc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLXBpbi10b2dnbGUsLnNpZGViYXIucGlubmVkLmNvbGxhcHNlZCAuc2lkZWJhci1mb290ZXJ7ZGlzcGxheTpub25lfS5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWQgLnNpZGViYXItaGVhZGVyLWFjdGlvbnN7Z2FwOjA7d2lkdGg6MTAwJTtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWQgLnNpZGViYXItYm9keXtwYWRkaW5nOjhweCA0cHg7b3ZlcmZsb3cteTphdXRvO292ZXJmbG93LXg6aGlkZGVufS5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWQgLnNpZGViYXItYm9keTo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6MH0uc2lkZWJhci1jb2xsYXBzZWQtdGlsZXN7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6OHB4O2FsaWduLWl0ZW1zOmNlbnRlcn0uc2lkZWJhci1jb2xsYXBzZWQtdGlsZXt3aWR0aDozNnB4O2hlaWdodDozNnB4O2JvcmRlci1yYWRpdXM6MTFweDtib3JkZXI6LjVweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4zMik7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCNkNDc4NWEsI2I4NTczYSwjYTA0YTJlKTtjb2xvcjojZmZmO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjcwMDtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXM7bGV0dGVyLXNwYWNpbmc6LS4wMWVtO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzowO2JveC1zaGFkb3c6MCAxcHggMnB4ICNiODVjMzczOCxpbnNldCAwIDFweCAjZmZmZmZmNDc7dHJhbnNpdGlvbjpmaWx0ZXIgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxib3gtc2hhZG93IC4yMnMgZWFzZSx0cmFuc2Zvcm0gLjIycyB2YXIoLS1lYXNlLW91dC1leHBvKX0uc2lkZWJhci1jb2xsYXBzZWQtdGlsZTpob3ZlcntmaWx0ZXI6YnJpZ2h0bmVzcygxLjA2KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNHB4IDEwcHggLTNweCAjYjg1YzM3NWMsaW5zZXQgMCAxcHggI2ZmZmZmZjUyfS5zaWRlYmFyLWNvbGxhcHNlZC10aWxlLmhpc3Rvcnl7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCNlOGQzYzAsI2QzYjY5ZCwjYjg5NDc4KTtjb2xvcjojNTkzYTIwZTA7Ym94LXNoYWRvdzowIDFweCAycHggIzc4NTgzODJlLGluc2V0IDAgMXB4ICNmZmZmZmY2Yn0uc2lkZWJhci1jb2xsYXBzZWQtdGlsZS5oaXN0b3J5OmhvdmVye2JveC1zaGFkb3c6MCA0cHggMTBweCAtM3B4ICM3ODU4Mzg0ZCxpbnNldCAwIDFweCAjZmZmZmZmN2F9LnNpZGViYXItY29sbGFwc2VkLXRpbGUuYWRke2JhY2tncm91bmQ6I2I4NWMzNzBmO2JvcmRlcjoxLjVweCBkYXNoZWQgcmdiYSgxODQsOTIsNTUsLjUpO2NvbG9yOiNhMDRhMmU7Ym94LXNoYWRvdzpub25lO21hcmdpbi10b3A6MnB4fS5zaWRlYmFyLWNvbGxhcHNlZC10aWxlLmFkZDpob3ZlcntmaWx0ZXI6bm9uZTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtiYWNrZ3JvdW5kOiNiODVjMzcxZjtib3JkZXItY29sb3I6I2I4NWMzN2I4O2JveC1zaGFkb3c6MCAzcHggOHB4IC0zcHggI2I4NWMzNzUyfS5zaWRlYmFyLWNvbGxhcHNlZC10aWxlLmFkZDphY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoLjk0KX0uc2lkZWJhci1jb2xsYXBzZWQtdGlsZS5hY3RpdmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCNkMjczNTgsI2IzNTQzNCwjOTM0MTI4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgMCAwIDJweCAjYzU2NTNkNGQsMCA1cHggMTRweCAtNHB4ICNhMDRhMmU3MyxpbnNldCAwIDFweCAjZmZmNn0uc2lkZWJhci1jb2xsYXBzZWQtdGlsZTphY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoLjk0KTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wOHN9LnNpZGViYXItdGlsZS1idWJibGV7cG9zaXRpb246Zml4ZWQ7bWF4LXdpZHRoOjMyMHB4O21pbi13aWR0aDo4MHB4O3BhZGRpbmc6OXB4IDEzcHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCNmZmZiZjVmYywjZmNmNGU5ZmMpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSwgcmdiYSgxMjAsIDg4LCA1NiwgLjE4KSk7Ym9yZGVyLXJhZGl1czoxNHB4O2JveC1zaGFkb3c6MCA2cHggMjRweCAtNHB4ICM1OTNhMjAzOCwwIDJweCA2cHggIzU5M2EyMDE0LGluc2V0IDAgMXB4ICNmZmZmZmZhNjtmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDoxLjQ2O2NvbG9yOiMzODI0MTJlYjt6LWluZGV4OjIwMDtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlKC00cHgpO3RyYW5zaXRpb246b3BhY2l0eSAuMTZzIGVhc2UsdHJhbnNmb3JtIC4xOHMgdmFyKC0tZWFzZS1vdXQtZXhwbywgZWFzZSk7d2hpdGUtc3BhY2U6cHJlLXdyYXA7d29yZC1icmVhazpicmVhay13b3JkO2JhY2tkcm9wLWZpbHRlcjpibHVyKDEycHgpIHNhdHVyYXRlKDE2MCUpfS5zaWRlYmFyLXRpbGUtYnViYmxlLnZpc2libGV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUoMCl9LnNpZGViYXItdGlsZS1idWJibGU6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDotNnB4O3RvcDp2YXIoLS1idWJibGUtdGFpbC15LCA1MCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7d2lkdGg6MTFweDtoZWlnaHQ6MTFweDtiYWNrZ3JvdW5kOmluaGVyaXQ7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUsIHJnYmEoMTIwLCA4OCwgNTYsIC4xOCkpO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUsIHJnYmEoMTIwLCA4OCwgNTYsIC4xOCkpO2JveC1zaGFkb3c6LTJweCAycHggNXB4IC0ycHggIzU5M2EyMDE0fS5zaWRlYmFyLWNvbGxhcHNlLXRvZ2dsZXtmbGV4LXNocmluazowO3RyYW5zaXRpb246Y29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uc2lkZWJhci1jb2xsYXBzZS10b2dnbGUuY29sbGFwc2Vke2NvbG9yOnZhcigtLXByaW1hcnkpfS5zaWRlYmFyLXBpbi10b2dnbGV7ZmxleC1zaHJpbms6MDt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE2cyBlYXNlLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksdHJhbnNmb3JtIC4zcyB2YXIoLS1lYXNlLW91dC1leHBvKX0uc2lkZWJhci1waW4tdG9nZ2xlLnBpbm5lZHtiYWNrZ3JvdW5kOiNjNTY1M2QxZjtjb2xvcjp2YXIoLS1hY2NlbnQpO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpfS5zaWRlYmFyLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3BhZGRpbmc6MTJweCAxNHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JhY2tncm91bmQ6I2ZmZmJmNWNjO2ZsZXgtc2hyaW5rOjA7bWluLWhlaWdodDo1MnB4O2dhcDoxMHB4fS5zaWRlYmFyLWhlYWRlci1tYWlue2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjlweDttaW4td2lkdGg6MDtmbGV4OjF9LnNpZGViYXItaGVhZGVyLWFjdGlvbnN7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O2ZsZXgtc2hyaW5rOjB9LnNpZGViYXItaGVhZGVyLW1vcmV7cG9zaXRpb246cmVsYXRpdmV9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93e2Rpc3BsYXk6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6Y2FsYygxMDAlICsgNnB4KTtyaWdodDowO21pbi13aWR0aDoxNTBweDtiYWNrZ3JvdW5kOiNmZmZiZjVmYTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KSBzYXR1cmF0ZSgxODAlKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtib3gtc2hhZG93OjAgNHB4IDIwcHggIzU5M2EyMDFmO3BhZGRpbmc6NHB4O3otaW5kZXg6NjB9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93Lm9wZW57ZGlzcGxheTpibG9jazthbmltYXRpb246ZmFkZVNsaWRlRG93biAuMTVzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5zaWRlYmFyLWhlYWRlci1vdmVyZmxvdyAub3ZlcmZsb3ctaXRlbXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7d2lkdGg6MTAwJTtwYWRkaW5nOjlweCAxMnB4O2JvcmRlcjpub25lO2JhY2tncm91bmQ6bm9uZTtmb250LWZhbWlseTp2YXIoLS1mb250LXNhbnMpO2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czo2cHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uc2lkZWJhci1oZWFkZXItb3ZlcmZsb3cgLm92ZXJmbG93LWl0ZW06aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uc2lkZWJhci1oZWFkZXItb3ZlcmZsb3cgLm92ZXJmbG93LWl0ZW06YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTcpfUBrZXlmcmFtZXMgZmFkZVNsaWRlRG93bnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTRweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfX0uc2lkZWJhci1sb2dvdXR7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7b3BhY2l0eTouNzt0cmFuc2l0aW9uOm9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5zaWRlYmFyLWxvZ291dDpob3ZlcntvcGFjaXR5OjE7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS5zaWRlYmFyLXN3aXRjaC1zZXJ2ZXJ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7b3BhY2l0eTouNzt0cmFuc2l0aW9uOm9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5zaWRlYmFyLXN3aXRjaC1zZXJ2ZXI6aG92ZXJ7b3BhY2l0eToxO2NvbG9yOnZhcigtLXByaW1hcnksIHZhcigtLXRleHQtc2Vjb25kYXJ5KSl9LmxvZ2luLXN3aXRjaC1zZXJ2ZXJ7bWFyZ2luLXRvcDoxMHB4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Z2FwOjZweDtmb250LXNpemU6MTNweDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LmxvZ2luLXN3aXRjaC1zZXJ2ZXIgc3Zne29wYWNpdHk6Ljc1fS5sb2dpbi1zd2l0Y2gtc2VydmVyOmhvdmVye2NvbG9yOnZhcigtLXByaW1hcnksIHZhcigtLXRleHQtcHJpbWFyeSkpfS5zaWRlYmFyLXRpdGxle2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi0uMDFlbTt3aGl0ZS1zcGFjZTpub3dyYXA7ZmxleC1zaHJpbms6MH0uc2Vzc2lvbi1jb3VudHtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtwYWRkaW5nOjNweCA4cHg7Ym9yZGVyLXJhZGl1czoxMHB4O2ZvbnQtd2VpZ2h0OjYwMH0uc2lkZWJhci1jbG9zZXtmbGV4LXNocmluazowfS5maWxlLWV4cGxvcmVye2ZsZXg6MTtvdmVyZmxvdy15OmF1dG87cGFkZGluZzo4cHggMDttaW4taGVpZ2h0OjB9LmZpbGUtZXhwbG9yZXIuZW1wdHl7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MjRweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6LjgxMjVyZW07dGV4dC1hbGlnbjpjZW50ZXJ9LmZpbGUtdHJlZXtmb250LXNpemU6LjgxMjVyZW19LnRyZWUtaXRlbXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHg7cGFkZGluZzo0cHggMTJweDtjdXJzb3I6cG9pbnRlcjtib3JkZXItcmFkaXVzOjZweDt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTt1c2VyLXNlbGVjdDpub25lO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30udHJlZS1pdGVtOmhvdmVye2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmZmZmYjMsI2ZmZmNmNzY2KTtib3gtc2hhZG93Omluc2V0IDAgMXB4ICNmZmZmZmZiM30udHJlZS1pdGVtLmFjdGl2ZXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmNmN2ViLCNmZmY0ZThiZik7Y29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMCAwIDFweCAjYzU2NTNkMzgsMCAzcHggMTBweCAtM3B4ICNjNTY1M2Q0MCxpbnNldCAwIDFweCAjZmZmZmZmZDl9LnRyZWUtdG9nZ2xle2ZsZXgtc2hyaW5rOjA7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOi42MjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udHJlZS10b2dnbGUub3Blbnt0cmFuc2Zvcm06cm90YXRlKDkwZGVnKX0udHJlZS10b2dnbGUuZW1wdHl7dmlzaWJpbGl0eTpoaWRkZW59LnRyZWUtaWNvbntmbGV4LXNocmluazowO2ZvbnQtc2l6ZToxcmVtO21hcmdpbi1yaWdodDo2cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcn0udHJlZS1uYW1le292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2ZsZXg6MTttaW4td2lkdGg6MH0udHJlZS1jaGlsZHJlbntkaXNwbGF5Om5vbmV9LnRyZWUtY2hpbGRyZW4ub3BlbntkaXNwbGF5OmJsb2NrfS5maWxlLWV4cGxvcmVyLWhlYWRlcntwYWRkaW5nOjEwcHggMTRweCA2cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2ZsZXgtc2hyaW5rOjA7b3ZlcmZsb3cteDphdXRvO292ZXJmbG93LXk6aGlkZGVuO3Njcm9sbGJhci13aWR0aDp0aGlufS5maWxlLWV4cGxvcmVyLXBhdGh7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmbGV4OjE7bWluLXdpZHRoOjA7Zm9udC13ZWlnaHQ6NTAwfWlucHV0LmZpbGUtZXhwbG9yZXItcGF0aHtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjhweDtwYWRkaW5nOjZweCAxMHB4O2hlaWdodDozMHB4O2xpbmUtaGVpZ2h0OjEuMjtjdXJzb3I6dGV4dDt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO291dGxpbmU6bm9uZTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3dpZHRoOm1heC1jb250ZW50O21pbi13aWR0aDoxMDAlO2JveC1zaXppbmc6Ym9yZGVyLWJveH1pbnB1dC5maWxlLWV4cGxvcmVyLXBhdGg6OnBsYWNlaG9sZGVye2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO29wYWNpdHk6LjZ9aW5wdXQuZmlsZS1leHBsb3Jlci1wYXRoOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSk7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlcik7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfWlucHV0LmZpbGUtZXhwbG9yZXItcGF0aDpmb2N1c3tiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7dGV4dC1vdmVyZmxvdzpjbGlwO2JveC1zaGFkb3c6MCAwIDAgM3B4ICNkNDk4NjMxZn0uZmlsZS1leHBsb3Jlci1yZWZyZXNoe2JhY2tncm91bmQ6bm9uZTtib3JkZXI6bm9uZTtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MXJlbTtwYWRkaW5nOjRweDtib3JkZXItcmFkaXVzOjRweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uZmlsZS1leHBsb3Jlci1yZWZyZXNoOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt0cmFuc2Zvcm06cm90YXRlKDkwZGVnKX0uZmlsZS1zaWRlLXBhbmVse3Bvc2l0aW9uOmZpeGVkO3JpZ2h0OmNhbGMoLTEgKiB2YXIoLS1maWxlLXBhbmVsLXdpZHRoKSk7dG9wOjA7Ym90dG9tOjA7d2lkdGg6dmFyKC0tZmlsZS1wYW5lbC13aWR0aCk7YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KTtib3JkZXItbGVmdDoxcHggc29saWQgdmFyKC0tYm9yZGVyKTt6LWluZGV4OjU1O3RyYW5zaXRpb246cmlnaHQgLjNzIHZhcigtLWVhc2Utb3V0LWV4cG8pLGJveC1zaGFkb3cgLjNzIGVhc2U7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtib3gtc2hhZG93Oi00cHggMCAyNHB4ICMwMDAwMDAxYTtwYWRkaW5nLXRvcDp2YXIoLS13YW5kLXNhZmUtdG9wKTtwYWRkaW5nLWJvdHRvbTp2YXIoLS13YW5kLXNhZmUtYm90dG9tKX0uZmlsZS1zaWRlLXBhbmVsLm9wZW57cmlnaHQ6MDtib3gtc2hhZG93Oi04cHggMCAzMnB4ICM1OTNhMjAyNn0uZmlsZS1wYW5lbC1iYWNrZHJvcHtkaXNwbGF5Om5vbmV9QG1lZGlhKG1heC13aWR0aDo3NjhweCl7LmZpbGUtcGFuZWwtYmFja2Ryb3B7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpmaXhlZDtpbnNldDowO2JhY2tncm91bmQ6IzJhMWMxMjRkO3otaW5kZXg6NTQ7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBlYXNlO2JhY2tkcm9wLWZpbHRlcjpibHVyKDJweCl9LmZpbGUtcGFuZWwtYmFja2Ryb3Aub3BlbntvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6YXV0b30uc2lkZWJhci1waW4tdG9nZ2xle2Rpc3BsYXk6bm9uZX19LmZpbGUtc2lkZS1wYW5lbC1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nOjEycHggMTRweCAxMHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2ZsZXgtc2hyaW5rOjA7Z2FwOjhweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sI2ZmZjYsI2ZmZjApfS5maWxlLXNpZGUtcGFuZWwtdGl0bGUtZ3JvdXB7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O21pbi13aWR0aDowO2ZsZXg6MX0uZmlsZS1zaWRlLXBhbmVsLWljb257ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjb2xvcjp2YXIoLS1hY2NlbnQpO29wYWNpdHk6Ljg1fS5maWxlLXNpZGUtcGFuZWwtdGl0bGV7Zm9udC1zaXplOi44NzVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGV0dGVyLXNwYWNpbmc6LjAxZW19LmZpbGUtc2lkZS1wYW5lbC1oZWFkZXItYWN0aW9uc3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHg7ZmxleC1zaHJpbms6MH0uZmlsZS1zaWRlLXBhbmVsLWljb25idG57d2lkdGg6MzBweDtoZWlnaHQ6MzBweDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czo4cHg7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSx0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uZmlsZS1zaWRlLXBhbmVsLWljb25idG46aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLXN1YnRsZSl9LmZpbGUtc2lkZS1wYW5lbC1pY29uYnRuOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk0KX0uZmlsZS1zaWRlLXBhbmVsLWljb25idG4uYWN0aXZle2NvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2JvcmRlci1jb2xvcjojZDQ5ODYzNTl9LmZpbGUtc2lkZS1wYW5lbC1pY29uYnRuLmNsb3NlOmhvdmVye2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7YmFja2dyb3VuZDojZGM0NjQ2MTQ7Ym9yZGVyLWNvbG9yOiNkYzQ2NDY0MH0uZmlsZS1zaWRlLXBhbmVsLWljb25idG4gLndhbmQtaWNvbntkaXNwbGF5OmJsb2NrfS5maWxlLXNpZGUtcGFuZWwtaWNvbmJ0bjpob3ZlciAud2FuZC1pY29uLXJlZnJlc2h7dHJhbnNmb3JtOnJvdGF0ZSg2MGRlZyk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI1cyB2YXIoLS1lYXNlLW91dC1leHBvKX0uZmlsZS1zaWRlLXBhbmVsLWJvZHl7ZmxleDoxO21pbi1oZWlnaHQ6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO292ZXJmbG93OmhpZGRlbn0uZ2l0LXN0YXR1cy1iYWRnZXtmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo2MDA7cGFkZGluZzoxcHggNXB4O2JvcmRlci1yYWRpdXM6M3B4O21pbi13aWR0aDoxOHB4O3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyl9LmdpdC1hZGRlZHtiYWNrZ3JvdW5kOiMyMjhiMjIyNjtjb2xvcjojMjI4YjIyfS5naXQtbW9kaWZpZWR7YmFja2dyb3VuZDojZmZhNTAwMjY7Y29sb3I6b3JhbmdlfS5naXQtZGVsZXRlZHtiYWNrZ3JvdW5kOiNkYzE0M2MyNjtjb2xvcjojZGMxNDNjfS5naXQtcmVuYW1lZHtiYWNrZ3JvdW5kOiM0NjgyYjQyNjtjb2xvcjojNDY4MmI0fS5naXQtdW5zdGFnZWR7YmFja2dyb3VuZDojZmY4YzAwMjY7Y29sb3I6I2ZmOGMwMH0uZ2l0LXVuc3RhZ2VkLWRlbGV0ZWR7YmFja2dyb3VuZDojZGMxNDNjMjY7Y29sb3I6I2RjMTQzY30uZ2l0LXVudHJhY2tlZHtiYWNrZ3JvdW5kOiM4MDgwODAyNjtjb2xvcjpncmF5fS5maWxlLXNlYXJjaC1ib3h7cGFkZGluZzo4cHggMTJweCAxMHB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjA7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7ZmxleC1zaHJpbms6MDtwb3NpdGlvbjpyZWxhdGl2ZX0uZmlsZS1zZWFyY2gtaWNvbntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjIycHg7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtwb2ludGVyLWV2ZW50czpub25lO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO29wYWNpdHk6Ljd9LmZpbGUtc2VhcmNoLWlucHV0e2ZsZXg6MTtwYWRkaW5nOjdweCAzMnB4IDdweCAzMHB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtib3JkZXItcmFkaXVzOjhweDtmb250LXNpemU6LjgxMjVyZW07Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtvdXRsaW5lOm5vbmU7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE1cyBlYXNlLGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLGJveC1zaGFkb3cgLjE1cyBlYXNlfS5maWxlLXNlYXJjaC1pbnB1dDpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpO2JveC1zaGFkb3c6MCAwIDAgM3B4ICNkNDk4NjMxZn0uZmlsZS1zZWFyY2gtaW5wdXQ6OnBsYWNlaG9sZGVye2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5maWxlLXNlYXJjaC1jbGVhcntwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxOHB4O3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6NHB4O3dpZHRoOjIycHg7aGVpZ2h0OjIycHg7Ym9yZGVyLXJhZGl1czo1MCU7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7ZGlzcGxheTpub25lO2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2UsY29sb3IgLjE1cyBlYXNlfS5maWxlLXNlYXJjaC1jbGVhcjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS5maWxlLXNlYXJjaC1jbGVhci52aXNpYmxle2Rpc3BsYXk6aW5saW5lLWZsZXh9LmZpbGUtc2VhcmNoLWNsZWFyOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uc2lkZWJhci1ib2R5e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleDoxO21pbi1oZWlnaHQ6MDtvdmVyZmxvdy15OmF1dG87LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2g7cG9zaXRpb246cmVsYXRpdmV9LnNpZGViYXItaW50cm97Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7ZmxleC1zaHJpbms6MH0uc2Vzc2lvbnMtbGlzdHtmbGV4OjEgMCBhdXRvO21pbi1oZWlnaHQ6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO292ZXJmbG93OnZpc2libGU7cGFkZGluZzoxMHB4IDEwcHggMTJweH0jc2Vzc2lvbnMtcGFuZWx7ZGlzcGxheTpjb250ZW50c30uc2Vzc2lvbnMtbGlzdDplbXB0eTpiZWZvcmV7Y29udGVudDoiXDY2ODJcNjVlMFw0ZjFhXDhiZGQiO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjttaW4taGVpZ2h0OjIwMHB4O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouODc1cmVtfS5zZXNzaW9uLWdyb3Vwe21hcmdpbi1ib3R0b206MTRweH0uc2Vzc2lvbi1ncm91cDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uc2Vzc2lvbi1ncm91cC10aXRsZXtwYWRkaW5nOjRweCA2cHggMTBweDtmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi4wOGVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4fS5zZXNzaW9uLWdyb3VwLXRpdGxlOmJlZm9yZXtjb250ZW50OiIiO3dpZHRoOjNweDtoZWlnaHQ6MTJweDtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7b3BhY2l0eTouNjU7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCl9LmNsYXVkZS1oaXN0b3J5LXRvZ2dsZXtjdXJzb3I6cG9pbnRlcjt1c2VyLXNlbGVjdDpub25lO3RyYW5zaXRpb246Y29sb3IgLjE1cyBlYXNlfS5jbGF1ZGUtaGlzdG9yeS10b2dnbGU6aG92ZXJ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uY2xhdWRlLWhpc3RvcnktdG9nZ2xlIC5jaGV2cm9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3RyYW5zaXRpb246dHJhbnNmb3JtIC4yNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyk7Zm9udC1zaXplOi42ODc1cmVtO21hcmdpbi1yaWdodDo0cHh9LmNsYXVkZS1oaXN0b3J5LXRvZ2dsZSAuaGlzdG9yeS1jb3VudHtmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtwYWRkaW5nOjJweCA3cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7bWFyZ2luLWxlZnQ6NnB4fS5jbGF1ZGUtaGlzdG9yeS1sb2FkaW5ne3BhZGRpbmc6MTZweCA4cHg7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi44MTI1cmVtO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtc3R5bGU6aXRhbGljfS5zaWRlYmFyLWhpc3Rvcnktc2VjdGlvbi1sYWJlbHtwYWRkaW5nOjhweCAxMHB4IDRweDtmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi4wNGVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtvcGFjaXR5Oi41fS5jbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktaGVhZGVye21hcmdpbi10b3A6NnB4O2N1cnNvcjpwb2ludGVyO3VzZXItc2VsZWN0Om5vbmV9LmNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS1oZWFkZXIgLmNoZXZyb257Zm9udC1zaXplOi42ODc1cmVtO21hcmdpbi1yaWdodDo0cHh9LmNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS10aXRsZXtmb250LXNpemU6LjY4NzVyZW07cGFkZGluZzo2cHggOHB4IDZweCAxMnB4O29wYWNpdHk6Ljg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LmNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS1oZWFkZXIgLmNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS10aXRsZTpiZWZvcmV7ZGlzcGxheTpub25lfS5jbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktbGFiZWx7bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5jbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktY2xlYXItYnRue29wYWNpdHk6Ljk7ZmxleC1zaHJpbms6MH0uY2xhdWRlLWhpc3RvcnktcHJldmlld3tvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LmNsYXVkZS1oaXN0b3J5LWl0ZW17b3BhY2l0eTouODU7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgZWFzZSxiYWNrZ3JvdW5kIC4xNXMgZWFzZX0uY2xhdWRlLWhpc3RvcnktaXRlbTpob3ZlcntvcGFjaXR5OjE7YmFja2dyb3VuZDojZmZmZGZhZjV9LnNlc3Npb24taXRlbXt3aWR0aDoxMDAlO3RleHQtYWxpZ246bGVmdDtiYWNrZ3JvdW5kOiNmZmZjZjdlYjtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6MTBweDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3BhZGRpbmc6MTBweCAxMnB4O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIC4ycyBlYXNlLHRyYW5zZm9ybSAuMXMgZWFzZTtmb250LWZhbWlseTp2YXIoLS1mb250LXNhbnMpO21hcmdpbi1ib3R0b206NnB4O3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbn0uc2Vzc2lvbi1pdGVtOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6NnB4O2JvdHRvbTo2cHg7d2lkdGg6M3B4O2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlWSgwKTt0cmFuc2l0aW9uOmFsbCAuMnMgZWFzZTtib3JkZXItcmFkaXVzOjJweH0uc2Vzc2lvbi1pdGVtLXJvd3twb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9LnNlc3Npb24taXRlbS1jb250ZW50e3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MjtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6aW5oZXJpdDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuM3MgdmFyKC0tZWFzZS1vdXQtZXhwbyksYmFja2dyb3VuZCAuMThzIGVhc2U7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtfS5zZXNzaW9uLWl0ZW0uc3dpcGVkIC5zZXNzaW9uLWl0ZW0tY29udGVudHt0cmFuc2Zvcm06dHJhbnNsYXRlKC03MnB4KTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmNmN2Y1LCNmY2Y2ZWRmMCl9LnNlc3Npb24tc3dpcGUtYmd7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDt6LWluZGV4OjE7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOnN0cmV0Y2g7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuMThzIGVhc2V9LnNlc3Npb24taXRlbS5zd2lwZWQgLnNlc3Npb24tc3dpcGUtYmd7b3BhY2l0eToxO3BvaW50ZXItZXZlbnRzOmF1dG99LnNlc3Npb24tc3dpcGUtZGVsZXRle3dpZHRoOjcycHg7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyKTtjb2xvcjp2YXIoLS10ZXh0LWludmVyc2UpO2Rpc3BsYXk6aW5saW5lLWZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDozcHg7Zm9udDppbmhlcml0O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo3MDA7Y3Vyc29yOnBvaW50ZXJ9LnNlc3Npb24tc3dpcGUtZGVsZXRlIHN2Z3tmbGV4LXNocmluazowfS5zZXNzaW9uLW1hbmFnZS1jaGVja3tkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZsZXgtc2hyaW5rOjA7d2lkdGg6MjJweDtoZWlnaHQ6MjJweDttYXJnaW4tcmlnaHQ6OHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS5zZXNzaW9uLW1hbmFnZS1jaGVjayBpbnB1dHtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO29wYWNpdHk6MDtjdXJzb3I6cG9pbnRlcn0uc2Vzc2lvbi1tYW5hZ2UtY2hlY2sgc3Bhbnt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2JvcmRlci1yYWRpdXM6NnB4O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjIyKTtiYWNrZ3JvdW5kOiNmZmZiZjU4Yztib3gtc2hhZG93Omluc2V0IDAgMXB4ICNmZmY2O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMgZWFzZSxib3JkZXItY29sb3IgLjE1cyBlYXNlfS5zZXNzaW9uLW1hbmFnZS1jaGVjazpob3ZlciBzcGFue2JhY2tncm91bmQ6I2ZmZmJmNWNjO2JvcmRlci1jb2xvcjojN2Q1YjM5NTl9LnNlc3Npb24tbWFuYWdlLWNoZWNrIGlucHV0OmNoZWNrZWQrc3BhbntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCl9LnNlc3Npb24tbWFuYWdlLWNoZWNrIGlucHV0OmNoZWNrZWQrc3BhbjphZnRlcntjb250ZW50OiJcMjcxMyI7Y29sb3I6I2ZmZjtmb250LXNpemU6Ljc1cmVtO2ZvbnQtd2VpZ2h0OjcwMH0uc2Vzc2lvbi1pdGVtLnNlbGVjdGVke2JvcmRlci1jb2xvcjojYzU2NTNkNTk7YmFja2dyb3VuZDojZmZmNWVlZjV9LnNlc3Npb24taXRlbS1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9QGtleWZyYW1lcyBzZXNzaW9uLWRlbGV0ZS1jb2xsYXBzZXt0b3ttYXgtaGVpZ2h0OjA7b3BhY2l0eTowO21hcmdpbi1ib3R0b206MDtwYWRkaW5nLXRvcDowO3BhZGRpbmctYm90dG9tOjA7Ym9yZGVyLXdpZHRoOjB9fS5zZXNzaW9uLWl0ZW0uZGVsZXRpbmd7YW5pbWF0aW9uOnNlc3Npb24tZGVsZXRlLWNvbGxhcHNlIC4zcyBlYXNlLW91dCBmb3J3YXJkcztvdmVyZmxvdzpoaWRkZW47bWF4LWhlaWdodDoxMjBweDtwb2ludGVyLWV2ZW50czpub25lfS5zZXNzaW9uLW1haW57ZmxleDoxO21pbi13aWR0aDowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjNweDtwYWRkaW5nLXJpZ2h0OjYwcHh9LnNlc3Npb24tdGl0bGUtcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDo4cHh9LnNlc3Npb24tdGl0bGUtcm93IC5zZXNzaW9uLXRpdGxlLC5zZXNzaW9uLXRpdGxlLXJvdyAuc2Vzc2lvbi1jb21tYW5ke2ZsZXg6MTttaW4td2lkdGg6MH0uc2Vzc2lvbi10aW1le2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3doaXRlLXNwYWNlOm5vd3JhcDtsaW5lLWhlaWdodDoxLjQ7cGFkZGluZy10b3A6MXB4fS5zZXNzaW9uLWFjdGl2aXR5e2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS1hY2NlbnQpO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztsaW5lLWhlaWdodDoxLjM7b3BhY2l0eTouODV9LnNlc3Npb24tZGVzY3JpcHRpb257Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztsaW5lLWhlaWdodDoxLjM1fS5zZXNzaW9uLXJlY292ZXJ5LWhpbnR7Zm9udC1zaXplOi42MjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7YmFja2dyb3VuZDojOTY3NjU1MTQ7cGFkZGluZzoxcHggNXB4O2JvcmRlci1yYWRpdXM6M3B4fS5zZXNzaW9uLWFjdGlvbnN7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6NHB4O3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjJweDtmbGV4LXNocmluazowfS5zZXNzaW9uLWFjdGlvbi1idG57d2lkdGg6MjhweDtoZWlnaHQ6MjhweDttaW4taGVpZ2h0OjI4cHg7bWluLXdpZHRoOjI4cHg7cGFkZGluZzowO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6LjgxMjVyZW07YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTt0cmFuc2l0aW9uOmFsbCAuMnMgZWFzZTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcn0uc2Vzc2lvbi1hY3Rpb24tYnRuOmhvdmVye2JhY2tncm91bmQ6Izk2NzY1NTFhO2NvbG9yOnZhcigtLWFjY2VudCl9LnNlc3Npb24tYWN0aW9uLWJ0bjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45KTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xc30uc2Vzc2lvbi1hY3Rpb24tYnRuIHN2Z3tmbGV4LXNocmluazowfS5zZXNzaW9uLWFjdGlvbi1idG4uZGVsZXRlLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiNlNzRjM2MxNDtjb2xvcjojZDM1MjQ0fS5zZXNzaW9uLWFjdGlvbi1idG4ubWVyZ2UtYnRuOmhvdmVye2JhY2tncm91bmQ6IzJmODBlZDFhO2NvbG9yOiMyZjgwZWR9LnNlc3Npb24ta2luZC1iYWRnZS53b3JrdHJlZS1tZXJnZXtiYWNrZ3JvdW5kOiMyZjgwZWQxZjtjb2xvcjojMmY4MGVkfS5zZXNzaW9uLWtpbmQtYmFkZ2Uud29ya3RyZWUtbWVyZ2UuZmFpbGVke2JhY2tncm91bmQ6I2U3NGMzYzFmO2NvbG9yOiNkMzUyNDR9LnNlc3Npb24ta2luZC1iYWRnZS53b3JrdHJlZS1tZXJnZS5tZXJnZWR7YmFja2dyb3VuZDojMjdhZTYwMWY7Y29sb3I6IzIxOTY1M30uc2Vzc2lvbi1raW5kLWJhZGdlLndvcmt0cmVlLW1lcmdlLm1lcmdpbmcsLnNlc3Npb24ta2luZC1iYWRnZS53b3JrdHJlZS1tZXJnZS5jaGVja2luZ3tiYWNrZ3JvdW5kOiNmMjk5NGExZjtjb2xvcjojYzE3YzJifS53b3JrdHJlZS1tZXJnZS1jb250ZW50e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjEwcHh9Lndvcmt0cmVlLW1lcmdlLXJvd3tkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjE2cHg7cGFkZGluZzoxMHB4IDEycHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZDojZmZmZmZmODA7Zm9udC1zaXplOi44NzVyZW19Lndvcmt0cmVlLW1lcmdlLXJvdyBzcGFue2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0ud29ya3RyZWUtbWVyZ2Utcm93IHN0cm9uZ3tjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3dvcmQtYnJlYWs6YnJlYWstYWxsO3RleHQtYWxpZ246cmlnaHR9Lndvcmt0cmVlLW1lcmdlLWFjdGlvbnN7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtnYXA6MTBweDttYXJnaW4tdG9wOjE2cHh9Lndvcmt0cmVlLW1lcmdlLW1vZGFse21heC13aWR0aDo2MjBweH0ubW9kYWwtc3VidGl0bGV7bWFyZ2luLXRvcDo0cHg7Zm9udC1zaXplOi44MTI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5zZXNzaW9uLWFjdGlvbi1idG5bZGlzYWJsZWRde29wYWNpdHk6LjQ1O2N1cnNvcjpub3QtYWxsb3dlZH0uc2Vzc2lvbi1hY3Rpb24tYnRuW2Rpc2FibGVkXTpob3ZlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS53b3JrdHJlZS1tZXJnZS1hY3Rpb25zIC5idG5bZGlzYWJsZWRde29wYWNpdHk6LjU7Y3Vyc29yOm5vdC1hbGxvd2VkfS53b3JrdHJlZS1tZXJnZS1hY3Rpb25zIC5idG5bZGlzYWJsZWRdOmhvdmVyLC53b3JrdHJlZS1tZXJnZS1hY3Rpb25zIC5idG5bZGlzYWJsZWRdOmFjdGl2ZXt0cmFuc2Zvcm06bm9uZX0ud29ya3RyZWUtbWVyZ2UtYWN0aW9ucyAuYnRue21pbi13aWR0aDoxMjBweH0ud29ya3RyZWUtbWVyZ2UtbW9kYWwgLm1vZGFsLWJvZHl7bWluLWhlaWdodDoyNjBweH0ud29ya3RyZWUtbWVyZ2UtbW9kYWwgLmVycm9yLW1lc3NhZ2V7bWFyZ2luLXRvcDoxMnB4fS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC5maWVsZC1oaW50e21hcmdpbi10b3A6MH0ud29ya3RyZWUtbWVyZ2Utcm93Ky5maWVsZC1oaW50e21hcmdpbi10b3A6MnB4fS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC5maWVsZC1oaW50Ky5maWVsZC1oaW50e21hcmdpbi10b3A6NHB4fS53b3JrdHJlZS1tZXJnZS1tb2RhbCAubW9kYWwtc3VidGl0bGV7bWF4LXdpZHRoOjQyMHB4fS53b3JrdHJlZS1tZXJnZS1tb2RhbCBzdHJvbmd7Zm9udC13ZWlnaHQ6NjAwfS53b3JrdHJlZS1tZXJnZS1tb2RhbCAubW9kYWwtaGVhZGVye2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgcHttYXJnaW46MH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludCBzdHJvbmd7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0ud29ya3RyZWUtbWVyZ2Utcm93IHN0cm9uZzplbXB0eTphZnRlcntjb250ZW50OiItIjtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludCBjb2Rle2ZvbnQtZmFtaWx5OmluaGVyaXR9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLmZpZWxkLWhpbnQ6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9Lndvcmt0cmVlLW1lcmdlLXJvdzpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjJweH0ud29ya3RyZWUtbWVyZ2Utcm93Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC5maWVsZC1oaW50Lm11dGVke2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC5maWVsZC1oaW50LmVycm9ye2NvbG9yOiNkMzUyNDR9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLmZpZWxkLWhpbnQuc3VjY2Vzc3tjb2xvcjojMjE5NjUzfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC5maWVsZC1oaW50Lndhcm5pbmd7Y29sb3I6I2MxN2MyYn0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludC5pbmZve2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludCsud29ya3RyZWUtbWVyZ2Utcm93e21hcmdpbi10b3A6MnB4fS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3crLndvcmt0cmVlLW1lcmdlLXJvd3ttYXJnaW4tdG9wOjB9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyBzdHJvbmcgc21hbGx7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyBzdHJvbmcgY29kZSwud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IHNwYW4gY29kZXtmb250LWZhbWlseTppbmhlcml0fS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgY29kZXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BhZGRpbmc6MH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IGVte2ZvbnQtc3R5bGU6bm9ybWFsO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgc21hbGwsLndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyAubXV0ZWR7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyAud2FybmluZ3tjb2xvcjojYzE3YzJifS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLnN1Y2Nlc3N7Y29sb3I6IzIxOTY1M30ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5lcnJvcntjb2xvcjojZDM1MjQ0fS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLmluZm97Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLnRydW5jYXRle292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLm1vbm9zcGFjZXtmb250LWZhbWlseTp1aS1tb25vc3BhY2UsU0ZNb25vLVJlZ3VsYXIsTWVubG8sTW9uYWNvLENvbnNvbGFzLG1vbm9zcGFjZX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5zbWFsbHtmb250LXNpemU6LjgxMjVyZW19Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyAubm9ybWFse2ZvbnQtc2l6ZTouODc1cmVtfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLmJsb2Nre2Rpc3BsYXk6YmxvY2t9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyAuaW5saW5le2Rpc3BsYXk6aW5saW5lfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLmZsZXh7ZGlzcGxheTpmbGV4fS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLmdyaWR7ZGlzcGxheTpncmlkfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLnJvdW5kZWR7Ym9yZGVyLXJhZGl1czo4cHh9QG1lZGlhKGhvdmVyOmhvdmVyKXsuc2Vzc2lvbi1pdGVtIC5zZXNzaW9uLWFjdGlvbnN7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZX0uc2Vzc2lvbi1pdGVtOmhvdmVyIC5zZXNzaW9uLWFjdGlvbnMsLnNlc3Npb24taXRlbS5hY3RpdmUgLnNlc3Npb24tYWN0aW9ucywuc2Vzc2lvbi1pdGVtLnN3aXBlZCAuc2Vzc2lvbi1hY3Rpb25ze29wYWNpdHk6MX0uc2Vzc2lvbi1pdGVtIC5zZXNzaW9uLWFjdGlvbnM6aGFzKC5zZXNzaW9uLWFjdGlvbi1idG5bZGF0YS1hY3Rpb249cmVzdW1lXSl7b3BhY2l0eToxfX1AbWVkaWEoaG92ZXI6bm9uZSl7LnNlc3Npb24taXRlbSAuc2Vzc2lvbi1hY3Rpb25ze29wYWNpdHk6MX19LnNlc3Npb24taXRlbTpob3ZlcntiYWNrZ3JvdW5kOiNmZmZkZmFmNTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JveC1zaGFkb3c6MCAycHggOHB4ICM1OTNhMjAxMn0uc2Vzc2lvbi1pdGVtOmhvdmVyOmJlZm9yZXtvcGFjaXR5Oi41O3RyYW5zZm9ybTpzY2FsZVkoMSl9LnNlc3Npb24taXRlbS5hY3RpdmV7YmFja2dyb3VuZDojZmZmN2YwZjU7Ym9yZGVyLWNvbG9yOiNjNTY1M2Q0ZDtib3gtc2hhZG93OjAgMnB4IDhweCAjYzU2NTNkMWF9LnNlc3Npb24taXRlbTphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45OSk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMXN9LnNlc3Npb24tY29tbWFuZHtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOi44MTI1cmVtO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGV0dGVyLXNwYWNpbmc6LS4wMWVtfS5zZXNzaW9uLXRpdGxle2ZvbnQtd2VpZ2h0OjYwMDtmb250LXNpemU6LjgxMjVyZW07d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGV0dGVyLXNwYWNpbmc6LS4wMWVtO2xpbmUtaGVpZ2h0OjEuM30uc2Vzc2lvbi1tZXRhe2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7ZmxleC13cmFwOndyYXB9LnNlc3Npb24tc3RhdHVze2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHg7cGFkZGluZzozcHggOHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO2ZvbnQtd2VpZ2h0OjYwMDtmb250LXNpemU6LjY4NzVyZW07dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uc2Vzc2lvbi1zdGF0dXMtZG90e3dpZHRoOjZweDtoZWlnaHQ6NnB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6Y3VycmVudENvbG9yO2ZsZXgtc2hyaW5rOjB9LnNlc3Npb24tc3RhdHVzLnJ1bm5pbmcgLnNlc3Npb24tc3RhdHVzLWRvdHtiYWNrZ3JvdW5kOnZhcigtLXN1Y2Nlc3MpO2JveC1zaGFkb3c6MCAwIDVweCB2YXIoLS1zdWNjZXNzLWdsb3cpO2FuaW1hdGlvbjpzdGF0dXMtcHVsc2UgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGV9LnNlc3Npb24tc3RhdHVzLmV4aXRlZCAuc2Vzc2lvbi1zdGF0dXMtZG90e2JhY2tncm91bmQ6dmFyKC0tdGV4dC1tdXRlZCl9LnNlc3Npb24tc3RhdHVzLmZhaWxlZCAuc2Vzc2lvbi1zdGF0dXMtZG90e2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyKX0uc2Vzc2lvbi1zdGF0dXMuc3RvcHBlZCAuc2Vzc2lvbi1zdGF0dXMtZG90e2JhY2tncm91bmQ6dmFyKC0td2FybmluZyl9LnNlc3Npb24tc3RhdHVzLnJ1bm5pbmd7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzLW11dGVkKTtjb2xvcjp2YXIoLS1zdWNjZXNzKX0uc2Vzc2lvbi1zdGF0dXMuZmFpbGVke2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKTtjb2xvcjp2YXIoLS1kYW5nZXIpfS5zZXNzaW9uLXN0YXR1cy5zdG9wcGVke2JhY2tncm91bmQ6dmFyKC0td2FybmluZy1tdXRlZCk7Y29sb3I6dmFyKC0td2FybmluZyl9LnNlc3Npb24tc3RhdHVzLnBlcm1pc3Npb24tYmxvY2tlZHtiYWNrZ3JvdW5kOiNmMGE1MDAyNDtjb2xvcjojZDE4YjAwfS5zZXNzaW9uLXN0YXR1cy5leGl0ZWQsLnNlc3Npb24tc3RhdHVzLmFyY2hpdmVke2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDowfUBrZXlmcmFtZXMgc3RhdHVzLXB1bHNlezAlLHRve29wYWNpdHk6MX01MCV7b3BhY2l0eTouNX19LnNlc3Npb24taWR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjYyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtiYWNrZ3JvdW5kOiM5Njc2NTUxZjtwYWRkaW5nOjJweCA2cHg7Ym9yZGVyLXJhZGl1czo0cHg7Zm9udC13ZWlnaHQ6NTAwfS5zZXNzaW9uLWdyb3VwLS1oaXN0b3J5e21hcmdpbi10b3A6YXV0bztwYWRkaW5nLXRvcDo2cHh9LnNlc3Npb24taGlzdG9yeS10b2dnbGUgLmhpc3RvcnktY291bnQubG9hZGluZ3tsZXR0ZXItc3BhY2luZzouMTJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BhZGRpbmctbGVmdDoycHg7cGFkZGluZy1yaWdodDoycHh9LnNlc3Npb24taGlzdG9yeS1ib2R5e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjRweDtwYWRkaW5nOjJweCAwIDRweDthbmltYXRpb246aGlzdG9yeUJvZHlGYWRlSW4gLjIycyB2YXIoLS1lYXNlLW91dC1leHBvKX1Aa2V5ZnJhbWVzIGhpc3RvcnlCb2R5RmFkZUluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMnB4KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9fS5zaWRlYmFyLWhpc3RvcnktdG9vbGJhcntkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO3BhZGRpbmc6MnB4IDRweCA2cHg7ZmxleC1zaHJpbms6MH0uc2lkZWJhci1oaXN0b3J5LWNsZWFye2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtd2VpZ2h0OjUwMH0uc2lkZWJhci1oaXN0b3J5LWNsZWFyOmhvdmVye2NvbG9yOnZhcigtLWRhbmdlcik7YmFja2dyb3VuZDp2YXIoLS1kYW5nZXItbXV0ZWQpfS5zaWRlYmFyLWhpc3Rvcnktc2Nyb2xse2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweH0uc2lkZWJhci1mb290ZXJ7cGFkZGluZzoxMnB4IDEycHggMTRweDtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMHB4O2JhY2tncm91bmQ6I2ZmZmJmNWIzfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25ze2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KGF1dG8tZml0LG1pbm1heCg1NnB4LDFmcikpO2dhcDo0cHh9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo0cHg7Zm9udC1zaXplOi42MjVyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3BhZGRpbmc6N3B4IDRweDttaW4taGVpZ2h0OjQ2cHg7Ym9yZGVyLXJhZGl1czo5cHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSx0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRuIHN2Z3t3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2ZsZXgtc2hyaW5rOjA7b3BhY2l0eTouODU7dHJhbnNpdGlvbjpvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bjpob3Zlcntjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JhY2tncm91bmQ6Izk2NzY1NTE0O3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG46aG92ZXIgc3Zne29wYWNpdHk6MX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRuOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk1KTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xc30uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRuLmhpZGRlbntkaXNwbGF5Om5vbmV9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLnNpZGViYXItbG9nb3V0e3Bvc2l0aW9uOnJlbGF0aXZlfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5zaWRlYmFyLWxvZ291dDpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0zcHg7dG9wOjIyJTtib3R0b206MjIlO3dpZHRoOjFweDtiYWNrZ3JvdW5kOnZhcigtLWJvcmRlci1zdWJ0bGUpO3BvaW50ZXItZXZlbnRzOm5vbmV9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLnNpZGViYXItbG9nb3V0OmhvdmVye2NvbG9yOnZhcigtLWRhbmdlcik7YmFja2dyb3VuZDp2YXIoLS1kYW5nZXItbXV0ZWQpfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5zaWRlYmFyLWxvZ291dDpob3ZlciBzdmd7Y29sb3I6dmFyKC0tZGFuZ2VyKX0udG9wYmFyLWJ0bntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo1cHg7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6Ljc1cmVtO2ZvbnQtd2VpZ2h0OjUwMDtwYWRkaW5nOjZweCAxMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7aGVpZ2h0OjMycHg7bWluLWhlaWdodDozMnB4O3doaXRlLXNwYWNlOm5vd3JhcDtib3gtc2l6aW5nOmJvcmRlci1ib3g7bGluZS1oZWlnaHQ6MTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0udG9wYmFyLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiNmZmZmZmY4MDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS50b3BiYXItYnRuOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk1KX0udG9wYmFyLWJ0bi5hY3RpdmV7YmFja2dyb3VuZDojZmZmZmZmYjM7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LXdlaWdodDo2MDA7Ym94LXNoYWRvdzowIDFweCA0cHggIzU5M2EyMDFhfS50b3BiYXItYnRuLnNxdWFyZXt3aWR0aDozMnB4O3BhZGRpbmc6MDtmb250LXNpemU6Ljg3NXJlbX0jdGVybWluYWwtaW50ZXJhY3RpdmUtdG9nZ2xlLXRvcC5hY3RpdmV7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2NvbG9yOnZhcigtLWFjY2VudCk7Ym9yZGVyLWNvbG9yOiNjNTY1M2QzM30jdGVybWluYWwtaW50ZXJhY3RpdmUtdG9nZ2xlLXRvcC5hY3RpdmU6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMmV9LmJ0bntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo2cHg7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbTtwYWRkaW5nOjAgMTZweDtoZWlnaHQ6MzhweDttaW4taGVpZ2h0OjM4cHg7Ym9yZGVyLXJhZGl1czoxMHB4O2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Y3Vyc29yOnBvaW50ZXI7d2hpdGUtc3BhY2U6bm93cmFwO3Bvc2l0aW9uOnJlbGF0aXZlO3VzZXItc2VsZWN0Om5vbmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZSxib3JkZXItY29sb3IgLjE1cyBlYXNlLGNvbG9yIC4xNXMgZWFzZSxib3gtc2hhZG93IC4xOHMgZWFzZSx0cmFuc2Zvcm0gLjE4cyBjdWJpYy1iZXppZXIoLjM0LDEuNCwuNjQsMSk7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fS5idG46Zm9jdXN7b3V0bGluZTpub25lfS5idG46Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOm5vbmU7Ym94LXNoYWRvdzowIDAgMCAycHggdmFyKC0tYmctcHJpbWFyeSksMCAwIDAgNHB4IHZhcigtLWFjY2VudCl9LmJ0bjpkaXNhYmxlZCwuYnRuW2Rpc2FibGVkXXtvcGFjaXR5Oi40NTtjdXJzb3I6bm90LWFsbG93ZWQ7cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2Zvcm06bm9uZSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzpub25lIWltcG9ydGFudH0uYnRuLXByaW1hcnl7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWFjY2VudC1ob3ZlcikgMCUsdmFyKC0tYWNjZW50KSAxMDAlKTtjb2xvcjp2YXIoLS10ZXh0LWludmVyc2UpO2JveC1zaGFkb3c6MCAxcHggMnB4ICNjNTY1M2Q1MiwwIDRweCAxMHB4IC0ycHggI2M1NjUzZDUyLGluc2V0IDAgMXB4ICNmZmZmZmYzOCxpbnNldCAwIC0xcHggIzU5M2EyMDJlfS5idG4tcHJpbWFyeTpob3ZlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2Q2ODU1ZSAwJSx2YXIoLS1hY2NlbnQtaG92ZXIpIDEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpO2JveC1zaGFkb3c6MCAycHggNHB4ICNjNTY1M2Q1MiwwIDhweCAyMHB4IC00cHggI2M1NjUzZDY2LGluc2V0IDAgMXB4ICNmZmZmZmY0NyxpbnNldCAwIC0xcHggIzU5M2EyMDJlfS5idG4tcHJpbWFyeTphY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWFjY2VudCkgMCUsdmFyKC0tYWNjZW50LWFjdGl2ZSkgMTAwJSk7Ym94LXNoYWRvdzowIDFweCAycHggI2M1NjUzZDQ3LGluc2V0IDAgMXB4ICM1OTNhMjAyZTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wNnN9LmJ0bi1zZWNvbmRhcnl7YmFja2dyb3VuZDojN2Q1YjM5MTQ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LmJ0bi1zZWNvbmRhcnk6aG92ZXJ7YmFja2dyb3VuZDojN2Q1YjM5MjQ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uYnRuLXNlY29uZGFyeTphY3RpdmV7YmFja2dyb3VuZDojN2Q1YjM5MzM7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5idG4tZ2hvc3R7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5idG4tZ2hvc3Q6aG92ZXJ7YmFja2dyb3VuZDojN2Q1YjM5MTQ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uYnRuLWdob3N0OmFjdGl2ZXtiYWNrZ3JvdW5kOiM3ZDViMzkyNDt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wNnN9LmJ0bi1kYW5nZXJ7YmFja2dyb3VuZDojYjI0ZjQ1MTQ7Y29sb3I6dmFyKC0tZGFuZ2VyKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LmJ0bi1kYW5nZXI6aG92ZXJ7YmFja2dyb3VuZDojYjI0ZjQ1Mjk7Y29sb3I6dmFyKC0tZGFuZ2VyKX0uYnRuLWRhbmdlcjphY3RpdmV7YmFja2dyb3VuZDojYjI0ZjQ1M2Q7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5idG4tZGFuZ2VyOmZvY3VzLXZpc2libGV7Ym94LXNoYWRvdzowIDAgMCAycHggdmFyKC0tYmctcHJpbWFyeSksMCAwIDAgNHB4IHZhcigtLWRhbmdlcil9LmJ0bi1zdWNjZXNze2JhY2tncm91bmQ6IzRmN2E1ODFhO2NvbG9yOnZhcigtLXN1Y2Nlc3MpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH0uYnRuLXN1Y2Nlc3M6aG92ZXJ7YmFja2dyb3VuZDojNGY3YTU4MmU7Y29sb3I6dmFyKC0tc3VjY2Vzcyl9LmJ0bi1zdWNjZXNzOmFjdGl2ZXtiYWNrZ3JvdW5kOiM0ZjdhNTg0Mjt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wNnN9LmJ0bi1zdWNjZXNzOmZvY3VzLXZpc2libGV7Ym94LXNoYWRvdzowIDAgMCAycHggdmFyKC0tYmctcHJpbWFyeSksMCAwIDAgNHB4IHZhcigtLXN1Y2Nlc3MpfS5idG4tYmxvY2t7d2lkdGg6MTAwJX0uYnRuLXhze2hlaWdodDoyNnB4O21pbi1oZWlnaHQ6MjZweDtwYWRkaW5nOjAgMTBweDtmb250LXNpemU6Ljc1cmVtO2JvcmRlci1yYWRpdXM6N3B4O2dhcDo0cHh9LmJ0bi1zbXtoZWlnaHQ6MzJweDttaW4taGVpZ2h0OjMycHg7cGFkZGluZzowIDEycHg7Zm9udC1zaXplOi44MTI1cmVtO2JvcmRlci1yYWRpdXM6OHB4O2dhcDo1cHh9LmJ0bi1pY29ue3BhZGRpbmc6MDt3aWR0aDozNnB4O21pbi13aWR0aDozNnB4O2hlaWdodDozNnB4O21pbi1oZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjhweDtnYXA6MH0uYnRuLWljb24uYnRuLXNte3dpZHRoOjMwcHg7bWluLXdpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7bWluLWhlaWdodDozMHB4O2JvcmRlci1yYWRpdXM6N3B4fS5idG4taWNvbiBzdmd7ZmxleC1zaHJpbms6MH0ubWFpbi1jb250ZW50e2ZsZXg6MTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21pbi13aWR0aDowO21pbi1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDp0cmFuc3BhcmVudDtwb3NpdGlvbjpyZWxhdGl2ZX0ubWFpbi1jb250ZW50LmZpbGUtcGFuZWwtb3BlbnttYXJnaW4tcmlnaHQ6dmFyKC0tbGF5b3V0LW1haW4tZmlsZS1wYW5lbC13aWR0aCk7dHJhbnNpdGlvbjptYXJnaW4tcmlnaHQgLjI1cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0udGVybWluYWwtaW5mb3tmb250LXNpemU6LjYyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXdlaWdodDo1MDB9Lm1haW4taGVhZGVyLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6NnB4IDEwcHg7ZmxleC1zaHJpbms6MDttaW4taGVpZ2h0OjQ0cHg7Z2FwOjhweDtwb3NpdGlvbjpyZWxhdGl2ZX0ubWFpbi1oZWFkZXItcm93OmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOjA7aGVpZ2h0OjJweDtwb2ludGVyLWV2ZW50czpub25lO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHRyYW5zcGFyZW50IDAlLHJnYmEodmFyKC0tYWNjZW50LXJnYiwgMTk3LCAxMDEsIDYxKSwuODUpIDM1JSxyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksMSkgNTAlLHJnYmEodmFyKC0tYWNjZW50LXJnYiwgMTk3LCAxMDEsIDYxKSwuODUpIDY1JSx0cmFuc3BhcmVudCAxMDAlKTtiYWNrZ3JvdW5kLXNpemU6MjIwJSAxMDAlO2JhY2tncm91bmQtcG9zaXRpb246MTAwJSBjZW50ZXI7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuMjVzIGVhc2V9Lm1haW4taGVhZGVyLXJvdy5pcy1ydW5uaW5nOmFmdGVye29wYWNpdHk6MTthbmltYXRpb246dG9wYmFyUHJvZ3Jlc3NGbG93IDEuNnMgbGluZWFyIGluZmluaXRlfS5tYWluLWhlYWRlci1yb3cuaXMtcGVybWlzc2lvbi1ibG9ja2VkOmFmdGVye2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHRyYW5zcGFyZW50IDAlLHJnYmEoMTY5LDEwNiw0NywuODUpIDM1JSxyZ2JhKDE2OSwxMDYsNDcsMSkgNTAlLHJnYmEoMTY5LDEwNiw0NywuODUpIDY1JSx0cmFuc3BhcmVudCAxMDAlKTtiYWNrZ3JvdW5kLXNpemU6MjIwJSAxMDAlO2FuaW1hdGlvbi1kdXJhdGlvbjoyLjRzfUBrZXlmcmFtZXMgdG9wYmFyUHJvZ3Jlc3NGbG93ezAle2JhY2tncm91bmQtcG9zaXRpb246MTAwJSBjZW50ZXJ9dG97YmFja2dyb3VuZC1wb3NpdGlvbjotMTAwJSBjZW50ZXJ9fUBtZWRpYShwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7Lm1haW4taGVhZGVyLXJvdy5pcy1ydW5uaW5nOmFmdGVye2FuaW1hdGlvbjpub25lO29wYWNpdHk6Ljd9fS50b3BiYXItbGVmdHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7ZmxleC1zaHJpbms6MH0udG9wYmFyLWNlbnRlcntmbGV4OjE7bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O292ZXJmbG93OmhpZGRlbn0udG9wYmFyLXJpZ2h0e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtmbGV4LXNocmluazowfS50b3BiYXItYnJhbmR7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoyNnB4O2hlaWdodDoyNnB4O2JvcmRlci1yYWRpdXM6OHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZyx2YXIoLS1hY2NlbnQpLHZhcigtLWFjY2VudC1hY3RpdmUpKTtjb2xvcjojZmZmO2ZvbnQtd2VpZ2h0OjcwMDtmb250LXNpemU6Ljg1cmVtO2xldHRlci1zcGFjaW5nOi4wMmVtO2JveC1zaGFkb3c6MCAxcHggM3B4ICM1OTNhMjAyZTt1c2VyLXNlbGVjdDpub25lO2ZsZXgtc2hyaW5rOjB9LnRvcGJhci1zZXNzaW9uLXRpdGxle2ZvbnQtd2VpZ2h0OjYwMDtmb250LXNpemU6Ljg1cmVtO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2ZsZXgtc2hyaW5rOjA7bWF4LXdpZHRoOjI0MHB4fS50b3BiYXItY3dke2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouNzJyZW07Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCBtb25vc3BhY2UpO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdy14OmF1dG87b3ZlcmZsb3cteTpoaWRkZW47c2Nyb2xsYmFyLXdpZHRoOnRoaW47bWluLXdpZHRoOjA7ZmxleDoxIDEgMDtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjJweCA2cHg7Ym9yZGVyLXJhZGl1czo2cHg7ZGlyZWN0aW9uOmx0cjt0ZXh0LWFsaWduOmxlZnQ7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udG9wYmFyLWN3ZDo6LXdlYmtpdC1zY3JvbGxiYXJ7aGVpZ2h0OjRweH0udG9wYmFyLWN3ZDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZDojOTY3NjU1NDc7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCl9LnRvcGJhci1jd2Q6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6Izk2NzY1NTgwfS50b3BiYXItY3dkOmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZjhjO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0udG9wYmFyLXRhZ2xpbmV7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi43OHJlbTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9LnNlc3Npb24tc3RhdHVzLXBpbGx7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjVweDtmb250LXNpemU6LjdyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtiYWNrZ3JvdW5kOnZhcigtLWJnLWVsZXZhdGVkKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6MjBweDtwYWRkaW5nOjJweCA5cHggMnB4IDdweDtmbGV4LXNocmluazowO21heC13aWR0aDoxNDBweDt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVufS5zZXNzaW9uLXN0YXR1cy1waWxsIC5zZXNzaW9uLXN0YXR1cy1kb3R7d2lkdGg6NnB4O2hlaWdodDo2cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDp2YXIoLS10ZXh0LW11dGVkKTtmbGV4LXNocmluazowfS5zZXNzaW9uLXN0YXR1cy1waWxsIC5zZXNzaW9uLXN0YXR1cy10ZXh0e292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5zZXNzaW9uLXN0YXR1cy1waWxsLnJ1bm5pbmd7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzLW11dGVkKTtib3JkZXItY29sb3I6IzRmN2E1ODRkO2NvbG9yOnZhcigtLXN1Y2Nlc3MpfS5zZXNzaW9uLXN0YXR1cy1waWxsLnJ1bm5pbmcgLnNlc3Npb24tc3RhdHVzLWRvdHtiYWNrZ3JvdW5kOnZhcigtLXN1Y2Nlc3MpO2FuaW1hdGlvbjp0YXNrLXB1bHNlIDEuMnMgZWFzZS1pbi1vdXQgaW5maW5pdGV9LnNlc3Npb24tc3RhdHVzLXBpbGwucGVybWlzc2lvbi1ibG9ja2Vke2JhY2tncm91bmQ6dmFyKC0td2FybmluZy1tdXRlZCk7Ym9yZGVyLWNvbG9yOiNhOTZhMmY1OTtjb2xvcjp2YXIoLS13YXJuaW5nKX0uc2Vzc2lvbi1zdGF0dXMtcGlsbC5wZXJtaXNzaW9uLWJsb2NrZWQgLnNlc3Npb24tc3RhdHVzLWRvdHtiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmcpO2FuaW1hdGlvbjp0YXNrLXB1bHNlIDEuMnMgZWFzZS1pbi1vdXQgaW5maW5pdGV9LnNlc3Npb24tc3RhdHVzLXBpbGwuZXhpdGVkLC5zZXNzaW9uLXN0YXR1cy1waWxsLnN0b3BwZWR7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LnNlc3Npb24tc3RhdHVzLXBpbGwuZmFpbGVke2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKTtib3JkZXItY29sb3I6I2IyNGY0NTRkO2NvbG9yOnZhcigtLWRhbmdlcil9LnNlc3Npb24tc3RhdHVzLXBpbGwuZmFpbGVkIC5zZXNzaW9uLXN0YXR1cy1kb3R7YmFja2dyb3VuZDp2YXIoLS1kYW5nZXIpfS5zZXNzaW9uLXN0YXR1cy1waWxsLmFyY2hpdmVke29wYWNpdHk6Ljd9LnNlc3Npb24tc3RhdHVzLXBpbGwgLnNlc3Npb24tc3RhdHVzLWVsYXBzZWR7ZmxleC1zaHJpbms6MDttYXJnaW4tbGVmdDo0cHg7cGFkZGluZy1sZWZ0OjZweDtib3JkZXItbGVmdDoxcHggc29saWQgY3VycmVudENvbG9yO29wYWNpdHk6Ljc1O2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtcztmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIG1vbm9zcGFjZSk7Zm9udC1zaXplOi42NXJlbTtsZXR0ZXItc3BhY2luZzotLjAxZW19LmN1cnJlbnQtdGFza3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo1cHg7Zm9udC1zaXplOi43cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE5NywxMDEsNjEsLjIpO2JvcmRlci1yYWRpdXM6MjBweDtwYWRkaW5nOjJweCA4cHggMnB4IDVweDtmb250LXdlaWdodDo1MDA7bWF4LXdpZHRoOjI0MHB4O21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjtmbGV4LXNocmluazoxO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5jdXJyZW50LXRhc2s6YmVmb3Jle2NvbnRlbnQ6IiI7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6NnB4O2hlaWdodDo2cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2ZsZXgtc2hyaW5rOjA7YW5pbWF0aW9uOnRhc2stcHVsc2UgMS4ycyBlYXNlLWluLW91dCBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHRhc2stcHVsc2V7MCUsdG97b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZSgxKX01MCV7b3BhY2l0eTouNTt0cmFuc2Zvcm06c2NhbGUoLjgpfX0udG9wYmFyLW1vcmUtd3JhcHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmlubGluZS1mbGV4fS50b3BiYXItbW9yZS1tZW51e3Bvc2l0aW9uOmFic29sdXRlO3RvcDpjYWxjKDEwMCUgKyA2cHgpO3JpZ2h0OjA7bWluLXdpZHRoOjE2OHB4O2JhY2tncm91bmQ6dmFyKC0tYmctZWxldmF0ZWQpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtwYWRkaW5nOjRweDtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1sZyk7ei1pbmRleDo2MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxcHh9LnRvcGJhci1tb3JlLW1lbnUuaGlkZGVue2Rpc3BsYXk6bm9uZX0udG9wYmFyLW1vcmUtaXRlbXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo5cHg7d2lkdGg6MTAwJTtwYWRkaW5nOjhweCAxMnB4O2JvcmRlcjowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LWZhbWlseTp2YXIoLS1mb250LXNhbnMpO2ZvbnQtc2l6ZTouODJyZW07Zm9udC13ZWlnaHQ6NTAwO2N1cnNvcjpwb2ludGVyO2JvcmRlci1yYWRpdXM6OHB4O3RleHQtYWxpZ246bGVmdDt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS50b3BiYXItbW9yZS1pdGVtOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtjb2xvcjp2YXIoLS1hY2NlbnQpfS50b3BiYXItbW9yZS1pdGVtIHN2Z3tmbGV4LXNocmluazowO29wYWNpdHk6Ljg1fS50b3BiYXItbW9yZS1pdGVtLnRvcGJhci1tb3JlLWl0ZW0tZGFuZ2Vye2NvbG9yOnZhcigtLWRhbmdlcil9LnRvcGJhci1tb3JlLWl0ZW0udG9wYmFyLW1vcmUtaXRlbS1kYW5nZXI6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1kYW5nZXItbXV0ZWQpO2NvbG9yOnZhcigtLWRhbmdlci1ob3Zlcil9LnRvcGJhci1tb3JlLWl0ZW0uaGlkZGVue2Rpc3BsYXk6bm9uZX0udG9wYmFyLW1vcmUtaXRlbVtkaXNhYmxlZF17b3BhY2l0eTouNTtjdXJzb3I6bm90LWFsbG93ZWR9LnRvcGJhci1tb3JlLWl0ZW1bZGlzYWJsZWRdOmhvdmVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0udG9wYmFyLW1vcmUtZGl2aWRlcntoZWlnaHQ6MXB4O21hcmdpbjo0cHggNnB4O2JhY2tncm91bmQ6dmFyKC0tYm9yZGVyLWRlZmF1bHQpO29wYWNpdHk6LjZ9LnRlcm1pbmFsLWNvbnRhaW5lcntmbGV4OjE7ZGlzcGxheTpub25lO2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCB0b3AgcmlnaHQscmdiYSg5MSw1OCwzNCwuMiksdHJhbnNwYXJlbnQgMzUlKSxyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IGJvdHRvbSBsZWZ0LHJnYmEoMTk3LDEwMSw2MSwuMDgpLHRyYW5zcGFyZW50IDQwJSksbGluZWFyLWdyYWRpZW50KDE4MGRlZywjMmEyMjFjLCMxZjFiMTcsIzFhMTYxMyk7b3ZlcmZsb3c6aGlkZGVuO21pbi1oZWlnaHQ6MDttaW4td2lkdGg6MDttYXJnaW46MCA2cHggNnB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTQwLDExMCw4NSwuMzUpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggI2ZmZmZmZjBmLDAgOHB4IDMycHggIzAwMDAwMDU5LDAgMnB4IDhweCAjMDAwMztwb3NpdGlvbjpyZWxhdGl2ZTt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLW5vcm1hbCksYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLW5vcm1hbCl9LnRlcm1pbmFsLWNvbnRhaW5lci5hY3RpdmV7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOnN0cmV0Y2h9LnRlcm1pbmFsLXNjcm9sbC13cmFwe3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7b3ZlcmZsb3cteTphdXRvO292ZXJmbG93LXg6aGlkZGVuO3Njcm9sbGJhci13aWR0aDpub25lO3BhZGRpbmc6MTJweDtib3JkZXItcmFkaXVzOjA7Ym94LXNoYWRvdzpub25lOy13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6Z3JheXNjYWxlO3RleHQtcmVuZGVyaW5nOmdlb21ldHJpY1ByZWNpc2lvbjtmb250LXZhcmlhbnQtbGlnYXR1cmVzOm5vbmU7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJsaWdhIiAwLCJjbGlnIiAwLCJjYWx0IiAwLCJkbGlnIiAwO2ZvbnQta2VybmluZzpub25lOy0tdGVybS1mZzogI2Y1ZWFkYzstLXRlcm0tYmc6IHRyYW5zcGFyZW50Oy0tdGVybS1jdXJzb3I6ICNkNjdiNTI7LS10ZXJtLWZvbnQtZmFtaWx5OiAiR2Vpc3QgTW9ubyIsICJTRiBNb25vIiwgbW9ub3NwYWNlOy0tdGVybS1mb250LXNpemU6IDEzcHg7LS10ZXJtLWxpbmUtaGVpZ2h0OiB2YXIoLS10ZXJtLXJvdy1oZWlnaHQpOy0tdGVybS1yb3ctaGVpZ2h0OiAyMHB4Oy0tdGVybS1jb2xvci0wOiAjMWYxYjE3Oy0tdGVybS1jb2xvci0xOiAjZDI3NzY2Oy0tdGVybS1jb2xvci0yOiAjN2ZhMzZmOy0tdGVybS1jb2xvci0zOiAjZDVhMzViOy0tdGVybS1jb2xvci00OiAjODdhOWQ5Oy0tdGVybS1jb2xvci01OiAjYzU5NWM3Oy0tdGVybS1jb2xvci02OiAjN2ZiM2IxOy0tdGVybS1jb2xvci03OiAjZjVlYWRjOy0tdGVybS1jb2xvci04OiAjNjI1MzQ3Oy0tdGVybS1jb2xvci05OiAjZTM5YTg5Oy0tdGVybS1jb2xvci0xMDogIzljYzA4YTstLXRlcm0tY29sb3ItMTE6ICNlYmJiNmU7LS10ZXJtLWNvbG9yLTEyOiAjYThjMWVhOy0tdGVybS1jb2xvci0xMzogI2RiYjFkYzstLXRlcm0tY29sb3ItMTQ6ICM5YWNiY2E7LS10ZXJtLWNvbG9yLTE1OiAjZmZmN2VmfS50ZXJtaW5hbC1zY3JvbGwtd3JhcDo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfS50ZXJtaW5hbC1zY3JvbGwtd3JhcCA6OnNlbGVjdGlvbntiYWNrZ3JvdW5kOiNkNjdiNTI0N30udGVybWluYWwtc2Nyb2xsLXdyYXAgLnRlcm0tZ3JpZHttaW4taGVpZ2h0OjEwMCV9LnRlcm1pbmFsLXNjcm9sbGJhcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NHB4O3JpZ2h0OjJweDtib3R0b206NHB4O3dpZHRoOjE0cHg7ei1pbmRleDoxMDtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBlYXNlO3BvaW50ZXItZXZlbnRzOm5vbmV9LnRlcm1pbmFsLXNjcm9sbGJhci52aXNpYmxle29wYWNpdHk6MTtwb2ludGVyLWV2ZW50czphdXRvfS50ZXJtaW5hbC1zY3JvbGxiYXItdHJhY2t7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDt3aWR0aDoxNHB4O2JvcmRlci1yYWRpdXM6N3B4fS50ZXJtaW5hbC1zY3JvbGxiYXItdGh1bWJ7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6M3B4O3dpZHRoOjhweDttaW4taGVpZ2h0OjI4cHg7Ym9yZGVyLXJhZGl1czo0cHg7YmFja2dyb3VuZDojYjQ5Njc4NTk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMgZWFzZSx3aWR0aCAuMTVzIGVhc2UscmlnaHQgLjE1cyBlYXNlfS50ZXJtaW5hbC1zY3JvbGxiYXItdGh1bWI6aG92ZXJ7YmFja2dyb3VuZDojYzhhYThjOGM7d2lkdGg6MTBweDtyaWdodDoycHh9LnRlcm1pbmFsLXNjcm9sbGJhci10aHVtYi5kcmFnZ2luZywudGVybWluYWwtc2Nyb2xsYmFyLXRodW1iOmFjdGl2ZXtiYWNrZ3JvdW5kOiNkY2I5OTZiMzt3aWR0aDoxMHB4O3JpZ2h0OjJweH1AbWVkaWEocG9pbnRlcjpjb2Fyc2Upey50ZXJtaW5hbC1zY3JvbGxiYXIsLnRlcm1pbmFsLXNjcm9sbGJhci10cmFja3t3aWR0aDoyMHB4fS50ZXJtaW5hbC1zY3JvbGxiYXItdGh1bWJ7d2lkdGg6MTJweDtyaWdodDo0cHg7bWluLWhlaWdodDozNnB4fS50ZXJtaW5hbC1zY3JvbGxiYXItdGh1bWI6aG92ZXIsLnRlcm1pbmFsLXNjcm9sbGJhci10aHVtYi5kcmFnZ2luZ3t3aWR0aDoxNHB4O3JpZ2h0OjNweH19LnRlcm1pbmFsLWNvbnRhaW5lcjpmb2N1cy13aXRoaW57Ym9yZGVyLWNvbG9yOiNjNTY1M2Q4MDtib3gtc2hhZG93Omluc2V0IDAgMXB4ICNmZmZmZmYxNCwwIDhweCAzMnB4ICMwMDA2LDAgMCAwIDJweCAjYzU2NTNkMjZ9LnRlcm1pbmFsLXJlc2l6ZS1oYW5kbGV7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjNweDtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpO3dpZHRoOjQ4cHg7aGVpZ2h0OjVweDtiYWNrZ3JvdW5kOiNmZmZmZmYxNDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTtjdXJzb3I6bnMtcmVzaXplO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6N3B4O2NvbG9yOiNmZmZmZmY0MDtvcGFjaXR5OjA7dHJhbnNpdGlvbjphbGwgLjI1cyB2YXIoLS1lYXNlLW91dC1leHBvKTt6LWluZGV4OjEwO3BvaW50ZXItZXZlbnRzOmF1dG99LnRlcm1pbmFsLXJlc2l6ZS1oYW5kbGU6YmVmb3Jle2NvbnRlbnQ6IlwyMmVlXDIyZWUiO2xldHRlci1zcGFjaW5nOjhweDtmb250LXNpemU6NnB4fS50ZXJtaW5hbC1yZXNpemUtaGFuZGxlOmhvdmVye29wYWNpdHk6MTtiYWNrZ3JvdW5kOiNmZmZmZmYyNjtjb2xvcjojZmZmZmZmODA7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKSBzY2FsZSgxLjEpfS50ZXJtaW5hbC1jb250YWluZXI6aG92ZXIgLnRlcm1pbmFsLXJlc2l6ZS1oYW5kbGV7b3BhY2l0eTouN30udGVybWluYWwtY29udGFpbmVyLmludGVyYWN0aXZle2JvcmRlci1jb2xvcjojNGY3YTU4OGM7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmZmZmMGYsMCAwIDAgMnB4ICM0ZjdhNTg0MCwwIDhweCAzMnB4ICMwMDAwMDA1OX0udGVybWluYWwtY29udGFpbmVyLmludGVyYWN0aXZlOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2hlaWdodDoycHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdHJhbnNwYXJlbnQsdmFyKC0tc3VjY2VzcyksdHJhbnNwYXJlbnQpO2FuaW1hdGlvbjp0ZXJtaW5hbC1hY3RpdmUtcHVsc2UgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyB0ZXJtaW5hbC1hY3RpdmUtcHVsc2V7MCUsdG97b3BhY2l0eTouNX01MCV7b3BhY2l0eToxfX0udGVybWluYWwtY29udGFpbmVyOmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7aGVpZ2h0OjQ4cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gdG9wLHJnYmEoMjYsMjIsMTksLjUpLHRyYW5zcGFyZW50KTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGVhc2U7ei1pbmRleDoxMjtib3JkZXItcmFkaXVzOjAgMCB2YXIoLS1yYWRpdXMtbWQpIHZhcigtLXJhZGl1cy1tZCl9LnRlcm1pbmFsLWNvbnRhaW5lci5oYXMtanVtcC1idG46YWZ0ZXJ7b3BhY2l0eToxfS50ZXJtaW5hbC1zY2FsZS1idG57bWluLXdpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7cGFkZGluZzowIDRweDtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo2MDB9LnRlcm1pbmFsLXNjYWxlLWxhYmVse2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTttaW4td2lkdGg6MzJweDt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nOjAgMnB4fS50ZXJtaW5hbC1zY2FsZS1vdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO3RvcDo4cHg7cmlnaHQ6OHB4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxcHg7cGFkZGluZzoycHg7Ym9yZGVyLXJhZGl1czo3cHg7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4wNik7YmFja2dyb3VuZDojMTgxNDExNjE7YmFja2Ryb3AtZmlsdGVyOmJsdXIoOHB4KTtib3gtc2hhZG93OjAgNnB4IDE4cHggIzAwMDAwMDJlO29wYWNpdHk6LjcyO3RyYW5zaXRpb246b3BhY2l0eSAuMThzIGVhc2UsYmFja2dyb3VuZCAuMThzIGVhc2UsYm9yZGVyLWNvbG9yIC4xOHMgZWFzZTt6LWluZGV4OjEyO3BvaW50ZXItZXZlbnRzOmF1dG99LnRlcm1pbmFsLWNvbnRhaW5lcjpob3ZlciAudGVybWluYWwtc2NhbGUtb3ZlcmxheSwudGVybWluYWwtc2NhbGUtb3ZlcmxheTpmb2N1cy13aXRoaW57b3BhY2l0eToxO2JhY2tncm91bmQ6IzE4MTQxMThmO2JvcmRlci1jb2xvcjojZmZmZmZmMWF9LnRlcm1pbmFsLXNjYWxlLW92ZXJsYXktYnRue21pbi13aWR0aDoyMnB4O2hlaWdodDoyMnB4O3BhZGRpbmc6MCAzcHg7Y29sb3I6I2Y1ZWFkY2UwO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czo1cHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xOHMgZWFzZSxjb2xvciAuMThzIGVhc2V9LnRlcm1pbmFsLXNjYWxlLW92ZXJsYXktYnRuOmhvdmVye2JhY2tncm91bmQ6I2Q2N2I1MjJlO2NvbG9yOiNmZmY3ZWZmNX0udGVybWluYWwtc2NhbGUtb3ZlcmxheS1sYWJlbHtmb250LXNpemU6LjYyNXJlbTtjb2xvcjojZjVlYWRjYTg7bWluLXdpZHRoOjM0cHg7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzowIDNweH0udGVybWluYWwtc2NhbGUtb3ZlcmxheS1kaXZpZGVye3dpZHRoOjFweDtoZWlnaHQ6MTRweDtiYWNrZ3JvdW5kOiNmNWVhZGMzMzttYXJnaW46MCAycHh9LnRlcm1pbmFsLWp1bXAtYm90dG9te3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjE0cHg7Ym90dG9tOjE2cHg7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDozNHB4O2hlaWdodDozNHB4O3BhZGRpbmc6MDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjA4KTtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOiMxYzE2MTJjNztjb2xvcjojZmZmN2VmZWI7Ym94LXNoYWRvdzowIDFweCAycHggIzAwMDAwMDQwLDAgOHB4IDIycHggIzAwMDAwMDUyLGluc2V0IDAgMXB4ICNmZmZmZmYwZjtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxMnB4KTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDEycHgpO2N1cnNvcjpwb2ludGVyO3otaW5kZXg6MTM7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDEwcHgpIHNjYWxlKC44Nik7cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjI2cyB2YXIoLS1lYXNlLW91dC1leHBvKSx0cmFuc2Zvcm0gLjMycyB2YXIoLS1lYXNlLXNwcmluZyksYmFja2dyb3VuZCAuMThzIGVhc2UsYm9yZGVyLWNvbG9yIC4xOHMgZWFzZSxib3gtc2hhZG93IC4ycyBlYXNlfS50ZXJtaW5hbC1qdW1wLWJvdHRvbS52aXNpYmxle29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSgxKTtwb2ludGVyLWV2ZW50czphdXRvfS50ZXJtaW5hbC1qdW1wLWJvdHRvbSBzdmd7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS50ZXJtaW5hbC1qdW1wLWJvdHRvbTpob3ZlcntiYWNrZ3JvdW5kOiNkNjdiNTJlYjtib3JkZXItY29sb3I6I2ZmZmZmZjJlO2NvbG9yOiNmZmY7Ym94LXNoYWRvdzowIDFweCAycHggIzAwMDAwMDQ3LDAgMTBweCAyNnB4ICNiODVjMzc1YyxpbnNldCAwIDFweCAjZmZmZmZmMmV9LnRlcm1pbmFsLWp1bXAtYm90dG9tOmhvdmVyIHN2Z3t0cmFuc2Zvcm06dHJhbnNsYXRlWSgxLjVweCl9LnRlcm1pbmFsLWp1bXAtYm90dG9tOmFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSguOTIpO3RyYW5zaXRpb24tZHVyYXRpb246LjA4c30udGVybWluYWwtanVtcC1ib3R0b206Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOm5vbmU7Ym94LXNoYWRvdzowIDFweCAycHggIzAwMDAwMDQ3LDAgMTBweCAyNnB4ICNiODVjMzc1YyxpbnNldCAwIDFweCAjZmZmZmZmMmUsMCAwIDAgM3B4ICNkNjdiNTI1OX0udGVybWluYWwtY29udGFpbmVyLmludGVyYWN0aXZle2JvcmRlci1jb2xvcjojNGY3YTU4ODA7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmZmZmMGEsMCAwIDAgMnB4ICM0ZjdhNTg0MCx2YXIoLS1zaGFkb3ctc29mdCl9Lm1pbmkta2V5Ym9hcmQtZmFie3Bvc2l0aW9uOmZpeGVkO2JvdHRvbTo2MHB4O3JpZ2h0OjE2cHg7d2lkdGg6NDRweDtoZWlnaHQ6NDRweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6I2ZmZjtib3JkZXI6bm9uZTtmb250LXNpemU6MS4xMjVyZW07Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpub25lO2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JveC1zaGFkb3c6MCA0cHggMTZweCAjYjg1YzM3NTk7ei1pbmRleDoxMDA7dHJhbnNpdGlvbjphbGwgLjJzIHZhcigtLWVhc2Utc3ByaW5nKX0ubWluaS1rZXlib2FyZC1mYWIudmlzaWJsZXtkaXNwbGF5OmZsZXh9Lm1pbmkta2V5Ym9hcmQtZmFiOmhvdmVye3RyYW5zZm9ybTpzY2FsZSgxLjEpO2JveC1zaGFkb3c6MCA2cHggMjBweCAjYjg1YzM3NzN9Lm1pbmkta2V5Ym9hcmQtZmFiOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk1KX0ubWluaS1rZXlib2FyZHtwb3NpdGlvbjpmaXhlZDtib3R0b206NjBweDtyaWdodDoxNnB4O2JhY2tncm91bmQ6IzJhMWYxNmY1O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjIsOTEsNjQsLjUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWxnKTtib3gtc2hhZG93OjAgOHB4IDMycHggIzAwMDY7ei1pbmRleDoxMDAwO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpO292ZXJmbG93OmhpZGRlbjttaW4td2lkdGg6MjYwcHg7YW5pbWF0aW9uOm1rU2xpZGVVcCAuMnMgdmFyKC0tZWFzZS1vdXQtZXhwbyl9Lm1pbmkta2V5Ym9hcmQuaGlkZGVue2Rpc3BsYXk6bm9uZX1Aa2V5ZnJhbWVzIG1rU2xpZGVVcHswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTJweCkgc2NhbGUoLjk2KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoMSl9fUBtZWRpYShtYXgtd2lkdGg6NjQwcHgpey5taW5pLWtleWJvYXJke2JvdHRvbToyMHB4O3JpZ2h0OjEwcHg7bGVmdDoxMHB4O21pbi13aWR0aDowfS5taW5pLWtleWJvYXJkLWZhYntib3R0b206MjBweDtyaWdodDoxNnB4fX0uY2hhdC1jb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmU7ZmxleDoxO2Rpc3BsYXk6bm9uZTtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWluLWhlaWdodDowO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjAgMjBweCAxNnB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDI1NSwyNTIsMjQ4LC41KSAwJSx0cmFuc3BhcmVudCAxMDAlKX0uY2hhdC11bnJlYWQtYnViYmxle3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjE0cHg7Ym90dG9tOjEwcHg7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6NnB4O2hlaWdodDozMnB4O21pbi13aWR0aDozMnB4O3BhZGRpbmc6MCAxMHB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjcyKTtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6I2ZmZmNmOGViO2NvbG9yOnZhcigtLWFjY2VudCk7Zm9udC1zaXplOi43OHJlbTtmb250LXdlaWdodDo2MDA7bGluZS1oZWlnaHQ6MTtsZXR0ZXItc3BhY2luZzouMDFlbTt3aGl0ZS1zcGFjZTpub3dyYXA7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTRweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxNHB4KTtib3gtc2hhZG93OjAgMXB4IDNweCAjNTkzYTIwMWYsMCAxMHB4IDI0cHggI2I4NWMzNzJlLGluc2V0IDAgMXB4ICNmZmY5O2N1cnNvcjpwb2ludGVyO3otaW5kZXg6MTM7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDhweCkgc2NhbGUoLjkpO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNnMgdmFyKC0tZWFzZS1vdXQtZXhwbyksdHJhbnNmb3JtIC4zMnMgdmFyKC0tZWFzZS1zcHJpbmcpLGJhY2tncm91bmQgLjE4cyBlYXNlLGJvcmRlci1jb2xvciAuMThzIGVhc2UsYm94LXNoYWRvdyAuMnMgZWFzZSxjb2xvciAuMThzIGVhc2UscGFkZGluZyAuMjJzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5jaGF0LXVucmVhZC1idWJibGUudmlzaWJsZXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7cG9pbnRlci1ldmVudHM6YXV0b30uY2hhdC11bnJlYWQtYnViYmxlLmhhcy11bnJlYWR7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2NvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOiNmZmZmZmZjNztwYWRkaW5nOjAgMTJweCAwIDEwcHg7Ym94LXNoYWRvdzowIDFweCAzcHggIzU5M2EyMDJlLDAgMTJweCAyOHB4ICNiODVjMzc1MixpbnNldCAwIDFweCAjZmZmZmZmNDd9LmNoYXQtdW5yZWFkLWJ1YmJsZS1pY29ue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ZmxleC1zaHJpbms6MDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgdmFyKC0tZWFzZS1vdXQtZXhwbyl9LmNoYXQtdW5yZWFkLWJ1YmJsZTpob3ZlcntiYWNrZ3JvdW5kOiNmZmZhZjI7Ym94LXNoYWRvdzowIDJweCA0cHggIzU5M2EyMDI5LDAgMTRweCAzMHB4ICNiODVjMzczZCxpbnNldCAwIDFweCAjZmZmZmZmYjN9LmNoYXQtdW5yZWFkLWJ1YmJsZS5oYXMtdW5yZWFkOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LWhvdmVyKTtib3gtc2hhZG93OjAgMnB4IDVweCAjNTkzYTIwMzgsMCAxNHB4IDMycHggI2I4NWMzNzZiLGluc2V0IDAgMXB4ICNmZmZmZmY1Mn0uY2hhdC11bnJlYWQtYnViYmxlOmhvdmVyIC5jaGF0LXVucmVhZC1idWJibGUtaWNvbnt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxLjVweCl9LmNoYXQtdW5yZWFkLWJ1YmJsZTphY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoLjk0KTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wOHN9LmNoYXQtdW5yZWFkLWJ1YmJsZTpmb2N1cy12aXNpYmxle291dGxpbmU6bm9uZTtib3gtc2hhZG93OjAgMnB4IDRweCAjNTkzYTIwMzMsMCAxMnB4IDI4cHggI2I4NWMzNzUyLGluc2V0IDAgMXB4ICNmZmZmZmY1MiwwIDAgMCAzcHggI2M1NjUzZDUyfS5jaGF0LXVucmVhZC1idWJibGUtY291bnR7ZGlzcGxheTpub25lO2FsaWduLWl0ZW1zOmNlbnRlcjtmb250LXNpemU6Ljc4cmVtO2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxO2xldHRlci1zcGFjaW5nOi4wMWVtO3BvaW50ZXItZXZlbnRzOm5vbmV9LmNoYXQtdW5yZWFkLWJ1YmJsZS1jb3VudC52aXNpYmxle2Rpc3BsYXk6aW5saW5lLWZsZXg7YW5pbWF0aW9uOmNoYXRVbnJlYWRDb3VudFBvcCAuMjJzIHZhcigtLWVhc2Utb3V0LWJhY2ssIGN1YmljLWJlemllciguMzQsIDEuNTYsIC42NCwgMSkpfS5jaGF0LXVucmVhZC1idWJibGUtY291bnQ6YWZ0ZXJ7Y29udGVudDoiIFw2NzYxXDY1YjBcNmQ4OFw2MDZmIjttYXJnaW4tbGVmdDoycHg7Zm9udC13ZWlnaHQ6NTAwO29wYWNpdHk6Ljk1fUBrZXlmcmFtZXMgY2hhdFVucmVhZENvdW50UG9wezAle3RyYW5zZm9ybTpzY2FsZSguNik7b3BhY2l0eTowfXRve3RyYW5zZm9ybTpzY2FsZSgxKTtvcGFjaXR5OjF9fS5jaGF0LXVucmVhZC1kaXZpZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEycHg7bWFyZ2luOjZweCA0cHggMnB4O3BhZGRpbmc6MCAycHg7Zm9udC1zaXplOi43MnJlbTtmb250LXdlaWdodDo1MDA7Y29sb3I6dmFyKC0tYWNjZW50KTtsZXR0ZXItc3BhY2luZzouMDRlbTt1c2VyLXNlbGVjdDpub25lO3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowO2FuaW1hdGlvbjpjaGF0VW5yZWFkRGl2aWRlckluIC4zMnMgdmFyKC0tZWFzZS1vdXQtZXhwbykgZm9yd2FyZHN9LmNoYXQtdW5yZWFkLWRpdmlkZXItbGluZXtmbGV4OjE7aGVpZ2h0OjFweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCwjYzU2NTNkMGQsI2M1NjUzZDUyLCNjNTY1M2QwZCl9LmNoYXQtdW5yZWFkLWRpdmlkZXItbGFiZWx7ZmxleC1zaHJpbms6MDtwYWRkaW5nOjNweCAxMHB4O2JhY2tncm91bmQ6I2ZmZjhmMGYyO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTcsMTAxLDYxLC4xOCk7Ym9yZGVyLXJhZGl1czo5OTlweDtib3gtc2hhZG93OjAgMXB4IDNweCAjYjg1YzM3MWE7d2hpdGUtc3BhY2U6bm93cmFwfUBrZXlmcmFtZXMgY2hhdFVucmVhZERpdmlkZXJJbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTJweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfX0uY2hhdC1jb250YWluZXIuYWN0aXZle2Rpc3BsYXk6ZmxleH0uY2hhdC1jb250YWluZXI6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDtoZWlnaHQ6NDhweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byB0b3AscmdiYSgyNTUsMjUyLDI0OCwuNiksdHJhbnNwYXJlbnQpO3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuM3MgZWFzZTt6LWluZGV4OjEyfS5jaGF0LWNvbnRhaW5lci5oYXMtanVtcC1idG46YWZ0ZXJ7b3BhY2l0eToxfS5jaGF0LW1lc3NhZ2Vze2ZsZXg6MTtvdmVyZmxvdy15OmF1dG87b3ZlcmZsb3cteDpoaWRkZW47ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlO2dhcDoxNnB4O3BhZGRpbmc6MjBweCA0cHggMTJweDttaW4taGVpZ2h0OjA7bWluLXdpZHRoOjA7c2Nyb2xsYmFyLWd1dHRlcjpzdGFibGU7b3ZlcnNjcm9sbC1iZWhhdmlvcjpjb250YWlufS5jaGF0LWxvYWQtbW9yZXtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjhweCAwfS5jaGF0LWxvYWQtbW9yZS1idG57YmFja2dyb3VuZDp2YXIoLS1iZy1ob3Zlcik7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc2l6ZTouNzVyZW07cGFkZGluZzo2cHggMTZweDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCAuMnMgZWFzZX0uY2hhdC1sb2FkLW1vcmUtYnRuOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtjb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfUBrZXlmcmFtZXMgbWVzc2FnZVNsaWRlezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxNnB4KSBzY2FsZSguOTcpO2ZpbHRlcjpibHVyKDZweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpO2ZpbHRlcjpibHVyKDApfX1Aa2V5ZnJhbWVzIG1lc3NhZ2VTbGlkZVVzZXJ7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUoMjBweCkgdHJhbnNsYXRlWSg4cHgpIHNjYWxlKC45Nil9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUoMCkgdHJhbnNsYXRlWSgwKSBzY2FsZSgxKX19QGtleWZyYW1lcyBtZXNzYWdlRmxvYXR7MCUsdG97dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9NTAle3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0zcHgpfX0uY2hhdC1tZXNzYWdle2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7bWFyZ2luOjRweCAwO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZSx0cmFuc2Zvcm0gLjJzIHZhcigtLWVhc2Utb3V0LWV4cG8pOy0tY2hhdC1jYXJkLW1heC13aWR0aDogNzIwcHh9LmNoYXQtbWVzc2FnZTpob3Zlcnt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KX1AbWVkaWEoaG92ZXI6bm9uZSl7LmNoYXQtbWVzc2FnZTpob3Zlcnt0cmFuc2Zvcm06bm9uZX0uY2hhdC1tZXNzYWdlOmhvdmVyIC5jaGF0LW1lc3NhZ2UtYnViYmxle2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXNtKX0uY2hhdC1tZXNzYWdlLmFzc2lzdGFudDpob3ZlciAuY2hhdC1tZXNzYWdlLWJ1YmJsZXtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctc20pfX0uY2hhdC1tZXNzYWdlLnVzZXJ7YWxpZ24tc2VsZjpmbGV4LWVuZH0uY2hhdC1tZXNzYWdlLmFzc2lzdGFudHthbGlnbi1zZWxmOmZsZXgtc3RhcnQ7bWF4LXdpZHRoOjEwMCU7d2lkdGg6MTAwJX0uY2hhdC1tZXNzYWdlLnN5c3RlbS1pbmZve2FsaWduLXNlbGY6Y2VudGVyO21heC13aWR0aDoxMDAlO3dpZHRoOjEwMCU7bWFyZ2luOjEwcHggMDthbmltYXRpb246bWVzc2FnZUZsb2F0IDNzIGVhc2UtaW4tb3V0IGluZmluaXRlfS5zeXN0ZW0taW5mby1jYXJke2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjNjM2NmYxMTQsIzYzNjZmMTBhKTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoOTksMTAyLDI0MSwuMik7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO3BhZGRpbmc6MTJweCAxNnB4O2ZvbnQtc2l6ZTouODEyNXJlbTtib3gtc2hhZG93OnZhcigtLXNoYWRvdy14cyl9LnN5c3RlbS1pbmZvLWhlYWRlcntmb250LXdlaWdodDo3MDA7Y29sb3I6IzYzNjZmMWYyO21hcmdpbi1ib3R0b206OHB4O2ZvbnQtc2l6ZTouNjg3NXJlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7bGV0dGVyLXNwYWNpbmc6LjA4ZW07ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4fS5zeXN0ZW0taW5mby1oZWFkZXI6YmVmb3Jle2NvbnRlbnQ6IiI7d2lkdGg6OHB4O2hlaWdodDo4cHg7YmFja2dyb3VuZDojNjM2NmYxOTk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCl9LnN5c3RlbS1pbmZvLWNvbnRlbnR7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtd3JhcDpicmVhay13b3JkO2xpbmUtaGVpZ2h0OnZhcigtLWxpbmUtaGVpZ2h0LWJhc2UpO21heC1oZWlnaHQ6MjAwcHg7b3ZlcmZsb3cteTphdXRvfS5jaGF0LW1lc3NhZ2UuYW5pbWF0ZS1pbnthbmltYXRpb246bWVzc2FnZVNsaWRlIC41cyB2YXIoLS1lYXNlLW91dC1leHBvKTt3aWxsLWNoYW5nZTpvcGFjaXR5LHRyYW5zZm9ybSxmaWx0ZXJ9LmNoYXQtbWVzc2FnZS51c2VyLmFuaW1hdGUtaW57YW5pbWF0aW9uOm1lc3NhZ2VTbGlkZVVzZXIgLjRzIHZhcigtLWVhc2Utb3V0LWJhY2spfS5jaGF0LW1lc3NhZ2UtYXZhdGFye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtwYWRkaW5nOjAgMnB4IDRweH0uY2hhdC1tZXNzYWdlLWF2YXRhci5hc3Npc3RhbnR7ZmxleC1kaXJlY3Rpb246cm93fS5jaGF0LW1lc3NhZ2UtYXZhdGFyLnVzZXJ7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2V9LnBpeGVsLWF2YXRhcnt3aWR0aDoyNHB4O2hlaWdodDoyNHB4O2ZsZXgtc2hyaW5rOjA7Ym9yZGVyLXJhZGl1czo2cHg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2JveC1zaGFkb3c6MCAxcHggM3B4ICMwMDAwMDAyNn0ucGl4ZWwtYXZhdGFyLWltYWdle2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvYmplY3QtZml0OmNvdmVyfS5waXhlbC1hdmF0YXItc3Zne2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtpbWFnZS1yZW5kZXJpbmc6cGl4ZWxhdGVkfS5hdmF0YXItbmFtZXtmb250LXNpemU6LjdyZW07Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi4wM2VtO2xpbmUtaGVpZ2h0OjF9LmNoYXQtbWVzc2FnZS5hc3Npc3RhbnQgLmF2YXRhci1uYW1le2NvbG9yOnZhcigtLWFjY2VudCl9LmNoYXQtbWVzc2FnZS51c2VyIC5hdmF0YXItbmFtZXtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KX0uY2hhdC1tZXNzYWdlLWJ1YmJsZXtwYWRkaW5nOjEycHggMTZweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7Zm9udC1zaXplOi44NzVyZW07bGluZS1oZWlnaHQ6dmFyKC0tbGluZS1oZWlnaHQtcmVsYXhlZCk7d29yZC13cmFwOmJyZWFrLXdvcmQ7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7d2hpdGUtc3BhY2U6cHJlLXdyYXA7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7b3ZlcmZsb3cteDpoaWRkZW47Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctc20pO3RyYW5zaXRpb246Ym94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5jaGF0LW1lc3NhZ2U6aG92ZXIgLmNoYXQtbWVzc2FnZS1idWJibGV7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctbWQpfS5jaGF0LW1lc3NhZ2UudXNlciAuY2hhdC1tZXNzYWdlLWJ1YmJsZXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsdmFyKC0tYWNjZW50KSAwJSx2YXIoLS1hY2NlbnQtaG92ZXIpIDEwMCUpO2NvbG9yOnZhcigtLXRleHQtaW52ZXJzZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbGcpIHZhcigtLXJhZGl1cy1sZykgdmFyKC0tcmFkaXVzLXNtKSB2YXIoLS1yYWRpdXMtbGcpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44MTI1cmVtO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay13b3JkO2JveC1zaGFkb3c6MCA0cHggMTZweCAjYzU2NTNkNGQsaW5zZXQgMCAxcHggI2ZmZmZmZjI2fS5jaGF0LW1lc3NhZ2UudXNlcnttYXgtd2lkdGg6MTAwJX0udXNlci1hdHRhY2htZW50c3tkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2dhcDo2cHg7bWFyZ2luLWJvdHRvbTo2cHh9LnVzZXItYXR0YWNobWVudC1pbWFnZXtkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjB9LnVzZXItYXR0YWNobWVudC10aHVtYntkaXNwbGF5OmJsb2NrO21heC13aWR0aDptaW4oMTAwJSwyNDBweCk7bWF4LWhlaWdodDoyMDBweDt3aWR0aDphdXRvO2hlaWdodDphdXRvO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjI1KTtvYmplY3QtZml0OmNvbnRhaW47Y3Vyc29yOnpvb20taW47Ym94LXNoYWRvdzowIDJweCA4cHggIzAwMDAwMDI0O3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4xNnMgZWFzZSxib3gtc2hhZG93IC4xNnMgZWFzZSx0cmFuc2Zvcm0gLjE2cyBlYXNlfS51c2VyLWF0dGFjaG1lbnQtdGh1bWI6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzowIDRweCAxNHB4ICMwMDAzO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpfS51c2VyLWF0dGFjaG1lbnQtZmlsZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O21heC13aWR0aDoxMDAlO3BhZGRpbmc6NXB4IDEwcHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO2JhY2tncm91bmQ6dmFyKC0tYmctc3VyZmFjZSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC1zaXplOi43NXJlbTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMTZzIGVhc2UsY29sb3IgLjE2cyBlYXNlfS51c2VyLWF0dGFjaG1lbnQtZmlsZTpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS51c2VyLWF0dGFjaG1lbnQtZmlsZS1pY29ue2Rpc3BsYXk6aW5saW5lLWZsZXg7ZmxleC1zaHJpbms6MDtjb2xvcjp2YXIoLS1hY2NlbnQpfS51c2VyLWF0dGFjaG1lbnQtZmlsZS1uYW1le292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0udXNlci1hdHRhY2htZW50LXRleHR7d2hpdGUtc3BhY2U6cHJlLXdyYXA7d29yZC1icmVhazpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YW55d2hlcmV9LmNoYXQtbWVzc2FnZS5hc3Npc3RhbnQgLmNoYXQtbWVzc2FnZS1idWJibGV7YmFja2dyb3VuZDp2YXIoLS1iZy1zdXJmYWNlKTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3BhZGRpbmc6MTRweCAxOHB4O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtd3JhcDpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay13b3JkO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctc20pfS5jaGF0LW1lc3NhZ2UuYXNzaXN0YW50OmhvdmVyIC5jaGF0LW1lc3NhZ2UtYnViYmxle2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQtc29mdCk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctbWQpfS5jaGF0LW1lc3NhZ2UtY29udGVudHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHg7d2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDtvdmVyZmxvdy14OmhpZGRlbjtmb250LXNpemU6Ljg3NXJlbTtsaW5lLWhlaWdodDp2YXIoLS1saW5lLWhlaWdodC1yZWxheGVkKTt3b3JkLXdyYXA6YnJlYWstd29yZDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JveC1zaXppbmc6Ym9yZGVyLWJveH0uY2hhdC1tZXNzYWdlLWNvbnRlbnQ+LnRoaW5raW5nLWlubGluZSwuY2hhdC1tZXNzYWdlLWNvbnRlbnQ+LmlubGluZS10b29sLC5jaGF0LW1lc3NhZ2UtY29udGVudD4udG9vbC11c2UtY2FyZCwuY2hhdC1tZXNzYWdlLWNvbnRlbnQ+LnRvb2wtZ3JvdXB7bWFyZ2luOjNweCAwfS5jaGF0LW1lc3NhZ2UubXVsdGktYWdlbnR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NnB4O3dpZHRoOjEwMCU7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7Ym94LXNpemluZzpib3JkZXItYm94fS5jaGF0LW1lc3NhZ2UudXNlci5tdWx0aS1hZ2VudHthbGlnbi1zZWxmOmZsZXgtc3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0uY2hhdC1tZXNzYWdlLm11bHRpLWFnZW50IC5jaGF0LW1lc3NhZ2Utc2VnbWVudHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLXNlbGY6ZmxleC1zdGFydDt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO2JveC1zaXppbmc6Ym9yZGVyLWJveH0uY2hhdC1tZXNzYWdlLm11bHRpLWFnZW50IC5jaGF0LW1lc3NhZ2Utc2VnbWVudC5zdWJhZ2VudHtwYWRkaW5nLWxlZnQ6MTBweDttYXJnaW4tbGVmdDo2cHg7Ym9yZGVyLWxlZnQ6MnB4IHNvbGlkIHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1ib3JkZXItc3VidGxlKSk7Ym9yZGVyLXJhZGl1czowIDRweCA0cHggMDt3aWR0aDpjYWxjKDEwMCUgLSA2cHgpO21heC13aWR0aDpjYWxjKDEwMCUgLSA2cHgpfS5jaGF0LW1lc3NhZ2UubXVsdGktYWdlbnQgLmNoYXQtbWVzc2FnZS1zZWdtZW50LnN1YmFnZW50IC5jaGF0LW1lc3NhZ2UtY29udGVudHtvcGFjaXR5Oi45Nn0uY2hhdC1tZXNzYWdlLm11bHRpLWFnZW50IC5jaGF0LW1lc3NhZ2Utc2VnbWVudCAuY2hhdC1tZXNzYWdlLWF2YXRhcntwYWRkaW5nLWJvdHRvbTo0cHh9LmNoYXQtbWVzc2FnZS1hdmF0YXIuc3ViYWdlbnQgLmF2YXRhci1uYW1le2NvbG9yOnZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKX0uc3ViYWdlbnQtcmVwbHl7YmFja2dyb3VuZDojYzU2NTNkMGY7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgNiUsdmFyKC0tYmctc3VyZmFjZSkpO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTcsMTAxLDYxLC4yKTtib3JkZXI6MXB4IHNvbGlkIGNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSAyMCUsdHJhbnNwYXJlbnQpO2JvcmRlci1yYWRpdXM6MTBweDtwYWRkaW5nOjEwcHggMTRweDttYXJnaW46NHB4IDA7bGluZS1oZWlnaHQ6MS41NTtmb250LXNpemU6Ljg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3dvcmQtYnJlYWs6YnJlYWstd29yZDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO2JveC1zaXppbmc6Ym9yZGVyLWJveDt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVufS5zdWJhZ2VudC1yZXBseT46Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDowfS5zdWJhZ2VudC1yZXBseT46bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LnN1YmFnZW50LXJlcGx5LmVycm9ye2JhY2tncm91bmQ6I2UyNTc0YzE0O2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tZGFuZ2VyLCAjZTI1NzRjKSA4JSx2YXIoLS1iZy1zdXJmYWNlKSk7Ym9yZGVyLWNvbG9yOiNlMjU3NGM1OTtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tZGFuZ2VyLCAjZTI1NzRjKSAzNSUsdHJhbnNwYXJlbnQpfS5zdWJhZ2VudC1yZXBseS5wZW5kaW5ne29wYWNpdHk6Ljc7cGFkZGluZzoxNHB4IDE2cHh9LnN1YmFnZW50LXJlcGx5Om5vdCguY29sbGFwc2libGUpe2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo2cHh9LnN1YmFnZW50LXJlcGx5IHByZSwuc3ViYWdlbnQtcmVwbHkgY29kZXtmb250LXNpemU6LjgycmVtfS5zdWJhZ2VudC1yZXBseSBwcmV7YmFja2dyb3VuZDojMDAwMDAwMGE7cGFkZGluZzoxMHB4IDEycHg7Ym9yZGVyLXJhZGl1czo2cHg7b3ZlcmZsb3cteDpoaWRkZW47d2hpdGUtc3BhY2U6cHJlLXdyYXA7d29yZC1icmVhazpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YW55d2hlcmU7bWFyZ2luOjhweCAwO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowfS5zdWJhZ2VudC1wYW5lbHttYXJnaW46OHB4IDA7Ym9yZGVyOjFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMjUlLHRyYW5zcGFyZW50KTtib3JkZXItbGVmdDozcHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDU1JSx0cmFuc3BhcmVudCk7Ym9yZGVyLXJhZGl1czoxMHB4O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSAzJSx2YXIoLS1iZy1zdXJmYWNlKSk7Ym94LXNoYWRvdzowIDFweCAycHggIzAwMDAwMDA4fS5zdWJhZ2VudC1wYW5lbC1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3BhZGRpbmc6OHB4IDEycHg7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTAlLHZhcigtLWJnLXN1cmZhY2UpKTtib3JkZXItYm90dG9tOjFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTYlLHRyYW5zcGFyZW50KTtjdXJzb3I6cG9pbnRlcjt1c2VyLXNlbGVjdDpub25lO2ZvbnQtc2l6ZTouNzhyZW07bGluZS1oZWlnaHQ6MS4zNTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1cyBlYXNlfS5zdWJhZ2VudC1wYW5lbC1oZWFkZXI6aG92ZXJ7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTQlLHZhcigtLWJnLXN1cmZhY2UpKX0uc3ViYWdlbnQtcGFuZWwtaGVhZGVyOmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDU1JSx0cmFuc3BhcmVudCk7b3V0bGluZS1vZmZzZXQ6LTJweH0uc3ViYWdlbnQtcGFuZWwtYXZhdGFye2ZsZXg6MCAwIGF1dG87d2lkdGg6MjJweDtoZWlnaHQ6MjJweDtib3JkZXItcmFkaXVzOjVweDtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTglLHRyYW5zcGFyZW50KTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5zdWJhZ2VudC1wYW5lbC1hdmF0YXIgc3ZnLC5zdWJhZ2VudC1wYW5lbC1hdmF0YXIgaW1ne3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTpibG9ja30uc3ViYWdlbnQtcGFuZWwtYXJyb3d7ZmxleDowIDAgYXV0bztjb2xvcjpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgNjUlLHZhcigtLXRleHQtcHJpbWFyeSkpO29wYWNpdHk6Ljg7Zm9udC13ZWlnaHQ6NjAwfS5zdWJhZ2VudC1wYW5lbC1hdHRyaWJ1dGlvbntmbGV4OjEgMSBhdXRvO21pbi13aWR0aDowO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5zdWJhZ2VudC1wYW5lbC1uYW1le2NvbG9yOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA4OCUsdmFyKC0tdGV4dC1wcmltYXJ5KSk7Zm9udC13ZWlnaHQ6NjAwfS5zdWJhZ2VudC1wYW5lbC10YWd7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luOjAgNnB4O3BhZGRpbmc6MCA2cHg7Zm9udC1zaXplOi42MnJlbTtmb250LXdlaWdodDo1MDA7bGV0dGVyLXNwYWNpbmc6LjA0ZW07Y29sb3I6dmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpO2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDEyJSx0cmFuc3BhcmVudCk7Ym9yZGVyOjFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMzAlLHRyYW5zcGFyZW50KTtib3JkZXItcmFkaXVzOjRweDt2ZXJ0aWNhbC1hbGlnbjoxcHg7bGluZS1oZWlnaHQ6MS40O3doaXRlLXNwYWNlOm5vd3JhcH0uc3ViYWdlbnQtcGFuZWwtdGFzay1kZXNje2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtd2VpZ2h0OjQwMH0uc3ViYWdlbnQtcGFuZWwtdG9nZ2xle2ZsZXg6MCAwIGF1dG87ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtwYWRkaW5nOjNweCAxMHB4O2ZvbnQtc2l6ZTouN3JlbTtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MS4zO2NvbG9yOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA3OCUsdmFyKC0tdGV4dC1wcmltYXJ5KSk7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgOCUsdmFyKC0tYmctc3VyZmFjZSkpO2JvcmRlcjoxcHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDMwJSx0cmFuc3BhcmVudCk7Ym9yZGVyLXJhZGl1czo5OTlweDtjdXJzb3I6cG9pbnRlcjt1c2VyLXNlbGVjdDpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZSx0cmFuc2Zvcm0gLjFzIGVhc2V9LnN1YmFnZW50LXBhbmVsLXRvZ2dsZTpob3ZlcntiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSAxOCUsdmFyKC0tYmctc3VyZmFjZSkpO2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgNDUlLHRyYW5zcGFyZW50KX0uc3ViYWdlbnQtcGFuZWwtdG9nZ2xlOmFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxcHgpfS5zdWJhZ2VudC1wYW5lbC10b2dnbGUtaWNvbnt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgdmFyKC0tZWFzZS1vdXQtZXhwbywgY3ViaWMtYmV6aWVyKC4xNiwgMSwgLjMsIDEpKX0uc3ViYWdlbnQtcGFuZWxbZGF0YS1leHBhbmRlZD10cnVlXSAuc3ViYWdlbnQtcGFuZWwtdG9nZ2xlLWljb257dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS5zdWJhZ2VudC1wYW5lbC1ib2R5e3BhZGRpbmc6MTBweCAxNHB4O292ZXJmbG93LXk6YXV0bztvdmVyZmxvdy14OmhpZGRlbjttaW4td2lkdGg6MDttYXgtd2lkdGg6MTAwJTt0cmFuc2l0aW9uOm1heC1oZWlnaHQgLjI4cyB2YXIoLS1lYXNlLW91dC1leHBvLCBjdWJpYy1iZXppZXIoLjE2LCAxLCAuMywgMSkpO3Njcm9sbGJhci1ndXR0ZXI6c3RhYmxlfS5zdWJhZ2VudC1wYW5lbFtkYXRhLWV4cGFuZGVkPWZhbHNlXSAuc3ViYWdlbnQtcGFuZWwtYm9keXttYXgtaGVpZ2h0OjIyZW19LnN1YmFnZW50LXBhbmVsW2RhdGEtZXhwYW5kZWQ9dHJ1ZV0gLnN1YmFnZW50LXBhbmVsLWJvZHl7bWF4LWhlaWdodDo3MHZofS5zdWJhZ2VudC1wYW5lbC1ib2R5PjpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjB9LnN1YmFnZW50LXBhbmVsLWJvZHk+Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5zdWJhZ2VudC1wYW5lbC1ib2R5IC50b29sLXVzZS1jYXJkLC5zdWJhZ2VudC1wYW5lbC1ib2R5IC50b29sLWdyb3VwLC5zdWJhZ2VudC1wYW5lbC1ib2R5IC5pbmxpbmUtdG9vbCwuc3ViYWdlbnQtcGFuZWwtYm9keSAuaW5saW5lLXRlcm1pbmFsLC5zdWJhZ2VudC1wYW5lbC1ib2R5IC5pbmxpbmUtZGlmZnttYXJnaW46NHB4IDB9LnN1YmFnZW50LXBhbmVsLWJvZHkgLm1hcmtkb3duLWNvbnRlbnR7Zm9udC1zaXplOi44NzVyZW19LnN1YmFnZW50LXBhbmVsLWJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjdweDtoZWlnaHQ6N3B4fS5zdWJhZ2VudC1wYW5lbC1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSAzMiUsdHJhbnNwYXJlbnQpO2JvcmRlci1yYWRpdXM6NHB4fS5zdWJhZ2VudC1wYW5lbC1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA1MCUsdHJhbnNwYXJlbnQpfS5zdWJhZ2VudC1wYW5lbC1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5zdWJhZ2VudC1wYW5lbC1mb290ZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nOjZweCAxMnB4O2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDYlLHZhcigtLWJnLXN1cmZhY2UpKTtib3JkZXItdG9wOjFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTQlLHRyYW5zcGFyZW50KTtmb250LXNpemU6LjdyZW19LnN1YmFnZW50LXBhbmVsLWZvb3Rlci1oaW50e2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjA7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7b3BhY2l0eTouNztmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2xldHRlci1zcGFjaW5nOi4wNGVtO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0uc3ViYWdlbnQtcmVwbHkuY29sbGFwc2libGV7cGFkZGluZzowO292ZXJmbG93OmhpZGRlbn0uc3ViYWdlbnQtcmVwbHkuZmluYWx7bWFyZ2luOjZweCAwIDA7cGFkZGluZzoxMHB4IDEycHg7Ym9yZGVyLXJhZGl1czo4cHg7Ym9yZGVyLWxlZnQ6M3B4IHNvbGlkIGNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA2MCUsdHJhbnNwYXJlbnQpO2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDUlLHZhcigtLWJnLXN1cmZhY2UpKX0uc3ViYWdlbnQtcmVwbHkuZmluYWwuZXJyb3J7Ym9yZGVyLWxlZnQtY29sb3I6dmFyKC0tZGFuZ2VyLCAjZTI1NzRjKTtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWRhbmdlciwgI2UyNTc0YykgNSUsdmFyKC0tYmctc3VyZmFjZSkpfS5zdWJhZ2VudC1yZXBseS1tYXJrZXJ7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDttYXJnaW4tYm90dG9tOjRweDtmb250LXNpemU6LjY4cmVtO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMDRlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDc4JSx2YXIoLS10ZXh0LXByaW1hcnkpKX0uc3ViYWdlbnQtcmVwbHktbWFya2VyLmVycm9ye2NvbG9yOnZhcigtLWRhbmdlciwgI2UyNTc0Yyl9LnN1YmFnZW50LXJlcGx5LW1hcmtlci5wZW5kaW5ne2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RleHQtdHJhbnNmb3JtOm5vbmU7bGV0dGVyLXNwYWNpbmc6MDtmb250LXdlaWdodDo1MDB9LnN1YmFnZW50LXJlcGx5LW1hcmtlci1pY29ue2ZvbnQtd2VpZ2h0OjcwMH0uc3ViYWdlbnQtcmVwbHkuZmluYWwgLnN1YmFnZW50LXJlcGx5LWNvbnRlbnQ+OmZpcnN0LWNoaWxke21hcmdpbi10b3A6MH0uc3ViYWdlbnQtcmVwbHkuZmluYWwgLnN1YmFnZW50LXJlcGx5LWNvbnRlbnQ+Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5lbXB0eS1tZXNzYWdlIC5lbXB0eS1tZXNzYWdlLWhpbnR7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7Zm9udC1zdHlsZTppdGFsaWM7Zm9udC1zaXplOi44MTI1cmVtO29wYWNpdHk6Ljd9LnVua25vd24tYmxvY2t7bWFyZ2luOjRweCAwO2JvcmRlcjoxcHggZGFzaGVkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLXRleHQtbXV0ZWQpIDYlLHRyYW5zcGFyZW50KTtmb250LXNpemU6Ljc1cmVtO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS51bmtub3duLWJsb2NrOmhvdmVye2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tdGV4dC1tdXRlZCkgMTAlLHRyYW5zcGFyZW50KX0udW5rbm93bi1ibG9jay1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3BhZGRpbmc6NnB4IDEwcHg7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS51bmtub3duLWJsb2NrLWljb257ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tdGV4dC1tdXRlZCk7Y29sb3I6dmFyKC0tYmctc3VyZmFjZSk7Zm9udC1zaXplOi43cmVtO2ZvbnQtd2VpZ2h0OjYwMH0udW5rbm93bi1ibG9jay1sYWJlbHtmbGV4OjE7Zm9udC13ZWlnaHQ6NTAwfS51bmtub3duLWJsb2NrLXRvZ2dsZXtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtmb250LXNpemU6LjdyZW07dHJhbnNpdGlvbjp0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udW5rbm93bi1ibG9jay5jb2xsYXBzZWQgLnVua25vd24tYmxvY2stdG9nZ2xle3RyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKX0udW5rbm93bi1ibG9jay1ib2R5e21hcmdpbjowO3BhZGRpbmc6OHB4IDEwcHggMTBweDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLWFsbDttYXgtaGVpZ2h0OjI0MHB4O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bztib3JkZXItdG9wOjFweCBkYXNoZWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym94LXNpemluZzpib3JkZXItYm94fS51bmtub3duLWJsb2NrLmNvbGxhcHNlZCAudW5rbm93bi1ibG9jay1ib2R5e2Rpc3BsYXk6bm9uZX0udG9vbC11c2UtY2FyZFtkYXRhLXRydW5jYXRlZD10cnVlXSAudG9vbC11c2UtbmFtZTphZnRlciwuaW5saW5lLXRvb2xbZGF0YS10cnVuY2F0ZWQ9dHJ1ZV0gLmlubGluZS10b29sLXRpdGxlOmFmdGVye2NvbnRlbnQ6Ilw1ZGYyXDYyMmFcNjVhZCI7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6NnB4O3BhZGRpbmc6MXB4IDZweDtmb250LXNpemU6LjZyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtaW52ZXJzZSwgI2ZmZik7YmFja2dyb3VuZDp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtib3JkZXItcmFkaXVzOjk5OXB4O2xldHRlci1zcGFjaW5nOi4wMmVtO3ZlcnRpY2FsLWFsaWduOjFweDtvcGFjaXR5Oi44NX0uY2hhdC1tZXNzYWdlLnRoaW5raW5ne2FsaWduLXNlbGY6ZmxleC1zdGFydDttYXgtd2lkdGg6MTAwJTttYXJnaW46NHB4IDB9LmNoYXQtbWVzc2FnZS5wcm9tcHR7YWxpZ24tc2VsZjpjZW50ZXI7bWF4LXdpZHRoOjEwMCU7bWFyZ2luOjRweCAwfS5wcm9tcHQtY2FyZHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo0cHggOHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtjdXJzb3I6ZGVmYXVsdDtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5wcm9tcHQtaWNvbntmb250LXNpemU6Ljg3NXJlbX0ucHJvbXB0LWNvbnRlbnR7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXN0eWxlOml0YWxpY30ucHJvbXB0LXRleHR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtjb2xvcjojYzU2NTNkY2M7Zm9udC13ZWlnaHQ6NTAwfS50eXBpbmctaW5kaWNhdG9ye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjVweDtwYWRkaW5nOjZweCAwfS50eXBpbmctaW5kaWNhdG9yIHNwYW57ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6N3B4O2hlaWdodDo3cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtc29mdCk7YW5pbWF0aW9uOnR5cGluZ0JvdW5jZSAxLjJzIGVhc2UtaW4tb3V0IGluZmluaXRlfS50eXBpbmctaW5kaWNhdG9yIHNwYW46bnRoLWNoaWxkKDIpe2FuaW1hdGlvbi1kZWxheTouMTVzfS50eXBpbmctaW5kaWNhdG9yIHNwYW46bnRoLWNoaWxkKDMpe2FuaW1hdGlvbi1kZWxheTouM3N9QGtleWZyYW1lcyB0eXBpbmdCb3VuY2V7MCUsNjAlLHRve29wYWNpdHk6LjM1O3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfTMwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTVweCl9fS50b29sLXVzZS1jYXJke21hcmdpbjo0cHggMDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtvdmVyZmxvdzpoaWRkZW47d2lkdGg6MTAwJTttYXgtd2lkdGg6dmFyKC0tY2hhdC1jYXJkLW1heC13aWR0aCwgNzIwcHgpO21pbi13aWR0aDowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmJmNWUwLCNmZmY2ZWFiOCk7Ym94LXNoYWRvdzowIDFweCAycHggIzU5M2EyMDBhO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4yMnMgZWFzZSxib3gtc2hhZG93IC4yMnMgZWFzZSx0cmFuc2Zvcm0gLjIycyBlYXNlfS50b29sLXVzZS1jYXJkOmhvdmVye2JvcmRlci1jb2xvcjojNGY3YTU4NGQ7Ym94LXNoYWRvdzowIDNweCAxMnB4ICM0ZjdhNTgxNH0udG9vbC11c2UtY2FyZC5sb2FkaW5ne2JvcmRlci1jb2xvcjojYTk2YTJmNGQ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmY0ZTJlMCwjZmZmMWRhYjgpfS50b29sLXVzZS1jYXJkLnN1Y2Nlc3N7Ym9yZGVyLWNvbG9yOiM0ZjdhNTg1Mn0udG9vbC11c2UtY2FyZC5lcnJvcntib3JkZXItY29sb3I6I2IyNGY0NTUyO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmNmMGVlZTAsI2ZjZWJlOWI4KX0udG9vbC11c2UtaGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7cGFkZGluZzo5cHggMTRweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZTouODEyNXJlbTt1c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7dG91Y2gtYWN0aW9uOm1hbmlwdWxhdGlvbjt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE4cyBlYXNlO21pbi1oZWlnaHQ6MzhweDtmbGV4LXdyYXA6bm93cmFwfS50b29sLXVzZS1oZWFkZXI6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMGF9LnRvb2wtdXNlLWhlYWRlcjphY3RpdmV7YmFja2dyb3VuZDojYzU2NTNkMTJ9LnRvb2wtdXNlLWNhcmQubG9hZGluZyAudG9vbC11c2UtaGVhZGVyOmhvdmVye2JhY2tncm91bmQ6I2E5NmEyZjBmfS50b29sLXVzZS1jYXJkLnN1Y2Nlc3MgLnRvb2wtdXNlLWhlYWRlcjpob3ZlcntiYWNrZ3JvdW5kOiM0ZjdhNTgwZn0udG9vbC11c2UtY2FyZC5lcnJvciAudG9vbC11c2UtaGVhZGVyOmhvdmVye2JhY2tncm91bmQ6I2IyNGY0NTBmfS50b29sLXVzZS1pY29ue2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtd2VpZ2h0OjcwMDtmbGV4LXNocmluazowO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWluLXdpZHRoOjIycHg7aGVpZ2h0OjIycHg7Ym9yZGVyLXJhZGl1czo2cHg7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzLW11dGVkKTtjb2xvcjp2YXIoLS1zdWNjZXNzKTtsZXR0ZXItc3BhY2luZzotLjAyZW19LnRvb2wtdXNlLWNhcmQubG9hZGluZyAudG9vbC11c2UtaWNvbntiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmctbXV0ZWQpO2NvbG9yOnZhcigtLXdhcm5pbmcpfS50b29sLXVzZS1jYXJkLmVycm9yIC50b29sLXVzZS1pY29ue2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKTtjb2xvcjp2YXIoLS1kYW5nZXIpfS50b29sLXVzZS1zcGlubmVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjE0cHg7aGVpZ2h0OjE0cHg7Ym9yZGVyOjJweCBzb2xpZCB2YXIoLS13YXJuaW5nLW11dGVkKTtib3JkZXItdG9wLWNvbG9yOnZhcigtLXdhcm5pbmcpO2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjp0b29sLXNwaW4gLjhzIGxpbmVhciBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHRvb2wtc3Bpbnt0b3t0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fS50b29sLXVzZS1uYW1le2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZsZXg6MCAxIGF1dG87bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2xldHRlci1zcGFjaW5nOi0uMDA1ZW19LnRvb2wtdXNlLWZpbGV7Zm9udC1zaXplOi43NXJlbTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO21heC13aWR0aDozMjBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7ZmxleDowIDEgYXV0bzttaW4td2lkdGg6MH0udG9vbC11c2Utc3VtbWFyeXtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmbGV4OjAgMSBhdXRvO21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDttYXJnaW4tbGVmdDoycHh9LnRvb2wtdXNlLXRvZ2dsZXtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyB2YXIoLS1lYXNlLXNwcmluZyksY29sb3IgLjE4cyBlYXNlO2ZsZXgtc2hyaW5rOjA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtvcGFjaXR5Oi42fS50b29sLXVzZS1jYXJkOmhvdmVyIC50b29sLXVzZS10b2dnbGV7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO29wYWNpdHk6MX0udG9vbC11c2UtY2FyZC5jb2xsYXBzZWQgLnRvb2wtdXNlLXRvZ2dsZXt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyl9LnRvb2wtdXNlLWJvZHl7cGFkZGluZzoxMnB4IDE0cHg7YmFja2dyb3VuZDojZmZmZGY4YTY7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KTttYXgtaGVpZ2h0OjYwMHB4O292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOm1heC1oZWlnaHQgLjM1cyB2YXIoLS1lYXNlLW91dC1leHBvKSxwYWRkaW5nIC4zNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyksb3BhY2l0eSAuMjVzIGVhc2UsdHJhbnNmb3JtIC4zNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyk7b3BhY2l0eToxO3RyYW5zZm9ybS1vcmlnaW46dG9wfS50b29sLXVzZS1jYXJkLmNvbGxhcHNlZCAudG9vbC11c2UtYm9keXttYXgtaGVpZ2h0OjA7cGFkZGluZy10b3A6MDtwYWRkaW5nLWJvdHRvbTowO29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGVZKC45NSl9LnRvb2wtdXNlLWNvbnRlbnR7bWFyZ2luOjA7Zm9udC1zaXplOi43NXJlbTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstd29yZDttYXgtaGVpZ2h0OjQwMHB4O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bztsaW5lLWhlaWdodDoxLjU1fS50b29sLXVzZS1yZXN1bHR7bWFyZ2luLXRvcDoxMHB4O3BhZGRpbmctdG9wOjEwcHg7Ym9yZGVyLXRvcDoxcHggZGFzaGVkIHJnYmEoMTI1LDkxLDU3LC4xNCl9LnRvb2wtdXNlLXJlc3VsdC1jb250ZW50e21hcmdpbjowO2ZvbnQtc2l6ZTouNzVyZW07Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLWFsbDttYXgtaGVpZ2h0OjMyMHB4O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bztsaW5lLWhlaWdodDoxLjU1O2JhY2tncm91bmQ6IzdkNWIzOTA5O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXhzKTtwYWRkaW5nOjhweCAxMHB4O2JveC1zaXppbmc6Ym9yZGVyLWJveH0udG9vbC11c2UtcmVzdWx0LWVtcHR5e2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zdHlsZTppdGFsaWN9LnRvb2wtdXNlLW1ldGF7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO21hcmdpbi1ib3R0b206OHB4O3BhZGRpbmctYm90dG9tOjhweDtib3JkZXItYm90dG9tOjFweCBkYXNoZWQgcmdiYSgxMjUsOTEsNTcsLjE0KX0udG9vbC11c2UtbWV0YS1sYWJlbHtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC13ZWlnaHQ6NjAwfS50b29sLXVzZS1jYXJkLmFzay11c2Vye2JvcmRlci1jb2xvcjojYzU2NTNkNGQ7YmFja2dyb3VuZDojYzU2NTNkMGF9LnRvb2wtdXNlLWNhcmQuYXNrLXVzZXIgLnRvb2wtdXNlLWhlYWRlcntiYWNrZ3JvdW5kOiNjNTY1M2QxNH0uYXNrLXVzZXItYm9keXtwYWRkaW5nOjEwcHggMTJweH0uYXNrLXVzZXItcXVlc3Rpb24tZ3JvdXB7bWFyZ2luLWJvdHRvbToxMHB4fS5hc2stdXNlci1xdWVzdGlvbi1ncm91cDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uYXNrLXVzZXItdGl0bGV7Zm9udC1zaXplOi44NzVyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bWFyZ2luLWJvdHRvbToxMHB4fS5hc2stdXNlci1vcHRpb25ze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjZweH0uYXNrLXVzZXItb3B0aW9ue2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7cGFkZGluZzo4cHggMTJweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7dGV4dC1hbGlnbjpsZWZ0fS5hc2stdXNlci1vcHRpb246aG92ZXI6bm90KDpkaXNhYmxlZCl7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDojYzU2NTNkMGZ9LmFzay11c2VyLW9wdGlvbjpkaXNhYmxlZHtvcGFjaXR5Oi41O2N1cnNvcjpub3QtYWxsb3dlZH0uYXNrLXVzZXItb3B0aW9uLnNlbGVjdGVke2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6I2M1NjUzZDJlO2JveC1zaGFkb3c6MCAwIDAgMXB4ICNjNTY1M2Q1OSBpbnNldH0udG9vbC11c2UtY2FyZC5hc2stdXNlci5hc2stdXNlci1hbnN3ZXJlZHtib3JkZXItdG9wOjJweCBzb2xpZCB2YXIoLS1zdWNjZXNzLCAjNGNhZjUwKX0uYXNrLXVzZXItb3B0aW9uLmFzay11c2VyLW9wdGlvbi1jaG9zZW57YmFja2dyb3VuZDojYzU2NTNkMjk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCl9LmFzay11c2VyLWluZGljYXRvcnt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2ZsZXgtc2hyaW5rOjA7Ym9yZGVyOjJweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czo1MCU7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LmFzay11c2VyLW9wdGlvbnNbZGF0YS1tdWx0aS1zZWxlY3Q9dHJ1ZV0gLmFzay11c2VyLWluZGljYXRvcntib3JkZXItcmFkaXVzOjNweH0uYXNrLXVzZXItb3B0aW9uLnNlbGVjdGVkIC5hc2stdXNlci1pbmRpY2F0b3J7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpfS5hc2stdXNlci1vcHRpb24uc2VsZWN0ZWQgLmFzay11c2VyLWluZGljYXRvcjphZnRlcntjb250ZW50OiIiO3dpZHRoOjZweDtoZWlnaHQ6NnB4O2JhY2tncm91bmQ6I2ZmZjtib3JkZXItcmFkaXVzOjUwJX0uYXNrLXVzZXItb3B0aW9uc1tkYXRhLW11bHRpLXNlbGVjdD10cnVlXSAuYXNrLXVzZXItb3B0aW9uLnNlbGVjdGVkIC5hc2stdXNlci1pbmRpY2F0b3I6YWZ0ZXJ7d2lkdGg6NHB4O2hlaWdodDo4cHg7Ym9yZGVyOnNvbGlkIHdoaXRlO2JvcmRlci13aWR0aDowIDJweCAycHggMDtib3JkZXItcmFkaXVzOjA7YmFja2dyb3VuZDpub25lO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO21hcmdpbi1ib3R0b206MnB4fS5hc2stdXNlci1vcHRpb24tY29udGVudHtmbGV4OjE7bWluLXdpZHRoOjB9LmFzay11c2VyLW9wdGlvbi1sYWJlbHtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmFzay11c2VyLW9wdGlvbi1kZXNje2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO21hcmdpbi10b3A6MnB4O2xpbmUtaGVpZ2h0OjEuNH0uYXNrLXVzZXItYWN0aW9uc3ttYXJnaW4tdG9wOjEwcHg7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0uYXNrLXVzZXItc3VibWl0e3BhZGRpbmc6NnB4IDE2cHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1hY2NlbnQpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6I2ZmZjtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NTAwO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmFzay11c2VyLXN1Ym1pdDpob3Zlcjpub3QoOmRpc2FibGVkKXtmaWx0ZXI6YnJpZ2h0bmVzcygxLjEpfS5hc2stdXNlci1zdWJtaXQ6ZGlzYWJsZWR7b3BhY2l0eTouNDtjdXJzb3I6bm90LWFsbG93ZWR9LmFzay11c2VyLXN1Ym1pdC5hc2stdXNlci1zdWJtaXR0ZWR7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItZGVmYXVsdCk7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7cG9pbnRlci1ldmVudHM6bm9uZX0uYXNrLXVzZXItYW5zd2VyZWQgLmFzay11c2VyLW9wdGlvbntjdXJzb3I6ZGVmYXVsdDtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6LjZ9LmFzay11c2VyLWFuc3dlcmVkIC5hc2stdXNlci1vcHRpb24uYXNrLXVzZXItb3B0aW9uLWNob3NlbntvcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnZhcigtLXN1Y2Nlc3MpO2JhY2tncm91bmQ6IzRmN2E1ODBmfS5hc2stdXNlci1hbnN3ZXJlZCAuYXNrLXVzZXItb3B0aW9uLmFzay11c2VyLW9wdGlvbi1jaG9zZW4gLmFzay11c2VyLWluZGljYXRvcntib3JkZXItY29sb3I6dmFyKC0tc3VjY2Vzcyk7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzKX0uYXNrLXVzZXItb3B0aW9uLXJlYWRvbmx5e3BvaW50ZXItZXZlbnRzOm5vbmV9b3ZlcmZsb3cteTogYXV0bzsgLnRoaW5raW5nLWlubGluZXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6YmFzZWxpbmU7Z2FwOjVweDttYXJnaW46MnB4IDA7d2lkdGg6MTAwJTttYXgtd2lkdGg6dmFyKC0tY2hhdC1jYXJkLW1heC13aWR0aCwgNzIwcHgpO2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjNweCA4cHg7Ym9yZGVyLXJhZGl1czo2cHg7YmFja2dyb3VuZDojOGE2Y2IyMGE7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOi43NXJlbTtsaW5lLWhlaWdodDoxLjQ7Y29sb3I6IzhhNmNiMjhjO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7d29yZC1icmVhazpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YnJlYWstd29yZH0udGhpbmtpbmctaW5saW5lOmhvdmVye2JhY2tncm91bmQ6IzhhNmNiMjE0O2NvbG9yOiM4YTZjYjJjY30udGhpbmtpbmctaW5saW5lLmV4cGFuZGVke2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDtsaW5lLWhlaWdodDoxLjY7bWF4LWhlaWdodDozMDBweDtvdmVyZmxvdy15OmF1dG99LnRoaW5raW5nLWlubGluZS1pY29ue2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi42MjVyZW19LnRoaW5raW5nLWlubGluZS1wcmV2aWV3e2ZsZXg6MTttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LnRoaW5raW5nLWlubGluZS5leHBhbmRlZCAudGhpbmtpbmctaW5saW5lLXByZXZpZXd7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9LnRoaW5raW5nLWlubGluZS1hY3Rpb257ZmxleC1zaHJpbms6MDtmb250LXNpemU6LjYyNXJlbTtjb2xvcjojOGE2Y2IyNjY7cGFkZGluZzowIDRweDtib3JkZXItcmFkaXVzOjNweDtiYWNrZ3JvdW5kOiM4YTZjYjIxNDttYXJnaW4tbGVmdDphdXRvfS50aGlua2luZy1pbmxpbmU6aG92ZXIgLnRoaW5raW5nLWlubGluZS1hY3Rpb257Y29sb3I6IzhhNmNiMmIzfS50aGlua2luZy1pbmxpbmUudGhpbmtpbmctcHR5e2JhY2tncm91bmQ6IzhhNmNiMjA4fS50aGlua2luZy1zdHJlYW1pbmd7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjVweDttYXJnaW46MnB4IDA7cGFkZGluZzozcHggOHB4O2JvcmRlci1yYWRpdXM6NnB4O2JhY2tncm91bmQ6IzhhNmNiMjBhO2N1cnNvcjpkZWZhdWx0O2ZvbnQtc2l6ZTouNzVyZW07bGluZS1oZWlnaHQ6MS40O2NvbG9yOiM4YTZjYjI4Y30udGhpbmtpbmctc3RyZWFtaW5nLWlubmVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo1cHg7d2lkdGg6MTAwJX0udGhpbmtpbmctc3RyZWFtaW5nLWljb257Zm9udC1zaXplOi42MjVyZW07ZmxleC1zaHJpbms6MDttYXJnaW4tdG9wOjFweH0udGhpbmtpbmctc3RyZWFtaW5nLXRleHR7ZmxleDoxO21pbi13aWR0aDowO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi43NXJlbTtsaW5lLWhlaWdodDoxLjU7Y29sb3I6IzhhNmNiMmNjO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZDttYXgtaGVpZ2h0OjQuNWVtO292ZXJmbG93LXk6YXV0bztzY3JvbGxiYXItd2lkdGg6dGhpbjtzY3JvbGxiYXItY29sb3I6cmdiYSgxMzgsMTA4LDE3OCwuMykgdHJhbnNwYXJlbnR9LnRoaW5raW5nLXN0cmVhbWluZy10ZXh0Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo0cHh9LnRoaW5raW5nLXN0cmVhbWluZy10ZXh0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM4YTZjYjI0ZDtib3JkZXItcmFkaXVzOjJweH0udG9vbC1ncm91cHttYXJnaW46NHB4IDA7d2lkdGg6MTAwJTttYXgtd2lkdGg6dmFyKC0tY2hhdC1jYXJkLW1heC13aWR0aCwgNzIwcHgpO21pbi13aWR0aDowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmJmNWQ5LCNmZmY4ZWViMyk7Ym94LXNoYWRvdzowIDFweCAycHggIzU5M2EyMDA4O292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMThzIGVhc2UsYm94LXNoYWRvdyAuMjJzIGVhc2UsdHJhbnNmb3JtIC4yMnMgZWFzZX0udG9vbC1ncm91cDpob3Zlcntib3JkZXItY29sb3I6IzdkNWIzOTJlO2JveC1zaGFkb3c6MCAycHggOHB4ICM1OTNhMjAwZn0udG9vbC1ncm91cFtkYXRhLXN0YXR1cz1wZW5kaW5nXXtib3JkZXItY29sb3I6I2E5NmEyZjM4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmNGUyZDksI2ZmZjFkYWIzKX0udG9vbC1ncm91cFtkYXRhLXN0YXR1cz1lcnJvcl17Ym9yZGVyLWNvbG9yOiNiMjRmNDU0NztiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZjZjBlZWQ5LCNmY2VjZWFiMyl9LnRvb2wtZ3JvdXAtc3VtbWFyeXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo5cHg7cGFkZGluZzo4cHggMTJweDtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt1c2VyLXNlbGVjdDpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMThzIGVhc2V9LnRvb2wtZ3JvdXAtc3VtbWFyeTpob3ZlcntiYWNrZ3JvdW5kOiNjNTY1M2QwYX0udG9vbC1ncm91cC1zdGF0dXN7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2JvcmRlci1yYWRpdXM6NTAlO2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo3MDA7bGluZS1oZWlnaHQ6MTtmbGV4LXNocmluazowO2xldHRlci1zcGFjaW5nOjB9LnRvb2wtZ3JvdXBbZGF0YS1zdGF0dXM9ZG9uZV0gLnRvb2wtZ3JvdXAtc3RhdHVze2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcy1tdXRlZCk7Y29sb3I6dmFyKC0tc3VjY2Vzcyl9LnRvb2wtZ3JvdXBbZGF0YS1zdGF0dXM9ZXJyb3JdIC50b29sLWdyb3VwLXN0YXR1c3tiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Y29sb3I6dmFyKC0tZGFuZ2VyKX0udG9vbC1ncm91cFtkYXRhLXN0YXR1cz1wZW5kaW5nXSAudG9vbC1ncm91cC1zdGF0dXN7YmFja2dyb3VuZDp2YXIoLS13YXJuaW5nLW11dGVkKTtjb2xvcjp2YXIoLS13YXJuaW5nKTthbmltYXRpb246dG9vbC1ncm91cC1wdWxzZSAxLjZzIGVhc2UtaW4tb3V0IGluZmluaXRlfUBrZXlmcmFtZXMgdG9vbC1ncm91cC1wdWxzZXswJSx0b3tvcGFjaXR5OjF9NTAle29wYWNpdHk6LjU1fX0udG9vbC1ncm91cC10ZXh0e2ZsZXg6MTttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbX0udG9vbC1ncm91cC1jb3VudHtmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtwYWRkaW5nOjJweCA4cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7YmFja2dyb3VuZDojN2Q1YjM5MTI7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS50b29sLWdyb3VwLWNoZXZyb257ZmxleC1zaHJpbms6MDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIHZhcigtLWVhc2Utb3V0LWV4cG8pO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO29wYWNpdHk6LjZ9LnRvb2wtZ3JvdXA6aG92ZXIgLnRvb2wtZ3JvdXAtY2hldnJvbntvcGFjaXR5OjF9LnRvb2wtZ3JvdXBbZGF0YS1leHBhbmRlZD10cnVlXSAudG9vbC1ncm91cC1jaGV2cm9ue3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0udG9vbC1ncm91cC1ib2R5e2Rpc3BsYXk6bm9uZTtwYWRkaW5nOjRweCA4cHggOHB4IDE4cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA2KTtib3JkZXItbGVmdDoycHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KTtiYWNrZ3JvdW5kOiNmZmZkZjg4Y30udG9vbC1ncm91cC1ib2R5Pi5pbmxpbmUtdG9vbHttYXJnaW46MH0udG9vbC1ncm91cC1ib2R5Pi5pbmxpbmUtdG9vbCsuaW5saW5lLXRvb2x7Ym9yZGVyLXRvcDoxcHggZGFzaGVkIHJnYmEoMTI1LDkxLDU3LC4wNil9LnRvb2wtZ3JvdXBbZGF0YS1leHBhbmRlZD10cnVlXSAudG9vbC1ncm91cC1ib2R5e2Rpc3BsYXk6YmxvY2s7YW5pbWF0aW9uOnRvb2wtZ3JvdXAtcmV2ZWFsIC4yMnMgdmFyKC0tZWFzZS1vdXQtZXhwbyl9QGtleWZyYW1lcyB0b29sLWdyb3VwLXJldmVhbHswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTJweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfX0uY2hhdC1oaXN0b3J5LWhpZGRlbntkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5jaGF0LWhpc3Rvcnktc3VtbWFyeXt3aWR0aDoxMDAlO21heC13aWR0aDp2YXIoLS1jaGF0LWNhcmQtbWF4LXdpZHRoLCA3MjBweCk7bWFyZ2luOjEwcHggYXV0bztib3gtc2l6aW5nOmJvcmRlci1ib3h9LmNoYXQtaGlzdG9yeS1zdW1tYXJ5LWJ0bntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo5cHg7d2lkdGg6MTAwJTtwYWRkaW5nOjdweCAxMnB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsLCA5OTlweCk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmJmNWU2LCNmZmY3ZWNjNyk7Ym94LXNoYWRvdzowIDFweCAycHggIzU5M2EyMDBhO2N1cnNvcjpwb2ludGVyO3RleHQtYWxpZ246bGVmdDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udDppbmhlcml0O3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4xOHMgZWFzZSxib3gtc2hhZG93IC4yMnMgZWFzZSxiYWNrZ3JvdW5kIC4xOHMgZWFzZX0uY2hhdC1oaXN0b3J5LXN1bW1hcnktYnRuOmhvdmVye2JvcmRlci1jb2xvcjojN2Q1YjM5MzM7Ym94LXNoYWRvdzowIDJweCA4cHggIzU5M2EyMDBmO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmYWYzZjIsI2ZmZjVlOGQ5KX0uY2hhdC1oaXN0b3J5LXN1bW1hcnktaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZsZXgtc2hyaW5rOjA7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7b3BhY2l0eTouNzV9LmNoYXQtaGlzdG9yeS1zdW1tYXJ5LWJvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MXB4O2ZsZXg6MTttaW4td2lkdGg6MH0uY2hhdC1oaXN0b3J5LXN1bW1hcnktdGl0bGV7Zm9udC1zaXplOi43NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsZXR0ZXItc3BhY2luZzotLjAwNWVtfS5jaGF0LWhpc3Rvcnktc3VtbWFyeS1tZXRhe2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS5jaGF0LWhpc3Rvcnktc3VtbWFyeS1jaGV2cm9ue2ZsZXgtc2hyaW5rOjA7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7b3BhY2l0eTouNjt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5jaGF0LWhpc3Rvcnktc3VtbWFyeS1idG46aG92ZXIgLmNoYXQtaGlzdG9yeS1zdW1tYXJ5LWNoZXZyb257b3BhY2l0eToxfS5jaGF0LWhpc3Rvcnktc3VtbWFyeVtkYXRhLWV4cGFuZGVkPXRydWVdIC5jaGF0LWhpc3Rvcnktc3VtbWFyeS1jaGV2cm9ue3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0uaW5saW5lLXRvb2x7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttYXJnaW46MXB4IDA7d2lkdGg6MTAwJTttYXgtd2lkdGg6dmFyKC0tY2hhdC1jYXJkLW1heC13aWR0aCwgNzIwcHgpO21pbi13aWR0aDowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy14cyk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZX0udG9vbC1ncm91cC1ib2R5Pi5pbmxpbmUtdG9vbHttYXgtd2lkdGg6MTAwJX0uaW5saW5lLXRvb2wtcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjVweCAxMHB4O2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7bGluZS1oZWlnaHQ6MS40NTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy14cyk7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxjb2xvciAuMTZzIGVhc2V9LmlubGluZS10b29sOmhvdmVyIC5pbmxpbmUtdG9vbC1yb3d7YmFja2dyb3VuZDojYzU2NTNkMGY7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uaW5saW5lLXRvb2wtc3RhdHVze2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTRweDtoZWlnaHQ6MTRweDtmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tc3VjY2Vzcyk7bGluZS1oZWlnaHQ6MX0uaW5saW5lLXRvb2xbZGF0YS1zdGF0dXM9cGVuZGluZ10gLmlubGluZS10b29sLXN0YXR1c3tjb2xvcjp2YXIoLS13YXJuaW5nKX0uaW5saW5lLXRvb2xbZGF0YS1zdGF0dXM9ZXJyb3JdIC5pbmxpbmUtdG9vbC1zdGF0dXMsLmlubGluZS10b29sLWVycm9yLWlubGluZSAuaW5saW5lLXRvb2wtc3RhdHVze2NvbG9yOnZhcigtLWRhbmdlcil9LmlubGluZS10b29sLWljb257ZmxleC1zaHJpbms6MDtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtvcGFjaXR5Oi44NX0uaW5saW5lLXRvb2w6aG92ZXIgLmlubGluZS10b29sLWljb257Y29sb3I6dmFyKC0tYWNjZW50KTtvcGFjaXR5OjF9LmlubGluZS10b29sLXRpdGxle2ZsZXg6MTttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc2l6ZTouNzVyZW19LmlubGluZS10b29sOmhvdmVyIC5pbmxpbmUtdG9vbC10aXRsZXtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS5pbmxpbmUtdG9vbC1tZXRhe2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO21heC13aWR0aDoyMjBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zO2xldHRlci1zcGFjaW5nOi0uMDFlbX0uaW5saW5lLXRvb2wtaW1hZ2V7cGFkZGluZzoycHggMTBweCA4cHggMzJweDtjdXJzb3I6ZGVmYXVsdH0uaW5saW5lLXRvb2wtaW1hZ2UtdGh1bWJ7ZGlzcGxheTpibG9jazttYXgtd2lkdGg6bWluKDEwMCUsMzYwcHgpO21heC1oZWlnaHQ6MjQwcHg7d2lkdGg6YXV0bztoZWlnaHQ6YXV0bztib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy14cyk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMTQpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDQ1ZGVnLHJnYmEoMTI1LDkxLDU3LC4wNSkgMjUlLHRyYW5zcGFyZW50IDI1JSx0cmFuc3BhcmVudCA3NSUscmdiYSgxMjUsOTEsNTcsLjA1KSA3NSUpIDAgMCAvIDE2cHggMTZweCxsaW5lYXItZ3JhZGllbnQoNDVkZWcscmdiYSgxMjUsOTEsNTcsLjA1KSAyNSUsdHJhbnNwYXJlbnQgMjUlLHRyYW5zcGFyZW50IDc1JSxyZ2JhKDEyNSw5MSw1NywuMDUpIDc1JSkgOHB4IDhweCAvIDE2cHggMTZweDtvYmplY3QtZml0OmNvbnRhaW47Y3Vyc29yOnpvb20taW47dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE2cyBlYXNlLGJveC1zaGFkb3cgLjE2cyBlYXNlfS5pbmxpbmUtdG9vbC1pbWFnZS10aHVtYjpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMnB4IDEwcHggIzAwMDAwMDFmfS5pbmxpbmUtdG9vbC1leHBhbmRlZHtkaXNwbGF5Om5vbmU7cGFkZGluZzowIDEwcHggOHB4fS5pbmxpbmUtdG9vbC1vcGVuIC5pbmxpbmUtdG9vbC1leHBhbmRlZHtkaXNwbGF5OmJsb2NrO2FuaW1hdGlvbjp0b29sLWdyb3VwLXJldmVhbCAuMnMgdmFyKC0tZWFzZS1vdXQtZXhwbyl9LmlubGluZS10b29sLXJlc3VsdHtiYWNrZ3JvdW5kOiM3ZDViMzkwYTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wNyk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMteHMpO3BhZGRpbmc6MTBweCAxMnB4O21hcmdpbi10b3A6NnB4O21heC1oZWlnaHQ6MzIwcHg7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7b3ZlcmZsb3cteDpoaWRkZW47b3ZlcmZsb3cteTphdXRvO3Njcm9sbGJhci13aWR0aDp0aGluO3Njcm9sbGJhci1jb2xvcjpyZ2JhKDEyNSw5MSw1NywuMikgdHJhbnNwYXJlbnR9LmlubGluZS10b29sLXJlc3VsdDo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6NnB4fS5pbmxpbmUtdG9vbC1yZXN1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6IzdkNWIzOTMzO2JvcmRlci1yYWRpdXM6M3B4fS5pbmxpbmUtdG9vbC1yZXN1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTUyfS5pbmxpbmUtdG9vbC1yZXN1bHQtdGV4dHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouNzVyZW07bGluZS1oZWlnaHQ6MS41NTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLWFsbDttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDttYXJnaW46MH0uaW5saW5lLXRvb2wtZXJyb3ItaW5saW5le2JvcmRlci1sZWZ0OjJweCBzb2xpZCB2YXIoLS1kYW5nZXIpO3BhZGRpbmctbGVmdDoycHg7bWFyZ2luLWxlZnQ6LTJweH0uaW5saW5lLXRvb2wtZXJyb3ItaW5saW5lIC5pbmxpbmUtdG9vbC1yb3d7Y29sb3I6dmFyKC0tZGFuZ2VyKX0uaW5saW5lLXRvb2wtcmVzdWx0LmlubGluZS10b29sLWVycm9ye2NvbG9yOnZhcigtLWRhbmdlcik7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6Ljc1cmVtO2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKTtib3JkZXItY29sb3I6I2IyNGY0NTJlfS5pbmxpbmUtdG9vbC1sb2FkaW5ne2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0td2FybmluZyk7Zm9udC1zdHlsZTppdGFsaWM7cGFkZGluZzo2cHggMDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4fS5pbmxpbmUtdG9vbC1sb2FkaW5nOmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjEwcHg7aGVpZ2h0OjEwcHg7Ym9yZGVyOjEuNXB4IHNvbGlkIHZhcigtLXdhcm5pbmctbXV0ZWQpO2JvcmRlci10b3AtY29sb3I6dmFyKC0td2FybmluZyk7Ym9yZGVyLXJhZGl1czo1MCU7YW5pbWF0aW9uOnRvb2wtY29udGVudC1zcGluIC43cyBsaW5lYXIgaW5maW5pdGV9LmlubGluZS10b29sLWVtcHR5e2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zdHlsZTppdGFsaWN9LnRvb2wtY29udGVudC1sb2FkaW5ne2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zdHlsZTppdGFsaWM7cGFkZGluZzo4cHggMH0udG9vbC1jb250ZW50LWxvYWRpbmc6YmVmb3Jle2NvbnRlbnQ6IiI7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MTJweDtoZWlnaHQ6MTJweDtib3JkZXI6MnB4IHNvbGlkIHZhcigtLXRleHQtbXV0ZWQpO2JvcmRlci10b3AtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czo1MCU7YW5pbWF0aW9uOnRvb2wtY29udGVudC1zcGluIC42cyBsaW5lYXIgaW5maW5pdGU7dmVydGljYWwtYWxpZ246bWlkZGxlO21hcmdpbi1yaWdodDo2cHh9QGtleWZyYW1lcyB0b29sLWNvbnRlbnQtc3Bpbnt0b3t0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fS50b29sLWNvbnRlbnQtZXJyb3J7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS1lcnJvcik7cGFkZGluZzo4cHggMDtjdXJzb3I6cG9pbnRlcn0udG9vbC1jb250ZW50LWVycm9yOmhvdmVye3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LmlubGluZS10ZXJtaW5hbHttYXJnaW46NHB4IDA7d2lkdGg6MTAwJTttYXgtd2lkdGg6dmFyKC0tY2hhdC1jYXJkLW1heC13aWR0aCwgNzIwcHgpO21pbi13aWR0aDowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTUsMTIsOSwuNik7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2JhY2tncm91bmQ6IzFmMWIxNztib3gtc2hhZG93OjAgMXB4ICNmZmZmZmYwYSBpbnNldCwwIDJweCAxMnB4ICMwZjBjMDkyZTtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjpib3gtc2hhZG93IC4yMnMgZWFzZSx0cmFuc2Zvcm0gLjIycyBlYXNlLGJvcmRlci1jb2xvciAuMjJzIGVhc2V9LmlubGluZS10ZXJtaW5hbDpob3Zlcntib3gtc2hhZG93OjAgMXB4ICNmZmZmZmYwZCBpbnNldCwwIDRweCAxOHB4ICMwZjBjMDkzZDtib3JkZXItY29sb3I6I2ZmZmZmZjFhfS50ZXJtLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O3BhZGRpbmc6OHB4IDE0cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZmZmYwYSwjZmZmZmZmMDQpLCMwMDAwMDAyZTtib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4wNCk7Zm9udC1zaXplOi43NXJlbTtjdXJzb3I6cG9pbnRlcjt1c2VyLXNlbGVjdDpub25lO3Bvc2l0aW9uOnJlbGF0aXZlO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowfS50ZXJtLWhlYWRlcjpob3ZlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmZmZjBmLCNmZmZmZmYwNiksIzAwMDAwMDJlfS50ZXJtLXN0YXR1cy1kb3R7d2lkdGg6OXB4O2hlaWdodDo5cHg7Ym9yZGVyLXJhZGl1czo1MCU7ZmxleC1zaHJpbms6MDtib3gtc2hhZG93OjAgMCAwIDFweCAjMDAwMDAwNDAgaW5zZXR9LnRlcm0tc3RhdHVzLWRvdC50ZXJtLXN1Y2Nlc3N7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDM1JSAzMCUsI2I2ZjBjNCwjNmVlMDlhLCMzYWE3NjUpO2JveC1zaGFkb3c6MCAwIDAgMXB4ICMwMDAwMDA0MCBpbnNldCwwIDAgNnB4ICM2ZWUwOWE1OX0udGVybS1zdGF0dXMtZG90LnRlcm0tZXJyb3J7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDM1JSAzMCUsI2ZmYjViOSwjZjA3MTc4LCNiNTNiNDEpO2JveC1zaGFkb3c6MCAwIDAgMXB4ICMwMDAwMDA0MCBpbnNldCwwIDAgNnB4ICNmMDcxNzg1OX0udGVybS1zdGF0dXMtZG90LnRlcm0td2FybntiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMzUlIDMwJSwjZmZkMDdhLCNmMGE1MDAsI2FkNzQwMCk7Ym94LXNoYWRvdzowIDAgMCAxcHggIzAwMDAwMDQwIGluc2V0LDAgMCA2cHggI2YwYTUwMDU5fS50ZXJtLXN0YXR1cy1kb3QudGVybS1ydW5uaW5ne2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAzNSUgMzAlLCNkMWQ1ZGIsIzljYTNhZiwjNGI1NTYzKTthbmltYXRpb246dGVybS1wdWxzZSAxcyBlYXNlLWluLW91dCBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHRlcm0tcHVsc2V7MCUsdG97b3BhY2l0eToxO2JveC1zaGFkb3c6MCAwIDAgMXB4ICMwMDAwMDA0MCBpbnNldCwwIDAgIzljYTNhZjAwfTUwJXtvcGFjaXR5Oi41NTtib3gtc2hhZG93OjAgMCAwIDFweCAjMDAwMDAwNDAgaW5zZXQsMCAwIDhweCAjOWNhM2FmNTl9fS50ZXJtLWNtZC1wcmV2aWV3e2ZsZXg6MTttaW4td2lkdGg6MDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6I2U4ZGNjOGM3O292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtsZXR0ZXItc3BhY2luZzotLjAwNWVtfS50ZXJtLWNtZC1wcmV2aWV3IC50ZXJtLXByb21wdHtjb2xvcjojNmVlMDlhO2ZvbnQtd2VpZ2h0OjYwMDttYXJnaW4tcmlnaHQ6NnB4O2ZvbnQtc2l6ZTouNzVyZW07b3BhY2l0eTouOX0udGVybS10b2dnbGUtaWNvbntmb250LXNpemU6LjYyNXJlbTtjb2xvcjojZmZmZmZmNTk7dHJhbnNpdGlvbjpjb2xvciAuMThzIGVhc2U7ZmxleC1zaHJpbms6MH0udGVybS1oZWFkZXI6aG92ZXIgLnRlcm0tdG9nZ2xlLWljb257Y29sb3I6I2ZmZmZmZmE2fS50ZXJtLWJvZHl7cGFkZGluZzoxMnB4IDE0cHggMTRweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsIzAwMDAwMDJlLCMwMDAwIDI0cHgpLCMxZjFiMTd9LnRlcm0tY29tbWFuZHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjojZjRlOWQ0O2xpbmUtaGVpZ2h0OjEuNTU7bWFyZ2luLWJvdHRvbTo2cHg7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLWFsbDttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MH0udGVybS1wcm9tcHR7Y29sb3I6IzZlZTA5YTtmb250LXdlaWdodDo2MDA7bWFyZ2luLXJpZ2h0OjZweDt0ZXh0LXNoYWRvdzowIDAgNnB4IHJnYmEoMTEwLDIyNCwxNTQsLjI1KX0udGVybS1vdXRwdXR7bWFyZ2luLXRvcDo4cHg7cGFkZGluZy10b3A6OHB4O2JvcmRlci10b3A6MXB4IGRhc2hlZCByZ2JhKDI1NSwyNTUsMjU1LC4wNik7bWF4LWhlaWdodDozNjBweDttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDtvdmVyZmxvdy14OmhpZGRlbjtvdmVyZmxvdy15OmF1dG87c2Nyb2xsYmFyLXdpZHRoOnRoaW47c2Nyb2xsYmFyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjE1KSB0cmFuc3BhcmVudH0udGVybS1vdXRwdXQ6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjZweH0udGVybS1vdXRwdXQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6I2ZmZmZmZjI2O2JvcmRlci1yYWRpdXM6M3B4fS50ZXJtLW91dHB1dDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmNDB9LnRlcm0tbGluZXtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjojZDRjMmEzO2xpbmUtaGVpZ2h0OjEuNTU7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLWFsbDttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MH0udGVybS1leGl0e21hcmdpbi10b3A6MTBweDtwYWRkaW5nLXRvcDo4cHg7Ym9yZGVyLXRvcDoxcHggZGFzaGVkIHJnYmEoMjU1LDI1NSwyNTUsLjA2KTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouNjg3NXJlbTtsaW5lLWhlaWdodDoxLjU7bGV0dGVyLXNwYWNpbmc6LjA0ZW19LnRlcm0tZXhpdC1zdWNjZXNze2NvbG9yOiM2ZWUwOWFiZn0udGVybS1leGl0LWVycm9ye2NvbG9yOiNmMDcxNzhjN30uaW5saW5lLWRpZmZ7bWFyZ2luOjRweCAwO3dpZHRoOjEwMCU7bWF4LXdpZHRoOnZhcigtLWNoYXQtY2FyZC1tYXgtd2lkdGgsIDcyMHB4KTttaW4td2lkdGg6MDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmYmY1ZTAsI2ZmZjZlYWI4KTtib3gtc2hhZG93OjAgMXB4IDJweCAjNTkzYTIwMGE7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjIycyBlYXNlLGJveC1zaGFkb3cgLjIycyBlYXNlfS5pbmxpbmUtZGlmZjpob3Zlcntib3JkZXItY29sb3I6IzdkNWIzOTM4O2JveC1zaGFkb3c6MCAzcHggMTJweCAjNTkzYTIwMGZ9LmRpZmYtaGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7cGFkZGluZzo4cHggMTRweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2ZvbnQtc2l6ZTouODEyNXJlbTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE4cyBlYXNlO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowfS5kaWZmLWhlYWRlcjpob3ZlcntiYWNrZ3JvdW5kOiNjNTY1M2QwYX0uZGlmZi10b2dnbGV7Zm9udC1zaXplOi42MjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIHZhcigtLWVhc2Utc3ByaW5nKSxjb2xvciAuMThzIGVhc2U7ZmxleC1zaHJpbms6MDttYXJnaW4tbGVmdDphdXRvO29wYWNpdHk6LjZ9LmlubGluZS1kaWZmOmhvdmVyIC5kaWZmLXRvZ2dsZXtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7b3BhY2l0eToxfS5pbmxpbmUtZGlmZi5jb2xsYXBzZWQgLmRpZmYtdG9nZ2xle3RyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKX0uaW5saW5lLWRpZmYuY29sbGFwc2VkIC5kaWZmLWJvZHl7bWF4LWhlaWdodDowO292ZXJmbG93OmhpZGRlbjtvcGFjaXR5OjA7dHJhbnNpdGlvbjptYXgtaGVpZ2h0IC4zNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyksb3BhY2l0eSAuMjVzIGVhc2V9LmRpZmYtZmlsZS1pY29ue2Rpc3BsYXk6bm9uZX0uZGlmZi1maWxlLW5hbWV7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouODEyNXJlbTtsZXR0ZXItc3BhY2luZzotLjAwNWVtfS5kaWZmLXBhdGh7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtmbGV4OjE7bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtc2l6ZTouNjg3NXJlbX0uZGlmZi1zdGF0dXN7ZmxleC1zaHJpbms6MDtmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NjAwO3BhZGRpbmc6M3B4IDEwcHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7bGV0dGVyLXNwYWNpbmc6LjAxZW19LmRpZmYtc3RhdHVzLmRpZmYtc3VjY2Vzc3tiYWNrZ3JvdW5kOnZhcigtLXN1Y2Nlc3MtbXV0ZWQpO2NvbG9yOnZhcigtLXN1Y2Nlc3MpfS5kaWZmLXN0YXR1cy5kaWZmLWVycm9ye2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKTtjb2xvcjp2YXIoLS1kYW5nZXIpfS5kaWZmLXN0YXR1cy5kaWZmLXBlbmRpbmd7YmFja2dyb3VuZDp2YXIoLS13YXJuaW5nLW11dGVkKTtjb2xvcjp2YXIoLS13YXJuaW5nKX0uZGlmZi1ib2R5e292ZXJmbG93OmhpZGRlbjtib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMDgpO2JhY2tncm91bmQ6I2ZmZmRmOGE2fS5kaWZmLWNvbHVtbnN7ZGlzcGxheTpmbGV4O2dhcDoxcHg7YmFja2dyb3VuZDojN2Q1YjM5MTQ7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjB9LmRpZmYtY29se2ZsZXg6MSAxIDA7bWluLXdpZHRoOjA7bWF4LXdpZHRoOjEwMCU7YmFja2dyb3VuZDojZmZmZGY4ZDk7b3ZlcmZsb3c6aGlkZGVufS5kaWZmLWNvbC1oYWxme2ZsZXg6MX0uZGlmZi1jb2wtZnVsbHtmbGV4Om5vbmU7d2lkdGg6MTAwJX0uZGlmZi1jb2wtbGFiZWx7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjYyNXJlbTtmb250LXdlaWdodDo3MDA7cGFkZGluZzo0cHggMTJweDtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7bGV0dGVyLXNwYWNpbmc6LjA4ZW07YmFja2dyb3VuZDojN2Q1YjM5MGQ7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KX0uZGlmZi1saW5le3BhZGRpbmc6M3B4IDEycHg7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6Ljc1cmVtO2xpbmUtaGVpZ2h0OjEuNTU7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLWFsbDttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDtib3gtc2l6aW5nOmJvcmRlci1ib3h9LmRpZmYtYWRke2JhY2tncm91bmQ6IzRmN2E1ODE0O2NvbG9yOiMyYzU1MzU7Ym9yZGVyLWxlZnQ6MnB4IHNvbGlkIHJnYmEoNzksMTIyLDg4LC41KX0uZGlmZi1yZW1vdmV7YmFja2dyb3VuZDojYjI0ZjQ1MGY7Y29sb3I6IzdjMmEyMztib3JkZXItbGVmdDoycHggc29saWQgcmdiYSgxNzgsNzksNjksLjQ1KX0ubWFya2Rvd24tY29udGVudHtjb2xvcjppbmhlcml0O3doaXRlLXNwYWNlOm5vcm1hbDtvdmVyZmxvdy14OmhpZGRlbjttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstd29yZH0ubWFya2Rvd24tY29udGVudCAuY29kZS1ibG9jayBwcmV7b3ZlcmZsb3cteDpoaWRkZW47d2hpdGUtc3BhY2U6cHJlLXdyYXA7d29yZC1icmVhazpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YW55d2hlcmU7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjB9Lm1hcmtkb3duLWNvbnRlbnQgcHttYXJnaW46MCAwIDhweDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstd29yZH0ubWFya2Rvd24tY29udGVudCBwOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5tYXJrZG93bi1jb250ZW50IHN0cm9uZ3tmb250LXdlaWdodDo2MDB9Lm1hcmtkb3duLWNvbnRlbnQgZW17Zm9udC1zdHlsZTppdGFsaWN9Lm1hcmtkb3duLWNvbnRlbnQgdWwsLm1hcmtkb3duLWNvbnRlbnQgb2x7bWFyZ2luOjhweCAwO3BhZGRpbmctbGVmdDoyMHB4fS5tYXJrZG93bi1jb250ZW50IGxpe21hcmdpbjo0cHggMDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstd29yZH0ubWFya2Rvd24tY29udGVudCBoMSwubWFya2Rvd24tY29udGVudCBoMiwubWFya2Rvd24tY29udGVudCBoM3ttYXJnaW46MTZweCAwIDhweDtmb250LXdlaWdodDo2MDA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgaDF7Zm9udC1zaXplOjEuMjVyZW19Lm1hcmtkb3duLWNvbnRlbnQgaDJ7Zm9udC1zaXplOjEuMXJlbX0ubWFya2Rvd24tY29udGVudCBoM3tmb250LXNpemU6MXJlbX0ubWFya2Rvd24tY29udGVudCBibG9ja3F1b3Rle21hcmdpbjo4cHggMDtwYWRkaW5nOjhweCAxMnB4O2JvcmRlci1sZWZ0OjNweCBzb2xpZCB2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6I2M1NjUzZDBmO2JvcmRlci1yYWRpdXM6MCB2YXIoLS1yYWRpdXMtc20pIHZhcigtLXJhZGl1cy1zbSkgMDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstd29yZH0ubWFya2Rvd24tY29udGVudCBhe292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGx9Lm1hcmtkb3duLWNvbnRlbnQgaW1ne21heC13aWR0aDoxMDAlO2hlaWdodDphdXRvfS5tYXJrZG93bi1jb250ZW50IGNvZGU6bm90KC5jb2RlLWJsb2NrKTpub3QoLmNvZGUtaW5saW5lKXtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODEyNXJlbTtiYWNrZ3JvdW5kOiM5Njc2NTUxZjtwYWRkaW5nOjJweCA1cHg7Ym9yZGVyLXJhZGl1czo0cHg7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLWFsbH0ubWFya2Rvd24tY29udGVudCBjb2RlLmNvZGUtaW5saW5le2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44MTI1cmVtO2JhY2tncm91bmQ6Izk2NzY1NTFmO3BhZGRpbmc6MnB4IDVweDtib3JkZXItcmFkaXVzOjRweDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstYWxsfS5tYXJrZG93bi1jb250ZW50IC5tZC10YWJsZS13cmFwe21hcmdpbjoxMnB4IDA7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7b3ZlcmZsb3cteDphdXRvO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2h9Lm1hcmtkb3duLWNvbnRlbnQgLm1kLXRhYmxle2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTt3aWR0aDoxMDAlO3RhYmxlLWxheW91dDpmaXhlZDtmb250LXNpemU6LjgxMjVyZW07d2hpdGUtc3BhY2U6bm9ybWFsfS5tYXJrZG93bi1jb250ZW50IC5tZC10YWJsZSB0aCwubWFya2Rvd24tY29udGVudCAubWQtdGFibGUgdGR7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO3BhZGRpbmc6NnB4IDEwcHg7dGV4dC1hbGlnbjpsZWZ0O3ZlcnRpY2FsLWFsaWduOnRvcDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstd29yZH0ubWFya2Rvd24tY29udGVudCAubWQtdGFibGUgdGh7YmFja2dyb3VuZDojOTY3NjU1MWE7Zm9udC13ZWlnaHQ6NjAwfS5tYXJrZG93bi1jb250ZW50IC5tZC10YWJsZSB0Ym9keSB0cjpudGgtY2hpbGQoMm4pe2JhY2tncm91bmQ6Izk2NzY1NTBhfS5tYXJrZG93bi1jb250ZW50IC5jb2RlLWJsb2Nre21hcmdpbjoxMnB4IDA7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOiMxZjFiMTc7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyMiw5MSw2NCwuMzUpO2JveC1zaGFkb3c6MCAycHggOHB4ICMwMDAwMDAyNn0ubWFya2Rvd24tY29udGVudCAuY29kZS1ibG9jay1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nOjZweCAxMnB4O2JhY2tncm91bmQ6IzdhNWI0MDMzO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMTIyLDkxLDY0LC4yKTtnYXA6OHB4fS5tYXJrZG93bi1jb250ZW50IC5jb2RlLWxhbmd7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjdyZW07Y29sb3I6IzhjNzM1Zjt0ZXh0LXRyYW5zZm9ybTpsb3dlcmNhc2U7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5tYXJrZG93bi1jb250ZW50IC5jb2RlLWNvcHl7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjdyZW07cGFkZGluZzo0cHggMTBweDtib3JkZXItcmFkaXVzOjZweDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjE1KTtiYWNrZ3JvdW5kOiNmZmZmZmYxYTtjb2xvcjojZDljNGIwO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7d2hpdGUtc3BhY2U6bm93cmFwO2ZsZXgtc2hyaW5rOjB9Lm1hcmtkb3duLWNvbnRlbnQgLmNvZGUtY29weTpob3ZlcntiYWNrZ3JvdW5kOiNmZmZmZmYyZTtjb2xvcjojZmZmO2JvcmRlci1jb2xvcjojZmZmZmZmNDB9Lm1hcmtkb3duLWNvbnRlbnQgLmNvZGUtY29weS5jb3BpZWR7Y29sb3I6IzdmYTM2Zjtib3JkZXItY29sb3I6IzdmYTM2ZjgwO2JhY2tncm91bmQ6IzdmYTM2ZjI2fS5tYXJrZG93bi1jb250ZW50IHByZXttYXJnaW46MDtwYWRkaW5nOjEycHg7b3ZlcmZsb3cteDpoaWRkZW47d2hpdGUtc3BhY2U6cHJlLXdyYXA7d29yZC1icmVhazpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YW55d2hlcmU7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjB9Lm1hcmtkb3duLWNvbnRlbnQgcHJlIGNvZGV7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjgxMjVyZW07bGluZS1oZWlnaHQ6MS41O2NvbG9yOiNmNWVhZGM7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtwYWRkaW5nOjA7bWF4LXdpZHRoOjEwMCU7ZGlzcGxheTpibG9ja30uaW5wdXQtcGFuZWx7cGFkZGluZzo2cHggMTBweDtwYWRkaW5nLWJvdHRvbTpjYWxjKDZweCArIHZhcigtLWlucHV0LXNhZmUtYm90dG9tLCB2YXIoLS1zYWZlLWJvdHRvbSwgMHB4KSkpO2ZsZXgtc2hyaW5rOjA7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyNjtvdmVyc2Nyb2xsLWJlaGF2aW9yOmNvbnRhaW47dG91Y2gtYWN0aW9uOnBhbi15O2JvcmRlci10b3A6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZSx2aXNpYmlsaXR5IDBzfS5pbnB1dC1jb21wb3NlcntiYWNrZ3JvdW5kOiNmZmZmZmZlMDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOjIycHg7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZmFzdCksYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyc2Nyb2xsLWJlaGF2aW9yOmNvbnRhaW59LmlucHV0LWNvbXBvc2VyOmZvY3VzLXdpdGhpbntib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMCAwIDJweCB2YXIoLS1hY2NlbnQtbXV0ZWQpLDAgMCAxNnB4ICNjNTY1M2QxNDtiYWNrZ3JvdW5kOiNmZmZmZmZmYX0uY29tcG9zZXItc3RhdHVzLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7ZmxleC13cmFwOndyYXA7cGFkZGluZzowIDEwcHg7bWluLWhlaWdodDowO3RyYW5zaXRpb246cGFkZGluZyB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5jb21wb3Nlci1zdGF0dXMtcm93Pip7ZmxleC1zaHJpbms6MH0uY29tcG9zZXItc3RhdHVzLXJvdzpoYXMoPio6bm90KC5oaWRkZW4pKXtwYWRkaW5nLXRvcDo2cHg7cGFkZGluZy1ib3R0b206MH1Ac3VwcG9ydHMgbm90IHNlbGVjdG9yKDpoYXMoKikpey5jb21wb3Nlci1zdGF0dXMtcm93Om5vdCg6ZW1wdHkpe3BhZGRpbmctdG9wOjRweH19LmNvbXBvc2VyLW1haW4tcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtwYWRkaW5nOjRweCA2cHg7bWluLWhlaWdodDo0NHB4fS5jb21wb3Nlci1hY3Rpb25zLWxlZnQsLmNvbXBvc2VyLWFjdGlvbnMtcmlnaHR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MnB4O2ZsZXgtc2hyaW5rOjB9LmNvbXBvc2VyLWlucHV0LXdyYXB7cG9zaXRpb246cmVsYXRpdmU7ZmxleDoxIDEgYXV0bzttaW4td2lkdGg6MDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyfS5jb21wb3Nlci10ZXh0LXBpbGx7cG9zaXRpb246cmVsYXRpdmU7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjdyZW07Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE7cGFkZGluZzoycHg7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246Y29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3doaXRlLXNwYWNlOm5vd3JhcDtib3gtc2l6aW5nOmJvcmRlci1ib3g7dXNlci1zZWxlY3Q6bm9uZTttYXgtd2lkdGg6MTEwcHg7bGV0dGVyLXNwYWNpbmc6LjAxZW19LmNvbXBvc2VyLXRleHQtcGlsbDpob3ZlciwuY29tcG9zZXItdGV4dC1waWxsOmZvY3VzLXdpdGhpbntjb2xvcjp2YXIoLS1hY2NlbnQpfS5jb21wb3Nlci10ZXh0LWxhYmVse292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO21heC13aWR0aDoxMDAlfS5jb21wb3Nlci10ZXh0LWhpZGRlbi1zZWxlY3R7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO21hcmdpbjowO3BhZGRpbmc6MDtib3JkZXI6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnRyYW5zcGFyZW50O2ZvbnQ6aW5oZXJpdDtvcGFjaXR5OjA7Y3Vyc29yOnBvaW50ZXI7YXBwZWFyYW5jZTpub25lOy13ZWJraXQtYXBwZWFyYW5jZTpub25lfS5jb21wb3Nlci10ZXh0LWhpZGRlbi1zZWxlY3Q6Zm9jdXN7b3V0bGluZTpub25lfS5jb21wb3Nlci10ZXh0LXNlcHtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5LCAjYjVhODlhKTtmb250LXNpemU6LjdyZW07bGluZS1oZWlnaHQ6MTt1c2VyLXNlbGVjdDpub25lO3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTouNjV9LnBlcm1pc3Npb24tYWN0aW9uc3tkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O2FuaW1hdGlvbjpwZXJtaXNzaW9uLWZhZGUtaW4gLjJzIGVhc2Utb3V0fS5wZXJtaXNzaW9uLWFjdGlvbnMuaGlkZGVue2Rpc3BsYXk6bm9uZX0ucGVybWlzc2lvbi1hY3Rpb25zLWxhYmVse2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjojZDE4YjAwO21heC13aWR0aDoxODBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LmJ0bi1wZXJtaXNzaW9ue2ZvbnQtc2l6ZTouNjVyZW07cGFkZGluZzoxcHggOHB4O2JvcmRlci1yYWRpdXM6NHB4O2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Y3Vyc29yOnBvaW50ZXI7bGluZS1oZWlnaHQ6MS40O2ZvbnQtd2VpZ2h0OjUwMDt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1cyxib3JkZXItY29sb3IgLjE1c30uYnRuLXBlcm1pc3Npb246ZGlzYWJsZWR7b3BhY2l0eTouNTtjdXJzb3I6bm90LWFsbG93ZWR9LmJ0bi1wZXJtaXNzaW9uLWFwcHJvdmV7YmFja2dyb3VuZDojZjBhNTAwMjY7Y29sb3I6I2QxOGIwMDtib3JkZXItY29sb3I6I2YwYTUwMDRkfS5idG4tcGVybWlzc2lvbi1hcHByb3ZlOmhvdmVyOm5vdCg6ZGlzYWJsZWQpe2JhY2tncm91bmQ6I2YwYTUwMDQwfS5idG4tcGVybWlzc2lvbi1kZW55e2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlcil9LmJ0bi1wZXJtaXNzaW9uLWRlbnk6aG92ZXI6bm90KDpkaXNhYmxlZCl7YmFja2dyb3VuZDojZGMzMjMyMTQ7Y29sb3I6dmFyKC0tZGFuZ2VyKTtib3JkZXItY29sb3I6I2RjMzIzMjRkfUBrZXlmcmFtZXMgcGVybWlzc2lvbi1mYWRlLWluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlKC00cHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlKDApfX0uYXV0by1hcHByb3ZlLWluZGljYXRvci5hY3RpdmV7Y29sb3I6IzIyYzU1ZTtib3JkZXItY29sb3I6IzIyYzU1ZTgwO2JhY2tncm91bmQ6IzIyYzU1ZTFmfS5hdXRvLWFwcHJvdmUtaW5kaWNhdG9yLmFjdGl2ZTpob3ZlcntiYWNrZ3JvdW5kOiMyMmM1NWUzMztib3JkZXItY29sb3I6IzIyYzU1ZX0uYXBwcm92YWwtc3RhdHN7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmV9LmFwcHJvdmFsLXN0YXRzLmhpZGRlbntkaXNwbGF5Om5vbmV9LmFwcHJvdmFsLXN0YXRzLWRpdmlkZXJ7d2lkdGg6MDtoZWlnaHQ6MTZweDttYXJnaW46MCAxcHh9LmFwcHJvdmFsLXN0YXRzLWJhZGdle2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDozcHg7bWluLWhlaWdodDoyMnB4O3BhZGRpbmc6MXB4IDhweDtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDojMjJjNTVlMWE7Y29sb3I6IzIyYzU1ZTtmb250LXNpemU6LjYyNXJlbTtmb250LXdlaWdodDo2MDA7Y3Vyc29yOmRlZmF1bHQ7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXM7bGluZS1oZWlnaHQ6MTtib3gtc2l6aW5nOmJvcmRlci1ib3h9LmFwcHJvdmFsLXN0YXRzLWJhZGdlOmhvdmVye2JhY2tncm91bmQ6IzIyYzU1ZTJlfS5hcHByb3ZhbC1zdGF0cy1pY29ue3N0cm9rZTojMjJjNTVlO2ZsZXgtc2hyaW5rOjB9LmFwcHJvdmFsLXN0YXRzLXRvdGFse2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc31Aa2V5ZnJhbWVzIGFwcHJvdmFsLXB1bHNlezAle3RyYW5zZm9ybTpzY2FsZSgxKX01MCV7dHJhbnNmb3JtOnNjYWxlKDEuMTUpfXRve3RyYW5zZm9ybTpzY2FsZSgxKX19LmFwcHJvdmFsLXN0YXRzLXB1bHNle2FuaW1hdGlvbjphcHByb3ZhbC1wdWxzZSAuM3MgZWFzZS1vdXR9LmFwcHJvdmFsLXN0YXRzLXBvcHVwe2Rpc3BsYXk6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206Y2FsYygxMDAlICsgNnB4KTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpO2JhY2tncm91bmQ6dmFyKC0tYmctZWxldmF0ZWQsICMxZTFlMmUpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtib3JkZXItcmFkaXVzOjhweDtwYWRkaW5nOjhweCAxMHB4O21pbi13aWR0aDoxNDBweDtib3gtc2hhZG93OjAgNHB4IDE2cHggIzAwMDAwMDQwO3otaW5kZXg6MTAwO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NHB4fS5hcHByb3ZhbC1zdGF0czpob3ZlciAuYXBwcm92YWwtc3RhdHMtcG9wdXB7ZGlzcGxheTpmbGV4fS5hcHByb3ZhbC1zdGF0cy1wb3B1cC10aXRsZXtmb250LXNpemU6LjY1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtd2VpZ2h0OjUwMDttYXJnaW4tYm90dG9tOjJweDt3aGl0ZS1zcGFjZTpub3dyYXB9LmFwcHJvdmFsLXN0YXRzLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7Zm9udC1zaXplOi43cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5LCAjY2NjKTt3aGl0ZS1zcGFjZTpub3dyYXB9LmFwcHJvdmFsLXN0YXRzLXJvdy1pY29ue3dpZHRoOjE2cHg7dGV4dC1hbGlnbjpjZW50ZXI7ZmxleC1zaHJpbms6MDtmb250LXNpemU6LjcycmVtfS5hcHByb3ZhbC1zdGF0cy1yb3ctbGFiZWx7ZmxleDoxfS5hcHByb3ZhbC1zdGF0cy1yb3ctY291bnR7Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSwgI2VlZSk7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zO21pbi13aWR0aDoyMHB4O3RleHQtYWxpZ246cmlnaHR9LmFwcHJvdmFsLXN0YXRzLXJvdy10b3RhbHtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO3BhZGRpbmctdG9wOjRweDttYXJnaW4tdG9wOjJweDtjb2xvcjojMjJjNTVlfS5hcHByb3ZhbC1zdGF0cy1yb3ctdG90YWwgLmFwcHJvdmFsLXN0YXRzLXJvdy1jb3VudHtjb2xvcjojMjJjNTVlfS5xdWV1ZS1iYXJ7LS1xYi1iZzogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTQpOy0tcWItYmctc3Ryb25nOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4yMik7LS1xYi1ib3JkZXI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjI0KTstLXFiLXRleHQ6IHZhcigtLXRleHQtcHJpbWFyeSwgIzFmMWQxYSk7LS1xYi10ZXh0LW11dGVkOiB2YXIoLS10ZXh0LW11dGVkLCAjNmI2NTVjKTstLXFiLXNoYWRvdzogMCA0cHggMThweCByZ2JhKDAsIDAsIDAsIC4xKSwgMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgLjA2KTstLXFiLXNoYWRvdy1ob3ZlcjogMCA4cHggMjRweCByZ2JhKDAsIDAsIDAsIC4xNCksIDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIC4wNil9W2RhdGEtdGhlbWU9ZGFya10gLnF1ZXVlLWJhciwudGhlbWUtZGFyayAucXVldWUtYmFyey0tcWItYmc6IHJnYmEoNDAsIDM4LCAzNCwgLjYpOy0tcWItYmctc3Ryb25nOiByZ2JhKDYwLCA1NiwgNTAsIC43NCk7LS1xYi1ib3JkZXI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEyKX0uaW5wdXQtcGFuZWw+LnF1ZXVlLWJhci1ob3N0e3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjEwcHg7bGVmdDphdXRvO2JvdHRvbTpjYWxjKDEwMCUgKyA2cHgpO3otaW5kZXg6MzA7bWF4LXdpZHRoOm1pbig0NDBweCxjYWxjKDEwMCUgLSAyMHB4KSk7cG9pbnRlci1ldmVudHM6bm9uZX0ucXVldWUtYmFyLWhvc3RbaGlkZGVuXXtkaXNwbGF5Om5vbmV9LnF1ZXVlLWJhcntwb2ludGVyLWV2ZW50czpub25lO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1lbmQ7Z2FwOjVweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO2JveC1zaGFkb3c6bm9uZTtwYWRkaW5nOjA7bWFyZ2luOjB9QGtleWZyYW1lcyBxdWV1ZUJhckl0ZW1FbnRlcnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNnB4KSBzY2FsZSguOTYpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSgxKX19LnF1ZXVlLWJhci1oZWFke3BvaW50ZXItZXZlbnRzOmF1dG87ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjNweCA2cHggM3B4IDEwcHg7YmFja2dyb3VuZDp2YXIoLS1xYi1iZyk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMjBweCkgc2F0dXJhdGUoMTgwJSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigyMHB4KSBzYXR1cmF0ZSgxODAlKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLXFiLWJvcmRlcik7Ym9yZGVyLXJhZGl1czoxM3B4O2JveC1zaGFkb3c6dmFyKC0tcWItc2hhZG93KSxpbnNldCAwIDFweCAjZmZmMzthbmltYXRpb246cXVldWVCYXJJdGVtRW50ZXIgLjIycyBjdWJpYy1iZXppZXIoLjIsLjgsLjIsMSkgYm90aH0ucXVldWUtYmFyLWhlYWQtY291bnR7Zm9udC1zaXplOjEwLjVweDtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tcWItdGV4dC1tdXRlZCk7bGV0dGVyLXNwYWNpbmc6LjAyZW07dXNlci1zZWxlY3Q6bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXB9LnF1ZXVlLWJhci1jbGVhci1hbGx7Zm9udC1zaXplOjExcHg7cGFkZGluZzoycHggOXB4O2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4yKTtjb2xvcjp2YXIoLS1xYi10ZXh0LW11dGVkKTtib3JkZXItcmFkaXVzOjEwcHg7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMgZWFzZSxjb2xvciAuMTVzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZX0ucXVldWUtYmFyLWNsZWFyLWFsbDpob3ZlcntiYWNrZ3JvdW5kOiNkYzUwNDYxZjtib3JkZXItY29sb3I6I2RjNTA0NjU5O2NvbG9yOiNkODQ4M2N9LnF1ZXVlLWJhci1saXN0e2xpc3Qtc3R5bGU6bm9uZTttYXJnaW46MDtwYWRkaW5nOjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpmbGV4LWVuZDtnYXA6NXB4O3dpZHRoOjEwMCV9LnF1ZXVlLWJhci1pdGVte3BvaW50ZXItZXZlbnRzOmF1dG87ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtwYWRkaW5nOjRweCA2cHggNHB4IDVweDttYXgtd2lkdGg6MTAwJTtib3gtc2l6aW5nOmJvcmRlci1ib3g7YmFja2dyb3VuZDp2YXIoLS1xYi1iZyk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMjBweCkgc2F0dXJhdGUoMTgwJSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigyMHB4KSBzYXR1cmF0ZSgxODAlKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLXFiLWJvcmRlcik7Ym9yZGVyLXJhZGl1czoxNXB4O2JveC1zaGFkb3c6dmFyKC0tcWItc2hhZG93KSxpbnNldCAwIDFweCAjZmZmMztmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxLjM1O2NvbG9yOnZhcigtLXFiLXRleHQpO2N1cnNvcjpncmFiO3VzZXItc2VsZWN0Om5vbmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xOHMgZWFzZSx0cmFuc2Zvcm0gLjE4cyBlYXNlLGJveC1zaGFkb3cgLjE4cyBlYXNlO2FuaW1hdGlvbjpxdWV1ZUJhckl0ZW1FbnRlciAuMjJzIGN1YmljLWJlemllciguMiwuOCwuMiwxKSBib3RofS5xdWV1ZS1iYXItaXRlbTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLXFiLWJnLXN0cm9uZyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzp2YXIoLS1xYi1zaGFkb3ctaG92ZXIpLGluc2V0IDAgMXB4ICNmZmZmZmY0MH0ucXVldWUtYmFyLWl0ZW0uZHJhZ2dpbmd7Y3Vyc29yOmdyYWJiaW5nO3RyYW5zZm9ybTpzY2FsZSgxLjA0KTtib3gtc2hhZG93OjAgOHB4IDIycHggIzAwMDM7ei1pbmRleDo1MDtvcGFjaXR5Oi45NH0ucXVldWUtYmFyLWl0ZW0tc2xpZGluZ3t0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMTZzIGN1YmljLWJlemllciguMiwuNywuMiwxKX0ucXVldWUtYmFyLWl0ZW0taW5kZXh7ZmxleDowIDAgYXV0bzt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCwgI2M1NjUzZCk7Y29sb3I6dmFyKC0tdGV4dC1pbnZlcnNlLCAjZmZmKTtib3JkZXItcmFkaXVzOjUwJTtmb250LXNpemU6MTBweDtmb250LXdlaWdodDo3MDA7bGluZS1oZWlnaHQ6MX0ucXVldWUtYmFyLWl0ZW0tdGV4dHtmbGV4OjEgMSBhdXRvO21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtjb2xvcjp2YXIoLS1xYi10ZXh0KTtmb250LXdlaWdodDo1MDB9LnF1ZXVlLWJhci1pdGVtLXByb21vdGUsLnF1ZXVlLWJhci1pdGVtLWRlbGV0ZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDojZmZmZmZmMjk7Y29sb3I6dmFyKC0tcWItdGV4dCk7Ym9yZGVyLXJhZGl1czo1MCU7Y3Vyc29yOnBvaW50ZXI7ZmxleDowIDAgYXV0bzt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1cyBlYXNlLHRyYW5zZm9ybSAuMTVzIGVhc2UsY29sb3IgLjE1cyBlYXNlLGZpbHRlciAuMTVzIGVhc2U7cGFkZGluZzowfS5xdWV1ZS1iYXItaXRlbS1wcm9tb3Rle2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LCAjYzU2NTNkKTtjb2xvcjp2YXIoLS10ZXh0LWludmVyc2UsICNmZmYpfS5xdWV1ZS1iYXItaXRlbS1wcm9tb3RlOmhvdmVye2ZpbHRlcjpicmlnaHRuZXNzKDEuMDgpO3RyYW5zZm9ybTpzY2FsZSgxLjA2KX0ucXVldWUtYmFyLWl0ZW0tZGVsZXRlOmhvdmVye2JhY2tncm91bmQ6I2RjNTA0NjJlO2NvbG9yOiNkODQ4M2N9LnF1ZXVlLWJhci1pdGVtLWRlbGV0ZTphY3RpdmUsLnF1ZXVlLWJhci1pdGVtLXByb21vdGU6YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTQpfS5xdWV1ZS1iYXItaXRlbS1wcm9tb3RlIHN2ZywucXVldWUtYmFyLWl0ZW0tZGVsZXRlIHN2Z3tmbGV4LXNocmluazowfS5xdWV1ZS1iYXIucXVldWUtYmFyLWNhcGFjaXR5IC5xdWV1ZS1iYXItaXRlbXstLXFiLWJnOiByZ2JhKDIyMCwgMTIwLCA2MCwgLjIpOy0tcWItYmctc3Ryb25nOiByZ2JhKDIyMCwgMTIwLCA2MCwgLjI4KX0ucXVldWUtYmFyLnF1ZXVlLWJhci1pbmZsaWdodCAucXVldWUtYmFyLWl0ZW17Ym94LXNoYWRvdzp2YXIoLS1xYi1zaGFkb3cpLGluc2V0IDAgMXB4ICNmZmZmZmY0MCwwIDAgMCAxcHggI2M1NjUzZDJlfUBtZWRpYShtYXgtd2lkdGg6NTYwcHgpey5pbnB1dC1wYW5lbD4ucXVldWUtYmFyLWhvc3R7cmlnaHQ6OHB4O21heC13aWR0aDpjYWxjKDEwMCUgLSAxNnB4KX19LmlucHV0LWhpbnR7Zm9udC1zaXplOi41cmVtO2xpbmUtaGVpZ2h0OjEuMjtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt3aGl0ZS1zcGFjZTpub3dyYXA7dXNlci1zZWxlY3Q6bm9uZTtvcGFjaXR5Oi43O21heC13aWR0aDozOGNoO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5jb21wb3Nlci10b3Atcm93e3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDttaW4td2lkdGg6MH0uY29tcG9zZXItdG9wLXJvdzpoYXMoPi50b2RvLXByb2dyZXNzOm5vdCguaGlkZGVuKSksLmNvbXBvc2VyLXRvcC1yb3c6aGFzKD4uc3RydWN0dXJlZC1zdGF0dXMtYmFyKXttYXJnaW4tYm90dG9tOjZweH0udG9kby1wcm9ncmVzc3ttYXJnaW4tYm90dG9tOjZweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS50b2RvLXByb2dyZXNzLmhpZGRlbntkaXNwbGF5Om5vbmV9LmNvbXBvc2VyLXRvcC1yb3c+LnRvZG8tcHJvZ3Jlc3N7ZmxleDoxO21pbi13aWR0aDowO21hcmdpbi1ib3R0b206MH0udG9kby1wcm9ncmVzcy1oZWFkZXJ7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nOjRweCA4cHg7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZTtnYXA6OHB4O2JvcmRlci1yYWRpdXM6MTBweDt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udG9kby1wcm9ncmVzcy1oZWFkZXI6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMTR9LnRvZG8tcHJvZ3Jlc3MtbGVmdHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7bWluLXdpZHRoOjA7ZmxleC1zaHJpbms6MDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9LnRvZG8tcHJvZ3Jlc3MtcmluZ3twb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7bWluLXdpZHRoOjE2cHg7ZmxleC1zaHJpbms6MH0udG9kby1wcm9ncmVzcy1yaW5nIHN2Z3t3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3RyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKX0udG9kby1yaW5nLXRyYWNre3N0cm9rZTojYzU2NTNkMmV9LnRvZG8tcmluZy1maWxse3N0cm9rZTp2YXIoLS1hY2NlbnQpO3N0cm9rZS1kYXNoYXJyYXk6OTcuMzk7c3Ryb2tlLWRhc2hvZmZzZXQ6Y2FsYyg5Ny4zOSAqICgxIC0gdmFyKC0tcHJvZ3Jlc3MsIDApKSk7dHJhbnNpdGlvbjpzdHJva2UtZGFzaG9mZnNldCAuMzVzIGVhc2V9LnRvZG8tcHJvZ3Jlc3MtcmluZzphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjRweDtoZWlnaHQ6NHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtvcGFjaXR5Oi42O2FuaW1hdGlvbjpyaW5nUHVsc2UgMS40cyBlYXNlLWluLW91dCBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHJpbmdQdWxzZXswJSx0b3tvcGFjaXR5Oi4zNTt0cmFuc2Zvcm06c2NhbGUoLjg1KX01MCV7b3BhY2l0eTouOTU7dHJhbnNmb3JtOnNjYWxlKDEuMDUpfX0udG9kby1wcm9ncmVzcy1jb3VudGVye2ZvbnQtc2l6ZTouNzVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30udG9kby1wcm9ncmVzcy1maWxse3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtib3R0b206MDt3aWR0aDpjYWxjKHZhcigtLXByb2dyZXNzLCAwKSAqIDEwMCUpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCNjNTY1M2Q0NywjYzU2NTNkMWEpO2JvcmRlci1yYWRpdXM6MTBweCAwIDAgMTBweDt0cmFuc2l0aW9uOndpZHRoIC4zNXMgZWFzZTtwb2ludGVyLWV2ZW50czpub25lO3otaW5kZXg6MH0udG9kby1wcm9ncmVzcy1maWxsOmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjRweDtib3R0b206NHB4O3JpZ2h0Oi0xcHg7d2lkdGg6MnB4O2JhY2tncm91bmQ6I2M1NjUzZDk5O2JvcmRlci1yYWRpdXM6MXB4fS50b2RvLXByb2dyZXNzLXRhc2std3JhcHtmbGV4OjE7bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7Z2FwOjZweDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7cGFkZGluZy1sZWZ0OjhweH0udG9kby1wcm9ncmVzcy10YXNre2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZsZXg6MTttaW4td2lkdGg6MDt0ZXh0LWFsaWduOnJpZ2h0fS50b2RvLXByb2dyZXNzLWhlYWRlcjpoYXMoLnRvZG8tcHJvZ3Jlc3MtdGFzazpub3QoOmVtcHR5KSkgLnRvZG8tcHJvZ3Jlc3MtdGFza3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCwjZmZmMCwjZmZmZmZmOGMgMTIlIDg4JSwjZmZmMCk7cGFkZGluZzoxcHggNnB4O2JvcmRlci1yYWRpdXM6NnB4fS50b2RvLXByb2dyZXNzLWNoZXZyb257Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7ZmxleC1zaHJpbms6MDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgZWFzZTtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9LnRvZG8tcHJvZ3Jlc3MuZXhwYW5kZWQgLnRvZG8tcHJvZ3Jlc3MtY2hldnJvbnt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyl9LnRvZG8tcHJvZ3Jlc3MtYm9keXtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7cmlnaHQ6MDtib3R0b206Y2FsYygxMDAlICsgNnB4KTtiYWNrZ3JvdW5kOiNmZmZiZjZmYTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOjEycHg7cGFkZGluZzo4cHggMTBweDtib3gtc2hhZG93OjAgOHB4IDI0cHggIzAwMDAwMDE0LDAgMnB4IDZweCAjMDAwMDAwMGE7YmFja2Ryb3AtZmlsdGVyOmJsdXIoOHB4KTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDhweCk7bWF4LWhlaWdodDozMjBweDtvdmVyZmxvdy15OmF1dG87ei1pbmRleDozMDtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNnB4KTtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb246b3BhY2l0eSAuMThzIGVhc2UsdHJhbnNmb3JtIC4xOHMgZWFzZX0udG9kby1wcm9ncmVzcy1ib2R5LmhpZGRlbntkaXNwbGF5Om5vbmV9LnRvZG8tcHJvZ3Jlc3MtYm9keS5leHBhbmRlZHtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7cG9pbnRlci1ldmVudHM6YXV0b30udG9kby1wcm9ncmVzcy1saXN0e2xpc3Qtc3R5bGU6bm9uZTttYXJnaW46MDtwYWRkaW5nOjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MXB4fS50b2RvLXByb2dyZXNzLWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nOjZweCA4cHg7Ym9yZGVyLXJhZGl1czo4cHg7Zm9udC1zaXplOi44MTI1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtsaW5lLWhlaWdodDoxLjM1O3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS50b2RvLXByb2dyZXNzLWl0ZW0rLnRvZG8tcHJvZ3Jlc3MtaXRlbXtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjB9LnRvZG8tcHJvZ3Jlc3MtaXRlbTpmaXJzdC1jaGlsZHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjhweDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czo4cHh9LnRvZG8tcHJvZ3Jlc3MtaXRlbTpsYXN0LWNoaWxke2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6OHB4O2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjhweH0udG9kby1wcm9ncmVzcy1pdGVtLmFjdGl2ZXtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZvbnQtd2VpZ2h0OjUwMDtiYWNrZ3JvdW5kOiNjNTY1M2QxMn0udG9kby1wcm9ncmVzcy1pdGVtLmRvbmV7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7dGV4dC1kZWNvcmF0aW9uOmxpbmUtdGhyb3VnaDt0ZXh0LWRlY29yYXRpb24tY29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LnRvZG8tcHJvZ3Jlc3MtaXRlbT5zcGFuOmxhc3QtY2hpbGR7ZmxleDoxO21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0udG9kby1pdGVtLWljb257d2lkdGg6MTZweDttaW4td2lkdGg6MTZweDt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXNpemU6Ljc1cmVtO2ZsZXgtc2hyaW5rOjB9LnRvZG8taXRlbS1pY29uLnBlbmRpbmd7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LnRvZG8taXRlbS1pY29uLmFjdGl2ZXtjb2xvcjp2YXIoLS1hY2NlbnQpfS50b2RvLWl0ZW0taWNvbi5kb25le2NvbG9yOiM0YTdhNGZ9LmZvbGRlci1waWNrZXItY29udGFpbmVye21hcmdpbi1ib3R0b206OHB4fS5mb2xkZXItcGlja2VyLXF1aWNrLWJ0bntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHg7cGFkZGluZzo0cHggOHB4O2JhY2tncm91bmQ6I2ZmZjk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uZm9sZGVyLXBpY2tlci1xdWljay1idG46aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmZTY7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tYWNjZW50KX0uZm9sZGVyLWJyZWFkY3J1bWJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtmbGV4LXdyYXA6d3JhcDtnYXA6MnB4O3BhZGRpbmc6NHB4IDhweDtiYWNrZ3JvdW5kOiNmZmY2O2JvcmRlci1yYWRpdXM6NnB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO21hcmdpbi1ib3R0b206NHB4fS5mb2xkZXItcGlja2Vye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtwYWRkaW5nOjZweCA4cHg7YmFja2dyb3VuZDojZmZmZmZmODA7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSl9LmZvbGRlci1waWNrZXItaWNvbntmb250LXNpemU6MXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmbGV4LXNocmluazowfS5mb2xkZXItcGlja2VyLWlucHV0e2ZsZXg6MTtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44MTI1cmVtO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7b3V0bGluZTpub25lO3BhZGRpbmc6NHB4fS5mb2xkZXItcGlja2VyLWlucHV0OmZvY3Vze2JhY2tncm91bmQ6I2ZmZmM7Ym9yZGVyLXJhZGl1czo0cHh9LmZvbGRlci1waWNrZXItZHJvcGRvd257cG9zaXRpb246YWJzb2x1dGU7dG9wOjEwMCU7bGVmdDowO3JpZ2h0OjA7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1lbGV2YXRlZCk7ei1pbmRleDo1MDttYXgtaGVpZ2h0OjI0MHB4O292ZXJmbG93LXk6YXV0bzttYXJnaW4tdG9wOjRweH0uZm9sZGVyLXBpY2tlci1pdGVte2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjhweCAxMHB4O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZTouODEyNXJlbTt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uZm9sZGVyLXBpY2tlci1pdGVtOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpfS5mb2xkZXItcGlja2VyLWl0ZW0uYWN0aXZle2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKX0uZm9sZGVyLXBpY2tlci1pdGVtLWljb257Zm9udC1zaXplOi44NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LmZvbGRlci1waWNrZXItbG9hZGluZ3twYWRkaW5nOjhweCAxMHB4O3RleHQtYWxpZ246Y2VudGVyO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouNzVyZW19LmZvbGRlci1waWNrZXItZXJyb3J7cGFkZGluZzo4cHggMTBweDtjb2xvcjp2YXIoLS1kYW5nZXIpO2ZvbnQtc2l6ZTouNzVyZW07YmFja2dyb3VuZDp2YXIoLS1kYW5nZXItbXV0ZWQpO2JvcmRlci1yYWRpdXM6NHB4O21hcmdpbjo0cHggOHB4fS5mb2xkZXItcGlja2VyLWNvbnRhaW5lci5kcmFnLW92ZXJ7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKX0uZm9sZGVyLXBpY2tlci1jb250YWluZXIuZHJhZy1vdmVyIC5mb2xkZXItcGlja2Vye2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfS5mb2xkZXItcmVjZW50LXNlY3Rpb257cGFkZGluZzo0cHggOHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO21hcmdpbi1ib3R0b206NHB4fS5mb2xkZXItcmVjZW50LXRpdGxle2ZvbnQtc2l6ZTouNjg3NXJlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7bGV0dGVyLXNwYWNpbmc6LjA1ZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bWFyZ2luLWJvdHRvbTo0cHh9LmZvbGRlci1yZWNlbnQtaXRlbXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo2cHggOHB4O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZTouNzVyZW07Ym9yZGVyLXJhZGl1czo0cHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmZvbGRlci1yZWNlbnQtaXRlbTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KX0uZm9sZGVyLXJlY2VudC1pdGVtLXBhdGh7ZmxleDoxO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pfS5mb2xkZXItcGlja2VyLWlucHV0LmludmFsaWR7Ym9yZGVyLWNvbG9yOnZhcigtLWRhbmdlcik7YmFja2dyb3VuZDojYjI0ZjQ1MTR9LmZvbGRlci1waWNrZXItaW5wdXQuaW52YWxpZDpmb2N1c3tib3gtc2hhZG93OjAgMCAwIDJweCAjYjI0ZjQ1MzN9LmZvbGRlci1waWNrZXItdmFsaWRhdGlvbntmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tZGFuZ2VyKTtwYWRkaW5nOjJweCA0cHg7bWFyZ2luLXRvcDoycHg7ZGlzcGxheTpub25lfS5mb2xkZXItcGlja2VyLXZhbGlkYXRpb24udmlzaWJsZXtkaXNwbGF5OmJsb2NrfS5mb2xkZXItcGlja2VyLWNvbXBhY3R7cG9zaXRpb246c3RpY2t5O21hcmdpbi1ib3R0b206OHB4fS5mb2xkZXItcGlja2VyLWNvbXBhY3Qtcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtwYWRkaW5nOjZweCAxMHB4O2JhY2tncm91bmQ6I2ZmZmZmZjgwO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmZvbGRlci1waWNrZXItY29tcGFjdC1yb3c6Zm9jdXMtd2l0aGlue2JhY2tncm91bmQ6I2ZmZmM7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCl9LmZvbGRlci1waWNrZXItY29tcGFjdC1pY29ue2ZvbnQtc2l6ZTouODc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZsZXgtc2hyaW5rOjB9LmZvbGRlci1waWNrZXItY29tcGFjdC1pbnB1dHtmbGV4OjE7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO291dGxpbmU6bm9uZTtwYWRkaW5nOjJweCAwO21pbi13aWR0aDowfS5mb2xkZXItcGlja2VyLWNvbXBhY3QtaW5wdXQ6OnBsYWNlaG9sZGVye2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5mb2xkZXItcGlja2VyLXRvZ2dsZXtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOm5vbmU7cGFkZGluZzo0cHggNnB4O2ZvbnQtc2l6ZTouNjI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2N1cnNvcjpwb2ludGVyO2JvcmRlci1yYWRpdXM6NHB4O3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmZvbGRlci1waWNrZXItdG9nZ2xlOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uZm9sZGVyLXBpY2tlci1xdWljay1yb3d7ZGlzcGxheTpmbGV4O2dhcDo2cHg7cGFkZGluZzo2cHggOHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpfS5mb2xkZXItcGlja2VyLXF1aWNrLXJvdyAuZm9sZGVyLXBpY2tlci1xdWljay1idG57ZmxleDoxO3BhZGRpbmc6NHB4IDhweDtmb250LXNpemU6LjY4NzVyZW19LndvcmtpbmctZGlyLWluZGljYXRvcntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjEwcHg7Ym90dG9tOjVweDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O3BhZGRpbmc6MnB4IDZweDtiYWNrZ3JvdW5kOiNjNTY1M2QxNDtib3JkZXItcmFkaXVzOjRweDtmb250LXNpemU6LjY1cmVtO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTttYXgtd2lkdGg6MTgwcHg7ei1pbmRleDoyO3BvaW50ZXItZXZlbnRzOmF1dG99LndvcmtpbmctZGlyLWluZGljYXRvcjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Y29sb3I6dmFyKC0tYWNjZW50KX0ud29ya2luZy1kaXItaW5kaWNhdG9yLWljb257Zm9udC1zaXplOi43NXJlbTtmbGV4LXNocmluazowfS53b3JraW5nLWRpci1pbmRpY2F0b3ItcGF0aHtvdmVyZmxvdy14OmF1dG87b3ZlcmZsb3cteTpoaWRkZW47c2Nyb2xsYmFyLXdpZHRoOm5vbmV9LndvcmtpbmctZGlyLWluZGljYXRvci1wYXRoOjotd2Via2l0LXNjcm9sbGJhcntoZWlnaHQ6M3B4fS53b3JraW5nLWRpci1pbmRpY2F0b3ItcGF0aDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZDojOTY3NjU1NTI7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCl9LndvcmtpbmctZGlyLWluZGljYXRvcjpob3ZlciAud29ya2luZy1kaXItaW5kaWNhdG9yLXBhdGh7c2Nyb2xsYmFyLXdpZHRoOnRoaW59LndvcmtpbmctZGlyLWluZGljYXRvcjpob3ZlciAud29ya2luZy1kaXItaW5kaWNhdG9yLXBhdGg6Oi13ZWJraXQtc2Nyb2xsYmFye2hlaWdodDo0cHh9LmlucHV0LXRleHRhcmVhey0taW5wdXQtbWF4LWhlaWdodDogMTIwcHg7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjgxMjVyZW07YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3BhZGRpbmc6OXB4IDhweDtvdXRsaW5lOm5vbmU7cmVzaXplOm5vbmU7bWluLWhlaWdodDozNnB4O21heC1oZWlnaHQ6dmFyKC0taW5wdXQtbWF4LWhlaWdodCk7d2lkdGg6MTAwJTtkaXNwbGF5OmJsb2NrO292ZXJmbG93LXk6aGlkZGVuO292ZXJzY3JvbGwtYmVoYXZpb3I6Y29udGFpbjstd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaDt0cmFuc2l0aW9uOmhlaWdodCAuMTVzIGVhc2Utb3V0O2JveC1zaXppbmc6Ym9yZGVyLWJveDtsaW5lLWhlaWdodDoxLjQ7dG91Y2gtYWN0aW9uOnBhbi15O3Njcm9sbGJhci1ndXR0ZXI6c3RhYmxlfUBtZWRpYShwb2ludGVyOmNvYXJzZSl7LmlucHV0LXRleHRhcmVhey0taW5wdXQtbWF4LWhlaWdodDogbWluKDE2MHB4LCAzNWR2aCk7b3ZlcmZsb3cteTphdXRvfX1Ac3VwcG9ydHMgbm90IChoZWlnaHQ6IDFkdmgpe0BtZWRpYShwb2ludGVyOmNvYXJzZSl7LmlucHV0LXRleHRhcmVhey0taW5wdXQtbWF4LWhlaWdodDogbWluKDE2MHB4LCAzNXZoKX19fS5pbnB1dC10ZXh0YXJlYTpmb2N1c3tvdXRsaW5lOm5vbmV9LmlucHV0LXRleHRhcmVhOjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtmb250LWZhbWlseTp2YXIoLS1mb250LXNhbnMpO2ZvbnQtd2VpZ2h0OjUwMDtsZXR0ZXItc3BhY2luZzowO29wYWNpdHk6LjYyfS5pbnB1dC10ZXh0YXJlYS5pcy10ZXJtaW5hbC1wYXNzdGhyb3VnaHtvcGFjaXR5Oi43O2N1cnNvcjpkZWZhdWx0fS5pbnB1dC10ZXh0YXJlYS5pcy10ZXJtaW5hbC1wYXNzdGhyb3VnaDo6cGxhY2Vob2xkZXJ7Zm9udC1zdHlsZTppdGFsaWN9LmNvbXBvc2VyLXBpbGx7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjYyNXJlbTtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MTttaW4taGVpZ2h0OjIycHg7cGFkZGluZzoxcHggOHB4O2JvcmRlci1yYWRpdXM6MTBweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JhY2tncm91bmQ6I2Y2ZjFlOGIzO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Z2FwOjRweDt3aGl0ZS1zcGFjZTpub3dyYXA7Ym94LXNpemluZzpib3JkZXItYm94O3VzZXItc2VsZWN0Om5vbmV9LmNvbXBvc2VyLXBpbGw6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZC1jb2xvcjojZjZmMWU4fS5jb21wb3Nlci1waWxsOmZvY3VzLC5jb21wb3Nlci1waWxsOmZvY3VzLXZpc2libGV7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzowIDAgMCAycHggdmFyKC0tYWNjZW50LW11dGVkKTtvdXRsaW5lOm5vbmV9LmNvbXBvc2VyLXBpbGwuZGlzYWJsZWQsLmNvbXBvc2VyLXBpbGxbZGlzYWJsZWRde29wYWNpdHk6LjU1O2N1cnNvcjpub3QtYWxsb3dlZH0uY29tcG9zZXItcGlsbC1jaGlwe3BhZGRpbmc6MXB4IDhweDtmb250LXNpemU6LjYyNXJlbX0uY29tcG9zZXItcGlsbC1jaGlwLmFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCwgcmdiYSgxOTcsIDEwMSwgNjEsIC4xMikpO2NvbG9yOnZhcigtLWFjY2VudCk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCl9LmNvbXBvc2VyLXBpbGwtY2hpcC5hY3RpdmU6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMmV9LmNoYXQtbW9kZS1zZWxlY3R7bWF4LXdpZHRoOjc4cHh9LmJ0bi1jaXJjbGV7d2lkdGg6MjhweDtoZWlnaHQ6MjhweDttaW4td2lkdGg6MjhweDtib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6bm9uZTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7ZmxleC1zaHJpbms6MDtwYWRkaW5nOjB9LmJ0bi1jaXJjbGUtc2VuZHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsdmFyKC0tYWNjZW50KSAwJSwjYTg1MjJmIDEwMCUpO2NvbG9yOiNmZmY7Ym94LXNoYWRvdzowIDFweCA2cHggI2M1NjUzZDQwfS5idG4tY2lyY2xlLXNlbmQ6aG92ZXJ7dHJhbnNmb3JtOnNjYWxlKDEuMDgpO2JveC1zaGFkb3c6MCAzcHggMTBweCAjYzU2NTNkNTl9LmJ0bi1jaXJjbGUtc2VuZDphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NSl9LmJ0bi1jaXJjbGUtc3RvcHtiYWNrZ3JvdW5kOiNiMjRmNDUxZjtjb2xvcjp2YXIoLS1kYW5nZXIpfS5idG4tY2lyY2xlLXN0b3A6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1kYW5nZXIpO2NvbG9yOiNmZmY7dHJhbnNmb3JtOnNjYWxlKDEuMDgpfS5idG4tY2lyY2xlLXN0b3A6YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTUpfS5idG4tY2lyY2xlLXNlbmQucXVldWUtbW9kZXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2M1NjUzZDhjLCNhODUyMmY4Yyk7Ym94LXNoYWRvdzowIDFweCA0cHggI2M1NjUzZDI2fS5idG4tY2lyY2xlLXNlbmQucXVldWUtbW9kZTpob3ZlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsdmFyKC0tYWNjZW50KSAwJSwjYTg1MjJmIDEwMCUpO2JveC1zaGFkb3c6MCAzcHggMTBweCAjYzU2NTNkNTl9LnByb21wdC1vcHRpbWl6ZS1idG57cG9zaXRpb246YWJzb2x1dGU7dG9wOjVweDtyaWdodDo2cHg7d2lkdGg6MjhweDtoZWlnaHQ6MjhweDtib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTk3LDEwMSw2MSwuMjIpO3BhZGRpbmc6MDtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjZmZmYWYyZjIsI2U4YzVhZTU5KTtjb2xvcjp2YXIoLS1hY2NlbnQpO3otaW5kZXg6NDtib3gtc2hhZG93OjAgMXB4IDRweCAjYzU2NTNkMWE7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSx0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnByb21wdC1vcHRpbWl6ZS1idG46aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCNmZmZhZjIsI2U4YzVhZThjKTtjb2xvcjp2YXIoLS1hY2NlbnQtaG92ZXIpO3RyYW5zZm9ybTpzY2FsZSgxLjEyKTtib3JkZXItY29sb3I6I2M1NjUzZDU5O2JveC1zaGFkb3c6MCAycHggMTBweCAjYzU2NTNkMzgsMCAwIDAgM3B4ICNjNTY1M2QwZn0ucHJvbXB0LW9wdGltaXplLWJ0bjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45Mik7Ym94LXNoYWRvdzowIDFweCAzcHggI2M1NjUzZDI2fS5wcm9tcHQtb3B0aW1pemUtYnRuOmRpc2FibGVke2N1cnNvcjpub3QtYWxsb3dlZDtvcGFjaXR5Oi42fS5wcm9tcHQtb3B0aW1pemUtYnRuOmRpc2FibGVkOmhvdmVye3RyYW5zZm9ybTpub25lO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjZmZmYWYyZjIsI2U4YzVhZTU5KTtib3gtc2hhZG93OjAgMXB4IDRweCAjYzU2NTNkMWE7Ym9yZGVyLWNvbG9yOiNjNTY1M2QzOH0ucHJvbXB0LW9wdGltaXplLWljb257dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI1cyBlYXNlLG9wYWNpdHkgLjJzIGVhc2U7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgxOTcsMTAxLDYxLC4zKSl9LnByb21wdC1vcHRpbWl6ZS1idG46aG92ZXIgLnByb21wdC1vcHRpbWl6ZS1pY29ue2FuaW1hdGlvbjpwcm9tcHQtb3B0aW1pemUtdHdpbmtsZSAxLjRzIGVhc2UtaW4tb3V0IGluZmluaXRlO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgM3B4IHJnYmEoMTk3LDEwMSw2MSwuNCkpfUBrZXlmcmFtZXMgcHJvbXB0LW9wdGltaXplLXR3aW5rbGV7MCUsdG97dHJhbnNmb3JtOnJvdGF0ZSgwKSBzY2FsZSgxKX01MCV7dHJhbnNmb3JtOnJvdGF0ZSgxMmRlZykgc2NhbGUoMS4xMil9fS5wcm9tcHQtb3B0aW1pemUtc3Bpbm5lcntwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2JvcmRlci1yYWRpdXM6NTAlO3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowO2JhY2tncm91bmQ6Y29uaWMtZ3JhZGllbnQoZnJvbSAwZGVnLHRyYW5zcGFyZW50IDBkZWcsdmFyKC0tYWNjZW50KSAyNzBkZWcsdHJhbnNwYXJlbnQgMzYwZGVnKTttYXNrOnJhZGlhbC1ncmFkaWVudChjaXJjbGUsdHJhbnNwYXJlbnQgMTBweCxibGFjayAxMXB4KTstd2Via2l0LW1hc2s6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSx0cmFuc3BhcmVudCAxMHB4LGJsYWNrIDExcHgpO3RyYW5zaXRpb246b3BhY2l0eSAuMTVzIGVhc2V9LnByb21wdC1vcHRpbWl6ZS1idG4uaXMtbG9hZGluZ3tjb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjZmZmYWYyLCNlOGM1YWU4MCk7Ym9yZGVyLWNvbG9yOiNjNTY1M2Q2Njtib3gtc2hhZG93OjAgMnB4IDEycHggI2M1NjUzZDQwLDAgMCAwIDNweCAjYzU2NTNkMTR9LnByb21wdC1vcHRpbWl6ZS1idG4uaXMtbG9hZGluZyAucHJvbXB0LW9wdGltaXplLWljb257YW5pbWF0aW9uOnByb21wdC1vcHRpbWl6ZS1wdWxzZSAxLjFzIGVhc2UtaW4tb3V0IGluZmluaXRlfS5wcm9tcHQtb3B0aW1pemUtYnRuLmlzLWxvYWRpbmcgLnByb21wdC1vcHRpbWl6ZS1zcGlubmVye29wYWNpdHk6MTthbmltYXRpb246cHJvbXB0LW9wdGltaXplLXNwaW4gLjlzIGxpbmVhciBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHByb21wdC1vcHRpbWl6ZS1zcGlue3Rve3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKX19QGtleWZyYW1lcyBwcm9tcHQtb3B0aW1pemUtcHVsc2V7MCUsdG97dHJhbnNmb3JtOnNjYWxlKC44OCk7b3BhY2l0eTouOH01MCV7dHJhbnNmb3JtOnNjYWxlKDEuMTUpO29wYWNpdHk6MX19LmlucHV0LWNvbXBvc2VyLmlzLW9wdGltaXppbmd7Ym9yZGVyLWNvbG9yOiNjNTY1M2Q2Yjtib3gtc2hhZG93OjAgMCAwIDJweCAjYzU2NTNkMWEsMCAwIDE4cHggI2M1NjUzZDI0fS5pbnB1dC1jb21wb3Nlci5pcy1vcHRpbWl6aW5nIC5jb21wb3Nlci1pbnB1dC13cmFwOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMDBkZWcsdHJhbnNwYXJlbnQgMCUsdHJhbnNwYXJlbnQgMzglLHJnYmEoMjE0LDEyMyw4MiwuMTYpIDUwJSx0cmFuc3BhcmVudCA2MiUsdHJhbnNwYXJlbnQgMTAwJSk7YmFja2dyb3VuZC1zaXplOjIyMCUgMTAwJTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbjoyMjAlIDA7YW5pbWF0aW9uOnByb21wdC1vcHRpbWl6ZS1mbG93IDEuNnMgbGluZWFyIGluZmluaXRlO3otaW5kZXg6MH1Aa2V5ZnJhbWVzIHByb21wdC1vcHRpbWl6ZS1mbG93ezAle2JhY2tncm91bmQtcG9zaXRpb246MjIwJSAwfXRve2JhY2tncm91bmQtcG9zaXRpb246LTEyMCUgMH19LnByb21wdC1vcHRpbWl6ZS1idG4uaXMtc2hha2V7YW5pbWF0aW9uOnByb21wdC1vcHRpbWl6ZS1zaGFrZSAuNHMgZWFzZS1vdXQ7Y29sb3I6dmFyKC0tZGFuZ2VyKX1Aa2V5ZnJhbWVzIHByb21wdC1vcHRpbWl6ZS1zaGFrZXswJSx0b3t0cmFuc2Zvcm06dHJhbnNsYXRlKDApfTIwJXt0cmFuc2Zvcm06dHJhbnNsYXRlKC0zcHgpfTQwJXt0cmFuc2Zvcm06dHJhbnNsYXRlKDNweCl9NjAle3RyYW5zZm9ybTp0cmFuc2xhdGUoLTJweCl9ODAle3RyYW5zZm9ybTp0cmFuc2xhdGUoMnB4KX19QG1lZGlhKG1heC13aWR0aDo3MjBweCl7LnByb21wdC1vcHRpbWl6ZS1idG57d2lkdGg6MjZweDtoZWlnaHQ6MjZweH0ucHJvbXB0LW9wdGltaXplLWljb257d2lkdGg6MTRweDtoZWlnaHQ6MTRweH19LmJ0bi1jaXJjbGUtYWN0aW9ue2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7d2lkdGg6MzJweDtoZWlnaHQ6MzJweDttaW4td2lkdGg6MzJweDtib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6bm9uZTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7ZmxleC1zaHJpbms6MDtwYWRkaW5nOjB9LmJ0bi1jaXJjbGUtYWN0aW9uOmhvdmVye2JhY2tncm91bmQ6I2M1NjUzZDFhO2NvbG9yOnZhcigtLWFjY2VudCk7dHJhbnNmb3JtOnNjYWxlKDEuMDgpfS5idG4tY2lyY2xlLWFjdGlvbjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NCl9LmJ0bi1jaXJjbGUtYWN0aW9uLmFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCwgcmdiYSgxOTcsIDEwMSwgNjEsIC4xNCkpO2NvbG9yOnZhcigtLWFjY2VudCl9LmJ0bi1jaXJjbGUtYWN0aW9uLmFjdGl2ZTpob3ZlcntiYWNrZ3JvdW5kOiNjNTY1M2QzOH0uY2hhdC1tb2RlLXRyaW97ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtmbGV4LXdyYXA6d3JhcH0uY2hhdC1tb2RlLXRyaW8tcGlsbHtwb3NpdGlvbjpyZWxhdGl2ZTtjdXJzb3I6cG9pbnRlcjt1c2VyLXNlbGVjdDpub25lfS5jaGF0LW1vZGUtdHJpby10YWd7Zm9udC1zaXplOi42MjVyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnksICNiNWE4OWEpO2xldHRlci1zcGFjaW5nOi4wNGVtO21hcmdpbi1yaWdodDo0cHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO29wYWNpdHk6Ljc1fS5lbXB0eS1zdGF0ZS10cmlvLXdyYXB7bWFyZ2luLXRvcDoxNHB4O2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7YW5pbWF0aW9uOmVtcHR5U3RhdGVUcmlvRmFkZUluIC40cyBlYXNlLW91dH0uZW1wdHktc3RhdGUtdHJpby1oaW50e2ZvbnQtc2l6ZTouNzJyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGV0dGVyLXNwYWNpbmc6LjAyZW19LmNoYXQtbW9kZS10cmlvLWRyb3Bkb3due2dhcDo0cHg7cGFkZGluZzo2cHggMTJweDtiYWNrZ3JvdW5kOiNmNmYxZTg5OTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6MTJweDtib3gtc2hhZG93OjAgMXB4IDNweCAjMDAwMDAwMGF9LmNoYXQtbW9kZS10cmlvLWRyb3Bkb3duIC5jaGF0LW1vZGUtdHJpby1waWxse2ZvbnQtc2l6ZTouNzhyZW07cGFkZGluZzozcHggNnB4O2JvcmRlci1yYWRpdXM6OHB4O3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5jaGF0LW1vZGUtdHJpby1kcm9wZG93biAuY2hhdC1tb2RlLXRyaW8tcGlsbDpob3ZlcntiYWNrZ3JvdW5kOiNjNTY1M2QwZn0uY2hhdC1tb2RlLXRyaW8tZHJvcGRvd24gLmNoYXQtbW9kZS10cmlvLXBpbGw6Zm9jdXMtd2l0aGlue2JhY2tncm91bmQ6I2M1NjUzZDE0fS5jaGF0LW1vZGUtdHJpby1kcm9wZG93biAuY29tcG9zZXItdGV4dC1sYWJlbHtmb250LXNpemU6LjhyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bWF4LXdpZHRoOjE0MHB4fUBrZXlmcmFtZXMgZW1wdHlTdGF0ZVRyaW9GYWRlSW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDRweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfX0uY2hhdC1tZXNzYWdlLWF2YXRhci51c2VyIC5jaGF0LW1vZGUtdHJpby1jb21wYWN0e21hcmdpbi1yaWdodDo0cHg7Z2FwOjNweDtvcGFjaXR5Oi41NTt0cmFuc2l0aW9uOm9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uY2hhdC1tZXNzYWdlLWF2YXRhci51c2VyOmhvdmVyIC5jaGF0LW1vZGUtdHJpby1jb21wYWN0LC5jaGF0LW1lc3NhZ2UtYXZhdGFyLnVzZXIgLmNoYXQtbW9kZS10cmlvLWNvbXBhY3Q6Zm9jdXMtd2l0aGluLC5jaGF0LW1lc3NhZ2UtYXZhdGFyLnVzZXIgLmNoYXQtbW9kZS10cmlvLWNvbXBhY3Q6aG92ZXJ7b3BhY2l0eToxfS5jaGF0LW1vZGUtdHJpby1jb21wYWN0IC5jaGF0LW1vZGUtdHJpby1waWxse2ZvbnQtc2l6ZTouNjg3NXJlbTtwYWRkaW5nOjJweCA2cHg7Ym9yZGVyLXJhZGl1czoxMHB4O2JhY2tncm91bmQ6I2Y2ZjFlODhjO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7bGluZS1oZWlnaHQ6MX0uY2hhdC1tb2RlLXRyaW8tY29tcGFjdCAuY2hhdC1tb2RlLXRyaW8tcGlsbDpob3ZlcntiYWNrZ3JvdW5kOiNjNTY1M2QxYTtjb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfS5jaGF0LW1vZGUtdHJpby1jb21wYWN0IC5jb21wb3Nlci10ZXh0LWxhYmVse2ZvbnQtc2l6ZTouNjg3NXJlbTttYXgtd2lkdGg6ODhweDtsZXR0ZXItc3BhY2luZzouMDFlbX0uY2hhdC1tb2RlLXRyaW8tY29tcGFjdCAuY29tcG9zZXItdGV4dC1zZXB7ZGlzcGxheTpub25lfUBtZWRpYShtYXgtd2lkdGg6NzIwcHgpey5jaGF0LW1vZGUtdHJpby1kcm9wZG93bntwYWRkaW5nOjZweCAxMHB4O2dhcDoycHh9LmNoYXQtbW9kZS10cmlvLWRyb3Bkb3duIC5jb21wb3Nlci10ZXh0LWxhYmVse21heC13aWR0aDoxMDBweH0uY2hhdC1tb2RlLXRyaW8tY29tcGFjdCAuY2hhdC1tb2RlLXRyaW8tcGlsbHtmb250LXNpemU6LjYyNXJlbTtwYWRkaW5nOjJweCA1cHh9LmNoYXQtbW9kZS10cmlvLWNvbXBhY3QgLmNvbXBvc2VyLXRleHQtbGFiZWx7bWF4LXdpZHRoOjY0cHh9fS5jb21wb3Nlci1wbHVzLXBvcG92ZXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDoxNHB4O2JvdHRvbTpjYWxjKHZhcigtLXNhZmUtYm90dG9tLCAwcHgpICsgNTZweCk7ei1pbmRleDoyODttaW4td2lkdGg6MjQwcHg7bWF4LXdpZHRoOmNhbGMoMTAwJSAtIDI4cHgpO2JhY2tncm91bmQ6I2ZmZmZmZmZhO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JvcmRlci1yYWRpdXM6MTZweDtib3gtc2hhZG93OjAgMTJweCAyOHB4ICMwMDAwMDAyZSwwIDJweCA2cHggIzAwMDAwMDE0O3BhZGRpbmc6NnB4O2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweDthbmltYXRpb246cGx1c1BvcG92ZXJJbiAuMThzIGVhc2Utb3V0O3RyYW5zZm9ybS1vcmlnaW46MTZweCBjYWxjKDEwMCUgKyA4cHgpfS5jb21wb3Nlci1wbHVzLXBvcG92ZXIuaGlkZGVue2Rpc3BsYXk6bm9uZX1Aa2V5ZnJhbWVzIHBsdXNQb3BvdmVySW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDZweCkgc2NhbGUoLjk2KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoMSl9fS5wbHVzLXBvcG92ZXItaXRlbXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O3BhZGRpbmc6OHB4IDEwcHg7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjEwcHg7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LXNpemU6LjgycmVtO2ZvbnQtZmFtaWx5OmluaGVyaXQ7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTt0ZXh0LWFsaWduOmxlZnQ7d2lkdGg6MTAwJX0ucGx1cy1wb3BvdmVyLWl0ZW06aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMTR9LnBsdXMtcG9wb3Zlci1pdGVtOmFjdGl2ZXtiYWNrZ3JvdW5kOiNjNTY1M2QyNH0ucGx1cy1wb3BvdmVyLWljb257Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZsZXgtc2hyaW5rOjB9LnBsdXMtcG9wb3Zlci1sYWJlbHtmbGV4OjE7bGluZS1oZWlnaHQ6MS4yfS5wbHVzLXBvcG92ZXItdG9nZ2xlLXN0YXRle2ZvbnQtc2l6ZTouNjhyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7cGFkZGluZzoycHggOHB4O2JvcmRlci1yYWRpdXM6OHB4O2JhY2tncm91bmQ6IzAwMDAwMDBkO2xpbmUtaGVpZ2h0OjEuMjtsZXR0ZXItc3BhY2luZzouMDJlbX0ucGx1cy1wb3BvdmVyLWl0ZW0uaXMtb24sLnBsdXMtcG9wb3Zlci1pdGVtLmlzLW9uIC5wbHVzLXBvcG92ZXItaWNvbntjb2xvcjp2YXIoLS1hY2NlbnQpfS5wbHVzLXBvcG92ZXItaXRlbS5pcy1vbiAucGx1cy1wb3BvdmVyLXRvZ2dsZS1zdGF0ZXtjb2xvcjojZmZmO2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KX0ucGx1cy1wb3BvdmVyLXNlcHtoZWlnaHQ6MXB4O21hcmdpbjo0cHggNnB4O2JhY2tncm91bmQ6dmFyKC0tYm9yZGVyLXN1YnRsZSl9LnBsdXMtcG9wb3Zlci10cmlvLXdyYXB7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MnB4fS5jaGF0LW1vZGUtdHJpby1wb3BvdmVye2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6c3RyZXRjaDtnYXA6MnB4fS5jaGF0LW1vZGUtdHJpby1wb3BvdmVyIC5jb21wb3Nlci10ZXh0LXNlcHtkaXNwbGF5Om5vbmV9LmNoYXQtbW9kZS10cmlvLXBvcG92ZXIgLmNoYXQtbW9kZS10cmlvLXBpbGx7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3BhZGRpbmc6N3B4IDEwcHg7Ym9yZGVyLXJhZGl1czoxMHB4O2ZvbnQtc2l6ZTouODJyZW07bWF4LXdpZHRoOm5vbmU7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uY2hhdC1tb2RlLXRyaW8tcG9wb3ZlciAuY2hhdC1tb2RlLXRyaW8tcGlsbDpob3ZlciwuY2hhdC1tb2RlLXRyaW8tcG9wb3ZlciAuY2hhdC1tb2RlLXRyaW8tcGlsbDpmb2N1cy13aXRoaW57YmFja2dyb3VuZDojYzU2NTNkMTQ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uY2hhdC1tb2RlLXRyaW8tcG9wb3ZlciAuY2hhdC1tb2RlLXRyaW8tdGFne2ZvbnQtc2l6ZTouNzJyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtsZXR0ZXItc3BhY2luZzowO3RleHQtdHJhbnNmb3JtOm5vbmU7b3BhY2l0eToxO21hcmdpbi1yaWdodDowO2ZsZXgtc2hyaW5rOjA7d2lkdGg6MzZweH0uY2hhdC1tb2RlLXRyaW8tcG9wb3ZlciAuY29tcG9zZXItdGV4dC1sYWJlbHtmbGV4OjE7Zm9udC1zaXplOi44MnJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3RleHQtYWxpZ246cmlnaHQ7bWF4LXdpZHRoOjEwMCU7Zm9udC13ZWlnaHQ6NTAwfUBtZWRpYShtYXgtd2lkdGg6NzIwcHgpey5jb21wb3Nlci1wbHVzLXBvcG92ZXJ7bWluLXdpZHRoOjIyMHB4O2xlZnQ6MTBweDtib3R0b206Y2FsYyh2YXIoLS1zYWZlLWJvdHRvbSwgMHB4KSArIDYwcHgpfX0ucHJvbXB0LW9wdGltaXplLWJ0bntkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6YXV0byA0cHggNHB4IGF1dG87dHJhbnNmb3JtOm5vbmU7d2lkdGg6MjZweDtoZWlnaHQ6MjZweDt6LWluZGV4OjR9LmlucHV0LWNvbXBvc2VyLmhhcy10ZXh0IC5wcm9tcHQtb3B0aW1pemUtYnRue2Rpc3BsYXk6aW5saW5lLWZsZXh9LmlucHV0LWNvbXBvc2VyLmhhcy10ZXh0IC5wcm9tcHQtb3B0aW1pemUtYnRuOmhvdmVye3RyYW5zZm9ybTpzY2FsZSgxLjEyKX0uaW5wdXQtY29tcG9zZXIuaGFzLXRleHQgLnByb21wdC1vcHRpbWl6ZS1idG46YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTIpfS5pbnB1dC1jb21wb3Nlci5oYXMtdGV4dCAuaW5wdXQtdGV4dGFyZWF7cGFkZGluZy1yaWdodDozNnB4fS52b2ljZS1pbnB1dC1tb2Rle3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6MCA0cHh9LnZvaWNlLWlucHV0LW1vZGUuaGlkZGVue2Rpc3BsYXk6bm9uZX0udm9pY2UtcmVjb3JkLWJ0bntmbGV4OjEgMSBhdXRvO21pbi13aWR0aDowO2hlaWdodDozMHB4O2JvcmRlci1yYWRpdXM6OTk5cHg7Ym9yZGVyOjFweCBkYXNoZWQgdmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JhY2tncm91bmQ6I2Y2ZjFlODgwO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LWZhbWlseTp2YXIoLS1mb250LXNhbnMpO2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo1MDA7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6OHB4O3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7dXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7dG91Y2gtYWN0aW9uOm1hbmlwdWxhdGlvbn0udm9pY2UtcmVjb3JkLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiNmNmYxZThlNjtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtjb2xvcjp2YXIoLS1hY2NlbnQpfS52b2ljZS1yZWNvcmQtYnRuOmFjdGl2ZSwudm9pY2UtcmVjb3JkLWJ0bi5pcy1yZWNvcmRpbmd7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQsIHJnYmEoMTk3LCAxMDEsIDYxLCAuMTQpKTtjb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlci1zdHlsZTpzb2xpZH0udm9pY2UtcmVjb3JkLXB1bHNle3dpZHRoOjhweDtoZWlnaHQ6OHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6Y3VycmVudENvbG9yO29wYWNpdHk6LjU1fS52b2ljZS1yZWNvcmQtYnRuLmlzLXJlY29yZGluZyAudm9pY2UtcmVjb3JkLXB1bHNle29wYWNpdHk6MTthbmltYXRpb246dm9pY2UtcHVsc2UgMS4xcyBlYXNlLWluLW91dCBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHZvaWNlLXB1bHNlezAlLHRve3RyYW5zZm9ybTpzY2FsZSgxKTtvcGFjaXR5OjF9NTAle3RyYW5zZm9ybTpzY2FsZSgxLjQ1KTtvcGFjaXR5Oi40NX19LnZvaWNlLWNhbmNlbC1idG57d2lkdGg6MjZweDtoZWlnaHQ6MjZweDtib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ZmxleC1zaHJpbms6MDt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS52b2ljZS1jYW5jZWwtYnRuOmhvdmVye2JhY2tncm91bmQ6I2IyNGY0NTFhO2NvbG9yOnZhcigtLWRhbmdlcil9LmlucHV0LWNvbXBvc2VyLnZvaWNlLW1vZGUgLmlucHV0LXRleHRhcmVhe3Zpc2liaWxpdHk6aGlkZGVufS5pbnB1dC1jb21wb3Nlci52b2ljZS1tb2RlIC5wcm9tcHQtb3B0aW1pemUtYnRue2Rpc3BsYXk6bm9uZX0uaW5wdXQtY29tcG9zZXIudm9pY2UtbW9kZSAudm9pY2UtaW5wdXQtbW9kZXtkaXNwbGF5OmZsZXh9I3ZvaWNlLWJ0bntkaXNwbGF5Om5vbmV9LmlucHV0LWNvbXBvc2VyLnZvaWNlLW1vZGUgI3ZvaWNlLWJ0bntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCwgcmdiYSgxOTcsIDEwMSwgNjEsIC4xOCkpO2NvbG9yOnZhcigtLWFjY2VudCl9LnZvaWNlLXRyYW5zY3JpcHQtYnViYmxle3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MTJweDtyaWdodDoxMnB4O2JvdHRvbTpjYWxjKDEwMCUgKyA4cHgpO3otaW5kZXg6NDA7cGFkZGluZzoxMnB4IDE2cHggMTBweDtib3JkZXItcmFkaXVzOjE2cHg7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQsICNjNTY1M2QpO2NvbG9yOiNmZmY7Ym94LXNoYWRvdzowIDZweCAyNHB4ICMwMDAwMDAyZTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo4cHg7cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbSBjZW50ZXI7YW5pbWF0aW9uOnZvaWNlLWJ1YmJsZS1pbiAuMThzIGVhc2V9LnZvaWNlLXRyYW5zY3JpcHQtYnViYmxlLmhpZGRlbntkaXNwbGF5Om5vbmV9QGtleWZyYW1lcyB2b2ljZS1idWJibGUtaW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDhweCkgc2NhbGUoLjk2KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoMSl9fS52b2ljZS10cmFuc2NyaXB0LXRleHR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6Ljk1cmVtO2xpbmUtaGVpZ2h0OjEuNTtmb250LXdlaWdodDo1MDA7d29yZC1icmVhazpicmVhay13b3JkO3doaXRlLXNwYWNlOnByZS13cmFwO21pbi1oZWlnaHQ6MS40ZW07Y29sb3I6I2ZmZn0udm9pY2UtdHJhbnNjcmlwdC1idWJibGU6bm90KC5oYXMtdGV4dCkgLnZvaWNlLXRyYW5zY3JpcHQtdGV4dDpiZWZvcmV7Y29udGVudDoiXDhiZjdcNWYwMFw1OWNiXDhiZjRcOGJkZFwyMDI2IjtvcGFjaXR5Oi42fS52b2ljZS10cmFuc2NyaXB0LWhpbnR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O2ZvbnQtc2l6ZTouNzJyZW07b3BhY2l0eTouODV9LnZvaWNlLXRyYW5zY3JpcHQtc3RhdHVze2xldHRlci1zcGFjaW5nOi4wMmVtfS52b2ljZS13YXZle2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6ZmxleC1lbmQ7Z2FwOjJweDtoZWlnaHQ6MTJweH0udm9pY2Utd2F2ZT5pe3dpZHRoOjIuNXB4O2JvcmRlci1yYWRpdXM6MnB4O2JhY2tncm91bmQ6Y3VycmVudENvbG9yO2FuaW1hdGlvbjp2b2ljZS13YXZlLWJvdW5jZSAuOXMgZWFzZS1pbi1vdXQgaW5maW5pdGV9LnZvaWNlLXdhdmU+aTpudGgtY2hpbGQoMSl7aGVpZ2h0OjVweDthbmltYXRpb24tZGVsYXk6MHN9LnZvaWNlLXdhdmU+aTpudGgtY2hpbGQoMil7aGVpZ2h0OjEycHg7YW5pbWF0aW9uLWRlbGF5Oi4xNXN9LnZvaWNlLXdhdmU+aTpudGgtY2hpbGQoMyl7aGVpZ2h0OjhweDthbmltYXRpb24tZGVsYXk6LjNzfS52b2ljZS13YXZlPmk6bnRoLWNoaWxkKDQpe2hlaWdodDoxMXB4O2FuaW1hdGlvbi1kZWxheTouNDVzfUBrZXlmcmFtZXMgdm9pY2Utd2F2ZS1ib3VuY2V7MCUsdG97dHJhbnNmb3JtOnNjYWxlWSguNCk7b3BhY2l0eTouNn01MCV7dHJhbnNmb3JtOnNjYWxlWSgxKTtvcGFjaXR5OjF9fS52b2ljZS1idWJibGUtYXJyb3d7cG9zaXRpb246YWJzb2x1dGU7dG9wOjEwMCU7bGVmdDoyOHB4O3dpZHRoOjA7aGVpZ2h0OjA7Ym9yZGVyLWxlZnQ6N3B4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yaWdodDo3cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXRvcDo4cHggc29saWQgdmFyKC0tYWNjZW50LCAjYzU2NTNkKX0udm9pY2UtdHJhbnNjcmlwdC1idWJibGUuaXMtY2FuY2VsaW5ne2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLCAjYjI0ZjQ1KX0udm9pY2UtdHJhbnNjcmlwdC1idWJibGUuaXMtY2FuY2VsaW5nIC52b2ljZS1idWJibGUtYXJyb3d7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1kYW5nZXIsICNiMjRmNDUpfUBtZWRpYShtYXgtd2lkdGg6NzIwcHgpey5idG4tY2lyY2xlLWFjdGlvbnt3aWR0aDozMHB4O2hlaWdodDozMHB4O21pbi13aWR0aDozMHB4fS5jb21wb3Nlci1tYWluLXJvd3twYWRkaW5nOjNweCA0cHg7bWluLWhlaWdodDo0MnB4O2dhcDoycHh9fS5hdHRhY2htZW50LXByZXZpZXd7ZGlzcGxheTpmbGV4O2dhcDo2cHg7cGFkZGluZzo2cHggMTBweDtmbGV4LXdyYXA6d3JhcDtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKX0uYXR0YWNobWVudC1wcmV2aWV3LmhpZGRlbntkaXNwbGF5Om5vbmV9LmF0dGFjaG1lbnQtcGlsbHtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O3BhZGRpbmc6M3B4IDhweDtiYWNrZ3JvdW5kOiNjNTY1M2QwZjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTk3LDEwMSw2MSwuMTgpO2JvcmRlci1yYWRpdXM6OHB4O2ZvbnQtc2l6ZTouNzJyZW07bWF4LXdpZHRoOjIwMHB4O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTthbmltYXRpb246cGVybWlzc2lvbi1mYWRlLWluIC4ycyBlYXNlLW91dH0uYXR0YWNobWVudC1waWxsIGltZ3t3aWR0aDoyOHB4O2hlaWdodDoyOHB4O29iamVjdC1maXQ6Y292ZXI7Ym9yZGVyLXJhZGl1czo0cHg7ZmxleC1zaHJpbms6MH0uYXR0YWNobWVudC1waWxsIC5hdHQtaWNvbnt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2ZsZXgtc2hyaW5rOjA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZTouODVyZW19LmF0dGFjaG1lbnQtcGlsbCAuYXR0LW5hbWV7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZsZXg6MTttaW4td2lkdGg6MH0uYXR0YWNobWVudC1waWxsIC5hdHQtc2l6ZXtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6LjY1cmVtO2ZsZXgtc2hyaW5rOjB9LmF0dGFjaG1lbnQtcGlsbCAuYXR0LXJlbW92ZXtjdXJzb3I6cG9pbnRlcjtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6LjhyZW07bGluZS1oZWlnaHQ6MTtwYWRkaW5nOjAgMnB4O2ZsZXgtc2hyaW5rOjA7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDpub25lfS5hdHRhY2htZW50LXBpbGwgLmF0dC1yZW1vdmU6aG92ZXJ7Y29sb3I6dmFyKC0tZGFuZ2VyKX0uaW5wdXQtY29tcG9zZXIuZHJhZy1vdmVye2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpIWltcG9ydGFudDtiYWNrZ3JvdW5kOiNjNTY1M2QwYSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzowIDAgMCAycHggdmFyKC0tYWNjZW50LW11dGVkKSxpbnNldCAwIDAgMjBweCAjYzU2NTNkMDh9LmZvbGRlci1waWNrZXItbW9kYWx7bWF4LXdpZHRoOjQ4MHB4fS5mb2xkZXItcGlja2VyLW1vZGFsIC5tb2RhbC1ib2R5e3BhZGRpbmc6MTZweH0ubG9naW4tY29udGFpbmVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjttaW4taGVpZ2h0OjEwMHZoO21pbi1oZWlnaHQ6MTAwZHZoO3BhZGRpbmc6MjRweH0ubG9naW4tY2FyZHt3aWR0aDoxMDAlO21heC13aWR0aDozODBweDtiYWNrZ3JvdW5kOiNmZmZiZjVlYjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTUwLDExOCw4NSwuMTYpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWxnKTtvdmVyZmxvdzpoaWRkZW47Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctc29mdCl9LmxvZ2luLWhlYWRlcntwYWRkaW5nOjI4cHggMjRweCAyMnB4O3RleHQtYWxpZ246Y2VudGVyO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCB0b3AscmdiYSgyMTQsMTQ0LDEwMCwuMjYpLHRyYW5zcGFyZW50IDQ1JSksbGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmNmViZDksI2ZmZmJmNWQ5KX0uYm9vdC1sb2FkaW5ne21pbi1oZWlnaHQ6MTAwdmg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MjRweH0uYm9vdC1sb2FkaW5nLWNhcmR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTJweDtwYWRkaW5nOjE2cHggMThweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6MTZweDtiYWNrZ3JvdW5kOnZhcigtLXN1cmZhY2UtZWxldmF0ZWQpO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXNtKTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LmJvb3QtbG9hZGluZy1zcGlubmVye3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7ZmxleC1zaHJpbms6MDtib3JkZXI6MnB4IHNvbGlkIHJnYmEoMTk3LDEwMSw2MSwuMTYpO2JvcmRlci10b3AtY29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItcmFkaXVzOjk5OXB4O2FuaW1hdGlvbjpsb2dpblNwaW4gLjhzIGxpbmVhciBpbmZpbml0ZX0uYm9vdC1sb2FkaW5nLXRleHR7Zm9udC1zaXplOi45Mzc1cmVtO2ZvbnQtd2VpZ2h0OjUwMH0ubG9naW4tbG9nb3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Z2FwOjEwcHg7bWFyZ2luLWJvdHRvbTo4cHh9LmxvZ2luLWxvZ28taWNvbnt3aWR0aDo0MnB4O2hlaWdodDo0MnB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjZDY3YjUyLCNhYjUyMmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmZmZmNTk7Zm9udC1zaXplOjE4cHg7Y29sb3I6I2ZmZjtmb250LXdlaWdodDo3MDB9LmxvZ2luLWxvZ28tdGV4dHtmb250LXNpemU6MS42cmVtO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzotLjAyZW19LmxvZ2luLXN1YnRpdGxle2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouODc1cmVtfS5sb2dpbi1ib2R5e3BhZGRpbmc6MjJweCAyNHB4IDI0cHh9LmxvZ2luLWNhcmQtbG9hZGluZyAubG9naW4tYm9keXtwYWRkaW5nLXRvcDoxOHB4O3BhZGRpbmctYm90dG9tOjI0cHh9LmxvZ2luLWhpbnR7Zm9udC1zaXplOi44MTI1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTttYXJnaW4tYm90dG9tOjE2cHg7bGluZS1oZWlnaHQ6MS41fS5sb2dpbi1tdXRlZHttYXJnaW46NHB4IDAgMDtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xpbmUtaGVpZ2h0OjEuNDV9LmxvZ2luLXN0YXR1c3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6MTRweDtwYWRkaW5nOjJweCAwfS5sb2dpbi1zcGlubmVye3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7ZmxleC1zaHJpbms6MDttYXJnaW4tdG9wOjJweDtib3JkZXI6MnB4IHNvbGlkIHJnYmEoMTk3LDEwMSw2MSwuMTYpO2JvcmRlci10b3AtY29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItcmFkaXVzOjk5OXB4O2FuaW1hdGlvbjpsb2dpblNwaW4gLjhzIGxpbmVhciBpbmZpbml0ZX0ucGFzc3dvcmQtZmllbGR7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcn0ucGFzc3dvcmQtaW5wdXR7cGFkZGluZy1yaWdodDo3OHB4O21pbi1oZWlnaHQ6NDZweH0ucGFzc3dvcmQtdG9nZ2xle3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjhweDt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2JvcmRlcjpub25lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc2l6ZTouNzVyZW07Zm9udC13ZWlnaHQ6NjAwO3BhZGRpbmc6NnB4IDhweDtib3JkZXItcmFkaXVzOjhweDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5wYXNzd29yZC10b2dnbGU6aG92ZXJ7YmFja2dyb3VuZDojN2Q1YjM5MTQ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0ucGFzc3dvcmQtdG9nZ2xlOmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgdmFyKC0tYWNjZW50KTtvdXRsaW5lLW9mZnNldDoycHh9QGtleWZyYW1lcyBsb2dpblNwaW57MCV7dHJhbnNmb3JtOnJvdGF0ZSgwKX10b3t0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fS5idG46ZGlzYWJsZWR7Y3Vyc29yOm5vdC1hbGxvd2VkO29wYWNpdHk6LjcyO3RyYW5zZm9ybTpub25lO2JveC1zaGFkb3c6bm9uZX0ubG9naW4tYm9keSAuZmllbGR7bWFyZ2luLWJvdHRvbToyMHB4fS5sb2dpbi1ib2R5IC5oaW50e21hcmdpbi10b3A6MTBweH0ubG9naW4tYm9keSAuZXJyb3ItbWVzc2FnZXttYXJnaW4tdG9wOjEwcHg7bWFyZ2luLWJvdHRvbTowfS5sb2dpbi1jZXJ0LWhpbnR7bWFyZ2luLXRvcDoxNHB4O3BhZGRpbmc6MTRweCAxNnB4O2JvcmRlci1yYWRpdXM6MTJweDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTkwLDEyMCw0MCwuMzIpO2JhY2tncm91bmQ6I2RjOTYzYzFhO3RleHQtYWxpZ246bGVmdH0ubG9naW4tY2VydC1oaW50LXRpdGxle2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO21hcmdpbi1ib3R0b206NnB4fS5sb2dpbi1jZXJ0LWhpbnQtYm9keXtmb250LXNpemU6LjgxMjVyZW07bGluZS1oZWlnaHQ6MS42O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTttYXJnaW46MCAwIDEycHh9LmxvZ2luLWNlcnQtaGludCAuYnRue21hcmdpbi10b3A6MH0ubW9kYWwtc3VidGl0bGV7bWFyZ2luLXRvcDo0cHg7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjV9LnNlc3Npb24tbW9kYWwgLm1vZGFsLWJvZHl7cGFkZGluZy10b3A6MTZweDtwYWRkaW5nLWJvdHRvbTo4cHh9LnNlc3Npb24tbW9kYWwgLmZpZWxkOmxhc3Qtb2YtdHlwZXttYXJnaW4tYm90dG9tOjZweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtZm9vdGVye2ZsZXgtc2hyaW5rOjA7cGFkZGluZzoxMnB4IDIycHggMThweDtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKX0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtZm9vdGVyIC5lcnJvci1tZXNzYWdle21hcmdpbi10b3A6OHB4O21hcmdpbi1ib3R0b206MH0ubW9kZS1jYXJkc3tkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7Z2FwOjZweH0ubW9kZS1jYXJke2ZsZXg6MSAxIDA7bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjNweDtwYWRkaW5nOjEwcHggOHB4O2JvcmRlcjoxLjVweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMik7Ym9yZGVyLXJhZGl1czoxMHB4O2JhY2tncm91bmQ6I2ZmZjk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZmFzdCksYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO3RleHQtYWxpZ246Y2VudGVyO291dGxpbmU6bm9uZX0ubW9kZS1jYXJkOmhvdmVye2JvcmRlci1jb2xvcjojYzU2NTNkNTk7YmFja2dyb3VuZDojZmZmY30ubW9kZS1jYXJkLmFjdGl2ZXtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOiNmZmY3ZWZmMjtib3gtc2hhZG93OjAgMCAwIDEuNXB4IHZhcigtLWFjY2VudC1tdXRlZCl9Lm1vZGUtY2FyZDpmb2N1cy12aXNpYmxle2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAwIDAgMS41cHggdmFyKC0tYWNjZW50LW11dGVkKX0ubW9kZS1jYXJkLWxhYmVse2ZvbnQtc2l6ZTouOHJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsaW5lLWhlaWdodDoxLjN9Lm1vZGUtY2FyZC1kZXNje2ZvbnQtc2l6ZTouNjhyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGluZS1oZWlnaHQ6MS4zfS5tb2RlLWNhcmQuYWN0aXZlIC5tb2RlLWNhcmQtbGFiZWx7Y29sb3I6dmFyKC0tYWNjZW50KX0ubW9kZS1jYXJkLmRpc2FibGVke29wYWNpdHk6LjQ1O2N1cnNvcjpub3QtYWxsb3dlZDtwb2ludGVyLWV2ZW50czpub25lfS5tb2RlLWNhcmQuZGlzYWJsZWQ6aG92ZXJ7Ym9yZGVyLWNvbG9yOiM3ZDViMzkzMztiYWNrZ3JvdW5kOiNmZmY5fS5tb2RlLWNhcmQuZGlzYWJsZWQgLm1vZGUtY2FyZC1sYWJlbCwubW9kZS1jYXJkLmRpc2FibGVkIC5tb2RlLWNhcmQtZGVzY3tjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ubW9kZS1jYXJkLmFjdGl2ZS5kaXNhYmxlZHtib3gtc2hhZG93Om5vbmV9LnBhc3N3b3JkLWlucHV0W2RhdGEtZXJyb3I9dHJ1ZV0sLnBhc3N3b3JkLWlucHV0W2FyaWEtaW52YWxpZD10cnVlXXtib3JkZXItY29sb3I6dmFyKC0tZGFuZ2VyKTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1kYW5nZXItbXV0ZWQpfS5wYXNzd29yZC1pbnB1dFtkYXRhLWVycm9yPXRydWVdKy5wYXNzd29yZC10b2dnbGUsLnBhc3N3b3JkLWlucHV0W2FyaWEtaW52YWxpZD10cnVlXSsucGFzc3dvcmQtdG9nZ2xle2NvbG9yOnZhcigtLWRhbmdlcil9LnBhc3N3b3JkLWlucHV0OmZvY3VzKy5wYXNzd29yZC10b2dnbGV7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0ucGFzc3dvcmQtdG9nZ2xlOmFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSBzY2FsZSguOTgpfS5wYXNzd29yZC1pbnB1dDo6LW1zLXJldmVhbCwucGFzc3dvcmQtaW5wdXQ6Oi1tcy1jbGVhcntkaXNwbGF5Om5vbmV9LnBhc3N3b3JkLWlucHV0Ojotd2Via2l0LWNyZWRlbnRpYWxzLWF1dG8tZmlsbC1idXR0b24sLnBhc3N3b3JkLWlucHV0Ojotd2Via2l0LWNvbnRhY3RzLWF1dG8tZmlsbC1idXR0b257dmlzaWJpbGl0eTpoaWRkZW47ZGlzcGxheTpub25lIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjB9LnBhc3N3b3JkLWlucHV0W3R5cGU9dGV4dF17Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKX0uZmllbGR7bWFyZ2luLWJvdHRvbToxOHB4fS5maWVsZC1sYWJlbHtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO21hcmdpbi1ib3R0b206OHB4fS5maWVsZC1pbnB1dHt3aWR0aDoxMDAlO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44NzVyZW07YmFja2dyb3VuZDojZmZmZmZmYmY7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMjIpO2JvcmRlci1yYWRpdXM6MTJweDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3BhZGRpbmc6MTJweCAxNHB4O291dGxpbmU6bm9uZTt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7bWluLWhlaWdodDo0NHB4fS5maWVsZC1pbnB1dDpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1hY2NlbnQtbXV0ZWQpLDAgMCAyMHB4ICNjNTY1M2QxNDtiYWNrZ3JvdW5kOiNmZmZmZmZlNn0uZmllbGQtaW5wdXQ6OnBsYWNlaG9sZGVye2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5tb2RhbC1iYWNrZHJvcHtwb3NpdGlvbjpmaXhlZDtpbnNldDowO3otaW5kZXg6NTAwO2JhY2tncm91bmQ6IzE0MGUwODU3O2JhY2tkcm9wLWZpbHRlcjpibHVyKDE4cHgpIHNhdHVyYXRlKDE0MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMThweCkgc2F0dXJhdGUoMTQwJSk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmctdG9wOm1heCgzMnB4LHZhcigtLXdhbmQtc2FmZS10b3ApKTtwYWRkaW5nLWJvdHRvbTptYXgoMzJweCx2YXIoLS13YW5kLXNhZmUtYm90dG9tKSk7cGFkZGluZy1sZWZ0Om1heCgzMnB4LHZhcigtLXdhbmQtc2FmZS1sZWZ0KSk7cGFkZGluZy1yaWdodDptYXgoMzJweCx2YXIoLS13YW5kLXNhZmUtcmlnaHQpKTthbmltYXRpb246bGlxdWlkQmFja2Ryb3BJbiAuMjhzIHZhcigtLWVhc2Utb3V0LWV4cG8sIGN1YmljLWJlemllciguMTYsIDEsIC4zLCAxKSkgYm90aH0ubW9kYWwtYmFja2Ryb3AuY2xvc2luZ3thbmltYXRpb246bGlxdWlkQmFja2Ryb3BPdXQgLjE4cyB2YXIoLS1lYXNlLWluLW91dC1zbW9vdGgsIGN1YmljLWJlemllciguNCwgMCwgLjIsIDEpKSBib3RoO3BvaW50ZXItZXZlbnRzOm5vbmV9QGtleWZyYW1lcyBsaXF1aWRCYWNrZHJvcEluezAle29wYWNpdHk6MH10b3tvcGFjaXR5OjF9fUBrZXlmcmFtZXMgbGlxdWlkQmFja2Ryb3BPdXR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MH19Lm1vZGFse3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7bWF4LXdpZHRoOjU2MHB4O21heC1oZWlnaHQ6ODh2aDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2JhY2tncm91bmQ6I2ZmZmNmN2JkO2JvcmRlcjouNXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjYpO2JvcmRlci1yYWRpdXM6MjZweDtvdmVyZmxvdzpoaWRkZW47YmFja2Ryb3AtZmlsdGVyOmJsdXIoNDBweCkgc2F0dXJhdGUoMTgwJSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cig0MHB4KSBzYXR1cmF0ZSgxODAlKTtib3gtc2hhZG93OjAgMzJweCA4MHB4IC0xNnB4ICMxNDBlMDg1NywwIDhweCAyNHB4IC04cHggIzE0MGUwODJlLDAgMCAwIC41cHggIzdkNWIzOTE0LGluc2V0IDAgMXB4ICNmZmZmZmZiMzthbmltYXRpb246bGlxdWlkTW9kYWxJbiAuMzJzIGN1YmljLWJlemllciguMzQsMS40LC42NCwxKSBib3RofS5tb2RhbC1iYWNrZHJvcC5jbG9zaW5nIC5tb2RhbHthbmltYXRpb246bGlxdWlkTW9kYWxPdXQgLjE4cyB2YXIoLS1lYXNlLWluLW91dC1zbW9vdGgsIGN1YmljLWJlemllciguNCwgMCwgLjIsIDEpKSBib3RofUBrZXlmcmFtZXMgbGlxdWlkTW9kYWxJbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC45NCkgdHJhbnNsYXRlWSgxMnB4KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZVkoMCl9fUBrZXlmcmFtZXMgbGlxdWlkTW9kYWxPdXR7MCV7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGVZKDApfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUoLjk3KSB0cmFuc2xhdGVZKDRweCl9fUBtZWRpYShwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7Lm1vZGFsLWJhY2tkcm9wLC5tb2RhbC1iYWNrZHJvcC5jbG9zaW5nLC5tb2RhbCwubW9kYWwtYmFja2Ryb3AuY2xvc2luZyAubW9kYWx7YW5pbWF0aW9uOm5vbmUhaW1wb3J0YW50fX1Ac3VwcG9ydHMgbm90ICgoYmFja2Ryb3AtZmlsdGVyOiBibHVyKDFweCkpIG9yICgtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxcHgpKSl7Lm1vZGFsLWJhY2tkcm9we2JhY2tncm91bmQ6IzE0MGUwODk5fS5tb2RhbHtiYWNrZ3JvdW5kOiNmZmZhZjI7Ym9yZGVyLWNvbG9yOiM3ZDViMzkyZX19QG1lZGlhKHByZWZlcnMtY29sb3Itc2NoZW1lOmRhcmspey5tb2RhbC1iYWNrZHJvcHtiYWNrZ3JvdW5kOiMwODA1MDI4MH1Ac3VwcG9ydHMgbm90ICgoYmFja2Ryb3AtZmlsdGVyOiBibHVyKDFweCkpIG9yICgtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxcHgpKSl7Lm1vZGFsLWJhY2tkcm9we2JhY2tncm91bmQ6IzA4MDUwMmM3fX19LnNlc3Npb24tbW9kYWwgLm1vZGFsLWhlYWRlciwuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLW1vZGFsLWhlYWRlcntwYWRkaW5nOjI0cHggMjhweCAxOHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCk7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6MTZweDttaW4taGVpZ2h0OjB9LnNlc3Npb24tbW9kYWwgLm1vZGFsLXRpdGxlLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtdGl0bGUtZ3JvdXAgLm1vZGFsLXRpdGxle2ZvbnQtc2l6ZToxLjMxMjVyZW07Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi0uMDIyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsaW5lLWhlaWdodDoxLjJ9LnNlc3Npb24tbW9kYWwgLm1vZGFsLXN1YnRpdGxlLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtc3VidGl0bGV7bWFyZ2luLXRvcDo1cHg7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjU7bWF4LXdpZHRoOjQ0Y2h9Lm1vZGFsLWNsb3NlLWJ0biwuc2Vzc2lvbi1tb2RhbCAubW9kYWwtaGVhZGVyPi5idG4taWNvbi5idG4tZ2hvc3QsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1tb2RhbC1oZWFkZXI+LmJ0bi1pY29uLmJ0bi1naG9zdHt3aWR0aDozMnB4O2hlaWdodDozMnB4O21pbi13aWR0aDozMnB4O21pbi1oZWlnaHQ6MzJweDtwYWRkaW5nOjA7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDojN2Q1YjM5MTI7Ym9yZGVyOm5vbmU7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7ZmxleC1zaHJpbms6MDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMThzIGVhc2UsY29sb3IgLjE4cyBlYXNlLHRyYW5zZm9ybSAuMjhzIGN1YmljLWJlemllciguMzQsMS40LC42NCwxKSxib3gtc2hhZG93IC4xOHMgZWFzZX0ubW9kYWwtY2xvc2UtYnRuIHN2Z3tkaXNwbGF5OmJsb2NrO3BvaW50ZXItZXZlbnRzOm5vbmV9Lm1vZGFsLWNsb3NlLWJ0bjpob3Zlciwuc2Vzc2lvbi1tb2RhbCAubW9kYWwtaGVhZGVyPi5idG4taWNvbi5idG4tZ2hvc3Q6aG92ZXIsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1tb2RhbC1oZWFkZXI+LmJ0bi1pY29uLmJ0bi1naG9zdDpob3ZlcntiYWNrZ3JvdW5kOiNiMjRmNDUxZjtjb2xvcjp2YXIoLS1kYW5nZXIpO3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpO2JveC1zaGFkb3c6MCAycHggOHB4ICNiMjRmNDUyZX0ubW9kYWwtY2xvc2UtYnRuOmFjdGl2ZSwuc2Vzc2lvbi1tb2RhbCAubW9kYWwtaGVhZGVyPi5idG4taWNvbi5idG4tZ2hvc3Q6YWN0aXZlLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtaGVhZGVyPi5idG4taWNvbi5idG4tZ2hvc3Q6YWN0aXZle2JhY2tncm91bmQ6I2IyNGY0NTMzO3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpIHNjYWxlKC45Mik7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5tb2RhbC1jbG9zZS1idG46Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1hY2NlbnQpO291dGxpbmUtb2Zmc2V0OjNweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtYm9keSwuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLW1vZGFsLWJvZHl7cGFkZGluZzoyMHB4IDI4cHh9LnNlc3Npb24tbW9kYWwgLm1vZGFsLWZvb3RlcntwYWRkaW5nOjE2cHggMjhweCAyMnB4O2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCl9LnNlc3Npb24tbW9kYWwgLmZpZWxkLWlucHV0LC5zZXR0aW5ncy1tb2RhbCAuZmllbGQtaW5wdXQsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1jYXJkIC5maWVsZC1pbnB1dCwuc2Vzc2lvbi1tb2RhbCBzZWxlY3QuZmllbGQtaW5wdXQsLnNldHRpbmdzLW1vZGFsIHNlbGVjdC5maWVsZC1pbnB1dHtiYWNrZ3JvdW5kOiNmZmZmZmZjNztib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xNCk7Ym9yZGVyLXJhZGl1czoxMnB4O3BhZGRpbmc6MTFweCAxNHB4O2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMS41cHggIzdkNWIzOTBhO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4xNXMgZWFzZSxib3gtc2hhZG93IC4xNXMgZWFzZSxiYWNrZ3JvdW5kIC4xNXMgZWFzZTtiYWNrZHJvcC1maWx0ZXI6bm9uZTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpub25lfS5zZXNzaW9uLW1vZGFsIC5maWVsZC1pbnB1dDpob3Zlciwuc2V0dGluZ3MtbW9kYWwgLmZpZWxkLWlucHV0OmhvdmVye2JvcmRlci1jb2xvcjojN2Q1YjM5M2Q7YmFja2dyb3VuZDojZmZmZmZmZWJ9LnNlc3Npb24tbW9kYWwgLmZpZWxkLWlucHV0OmZvY3VzLC5zZXR0aW5ncy1tb2RhbCAuZmllbGQtaW5wdXQ6Zm9jdXMsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1jYXJkIC5maWVsZC1pbnB1dDpmb2N1cywuc2Vzc2lvbi1tb2RhbCBzZWxlY3QuZmllbGQtaW5wdXQ6Zm9jdXMsLnNldHRpbmdzLW1vZGFsIHNlbGVjdC5maWVsZC1pbnB1dDpmb2N1c3tiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxLjVweCAjN2Q1YjM5MGEsMCAwIDAgM3B4IHZhcigtLWFjY2VudC1tdXRlZCl9LnNlc3Npb24tbW9kYWwgLm1vZGUtY2FyZHN7Z2FwOjhweH0uc2Vzc2lvbi1tb2RhbCAubW9kZS1jYXJke3BhZGRpbmc6MTJweCAxMHB4O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEpO2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kOiNmZmY5O2JveC1zaGFkb3c6MCAxcHggMnB4ICM3ZDViMzkwODt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE2cyBlYXNlLGJvcmRlci1jb2xvciAuMTZzIGVhc2UsYm94LXNoYWRvdyAuMTZzIGVhc2UsdHJhbnNmb3JtIC4xNnMgZWFzZTtiYWNrZHJvcC1maWx0ZXI6bm9uZTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpub25lfS5zZXNzaW9uLW1vZGFsIC5tb2RlLWNhcmQ6aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmZWI7Ym9yZGVyLWNvbG9yOiM3ZDViMzkzMzt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNHB4IDEycHggIzdkNWIzOTE0fS5zZXNzaW9uLW1vZGFsIC5tb2RlLWNhcmQuYWN0aXZle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmY2Y3ZjIsI2ZmZjBlMGQxKTtib3JkZXI6LjVweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC44KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KSBzYXR1cmF0ZSgxODAlKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpIHNhdHVyYXRlKDE4MCUpO2JveC1zaGFkb3c6MCAwIDAgMXB4ICNjNTY1M2Q1MiwwIDAgMCA0cHggI2M1NjUzZDI0LDAgOHB4IDIycHggLTRweCAjYzU2NTNkNGQsaW5zZXQgMCAxcHggI2ZmZmZmZmYyLGluc2V0IDAgLTFweCAjYzU2NTNkMTQ7dHJhbnNmb3JtOm5vbmV9LnNlc3Npb24tbW9kYWwgLm1vZGUtY2FyZC5hY3RpdmUgLm1vZGUtY2FyZC1sYWJlbHtjb2xvcjp2YXIoLS1hY2NlbnQpfS5zZXNzaW9uLW1vZGFsIC50b29sLWNhcmR7YmFja2dyb3VuZDojZmZmZmZmYjM7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMTIpO2JvcmRlci1yYWRpdXM6MTRweDtwYWRkaW5nOjE0cHggMTZweDtib3gtc2hhZG93OjAgMXB4IDJweCAjN2Q1YjM5MDg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xOHMgZWFzZSxib3JkZXItY29sb3IgLjE4cyBlYXNlLGJveC1zaGFkb3cgLjE4cyBlYXNlLHRyYW5zZm9ybSAuMThzIGVhc2U7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2Vzc2lvbi1tb2RhbCAudG9vbC1jYXJkOmhvdmVye2JhY2tncm91bmQ6I2ZmZjtib3JkZXItY29sb3I6IzdkNWIzOTM4O3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0ycHgpO2JveC1zaGFkb3c6MCA4cHggMjBweCAjN2Q1YjM5MWF9LnNlc3Npb24tbW9kYWwgLnRvb2wtY2FyZC5hY3RpdmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjdmMiwjZmZmMGUwZDEpO2JvcmRlcjouNXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzowIDAgMCAxcHggI2M1NjUzZDRkLDAgMCAwIDRweCAjYzU2NTNkMjQsMCAxMHB4IDI4cHggLTZweCAjYzU2NTNkNGQsaW5zZXQgMCAxcHggI2ZmZmZmZmYyLGluc2V0IDAgLTFweCAjYzU2NTNkMTQ7dHJhbnNmb3JtOm5vbmV9LnNlc3Npb24tbW9kYWwgLnJlY2VudC1wYXRoLWJ1YmJsZXtiYWNrZ3JvdW5kOiNmZmZmZmY4Yztib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xMik7Ym94LXNoYWRvdzowIDFweCAycHggIzdkNWIzOTA4O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTZzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNnMgZWFzZSxjb2xvciAuMTZzIGVhc2UsdHJhbnNmb3JtIC4xNnMgZWFzZX0uc2Vzc2lvbi1tb2RhbCAucmVjZW50LXBhdGgtYnViYmxlOmhvdmVye2JhY2tncm91bmQ6I2ZmZjdlZjtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtjb2xvcjp2YXIoLS1hY2NlbnQpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGV7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjZweCA4cHggNnB4IDEycHg7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOiM3ZDViMzkwZDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCk7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE4cyBlYXNlLGJvcmRlci1jb2xvciAuMThzIGVhc2UsYm94LXNoYWRvdyAuMThzIGVhc2UsY29sb3IgLjE4cyBlYXNlO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uc2Vzc2lvbi1tb2RhbCAuc2Vzc2lvbi1pbmxpbmUtdG9nZ2xlOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTE3O2JvcmRlci1jb2xvcjojN2Q1YjM5Mjl9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZTpoYXMoLnN3aXRjaC10b2dnbGU6Y2hlY2tlZCl7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmY3ZWYsI2ZmZWVkOCk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1hY2NlbnQtbXV0ZWQpLDAgNHB4IDEycHggI2M1NjUzZDFmfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGUtaWNvbntmbGV4LXNocmluazowO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RyYW5zaXRpb246Y29sb3IgLjE4cyBlYXNlLHRyYW5zZm9ybSAuMjhzIGN1YmljLWJlemllciguMzQsMS40LC42NCwxKX0uc2Vzc2lvbi1tb2RhbCAuc2Vzc2lvbi1pbmxpbmUtdG9nZ2xlOmhhcyguc3dpdGNoLXRvZ2dsZTpjaGVja2VkKSAuc2Vzc2lvbi1pbmxpbmUtdG9nZ2xlLWljb257Y29sb3I6dmFyKC0tYWNjZW50KTt0cmFuc2Zvcm06cm90YXRlKDhkZWcpfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGUtbGFiZWx7Zm9udC1zaXplOi43NXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjAwNWVtO2NvbG9yOmluaGVyaXQ7dHJhbnNpdGlvbjpjb2xvciAuMThzIGVhc2V9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZSAuc3dpdGNoLXRvZ2dsZXtwb3NpdGlvbjphYnNvbHV0ZTtvcGFjaXR5OjA7d2lkdGg6MDtoZWlnaHQ6MDtwb2ludGVyLWV2ZW50czpub25lfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGUgLnN3aXRjaC1zbGlkZXJ7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MzJweDtoZWlnaHQ6MjBweDttaW4td2lkdGg6MzJweDtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDojN2Q1YjM5Mzg7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggIzdkNWIzOTJlO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMjJzIGVhc2UsYm94LXNoYWRvdyAuMjJzIGVhc2V9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZSAuc3dpdGNoLXNsaWRlcjphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoycHg7bGVmdDoycHg7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOiNmZmY7Ym94LXNoYWRvdzowIDEuNXB4IDNweCAjMTQwZTA4MzgsMCAwIDAgLjVweCAjN2Q1YjM5MGY7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI0cyBjdWJpYy1iZXppZXIoLjM0LDEuNCwuNjQsMSl9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZSAuc3dpdGNoLXRvZ2dsZTpjaGVja2VkKy5zd2l0Y2gtc2xpZGVye2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCAjMDAwMDAwMWF9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZSAuc3dpdGNoLXRvZ2dsZTpjaGVja2VkKy5zd2l0Y2gtc2xpZGVyOmFmdGVye3RyYW5zZm9ybTp0cmFuc2xhdGUoMTJweCl9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZSAuc3dpdGNoLXRvZ2dsZTpmb2N1cy12aXNpYmxlKy5zd2l0Y2gtc2xpZGVye291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWFjY2VudCk7b3V0bGluZS1vZmZzZXQ6MnB4fS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWtpbmQtaGludC1yb3d7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxNHB4fS5zZXNzaW9uLW1vZGFsIC5zdWdnZXN0aW9uc3tiYWNrZ3JvdW5kOiNmZmZjZjdmNTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xNCk7Ym9yZGVyLXJhZGl1czoxMnB4O2JveC1zaGFkb3c6MCAwIDAgLjVweCAjN2Q1YjM5MGQsMCAxMnB4IDI4cHggLThweCAjMTQwZTA4MmU7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMjBweCkgc2F0dXJhdGUoMTgwJSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigyMHB4KSBzYXR1cmF0ZSgxODAlKTtvdmVyZmxvdzpoaWRkZW59LnNlc3Npb24tbW9kYWwgLnN1Z2dlc3Rpb24taXRlbTpob3ZlcntiYWNrZ3JvdW5kOiNlOGM1YWU1Mn0uc2Vzc2lvbi1tb2RhbCAuZXJyb3ItbWVzc2FnZSwuc2V0dGluZ3MtbW9kYWwgLmVycm9yLW1lc3NhZ2V7YmFja2dyb3VuZDojYjI0ZjQ1MWE7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE3OCw3OSw2OSwuMik7Y29sb3I6dmFyKC0tZGFuZ2VyKTtib3JkZXItcmFkaXVzOjEwcHg7cGFkZGluZzoxMHB4IDEycHg7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2Vzc2lvbi1tb2RhbCAuZmllbGQtbGFiZWwsLnNldHRpbmdzLW1vZGFsIC5maWVsZC1sYWJlbHtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZTouODEyNXJlbTttYXJnaW4tYm90dG9tOjhweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtZm9vdGVyIC5idG4tcHJpbWFyeSwuc2V0dGluZ3MtbW9kYWwgLmJ0bi1wcmltYXJ5e2JveC1zaGFkb3c6MCA2cHggMTZweCAtNHB4ICNjNTY1M2Q2NiwwIDJweCA2cHggLTJweCAjYzU2NTNkNGQsaW5zZXQgMCAxcHggI2ZmZjM7Ym9yZGVyLXJhZGl1czoxMnB4fS5zZXNzaW9uLW1vZGFsIC5tb2RhbC1mb290ZXIgLmJ0bi1wcmltYXJ5OmhvdmVyLC5zZXR0aW5ncy1tb2RhbCAuYnRuLXByaW1hcnk6aG92ZXJ7Ym94LXNoYWRvdzowIDEwcHggMjRweCAtNHB4ICNjNTY1M2Q3NSwwIDRweCAxMHB4IC0ycHggI2M1NjUzZDU3LGluc2V0IDAgMXB4ICNmZmZmZmY0MH0uc2Vzc2lvbi1tb2RhbCAuYnRuLXNlY29uZGFyeSwuc2V0dGluZ3MtbW9kYWwgLmJ0bi1zZWNvbmRhcnl7YmFja2dyb3VuZDojZmZmZmZmYzc7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMTQpO2JveC1zaGFkb3c6MCAxcHggMnB4ICM3ZDViMzkwYTtib3JkZXItcmFkaXVzOjEycHh9LnNlc3Npb24tbW9kYWwgLmJ0bi1zZWNvbmRhcnk6aG92ZXIsLnNldHRpbmdzLW1vZGFsIC5idG4tc2Vjb25kYXJ5OmhvdmVye2JhY2tncm91bmQ6I2ZmZjtib3JkZXItY29sb3I6IzdkNWIzOTNkO2JveC1zaGFkb3c6MCA0cHggMTJweCAjN2Q1YjM5MTR9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1zaWRlYmFye2JvcmRlci1yaWdodDoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KTtwYWRkaW5nLXJpZ2h0OjEycHh9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1zaWRlYmFyLXRpdGxle2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo2MDA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOi4wOGVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdGFic3tnYXA6MnB4fS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdGFie3BhZGRpbmc6MTFweCAxNHB4O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JveC1zaGFkb3c6bm9uZTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNHMgZWFzZSxjb2xvciAuMTRzIGVhc2UsdHJhbnNmb3JtIC4xNHMgZWFzZTtiYWNrZHJvcC1maWx0ZXI6bm9uZTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpub25lfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdGFiOmJlZm9yZXtkaXNwbGF5Om5vbmV9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy10YWI6aG92ZXJ7YmFja2dyb3VuZDojN2Q1YjM5MGY7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt0cmFuc2Zvcm06bm9uZTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy10YWIuYWN0aXZle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmY2Y3ZjIsI2ZmZjRlOGM3KTtjb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE0cHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTRweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2M1NjUzZDQwLGluc2V0IDAgMXB4ICNmZmZmZmZlNixpbnNldCAwIC0xcHggI2M1NjUzZDE0LDAgNHB4IDE0cHggLTRweCAjYzU2NTNkMzgsMCAxcHggM3B4ICM3ZDViMzkwZn0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXRhYi5hY3RpdmUgLnNldHRpbmdzLXRhYi1tZXRhe2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXRhYi1tYWlue2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzotLjAwNWVtfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdGFiLW1ldGF7Zm9udC1zaXplOi43MTI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtcGFuZWwtaGVhZGVye21hcmdpbjowIDAgMTZweDtwYWRkaW5nLWJvdHRvbToxNHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCl9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1wYW5lbC10aXRsZXtmb250LXNpemU6MS4xODc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzotLjAyZW19LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1wYW5lbC1kZXNje2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLWNhcmQsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy11cGRhdGUtc2VjdGlvbiwuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9uLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtYWJvdXQtaW5mbywuc2V0dGluZ3MtbW9kYWwgLnByZXNldC1pdGVte2JhY2tncm91bmQ6I2ZmZmZmZmE2O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEpO2JvcmRlci1yYWRpdXM6MTZweDtib3gtc2hhZG93OjAgMXB4IDJweCAjN2Q1YjM5MDg7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLWFib3V0LXJvd3tib3JkZXItYm90dG9tLWNvbG9yOiM3ZDViMzkxNH0uc2V0dGluZ3MtbW9kYWwgLnN3aXRjaC1jYXJkLWxpc3R7Z2FwOjhweH0uc2V0dGluZ3MtbW9kYWwgLnN3aXRjaC1jYXJke2JhY2tncm91bmQ6I2ZmZjk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMSk7Ym9yZGVyLXJhZGl1czoxNHB4O2JveC1zaGFkb3c6MCAxcHggMnB4ICM3ZDViMzkwODt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE2cyBlYXNlLGJvcmRlci1jb2xvciAuMTZzIGVhc2UsdHJhbnNmb3JtIC4xNnMgZWFzZSxib3gtc2hhZG93IC4xNnMgZWFzZTtiYWNrZHJvcC1maWx0ZXI6bm9uZTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpub25lfS5zZXR0aW5ncy1tb2RhbCAuc3dpdGNoLWNhcmQ6aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmZDk7Ym9yZGVyLWNvbG9yOiM3ZDViMzkyZTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNHB4IDEycHggIzdkNWIzOTBmfS5zZXR0aW5ncy1tb2RhbCAuc3dpdGNoLWNhcmQ6aGFzKC5zd2l0Y2gtdG9nZ2xlOmNoZWNrZWQpe2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmN2VmLCNmZmYxZGUpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAwIDAgMXB4IHZhcigtLWFjY2VudC1tdXRlZCksMCA0cHggMTJweCAjYzU2NTNkMWF9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy10b2dnbGUtcm93LC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtcmFuZ2Utcm93e2JhY2tncm91bmQ6I2ZmZmZmZjhjO2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KTtib3JkZXItcmFkaXVzOjEycHg7Ym94LXNoYWRvdzowIDFweCAxcHggIzdkNWIzOTA1O2JhY2tkcm9wLWZpbHRlcjpub25lOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOm5vbmV9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1jYXJkLWljb24sLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1zZWN0aW9uLWljb257YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNjNTY1M2QyOSwjYzU2NTNkMGYpO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTcsMTAxLDYxLC4xOCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmOTtjb2xvcjp2YXIoLS1hY2NlbnQpfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtYXBwLWljb24tb3B0aW9ue2JhY2tncm91bmQ6I2ZmZmZmZmE2O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEpO2JvcmRlci1yYWRpdXM6MTRweDtib3gtc2hhZG93OjAgMXB4IDJweCAjN2Q1YjM5MDg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxib3JkZXItY29sb3IgLjE2cyBlYXNlLGJveC1zaGFkb3cgLjE2cyBlYXNlLHRyYW5zZm9ybSAuMTZzIGVhc2U7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLWFwcC1pY29uLW9wdGlvbjpob3ZlcntiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLWNvbG9yOiM3ZDViMzkzMzt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNHB4IDEycHggIzdkNWIzOTE0fS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtYXBwLWljb24tb3B0aW9uLnNlbGVjdGVkLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtYXBwLWljb24tb3B0aW9uW2FyaWEtcHJlc3NlZD10cnVlXXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZjdlZiwjZmZmMWRlKTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1hY2NlbnQtbXV0ZWQpLDAgNHB4IDEycHggI2M1NjUzZDFmfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtY29ubmVjdC11cmwtYm94e2JhY2tncm91bmQ6IzdkNWIzOTBkO2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEyKTtib3JkZXItcmFkaXVzOjEycHh9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1hY3Rpb25zLXN0aWNreXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmNmNzAwLCNmZmZjZjdkOSAyOHB4KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoOHB4KX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXNlY3Rpb24tdGl0bGV7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDA1ZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX1AbWVkaWEobWF4LXdpZHRoOjY0MHB4KXsuc2Vzc2lvbi1tb2RhbCAubW9kYWwtaGVhZGVyLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtaGVhZGVye3BhZGRpbmc6MTZweCAxOHB4IDE0cHh9LnNlc3Npb24tbW9kYWwgLm1vZGFsLWJvZHksLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1tb2RhbC1ib2R5e3BhZGRpbmc6MTRweCAxOHB4fS5zZXNzaW9uLW1vZGFsIC5tb2RhbC1mb290ZXJ7cGFkZGluZzoxMnB4IDE4cHggMThweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtdGl0bGUsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1tb2RhbC10aXRsZS1ncm91cCAubW9kYWwtdGl0bGV7Zm9udC1zaXplOjEuMTI1cmVtfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtcGFuZWwtdGl0bGV7Zm9udC1zaXplOjEuMDYyNXJlbX19LnNpZGViYXJ7YmFja2dyb3VuZDojZmZmY2Y3Yjg7Ym9yZGVyLXJpZ2h0Oi41cHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuNTUpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDM2cHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMzZweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzowIDAgMCAuNXB4ICM3ZDViMzkwZiw0cHggMCAzMnB4IC04cHggIzE0MGUwODJlfS5zaWRlYmFyLm9wZW57Ym94LXNoYWRvdzowIDAgMCAuNXB4ICM3ZDViMzkwZiwxMnB4IDAgNDhweCAtMTJweCAjMTQwZTA4NDd9LnNpZGViYXIucGlubmVke2JveC1zaGFkb3c6MCAwIDAgLjVweCAjN2Q1YjM5MGYsMnB4IDAgMTJweCAtOHB4ICMxNDBlMDgxZn0uZHJhd2VyLWJhY2tkcm9we2JhY2tncm91bmQ6IzE0MGUwODUyO2JhY2tkcm9wLWZpbHRlcjpibHVyKDEycHgpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTJweCl9LmRyYXdlci1iYWNrZHJvcC5vcGVue2JhY2tkcm9wLWZpbHRlcjpibHVyKDE4cHgpIHNhdHVyYXRlKDE0MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMThweCkgc2F0dXJhdGUoMTQwJSl9LnNpZGViYXItaGVhZGVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA2KTtwYWRkaW5nOjE0cHggMTZweH0uc2lkZWJhci10aXRsZXtmb250LXNpemU6LjkzNzVyZW07Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi0uMDEyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uc2Vzc2lvbi1jb3VudHtiYWNrZ3JvdW5kOiM3ZDViMzkxNDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7cGFkZGluZzoycHggOXB4O2JvcmRlci1yYWRpdXM6OTk5cHg7Zm9udC1zaXplOi42ODc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXM7bGluZS1oZWlnaHQ6MS41fS5zaWRlYmFyLWhlYWRlci1hY3Rpb25zIC5idG4tZ2hvc3QuYnRuLXNtLC5kcmF3ZXItY2xvc2UtYnRue3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7bWluLXdpZHRoOjMycHg7bWluLWhlaWdodDozMnB4O3BhZGRpbmc6MDtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7Ym9yZGVyOm5vbmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxjb2xvciAuMTZzIGVhc2UsdHJhbnNmb3JtIC4yMnMgY3ViaWMtYmV6aWVyKC4zNCwxLjQsLjY0LDEpfS5zaWRlYmFyLWhlYWRlci1hY3Rpb25zIC5idG4tZ2hvc3QuYnRuLXNtOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmRyYXdlci1jbG9zZS1idG57YmFja2dyb3VuZDojN2Q1YjM5MTJ9LmRyYXdlci1jbG9zZS1idG46aG92ZXJ7YmFja2dyb3VuZDojYjI0ZjQ1MWY7Y29sb3I6dmFyKC0tZGFuZ2VyKTt0cmFuc2Zvcm06cm90YXRlKDkwZGVnKX0uZHJhd2VyLWNsb3NlLWJ0bjphY3RpdmV7YmFja2dyb3VuZDojYjI0ZjQ1MzM7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZykgc2NhbGUoLjkyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wNnN9LmRyYXdlci1jbG9zZS1idG46Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1hY2NlbnQpO291dGxpbmUtb2Zmc2V0OjNweH0uc2lkZWJhci1oZWFkZXItb3ZlcmZsb3d7YmFja2dyb3VuZDojZmZmY2Y3ZGI7Ym9yZGVyOi41cHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuNTUpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDI0cHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMjRweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzowIDAgMCAuNXB4ICM3ZDViMzkxNCwwIDEycHggMjhweCAtOHB4ICMxNDBlMDgzODtib3JkZXItcmFkaXVzOjEycHg7cGFkZGluZzo2cHh9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVte2JvcmRlci1yYWRpdXM6OXB4O3BhZGRpbmc6OXB4IDEwcHg7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjUwMDt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE2cyBlYXNlLGNvbG9yIC4xNnMgZWFzZSxib3gtc2hhZG93IC4xOHMgZWFzZSx0cmFuc2Zvcm0gLjE4cyB2YXIoLS1lYXNlLW91dC1leHBvKX0uc2lkZWJhci1oZWFkZXItb3ZlcmZsb3cgLm92ZXJmbG93LWl0ZW06aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZmZmZlNiwjZmZmY2Y3OTkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Ym94LXNoYWRvdzowIDAgMCAuNXB4ICM3ZDViMzkxNCxpbnNldCAwIDFweCAjZmZmZmZmZDl9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVtOmFjdGl2ZXtiYWNrZ3JvdW5kOiNjNTY1M2QxZjtjb2xvcjp2YXIoLS1hY2NlbnQpO3RyYW5zZm9ybTpzY2FsZSguOTgpfS5zZXNzaW9uLW1hbmFnZS1iYXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6OHB4O3BhZGRpbmc6NHB4IDRweCA0cHggMTBweDtib3JkZXItcmFkaXVzOjEwcHg7bWFyZ2luLWJvdHRvbToxMHB4O2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZX0uc2Vzc2lvbi1tYW5hZ2UtYmFyOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTBkfS5zZXNzaW9uLW1hbmFnZS1iYXIgLnNpZGViYXItaW50cm97Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsZXR0ZXItc3BhY2luZzouMDA1ZW19LnNlc3Npb24tbWFuYWdlLWJhci5hY3RpdmV7cG9zaXRpb246c3RpY2t5O3RvcDowO3otaW5kZXg6NjttYXJnaW46LTEwcHggLTEwcHggOHB4O3BhZGRpbmc6OXB4IDEwcHggOXB4IDZweDtib3JkZXItcmFkaXVzOjA7YmFja2dyb3VuZDojZmZmYmY1ZjA7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6c2F0dXJhdGUoMS4yKSBibHVyKDhweCk7YmFja2Ryb3AtZmlsdGVyOnNhdHVyYXRlKDEuMikgYmx1cig4cHgpO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JveC1zaGFkb3c6bm9uZX0uc2Vzc2lvbi1tYW5hZ2UtYmFyLmFjdGl2ZTpob3ZlcntiYWNrZ3JvdW5kOiNmZmZiZjVmMH0uc2Vzc2lvbi1tYW5hZ2UtZXhpdHtmbGV4LXNocmluazowO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MjZweDtoZWlnaHQ6MjZweDtwYWRkaW5nOjA7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czo4cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE0cyBlYXNlLGNvbG9yIC4xNHMgZWFzZTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnR9LnNlc3Npb24tbWFuYWdlLWV4aXQ6aG92ZXJ7YmFja2dyb3VuZDojN2Q1YjM5MWE7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uc2Vzc2lvbi1tYW5hZ2Utc3VtbWFyeXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O21pbi13aWR0aDowO2ZsZXg6MTtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXdlaWdodDo1MDB9LnNlc3Npb24tbWFuYWdlLWNvdW50e2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWluLXdpZHRoOjIwcHg7aGVpZ2h0OjE4cHg7cGFkZGluZzowIDZweDtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tdGV4dC1pbnZlcnNlKTtmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NzAwO2JvcmRlci1yYWRpdXM6OTk5cHg7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS5zZXNzaW9uLW1hbmFnZS1zdW1tYXJ5LWxhYmVse2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXdlaWdodDo2MDB9LnNlc3Npb24tbWFuYWdlLXN1bW1hcnktbGFiZWwubXV0ZWR7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC13ZWlnaHQ6NTAwfS5zZXNzaW9uLW1hbmFnZS1hY3Rpb25ze2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtmbGV4LXNocmluazowfS5zZXNzaW9uLW1hbmFnZS10b2dnbGV7Z2FwOjVweH0uY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWNsZWFyLWJ0bnttYXJnaW4tbGVmdDphdXRvfS5zZXNzaW9uLWdyb3VwLXRpdGxle3BhZGRpbmc6MTBweCA2cHggOHB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LjFlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uc2Vzc2lvbi1ncm91cC10aXRsZTpiZWZvcmV7d2lkdGg6M3B4O2hlaWdodDoxMnB4O2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWFjY2VudCkscmdiYSgxOTcsMTAxLDYxLC40KSk7b3BhY2l0eToxfS5zZXNzaW9uLWl0ZW17YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6MTFweDtwYWRkaW5nOjlweCAxMnB4O21hcmdpbi1ib3R0b206MnB4O2JveC1zaGFkb3c6bm9uZTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE2cyBlYXNlLGJvcmRlci1jb2xvciAuMTZzIGVhc2V9LnNlc3Npb24taXRlbTpiZWZvcmV7bGVmdDo0cHg7dG9wOjlweDtib3R0b206OXB4O3dpZHRoOjNweDtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsdmFyKC0tYWNjZW50KSxyZ2JhKDE5NywxMDEsNjEsLjUpKX0uc2Vzc2lvbi1pdGVtOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTBmO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH0uc2Vzc2lvbi1pdGVtOmhvdmVyOmJlZm9yZXtvcGFjaXR5OjB9LnNlc3Npb24taXRlbS5hY3RpdmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjdlYiwjZmZmNGU4YmQpO2JvcmRlci1jb2xvcjojYzU2NTNkNDc7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmZmZmOGN9LnNlc3Npb24taXRlbS5hY3RpdmU6YmVmb3Jle29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGVZKDEpfS5zZXNzaW9uLWl0ZW0uc2VsZWN0ZWR7YmFja2dyb3VuZDojYzU2NTNkMTc7Ym9yZGVyLWNvbG9yOiNjNTY1M2QyZX0uc2Vzc2lvbi1pdGVtLnNlbGVjdGVkOmJlZm9yZXtvcGFjaXR5Oi43O3RyYW5zZm9ybTpzY2FsZVkoMSl9LnNlc3Npb24taXRlbTphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45OTIpO3RyYW5zaXRpb24tZHVyYXRpb246LjA4c30uc2Vzc2lvbi10aXRsZSwuc2Vzc2lvbi1jb21tYW5ke2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbX0uc2Vzc2lvbi10aXRsZS1yb3d7Z2FwOjEwcHh9LnNlc3Npb24tdGltZXtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS5zZXNzaW9uLWFjdGl2aXR5e29wYWNpdHk6MTtjb2xvcjp2YXIoLS1hY2NlbnQpO2ZvbnQtd2VpZ2h0OjUwMH0uc2Vzc2lvbi1zdGF0dXN7cGFkZGluZzoycHggOHB4O2ZvbnQtc2l6ZTouNjI1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDJlbX0uc2Vzc2lvbi1pZHtiYWNrZ3JvdW5kOiM3ZDViMzkxNDtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtmb250LXNpemU6LjYyNXJlbTtwYWRkaW5nOjEuNXB4IDZweDtib3JkZXItcmFkaXVzOjRweH0uc2Vzc2lvbi1hY3Rpb24tYnRue3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7bWluLXdpZHRoOjI4cHg7bWluLWhlaWdodDoyOHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6IzdkNWIzOTBmO2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO2JvcmRlcjpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTZzIGVhc2UsY29sb3IgLjE2cyBlYXNlLHRyYW5zZm9ybSAuMThzIGN1YmljLWJlemllciguMzQsMS40LC42NCwxKX0uc2Vzc2lvbi1hY3Rpb24tYnRuOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTI0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCl9LnNlc3Npb24tYWN0aW9uLWJ0bi5kZWxldGUtYnRuOmhvdmVye2JhY2tncm91bmQ6I2IyNGY0NTI0O2NvbG9yOnZhcigtLWRhbmdlcil9LnNlc3Npb24tYWN0aW9uLWJ0bi5tZXJnZS1idG46aG92ZXJ7YmFja2dyb3VuZDojNGY3YTU4Mjk7Y29sb3I6dmFyKC0tc3VjY2Vzcyl9LnNlc3Npb24tYWN0aW9uLWJ0bjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45KTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wNnN9LnNlc3Npb24tYWN0aW9uLWJ0bjpmb2N1cy12aXNpYmxle291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWFjY2VudCk7b3V0bGluZS1vZmZzZXQ6MnB4fS5zZXNzaW9uLW1hbmFnZS1jaGVjayBzcGFue3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7Ym9yZGVyLXJhZGl1czo2cHg7Ym9yZGVyOjEuNXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4yMik7YmFja2dyb3VuZDojZmZmOTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCAjN2Q1YjM5MGE7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxib3JkZXItY29sb3IgLjE2cyBlYXNlLGJveC1zaGFkb3cgLjE2cyBlYXNlfS5zZXNzaW9uLW1hbmFnZS1jaGVjayBpbnB1dDpjaGVja2VkK3NwYW57YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAxcHggM3B4ICNjNTY1M2Q0ZCxpbnNldCAwIDFweCAjZmZmM30uc2Vzc2lvbi1tYW5hZ2UtY2hlY2sgaW5wdXQ6Y2hlY2tlZCtzcGFuOmFmdGVye2NvbnRlbnQ6IiI7d2lkdGg6NnB4O2hlaWdodDoxMHB4O2JvcmRlci1yaWdodDoycHggc29saWQgI2ZmZjtib3JkZXItYm90dG9tOjJweCBzb2xpZCAjZmZmO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgtMXB4LC0xcHgpfS5zaWRlYmFyLWZvb3RlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wNik7cGFkZGluZzoxNHB4fS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG57YmFja2dyb3VuZDojZmZmZmZmNzM7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMDYpO2JvcmRlci1yYWRpdXM6MTBweDtwYWRkaW5nOjhweCA0cHg7Z2FwOjRweDtmb250LXNpemU6LjYyNXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjAxZW07Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxib3JkZXItY29sb3IgLjE2cyBlYXNlLGNvbG9yIC4xNnMgZWFzZSx0cmFuc2Zvcm0gLjE2cyBlYXNlLGJveC1zaGFkb3cgLjE2cyBlYXNlfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG46aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmZDk7Ym9yZGVyLWNvbG9yOiM3ZDViMzkyOTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpO2JveC1zaGFkb3c6MCAycHggOHB4ICM3ZDViMzkwZn0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRuOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk2KTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wNnN9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bi5hY3RpdmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjdmMiwjZmZmMmU0YzcpO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTcsMTAxLDYxLC4yOCk7Y29sb3I6dmFyKC0tYWNjZW50KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KSBzYXR1cmF0ZSgxODAlKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpIHNhdHVyYXRlKDE4MCUpO2JveC1zaGFkb3c6MCAzcHggMTBweCAtM3B4ICNjNTY1M2QzOCxpbnNldCAwIDFweCAjZmZmZmZmYjN9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bi5zaWRlYmFyLWxvZ291dDpob3ZlcntiYWNrZ3JvdW5kOiNiMjRmNDUxNDtib3JkZXItY29sb3I6I2IyNGY0NTMzO2NvbG9yOnZhcigtLWRhbmdlcik7b3BhY2l0eToxfS5zaWRlYmFyLWZvb3RlciAuYnRuLXByaW1hcnl7Ym94LXNoYWRvdzowIDZweCAxNnB4IC00cHggI2M1NjUzZDY2LDAgMnB4IDZweCAtMnB4ICNjNTY1M2Q0ZCxpbnNldCAwIDFweCAjZmZmMztib3JkZXItcmFkaXVzOjEycHh9LnNpZGViYXItZm9vdGVyIC5idG4tcHJpbWFyeTpob3Zlcntib3gtc2hhZG93OjAgMTBweCAyNHB4IC00cHggI2M1NjUzZDc1LDAgNHB4IDEwcHggLTJweCAjYzU2NTNkNTcsaW5zZXQgMCAxcHggI2ZmZmZmZjQwfS5zZXNzaW9ucy1saXN0OmVtcHR5OmJlZm9yZXtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6LjgxMjVyZW07bGV0dGVyLXNwYWNpbmc6LjAxZW19QHN1cHBvcnRzIG5vdCAoKGJhY2tkcm9wLWZpbHRlcjogYmx1cigxcHgpKSBvciAoLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMXB4KSkpey5zaWRlYmFye2JhY2tncm91bmQ6I2ZmZmJmNWZhfS5kcmF3ZXItYmFja2Ryb3B7YmFja2dyb3VuZDojMTQwZTA4OGN9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93e2JhY2tncm91bmQ6I2ZmZmFmMn19Lm1vZGFsLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3BhZGRpbmc6MThweCAyMnB4IDE2cHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7ZmxleC1zaHJpbms6MDttaW4taGVpZ2h0OjU2cHh9Lm1vZGFsLXRpdGxle2ZvbnQtc2l6ZToxLjA2MjVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGV0dGVyLXNwYWNpbmc6LS4wMWVtfS5tb2RhbC1ib2R5e3BhZGRpbmc6MjJweDtvdmVyZmxvdy15OmF1dG87ZmxleDoxIDEgYXV0bzttaW4taGVpZ2h0OjB9Lm1vZGFsLWJvZHkgLmZpZWxke21hcmdpbi1ib3R0b206MTRweH0ubW9kYWwtYm9keSAuZmllbGQ6bGFzdC1vZi10eXBle21hcmdpbi1ib3R0b206MTZweH0uc2Vzc2lvbi1raW5kLWhpbnQtcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjEycHh9LnNlc3Npb24ta2luZC1oaW50LXJvdyAjc2Vzc2lvbi1raW5kLWRlc2NyaXB0aW9ue2ZsZXg6MSAxIGF1dG99LnNlc3Npb24taW5saW5lLXRvZ2dsZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3doaXRlLXNwYWNlOm5vd3JhcDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZX0uc2Vzc2lvbi1pbmxpbmUtdG9nZ2xlLWxhYmVse2ZvbnQtc2l6ZTouNzVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uZmllbGQtaGludHttYXJnaW4tdG9wOjZweDtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xpbmUtaGVpZ2h0OjEuNX0udG9vbC1jYXJke3dpZHRoOjEwMCU7dGV4dC1hbGlnbjpsZWZ0O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjIpO2JvcmRlci1yYWRpdXM6MTRweDtiYWNrZ3JvdW5kOiNmZmZmZmZhNjtwYWRkaW5nOjE0cHg7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZmFzdCksdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS50b29sLWNhcmQ6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudC1zb2Z0KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMnB4KTtib3gtc2hhZG93OjAgOHB4IDI0cHggIzU5M2EyMDFhO2JhY2tncm91bmQ6I2ZmZmZmZmQ5fS50b29sLWNhcmQuYWN0aXZle2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6I2ZmZjdlZmZhO2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWFjY2VudC1tdXRlZCksMCA2cHggMjBweCAjNTkzYTIwMTR9c2VsZWN0LmZpZWxkLWlucHV0e2FwcGVhcmFuY2U6bm9uZTstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kLWltYWdlOnVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxNCcgaGVpZ2h0PScxNCcgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSdub25lJyBzdHJva2U9JyUyMzhjNzM1Zicgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnJTNFJTNDcGF0aCBkPSdNNiA5bDYgNiA2LTYnLyUzRSUzQy9zdmclM0UiKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCAxNHB4IGNlbnRlcjtwYWRkaW5nLXJpZ2h0OjQwcHg7Y3Vyc29yOnBvaW50ZXJ9LnN1Z2dlc3Rpb25zLXdyYXB7cG9zaXRpb246cmVsYXRpdmV9LnN1Z2dlc3Rpb25ze3Bvc2l0aW9uOmFic29sdXRlO3RvcDpjYWxjKDEwMCUgKyA0cHgpO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6NTA7YmFja2dyb3VuZDojZmZmYWY0ZmE7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO21heC1oZWlnaHQ6MjAwcHg7b3ZlcmZsb3cteTphdXRvfS5zdWdnZXN0aW9uLWl0ZW17d2lkdGg6MTAwJTt0ZXh0LWFsaWduOmxlZnQ7cGFkZGluZzoxMHB4IDEycHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2N1cnNvcjpwb2ludGVyO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44MTI1cmVtO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5zdWdnZXN0aW9uLWl0ZW06aG92ZXJ7YmFja2dyb3VuZDojZThjNWFlNTd9LnN1Z2dlc3Rpb24taXRlbSBzbWFsbHtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTttYXJnaW4tdG9wOjJweH0ucmVjZW50LXBhdGhzLWJ1YmJsZXN7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDo1cHg7bWFyZ2luLXRvcDo2cHh9LnJlY2VudC1wYXRocy1idWJibGVzOmVtcHR5e2Rpc3BsYXk6bm9uZX0ucmVjZW50LXBhdGgtYnViYmxle2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6MnB4IDEwcHg7YmFja2dyb3VuZDojZThjNWFlMmU7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czo5OTlweDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjY4NzVyZW07Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7d2hpdGUtc3BhY2U6bm93cmFwO21heC13aWR0aDoxODBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ucmVjZW50LXBhdGgtYnViYmxlOmhvdmVye2JhY2tncm91bmQ6I2U4YzVhZTY2O2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItaG92ZXIsIHZhcigtLWJvcmRlci1kZWZhdWx0KSk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uZXJyb3ItbWVzc2FnZXtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLWRhbmdlcik7cGFkZGluZzoxMHB4IDEycHg7YmFja2dyb3VuZDp2YXIoLS1kYW5nZXItbXV0ZWQpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTttYXJnaW4tdG9wOjEycHg7YW5pbWF0aW9uOnNoYWtlIC4zcyBlYXNlfUBrZXlmcmFtZXMgc2hha2V7MCUsdG97dHJhbnNmb3JtOnRyYW5zbGF0ZSgwKX0yNSV7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNHB4KX03NSV7dHJhbnNmb3JtOnRyYW5zbGF0ZSg0cHgpfX0uZmllbGQtaW5wdXRbZGF0YS1lcnJvcj10cnVlXXtib3JkZXItY29sb3I6dmFyKC0tZGFuZ2VyKTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1kYW5nZXItbXV0ZWQpfS5oaW50e2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTttYXJnaW4tdG9wOjEycHh9LmVtcHR5LXN0YXRle3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmc6NDBweCAyMHB4O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouODEyNXJlbX0uZW1wdHktc3RhdGUgc3Ryb25ne2Rpc3BsYXk6YmxvY2s7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc2l6ZTouOTVyZW07bWFyZ2luLWJvdHRvbTo4cHg7Zm9udC13ZWlnaHQ6NjAwfS5oaWRkZW57ZGlzcGxheTpub25lIWltcG9ydGFudH0ub2ZmbGluZS1iYW5uZXJ7cG9zaXRpb246Zml4ZWQ7Ym90dG9tOjgwcHg7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTtiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmcpO2NvbG9yOiNmZmY7cGFkZGluZzo4cHggMTZweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjUwMDt6LWluZGV4OjEwMDtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1lbGV2YXRlZCk7YW5pbWF0aW9uOnNsaWRlVXAgLjNzIGVhc2V9QGtleWZyYW1lcyBzbGlkZVVwezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpIHRyYW5zbGF0ZVkoMjBweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgdHJhbnNsYXRlWSgwKX19Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo2cHg7aGVpZ2h0OjZweH06Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM5Njc2NTU0ZDtib3JkZXItcmFkaXVzOjNweH06Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6Izk2NzY1NTgwfS5zZXNzaW9ucy1saXN0Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo0cHh9LnNlc3Npb25zLWxpc3Q6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LnNlc3Npb25zLWxpc3Q6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6Izk2NzY1NTQwO2JvcmRlci1yYWRpdXM6MnB4fS5zZXNzaW9ucy1saXN0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOiM5Njc2NTU2Nn06Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1hY2NlbnQpO291dGxpbmUtb2Zmc2V0OjJweH1idXR0b246Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLW9mZnNldDowfUBtZWRpYShtYXgtd2lkdGg6NzY4cHgpey5zaWRlYmFyLnBpbm5lZDpub3QoLmNvbGxhcHNlZCk6bm90KC5vcGVuKXt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMDAlKTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MH0ubWFpbi1sYXlvdXQuc2lkZWJhci1waW5uZWQ6bm90KC5zaWRlYmFyLWNvbGxhcHNlZCl7cGFkZGluZy1sZWZ0OjB9LmFwcC1jb250YWluZXJ7LS1sYXlvdXQtbWFpbi1maWxlLXBhbmVsLXdpZHRoOiAwcHh9LnNpZGViYXJ7d2lkdGg6bWluKDMwMHB4LGNhbGMoMTAwdncgLSAyMHB4KSk7dG9wOjB9LnRlcm1pbmFsLWNvbnRhaW5lcnttYXJnaW46MCA2cHggNnB4O21pbi1oZWlnaHQ6MH0uYnRue21pbi1oZWlnaHQ6NDBweH0uYnRuLXNte21pbi1oZWlnaHQ6MzZweDtwYWRkaW5nOjAgMTBweDtmb250LXNpemU6Ljc1cmVtO2hlaWdodDozNnB4fS5idG4taWNvbnt3aWR0aDozNnB4O2hlaWdodDozNnB4O21pbi1oZWlnaHQ6MzZweH0uY2hhdC1jb250YWluZXJ7cGFkZGluZzowIDEycHggMTJweH0uY2hhdC1tZXNzYWdle21heC13aWR0aDoxMDAlfS5zZXNzaW9uLWl0ZW17bWluLWhlaWdodDo1MnB4O3BhZGRpbmc6MTJweH0uc2Vzc2lvbi1hY3Rpb24tYnRue3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7bWluLXdpZHRoOjM2cHg7bWluLWhlaWdodDozNnB4fS5zZXNzaW9uLW1hbmFnZS1iYXIgLmJ0bnttaW4taGVpZ2h0OjMycHh9LmNsYXVkZS1oaXN0b3J5LXRvZ2dsZXttaW4taGVpZ2h0OjQwcHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcn0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRue21pbi1oZWlnaHQ6NDRweH0udHJlZS1pdGVte21pbi1oZWlnaHQ6NDRweDtwYWRkaW5nOjhweCAxMnB4fS5mb2xkZXItcGlja2VyLWl0ZW17bWluLWhlaWdodDo0NHB4fX1AbWVkaWEobWluLXdpZHRoOjc2OXB4KXsuZHJhd2VyLWJhY2tkcm9we2Rpc3BsYXk6bm9uZX19QG1lZGlhKG1heC13aWR0aDo2NDBweCl7OnJvb3R7LS1zaWRlYmFyLXdpZHRoOiAyODBweDstLWZpbGUtcGFuZWwtd2lkdGg6IDEwMCV9LmFwcC1jb250YWluZXJ7LS1sYXlvdXQtbWFpbi1maWxlLXBhbmVsLXdpZHRoOiAwcHh9aHRtbCxib2R5e21pbi1oZWlnaHQ6MTAwZHZoO2hlaWdodDoxMDBkdmh9Ym9keXtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2h9LmFwcC1jb250YWluZXJ7b3ZlcmZsb3c6aGlkZGVufS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZXt3aWR0aDozMHB4O2hlaWdodDozMHB4O2JvcmRlci1yYWRpdXM6NnB4fS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZSAuaGFtYnVyZ2VyLWljb257d2lkdGg6MTNweDtoZWlnaHQ6OXB4fS5zaWRlYmFye3RvcDowfS5zaWRlYmFyLWhlYWRlcntwYWRkaW5nOjEwcHggMTJweDttaW4taGVpZ2h0OjQ4cHg7Z2FwOjhweH0uc2lkZWJhci1oZWFkZXItYWN0aW9uc3tnYXA6NHB4fS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25ze2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNCwxZnIpO2dhcDo0cHh9LnNpZGViYXItZm9vdGVyLWFjdGlvbnM6aGFzKC5zaWRlYmFyLWJhY2stdG8tbmF0aXZlKTpoYXMoLnNpZGViYXItc3dpdGNoLXNlcnZlcil7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg1LDFmcil9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bnttaW4taGVpZ2h0OjQwcHg7cGFkZGluZzo2cHggNHB4fS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG4gc3BhbntkaXNwbGF5Om5vbmV9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0biBzdmd7d2lkdGg6MThweDtoZWlnaHQ6MThweH0uc2lkZWJhci1oZWFkZXItb3ZlcmZsb3d7bWluLXdpZHRoOjE4MHB4O21heC13aWR0aDpjYWxjKDEwMHZ3IC0gMjRweCl9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVte3BhZGRpbmc6MTFweCAxNHB4O2ZvbnQtc2l6ZTouODc1cmVtfS50ZXJtaW5hbC1oZWFkZXJ7cGFkZGluZzo1cHggOHB4O21pbi1oZWlnaHQ6MzJweH0udGVybWluYWwtdGl0bGV7Z2FwOjRweDtmb250LXNpemU6LjY4NzVyZW19LnRlcm1pbmFsLWluZm97Zm9udC1zaXplOi41NjI1cmVtfS5jdXJyZW50LXRhc2t7Zm9udC1zaXplOi41NjI1cmVtO3BhZGRpbmc6MXB4IDZweCAxcHggNHB4O2dhcDozcHh9Lm1haW4taGVhZGVyLXJvd3twYWRkaW5nOjJweCA2cHg7Z2FwOjRweH0udG9wYmFyLWJyYW5kLC50b3BiYXItY3dke2Rpc3BsYXk6bm9uZX0udG9wYmFyLXNlc3Npb24tdGl0bGV7bWF4LXdpZHRoOjE0MHB4O2ZvbnQtc2l6ZTouNzhyZW19LnNlc3Npb24tc3RhdHVzLXBpbGx7Zm9udC1zaXplOi42MjVyZW07cGFkZGluZzoxcHggN3B4IDFweCA1cHg7bWF4LXdpZHRoOjExMHB4fS5zZXNzaW9uLXN0YXR1cy1waWxsIC5zZXNzaW9uLXN0YXR1cy1kb3R7d2lkdGg6NXB4O2hlaWdodDo1cHh9LnRvcGJhci1tb3JlLW1lbnV7bWluLXdpZHRoOjE1NnB4fS50ZXJtaW5hbC1zY2FsZS1vdmVybGF5e3RvcDo2cHg7cmlnaHQ6NnB4O3BhZGRpbmc6MnB4O2dhcDoxcHh9LnRlcm1pbmFsLXNjYWxlLW92ZXJsYXktYnRue21pbi13aWR0aDoyNnB4O2hlaWdodDoyNnB4O2ZvbnQtc2l6ZTouNzVyZW19LnRlcm1pbmFsLXNjYWxlLW92ZXJsYXktbGFiZWx7bWluLXdpZHRoOjI4cHg7Zm9udC1zaXplOi41NjI1cmVtO3BhZGRpbmc6MCAycHh9Lm1haW4tbGF5b3V0e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4OjE7bWluLWhlaWdodDowO2hlaWdodDoxMDAlO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLWxlZnQ6MH0uc2lkZWJhcnt0b3A6MDt3aWR0aDptaW4oMjYwcHgsY2FsYygxMDB2dyAtIDEycHgpKTttYXgtaGVpZ2h0Om5vbmU7Ym9yZGVyLWJvdHRvbTpub25lfS5tYWluLWNvbnRlbnR7ZmxleDoxO21pbi1oZWlnaHQ6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO292ZXJmbG93OmhpZGRlbn0udGVybWluYWwtY29udGFpbmVye2ZsZXg6MSAxIGF1dG87bWluLWhlaWdodDowO21heC1oZWlnaHQ6bm9uZX0uc2Vzc2lvbnMtbGlzdHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXg6MSAwIGF1dG87bWluLWhlaWdodDowO292ZXJmbG93OnZpc2libGU7cGFkZGluZzo0cHh9LnNlc3Npb24taXRlbXt3aWR0aDoxMDAlO21heC13aWR0aDpub25lO21hcmdpbi1ib3R0b206NHB4O3BhZGRpbmc6OHB4IDEwcHg7bWluLWhlaWdodDo0NHB4O2JvcmRlci1yYWRpdXM6NnB4fS5zZXNzaW9uLWFjdGlvbi1idG57d2lkdGg6MzJweDtoZWlnaHQ6MzJweDttaW4taGVpZ2h0OjMycHg7bWluLXdpZHRoOjMycHg7Ym9yZGVyLXJhZGl1czo2cHh9LmlucHV0LXBhbmVse3otaW5kZXg6MzA7cGFkZGluZzo0cHggNnB4O3BhZGRpbmctYm90dG9tOmNhbGMoNnB4ICsgdmFyKC0taW5wdXQtc2FmZS1ib3R0b20sIHZhcigtLXNhZmUtYm90dG9tLCAwcHgpKSArIHZhcigtLWtleWJvYXJkLW9mZnNldCwgMHB4KSk7ZmxleDowIDAgYXV0bzttYXJnaW4tdG9wOmF1dG87YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmNmYxZTg4MCwjZjZmMWU4ZTAgMzAlLCNmNmYxZTgpLCNmNmYxZTg7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTJweCl9LmlucHV0LXRleHRhcmVhe3BhZGRpbmctYm90dG9tOjRweH0uaW5wdXQtY29tcG9zZXJ7Ym9yZGVyLXJhZGl1czoxNHB4O2JveC1zaGFkb3c6MCAzcHggMTRweCAjNTkzYTIwMTJ9LmJ0bi1jaXJjbGV7d2lkdGg6MjZweDtoZWlnaHQ6MjZweDtib3JkZXItcmFkaXVzOjUwJX0uYnRuLWNpcmNsZS1zZW5kIHN2ZywuYnRuLWNpcmNsZS1zdG9wIHN2Z3t3aWR0aDoxMnB4O2hlaWdodDoxMnB4fS5pbnB1dC10ZXh0YXJlYSwuZmllbGQtaW5wdXR7Zm9udC1zaXplOjE2cHh9LmlucHV0LXRleHRhcmVhe21pbi1oZWlnaHQ6MzJweDtwYWRkaW5nOjdweCAzMHB4IDVweCA4cHg7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6MS4zNX0uaW5wdXQtdGV4dGFyZWE6OnBsYWNlaG9sZGVye2ZvbnQtc2l6ZToxNXB4fS5jaGF0LW1vZGUtc2VsZWN0e21heC13aWR0aDo2NXB4O2ZvbnQtc2l6ZTouNTYyNXJlbTtoZWlnaHQ6MjJweDttaW4taGVpZ2h0OjIycHg7cGFkZGluZzowIDE0cHggMCA0cHg7Ym9yZGVyLXJhZGl1czo1cHh9LmlucHV0LWhpbnR7Zm9udC1zaXplOi40NXJlbTttYXgtd2lkdGg6MThjaDtvcGFjaXR5Oi42fS50ZXJtaW5hbC1qdW1wLWJvdHRvbXt3aWR0aDozMnB4O2hlaWdodDozMnB4O3BhZGRpbmc6MDtyaWdodDoxMHB4O2JvdHRvbToxMnB4fS5jaGF0LXVucmVhZC1idWJibGV7aGVpZ2h0OjMwcHg7bWluLXdpZHRoOjMwcHg7cmlnaHQ6MTBweDtib3R0b206OHB4O3BhZGRpbmc6MCA5cHg7Zm9udC1zaXplOi43MnJlbX0uY2hhdC11bnJlYWQtYnViYmxlLmhhcy11bnJlYWR7cGFkZGluZzowIDExcHggMCA5cHh9LmNoYXQtdW5yZWFkLWJ1YmJsZS1jb3VudHtmb250LXNpemU6LjcycmVtfS5taW5pLWtleWJvYXJkLWZhYnt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O2JvdHRvbTo1MHB4O3JpZ2h0OjEwcHg7Zm9udC1zaXplOjFyZW19Lm1pbmkta2V5Ym9hcmR7Ym90dG9tOjUwcHg7cmlnaHQ6OHB4O2xlZnQ6OHB4O21pbi13aWR0aDowO2JvcmRlci1yYWRpdXM6MTBweH0uY2hhdC1jb250YWluZXJ7bWluLWhlaWdodDowO2ZsZXg6MSAxIGF1dG87b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6bm9uZTtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LmNoYXQtY29udGFpbmVyLmFjdGl2ZXtkaXNwbGF5OmZsZXh9LmZvbGRlci1waWNrZXItY29udGFpbmVye21hcmdpbi1ib3R0b206NHB4fS5mb2xkZXItcGlja2VyLXF1aWNrLWJ0bnttaW4taGVpZ2h0OjMycHg7cGFkZGluZzo2cHggMTBweDtmb250LXNpemU6LjY4NzVyZW07Ym9yZGVyLXJhZGl1czo2cHh9LmZvbGRlci1icmVhZGNydW1ie3BhZGRpbmc6NHB4IDZweDtmb250LXNpemU6LjU2MjVyZW07bWFyZ2luLWJvdHRvbTozcHg7b3ZlcmZsb3cteDphdXRvOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNoO3doaXRlLXNwYWNlOm5vd3JhcDtmbGV4LXdyYXA6bm93cmFwfS5mb2xkZXItcGlja2Vye3BhZGRpbmc6OHB4IDEwcHg7bWluLWhlaWdodDozNnB4fS5mb2xkZXItcGlja2VyLWlucHV0e2ZvbnQtc2l6ZToxNnB4O3BhZGRpbmc6NnB4fS5mb2xkZXItcGlja2VyLWRyb3Bkb3due21heC1oZWlnaHQ6MTgwcHh9LmZvbGRlci1waWNrZXItaXRlbXtwYWRkaW5nOjhweCAxMHB4O21pbi1oZWlnaHQ6MzZweH0uZm9sZGVyLXJlY2VudC1pdGVte3BhZGRpbmc6NnB4IDEwcHg7bWluLWhlaWdodDozNnB4fS5mb2xkZXItcGlja2VyLWNvbXBhY3Qtcm93e3BhZGRpbmc6NnB4fS5mb2xkZXItcGlja2VyLWNvbXBhY3QtaW5wdXR7Zm9udC1zaXplOi42MjVyZW19LndvcmtpbmctZGlyLWluZGljYXRvcntmb250LXNpemU6LjU2MjVyZW07cGFkZGluZzoxcHggNHB4O21heC13aWR0aDoxMjBweH0udG9kby1wcm9ncmVzcy1oZWFkZXJ7cGFkZGluZzozcHggNnB4O2dhcDo0cHh9LnRvZG8tcHJvZ3Jlc3MtY291bnRlciwudG9kby1wcm9ncmVzcy10YXNre2ZvbnQtc2l6ZTouNTYyNXJlbX0udG9kby1wcm9ncmVzcy1jaGV2cm9ue3dpZHRoOjEycHg7aGVpZ2h0OjEycHh9LnRvZG8tcHJvZ3Jlc3MtYm9keXtwYWRkaW5nOjRweCA2cHh9LmxvZ2luLWNvbnRhaW5lcnttaW4taGVpZ2h0OjEwMGR2aDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O3BhZGRpbmc6OHB4IDhweCBjYWxjKDhweCArIHZhcigtLXNhZmUtYm90dG9tLCAwcHgpKX0ubG9naW4tY2FyZHttYXJnaW4tdG9wOm1heCg2cHgsZW52KHNhZmUtYXJlYS1pbnNldC10b3AsMHB4KSl9LmxvZ2luLWhlYWRlcntwYWRkaW5nOjE0cHggMTJweCAxMHB4fS5sb2dpbi1ib2R5e3BhZGRpbmc6MTJweH0uYnRue21pbi1oZWlnaHQ6NDBweH0uYnRuLXNte21pbi1oZWlnaHQ6MzJweH0uY2hhdC1tZXNzYWdlLWJ1YmJsZXtwYWRkaW5nOjhweCAxMHB4O2ZvbnQtc2l6ZTouNzVyZW19LmNoYXQtbWVzc2FnZS1hdmF0YXJ7Zm9udC1zaXplOi42ODc1cmVtfS5tb2RhbC1iYWNrZHJvcHtwYWRkaW5nOjhweDtwYWRkaW5nLXRvcDptYXgoOHB4LHZhcigtLXdhbmQtc2FmZS10b3ApKTtwYWRkaW5nLWxlZnQ6bWF4KDhweCx2YXIoLS13YW5kLXNhZmUtbGVmdCkpO3BhZGRpbmctcmlnaHQ6bWF4KDhweCx2YXIoLS13YW5kLXNhZmUtcmlnaHQpKTthbGlnbi1pdGVtczpmbGV4LWVuZH0ubW9kYWx7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDo4NXZoO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKSB2YXIoLS1yYWRpdXMtbWQpIDAgMDttYXJnaW4tYm90dG9tOnZhcigtLXNhZmUtYm90dG9tLCAwcHgpfS5tb2RhbC1oZWFkZXJ7cGFkZGluZzoxMHB4IDEycHg7bWluLWhlaWdodDo0MHB4fS5tb2RhbC1ib2R5e3BhZGRpbmc6MTBweCAxMnB4fS5tb2RhbC1mb290ZXJ7cGFkZGluZzo4cHggMTJweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtZm9vdGVye3BhZGRpbmc6MTBweCAxMnB4IDE0cHh9LnRvb2wtY2FyZHtwYWRkaW5nOjEwcHg7bWluLWhlaWdodDozNnB4fS5tYWluLWNvbnRlbnQuZmlsZS1wYW5lbC1vcGVue21hcmdpbi1yaWdodDowfS5maWxlLXNpZGUtcGFuZWx7d2lkdGg6MTAwJX0uZmlsZS1zaWRlLXBhbmVsLWhlYWRlcntwYWRkaW5nOjEwcHggMTJweDttaW4taGVpZ2h0OjQ4cHh9LmZpbGUtc2lkZS1wYW5lbC1pY29uYnRue3dpZHRoOjM0cHg7aGVpZ2h0OjM0cHh9LmZpbGUtZXhwbG9yZXItaGVhZGVye3BhZGRpbmc6NnB4IDEwcHggNHB4O2dhcDo2cHh9LmZpbGUtZXhwbG9yZXItdXB7d2lkdGg6MzJweDtoZWlnaHQ6MzJweH0uZmlsZS1zZWFyY2gtYm94e3BhZGRpbmc6NnB4IDEwcHggOHB4fS5maWxlLXNlYXJjaC1pY29ue2xlZnQ6MjBweH0uZmlsZS1zZWFyY2gtY2xlYXJ7cmlnaHQ6MTZweH0uZmlsZS1zZWFyY2gtaW5wdXR7bWluLWhlaWdodDozNHB4O2ZvbnQtc2l6ZToxNnB4O3BhZGRpbmc6N3B4IDMycHggN3B4IDMwcHh9LmJsYW5rLWNoYXR7cGFkZGluZzoxNnB4IDEycHg7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0uYmxhbmstY2hhdC1pbm5lcnttYXgtd2lkdGg6MTAwJX0uYmxhbmstY2hhdC1sb2dve3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHg7Zm9udC1zaXplOjI0cHg7Ym9yZGVyLXJhZGl1czoxMnB4O21hcmdpbi1ib3R0b206MTBweH0uYmxhbmstY2hhdC10aXRsZXtmb250LXNpemU6MS4xMjVyZW19LmJsYW5rLWNoYXQtc3VidGl0bGV7Zm9udC1zaXplOi43NXJlbTttYXJnaW4tYm90dG9tOjE2cHh9LmJsYW5rLWNoYXQtdG9vbHN7Z2FwOjRweDttYXJnaW4tYm90dG9tOjhweH0uYmxhbmstY2hhdC10b29sLWJ0bntwYWRkaW5nOjZweCAxMHB4O2ZvbnQtc2l6ZTouNzVyZW07bWluLWhlaWdodDo0NHB4fS5ub3RpZmljYXRpb24tYnViYmxle21heC13aWR0aDpjYWxjKDEwMHZ3IC0gMjRweCl9LmJsYW5rLWNoYXQtY3dkLWRyb3Bkb3due21pbi13aWR0aDowO3dpZHRoOmNhbGMoMTAwdncgLSAzMnB4KTttYXgtd2lkdGg6MzIwcHh9LnRvYXN0LW1lc3NhZ2V7bWF4LXdpZHRoOmNhbGMoMTAwdncgLSAzMnB4KX19QG1lZGlhKG1pbi13aWR0aDozOTFweClhbmQgKG1heC13aWR0aDo0MjBweCl7LnRlcm1pbmFsLWNvbnRhaW5lcnttYXJnaW46MCA2cHggNnB4O3BhZGRpbmc6NnB4fS5pbnB1dC1wYW5lbHtwYWRkaW5nOjZweCAxMHB4O3BhZGRpbmctYm90dG9tOmNhbGMoOHB4ICsgdmFyKC0taW5wdXQtc2FmZS1ib3R0b20sIHZhcigtLXNhZmUtYm90dG9tLCAwcHgpKSl9fUBtZWRpYShtYXgtd2lkdGg6MzkwcHgpey5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZXt3aWR0aDoyOHB4O2hlaWdodDoyOHB4fS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZSAuaGFtYnVyZ2VyLWljb257d2lkdGg6MTFweDtoZWlnaHQ6OHB4fS50ZXJtaW5hbC1oZWFkZXJ7cGFkZGluZzo0cHggNnB4O21pbi1oZWlnaHQ6MjhweH0udGVybWluYWwtaW5mb3tkaXNwbGF5Om5vbmV9LnRlcm1pbmFsLWNvbnRhaW5lcnttYXJnaW46MCA0cHggNHB4O3BhZGRpbmc6NHB4fS5pbnB1dC1wYW5lbHtwYWRkaW5nOjVweCA2cHg7cGFkZGluZy1ib3R0b206Y2FsYyg2cHggKyB2YXIoLS1pbnB1dC1zYWZlLWJvdHRvbSwgdmFyKC0tc2FmZS1ib3R0b20sIDBweCkpKX0uaW5wdXQtY29tcG9zZXJ7Ym9yZGVyLXJhZGl1czo4cHh9LmlucHV0LXRleHRhcmVhe21pbi1oZWlnaHQ6MjhweDtwYWRkaW5nOjVweCAyOHB4IDJweCA2cHg7Zm9udC1zaXplOjE2cHh9LmJ0bi1jaXJjbGV7d2lkdGg6MjhweDtoZWlnaHQ6MjhweDttaW4td2lkdGg6MjhweH0uc2Vzc2lvbi1pdGVte3BhZGRpbmc6NnB4IDhweDttaW4taGVpZ2h0OjQwcHh9LnNlc3Npb24tYWN0aW9uLWJ0bnt3aWR0aDozMHB4O2hlaWdodDozMHB4O21pbi13aWR0aDozMHB4O21pbi1oZWlnaHQ6MzBweH0uc2lkZWJhcnt0b3A6MDt3aWR0aDptaW4oMjQwcHgsY2FsYygxMDB2dyAtIDEwcHgpKX0uc2lkZWJhci1mb290ZXItYWN0aW9uc3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDQsMWZyKX0uc2lkZWJhci1mb290ZXItYWN0aW9uczpoYXMoLnNpZGViYXItYmFjay10by1uYXRpdmUpOmhhcyguc2lkZWJhci1zd2l0Y2gtc2VydmVyKXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDUsMWZyKX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRuIHNwYW57ZGlzcGxheTpub25lfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG57bWluLWhlaWdodDozNnB4O3BhZGRpbmc6NnB4fS5tb2RhbHttYXgtaGVpZ2h0Ojgwdmh9Lm1vZGFsLWhlYWRlcntwYWRkaW5nOjhweCAxMHB4O21pbi1oZWlnaHQ6MzZweH0ubW9kYWwtYm9keXtwYWRkaW5nOjhweCAxMHB4fS5zZXNzaW9uLW1vZGFsIC5tb2RhbC1mb290ZXJ7cGFkZGluZzo4cHggMTBweCAxMnB4fS5maWVsZC1yb3d7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtnYXA6MH0uYnRue21pbi1oZWlnaHQ6MzZweDtwYWRkaW5nOjhweCAxMnB4fS5idG4tc217bWluLWhlaWdodDoyOHB4O3BhZGRpbmc6NHB4IDhweH19QG1lZGlhKG1pbi13aWR0aDo2NDFweClhbmQgKG1heC13aWR0aDo3NjhweCl7LnNpZGViYXJ7dG9wOjA7d2lkdGg6bWluKDMyMHB4LGNhbGMoMTAwdncgLSA0MHB4KSl9LnNlc3Npb24taXRlbXttaW4taGVpZ2h0OjUycHg7cGFkZGluZzoxMXB4IDEycHh9LnNlc3Npb24tYWN0aW9uLWJ0bnt3aWR0aDozNHB4O2hlaWdodDozNHB4O21pbi13aWR0aDozNHB4O21pbi1oZWlnaHQ6MzRweH0uYnRue21pbi1oZWlnaHQ6NDJweH0uYnRuLXNte21pbi1oZWlnaHQ6MzZweH0uZmxvYXRpbmctdG9nZ2xle21pbi13aWR0aDo0OHB4O21pbi1oZWlnaHQ6NDhweH19QG1lZGlhKG1heC1oZWlnaHQ6NDIwcHgpYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZXt3aWR0aDoyOHB4O2hlaWdodDoyOHB4fS5zaWRlYmFye3RvcDowfS50ZXJtaW5hbC1jb250YWluZXJ7bWluLWhlaWdodDo1NXZoO21hcmdpbjo2cHg7cGFkZGluZzo4cHh9LmNoYXQtY29udGFpbmVye3BhZGRpbmc6MCAxMHB4IDhweH0uaW5wdXQtcGFuZWx7cGFkZGluZzo4cHg7cGFkZGluZy1ib3R0b206Y2FsYyg4cHggKyB2YXIoLS1pbnB1dC1zYWZlLWJvdHRvbSwgdmFyKC0tc2FmZS1ib3R0b20sIDBweCkpKX19QG1lZGlhKG1heC13aWR0aDo0ODBweCl7LmNoYXQtY29udGFpbmVye3BhZGRpbmc6MCA2cHggOHB4fS5jaGF0LW1lc3NhZ2Vze3BhZGRpbmctbGVmdDoycHg7cGFkZGluZy1yaWdodDoycHg7Z2FwOjEycHh9LmNoYXQtbWVzc2FnZXstLWNoYXQtY2FyZC1tYXgtd2lkdGg6IDEwMCV9LnRvb2wtdXNlLWhlYWRlcntmbGV4LXdyYXA6d3JhcDtyb3ctZ2FwOjRweDtwYWRkaW5nOjhweCAxMnB4fS50b29sLXVzZS1maWxle21heC13aWR0aDoxMDAlfS50b29sLXVzZS1ib2R5e3BhZGRpbmc6MTBweCAxMnB4fS5zdWJhZ2VudC1yZXBseXtwYWRkaW5nOjlweCAxMnB4fS5zdWJhZ2VudC1yZXBseS5jb2xsYXBzaWJsZXtwYWRkaW5nOjB9LnN1YmFnZW50LXJlcGx5LmZpbmFse3BhZGRpbmc6OXB4IDExcHh9LnN1YmFnZW50LXBhbmVse21hcmdpbjo2cHggMH0uc3ViYWdlbnQtcGFuZWwtaGVhZGVye3BhZGRpbmc6N3B4IDEwcHg7Z2FwOjZweDtmb250LXNpemU6Ljc0cmVtfS5zdWJhZ2VudC1wYW5lbC1hdHRyaWJ1dGlvbnt3aGl0ZS1zcGFjZTpub3JtYWw7bGluZS1oZWlnaHQ6MS40fS5zdWJhZ2VudC1wYW5lbC10YWd7bWFyZ2luOjAgNHB4O3BhZGRpbmc6MCA0cHh9LnN1YmFnZW50LXBhbmVsLWJvZHl7cGFkZGluZzo5cHggMTFweH0uc3ViYWdlbnQtcGFuZWxbZGF0YS1leHBhbmRlZD1mYWxzZV0gLnN1YmFnZW50LXBhbmVsLWJvZHl7bWF4LWhlaWdodDoxOGVtfS5zdWJhZ2VudC1wYW5lbFtkYXRhLWV4cGFuZGVkPXRydWVdIC5zdWJhZ2VudC1wYW5lbC1ib2R5e21heC1oZWlnaHQ6NjB2aH0uc3ViYWdlbnQtcGFuZWwtZm9vdGVye3BhZGRpbmc6NXB4IDEwcHh9LnN1YmFnZW50LXBhbmVsLWZvb3Rlci1oaW50e2Rpc3BsYXk6bm9uZX0ubWFya2Rvd24tY29udGVudCAuY29kZS1ibG9ja3ttYXJnaW46OHB4IDB9Lm1hcmtkb3duLWNvbnRlbnQgcHJlLC5tYXJrZG93bi1jb250ZW50IC5jb2RlLWJsb2NrIHByZSwuc3ViYWdlbnQtcmVwbHkgcHJle3BhZGRpbmc6MTBweH0uZGlmZi1jb2x1bW5ze2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZGlmZi1jb2wsLmRpZmYtY29sLWhhbGYsLmRpZmYtY29sLWZ1bGx7ZmxleDoxIDEgYXV0bzt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlfS50ZXJtLWhlYWRlciwuZGlmZi1oZWFkZXJ7ZmxleC13cmFwOndyYXA7cm93LWdhcDo0cHh9LmRpZmYtcGF0aHtmbGV4LWJhc2lzOjEwMCU7b3JkZXI6OTl9LmlubGluZS10b29sLXJvd3tmbGV4LXdyYXA6d3JhcDtyb3ctZ2FwOjJweH0uaW5saW5lLXRvb2wtbWV0YXttYXgtd2lkdGg6MTAwJTtmbGV4LWJhc2lzOjEwMCU7cGFkZGluZy1sZWZ0OjIycHh9fS5zZXNzaW9uLWtpbmQtYmFkZ2V7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7aGVpZ2h0OjE4cHg7cGFkZGluZzowIDZweDtib3JkZXItcmFkaXVzOjk5OXB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjAxZW07Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtmbGV4LXNocmluazowfS5zZXNzaW9uLWtpbmQtYmFkZ2UucHR5e2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtiYWNrZ3JvdW5kOiM3ODgwOGMxZjtib3JkZXItY29sb3I6Izc4ODA4YzJlfS5zZXNzaW9uLWtpbmQtYmFkZ2Uuc3RydWN0dXJlZHtjb2xvcjojZDE4YjUyO2JhY2tncm91bmQ6I2Q3N2E1MjFhO2JvcmRlci1jb2xvcjojZDc3YTUyMzh9LnNlc3Npb24ta2luZC1iYWRnZS53b3JrdHJlZXtjb2xvcjojMmY2ZjU0O2JhY2tncm91bmQ6IzRmN2E1ODFmO2JvcmRlci1jb2xvcjojNGY3YTU4Mzh9LnNlc3Npb24ta2luZC1kaXNwbGF5e2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6MXB4IDZweDtib3JkZXItcmFkaXVzOjk5OXB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6IzhhNGIyNDtiYWNrZ3JvdW5kOiNkNzdhNTIxZjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjE1LDEyMiw4MiwuMil9LnN0cnVjdHVyZWQtdG9vbC1oaW50e21hcmdpbjo0cHggMCA4cHg7cGFkZGluZzo2cHggMTBweDtib3JkZXItcmFkaXVzOjEwcHg7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtiYWNrZ3JvdW5kOiNkNzdhNTIxNDtib3JkZXI6MXB4IGRhc2hlZCByZ2JhKDIxNSwxMjIsODIsLjE4KX0uYmxhbmstY2hhdHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ZmxleDoxO3BhZGRpbmc6MjBweCAxNnB4O21pbi1oZWlnaHQ6MDtvdmVyZmxvdzphdXRvfS5ibGFuay1jaGF0LWlubmVye3dpZHRoOjEwMCU7bWF4LXdpZHRoOjU2MHB4O3RleHQtYWxpZ246Y2VudGVyfS5ibGFuay1jaGF0LWxvZ297d2lkdGg6NTZweDtoZWlnaHQ6NTZweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2Q3N2E1MiwjYTk1MTMwKTtib3JkZXItcmFkaXVzOjE2cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZToyOHB4O2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojZmZmO21hcmdpbjowIGF1dG8gMTRweDtib3gtc2hhZG93OjAgNHB4IDE2cHggI2M1NjUzZDM4fS5ibGFuay1jaGF0LXRpdGxle2ZvbnQtc2l6ZToxLjM3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTttYXJnaW46MCAwIDZweH0uYmxhbmstY2hhdC1zdWJ0aXRsZXtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bWFyZ2luOjAgMCAyMHB4fS5ibGFuay1jaGF0LXRvb2xze2Rpc3BsYXk6ZmxleDtnYXA6OHB4O2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luLWJvdHRvbToxMnB4O2ZsZXgtd3JhcDp3cmFwfS5ibGFuay1jaGF0LXRvb2wtYnRue3BhZGRpbmc6OHB4IDE0cHg7Ym9yZGVyOjEuNXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDojZmZmZmZmYjM7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjUwMDtmb250LWZhbWlseTppbmhlcml0O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O21pbi1oZWlnaHQ6NDBweH0uYmxhbmstY2hhdC10b29sLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tYWNjZW50KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNHB4IDEycHggIzU5M2EyMDE0fS5ibGFuay1jaGF0LXRvb2wtYnRuIC50b29sLWljb257Zm9udC1zaXplOjEuMTI1cmVtfS5ibGFuay1jaGF0LWN3ZC13cmFwe3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO21hcmdpbi10b3A6OHB4fS5ibGFuay1jaGF0LWN3ZHtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7cGFkZGluZzo0cHggOHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTt0cmFuc2l0aW9uOmNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO3VzZXItc2VsZWN0Om5vbmV9LmJsYW5rLWNoYXQtY3dkOmhvdmVye2NvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpfS5ibGFuay1jaGF0LWN3ZC1pY29ue2ZvbnQtc2l6ZTouODEyNXJlbX0uYmxhbmstY2hhdC1jd2QtcGF0aHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO21heC13aWR0aDoyODBweDtvdmVyZmxvdy14OmF1dG87b3ZlcmZsb3cteTpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3Njcm9sbGJhci13aWR0aDpub25lfS5ibGFuay1jaGF0LWN3ZC1wYXRoOjotd2Via2l0LXNjcm9sbGJhcntoZWlnaHQ6M3B4fS5ibGFuay1jaGF0LWN3ZC1wYXRoOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM5Njc2NTU1Mjtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKX0uYmxhbmstY2hhdC1jd2Q6aG92ZXIgLmJsYW5rLWNoYXQtY3dkLXBhdGh7c2Nyb2xsYmFyLXdpZHRoOnRoaW59LmJsYW5rLWNoYXQtY3dkOmhvdmVyIC5ibGFuay1jaGF0LWN3ZC1wYXRoOjotd2Via2l0LXNjcm9sbGJhcntoZWlnaHQ6NHB4fS5ibGFuay1jaGF0LWN3ZC1hcnJvd3tmb250LXNpemU6LjYyNXJlbTtvcGFjaXR5Oi42O3RyYW5zaXRpb246dHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmJsYW5rLWNoYXQtY3dkLWRyb3Bkb3due3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMDAlO2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSk7bWluLXdpZHRoOjI2MHB4O21heC13aWR0aDo0MDBweDttYXgtaGVpZ2h0OjI0MHB4O292ZXJmbG93LXk6YXV0bztiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtib3gtc2hhZG93OjAgNHB4IDE2cHggIzAwMDAwMDFhO3otaW5kZXg6NTA7bWFyZ2luLXRvcDo0cHg7cGFkZGluZzo0cHh9LmJsYW5rLWNoYXQtY3dkLWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6NnB4IDEwcHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5ibGFuay1jaGF0LWN3ZC1pdGVtOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtjb2xvcjp2YXIoLS1hY2NlbnQpfS5ibGFuay1jaGF0LWN3ZC1pdGVtLmFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Y29sb3I6dmFyKC0tYWNjZW50KTtmb250LXdlaWdodDo1MDB9LmJsYW5rLWNoYXQtY3dkLWl0ZW0tbGFiZWx7Zm9udC1zaXplOi42MjVyZW07YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2NvbG9yOnZhcigtLWFjY2VudCk7cGFkZGluZzoxcHggNXB4O2JvcmRlci1yYWRpdXM6M3B4O2ZvbnQtd2VpZ2h0OjUwMDt3aGl0ZS1zcGFjZTpub3dyYXB9LmJsYW5rLWNoYXQtY3dkLWl0ZW0tcGF0aHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0uYmxhbmstY2hhdC1jd2QtbG9hZGluZ3twYWRkaW5nOjhweCAxMHB4O2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7dGV4dC1hbGlnbjpjZW50ZXJ9LmNoYXQtbW9kZS1zZWxlY3R7Zm9udC1mYW1pbHk6aW5oZXJpdDtjdXJzb3I6cG9pbnRlcjtvdXRsaW5lOm5vbmV9LmNoYXQtbW9kZS1zZWxlY3Q6Zm9jdXN7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCl9LnRvYXN0LW1lc3NhZ2V7cG9zaXRpb246Zml4ZWQ7dG9wOjI0cHg7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTtwYWRkaW5nOjEwcHggMjBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7Zm9udC1zaXplOi44NzVyZW07ei1pbmRleDo5OTk5O2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LWxnKTthbmltYXRpb246dG9hc3QtaW4gLjIycyBjdWJpYy1iZXppZXIoLjM0LDEuNTYsLjY0LDEpfS50b2FzdC1lcnJvcntiYWNrZ3JvdW5kOnZhcigtLWRhbmdlcik7Y29sb3I6I2ZmZn1Aa2V5ZnJhbWVzIHRvYXN0LWluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpIHRyYW5zbGF0ZVkoLTEycHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpIHRyYW5zbGF0ZVkoMCl9fS5ub3RpZmljYXRpb24tYnViYmxle3Bvc2l0aW9uOmZpeGVkO2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSk7ei1pbmRleDoxMDAwMDttaW4td2lkdGg6MjIwcHg7bWF4LXdpZHRoOjMyMHB4O2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzKTtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1sZyk7cGFkZGluZzo4cHggMTJweDthbmltYXRpb246bm90aWZpY2F0aW9uLXNsaWRlLWluIC4zcyBjdWJpYy1iZXppZXIoLjM0LDEuNTYsLjY0LDEpO3RyYW5zaXRpb246dG9wIC4yNXMgZWFzZSxvcGFjaXR5IC4yNXMgZWFzZX0ubm90aWZpY2F0aW9uLWJ1YmJsZS5zbGlkZS1vdXR7YW5pbWF0aW9uOm5vdGlmaWNhdGlvbi1zbGlkZS1vdXQgLjI1cyBlYXNlIGZvcndhcmRzO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSl9Lm5vdGlmaWNhdGlvbi1idWJibGUtaGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDttYXJnaW4tYm90dG9tOjJweH0ubm90aWZpY2F0aW9uLWJ1YmJsZS1pY29ue3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7ZmxleC1zaHJpbms6MDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2ZvbnQtc2l6ZToxMHB4fS5ub3RpZmljYXRpb24tYnViYmxlLWljb24uaW5mb3tiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6I2ZmZn0ubm90aWZpY2F0aW9uLWJ1YmJsZS1pY29uLndhcm5pbmd7YmFja2dyb3VuZDp2YXIoLS13YXJuaW5nKTtjb2xvcjojZmZmfS5ub3RpZmljYXRpb24tYnViYmxlLWljb24uc3VjY2Vzc3tiYWNrZ3JvdW5kOnZhcigtLXN1Y2Nlc3MpO2NvbG9yOiNmZmZ9Lm5vdGlmaWNhdGlvbi1idWJibGUtdGl0bGV7Zm9udC1zaXplOi43NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tZmctcHJpbWFyeSk7ZmxleDoxO21pbi13aWR0aDowfS5ub3RpZmljYXRpb24tYnViYmxlLWNsb3Nle2JhY2tncm91bmQ6bm9uZTtib3JkZXI6bm9uZTtjb2xvcjp2YXIoLS1mZy1tdXRlZCk7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MTtwYWRkaW5nOjFweCAzcHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2ZsZXgtc2hyaW5rOjB9Lm5vdGlmaWNhdGlvbi1idWJibGUtY2xvc2U6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy1ob3Zlcik7Y29sb3I6dmFyKC0tZmctcHJpbWFyeSl9Lm5vdGlmaWNhdGlvbi1idWJibGUtYm9keXtmb250LXNpemU6LjdyZW07Y29sb3I6dmFyKC0tZmctc2Vjb25kYXJ5KTtsaW5lLWhlaWdodDoxLjQ7bWFyZ2luLWJvdHRvbTowO21heC1oZWlnaHQ6NC4yZW07b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1saW5lLWNsYW1wOjM7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsfS5ub3RpZmljYXRpb24tYnViYmxlLWFjdGlvbnN7bWFyZ2luLXRvcDo2cHg7ZGlzcGxheTpmbGV4O2dhcDo2cHg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS5ub3RpZmljYXRpb24tYnViYmxlLWFjdGlvbnMgYnV0dG9ue2ZvbnQtc2l6ZTouN3JlbTtwYWRkaW5nOjJweCAxMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtjdXJzb3I6cG9pbnRlcjtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2NvbG9yOnZhcigtLWZnLXByaW1hcnkpO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzfS5ub3RpZmljYXRpb24tYnViYmxlLWFjdGlvbnMgYnV0dG9uOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctaG92ZXIpfS5ub3RpZmljYXRpb24tYnViYmxlLWFjdGlvbnMgYnV0dG9uLnByaW1hcnl7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2NvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCl9Lm5vdGlmaWNhdGlvbi1idWJibGUtYWN0aW9ucyBidXR0b24ucHJpbWFyeTpob3ZlcntmaWx0ZXI6YnJpZ2h0bmVzcygxLjEpfUBrZXlmcmFtZXMgbm90aWZpY2F0aW9uLXNsaWRlLWluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpIHRyYW5zbGF0ZVkoLTIwcHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpIHRyYW5zbGF0ZVkoMCl9fUBrZXlmcmFtZXMgbm90aWZpY2F0aW9uLXNsaWRlLW91dHswJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKSB0cmFuc2xhdGVZKDApfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpIHRyYW5zbGF0ZVkoLTIwcHgpfX0ubm90aWZpY2F0aW9uLWJ1YmJsZS1hY3Rpb25zIGJ1dHRvbjpkaXNhYmxlZHtvcGFjaXR5Oi42O2N1cnNvcjpub3QtYWxsb3dlZDtmaWx0ZXI6bm9uZX0ubm90aWZpY2F0aW9uLWJ1YmJsZS1hY3Rpb25zIGJ1dHRvbi5zdWNjZXNze2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcyk7Y29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tc3VjY2Vzcyl9Lm5vdGlmaWNhdGlvbi1idWJibGUtYWN0aW9ucyBidXR0b24uc3VjY2Vzczpob3Zlcjpub3QoOmRpc2FibGVkKXtmaWx0ZXI6YnJpZ2h0bmVzcygxLjEpfS5ub3RpZmljYXRpb24tYnViYmxlLnVwZGF0ZS1jYXJke3dpZHRoOm1pbigzNjBweCxjYWxjKDEwMHZ3IC0gMjRweCkpO21heC13aWR0aDptaW4oMzYwcHgsY2FsYygxMDB2dyAtIDI0cHgpKTttaW4td2lkdGg6MDtwYWRkaW5nOjE0cHggMTRweCAxMnB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudCgxMjAlIDEyMCUgYXQgMCUgMCUsdmFyKC0tYWNjZW50LW11dGVkKSAwJSx0cmFuc3BhcmVudCA1NSUpLGxpbmVhci1ncmFkaWVudCgxODBkZWcsdmFyKC0tYmctZWxldmF0ZWQpIDAlLHZhcigtLWJnLXByaW1hcnkpIDEwMCUpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN0cm9uZyk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3cteGwpLDAgMCAwIDFweCAjZmZmNiBpbnNldDtvdmVyZmxvdzpoaWRkZW47aXNvbGF0aW9uOmlzb2xhdGV9LnVwZGF0ZS1jYXJkLXNoaW5le3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMTVkZWcsdHJhbnNwYXJlbnQgMCUscmdiYSgyNTUsMjU1LDI1NSwuMTgpIDQ1JSxyZ2JhKDI1NSwyNTUsMjU1LC4zMikgNTAlLHJnYmEoMjU1LDI1NSwyNTUsLjE4KSA1NSUsdHJhbnNwYXJlbnQgMTAwJSk7YmFja2dyb3VuZC1zaXplOjIyMCUgMTAwJTtiYWNrZ3JvdW5kLXBvc2l0aW9uOjEyMCUgMDttaXgtYmxlbmQtbW9kZTpvdmVybGF5O29wYWNpdHk6LjY1O2FuaW1hdGlvbjp1cGRhdGUtY2FyZC1zaGluZSA2cyBlYXNlLWluLW91dCBpbmZpbml0ZTt6LWluZGV4OjB9QGtleWZyYW1lcyB1cGRhdGUtY2FyZC1zaGluZXswJXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjEyMCUgMH01NSV7YmFja2dyb3VuZC1wb3NpdGlvbjotMjAlIDB9dG97YmFja2dyb3VuZC1wb3NpdGlvbjotMjAlIDB9fS51cGRhdGUtY2FyZC5pcy1zdWNjZXNze2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KDEyMCUgMTIwJSBhdCAwJSAwJSx2YXIoLS1zdWNjZXNzLW11dGVkKSAwJSx0cmFuc3BhcmVudCA1NSUpLGxpbmVhci1ncmFkaWVudCgxODBkZWcsdmFyKC0tYmctZWxldmF0ZWQpIDAlLHZhcigtLWJnLXByaW1hcnkpIDEwMCUpO2JvcmRlci1jb2xvcjp2YXIoLS1zdWNjZXNzKTtib3gtc2hhZG93OnZhcigtLXNoYWRvdy14bCksMCAwIDAgMXB4ICNmZmY2IGluc2V0LHZhcigtLXNoYWRvdy1nbG93LXN1Y2Nlc3MpfS51cGRhdGUtY2FyZC1oZWFkZXJ7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDoxMHB4fS51cGRhdGUtY2FyZC1pY29ue3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7ZmxleC1zaHJpbms6MDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2NvbG9yOiNmZmY7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHZhcigtLWFjY2VudCkgMCUsdmFyKC0tYWNjZW50LWhvdmVyKSAxMDAlKTtib3gtc2hhZG93OjAgNHB4IDEycHggdmFyKC0tYWNjZW50LWdsb3cpLGluc2V0IDAgMXB4ICNmZmZmZmY1OX0udXBkYXRlLWNhcmQuaXMtc3VjY2VzcyAudXBkYXRlLWNhcmQtaWNvbntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsdmFyKC0tc3VjY2VzcykgMCUsdmFyKC0tc3VjY2Vzcy1ob3ZlcikgMTAwJSk7Ym94LXNoYWRvdzowIDRweCAxMnB4IHZhcigtLXN1Y2Nlc3MtZ2xvdyksaW5zZXQgMCAxcHggI2ZmZmZmZjU5fS51cGRhdGUtY2FyZC1oZWFkaW5ne2ZsZXg6MTttaW4td2lkdGg6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHh9LnVwZGF0ZS1jYXJkLXRpdGxle2ZvbnQtc2l6ZTouODhyZW07Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGV0dGVyLXNwYWNpbmc6LjAxZW07bGluZS1oZWlnaHQ6MS4yNX0udXBkYXRlLWNhcmQtc3VidGl0bGV7Zm9udC1zaXplOi43MnJlbTtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtsaW5lLWhlaWdodDoxLjM1fS51cGRhdGUtY2FyZC1jbG9zZXtmbGV4LXNocmluazowO3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MDt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1cyxjb2xvciAuMTVzfS51cGRhdGUtY2FyZC1jbG9zZTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS51cGRhdGUtY2FyZC12ZXJzaW9ue3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTttYXJnaW46MTJweCAwIDEwcHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O2ZsZXgtd3JhcDpub3dyYXB9LnVwZGF0ZS1jYXJkLXZlcnNpb24tY2hpcHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIHVpLW1vbm9zcGFjZSwgIlNGIE1vbm8iLCBNZW5sbywgQ29uc29sYXMsIG1vbm9zcGFjZSk7Zm9udC1zaXplOi43NHJlbTtmb250LXdlaWdodDo2MDA7cGFkZGluZzozcHggMTBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO3doaXRlLXNwYWNlOm5vd3JhcH0udXBkYXRlLWNhcmQtdmVyc2lvbi1jdXJyZW50e2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpfS51cGRhdGUtY2FyZC12ZXJzaW9uLWxhdGVzdHtjb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMXB4IDZweCB2YXIoLS1hY2NlbnQtZ2xvdyl9LnVwZGF0ZS1jYXJkLmlzLXN1Y2Nlc3MgLnVwZGF0ZS1jYXJkLXZlcnNpb24tbGF0ZXN0e2NvbG9yOnZhcigtLXN1Y2Nlc3MpO2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcy1tdXRlZCk7Ym9yZGVyLWNvbG9yOnZhcigtLXN1Y2Nlc3MpO2JveC1zaGFkb3c6MCAxcHggNnB4IHZhcigtLXN1Y2Nlc3MtZ2xvdyl9LnVwZGF0ZS1jYXJkLXZlcnNpb24tYXJyb3d7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7ZmxleC1zaHJpbms6MH0udXBkYXRlLWNhcmQtcHJvZ3Jlc3N7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO2hlaWdodDowO292ZXJmbG93OmhpZGRlbjttYXJnaW46MDt0cmFuc2l0aW9uOmhlaWdodCAuMjVzIGVhc2UsbWFyZ2luIC4yNXMgZWFzZX0udXBkYXRlLWNhcmQtcHJvZ3Jlc3MuYWN0aXZle2hlaWdodDo2cHg7bWFyZ2luOjAgMCAxMHB4fS51cGRhdGUtY2FyZC1wcm9ncmVzcy10cmFja3twb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO292ZXJmbG93OmhpZGRlbn0udXBkYXRlLWNhcmQtcHJvZ3Jlc3MtZmlsbHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0Oi00MCU7d2lkdGg6NDAlO2hlaWdodDoxMDAlO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHZhcigtLWFjY2VudCkgMCUsdmFyKC0tYWNjZW50LWhvdmVyKSAxMDAlKTtib3gtc2hhZG93OjAgMCAxMHB4IHZhcigtLWFjY2VudC1nbG93KTthbmltYXRpb246dXBkYXRlLWNhcmQtcHJvZ3Jlc3Mtc3dlZXAgMS40cyBjdWJpYy1iZXppZXIoLjY1LC4wNSwuMzUsMSkgaW5maW5pdGV9QGtleWZyYW1lcyB1cGRhdGUtY2FyZC1wcm9ncmVzcy1zd2VlcHswJXtsZWZ0Oi00NSU7d2lkdGg6NDAlfTUwJXtsZWZ0OjI1JTt3aWR0aDo1NSV9dG97bGVmdDoxMDUlO3dpZHRoOjQwJX19LnVwZGF0ZS1jYXJkLXN0YXR1c3twb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7Zm9udC1zaXplOi43MnJlbTtsaW5lLWhlaWdodDoxLjQ7cGFkZGluZzo2cHggMTBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7bWFyZ2luLWJvdHRvbToxMHB4O2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpfS51cGRhdGUtY2FyZC1zdGF0dXMuZXJyb3J7YmFja2dyb3VuZDp2YXIoLS1kYW5nZXItbXV0ZWQpO2NvbG9yOnZhcigtLWRhbmdlcik7Ym9yZGVyLWNvbG9yOnZhcigtLWRhbmdlcil9LnVwZGF0ZS1jYXJkLXN0YXR1cy5zdWNjZXNze2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcy1tdXRlZCk7Y29sb3I6dmFyKC0tc3VjY2Vzcyk7Ym9yZGVyLWNvbG9yOnZhcigtLXN1Y2Nlc3MpfS51cGRhdGUtY2FyZC1hY3Rpb25ze3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2dhcDo4cHh9LnVwZGF0ZS1jYXJkLWFjdGlvbntmb250LXNpemU6Ljc4cmVtO2ZvbnQtd2VpZ2h0OjYwMDtwYWRkaW5nOjdweCAxNnB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjEycyBlYXNlLGZpbHRlciAuMTVzIGVhc2UsYm94LXNoYWRvdyAuMTVzIGVhc2V9LnVwZGF0ZS1jYXJkLWFjdGlvbi1wcmltYXJ5e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZyx2YXIoLS1hY2NlbnQpIDAlLHZhcigtLWFjY2VudC1ob3ZlcikgMTAwJSk7Y29sb3I6I2ZmZjtib3gtc2hhZG93OjAgNHB4IDEycHggdmFyKC0tYWNjZW50LWdsb3cpLGluc2V0IDAgMXB4ICNmZmZmZmY0MH0udXBkYXRlLWNhcmQtYWN0aW9uLXByaW1hcnk6aG92ZXI6bm90KDpkaXNhYmxlZCl7ZmlsdGVyOmJyaWdodG5lc3MoMS4wNSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzowIDZweCAxNnB4IHZhcigtLWFjY2VudC1nbG93KSxpbnNldCAwIDFweCAjZmZmZmZmNGR9LnVwZGF0ZS1jYXJkLWFjdGlvbi1wcmltYXJ5OmFjdGl2ZTpub3QoOmRpc2FibGVkKXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTtmaWx0ZXI6YnJpZ2h0bmVzcyguOTYpfS51cGRhdGUtY2FyZC1hY3Rpb246ZGlzYWJsZWR7b3BhY2l0eTouNztjdXJzb3I6cHJvZ3Jlc3M7ZmlsdGVyOm5vbmU7dHJhbnNmb3JtOm5vbmV9LnVwZGF0ZS1jYXJkLmlzLXN1Y2Nlc3MgLnVwZGF0ZS1jYXJkLWFjdGlvbi1wcmltYXJ5e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZyx2YXIoLS1zdWNjZXNzKSAwJSx2YXIoLS1zdWNjZXNzLWhvdmVyKSAxMDAlKTtib3gtc2hhZG93OjAgNHB4IDEycHggdmFyKC0tc3VjY2Vzcy1nbG93KSxpbnNldCAwIDFweCAjZmZmZmZmNDB9LnVwZGF0ZS1jYXJkLmlzLXN1Y2Nlc3MgLnVwZGF0ZS1jYXJkLWFjdGlvbi1wcmltYXJ5OmhvdmVyOm5vdCg6ZGlzYWJsZWQpe2JveC1zaGFkb3c6MCA2cHggMTZweCB2YXIoLS1zdWNjZXNzLWdsb3cpLGluc2V0IDAgMXB4ICNmZmZmZmY0ZH0ucmVzdGFydC1vdmVybGF5e3Bvc2l0aW9uOmZpeGVkO2luc2V0OjA7ei1pbmRleDo5OTk5OTtiYWNrZ3JvdW5kOiMwMDAwMDBhNjtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7YmFja2Ryb3AtZmlsdGVyOmJsdXIoNHB4KTthbmltYXRpb246cmVzdGFydC1mYWRlLWluIC4zcyBlYXNlfS5yZXN0YXJ0LW92ZXJsYXktY29udGVudHt0ZXh0LWFsaWduOmNlbnRlcjtjb2xvcjojZmZmfS5yZXN0YXJ0LXRpdGxle2ZvbnQtc2l6ZToxLjI1cmVtO2ZvbnQtd2VpZ2h0OjYwMDttYXJnaW4tYm90dG9tOjhweH0ucmVzdGFydC1zdWJ0aXRsZXtmb250LXNpemU6LjlyZW07b3BhY2l0eTouOH0ucmVzdGFydC1zcGlubmVye3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7bWFyZ2luOjAgYXV0byAxNnB4O2JvcmRlcjozcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMjUpO2JvcmRlci10b3AtY29sb3I6I2ZmZjtib3JkZXItcmFkaXVzOjUwJTthbmltYXRpb246cmVzdGFydC1zcGluIC44cyBsaW5lYXIgaW5maW5pdGV9QGtleWZyYW1lcyByZXN0YXJ0LXNwaW57dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX1Aa2V5ZnJhbWVzIHJlc3RhcnQtZmFkZS1pbnswJXtvcGFjaXR5OjB9dG97b3BhY2l0eToxfX0uZmlsZS1wcmV2aWV3LW92ZXJsYXl7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDtiYWNrZ3JvdW5kOiMwMDAwMDA4MDt6LWluZGV4OjEwMDA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FuaW1hdGlvbjpmYWRlLWluIC4xNXMgZWFzZX1Aa2V5ZnJhbWVzIGZhZGUtaW57MCV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19LnNldHRpbmdzLW1vZGFse3dpZHRoOm1pbigxMDgwcHgsMTAwJSk7bWF4LXdpZHRoOjEwODBweDtoZWlnaHQ6bWluKDg4dmgsOTIwcHgpO21heC1oZWlnaHQ6bWluKDg4dmgsOTIwcHgpO21pbi1oZWlnaHQ6bWluKDg4dmgsOTIwcHgpO292ZXJmbG93OmhpZGRlbn0uc2V0dGluZ3MtbW9kYWwtaGVhZGVye2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjE2cHg7cGFkZGluZy1ib3R0b206MTRweH0uc2V0dGluZ3MtbW9kYWwtdGl0bGUtZ3JvdXB7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NHB4O21pbi13aWR0aDowfS5zZXR0aW5ncy1tb2RhbC1zdWJ0aXRsZXtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xpbmUtaGVpZ2h0OjEuNX0uc2V0dGluZ3MtbW9kYWwtYm9keXtwYWRkaW5nLXRvcDoxOHB4O2ZsZXg6MSAxIGF1dG87bWluLWhlaWdodDowO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5zZXR0aW5ncy1sYXlvdXR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoyNjBweCBtaW5tYXgoMCwxZnIpO2dhcDoyMnB4O21pbi1oZWlnaHQ6MDtmbGV4OjEgMSBhdXRvO2FsaWduLWl0ZW1zOnN0cmV0Y2h9LnNldHRpbmdzLWxheW91dD4qe21pbi1oZWlnaHQ6MH0uc2V0dGluZ3Mtc2lkZWJhcntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxNHB4O21pbi13aWR0aDowO21pbi1oZWlnaHQ6MDtwYWRkaW5nLXJpZ2h0OjZweDtib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO292ZXJmbG93OmhpZGRlbn0uc2V0dGluZ3Mtc2lkZWJhci1oZWFkZXIsLnNldHRpbmdzLXNpZGViYXItdGl0bGUsLnNldHRpbmdzLXNpZGViYXItaGludHtmbGV4LXNocmluazowfS5zZXR0aW5ncy1zaWRlYmFyLWhlYWRlcntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo0cHg7cGFkZGluZzoycHggNHB4IDB9LnNldHRpbmdzLXNpZGViYXItdGl0bGV7Zm9udC1zaXplOi44NzVyZW07Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGV0dGVyLXNwYWNpbmc6LjAxZW19LnNldHRpbmdzLXNpZGViYXItaGludHtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xpbmUtaGVpZ2h0OjEuNX0uc2V0dGluZ3MtdGFic3tkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo4cHg7bWFyZ2luOjA7cGFkZGluZzowIDEwcHggMCAwO21pbi1oZWlnaHQ6MDtvdmVyZmxvdzphdXRvO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MjtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5zZXR0aW5ncy10YWJzOjotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo2cHg7aGVpZ2h0OjZweH0uc2V0dGluZ3MtdGFiczo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZDojOTY3NjU1Mzg7Ym9yZGVyLXJhZGl1czo5OTlweH0uc2V0dGluZ3MtdGFiczo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXJ7YmFja2dyb3VuZDojOTY3NjU1NWN9LnNldHRpbmdzLXRhYnN7c2Nyb2xsYmFyLXdpZHRoOnRoaW59LnNldHRpbmdzLXRhYntwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjRweDt3aWR0aDoxMDAlO3BhZGRpbmc6MTJweCAxNHB4IDEycHggMTZweDtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtiYWNrZ3JvdW5kOiNmZmZmZmY4Yztib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6MTZweDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmNvbG9yIC4xNXMsYm9yZGVyLWNvbG9yIC4xNXMsYmFja2dyb3VuZCAuMTVzLGJveC1zaGFkb3cgLjE1cyx0cmFuc2Zvcm0gLjE1czt0ZXh0LWFsaWduOmxlZnR9LnNldHRpbmdzLXRhYjpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjEwcHg7Ym90dG9tOjEwcHg7d2lkdGg6M3B4O2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1cyBlYXNlfS5zZXR0aW5ncy10YWI6aG92ZXJ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtiYWNrZ3JvdW5kOiNjNTY1M2QxNDtib3JkZXItY29sb3I6I2M1NjUzZDFmO3RyYW5zZm9ybTp0cmFuc2xhdGUoMnB4KX0uc2V0dGluZ3MtdGFiOmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgdmFyKC0tYWNjZW50KTtvdXRsaW5lLW9mZnNldDoycHh9LnNldHRpbmdzLXRhYi5hY3RpdmV7Y29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItY29sb3I6I2ZmZmZmZmIzO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmY2Y3ZWIsI2ZmZjRlOGI4KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNHB4KSBzYXR1cmF0ZSgxODAlKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE0cHgpIHNhdHVyYXRlKDE4MCUpO2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICNjNTY1M2QzOCxpbnNldCAwIDFweCAjZmZmZmZmZTYsaW5zZXQgMCAtMXB4ICNjNTY1M2QwZiwwIDRweCAxNHB4IC00cHggI2M1NjUzZDM4LDAgMXB4IDNweCAjN2Q1YjM5MGF9LnNldHRpbmdzLXRhYi5hY3RpdmU6YmVmb3Jle2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KX0uc2V0dGluZ3MtdGFiLW1haW57Zm9udC1zaXplOi44NzVyZW07Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOmluaGVyaXQ7bGluZS1oZWlnaHQ6MS4zfS5zZXR0aW5ncy10YWItbWV0YXtmb250LXNpemU6Ljc1cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjQ1fS5zZXR0aW5ncy10YWIuYWN0aXZlIC5zZXR0aW5ncy10YWItbWV0YXtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LnNldHRpbmdzLWNvbnRlbnR7bWluLXdpZHRoOjA7bWluLWhlaWdodDowO2hlaWdodDoxMDAlO292ZXJmbG93OmF1dG87cGFkZGluZy1yaWdodDo0cHh9LnNldHRpbmdzLXBhbmVse2Rpc3BsYXk6bm9uZTttaW4taGVpZ2h0OjEwMCU7cGFkZGluZzoycHggMnB4IDhweH0uc2V0dGluZ3MtY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6OHB4fS5zZXR0aW5ncy1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM5Njc2NTUzZDtib3JkZXItcmFkaXVzOjk5OXB4fS5zZXR0aW5ncy1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOiM5Njc2NTU2MX0uc2V0dGluZ3MtY29udGVudHtzY3JvbGxiYXItd2lkdGg6dGhpbn0uc2V0dGluZ3MtcGFuZWwuYWN0aXZle2Rpc3BsYXk6YmxvY2s7YW5pbWF0aW9uOmZhZGUtaW4gLjE4cyBlYXNlfS5zZXR0aW5ncy1wYW5lbC1oZWFkZXJ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NnB4O21hcmdpbjowIDAgMTRweDtwYWRkaW5nLWJvdHRvbToxMnB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xMil9LnNldHRpbmdzLXBhbmVsLXRpdGxle2ZvbnQtc2l6ZToxLjA2MjVyZW07Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGluZS1oZWlnaHQ6MS4yO2xldHRlci1zcGFjaW5nOi0uMDFlbX0uc2V0dGluZ3MtcGFuZWwtZGVzY3tmb250LXNpemU6LjgxMjVyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2xpbmUtaGVpZ2h0OjEuNTV9LnNldHRpbmdzLXBhbmVsPi5zZXR0aW5ncy1zZWN0aW9uLXRpdGxle21hcmdpbi10b3A6MThweH0uc2V0dGluZ3MtcGFuZWw+LnNldHRpbmdzLXNlY3Rpb24tdGl0bGU6Zmlyc3Qtb2YtdHlwZXttYXJnaW4tdG9wOjB9LnNldHRpbmdzLXBhbmVsPi5maWVsZC1yb3csLnNldHRpbmdzLXBhbmVsPi5maWVsZCwuc2V0dGluZ3MtcGFuZWw+LmZpZWxkLWhpbnR7bWF4LXdpZHRoOjc2MHB4fS5zZXR0aW5ncy1wYW5lbD4uc3dpdGNoLWNhcmQtbGlzdCwuc2V0dGluZ3MtcGFuZWw+LnNldHRpbmdzLWNhcmQsLnNldHRpbmdzLXBhbmVsPi5zZXR0aW5ncy11cGRhdGUtc2VjdGlvbiwuc2V0dGluZ3MtcGFuZWw+LnNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9uLC5zZXR0aW5ncy1wYW5lbD4jcHJlc2V0cy1saXN0e21heC13aWR0aDo4NjBweH0uc2V0dGluZ3MtcGFuZWw+LnNldHRpbmdzLWNhcmQrLnNldHRpbmdzLWNhcmQsLnNldHRpbmdzLXBhbmVsPi5zZXR0aW5ncy11cGRhdGUtc2VjdGlvbisuc2V0dGluZ3MtdXBkYXRlLXNlY3Rpb24sLnNldHRpbmdzLXBhbmVsPi5zZXR0aW5ncy1ub3RpZmljYXRpb24tc2VjdGlvbisuc2V0dGluZ3Mtbm90aWZpY2F0aW9uLXNlY3Rpb257bWFyZ2luLXRvcDoxNHB4fS5zZXR0aW5ncy1wYW5lbFtoaWRkZW5de2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9QG1lZGlhKG1heC13aWR0aDo5MDBweCl7LnNldHRpbmdzLWxheW91dHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MjIwcHggbWlubWF4KDAsMWZyKTtnYXA6MThweH19QG1lZGlhKG1heC13aWR0aDo3NjhweCl7LnNldHRpbmdzLW1vZGFse3dpZHRoOm1pbigxMDAlLDcyMHB4KTtoZWlnaHQ6bWluKDkydmgsOTIwcHgpO21heC1oZWlnaHQ6bWluKDkydmgsOTIwcHgpO21pbi1oZWlnaHQ6bWluKDkydmgsOTIwcHgpfS5zZXR0aW5ncy1tb2RhbC1ib2R5e292ZXJmbG93LXk6YXV0b30uc2V0dGluZ3MtbGF5b3V0e2dyaWQtdGVtcGxhdGUtY29sdW1uczptaW5tYXgoMCwxZnIpO2dhcDoxNHB4O2ZsZXg6MCAwIGF1dG99LnNldHRpbmdzLXNpZGViYXJ7cGFkZGluZy1yaWdodDowO2JvcmRlci1yaWdodDpub25lfS5zZXR0aW5ncy10YWJze2ZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LXdyYXA6bm93cmFwO292ZXJmbG93LXg6YXV0bztzY3JvbGxiYXItd2lkdGg6bm9uZTtwYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1ib3R0b206NHB4fS5zZXR0aW5ncy10YWJzOjotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5Om5vbmV9LnNldHRpbmdzLXRhYntmbGV4OjAgMCAyMDBweDttaW4taGVpZ2h0OjcycHh9LnNldHRpbmdzLXRhYjpob3Zlcnt0cmFuc2Zvcm06bm9uZX0uc2V0dGluZ3MtY29udGVudHtvdmVyZmxvdzp2aXNpYmxlO3BhZGRpbmctcmlnaHQ6MH19QG1lZGlhKG1heC13aWR0aDo0ODBweCl7LnNldHRpbmdzLXRhYntmbGV4LWJhc2lzOjE4MHB4O3BhZGRpbmc6MTBweCAxMnB4IDEwcHggMTRweH0uc2V0dGluZ3MtdGFiLW1haW57Zm9udC1zaXplOi44MTI1cmVtfS5zZXR0aW5ncy10YWItbWV0YXtmb250LXNpemU6LjY4NzVyZW19fS5zZXR0aW5ncy1hYm91dC1pbmZve2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjA7bWFyZ2luLWJvdHRvbToxOHB4O2JhY2tncm91bmQ6I2ZmZmZmZjgwO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbGcpO3BhZGRpbmc6NHB4IDE2cHg7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3cteHMpfS5zZXR0aW5ncy1hYm91dC1yb3d7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTRweDtmb250LXNpemU6LjgxMjVyZW07cGFkZGluZzoxMnB4IDA7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSl9LnNldHRpbmdzLWFib3V0LXJvdzpsYXN0LWNoaWxke2JvcmRlci1ib3R0b206bm9uZX0uc2V0dGluZ3MtbGFiZWx7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtd2VpZ2h0OjYwMDtmbGV4OjAgMCAxMTJweH0uc2V0dGluZ3MtdmFsdWV7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouOHJlbTttaW4td2lkdGg6MDt0ZXh0LWFsaWduOnJpZ2h0O3dvcmQtYnJlYWs6YnJlYWstd29yZH0uc2V0dGluZ3MtdmFsdWUgYXtjb2xvcjp2YXIoLS1hY2NlbnQpO3RleHQtZGVjb3JhdGlvbjpub25lfS5zZXR0aW5ncy12YWx1ZSBhOmhvdmVye3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LnNldHRpbmdzLXVwZGF0ZS1zZWN0aW9uLC5zZXR0aW5ncy1ub3RpZmljYXRpb24tc2VjdGlvbiwuc2V0dGluZ3MtY2FyZCwuc3dpdGNoLWNhcmQsLnByZXNldC1pdGVte2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXhzKX0uc2V0dGluZ3MtdXBkYXRlLXNlY3Rpb24sLnNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9ue21hcmdpbi10b3A6MTRweDtwYWRkaW5nOjE2cHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1sZyk7YmFja2dyb3VuZDojZmZmZmZmN2F9LnNldHRpbmdzLXNlY3Rpb24tdGl0bGV7Zm9udC1zaXplOi44NzVyZW07Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bWFyZ2luOjAgMCAxMnB4O2xldHRlci1zcGFjaW5nOi4wMWVtfS5zZXR0aW5ncy11cGRhdGUtYWN0aW9ucywuc2V0dGluZ3MtYWN0aW9uc3tkaXNwbGF5OmZsZXg7Z2FwOjEwcHg7ZmxleC13cmFwOndyYXA7bWFyZ2luLXRvcDoxMnB4fS5zZXR0aW5ncy1hY3Rpb25zLXN0aWNreXtwb3NpdGlvbjpzdGlja3k7Ym90dG9tOjA7cGFkZGluZy10b3A6MTZweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmJmNTAwLCNmZmZiZjVmYSAyOHB4KTt6LWluZGV4OjE7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS5zZXR0aW5ncy1zdGF0dXMtbWVzc2FnZXttYXJnaW4tdG9wOjEwcHh9LnNldHRpbmdzLWlubGluZS1oaW50e21hcmdpbi10b3A6LTRweDttYXJnaW4tYm90dG9tOjEycHh9LnNldHRpbmdzLWNvbm5lY3QtdXJsLWJveHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O2JhY2tncm91bmQ6I2ZmZmZmZmI4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czoxMnB4O3BhZGRpbmc6MTBweCAxMnB4O21hcmdpbi10b3A6NnB4fS5zZXR0aW5ncy1jb25uZWN0LXVybC10ZXh0e2ZsZXg6MTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIG1vbm9zcGFjZSk7Zm9udC1zaXplOjEzcHg7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt3b3JkLWJyZWFrOmJyZWFrLWFsbDt1c2VyLXNlbGVjdDphbGw7LXdlYmtpdC11c2VyLXNlbGVjdDphbGx9LnNldHRpbmdzLWNvbm5lY3QtcXItYm94e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O21hcmdpbi10b3A6MTRweH0uc2V0dGluZ3MtY29ubmVjdC1xci13cmFwe3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjIwMHB4O2hlaWdodDoyMDBweDtwYWRkaW5nOjEwcHg7YmFja2dyb3VuZDojZmZmO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czoxNnB4O2JveC1zaGFkb3c6MCA0cHggMTJweCAjN2Q1YjM5MTQ7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjE1cyBlYXNlLGJveC1zaGFkb3cgLjE1cyBlYXNlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uc2V0dGluZ3MtY29ubmVjdC1xci13cmFwOmhvdmVye3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpO2JveC1zaGFkb3c6MCA2cHggMTZweCAjN2Q1YjM5MWZ9LnNldHRpbmdzLWNvbm5lY3QtcXItd3JhcCBjYW52YXN7ZGlzcGxheTpibG9jazttYXgtd2lkdGg6MTAwJTttYXgtaGVpZ2h0OjEwMCV9LnNldHRpbmdzLWNvbm5lY3QtcXItZW1wdHl7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOjEycHg7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO3BvaW50ZXItZXZlbnRzOm5vbmV9LnNldHRpbmdzLWNvbm5lY3QtcXItaGludHttYXJnaW46MDtmb250LXNpemU6MTJweDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7dGV4dC1hbGlnbjpjZW50ZXI7bWF4LXdpZHRoOjI4MHB4fS5jb25uZWN0LXFyLW1vZGFsLW92ZXJsYXl7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDtiYWNrZ3JvdW5kOiMxNDBlMDg4YztiYWNrZHJvcC1maWx0ZXI6Ymx1cig2cHgpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoNnB4KTt6LWluZGV4Ojk5OTk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MjRweH0uY29ubmVjdC1xci1tb2RhbC1jYXJke2JhY2tncm91bmQ6I2ZmZjtib3JkZXItcmFkaXVzOjIwcHg7cGFkZGluZzoyNHB4O2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxNHB4O2JveC1zaGFkb3c6MCAyMHB4IDYwcHggIzAwMDAwMDU5fS5jb25uZWN0LXFyLW1vZGFsLWNhcmQgY2FudmFze2Rpc3BsYXk6YmxvY2s7Ym9yZGVyLXJhZGl1czo4cHh9LmNvbm5lY3QtcXItbW9kYWwtaGludHttYXJnaW46MDtmb250LXNpemU6MTNweDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7dGV4dC1hbGlnbjpjZW50ZXJ9LmZpZWxkLXJvd3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgyLG1pbm1heCgwLDFmcikpO2dhcDoxNHB4O21hcmdpbi1ib3R0b206MTRweH0uZmllbGQtcm93IC5maWVsZHttYXJnaW4tYm90dG9tOjB9LnNldHRpbmdzLWNhcmR7YmFja2dyb3VuZDojZmZmZmZmODU7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1sZyk7cGFkZGluZzoxOHB4O21hcmdpbi1ib3R0b206MTRweH0uc2V0dGluZ3MtY2FyZCAuZmllbGQ6bGFzdC1vZi10eXBle21hcmdpbi1ib3R0b206MTJweH0uc2V0dGluZ3MtY2FyZCAuc2V0dGluZ3Mtc2VjdGlvbi10aXRsZXttYXJnaW4tdG9wOjB9LnNldHRpbmdzLWNhcmQgLmZpZWxkLWlucHV0e2JhY2tncm91bmQ6I2ZmZmZmZmI4fS5zZXR0aW5ncy1jYXJkIC5idG4tYmxvY2t7bWFyZ2luLWJvdHRvbTowfS5zZXR0aW5ncy1wYW5lbCAuYnRuLWJsb2Nre21pbi1oZWlnaHQ6NDRweH0uc2V0dGluZ3MtcGFuZWwgLmhpbnQsLnNldHRpbmdzLXBhbmVsIC5maWVsZC1oaW50e2xpbmUtaGVpZ2h0OjEuNTV9LnNldHRpbmdzLXBhbmVsIGlucHV0W3R5cGU9cmFuZ2Vde3dpZHRoOjEwMCV9LnNldHRpbmdzLXBhbmVsIGNvZGV7bWF4LXdpZHRoOjEwMCV9LnNldHRpbmdzLXBhbmVsIC5oaWRkZW4rLmhpbnR7bWFyZ2luLXRvcDowfS5zZXR0aW5ncy1wYW5lbCAuZmllbGQtaW5wdXQsLnNldHRpbmdzLXBhbmVsIC5maWVsZC1zZWxlY3R7d2lkdGg6MTAwJX0uc2V0dGluZ3MtcGFuZWwgLmJ0bi1zbXttaW4taGVpZ2h0OjM0cHh9LnNldHRpbmdzLXBhbmVsIC5lcnJvci1tZXNzYWdlLC5zZXR0aW5ncy1wYW5lbCAuaGludC5oaWRkZW4sLnNldHRpbmdzLXBhbmVsIC5lcnJvci1tZXNzYWdlLmhpZGRlbnttYXJnaW4tdG9wOjEwcHh9LnNldHRpbmdzLXBhbmVsICNwcmVzZXRzLWxpc3Q6ZW1wdHk6YmVmb3Jle2NvbnRlbnQ6Ilw1MmEwXDhmN2RcNGUyZC4uLiI7ZGlzcGxheTpibG9jaztwYWRkaW5nOjE4cHg7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOi44MTI1cmVtfUBtZWRpYShtYXgtd2lkdGg6NzY4cHgpey5zZXR0aW5ncy1hYm91dC1yb3d7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0uc2V0dGluZ3MtdXBkYXRlLWFjdGlvbnMsLnNldHRpbmdzLWFjdGlvbnN7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5zZXR0aW5ncy11cGRhdGUtYWN0aW9ucyAuYnRuLC5zZXR0aW5ncy1hY3Rpb25zIC5idG57d2lkdGg6MTAwJX0uc2V0dGluZ3MtY29ubmVjdC11cmwtYm94e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpzdHJldGNofX1AbWVkaWEobWF4LXdpZHRoOjY0MHB4KXsuc2V0dGluZ3MtbW9kYWwtaGVhZGVye2dhcDoxMHB4fS5zZXR0aW5ncy1tb2RhbC1zdWJ0aXRsZXtmb250LXNpemU6LjY4NzVyZW19LnNldHRpbmdzLXBhbmVse3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MH0uc2V0dGluZ3MtYWJvdXQtaW5mbywuc2V0dGluZ3MtdXBkYXRlLXNlY3Rpb24sLnNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9uLC5zZXR0aW5ncy1jYXJke3BhZGRpbmctbGVmdDoxNHB4O3BhZGRpbmctcmlnaHQ6MTRweH0uc2V0dGluZ3MtYWJvdXQtcm93e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpzdHJldGNoO2dhcDo0cHh9LnNldHRpbmdzLWxhYmVsLC5zZXR0aW5ncy12YWx1ZXtmbGV4Om5vbmU7dGV4dC1hbGlnbjpsZWZ0fS5zZXR0aW5ncy1wYW5lbCAuYnRuLWljb257bWluLXdpZHRoOjM0cHg7bWluLWhlaWdodDozNHB4fX1AbWVkaWEobWluLXdpZHRoOjc2OXB4KXsuc2V0dGluZ3MtcGFuZWwgLmJ0bi1ibG9ja3t3aWR0aDphdXRvO21pbi13aWR0aDoxODBweH19QHN1cHBvcnRzIG5vdCAocG9zaXRpb246IHN0aWNreSl7LnNldHRpbmdzLXRhYnMsLnNldHRpbmdzLWFjdGlvbnMtc3RpY2t5e3Bvc2l0aW9uOnN0YXRpY319LmVtcHR5LXN0YXRlLWNvbXBhY3R7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtwYWRkaW5nOjMycHggMTZweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6LjgxMjVyZW19LmVtcHR5LXN0YXRlLWNvbXBhY3QgLmVtcHR5LWljb257Zm9udC1zaXplOjEuNXJlbTtvcGFjaXR5Oi41fS5zd2l0Y2gtY2FyZC1saXN0e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjEwcHh9LnN3aXRjaC1jYXJke2Rpc3BsYXk6YmxvY2s7YmFja2dyb3VuZDojZmZmZmZmODA7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JvcmRlci1yYWRpdXM6MTRweDtwYWRkaW5nOjE0cHggMTZweDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMnMsYmFja2dyb3VuZCAuMnMsdHJhbnNmb3JtIC4yczt1c2VyLXNlbGVjdDpub25lfS5zd2l0Y2gtY2FyZDpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCl9LnN3aXRjaC1jYXJkLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4fS5zd2l0Y2gtY2FyZC10aXRsZXtmbGV4OjE7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS5zd2l0Y2gtY2FyZC1kZXNje2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bWFyZ2luLXRvcDowO21heC1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47b3BhY2l0eTowO3RyYW5zaXRpb246bWF4LWhlaWdodCAuMjVzIGVhc2Usb3BhY2l0eSAuMnMgZWFzZSxtYXJnaW4tdG9wIC4yNXMgZWFzZX0uc3dpdGNoLWNhcmQ6aGFzKC5zd2l0Y2gtdG9nZ2xlOmNoZWNrZWQpIC5zd2l0Y2gtY2FyZC1kZXNje21heC1oZWlnaHQ6NDBweDtvcGFjaXR5OjE7bWFyZ2luLXRvcDo4cHh9LnN3aXRjaC1jYXJkOmhhcyguc3dpdGNoLXRvZ2dsZTpjaGVja2VkKXtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFjY2VudCkgNiUsdmFyKC0tYmctc2Vjb25kYXJ5KSl9LnN3aXRjaC10b2dnbGV7cG9zaXRpb246YWJzb2x1dGU7b3BhY2l0eTowO3dpZHRoOjA7aGVpZ2h0OjA7cG9pbnRlci1ldmVudHM6bm9uZX0uc3dpdGNoLXNsaWRlcntwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDo0NHB4O2hlaWdodDoyNnB4O21pbi13aWR0aDo0NHB4O2JvcmRlci1yYWRpdXM6MTNweDtiYWNrZ3JvdW5kOiM3ZDViMzkzODtib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCAjN2Q1YjM5MmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4yMnMgZWFzZSxib3gtc2hhZG93IC4yMnMgZWFzZTtjdXJzb3I6cG9pbnRlcn0uc3dpdGNoLXNsaWRlcjphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoycHg7bGVmdDoycHg7d2lkdGg6MjJweDtoZWlnaHQ6MjJweDtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLXJhZGl1czo1MCU7Ym94LXNoYWRvdzowIDJweCA0cHggIzE0MGUwODJlLDAgMCAwIC41cHggIzdkNWIzOTBmO3RyYW5zaXRpb246dHJhbnNmb3JtIC4yNHMgY3ViaWMtYmV6aWVyKC4zNCwxLjQsLjY0LDEpfS5zd2l0Y2gtdG9nZ2xlOmNoZWNrZWQrLnN3aXRjaC1zbGlkZXJ7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4ICMwMDAwMDAxYX0uc3dpdGNoLXRvZ2dsZTpjaGVja2VkKy5zd2l0Y2gtc2xpZGVyOmFmdGVye3RyYW5zZm9ybTp0cmFuc2xhdGUoMThweCl9LnN3aXRjaC10b2dnbGU6Zm9jdXMtdmlzaWJsZSsuc3dpdGNoLXNsaWRlcntvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1hY2NlbnQpO291dGxpbmUtb2Zmc2V0OjJweH0ucHJlc2V0LWl0ZW17ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTJweDtwYWRkaW5nOjEycHggMTRweDtiYWNrZ3JvdW5kOiNmZmZmZmY4NTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6MTJweDttYXJnaW4tYm90dG9tOjEwcHg7Zm9udC1zaXplOi44MTI1cmVtfS5wcmVzZXQtbGFiZWx7Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnByZXNldC1kZXRhaWx7bWluLXdpZHRoOjA7dGV4dC1hbGlnbjpyaWdodDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6Ljc1cmVtO3dvcmQtYnJlYWs6YnJlYWstd29yZH1AbWVkaWEobWF4LXdpZHRoOjY0MHB4KXsucHJlc2V0LWl0ZW17ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9LnByZXNldC1kZXRhaWx7dGV4dC1hbGlnbjpsZWZ0fX0uZmlsZS1wcmV2aWV3LW1vZGFse3dpZHRoOm1pbig5MHZ3LG1heCg2NDBweCxjYWxjKDEwMHZ3IC0gMzgwcHgpKSk7bWF4LXdpZHRoOjEwMDBweDtoZWlnaHQ6ODB2aDttYXgtaGVpZ2h0Ojg1dmg7YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1sZyk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JveC1zaGFkb3c6MCAyMHB4IDYwcHggIzAwMDAwMDRkO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47b3ZlcmZsb3c6aGlkZGVuO2FuaW1hdGlvbjptb2RhbC1zbGlkZS1pbiAuMnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9QGtleWZyYW1lcyBtb2RhbC1zbGlkZS1pbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTIwcHgpIHNjYWxlKC45OCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpfX1AbWVkaWEobWF4LXdpZHRoOjc2OHB4KXsuZmlsZS1wcmV2aWV3LW92ZXJsYXl7cGFkZGluZzowO2FsaWduLWl0ZW1zOnN0cmV0Y2g7anVzdGlmeS1jb250ZW50OnN0cmV0Y2g7dG9wOnZhcigtLWFwcC12aWV3cG9ydC10b3AsIDBweCk7aGVpZ2h0OnZhcigtLWFwcC12aWV3cG9ydC1oZWlnaHQsIDEwMGR2aCl9LmZpbGUtcHJldmlldy1tb2RhbHt3aWR0aDoxMDB2dzttYXgtd2lkdGg6MTAwdnc7aGVpZ2h0OnZhcigtLWFwcC12aWV3cG9ydC1oZWlnaHQsIDEwMGR2aCk7bWF4LWhlaWdodDp2YXIoLS1hcHAtdmlld3BvcnQtaGVpZ2h0LCAxMDBkdmgpO2JvcmRlci1yYWRpdXM6MDtib3JkZXI6bm9uZTtib3gtc2hhZG93Om5vbmU7YW5pbWF0aW9uOmZhZGUtaW4gLjE4cyBlYXNlfS5maWxlLXByZXZpZXctaGVhZGVye3BhZGRpbmc6MTBweCAxMnB4O2dhcDo4cHg7cGFkZGluZy10b3A6bWF4KDEwcHgsZW52KHNhZmUtYXJlYS1pbnNldC10b3ApKTtwYWRkaW5nLWxlZnQ6bWF4KDEycHgsZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7cGFkZGluZy1yaWdodDptYXgoMTJweCxlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSl9LmZpbGUtcHJldmlldy10aXRsZXtmb250LXNpemU6Ljg3NXJlbTtnYXA6NnB4O21pbi13aWR0aDowO2ZsZXg6MX0uZmlsZS1wcmV2aWV3LWZpbGVuYW1le21heC13aWR0aDoxMDAlfS5maWxlLXByZXZpZXctcGF0aHtkaXNwbGF5Om5vbmV9LmZpbGUtcHJldmlldy10b29sYmFye2dhcDo0cHg7ZmxleC1zaHJpbms6MH0uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRue3BhZGRpbmc6MCA2cHg7Zm9udC1zaXplOi43NXJlbX0uZmlsZS1wcmV2aWV3LWNsb3Nle3dpZHRoOjM0cHg7aGVpZ2h0OjM0cHg7cGFkZGluZzowfS5maWxlLXByZXZpZXctaWNvbntmb250LXNpemU6MS4xMjVyZW19LmZpbGUtcHJldmlldy1ib2R5e3BhZGRpbmctYm90dG9tOmVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKX19LmZpbGUtcHJldmlldy1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTJweDtwYWRkaW5nOjEycHggMThweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSk7ZmxleC1zaHJpbms6MH0uZmlsZS1wcmV2aWV3LXRpdGxle2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7Zm9udC1zaXplOi45Mzc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZsZXg6MTttaW4td2lkdGg6MH0uZmlsZS1wcmV2aWV3LWljb257Zm9udC1zaXplOjEuMjVyZW07bGluZS1oZWlnaHQ6MTtmbGV4LXNocmluazowfS5maWxlLXByZXZpZXctbmFtZS1ibG9ja3tkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHg7bWluLXdpZHRoOjA7ZmxleDoxfS5maWxlLXByZXZpZXctbmFtZS1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmJhc2VsaW5lO2dhcDo4cHg7bWluLXdpZHRoOjB9LmZpbGUtcHJldmlldy1maWxlbmFtZXtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC1zaXplOi45Mzc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi4wMWVtO21pbi13aWR0aDowfS5maWxlLXByZXZpZXctcGF0aHtmb250LXNpemU6LjdyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7bWluLXdpZHRoOjA7b3BhY2l0eTouOH0uZmlsZS1wcmV2aWV3LWRpcnR5e2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjojYzY2YTFhO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMDJlbTtmbGV4LXNocmluazowO3BhZGRpbmc6MXB4IDhweDtiYWNrZ3JvdW5kOiNjNjZhMWExYTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTk4LDEwNiwyNiwuMjUpO2JvcmRlci1yYWRpdXM6OTk5cHg7YW5pbWF0aW9uOmRpcnR5LXB1bHNlIDEuNnMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyBkaXJ0eS1wdWxzZXswJSx0b3tvcGFjaXR5Oi42NX01MCV7b3BhY2l0eToxfX0uZmlsZS1wcmV2aWV3LWxhbmd7Zm9udC1zaXplOi42ODc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtwYWRkaW5nOjJweCA4cHg7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Y29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjEyLDE1Miw5OSwuMyk7bGV0dGVyLXNwYWNpbmc6LjA0ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2ZsZXgtc2hyaW5rOjA7YWxpZ24tc2VsZjpjZW50ZXJ9LmZpbGUtcHJldmlldy1jbG9zZXtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcjtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt3aWR0aDozMnB4O2hlaWdodDozMnB4O3BhZGRpbmc6MDtib3JkZXItcmFkaXVzOjhweDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzLGNvbG9yIC4xNXMsYm9yZGVyLWNvbG9yIC4xNXMsdHJhbnNmb3JtIC4xNXM7bGluZS1oZWlnaHQ6MTtmbGV4LXNocmluazowfS5maWxlLXByZXZpZXctY2xvc2U6aG92ZXJ7YmFja2dyb3VuZDojZGM0NjQ2MTQ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtib3JkZXItY29sb3I6I2RjNDY0NjQwfS5maWxlLXByZXZpZXctY2xvc2U6YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTQpfS5maWxlLXByZXZpZXctYm9keXtmbGV4OjE7b3ZlcmZsb3c6YXV0bzttaW4taGVpZ2h0OjA7c2Nyb2xsYmFyLXdpZHRoOnRoaW47c2Nyb2xsYmFyLWNvbG9yOnZhcigtLWJvcmRlci1kZWZhdWx0KSB0cmFuc3BhcmVudH0uZmlsZS1wcmV2aWV3LWJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjhweDtoZWlnaHQ6OHB4fS5maWxlLXByZXZpZXctYm9keTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2t7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0uZmlsZS1wcmV2aWV3LWJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6dmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JvcmRlci1yYWRpdXM6NHB4fS5maWxlLXByZXZpZXctYm9keTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS10ZXh0LW11dGVkKX0uZmlsZS1wcmV2aWV3LWJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5jb2RlLXByZXZpZXctd3JhcHBlcntkaXNwbGF5OmZsZXg7aGVpZ2h0OjEwMCU7b3ZlcmZsb3cteDphdXRvO292ZXJmbG93LXk6aGlkZGVuO3Njcm9sbGJhci13aWR0aDp0aGluO3Njcm9sbGJhci1jb2xvcjp2YXIoLS1ib3JkZXItZGVmYXVsdCkgdHJhbnNwYXJlbnR9LmNvZGUtcHJldmlldy13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo4cHg7aGVpZ2h0OjhweH0uY29kZS1wcmV2aWV3LXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LmNvZGUtcHJldmlldy13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOnZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOjRweH0uY29kZS1wcmV2aWV3LXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tdGV4dC1tdXRlZCl9LmNvZGUtcHJldmlldy1saW5lc3twYWRkaW5nOjE2cHggMTJweCAxNnB4IDE2cHg7dGV4dC1hbGlnbjpyaWdodDt1c2VyLXNlbGVjdDpub25lO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOnZhcigtLWZvbnQtc2l6ZS1zbSk7bGluZS1oZWlnaHQ6dmFyKC0tbGluZS1oZWlnaHQpO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7d2lkdGg6NTJweDttYXgtd2lkdGg6NTJweDtmbGV4LXNocmluazowO292ZXJmbG93OmhpZGRlbn0uY29kZS1wcmV2aWV3LWNvbnRlbnR7ZmxleDoxO21pbi13aWR0aDowO3dpZHRoOjEwMCU7cGFkZGluZzoxNnB4IDIwcHg7b3ZlcmZsb3cteDphdXRvO292ZXJmbG93LXk6YXV0b30uY29kZS1wcmV2aWV3LWNvbnRlbnQgcHJle21hcmdpbjowO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOnZhcigtLWZvbnQtc2l6ZS1zbSk7bGluZS1oZWlnaHQ6dmFyKC0tbGluZS1oZWlnaHQpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7d2hpdGUtc3BhY2U6cHJlO3dvcmQtYnJlYWs6bm9ybWFsO292ZXJmbG93LXdyYXA6bm9ybWFsfS5zeW50YXgta2V5d29yZHtjb2xvcjojYzY3OGRkfS5zeW50YXgtc3RyaW5ne2NvbG9yOiM5OGMzNzl9LnN5bnRheC1udW1iZXJ7Y29sb3I6I2QxOWE2Nn0uc3ludGF4LWNvbW1lbnR7Y29sb3I6IzVjNjM3MDtmb250LXN0eWxlOml0YWxpY30uc3ludGF4LWZ1bmN0aW9ue2NvbG9yOiM2MWFmZWZ9LnN5bnRheC1vcGVyYXRvcntjb2xvcjojNTZiNmMyfS5zeW50YXgtdHlwZXtjb2xvcjojZTVjMDdifS5zeW50YXgtcHVuY3R1YXRpb257Y29sb3I6I2FiYjJiZn0ubWFya2Rvd24tcHJldmlld3twYWRkaW5nOjIwcHggMjhweDtsaW5lLWhlaWdodDoxLjc7Zm9udC1zaXplOi45Mzc1cmVtO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9Lm1hcmtkb3duLXByZXZpZXcgaDEsLm1hcmtkb3duLXByZXZpZXcgaDIsLm1hcmtkb3duLXByZXZpZXcgaDMsLm1hcmtkb3duLXByZXZpZXcgaDQsLm1hcmtkb3duLXByZXZpZXcgaDUsLm1hcmtkb3duLXByZXZpZXcgaDZ7bWFyZ2luLXRvcDoxLjVlbTttYXJnaW4tYm90dG9tOi41ZW07Zm9udC13ZWlnaHQ6NjAwO2xpbmUtaGVpZ2h0OjEuMztjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS5tYXJrZG93bi1wcmV2aWV3IGgxe2ZvbnQtc2l6ZToxLjc1cmVtO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7cGFkZGluZy1ib3R0b206LjNlbX0ubWFya2Rvd24tcHJldmlldyBoMntmb250LXNpemU6MS4zNzVyZW07Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tYm9yZGVyKTtwYWRkaW5nLWJvdHRvbTouM2VtfS5tYXJrZG93bi1wcmV2aWV3IGgze2ZvbnQtc2l6ZToxLjEyNXJlbX0ubWFya2Rvd24tcHJldmlldyBoNHtmb250LXNpemU6MXJlbX0ubWFya2Rvd24tcHJldmlldyBwe21hcmdpbjouNzVlbSAwfS5tYXJrZG93bi1wcmV2aWV3IGF7Y29sb3I6dmFyKC0tYWNjZW50KTt0ZXh0LWRlY29yYXRpb246bm9uZX0ubWFya2Rvd24tcHJldmlldyBhOmhvdmVye3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9Lm1hcmtkb3duLXByZXZpZXcgY29kZXtiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtwYWRkaW5nOjJweCA2cHg7Ym9yZGVyLXJhZGl1czozcHg7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6Ljg3NWVtO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKX0ubWFya2Rvd24tcHJldmlldyBwcmV7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7cGFkZGluZzoxNnB4O292ZXJmbG93LXg6YXV0bzttYXJnaW46MWVtIDB9Lm1hcmtkb3duLXByZXZpZXcgcHJlIGNvZGV7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lO3BhZGRpbmc6MDtmb250LXNpemU6dmFyKC0tZm9udC1zaXplLXNtKX0ubWFya2Rvd24tcHJldmlldyBibG9ja3F1b3Rle2JvcmRlci1sZWZ0OjRweCBzb2xpZCB2YXIoLS1hY2NlbnQpO21hcmdpbjoxZW0gMDtwYWRkaW5nOi41ZW0gMWVtO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Ym9yZGVyLXJhZGl1czowIHZhcigtLXJhZGl1cy1zbSkgdmFyKC0tcmFkaXVzLXNtKSAwfS5tYXJrZG93bi1wcmV2aWV3IHVsLC5tYXJrZG93bi1wcmV2aWV3IG9se3BhZGRpbmctbGVmdDoxLjVlbTttYXJnaW46Ljc1ZW0gMH0ubWFya2Rvd24tcHJldmlldyBsaXttYXJnaW46LjI1ZW0gMH0ubWFya2Rvd24tcHJldmlldyB0YWJsZXtib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7d2lkdGg6MTAwJTttYXJnaW46MWVtIDA7Zm9udC1zaXplOi44NzVyZW19Lm1hcmtkb3duLXByZXZpZXcgdGgsLm1hcmtkb3duLXByZXZpZXcgdGR7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO3BhZGRpbmc6OHB4IDEycHg7dGV4dC1hbGlnbjpsZWZ0fS5tYXJrZG93bi1wcmV2aWV3IHRoe2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtmb250LXdlaWdodDo2MDB9Lm1hcmtkb3duLXByZXZpZXcgdHI6bnRoLWNoaWxkKDJuKXtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSl9Lm1hcmtkb3duLXByZXZpZXcgaHJ7Ym9yZGVyOm5vbmU7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyKTttYXJnaW46MS41ZW0gMH0ubWFya2Rvd24tcHJldmlldyBpbWd7bWF4LXdpZHRoOjEwMCU7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pfS5maWxlLXByZXZpZXctbG9hZGluZ3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7aGVpZ2h0OjEwMCU7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi44NzVyZW07Z2FwOjEwcHh9LmZpbGUtcHJldmlldy1sb2FkaW5nOmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7Ym9yZGVyOjJweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjpwcmV2aWV3LXNwaW4gLjdzIGxpbmVhciBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHByZXZpZXctc3Bpbnt0b3t0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fS5maWxlLXByZXZpZXctZXJyb3J7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtoZWlnaHQ6MTAwJTtnYXA6OHB4O2NvbG9yOnZhcigtLWRhbmdlcik7Zm9udC1zaXplOi44NzVyZW07dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzoyMHB4fS5maWxlLXByZXZpZXctZXJyb3IgLnByZXZpZXctZXJyb3ItaWNvbntmb250LXNpemU6MnJlbTtvcGFjaXR5Oi41fS50cmVlLWl0ZW1bZGF0YS10eXBlPWZpbGVde2N1cnNvcjpwb2ludGVyfS50cmVlLWl0ZW1bZGF0YS10eXBlPWZpbGVdOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctaG92ZXIpfS50cmVlLWl0ZW1bZGF0YS10eXBlPWZpbGVdOmhvdmVyIC50cmVlLW5hbWV7Y29sb3I6dmFyKC0tYWNjZW50KX0uZmlsZS1leHBsb3Jlci11cHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzowO3dpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7Ym9yZGVyLXJhZGl1czo4cHg7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2ZsZXgtc2hyaW5rOjB9LmZpbGUtZXhwbG9yZXItdXA6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLXN1YnRsZSl9LmZpbGUtZXhwbG9yZXItdXA6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpfS50cmVlLW1ldGF7ZmxleC1zaHJpbms6MDtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zO21hcmdpbi1sZWZ0OjZweDtwYWRkaW5nLWxlZnQ6NnB4O21heC13aWR0aDo3MHB4O292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtvcGFjaXR5Oi44NX0udHJlZS1pdGVtOmhvdmVyIC50cmVlLW1ldGF7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS50cmVlLXRydW5jYXRlZHtwYWRkaW5nOjhweCAxNHB4O21hcmdpbjo0cHggNnB4IDhweDtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2JvcmRlcjoxcHggZGFzaGVkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czo2cHg7dGV4dC1hbGlnbjpjZW50ZXJ9LmZpbGUtY29udGV4dC1tZW51e3Bvc2l0aW9uOmZpeGVkO3otaW5kZXg6MTEwMDttaW4td2lkdGg6MjAwcHg7cGFkZGluZzo0cHg7YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czoxMHB4O2JveC1zaGFkb3c6MCAxMnB4IDM2cHggIzAwMDAwMDJlO2FuaW1hdGlvbjpjdHgtZmFkZS1pbiAuMTJzIGVhc2V9QGtleWZyYW1lcyBjdHgtZmFkZS1pbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTRweCkgc2NhbGUoLjk4KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoMSl9fS5maWxlLWNvbnRleHQtbWVudS1pdGVte2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7d2lkdGg6MTAwJTtwYWRkaW5nOjhweCAxMnB4O2JvcmRlcjpub25lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LXNpemU6LjgxMjVyZW07dGV4dC1hbGlnbjpsZWZ0O2N1cnNvcjpwb2ludGVyO2JvcmRlci1yYWRpdXM6NnB4O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTJzfS5maWxlLWNvbnRleHQtbWVudS1pdGVtOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpfS5maWxlLWNvbnRleHQtbWVudS1pdGVtIC5jdHgtaWNvbnt3aWR0aDoxOHB4O3RleHQtYWxpZ246Y2VudGVyO29wYWNpdHk6Ljg1fS53YW5kLW1pbmktdG9hc3R7cG9zaXRpb246Zml4ZWQ7dG9wOjMwcHg7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC0xNHB4KTt6LWluZGV4OjEyMDA7cGFkZGluZzo4cHggMTZweDtiYWNrZ3JvdW5kOiMxNDE0MTRlYjtjb2xvcjojZmZmO2ZvbnQtc2l6ZTouODEyNXJlbTtib3JkZXItcmFkaXVzOjk5OXB4O29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjE4cyBlYXNlLHRyYW5zZm9ybSAuMThzIGVhc2U7cG9pbnRlci1ldmVudHM6bm9uZX0ud2FuZC1taW5pLXRvYXN0LnNob3d7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSl9LmZpbGUtcHJldmlldy10b29sYmFye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtmbGV4LXNocmluazowO21hcmdpbi1sZWZ0OjhweH0uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRue2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjAgOHB4O21pbi13aWR0aDozMHB4O2hlaWdodDozMHB4O2dhcDo2cHg7Ym9yZGVyLXJhZGl1czo4cHg7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc2l6ZTouNzVyZW07ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1cyxjb2xvciAuMTVzLGJvcmRlci1jb2xvciAuMTVzLGJveC1zaGFkb3cgLjE1cyx0cmFuc2Zvcm0gLjFzfS5maWxlLXByZXZpZXctdG9vbGJhci1idG46aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyKTtib3gtc2hhZG93OjAgMXB4IDNweCAjMDAwMDAwMGF9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0bjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NSl9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0bjpkaXNhYmxlZHtvcGFjaXR5Oi41O2N1cnNvcjpub3QtYWxsb3dlZDt0cmFuc2Zvcm06bm9uZX0uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuIC50b29sYmFyLWljb257ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuIC50b29sYmFyLXRleHR7Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi4wMWVtfS5maWxlLXByZXZpZXctdG9vbGJhci1idG4udG9vbGJhci1hY3RpdmV7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2NvbG9yOnZhcigtLWFjY2VudCk7Ym9yZGVyLWNvbG9yOiNkNDk4NjM2Nn0uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuLnByaW1hcnl7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2NvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzowIDFweCAycHggIzU5M2EyMDI2fS5maWxlLXByZXZpZXctdG9vbGJhci1idG4ucHJpbWFyeTpob3ZlcntiYWNrZ3JvdW5kOiNiODdhNDc7Ym9yZGVyLWNvbG9yOiNiODdhNDc7Y29sb3I6I2ZmZjtib3gtc2hhZG93OjAgMnB4IDZweCAjNTkzYTIwMzN9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0bi5kYW5nZXJ7Y29sb3I6I2MwMzkyYn0uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuLmRhbmdlcjpob3ZlcntiYWNrZ3JvdW5kOiNkYzQ2NDYxNDtib3JkZXItY29sb3I6I2RjNDY0NjRkO2NvbG9yOiNhMDI4MTh9LmZpbGUtcHJldmlldy10b29sYmFyLWdyb3Vwe2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6c3RyZXRjaDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6OHB4O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpfS5maWxlLXByZXZpZXctdG9vbGJhci1ncm91cCAuZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRue2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O21pbi13aWR0aDoyOHB4O2hlaWdodDoyOHB4O2JveC1zaGFkb3c6bm9uZX0uZmlsZS1wcmV2aWV3LXRvb2xiYXItZ3JvdXAgLmZpbGUtcHJldmlldy10b29sYmFyLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KX0uZmlsZS1wcmV2aWV3LXRvb2xiYXItZ3JvdXBsYWJlbHtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MCA2cHg7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yaWdodDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpfS5maWxlLXByZXZpZXctdG9vbGJhci5lZGl0aW5ne2dhcDo2cHh9QG1lZGlhKG1heC13aWR0aDo3NjhweCl7LmZpbGUtcHJldmlldy10b29sYmFyLWJ0bntoZWlnaHQ6MjhweDttaW4td2lkdGg6MjhweDtwYWRkaW5nOjAgNnB4fS5maWxlLXByZXZpZXctdG9vbGJhci1idG4gLnRvb2xiYXItdGV4dHtkaXNwbGF5Om5vbmV9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0bi5wcmltYXJ5IC50b29sYmFyLXRleHR7ZGlzcGxheTppbmxpbmUtZmxleH19LndhbmQtaWNvbntmbGV4LXNocmluazowO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0uY29kZS1wcmV2aWV3LWNvbnRlbnQgcHJlLndyYXB7d2hpdGUtc3BhY2U6cHJlLXdyYXA7d29yZC1icmVhazpicmVhay13b3JkfS5maWxlLXByZXZpZXctYm9keS5lZGl0aW5ne3BhZGRpbmc6MDtiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpfS5jb2RlLWVkaXRvci13cmFwcGVye2Rpc3BsYXk6ZmxleDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO21pbi1oZWlnaHQ6MDtiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpfS5jb2RlLWVkaXRvci10ZXh0YXJlYXtmbGV4OjE7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTttaW4taGVpZ2h0OjA7Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6MTZweCAyMHB4O21hcmdpbjowO2JvcmRlcjpub25lO291dGxpbmU6bm9uZTtyZXNpemU6bm9uZTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTp2YXIoLS1mb250LXNpemUtc20pO2xpbmUtaGVpZ2h0OnZhcigtLWxpbmUtaGVpZ2h0KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSk7dGFiLXNpemU6MjstbW96LXRhYi1zaXplOjI7d2hpdGUtc3BhY2U6cHJlO292ZXJmbG93OmF1dG87Y2FyZXQtY29sb3I6dmFyKC0tYWNjZW50KTtzY3JvbGxiYXItd2lkdGg6dGhpbjtzY3JvbGxiYXItY29sb3I6dmFyKC0tYm9yZGVyLWRlZmF1bHQpIHRyYW5zcGFyZW50fS5jb2RlLWVkaXRvci10ZXh0YXJlYTo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6OHB4O2hlaWdodDo4cHh9LmNvZGUtZWRpdG9yLXRleHRhcmVhOjotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5jb2RlLWVkaXRvci10ZXh0YXJlYTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZDp2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czo0cHh9LmNvZGUtZWRpdG9yLXRleHRhcmVhOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLXRleHQtbXV0ZWQpfS5jb2RlLWVkaXRvci10ZXh0YXJlYTpmb2N1c3tib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCAjZDQ5ODYzMjZ9LmZpbGUtcHJldmlldy1ib2R5LmtpbmQtaW1hZ2V7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDQ1ZGVnLHJnYmEoMCwwLDAsLjA0KSAyNSUsdHJhbnNwYXJlbnQgMjUlLHRyYW5zcGFyZW50IDc1JSxyZ2JhKDAsMCwwLC4wNCkgNzUlKSxsaW5lYXItZ3JhZGllbnQoNDVkZWcscmdiYSgwLDAsMCwuMDQpIDI1JSx0cmFuc3BhcmVudCAyNSUsdHJhbnNwYXJlbnQgNzUlLHJnYmEoMCwwLDAsLjA0KSA3NSUpLHZhcigtLWJnLXByaW1hcnkpO2JhY2tncm91bmQtc2l6ZToxNnB4IDE2cHg7YmFja2dyb3VuZC1wb3NpdGlvbjowIDAsOHB4IDhweH0uaW1hZ2UtcHJldmlldy13cmFwcGVye3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO292ZXJmbG93OmF1dG87cGFkZGluZzoxNnB4fS5pbWFnZS1wcmV2aWV3LWltZ3ttYXgtd2lkdGg6MTAwJTttYXgtaGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb250YWluO2N1cnNvcjp6b29tLWluO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBlYXNlO2JveC1zaGFkb3c6MCA2cHggMjBweCAjMDAwMDAwMWY7Ym9yZGVyLXJhZGl1czo0cHg7YmFja2dyb3VuZDojZmZmfS5pbWFnZS1wcmV2aWV3LWltZy56b29tZWR7bWF4LXdpZHRoOm5vbmU7bWF4LWhlaWdodDpub25lO2N1cnNvcjp6b29tLW91dDt0cmFuc2Zvcm06c2NhbGUoMSl9LmZpbGUtcHJldmlldy1ib2R5LmtpbmQtcGRme3BhZGRpbmc6MDtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSl9LnBkZi1wcmV2aWV3LWZyYW1le3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpfS5maWxlLXByZXZpZXctYm9keS5raW5kLXZpZGVvLC5maWxlLXByZXZpZXctYm9keS5raW5kLWF1ZGlve2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtiYWNrZ3JvdW5kOiMwZDBkMGR9LmZpbGUtcHJldmlldy1ib2R5LmtpbmQtYXVkaW97YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpfS5tZWRpYS1wcmV2aWV3LXdyYXBwZXJ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDAlO3BhZGRpbmc6MjRweH0ubWVkaWEtcHJldmlldy12aWRlb3ttYXgtd2lkdGg6MTAwJTttYXgtaGVpZ2h0OmNhbGMoMTAwJSAtIDQwcHgpO2JhY2tncm91bmQ6IzAwMDtib3JkZXItcmFkaXVzOjRweH0ubWVkaWEtcHJldmlldy1hdWRpb3t3aWR0aDptaW4oNDIwcHgsOTAlKX0ubWVkaWEtcHJldmlldy1pY29ue2ZvbnQtc2l6ZTozLjVyZW07b3BhY2l0eTouN30ubWVkaWEtcHJldmlldy1uYW1le2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZvbnQtc2l6ZToxcmVtO21heC13aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0ubWVkaWEtcHJldmlldy1tZXRhe2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouNzVyZW07Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS5maWxlLXByZXZpZXctYm9keS5raW5kLXZpZGVvIC5tZWRpYS1wcmV2aWV3LW1ldGF7Y29sb3I6I2ZmZmZmZmIzfS5maWxlLXByZXZpZXctYm9keS5raW5kLWJpbmFyeXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LmJpbmFyeS1wcmV2aWV3LWNhcmR7bWF4LXdpZHRoOjQ4MHB4O3BhZGRpbmc6MzJweCAyOHB4O3RleHQtYWxpZ246Y2VudGVyO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbGcpO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4fS5iaW5hcnktcHJldmlldy1pY29ue2ZvbnQtc2l6ZTozcmVtO29wYWNpdHk6LjZ9LmJpbmFyeS1wcmV2aWV3LW5hbWV7Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC1zaXplOjFyZW07d29yZC1icmVhazpicmVhay1hbGx9LmJpbmFyeS1wcmV2aWV3LW1ldGF7ZGlzcGxheTpmbGV4O2dhcDo2cHg7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouNzVyZW19LmJpbmFyeS1wcmV2aWV3LXBhdGh7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO21heC13aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0uYmluYXJ5LXByZXZpZXctYWN0aW9uc3tkaXNwbGF5OmZsZXg7Z2FwOjhweDttYXJnaW4tdG9wOjhweDtmbGV4LXdyYXA6d3JhcDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5iaW5hcnktcHJldmlldy1idG57cGFkZGluZzo4cHggMTZweDtib3JkZXItcmFkaXVzOjZweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZvbnQtc2l6ZTouODEyNXJlbTtjdXJzb3I6cG9pbnRlcjt0ZXh0LWRlY29yYXRpb246bm9uZTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1cyxib3JkZXItY29sb3IgLjE1cyxjb2xvciAuMTVzfS5iaW5hcnktcHJldmlldy1idG46aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2NvbG9yOnZhcigtLWFjY2VudCl9LnRyZWUtaXRlbXt0cmFuc2l0aW9uOmFsbCAuMnMgdmFyKC0tZWFzZS1vdXQtZXhwbyl9LnRyZWUtaXRlbTpob3Zlcnt0cmFuc2Zvcm06dHJhbnNsYXRlKDRweCl9LnRyZWUtaXRlbTphY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZSgycHgpIHNjYWxlKC45OSl9LmZpbGUtc2lkZS1wYW5lbHt0cmFuc2l0aW9uOnJpZ2h0IC4zNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyksYm94LXNoYWRvdyAuMzVzIGVhc2V9LmZpbGUtc2lkZS1wYW5lbC5vcGVue2JveC1zaGFkb3c6LThweCAwIDMycHggIzU5M2EyMDFmfS5zcGlubmVye2FuaW1hdGlvbjpzcGluIDFzIGxpbmVhciBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHNwaW57dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX1Aa2V5ZnJhbWVzIGZsb2F0ezAlLHRve3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfTUwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtOHB4KX19LmZsb2F0e2FuaW1hdGlvbjpmbG9hdCAzcyBlYXNlLWluLW91dCBpbmZpbml0ZX0uY2hhdC1tZXNzYWdlLWJ1YmJsZXstd2Via2l0LXVzZXItc2VsZWN0OnRleHQ7dXNlci1zZWxlY3Q6dGV4dH0ubXNnLWNvcHktYnRue2Rpc3BsYXk6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTMycHg7cmlnaHQ6NHB4O3BhZGRpbmc6NHB4IDEwcHg7Zm9udC1zaXplOi43NXJlbTtiYWNrZ3JvdW5kOnZhcigtLWJnLWVsZXZhdGVkKTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LW1kKTtjdXJzb3I6cG9pbnRlcjt1c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTt6LWluZGV4OjEwO3doaXRlLXNwYWNlOm5vd3JhcDstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7dG91Y2gtYWN0aW9uOm1hbmlwdWxhdGlvbn0ubXNnLWNvcHktYnRuLnZpc2libGV7ZGlzcGxheTpibG9ja30ubXNnLWNvcHktYnRuLmNvcGllZHtiYWNrZ3JvdW5kOnZhcigtLXN1Y2Nlc3MtbXV0ZWQpO2NvbG9yOnZhcigtLXN1Y2Nlc3MpO2JvcmRlci1jb2xvcjp2YXIoLS1zdWNjZXNzKX0uY2hhdC1tZXNzYWdle3Bvc2l0aW9uOnJlbGF0aXZlfS50ZXJtaW5hbC1qdW1wLWJvdHRvbXt6LWluZGV4OjIwfS5pbnB1dC1jb21wb3Nlci5pbi1mbGlnaHR7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5pbnB1dC1jb21wb3Nlci5pbi1mbGlnaHQ6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7dG9wOi0ycHg7bGVmdDotNjAlO3dpZHRoOjIyMCU7aGVpZ2h0OjNweDtib3JkZXItcmFkaXVzOjE0cHggMTRweCAwIDA7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSAyODBweCA0cHgscmdiYSh2YXIoLS1hY2NlbnQtcmdiLCAxOTcsIDEwMSwgNjEpLC40NSkgMCUscmdiYSh2YXIoLS1hY2NlbnQtcmdiLCAxOTcsIDEwMSwgNjEpLC4xMikgMzUlLHRyYW5zcGFyZW50IDYwJSkgbm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZToyODBweCA0cHg7YW5pbWF0aW9uOmNvbXBvc2VyV2F2ZVNsaWRlIDdzIGN1YmljLWJlemllciguMzUsMCwuNjUsMSkgaW5maW5pdGU7ei1pbmRleDoyO3BvaW50ZXItZXZlbnRzOm5vbmV9LmlucHV0LWNvbXBvc2VyLmluLWZsaWdodDphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMnB4O2xlZnQ6LTYwJTt3aWR0aDoyMjAlO2hlaWdodDozcHg7Ym9yZGVyLXJhZGl1czoxNHB4IDE0cHggMCAwO2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgMjIwcHggM3B4LHJnYmEodmFyKC0tYWNjZW50LXJnYiwgMTk3LCAxMDEsIDYxKSwuMjUpIDAlLHJnYmEodmFyKC0tYWNjZW50LXJnYiwgMTk3LCAxMDEsIDYxKSwuMDYpIDM1JSx0cmFuc3BhcmVudCA2MCUpIG5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6MjIwcHggM3B4O2FuaW1hdGlvbjpjb21wb3NlcldhdmVTbGlkZSA5cyBjdWJpYy1iZXppZXIoLjM1LDAsLjY1LDEpIGluZmluaXRlIHJldmVyc2U7ei1pbmRleDoyO3BvaW50ZXItZXZlbnRzOm5vbmV9QGtleWZyYW1lcyBjb21wb3NlcldhdmVTbGlkZXswJXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAlIGNlbnRlcn10b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjEwMCUgY2VudGVyfX0uc3RydWN0dXJlZC1zdGF0dXMtYmFye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2dhcDo1cHg7bWFyZ2luOjAgMCAwIGF1dG87cGFkZGluZzo0cHggOHB4O2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RyYW5zaXRpb246b3BhY2l0eSAuM3MgZWFzZSxjb2xvciAuM3MgZWFzZTtvdmVyZmxvdzpoaWRkZW47ZmxleC1zaHJpbms6MH0uc3RydWN0dXJlZC1zdGF0dXMtYmFyIC5zdGF0dXMtYmFyLWRvdHt3aWR0aDo1cHg7aGVpZ2h0OjVweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnJnYmEodmFyKC0tYWNjZW50LXJnYiwgMTk3LCAxMDEsIDYxKSwuOCk7YW5pbWF0aW9uOnN0YXR1c0RvdFB1bHNlIDEuMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7ZmxleC1zaHJpbms6MH1Aa2V5ZnJhbWVzIHN0YXR1c0RvdFB1bHNlezAlLHRve29wYWNpdHk6LjQ7dHJhbnNmb3JtOnNjYWxlKC45KX01MCV7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZSgxLjEpfX0uc3RydWN0dXJlZC1zdGF0dXMtYmFyIC5zdGF0dXMtYmFyLWxhYmVse2ZsZXgtc2hyaW5rOjA7Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouNjI1cmVtfS5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXIgLnN0YXR1cy1iYXItdGltZXJ7ZmxleC1zaHJpbms6MDtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXM7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjYyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uc3RydWN0dXJlZC1zdGF0dXMtYmFyLmNvbXBsZXRlZHthbmltYXRpb246c3RhdHVzQmFyRmFkZU91dCAycyBlYXNlLW91dCAxcyBmb3J3YXJkc30uc3RydWN0dXJlZC1zdGF0dXMtYmFyLmNvbXBsZXRlZCAuc3RhdHVzLWJhci1sYWJlbHtjb2xvcjp2YXIoLS1zdWNjZXNzKX1Aa2V5ZnJhbWVzIHN0YXR1c0JhckZhZGVPdXR7MCV7b3BhY2l0eToxO21heC1oZWlnaHQ6MjBweH03MCV7b3BhY2l0eTowO21heC1oZWlnaHQ6MjBweH10b3tvcGFjaXR5OjA7bWF4LWhlaWdodDowO21hcmdpbjowfX0uY3Jvc3Mtc2Vzc2lvbi1xdWV1ZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHg7bWFyZ2luOjAgOHB4IDRweH0ucXVldWUtaGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjVweDtwYWRkaW5nOjAgNHB4O2ZvbnQtc2l6ZTouNnJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ucXVldWUtaGVhZGVyLWxhYmVse2ZsZXg6MTtvcGFjaXR5Oi42fS5xdWV1ZS1oZWFkZXItY2xlYXJ7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6LjU2MjVyZW07cGFkZGluZzoxcHggNHB4O2JvcmRlci1yYWRpdXM6M3B4O29wYWNpdHk6LjU7dHJhbnNpdGlvbjpjb2xvciAuMTVzLGJhY2tncm91bmQgLjE1cyxvcGFjaXR5IC4xNXN9LnF1ZXVlLWhlYWRlci1jbGVhcjpob3Zlcntjb2xvcjp2YXIoLS1lcnJvciwgI2U1NSk7YmFja2dyb3VuZDojZTU1NTU1MWY7b3BhY2l0eToxfS5xdWV1ZS1pdGVte2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtwYWRkaW5nOjRweCA4cHg7Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO29wYWNpdHk6Ljc7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgZWFzZX0ucXVldWUtaXRlbTpob3ZlcntvcGFjaXR5OjF9LnF1ZXVlLWl0ZW0tZG90e2ZsZXgtc2hyaW5rOjA7d2lkdGg6NHB4O2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDpyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjYpO2FuaW1hdGlvbjpzdGF0dXNEb3RQdWxzZSAxLjJzIGVhc2UtaW4tb3V0IGluZmluaXRlfS5xdWV1ZS1pdGVtLXRleHR7ZmxleDoxO21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LnF1ZXVlLWl0ZW0tYWdle2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi41NjI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtcztvcGFjaXR5Oi41fS5xdWV1ZS1pdGVtLXNlbmQtbm93e2ZsZXgtc2hyaW5rOjA7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjMpO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tYWNjZW50LCAjYzU2NTNkKTtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjFweCA4cHg7Ym9yZGVyLXJhZGl1czo0cHg7Zm9udC1zaXplOi42cmVtO2xpbmUtaGVpZ2h0OjEuNDt0cmFuc2l0aW9uOmNvbG9yIC4xNXMsYmFja2dyb3VuZCAuMTVzLGJvcmRlci1jb2xvciAuMTVzfS5xdWV1ZS1pdGVtLXNlbmQtbm93OmhvdmVye2NvbG9yOnZhcigtLWFjY2VudCwgI2M1NjUzZCk7YmFja2dyb3VuZDpyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjEyKTtib3JkZXItY29sb3I6cmdiYSh2YXIoLS1hY2NlbnQtcmdiLCAxOTcsIDEwMSwgNjEpLC41KX0ucXVldWUtaXRlbS1jYW5jZWx7ZmxleC1zaHJpbms6MDtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MXB4IDRweDtib3JkZXItcmFkaXVzOjNweDtmb250LXNpemU6LjY4NzVyZW07bGluZS1oZWlnaHQ6MTtvcGFjaXR5Oi40O3RyYW5zaXRpb246Y29sb3IgLjE1cyxiYWNrZ3JvdW5kIC4xNXMsb3BhY2l0eSAuMTVzfS5xdWV1ZS1pdGVtLWNhbmNlbDpob3Zlcntjb2xvcjp2YXIoLS1lcnJvciwgI2U1NSk7YmFja2dyb3VuZDojZTU1NTU1MWY7b3BhY2l0eToxfS5zZXR0aW5ncy1jYXJkLWhlYWR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjEycHg7bWFyZ2luLWJvdHRvbToxNHB4fS5zZXR0aW5ncy1jYXJkLWljb257ZmxleDowIDAgYXV0bzt3aWR0aDozNnB4O2hlaWdodDozNnB4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Ym9yZGVyLXJhZGl1czoxMHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjYzU2NTNkMmUsI2M1NjUzZDBmKTtjb2xvcjp2YXIoLS1hY2NlbnQpO2ZvbnQtc2l6ZToxOHB4O2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICNjNTY1M2QyZX0uc2V0dGluZ3MtY2FyZC1oZWFkLXRleHR7ZmxleDoxO21pbi13aWR0aDowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweH0uc2V0dGluZ3MtY2FyZC10aXRsZXtmb250LXNpemU6LjkzNzVyZW07Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGV0dGVyLXNwYWNpbmc6LjAwNWVtO2xpbmUtaGVpZ2h0OjEuMzttYXJnaW46MH0uc2V0dGluZ3MtY2FyZC1kZXNje2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGluZS1oZWlnaHQ6MS41O21hcmdpbjowfS5zZXR0aW5ncy1jYXJkLWFjdGlvbnN7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7bWFyZ2luLXRvcDo2cHh9LnNldHRpbmdzLWNhcmQtYWN0aW9ucyAuYnRue21pbi13aWR0aDoxMjBweH0uc2V0dGluZ3Mtc3VjY2Vzcy1tZXNzYWdle2NvbG9yOnZhcigtLXN1Y2Nlc3MpfS5zZXR0aW5ncy1zZWN0aW9uLWhlYWR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjEwcHg7bWFyZ2luLWJvdHRvbToxMnB4fS5zZXR0aW5ncy1zZWN0aW9uLWljb257ZmxleDowIDAgYXV0bzt3aWR0aDoyOHB4O2hlaWdodDoyOHB4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Ym9yZGVyLXJhZGl1czo4cHg7YmFja2dyb3VuZDojYzU2NTNkMWE7Zm9udC1zaXplOjE0cHh9LnNldHRpbmdzLXNlY3Rpb24taGVhZC10ZXh0e2ZsZXg6MTttaW4td2lkdGg6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHh9LnNldHRpbmdzLXNlY3Rpb24taGVhZGluZ3tmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsZXR0ZXItc3BhY2luZzouMDA1ZW07bGluZS1oZWlnaHQ6MS4zO21hcmdpbjowfS5zZXR0aW5ncy1zZWN0aW9uLXN1Yntmb250LXNpemU6LjcycmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xpbmUtaGVpZ2h0OjEuNTttYXJnaW46MH0uc2V0dGluZ3MtdG9nZ2xlLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxNHB4O3BhZGRpbmc6MTJweCAxNHB4O2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kOiNmZmZmZmY4Yztib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xKTttYXJnaW4tdG9wOjEwcHh9LnNldHRpbmdzLXRvZ2dsZS1yb3crLnNldHRpbmdzLXRvZ2dsZS1yb3csLnNldHRpbmdzLXRvZ2dsZS1yb3crLnNldHRpbmdzLXJhbmdlLXJvdywuc2V0dGluZ3MtcmFuZ2Utcm93Ky5zZXR0aW5ncy10b2dnbGUtcm93e21hcmdpbi10b3A6OHB4fS5zZXR0aW5ncy10b2dnbGUtdGV4dHtmbGV4OjE7bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6M3B4fS5zZXR0aW5ncy10b2dnbGUtdGl0bGV7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2N1cnNvcjpwb2ludGVyfS5zZXR0aW5ncy10b2dnbGUtZGVzY3tmb250LXNpemU6LjcycmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xpbmUtaGVpZ2h0OjEuNX0uc2V0dGluZ3Mtc3dpdGNoe3Bvc2l0aW9uOnJlbGF0aXZlO2ZsZXg6MCAwIGF1dG87Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTppbmxpbmUtYmxvY2t9LnNldHRpbmdzLXRvZ2dsZS1hc2lkZXtmbGV4OjAgMCBhdXRvO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHh9LmVudi1wcmV2aWV3LW1vZGFse21heC13aWR0aDo3MjBweH0uZW52LXByZXZpZXctYm9keXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMnB4O3BhZGRpbmc6MThweCAyNHB4IDhweDttaW4taGVpZ2h0OjB9LmVudi1wcmV2aWV3LXRvb2xiYXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MTJweDtmbGV4LXdyYXA6d3JhcH0uZW52LXByZXZpZXctbWV0YXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O2ZvbnQtc2l6ZTouNzhyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS5lbnYtcHJldmlldy1waWxse2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6MnB4IDEwcHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7Zm9udC1zaXplOi43MnJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjAyZW07Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKX0uZW52LXByZXZpZXctcGlsbC5pcy1pbmhlcml0e2NvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfS5lbnYtcHJldmlldy1waWxsLmlzLW1pbmltYWx7Y29sb3I6dmFyKC0tc3VjY2Vzcyk7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzLW11dGVkKTtib3JkZXItY29sb3I6dmFyKC0tc3VjY2Vzcyl9LmVudi1wcmV2aWV3LWNvdW50e2ZvbnQtc2l6ZTouNzJyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LmVudi1wcmV2aWV3LWNvbnRyb2xze2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7ZmxleC13cmFwOndyYXB9LmVudi1wcmV2aWV3LXNlYXJjaHt3aWR0aDoyMDBweDttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjZweCAxMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7YmFja2dyb3VuZDp2YXIoLS1iZy1lbGV2YXRlZCk7Zm9udC1zaXplOi43OHJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS5lbnYtcHJldmlldy1zZWFyY2g6Zm9jdXN7b3V0bGluZTpub25lO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItZm9jdXMpO2JveC1zaGFkb3c6MCAwIDAgM3B4IHZhcigtLWFjY2VudC1nbG93KX0uZW52LXByZXZpZXctcmV2ZWFse2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7Zm9udC1zaXplOi43NHJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZX0uZW52LXByZXZpZXctcmV2ZWFsIGlucHV0e2FjY2VudC1jb2xvcjp2YXIoLS1hY2NlbnQpO2N1cnNvcjpwb2ludGVyfS5lbnYtcHJldmlldy1saXN0e21heC1oZWlnaHQ6bWluKDU2dmgsNDYwcHgpO292ZXJmbG93LXk6YXV0bztib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOnZhcigtLWJnLWVsZXZhdGVkKTtwYWRkaW5nOjRweH0uZW52LXByZXZpZXctbGlzdDpmb2N1c3tvdXRsaW5lOm5vbmV9LmVudi1wcmV2aWV3LXJvd3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDIyMHB4KSBtaW5tYXgoMCwxZnIpIGF1dG87Z2FwOjEycHg7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6OHB4IDEwcHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMteHMpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgdWktbW9ub3NwYWNlLCAiU0YgTW9ubyIsIE1lbmxvLCBDb25zb2xhcywgbW9ub3NwYWNlKTtmb250LXNpemU6Ljc0cmVtO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTJzfS5lbnYtcHJldmlldy1yb3c6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSl9LmVudi1wcmV2aWV3LXJvdysuZW52LXByZXZpZXctcm93e2JvcmRlci10b3A6MXB4IGRhc2hlZCB2YXIoLS1ib3JkZXItc3VidGxlKX0uZW52LXByZXZpZXctbmFtZXtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZvbnQtd2VpZ2h0OjYwMDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2ZsZXgtd3JhcDp3cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmV9LmVudi1wcmV2aWV3LXJvdy5pcy1zZW5zaXRpdmUgLmVudi1wcmV2aWV3LW5hbWV7Y29sb3I6dmFyKC0td2FybmluZyl9LmVudi1wcmV2aWV3LWJhZGdle2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6MXB4IDZweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTouNjJyZW07Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi4wNGVtO2JhY2tncm91bmQ6dmFyKC0td2FybmluZy1tdXRlZCk7Y29sb3I6dmFyKC0td2FybmluZyk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS13YXJuaW5nKX0uZW52LXByZXZpZXctYmFkZ2UtcnVudGltZXtiYWNrZ3JvdW5kOnZhcigtLWluZm8tbXV0ZWQpO2NvbG9yOnZhcigtLWluZm8pO2JvcmRlci1jb2xvcjp2YXIoLS1pbmZvKX0uZW52LXByZXZpZXctdmFsdWV7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDttaW4td2lkdGg6MH0uZW52LXByZXZpZXctdmFsdWUuaXMtcnVudGltZXtmb250LXN0eWxlOml0YWxpYztjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uZW52LXByZXZpZXctbGVue2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouNjhyZW07d2hpdGUtc3BhY2U6bm93cmFwfS5lbnYtcHJldmlldy1sb2FkaW5nLC5lbnYtcHJldmlldy1lbXB0eXtwYWRkaW5nOjI0cHggOHB4O3RleHQtYWxpZ246Y2VudGVyO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouNzhyZW19LmVudi1wcmV2aWV3LWZvb3RlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxMnB4O3BhZGRpbmc6MTRweCAyNHB4IDE4cHh9LmVudi1wcmV2aWV3LWhpbnR7Zm9udC1zaXplOi43cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZsZXg6MTttaW4td2lkdGg6MH1AbWVkaWEobWF4LXdpZHRoOjY0MHB4KXsuZW52LXByZXZpZXctbW9kYWx7bWF4LXdpZHRoOmNhbGMoMTAwdncgLSAyNHB4KX0uZW52LXByZXZpZXctcm93e2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnI7Z2FwOjRweH0uZW52LXByZXZpZXctbGVue2p1c3RpZnktc2VsZjplbmR9LmVudi1wcmV2aWV3LXNlYXJjaCwuZW52LXByZXZpZXctY29udHJvbHN7d2lkdGg6MTAwJX19LnNldHRpbmdzLXJhbmdlLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMnB4O3BhZGRpbmc6MTJweCAxNHB4O2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kOiNmZmZmZmY4Yztib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xKTttYXJnaW4tdG9wOjhweH0uc2V0dGluZ3MtcmFuZ2UtbGFiZWx7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZsZXg6MCAwIGF1dG87bWFyZ2luLWJvdHRvbTowfS5zZXR0aW5ncy1yYW5nZXtmbGV4OjE7bWluLXdpZHRoOjA7YWNjZW50LWNvbG9yOnZhcigtLWFjY2VudCl9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2V7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO2hlaWdodDoyMnB4O2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzowO21hcmdpbjowOy0tcmFuZ2UtZmlsbDogNTAlfWlucHV0W3R5cGU9cmFuZ2VdLnNldHRpbmdzLXJhbmdlOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFja3toZWlnaHQ6NHB4O2JvcmRlci1yYWRpdXM6MnB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LHZhcigtLWFjY2VudCkgMCUsdmFyKC0tYWNjZW50KSB2YXIoLS1yYW5nZS1maWxsLCA1MCUpLHJnYmEoMTI1LDkxLDU3LC4yKSB2YXIoLS1yYW5nZS1maWxsLCA1MCUpLHJnYmEoMTI1LDkxLDU3LC4yKSAxMDAlKTtib3JkZXI6bm9uZX1pbnB1dFt0eXBlPXJhbmdlXS5zZXR0aW5ncy1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDojZmZmO2JvcmRlcjpub25lO2JveC1zaGFkb3c6MCAycHggNnB4ICMxNDBlMDgzOCwwIDAgMCAuNXB4ICM3ZDViMzkxYTttYXJnaW4tdG9wOi04cHg7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjE2cyBlYXNlLGJveC1zaGFkb3cgLjE2cyBlYXNlfWlucHV0W3R5cGU9cmFuZ2VdLnNldHRpbmdzLXJhbmdlOmhvdmVyOjotd2Via2l0LXNsaWRlci10aHVtYnt0cmFuc2Zvcm06c2NhbGUoMS4wOCl9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6YWN0aXZlOjotd2Via2l0LXNsaWRlci10aHVtYnt0cmFuc2Zvcm06c2NhbGUoMS4xNik7Ym94LXNoYWRvdzowIDRweCAxMHB4ICMxNDBlMDg0NywwIDAgMCA4cHggI2M1NjUzZDFmLDAgMCAwIC41cHggIzdkNWIzOTFhfWlucHV0W3R5cGU9cmFuZ2VdLnNldHRpbmdzLXJhbmdlOmZvY3VzLXZpc2libGU6Oi13ZWJraXQtc2xpZGVyLXRodW1ie2JveC1zaGFkb3c6MCAycHggNnB4ICMxNDBlMDgzOCwwIDAgMCA0cHggdmFyKC0tYWNjZW50LW11dGVkKSwwIDAgMCAuNXB4ICM3ZDViMzkxYX1pbnB1dFt0eXBlPXJhbmdlXS5zZXR0aW5ncy1yYW5nZTo6LW1vei1yYW5nZS10cmFja3toZWlnaHQ6NHB4O2JvcmRlci1yYWRpdXM6MnB4O2JhY2tncm91bmQ6IzdkNWIzOTMzO2JvcmRlcjpub25lfWlucHV0W3R5cGU9cmFuZ2VdLnNldHRpbmdzLXJhbmdlOjotbW96LXJhbmdlLXByb2dyZXNze2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czoycHg7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2JvcmRlcjpub25lfWlucHV0W3R5cGU9cmFuZ2VdLnNldHRpbmdzLXJhbmdlOjotbW96LXJhbmdlLXRodW1ie3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDojZmZmO2N1cnNvcjpwb2ludGVyO2JveC1zaGFkb3c6MCAycHggNnB4ICMxNDBlMDgzOCwwIDAgMCAuNXB4ICM3ZDViMzkxYTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMTZzIGVhc2V9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6aG92ZXI6Oi1tb3otcmFuZ2UtdGh1bWJ7dHJhbnNmb3JtOnNjYWxlKDEuMDgpfWlucHV0W3R5cGU9cmFuZ2VdLnNldHRpbmdzLXJhbmdlOmFjdGl2ZTo6LW1vei1yYW5nZS10aHVtYnt0cmFuc2Zvcm06c2NhbGUoMS4xNil9LnNldHRpbmdzLXJhbmdlLXZhbHVle2ZsZXg6MCAwIDQ0cHg7dGV4dC1hbGlnbjpyaWdodDtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXN9LnNldHRpbmdzLXJvdy13aXRoLWFjdGlvbntkaXNwbGF5OmZsZXg7Z2FwOjhweDthbGlnbi1pdGVtczpzdHJldGNofS5zZXR0aW5ncy1yb3ctd2l0aC1hY3Rpb24+LmZpZWxkLWlucHV0LC5zZXR0aW5ncy1yb3ctd2l0aC1hY3Rpb24+LmZpZWxkLXNlbGVjdCwuc2V0dGluZ3Mtcm93LXdpdGgtYWN0aW9uPnNlbGVjdHtmbGV4OjE7bWluLXdpZHRoOjB9LnNldHRpbmdzLXJvdy13aXRoLWFjdGlvbj4uYnRue2ZsZXgtc2hyaW5rOjB9LnNldHRpbmdzLWFib3V0LXJvdy1hY3Rpb257ZmxleC13cmFwOm5vd3JhcH0uc2V0dGluZ3MtdmFsdWUtZmxleHtmbGV4OjE7dGV4dC1hbGlnbjpyaWdodH0uZmlsZS1waWNrZXJ7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTJweDtwYWRkaW5nOjZweCAxMnB4IDZweCA2cHg7YmFja2dyb3VuZDojZmZmZmZmYjg7Ym9yZGVyOjFweCBkYXNoZWQgcmdiYSgxMjUsOTEsNTcsLjI1KTtib3JkZXItcmFkaXVzOjEycHg7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE4cyxiYWNrZ3JvdW5kIC4xOHN9LmZpbGUtcGlja2VyOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQtc29mdCwgcmdiYSgxOTcsIDEwMSwgNjEsIC40NSkpO2JhY2tncm91bmQ6I2ZmZmZmZmU2fS5maWxlLXBpY2tlci5maWxlLXBpY2tlci1oYXMtZmlsZXtib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLWNvbG9yOiNjNTY1M2Q1OTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2M1NjUzZDE0LCNmZmZmZmZkOSl9LmZpbGUtcGlja2VyLWlucHV0e3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjFweDtoZWlnaHQ6MXB4O29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lfS5maWxlLXBpY2tlci10cmlnZ2Vye2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo4cHggMTRweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsdmFyKC0tYWNjZW50KSxjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hY2NlbnQpIDgwJSwjMDAwIDAlKSk7Y29sb3I6I2ZmZjtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NjAwO2JvcmRlci1yYWRpdXM6OXB4O2N1cnNvcjpwb2ludGVyO2ZsZXgtc2hyaW5rOjA7dHJhbnNpdGlvbjpmaWx0ZXIgLjE1cyx0cmFuc2Zvcm0gLjE1cyxib3gtc2hhZG93IC4xNXM7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3cteHMpO3VzZXItc2VsZWN0Om5vbmV9LmZpbGUtcGlja2VyLXRyaWdnZXI6aG92ZXJ7ZmlsdGVyOmJyaWdodG5lc3MoMS4wNSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctc20pfS5maWxlLXBpY2tlci10cmlnZ2VyOmFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX0uZmlsZS1waWNrZXItaW5wdXQ6Zm9jdXMtdmlzaWJsZSsuZmlsZS1waWNrZXItdHJpZ2dlcntvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1hY2NlbnQpO291dGxpbmUtb2Zmc2V0OjJweH0uZmlsZS1waWNrZXItaWNvbnt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2ZsZXgtc2hyaW5rOjB9LmZpbGUtcGlja2VyLWxhYmVse3doaXRlLXNwYWNlOm5vd3JhcH0uZmlsZS1waWNrZXItbmFtZXtmbGV4OjE7bWluLXdpZHRoOjA7Zm9udC1zaXplOi44MTI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pfS5maWxlLXBpY2tlci5maWxlLXBpY2tlci1oYXMtZmlsZSAuZmlsZS1waWNrZXItbmFtZXtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZvbnQtd2VpZ2h0OjUwMH0uc2V0dGluZ3MtYXBwLWljb24tYmxvY2t7bWFyZ2luLWJvdHRvbToxOHB4fS5zZXR0aW5ncy1hcHAtaWNvbi1waWNrZXJ7ZGlzcGxheTpmbGV4O2dhcDoxMnB4O2ZsZXgtd3JhcDp3cmFwfS5zZXR0aW5ncy1hcHAtaWNvbi1vcHRpb257ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtwYWRkaW5nOjEwcHg7Ym9yZGVyLXJhZGl1czoxNHB4O2JhY2tncm91bmQ6I2ZmZmZmZjhjO2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEyKTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMThzLGJhY2tncm91bmQgLjE4cyx0cmFuc2Zvcm0gLjE4cyxib3gtc2hhZG93IC4xOHM7bWluLXdpZHRoOjg0cHh9LnNldHRpbmdzLWFwcC1pY29uLW9wdGlvbjpob3Zlcnt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3JkZXItY29sb3I6I2M1NjUzZDRkO2JhY2tncm91bmQ6I2ZmZmZmZmM3O2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXhzKX0uc2V0dGluZ3MtYXBwLWljb24tb3B0aW9uLnNlbGVjdGVkLC5zZXR0aW5ncy1hcHAtaWNvbi1vcHRpb25bYXJpYS1wcmVzc2VkPXRydWVde2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjYzU2NTNkMjQsI2M1NjUzZDBhKTtib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCAjYzU2NTNkMzN9LnNldHRpbmdzLWFwcC1pY29uLXByZXZpZXd7d2lkdGg6NTZweDtoZWlnaHQ6NTZweDtib3JkZXItcmFkaXVzOjEycHg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uc2V0dGluZ3MtYXBwLWljb24tbGFiZWx7Zm9udC1zaXplOi43MnJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC13ZWlnaHQ6NTAwfS5zZXR0aW5ncy1jb25uZWN0LXVybC10ZXh0e2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgbW9ub3NwYWNlKTtmb250LXNpemU6MTJweDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3dvcmQtYnJlYWs6YnJlYWstYWxsO3VzZXItc2VsZWN0OmFsbDstd2Via2l0LXVzZXItc2VsZWN0OmFsbH1AbWVkaWEobWF4LXdpZHRoOjY0MHB4KXsuc2V0dGluZ3MtdG9nZ2xlLXJvdywuc2V0dGluZ3MtcmFuZ2Utcm93e3BhZGRpbmc6MTBweCAxMnB4fS5zZXR0aW5ncy10b2dnbGUtcm93e2ZsZXgtd3JhcDp3cmFwfS5zZXR0aW5ncy1jYXJkLWFjdGlvbnN7anVzdGlmeS1jb250ZW50OnN0cmV0Y2h9LnNldHRpbmdzLWNhcmQtYWN0aW9ucyAuYnRue2ZsZXg6MTttaW4td2lkdGg6MH0uZmlsZS1waWNrZXJ7ZmxleC13cmFwOndyYXA7cGFkZGluZzo4cHh9LmZpbGUtcGlja2VyLXRyaWdnZXJ7ZmxleDoxIDEgYXV0bztqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5maWxlLXBpY2tlci1uYW1le2ZsZXg6MSAxIDEwMCU7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzowIDRweH0uc2V0dGluZ3Mtcm93LXdpdGgtYWN0aW9ue2ZsZXgtd3JhcDp3cmFwfS5zZXR0aW5ncy1yb3ctd2l0aC1hY3Rpb24+LmJ0bntmbGV4OjF9fS50b3BiYXItZ2l0LXNsb3R7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXJ9LnRvcGJhci1naXQtc2xvdDplbXB0eXtkaXNwbGF5Om5vbmV9LnRvcGJhci1naXQtYmFkZ2V7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjVweDtoZWlnaHQ6MzJweDtwYWRkaW5nOjAgMTBweDtmb250LWZhbWlseTp2YXIoLS1mb250LXNhbnMpO2ZvbnQtc2l6ZTouNzJyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2N1cnNvcjpwb2ludGVyO3doaXRlLXNwYWNlOm5vd3JhcDt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2JveC1zaXppbmc6Ym9yZGVyLWJveDtsaW5lLWhlaWdodDoxfS50b3BiYXItZ2l0LWJhZGdlOmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZjgwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnRvcGJhci1naXQtYmFkZ2U6YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTYpfS50b3BiYXItZ2l0LWljb257ZmxleC1zaHJpbms6MDtvcGFjaXR5Oi44NX0udG9wYmFyLWdpdC1icmFuY2h7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCBtb25vc3BhY2UpO2ZvbnQtd2VpZ2h0OjYwMDttYXgtd2lkdGg6MTJlbTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30udG9wYmFyLWdpdC1jb3VudHtjb2xvcjp2YXIoLS1hY2NlbnQpO2ZvbnQtd2VpZ2h0OjcwMDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIG1vbm9zcGFjZSl9LnRvcGJhci1naXQtY2xlYW57Y29sb3I6IzNjYTA1YWQ5O2ZvbnQtd2VpZ2h0OjcwMDtmb250LXNpemU6Ljc4cmVtfS5xdWljay1jb21taXQtbW9kYWx7bWF4LXdpZHRoOjU0MHB4fS5xdWljay1jb21taXQtbW9kYWwgLm1vZGFsLWJvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTJweH0ucWMtZW1wdHl7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7cGFkZGluZzo2cHggMDt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXN0eWxlOml0YWxpY30ucWMtZmlsZS1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OXB4O2xpbmUtaGVpZ2h0OjEuNjtwYWRkaW5nOjFweCAycHg7Ym9yZGVyLXJhZGl1czo1cHh9LnFjLWZpbGUtcm93OmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTBmfS5xYy1maWxlLWJhZGdle2ZsZXgtc2hyaW5rOjA7d2lkdGg6MTdweDtoZWlnaHQ6MTdweDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JvcmRlci1yYWRpdXM6NHB4O2ZvbnQtc2l6ZTouNjZyZW07Zm9udC13ZWlnaHQ6ODAwO2xldHRlci1zcGFjaW5nOjA7bGluZS1oZWlnaHQ6MTtmb250LWZhbWlseTp2YXIoLS1mb250LXNhbnMpfS5xYy1iYWRnZS1hZGR7Y29sb3I6IzIyODA0MmZhO2JhY2tncm91bmQ6IzNjYTA1YTI5fS5xYy1iYWRnZS1tb2R7Y29sb3I6I2FhNmUwZWZhO2JhY2tncm91bmQ6I2RjOTYxZTI5fS5xYy1iYWRnZS1kZWx7Y29sb3I6I2JlMzgzOGZhO2JhY2tncm91bmQ6I2M4NDY0NjI2fS5xYy1iYWRnZS1yZW57Y29sb3I6IzRlNjRiY2ZhO2JhY2tncm91bmQ6IzZlODJjODI5fS5xYy1iYWRnZS11bnRyYWNrZWR7Y29sb3I6IzIyODA0MmYyO2JhY2tncm91bmQ6IzNjYTA1YTFmfS5xYy1iYWRnZS1pZ25vcmVkLC5xYy1iYWRnZS1vdGhlcntjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtiYWNrZ3JvdW5kOiM3ODc4NzgxZn0ucWMtZmlsZS1wYXRoe292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmbGV4OjEgMSBhdXRvO21pbi13aWR0aDowfS5xYy1maWxlLWRpcntjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ucWMtZmlsZS1uYW1le2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC13ZWlnaHQ6NTAwfS5xYy1zdWJtb2R1bGUtYmFkZ2V7ZmxleC1zaHJpbms6MDtwYWRkaW5nOjFweCA2cHg7Ym9yZGVyLXJhZGl1czo4cHg7YmFja2dyb3VuZDojOGM2NGM4Mjk7Y29sb3I6IzZlNDZiNGYyO2ZvbnQtc2l6ZTouNjhyZW07Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi4wMmVtO3doaXRlLXNwYWNlOm5vd3JhcH0ucWMtbWVzc2FnZS1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6OHB4fS5xYy1haS1idG57ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjVweDtjb2xvcjp2YXIoLS1hY2NlbnQpfS5xYy1haS1idG4gc3Zne2NvbG9yOnZhcigtLWFjY2VudCk7ZmxleC1zaHJpbms6MH0ucWMtYWktYnRuOmRpc2FibGVke29wYWNpdHk6LjU7Y3Vyc29yOm5vdC1hbGxvd2VkO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5xYy1haS1idG46ZGlzYWJsZWQgc3Zne2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5xYy1tZXNzYWdlLWlucHV0e3Jlc2l6ZTp2ZXJ0aWNhbDttaW4taGVpZ2h0OjY4cHg7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCBtb25vc3BhY2UpO2ZvbnQtc2l6ZTouODRyZW07bGluZS1oZWlnaHQ6MS41NX0ucWMtdGFnLWZpZWxkLWlucHV0e2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjA7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCBtb25vc3BhY2UpO2ZvbnQtc2l6ZTouODJyZW19LnFjLXRhZy1maWVsZC1pbnB1dDpkaXNhYmxlZHtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtiYWNrZ3JvdW5kOiM3ZDViMzkwYTtib3JkZXItY29sb3I6IzdkNWIzOTE0O2N1cnNvcjpkZWZhdWx0O2JveC1zaGFkb3c6bm9uZX0ucXVpY2stY29tbWl0LW1vZGFsIC53b3JrdHJlZS1tZXJnZS1hY3Rpb25ze2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7Z2FwOjhweDttYXJnaW4tdG9wOjRweH0ucXVpY2stY29tbWl0LW1vZGFsIC5tb2RhbC1ib2R5e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjE0cHh9LnFjLXNlY3Rpb24tdGl0bGV7Zm9udC1zaXplOi43MnJlbTtmb250LXdlaWdodDo3MDA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOi4wN2VtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0ucXVpY2stY29tbWl0LW1vZGFse21heC13aWR0aDo2MjBweH0ucXVpY2stY29tbWl0LW1vZGFsIC5tb2RhbC1ib2R5e2dhcDowfS5xYy1yZWxlYXNlLXBhbmVsLC5xYy1yZXN1bHQtcGFuZWx7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTRweH0ucWMtcGFpcntkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjcycHggbWlubWF4KDAsMWZyKTtnYXA6MTJweDthbGlnbi1pdGVtczpzdGFydH0ucWMtcGFpci1sYWJlbHtwYWRkaW5nLXRvcDo5cHg7Zm9udC1zaXplOi43MnJlbTtmb250LXdlaWdodDo4MDA7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGV0dGVyLXNwYWNpbmc6LjA2ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS5xYy1wYWlyLWZsb3d7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczptaW5tYXgoMCwuOWZyKSAyNHB4IG1pbm1heCgwLDEuMWZyKTtnYXA6OHB4O2FsaWduLWl0ZW1zOmNlbnRlcjttaW4td2lkdGg6MH0ucWMtcGFpci12YWx1ZXttaW4td2lkdGg6MDttaW4taGVpZ2h0OjM4cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3BhZGRpbmc6OHB4IDEwcHg7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMTIpO2JvcmRlci1yYWRpdXM6OHB4O2JhY2tncm91bmQ6I2ZmZmZmZjg1O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtvdmVyZmxvdzpoaWRkZW59LnFjLXBhaXItdmFsdWUtLXRve2JhY2tncm91bmQ6I2ZmZmZmZmQ2O2JvcmRlci1jb2xvcjojYzU2NTNkMzg7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0ucWMtcGFpci12YWx1ZSBjb2Rle2ZsZXgtc2hyaW5rOjA7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCBtb25vc3BhY2UpO2ZvbnQtc2l6ZTouNzhyZW07Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDojYzU2NTNkMTc7Ym9yZGVyLXJhZGl1czo1cHg7cGFkZGluZzoycHggNnB4fS5xYy1wYWlyLXZhbHVlIHNwYW57bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtc2l6ZTouODJyZW19LnFjLXBhaXItLWNvbW1pdCAucWMtcGFpci1mbG93e2FsaWduLWl0ZW1zOnN0cmV0Y2h9LnFjLXBhaXItLWNvbW1pdCAucWMtcGFpci12YWx1ZXttaW4taGVpZ2h0Ojc2cHg7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0ucWMtcGFpci0tY29tbWl0IC5xYy1wYWlyLXZhbHVlLS10b3twYWRkaW5nOjA7Ym9yZGVyOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ucWMtcGFpci0tY29tbWl0IC5xYy1tZXNzYWdlLWlucHV0e21pbi1oZWlnaHQ6NzZweDt3aWR0aDoxMDAlO3Jlc2l6ZTp2ZXJ0aWNhbH0ucWMtcGFpci0tdGFnIC5xYy1wYWlyLXZhbHVlLS10b3twYWRkaW5nOjA7Ym9yZGVyOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ucWMtcGFpci0tdGFnIC5xYy10YWctZmllbGQtaW5wdXR7d2lkdGg6MTAwJTttaW4taGVpZ2h0OjM4cHh9LnFjLXBhaXItYXJyb3d7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXdlaWdodDo4MDA7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCBtb25vc3BhY2UpfS5xYy1tdXRlZHtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXN0eWxlOml0YWxpY30ucWMtbW9kYWwtYWN0aW9ucywucWMtcmVzdWx0LWFjdGlvbnN7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtnYXA6OHB4fS5xYy1yZXN1bHQtcGFuZWx7cGFkZGluZy10b3A6MnB4fS5xYy1yZXN1bHQtcHVzaGVke2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO21pbi1oZWlnaHQ6MzBweDtwYWRkaW5nOjAgMTBweDtib3JkZXItcmFkaXVzOjk5OXB4O2NvbG9yOiMyODgyNDZmMjtiYWNrZ3JvdW5kOiMzY2EwNWExZjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoNjAsMTYwLDkwLC4yNCk7Zm9udC1zaXplOi43OHJlbTtmb250LXdlaWdodDo3MDB9LnFjLWRvY2std3JhcHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo4cHg7cGFkZGluZy10b3A6MnB4fS5xYy1kb2NrLXdyYXBbZGF0YS1kaXNhYmxlZD0iMSJde29wYWNpdHk6LjU1O3BvaW50ZXItZXZlbnRzOm5vbmV9LnFjLWRvY2stYnVzeXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O2FsaWduLXNlbGY6ZmxleC1zdGFydDtwYWRkaW5nOjEwcHggMTRweDtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZDojYzU2NTNkMWE7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE5NywxMDEsNjEsLjIpO2NvbG9yOnZhcigtLWFjY2VudCk7Zm9udC1zaXplOi44MnJlbTtmb250LXdlaWdodDo3MDB9LnFjLWRvY2stYnVzeS1kb3R7d2lkdGg6OHB4O2hlaWdodDo4cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2FuaW1hdGlvbjpxYy1kb2NrLWJ1c3ktcHVsc2UgMS4ycyBlYXNlLWluLW91dCBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHFjLWRvY2stYnVzeS1wdWxzZXswJSx0b3tvcGFjaXR5Oi40O3RyYW5zZm9ybTpzY2FsZSguODUpfTUwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlKDEuMTUpfX0ucWMtZG9jay1zdGFnZXstLXFjLXRvbmU6IHZhcigtLWFjY2VudCk7LS1xYy10b25lLXNvZnQ6IHJnYmEoMTk3LCAxMDEsIDYxLCAuMik7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczptaW5tYXgoMCwxZnIpIDk2cHg7Z2FwOjEwcHg7aGVpZ2h0OjE2OHB4O3BhZGRpbmc6OHB4O2JvcmRlci1yYWRpdXM6MTZweDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xNik7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoMTIwJSAxMjAlIGF0IDMwJSAzMCUsI2ZmZmZmZjhjLCNmZmY1ZWIyOSksbGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmZmZmNzUsI2ZmZjVlYjM4KTtib3gtc2hhZG93Omluc2V0IDAgMXB4ICNmZmZmZmZiMywwIDFweCAzcHggIzU5M2EyMDBkO3VzZXItc2VsZWN0Om5vbmV9LnFjLWRvY2stc3RhZ2VbZGF0YS1hY3Rpb249Y29tbWl0LXRhZ117LS1xYy10b25lOiAjNGE2ZmE1Oy0tcWMtdG9uZS1zb2Z0OiByZ2JhKDc0LCAxMTEsIDE2NSwgLjIyKX0ucWMtZG9jay1zdGFnZVtkYXRhLWFjdGlvbj1jb21taXQtcHVzaF17LS1xYy10b25lOiAjNGY3YTU4Oy0tcWMtdG9uZS1zb2Z0OiByZ2JhKDc5LCAxMjIsIDg4LCAuMjIpfS5xYy1kb2NrLXN0YWdlW2RhdGEtYWN0aW9uPWNvbW1pdC10YWctcHVzaF17LS1xYy10b25lOiAjN2M1YWE4Oy0tcWMtdG9uZS1zb2Z0OiByZ2JhKDEyNCwgOTAsIDE2OCwgLjI0KX0ucWMtZG9jay1maWVsZHtwb3NpdGlvbjpyZWxhdGl2ZTttaW4td2lkdGg6MDtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZDpyZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KDQ1ZGVnLHJnYmEoMTI1LDkxLDU3LC4wMzUpIDAgOHB4LHRyYW5zcGFyZW50IDhweCAxNnB4KTt0b3VjaC1hY3Rpb246bm9uZTtvdmVyZmxvdzpoaWRkZW59LnFjLWRvY2stY2x1c3Rlcntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7Ym9yZGVyLXJhZGl1czoxNHB4O2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tcWMtdG9uZSkgMTAlLHRyYW5zcGFyZW50KTtib3JkZXI6MS41cHggZGFzaGVkIGNvbG9yLW1peChpbiBzcmdiLHZhcigtLXFjLXRvbmUpIDM4JSx0cmFuc3BhcmVudCk7Ym94LXNoYWRvdzowIDRweCAxNHB4IHZhcigtLXFjLXRvbmUtc29mdCk7cG9pbnRlci1ldmVudHM6bm9uZTt6LWluZGV4OjA7b3BhY2l0eTowO3RyYW5zaXRpb246dHJhbnNmb3JtIC4yMnMgY3ViaWMtYmV6aWVyKC4yMiwxLC4zNiwxKSx3aWR0aCAuMjJzIGN1YmljLWJlemllciguMjIsMSwuMzYsMSksaGVpZ2h0IC4yMnMgY3ViaWMtYmV6aWVyKC4yMiwxLC4zNiwxKSxvcGFjaXR5IC4xOHMgZWFzZSxiYWNrZ3JvdW5kIC4ycyBlYXNlLGJvcmRlci1jb2xvciAuMnMgZWFzZX0ucWMtZG9jay1jbHVzdGVyLmlzLWFjdGl2ZXtvcGFjaXR5OjF9LnFjLWNoaXB7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo3cHg7aGVpZ2h0OjM4cHg7cGFkZGluZzowIDE0cHg7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMjIpO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDojZmZmZmZmZWI7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi44MnJlbTtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LjAxZW07d2hpdGUtc3BhY2U6bm93cmFwO2N1cnNvcjpncmFiO3RvdWNoLWFjdGlvbjpub25lO2JveC1zaGFkb3c6MCAycHggNnB4ICM1OTNhMjAxNDt6LWluZGV4OjI7dHJhbnNpdGlvbjpib3gtc2hhZG93IC4xOHMgZWFzZSxib3JkZXItY29sb3IgLjE4cyBlYXNlLGJhY2tncm91bmQgLjE4cyBlYXNlLGNvbG9yIC4xOHMgZWFzZX0ucWMtY2hpcC5xYy1jaGlwLS1hbmlte3RyYW5zaXRpb246dHJhbnNmb3JtIC4yOHMgY3ViaWMtYmV6aWVyKC4yMiwxLC4zNiwxKSxib3gtc2hhZG93IC4xOHMgZWFzZSxib3JkZXItY29sb3IgLjE4cyBlYXNlLGJhY2tncm91bmQgLjE4cyBlYXNlLGNvbG9yIC4xOHMgZWFzZX0ucWMtY2hpcC5pcy1ncmFiYmluZ3tjdXJzb3I6Z3JhYmJpbmc7ei1pbmRleDo1O2JveC1zaGFkb3c6MCAxMnB4IDI2cHggIzU5M2EyMDM4fS5xYy1jaGlwOmRpc2FibGVke2N1cnNvcjpub3QtYWxsb3dlZH0ucWMtY2hpcDpub3QoOmRpc2FibGVkKTpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tcWMtdG9uZSl9LnFjLWNoaXAtZG90e3dpZHRoOjlweDtoZWlnaHQ6OXB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6IzdkNWIzOTRkO2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMnB4ICNmZmY5O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMThzIGVhc2UsdHJhbnNmb3JtIC4xOHMgZWFzZX0ucWMtY2hpcC0tY29tbWl0IC5xYy1jaGlwLWRvdHtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCl9LnFjLWNoaXAtLXRhZyAucWMtY2hpcC1kb3R7YmFja2dyb3VuZDojNGE2ZmE1fS5xYy1jaGlwLS1wdXNoIC5xYy1jaGlwLWRvdHtiYWNrZ3JvdW5kOiM0ZjdhNTh9LnFjLWNoaXAtLXN1YiAucWMtY2hpcC1kb3R7YmFja2dyb3VuZDojM2E4YThmfS5xYy1jaGlwLS1jb21taXR7Ym9yZGVyLWNvbG9yOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFjY2VudCkgMzAlLHJnYmEoMTI1LDkxLDU3LC4yKSl9LnFjLWNoaXAtLXRhZ3tib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsIzRhNmZhNSAzMCUscmdiYSgxMjUsOTEsNTcsLjIpKX0ucWMtY2hpcC0tcHVzaHtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsIzRmN2E1OCAzMCUscmdiYSgxMjUsOTEsNTcsLjIpKX0ucWMtY2hpcC0tc3Vie2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYiwjM2E4YThmIDMwJSxyZ2JhKDEyNSw5MSw1NywuMikpfS5xYy1jaGlwLmlzLWdyYWJiaW5nLC5xYy1jaGlwLmlzLWF0dGFjaGVke2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Ym94LXNoYWRvdzowIDEycHggMjZweCB2YXIoLS1xYy10b25lLXNvZnQpO3otaW5kZXg6NX0ucWMtY2hpcC5pcy1ncmFiYmluZyAucWMtY2hpcC1kb3QsLnFjLWNoaXAuaXMtYXR0YWNoZWQgLnFjLWNoaXAtZG90e3RyYW5zZm9ybTpzY2FsZSgxLjEpfS5xYy1jaGlwLS1jb21taXQuaXMtZ3JhYmJpbmcsLnFjLWNoaXAtLWNvbW1pdC5pcy1hdHRhY2hlZHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZixjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hY2NlbnQpIDE2JSwjZmZmKSk7Ym9yZGVyLWNvbG9yOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFjY2VudCkgNDYlLHRyYW5zcGFyZW50KX0ucWMtY2hpcC0tdGFnLmlzLWdyYWJiaW5nLC5xYy1jaGlwLS10YWcuaXMtYXR0YWNoZWR7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmYsY29sb3ItbWl4KGluIHNyZ2IsIzRhNmZhNSAxNiUsI2ZmZikpO2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYiwjNGE2ZmE1IDQ2JSx0cmFuc3BhcmVudCl9LnFjLWNoaXAtLXB1c2guaXMtZ3JhYmJpbmcsLnFjLWNoaXAtLXB1c2guaXMtYXR0YWNoZWR7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmYsY29sb3ItbWl4KGluIHNyZ2IsIzRmN2E1OCAxNiUsI2ZmZikpO2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYiwjNGY3YTU4IDQ2JSx0cmFuc3BhcmVudCl9LnFjLWNoaXAtLXN1Yi5pcy1ncmFiYmluZywucWMtY2hpcC0tc3ViLmlzLWF0dGFjaGVke2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmLGNvbG9yLW1peChpbiBzcmdiLCMzYThhOGYgMTYlLCNmZmYpKTtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsIzNhOGE4ZiA0NiUsdHJhbnNwYXJlbnQpfS5xYy1kb2NrLWxhdW5jaHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo0cHg7Ym9yZGVyLXJhZGl1czoxNHB4O2JvcmRlcjoxLjVweCBkYXNoZWQgcmdiYSgxMjUsOTEsNTcsLjMyKTtiYWNrZ3JvdW5kOiNmZmY2O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2N1cnNvcjpwb2ludGVyO3RvdWNoLWFjdGlvbjpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMnMgZWFzZSxib3JkZXItY29sb3IgLjJzIGVhc2UsY29sb3IgLjJzIGVhc2UsdHJhbnNmb3JtIC4ycyBlYXNlLGJveC1zaGFkb3cgLjJzIGVhc2V9LnFjLWRvY2stbGF1bmNoOm5vdCg6ZGlzYWJsZWQpOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1xYy10b25lKTtjb2xvcjp2YXIoLS1xYy10b25lKTtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLXFjLXRvbmUpIDglLHJnYmEoMjU1LDI1NSwyNTUsLjUpKX0ucWMtZG9jay1sYXVuY2g6ZGlzYWJsZWR7Y3Vyc29yOm5vdC1hbGxvd2VkfS5xYy1kb2NrLWxhdW5jaC1hcnJvd3tkaXNwbGF5OmlubGluZS1mbGV4O3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBlYXNlfS5xYy1kb2NrLWxhdW5jaC1sYWJlbHtmb250LXNpemU6LjcycmVtO2ZvbnQtd2VpZ2h0OjgwMDtsZXR0ZXItc3BhY2luZzouMDRlbX0ucWMtZG9jay1zdGFnZVtkYXRhLWhvdD0iMSJdIC5xYy1kb2NrLWxhdW5jaHtib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLWNvbG9yOnZhcigtLXFjLXRvbmUpO2JhY2tncm91bmQ6dmFyKC0tcWMtdG9uZSk7Y29sb3I6I2ZmZjt0cmFuc2Zvcm06c2NhbGUoMS4wNCk7Ym94LXNoYWRvdzowIDhweCAyMnB4IHZhcigtLXFjLXRvbmUtc29mdCksMCAwIDAgNXB4IGNvbG9yLW1peChpbiBzcmdiLHZhcigtLXFjLXRvbmUpIDE4JSx0cmFuc3BhcmVudCl9LnFjLWRvY2stc3RhZ2VbZGF0YS1ob3Q9IjEiXSAucWMtZG9jay1sYXVuY2gtYXJyb3d7dHJhbnNmb3JtOnRyYW5zbGF0ZSgzcHgpfS5xYy1kb2NrLWhpbnR7bWluLWhlaWdodDoxZW07Zm9udC1zaXplOi43cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RleHQtYWxpZ246Y2VudGVyO2xldHRlci1zcGFjaW5nOi4wMmVtO29wYWNpdHk6Ljh9QG1lZGlhKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsucWMtY2hpcCwucWMtY2hpcC0tYW5pbSwucWMtZG9jay1jbHVzdGVyLC5xYy1kb2NrLWxhdW5jaCwucWMtZG9jay1idXN5LWRvdHthbmltYXRpb246bm9uZSFpbXBvcnRhbnQ7dHJhbnNpdGlvbjpub25lIWltcG9ydGFudH19QG1lZGlhKG1heC13aWR0aDo3MjBweCl7LnRvcGJhci1naXQtYnJhbmNoe21heC13aWR0aDo4ZW19LnRvcGJhci1naXQtYmFkZ2V7cGFkZGluZzowIDhweDtmb250LXNpemU6LjdyZW19LnF1aWNrLWNvbW1pdC1tb2RhbHt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21heC1oZWlnaHQ6Y2FsYygxMDBkdmggLSBtYXgoMTZweCx2YXIoLS13YW5kLXNhZmUtdG9wKSkgLSBtYXgoMTJweCx2YXIoLS13YW5kLXNhZmUtYm90dG9tKSkpfS5xdWljay1jb21taXQtbW9kYWwgLm1vZGFsLWhlYWRlcntwYWRkaW5nOjE0cHggMTZweCAxMnB4fS5xdWljay1jb21taXQtbW9kYWwgLm1vZGFsLXRpdGxle2ZvbnQtc2l6ZToxLjA1cmVtfS5xdWljay1jb21taXQtbW9kYWwgLm1vZGFsLXN1YnRpdGxle21hcmdpbi10b3A6NHB4O2ZvbnQtc2l6ZTouNzhyZW07bGluZS1oZWlnaHQ6MS4zNX0ucXVpY2stY29tbWl0LW1vZGFsIC5tb2RhbC1ib2R5e3BhZGRpbmc6MTRweCAxNnB4IGNhbGMoMTZweCArIHZhcigtLXdhbmQtc2FmZS1ib3R0b20pKX0ucWMtcmVsZWFzZS1wYW5lbCwucWMtcmVzdWx0LXBhbmVse2dhcDoxMnB4fS5xYy1wYWlye2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnI7Z2FwOjVweH0ucWMtcGFpci1sYWJlbHtwYWRkaW5nLXRvcDowO2ZvbnQtc2l6ZTouNjhyZW19LnFjLXBhaXItZmxvd3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyO2dhcDo3cHg7cG9zaXRpb246cmVsYXRpdmV9LnFjLXBhaXItYXJyb3d7d2lkdGg6MjhweDtoZWlnaHQ6MjBweDtqdXN0aWZ5LXNlbGY6Y2VudGVyO3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpO2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjF9LnFjLXBhaXItdmFsdWV7bWluLWhlaWdodDozNnB4O3BhZGRpbmc6OHB4IDEwcHh9LnFjLXBhaXItdmFsdWUgY29kZXtmb250LXNpemU6Ljc2cmVtfS5xYy1wYWlyLXZhbHVlIHNwYW57Zm9udC1zaXplOi44cmVtfS5xYy1wYWlyLS1jb21taXQgLnFjLXBhaXItdmFsdWV7bWluLWhlaWdodDphdXRvfS5xYy1wYWlyLS1jb21taXQgLnFjLW1lc3NhZ2UtaW5wdXR7bWluLWhlaWdodDo5MnB4O2ZvbnQtc2l6ZToxNnB4O2xpbmUtaGVpZ2h0OjEuNDV9LnFjLXBhaXItLXRhZyAucWMtdGFnLWZpZWxkLWlucHV0e21pbi1oZWlnaHQ6NDRweDtmb250LXNpemU6MTZweH0ucWMtZG9jay1zdGFnZXtoZWlnaHQ6MjM2cHg7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtncmlkLXRlbXBsYXRlLXJvd3M6bWlubWF4KDAsMWZyKSA1OHB4O2dhcDo4cHg7cGFkZGluZzo4cHg7Ym9yZGVyLXJhZGl1czoxNHB4fS5xYy1kb2NrLWZpZWxke21pbi1oZWlnaHQ6MTYwcHh9LnFjLWNoaXB7aGVpZ2h0OjM2cHg7cGFkZGluZzowIDEycHg7Zm9udC1zaXplOi44cmVtfS5xYy1kb2NrLWxhdW5jaHttaW4taGVpZ2h0OjU4cHg7ZmxleC1kaXJlY3Rpb246cm93O2dhcDo4cHg7Ym9yZGVyLXJhZGl1czoxM3B4fS5xYy1kb2NrLWxhdW5jaC1sYWJlbHtmb250LXNpemU6Ljc4cmVtfS5xYy1kb2NrLXN0YWdlW2RhdGEtaG90PSIxIl0gLnFjLWRvY2stbGF1bmNoLWFycm93e3RyYW5zZm9ybTp0cmFuc2xhdGVZKDJweCl9fS53YW5kLWRpYWxvZy1iYWNrZHJvcHtwb3NpdGlvbjpmaXhlZDtpbnNldDowO3otaW5kZXg6OTAwMDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZy10b3A6bWF4KDI0cHgsdmFyKC0td2FuZC1zYWZlLXRvcCkpO3BhZGRpbmctYm90dG9tOm1heCgyNHB4LHZhcigtLXdhbmQtc2FmZS1ib3R0b20pKTtwYWRkaW5nLWxlZnQ6bWF4KDI0cHgsdmFyKC0td2FuZC1zYWZlLWxlZnQpKTtwYWRkaW5nLXJpZ2h0Om1heCgyNHB4LHZhcigtLXdhbmQtc2FmZS1yaWdodCkpO2JhY2tncm91bmQ6IzE0MGUwODU3O2JhY2tkcm9wLWZpbHRlcjpibHVyKDE4cHgpIHNhdHVyYXRlKDE0MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMThweCkgc2F0dXJhdGUoMTQwJSk7YW5pbWF0aW9uOndhbmREaWFsb2dCYWNrZHJvcEluIC4yMnMgY3ViaWMtYmV6aWVyKC4xNiwxLC4zLDEpIGJvdGh9LndhbmQtZGlhbG9nLWJhY2tkcm9wLmNsb3Npbmd7YW5pbWF0aW9uOndhbmREaWFsb2dCYWNrZHJvcE91dCAuMTZzIGN1YmljLWJlemllciguNCwwLC4yLDEpIGJvdGg7cG9pbnRlci1ldmVudHM6bm9uZX1Aa2V5ZnJhbWVzIHdhbmREaWFsb2dCYWNrZHJvcEluezAle29wYWNpdHk6MH10b3tvcGFjaXR5OjF9fUBrZXlmcmFtZXMgd2FuZERpYWxvZ0JhY2tkcm9wT3V0ezAle29wYWNpdHk6MX10b3tvcGFjaXR5OjB9fS53YW5kLWRpYWxvZ3twb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO21heC13aWR0aDo0MjBweDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KDEyMCUgMTIwJSBhdCAwJSAwJSx2YXIoLS1hY2NlbnQtbXV0ZWQpIDAlLHRyYW5zcGFyZW50IDU1JSksbGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1iZy1lbGV2YXRlZCkgMCUsdmFyKC0tYmctc2Vjb25kYXJ5KSAxMDAlKTtib3JkZXI6LjVweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjIycHg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tkcm9wLWZpbHRlcjpibHVyKDQwcHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoNDBweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzowIDI0cHggNjRweCAtMTJweCAjNTkzYTIwNDcsMCA2cHggMjBweCAtNnB4ICM1OTNhMjAyOSwwIDAgMCAuNXB4ICM3ZDViMzkxNCxpbnNldCAwIDFweCAjZmZmZmZmYjM7YW5pbWF0aW9uOndhbmREaWFsb2dJbiAuMjhzIGN1YmljLWJlemllciguMzQsMS40LC42NCwxKSBib3RofS53YW5kLWRpYWxvZy1iYWNrZHJvcC5jbG9zaW5nIC53YW5kLWRpYWxvZ3thbmltYXRpb246d2FuZERpYWxvZ091dCAuMTZzIGN1YmljLWJlemllciguNCwwLC4yLDEpIGJvdGh9QGtleWZyYW1lcyB3YW5kRGlhbG9nSW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZSguOTIpIHRyYW5zbGF0ZVkoMTBweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGVZKDApfX1Aa2V5ZnJhbWVzIHdhbmREaWFsb2dPdXR7MCV7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZSgxKX10b3tvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC45NikgdHJhbnNsYXRlWSg0cHgpfX0ud2FuZC1kaWFsb2ctaGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDoxNHB4O3BhZGRpbmc6MjJweCAyNHB4IDEycHh9LndhbmQtZGlhbG9nLWljb257ZmxleC1zaHJpbms6MDt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOjIwcHg7Zm9udC13ZWlnaHQ6NzAwO2xpbmUtaGVpZ2h0OjE7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmZmZmODB9LndhbmQtZGlhbG9nLWljb24uaW5mb3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsdmFyKC0tYWNjZW50LXNvZnQpIDAlLHZhcigtLWFjY2VudC1ob3ZlcikgMTAwJSk7Y29sb3I6I2ZmZn0ud2FuZC1kaWFsb2ctaWNvbi53YXJuaW5ne2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZjBjODkxIDAlLHZhcigtLXdhcm5pbmcpIDEwMCUpO2NvbG9yOiNmZmZ9LndhbmQtZGlhbG9nLWljb24uZGFuZ2Vye2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZDk4MTc4IDAlLHZhcigtLWRhbmdlcikgMTAwJSk7Y29sb3I6I2ZmZn0ud2FuZC1kaWFsb2ctaWNvbi5zdWNjZXNze2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjOGNhZjk0IDAlLHZhcigtLXN1Y2Nlc3MpIDEwMCUpO2NvbG9yOiNmZmZ9LndhbmQtZGlhbG9nLWljb24ucXVlc3Rpb257YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWFjY2VudC1zb2Z0KSAwJSx2YXIoLS1hY2NlbnQpIDEwMCUpO2NvbG9yOiNmZmZ9LndhbmQtZGlhbG9nLXRleHR3cmFwe2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NnB4O3BhZGRpbmctdG9wOjRweH0ud2FuZC1kaWFsb2ctdGl0bGV7Zm9udC1zaXplOjEuMDYyNXJlbTtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LS4wMWVtO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGluZS1oZWlnaHQ6MS4zO3dvcmQtYnJlYWs6YnJlYWstd29yZH0ud2FuZC1kaWFsb2ctbWVzc2FnZXtmb250LXNpemU6LjlyZW07Zm9udC13ZWlnaHQ6NDAwO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtsaW5lLWhlaWdodDoxLjU1O3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZH0ud2FuZC1kaWFsb2ctYm9keXtwYWRkaW5nOjRweCAyNHB4IDE0cHh9LndhbmQtZGlhbG9nLWlucHV0e3dpZHRoOjEwMCU7YmFja2dyb3VuZDp2YXIoLS1iZy1zdXJmYWNlKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6MTJweDtwYWRkaW5nOjExcHggMTRweDtmb250LWZhbWlseTp2YXIoLS1mb250LXNhbnMpO2ZvbnQtc2l6ZTouOXJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMS41cHggIzdkNWIzOTBhO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4xNXMgZWFzZSxib3gtc2hhZG93IC4xNXMgZWFzZSxiYWNrZ3JvdW5kIC4xNXMgZWFzZTtib3gtc2l6aW5nOmJvcmRlci1ib3h9LndhbmQtZGlhbG9nLWlucHV0OmZvY3Vze291dGxpbmU6bm9uZTtiYWNrZ3JvdW5kOnZhcigtLWJnLWVsZXZhdGVkKTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDEuNXB4ICM3ZDViMzkwYSwwIDAgMCAzcHggdmFyKC0tYWNjZW50LWdsb3cpfS53YW5kLWRpYWxvZy1mb290ZXJ7ZGlzcGxheTpmbGV4O2dhcDo4cHg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO3BhZGRpbmc6MTRweCAyMHB4IDIwcHg7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7bWFyZ2luLXRvcDo2cHh9LndhbmQtZGlhbG9nLWZvb3RlciAuYnRue21pbi13aWR0aDo4NHB4fS53YW5kLWRpYWxvZyAuYnRuLWRhbmdlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsdmFyKC0tZGFuZ2VyLWhvdmVyKSAwJSx2YXIoLS1kYW5nZXIpIDEwMCUpO2NvbG9yOnZhcigtLXRleHQtaW52ZXJzZSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O2JveC1zaGFkb3c6MCAxcHggMnB4IHZhcigtLWRhbmdlci1tdXRlZCksMCA0cHggMTBweCAtMnB4IHZhcigtLWRhbmdlci1tdXRlZCksaW5zZXQgMCAxcHggI2ZmZmZmZjM4LGluc2V0IDAgLTFweCAjNjAxZTE4MmV9LndhbmQtZGlhbG9nIC5idG4tZGFuZ2VyOmhvdmVye2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjYzk2MDU1LCNiMjRmNDUpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpO2JveC1zaGFkb3c6MCAycHggNHB4IHZhcigtLWRhbmdlci1tdXRlZCksMCA4cHggMjBweCAtNHB4IHZhcigtLWRhbmdlci1nbG93KSxpbnNldCAwIDFweCAjZmZmZmZmNDcsaW5zZXQgMCAtMXB4ICM2MDFlMTgyZX0ud2FuZC1kaWFsb2cgLmJ0bi1kYW5nZXI6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1kYW5nZXIpIDAlLCM5MzM5MmYgMTAwJSk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfUBtZWRpYShwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LndhbmQtZGlhbG9nLWJhY2tkcm9wLC53YW5kLWRpYWxvZy1iYWNrZHJvcC5jbG9zaW5nLC53YW5kLWRpYWxvZywud2FuZC1kaWFsb2ctYmFja2Ryb3AuY2xvc2luZyAud2FuZC1kaWFsb2d7YW5pbWF0aW9uOm5vbmUhaW1wb3J0YW50fX1Ac3VwcG9ydHMgbm90ICgoYmFja2Ryb3AtZmlsdGVyOiBibHVyKDFweCkpIG9yICgtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxcHgpKSl7LndhbmQtZGlhbG9nLWJhY2tkcm9we2JhY2tncm91bmQ6IzE0MGUwODk5fS53YW5kLWRpYWxvZ3tiYWNrZ3JvdW5kOnZhcigtLWJnLWVsZXZhdGVkKTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLXN1YnRsZSl9fUBtZWRpYShtYXgtd2lkdGg6NDgwcHgpey53YW5kLWRpYWxvZy1iYWNrZHJvcHtwYWRkaW5nOjE2cHg7YWxpZ24taXRlbXM6Y2VudGVyfS53YW5kLWRpYWxvZ3ttYXgtd2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOjIwcHh9LndhbmQtZGlhbG9nLWZvb3RlcntmbGV4LXdyYXA6d3JhcH0ud2FuZC1kaWFsb2ctZm9vdGVyIC5idG57ZmxleDoxIDEgYXV0b319LmJ0bi13aXRoLWljb257ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweH0uYnRuLXdpdGgtaWNvbj5zdmd7ZmxleC1zaHJpbms6MH0uY29tcG9zZXItcGlsbC1pY29ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOi0ycHh9LmNvbXBvc2VyLXBpbGwtbGFiZWx7ZGlzcGxheTppbmxpbmUtYmxvY2s7bGV0dGVyLXNwYWNpbmc6LjAyZW19LnNldHRpbmdzLXNlY3Rpb24taWNvbntmb250LXNpemU6MDtsaW5lLWhlaWdodDowfS5zZXR0aW5ncy1zZWN0aW9uLWljb24+c3Zne2Rpc3BsYXk6YmxvY2t9LmJsYW5rLWNoYXQtdG9vbC1idG4gLnRvb2wtaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7Zm9udC1zaXplOjEuMTI1cmVtfS5ibGFuay1jaGF0LXRvb2wtYnRuIC50b29sLWljb24+c3Zne2Rpc3BsYXk6YmxvY2t9LmJsYW5rLWNoYXQtdG9vbC1idG4gLnRvb2wtaWNvbi10ZXh0e3dpZHRoOmF1dG87aGVpZ2h0OmF1dG87Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6MXJlbTtsaW5lLWhlaWdodDoxfS5ibGFuay1jaGF0LWN3ZC1pY29ue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOjA7bGluZS1oZWlnaHQ6MH0uYmxhbmstY2hhdC1jd2QtaWNvbj5zdmd7ZGlzcGxheTpibG9ja30uYmxhbmstY2hhdC1jd2QtYXJyb3d7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MDtsaW5lLWhlaWdodDowO3RyYW5zaXRpb246dHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmJsYW5rLWNoYXQtY3dkLWFycm93PnN2Z3tkaXNwbGF5OmJsb2NrfS5mb2xkZXItcGlja2VyLWljb257ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MDtsaW5lLWhlaWdodDowfS5mb2xkZXItcGlja2VyLWljb24+c3Zne2Rpc3BsYXk6YmxvY2t9LmZvbGRlci1waWNrZXItcXVpY2stYnRuLmJ0bi13aXRoLWljb257Z2FwOjVweH0uYXBwcm92YWwtc3RhdHMtcm93LWljb257ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxNHB4O2hlaWdodDoxNHB4O2ZvbnQtc2l6ZTowO2xpbmUtaGVpZ2h0OjB9LmFwcHJvdmFsLXN0YXRzLXJvdy1pY29uPnN2Z3tkaXNwbGF5OmJsb2NrfS5hdHRhY2htZW50LXBpbGwgLmF0dC1pY29uPnN2Z3tkaXNwbGF5OmJsb2NrfS5mb2xkZXItcGlja2VyLWNvbXBhY3QtaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZTowO2xpbmUtaGVpZ2h0OjB9LmZvbGRlci1waWNrZXItY29tcGFjdC1pY29uPnN2Z3tkaXNwbGF5OmJsb2NrfS5mb2xkZXItcGlja2VyLXRvZ2dsZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZTowO2xpbmUtaGVpZ2h0OjB9LmZvbGRlci1waWNrZXItdG9nZ2xlPnN2Z3tkaXNwbGF5OmJsb2NrfS5mb2xkZXItcGlja2VyLXRvZ2dsZS5vcGVue3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0ud29ya2luZy1kaXItaW5kaWNhdG9yLWljb257ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MDtsaW5lLWhlaWdodDowfS53b3JraW5nLWRpci1pbmRpY2F0b3ItaWNvbj5zdmd7ZGlzcGxheTpibG9ja30ud2FuZC1qb3lzdGljay1yb290e3Bvc2l0aW9uOmZpeGVkO3otaW5kZXg6NDA7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjA7dmlzaWJpbGl0eTpoaWRkZW47dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlfS53YW5kLWpveXN0aWNrLXJvb3QudmlzaWJsZXtvcGFjaXR5OjE7dmlzaWJpbGl0eTp2aXNpYmxlfS53YW5kLWpveXN0aWNrLWJhY2tkcm9we3Bvc2l0aW9uOmZpeGVkO2luc2V0OjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtwb2ludGVyLWV2ZW50czpub25lO3Zpc2liaWxpdHk6aGlkZGVufS53YW5kLWpveXN0aWNrLWJhY2tkcm9wLmFjdGl2ZXt2aXNpYmlsaXR5OnZpc2libGU7cG9pbnRlci1ldmVudHM6YXV0b30ud2FuZC1qb3lzdGljay1iYWxse3Bvc2l0aW9uOmZpeGVkO3JpZ2h0OjE4cHg7Ym90dG9tOjk2cHg7d2lkdGg6NTRweDtoZWlnaHQ6NTRweDtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Y29sb3I6I2Y1ZWJlMWYwO2JhY2tncm91bmQ6IzIzMWMxOGRiO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNDUsMjM1LDIyNSwuMTgpO2JveC1zaGFkb3c6MCA4cHggMjJweCAjMDAwMDAwNGQsaW5zZXQgMCAxcHggI2ZmZmZmZjE0O2JhY2tkcm9wLWZpbHRlcjpibHVyKDEwcHgpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTBweCk7cG9pbnRlci1ldmVudHM6YXV0bzt0b3VjaC1hY3Rpb246bm9uZTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7dXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7ei1pbmRleDo0MztjdXJzb3I6Z3JhYjt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMThzIHZhcigtLWVhc2Utc3ByaW5nKSxiYWNrZ3JvdW5kIC4ycyBlYXNlLGJvcmRlci1jb2xvciAuMnMgZWFzZSxib3gtc2hhZG93IC4ycyBlYXNlfS53YW5kLWpveXN0aWNrLWxvZ297cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxfS53YW5kLWpveXN0aWNrLWJhbGw6aG92ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym9yZGVyLWNvbG9yOiNmNWViZTE0ZDtiYWNrZ3JvdW5kOiMyYjIyMWRlNjtib3gtc2hhZG93OjAgMTBweCAyNnB4ICMwMDAwMDA1NyxpbnNldCAwIDFweCAjZmZmZmZmMWF9LndhbmQtam95c3RpY2stYmFsbDphY3RpdmUsLndhbmQtam95c3RpY2stYmFsbC5wYW5lbC1vcGVue2JhY2tncm91bmQ6IzFkMTcxNGYwfS53YW5kLWpveXN0aWNrLWJhbGwuZHJhZ2dpbmd7dHJhbnNmb3JtOnNjYWxlKDEuMTIpO2N1cnNvcjpncmFiYmluZztib3gtc2hhZG93OjAgMTBweCAyOHB4ICMwMDAwMDA1Y30ud2FuZC1qb3lzdGljay1wYW5lbHtwb3NpdGlvbjpmaXhlZDtyaWdodDoxOHB4O2JvdHRvbToxNjBweDt6LWluZGV4OjQ0O2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjhweDtwYWRkaW5nOjEwcHg7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQ6IzFkMTcxNGY1O2JvcmRlcjoxcHggc29saWQgcmdiYSgyNDUsMjM1LDIyNSwuMTIpO2JveC1zaGFkb3c6MCAxNHB4IDM0cHggIzAwMDAwMDU3LGluc2V0IDAgMXB4ICNmZmZmZmYwZjtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxMnB4KTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDEycHgpO3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowO3Zpc2liaWxpdHk6aGlkZGVuO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDhweCkgc2NhbGUoLjk2KTt0cmFuc2Zvcm0tb3JpZ2luOmJvdHRvbSByaWdodDt0cmFuc2l0aW9uOm9wYWNpdHkgLjE4cyB2YXIoLS1lYXNlLW91dC1leHBvKSx0cmFuc2Zvcm0gLjIycyB2YXIoLS1lYXNlLXNwcmluZyksdmlzaWJpbGl0eSAwcyBsaW5lYXIgLjE4czt3aWR0aDptaW4oMjI0cHgsY2FsYygxMDB2dyAtIDM2cHgpKTttYXgtd2lkdGg6Y2FsYygxMDB2dyAtIDM2cHgpfS53YW5kLWpveXN0aWNrLXBhbmVsLmFjdGl2ZXtwb2ludGVyLWV2ZW50czphdXRvO29wYWNpdHk6MTt2aXNpYmlsaXR5OnZpc2libGU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7dHJhbnNpdGlvbi1kZWxheTowc30ud2pwLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxMHB4O21pbi1oZWlnaHQ6MjRweH0ud2pwLXRpdGxle2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7Zm9udC1zaXplOi43NnJlbTtsZXR0ZXItc3BhY2luZzowO2NvbG9yOiNmNWViZTFjNztmb250LXdlaWdodDo2MDB9LndqcC10aXRsZS1pY29ue2NvbG9yOiNmNWViZTFiOH0ud2pwLWNsb3Nle3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHg7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI0NSwyMzUsMjI1LC4xMik7YmFja2dyb3VuZDojZmZmZmZmMGQ7Y29sb3I6I2Y1ZWJlMWI4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzowO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTRzIGVhc2UsY29sb3IgLjE0cyBlYXNlLHRyYW5zZm9ybSAuMTRzIGVhc2V9LndqcC1jbG9zZTpob3ZlcntiYWNrZ3JvdW5kOiNmZmZmZmYxYTtjb2xvcjojZjVlYmUxZjJ9LndqcC1jbG9zZTphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NCl9LndqcC1kcGFke2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo1cHh9LndqcC1kcGFkLXJvd3tkaXNwbGF5OmZsZXg7Z2FwOjVweH0ud2pwLWdyaWR7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDo1cHg7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ud2pwLWZua2V5c3ttYXgtd2lkdGg6MjAwcHh9LndqcC1rZXl7bWluLXdpZHRoOjQ0cHg7aGVpZ2h0OjM4cHg7cGFkZGluZzowIDhweDtib3JkZXItcmFkaXVzOjhweDtmb250LXNpemU6Ljc2cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjojZjVlYmUxZDY7YmFja2dyb3VuZDojZmZmZmZmMGI7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI0NSwyMzUsMjI1LC4xMSk7Y3Vyc29yOnBvaW50ZXI7dG91Y2gtYWN0aW9uOm1hbmlwdWxhdGlvbjstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7dXNlci1zZWxlY3Q6bm9uZTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMXMgZWFzZSxiYWNrZ3JvdW5kIC4xNXMgZWFzZSxib3JkZXItY29sb3IgLjE1cyBlYXNlLGNvbG9yIC4xNXMgZWFzZX0ud2pwLWtleTpob3ZlcntiYWNrZ3JvdW5kOiNmZmZmZmYxNDtib3JkZXItY29sb3I6I2Y1ZWJlMTMzO2NvbG9yOiNmNWViZTFmMn0ud2pwLWtleTphY3RpdmV7YmFja2dyb3VuZDojZmZmZmZmMWY7dHJhbnNmb3JtOnNjYWxlKC45Nil9LndqcC1rZXkud2pwLW1vZC5hY3RpdmV7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2NvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCl9Cg=="),
10
10
  vendor: {
11
11
  "/vendor/wterm/wterm.bundle.js": {
12
12
  content: decode("InVzZSBzdHJpY3QiO3ZhciBXVGVybUxpYj0oKCk9Pnt2YXIgZj1PYmplY3QuZGVmaW5lUHJvcGVydHk7dmFyIEY9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcjt2YXIgeD1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lczt2YXIgcD1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O3ZhciB2PShyLEEpPT57Zm9yKHZhciB0IGluIEEpZihyLHQse2dldDpBW3RdLGVudW1lcmFibGU6ITB9KX0sbT0ocixBLHQsZSk9PntpZihBJiZ0eXBlb2YgQT09Im9iamVjdCJ8fHR5cGVvZiBBPT0iZnVuY3Rpb24iKWZvcihsZXQgcyBvZiB4KEEpKSFwLmNhbGwocixzKSYmcyE9PXQmJmYocixzLHtnZXQ6KCk9PkFbc10sZW51bWVyYWJsZTohKGU9RihBLHMpKXx8ZS5lbnVtZXJhYmxlfSk7cmV0dXJuIHJ9O3ZhciBrPXI9Pm0oZih7fSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSkscik7dmFyIE89e307dihPLHtJbnB1dEhhbmRsZXI6KCk9PmwsUmVuZGVyZXI6KCk9PmMsV1Rlcm06KCk9PmIsV2FzbUJyaWRnZTooKT0+YSxXZWJTb2NrZXRUcmFuc3BvcnQ6KCk9PmR9KTt2YXIgRz0iQUdGemJRRUFBQUFCS1FoZ0FBRi9ZQUFBWUFGL0FYOWdBWDhBWUFKL2Z3QmdBMzkvZndCZ0FuOS9BWDlnQTM5L2Z3Ri9BeW9wQUFBQkFBQUNBZ0lBQUFBQUFBQUFBQUFBQUFBQkFBQURCQUVCQVFVRkJBRUZBd1VGQmdjQUJBUUVCUUZ3QVFFQkJRTUJBRmdHQ1FGL0FVR0FnTUFBQ3dlakF4c0diV1Z0YjNKNUFnQUtaMlYwVFdGNFEyOXNjd0FBQzJkbGRFTmxiR3hUYVhwbEFBRU5ZMnhsWVhKU1pYTndiMjV6WlFBQ0RtZGxkRkpsYzNCdmJuTmxUR1Z1QUFNT1oyVjBVbVZ6Y0c5dWMyVlFkSElBQkJSblpYUlRZM0p2Ykd4aVlXTnJUR2x1WlV4bGJnQUZFV2RsZEZOamNtOXNiR0poWTJ0TWFXNWxBQWNTWjJWMFUyTnliMnhzWW1GamEwTnZkVzUwQUFnUFoyVjBWR2wwYkdWRGFHRnVaMlZrQUFrTFoyVjBWR2wwYkdWTVpXNEFDZ3RuWlhSVWFYUnNaVkIwY2dBTEVXZGxkRlZ6YVc1blFXeDBVMk55WldWdUFBd1JaMlYwUW5KaFkydGxkR1ZrVUdGemRHVUFEUkJuWlhSRGRYSnpiM0pMWlhselFYQndBQTRIWjJWMFVtOTNjd0FQQjJkbGRFTnZiSE1BRUJCblpYUkRkWEp6YjNKV2FYTnBZbXhsQUJFTVoyVjBRM1Z5YzI5eVEyOXNBQklNWjJWMFEzVnljMjl5VW05M0FCTUtZMnhsWVhKRWFYSjBlUUFVQzJkbGRFUnBjblI1VUhSeUFCVUtaMlYwUjNKcFpGQjBjZ0FXQ25keWFYUmxRbmwwWlhNQUZ3NW5aWFJYY21sMFpVSjFabVpsY2dBbURuSmxjMmw2WlZSbGNtMXBibUZzQUNjRWFXNXBkQUFvQ29kWEtRVUFRWUFDQ3dRQVFRd0xEUUJCQUVFQU9nREdpZkNBQUFzTEFFRUFMUURHaWZDQUFBc0lBRUdHaWZDQUFBc2FBQUpBSUFBUWhvQ0FnQUFpQUEwQVFRQVBDeUFBTHdHQUdBdGNBUUovUVFBaEFRSkFJQUJCQUNnQzZJS3NnZ0FpQWs4TkFBSkFBa0FnQWtIb0IwOE5BQ0FDSUFCQmYzTnFJUUFNQVF0QkFDZ0M3SUtzZ2dBZ0FHdEI1d2RxUWVnSGNDRUFDeUFBUVlRWWJFSElvL0NBQUdvaEFRc2dBUXNWQUNBQUVJYUFnSUFBSWdCQnlJdndnQUFnQUJzTEN3QkJBQ2dDNklLc2dnQUxLQUVCZjBFQUlRQUNRRUVBTFFDRmlmQ0FBRVVOQUVFQVFRQTZBSVdKOElBQVFRRWhBQXNnQUFzTEFFRUFMd0hlaHZDQUFBc0lBRUdFaC9DQUFBc0xBRUVBTFFDRGgvQ0FBQXNMQUVFQUxRRDdodkNBQUFzTEFFRUFMUUQ2aHZDQUFBc0xBRUVBTHdIMGh2Q0FBQXNMQUVFQUx3SDRodkNBQUFzTEFFRUFMUUNFaWZDQUFBc0xBRUVBTHdIY2h2Q0FBQXNMQUVFQUx3SGFodkNBQUFzM0FRSi9RUUF2QVpxQThJQUFJUUJCQUNFQkFrQURRQ0FBSUFGR0RRRWdBVUdjZ1BDQUFHcEJBRG9BQUNBQlFRRnFJUUVNQUFzTEN3Z0FRWnlBOElBQUN3Z0FRWmlBd0lBQUM5QTNBd1YvQVg0RmZ5T0FnSUNBQUVIQUFHc2lBU1NBZ0lDQUFDQUFRWURBQUNBQVFZREFBRWtiSVFKQm5JTHdnQUJCQW1vaEEwRUFJUUFEUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQWdBQ0FDUmcwQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQ0FBTFFEd2dxeUNBQ0lFUVdocURnUUNBUUlBQVF0QkFDMEF3b0x3Z0FBaEJFRUFRUUk2QU1LQzhJQUFJQVJCQjNGQkIwWU5BMEVBUVFBN0FjaUM4SUFBREIwTEFrQUNRQUpBQWtBQ1FBSkFRUUF0QU1LQzhJQUFRUWR4RGdnTEFBRUNBd1FGQndzTElBVEFRYjkvU2cwSlFRQXRBTStHOElBQVFRQXRBTTZHOElBQWEwRUhjVUhLaHZDQUFHb2dCRG9BQUVFQVFRQXRBTTZHOElBQVFYOXFRUWR4SWdRNkFNNkc4SUFBSUFRTklVSDkvd01oQkFKQUFrQUNRQUpBUVFBdEFNK0c4SUFBUVFkeFFYNXFEZ01BQVFJREMwRUFMUURLaHZDQUFFRWZjVUVHZEVFQUxRRExodkNBQUVFL2NYSWhCQXdDQzBFQUxRRExodkNBQUVFL2NVRUdkRUVBTFFES2h2Q0FBRUVQY1VFTWRISkJBQzBBeklid2dBQkJQM0Z5SVFRTUFRdEJBQzBBeTRid2dBQkJQM0ZCREhSQkFDMEF5b2J3Z0FCQkVuUnlRUUF0QU15RzhJQUFRVDl4UVFaMGNrRUFMUUROaHZDQUFFRS9jWEloQkF0QkFDQUVPd0djZ3ZDQUFDQURJQVJCZ0lEOEFIRkJFSFk2QUFCQkFFRUFPZ0RDZ3ZDQUFBd0xDd0pBQWtBQ1FDQUVRYVYvYWc0REFBSUJBZ3RCQUVFRU9nRENndkNBQUVFQVFRQTdBY2lDOElBQVFRQkJBRG9BeFlMd2dBQkJBRUVBT2dERWd2Q0FBRUdJZ2pBaEJBTkFJQVJCcUlJd1JnMGpJQVJCbUlEQWdBQnFRUUE3QVFBZ0JFRUNhaUVFREFBTEMwRUFRUWM2QU1LQzhJQUFRUUJCQURzQndJTHdnQUFNSVFzQ1FDQUVRZkFCY1VFZ1J3MEFBa0JCQUMwQXlJTHdnQUFpQlVFQlN3MEFJQVVnQkRvQXhvTHdnQUJCQUVFQUxRRElndkNBQUVFQmFqb0F5SUx3Z0FBTFFRQkJBem9Bd29Md2dBQU1JUXNnQkVGUWFrSC9BWEZCendCSkRROGdCRUVnU1EwWkRBUUxBa0FnQkVId0FYRkJJRWNOQUVFQUxRRElndkNBQUNJRlFRRkxEU0FnQlNBRU9nREdndkNBQUVFQVFRQXRBTWlDOElBQVFRRnFPZ0RJZ3ZDQUFBd2dDeUFFUVZCcVFmOEJjVUhQQUVrTkRpQUVRU0JKRFJnTUF3c0NRQUpBQWtBQ1FBSkFBa0FnQkVGUWFrSC9BWEVpQlVFSlN3MEFRUUF0QU1XQzhJQUFEU1JCQUMwQXhJTHdnQUFpQkEwQlFRQWhCRUVBUVFFNkFNU0M4SUFBREFJTElBUkJSV29PQlFJRUJDSWlBd3NnQkVGL2FrSC9BWEVoQkFzZ0JFRUJkQ0lFUVg4Z0JDOEJvSUx3Z0FCQkVIU3RRZ3ArSWdhbklBWkNJSWluRzBFUWRpQUZhaUlFUWYvL0F5QUVRZi8vQTBrYk93R2dndkNBQUF3aEMwRUFMUURFZ3ZDQUFDSUVRUTlMRFNCQkFDQUVRUUVnQkVFQlN4dEJBV282QU1TQzhJQUFEQ0FMSUFSQklVWU5IZ3NDUUNBRVFmQUJjVUVnUncwQUFrQkJBQzBBeUlMd2dBQWlCVUVCU3cwQUlBVWdCRG9BeG9Md2dBQkJBRUVBTFFESWd2Q0FBRUVCYWpvQXlJTHdnQUFMUVFCQkJUb0F3b0x3Z0FBTUh3c2dCRUZBYWtIL0FYRkJQMGtOQ1NBRVFTQkpEUmNNSEFzQ1FDQUVRZkFCY1VFZ1J3MEFRUUF0QU1pQzhJQUFJZ1ZCQVVzTkhpQUZJQVE2QU1hQzhJQUFRUUJCQUMwQXlJTHdnQUJCQVdvNkFNaUM4SUFBREI0TElBUkJRR3BCL3dGeFFUOUpEUWdnQkVFZ1R3MGJEQllMSUFSQlFHcEIvd0Z4UVQ1TERSd0xRUUJCQURvQXdvTHdnQUFNR3dzZ0JFRUhSdzBCUVFCQkFEb0F3b0x3Z0FBTFFRQXZBY0NDOElBQUlnUkJBa2tOR1VFQUxRREtndkNBQUVGUWFnNERCeGtIR1FzZ0JFRmdha0gvQVhGQjNnQkxEUmhCQUM4QndJTHdnQUFpQlVIL0Ewc05HQ0FGSUFRNkFNcUM4SUFBUVFBZ0JVRUJhanNCd0lMd2dBQU1HQXRCQUVFQU9nRENndkNBQUFzZ0JFRWdTUTBQQWtBZ0JFSC9BRWtOQUFKQUlBUkIvd0JIRFFCQkFFSC9BRG9BdzRMd2dBQU1FZ3NDUUNBRVFlQUJjVUhBQVVjTkFFRUFRUUk2QU0rRzhJQUFRUUFnQkRvQXlvYndnQUJCQUVFQk9nRE9odkNBQUVFQVFRRTZBTUtDOElBQURCZ0xBa0FnQkVId0FYRkI0QUZIRFFCQkFFRURPZ0RQaHZDQUFFRUFJQVE2QU1xRzhJQUFRUUJCQWpvQXpvYndnQUJCQUVFQk9nRENndkNBQUF3WUN5QUVRZmdCY1VId0FVY05GMEVBUVFRNkFNK0c4SUFBUVFBZ0JEb0F5b2J3Z0FCQkFFRURPZ0RPaHZDQUFFRUFRUUU2QU1LQzhJQUFEQmNMUVFBZ0JEc0JuSUx3Z0FBZ0EwRUFPZ0FBQzBFQUtBS2NndkNBQUNFRVFRQXRBSUdIOElBQURRRU1EUXRCQUNBRU9nRERndkNBQUVFQVFRQTZBTUtDOElBQVFRQXRBTW1DOElBQUlnVkJQMGNOQkVFQklRY0NRQUpBSUFSQm1IOXFEZ1VCRmhZV0FCWUxRUUFoQnd0QkFDRUVRUUF0QU1TQzhJQUFJZ1ZCQVNBRlFRRkxHMEVCZENFSUEwQWdDQ0FFUmcwVkFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQ0FFUWFDQzhJQUFhaThCQUNJRlFYOXFEZ2NCQ2dvS0NnSURBQXNDUUNBRlFlbDNhZzREQmdrSEFBc2dCVUVVUmcwRElBVkJHVVlOQkNBRlFTOUdEUVVnQlVIVUQwWU5Cd3dKQzBFQUlBYzZBUHFHOElBQURBZ0xRUUFnQnpvQS9ZYndnQUFNQnd0QkFDQUhPZ0QraHZDQUFBd0dDMEVBSUFjNkFQeUc4SUFBREFVTFFRQWdCem9BaElud2dBQU1CQXNnQjBFQUVKaUFnSUFBREFNTElBZEJBUkNZZ0lDQUFBd0NDMEVBSUFjNkFQdUc4SUFBREFFTEFrQWdCdzBBRUptQWdJQUFEQUVMRUpxQWdJQUFDeUFFUVFKcUlRUU1BQXNMUVFCQkFEc0IzSWJ3Z0FBUW00Q0FnQUJCQUVFQU9nQ0JoL0NBQUF3TEN5QUJRY0FBYWlTQWdJQ0FBQThMUVFBdEFNdUM4SUFBUVR0SERSRWdCRUYrYWlJRVFZQUNJQVJCZ0FKSkd5RUZRUUFoQkFKQUEwQWdCU0FFUmcwQklBUkJoSWZ3Z0FCcUlBUkJ6SUx3Z0FCcUxRQUFPZ0FBSUFSQkFXb2hCQXdBQ3d0QkFFRUJPZ0NGaWZDQUFFRUFJQVU3QWQ2RzhJQUFEQkVMUVFBZ0JEb0F3NEx3Z0FCQkFFRUFPZ0RDZ3ZDQUFBSkFBa0FDUUFKQUFrQUNRQUpBUVFBdEFNaUM4SUFBUlEwQVFRQXRBTWFDOElBQVFmOEJjVUVqUncwQUFrQWdCRUc4ZjJvT0NnTUNHQmdIR0JnWUdBUUFDd0pBSUFSQlNXb09BZ29BQlF0QkFDRUZBa0FEUUNBRlFmLy9BM0ZCQUM4QjlJYndnQUJQRFFGQkFDRUVBa0FEUUNBRVFmLy9BM0ZCQUM4QitJYndnQUJQRFFFZ0JTQUVRWXlBd0lBQUVKeUFnSUFBSUFSQkFXb2hCQXdBQ3dzZ0JVRUJhaUVGREFBTEMwRUFRUUEyQWRxRzhJQUFEQmNMQWtBZ0JFRzhmMm9PQ2dJQkZ4Y0dGeGNYRndNQUN3SkFJQVJCU1dvT0Fna0lBQXNnQkVIakFFWU5CQXdXQzBFQVFRQTZBSUdIOElBQVFRQkJBRHNCM0lid2dBQUxFSnVBZ0lBQURCUUxBa0JCQUM4QjJvYndnQUFpQkVFQUx3SHlodkNBQUVjTkFDQUVRUUF2QWRpRzhJQUFRUUVRbllDQWdBQU1GQXNnQkVVTkUwRUFJQVJCZjJvN0FkcUc4SUFBREJNTElBUkI0d0JIRFJJTFFRQXZBZmlHOElBQVFRQXZBZlNHOElBQUVKNkFnSUFBREJFTFFRQXZBZHlHOElBQUlnUkIvd0ZMRFJBZ0JFRUJPZ0RIaWZDQUFBd1FDd0pBSUFSQjhBQkhEUUFnQlVFaFJ3MEFRUUJCQVRvQS9vYndnQUJCQUVFQk9nQ0VpZkNBQUVFQVFZQ0NnQWcyQXV5RzhJQUFRUUJCQUM4QjlJYndnQUE3QWRpRzhJQUFRUUJCQURvQS9ZYndnQUJCQUVFQU9nRDdodkNBQUVFQVFRQTZBUHFHOElBQVFRQkJBRHNCOG9id2dBQkJBRUVBT2dEL2h2Q0FBQXdRQ3dKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQWdCRUZBYWc0MkdBQUJBZ01FQlFZV0l3Y0lDUW9qSXdzakl3d05JeU1qRGlNakl5TWpJeU1YRHlNakVCRVdFaU1qSXlNakV4b2pJeU1aRlNNVUl3dEJBRUVBUVFBdkFkcUc4SUFBSWdSQkFDOEJvSUx3Z0FBaUJVRUJJQVZCQVVzYlFRRkJBQzBBeElMd2dBQWJheUlGSUFVZ0JFc2JPd0hhaHZDQUFFRUFRUUE2QUlHSDhJQUFEQ0lMUVFCQkFDOEIyb2J3Z0FCQkFDOEJvSUx3Z0FBaUJFRUJJQVJCQVVzYlFRRkJBQzBBeElMd2dBQWJha0gvL3dOeElnUkJBQzhCOUlid2dBQkJmMnBCLy84RGNTSUZJQVFnQlVrYk93SGFodkNBQUVFQVFRQTZBSUdIOElBQURDRUxRUUJCQUM4QjNJYndnQUJCQUM4Qm9JTHdnQUFpQkVFQklBUkJBVXNiUVFGQkFDMEF4SUx3Z0FBYmFrSC8vd054SWdSQkFDOEIrSWJ3Z0FCQmYycEIvLzhEY1NJRklBUWdCVWtiT3dIY2h2Q0FBRUVBUVFBNkFJR0g4SUFBRENBTFFRQkJBRUVBTHdIY2h2Q0FBQ0lFUVFBdkFhQ0M4SUFBSWdWQkFTQUZRUUZMRzBFQlFRQXRBTVNDOElBQUcyc2lCU0FGSUFSTEd6c0IzSWJ3Z0FCQkFFRUFPZ0NCaC9DQUFBd2ZDMEVBUVFBdkFkcUc4SUFBUVFBdkFhQ0M4SUFBSWdSQkFTQUVRUUZMRzBFQlFRQXRBTVNDOElBQUcycEIvLzhEY1NJRVFRQXZBZlNHOElBQVFYOXFRZi8vQTNFaUJTQUVJQVZKR3pzQjJvYndnQUJCQUVFQU9nQ0JoL0NBQUVFQVFRQTdBZHlHOElBQURCNExRUUJCQUVFQUx3SGFodkNBQUNJRVFRQXZBYUNDOElBQUlnVkJBU0FGUVFGTEcwRUJRUUF0QU1TQzhJQUFHMnNpQlNBRklBUkxHenNCMm9id2dBQkJBRUVBT2dDQmgvQ0FBRUVBUVFBN0FkeUc4SUFBREIwTFFRQkJBRUVBTHdHZ2d2Q0FBQ0lFUVg5cUlnVWdCU0FFU3h0QkFFRUFMUURFZ3ZDQUFCc2lCRUVBTHdINGh2Q0FBQ0lGUVg5cUlBUWdCVWtiT3dIY2h2Q0FBRUVBUVFBNkFJR0g4SUFBREJ3TEFrQUNRQUpBUVFBdEFNU0M4SUFBUlEwQUFrQkJBQzhCb0lMd2dBQU9CQUVDQUFNZkN4Q2ZnSUNBQUF3ZUMwRUFMd0hhaHZDQUFFRUFMd0hjaHZDQUFFRUFMd0g0aHZDQUFCQ2dnSUNBQUVFQUx3SGFodkNBQUNFRUEwQWdCRUVCYWlJRVFmLy9BM0ZCQUM4QjlJYndnQUJQRFI0Z0JCQ2hnSUNBQUF3QUN3dEJBQ0VFQWtBRFFDQUVRZi8vQTNGQkFDOEIyb2J3Z0FBaUJVOE5BU0FFRUtHQWdJQUFJQVJCQVdvaEJBd0FDd3NnQlVFQVFRQXZBZHlHOElBQVFRRnFFS0NBZ0lBQURCd0xFSitBZ0lBQVFRQW9BdENHOElBQUlnUkZEUnNnQkVJQU53S2czN3NCREJzTEFrQUNRQUpBUVFBdEFNU0M4SUFBUlEwQVFRQXZBYUNDOElBQURnTUFBUUlkQzBFQUx3SGFodkNBQUVFQUx3SGNodkNBQUVFQUx3SDRodkNBQUJDZ2dJQ0FBQXdjQzBFQUx3SGFodkNBQUVFQVFRQXZBZHlHOElBQVFRRnFFS0NBZ0lBQURCc0xRUUF2QWRxRzhJQUFFS0dBZ0lBQURCb0xRUUF2QWRxRzhJQUFJZ1JCQUM4QjhvYndnQUJKRFJrZ0JFRUFMd0hZaHZDQUFDSUZUdzBaSUFRZ0JVRUFMd0dnZ3ZDQUFDSUlRUUVnQ0VFQlN4dEJBVUVBTFFERWd2Q0FBQnNRbllDQWdBQU1HUXRCQUM4QjJvYndnQUFpQkVFQUx3SHlodkNBQUVrTkdDQUVRUUF2QWRpRzhJQUFJZ1ZQRFJnZ0JDQUZRUUF2QWFDQzhJQUFJZ2hCQVNBSVFRRkxHMEVCUVFBdEFNU0M4SUFBR3hDaWdJQ0FBQXdZQzBFQUx3SGNodkNBQUNJRVFReHNJZ2RCbUlEQWdBQnFJUVZCQUM4Qm9JTHdnQUFpQ0VFQklBaEJBVXNiUVFGQkFDMEF4SUx3Z0FBYklnbEJER3hCbUlEQWdBQnFJUW9DUUFOQUlBa2dCR3BCQUM4QitJYndnQUFpQ0U4TkFTQUhRUUF2QWRxRzhJQUFRWUFZYkdvaUNFR1lnTUNBQUdvZ0NpQUlhaUlMS1FJQU53SUFJQWhCb0lEQWdBQnFJQXRCQ0dvb0FnQTJBZ0FnQlVFTWFpRUZJQWRCREdvaEJ5QUVRUUZxSVFRTUFBc0xBa0FEUUVFQUx3SGFodkNBQUNFSElBUWdDRUgvL3dOeFR3MEJJQVVnQjBHQUdHeHFJZ2hCQUNrQ2dJREFnQUEzQWdBZ0NFRUlha0VBS0FLSWdNQ0FBRFlDQUNBRlFReHFJUVVnQkVFQmFpRUVRUUF2QWZpRzhJQUFJUWdNQUFzTElBZEJBVG9BbklEd2dBQU1Gd3RCQUM4Qm9JTHdnQUFpQkVFQklBUkJBVXNiUVFGQkFDMEF4SUx3Z0FBYklRZEJBQzhCOG9id2dBQWhCUUpBUVFBdEFJT0g4SUFBRFFBZ0JVSC8vd054RFFCQkFDRUZRUUFvQXRDRzhJQUFJZ3RGRFFCQkFDRUZRUUFoQkFOQUlBUkIvLzhEY1NJSUlBZFBEUUVnQ0VFQUx3SFlodkNBQUNBRmEwSC8vd054VHcwQklBc2dCQ0FGYWtILy93TnhRWUFZYkVHWWdNQ0FBR3BCQUM4QitJYndnQUFRbzRDQWdBQWdCRUVCYWlFRVFRQXZBZktHOElBQUlRVU1BQXNMSUFWQkFDOEIySWJ3Z0FBZ0J4Q2lnSUNBQUF3V0MwRUFMd0h5aHZDQUFFRUFMd0hZaHZDQUFFRUFMd0dnZ3ZDQUFDSUVRUUVnQkVFQlN4dEJBVUVBTFFERWd2Q0FBQnNRbllDQWdBQU1GUXRCQUM4QjJvYndnQUJCQUM4QjNJYndnQUFpQkNBRVFRQXZBYUNDOElBQUlnVkJBU0FGUVFGTEcwRUJRUUF0QU1TQzhJQUFHMnBCLy84RGNTSUVRUUF2QWZpRzhJQUFJZ1VnQkNBRlNSc1FvSUNBZ0FBTUZBdEJBRUVBTHdIY2h2Q0FBRUVBTHdHZ2d2Q0FBQ0lFUVFFZ0JFRUJTeHRCQVVFQUxRREVndkNBQUJ0cVFmLy9BM0VpQkVFQUx3SDRodkNBQUVGL2FrSC8vd054SWdVZ0JDQUZTUnM3QWR5RzhJQUFRUUJCQURvQWdZZndnQUFNRXd0QkFFRUFRUUF2QWFDQzhJQUFJZ1JCZjJvaUJTQUZJQVJMRzBFQVFRQXRBTVNDOElBQUd5SUVRUUF2QWZTRzhJQUFJZ1ZCZjJvZ0JDQUZTUnM3QWRxRzhJQUFRUUJCQURvQWdZZndnQUFNRWd0QkFFRUFMd0hhaHZDQUFFRUFMd0dnZ3ZDQUFDSUVRUUVnQkVFQlN4dEJBVUVBTFFERWd2Q0FBQnRxUWYvL0EzRWlCRUVBTHdIMGh2Q0FBRUYvYWtILy93TnhJZ1VnQkNBRlNSczdBZHFHOElBQVFRQkJBRG9BZ1lmd2dBQU1FUXNDUUFKQVFRQXRBTVNDOElBQVJRMEFRUUF2QWFDQzhJQUFEZ1FBRWhJQkVndEJBQzhCM0lid2dBQWlCRUgvQVVzTkVTQUVRUUE2QU1lSjhJQUFEQkVMUWErSk1DRUVBMEFnQkVHdml6QkdEUkVnQkVHWWdNQ0FBR3BCQURvQUFDQUVRUUZxSVFRTUFBc0xRUUFoQkFKQVFRQXRBTVNDOElBQUlnVU5BRUVBUVlDQ2dBZzJBdXlHOElBQVFRQkJBRG9BLzRid2dBQU1FQXNEUUNBRVFmOEJjU0lJSUFWQi93RnhUdzBRQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FDUUFKQUFrQUNRQUpBQWtBQ1FBSkFBa0FnQ0VFQmRDOEJvSUx3Z0FBaUJRNHlBQUVDQXdRRkZBWUhDQlFVRkJRVUZCUVVGQlFVRkFrS0N3d1VEUTRQRkJRVUZCUVVGQlFRRVJRVUZCUVVGQlFVRWhNVUMwRUFRWUNDZ0FnMkF1eUc4SUFBUVFCQkFEb0EvNGJ3Z0FBTUZBdEJBRUVBTFFEL2h2Q0FBRUVCY2pvQS80YndnQUFNRXd0QkFFRUFMUUQvaHZDQUFFRUNjam9BLzRid2dBQU1FZ3RCQUVFQUxRRC9odkNBQUVFRWNqb0EvNGJ3Z0FBTUVRdEJBRUVBTFFEL2h2Q0FBRUVJY2pvQS80YndnQUFNRUF0QkFFRUFMUUQvaHZDQUFFRVFjam9BLzRid2dBQU1Ed3RCQUVFQUxRRC9odkNBQUVFZ2Nqb0EvNGJ3Z0FBTURndEJBRUVBTFFEL2h2Q0FBRUhBQUhJNkFQK0c4SUFBREEwTFFRQkJBQzBBLzRid2dBQkJnQUZ5T2dEL2h2Q0FBQXdNQzBFQVFRQXRBUCtHOElBQVFmd0JjVG9BLzRid2dBQU1Dd3RCQUVFQUxRRC9odkNBQUVIN0FYRTZBUCtHOElBQURBb0xRUUJCQUMwQS80YndnQUJCOXdGeE9nRC9odkNBQUF3SkMwRUFRUUF0QVArRzhJQUFRZThCY1RvQS80YndnQUFNQ0F0QkFFRUFMUUQvaHZDQUFFSGZBWEU2QVArRzhJQUFEQWNMUVFCQkFDMEEvNGJ3Z0FCQnZ3RnhPZ0QvaHZDQUFBd0dDMEVBUVFBdEFQK0c4SUFBUWY4QWNUb0EvNGJ3Z0FBTUJRc2dCRUhzaHZDQUFCQ2tnSUNBQUVIL0FYRWdCR29oQkF3RUMwRUFRWUFDT3dIc2h2Q0FBQXdEQ3lBRVFlNkc4SUFBRUtTQWdJQUFRZjhCY1NBRWFpRUVEQUlMUVFCQmdBSTdBZTZHOElBQURBRUxBa0FnQlVGaWFpSUlRZi8vQTNGQkNFa05BQUpBSUFWQitQOERjVUVvUmcwQUFrQWdCVUdtZjJwQi8vOERjVUVJU1EwQUlBVkJuSDlxUWYvL0EzRkJDRThOQTBFQUlBVkJwSDlxT3dIdWh2Q0FBQXdEQzBFQUlBVkJybjlxT3dIc2h2Q0FBQXdDQzBFQUlBVkJXR283QWU2RzhJQUFEQUVMUVFBZ0NEc0I3SWJ3Z0FBTElBUkJBV29oQkVFQUxRREVndkNBQUNFRkRBQUxDeENaZ0lDQUFBd09DeENhZ0lDQUFBd05DMEVBUVFCQkFDOEJvSUx3Z0FBaUJFRi9haUlGSUFVZ0JFc2JRUUJCQUMwQXhJTHdnQUFpQkJzaUJVRUFMd0gwaHZDQUFDSUlRWDlxSUFVZ0NFa2JPd0hhaHZDQUFFRUFRUUJCQUM4Qm9vTHdnQUFpQlVGL2FpSUlJQWdnQlVzYlFRQWdCRUVCU3hzaUJFRUFMd0g0aHZDQUFDSUZRWDlxSUFRZ0JVa2JPd0hjaHZDQUFFRUFRUUE2QUlHSDhJQUFEQXdMUVFCQkFFRUFMd0dnZ3ZDQUFDSUVRWDlxSWdVZ0JTQUVTeHRCQUVFQUxRREVndkNBQUJzaUJFRUFMd0g0aHZDQUFDSUZRWDlxSUFRZ0JVa2JPd0hjaHZDQUFFRUFRUUE2QUlHSDhJQUFEQXNMQWtCQkFDOEJvSUx3Z0FBaUJFRUJJQVJCQVVzYlFRRkJBQzBBeElMd2dBQWJJZ2hCQUM4QjNJYndnQUFpQldwQi8vOERjVUVBTHdINGh2Q0FBQ0lFU1EwQVFRQXZBZHFHOElBQUlBVWdCQkNnZ0lDQUFBd0xDd0pBQTBBZ0JFRi9haUlFUWYvL0EzRWdCU0FJYWlJSFFmLy9BM0ZKRFFGQkFDOEIyb2J3Z0FCQmdCaHNRWmlBd0lBQWFpSUZJQVFnQ0d0Qi8vOERjVUVNYkdvaUJ5a0NBQ0VHSUFVZ0JFSC8vd054UVF4c2FpSUZRUWhxSUFkQkNHb29BZ0EyQWdBZ0JTQUdOd0lBUVFBdkFkeUc4SUFBSVFVTUFBc0xRUUFnQjBILy93TnhJZ1JCQUM4QitJYndnQUFpQ0NBRUlBaEpHeUlFSUFWQi8vOERjU0lGYXlJSUlBZ2dCRXNiSVFRZ0JVRU1iRUdZZ01DQUFHb2hCUUpBQTBCQkFDOEIyb2J3Z0FBaENDQUVSUTBCSUFVZ0NFR0FHR3hxSWdoQkFDa0NnSURBZ0FBM0FnQWdDRUVJYWtFQUtBS0lnTUNBQURZQ0FDQUVRWDlxSVFRZ0JVRU1haUVGREFBTEN5QUlRUUU2QUp5QThJQUFEQW9MUVFCQkFDOEJvSUx3Z0FBaUJFRi9haUlGSUFVZ0JFc2JRUUJCQUMwQXhJTHdnQUFpQ0JzaUIwRUFMd0dpZ3ZDQUFDSUZRUUF2QWZTRzhJQUFJZ1FnQlNBRVNSc2dCQ0FGR3lBRUlBaEJBVXNiSWdSUERRbEJBQ0FFT3dIWWh2Q0FBRUVBSUFjN0FmS0c4SUFBUVFBZ0IwRUFRUUF0QVAyRzhJQUFHenNCMm9id2dBQkJBRUVBT2dDQmgvQ0FBRUVBUVFBN0FkeUc4SUFBREFrTFFRQXRBTVNDOElBQVJRMElRUUF2QWFDQzhJQUFRZi8vQTNGQkJrY05DQ0FCUVp1MkFUc0FBRUVBTHdIY2h2Q0FBQ0VFSUFFZ0FVRUNRUUF2QWRxRzhJQUFRUUZxRUtXQWdJQUFJZ1ZCL3dGeGFrRTdPZ0FBSUFFZ0FTQUZRUUZxSUFSQkFXb1FwWUNBZ0FBaUJFSC9BWEZxUWRJQU9nQUFBa0JCd0FCRkRRQkJob253Z0FBZ0FVSEFBUHdLQUFBTFFRQWdCRUVCYWpvQXhvbndnQUFNQ0FzZ0FVRUFPZ0FMSUFGQkFEc0FDU0FCUVFBdEFQK0c4SUFBT2dBSUlBRkJBQ2dDN0lid2dBQTJBZ1FnQVNBRVFmLy8vd0J4TmdJQVFRQXZBZHFHOElBQVFRQXZBZHlHOElBQUlBRVFuSUNBZ0FBQ1FFRUFMd0hjaHZDQUFDSUVRUUF2QWZpRzhJQUFRWDlxUWYvL0EzRlBEUUJCQUNBRVFRRnFPd0hjaHZDQUFBd0lDMEVBTFFEK2h2Q0FBRVVOQjBFQVFRRTZBSUdIOElBQURBY0xRUUFoQlVFQUlBUTZBTU9DOElBQUlBUkJlR29PQmdBQkFnSUNBd1lMUVFBdkFkeUc4SUFBSWdSRkRRVWdCRUYvYWlFRkRBSUxRUUF2QWZpRzhJQUFJZ2RCQUM4QjNJYndnQUFpQkVFQmFrSC8vd054SWdVZ0J5QUZTeHNoQ3dKQUEwQWdCRUVCYWlJRklBZFBEUUVnQkVISWlmQ0FBR29oQ0NBRklRUWdDQzBBQUVFQlJ3MEFDeUFGSVFzTElBc2dCMEYvYWlBRklBZEpHeUVGREFFTEVKdUFnSUFBUVFBaEJVRUFMUUQ4aHZDQUFFVU5Bd3RCQUNBRk93SGNodkNBQUVFQVFRQTZBSUdIOElBQURBSUxRUUJCQmpvQXdvTHdnQUFNQVF0QkFDQUVPZ0RKZ3ZDQUFBc2dBRUVCYWlFQURBQUxDOWNEQVFGL0FrQWdBRUVCY1VFQUxRQ0RoL0NBQUVZTkFFRUFLQUxVaHZDQUFDSUNSUTBBQWtBQ1FBSkFBa0FnQUVFQmNVVU5BQ0FCUVFGeERRRU1BZ3NDUUVHRWdqQkZEUUJCbUlEQWdBQWdBa0dFZ2pEOENnQUFDMEVBUVFBNkFJT0g4SUFBQWtBZ0FVRUJjVVVOQUVFQVFRQXZBZmFHOElBQU93SGFodkNBQUVFQVFRQXZBZkNHOElBQU93SGNodkNBQUVFQVFRQXZBZXFHOElBQU93SHNodkNBQUVFQVFRQXZBZUNHOElBQU93SHVodkNBQUVFQVFRQXRBSUtIOElBQU9nRC9odkNBQUVFQVFRQTZBSUdIOElBQUMwR0VnREFoQUFOQUlBQkIvUDlQYWtFQUx3SDBodkNBQUNJQlR3MERJQUJCbUlEQWdBQnFRUUU2QUFBZ0FFRUJhaUVBREFBTEMwRUFRUUF2QWRxRzhJQUFPd0gyaHZDQUFFRUFRUUF2QWR5RzhJQUFPd0h3aHZDQUFFRUFRUUF2QWV5RzhJQUFPd0hxaHZDQUFFRUFRUUF2QWU2RzhJQUFPd0hnaHZDQUFFRUFRUUF0QVArRzhJQUFPZ0NDaC9DQUFBc0NRRUdFZ2pCRkRRQWdBa0dZZ01DQUFFR0VnakQ4Q2dBQUMwRUFRUUF2QWZTRzhJQUFPd0dhZ1BDQUFFRUFRUUF2QWZpRzhJQUFPd0dZZ1BDQUFCQ2ZnSUNBQUVFQVFRRTZBSU9IOElBQVFRQXZBZlNHOElBQUlRRUxRUUFnQVRzQjJJYndnQUJCQUVFQU93SHlodkNBQUFzTFF3QkJBRUVBS0FIaWh2Q0FBRFlCMm9id2dBQkJBRUVBS0FIbWh2Q0FBRFlDN0lid2dBQkJBRUVBTFFDQWgvQ0FBRG9BLzRid2dBQkJBRUVBT2dDQmgvQ0FBQXM0QUVFQVFRQW9BZHFHOElBQU5nSGlodkNBQUVFQVFRQW9BdXlHOElBQU5nSG1odkNBQUVFQVFRQXRBUCtHOElBQU9nQ0FoL0NBQUF1akFRRURmd0pBQWtCQkFDOEIyb2J3Z0FCQkFXb2lBRUgvL3dOeFFRQXZBZGlHOElBQUlnRkpEUUJCQUM4QjhvYndnQUFoQUVFQUxRQ0RoL0NBQUEwQklBQkIvLzhEY1EwQlFRQWhBRUVBS0FMUWh2Q0FBQ0lDUlEwQklBSkJtSURBZ0FCQkFDOEIrSWJ3Z0FBUW80Q0FnQUJCQUM4QjJJYndnQUFoQVVFQUx3SHlodkNBQUNFQURBRUxRUUFnQURzQjJvYndnQUFQQ3lBQUlBRkJBUkNpZ0lDQUFBdDFBQUpBSUFCQi8vOERjVUVBTHdHYWdQQ0FBRThOQUNBQlFmLy9BM0ZCQUM4Qm1JRHdnQUJCLy84RGNVOE5BQ0FBUWYvL0EzRWlBRUdBR0d3Z0FVSC8vd054UVF4c2FpSUJJQUlwQWdBM0FwaUF3SUFBSUFGQm9JREFnQUJxSUFKQkNHb29BZ0EyQWdBZ0FFRUJPZ0NjZ1BDQUFBc0wzd0VCQkg4Q1FDQUNRZi8vQTNGRkRRQWdBVUgvL3dOeElBQkIvLzhEY1UwTkFDQUJJQUJySWdNZ0FrSC8vd054SWdJZ0EwSC8vd054SWdNZ0FpQURTUnNpQkd0Qi8vOERjU0VGUVFBaEFnTkFBa0FnQlNBQ1J3MEFJQVFnQUdwQi8vOERjU0VDQTBBZ0FFSC8vd054SUFKUERRTWdBQkNoZ0lDQUFDQUFRUUZxSVFBTUFBc0xJQUVnQWtGL2Myb2lCa0gvL3dOeElRTUNRRUdBR0VVTkFDQURRWUFZYkVHWWdNQ0FBR29nQmlBRWEwSC8vd054UVlBWWJFR1lnTUNBQUdwQmdCajhDZ0FBQ3lBRFFRRTZBSnlBOElBQUlBSkJBV29oQWd3QUN3c0wrUUlCQVg4amdJQ0FnQUJCZ0FKcklnSWtnSUNBZ0FCQkFDQUJPd0dhZ1BDQUFFRUFJQUE3QVppQThJQUFFSitBZ0lBQUFrQkJ0QVJGRFFCQm5JTHdnQUJCQUVHMEJQd0xBQXRCQUNBQk93SDBodkNBQUVFQUlBQTdBZmlHOElBQVFRQkJBVG9BaElud2dBQkJBRUVCT2dEK2h2Q0FBRUVBSUFFN0FkaUc4SUFBUVFCQ2dJS0FDRGNDN0lid2dBQkJBRUdBZ29BSU5nTG9odkNBQUVFQVFvQ0NnSUNBZ0lDQUFUY0M0SWJ3Z0FCQkFFRUFOZ0hhaHZDQUFFRUFRUUE2QUlHSDhJQUFRUUJCQURzQS80YndnQUJCQUVFQU93SDJodkNBQUVFQVFRQTJBZnFHOElBQVFRQkJBRG9BZzRmd2dBQkJBRUVBT2dDQ2gvQ0FBRUVBUVFBN0FkNkc4SUFBUVFCQkFEb0FoWW53Z0FCQkFFRUFPZ0RHaWZDQUFBSkFRWUFDUlEwQUlBSkJBRUdBQXZ3TEFBdEJDQ0VCQWtBRFFDQUJRZjhCU3cwQklBSWdBV3BCQVRvQUFDQUJRUWhxSVFFTUFBc0xBa0JCZ0FKRkRRQkJ4NG53Z0FBZ0FrR0FBdndLQUFBTElBSkJnQUpxSklDQWdJQUFDeklCQVg5QkFDRUFBa0FEUUNBQVFmLy9BM0ZCQUM4Qm1vRHdnQUJQRFFFZ0FCQ2hnSUNBQUNBQVFRRnFJUUFNQUFzTEM2Z0JBUUYvQWtBZ0FFSC8vd054SWdOQkFDOEJtb0R3Z0FCUERRQkJBQ0FDUWYvL0EzRWlBRUVBTHdHWWdQQ0FBQ0lDSUFBZ0Fra2JJZ0FnQVVILy93TnhJZ0ZySWdJZ0FpQUFTeHNoQWlBRFFZQVliQ0FCUVF4c2FrR1lnTUNBQUdvaEFBSkFBMEFnQWtVTkFTQUFRUWhxUVFBb0FvaUF3SUFBTmdJQUlBQkJBQ2tDZ0lEQWdBQTNBZ0FnQUVFTWFpRUFJQUpCZjJvaEFnd0FDd3NnQTBFQk9nQ2NnUENBQUFzTGZRRUNmd0pBSUFCQi8vOERjU0lCUVFBdkFacUE4SUFBVHcwQUlBRkJnQmhzUVppQXdJQUFhaUVBUVFBaEFnSkFBMEFnQWtFQUx3R1lnUENBQUU4TkFTQUFRUWhxUVFBb0FvaUF3SUFBTmdJQUlBQkJBQ2tDZ0lEQWdBQTNBZ0FnQUVFTWFpRUFJQUpCQVdvaEFnd0FDd3NnQVVFQk9nQ2NnUENBQUFzTDFnRUJBMzhDUUNBQ1FmLy9BM0ZGRFFBZ0FVSC8vd054SUFCQi8vOERjVTBOQUNBQ1FmLy9BM0VpQWlBQklBQnJRZi8vQTNFaUF5QUNJQU5KR3lJRFFZQVliRUdZZ01DQUFHb2hCQ0FCUWYvL0EzRWhCU0FBUWYvL0EzRWlBRUdBR0d3aEFnTkFBa0FnQXlBQWFpQUZTUTBBQTBBZ0FFSC8vd054SUFGQi8vOERjVThOQXlBQUVLR0FnSUFBSUFCQkFXb2hBQXdBQ3dzQ1FFR0FHRVVOQUNBQ1FaaUF3SUFBYWlBRUlBSnFRWUFZL0FvQUFBc2dBRUdjZ1BDQUFHcEJBVG9BQUNBQ1FZQVlhaUVDSUFCQkFXb2hBQXdBQ3dzTG9RRUNBMzhCZmlBQ1FmLy9BM0VoQXlBQUlBQW9BcVRmdXdGQmhCaHNhaUlFSVFVQ1FBTkFJQU5GRFFFZ0FTa0NBQ0VHSUFWQkNHb2dBVUVJYWlnQ0FEWUNBQ0FGSUFZM0FnQWdBVUVNYWlFQklBVkJER29oQlNBRFFYOXFJUU1NQUFzTElBUWdBanNCZ0JnZ0FDQUFLQUtrMzdzQlFRRnFRZWdIY0RZQ3BOKzdBUUpBSUFBb0FxRGZ1d0VpQVVIb0IwOE5BQ0FBSUFGQkFXbzJBcURmdXdFTEM5MENBUU4vUVFBaEFnSkFJQUJCQVdwQi93RnhJZ05CQUMwQXhJTHdnQUFpQkU4TkFBSkFBa0FDUUNBRFFRRjBMd0dnZ3ZDQUFFRithZzRFQVFNREFBTUxJQUJCQW1wQi93RnhJZ0FnQkU4TkFpQUFRUUYwTHdHZ2d2Q0FBQ0VBUVFJaEFnd0JDeUFBUVFScVFmOEJjU0lESUFSUERRRWdBMEVCZEM4Qm9JTHdnQUFoQWdKQUlBQkJBbXBCL3dGeFFRRjBMd0dnZ3ZDQUFDSURJQUJCQTJwQi93RnhRUUYwTHdHZ2d2Q0FBQ0lBUncwQUlBQWdBa0gvL3dOeFJ3MEFRUVFoQWdKQUlBTkIvd0Z4SWdCQkNFOE5BRUVRSVFBTUFnc0NRQ0FBUWZnQlRRMEFRZWNCSVFBTUFnc2dBMEY0YWtIL0FYRkJDbTVCNkFGcUlnQkIvd0VnQUVIL0FVa2JJUUFNQVFzZ0EwRUZiRUgvQUdwQi8vOERjVUgvQVc1QkpHd2dBRUVGYkVIL0FHcEIvLzhEY1VIL0FXNUJCbXhxSUFKQkJXeEIvd0JxUWYvL0EzRkIvd0Z1YWtFUWFpRUFRUVFoQWdzZ0FTQUFPd0VBQ3lBQ0M1MEJBUU4vSTRDQWdJQUFRUkJySWdNa2dJQ0FnQUJCQUNFRUEzOENRQ0FDUWYvL0EzRWlCUTBBSUFGQi93RnhJUUlnQTBFTGFrRi9haUVGQWtBRFFDQUVSUTBCSUFBZ0Ftb2dCU0FFYWkwQUFEb0FBQ0FDUVFGcUlRSWdCRUYvYWlFRURBQUxDeUFEUVJCcUpJQ0FnSUFBSUFJUEN5QURRUXRxSUFScUlBSWdCVUVLYmlJRlFRcHNhMEV3Y2pvQUFDQUVRUUZxSVFRZ0JTRUNEQUFMQ3dnQVFmQ0NySUlBQzRRR0FRaC9RWUFDSUFGQi8vOERjU0lDUVFFZ0FrRUJTeHNpQWtHQUFpQUNRWUFDU1JzZ0FVR0FBa3NiSVFOQkFDOEI5SWJ3Z0FBaEJBSkFBa0JCZ0FJZ0FFSC8vd054SWdGQkFTQUJRUUZMR3lJQlFZQUNJQUZCZ0FKSkd5QUFRWUFDU3hzaUJVRUFMd0g0aHZDQUFDSUNSdzBBSUFNZ0JFSC8vd054UmcwQkN3SkFJQVVnQWtraUJrVU5BQ0FESUFSQi8vOERjU0lCSUFNZ0FVa2JJUWNnQlVFTWJFR1lnTUNBQUdvaENFRUFJUWtEUUNBSklBZEdEUUVnQ0NFQklBVWhBQUpBQTBBZ0FpQUFRZi8vQTNGR0RRRWdBVUVJYWtFQUtBS0lnTUNBQURZQ0FDQUJRUUFwQW9DQXdJQUFOd0lBSUFGQkRHb2hBU0FBUVFGcUlRQU1BQXNMSUFoQmdCaHFJUWdnQ1VFQmFpRUpEQUFMQ3dKQUlBTWdCRUgvL3dOeElnaFBEUUJCQUMwQWc0ZndnQUFOQUVFQUtBTFFodkNBQUVVTkFDQUZJQUlnQmhzaENTQURRWUFZYkVHWWdNQ0FBR29oQUNBRElRRURRQ0FFUWYvL0EzRWdBVUgvL3dOeFJnMEJRUUFvQXRDRzhJQUFJQUFnQ1JDamdJQ0FBQ0FBUVlBWWFpRUFJQUZCQVdvaEFRd0FDd3RCQUNBRE93SDBodkNBQUVFQUlBVTdBZmlHOElBQVFRQWdBenNCbW9Ed2dBQkJBQ0FGT3dHWWdQQ0FBQUpBSUFNZ0NFME5BQ0FFSVFFRFFDQUJRZi8vQTNFZ0EwOE5BU0FCRUtHQWdJQUFJQUZCQVdvaEFRd0FDd3NDUUNBRklBSk5EUUFnQXlBRVFmLy9BM0VpQVNBRElBRkpHeUVJSUFVZ0Ftc2hCeUFDUVF4c1FaaUF3SUFBYWlFSlFRQWhBZ05BSUFJZ0NFWU5BU0FISVFBZ0NTRUJBa0FEUUNBQVJRMEJJQUZCQ0dwQkFDZ0NpSURBZ0FBMkFnQWdBVUVBS1FLQWdNQ0FBRGNDQUNBQVFYOXFJUUFnQVVFTWFpRUJEQUFMQ3lBQ1FRRTZBSnlBOElBQUlBbEJnQmhxSVFrZ0FrRUJhaUVDREFBTEMwRUFJQU03QWRpRzhJQUFRUUJCQURzQjhvYndnQUFDUUVFQUx3SGNodkNBQUNBRlNRMEFRUUFnQlVGL2Fqc0IzSWJ3Z0FBTEFrQkJBQzhCMm9id2dBQWdBMGtOQUVFQUlBTkJmMm83QWRxRzhJQUFDMEVBSVFFRFFDQURJQUZHRFFFZ0FVR2NnUENBQUdwQkFUb0FBQ0FCUVFGcUlRRU1BQXNMQzFNQVFZQUNJQUJCQVNBQUd5QUFRWUFDU3h0QmdBSWdBVUVCSUFFYklBRkJnQUpMR3hDZWdJQ0FBRUVBUWZEQ3JJSUFOZ0xVaHZDQUFFRUFRY2lqOElBQU5nTFFodkNBQUVFQVFnQTNBdWlDcklJQUN3c2hBUUJCZ0lEQUFBc1lJQUFBQUFBQkFBRUFBQUFBUlFBQUFBQUJBQUVBQUFBQSI7ZnVuY3Rpb24geShyKXtsZXQgQT1hdG9iKHIpLHQ9bmV3IFVpbnQ4QXJyYXkoQS5sZW5ndGgpO2ZvcihsZXQgZT0wO2U8QS5sZW5ndGg7ZSsrKXRbZV09QS5jaGFyQ29kZUF0KGUpO3JldHVybiB0LmJ1ZmZlcn12YXIgYT1jbGFzcyBye2NvbnN0cnVjdG9yKEEpe3RoaXMuZ3JpZFB0cj0wLHRoaXMuZGlydHlQdHI9MCx0aGlzLndyaXRlQnVmZmVyUHRyPTAsdGhpcy5jZWxsU2l6ZT0xMix0aGlzLm1heENvbHM9MjU2LHRoaXMuZW5jb2Rlcj1uZXcgVGV4dEVuY29kZXIsdGhpcy5kZWNvZGVyPW5ldyBUZXh0RGVjb2Rlcix0aGlzLmV4cG9ydHM9QS5leHBvcnRzLHRoaXMubWVtb3J5PXRoaXMuZXhwb3J0cy5tZW1vcnl9c3RhdGljIGFzeW5jIGxvYWQoQSl7bGV0IHQ7aWYoQSl7bGV0IHM9YXdhaXQgZmV0Y2goQSk7aWYoIXMub2spdGhyb3cgbmV3IEVycm9yKGBbd3Rlcm1dIEZhaWxlZCB0byBsb2FkIFdBU00gZnJvbSAke0F9OiAke3Muc3RhdHVzfSAke3Muc3RhdHVzVGV4dH1gKTt0PWF3YWl0IHMuYXJyYXlCdWZmZXIoKX1lbHNlIHQ9eShHKTtsZXR7aW5zdGFuY2U6ZX09YXdhaXQgV2ViQXNzZW1ibHkuaW5zdGFudGlhdGUodCk7cmV0dXJuIG5ldyByKGUpfWluaXQoQSx0KXt0aGlzLmV4cG9ydHMuaW5pdChBLHQpLHRoaXMuX3VwZGF0ZVBvaW50ZXJzKCl9X3VwZGF0ZVBvaW50ZXJzKCl7dGhpcy5ncmlkUHRyPXRoaXMuZXhwb3J0cy5nZXRHcmlkUHRyKCksdGhpcy5kaXJ0eVB0cj10aGlzLmV4cG9ydHMuZ2V0RGlydHlQdHIoKSx0aGlzLndyaXRlQnVmZmVyUHRyPXRoaXMuZXhwb3J0cy5nZXRXcml0ZUJ1ZmZlcigpLHRoaXMuY2VsbFNpemU9dGhpcy5leHBvcnRzLmdldENlbGxTaXplKCksdGhpcy5tYXhDb2xzPXRoaXMuZXhwb3J0cy5nZXRNYXhDb2xzKCksdGhpcy5fZHY9bmV3IERhdGFWaWV3KHRoaXMubWVtb3J5LmJ1ZmZlcil9d3JpdGVTdHJpbmcoQSl7bGV0IHQ9dGhpcy5lbmNvZGVyLmVuY29kZShBKTt0aGlzLndyaXRlUmF3KHQpfXdyaXRlUmF3KEEpe2xldCB0PW5ldyBVaW50OEFycmF5KHRoaXMubWVtb3J5LmJ1ZmZlcix0aGlzLndyaXRlQnVmZmVyUHRyLDgxOTIpLGU9MDtmb3IoO2U8QS5sZW5ndGg7KXtsZXQgcz1NYXRoLm1pbihBLmxlbmd0aC1lLDgxOTIpO3Quc2V0KEEuc3ViYXJyYXkoZSxlK3MpKSx0aGlzLmV4cG9ydHMud3JpdGVCeXRlcyhzKSxlKz1zfX1nZXRDZWxsKEEsdCl7bGV0IGU9dGhpcy5ncmlkUHRyKyhBKnRoaXMubWF4Q29scyt0KSp0aGlzLmNlbGxTaXplLHM9dGhpcy5fZHY7cmV0dXJue2NoYXI6cy5nZXRVaW50MzIoZSwhMCksZmc6cy5nZXRVaW50MTYoZSs0LCEwKSxiZzpzLmdldFVpbnQxNihlKzYsITApLGZsYWdzOnMuZ2V0VWludDgoZSs4KX19aXNEaXJ0eVJvdyhBKXtyZXR1cm4gbmV3IFVpbnQ4QXJyYXkodGhpcy5tZW1vcnkuYnVmZmVyLHRoaXMuZGlydHlQdHIsMjU2KVtBXSE9PTB9Y2xlYXJEaXJ0eSgpe3RoaXMuZXhwb3J0cy5jbGVhckRpcnR5KCl9Z2V0Q3Vyc29yKCl7cmV0dXJue3Jvdzp0aGlzLmV4cG9ydHMuZ2V0Q3Vyc29yUm93KCksY29sOnRoaXMuZXhwb3J0cy5nZXRDdXJzb3JDb2woKSx2aXNpYmxlOnRoaXMuZXhwb3J0cy5nZXRDdXJzb3JWaXNpYmxlKCkhPT0wfX1nZXRDb2xzKCl7cmV0dXJuIHRoaXMuZXhwb3J0cy5nZXRDb2xzKCl9Z2V0Um93cygpe3JldHVybiB0aGlzLmV4cG9ydHMuZ2V0Um93cygpfWN1cnNvcktleXNBcHAoKXtyZXR1cm4gdGhpcy5leHBvcnRzLmdldEN1cnNvcktleXNBcHAoKSE9PTB9YnJhY2tldGVkUGFzdGUoKXtyZXR1cm4gdGhpcy5leHBvcnRzLmdldEJyYWNrZXRlZFBhc3RlKCkhPT0wfXVzaW5nQWx0U2NyZWVuKCl7cmV0dXJuIHRoaXMuZXhwb3J0cy5nZXRVc2luZ0FsdFNjcmVlbigpIT09MH1nZXRUaXRsZSgpe2lmKHRoaXMuZXhwb3J0cy5nZXRUaXRsZUNoYW5nZWQoKT09PTApcmV0dXJuIG51bGw7bGV0IEE9dGhpcy5leHBvcnRzLmdldFRpdGxlUHRyKCksdD10aGlzLmV4cG9ydHMuZ2V0VGl0bGVMZW4oKSxlPW5ldyBVaW50OEFycmF5KHRoaXMubWVtb3J5LmJ1ZmZlcixBLHQpO3JldHVybiB0aGlzLmRlY29kZXIuZGVjb2RlKGUpfWdldFJlc3BvbnNlKCl7bGV0IEE9dGhpcy5leHBvcnRzLmdldFJlc3BvbnNlTGVuKCk7aWYoQT09PTApcmV0dXJuIG51bGw7bGV0IHQ9dGhpcy5leHBvcnRzLmdldFJlc3BvbnNlUHRyKCksZT1uZXcgVWludDhBcnJheSh0aGlzLm1lbW9yeS5idWZmZXIsdCxBKSxzPXRoaXMuZGVjb2Rlci5kZWNvZGUoZSk7cmV0dXJuIHRoaXMuZXhwb3J0cy5jbGVhclJlc3BvbnNlKCksc31nZXRTY3JvbGxiYWNrQ291bnQoKXtyZXR1cm4gdGhpcy5leHBvcnRzLmdldFNjcm9sbGJhY2tDb3VudCgpfWdldFNjcm9sbGJhY2tDZWxsKEEsdCl7bGV0IHM9dGhpcy5leHBvcnRzLmdldFNjcm9sbGJhY2tMaW5lKEEpK3QqdGhpcy5jZWxsU2l6ZSxpPXRoaXMuX2R2O3JldHVybntjaGFyOmkuZ2V0VWludDMyKHMsITApLGZnOmkuZ2V0VWludDE2KHMrNCwhMCksYmc6aS5nZXRVaW50MTYocys2LCEwKSxmbGFnczppLmdldFVpbnQ4KHMrOCl9fWdldFNjcm9sbGJhY2tMaW5lTGVuKEEpe3JldHVybiB0aGlzLmV4cG9ydHMuZ2V0U2Nyb2xsYmFja0xpbmVMZW4oQSl9cmVzaXplKEEsdCl7dGhpcy5leHBvcnRzLnJlc2l6ZVRlcm1pbmFsKEEsdCksdGhpcy5fdXBkYXRlUG9pbnRlcnMoKX19O3ZhciBkPWNsYXNze2NvbnN0cnVjdG9yKEE9e30pe3RoaXMuX3dzPW51bGwsdGhpcy5fcmVjb25uZWN0VGltZXI9bnVsbCx0aGlzLl9yZWNvbm5lY3REZWxheT0xZTMsdGhpcy5fY2xvc2VkPSExLHRoaXMuX2J1ZmZlcj1bXSx0aGlzLnVybD1BLnVybD8/bnVsbCx0aGlzLnJlY29ubmVjdD1BLnJlY29ubmVjdCE9PSExLHRoaXMubWF4UmVjb25uZWN0RGVsYXk9QS5tYXhSZWNvbm5lY3REZWxheT8/M2U0LHRoaXMub25EYXRhPUEub25EYXRhPz9udWxsLHRoaXMub25PcGVuPUEub25PcGVuPz9udWxsLHRoaXMub25DbG9zZT1BLm9uQ2xvc2U/P251bGwsdGhpcy5vbkVycm9yPUEub25FcnJvcj8/bnVsbH1jb25uZWN0KEEpe2lmKEEmJih0aGlzLnVybD1BKSwhdGhpcy51cmwpdGhyb3cgbmV3IEVycm9yKCJObyBXZWJTb2NrZXQgVVJMIHByb3ZpZGVkIik7dGhpcy5fY2xvc2VkPSExLHRoaXMuX3dzPW5ldyBXZWJTb2NrZXQodGhpcy51cmwpLHRoaXMuX3dzLmJpbmFyeVR5cGU9ImFycmF5YnVmZmVyIix0aGlzLl93cy5vbm9wZW49KCk9Pnt0aGlzLl9yZWNvbm5lY3REZWxheT0xZTMsdGhpcy5fZmx1c2hCdWZmZXIoKSx0aGlzLm9uT3BlbiYmdGhpcy5vbk9wZW4oKX0sdGhpcy5fd3Mub25tZXNzYWdlPXQ9Pnt0aGlzLm9uRGF0YSYmKHQuZGF0YSBpbnN0YW5jZW9mIEFycmF5QnVmZmVyP3RoaXMub25EYXRhKG5ldyBVaW50OEFycmF5KHQuZGF0YSkpOnRoaXMub25EYXRhKHQuZGF0YSkpfSx0aGlzLl93cy5vbmNsb3NlPSgpPT57dGhpcy5vbkNsb3NlJiZ0aGlzLm9uQ2xvc2UoKSx0aGlzLnJlY29ubmVjdCYmIXRoaXMuX2Nsb3NlZCYmdGhpcy5fc2NoZWR1bGVSZWNvbm5lY3QoKX0sdGhpcy5fd3Mub25lcnJvcj10PT57dGhpcy5vbkVycm9yJiZ0aGlzLm9uRXJyb3IodCksdGhpcy5fd3M/LmNsb3NlKCl9fXNlbmQoQSl7dGhpcy5fd3MmJnRoaXMuX3dzLnJlYWR5U3RhdGU9PT1XZWJTb2NrZXQuT1BFTj90eXBlb2YgQT09InN0cmluZyI/dGhpcy5fd3Muc2VuZChuZXcgVGV4dEVuY29kZXIoKS5lbmNvZGUoQSkpOnRoaXMuX3dzLnNlbmQoQSk6dGhpcy5fYnVmZmVyLnB1c2goQSl9Y2xvc2UoKXt0aGlzLl9jbG9zZWQ9ITAsdGhpcy5fcmVjb25uZWN0VGltZXImJmNsZWFyVGltZW91dCh0aGlzLl9yZWNvbm5lY3RUaW1lciksdGhpcy5fd3MmJnRoaXMuX3dzLmNsb3NlKCl9Z2V0IGNvbm5lY3RlZCgpe3JldHVybiB0aGlzLl93cyE9PW51bGwmJnRoaXMuX3dzLnJlYWR5U3RhdGU9PT1XZWJTb2NrZXQuT1BFTn1fZmx1c2hCdWZmZXIoKXtsZXQgQT10aGlzLl9idWZmZXIuc3BsaWNlKDApO2ZvcihsZXQgdCBvZiBBKXRoaXMuc2VuZCh0KX1fc2NoZWR1bGVSZWNvbm5lY3QoKXt0aGlzLl9yZWNvbm5lY3RUaW1lcj1zZXRUaW1lb3V0KCgpPT57dGhpcy5jb25uZWN0KCl9LHRoaXMuX3JlY29ubmVjdERlbGF5KSx0aGlzLl9yZWNvbm5lY3REZWxheT1NYXRoLm1pbih0aGlzLl9yZWNvbm5lY3REZWxheSoyLHRoaXMubWF4UmVjb25uZWN0RGVsYXkpfX07ZnVuY3Rpb24gdShyKXtpZihyPT09MjU2KXJldHVybiBudWxsO2lmKHI8MTYpcmV0dXJuYHZhcigtLXRlcm0tY29sb3ItJHtyfSlgO2lmKHI8MjMyKXtsZXQgdD1yLTE2LGU9TWF0aC5mbG9vcih0LzM2KSo1MSxzPU1hdGguZmxvb3IodC82KSU2KjUxLGk9dCU2KjUxO3JldHVybmByZ2IoJHtlfSwke3N9LCR7aX0pYH1sZXQgQT0oci0yMzIpKjEwKzg7cmV0dXJuYHJnYigke0F9LCR7QX0sJHtBfSlgfWZ1bmN0aW9uIFMocixBLHQpe2xldCBlPXIscz1BO2lmKHQmMzIpe2xldCBRPWU7ZT1zLHM9USxlPT09MjU2JiYoZT0wKSxzPT09MjU2JiYocz03KX1sZXQgaT11KGUpLG89dShzKSxCPSIiO2kmJihCKz1gY29sb3I6JHtpfTtgKSxvJiYoQis9YGJhY2tncm91bmQ6JHtvfTtgKSx0JjEmJihCKz0iZm9udC13ZWlnaHQ6Ym9sZDsiKSx0JjImJihCKz0ib3BhY2l0eTowLjU7IiksdCY0JiYoQis9ImZvbnQtc3R5bGU6aXRhbGljOyIpO2xldCBFPVtdO3JldHVybiB0JjEyOCYmRS5wdXNoKCJsaW5lLXRocm91Z2giKSxFLmxlbmd0aCYmKEIrPWB0ZXh0LWRlY29yYXRpb246JHtFLmpvaW4oIiAiKX07YCksdCY2NCYmKEIrPSJ2aXNpYmlsaXR5OmhpZGRlbjsiKSxCfWZ1bmN0aW9uIEQocixBLHQpe2lmKHQpe2xldCBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtlLnN0eWxlLmNzc1RleHQ9dCxlLnRleHRDb250ZW50PUEsci5hcHBlbmRDaGlsZChlKX1lbHNlIHIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoQSkpfWZ1bmN0aW9uIFIocixBLHQpe2xldCBlPXIscz1BO3JldHVybiB0JjMyJiYoW2Usc109W3MsZV0sZT09PTI1NiYmKGU9MCkscz09PTI1NiYmKHM9NykpLHtmZzp1KGUpfHwidmFyKC0tdGVybS1mZykiLGJnOnUocyl8fCJ2YXIoLS10ZXJtLWJnKSJ9fWZ1bmN0aW9uIEgocixBLHQpe3N3aXRjaChyKXtjYXNlIDk2MDA6cmV0dXJuYGxpbmVhci1ncmFkaWVudCgke0F9IDUwJSwke3R9IDUwJSlgO2Nhc2UgOTYwMTpyZXR1cm5gbGluZWFyLWdyYWRpZW50KCR7dH0gODcuNSUsJHtBfSA4Ny41JSlgO2Nhc2UgOTYwMjpyZXR1cm5gbGluZWFyLWdyYWRpZW50KCR7dH0gNzUlLCR7QX0gNzUlKWA7Y2FzZSA5NjAzOnJldHVybmBsaW5lYXItZ3JhZGllbnQoJHt0fSA2Mi41JSwke0F9IDYyLjUlKWA7Y2FzZSA5NjA0OnJldHVybmBsaW5lYXItZ3JhZGllbnQoJHt0fSA1MCUsJHtBfSA1MCUpYDtjYXNlIDk2MDU6cmV0dXJuYGxpbmVhci1ncmFkaWVudCgke3R9IDM3LjUlLCR7QX0gMzcuNSUpYDtjYXNlIDk2MDY6cmV0dXJuYGxpbmVhci1ncmFkaWVudCgke3R9IDI1JSwke0F9IDI1JSlgO2Nhc2UgOTYwNzpyZXR1cm5gbGluZWFyLWdyYWRpZW50KCR7dH0gMTIuNSUsJHtBfSAxMi41JSlgO2Nhc2UgOTYwODpyZXR1cm4gQTtjYXNlIDk2MDk6cmV0dXJuYGxpbmVhci1ncmFkaWVudCh0byByaWdodCwke0F9IDg3LjUlLCR7dH0gODcuNSUpYDtjYXNlIDk2MTA6cmV0dXJuYGxpbmVhci1ncmFkaWVudCh0byByaWdodCwke0F9IDc1JSwke3R9IDc1JSlgO2Nhc2UgOTYxMTpyZXR1cm5gbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCR7QX0gNjIuNSUsJHt0fSA2Mi41JSlgO2Nhc2UgOTYxMjpyZXR1cm5gbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCR7QX0gNTAlLCR7dH0gNTAlKWA7Y2FzZSA5NjEzOnJldHVybmBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsJHtBfSAzNy41JSwke3R9IDM3LjUlKWA7Y2FzZSA5NjE0OnJldHVybmBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsJHtBfSAyNSUsJHt0fSAyNSUpYDtjYXNlIDk2MTU6cmV0dXJuYGxpbmVhci1ncmFkaWVudCh0byByaWdodCwke0F9IDEyLjUlLCR7dH0gMTIuNSUpYDtjYXNlIDk2MTY6cmV0dXJuYGxpbmVhci1ncmFkaWVudCh0byByaWdodCwke3R9IDUwJSwke0F9IDUwJSlgO2Nhc2UgOTYxNzpyZXR1cm5gY29sb3ItbWl4KGluIHNyZ2IsJHtBfSAyNSUsJHt0fSlgO2Nhc2UgOTYxODpyZXR1cm5gY29sb3ItbWl4KGluIHNyZ2IsJHtBfSA1MCUsJHt0fSlgO2Nhc2UgOTYxOTpyZXR1cm5gY29sb3ItbWl4KGluIHNyZ2IsJHtBfSA3NSUsJHt0fSlgO2Nhc2UgOTYyMDpyZXR1cm5gbGluZWFyLWdyYWRpZW50KCR7QX0gMTIuNSUsJHt0fSAxMi41JSlgO2Nhc2UgOTYyMTpyZXR1cm5gbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCR7dH0gODcuNSUsJHtBfSA4Ny41JSlgO2RlZmF1bHQ6e2xldCBzPXs5NjIyOlshMSwhMSwhMCwhMV0sOTYyMzpbITEsITEsITEsITBdLDk2MjQ6WyEwLCExLCExLCExXSw5NjI1OlshMCwhMSwhMCwhMF0sOTYyNjpbITAsITEsITEsITBdLDk2Mjc6WyEwLCEwLCEwLCExXSw5NjI4OlshMCwhMCwhMSwhMF0sOTYyOTpbITEsITAsITEsITFdLDk2MzA6WyExLCEwLCEwLCExXSw5NjMxOlshMSwhMCwhMCwhMF19W3JdO2lmKCFzKXJldHVybiBBO2xldFtpLG8sQixFXT1zO2lmKGkmJm8mJkImJkUpcmV0dXJuIEE7bGV0IFE9W10sQz1bIjAgMCIsIjEwMCUgMCIsIjAgMTAwJSIsIjEwMCUgMTAwJSJdO3JldHVybiBzLmZvckVhY2goKG4sSSk9PntuJiZRLnB1c2goYGxpbmVhci1ncmFkaWVudCgke0F9LCR7QX0pICR7Q1tJXX0vNTAlIDUwJSBuby1yZXBlYXRgKX0pLFEucHVzaCh0KSxRLmpvaW4oIiwiKX19fXZhciBjPWNsYXNze2NvbnN0cnVjdG9yKEEpe3RoaXMucm93cz0wLHRoaXMuY29scz0wLHRoaXMucm93RWxzPVtdLHRoaXMucHJldkN1cnNvclJvdz0tMSx0aGlzLnByZXZDdXJzb3JDb2w9LTEsdGhpcy5fc2Nyb2xsYmFja1Jvd0Vscz1bXSx0aGlzLl9yZW5kZXJlZFNjcm9sbGJhY2tDb3VudD0wLHRoaXMuY29udGFpbmVyPUF9c2V0dXAoQSx0KXt0aGlzLmNvbHM9QSx0aGlzLnJvd3M9dCx0aGlzLmNvbnRhaW5lci5pbm5lckhUTUw9IiIsdGhpcy5yb3dFbHM9W10sdGhpcy5fc2Nyb2xsYmFja1Jvd0Vscz1bXSx0aGlzLl9yZW5kZXJlZFNjcm9sbGJhY2tDb3VudD0wO2xldCBlPWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTtmb3IobGV0IHM9MDtzPHQ7cysrKXtsZXQgaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpLmNsYXNzTmFtZT0idGVybS1yb3ciLGUuYXBwZW5kQ2hpbGQoaSksdGhpcy5yb3dFbHMucHVzaChpKX10aGlzLmNvbnRhaW5lci5hcHBlbmRDaGlsZChlKSx0aGlzLnByZXZDdXJzb3JSb3c9LTEsdGhpcy5wcmV2Q3Vyc29yQ29sPS0xfV9idWlsZFJvd0NvbnRlbnQoQSx0LGUscyl7QS50ZXh0Q29udGVudD0iIjtsZXQgaT0iIixvPSIiLEI9MCxFPVE9PntpZihvKWlmKHM+PUImJnM8USl7bGV0IEM9cy1CLG49by5zbGljZSgwLEMpLEk9b1tDXSxoPW8uc2xpY2UoQysxKTtuJiZEKEEsbixpKTtsZXQgZz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7Zy5jbGFzc05hbWU9InRlcm0tY3Vyc29yIixpJiYoZy5zdHlsZS5jc3NUZXh0PWkpLGcudGV4dENvbnRlbnQ9SSxBLmFwcGVuZENoaWxkKGcpLGgmJkQoQSxoLGkpfWVsc2UgRChBLG8saSl9O2ZvcihsZXQgUT0wO1E8dGhpcy5jb2xzO1ErKyl7bGV0IEM9dChRKSxuPVE8ZSxJPW4/Qy5jaGFyOjA7aWYobiYmST49OTYwMCYmSTw9OTYzMSl7RShRKTtsZXQgaD1SKEMuZmcsQy5iZyxDLmZsYWdzKSxnPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtnLmNsYXNzTmFtZT1RPT09cz8idGVybS1ibG9jayB0ZXJtLWN1cnNvciI6InRlcm0tYmxvY2siLGcuc3R5bGUuYmFja2dyb3VuZD1IKEksaC5mZyxoLmJnKSxDLmZsYWdzJjImJihnLnN0eWxlLm9wYWNpdHk9IjAuNSIpLEEuYXBwZW5kQ2hpbGQoZyksaT0iIixvPSIiLEI9USsxfWVsc2V7bGV0IGg9biYmST49MzI/U3RyaW5nLmZyb21Db2RlUG9pbnQoSSk6IiAiLGc9bj9TKEMuZmcsQy5iZyxDLmZsYWdzKToiIjtnIT09aT8oRShRKSxpPWcsbz1oLEI9USk6bys9aH19RSh0aGlzLmNvbHMpfV9idWlsZFNjcm9sbGJhY2tSb3dFbChBLHQpe2xldCBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2UuY2xhc3NOYW1lPSJ0ZXJtLXJvdyB0ZXJtLXNjcm9sbGJhY2stcm93IjtsZXQgcz1BLmdldFNjcm9sbGJhY2tMaW5lTGVuKHQpO3JldHVybiB0aGlzLl9idWlsZFJvd0NvbnRlbnQoZSxpPT5BLmdldFNjcm9sbGJhY2tDZWxsKHQsaSkscywtMSksZX1zeW5jU2Nyb2xsYmFjayhBKXtsZXQgdD1BLmdldFNjcm9sbGJhY2tDb3VudCgpO2lmKHQhPT10aGlzLl9yZW5kZXJlZFNjcm9sbGJhY2tDb3VudCl7aWYodD50aGlzLl9yZW5kZXJlZFNjcm9sbGJhY2tDb3VudCl7bGV0IGU9dC10aGlzLl9yZW5kZXJlZFNjcm9sbGJhY2tDb3VudCxzPXRoaXMucm93RWxzWzBdPz9udWxsLGk9ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpO2ZvcihsZXQgbz1lLTE7bz49MDtvLS0pe2xldCBCPXRoaXMuX2J1aWxkU2Nyb2xsYmFja1Jvd0VsKEEsbyk7aS5hcHBlbmRDaGlsZChCKSx0aGlzLl9zY3JvbGxiYWNrUm93RWxzLnB1c2goQil9dGhpcy5jb250YWluZXIuaW5zZXJ0QmVmb3JlKGkscyl9ZWxzZXtsZXQgZT10aGlzLl9yZW5kZXJlZFNjcm9sbGJhY2tDb3VudC10O2ZvcihsZXQgcz0wO3M8ZTtzKyspe2xldCBpPXRoaXMuX3Njcm9sbGJhY2tSb3dFbHMuc2hpZnQoKTtpJiZpLnJlbW92ZSgpfX10aGlzLl9yZW5kZXJlZFNjcm9sbGJhY2tDb3VudD10fX1yZW5kZXIoQSl7bGV0IHQ9QS5nZXRSb3dzKCksZT1BLmdldENvbHMoKSxzPSExOyh0IT09dGhpcy5yb3dzfHxlIT09dGhpcy5jb2xzKSYmKHRoaXMuc2V0dXAoZSx0KSxzPSEwKSx0aGlzLnN5bmNTY3JvbGxiYWNrKEEpO2xldCBpPUEuZ2V0Q3Vyc29yKCksbz1pLnZpc2libGUsQj1pLnJvdyE9PXRoaXMucHJldkN1cnNvclJvd3x8aS5jb2whPT10aGlzLnByZXZDdXJzb3JDb2w7Zm9yKGxldCBFPTA7RTx0aGlzLnJvd3M7RSsrKXtsZXQgUT1zfHxBLmlzRGlydHlSb3coRSksQz1FPT09dGhpcy5wcmV2Q3Vyc29yUm93JiZCLG49RT09PWkucm93O2lmKFF8fEN8fG4mJkIpe2xldCBJPW4mJm8/aS5jb2w6LTE7dGhpcy5fYnVpbGRSb3dDb250ZW50KHRoaXMucm93RWxzW0VdLGg9PkEuZ2V0Q2VsbChFLGgpLHRoaXMuY29scyxJKX19dGhpcy5wcmV2Q3Vyc29yUm93PWkucm93LHRoaXMucHJldkN1cnNvckNvbD1pLmNvbCxBLmNsZWFyRGlydHkoKX19O3ZhciBVPXtBcnJvd1VwOiJceDFCW0EiLEFycm93RG93bjoiXHgxQltCIixBcnJvd1JpZ2h0OiJceDFCW0MiLEFycm93TGVmdDoiXHgxQltEIixIb21lOiJceDFCW0giLEVuZDoiXHgxQltGIn0sTT17QXJyb3dVcDoiXHgxQk9BIixBcnJvd0Rvd246Ilx4MUJPQiIsQXJyb3dSaWdodDoiXHgxQk9DIixBcnJvd0xlZnQ6Ilx4MUJPRCIsSG9tZToiXHgxQk9IIixFbmQ6Ilx4MUJPRiJ9LF89e0VudGVyOiJcciIsQmFja3NwYWNlOiJceDdGIixUYWI6IgkiLEVzY2FwZToiXHgxQiIsSW5zZXJ0OiJceDFCWzJ+IixEZWxldGU6Ilx4MUJbM34iLFBhZ2VVcDoiXHgxQls1fiIsUGFnZURvd246Ilx4MUJbNn4iLEYxOiJceDFCT1AiLEYyOiJceDFCT1EiLEYzOiJceDFCT1IiLEY0OiJceDFCT1MiLEY1OiJceDFCWzE1fiIsRjY6Ilx4MUJbMTd+IixGNzoiXHgxQlsxOH4iLEY4OiJceDFCWzE5fiIsRjk6Ilx4MUJbMjB+IixGMTA6Ilx4MUJbMjF+IixGMTE6Ilx4MUJbMjN+IixGMTI6Ilx4MUJbMjR+In0sbD1jbGFzc3tjb25zdHJ1Y3RvcihBLHQsZSl7dGhpcy5jb21wb3Npbmc9ITEsdGhpcy5lbGVtZW50PUEsdGhpcy5vbkRhdGE9dCx0aGlzLmdldEJyaWRnZT1lLHRoaXMudGV4dGFyZWE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGV4dGFyZWEiKSx0aGlzLnRleHRhcmVhLnNldEF0dHJpYnV0ZSgiYXV0b2NhcGl0YWxpemUiLCJvZmYiKSx0aGlzLnRleHRhcmVhLnNldEF0dHJpYnV0ZSgiYXV0b2NvbXBsZXRlIiwib2ZmIiksdGhpcy50ZXh0YXJlYS5zZXRBdHRyaWJ1dGUoImF1dG9jb3JyZWN0Iiwib2ZmIiksdGhpcy50ZXh0YXJlYS5zZXRBdHRyaWJ1dGUoInNwZWxsY2hlY2siLCJmYWxzZSIpLHRoaXMudGV4dGFyZWEuc2V0QXR0cmlidXRlKCJlbnRlcmtleWhpbnQiLCJzZW5kIiksdGhpcy50ZXh0YXJlYS5zZXRBdHRyaWJ1dGUoInRhYmluZGV4IiwiMCIpLHRoaXMudGV4dGFyZWEuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIiwidGVybWluYWwgaW5wdXQiKTtsZXQgcz10aGlzLnRleHRhcmVhLnN0eWxlO3MucG9zaXRpb249ImFic29sdXRlIixzLmxlZnQ9Ii05OTk5cHgiLHMudG9wPSIwIixzLndpZHRoPSIxcHgiLHMuaGVpZ2h0PSIxcHgiLHMub3BhY2l0eT0iMCIscy5vdmVyZmxvdz0iaGlkZGVuIixzLmJvcmRlcj0iMCIscy5wYWRkaW5nPSIwIixzLm1hcmdpbj0iMCIscy5vdXRsaW5lPSJub25lIixzLnJlc2l6ZT0ibm9uZSIscy5wb2ludGVyRXZlbnRzPSJub25lIixzLmNhcmV0Q29sb3I9InRyYW5zcGFyZW50IixzLmNvbG9yPSJ0cmFuc3BhcmVudCIscy5iYWNrZ3JvdW5kPSJ0cmFuc3BhcmVudCIsQS5hcHBlbmRDaGlsZCh0aGlzLnRleHRhcmVhKSx0aGlzLl9vbktleURvd249dGhpcy5oYW5kbGVLZXlEb3duLmJpbmQodGhpcyksdGhpcy5fb25QYXN0ZT10aGlzLmhhbmRsZVBhc3RlLmJpbmQodGhpcyksdGhpcy5fb25Db21wb3NpdGlvblN0YXJ0PXRoaXMuaGFuZGxlQ29tcG9zaXRpb25TdGFydC5iaW5kKHRoaXMpLHRoaXMuX29uQ29tcG9zaXRpb25FbmQ9dGhpcy5oYW5kbGVDb21wb3NpdGlvbkVuZC5iaW5kKHRoaXMpLHRoaXMuX29uSW5wdXQ9dGhpcy5oYW5kbGVJbnB1dC5iaW5kKHRoaXMpLHRoaXMuX29uRm9jdXM9KCk9PnRoaXMuZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJmb2N1c2VkIiksdGhpcy5fb25CbHVyPSgpPT50aGlzLmVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgiZm9jdXNlZCIpLHRoaXMudGV4dGFyZWEuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdGhpcy5fb25LZXlEb3duKSx0aGlzLnRleHRhcmVhLmFkZEV2ZW50TGlzdGVuZXIoInBhc3RlIix0aGlzLl9vblBhc3RlKSx0aGlzLnRleHRhcmVhLmFkZEV2ZW50TGlzdGVuZXIoImNvbXBvc2l0aW9uc3RhcnQiLHRoaXMuX29uQ29tcG9zaXRpb25TdGFydCksdGhpcy50ZXh0YXJlYS5hZGRFdmVudExpc3RlbmVyKCJjb21wb3NpdGlvbmVuZCIsdGhpcy5fb25Db21wb3NpdGlvbkVuZCksdGhpcy50ZXh0YXJlYS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsdGhpcy5fb25JbnB1dCksdGhpcy50ZXh0YXJlYS5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsdGhpcy5fb25Gb2N1cyksdGhpcy50ZXh0YXJlYS5hZGRFdmVudExpc3RlbmVyKCJibHVyIix0aGlzLl9vbkJsdXIpfWZvY3VzKCl7dGhpcy50ZXh0YXJlYS5mb2N1cyh7cHJldmVudFNjcm9sbDohMH0pfWRlc3Ryb3koKXt0aGlzLnRleHRhcmVhLnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLHRoaXMuX29uS2V5RG93biksdGhpcy50ZXh0YXJlYS5yZW1vdmVFdmVudExpc3RlbmVyKCJwYXN0ZSIsdGhpcy5fb25QYXN0ZSksdGhpcy50ZXh0YXJlYS5yZW1vdmVFdmVudExpc3RlbmVyKCJjb21wb3NpdGlvbnN0YXJ0Iix0aGlzLl9vbkNvbXBvc2l0aW9uU3RhcnQpLHRoaXMudGV4dGFyZWEucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY29tcG9zaXRpb25lbmQiLHRoaXMuX29uQ29tcG9zaXRpb25FbmQpLHRoaXMudGV4dGFyZWEucmVtb3ZlRXZlbnRMaXN0ZW5lcigiaW5wdXQiLHRoaXMuX29uSW5wdXQpLHRoaXMudGV4dGFyZWEucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZm9jdXMiLHRoaXMuX29uRm9jdXMpLHRoaXMudGV4dGFyZWEucmVtb3ZlRXZlbnRMaXN0ZW5lcigiYmx1ciIsdGhpcy5fb25CbHVyKSx0aGlzLmVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgiZm9jdXNlZCIpLHRoaXMudGV4dGFyZWEucmVtb3ZlKCl9aGFuZGxlS2V5RG93bihBKXtpZih0aGlzLmNvbXBvc2luZylyZXR1cm47aWYoKEEubWV0YUtleXx8QS5jdHJsS2V5KSYmQS5rZXk9PT0iYyIpe2xldCBlPXdpbmRvdy5nZXRTZWxlY3Rpb24oKTtpZihlJiZlLnRvU3RyaW5nKCkubGVuZ3RoPjApcmV0dXJufWlmKChBLm1ldGFLZXl8fEEuY3RybEtleSkmJkEua2V5PT09InYiKXt0aGlzLnRleHRhcmVhLmZvY3VzKCk7cmV0dXJufWlmKEEubWV0YUtleSYmIUEuY3RybEtleSl7aWYoQS5rZXk9PT0iQmFja3NwYWNlIilBLnByZXZlbnREZWZhdWx0KCksdGhpcy5vbkRhdGEoIhUiKTtlbHNlIGlmKEEua2V5PT09ImEiKXtBLnByZXZlbnREZWZhdWx0KCk7bGV0IGU9d2luZG93LmdldFNlbGVjdGlvbigpO2lmKGUpe2xldCBzPWRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7cy5zZWxlY3ROb2RlQ29udGVudHModGhpcy5lbGVtZW50KSxlLnJlbW92ZUFsbFJhbmdlcygpLGUuYWRkUmFuZ2Uocyl9fXJldHVybn1BLnByZXZlbnREZWZhdWx0KCk7bGV0IHQ9dGhpcy5rZXlUb1NlcXVlbmNlKEEpO3QmJnRoaXMub25EYXRhKHQpfWhhbmRsZVBhc3RlKEEpe0EucHJldmVudERlZmF1bHQoKTtsZXQgdD1BLmNsaXBib2FyZERhdGE/LmdldERhdGEoInRleHQiKTtpZighdClyZXR1cm47bGV0IGU9dGhpcy5nZXRCcmlkZ2UoKTtlJiZlLmJyYWNrZXRlZFBhc3RlKCk/dGhpcy5vbkRhdGEoIlx4MUJbMjAwfiIrdCsiXHgxQlsyMDF+Iik6dGhpcy5vbkRhdGEodCl9aGFuZGxlQ29tcG9zaXRpb25TdGFydCgpe3RoaXMuY29tcG9zaW5nPSEwfWhhbmRsZUNvbXBvc2l0aW9uRW5kKEEpe3RoaXMuY29tcG9zaW5nPSExLEEuZGF0YSYmdGhpcy5vbkRhdGEoQS5kYXRhKSx0aGlzLnRleHRhcmVhLnZhbHVlPSIifWhhbmRsZUlucHV0KCl7aWYodGhpcy5jb21wb3NpbmcpcmV0dXJuO2xldCBBPXRoaXMudGV4dGFyZWEudmFsdWU7QSYmKHRoaXMub25EYXRhKEEpLHRoaXMudGV4dGFyZWEudmFsdWU9IiIpfWtleVRvU2VxdWVuY2UoQSl7aWYoQS5jdHJsS2V5JiYhQS5hbHRLZXkmJiFBLm1ldGFLZXkpe2lmKEEua2V5Lmxlbmd0aD09PTEpe2xldCBCPUEua2V5LnRvTG93ZXJDYXNlKCkuY2hhckNvZGVBdCgwKTtpZihCPj05NyYmQjw9MTIyKXJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKEItOTYpfWlmKEEua2V5PT09IlsiKXJldHVybiJceDFCIjtpZihBLmtleT09PSJcXCIpcmV0dXJuIhwiO2lmKEEua2V5PT09Il0iKXJldHVybiIdIjtpZihBLmtleT09PSJeIilyZXR1cm4iHiI7aWYoQS5rZXk9PT0iXyIpcmV0dXJuIh8ifWlmKEEua2V5PT09IkVudGVyIiYmQS5zaGlmdEtleSlyZXR1cm4iXHgxQlsxMzsydSI7aWYoQS5rZXk9PT0iVGFiIiYmQS5zaGlmdEtleSlyZXR1cm4iXHgxQltaIjtsZXQgdD1fW0Eua2V5XTtpZih0KXJldHVybiBBLmFsdEtleT8iXHgxQiIrdDp0O2xldCBlPXRoaXMuZ2V0QnJpZGdlKCksbz0oZSYmZS5jdXJzb3JLZXlzQXBwKCk/TTpVKVtBLmtleV07cmV0dXJuIG8/QS5hbHRLZXk/Ilx4MUIiK286bzpBLmtleS5sZW5ndGg9PT0xJiYhQS5jdHJsS2V5JiYhQS5tZXRhS2V5P0EuYWx0S2V5PyJceDFCIitBLmtleTpBLmtleTpudWxsfX07dmFyIHc9Y2xhc3N7Y29uc3RydWN0b3IoQSx0PXt9KXt0aGlzLmJyaWRnZT1udWxsLHRoaXMucmVuZGVyZXI9bnVsbCx0aGlzLmlucHV0PW51bGwsdGhpcy5yYWZJZD1udWxsLHRoaXMucmVzaXplT2JzZXJ2ZXI9bnVsbCx0aGlzLl9kZXN0cm95ZWQ9ITEsdGhpcy5fc2hvdWxkU2Nyb2xsVG9Cb3R0b209ITEsdGhpcy5lbGVtZW50PUEsdGhpcy53YXNtVXJsPXQud2FzbVVybCx0aGlzLmNvbHM9dC5jb2xzfHw4MCx0aGlzLnJvd3M9dC5yb3dzfHwyNCx0aGlzLmF1dG9SZXNpemU9dC5hdXRvUmVzaXplIT09ITEsdGhpcy5vbkRhdGE9dC5vbkRhdGF8fG51bGwsdGhpcy5vblRpdGxlPXQub25UaXRsZXx8bnVsbCx0aGlzLm9uUmVzaXplPXQub25SZXNpemV8fG51bGwsdGhpcy5fY29udGFpbmVyPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuX2NvbnRhaW5lci5jbGFzc05hbWU9InRlcm0tZ3JpZCIsdGhpcy5lbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuX2NvbnRhaW5lciksdGhpcy5lbGVtZW50LmNsYXNzTGlzdC5hZGQoInd0ZXJtIiksdC5jdXJzb3JCbGluayYmdGhpcy5lbGVtZW50LmNsYXNzTGlzdC5hZGQoImN1cnNvci1ibGluayIpLHRoaXMuX29uQ2xpY2tGb2N1cz0oKT0+e2xldCBlPXdpbmRvdy5nZXRTZWxlY3Rpb24oKTsoIWV8fGUuaXNDb2xsYXBzZWQpJiZ0aGlzLmlucHV0Py5mb2N1cygpfSx0aGlzLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHRoaXMuX29uQ2xpY2tGb2N1cyl9YXN5bmMgaW5pdCgpe3RyeXtpZih0aGlzLmJyaWRnZT1hd2FpdCBhLmxvYWQodGhpcy53YXNtVXJsKSx0aGlzLl9kZXN0cm95ZWQpcmV0dXJuIHRoaXM7dGhpcy5icmlkZ2UuaW5pdCh0aGlzLmNvbHMsdGhpcy5yb3dzKSx0aGlzLnJlbmRlcmVyPW5ldyBjKHRoaXMuX2NvbnRhaW5lciksdGhpcy5yZW5kZXJlci5zZXR1cCh0aGlzLmNvbHMsdGhpcy5yb3dzKSx0aGlzLmlucHV0PW5ldyBsKHRoaXMuZWxlbWVudCxBPT57dGhpcy5vbkRhdGE/dGhpcy5vbkRhdGEoQSk6dGhpcy53cml0ZShBKX0sKCk9PnRoaXMuYnJpZGdlKSx0aGlzLmF1dG9SZXNpemU/dGhpcy5fc2V0dXBSZXNpemVPYnNlcnZlcigpOnRoaXMuX2xvY2tIZWlnaHQoKSx0aGlzLmlucHV0LmZvY3VzKCksdGhpcy5faW5pdGlhbFJlbmRlcigpfWNhdGNoKEEpe3Rocm93IHRoaXMuZGVzdHJveSgpLG5ldyBFcnJvcihgd3Rlcm06IGZhaWxlZCB0byBpbml0aWFsaXplOiAke0EgaW5zdGFuY2VvZiBFcnJvcj9BLm1lc3NhZ2U6QX1gKX1yZXR1cm4gdGhpc31faXNTY3JvbGxlZFRvQm90dG9tKCl7bGV0IEE9dGhpcy5lbGVtZW50O3JldHVybiBBLnNjcm9sbEhlaWdodC1BLnNjcm9sbFRvcC1BLmNsaWVudEhlaWdodDw1fV9zY3JvbGxUb0JvdHRvbSgpe3RoaXMuZWxlbWVudC5zY3JvbGxUb3A9dGhpcy5lbGVtZW50LnNjcm9sbEhlaWdodH13cml0ZShBKXt0aGlzLmJyaWRnZSYmKHRoaXMuX3Nob3VsZFNjcm9sbFRvQm90dG9tPXRoaXMuX2lzU2Nyb2xsZWRUb0JvdHRvbSgpLHR5cGVvZiBBPT0ic3RyaW5nIj90aGlzLmJyaWRnZS53cml0ZVN0cmluZyhBKTp0aGlzLmJyaWRnZS53cml0ZVJhdyhBKSx0aGlzLl9zY2hlZHVsZVJlbmRlcigpKX1yZXNpemUoQSx0KXt0aGlzLmJyaWRnZSYmKHRoaXMuX3Nob3VsZFNjcm9sbFRvQm90dG9tPXRoaXMuX2lzU2Nyb2xsZWRUb0JvdHRvbSgpLHRoaXMuY29scz1BLHRoaXMucm93cz10LHRoaXMuYnJpZGdlLnJlc2l6ZShBLHQpLHRoaXMucmVuZGVyZXI/LnNldHVwKEEsdCksdGhpcy5fc2NoZWR1bGVSZW5kZXIoKSx0aGlzLm9uUmVzaXplJiZ0aGlzLm9uUmVzaXplKEEsdCkpfWZvY3VzKCl7dGhpcy5pbnB1dD90aGlzLmlucHV0LmZvY3VzKCk6dGhpcy5lbGVtZW50LmZvY3VzKCl9X3NjaGVkdWxlUmVuZGVyKCl7dGhpcy5yYWZJZD09bnVsbCYmKHRoaXMucmFmSWQ9cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57dGhpcy5yYWZJZD1udWxsLHRoaXMuX2RvUmVuZGVyKCl9KSl9X2luaXRpYWxSZW5kZXIoKXt0aGlzLl9kb1JlbmRlcigpfV9kb1JlbmRlcigpe2lmKCF0aGlzLmJyaWRnZXx8IXRoaXMucmVuZGVyZXIpcmV0dXJuO3RoaXMucmVuZGVyZXIucmVuZGVyKHRoaXMuYnJpZGdlKTtsZXQgQT10aGlzLmJyaWRnZS5nZXRTY3JvbGxiYWNrQ291bnQoKT4wO3RoaXMuZWxlbWVudC5jbGFzc0xpc3QudG9nZ2xlKCJoYXMtc2Nyb2xsYmFjayIsQSksdGhpcy5fc2hvdWxkU2Nyb2xsVG9Cb3R0b20mJnRoaXMuX3Njcm9sbFRvQm90dG9tKCk7bGV0IHQ9dGhpcy5icmlkZ2UuZ2V0VGl0bGUoKTt0IT09bnVsbCYmdGhpcy5vblRpdGxlJiZ0aGlzLm9uVGl0bGUodCk7bGV0IGU9dGhpcy5icmlkZ2UuZ2V0UmVzcG9uc2UoKTtlIT09bnVsbCYmdGhpcy5vbkRhdGEmJnRoaXMub25EYXRhKGUpfV9sb2NrSGVpZ2h0KCl7bGV0IEE9Z2V0Q29tcHV0ZWRTdHlsZSh0aGlzLmVsZW1lbnQpLHQ9cGFyc2VGbG9hdChBLmdldFByb3BlcnR5VmFsdWUoIi0tdGVybS1yb3ctaGVpZ2h0IikpfHwxNyxlPXRoaXMucm93cyp0LHM9KHBhcnNlRmxvYXQoQS5wYWRkaW5nVG9wKXx8MCkrKHBhcnNlRmxvYXQoQS5wYWRkaW5nQm90dG9tKXx8MCk7QS5ib3hTaXppbmc9PT0iYm9yZGVyLWJveCImJihzKz0ocGFyc2VGbG9hdChBLmJvcmRlclRvcFdpZHRoKXx8MCkrKHBhcnNlRmxvYXQoQS5ib3JkZXJCb3R0b21XaWR0aCl8fDApKSx0aGlzLmVsZW1lbnQuc3R5bGUuaGVpZ2h0PWAke2Urc31weGB9X21lYXN1cmVDaGFyU2l6ZSgpe2xldCBBPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtBLmNsYXNzTmFtZT0idGVybS1jZWxsIixBLnRleHRDb250ZW50PSJXIixBLnN0eWxlLnBvc2l0aW9uPSJhYnNvbHV0ZSIsQS5zdHlsZS52aXNpYmlsaXR5PSJoaWRkZW4iLHRoaXMuX2NvbnRhaW5lci5hcHBlbmRDaGlsZChBKTtsZXQgdD1BLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGU9dC53aWR0aCxzPXQuaGVpZ2h0O3JldHVybiBBLnJlbW92ZSgpLGU9PT0wfHxzPT09MD9udWxsOnt3aWR0aDplLGhlaWdodDpzfX1fc2V0dXBSZXNpemVPYnNlcnZlcigpe2xldCBBPXRoaXMuX21lYXN1cmVDaGFyU2l6ZSgpO2lmKCFBKXJldHVybjtsZXQgdD1BLndpZHRoLGU9QS5oZWlnaHQ7dGhpcy5yZXNpemVPYnNlcnZlcj1uZXcgUmVzaXplT2JzZXJ2ZXIocz0+e2xldCBpPXRoaXMuX21lYXN1cmVDaGFyU2l6ZSgpO2kmJih0PWkud2lkdGgsZT1pLmhlaWdodCk7Zm9yKGxldCBvIG9mIHMpe2xldHt3aWR0aDpCLGhlaWdodDpFfT1vLmNvbnRlbnRSZWN0LFE9TWF0aC5tYXgoMSxNYXRoLmZsb29yKEIvdCkpLEM9TWF0aC5tYXgoMSxNYXRoLmZsb29yKEUvZSkpOyhRIT09dGhpcy5jb2xzfHxDIT09dGhpcy5yb3dzKSYmdGhpcy5yZXNpemUoUSxDKX19KSx0aGlzLnJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcy5lbGVtZW50KX1kZXN0cm95KCl7dGhpcy5fZGVzdHJveWVkPSEwLHRoaXMucmFmSWQhPW51bGwmJmNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMucmFmSWQpLHRoaXMucmVzaXplT2JzZXJ2ZXImJnRoaXMucmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpLHRoaXMuaW5wdXQmJnRoaXMuaW5wdXQuZGVzdHJveSgpLHRoaXMuZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5fb25DbGlja0ZvY3VzKSx0aGlzLmVsZW1lbnQuaW5uZXJIVE1MPSIifX07dmFyIEo9L1x4MWJcWyhbMC05O10qKW0vZyxMPTI1NjtmdW5jdGlvbiBOKHIpe2lmKCFyKXJldHVybiBudWxsO2xldCBBPXIuc3BsaXQoIjsiKSx0PVtdO2ZvcihsZXQgZT0wO2U8QS5sZW5ndGg7ZSsrKXtsZXQgcz1BW2VdO2lmKChzPT09IjM4Inx8cz09PSI0OCIpJiZBW2UrMV09PT0iNSIpe3QucHVzaChBW2VdLEFbZSsxXSxBW2UrMl0/PyIiKSxlKz0yO2NvbnRpbnVlfWlmKChzPT09IjM4Inx8cz09PSI0OCIpJiZBW2UrMV09PT0iMiIpe3QucHVzaChBW2VdLEFbZSsxXSxBW2UrMl0/PyIiLEFbZSszXT8/IiIsQVtlKzRdPz8iIiksZSs9NDtjb250aW51ZX1zPT09IjQifHxzPT09IjI0Inx8dC5wdXNoKHMpfXJldHVybiB0Lmxlbmd0aD8iXHgxQlsiK3Quam9pbigiOyIpKyJtIjoiIn12YXIgYj1jbGFzcyBleHRlbmRzIHd7cmVzaXplKEEsdCl7c3VwZXIucmVzaXplKE1hdGgubWluKEEsTCksdCl9d3JpdGUoQSl7dHlwZW9mIEE9PSJzdHJpbmciJiYoQT1BLnJlcGxhY2UoSiwodCxlKT0+e2xldCBzPU4oZSk7cmV0dXJuIHM9PT1udWxsP3Q6c30pKSxzdXBlci53cml0ZShBKX1yZXNldCgpeyF0aGlzLmJyaWRnZXx8IXRoaXMucmVuZGVyZXJ8fCh0aGlzLmJyaWRnZS5pbml0KHRoaXMuY29scyx0aGlzLnJvd3MpLHRoaXMucmVuZGVyZXIuc2V0dXAodGhpcy5jb2xzLHRoaXMucm93cyksdGhpcy5fc2NoZWR1bGVSZW5kZXIoKSl9YXN5bmMgaW5pdCgpe3JldHVybiB0aGlzLl9jYWxpYnJhdGVJbml0aWFsU2l6ZSgpLGF3YWl0IHN1cGVyLmluaXQoKSx0aGlzLmF1dG9SZXNpemUmJiF0aGlzLnJlc2l6ZU9ic2VydmVyJiYhdGhpcy5fZGVzdHJveWVkJiZ0aGlzLl9zY2hlZHVsZU9ic2VydmVyU2V0dXAoKSx0aGlzfV9jYWxpYnJhdGVJbml0aWFsU2l6ZSgpe2lmKCF0aGlzLmVsZW1lbnR8fCF0aGlzLl9jb250YWluZXJ8fCF0aGlzLmVsZW1lbnQuaXNDb25uZWN0ZWQpcmV0dXJuO3RoaXMuZWxlbWVudC5vZmZzZXRIZWlnaHQ7bGV0IEE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO0EuY2xhc3NOYW1lPSJ0ZXJtLWNlbGwiLEEuc3R5bGUuY3NzVGV4dD0icG9zaXRpb246YWJzb2x1dGU7dmlzaWJpbGl0eTpoaWRkZW47bGVmdDotOTk5OXB4O3RvcDowOyIsQS50ZXh0Q29udGVudD0iVyIsdGhpcy5fY29udGFpbmVyLmFwcGVuZENoaWxkKEEpO2xldCB0PUEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksZT10LndpZHRoLHM9dC5oZWlnaHQ7aWYoQS5yZW1vdmUoKSxlPD0wfHxzPD0wKXJldHVybjtsZXQgaT1nZXRDb21wdXRlZFN0eWxlKHRoaXMuZWxlbWVudCksbz0ocGFyc2VGbG9hdChpLnBhZGRpbmdMZWZ0KXx8MCkrKHBhcnNlRmxvYXQoaS5wYWRkaW5nUmlnaHQpfHwwKSxCPShwYXJzZUZsb2F0KGkucGFkZGluZ1RvcCl8fDApKyhwYXJzZUZsb2F0KGkucGFkZGluZ0JvdHRvbSl8fDApLEU9dGhpcy5lbGVtZW50LmNsaWVudFdpZHRoLW8sUT10aGlzLmVsZW1lbnQuY2xpZW50SGVpZ2h0LUI7aWYoRTw9MHx8UTw9MClyZXR1cm47bGV0IEM9TWF0aC5taW4oTWF0aC5tYXgoMSxNYXRoLmZsb29yKEUvZSkpLEwpLG49TWF0aC5tYXgoMSxNYXRoLmZsb29yKFEvcykpO3RoaXMuY29scz1DLHRoaXMucm93cz1ufV9zY2hlZHVsZU9ic2VydmVyU2V0dXAoKXtpZih0aGlzLl9vYnNlcnZlclNldHVwUGVuZGluZylyZXR1cm47dGhpcy5fb2JzZXJ2ZXJTZXR1cFBlbmRpbmc9ITA7bGV0IEE9MCx0PTEyMCxlPSgpPT57aWYodGhpcy5fZGVzdHJveWVkfHx0aGlzLnJlc2l6ZU9ic2VydmVyKXt0aGlzLl9vYnNlcnZlclNldHVwUGVuZGluZz0hMTtyZXR1cm59aWYodGhpcy5lbGVtZW50Lm9mZnNldEhlaWdodCx0aGlzLl9tZWFzdXJlQ2hhclNpemUoKSYmdGhpcy5lbGVtZW50LmNsaWVudFdpZHRoPjAmJnRoaXMuZWxlbWVudC5jbGllbnRIZWlnaHQ+MCl7dGhpcy5fc2V0dXBSZXNpemVPYnNlcnZlcigpLHRoaXMuX29ic2VydmVyU2V0dXBQZW5kaW5nPSExO3JldHVybn1pZigrK0E+PXQpe3RoaXMuX29ic2VydmVyU2V0dXBQZW5kaW5nPSExO3JldHVybn1BPD04P3JlcXVlc3RBbmltYXRpb25GcmFtZShlKTpzZXRUaW1lb3V0KGUsNTApfTtyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZSl9cmVtZWFzdXJlKCl7aWYoIXRoaXMuYnJpZGdlfHwhdGhpcy5yZW5kZXJlcilyZXR1cm47dGhpcy5hdXRvUmVzaXplJiYhdGhpcy5yZXNpemVPYnNlcnZlciYmIXRoaXMuX2Rlc3Ryb3llZCYmKHRoaXMuX21lYXN1cmVDaGFyU2l6ZSgpJiZ0aGlzLmVsZW1lbnQuY2xpZW50V2lkdGg+MCYmdGhpcy5lbGVtZW50LmNsaWVudEhlaWdodD4wP3RoaXMuX3NldHVwUmVzaXplT2JzZXJ2ZXIoKTp0aGlzLl9zY2hlZHVsZU9ic2VydmVyU2V0dXAoKSk7bGV0IEE9dGhpcy5fbWVhc3VyZUNoYXJTaXplKCk7aWYoIUEpcmV0dXJuO2xldCB0PWdldENvbXB1dGVkU3R5bGUodGhpcy5lbGVtZW50KSxlPXRoaXMuZWxlbWVudC5jbGllbnRXaWR0aC0ocGFyc2VGbG9hdCh0LnBhZGRpbmdMZWZ0KXx8MCktKHBhcnNlRmxvYXQodC5wYWRkaW5nUmlnaHQpfHwwKSxzPXRoaXMuZWxlbWVudC5jbGllbnRIZWlnaHQtKHBhcnNlRmxvYXQodC5wYWRkaW5nVG9wKXx8MCktKHBhcnNlRmxvYXQodC5wYWRkaW5nQm90dG9tKXx8MCk7aWYoZTw9MHx8czw9MClyZXR1cm47bGV0IGk9TWF0aC5taW4oTWF0aC5tYXgoMSxNYXRoLmZsb29yKGUvQS53aWR0aCkpLEwpLG89TWF0aC5tYXgoMSxNYXRoLmZsb29yKHMvQS5oZWlnaHQpKTtpIT09dGhpcy5jb2xzfHxvIT09dGhpcy5yb3dzP3RoaXMucmVzaXplKGksbyk6dGhpcy5fc2NoZWR1bGVSZW5kZXIoKX19O3JldHVybiBrKE8pO30pKCk7Cg=="),